[Buildroot] [PATCH] package/linux-headers: apply all Linux patches when BR2_KERNEL_HEADERS_AS_KERNEL=y
Yann E. MORIN
yann.morin.1998 at free.fr
Sun Aug 4 09:48:44 UTC 2019
Thomas, All,
On 2019-08-04 11:36 +0200, Thomas Petazzoni spake thusly:
> When BR2_KERNEL_HEADERS_AS_KERNEL=y, we expect that the Linux kernel
> headers code will be exactly the same as the Linux kernel code
> itself. The code currently takes into account the patches defined by
> BR2_LINUX_KERNEL_PATCH, but not the kernel patches that are stored in
> linux's BR2_GLOBAL_PATCH_DIR.
>
> So for example, the current qemu_riscv32_virt_defconfig has:
>
> BR2_GLOBAL_PATCH_DIR="board/qemu/riscv32-virt/patches/"
>
> With:
>
> board/qemu/riscv32-virt/patches/
> └── linux
> └── 0001-Revert-riscv-Use-latest-system-call-ABI.patch
>
> This patch gets properly applied when the Linux kernel is built, but
> not when the linux-headers package is built.
>
> This commit fixes that by making sure patches stored in the "linux"
> BR2_GLOBAL_PATCH_DIR subdirectory are taken into account.
>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
Acked-by: Yann E. MORIN <yann.morin.1998 at free.fr>
> ---
> Yann, you gave your Acked-by in
> http://patchwork.ozlabs.org/patch/1119649/, but it was not a formal
> commit with a proper commit log, so I haven't kept your Acked-by.
The question you had in your previous, informal patch, was about the
ordering of the patches. The patches from global_patch_dir are always
applied after the patches we carry for a package, so the way you did it
here is correct I believe.
Regards,
Yann E. MORIN.
> ---
> package/linux-headers/linux-headers.mk | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/package/linux-headers/linux-headers.mk b/package/linux-headers/linux-headers.mk
> index 95432ade83..46f270a0e1 100644
> --- a/package/linux-headers/linux-headers.mk
> +++ b/package/linux-headers/linux-headers.mk
> @@ -60,7 +60,8 @@ endif # LINUX_HEADERS_CUSTOM_TARBALL
> # Apply any necessary patches if we are using the headers from a kernel
> # build.
> ifeq ($(BR2_KERNEL_HEADERS_AS_KERNEL),y)
> -LINUX_HEADERS_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH))
> +LINUX_HEADERS_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH)) \
> + $(wildcard $(addsuffix /linux,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))))
>
> # We rely on the generic package infrastructure to download and apply
> # remote patches (downloaded from ftp, http or https). For local
> --
> 2.21.0
>
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the buildroot
mailing list