1STATIC_LIB ?= y 2DEBUG ?= y 3BUILD_SUPPL ?= y 4SUPPL ?= WPA 5WPA_ENTERPRISE ?= y 6XCC ?= n 7#enable/disable wireless simple config (WPS) support 8CONFIG_EAP_WSC ?= n 9 10WILINK_ROOT = ../.. 11CUDK_ROOT ?= $(WILINK_ROOT)/CUDK 12CU_ROOT = $(CUDK_ROOT)/configurationutility 13OUTPUT_DIR ?= $(CUDK_ROOT)/output 14TI_OS_LIB_DIR=$(CUDK_ROOT)/output 15ifeq ($(STATIC_LIB),y) 16 TI_OS_LIB = tiOsLib.a 17else 18 TI_OS_LIB = tiOsLib.so 19endif 20 21ifeq ($(DEBUG),y) 22 DEBUGFLAGS = -O2 -g -DDEBUG -DTI_DBG -fno-builtin 23else 24 DEBUGFLAGS = -O2 25endif 26 27DEBUGFLAGS+= -DHOST_COMPILE -DANDROID 28 29ifeq ($(XCC), y) 30 DK_DEFINES = -D XCC_MODULE_INCLUDED 31endif 32ifeq ($(GEM), y) 33 DK_DEFINES += -D GEM_SUPPORTED 34endif 35ifeq ($(WPA_ENTERPRISE), y) 36 DK_DEFINES += -D WPA_ENTERPRISE 37endif 38 39TARGET := $(OUTPUT_DIR)/wlan_cu 40SRCS := \ 41 src/console.c \ 42 src/cu_common.c \ 43 src/cu_cmd.c \ 44 src/ticon.c \ 45 src/wpa_core.c 46 47ifeq ($(XCC), y) 48SRCS += \ 49 XCC/cu_XCC.c 50endif 51 52 53OBJS = $(SRCS:.c=.o) 54 55DEPS = $(SRCS:%.c=%.d) 56 57ARMFLAGS = -fno-common -pipe 58 59#Supplicant image building 60ifeq ($(BUILD_SUPPL), y) 61DK_DEFINES += -D WPA_SUPPLICANT -D CONFIG_CTRL_IFACE -D CONFIG_CTRL_IFACE_UNIX 62 -include $(CU_ROOT)/$(TI_SUPP_LIB_DIR)/.config 63ifeq ($(CONFIG_EAP_WSC), y) 64DK_DEFINES += -DCONFIG_EAP_WSC 65endif 66endif 67 68INCLUDES = \ 69 -I inc \ 70 -I $(CUDK_ROOT)/os/linux/inc \ 71 -I $(CUDK_ROOT)/os/common/inc \ 72 -I $(WILINK_ROOT)/stad/Export_Inc \ 73 -I $(WILINK_ROOT)/stad/src/Sta_Management \ 74 -I $(WILINK_ROOT)/stad/src/Application \ 75 -I $(WILINK_ROOT)/utils \ 76 -I $(WILINK_ROOT)/Txn \ 77 -I $(WILINK_ROOT)/TWD/TWDriver \ 78 -I $(WILINK_ROOT)/TWD/FirmwareApi \ 79 -I $(WILINK_ROOT)/TWD/TwIf \ 80 -I $(WILINK_ROOT)/platforms/os/linux/inc \ 81 -I $(WILINK_ROOT)/platforms/os/common/inc \ 82 -I $(KERNEL_DIR)/include \ 83 -I $(WILINK_ROOT)/TWD/FW_Transfer/Export_Inc \ 84 -I $(CUDK_ROOT)/$(TI_SUPP_LIB_DIR) 85 86ifeq ($(XCC), y) 87INCLUDES += \ 88 -I XCC \ 89 -I $(WILINK_ROOT)/stad/Export_Inc/XCC \ 90 -I $(WILINK_ROOT)/utils/XCC \ 91 -I $(CUDK_ROOT)/devicescape-dsa-XCC-wps-2.0.1-008 \ 92 -I $(CUDK_ROOT)/devicescape-dsa-XCC-wps-2.0.1-008/openssl-0.9.8e/include 93endif 94 95CFLAGS = $(OPT) -Wall -Wstrict-prototypes $(DEBUGFLAGS) $(INCLUDES) -D__LINUX__ $(DK_DEFINES) -D__BYTE_ORDER_LITTLE_ENDIAN 96CFLAGS += -DDRV_NAME='"tiwlan"' 97 98ifneq "$(CROSS_COMPILE)" "" #compile for ARM 99 CFLAGS += $(ARMFLAGS) 100 # strip symbols 101ifneq "$(DEBUG)" "y" 102 LDFLAGS = -s 103endif 104 105endif # CROSS_COMPILE != "" 106 107.PHONY: all 108 109all: $(TARGET) 110 111$(TARGET): $(OBJS) 112 $(CROSS_COMPILE)gcc --static $(OBJS) $(TI_OS_LIB_DIR)/$(TI_OS_LIB) -L $(CU_ROOT)/Output $(LDFLAGS) -lpthread -lc -o $@ 113ifeq ($(DEBUG), y) 114 cp -a $(TARGET) $(TARGET)_debug 115 $(CROSS_COMPILE)strip -s $(TARGET) 116endif #DEBUG 117 118ifeq ("$(findstring $(MAKECMDGOALS), clean cleanall)", "") 119-include .depend 120endif 121 122%.o: %.cpp 123 @echo $@ 124 @$(CROSS_COMPILE)gcc $(CFLAGS) -c $^ -o $@ 125 126%.o: %.c 127 @echo $@ 128 @$(CROSS_COMPILE)gcc -s $(CFLAGS) -c $< -o $@ 129 130%.i: %.c 131 @$(CROSS_COMPILE)gcc $(CFLAGS) -E -c $< > $@ 132 133%.d: %.c 134 @echo $@ 135 @$(CROSS_COMPILE)gcc $< -MT$(^:%.c=%.o) -M $(CFLAGS) > $@ 136 137%.d: %.cpp 138 @echo $@ 139 @$(CROSS_COMPILE)gcc $< -MT$(^:%.cpp=%.o) -M $(CFLAGS) > $@ 140 141.depend: $(DEPS) 142 rm -f $@ 143 for aa in $^; do cat $$aa >> $@; done 144 145.PHONY: clean 146clean: 147 @echo cleaning configuration utility... 148 rm -f .depend $(OBJS) $(DEPS) $(SRCS:.c=.i) *.ko .*.cmd .*.flags *.mod.c *~ *.~* $(OUTPUT_DIR)/wlan_cu $(OUTPUT_DIR)/wlan_cu_debug 149 150cleanall: clean 151 152 153