diff mbox series

[PATCHv2] package/localedef: fix dependencies

Message ID 20200317211102.12842-1-yann.morin.1998@free.fr
State Accepted
Headers show
Series [PATCHv2] package/localedef: fix dependencies | expand

Commit Message

Yann E. MORIN March 17, 2020, 9:11 p.m. UTC
localedef needs bison to satisfy a .y.c rule to generate a parser for
plural forms, to ultimately generate data for the target. So we do not
want to depend on the host-provided bison; we want to build our own (for
reproducibility).

localedef is a host-only package, and dependencies are not inherited
from the target variant, so we need to make them explicit host
dependencies.

And move the assignment after all the download-related variables.

Reported-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>

---
Changes v1 -> v2:
  - do not depend on the host provided bison
---
 package/localedef/localedef.mk | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Romain Naour March 17, 2020, 9:31 p.m. UTC | #1
Hi Yann,

Le 17/03/2020 à 22:11, Yann E. MORIN a écrit :
> localedef needs bison to satisfy a .y.c rule to generate a parser for
> plural forms, to ultimately generate data for the target. So we do not
> want to depend on the host-provided bison; we want to build our own (for
> reproducibility).
> 
> localedef is a host-only package, and dependencies are not inherited
> from the target variant, so we need to make them explicit host
> dependencies.
> 
> And move the assignment after all the download-related variables.
> 
> Reported-by: James Hilliard <james.hilliard1@gmail.com>
> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
> 
> ---
> Changes v1 -> v2:
>   - do not depend on the host provided bison
> ---
>  package/localedef/localedef.mk | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/package/localedef/localedef.mk b/package/localedef/localedef.mk
> index 10a1929044..3e22f68039 100644
> --- a/package/localedef/localedef.mk
> +++ b/package/localedef/localedef.mk
> @@ -10,9 +10,12 @@
>  LOCALEDEF_VERSION = 2.30-20-g50f20fe506abb8853641006a7b90a81af21d7b91
>  LOCALEDEF_SOURCE = glibc-$(LOCALEDEF_VERSION).tar.gz
>  LOCALEDEF_SITE = $(call github,bminor,glibc,$(LOCALEDEF_VERSION))
> -LOCALEDEF_DEPENDENCIES = $(BR2_MAKE_HOST_DEPENDENCY)

I believe this line come from the glibc package [1] that requires GNU Make >=
4.0 since version 2.28. Indeed glibc is a target package not a host package.

[1] https://git.buildroot.net/buildroot/tree/package/glibc/glibc.mk?h=2020.02#n38

Reviewed-by: Romain Naour <romain.naour@gmail.com>

Best regards,
Romain


>  HOST_LOCALEDEF_DL_SUBDIR = glibc
>  
> +HOST_LOCALEDEF_DEPENDENCIES = \
> +	$(BR2_MAKE_HOST_DEPENDENCY) \
> +	host-bison
> +
>  HOST_LOCALEDEF_CONF_ENV += ac_cv_prog_MAKE="$(BR2_MAKE)"
>  
>  # Even though we use the autotools-package infrastructure, we have to override
>
Yann E. MORIN March 17, 2020, 9:43 p.m. UTC | #2
Romain., all,

On 2020-03-17 22:31 +0100, Romain Naour spake thusly:
> Le 17/03/2020 à 22:11, Yann E. MORIN a écrit :
> > localedef needs bison to satisfy a .y.c rule to generate a parser for
> > plural forms, to ultimately generate data for the target. So we do not
> > want to depend on the host-provided bison; we want to build our own (for
> > reproducibility).
> > 
> > localedef is a host-only package, and dependencies are not inherited
> > from the target variant, so we need to make them explicit host
> > dependencies.
> > 
> > And move the assignment after all the download-related variables.
> > 
> > Reported-by: James Hilliard <james.hilliard1@gmail.com>
> > Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
> > 
> > ---
> > Changes v1 -> v2:
> >   - do not depend on the host provided bison
> > ---
> >  package/localedef/localedef.mk | 5 ++++-
> >  1 file changed, 4 insertions(+), 1 deletion(-)
> > 
> > diff --git a/package/localedef/localedef.mk b/package/localedef/localedef.mk
> > index 10a1929044..3e22f68039 100644
> > --- a/package/localedef/localedef.mk
> > +++ b/package/localedef/localedef.mk
> > @@ -10,9 +10,12 @@
> >  LOCALEDEF_VERSION = 2.30-20-g50f20fe506abb8853641006a7b90a81af21d7b91
> >  LOCALEDEF_SOURCE = glibc-$(LOCALEDEF_VERSION).tar.gz
> >  LOCALEDEF_SITE = $(call github,bminor,glibc,$(LOCALEDEF_VERSION))
> > -LOCALEDEF_DEPENDENCIES = $(BR2_MAKE_HOST_DEPENDENCY)
> 
> I believe this line come from the glibc package [1] that requires GNU Make >=
> 4.0 since version 2.28. Indeed glibc is a target package not a host package.
> 
> [1] https://git.buildroot.net/buildroot/tree/package/glibc/glibc.mk?h=2020.02#n38
> 
> Reviewed-by: Romain Naour <romain.naour@gmail.com>

Applied to master with your review tag, thanks! :-)

Regards,
Yann E. MORIN.

> Best regards,
> Romain
> 
> 
> >  HOST_LOCALEDEF_DL_SUBDIR = glibc
> >  
> > +HOST_LOCALEDEF_DEPENDENCIES = \
> > +	$(BR2_MAKE_HOST_DEPENDENCY) \
> > +	host-bison
> > +
> >  HOST_LOCALEDEF_CONF_ENV += ac_cv_prog_MAKE="$(BR2_MAKE)"
> >  
> >  # Even though we use the autotools-package infrastructure, we have to override
> > 
>
Peter Korsgaard March 27, 2020, 9:48 p.m. UTC | #3
>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 > localedef needs bison to satisfy a .y.c rule to generate a parser for
 > plural forms, to ultimately generate data for the target. So we do not
 > want to depend on the host-provided bison; we want to build our own (for
 > reproducibility).

 > localedef is a host-only package, and dependencies are not inherited
 > from the target variant, so we need to make them explicit host
 > dependencies.

 > And move the assignment after all the download-related variables.

 > Reported-by: James Hilliard <james.hilliard1@gmail.com>
 > Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>

 > ---
 > Changes v1 -> v2:
 >   - do not depend on the host provided bison

Committed to 2020.02.x, thanks.
diff mbox series

Patch

diff --git a/package/localedef/localedef.mk b/package/localedef/localedef.mk
index 10a1929044..3e22f68039 100644
--- a/package/localedef/localedef.mk
+++ b/package/localedef/localedef.mk
@@ -10,9 +10,12 @@ 
 LOCALEDEF_VERSION = 2.30-20-g50f20fe506abb8853641006a7b90a81af21d7b91
 LOCALEDEF_SOURCE = glibc-$(LOCALEDEF_VERSION).tar.gz
 LOCALEDEF_SITE = $(call github,bminor,glibc,$(LOCALEDEF_VERSION))
-LOCALEDEF_DEPENDENCIES = $(BR2_MAKE_HOST_DEPENDENCY)
 HOST_LOCALEDEF_DL_SUBDIR = glibc
 
+HOST_LOCALEDEF_DEPENDENCIES = \
+	$(BR2_MAKE_HOST_DEPENDENCY) \
+	host-bison
+
 HOST_LOCALEDEF_CONF_ENV += ac_cv_prog_MAKE="$(BR2_MAKE)"
 
 # Even though we use the autotools-package infrastructure, we have to override