[Buildroot] [PATCH 1/3] Makefile: really generate glibc locales in parallel

Yann E. MORIN yann.morin.1998 at free.fr
Fri Oct 21 19:07:31 UTC 2022


Yann, All,

On 2022-10-14 13:18 +0200, yann.morin at orange.com spake thusly:
> To generate the glibc locale data, we call into a recursive Makefile,
> so as to generate locales in parallel. This is done as part of a
> target-fialize hook.

*finalize

> However, that hook is registered after all packages have been parsed,
> and as such, it maye be registered after hooks defined in packages.
> 
> Furthermore, the expansion of target-finalize hooks is done in a recipe,
> so it is not easy to understand whether this generates a "simple" rule
> or not.
> 
> As a consequence, despite the use of $(MAKE), make may not notice that
> the command is a recursive call, and will decide to close the jobserver
> file-descriptors, yieldiong warnings like:

*yielding

>     make[2]: warning: jobserver unavailable: using -j1.  Add '+' to
>     parent make rule.
> 
> This causes the lcoale data to not be generated in parallel, which is

*locale (damn, I forgot to fix that one when applying)

> initially all the fuss about using a sub-makefile...
> 
> So, do as suggested, and prepend the hook with a '+', so that it
> isexplicit to make that it should not close its jobserver fds.

*is explicit

> Fixes: 6fbdf5159607 (Makefile: Parallelize glibc locale generation)
> 
> Signed-off-by: Yann E. MORIN <yann.morin at orange.com>
> Cc: Gleb Mazovetskiy <glex.spb at gmail.com>

Applied to master with the typoes fixed, thanks.

Regards,
Yann E. MORIN.

> ---
>  Makefile | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/Makefile b/Makefile
> index ec7c034ac1..ededfa491d 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -653,7 +653,7 @@ ifneq ($(GLIBC_GENERATE_LOCALES),)
>  PACKAGES += host-localedef
>  
>  define GENERATE_GLIBC_LOCALES
> -	$(MAKE) -f support/misc/gen-glibc-locales.mk \
> +	+$(MAKE) -f support/misc/gen-glibc-locales.mk \
>  		ENDIAN=$(call LOWERCASE,$(BR2_ENDIAN)) \
>  		LOCALES="$(GLIBC_GENERATE_LOCALES)" \
>  		Q=$(Q)
> -- 
> 2.25.1
> 
> 
> _________________________________________________________________________________________________________________________
> 
> Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
> Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.
> 
> This message and its attachments may contain confidential or privileged information that may be protected by law;
> they should not be distributed, used or copied without authorisation.
> If you have received this email in error, please notify the sender and delete this message and its attachments.
> As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
> Thank you.
> 
> _______________________________________________
> buildroot mailing list
> buildroot at buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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