1.1 --- a/scripts/build/kernel/linux.sh Wed Sep 21 22:42:35 2011 +0200
1.2 +++ b/scripts/build/kernel/linux.sh Thu Sep 22 22:49:38 2011 +0200
1.3 @@ -25,17 +25,23 @@
1.4 fi
1.5
1.6 if [ "${CT_KERNEL_LINUX_CUSTOM}" = "y" ]; then
1.7 - # Wee need to know the custom tarball extension,
1.8 - # so we can cerate a properly-named symlink, which
1.9 - # we use later on in 'extract'
1.10 - case "${CT_KERNEL_LINUX_CUSTOM_TARBALL}" in
1.11 - *.tar.bz2) custom_name="linux-custom.tar.bz2";;
1.12 - *.tar.gz|*.tgz) custom_name="linux-custom.tar.gz";;
1.13 - *.tar) custom_name="linux-custom.tar";;
1.14 - *) CT_Abort "Unknown extension for custom linux tarball '${CT_KERNEL_LINUX_CUSTOM_TARBALL}'";;
1.15 - esac
1.16 - CT_DoExecLog DEBUG ln -sf "${CT_KERNEL_LINUX_CUSTOM_TARBALL}" \
1.17 - "${CT_TARBALLS_DIR}/${custom_name}"
1.18 + if [ ! -d "${CT_KERNEL_LINUX_CUSTOM_LOCATION}" ]; then
1.19 + # Wee need to know the custom tarball extension,
1.20 + # so we can create a properly-named symlink, which
1.21 + # we use later on in 'extract'
1.22 + case "${CT_KERNEL_LINUX_CUSTOM_LOCATION}" in
1.23 + *.tar.bz2) custom_name="linux-custom.tar.bz2";;
1.24 + *.tar.gz|*.tgz) custom_name="linux-custom.tar.gz";;
1.25 + *.tar) custom_name="linux-custom.tar";;
1.26 + *) CT_Abort "Unknown extension for custom linux tarball '${CT_KERNEL_LINUX_CUSTOM_LOCATION}'";;
1.27 + esac
1.28 + CT_DoExecLog DEBUG ln -sf "${CT_KERNEL_LINUX_CUSTOM_LOCATION}" \
1.29 + "${CT_TARBALLS_DIR}/${custom_name}"
1.30 + else
1.31 + custom_name="linux-custom"
1.32 + CT_DoExecLog DEBUG ln -s "${CT_KERNEL_LINUX_CUSTOM_LOCATION}" \
1.33 + "${CT_SRC_DIR}/${custom_name}"
1.34 + fi
1.35 else # Not a custom tarball
1.36 case "${CT_KERNEL_VERSION}" in
1.37 2.6.*.*|3.*.*)
1.38 @@ -64,9 +70,11 @@
1.39
1.40 # Extract kernel
1.41 do_kernel_extract() {
1.42 - if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ]; then
1.43 + if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" \
1.44 + -o -d "${CT_KERNEL_LINUX_CUSTOM_LOCATION}" ]; then
1.45 return 0
1.46 fi
1.47 +
1.48 # This also handles the custom tarball
1.49 CT_Extract "linux-${CT_KERNEL_VERSION}"
1.50 CT_Patch "linux" "${CT_KERNEL_VERSION}"