mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-04-19 00:26:55 +00:00
kernel/linux: fix using custom location
Currently, extract and patch are skipped as thus: - using a custom directory of pre-installed headers - a correctly named directory already exists Otherwise, extract and patch are done. The current second condition is wrong, because it allows the following sequence to happen: - a non-custom kernel is used - a previous build only partially extracted the non-custom sources - that p[revious build broke during extraction (eg. incomplete tarball...) - a subsequent build will find a properly named directory, and will thus skip extract and patch, which is wrong Fix that by following the conditions in this table: Type | Extract | Patch ----------------------+---------+------- Pre-installed headers | N | N custom directory | N | N custom tarball | Y | N mainstream tarball | Y | Y Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: David Holsgrove <david.holsgrove@xilinx.com>
This commit is contained in:
parent
1e0b160dd8
commit
e1806b1d22
@ -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}"
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user