xref: /wlan-dirver/utils/sigma-dut/Makefile (revision 79e6c109e907cdaf3ebb65de2692461286011467)
1
2ALL=sigma_dut
3
4all: $(ALL)
5
6ifdef UBSAN
7CC=clang
8CHECKS=undefined,unsigned-integer-overflow
9CFLAGS += -fsanitize=$(CHECKS)
10CFLAGS += -fno-sanitize-recover=all
11LDFLAGS += -fsanitize=$(CHECKS)
12LDFLAGS += -fno-sanitize-recover=all
13endif
14
15ifdef CFI
16CC=clang-6.0
17CFLAGS += -MMD -O2 -Wall -g
18CFLAGS += -flto -fvisibility=hidden -fsanitize=cfi -fno-sanitize-trap=cfi
19LDFLAGS += -flto -fvisibility=hidden -fsanitize=cfi -fno-sanitize-trap=cfi
20endif
21
22ifndef CC
23CC=gcc
24endif
25
26ifndef LDO
27LDO=$(CC)
28endif
29
30ifndef CFLAGS
31CFLAGS = -MMD -O2 -Wall -g
32endif
33
34GITVER := $(shell git describe --dirty=+)
35ifneq ($(GITVER),)
36CFLAGS += -DSIGMA_DUT_VER=\"$(GITVER)\"
37endif
38
39export BINDIR ?= /usr/local/bin/
40
41OBJS=sigma_dut.o
42OBJS += utils.o
43OBJS += wpa_ctrl.o
44OBJS += wpa_helpers.o
45
46OBJS += cmds_reg.o
47OBJS += basic.o
48OBJS += sta.o
49OBJS += traffic.o
50OBJS += p2p.o
51OBJS += dev.o
52OBJS += ap.o
53OBJS += powerswitch.o
54OBJS += atheros.o
55OBJS += ftm.o
56OBJS += dpp.o
57
58ifndef NO_TRAFFIC_AGENT
59CFLAGS += -DCONFIG_TRAFFIC_AGENT -DCONFIG_WFA_WMM_AC
60OBJS += traffic_agent.o
61OBJS += uapsd_stream.o
62LIBS += -lpthread
63endif
64
65ifndef NO_WLANTEST
66CFLAGS += -DCONFIG_WLANTEST
67OBJS += wlantest.o
68endif
69
70ifndef NO_SNIFFER
71CFLAGS += -DCONFIG_SNIFFER
72OBJS += sniffer.o
73endif
74
75ifdef SERVER
76CFLAGS += -DCONFIG_SERVER
77OBJS += server.o
78LIBS += -lsqlite3
79endif
80
81ifdef MIRACAST
82OBJS += miracast.o
83CFLAGS += -DMIRACAST
84LIBS += -ldl
85endif
86
87ifdef NL80211_SUPPORT
88CFLAGS += -DNL80211_SUPPORT -I /usr/include/libnl3
89LIBS += -lnl-3 -lnl-genl-3
90endif
91
92sigma_dut: $(OBJS)
93	$(LDO) $(LDFLAGS) -o sigma_dut $(OBJS) $(LIBS)
94
95clean:
96	rm -f core *~ *.o *.d sigma_dut
97
98$(DESTDIR)$(BINDIR)/%: %
99	install -D $(<) $(@)
100
101install: $(addprefix $(DESTDIR)$(BINDIR)/,$(ALL))
102
103-include $(OBJS:%.o=%.d)
104