From ca098282b690acd9c34afecf367200d0a7fc1400 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Sat, 24 Mar 2007 13:42:54 +0000
Subject: move default templates for the kernel build to kernel-defaults.mk
 (similar to package-defaults.mk)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6664 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 include/kernel-build.mk    | 86 +-----------------------------------------
 include/kernel-defaults.mk | 93 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 95 insertions(+), 84 deletions(-)
 create mode 100644 include/kernel-defaults.mk

diff --git a/include/kernel-build.mk b/include/kernel-build.mk
index b2837d1df3..a89d9d9f25 100644
--- a/include/kernel-build.mk
+++ b/include/kernel-build.mk
@@ -1,5 +1,5 @@
 # 
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006-2007 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -35,12 +35,6 @@ endif
 # remove duplicates
 FEATURES:=$(sort $(FEATURES))
 
-# For target profile selection - the default set
-DEFAULT_PACKAGES:=base-files libgcc uclibc bridge busybox dnsmasq dropbear iptables mtd ppp ppp-mod-pppoe mtd kmod-ipt-nathelper
-ifneq ($(KERNEL),2.4)
-  DEFAULT_PACKAGES+=udevtrigger hotplug2
-endif
-
 ifeq ($(DUMP),1)
   all: dumpinfo
 else
@@ -59,99 +53,24 @@ else
   )
 endif
 
-KERNELNAME=
-ifneq (,$(findstring x86,$(BOARD)))
-  KERNELNAME="bzImage"
-endif
-ifneq (,$(findstring rdc,$(BOARD)))
-  KERNELNAME="bzImage"
-endif
-ifneq (,$(findstring ppc,$(BOARD)))
-  KERNELNAME="uImage"
-endif
-
+include $(INCLUDE_DIR)/kernel-defaults.mk
 
-define Kernel/Prepare/Default
-	bzcat $(DL_DIR)/$(LINUX_SOURCE) | tar -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
-	if [ -d $(GENERIC_PLATFORM_DIR)/patches ]; then $(PATCH) $(LINUX_DIR) $(GENERIC_PLATFORM_DIR)/patches; fi
-	if [ -d ./files ]; then $(CP) ./files/* $(LINUX_DIR)/; fi
-	if [ -d ./patches ]; then $(PATCH) $(LINUX_DIR) ./patches; fi
-endef
 define Kernel/Prepare
 	$(call Kernel/Prepare/Default)
 endef
 
-KERNEL_MAKEOPTS := -C $(LINUX_DIR) \
-	CROSS_COMPILE="$(KERNEL_CROSS)" \
-	ARCH="$(LINUX_KARCH)" \
-	CONFIG_SHELL="$(BASH)"
-
-define Kernel/Configure/2.4
-	$(SED) "s,\-mcpu=,\-mtune=,g;" $(LINUX_DIR)/arch/mips/Makefile
-	$(MAKE) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" oldconfig include/linux/compile.h include/linux/version.h
-	$(MAKE) $(KERNEL_MAKEOPTS) dep
-endef
-define Kernel/Configure/2.6
-	$(MAKE) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" oldconfig prepare scripts
-endef
-define Kernel/Configure/Default
-	@if [ -f "./config/profile-$(PROFILE)" ]; then \
-		$(SCRIPT_DIR)/config.pl '+' $(GENERIC_PLATFORM_DIR)/config-template '+' $(LINUX_CONFIG) ./config/profile-$(PROFILE) > $(LINUX_DIR)/.config; \
-	else \
-		$(SCRIPT_DIR)/config.pl '+' $(GENERIC_PLATFORM_DIR)/config-template $(LINUX_CONFIG) > $(LINUX_DIR)/.config; \
-	fi
-endef
 define Kernel/Configure
 	$(call Kernel/Configure/Default)
 endef
 
-
-define Kernel/CompileModules/Default
-	$(MAKE) -j$(CONFIG_JLEVEL) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" modules
-	$(MAKE) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" DEPMOD=true INSTALL_MOD_PATH=$(KERNEL_BUILD_DIR)/modules modules_install
-endef
 define Kernel/CompileModules
 	$(call Kernel/CompileModules/Default)
 endef
 
-
-ifeq ($(KERNEL),2.6)
-  ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
-    define Kernel/SetInitramfs
-		mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
-		grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
-		echo 'CONFIG_INITRAMFS_SOURCE="../../root"' >> $(LINUX_DIR)/.config
-		echo 'CONFIG_INITRAMFS_ROOT_UID=0' >> $(LINUX_DIR)/.config
-		echo 'CONFIG_INITRAMFS_ROOT_GID=0' >> $(LINUX_DIR)/.config
-		mkdir -p $(BUILD_DIR)/root/etc/init.d
-		$(CP) $(GENERIC_PLATFORM_DIR)/files/init $(BUILD_DIR)/root/
-    endef
-  else
-    define Kernel/SetInitramfs
-		mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
-		grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
-		rm -f $(BUILD_DIR)/root/init $(BUILD_DIR)/root/etc/init.d/S00initramfs
-		echo 'CONFIG_INITRAMFS_SOURCE=""' >> $(LINUX_DIR)/.config
-    endef
-  endif
-endif
-define Kernel/CompileImage/Default
-	$(call Kernel/SetInitramfs)
-	$(MAKE) -j$(CONFIG_JLEVEL) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" $(KERNELNAME)
-	$(KERNEL_CROSS)objcopy -O binary -R .reginfo -R .note -R .comment -R .mdebug -S $(LINUX_DIR)/vmlinux $(LINUX_KERNEL)
-	$(KERNEL_CROSS)objcopy -R .reginfo -R .note -R .comment -R .mdebug -S $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux.elf
-endef
 define Kernel/CompileImage
 	$(call Kernel/CompileImage/Default)
 endef
 
-define Kernel/Clean/Default
-	rm -f $(LINUX_DIR)/.linux-compile
-	rm -f $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)/.configured
-	rm -f $(LINUX_KERNEL)
-	$(MAKE) -C $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION) clean
-endef
-
 define Kernel/Clean
 	$(call Kernel/Clean/Default)
 endef
@@ -171,7 +90,6 @@ define BuildKernel
 
   $(LINUX_DIR)/.configured: $(LINUX_DIR)/.prepared $(LINUX_CONFIG)
 	$(call Kernel/Configure)
-	$(call Kernel/Configure/$(KERNEL))
 	touch $$@
 
   $(LINUX_DIR)/.modules: $(LINUX_DIR)/.configured
diff --git a/include/kernel-defaults.mk b/include/kernel-defaults.mk
new file mode 100644
index 0000000000..61b5bdb2fd
--- /dev/null
+++ b/include/kernel-defaults.mk
@@ -0,0 +1,93 @@
+# 
+# Copyright (C) 2006-2007 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+# For target profile selection - the default set
+DEFAULT_PACKAGES:=base-files libgcc uclibc bridge busybox dnsmasq dropbear iptables mtd ppp ppp-mod-pppoe mtd kmod-ipt-nathelper
+ifneq ($(KERNEL),2.4)
+  DEFAULT_PACKAGES+=udevtrigger hotplug2
+endif
+
+KERNELNAME=
+ifneq (,$(findstring x86,$(BOARD)))
+  KERNELNAME="bzImage"
+endif
+ifneq (,$(findstring rdc,$(BOARD)))
+  KERNELNAME="bzImage"
+endif
+ifneq (,$(findstring ppc,$(BOARD)))
+  KERNELNAME="uImage"
+endif
+
+KERNEL_MAKEOPTS := -C $(LINUX_DIR) \
+	CROSS_COMPILE="$(KERNEL_CROSS)" \
+	ARCH="$(LINUX_KARCH)" \
+	CONFIG_SHELL="$(BASH)"
+
+define Kernel/Prepare/Default
+	bzcat $(DL_DIR)/$(LINUX_SOURCE) | tar -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
+	if [ -d $(GENERIC_PLATFORM_DIR)/patches ]; then $(PATCH) $(LINUX_DIR) $(GENERIC_PLATFORM_DIR)/patches; fi
+	if [ -d ./files ]; then $(CP) ./files/* $(LINUX_DIR)/; fi
+	if [ -d ./patches ]; then $(PATCH) $(LINUX_DIR) ./patches; fi
+endef
+
+define Kernel/Configure/2.4
+	$(SED) "s,\-mcpu=,\-mtune=,g;" $(LINUX_DIR)/arch/mips/Makefile
+	$(MAKE) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" oldconfig include/linux/compile.h include/linux/version.h
+	$(MAKE) $(KERNEL_MAKEOPTS) dep
+endef
+define Kernel/Configure/2.6
+	$(MAKE) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" oldconfig prepare scripts
+endef
+define Kernel/Configure/Default
+	@if [ -f "./config/profile-$(PROFILE)" ]; then \
+		$(SCRIPT_DIR)/config.pl '+' $(GENERIC_PLATFORM_DIR)/config-template '+' $(LINUX_CONFIG) ./config/profile-$(PROFILE) > $(LINUX_DIR)/.config; \
+	else \
+		$(SCRIPT_DIR)/config.pl '+' $(GENERIC_PLATFORM_DIR)/config-template $(LINUX_CONFIG) > $(LINUX_DIR)/.config; \
+	fi
+	$(call Kernel/Configure/$(KERNEL))
+endef
+
+define Kernel/CompileModules/Default
+	$(MAKE) -j$(CONFIG_JLEVEL) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" modules
+	$(MAKE) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" DEPMOD=true INSTALL_MOD_PATH=$(KERNEL_BUILD_DIR)/modules modules_install
+endef
+
+ifeq ($(KERNEL),2.6)
+  ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
+    define Kernel/SetInitramfs
+		mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
+		grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
+		echo 'CONFIG_INITRAMFS_SOURCE="../../root"' >> $(LINUX_DIR)/.config
+		echo 'CONFIG_INITRAMFS_ROOT_UID=0' >> $(LINUX_DIR)/.config
+		echo 'CONFIG_INITRAMFS_ROOT_GID=0' >> $(LINUX_DIR)/.config
+		mkdir -p $(BUILD_DIR)/root/etc/init.d
+		$(CP) $(GENERIC_PLATFORM_DIR)/files/init $(BUILD_DIR)/root/
+    endef
+  else
+    define Kernel/SetInitramfs
+		mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
+		grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
+		rm -f $(BUILD_DIR)/root/init $(BUILD_DIR)/root/etc/init.d/S00initramfs
+		echo 'CONFIG_INITRAMFS_SOURCE=""' >> $(LINUX_DIR)/.config
+    endef
+  endif
+endif
+define Kernel/CompileImage/Default
+	$(call Kernel/SetInitramfs)
+	$(MAKE) -j$(CONFIG_JLEVEL) $(KERNEL_MAKEOPTS) CC="$(KERNEL_CC)" $(KERNELNAME)
+	$(KERNEL_CROSS)objcopy -O binary -R .reginfo -R .note -R .comment -R .mdebug -S $(LINUX_DIR)/vmlinux $(LINUX_KERNEL)
+	$(KERNEL_CROSS)objcopy -R .reginfo -R .note -R .comment -R .mdebug -S $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux.elf
+endef
+
+define Kernel/Clean/Default
+	rm -f $(LINUX_DIR)/.linux-compile
+	rm -f $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)/.configured
+	rm -f $(LINUX_KERNEL)
+	$(MAKE) -C $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION) clean
+endef
+
+
-- 
cgit v1.2.3