diff mbox series

[1/1] linux: add dependency on host-libyaml for v5.16+

Message ID 20211117220635.114549-1-paul@crapouillou.net
State Rejected
Headers show
Series [1/1] linux: add dependency on host-libyaml for v5.16+ | expand

Commit Message

Paul Cercueil Nov. 17, 2021, 10:06 p.m. UTC
Starting with 5.16, host-libyaml seems to be required to build
Device Tree blobs.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---
 linux/linux.mk | 3 +++
 1 file changed, 3 insertions(+)

Comments

Yann E. MORIN Nov. 19, 2021, 4:30 p.m. UTC | #1
Paul, All,

On 2021-11-17 22:06 +0000, Paul Cercueil spake thusly:
> Starting with 5.16, host-libyaml seems to be required to build
> Device Tree blobs.

So, as we've discussed on IRC, this is far from sufficient to make
linux-5.16+ build.

o first, this is about an as-yet unreleased kernel version, so we are
not in a hurry to fix this before our 2021.11 release.

Second, as you reported, it also needs dtschema, which is not packaged
in Buildroot yet, nd not even packaged in Debian.

dtschema is written in python3, so this means that the Linux kernel now
gained a build dependency on host-python3 and a bunch of other host
python modules:

    dtschema
    |-> ruamel.yaml >= 0.15.69
    |-> jsonschema >= 4.1.2
    |   |-> attrs >= 17.4.0
    |   `-> pyrsistent >= 0.14.0, !=0.17.0, !=0.17.1, !=0.17.2
    `-> rfc3987
        `-> regex (optional, but sine we already have it)

I've tried adding them with scanpypi, but it exploded on me. I spent way
too much time trying to understand the issue, time that would have been
better spent adding/bumping those packages. But meh...

Sigh...

Regards,
Yann E. MORIN.

> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> ---
>  linux/linux.mk | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/linux/linux.mk b/linux/linux.mk
> index 61fdc0c76c..bbe19f494c 100644
> --- a/linux/linux.mk
> +++ b/linux/linux.mk
> @@ -375,6 +375,9 @@ ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT),y)
>  # reproducibility, we use our owns rather than the host ones.
>  LINUX_DEPENDENCIES += host-bison host-flex
>  
> +# Starting with 5.16, host-libyaml is required to build Device Tree blobs.
> +LINUX_DEPENDENCIES += host-libyaml
> +
>  ifeq ($(BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT),)
>  define LINUX_BUILD_DTB
>  	$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_DTBS)
> -- 
> 2.33.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Yann E. MORIN Dec. 13, 2021, 5:57 p.m. UTC | #2
Andreas, All,

On 2021-12-13 09:20 +0000, Andreas Ziegler spake thusly:
> On 2021-11-20 10:24, "Yann E. MORIN" <yann.morin.1998@free.fr> wrote:
> >Paul, All,
> >On 2021-11-17 22:06 +0000, Paul Cercueil spake thusly:
> >>Starting with 5.16, host-libyaml seems to be required to build
> >>Device Tree blobs.
> >
> >So, as we've discussed on IRC, this is far from sufficient to make
> >linux-5.16+ build.
> 
> With version -rc5, Linux 5.16 dropped the dependency on dtschema and yaml:
> 
>   "Revert schema checks on %.dtb targets. This was problematic for some
>    external build tools."
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/Makefile?h=v5.16-rc5&id=a84e0b319908e297b04392879bd8ce7a8338c1ab

Great news, thanks for the heads-up!

Regards,
Yann E. MORIN.
diff mbox series

Patch

diff --git a/linux/linux.mk b/linux/linux.mk
index 61fdc0c76c..bbe19f494c 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -375,6 +375,9 @@  ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT),y)
 # reproducibility, we use our owns rather than the host ones.
 LINUX_DEPENDENCIES += host-bison host-flex
 
+# Starting with 5.16, host-libyaml is required to build Device Tree blobs.
+LINUX_DEPENDENCIES += host-libyaml
+
 ifeq ($(BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT),)
 define LINUX_BUILD_DTB
 	$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_DTBS)