2 # Makefile for the 802.11 NET80211 module.
8 TOP = $(srctree)/$(src)/..
10 include $(TOP)/BuildCaps.inc
11 include $(TOP)/ath_hal/ah_target.inc
13 COMPAT = $(TOP)/include
15 ATH_HAL = $(TOP)/ath_hal
18 INCS = -include $(COMPAT)/compat.h -I$(COMPAT)
19 INCS += -I$(TOP) -I$(ATH_HAL) -I$(HAL)
20 EXTRA_CFLAGS += $(INCS) $(COPTS) -DOPT_AH_H=\"public/$(TARGET).opt_ah.h\"
23 # There are two authenticator mechanisms: an in-kernel implementation
24 # (wlan_auth+wlan_radius) and an external implementation (wlan_xauth) that
25 # requires a user process to manage the authentication process. By default
26 # the external authenticator is used. ieee80211_proto.c has a table of module
27 # names that defines the default module to auto-load for each authentication
28 # scheme; to get the in-kernel authenticator by default modify it to load
29 # wlan_auth instead of wlan_xauth or manually load wlan_auth prior to use.
31 MOD_AUTH := wlan_xauth.o
33 # Scanning policy is split into modules. The default policy modules
34 # separate station-mode scanning support from ap-mode scanning support.
36 MOD_SCAN := wlan_scan_sta.o wlan_scan_ap.o
38 obj-$(CONFIG_ATHEROS) += wlan.o wlan_wep.o wlan_tkip.o wlan_ccmp.o wlan_acl.o \
39 $(MOD_AUTH) $(MOD_SCAN)
41 wlan-objs := if_media.o \
42 ieee80211.o ieee80211_beacon.o ieee80211_crypto.o \
43 ieee80211_crypto_none.o ieee80211_input.o ieee80211_node.o \
44 ieee80211_output.o ieee80211_proto.o ieee80211_power.o \
45 ieee80211_scan.o ieee80211_wireless.o ieee80211_linux.o \
46 ieee80211_monitor.o ieee80211_rate.o ieee80211_skb.o
47 wlan_wep-objs := ieee80211_crypto_wep.o
48 wlan_tkip-objs := ieee80211_crypto_tkip.o
49 wlan_ccmp-objs := ieee80211_crypto_ccmp.o
50 wlan_xauth-objs := ieee80211_xauth.o
51 wlan_acl-objs := ieee80211_acl.o
52 wlan_scan_sta-objs := ieee80211_scan_sta.o
53 wlan_scan_ap-objs := ieee80211_scan_ap.o
55 ifeq ($(VERSION).$(PATCHLEVEL),2.4)
56 export-objs := if_media.o \
57 ieee80211.o ieee80211_beacon.o ieee80211_crypto.o \
58 ieee80211_crypto_none.o ieee80211_input.o ieee80211_node.o \
59 ieee80211_output.o ieee80211_power.o ieee80211_proto.o \
60 ieee80211_scan.o ieee80211_wireless.o ieee80211_linux.o \
61 ieee80211_crypto_wep.o ieee80211_crypto_tkip.o \
62 ieee80211_crypto_ccmp.o ieee80211_xauth.o ieee80211_rate.o \
64 list-multi := wlan.o wlan_wep.o wlan_tkip.o wlan_ccmp.o wlan_acl.o \
65 $(MOD_AUTH) $(MOD_SCAN)
67 O_TARGET := net80211.o
68 include $(TOPDIR)/Rules.make
71 $(LD) -o wlan.o -r $(wlan-objs)
72 wlan_wep.o: $(wlan_wep-objs)
73 $(LD) -o wlan_wep.o -r $(wlan_wep-objs)
74 wlan_tkip.o: $(wlan_tkip-objs)
75 $(LD) -o wlan_tkip.o -r $(wlan_tkip-objs)
76 wlan_ccmp.o: $(wlan_ccmp-objs)
77 $(LD) -o wlan_ccmp.o -r $(wlan_ccmp-objs)
78 wlan_xauth.o: $(wlan_xauth-objs)
79 $(LD) -o wlan_xauth.o -r $(wlan_xauth-objs)
80 wlan_acl.o: $(wlan_acl-objs)
81 $(LD) -o wlan_acl.o -r $(wlan_acl-objs)
82 wlan_scan_sta.o: $(wlan_scan_sta-objs)
83 $(LD) -o wlan_scan_sta.o -r $(wlan_scan_sta-objs)
84 wlan_scan_ap.o: $(wlan_scan_ap-objs)
85 $(LD) -o wlan_scan_ap.o -r $(wlan_scan_ap-objs)