[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