# $Id$
PATH="${PATH}:/sbin:/usr/sbin"
-GK_V='3.4.40'
+GK_V='3.4.44.2'
# Set the default for TMPDIR. May be modified by genkernel.conf or the
# --tempdir command line option.
# We don't know where our config is, so we check for it, and default to using
# /etc/genkernel.conf if nobody has specified one.
-case "$*" in
- --config=*)
- CMD_GK_CONFIG=`parse_opt "$*"`
- ;;
-esac
+
+# NOTE: We are look for --config=... in a way that doesn't modify $@ since we access that again, later
+for (( i=1; i<=$# ; i=i+1 )); do
+ eval arg="\$$i"
+ [[ "${arg}" = --config=* ]] && CMD_GK_CONFIG=`parse_opt "${arg}"`
+done
# Pull in our configuration
_GENKERNEL_CONF=${CMD_GK_CONFIG:-/etc/genkernel.conf}
source "${_GENKERNEL_CONF}" || small_die "Could not read ${_GENKERNEL_CONF}"
# Start sourcing other scripts
+source ${GK_SHARE}/defaults/software.sh || small_die "Could not read ${GK_SHARE}/defaults/software.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"
then
print_info 1 "Copying config for successful build to /etc/kernels/kernel-config-${ARCH}-${KV}"
[ ! -e '/etc/kernels' ] && mkdir -p /etc/kernels
- cp "${KERNEL_DIR}/.config" "/etc/kernels/kernel-config-${ARCH}-${KV}"
+ cp "${KERNEL_OUTPUTDIR}/.config" "/etc/kernels/kernel-config-${ARCH}-${KV}" || \
+ print_warning "Unable to copy the kernel configuration file."
+ # Just a warning because ordinary users are not allowed to write in /etc
fi
fi
print_info 1 "Kernel compiled successfully!"
print_info 1 ''
print_info 1 'Required Kernel Parameters:'
+ print_info 1 ' root=/dev/$ROOT'
if [ "${BUILD_RAMDISK}" = '0' ]
then
- print_info 1 ' root=/dev/$ROOT'
print_info 1 ' [ And "vga=0x317 splash=verbose" if you use a framebuffer ]'
print_info 1 ''
print_info 1 ' Where $ROOT is the device node for your root partition as the'
print_info 1 ' one specified in /etc/fstab'
else
- print_info 1 ' real_root=/dev/$ROOT'
print_info 1 ''
print_info 1 ' Where $ROOT is the device node for your root partition as the'
print_info 1 ' one specified in /etc/fstab'
print_info 1 ''
print_info 1 "If you require Genkernel's hardware detection features; you MUST"
- print_info 1 'tell your bootloader to use the provided INITRAMFS file. Otherwise;'
- print_info 1 'substitute the root argument for the real_root argument if you are'
- print_info 1 'not planning to use the initramfs...'
+ print_info 1 'tell your bootloader to use the provided INITRAMFS file.'
fi
fi
[ "${MDADM}" = '1' ] && print_warning 1 'add "domdadm" for RAID support'
[ "${DMRAID}" = '1' ] && print_warning 1 ' or "dodmraid=<additional options>"'
[ "${ZFS}" = '1' ] && print_warning 1 'add "dozfs" for ZFS volume management support'
- [ "${ZFS}" = '1' ] && print_warning 1 'add either "real_root=ZFS" (bootfs autodetection) or "real_root=ZFS=<dataset>" to boot from a ZFS dataset'
+ [ "${ZFS}" = '1' ] && print_warning 1 ' and either "root=ZFS" to use bootfs autodetection or "root=ZFS=<dataset>" to force booting from a specific dataset'
[ "${ISCSI}" = '1' ] && print_warning 1 'add at least "iscsi_initiatorname=<initiator name> iscsi_target=<target name> and iscsi_address=<target ip>" for iscsi support'
if [[ "$(file --brief --mime-type "${KERNEL_CONFIG}")" == application/x-gzip ]]; then