cdd00a5bf016b9f11874bf613531460716c242a8
[mech_eap.git] / wlantest / Makefile
1 ALL=wlantest
2
3 all: $(ALL)
4
5 ifndef CC
6 CC=gcc
7 endif
8
9 ifndef RANLIB
10 RANLIB=ranlib
11 endif
12
13 ifndef CFLAGS
14 CFLAGS = -MMD -O2 -Wall -g
15 endif
16
17
18 CFLAGS += -I.
19 CFLAGS += -I../src
20 CFLAGS += -I../src/utils
21
22
23 ifndef LDO
24 LDO=$(CC)
25 endif
26
27 Q=@
28 E=echo
29 ifeq ($(V), 1)
30 Q=
31 E=true
32 endif
33
34 %.o: %.c
35         $(Q)$(CC) -c -o $@ $(CFLAGS) $<
36         @$(E) "  CC " $<
37
38
39 OBJS_lib += ../src/utils/libutils.a
40 OBJS_lib += ../src/crypto/libcrypto.a
41
42 OBJS += ../src/common/ieee802_11_common.o
43
44 OBJS += wlantest.o
45 OBJS += readpcap.o
46 OBJS += monitor.o
47 OBJS += process.o
48 OBJS += bss.o
49 OBJS += sta.o
50 OBJS += crc32.o
51
52 LIBS += -lpcap
53
54
55 ../src/utils/libutils.a:
56         $(MAKE) -C ../src/utils
57
58 ../src/crypto/libcrypto.a:
59         $(MAKE) -C ../src/crypto
60
61
62 ifneq ($(CONFIG_SOLIB), yes)
63 LIBWLANTEST = libwlantest.a
64 libwlantest.a: $(OBJS_lib)
65         $(AR) crT libwlantest.a $(OBJS_lib)
66         $(RANLIB) libwlantest.a
67
68 else
69 CFLAGS  += -fPIC -DPIC
70 LDFLAGS += -shared
71
72 LIBWLANTEST  = libwlantest.so
73 libwlantest.so: $(OBJS_lib)
74         $(LDO) $(LDFLAGS) $(OBJS_lib) -o $(LIBWLANTEST)
75
76 endif
77
78 wlantest: $(OBJS) $(LIBWLANTEST)
79         $(LDO) $(LDFLAGS) -o wlantest $(OBJS) -L. -lwlantest $(LIBS)
80
81 clean:
82         $(MAKE) -C ../src clean
83         rm -f core *~ *.o *.d libwlantest.a libwlantest.so $(ALL)
84
85 -include $(OBJS:%.o=%.d)