X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/26fecaf49101a9060bdddba1ee9d319597d90f0c..33def2ea043d1ad02070840426c671282693cb43:/package/broadcom-wl/Makefile diff --git a/package/broadcom-wl/Makefile b/package/broadcom-wl/Makefile index ea80e2ad9..5317e0d43 100644 --- a/package/broadcom-wl/Makefile +++ b/package/broadcom-wl/Makefile @@ -1,22 +1,23 @@ -# -# Copyright (C) 2006 OpenWrt.org +# +# Copyright (C) 2006-2009 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # -# $Id$ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=broadcom-wl -PKG_VERSION:=4.80.53.0 -PKG_RELEASE:=1 +PKG_VERSION:=4.150.10.5.3 +PKG_RELEASE:=2 WLC_VERSION:=0.1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://downloads.openwrt.org/sources -PKG_MD5SUM:=a7d8dde3ce474c361143b83e1d9890b1 +PKG_MD5SUM:=cc615fd49719eea8bce5b2a8813783f3 + +WL_WEXT=1 include $(INCLUDE_DIR)/package.mk @@ -31,9 +32,9 @@ endef define KernelPackage/brcm-wl/Default $(call Package/broadcom-wl/Default) SECTION:=kernel - DEPENDS:=@TARGET_brcm_2_4 + DEPENDS:=@TARGET_brcm_2_4 +wireless-tools TITLE:=Kernel driver for BCM43xx chipsets - FILES:=$(PKG_BUILD_DIR)/kmod/wl$(1).o + FILES:=$(PKG_BUILD_DIR)/driver/wl$(1).o AUTOLOAD:=$(call AutoLoad,30,wl$(1)) endef @@ -60,6 +61,33 @@ define KernelPackage/brcm-wl-mimo/description $(call KernelPackage/brcm-wl/Default/description) endef +define KernelPackage/wlcompat/Default + $(call KernelPackage/brcm-wl/Default,) + TITLE:=Kernel driver for BCM43xx chipsets + FILES:=$(PKG_BUILD_DIR)/wlcompat/wlcompat$(1).o +endef + +define KernelPackage/wlcompat +$(call KernelPackage/wlcompat/Default,) + AUTOLOAD:=$(call AutoLoad,50,wlcompat) +endef + +define KernelPackage/wlcompat/description + This package contains a wrapper module, that provides Wireless Extension + support for the proprietary Broadcom wl module. +endef + +define KernelPackage/wlcompat-debug +$(call KernelPackage/wlcompat/Default,-debug) + TITLE+= (debug) + AUTOLOAD:= +endef + +define KernelPackage/wlcompat-debug/description +$(call KernelPackage/wlcompat/description) + This is the debugging version. +endef + define Package/wlc $(call Package/broadcom-wl/Default) TITLE:=wl driver setup utility @@ -70,16 +98,9 @@ define Package/wlc/description wl driver. endef -define Package/brcm-compat-ldso - TITLE:=Broadcom wl/nas binary compatibility libraries - SECTION:=libs - CATEGORY:=Libraries -endef - define Package/wl $(call Package/broadcom-wl/Default) TITLE:=Proprietary Broadcom wl driver config utility - DEPENDS+=+brcm-compat-ldso endef define Package/wl/description @@ -89,7 +110,6 @@ endef define Package/nas $(call Package/broadcom-wl/Default) - DEPENDS+= +nvram +brcm-compat-ldso TITLE:=Proprietary Broadcom WPA/WPA2 authenticator endef @@ -98,21 +118,7 @@ define Package/nas/description proprietary Broadcom wl driver. endef - -define install_template - $(INSTALL_DIR) $(1)/lib/modules/$(LINUX_VERSION) - $(INSTALL_DATA) $(PKG_BUILD_DIR)/kmod/wl$(2).o.patch $(1)/lib/modules/$(LINUX_VERSION)/ -endef - -define KernelPackage/brcm-wl/install - $(call install_template,$(1),) -endef - -define KernelPackage/brcm-wl_mimo/install - $(call install_template,$(1),_mimo) -endef - -MAKEFLAGS_KMOD:= -C "$(LINUX_DIR)" \ +MAKE_KMOD := $(MAKE) -C "$(LINUX_DIR)" \ CROSS_COMPILE="$(TARGET_CROSS)" \ ARCH="$(LINUX_KARCH)" \ PATH="$(TARGET_PATH)" \ @@ -125,25 +131,48 @@ endef define Build/Compile # Compile the kernel part - $(MAKE) $(MAKEFLAGS_KMOD) \ + $(MAKE_KMOD) \ + SUBDIRS="$(PKG_BUILD_DIR)/driver" \ + modules + $(MAKE_KMOD) \ + SUBDIRS="$(PKG_BUILD_DIR)/driver" \ + MOD_NAME="_mimo" \ modules - $(MAKE) $(MAKEFLAGS_KMOD) MOD_NAME="_mimo" \ + $(MAKE_KMOD) \ + SUBDIRS="$(PKG_BUILD_DIR)/wlcompat" \ + $(if $(WL_WEXT),WL_WEXT=1) \ modules + $(MAKE_KMOD) \ + SUBDIRS="$(PKG_BUILD_DIR)/wlcompat" \ + DEBUG=1 \ + $(if $(WL_WEXT),WL_WEXT=1) \ + modules + + # NVRAM stub + $(TARGET_CC) $(TARGET_CFLAGS) -c -o $(PKG_BUILD_DIR)/nvram/nvram_stub.o $(PKG_BUILD_DIR)/nvram/nvram_stub.c # Compile wlc $(MAKE) -C $(PKG_BUILD_DIR)/wlc \ $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="-I$(PKG_BUILD_DIR)/wlc/include $(TARGET_CFLAGS)" \ + CFLAGS="$(TARGET_CFLAGS)" \ all - $(NO_TRACE_MAKE) -C compat-ldso -f build.mk PKG_INSTALL_DIR="$(PKG_BUILD_DIR)" - $(SED) 's,ld-uClibc.so.0,ld-uClibc.brcm,' \ - $(PKG_BUILD_DIR)/wl \ - $(PKG_BUILD_DIR)/nas + + # Compile libshared + $(MAKE) -C $(PKG_BUILD_DIR)/router/shared \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -I. -I$(PKG_BUILD_DIR)/include -Dlinux=1" \ + all + $(TARGET_CC) -o $(PKG_BUILD_DIR)/nas \ + $(PKG_BUILD_DIR)/nas_exe.o \ + $(PKG_BUILD_DIR)/nvram/nvram_stub.o \ + $(TARGET_LDFLAGS) \ + $(PKG_BUILD_DIR)/router/shared/libshared.a + $(TARGET_CC) -o $(PKG_BUILD_DIR)/wl $(PKG_BUILD_DIR)/wl_exe.o endef -define Package/brcm-compat-ldso/install - $(INSTALL_DIR) $(1)/lib - $(INSTALL_BIN) $(PKG_BUILD_DIR)/ld-uClibc.brcm $(1)/lib/ +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/router/shared/libshared.a $(1)/usr/lib/ endef define Package/wlc/install @@ -158,8 +187,6 @@ define Package/wl/install endef define Package/nas/install - $(INSTALL_DIR) $(1)/usr/lib - $(INSTALL_BIN) $(PKG_BUILD_DIR)/libbcmcrypto.so $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_BIN) $(PKG_BUILD_DIR)/nas $(1)/usr/sbin/ ln -sf nas $(1)/usr/sbin/nas4not @@ -168,7 +195,8 @@ endef $(eval $(call KernelPackage,brcm-wl)) $(eval $(call KernelPackage,brcm-wl-mimo)) -$(eval $(call BuildPackage,brcm-compat-ldso)) +$(eval $(call KernelPackage,wlcompat)) +$(eval $(call KernelPackage,wlcompat-debug)) $(eval $(call BuildPackage,wlc)) $(eval $(call BuildPackage,wl)) $(eval $(call BuildPackage,nas))