summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-08-20 16:52:46 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-08-20 16:52:46 +0000
commitbf03013c033d3aac939ee7fe253045e84ab1386c (patch)
tree6484696ae15018a9fd0b4bf164a2dce252db29ab
parent7b460a093993bc6e133c77a4f55986840c1d4d70 (diff)
mac80211: speed up build by reducing the makefile shell calls, fix forced disable of rfkill
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@17335 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/mac80211/Makefile14
-rw-r--r--package/mac80211/patches/001-speedup_build.patch155
-rw-r--r--package/mac80211/patches/002-disable_rfkill.patch58
-rw-r--r--package/mac80211/patches/009-remove_mac80211_module_dependence.patch2
4 files changed, 223 insertions, 6 deletions
diff --git a/package/mac80211/Makefile b/package/mac80211/Makefile
index fa42cbcb7d..1b283b9014 100644
--- a/package/mac80211/Makefile
+++ b/package/mac80211/Makefile
@@ -457,7 +457,6 @@ MAKE_OPTS:= \
CONFIG_RT2X00=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
CONFIG_RT2X00_LIB_PCI=$(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),m) \
CONFIG_RT2X00_LIB_USB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),m) \
- CONFIG_RT2X00_LIB_RFKILL= \
CONFIG_RT2400PCI=$(if $(CONFIG_PACKAGE_kmod-rt2400-pci),m) \
CONFIG_RT2500PCI=$(if $(CONFIG_PACKAGE_kmod-rt2500-pci),m) \
CONFIG_RT2500USB=$(if $(CONFIG_PACKAGE_kmod-rt2500-usb),m) \
@@ -477,6 +476,9 @@ MAKE_OPTS:= \
CONFIG_IPW2200= \
CONFIG_NL80211=y \
CONFIG_LIB80211= \
+ CONFIG_LIB80211_CRYPT_WEP= \
+ CONFIG_LIB80211_CRYPT_CCMP= \
+ CONFIG_LIB80211_CRYPT_TKIP= \
CONFIG_IWLWIFI= \
CONFIG_IWLAGN= \
CONFIG_MWL8K= \
@@ -485,15 +487,17 @@ MAKE_OPTS:= \
CONFIG_ADM8211= \
CONFIG_USB_NET_RNDIS_HOST= \
CONFIG_USB_NET_RNDIS_WLAN= \
+ CONFIG_USB_NET_CDCETHER= \
CONFIG_AT76C50X_USB= \
- CONFIG_RFKILL_BACKPORT= \
- CONFIG_RFKILL_BACKPORT_LEDS= \
- CONFIG_RFKILL_BACKPORT_INPUT= \
CONFIG_WL12XX= \
CONFIG_EEPROM_93CX6= \
CONFIG_AR9170_USB= \
+ MADWIFI= \
+ OLD_IWL= \
KLIB_BUILD="$(LINUX_DIR)" \
- MODPROBE=:
+ MODPROBE=: \
+ KLIB=$(TARGET_MODULES_DIR) \
+ KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER)))
define Build/Prepare
rm -rf $(PKG_BUILD_DIR)
diff --git a/package/mac80211/patches/001-speedup_build.patch b/package/mac80211/patches/001-speedup_build.patch
new file mode 100644
index 0000000000..6f4c3d113e
--- /dev/null
+++ b/package/mac80211/patches/001-speedup_build.patch
@@ -0,0 +1,155 @@
+--- a/config.mk
++++ b/config.mk
+@@ -17,15 +17,19 @@ ifeq ($(CONFIG_MAC80211),y)
+ $(error "ERROR: you have MAC80211 compiled into the kernel, CONFIG_MAC80211=y, as such you cannot replace its mac80211 driver. You need this set to CONFIG_MAC80211=m. If you are using Fedora upgrade your kernel as later version should this set as modular. For further information on Fedora see https://bugzilla.redhat.com/show_bug.cgi?id=470143. If you are using your own kernel recompile it and make mac80211 modular")
+ endif
+
++
+ # We will warn when you don't have MQ support or NET_SCHED enabled.
+ #
+ # We could consider just quiting if MQ and NET_SCHED is disabled
+ # as I suspect all users of this package want 802.11e (WME) and
+ # 802.11n (HT) support.
+-ifeq ($(shell test -e $(KLIB_BUILD)/Makefile && echo yes),yes)
+-KERNEL_SUBLEVEL = $(shell $(MAKE) -C $(KLIB_BUILD) kernelversion | sed -n 's/^2\.6\.\([0-9]\+\).*/\1/p')
++ifneq ($(wildcard $(KLIB_BUILD)/Makefile),)
++COMPAT_LATEST_VERSION = 32
++KERNEL_SUBLEVEL ?= $(shell $(MAKE) -C $(KLIB_BUILD) kernelversion | sed -n 's/^2\.6\.\([0-9]\+\).*/\1/p')
++COMPAT_VERSIONS ?= $(shell I=$(COMPAT_LATEST_VERSION); while [ "$$I" -gt $(KERNEL_SUBLEVEL) ]; do echo $$I; I=$$(($$I - 1)); done)
++$(foreach ver,$(COMPAT_VERSIONS),$(eval CONFIG_COMPAT_WIRELESS_$(ver)=y))
+
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -lt 25 && echo yes),yes)
++ifdef CONFIG_COMPAT_WIRELESS_25
+ $(error "ERROR: You should use compat-wireless-2.6-old for older kernels, this one is for kernels >= 2.6.25")
+ endif
+
+@@ -34,56 +38,10 @@ $(error "ERROR: your kernel has CONFIG_C
+ endif
+
+
+-# Compat wireless compat-2.6.2x.c files gets selected here
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 21 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_22=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 22 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_23=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 23 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_24=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 24 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_25=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 25 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_26=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 26 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_27=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 27 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_28=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 28 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_29=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 29 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_30=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 30 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_31=y
+-endif
+-
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 31 && echo yes),yes)
+-CONFIG_COMPAT_WIRELESS_32=y
+-endif
+-
+ # 2.6.27 has FTRACE_DYNAMIC borked, so we will complain if
+ # you have it enabled, otherwise you will very likely run into
+ # a kernel panic.
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -eq 27 && echo yes),yes)
++ifeq ($(KERNEL_SUBLEVEL),27)
+ ifeq ($(CONFIG_DYNAMIC_FTRACE),y)
+ $(error "ERROR: Your 2.6.27 kernel has CONFIG_DYNAMIC_FTRACE, please upgrade your distribution kernel as newer ones should not have this enabled (and if so report a bug) or remove this warning if you know what you are doing")
+ endif
+@@ -291,7 +249,7 @@ endif
+
+ ifneq ($(CONFIG_PCMCIA),)
+
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 26 && echo yes),yes)
++ifdef CONFIG_COMPAT_WIRELESS_25
+ CONFIG_LIBERTAS=n
+ CONFIG_LIBERTAS_CS=n
+ else
+@@ -327,7 +285,7 @@ CONFIG_RTL8187=m
+
+ CONFIG_AT76C50X_USB=m
+
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -ge 28 && echo yes),yes)
++ifndef CONFIG_COMPAT_WIRELESS_28
+ CONFIG_AR9170_USB=m
+ CONFIG_AR9170_LEDS=y
+ endif
+@@ -343,7 +301,7 @@ CONFIG_RT73USB=m
+ NEED_RT2X00_FIRMWARE=y
+ endif
+
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 26 && echo yes),yes)
++ifdef CONFIG_COMPAT_WIRELESS_27
+ CONFIG_LIBERTAS_THINFIRM_USB=n
+ CONFIG_LIBERTAS_USB=n
+ NEED_LIBERTAS=n
+@@ -360,7 +318,7 @@ ifneq ($(CONFIG_SPI_MASTER),)
+ CONFIG_WL1251=m
+ CONFIG_P54_SPI=m
+
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 26 && echo yes),yes)
++ifdef CONFIG_COMPAT_WIRELESS_27
+ CONFIG_LIBERTAS_SPI=n
+ NEED_LIBERTAS=n
+ else
+@@ -372,7 +330,7 @@ endif # end of SPI driver list
+
+ ifneq ($(CONFIG_MMC),)
+
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 26 && echo yes),yes)
++ifdef CONFIG_COMPAT_WIRELESS_27
+ CONFIG_LIBERTAS_SDIO=n
+ NEED_LIBERTAS=n
+ else
+@@ -382,7 +340,7 @@ endif
+
+ # Activate iwmc3200wifi support only on kernel >= 2.6.29.
+ # iwmc3200wifi uses new netdev_ops api no supported by old kernel.
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -ge 29 && echo yes),yes)
++ifndef CONFIG_COMPAT_WIRELESS_29
+ CONFIG_IWM=m
+ # CONFIG_IWM_DEBUG=y
+ endif
+@@ -425,7 +383,7 @@ CONFIG_SSB=m
+ CONFIG_SSB_SPROM=y
+ # CONFIG_SSB_DEBUG=y
+
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 26 && echo yes),yes)
++ifdef CONFIG_COMPAT_WIRELESS_27
+ CONFIG_LIBERTAS=n
+ else
+ ifeq ($(NEED_LIBERTAS),y)
+@@ -437,7 +395,7 @@ endif
+
+ # We need the backported rfkill module on kernel < 2.6.31.
+ # In more recent kernel versions use the in kernel rfkill module.
+-ifeq ($(shell test $(KERNEL_SUBLEVEL) -le 30 && echo yes),yes)
++ifdef CONFIG_COMPAT_WIRELESS_31
+ CONFIG_RFKILL_BACKPORT=m
+ CONFIG_RFKILL_BACKPORT_LEDS=y
+ CONFIG_RFKILL_BACKPORT_INPUT=y
diff --git a/package/mac80211/patches/002-disable_rfkill.patch b/package/mac80211/patches/002-disable_rfkill.patch
new file mode 100644
index 0000000000..6488ef6d13
--- /dev/null
+++ b/package/mac80211/patches/002-disable_rfkill.patch
@@ -0,0 +1,58 @@
+--- a/config.mk
++++ b/config.mk
+@@ -127,14 +127,14 @@ ifneq ($(CONFIG_PCI),)
+
+ CONFIG_ATH5K=m
+ # CONFIG_ATH5K_DEBUG=y
+-CONFIG_ATH5K_RFKILL=y
++# CONFIG_ATH5K_RFKILL=y
+ CONFIG_ATH9K=m
+ # CONFIG_ATH9K_DEBUG=y
+
+
+ CONFIG_IWLWIFI=m
+ CONFIG_IWLWIFI_LEDS=y
+-CONFIG_IWLWIFI_RFKILL=y
++# CONFIG_IWLWIFI_RFKILL=y
+ CONFIG_IWLWIFI_SPECTRUM_MEASUREMENT=y
+ # CONFIG_IWLWIFI_DEBUG=y
+ # CONFIG_IWLWIFI_DEBUGFS=y
+@@ -154,7 +154,7 @@ CONFIG_B43_PCMCIA=y
+ endif
+ CONFIG_B43_PIO=y
+ CONFIG_B43_LEDS=y
+-CONFIG_B43_RFKILL=y
++# CONFIG_B43_RFKILL=y
+ CONFIG_B43_PHY_LP=y
+ # CONFIG_B43_DEBUG=y
+ # CONFIG_B43_FORCE_PIO=y
+@@ -164,7 +164,7 @@ CONFIG_B43LEGACY_HWRNG=y
+ CONFIG_B43LEGACY_PCI_AUTOSELECT=y
+ CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
+ CONFIG_B43LEGACY_LEDS=y
+-CONFIG_B43LEGACY_RFKILL=y
++# CONFIG_B43LEGACY_RFKILL=y
+ # CONFIG_B43LEGACY_DEBUG=y
+ CONFIG_B43LEGACY_DMA=y
+ CONFIG_B43LEGACY_PIO=y
+@@ -354,7 +354,7 @@ CONFIG_RT2X00_LIB=m
+ CONFIG_RT2X00_LIB_HT=y
+ CONFIG_RT2X00_LIB_FIRMWARE=y
+ CONFIG_RT2X00_LIB_CRYPTO=y
+-CONFIG_RT2X00_LIB_RFKILL=y
++# CONFIG_RT2X00_LIB_RFKILL=y
+ CONFIG_RT2X00_LIB_LEDS=y
+ # CONFIG_RT2X00_LIB_DEBUGFS=y
+ # CONFIG_RT2X00_DEBUG=y
+@@ -396,8 +396,8 @@ endif
+ # We need the backported rfkill module on kernel < 2.6.31.
+ # In more recent kernel versions use the in kernel rfkill module.
+ ifdef CONFIG_COMPAT_WIRELESS_31
+-CONFIG_RFKILL_BACKPORT=m
+-CONFIG_RFKILL_BACKPORT_LEDS=y
+-CONFIG_RFKILL_BACKPORT_INPUT=y
++# CONFIG_RFKILL_BACKPORT=m
++# CONFIG_RFKILL_BACKPORT_LEDS=y
++# CONFIG_RFKILL_BACKPORT_INPUT=y
+ endif
+
diff --git a/package/mac80211/patches/009-remove_mac80211_module_dependence.patch b/package/mac80211/patches/009-remove_mac80211_module_dependence.patch
index e84097aab0..d1c91594ae 100644
--- a/package/mac80211/patches/009-remove_mac80211_module_dependence.patch
+++ b/package/mac80211/patches/009-remove_mac80211_module_dependence.patch
@@ -1,6 +1,6 @@
--- a/config.mk
+++ b/config.mk
-@@ -89,21 +89,6 @@ $(error "ERROR: Your 2.6.27 kernel has C
+@@ -47,21 +47,6 @@ $(error "ERROR: Your 2.6.27 kernel has C
endif
endif