summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/diag/Makefile43
-rw-r--r--package/diag/src/Makefile19
-rw-r--r--package/diag/src/diag.c (renamed from package/diag/diag_led.c)0
3 files changed, 44 insertions, 18 deletions
diff --git a/package/diag/Makefile b/package/diag/Makefile
index d6aa4bf170..6fed3b51bf 100644
--- a/package/diag/Makefile
+++ b/package/diag/Makefile
@@ -3,35 +3,42 @@
include $(TOPDIR)/rules.mk
include $(TOPDIR)/package/kernel.mk
-PKG_NAME := kmod-diag
-PKG_RELEASE := 1
-PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
+PKG_NAME:=kmod-diag
+PKG_RELEASE:=1
-include $(TOPDIR)/package/rules.mk
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
-DIAG_FLAGS:=$(TARGET_CFLAGS) -D__KERNEL__ -fno-strict-aliasing -fno-common -fomit-frame-pointer -G 0 \
- -mno-abicalls -fno-pic -finline-limit=100000 -mabi=32 -march=mips32 -Wa,-32 -Wa,-march=mips32 \
- -Wa,-mips32 -Wa,--trap -Wstrict-prototypes -Wno-trigraphs -DMODULE -mlong-calls -fno-common -I. -I linux-2.4 -nostdinc \
- -iwithprefix include -I$(LINUX_DIR)/include -I$(LINUX_DIR)/include/asm/gcc -c -I$(LINUX_DIR)/arch/mips/bcm947xx/include -DBCMDRIVER
+include $(TOPDIR)/package/rules.mk
define Package/kmod-diag
- SECTION:=drivers
- CATEGORY:=Drivers
- DEFAULT:=y
- DEPENDS:=@LINUX_2_4_BRCM
- TITLE:=Driver for router LEDs and Buttons
- DESCRIPTION:=Driver for router LEDs and Buttons
- URL:=
- VERSION:=$(LINUX_VERSION)-$(BOARD)-$(PKG_RELEASE)
+SECTION:=drivers
+CATEGORY:=Drivers
+DEFAULT:=y
+DEPENDS:=@LINUX_2_4_BRCM
+TITLE:=Driver for router LEDs and Buttons
+DESCRIPTION:=Driver for router LEDs and Buttons
+VERSION:=$(LINUX_VERSION)-$(BOARD)-$(PKG_RELEASE)
+endef
+
+define Build/Prepare
+ mkdir -p $(PKG_BUILD_DIR)
+ $(CP) ./src/* $(PKG_BUILD_DIR)/
endef
define Build/Compile
- $(TARGET_CC) $(DIAG_FLAGS) -o $(PKG_BUILD_DIR)/diag.o diag_led.c
+ $(MAKE) -C "$(LINUX_DIR)" \
+ CROSS_COMPILE="$(TARGET_CROSS)" \
+ ARCH="$(LINUX_KARCH)" \
+ PATH="$(TARGET_PATH)" \
+ SUBDIRS="$(PKG_BUILD_DIR)" \
+ EXTRA_CFLAGS="-DBCMDRIVER -I$(LINUX_DIR)/arch/mips/bcm947xx/include" \
+ modules
endef
define Package/kmod-diag/install
install -d -m0755 $(1)/lib/modules/$(LINUX_VERSION)
- $(CP) $(PKG_BUILD_DIR)/diag.o $(1)/lib/modules/$(LINUX_VERSION)/
+ $(CP) $(PKG_BUILD_DIR)/diag.$(LINUX_KMOD_SUFFIX) \
+ $(1)/lib/modules/$(LINUX_VERSION)/
endef
$(eval $(call BuildPackage,kmod-diag))
diff --git a/package/diag/src/Makefile b/package/diag/src/Makefile
new file mode 100644
index 0000000000..169f2e9725
--- /dev/null
+++ b/package/diag/src/Makefile
@@ -0,0 +1,19 @@
+# $Id$
+#
+# Makefile for diag driver
+#
+# Copyright (C) 2005 Felix Fietkau <nbd@openwrt.org>
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version
+# 2 of the License, or (at your option) any later version.
+#
+
+obj-m := diag.o
+
+ifeq ($(MAKING_MODULES),1)
+export-objs := diag.o
+
+-include $(TOPDIR)/Rules.make
+endif
diff --git a/package/diag/diag_led.c b/package/diag/src/diag.c
index 6ad7ff102f..6ad7ff102f 100644
--- a/package/diag/diag_led.c
+++ b/package/diag/src/diag.c