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 181206a45aSJouni MalinenCFLAGS += -flto -fvisibility=hidden -fsanitize=cfi -fno-sanitize-trap=cfi 191206a45aSJouni 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 83*79e6c109SSunil DuttCFLAGS += -DMIRACAST 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