include Config
-VER = 2009-03-30
+ifeq "$(XEN)" "1"
+ VERSUFIX=ipfire-xen
+else
+ VERSUFIX=ipfire
+endif
+
+VER = 2009-06-17
THISAPP = compat-wireless-$(VER)
DL_FILE = $(THISAPP).tar.bz2
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
-ifeq "$(SMP)" ""
- TARGET = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)
-else
- TARGET = $(DIR_INFO)/$(THISAPP)-smp
-endif
+TARGET = $(DIR_INFO)/$(THISAPP)-kmod-$(KVER)-$(VERSUFIX)
###############################################################################
# Top-level Rules
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 88ea3e5b42ef5fbcec8b91043dd3aa76
+$(DL_FILE)_MD5 = 9aeba3a4c19cbfb87df45a304ba7d5ba
install : $(TARGET)
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xjf $(DIR_DL)/$(DL_FILE)
+ # Xen
+ifeq "$(XEN)" "1"
+# some dirty hacks that it is building
+ mv /usr/src/linux/include/linux/tracepoint.h /usr/src/linux/include/linux/tracepoint.h.xen
+ touch /usr/src/linux/include/linux/tracepoint.h
+ cd /usr/src/ && patch -Np1 < $(DIR_SRC)/src/patches/compat-xen-1.patch
+endif
+
# Apply some wlan-card patches
- cd $(DIR_APP) && cat $(DIR_SRC)/src/patches/compat-wireless_*.patch | patch -Np1
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/compat-wireless_rt2500pci-skb_allignment.patch
+
+# Enable B43 NPHY / PHY_LP
+ echo "CONFIG_B43_NPHY=y" >> $(DIR_APP)/config.mk
+ echo "CONFIG_B43_PHY_LP=y" >> $(DIR_APP)/config.mk
- cd $(DIR_APP) && sed -i -e "s|uname -r|echo $(KVER)-ipfire|g" Makefile
- cd $(DIR_APP) && sed -i -e "s|/sbin/modprobe|echo|g" Makefile
+
+ # This is for stable version
+ # Build only the modules
cd $(DIR_APP) && sed -i -e "s|install: uninstall modules|install: modules|g" Makefile
cd $(DIR_APP) && sed -i -e "s|\t@# All the scripts|\nende:|g" Makefile
- cd $(DIR_APP) && make KMODDIR=kernel install
+
+ cd $(DIR_APP) && make KLIB=/lib/modules/$(KVER)-$(VERSUFIX) KMODDIR=kernel install
+
+
+ # This is for new developer versions (New makefile)
+ # cd $(DIR_APP) && make KLIB=/lib/modules/$(KVER)-$(VERSUFIX) KMODDIR=kernel install-modules
+
+ # # The makefile put the modules to a wrong place move back...
+ # cp -rf /lib/modules/$(KVER)-$(VERSUFIX)/lib /
+ # rm -rf /lib/modules/$(KVER)-$(VERSUFIX)/lib
+
+ # Xen
+ifeq "$(XEN)" "1"
+# remove dirty hacks. restores to the status before the dirty hacks
+ cd /usr/src/ && patch -Np1 < $(DIR_SRC)/src/patches/compat-xen-2.patch
+ mv /usr/src/linux/include/linux/tracepoint.h.xen /usr/src/linux/include/linux/tracepoint.h
+endif
+
+ # Set Regulatory Domain to "EU" (use Channel 1-14 max. 20db)
+ echo options cfg80211 ieee80211_regdom=EU > /etc/modprobe.d/cfg80211
+
+ # Remove original kernel rtl818x modules (compat wireless use the
+ # place of newer kernels and so not overwrite it...
+ -rm -rf /lib/modules/$(KVER)-$(VERSUFIX)/kernel/drivers/net/wireless/rtl818?.ko
+
+ -rm -rf $(DIR_APP)
@$(POSTBUILD)
+