X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/0b0afa4d818ec18187b09055fbb8d84a01590d6e..e799c14a2d24d7d6d4934f768a208915009e268a:/package/switch/Makefile

diff --git a/package/switch/Makefile b/package/switch/Makefile
index befae3410..81ae34655 100644
--- a/package/switch/Makefile
+++ b/package/switch/Makefile
@@ -1,3 +1,9 @@
+# 
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
 # $Id$
 
 include $(TOPDIR)/rules.mk
@@ -10,14 +16,18 @@ PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/kmod-switch
-SECTION:=drivers
-CATEGORY:=Drivers
-DEPENDS:=@LINUX_2_6_BRCM||LINUX_2_4_BRCM
-DEFAULT:=y
-TITLE:=Switch drivers
-DESCRIPTION:=Switch drivers for ADM6996L and BCM53XX RoboSwitch
-VERSION:=$(LINUX_VERSION)-$(BOARD)-$(PKG_RELEASE)
+define KernelPackage/switch
+  SUBMENU:=Other modules
+  DEPENDS:=@LINUX_2_6_BRCM||LINUX_2_4_BRCM||LINUX_2_6_BRCM47XX
+  TITLE:=Switch drivers
+  DESCRIPTION:=\
+	This package contains switch drivers for ADM6996L and BCM53XX RoboSwitch.
+  VERSION:=$(LINUX_VERSION)-$(BOARD)-$(PKG_RELEASE)
+  FILES:= \
+	$(PKG_BUILD_DIR)/switch-core.$(LINUX_KMOD_SUFFIX) \
+	$(PKG_BUILD_DIR)/switch-adm.$(LINUX_KMOD_SUFFIX) \
+	$(PKG_BUILD_DIR)/switch-robo.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,20,switch-core switch-robo switch-adm)
 endef
 
 define Build/Prepare
@@ -25,20 +35,27 @@ define Build/Prepare
 	$(CP) ./src/* $(PKG_BUILD_DIR)/
 endef
 
+ifeq ($(BOARD),brcm)
+BUILDFLAGS := -DBROADCOM -DBCMDRIVER -I$(LINUX_DIR)/arch/mips/bcm947xx/include
+else
+ifeq ($(BOARD),brcm47xx)
+BUILDFLAGS := -DBROADCOM
+endif
+endif
+
+
 define Build/Compile
 	$(MAKE) -C "$(LINUX_DIR)" \
 		CROSS_COMPILE="$(TARGET_CROSS)" \
 		ARCH="$(LINUX_KARCH)" \
-		PATH="$(TARGET_PATH)" \
 		SUBDIRS="$(PKG_BUILD_DIR)" \
-		EXTRA_CFLAGS="-DBCMGPIO2" \
+		EXTRA_CFLAGS="$(BUILDFLAGS)" \
 		modules
 endef
 	
-define Package/kmod-switch/install
-	install -m0755 -d $(1)/lib/modules/$(LINUX_VERSION)
-	$(CP) $(PKG_BUILD_DIR)/*.$(LINUX_KMOD_SUFFIX) \
-		$(1)/lib/modules/$(LINUX_VERSION)
+define KernelPackage/switch/install
+	$(INSTALL_DIR) $(1)/lib/network/
+	$(INSTALL_BIN) ./files/switch.sh $(1)/lib/network/
 endef
 
-$(eval $(call BuildPackage,kmod-switch))
+$(eval $(call KernelPackage,switch))