X-Git-Url: http://git.tremily.us/?a=blobdiff_plain;f=gen_configkernel.sh;h=b0837dd05a6c10bba6ffed87518a5bbce580b6b2;hb=0cc3cceb029f8b0162893afc32c415c278b6b342;hp=faf18746f865c68628c35c92aa5877997a97c335;hpb=ed4b49059f7bd5052b9c21119cab138db60e1be4;p=genkernel.git diff --git a/gen_configkernel.sh b/gen_configkernel.sh index faf1874..b0837dd 100755 --- a/gen_configkernel.sh +++ b/gen_configkernel.sh @@ -56,7 +56,13 @@ config_kernel() { # or we might remove configurations someone is trying to test. if isTrue "${MRPROPER}" || [ ! -f "${KERNEL_DIR}/.config" ] then - cp "${KERNEL_CONFIG}" "${KERNEL_DIR}/.config" || gen_die 'Could not copy configuration file!' + local message='Could not copy configuration file!' + if [[ "$(file --brief --mime-type "${KERNEL_CONFIG}")" == application/x-gzip ]]; then + # Support --kernel-config=/proc/config.gz, mainly + zcat "${KERNEL_CONFIG}" > "${KERNEL_DIR}/.config" || gen_die "${message}" + else + cp "${KERNEL_CONFIG}" "${KERNEL_DIR}/.config" || gen_die "${message}" + fi fi if isTrue "${OLDCONFIG}" @@ -73,7 +79,7 @@ config_kernel() { else print_info 1 "kernel: --clean is disabled; not running 'make clean'." fi - + if isTrue ${MENUCONFIG} then print_info 1 'kernel: >> Invoking menuconfig...'