• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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