# Distributed under the GPL v2
# $Id$
+ 03 Oct 2012; Sebastian Pipping <sping@gentoo.org> gen_initramfs.sh:
+ Use actual kernel config for check of available compression methods (bug
+ #436820)
+
03 Oct 2012; Dustin Frisch <dustin.frisch@gmail.com> defaults/linuxrc:
With boot parameter real_init=/foo look for ${NEW_ROOT}/foo, not
${NEW_ROOT}/sbin/init (bug #437080)
else
if isTrue "${COMPRESS_INITRD}"
then
- if [[ "$(file --brief --mime-type "${KERNEL_CONFIG}")" == application/x-gzip ]]; then
+ # NOTE: We do not work with ${KERNEL_CONFIG} here, since things like
+ # "make oldconfig" or --noclean could be in effect.
+ if [ -f "${KERNEL_DIR}"/.config ]; then
+ local ACTUAL_KERNEL_CONFIG="${KERNEL_DIR}"/.config
+ else
+ local ACTUAL_KERNEL_CONFIG="${KERNEL_CONFIG}"
+ fi
+
+ if [[ "$(file --brief --mime-type "${ACTUAL_KERNEL_CONFIG}")" == application/x-gzip ]]; then
# Support --kernel-config=/proc/config.gz, mainly
local CONFGREP=zgrep
else
set -- ${tuple}
kernel_option=$1
cmd_variable_name=$2
- if ${CONFGREP} -q "^${kernel_option}=y" "${KERNEL_CONFIG}" && test -n "${!cmd_variable_name}" ; then
+ if ${CONFGREP} -q "^${kernel_option}=y" "${ACTUAL_KERNEL_CONFIG}" && test -n "${!cmd_variable_name}" ; then
compression=$3
[[ ${COMPRESS_INITRD_TYPE} == best ]] && break
fi
done
- [[ -z "${compression}" ]] && gen_die "None of the initramfs we tried are supported by your kernel (config file \"${KERNEL_CONFIG}\"), strange!?"
+ [[ -z "${compression}" ]] && gen_die "None of the initramfs compression methods we tried are supported by your kernel (config file \"${ACTUAL_KERNEL_CONFIG}\"), strange!?"
;;
*)
gen_die "Compression '${COMPRESS_INITRD_TYPE}' unknown"