Re: [PATCH v2 2/6] Makerules: Only install the ABI lib-names header from the top level (BZ 34439)

Sam James <[email protected]> Thu, 06 Aug 2026 19:03:58 +0100
Newsgroups gmane.comp.lib.glibc.alpha
Organization Gentoo
Message-ID <[email protected]>
Adhemerval Zanella <[email protected]> writes:

> From: Rudi Heitbaum <[email protected]>
>
> The $(inst_includedir)/%.h install rules exist only where $(headers) is
> non-empty, so in a subdir without headers (e.g. csu) the prerequisite
> added on install-others-nosubdir has no rule.
>
> It only worked because .NOTPARALLEL made the top level install the header
> first, which the parallel subdir recursion no longer guarantees.

Reviewed-by: Sam James <[email protected]>

> ---
>  Makerules | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/Makerules b/Makerules
> index cef30974f15..dfe66b7fa6c 100644
> --- a/Makerules
> +++ b/Makerules
> @@ -312,7 +312,12 @@ lib-names-h-abi = gnu/lib-names-$(default-abi).h
>  lib-names-stmp-abi = gnu/lib-names-$(default-abi).stmp
>  before-compile += $(common-objpfx)$(lib-names-h-abi)
>  common-generated += gnu/lib-names.h
> +# The $(inst_includedir)/%.h install rules are defined only where $(headers)
> +# is non-empty, and with parallel subdir recursion a subdir without headers
> +# (e.g. csu) may run before the top level has installed the header.
> +ifndef subdir
>  install-others-nosubdir: $(inst_includedir)/$(lib-names-h-abi)
> +endif
>  $(common-objpfx)gnu/lib-names.h:
>  	$(make-target-directory)
>  	{ \
signature.asc (application/pgp-signature, 418 B)
-----BEGIN PGP SIGNATURE-----

iQEBBAEWCgCpFiEEJaa7iN2bdkxrVUHCc4QJ9SDfkZAFAmp0zI4bFIAAAAAABAAO
bWFudTIsMi41KzEuMTIsMiwyXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25z
Lm9wZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQyNUE2QkI4OEREOUI3NjRDNkI1NTQx
QzI3Mzg0MDlGNTIwREY5MTkwDxxzYW1AZ2VudG9vLm9yZwAKCRBzhAn1IN+RkF9i
AP4yantdAaEa5x19VTbRZ8llZc10wPYc/Ei+yDpk9SuZwwEA0kdEQ8hAmnhjZrSS
vPoCdhNJrm+sqbRGOCBNQ00Vdwo=
=mohj
-----END PGP SIGNATURE-----