xref: /wlan-dirver/qca-wifi-host-cmn/qdf/Kbuild (revision 45a38684b07295822dc8eba39e293408f203eec8)
1ifeq ($(obj),)
2obj := .
3endif
4
5DEPTH := ../..
6
7HOST_CMN_CONVG_SRC := $(DEPTH)/cmn_dev
8HOST_CMN_CONVG_NLINK := $(DEPTH)/cmn_dev/utils/nlink
9HOST_CMN_CONVG_LOGGING := $(DEPTH)/cmn_dev/utils/logging
10HOST_CMN_CONVG_PTT := $(DEPTH)/cmn_dev/utils/ptt
11HOST_QAL_SRC := $(DEPTH)/component_dev/qal
12
13include $(obj)/$(DEPTH)/os/linux/Makefile-linux.common
14
15INCS += -Iinclude/nbuf -Iinclude/net -Iinclude/os
16INCS += -Inbuf/linux -Inet/linux -Ios/linux
17INCS += -I$(WLAN_TOP)/../../include
18INCS += -I$(WLAN_TOP)/cmn_dev/qdf/inc
19INCS += -I$(WLAN_TOP)/cmn_dev/qal/inc
20INCS += -I$(WLAN_TOP)/cmn_dev/utils/sys
21INCS += -I$(WLAN_TOP)/component_dev/qal/inc
22INCS += -I$(WLAN_TOP)/cmn_dev/qal/linux/src
23INCS += -I$(WLAN_TOP)/cmn_dev/qdf/linux/src
24INCS += -I$(obj)/$(HOST_CMN_CONVG_PTT)/inc \
25        -I$(obj)/$(HOST_CMN_CONVG_NLINK)/inc \
26        -I$(obj)/$(HOST_CMN_CONVG_LOGGING)/inc \
27        -I$(obj)/$(DEPTH)/cmn_dev/utils/host_diag_log/inc \
28        -I$(obj)/$(DEPTH)/cmn_dev/utils/host_diag_log/src \
29        -I$(obj)/$(DEPTH)/cmn_dev/utils/ptt/inc \
30        -I$(WLAN_TOP)/pld/inc
31
32obj-m += qdf.o
33
34EXTRA_CFLAGS+= $(INCS) $(COPTS) -Wno-unused-function
35
36ifeq ($(strip ${QCA_PARTNER_MAKE_F_SUPPORT}),1)
37MOD_CFLAGS = -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(qdf.mod)"  -D"KBUILD_MODNAME=KBUILD_STR(qdf)"
38endif
39
40qdf-objs :=                     \
41linux/src/qdf_defer.o  \
42linux/src/qdf_func_tracker.o \
43linux/src/qdf_dev.o    \
44linux/src/qdf_event.o   \
45linux/src/qdf_file.o   \
46linux/src/qdf_list.o      \
47linux/src/qdf_lock.o       \
48linux/src/qdf_mc_timer.o    \
49linux/src/qdf_mem.o      \
50linux/src/qdf_crypto.o      \
51linux/src/qdf_module.o    \
52linux/src/qdf_net_if.o   \
53linux/src/qdf_nbuf.o       \
54linux/src/qdf_nbuf_frag.o       \
55linux/src/qdf_perf.o        \
56linux/src/qdf_status.o     \
57linux/src/qdf_threads.o     \
58linux/src/qdf_trace.o \
59linux/src/qdf_vfs.o \
60linux/src/qdf_delayed_work.o \
61src/qdf_flex_mem.o \
62src/qdf_parse.o \
63src/qdf_str.o \
64src/qdf_types.o \
65src/qdf_platform.o \
66$(HOST_CMN_CONVG_NLINK)/src/wlan_nlink_srv.o \
67$(HOST_QAL_SRC)/linux/src/qal_devcfg.o \
68$(HOST_QAL_SRC)/linux/src/qal_vbus_dev.o \
69$(HOST_QAL_SRC)/linux/src/qal_notifier.o \
70#linux/src/qdf_net.o \
71#linux/src/qdf_net_event.o \
72#linux/src/qdf_net_ioctl.o
73#linux/src/qdf_net_wext.o
74
75ifeq ($(MEMORY_DEBUG),1)
76qdf-objs += src/qdf_debug_domain.o
77endif
78
79ifeq ($(LOGGING_UTILS_SUPPORT),1)
80qdf-objs += \
81$(HOST_CMN_CONVG_LOGGING)/src/wlan_logging_sock_svc.o
82endif
83
84ifeq ($(WLAN_DEBUGFS),1)
85qdf-objs += linux/src/qdf_debugfs.o
86endif
87
88ifeq ($(WLAN_STREAMFS),1)
89qdf-objs += linux/src/qdf_streamfs.o
90endif
91
92ifeq ($(BUILD_ADF_NET_IOCTL),1)
93EXTRA_CFLAGS+= -DADF_NET_IOCTL_SUPPORT
94#adf-objs += os/linux/adf_os_netlink_pvt.o \
95#    net/linux/adf_net_event.o  \
96#    net/linux/adf_net_wext.o    \
97#    net/linux/adf_net_ioctl.o
98endif
99
100ifeq ($(BUILD_ADF_DEFER_PVT),1)
101#adf-objs += os/linux/adf_os_defer_pvt.o
102endif
103ifeq ($(BUILD_ADF_IRQ_PVT),1)
104#adf-objs += os/linux/adf_os_irq_pvt.o
105endif
106
107ifeq ($(BUILD_ADF_PERF_PROFILING),1)
108#adf-objs += os/linux/adf_os_perf_pvt.o
109ifeq ($(BUILD_ADF_MIPS_PERF_PROFILING),1)
110#adf-objs += os/linux/adf_os_mips_perf_pvt.o
111endif
112endif
113
114#    os/linux/adf_os_pci_pvt.o    \
115#    net/linux/adf_net_ioctl.o    \
116#    net/linux/adf_net_pseudo.o   \
117
118clean-files := modules.order
119
120ifeq ($(strip ${QCA_PARTNER_MAKE_F_SUPPORT}),1)
121all: qdf.ko
122
123qdf.mod.o: qdf.mod.c
124	${CC} -c -o $@ ${EXTRA_CFLAGS} ${MOD_CFLAGS} $<
125
126adf.o: ${adf-objs}
127	$(LD) -m elf32btsmip -r -o adf.o $(adf-objs)
128	$(KERNELPATH)/scripts/mod/modpost qdf.o
129
130qdf.ko: qdf.o qdf.mod.o
131	$(LD) $(LDOPTS) -o qdf.ko qdf.o qdf.mod.o
132
133%.o: %.c
134	${CC} -c -o $@ ${EXTRA_CFLAGS} $<
135endif
136