diff options
| author | Sam James <sam@gentoo.org> | 2024-09-30 21:01:59 +0100 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2024-10-01 02:10:27 +0100 |
| commit | 2fecbe438a39dfc3b226ff2c474c297a0763998f (patch) | |
| tree | c6afd0075a8deffe23e044b08a1de4d719d27458 /dev-lang/ada-bootstrap/files/ada-bootstrap-0_p2021-gentoo.patch | |
| parent | 8ca18dffa823d938a6755b9986252c36d73f446d (diff) | |
| download | gentoo-2fecbe438a39dfc3b226ff2c474c297a0763998f.tar.gz gentoo-2fecbe438a39dfc3b226ff2c474c297a0763998f.tar.bz2 gentoo-2fecbe438a39dfc3b226ff2c474c297a0763998f.zip | |
dev-lang/ada-bootstrap: new package, add 0_p2021
Split dev-lang/gnat-gpl into dev-lang/ada-bootstrap. This ebuild
was initially a clone of dev-lang/gnat-gpl-2021-r5 then had some
cleanups done, toolchain.eclass use removed, and simplified what it
configures/builds/installs.
As I mentioned in 799693623d76c89e8b04d2434d0dfece44bb49f9, there were
two jobs left -- this fixes the first one: splitting dev-lang/gnat-gpl
into its own package which doesn't collide with sys-devel/gcc:10 and
also does the least possible work, not with lots of USE, etc.)
Some inspiration taken from sys-devel/bpf-toolchain. Considered
using the *-toolchain name again but given the purpose of this is *not*
just to avoid crossdev use but instead to bootstrap from a binary for Ada,
it didn't feel appropriate.
(Planned to do this anyway but the issue mentioned in
9732ef3475830dbe289fc80358613e90b612563c pushed me to get on with it now.)
Later versions of ada-bootstrap will be our own binaries for both
newer GCC as a base (although this is mostly a nice-to-have and to keep
things building rather than it being essential, AFAIK) as well as more
importantly musl and other arch support.
For that future work, see https://bugs.gentoo.org/940471#c1 for a
suggestion from Luke A. Guest. That will be tracked in bug #940472.
Bug: https://bugs.gentoo.org/547358
Bug: https://bugs.gentoo.org/919667
Bug: https://bugs.gentoo.org/940472
Closes: https://bugs.gentoo.org/940471
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-lang/ada-bootstrap/files/ada-bootstrap-0_p2021-gentoo.patch')
| -rw-r--r-- | dev-lang/ada-bootstrap/files/ada-bootstrap-0_p2021-gentoo.patch | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/dev-lang/ada-bootstrap/files/ada-bootstrap-0_p2021-gentoo.patch b/dev-lang/ada-bootstrap/files/ada-bootstrap-0_p2021-gentoo.patch new file mode 100644 index 000000000000..c75ee9ce8da7 --- /dev/null +++ b/dev-lang/ada-bootstrap/files/ada-bootstrap-0_p2021-gentoo.patch @@ -0,0 +1,72 @@ +--- a/gcc-10-2021-20210519-19A74-src/gcc/ada/osint.adb 2017-03-10 21:58:02.600710156 +0100 ++++ b/gcc-10-2021-20210519-19A74-src/gcc/ada/osint.adb 2017-03-10 21:59:38.033983293 +0100 +@@ -2229,14 +2229,11 @@ + for J in Start_Of_Prefix .. Name_Len - Prog'Length + 1 loop + if Name_Buffer (J .. J + Prog'Length - 1) = Prog then + End_Of_Prefix := J - 1; ++ Start_Of_Suffix := J + Prog'Length; + exit; + end if; + end loop; + +- if End_Of_Prefix > 1 then +- Start_Of_Suffix := End_Of_Prefix + Prog'Length + 1; +- end if; +- + -- Create the new program name + + return new String' +--- a/gcc-10-2021-20210519-19A74-src/config/cet.m4 2022-01-01 11:18:09.663425422 +0100 ++++ b/gcc-10-2021-20210519-19A74-src/config/cet.m4 2022-01-01 11:18:14.809345911 +0100 +@@ -62,7 +62,6 @@ + i[[34567]]86-*-linux* | x86_64-*-linux*) + may_have_cet=yes + save_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS -fcf-protection" + case "$enable_cet" in + auto) + # Check if target supports multi-byte NOPs +--- a/gcc-10-2021-20210519-19A74-src/libiberty/configure 2024-03-02 19:45:34.658271627 +0100 ++++ b/gcc-10-2021-20210519-19A74-src/libiberty/configure 2024-03-02 19:54:48.013538533 +0100 +@@ -6709,6 +6709,9 @@ + if test "$cross_compiling" = yes; then : + ac_cv_c_stack_direction=0 + else ++ cat >>confdefs.h <<_ACEOF ++extern void exit(int status); ++_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + find_stack_direction () +@@ -7539,6 +7542,11 @@ + if test "$cross_compiling" = yes; then : + ac_cv_func_strncmp_works=yes + else ++ cat >>confdefs.h <<_ACEOF ++ extern long unsigned int strlen(const char *s); ++ extern char *strcpy(char *dst, const char *src); ++ extern int strncmp(const char *s1, const char *s2, long unsigned int n); ++_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + +--- a/gcc-10-2021-20210519-19A74-src/libsanitizer/configure 2024-03-02 20:41:56.810707374 +0100 ++++ b/gcc-10-2021-20210519-19A74-src/libsanitizer/configure 2024-03-02 20:43:00.189080219 +0100 +@@ -16073,6 +16073,7 @@ + sanitizer_supported=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + #include <sys/syscall.h> ++#include <unistd.h> + int + main () +--- a/gcc-10-2021-20210519-19A74-src/libgfortran/configure 2024-03-02 21:57:47.282939696 +0100 ++++ b/gcc-10-2021-20210519-19A74-src/libgfortran/configure 2024-03-02 21:58:34.702446345 +0100 +@@ -26391,6 +26391,7 @@ + #if HAVE_IEEEFP_H + # include <ieeefp.h> + #endif /* HAVE_IEEEFP_H */ ++extern void fpsetmask(int); + int + main () + { |
