blob: f2a99189ed0b91fcca0ec886180ee0118c6b2778 [file] [log] [blame]
ALL=sigma_dut
all: $(ALL)
ifdef UBSAN
CC=clang
CHECKS=undefined,unsigned-integer-overflow
CFLAGS += -fsanitize=$(CHECKS)
CFLAGS += -fno-sanitize-recover=all
LDFLAGS += -fsanitize=$(CHECKS)
LDFLAGS += -fno-sanitize-recover=all
endif
ifdef CFI
CC=clang-6.0
CFLAGS += -MMD -O2 -Wall -g
CFLAGS += -flto -fvisibility=hidden -fsanitize=cfi -fno-sanitize-trap=cfi
LDFLAGS += -flto -fvisibility=hidden -fsanitize=cfi -fno-sanitize-trap=cfi
endif
ifndef CC
CC=gcc
endif
ifndef LDO
LDO=$(CC)
endif
ifndef CFLAGS
CFLAGS = -MMD -O2 -Wall -g
endif
GITVER := $(shell git describe --dirty=+)
ifneq ($(GITVER),)
CFLAGS += -DSIGMA_DUT_VER=\"$(GITVER)\"
endif
export BINDIR ?= /usr/local/bin/
OBJS=sigma_dut.o
OBJS += utils.o
OBJS += wpa_ctrl.o
OBJS += wpa_helpers.o
OBJS += cmds_reg.o
OBJS += basic.o
OBJS += sta.o
OBJS += traffic.o
OBJS += p2p.o
OBJS += dev.o
OBJS += ap.o
OBJS += powerswitch.o
OBJS += atheros.o
OBJS += ftm.o
OBJS += dpp.o
ifndef NO_TRAFFIC_AGENT
CFLAGS += -DCONFIG_TRAFFIC_AGENT -DCONFIG_WFA_WMM_AC
OBJS += traffic_agent.o
OBJS += uapsd_stream.o
endif
LIBS += -lpthread
ifndef NO_WLANTEST
CFLAGS += -DCONFIG_WLANTEST
OBJS += wlantest.o
endif
ifndef NO_SNIFFER
CFLAGS += -DCONFIG_SNIFFER
OBJS += sniffer.o
endif
ifdef SERVER
CFLAGS += -DCONFIG_SERVER
OBJS += server.o
LIBS += -lsqlite3
endif
ifdef MIRACAST
OBJS += miracast.o
CFLAGS += -DMIRACAST
LIBS += -ldl
endif
ifdef NL80211_SUPPORT
CFLAGS += -DNL80211_SUPPORT -I /usr/include/libnl3
LIBS += -lnl-3 -lnl-genl-3
endif
sigma_dut: $(OBJS)
$(LDO) $(LDFLAGS) -o sigma_dut $(OBJS) $(LIBS)
clean:
rm -f core *~ *.o *.d sigma_dut
$(DESTDIR)$(BINDIR)/%: %
install -D $(<) $(@)
install: $(addprefix $(DESTDIR)$(BINDIR)/,$(ALL))
-include $(OBJS:%.o=%.d)