commit: e560bd7b70ae2d64ab1d86a716756c320b6d2f70
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 1 02:13:31 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Oct 1 02:13:31 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e560bd7b
toolchain.eclass: further special-case dropping for ada-bootstrap
Signed-off-by: Sam James <sam <AT> gentoo.org>
eclass/toolchain.eclass | 31 ++++++++++++-------------------
1 file changed, 12 insertions(+), 19 deletions(-)
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index f9c5f58bf7d4..a5c7d5df47d5 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -945,19 +945,23 @@ toolchain_setup_ada() {
%{gnatc*|gnats*: -o %j} %{-param*}
EOF
- # XXX: Hack for now
- if [[ ${ada_bootstrap_type} == ada-bootstrap ]] ; then
- sed -i \
- -e
"s:\${gnat1_path}:${BROOT}/usr/lib/ada-bootstrap/libexec/gcc/x86_64-pc-linux-gnu/10/gnat1:"
\
- "${T}"/ada.spec || die
- fi
+ old_path="${PATH}"
+ case ${ada_bootstrap_type} in
+ ada-bootstrap)
+ export PATH="${BROOT}/usr/lib/ada-bootstrap/bin:${PATH}"
+
gnat1_path=${BROOT}/usr/lib/ada-bootstrap/libexec/gcc/${CBUILD}/${ada_bootstrap}/gnat1
+ ;;
+ *)
+
gnat1_path=${BROOT}/usr/libexec/gcc/${CBUILD}/${ada_bootstrap}/gnat1
+ ;;
+ esac
# Easier to substitute these values in rather than escape
# lots of bits above in heredoc.
sed -i \
-e "s:\${BROOT}:${BROOT}:" \
-e "s:\${CBUILD}:${CBUILD}:" \
- -e
"s:\${gnat1_path}:${BROOT}/usr/libexec/gcc/${CBUILD}/${ada_bootstrap}/gnat1:" \
+ -e "s:\${gnat1_path}:${gnat1_path}:" \
-e "s:\${ada_bootstrap}:${ada_bootstrap}:" \
"${T}"/ada.spec || die
@@ -965,13 +969,7 @@ toolchain_setup_ada() {
# won't work for us as the stage1 compiler doesn't necessarily
# have Ada support. Substitute the Ada compiler we found earlier.
local adalib
- if [[ ${ada_bootstrap_type} == ada-bootstrap ]] ; then
- old_path="${PATH}"
- export PATH="${BROOT}/usr/lib/ada-bootstrap/bin:${PATH}"
- adalib=$("${BROOT}"/usr/lib/ada-bootstrap/bin/${CBUILD}-gcc
-print-libgcc-file-name || die "Finding adalib dir failed")
- else
- adalib=$(${CBUILD}-gcc-${ada_bootstrap} -print-libgcc-file-name
|| die "Finding adalib dir failed")
- fi
+ adalib=$(${CBUILD}-gcc-${ada_bootstrap} -print-libgcc-file-name || die
"Finding adalib dir failed")
adalib="${adalib%/*}/adalib"
sed -i \
-e "s:adalib=.*:adalib=${adalib}:" \
@@ -982,11 +980,6 @@ toolchain_setup_ada() {
mkdir "${T}"/ada-wrappers || die
local tool
for tool in gnat{,bind,chop,clean,kr,link,ls,make,name,prep} ; do
- if [[ ${ada_bootstrap_type} == ada-bootstrap ]] ; then
- ln -s "${BROOT}"/usr/lib/ada-bootstrap/bin/${tool} \
-
"${T}"/ada-wrappers/${CBUILD}-${tool}-${ada_bootstrap} || die
- fi
-
cat <<-EOF > "${T}"/ada-wrappers/${tool} || die
#!/bin/sh
exec $(type -P ${CBUILD}-${tool}-${ada_bootstrap})
--specs=${T}/ada.spec "\$@"