summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2016-02-29 13:47:36 -0800
committerRobin H. Johnson <robbat2@gentoo.org>2016-02-29 13:47:36 -0800
commit41a7b4515071ef386f919215fa02a90beb426500 (patch)
treef1aefe1992339598fb0f65932b5e2868e05360ef
parentfix rootfs detection per bug #552052 (diff)
downloadgenkernel-41a7b4515071ef386f919215fa02a90beb426500.tar.gz
genkernel-41a7b4515071ef386f919215fa02a90beb426500.tar.bz2
genkernel-41a7b4515071ef386f919215fa02a90beb426500.zip
config.sh: ensure generic config.sh is used again; and refactor duplicate settings.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
-rwxr-xr-xarch/alpha/config.sh22
-rwxr-xr-xarch/arm/config.sh22
-rwxr-xr-xarch/ia64/config.sh22
-rwxr-xr-xarch/mips/config.sh16
-rwxr-xr-xarch/parisc/config.sh22
-rwxr-xr-xarch/parisc64/config.sh22
-rwxr-xr-xarch/ppc/config.sh22
-rwxr-xr-xarch/ppc64/config.sh22
-rw-r--r--arch/s390/config.sh22
-rwxr-xr-xarch/sparc/config.sh20
-rwxr-xr-xarch/sparc64/config.sh22
-rwxr-xr-xarch/um/config.sh21
-rwxr-xr-xarch/x86/config.sh22
-rwxr-xr-xarch/x86_64/config.sh22
-rwxr-xr-xdefaults/config.sh16
-rwxr-xr-xgenkernel1
16 files changed, 25 insertions, 291 deletions
diff --git a/arch/alpha/config.sh b/arch/alpha/config.sh
index 766a5864..60dad512 100755
--- a/arch/alpha/config.sh
+++ b/arch/alpha/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="boot"
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="arch/alpha/boot/vmlinux.gz"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/arm/config.sh b/arch/arm/config.sh
index 1220c42d..ce478c8d 100755
--- a/arch/arm/config.sh
+++ b/arch/arm/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE=""
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="arch/arm/boot/zImage"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/ia64/config.sh b/arch/ia64/config.sh
index 6c973ec8..fc636480 100755
--- a/arch/ia64/config.sh
+++ b/arch/ia64/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE=""
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="vmlinux.gz"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/mips/config.sh b/arch/mips/config.sh
index 62531fce..8b8374ac 100755
--- a/arch/mips/config.sh
+++ b/arch/mips/config.sh
@@ -1,5 +1,6 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="vmlinux"
@@ -16,18 +17,3 @@ DISKLABEL=0
# genkernel on mips is only used for LiveCDs && netboots. Catalyst
# will know where to get the kernels at.
CMD_INSTALL=0
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
-
diff --git a/arch/parisc/config.sh b/arch/parisc/config.sh
index 8c740213..5793af23 100755
--- a/arch/parisc/config.sh
+++ b/arch/parisc/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="vmlinux"
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="vmlinux"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/parisc64/config.sh b/arch/parisc64/config.sh
index 8c740213..5793af23 100755
--- a/arch/parisc64/config.sh
+++ b/arch/parisc64/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="vmlinux"
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="vmlinux"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/ppc/config.sh b/arch/ppc/config.sh
index 0bb4ad4a..173cff1d 100755
--- a/arch/ppc/config.sh
+++ b/arch/ppc/config.sh
@@ -1,27 +1,7 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="vmlinux"
KERNEL_BINARY="vmlinux"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/ppc64/config.sh b/arch/ppc64/config.sh
index 0bb4ad4a..173cff1d 100755
--- a/arch/ppc64/config.sh
+++ b/arch/ppc64/config.sh
@@ -1,27 +1,7 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="vmlinux"
KERNEL_BINARY="vmlinux"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/s390/config.sh b/arch/s390/config.sh
index 63f36390..7ef4aa2f 100644
--- a/arch/s390/config.sh
+++ b/arch/s390/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE=""
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="arch/s390/boot/bzImage"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/sparc/config.sh b/arch/sparc/config.sh
index 2e7c2941..19c89acc 100755
--- a/arch/sparc/config.sh
+++ b/arch/sparc/config.sh
@@ -1,5 +1,6 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="vmlinux"
@@ -7,22 +8,3 @@ KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="vmlinux"
USECOLOR="no"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j1}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/sparc64/config.sh b/arch/sparc64/config.sh
index 367bfcd8..620b03dd 100755
--- a/arch/sparc64/config.sh
+++ b/arch/sparc64/config.sh
@@ -1,5 +1,6 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="vmlinux"
@@ -7,24 +8,3 @@ KERNEL_MAKE_DIRECTIVE_2="image"
KERNEL_BINARY="arch/sparc64/boot/image arch/sparc/boot/image"
USECOLOR="no"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-#DEFAULT_KERNEL_CC=sparc64-linux-gcc
-#DEFAULT_KERNEL_AS=as
-#DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/um/config.sh b/arch/um/config.sh
index e998f11e..f8bfd958 100755
--- a/arch/um/config.sh
+++ b/arch/um/config.sh
@@ -1,5 +1,6 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="linux"
@@ -7,24 +8,4 @@ KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="linux"
ARCH_HAVENOPREPARE=yes
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
DEFAULT_KERNEL_MAKE="make ARCH=um"
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/x86/config.sh b/arch/x86/config.sh
index 60c6ab02..dfbc1204 100755
--- a/arch/x86/config.sh
+++ b/arch/x86/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="bzImage"
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="arch/i386/boot/bzImage"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/arch/x86_64/config.sh b/arch/x86_64/config.sh
index b89d5ade..bf589571 100755
--- a/arch/x86_64/config.sh
+++ b/arch/x86_64/config.sh
@@ -1,28 +1,8 @@
# $Id$
#
+# This file is sourced AFTER defaults/config.sh; generic options should be set there.
# Arch-specific options that normally shouldn't be changed.
#
KERNEL_MAKE_DIRECTIVE="bzImage"
KERNEL_MAKE_DIRECTIVE_2=""
KERNEL_BINARY="arch/x86_64/boot/bzImage"
-
-#
-# Arch-specific defaults that can be overridden in the config file or on the
-# command line.
-#
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
-
-PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
-DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
-
-DEFAULT_KERNEL_MAKE=make
-DEFAULT_UTILS_MAKE=make
-
-DEFAULT_KERNEL_CC=gcc
-DEFAULT_KERNEL_AS=as
-DEFAULT_KERNEL_LD=ld
-
-DEFAULT_UTILS_CC=gcc
-DEFAULT_UTILS_AS=as
-DEFAULT_UTILS_LD=ld
diff --git a/defaults/config.sh b/defaults/config.sh
index 6acf3bb6..b961f682 100755
--- a/defaults/config.sh
+++ b/defaults/config.sh
@@ -1,25 +1,29 @@
-#This file does not actually appear to be run at all anymore, and is kept as an example for new arches.
+# This file is sourced before the arch-specific configs.
# $Id$
#
-# Arch-specific options that normally shouldn't be changed.
+# Arch-specific options that normally shouldn't be changed (and should be set in the arch-specific configs)
#
-KERNEL_MAKE_DIRECTIVE="bzImage"
+KERNEL_MAKE_DIRECTIVE="--INVALID--"
# since "" is allowed (this will translate in `make `, which is nice
# for xen-based kernels, the default value of
# KERNEL_MAKE_DIRECTIVE_OVERRIDE cannot be ""
DEFAULT_KERNEL_MAKE_DIRECTIVE_OVERRIDE="--INVALID--"
KERNEL_MAKE_DIRECTIVE_OVERRIDE="${DEFAULT_KERNEL_MAKE_DIRECTIVE_OVERRIDE}"
KERNEL_MAKE_DIRECTIVE_2=""
-KERNEL_BINARY="arch/i386/boot/bzImage"
+KERNEL_BINARY="--INVALID--"
KERNEL_BINARY_OVERRIDE=""
-DEFAULT_COMPRESS_INITRD=yes
-DEFAULT_COMPRESS_INITRD_TYPE=best
+# At a bare minimum, every arch MUST override these two options:
+# KERNEL_MAKE_DIRECTIVE
+# KERNEL_BINARY
#
# Arch-specific defaults that can be overridden in the config file or on the
# command line.
#
+DEFAULT_COMPRESS_INITRD=yes
+DEFAULT_COMPRESS_INITRD_TYPE=best
+
PORTAGE_MAKEOPTS="$(portageq envvar MAKEOPTS)"
DEFAULT_MAKEOPTS="${PORTAGE_MAKEOPTS:- -j2}"
diff --git a/genkernel b/genkernel
index 60300f2e..e7cadcc1 100755
--- a/genkernel
+++ b/genkernel
@@ -41,6 +41,7 @@ LOGLEVEL=${LOGLEVEL:-1}
# Start sourcing other scripts
source ${GK_SHARE}/defaults/software.sh || small_die "Could not read ${GK_SHARE}/defaults/software.sh"
+source ${GK_SHARE}/defaults/config.sh || small_die "Could not read ${GK_SHARE}/defaults/config.sh"
source ${GK_SHARE}/gen_funcs.sh || small_die "Could not read ${GK_SHARE}/gen_funcs.sh"
source ${GK_SHARE}/gen_cmdline.sh || gen_die "Could not read ${GK_SHARE}/gen_cmdline.sh"
source ${GK_SHARE}/gen_arch.sh || gen_die "Could not read ${GK_SHARE}/gen_arch.sh"