diff options
-rw-r--r-- | scripts/build/kernel/linux.sh | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/scripts/build/kernel/linux.sh b/scripts/build/kernel/linux.sh index dad85c4d..c1c4e624 100644 --- a/scripts/build/kernel/linux.sh +++ b/scripts/build/kernel/linux.sh @@ -59,13 +59,25 @@ do_kernel_get() { # Extract kernel do_kernel_extract() { - # If using custom headers, or custom directory location, nothing to do - if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" \ - -o -d "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}" ]; then + # If using a custom headers tree, nothing to do + if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ] return 0 fi - + + # If using a custom directory location, nothing to do + if [ "${CT_KERNEL_LINUX_CUSTOM}" = "y" \ + -a -d "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}" ]; then + return 0 + fi + + # Otherwise, we're using either a mainstream tarball, or a custom + # tarball; in either case, we need to extract CT_Extract "linux-${CT_KERNEL_VERSION}" + + # If using a custom tarball, no need to patch + if [ "${CT_KERNEL_LINUX_CUSTOM}" = "y" ]; then + return 0 + fi CT_Patch "linux" "${CT_KERNEL_VERSION}" } |