genkernel: Add --kconfig to set specific kernel config options
[genkernel.git] / genkernel.conf
old mode 100755 (executable)
new mode 100644 (file)
index 8ab0ac7..af73931
@@ -7,6 +7,10 @@
 
 # =========Common Command Line Option Defaults=========
 
+# Should we install to $BOOTDIR?  Default is "no" because genkernel is used in
+# catalyst and stage building.
+#INSTALL="yes"
+
 # Run 'make oldconfig' before compiling this kernel?
 OLDCONFIG="yes"
 
@@ -23,13 +27,13 @@ CLEAN="yes"
 MRPROPER="yes"
 
 # Override the arch detection?
-# ARCH_OVERRIDE="x86"
+#ARCH_OVERRIDE="x86"
 
 # Mount BOOTDIR automatically if it isn't mounted?
 MOUNTBOOT="yes"
 
 # Make symlinks in BOOTDIR automatically?
-# SYMLINK="no"
+#SYMLINK="no"
 
 # Save the new configuration in /etc/kernels upon
 # successfull compilation
@@ -38,69 +42,130 @@ SAVE_CONFIG="yes"
 # Use Color output in Genkernel?
 USECOLOR="yes"
 
-# Add new kernel to grub?
-# BOOTLOADER="grub"
-
 # Clear build cache dir
-# CLEAR_CACHE_DIR="yes"
+#CLEAR_CACHE_DIR="yes"
+
+# Clear all tmp files and caches after genkernel has run
+#POSTCLEAR="1"
 
 # Genkernel uses an independent configuration for MAKEOPTS, and does not source
 # /etc/make.conf . You can override the default setting by uncommenting and
 # tweaking the following line. Default setting is set up by
 # ${GK_SHARE}/${ARCH_OVERRIDE}/config.sh . The recommended value for -j
 # argument is: <number of processors>*<number of cores per processor>+1
-# MAKEOPTS="-j2"
+#MAKEOPTS="-j2"
 
 # Add in LVM support from static binaries if they exist on the system, or
 # compile static LVM binaries if static ones do not exist.
-# LVM="no"
+#LVM="no"
 
-# Add in EVMS support from static binaries if they exist on the system: you
-# should run "emerge evms" first.
-# EVMS="no"
+# Add in Luks support. Needs sys-fs/cryptsetup with -dynamic installed.
+#LUKS="no"
+
+# Add in GnuPG support
+#GPG="no"
 
 # Add DMRAID support.
-# DMRAID="no"
+#DMRAID="no"
 
 # Include (or suppresses the inclusion of) busybox in the initrd or initramfs.
 # If included, busybox is rebuilt if the cached copy is out of date.
-# BUSYBOX="yes"
+#BUSYBOX="yes"
+
+# Includes mdadm/mdmon binaries in initramfs.
+# Without sys-fs/mdadm[static] installed, this will build a static mdadm.
+#MDADM="no"
+
+# Specify a custom mdadm.conf.
+# By default the ramdisk will be built *without* an mdadm.conf and will auto-detect
+# arrays during bootup.  Usually, this should not be needed.
+#MDADM_CONFIG="/etc/mdadm.conf"
+
+# Add Multipath support.
+#MULTIPATH="no"
+
+# Add iSCSI support.
+#ISCSI="no"
+
+# Add e2fsprogs support.
+#E2FSPROGS="no"
+
+# Include support for unionfs
+#UNIONFS="1"
+
+# Enable copying of firmware into initramfs
+#FIRMWARE="no"
+# Specify directory to pull from
+#FIRMWARE_DIR="/lib/firmware"
+# Specify specific firmware files to include. This overrides FIRMWARE_DIR
+#FIRMWARE_FILES=""
+
+# Enable disklabel support (copies blkid to initrd)
+DISKLABEL="yes"
+
+# Add new kernel to grub?
+#BOOTLOADER="grub"
+
+# Enable splashutils in early space (initrd). Default is "no".
+#SPLASH="yes"
+
+# Use this splash theme. If commented out - the "default" name theme is used.
+# Also, SPLASH="yes" needs to be enabled for this one to one work.
+# This supersedes the "SPLASH_THEME" option of /etc/conf.d/splash (in early space).
+#SPLASH_THEME="gentoo"
+
+
+# =========Keymap Settings=========
+#
+# Force keymap selection at boot
+#DOKEYMAPAUTO="yes"
+
 
-# Copy /etc/mdadm.conf to initramfs.
-# MDADM="no"
+# Disables keymap selection support
+#KEYMAP="0"
 
 
 # =========Low Level Compile Settings=========
 #
 # GNU Make to use for kernel.  See also the --kernel-make command line option.
-# KERNEL_MAKE="make"
+#KERNEL_MAKE="make"
 
 # Compiler to use for the kernel (e.g. distcc).  See also the --kernel-cc
 # command line option.
-# KERNEL_CC="gcc"
+#KERNEL_CC="gcc"
 
 # Assembler to use for the kernel.  See also the --kernel-as command line
 # option.
-# KERNEL_AS="as"
+#KERNEL_AS="as"
 
 # Linker to use for the kernel.  See also the --kernel-ld command line option.
-# KERNEL_LD="ld"
+#KERNEL_LD="ld"
 
 # GNU Make to use for the utilities.  See also the --utils-make command line
 # option.
-# UTILS_MAKE="make"
+#UTILS_MAKE="make"
 
 # Compiler to use for the utilities (e.g. distcc).  See also the --utils-cc
 # command line option.
-# UTILS_CC="gcc"
+#UTILS_CC="gcc"
 
 # Assembler to use for the utilities.  See also the --utils-as command line
 # option.
-# UTILS_AS="as"
+#UTILS_AS="as"
 
 # Linker to use for the utilities.  See also the --utils-ld command line
 # option.
-# UTILS_LD="ld"
+#UTILS_LD="ld"
+
+
+# Common prefix of cros compile commands
+#UTILS_CROSS_COMPILE="x86_64-pc-linux-gnu"
+
+
+# Value of CROSS_COMPILE utils variable
+# during kernel compilation
+#KERNEL_CROSS_COMPILE="x86_64-pc-linux-gnu"
+
 
 # =========GENKERNEL LOCATION CONFIGURATION============
 # Variables:
@@ -108,52 +173,121 @@ USECOLOR="yes"
 #   %%CACHE%% - Final determined cache location
 
 # Set genkernel's temporary work directory.  Default is /var/tmp/genkernel
-# TMPDIR="/var/tmp/genkernel"
+#TMPDIR="/var/tmp/genkernel"
 
 # Set the boot directory, default is /boot
 #BOOTDIR="/boot"
 
 # Default share directory location
-GK_SHARE="/usr/share/genkernel"
+GK_SHARE="${GK_SHARE:-/usr/share/genkernel}"
 
 # Location of the default cache
-CACHE_DIR="/var/cache/genkernel/%%ARCH%%"
+CACHE_DIR="/var/cache/genkernel"
+# Location of DISTDIR, where our source tarballs are stored
+DISTDIR="${CACHE_DIR}/src"
 # Log output file
 LOGFILE="/var/log/genkernel.log"
 # Debug Level
 LOGLEVEL=1
 
+# =========COMPILED UTILS CONFIGURATION============
+#
 # Default location of kernel source
 DEFAULT_KERNEL_SOURCE="/usr/src/linux"
 # Default kernel config (only use to override using
-# %%ARCH%%/kernel-config-${VER}.${PAT} !)
-# DEFAULT_KERNEL_CONFIG="${GK_SHARE}/%%ARCH%%/kernel-config"
+# arch/%%ARCH%%/kernel-config-${VER}.${PAT} !)
+#DEFAULT_KERNEL_CONFIG="${GK_SHARE}/arch/%%ARCH%%/kernel-config"
 
-# Configuration file for busybox
-BUSYBOX_CONFIG="${GK_SHARE}/%%ARCH%%/busy-config"
+# Specifies a user created busybox config
+#BUSYBOX_CONFIG="/path/to/file"
+#BUSYBOX_APPLETS="[ ash sh mount uname echo cut cat"
 
-BUSYBOX_VER="1.1.3+gentoo"
-BUSYBOX_SRCTAR="${GK_SHARE}/pkg/busybox-${BUSYBOX_VER}.tar.bz2"
-BUSYBOX_DIR="busybox-${BUSYBOX_VER}"
-BUSYBOX_BINCACHE="%%CACHE%%/busybox-${BUSYBOX_VER}-%%ARCH%%.tar.bz2"
+# NOTE: Since genkernel 3.4.41 the version of
+#   busybox, lvm, mdadm, .. have been moved to
+#   /usr/share/genkernel/defaults/software.sh in order to
+#   reduce the merging you have to do during etc-update.
+#   You can still override these settings in here.
 
-DEVICE_MAPPER_VER="VERSION_DMAP"
-DEVICE_MAPPER_DIR="device-mapper.${DEVICE_MAPPER_VER}"
-DEVICE_MAPPER_SRCTAR="${GK_SHARE}/pkg/device-mapper.${DEVICE_MAPPER_VER}.tgz"
-DEVICE_MAPPER_BINCACHE="%%CACHE%%/device-mapper-${DEVICE_MAPPER_VER}-%%ARCH%%.tar.bz2"
 
-LVM_VER="VERSION_LVM"
-LVM_DIR="LVM2.${LVM_VER}"
-LVM_SRCTAR="${GK_SHARE}/pkg/LVM2.${LVM_VER}.tgz"
-LVM_BINCACHE="%%CACHE%%/LVM2.${LVM_VER}-%%ARCH%%.tar.bz2"
+# =========MISC KERNEL CONFIGURATION============
+#
+# Tag the kernel and ramdisk with a name:
+# If not defined the option defaults to
+# 'genkernel'
+#KNAME="genkernel"
 
-DMRAID_VER="VERSION_DMRAID"
-DMRAID_DIR="dmraid/${DMRAID_VER}"
-DMRAID_SRCTAR="${GK_SHARE}/pkg/dmraid-${DMRAID_VER}.tar.bz2"
-DMRAID_BINCACHE="%%CACHE%%/dmraid-${DMRAID_VER}-%%ARCH%%.tar.bz2"
 
-E2FSPROGS_VER="VERSION_E2FSPROGS"
-E2FSPROGS_DIR="e2fsprogs-${E2FSPROGS_VER}"
-E2FSPROGS_SRCTAR="${GK_SHARE}/pkg/e2fsprogs-${E2FSPROGS_VER}.tar.gz"
-BLKID_BINCACHE="%%CACHE%%/blkid-${E2FSPROGS_VER}-%%ARCH%%.bz2"
+# This option is only valid if kerncache is
+# defined. If there is a valid kerncache no checks
+# will be made against a kernel source tree
+#KERNEL_SOURCES="0"
 
+
+# Build a static (monolithic kernel)
+#BUILD_STATIC="1"
+
+
+# Make and install kernelz image (PowerPC)
+#GENZIMAGE="1"
+
+
+# File to output a .tar.bz2'd kernel contents
+# of /lib/modules/ and the kernel config
+# NOTE: This is created before the callbacks
+# are run!
+#KERNCACHE="/path/to/file"
+
+
+# Prefix to kernel module destination, modules
+# will be installed in <prefix>/lib/modules
+# (.conf equivalent of --module-prefix=<dir>)
+#INSTALL_MOD_PATH=""
+
+
+# =========MISC INITRD CONFIGURATION============
+#
+# Copy all kernel modules to the ramdisk
+#ALLRAMDISKMODULES="1"
+
+
+# Don't copy any modules to the ramdisk
+#RAMDISKMODULES="0"
+
+
+# File to output a .tar.bz2'd kernel and ramdisk:
+# No modules outside of the ramdisk will be
+# included...
+#MINKERNPACKAGE="/path/to/file.bz2"
+
+
+# File to output a .tar.bz2'd modules after the
+# callbacks have run
+#MODULESPACKAGE="/path/to/file.bz2"
+
+
+# Directory structure to include in the initramfs,
+# only available on >=2.6 kernels
+#INITRAMFS_OVERLAY=""
+
+
+# Build the generated initramfs into the kernel instead of
+# keeping it as a separate file
+#INTEGRATED_INITRAMFS="1"
+
+
+# Compress generated initramfs
+#COMPRESS_INITRD="yes"
+# Types of compression: best, xz, lzma, bzip2, gzip, lzop, fastest
+# "best" selects the best available compression method
+# "fastest" selects the fastest available compression method
+#COMPRESS_INITRD_TYPE="best"
+
+
+# Create a self-contained env in the initramfs
+#NETBOOT="1"
+
+
+# =========MISC BOOT CONFIGURATION============
+#
+# Specify a default for real_root=
+#REAL_ROOT="/dev/one/two/gentoo"