xref: /wlan-dirver/utils/sigma-dut/Makefile (revision 1206a45ad36f03721e946f20b4c3bdb9319e4f8f)
1cd4e3c3eSJouni Malinen
2cd4e3c3eSJouni MalinenALL=sigma_dut
3cd4e3c3eSJouni Malinen
4cd4e3c3eSJouni Malinenall: $(ALL)
5cd4e3c3eSJouni Malinen
680102f16SJouni Malinenifdef UBSAN
780102f16SJouni MalinenCC=clang
880102f16SJouni MalinenCHECKS=undefined,unsigned-integer-overflow
980102f16SJouni MalinenCFLAGS += -fsanitize=$(CHECKS)
1080102f16SJouni MalinenCFLAGS += -fno-sanitize-recover=all
1180102f16SJouni MalinenLDFLAGS += -fsanitize=$(CHECKS)
1280102f16SJouni MalinenLDFLAGS += -fno-sanitize-recover=all
1380102f16SJouni Malinenendif
1480102f16SJouni Malinen
15c1735d5fSJouni Malinenifdef CFI
16c1735d5fSJouni MalinenCC=clang-6.0
17c1735d5fSJouni MalinenCFLAGS += -MMD -O2 -Wall -g
18*1206a45aSJouni MalinenCFLAGS += -flto -fvisibility=hidden -fsanitize=cfi -fno-sanitize-trap=cfi
19*1206a45aSJouni MalinenLDFLAGS += -flto -fvisibility=hidden -fsanitize=cfi -fno-sanitize-trap=cfi
20c1735d5fSJouni Malinenendif
21c1735d5fSJouni Malinen
22cd4e3c3eSJouni Malinenifndef CC
23cd4e3c3eSJouni MalinenCC=gcc
24cd4e3c3eSJouni Malinenendif
25cd4e3c3eSJouni Malinen
26cd4e3c3eSJouni Malinenifndef LDO
27cd4e3c3eSJouni MalinenLDO=$(CC)
28cd4e3c3eSJouni Malinenendif
29cd4e3c3eSJouni Malinen
30cd4e3c3eSJouni Malinenifndef CFLAGS
31cd4e3c3eSJouni MalinenCFLAGS = -MMD -O2 -Wall -g
32cd4e3c3eSJouni Malinenendif
33cd4e3c3eSJouni Malinen
34cd4e3c3eSJouni MalinenGITVER := $(shell git describe --dirty=+)
35cd4e3c3eSJouni Malinenifneq ($(GITVER),)
36cd4e3c3eSJouni MalinenCFLAGS += -DSIGMA_DUT_VER=\"$(GITVER)\"
37cd4e3c3eSJouni Malinenendif
38cd4e3c3eSJouni Malinen
39cd4e3c3eSJouni Malinenexport BINDIR ?= /usr/local/bin/
40cd4e3c3eSJouni Malinen
41cd4e3c3eSJouni MalinenOBJS=sigma_dut.o
42cd4e3c3eSJouni MalinenOBJS += utils.o
43cd4e3c3eSJouni MalinenOBJS += wpa_ctrl.o
44cd4e3c3eSJouni MalinenOBJS += wpa_helpers.o
45cd4e3c3eSJouni Malinen
46cd4e3c3eSJouni MalinenOBJS += cmds_reg.o
47cd4e3c3eSJouni MalinenOBJS += basic.o
48cd4e3c3eSJouni MalinenOBJS += sta.o
49cd4e3c3eSJouni MalinenOBJS += traffic.o
50cd4e3c3eSJouni MalinenOBJS += p2p.o
51cd4e3c3eSJouni MalinenOBJS += dev.o
52cd4e3c3eSJouni MalinenOBJS += ap.o
53cd4e3c3eSJouni MalinenOBJS += powerswitch.o
54cd4e3c3eSJouni MalinenOBJS += atheros.o
55d66913acSpriyadharshini gowthamanOBJS += ftm.o
56d86e5828SJouni MalinenOBJS += dpp.o
57cd4e3c3eSJouni Malinen
58cd4e3c3eSJouni Malinenifndef NO_TRAFFIC_AGENT
59cd4e3c3eSJouni MalinenCFLAGS += -DCONFIG_TRAFFIC_AGENT -DCONFIG_WFA_WMM_AC
60cd4e3c3eSJouni MalinenOBJS += traffic_agent.o
61cd4e3c3eSJouni MalinenOBJS += uapsd_stream.o
62cd4e3c3eSJouni MalinenLIBS += -lpthread
63cd4e3c3eSJouni Malinenendif
64cd4e3c3eSJouni Malinen
65cd4e3c3eSJouni Malinenifndef NO_WLANTEST
66cd4e3c3eSJouni MalinenCFLAGS += -DCONFIG_WLANTEST
67cd4e3c3eSJouni MalinenOBJS += wlantest.o
68cd4e3c3eSJouni Malinenendif
69cd4e3c3eSJouni Malinen
70cd4e3c3eSJouni Malinenifndef NO_SNIFFER
71cd4e3c3eSJouni MalinenCFLAGS += -DCONFIG_SNIFFER
72cd4e3c3eSJouni MalinenOBJS += sniffer.o
73cd4e3c3eSJouni Malinenendif
74cd4e3c3eSJouni Malinen
75ad8a24e0SJouni Malinenifdef SERVER
76cd4e3c3eSJouni MalinenCFLAGS += -DCONFIG_SERVER
77cd4e3c3eSJouni MalinenOBJS += server.o
783b17d530SJouni MalinenLIBS += -lsqlite3
79cd4e3c3eSJouni Malinenendif
80cd4e3c3eSJouni Malinen
819c381f59SAmarnath Hullur Subramanyamifdef MIRACAST
829c381f59SAmarnath Hullur SubramanyamOBJS += miracast.o
839c381f59SAmarnath Hullur SubramanyamCFLAGS += -DMIRACAST -DMIRACAST_DHCP_M
849c381f59SAmarnath Hullur SubramanyamLIBS += -ldl
859c381f59SAmarnath Hullur Subramanyamendif
869c381f59SAmarnath Hullur Subramanyam
87291d97daSPeng Xuifdef NL80211_SUPPORT
88291d97daSPeng XuCFLAGS += -DNL80211_SUPPORT -I /usr/include/libnl3
89291d97daSPeng XuLIBS += -lnl-3 -lnl-genl-3
90291d97daSPeng Xuendif
91291d97daSPeng Xu
92cd4e3c3eSJouni Malinensigma_dut: $(OBJS)
93cd4e3c3eSJouni Malinen	$(LDO) $(LDFLAGS) -o sigma_dut $(OBJS) $(LIBS)
94cd4e3c3eSJouni Malinen
95cd4e3c3eSJouni Malinenclean:
96cd4e3c3eSJouni Malinen	rm -f core *~ *.o *.d sigma_dut
97cd4e3c3eSJouni Malinen
98cd4e3c3eSJouni Malinen$(DESTDIR)$(BINDIR)/%: %
99cd4e3c3eSJouni Malinen	install -D $(<) $(@)
100cd4e3c3eSJouni Malinen
101cd4e3c3eSJouni Malineninstall: $(addprefix $(DESTDIR)$(BINDIR)/,$(ALL))
102cd4e3c3eSJouni Malinen
103cd4e3c3eSJouni Malinen-include $(OBJS:%.o=%.d)
104