PKG_NAME:=mac80211
PKG_RELEASE:=1
-PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)
-
include $(INCLUDE_DIR)/package.mk
ifeq ($(DUMP),)
include $(LINUX_DIR)/.config
define KernelPackage/mac80211
SUBMENU:=Wireless Drivers
- TITLE:=DeviceScape 802.11 Wireless Networking Stack
- DEPENDS:=@LINUX_2_6 +kmod-ieee80211
- DESCRIPTION:=\
- This package contains the DeviceScape 80211 wireless stack.
- VERSION:=$(PKG_RELEASE)+$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)
- ifneq ($(KERNEL_PATCHVER),2.6.21)
- FILES:= \
+ TITLE:=Linux 802.11 Wireless Networking Stack
+ DEPENDS:=@LINUX_2_6 +kmod-crypto-arc4 +kmod-crypto-aes
+ FILES:= \
$(PKG_BUILD_DIR)/mac80211/mac80211.$(LINUX_KMOD_SUFFIX) \
- $(PKG_BUILD_DIR)/mac80211/rc80211_lowest.$(LINUX_KMOD_SUFFIX) \
$(PKG_BUILD_DIR)/mac80211/rc80211_simple.$(LINUX_KMOD_SUFFIX) \
$(PKG_BUILD_DIR)/wireless/cfg80211.$(LINUX_KMOD_SUFFIX)
- AUTOLOAD:=$(call AutoLoad,20,cfg80211 mac80211 rc80211_lowest rc80211_simple)
- endif
+ AUTOLOAD:=$(call AutoLoad,20,cfg80211 mac80211 rc80211_simple)
endef
-define Build/Prepare
- mkdir -p $(PKG_BUILD_DIR)/mac80211
- $(CP) ./src/mac80211/* $(PKG_BUILD_DIR)/mac80211/
- mkdir -p $(PKG_BUILD_DIR)/wireless
- $(CP) ./src/wireless/* $(PKG_BUILD_DIR)/wireless/
+define KernelPackage/mac80211/description
+Linux 802.11 Wireless Networking Stack
endef
-MAKE_OPTS:=-C "$(LINUX_DIR)" \
+CONFOPTS:=MAC80211 CFG80211
+
+BUILDFLAGS:= \
+ $(foreach opt,$(CONFOPTS),-DCONFIG_$(opt) ) \
+ $(if $(CONFIG_LEDS_TRIGGERS), -DCONFIG_MAC80211_LEDS -DCONFIG_LEDS_TRIGGERS -DCONFIG_NL80211)
+
+MAKE_OPTS:= \
CROSS_COMPILE="$(TARGET_CROSS)" \
ARCH="$(LINUX_KARCH)" \
- EXTRA_CFLAGS="$(BUILDFLAGS) -DCONFIG_MAC80211_LEDS" \
- CONFIG_MAC80211=m \
- CONFIG_MAC80211_LEDS=y
+ EXTRA_CFLAGS="$(BUILDFLAGS)" \
+ $(foreach opt,$(CONFOPTS),CONFIG_$(opt)=m) \
+ CONFIG_NL80211=y \
+ CONFIG_MAC80211_LEDS=$(CONFIG_LEDS_TRIGGERS) \
+ LINUXINCLUDE="-I${CURDIR}/src/include -I$(LINUX_DIR)/include -include linux/autoconf.h" \
+
+ifneq ($(findstring 2.6.23,$(LINUX_VERSION)),)
+ define Build/Prepare
+ mkdir -p $(PKG_BUILD_DIR)/mac80211
+ $(CP) ./src/mac80211/* $(PKG_BUILD_DIR)/mac80211/
+ mkdir -p $(PKG_BUILD_DIR)/wireless
+ $(CP) ./src/wireless/* $(PKG_BUILD_DIR)/wireless/
+ endef
-ifneq ($(KERNEL_PATCHVER),2.6.21)
define Build/Compile
- $(MAKE) $(MAKE_OPTS) SUBDIRS="$(PKG_BUILD_DIR)/wireless" modules
- $(MAKE) $(MAKE_OPTS) SUBDIRS="$(PKG_BUILD_DIR)/mac80211" modules
+ $(MAKE) -C "$(LINUX_DIR)" $(MAKE_OPTS) SUBDIRS="$(PKG_BUILD_DIR)/wireless" modules
+ $(MAKE) -C "$(LINUX_DIR)" $(MAKE_OPTS) SUBDIRS="$(PKG_BUILD_DIR)/mac80211" modules
+ endef
+
+ define Build/InstallDev
+ mkdir -p $(1)/usr/include/mac80211
+ $(CP) ./src/include/* $(1)/usr/include/mac80211/
+ endef
+
+ define Build/UninstallDev
+ rm -rf $(1)/usr/include/mac80211
+ endef
+
+ define KernelPackage/mac80211/install
+ $(INSTALL_DIR) $(1)/lib/wifi
+ $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
endef
+else
+ override CONFIG_PACKAGE_kmod-mac80211=
endif
$(eval $(call KernelPackage,mac80211))