From c299ec2d8e8d2f1a99d5c993fca485257b950d40 Mon Sep 17 00:00:00 2001 From: Alex Landau Date: Thu, 26 Apr 2007 00:17:29 -0700 Subject: kbuild: handle compressed cpio initramfs-es Make kbuild handle compressed cpio initramfs-es. An already compressed cpio is copied directly to usr/, while a non-compressed cpio is filtered through gzip (no changes here) on its way to usr/. If the user has created a compressed cpio by other means, this saves him from uncompressing it, just to be compressed again by kbuild. Signed-off-by: Alex Landau Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg --- scripts/gen_initramfs_list.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'scripts/gen_initramfs_list.sh') diff --git a/scripts/gen_initramfs_list.sh b/scripts/gen_initramfs_list.sh index 43f75d6e4d96..3111f4ac23c4 100644 --- a/scripts/gen_initramfs_list.sh +++ b/scripts/gen_initramfs_list.sh @@ -191,9 +191,10 @@ input_file() { source="$1" if [ -f "$1" ]; then ${dep_list}header "$1" - is_cpio="$(echo "$1" | sed 's/^.*\.cpio/cpio/')" + is_cpio="$(echo "$1" | sed 's/^.*\.cpio\(\..*\)\?/cpio/')" if [ $2 -eq 0 -a ${is_cpio} == "cpio" ]; then cpio_file=$1 + echo "$1" | grep -q '^.*\.cpio\..*' && is_cpio_compressed="compressed" [ ! -z ${dep_list} ] && echo "$1" return 0 fi @@ -223,6 +224,7 @@ cpio_file= cpio_list= output="/dev/stdout" output_file="" +is_cpio_compressed= arg="$1" case "$arg" in @@ -282,7 +284,11 @@ if [ ! -z ${output_file} ]; then cpio_tfile=${cpio_file} fi rm ${cpio_list} - cat ${cpio_tfile} | gzip -f -9 - > ${output_file} + if [ "${is_cpio_compressed}" = "compressed" ]; then + cat ${cpio_tfile} > ${output_file} + else + cat ${cpio_tfile} | gzip -f -9 - > ${output_file} + fi [ -z ${cpio_file} ] && rm ${cpio_tfile} fi exit 0 -- cgit v1.2.1