wlantest: Indicate if a TKIP/CCMP replay has Retry=1
[mech_eap.git] / wlantest / Makefile
1 ALL=wlantest wlantest_cli test_vectors
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 # glibc < 2.17 needs -lrt for clock_gettime()
23 LIBS += -lrt
24
25 ifndef LDO
26 LDO=$(CC)
27 endif
28
29 Q=@
30 E=echo
31 ifeq ($(V), 1)
32 Q=
33 E=true
34 endif
35
36 %.o: %.c
37         $(Q)$(CC) -c -o $@ $(CFLAGS) $<
38         @$(E) "  CC " $<
39
40
41 OBJS_lib += ../src/utils/libutils.a
42 OBJS_lib += ../src/crypto/libcrypto.a
43
44 CFLAGS += -DCONFIG_PEERKEY
45 CFLAGS += -DCONFIG_IEEE80211W
46 CFLAGS += -DCONFIG_IEEE80211R
47 CFLAGS += -DCONFIG_HS20
48 CFLAGS += -DCONFIG_DEBUG_FILE
49
50 OBJS += ../src/common/ieee802_11_common.o
51 OBJS += ../src/common/wpa_common.o
52 OBJS += ../src/radius/radius.o
53 OBJS += ../src/rsn_supp/wpa_ie.o
54
55 OBJS += wlantest.o
56 OBJS += readpcap.o
57 OBJS += writepcap.o
58 OBJS += monitor.o
59 OBJS += process.o
60 OBJS += wired.o
61 OBJS += rx_mgmt.o
62 OBJS += rx_data.o
63 OBJS += rx_eapol.o
64 OBJS += rx_ip.o
65 OBJS += rx_tdls.o
66 OBJS += bss.o
67 OBJS += sta.o
68 OBJS += crc32.o
69 OBJS += ccmp.o
70 OBJS += tkip.o
71 OBJS += ctrl.o
72 OBJS += inject.o
73 OBJS += wep.o
74 OBJS += bip.o
75
76 LIBS += -lpcap
77
78 TOBJS += test_vectors.o
79 TOBJS += crc32.o
80 TOBJS += ccmp.o
81 TOBJS += tkip.o
82 TOBJS += wep.o
83 TOBJS += bip.o
84 TOBJS += gcmp.o
85
86
87 ../src/utils/libutils.a:
88         $(MAKE) -C ../src/utils
89
90 ../src/crypto/libcrypto.a:
91         $(MAKE) -C ../src/crypto
92
93
94 ifneq ($(CONFIG_SOLIB), yes)
95 LIBWLANTEST = libwlantest.a
96 libwlantest.a: $(OBJS_lib)
97         $(AR) crT libwlantest.a $(OBJS_lib)
98         $(RANLIB) libwlantest.a
99
100 else
101 CFLAGS  += -fPIC -DPIC
102 LDFLAGS += -shared
103
104 LIBWLANTEST  = libwlantest.so
105 libwlantest.so: $(OBJS_lib)
106         $(LDO) $(LDFLAGS) $(OBJS_lib) -o $(LIBWLANTEST)
107
108 endif
109
110
111 OBJS_cli = wlantest_cli.o
112
113
114 wlantest: $(OBJS) $(LIBWLANTEST)
115         $(LDO) $(LDFLAGS) -o wlantest $(OBJS) -L. -lwlantest $(LIBS)
116
117 wlantest_cli: $(OBJS_cli) $(LIBWLANTEST)
118         $(LDO) $(LDFLAGS) -o wlantest_cli $(OBJS_cli) -L. -lwlantest $(LIBS)
119
120 test_vectors: $(TOBJS) $(LIBWLANTEST)
121         $(LDO) $(LDFLAGS) -o test_vectors $(TOBJS) -L. -lwlantest $(LIBS)
122
123 clean:
124         $(MAKE) -C ../src clean
125         rm -f core *~ *.o *.d libwlantest.a libwlantest.so $(ALL)
126
127 -include $(OBJS:%.o=%.d)