summaryrefslogtreecommitdiffstats
path: root/toolchain/kernel-headers/Makefile
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-07-20 14:58:27 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-07-20 14:58:27 +0000
commit955e03f23ad5f2e8b61b256a7147a9f403583381 (patch)
treeed2b40035dd266fda98b08fc95cdea9a43a50c50 /toolchain/kernel-headers/Makefile
parent423c1e707c25d421c6ee7da4e779676aaab2c768 (diff)
more cleanup in toolchain/
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@1501 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/kernel-headers/Makefile')
-rw-r--r--toolchain/kernel-headers/Makefile47
1 files changed, 43 insertions, 4 deletions
diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile
index 2b590c8a0..ab9f36f24 100644
--- a/toolchain/kernel-headers/Makefile
+++ b/toolchain/kernel-headers/Makefile
@@ -1,10 +1,49 @@
include $(TOPDIR)/rules.mk
-include ./kernel-headers.mk
+# linux kernel headers for toolchain
-source: kernel-headers-source
-prepare: kernel-headers
+LINUX_HEADERS_VERSION=2.4.30
+LINUX_KERNEL_MD5SUM:=75d8ce40a3668603017cd186909efe8d
+LINUX_HEADERS_SITE=http://www.fi.kernel.org/pub/linux/kernel/v2.4 \
+ http://www.fr.kernel.org/pub/linux/kernel/v2.4 \
+ http://www.kernel.org/pub/linux/kernel/v2.4 \
+ http://www.de.kernel.org/pub/linux/kernel/v2.4
+
+LINUX_HEADERS_SOURCE=linux-$(LINUX_HEADERS_VERSION).tar.bz2
+LINUX_HEADERS_ARCH:=$(shell echo $(ARCH) | sed -e 's/i[3-9]86/i386/' \
+ -e 's/mipsel/mips/' \
+ -e 's/powerpc/ppc/' \
+ -e 's/sh[234]/sh/' \
+ )
+
+$(DL_DIR)/$(LINUX_HEADERS_SOURCE):
+ -mkdir -p $(DL_DIR)
+ $(SCRIPT_DIR)/download.pl $(DL_DIR) $(LINUX_HEADERS_SOURCE) $(LINUX_KERNEL_MD5SUM) $(LINUX_HEADERS_SITE)
+
+$(LINUX_HEADERS_DIR)/.unpacked: $(DL_DIR)/$(LINUX_HEADERS_SOURCE)
+ mkdir -p $(TOOL_BUILD_DIR)
+ bzcat $(DL_DIR)/$(LINUX_HEADERS_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - \
+ linux-$(LINUX_HEADERS_VERSION)/include \
+ linux-$(LINUX_HEADERS_VERSION)/Makefile \
+ linux-$(LINUX_HEADERS_VERSION)/Rules.make \
+ linux-$(LINUX_HEADERS_VERSION)/arch/$(LINUX_HEADERS_ARCH)/Makefile \
+ linux-$(LINUX_HEADERS_VERSION)/scripts \
+ linux-$(LINUX_HEADERS_VERSION)/arch/$(LINUX_HEADERS_ARCH)/config*.in \
+ linux-$(LINUX_HEADERS_VERSION)/*/*/Config.in \
+ linux-$(LINUX_HEADERS_VERSION)/*/Config.in
+ ln -sf $(LINUX_HEADERS_DIR)-$(LINUX_HEADERS_VERSION) $(LINUX_HEADERS_DIR)
+ $(SED) 's/@expr length/@-expr length/' $(LINUX_HEADERS_DIR)/Makefile
+ touch $(LINUX_HEADERS_DIR)/.unpacked
+
+$(LINUX_HEADERS_DIR)/.configured: $(LINUX_HEADERS_DIR)/.unpacked
+ -cp -af config.$(LINUX_HEADERS_ARCH) $(LINUX_HEADERS_DIR)/.config
+ $(MAKE) -C $(LINUX_HEADERS_DIR) ARCH=$(LINUX_HEADERS_ARCH) oldconfig include/linux/version.h
+ touch $(LINUX_HEADERS_DIR)/.configured
+
+source: $(DL_DIR)/$(LINUX_HEADERS_SOURCE)
+prepare: $(LINUX_HEADERS_DIR)/.configured
compile:
install:
-clean: kernel-headers-toolclean
+clean:
+ rm -rf $(LINUX_HEADERS_DIR)