type -P is used in ebuild context, not in the script itself (it is expanded
in the heredoc), so we can use POSIX shell. It might make things slightly
faster given these tools get invoked a lot during the build.
Signed-off-by: Sam James <sam@gentoo.org>
GCC 11 is the last version of GDC which doesn't need GDC to build, so
it's useful for bootstrapping. Given the recent toolchain.eclass work,
it'd be a shame to not facilitate things working Out Of The Box until
we have some alternative package set up (see bug #940470).
So, unmask for now as a temporary reprieve. But really, please don't
use GCC 11 unless you must, as it's EOL.
This reverts the following commits:
* 4bb56f21a4
* 0f5f8e27a0
* 7de3c29b71
(Really, a lot of the value in masking old GCCs is to push people
to check `gcc-config` and so on anyway, and most people will have
hopefully done that by now in response to the mask a week ago.
That doesn't make the mask pointless -- if anyone files a bug with GCC 11,
we're going to tell them to try >= GCC 12, and package maintainers aren't
expected to try make things work with < GCC 12 and so on, but it does
mean unmasking doesn't do much harm.)
Bug: https://bugs.gentoo.org/940470
Signed-off-by: Sam James <sam@gentoo.org>
When bootstrapping D for >= GCC 12 - where we enable _GLIBCXX_ASSERTIONS
by default for USE=hardened - using GCC 11, we run into trouble where
an implementation detail of _GLIBCXX_ASSERTIONS changed: see PR104807,
r12-7504-gd3a757af21ac33, and r12-7522-g4cb935cb69f120.
Workaround this by just disabling _GLIBCXX_ASSERTIONS for the stage 1
compiler (where it's not particularly important anyway) when USE=hardened
and we're building D. We could make this more conditional if needed
but I don't think it's worth it. In fact, maybe we should do this
unconditionally for a minor speed boost in building.
Bug: https://gcc.gnu.org/PR104807
Bug: https://bugs.gentoo.org/940470
Signed-off-by: Sam James <sam@gentoo.org>
Note that we're reusing get_abi_CFLAGS here as multilib.eclass doesn't
have get_abi_CXXFLAGS yet (bug #940501).
Adding this for the benefit of some GDC hackery we're doing (bug #940470).
Bug: https://bugs.gentoo.org/940501
Signed-off-by: Sam James <sam@gentoo.org>
This reapplies commit 9b9b764586.
In commit 7be0a28087, we temporarily moved
from elibtoolize to eautoreconf due to applying a patch to Makefile.am,
and later in commit 7eba3af91f we imported
a new release that had that patch applied and instead of reverting to
the elibtoolize, the entire src_prepare was dropped altogether.
The original reason for making sure elibtoolize is applied, remains
valid, so restore that.
Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>
Switch to a copyable style live ebuild plus vendored
crates for the next release.
Also bump rust minimum to 1.81
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>