<feed xmlns='http://www.w3.org/2005/Atom'>
<title>algaos/algaos-ebuild-tree/eclass/multilib.eclass, branch next</title>
<subtitle>[no description]</subtitle>
<id>https://git.algaos.com/algaos/algaos-ebuild-tree/atom?h=next</id>
<link rel='self' href='https://git.algaos.com/algaos/algaos-ebuild-tree/atom?h=next'/>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/'/>
<updated>2026-03-30T13:24:25Z</updated>
<entry>
<title>Revert "multilib.eclass: handle multilib on Hurd in multilib_env"</title>
<updated>2026-03-30T13:24:25Z</updated>
<author>
<name>Sam James</name>
<email>sam@gentoo.org</email>
</author>
<published>2026-03-30T13:17:18Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=87665fd5d78674990a10d799798bb9ba5c1c9eaf'/>
<id>urn:sha1:87665fd5d78674990a10d799798bb9ba5c1c9eaf</id>
<content type='text'>
This reverts commit a451db0ab5a75365e4198ded7d9c537f3cdb8185.

This doesn't seem needed after 0e69f61dfc063153d124132ef7fd9b5959d99619.

Signed-off-by: Sam James &lt;sam@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: handle multilib on Hurd in multilib_env</title>
<updated>2026-03-30T11:24:15Z</updated>
<author>
<name>Sam James</name>
<email>sam@gentoo.org</email>
</author>
<published>2026-03-30T11:21:26Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=a451db0ab5a75365e4198ded7d9c537f3cdb8185'/>
<id>urn:sha1:a451db0ab5a75365e4198ded7d9c537f3cdb8185</id>
<content type='text'>
We need this otherwise glibc will try to install to the wrong directory
on Hurd for the cross package (as we don't have a profile at that point).

Signed-off-by: Sam James &lt;sam@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: convert musl check to case statement</title>
<updated>2026-03-30T11:13:29Z</updated>
<author>
<name>Sam James</name>
<email>sam@gentoo.org</email>
</author>
<published>2026-03-30T11:13:29Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=af0bb38d6c06c8acc96b73ed3df48fe34bcf31e5'/>
<id>urn:sha1:af0bb38d6c06c8acc96b73ed3df48fe34bcf31e5</id>
<content type='text'>
In preparation for another check, for Hurd.

Signed-off-by: Sam James &lt;sam@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: derive BUILD_* before appending ABI flags</title>
<updated>2026-01-03T09:01:47Z</updated>
<author>
<name>Matt Whitlock</name>
<email>gentoo@mattwhitlock.name</email>
</author>
<published>2025-09-06T17:56:30Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=ec695aaabeef9ef78ca38e22294b6523ed4075da'/>
<id>urn:sha1:ec695aaabeef9ef78ca38e22294b6523ed4075da</id>
<content type='text'>
Per [1], we cannot have ${MULTILIB_USEDEP} in BDEPEND because it would
break cross-compiles, as ${MULTILIB_USEDEP} specifies ABIs of CHOST, not
of CBUILD.

However, this leads to a problem, as multilib.eclass does not preserve
the default build-machine toolchain before it appends the ABI flags to
the host-machine toolchain. Thus, when $(tc-getBUILD_CC) later pulls a
default value for BUILD_CC from CC, the ABI flags have already been
appended to CC, and BUILD_CC inherits those flags, thus causing any
build-time helper executables to be built for a non-default ABI, whose
build-time dependencies may not be installed in ${BROOT} since
${MULTILIB_USEDEP} makes no sense in BDEPEND.

Note, the behavior is inconsistent if the user has set BUILD_CC and
friends via their package.env, as then the ABI flags are *not* applied
to the build-machine toolchain via defaulting from the host-machine
toolchain.

This commit fixes up multilib.eclass so that it derives the build-
machine toolchain variables _before_ it appends the ABI flags to the
host-machine toolchain variables and so that it overrides CBUILD to the
default ABI in the non-cross-compiling case. The result is that build-
time helper executables are always built for the build machine's
_default_ ABI, even in the non-cross-compiling case.

[1] https://bugs.gentoo.org/960506#c9

Bug: https://bugs.gentoo.org/960506
Signed-off-by: Matt Whitlock &lt;gentoo@mattwhitlock.name&gt;
Signed-off-by: James Le Cuirot &lt;chewi@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: respect SYSROOT when overriding PKG_CONFIG_* vars</title>
<updated>2025-08-20T22:26:47Z</updated>
<author>
<name>Matt Whitlock</name>
<email>gentoo@mattwhitlock.name</email>
</author>
<published>2025-08-03T13:24:04Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=3496df638fca284c97927d42ed27a76763b60f36'/>
<id>urn:sha1:3496df638fca284c97927d42ed27a76763b60f36</id>
<content type='text'>
In multilib.eclass, multilib_toolchain_setup() overrides the environment
variables PKG_CONFIG_LIBDIR, PKG_CONFIG_PATH,
PKG_CONFIG_SYSTEM_INCLUDE_PATH, and PKG_CONFIG_SYSTEM_LIBRARY_PATH so
that the .pc files for the correct ABI will be found and used.

As a reminder, pkgconfig is normally called upon to find packages that
have been installed into the *host* system — i.e., packages listed in
DEPEND. The "Ebuild writing: Variables" page[1] describes the SYSROOT
variable as "The absolute path to the root directory containing build
dependencies satisfied by DEPEND" and ESYSROOT as "The same as either
EROOT, BROOT or SYSROOT depending on the value of SYSROOT. Commonly used
to reference the location of headers and libraries at build time."

In order to support the use case of setting SYSROOT to a path other than
"/" while building packages for ABIs other than the default ABI, change
multilib.eclass so that it prefixes the PKG_CONFIG_* vars with
${ESYSROOT} rather than ${EPREFIX}.

For Gentoo users who do not set SYSROOT, this change will have no
bearing.

This change could conceivably affect crossdev users, but I think
typically crossdev sysroots do not support multilib anyway, so this
change wouldn't affect them either.

[1] https://devmanual.gentoo.org/ebuild-writing/variables/

Closes: https://bugs.gentoo.org/945108
Signed-off-by: Matt Whitlock &lt;gentoo@mattwhitlock.name&gt;
Part-of: https://github.com/gentoo/gentoo/pull/43088
Closes: https://github.com/gentoo/gentoo/pull/43088
Signed-off-by: James Le Cuirot &lt;chewi@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: drop support for EAPI 6</title>
<updated>2024-10-08T15:31:18Z</updated>
<author>
<name>David Seifert</name>
<email>soap@gentoo.org</email>
</author>
<published>2024-10-08T15:31:18Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=7000d2603ef39745093f6f9f230f35635d22f0fe'/>
<id>urn:sha1:7000d2603ef39745093f6f9f230f35635d22f0fe</id>
<content type='text'>
Signed-off-by: David Seifert &lt;soap@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: add global-scope ewarn for deprecated &lt; EAPI 7</title>
<updated>2024-09-08T18:21:12Z</updated>
<author>
<name>Sam James</name>
<email>sam@gentoo.org</email>
</author>
<published>2024-09-07T21:37:10Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=56cd87bb454cc379b5b51d815e338ed405d799cb'/>
<id>urn:sha1:56cd87bb454cc379b5b51d815e338ed405d799cb</id>
<content type='text'>
Signed-off-by: Sam James &lt;sam@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: drop dead prefix targets</title>
<updated>2023-05-29T18:19:05Z</updated>
<author>
<name>Sam James</name>
<email>sam@gentoo.org</email>
</author>
<published>2023-05-29T17:32:31Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=84cb85f9df809690d40267d121662933a902d541'/>
<id>urn:sha1:84cb85f9df809690d40267d121662933a902d541</id>
<content type='text'>
Signed-off-by: Sam James &lt;sam@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: Drop CONF_LIBDIR</title>
<updated>2023-05-10T17:57:18Z</updated>
<author>
<name>Ulrich Müller</name>
<email>ulm@gentoo.org</email>
</author>
<published>2023-05-06T08:46:30Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=e5edcfd797cfd2f0d3878b8ad6033b2160df83d9'/>
<id>urn:sha1:e5edcfd797cfd2f0d3878b8ad6033b2160df83d9</id>
<content type='text'>
The CONF_LIBDIR variable was used exclusively in the 2004.3 profile
(i.e. it was no longer defined in 2005.0), before the ABI and
LIBDIR_${ABI} variables existed.

Simply use "lib" as default, which is consistent with get_libdir().

Bug: https://bugs.gentoo.org/267159
Signed-off-by: Ulrich Müller &lt;ulm@gentoo.org&gt;
</content>
</entry>
<entry>
<title>multilib.eclass: fix spelling</title>
<updated>2023-03-26T11:36:03Z</updated>
<author>
<name>Sam James</name>
<email>sam@gentoo.org</email>
</author>
<published>2023-03-24T03:46:11Z</published>
<link rel='alternate' type='text/html' href='https://git.algaos.com/algaos/algaos-ebuild-tree/commit/?id=0b560084f47867a258e78aa909d991fcdc3b116a'/>
<id>urn:sha1:0b560084f47867a258e78aa909d991fcdc3b116a</id>
<content type='text'>
Thanks to codespell.

Signed-off-by: Sam James &lt;sam@gentoo.org&gt;
Signed-off-by: Ulrich Müller &lt;ulm@gentoo.org&gt;
</content>
</entry>
</feed>
