]> begriffs open source - libtap/blob - config.mk
Ignore vim swap files.
[libtap] / config.mk
1 GNU = 1
2 MAKE = make
3 CFLAGS = $(DEBUG)
4 ifdef GNU
5         ALLCFLAGS = -Wall $(CFLAGS)
6         ifdef ANSI
7             # -D_BSD_SOURCE for MAP_ANONYMOUS
8                 ALLCFLAGS += -ansi -D_BSD_SOURCE
9                 LDLIBS += -lbsd-compat
10         endif
11         DEBUG = -g
12         CCFLAGS = -c
13         CCOUT = -o
14         CLOUT = -o
15         PIC = -fPIC
16         _O = .o
17         _X =
18         _A = .a
19         _SO = .so
20         TAPLIB = libtap.a
21         STATICLIB.o = $(AR) rcs $@ $(filter %$(_O), $^)
22         DYNAMICLIB.o = $(CC) -shared -o $@ $(filter %$(_O), $^)
23 else
24         CC = cl /nologo
25         ALLCFLAGS = /Wall /wd4255 /wd4996 /wd4127 /wd4820 \
26                     /wd4100 /wd4619 /wd4514 /wd4668 $(CFLAGS)
27         DEBUG = /Zi
28         CCFLAGS = /c
29         CCOUT = /Fo
30         CLOUT = /Fe
31         PIC =
32         _O = .obj
33         _X = .exe
34         _A = .lib
35         _SO = .dll
36         TAPLIB = tap.lib
37         STATICLIB.o = lib /nologo /out:$@ $(filter %$(_O), $^)
38         DYNAMICLIB.o = lib /nologo /out:$@ $(filter %$(_O), $^)
39 endif
40 COMPILE.c = $(CC) $(CCFLAGS) $(CPPFLAGS) $(ALLCFLAGS) $(CCOUT)$@ $(filter %.c, $^)
41 LINK.o = $(CC) $(ALLCFLAGS) $(CLOUT)$@ $(filter %$(_O) %.a %.so %.lib %.dll, $^) $(LDFLAGS) $(LDLIBS)
42
43 %$(_X):; $(LINK.o)
44 %$(_A):; $(STATICLIB.o)
45 %$(_SO):; $(DYNAMICLIB.o)
46 %$(_O):; $(COMPILE.c)
47