GUI: Fix Tomato RAF theme for all builds. Compilation typo.
[tomato.git] / release / src-rt-6.x.4708 / linux / linux-2.6.36 / drivers / net / wl / wl_generic.mk
blobae3ffcd5c8e082c533c1045d2b907439f3a685f4
2 # Generic portion of the Broadcom wl driver makefile
4 # input: O_TARGET, CONFIG_WL_CONF and wl_suffix
5 # output: obj-m, obj-y
7 # $Id: wl_generic.mk,v 1.10 2011-01-21 22:12:09 $
10 REBUILD_WL_MODULE=$(shell if [ -d "$(src)/$(SRCBASE_OFFSET)/wl/sys" -a "$(REUSE_PREBUILT_WL)" != "1" ]; then echo 1; else echo 0; fi)
12 # If source directory (src/wl/sys) exists and REUSE_PREBUILT_WL is undefined,
13 # then build inside $(SRCBASE_OFFSET)/wl/sys, otherwise use pre-builts
14 ifeq ($(REBUILD_WL_MODULE),1)
16 # Get the source files and flags from the specified config file
17 # (Remove config's string quotes before trying to use the file)
18 ifeq ($(CONFIG_WL_CONF),)
19 $(error var_vlist($(VLIST)) var_config_wl_use($(shell env|grep CONFIG_WL_USE)))
20 $(error CONFIG_WL_CONF is undefined)
21 endif
23 WLCONFFILE := $(strip $(subst ",,$(CONFIG_WL_CONF)))
24 WLCFGDIR := $(src)/$(SRCBASE_OFFSET)/wl/config
26 # define OS flag to pick up wl osl file from wl.mk
27 WLLX=1
28 ifdef CONFIG_PLC
29 PLC=1
30 endif
31 ifdef CONFIG_DPSTA
32 DPSTA=1
33 endif
34 include $(WLCFGDIR)/$(WLCONFFILE)
35 # Disable ROUTER_COMA in ARM router for now.
36 ifeq ($(ARCH), arm)
37 ROUTER_COMA=0
38 endif
39 include $(WLCFGDIR)/wl.mk
41 ifeq ($(WLCLMAPI),1)
42 WLAN_ComponentsInUse := bcmwifi clm ppr
43 include $(src)/$(SRCBASE_OFFSET)/makefiles/WLAN_Common.mk
44 endif
46 ifeq ($(WLFILES_SRC),)
47 $(error WLFILES_SRC is undefined in $(WLCFGDIR)/$(WLCONFFILE))
48 endif
50 ifeq ($(WLCLMAPI),1)
51 CLM_TYPE := generic
52 $(call WLAN_GenClmCompilerRule,$(src)/$(SRCBASE_OFFSET)/wl/clm/src,$(src)/$(SRCBASE_OFFSET))
53 endif
55 # need -I. to pick up wlconf.h in build directory
57 ifeq ($(CONFIG_WL_ALL_PASSIVE_ON),y)
58 EXTRA_CFLAGS += -DWL_ALL_PASSIVE_ON -DWL_ALL_PASSIVE
59 else
60 ifeq ($(CONFIG_WL_ALL_PASSIVE_RUNTIME),y)
61 EXTRA_CFLAGS += -DWL_ALL_PASSIVE
62 endif
63 endif
64 ifeq ($(CONFIG_CACHE_L310),y)
65 EXTRA_CFLAGS += -DWL_PL310_WAR
66 endif
67 EXTRA_CFLAGS += -DDMA $(WLFLAGS) -I$(src) -I$(src)/.. -I$(src)/$(SRCBASE_OFFSET)/wl/linux \
68 -I$(src)/$(SRCBASE_OFFSET)/wl/sys $(WLAN_ComponentIncPath) -Werror
70 ifneq ("$(CONFIG_CC_OPTIMIZE_FOR_SIZE)","y")
71 EXTRA_CFLAGS += -finline-limit=2048
72 endif
74 # include path for dpsta.h
75 EXTRA_CFLAGS += -I$(src)/$(SRCBASE_OFFSET)/router/dpsta
77 # Build the phy source files iff -DPHY_HAL is present.
78 ifneq ($(findstring PHY_HAL,$(WLFLAGS)),)
79 EXTRA_CFLAGS += -I$(src)/$(SRCBASE_OFFSET)/wl/phy
80 else
81 WLFILES_SRC := $(filter-out src/wl/phy/%,$(WLFILES_SRC))
82 endif
84 # The paths in WLFILES_SRC need a bit of adjustment.
85 WL_OBJS := $(sort $(patsubst %.c,%.o,$(addprefix $(SRCBASE_OFFSET)/,$(patsubst src/%,%,$(WLFILES_SRC)))))
87 # wl-objs is for linking to wl.o
88 $(TARGET)-objs := $(WLCONF_O) $(WL_OBJS)
89 obj-$(CONFIG_WL) := $(TARGET).o
91 else # SRCBASE/wl/sys doesn't exist
93 # Otherwise, assume prebuilt object module(s) in src/wl/linux directory
94 # prebuilt := wl_$(wl_suffix).o
95 $(TARGET)-objs := $(SRCBASE_OFFSET)/wl/linux/wl.o
96 obj-$(CONFIG_WL) := $(TARGET).o
98 ifeq ("$(CONFIG_WL_USBAP)","y")
99 wl_high-objs := $(SRCBASE_OFFSET)/wl/linux/wl_high.o
100 obj-m += wl_high.o
101 endif
102 endif
105 #WL_CONF_H: wlconf.h
107 UPDATESH := $(WLCFGDIR)/diffupdate.sh
109 WLTUNEFILE ?= wltunable_lx_router.h
111 $(obj)/$(WLCONF_O): $(obj)/$(WLCONF_H) FORCE
113 $(obj)/$(WLCONF_H): $(WLCFGDIR)/$(WLTUNEFILE) FORCE
114 [ ! -f $@ ] || chmod +w $@
115 @echo "check and update config file"
116 @echo $(if $(VLIST),"VLIST = $(VLIST)")
117 @echo "CONFIG_WL_CONF = $(CONFIG_WL_CONF)"
118 @echo "WLTUNEFILE = $(WLTUNEFILE)"
119 cp $< wltemp
120 $(UPDATESH) wltemp $@
122 FORCE:
124 clean-files += $(SRCBASE_OFFSET)/wl/sys/*.o $(SRCBASE_OFFSET)/wl/phy/*.o $(SRCBASE_OFFSET)/wl/ppr/src/*.o $(SRCBASE_OFFSET)/wl/sys/.*.*.cmd $(SRCBASE_OFFSET)/wl/phy/.*.*.cmd $(SRCBASE_OFFSET)/bcmcrypto/.*.*.cmd $(SRCBASE_OFFSET)/wl/clm/src/*.o $(SRCBASE_OFFSET)/wl/clm/src/.*.*.cmd $(SRCBASE_OFFSET)/shared/bcmwifi/src/.*.*.cmd $(SRCBASE_OFFSET)/shared/bcmwifi/src/.*.*.cmd $(WLCONF_H) $(WLCONF_O)