summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/gnat-gpl')
-rw-r--r--dev-lang/gnat-gpl/Manifest26
-rw-r--r--dev-lang/gnat-gpl/files/gcc-configure-LANG.patch64
-rw-r--r--dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch87
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch66
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch220
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch57
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch113
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch98
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2017-libatomic-Werror.patch19
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2017-libgomp-Werror.patch20
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2017-libitm-Werror.patch19
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2017-ustat.patch31
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2018-gentoo.patch18
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p1.patch32
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p2.patch59
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2019-gentoo.patch42
-rw-r--r--dev-lang/gnat-gpl/files/gnat-gpl-2021-gentoo.patch95
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild161
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild147
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild144
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2019-r2.ebuild141
-rw-r--r--dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild161
-rw-r--r--dev-lang/gnat-gpl/metadata.xml16
23 files changed, 268 insertions, 1568 deletions
diff --git a/dev-lang/gnat-gpl/Manifest b/dev-lang/gnat-gpl/Manifest
index 13cdef5417f9..76a2910ce921 100644
--- a/dev-lang/gnat-gpl/Manifest
+++ b/dev-lang/gnat-gpl/Manifest
@@ -1,23 +1,7 @@
-DIST ecj-4.5.jar 1470676 BLAKE2B 793c10ba09fd8040c0e1181204141aea16780c9c9088e07126e00da2b510af2ad6f58d876357d7e98cbb02d783a3be434469d5de1df134ccb8cc508e45028d80 SHA512 d4e1bf7538ace56e3d69fa91da5bbd16c272923b4de0a9d8dee23ea2b75f9f38c603de72fc4061df49285c450b63f3df211cee5270e9fffc5447445d1a9c9e4e
-DIST gcc-4.4.3-specs-0.2.0.tar.bz2 2004 BLAKE2B 96f5ba2028bc6e0ef71e009857c37118a54d13d30de24d697c85e5772f9f2b7853615648cf2e4ee81d8385f6518c64588c0b56675c00f95ef39fca2a808f075e SHA512 779ecb0a064d2138b54569c8ae501975b8a6b72e5a3acbf8597619a8db77ee42ef9b0e62608d5192a15e4393e7dfc009bb50b994782236faa744b2c46b5fe517
-DIST gcc-4.9-gpl-2016-src.tar.gz 76361760 BLAKE2B 681aac3dd2e04110f58637cc9fe1eb663ce55af16a929a446eb59ce338bec9357e65517890f7fa01d61eec9c5041336722b2b94a5fea27a55ade686fe1fe9fbc SHA512 da1e26b4dbbe0ec634eab4e64d1cdb2632300c24f0885bc72fb57edba6ce29ab92b04eaedd8f8077ea623f1ef1428f53616e8c8d6630328d9790d968b60c67cf
-DIST gcc-4.9.4-patches-1.4.tar.bz2 27240 BLAKE2B 26b7d08bad4b617ede2564f77ded67cc87ec6b9f6b4d4ff78b5b75c1d5739fc4049480c716075d74c9b8e23a4a3c1889796cacb3456a3982ab04a0781fe3cd04 SHA512 efa60a7f86e684710848182c7d040565c9cec7666e897adc02e5dea9d4c76117deece7b1f7e1f8772cdec9697bb92b762f93408824e47b3f63b4f35029f50a4b
-DIST gcc-4.9.4-piepatches-v0.6.4.tar.bz2 14414 BLAKE2B 2eccd4f2a164fbb32d13c7fe91627a2424c0a5570fe0cac97c2bb1c95294ba3d770832da7c445f75c91791466c5139a1e13753a3a40d87ff5e44e42749adee27 SHA512 243fa272ea0e49f700a76508bab3e03bbb353bcb930581b2f87f9a47df5cd3880e29f20b71612b21190adc463849e1e6ac2a38a49c0002b562d93d436f538285
-DIST gcc-4.9.4-uclibc-patches-1.0.tar.bz2 2618 BLAKE2B bff85a4088fb94fdb7a8b0bd552be98ace3e6d145889b6f8b4a1f2db2dad14342d155890ab159b42d5b55d88dfb7c392eb7f92590084e1958f6284c561da30f1 SHA512 5a1f44caa9261f4947101379628143869b31dec67fa28605e8e1f3894d4b7120c3f68ba6deb59da7a74fa906e27ab32cd3767761837dc3dfebc37865d349d6db
-DIST gcc-4.9.4.tar.bz2 90097606 BLAKE2B 373ff939ea72d6c4a7f3ab899b852b4c919481af2cfe3291281d9354c58a270d2eba73a0f301d90840dfabf423c82b368e113df7a2cb6cc28b2a703b0b6eb585 SHA512 93abb78e16277454f41a8e9810f41f66c0fdffdc539a762ff6b67d3037f78db971378683fd2ebf707d1d51c059fad2161fe42d110c330027f40214b7db0f3efe
-DIST gcc-6-gpl-2017-src.tar.gz 88045488 BLAKE2B 5df712eadef723df9057653e49d215cef6b59032e4b4a62c8622a7b735c660f42ec4135dba628a2080a7540d407186a4e4b1eb373e937374bc4e407dc9afe97d SHA512 bf8f786b5ad28a6b7d184fb5263424b7ed62154e308e259b61c24a577efdae56939fbaabc1fc53a0f467702c1e6d8598dc6e489ce074724799130a793cfb146e
-DIST gcc-6.3.0-patches-1.0.tar.bz2 7596 BLAKE2B e3c298bd80b83e72d6ea9b4ec777d4f28153bf959da1e54307909383efecd2bf0e7e0cc9d9b27529e5f00b2e27132bf5ff6afd2129d061d3b111f9cfe732a874 SHA512 8fc96086bd3da3726687ee9d180d3b5d0a7d5814141d44eac8eb01566a783ec780c8fb8f55f75d6e9c9006b2e407e20cdb5835d541b0b66a47dd60642861734c
-DIST gcc-7-gpl-2018-src.tar.gz 90302033 BLAKE2B 2f79137e176bff04c4fb17ab863302943588226d5b599dfa1acf0e495111be1c581f4e130f911c312916669c4f2707eec5218601db090d5060248b2fe481d710 SHA512 79f06deca5753251de82a703f4a9698c117706290df779291a5405edb06f1c225d1d2416bda0e67dcd87cc308bf79504e89d4bd8e22aa0eedfbf06d88bc37f33
-DIST gcc-7.3.0-patches-1.8.tar.bz2 14435 BLAKE2B 3e5c1abad56ccd6e0aa7739cb7cd651ec07ef9bf25be554343f1fa0444f251de41bde5fe6f8bb9e85e3f7a5cf8b2b83515647d93d62f338fa7843581fcaff2f8 SHA512 4d9d76b3d47f1af4f23cae15278d165b22065a3d1512323d1e31b5e0cb47e4654733dc43fa11906a3bd18e827621c9a5ec62b73563f8e5ead663c29f7d0d7345
-DIST gcc-8-2019-20190517-18C94-src.tar.gz 95266904 BLAKE2B 8dc1983317517e9d7221ffd3d1c804367c98a7142b3964e6382ee037da2cfebc9e044640549c77905646727e97ba108445b00f36916a65c326e862230608a7dc SHA512 50933d7eab927a2d118e01c5cb85336203544f6fbc3f245a148e952320d6f8452fcd5d355019a144e8af03357d129bb145397506db0a62fddf1f746b6671e7fc
-DIST gcc-8.3.0-patches-4.tar.bz2 17095 BLAKE2B 449d83371bf5a70020f4caad38d7b8f79bc4b3aeb13b060d28b56506fdd33e15527ab38c41baa3134dc9a25208dadfafab5992e93b2e9719dda420f830e7a8bf SHA512 0dcc5ce887b5c1dd9977ca1b1d8760563edf7ce2d39644f6212397c55c325ee441e1e02aea623bff157d95827db25528791137edc24931a88baad6499d0d15d5
-DIST gcc-interface-4.9-gpl-2016-src.tar.gz 339037 BLAKE2B 8218ea3a3e3ddb11febb5f2fbcfad69ec25251d3ed6bf4f9c70dc9b3720cc2fb3310d704db40bd0c749be89b17a2b3766ddae3d6158313480073856057ad4bcf SHA512 507df314d1890c228c19f458bd51197377deaaa2d6082fe1e71b62b683252ee5fba4adfe2386246e14618b1c77288e0dcb5bf501e2daaca249b6299462c2f6bd
-DIST gcc-interface-6-gpl-2017-src.tar.gz 347016 BLAKE2B 934c6dac491abece9a6868d28fe9d2a6a1109238fe25c9b94abe83dfc22a1085489f0e0384626da0a3abeebe7537c5715df49a7e2d40577c96eb7ac897b84fd8 SHA512 5833303fce5bf812ccbc71f3d3726c0cb877937d75327edb15097c0b7dba58024a52688392906695ab92fb4e5d7a6623671eac9a05d17937dc0270bafcde920a
-DIST gcc-interface-7-gpl-2018-src.tar.gz 339461 BLAKE2B e6009c0b287b1cd8f055226e6919c12f2ba08f8ef24101608691b05b70a7fb0ca708e2ecd126499fb84a126436d3841f1a13be0b6d3442ef3bd3871391f8e1d5 SHA512 9dc942a39dd983778756be2951b4c66ac3835bf456dc389f80ffbafdacde4ebcb80720ac9eca8fef8734d6d052c061db37c88dba642d85add10940164d120381
-DIST gcc-interface-8-2019-20190510-18F59-src.tar.gz 352408 BLAKE2B d08867737fd5a2e8aa87e61efff47757b587baff67810eb9193fe72b68578bcb130f0c1491599588d130663d908b9c6c9a604b1352aeccb79e9dd3bfef4b9f61 SHA512 c4a048725517e674cc43b7b72e3b1bdb4f1cf9d81fe3b84dd177a2fda8c7af11c3135e883072b640c8aa351625f49573727c859064683e8b5f096fdbd3990c38
-DIST gnat-2019-20190517-18C94-src.tar.gz 8950160 BLAKE2B ce6b8ca0687b3d345db72a8b3216e67ba706cfd7f6ca98f45ec2ae356d9c5b3a42a4b3aac5e89285871157ddaca3aff1b970934de88f8190d84aff060bf1fc4b SHA512 4d57c97fc1f3d5274e0c4ffa536ec056e7c3f1619010affff008cd07a0bfa638d18fee1705a5dd76f12d168baef85677cc34ef40f5e52fd5292ac886c0d4c5ee
+DIST gcc-10-2021-20210519-19A74-src.tar.gz 109157702 BLAKE2B 8ec307e4fde35c8726bc7b9702717329695bad928d5222a7bb691cce47500de31a60bcfcbb925129a57cb81d3d7ea92e60599aa7383d5358e63cc087b0482550 SHA512 2e2cc0ec9a3a82816a5d399d2db261c356e106b82a44efd54a1ac882b96549ab8de79c69858127c4397de6e9e9463ce6fb9994fc2e426e7d3d2f98d5efa2edb6
+DIST gcc-10.3.0-patches-4.tar.xz 18460 BLAKE2B 7c4b91c3beebc5fd91c0fdbeec6512c141bd78759a02aa7fff32dd30025ef41db1d57280e50db575f46cc0061a480ced9259410e9875b1dc0048886df469c4c9 SHA512 3befbcdec84e583966aad37d1a08c1863f39eb877296c5991348db9d37cc8359197f23cb3b8fa1b0f4d01497dfd2ebaa393e1a459267c19a0976fb535e463ec8
+DIST gcc-interface-10-2021-20210519-19A75-src.tar.gz 359085 BLAKE2B 75f941a7635f2880cc0192acb49d8e7f567baca7530fb981be14dc6cb1bf46fda0e3c043c8703cdbeeb242b548894e0bc6787adfff0f27198354d150e6e36386 SHA512 0251a93d20c59cc4705963438880fe265e2e0bb94a35b7ddaaf03e9efae60e044e585a2204d0773a46f17b3b774e4d0c73adf852f5d06ba17373d26ed580ca8d
+DIST gcc-validate-failures-a447cd6dee206facb66720bdacf0c765a8b09f33.py 27537 BLAKE2B 96c7474de0bc50ab890a91551412398c979396c43aa237a4b6d8baa98ce7fda2cc9f5a755a03fd9d055d885ee2fb40ba29644a0649c24398361ce75a20fae634 SHA512 409434953351cf1f2287f1e4a4fbde5b28a27add35ddd284080acec71b33cb4ec5e1c07f41a79fac060bd6f1eedd198812495141923e410ded907429fe515f83
+DIST gnat-2021-20210519-19A70-src.tar.gz 8765762 BLAKE2B ef48f54c6109566e37bfa5dee9262305d0529b3dfd333ee28bc4e66f4709a0673f673d742bc04deb15dc145404f7618d350dbdf3f2a7ab37c861e57d011946fa SHA512 3cb79be024fdd9b738d99ffc8e224d32bb382b5da2d02b97b2061a5ea58456f33d4564c92e224af2713ce15fd5481edd715e5b9a52abc74fdc142f27e103c201
DIST gnat-gpl-2014-x86-linux-bin.tar.gz 233049287 BLAKE2B 2e8bab113f6a319533ec12fdf71c481f72aee227c22bd0cc42a53bd727b323caba1e7b6298053db8b4d3016236b31649b0b255f4ebcbb81a08a69f29f78f13fc SHA512 ac7f53fb4bd71b0e8fbd62abc45de76f7f8f2f405b80e9b60b4b65a6cef6ee98e3b06848e4b752af3c8268237e5a0529cf6145ebc5b33cd6e5cf4928d85f5be2
DIST gnat-gpl-2014-x86_64-linux-bin.tar.gz 236253400 BLAKE2B c1db70db9442ba24688b8e323d5a02e2e9707ba1f02835ea551038d0a09aafede93a224091e5186f2f2a9d0f96144027af2184ee05ca1c19cc997a6cf3902df7 SHA512 5e40a251baac3d0ace78352956ca21a7d294d902d344a9ed7a8d376e900468c283721ebfb773adfedbf4d623ace02536505c0147815a0c1908933ad611ea085e
-DIST gnat-gpl-2016-src.tar.gz 8857249 BLAKE2B 3ff0fe247990e2a612ac989aa389e9ccae2e29c16177975c327b53ae1471030d0a70e5a2e3af219ad9a3288c241f2d18da349d0650f7fde01d439f4e4720de88 SHA512 4a5cb58ede5b4ae2887e64f0f2e12e0e06470d320796f06d02f7ddd932ff0d3b40e6d3e98a81138fff6906548a55153c2a186ff4a6e3d23b9dbe01ca582da1f8
-DIST gnat-gpl-2017-src.tar.gz 8783473 BLAKE2B b0415b42f4d3a5e8675591a5602ff0a96945670104064671a232c0c12271ee141a3a5d148b8507bdab83cb8a0677c57b78e690060088308c51732bad3715964f SHA512 ae7314a2241107ed4d962dce08306eeb34c5f11e26183935bbb1ccf3a5eb011d6457c1b6fcded93dd0ee9ba31d791971ebe2a5a5a0ae04ff80d87a670325a098
-DIST gnat-gpl-2018-src.tar.gz 8706578 BLAKE2B ba245fd91cc5263d5b8c159d9e75caf6bed21dcaa5fa43734af8775a4008ce5f96bfb84a8b5e6e734ff883314ab3219dacec3fe95a5baa33fb712bfb5ff8bce8 SHA512 0ff7e848ef77f7e772e2a1b01905307a91c332f32329456f5238c4b7eb46cc118709e8682a5fc826d98a7d99fd15a92c194f4a278f04bc465165cfa616cc3c2e
diff --git a/dev-lang/gnat-gpl/files/gcc-configure-LANG.patch b/dev-lang/gnat-gpl/files/gcc-configure-LANG.patch
deleted file mode 100644
index d1b1b0353662..000000000000
--- a/dev-lang/gnat-gpl/files/gcc-configure-LANG.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-The LANG vars aren't reset early enough so when sed tries to use [a-zA-Z] in
-option parsing, it may break.
-
-http://bugs.gentoo.org/103483
-
---- configure
-+++ configure
-@@ -54,6 +54,19 @@
- infodir='${prefix}/info'
- mandir='${prefix}/man'
-
-+# NLS nuisances.
-+for as_var in \
-+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-+ LC_TELEPHONE LC_TIME
-+do
-+ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-+ eval $as_var=C; export $as_var
-+ else
-+ unset $as_var
-+ fi
-+done
-+
- # Initialize some other variables.
- subdirs=
- MFLAGS= MAKEFLAGS=
-@@ -452,16 +463,6 @@
- esac
- done
-
--# NLS nuisances.
--# Only set these to C if already set. These must not be set unconditionally
--# because not all systems understand e.g. LANG=C (notably SCO).
--# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
--# Non-C LC_CTYPE values break the ctype check.
--if test "${LANG+set}" = set; then LANG=C; export LANG; fi
--if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
--if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
--if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
--
- # confdefs.h avoids OS command line length limits that DEFS can exceed.
- rm -rf conftest* confdefs.h
- # AIX cpp loses on an empty file, so make sure it contains at least a newline.
-@@ -1850,6 +1850,19 @@
- # Compiler output produced by configure, useful for debugging
- # configure, is in ./config.log if it exists.
-
-+# NLS nuisances.
-+for as_var in \
-+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-+ LC_TELEPHONE LC_TIME
-+do
-+ if (set +x; test -z "`(eval \$as_var=C; export \$as_var) 2>&1`"); then
-+ eval \$as_var=C; export \$as_var
-+ else
-+ unset \$as_var
-+ fi
-+done
-+
- ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
- for ac_option
- do
diff --git a/dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch b/dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch
deleted file mode 100644
index a58926836e4e..000000000000
--- a/dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-2013-08-22 Magnus Granberg <zorry@gentoo.org>
-
- * gcc/gcc.c (main): Add support for external spec file via the GCC_SPECS env var
- and move the process of the user specifed specs.
-
- This allows us to easily control pie/ssp defaults with gcc-config profiles.
- Original patch by Rob Holland
- Extended to support multiple entries separated by ':' by Kevin F. Quinn
- Modified to use getenv instead of poisoned GET_ENVIRONMENT by Ryan Hill
- Modified to process the GCC_SPECS env var befor DRIVER_SELF_SPECS by Magnus Granberg
-
---- gcc-4.8-20130210/gcc/gcc.c 2013-02-05 16:55:31.000000000 +0100
-+++ gcc-4.8-20130210-work/gcc/gcc.c 2013-07-26 02:32:14.625089864 +0200
-@@ -6427,6 +6428,48 @@ main (int argc, char **argv)
- do_option_spec (option_default_specs[i].name,
- option_default_specs[i].spec);
-
-+#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS) || defined (WIN32))
-+ /* Add specs listed in GCC_SPECS. Note; in the process of separating
-+ * each spec listed, the string is overwritten at token boundaries
-+ * (':') with '\0', an effect of strtok_r().
-+ */
-+ specs_file = getenv ("GCC_SPECS");
-+ if (specs_file && (strlen(specs_file) > 0))
-+ {
-+ char *spec, *saveptr;
-+ for (spec=strtok_r(specs_file,":",&saveptr);
-+ spec!=NULL;
-+ spec=strtok_r(NULL,":",&saveptr))
-+ {
-+ struct user_specs *user = (struct user_specs *)
-+ xmalloc (sizeof (struct user_specs));
-+ user->next = (struct user_specs *) 0;
-+ user->filename = spec;
-+ if (user_specs_tail)
-+ user_specs_tail->next = user;
-+ else
-+ user_specs_head = user;
-+ user_specs_tail = user;
-+ }
-+ }
-+#endif
-+ /* Process any user specified specs in the order given on the command
-+ * line. */
-+ for (uptr = user_specs_head; uptr; uptr = uptr->next)
-+ {
-+ char *filename = find_a_file (&startfile_prefixes, uptr->filename,
-+ R_OK, true);
-+ read_specs (filename ? filename : uptr->filename, false, true);
-+ }
-+ /* Process any user self specs. */
-+ {
-+ struct spec_list *sl;
-+ for (sl = specs; sl; sl = sl->next)
-+ if (sl->name_len == sizeof "self_spec" - 1
-+ && !strcmp (sl->name, "self_spec"))
-+ do_self_spec (*sl->ptr_spec);
-+ }
-+
- /* Process DRIVER_SELF_SPECS, adding any new options to the end
- of the command line. */
-
-@@ -6535,24 +6578,6 @@ main (int argc, char **argv)
- PREFIX_PRIORITY_LAST, 0, 1);
- }
-
-- /* Process any user specified specs in the order given on the command
-- line. */
-- for (uptr = user_specs_head; uptr; uptr = uptr->next)
-- {
-- char *filename = find_a_file (&startfile_prefixes, uptr->filename,
-- R_OK, true);
-- read_specs (filename ? filename : uptr->filename, false, true);
-- }
--
-- /* Process any user self specs. */
-- {
-- struct spec_list *sl;
-- for (sl = specs; sl; sl = sl->next)
-- if (sl->name_len == sizeof "self_spec" - 1
-- && !strcmp (sl->name, "self_spec"))
-- do_self_spec (*sl->ptr_spec);
-- }
--
- if (compare_debug)
- {
- enum save_temps save;
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch
deleted file mode 100644
index aed1ad0e90be..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From 41a4aa66eac45c8862a79351647ec06dd03bd1f5 Mon Sep 17 00:00:00 2001
-From: jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
-Date: Sat, 13 Dec 2014 11:24:37 +0000
-Subject: [PATCH] PR bootstrap/64023 * Makefile.tpl
- (EXTRA_TARGET_FLAGS): Set STAGE1_LDFLAGS to POSTSTAGE1_LDFLAGS and
- STAGE1_LIBS to POSTSTAGE1_LIBS. Add -B to libstdc++-v3/src/.libs and
- libstdc++-v3/libsupc++/.libs to CXX. * Makefile.in: Regenerated.
-
-git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218705 138bc75d-0d04-0410-961f-82ee72b054a4
----
- ChangeLog | 9 +++++++++
- Makefile.in | 6 +++++-
- Makefile.tpl | 6 +++++-
- 3 files changed, 19 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index ba5ae4c2ecb..8ffc313f157 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -835,7 +835,9 @@ EXTRA_TARGET_FLAGS = \
- 'AS=$(COMPILER_AS_FOR_TARGET)' \
- 'CC=$$(CC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
- 'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
-- 'CXX=$$(CXX_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
-+ 'CXX=$$(CXX_FOR_TARGET) -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \
-+ -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \
-+ $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
- 'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
- 'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
- 'GCJ=$$(GCJ_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
-@@ -853,6 +855,8 @@ EXTRA_TARGET_FLAGS = \
- 'WINDRES=$$(WINDRES_FOR_TARGET)' \
- 'WINDMC=$$(WINDMC_FOR_TARGET)' \
- 'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \
-+ 'STAGE1_LDFLAGS=$$(POSTSTAGE1_LDFLAGS)' \
-+ 'STAGE1_LIBS=$$(POSTSTAGE1_LIBS)' \
- "TFLAGS=$$TFLAGS"
-
- TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
-diff --git a/Makefile.tpl b/Makefile.tpl
-index dcbc6b1b143..bb8227eaafa 100644
---- a/Makefile.tpl
-+++ b/Makefile.tpl
-@@ -641,7 +641,9 @@ EXTRA_TARGET_FLAGS = \
- 'AS=$(COMPILER_AS_FOR_TARGET)' \
- 'CC=$$(CC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
- 'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
-- 'CXX=$$(CXX_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
-+ 'CXX=$$(CXX_FOR_TARGET) -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \
-+ -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \
-+ $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
- 'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
- 'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
- 'GCJ=$$(GCJ_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
-@@ -659,6 +661,8 @@ EXTRA_TARGET_FLAGS = \
- 'WINDRES=$$(WINDRES_FOR_TARGET)' \
- 'WINDMC=$$(WINDMC_FOR_TARGET)' \
- 'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \
-+ 'STAGE1_LDFLAGS=$$(POSTSTAGE1_LDFLAGS)' \
-+ 'STAGE1_LIBS=$$(POSTSTAGE1_LIBS)' \
- "TFLAGS=$$TFLAGS"
-
- TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
---
-2.15.0
-
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch
deleted file mode 100644
index 44503ae6b72e..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch
+++ /dev/null
@@ -1,220 +0,0 @@
---- a/gcc/ada/exp_attr.adb 2018-11-16 20:23:21.775906196 +0100
-+++ b/gcc/ada/exp_attr.adb 2018-11-16 20:25:57.418211404 +0100
-@@ -3121,6 +3121,121 @@
- Analyze_And_Resolve (N, Standard_String);
- end External_Tag;
-
-+ -----------------------
-+ -- Finalization_Size --
-+ -----------------------
-+
-+ when Attribute_Finalization_Size => Finalization_Size : declare
-+ function Calculate_Header_Size return Node_Id;
-+ -- Generate a runtime call to calculate the size of the hidden header
-+ -- along with any added padding which would precede a heap-allocated
-+ -- object of the prefix type.
-+
-+ ---------------------------
-+ -- Calculate_Header_Size --
-+ ---------------------------
-+
-+ function Calculate_Header_Size return Node_Id is
-+ begin
-+ -- Generate:
-+ -- Universal_Integer
-+ -- (Header_Size_With_Padding (Pref'Alignment))
-+
-+ return
-+ Convert_To (Universal_Integer,
-+ Make_Function_Call (Loc,
-+ Name =>
-+ New_Occurrence_Of (RTE (RE_Header_Size_With_Padding), Loc),
-+
-+ Parameter_Associations => New_List (
-+ Make_Attribute_Reference (Loc,
-+ Prefix => New_Copy_Tree (Pref),
-+ Attribute_Name => Name_Alignment))));
-+ end Calculate_Header_Size;
-+
-+ -- Local variables
-+
-+ Size : Entity_Id;
-+
-+ -- Start of Finalization_Size
-+
-+ begin
-+ -- An object of a class-wide type first requires a runtime check to
-+ -- determine whether it is actually controlled or not. Depending on
-+ -- the outcome of this check, the Finalization_Size of the object
-+ -- may be zero or some positive value.
-+ --
-+ -- In this scenario, Pref'Finalization_Size is expanded into
-+ --
-+ -- Size : Integer := 0;
-+ --
-+ -- if Needs_Finalization (Pref'Tag) then
-+ -- Size :=
-+ -- Universal_Integer
-+ -- (Header_Size_With_Padding (Pref'Alignment));
-+ -- end if;
-+ --
-+ -- and the attribute reference is replaced with a reference to Size.
-+
-+ if Is_Class_Wide_Type (Ptyp) then
-+ Size := Make_Temporary (Loc, 'S');
-+
-+ Insert_Actions (N, New_List (
-+
-+ -- Generate:
-+ -- Size : Integer := 0;
-+
-+ Make_Object_Declaration (Loc,
-+ Defining_Identifier => Size,
-+ Object_Definition =>
-+ New_Occurrence_Of (Standard_Integer, Loc),
-+ Expression => Make_Integer_Literal (Loc, 0)),
-+
-+ -- Generate:
-+ -- if Needs_Finalization (Pref'Tag) then
-+ -- Size :=
-+ -- Universal_Integer
-+ -- (Header_Size_With_Padding (Pref'Alignment));
-+ -- end if;
-+
-+ Make_If_Statement (Loc,
-+ Condition =>
-+ Make_Function_Call (Loc,
-+ Name =>
-+ New_Occurrence_Of (RTE (RE_Needs_Finalization), Loc),
-+
-+ Parameter_Associations => New_List (
-+ Make_Attribute_Reference (Loc,
-+ Prefix => New_Copy_Tree (Pref),
-+ Attribute_Name => Name_Tag))),
-+
-+ Then_Statements => New_List (
-+ Make_Assignment_Statement (Loc,
-+ Name => New_Occurrence_Of (Size, Loc),
-+ Expression => Calculate_Header_Size)))));
-+
-+ Rewrite (N, New_Occurrence_Of (Size, Loc));
-+
-+ -- The prefix is known to be controlled at compile time. Calculate
-+ -- Finalization_Size by calling function Header_Size_With_Padding.
-+
-+ elsif Needs_Finalization (Ptyp) then
-+ Rewrite (N, Calculate_Header_Size);
-+
-+ -- The prefix is not an object with controlled parts, so its
-+ -- Finalization_Size is zero.
-+
-+ else
-+ Rewrite (N, Make_Integer_Literal (Loc, 0));
-+ end if;
-+
-+ -- Due to cases where the entity type of the attribute is already
-+ -- resolved the rewritten N must get re-resolved to its appropriate
-+ -- type.
-+
-+ Analyze_And_Resolve (N, Typ);
-+ end Finalization_Size;
-+
- -----------
- -- First --
- -----------
---- a/gcc/ada/snames.ads-tmpl 2016-05-16 11:29:28.000000000 +0200
---- b/gcc/ada/snames.ads-tmpl 2016-05-16 11:29:28.000000000 +0200
-@@ -884,6 +884,7 @@
- Name_Exponent : constant Name_Id := N + $;
- Name_External_Tag : constant Name_Id := N + $;
- Name_Fast_Math : constant Name_Id := N + $; -- GNAT
-+ Name_Finalization_Size : constant Name_Id := N + $; -- GNAT
- Name_First : constant Name_Id := N + $;
- Name_First_Bit : constant Name_Id := N + $;
- Name_First_Valid : constant Name_Id := N + $; -- Ada 12
-@@ -1523,6 +1524,7 @@
- Attribute_Exponent,
- Attribute_External_Tag,
- Attribute_Fast_Math,
-+ Attribute_Finalization_Size,
- Attribute_First,
- Attribute_First_Bit,
- Attribute_First_Valid,
---- a/gcc/ada/sem_attr.ads 2018-11-16 21:35:46.821279875 +0100
-+++ b/gcc/ada/sem_attr.ads 2018-11-16 21:36:00.028057464 +0100
-@@ -242,6 +242,16 @@
- -- enumeration value. Constraint_Error is raised if no value of the
- -- enumeration type corresponds to the given integer value.
-
-+ -----------------------
-+ -- Finalization_Size --
-+ -----------------------
-+
-+ Attribute_Finalization_Size => True,
-+ -- For every object or non-class-wide-type, Finalization_Size returns
-+ -- the size of the hidden header used for finalization purposes as if
-+ -- the object or type was allocated on the heap. The size of the header
-+ -- does take into account any extra padding due to alignment issues.
-+
- -----------------
- -- Fixed_Value --
- -----------------
---- a/gcc/ada/sem_attr.adb 2018-11-16 21:35:49.698231429 +0100
-+++ b/gcc/ada/sem_attr.adb 2018-11-16 21:36:00.028057464 +0100
-@@ -3828,6 +3828,42 @@
- Check_Standard_Prefix;
- Rewrite (N, New_Occurrence_Of (Boolean_Literals (Fast_Math), Loc));
-
-+ -----------------------
-+ -- Finalization_Size --
-+ -----------------------
-+
-+ when Attribute_Finalization_Size =>
-+ Check_E0;
-+
-+ -- The prefix denotes an object
-+
-+ if Is_Object_Reference (P) then
-+ Check_Object_Reference (P);
-+
-+ -- The prefix denotes a type
-+
-+ elsif Is_Entity_Name (P) and then Is_Type (Entity (P)) then
-+ Check_Type;
-+ Check_Not_Incomplete_Type;
-+
-+ -- Attribute 'Finalization_Size is not defined for class-wide
-+ -- types because it is not possible to know statically whether
-+ -- a definite type will have controlled components or not.
-+
-+ if Is_Class_Wide_Type (Etype (P)) then
-+ Error_Attr_P
-+ ("prefix of % attribute cannot denote a class-wide type");
-+ end if;
-+
-+ -- The prefix denotes an illegal construct
-+
-+ else
-+ Error_Attr_P
-+ ("prefix of % attribute must be a definite type or an object");
-+ end if;
-+
-+ Set_Etype (N, Universal_Integer);
-+
- -----------
- -- First --
- -----------
-@@ -8264,6 +8300,13 @@
- Fold_Uint (N,
- Eval_Fat.Exponent (P_Base_Type, Expr_Value_R (E1)), Static);
-
-+ -----------------------
-+ -- Finalization_Size --
-+ -----------------------
-+
-+ when Attribute_Finalization_Size =>
-+ null;
-+
- -----------
- -- First --
- -----------
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch
deleted file mode 100644
index 959ed5183124..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch
+++ /dev/null
@@ -1,57 +0,0 @@
---- a/patch/09_all_default-ssp.patch 2017-01-08 16:14:09.377755019 +0100
-+++ b/patch/09_all_default-ssp.patch 2017-01-08 16:15:48.792764201 +0100
-@@ -78,14 +78,14 @@
- optimizing. The default value is 32.
- --- a/gcc/cp/lang-specs.h
- +++ b/gcc/cp/lang-specs.h
--@@ -46,7 +46,7 @@ along with GCC; see the file COPYING3. If not see
-+@@ -46,7 +46,7 @@
- %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\
- cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\
- %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\
- - %(cc1_options) %2\
- + %(cc1_options) %(ssp_default) %2\
-- %{!fsyntax-only:%{!fdump-ada-spec*:-o %g.s %{!o*:--output-pch=%i.gch}\
-- %W{o*:--output-pch=%*}}%V}}}}",
-+ %{!fsyntax-only:-o %g.s %{!fdump-ada-spec*:%{!fdump-xref*:%{!o*:--output-pch=%i.gch}\
-+ %W{o*:--output-pch=%*}}}%V}}}}",
- CPLUSPLUS_CPP_SPEC, 0, 0},
- @@ -57,11 +57,11 @@ along with GCC; see the file COPYING3. If not see
- %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\
-@@ -151,14 +151,14 @@
- /* This contains cpp options which are not passed when the preprocessor
- output will be used by another program. */
- @@ -1015,9 +1024,9 @@ static const struct compiler default_compilers[] =
-- %{save-temps*|traditional-cpp|no-integrated-cpp:%(trad_capable_cpp) \
-+ %{save-temps*|fdump-scos|traditional-cpp|no-integrated-cpp:%(trad_capable_cpp) \
- %(cpp_options) -o %{save-temps*:%b.i} %{!save-temps*:%g.i} \n\
- cc1 -fpreprocessed %{save-temps*:%b.i} %{!save-temps*:%g.i} \
- - %(cc1_options)}\
- + %(cc1_options) %(ssp_default)}\
-- %{!save-temps*:%{!traditional-cpp:%{!no-integrated-cpp:\
--- cc1 %(cpp_unique_options) %(cc1_options)}}}\
--+ cc1 %(cpp_unique_options) %(cc1_options) %(ssp_default)}}}\
-+ %{!save-temps*:%{!fdump-scos:%{!traditional-cpp:%{!no-integrated-cpp:\
-+- cc1 %(cpp_unique_options) %(cc1_options)}}}}\
-++ cc1 %(cpp_unique_options) %(cc1_options) %(ssp_default)}}}}\
- %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 1},
- {"-",
- "%{!E:%e-E or -x required when input is from standard input}\
---- a/gcc-4.9-gpl-2016-src/gcc/ada/osint.adb 2017-03-10 21:58:02.600710156 +0100
-+++ b/gcc-4.9-gpl-2016-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'
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch
deleted file mode 100644
index 561c012a23e6..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch
+++ /dev/null
@@ -1,113 +0,0 @@
---- a/gcc/ada/s-rident.ads 2018-11-18 18:47:39.042412895 +0100
-+++ b/gcc/ada/s-rident.ads 2018-11-18 19:02:31.736559044 +0100
-@@ -378,15 +378,17 @@
- type Profile_Name is
- (No_Profile,
- No_Implementation_Extensions,
-+ Restricted_Tasking,
-+ Restricted,
- Ravenscar,
- GNAT_Extended_Ravenscar,
-- Restricted);
-+ GNAT_Ravenscar_EDF);
- -- Names of recognized profiles. No_Profile is used to indicate that a
- -- restriction came from pragma Restrictions[_Warning], as opposed to
- -- pragma Profile[_Warning].
-
- subtype Profile_Name_Actual is Profile_Name
-- range No_Implementation_Extensions .. Restricted;
-+ range No_Implementation_Extensions .. Profile_Name'Last;
- -- Actual used profile names
-
- type Profile_Data is record
-@@ -456,6 +458,40 @@
- Max_Task_Entries => 0,
- others => 0)),
-
-+ -- Restricted_Tasking Profile
-+
-+ Restricted_Tasking =>
-+
-+ -- Restrictions for Restricted_Tasking profile
-+
-+ (Set =>
-+ (No_Abort_Statements => True,
-+ No_Asynchronous_Control => True,
-+ No_Dynamic_Attachment => True,
-+ No_Dynamic_Priorities => True,
-+ No_Entry_Queue => True,
-+ No_Local_Protected_Objects => True,
-+ No_Protected_Type_Allocators => True,
-+ No_Requeue_Statements => True,
-+ No_Task_Allocators => True,
-+ No_Task_Attributes_Package => True,
-+ No_Task_Hierarchy => True,
-+ No_Terminate_Alternatives => True,
-+ Max_Asynchronous_Select_Nesting => True,
-+ Max_Protected_Entries => True,
-+ Max_Select_Alternatives => True,
-+ Max_Task_Entries => True,
-+ others => False),
-+
-+ -- Value settings for Restricted profile
-+
-+ Value =>
-+ (Max_Asynchronous_Select_Nesting => 0,
-+ Max_Protected_Entries => 1,
-+ Max_Select_Alternatives => 0,
-+ Max_Task_Entries => 0,
-+ others => 0)),
-+
- -- Ravenscar Profile
-
- -- Note: the table entries here only represent the
-@@ -509,6 +545,49 @@
- Max_Task_Entries => 0,
- others => 0)),
-
-+ GNAT_Ravenscar_EDF =>
-+
-+ -- Restrictions for Ravenscar = Restricted profile ..
-+
-+ (Set =>
-+ (No_Abort_Statements => True,
-+ No_Asynchronous_Control => True,
-+ No_Dynamic_Attachment => True,
-+ No_Dynamic_Priorities => True,
-+ No_Entry_Queue => True,
-+ No_Local_Protected_Objects => True,
-+ No_Protected_Type_Allocators => True,
-+ No_Requeue_Statements => True,
-+ No_Task_Allocators => True,
-+ No_Task_Attributes_Package => True,
-+ No_Task_Hierarchy => True,
-+ No_Terminate_Alternatives => True,
-+ Max_Asynchronous_Select_Nesting => True,
-+ Max_Protected_Entries => True,
-+ Max_Select_Alternatives => True,
-+ Max_Task_Entries => True,
-+
-+ -- plus these additional restrictions:
-+
-+ No_Calendar => True,
-+ No_Implicit_Heap_Allocations => True,
-+ No_Local_Timing_Events => True,
-+ No_Relative_Delay => True,
-+ No_Select_Statements => True,
-+ No_Specific_Termination_Handlers => True,
-+ No_Task_Termination => True,
-+ Simple_Barriers => True,
-+ others => False),
-+
-+ -- Value settings for Ravenscar (same as Restricted)
-+
-+ Value =>
-+ (Max_Asynchronous_Select_Nesting => 0,
-+ Max_Protected_Entries => 1,
-+ Max_Select_Alternatives => 0,
-+ Max_Task_Entries => 0,
-+ others => 0)),
-+
- GNAT_Extended_Ravenscar =>
-
- -- Restrictions for GNAT_Extended_Ravenscar =
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch
deleted file mode 100644
index de013cdc0d3a..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch
+++ /dev/null
@@ -1,98 +0,0 @@
---- a/patch/13_all_default-ssp-fix.patch 2017-06-14 11:29:28.997183865 +0200
-+++ b/patch/13_all_default-ssp-fix.patch 2017-06-14 12:24:15.042271863 +0200
-@@ -39,9 +39,9 @@
- %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
- %{fsyntax-only:-o %j} %{-param*}\
- + %{nostdlib:-nostdlib}\
-- %{coverage:-fprofile-arcs -ftest-coverage}";
-+ %{coverage:-fprofile-arcs -ftest-coverage}\
-+ %{fdump-scos:-fpreserve-decisions-generic}";
-
-- static const char *asm_options =
- --- a/gcc/params.def 2016-03-30 09:47:40.000000000 +0200
- +++ b/gcc/params.def 2016-09-19 12:56:58.443179039 +0200
- @@ -673,7 +673,7 @@ DEFPARAM (PARAM_INTEGER_SHARE_LIMIT,
---- a/gcc-6-gpl-2017-src/gcc/ada/osint.adb 2017-03-10 21:58:02.600710156 +0100
-+++ b/gcc-6-gpl-2017-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-6-gpl-2017-src/libgcc/config/i386/linux-unwind.h 2017-12-07 20:57:02.737224515 +0100
-+++ b/gcc-6-gpl-2017-src/libgcc/config/i386/linux-unwind.h 2017-12-07 21:01:59.431929926 +0100
-@@ -58,7 +58,7 @@
- if (*(unsigned char *)(pc+0) == 0x48
- && *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
- {
-- struct ucontext *uc_ = context->cfa;
-+ ucontext_t *uc_ = context->cfa;
- /* The void * cast is necessary to avoid an aliasing warning.
- The aliasing warning is correct, but should not be a problem
- because it does not alias anything. */
-@@ -138,7 +138,7 @@
- siginfo_t *pinfo;
- void *puc;
- siginfo_t info;
-- struct ucontext uc;
-+ ucontext_t uc;
- } *rt_ = context->cfa;
- /* The void * cast is necessary to avoid an aliasing warning.
- The aliasing warning is correct, but should not be a problem
---- a/gcc-6-gpl-2017-src/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc 2017-12-07 22:05:30.512328872 +0100
-+++ b/gcc-6-gpl-2017-src/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc 2017-12-07 22:05:53.104950070 +0100
-@@ -267,7 +267,7 @@
-
- // Alternate stack for signal handling.
- InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize);
-- struct sigaltstack handler_stack;
-+ stack_t handler_stack;
- internal_memset(&handler_stack, 0, sizeof(handler_stack));
- handler_stack.ss_sp = handler_stack_memory.data();
- handler_stack.ss_size = kHandlerStackSize;
---- a/gcc-6-gpl-2017-src/libsanitizer/sanitizer_common/sanitizer_linux.cc 2017-12-07 22:09:04.912731275 +0100
-+++ b/gcc-6-gpl-2017-src/libsanitizer/sanitizer_common/sanitizer_linux.cc 2017-12-07 22:10:03.150754764 +0100
-@@ -546,8 +546,7 @@
- }
- #endif
-
--uptr internal_sigaltstack(const struct sigaltstack *ss,
-- struct sigaltstack *oss) {
-+uptr internal_sigaltstack(const void *ss, void *oss) {
- return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss);
- }
-
---- a/gcc-6-gpl-2017-src/libsanitizer/sanitizer_common/sanitizer_linux.h 2017-12-07 22:10:10.109638062 +0100
-+++ b/gcc-6-gpl-2017-src/libsanitizer/sanitizer_common/sanitizer_linux.h 2017-12-07 22:10:30.991287828 +0100
-@@ -28,8 +28,7 @@
-
- // Syscall wrappers.
- uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count);
--uptr internal_sigaltstack(const struct sigaltstack* ss,
-- struct sigaltstack* oss);
-+uptr internal_sigaltstack(const void* ss, void* oss);
- uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set,
- __sanitizer_sigset_t *oldset);
- void internal_sigfillset(__sanitizer_sigset_t *set);
---- a/gcc-6-gpl-2017-src/libsanitizer/tsan/tsan_platform_linux.cc 2017-12-07 22:15:09.626608907 +0100
-+++ b/gcc-6-gpl-2017-src/libsanitizer/tsan/tsan_platform_linux.cc 2017-12-07 22:15:28.825286145 +0100
-@@ -291,7 +291,7 @@
- int ExtractResolvFDs(void *state, int *fds, int nfd) {
- #if SANITIZER_LINUX
- int cnt = 0;
-- __res_state *statp = (__res_state*)state;
-+ struct __res_state *statp = (struct __res_state*)state;
- for (int i = 0; i < MAXNS && cnt < nfd; i++) {
- if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
- fds[cnt++] = statp->_u._ext.nssocks[i];
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2017-libatomic-Werror.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2017-libatomic-Werror.patch
deleted file mode 100644
index 0550722d170b..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2017-libatomic-Werror.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-libatomic does not respect --disable-werror
-
-https://bugs.gentoo.org/475350
---- a/libatomic/configure.ac
-+++ b/libatomic/configure.ac
-@@ -4282,4 +4282,4 @@ save_CFLAGS="$CFLAGS"
- # Add -Wall -Werror if we are using GCC.
- if test "x$GCC" = "xyes"; then
-- XCFLAGS="$XCFLAGS -Wall -Werror"
-+ XCFLAGS="$XCFLAGS -Wall"
- fi
---- a/libatomic/configure
-+++ b/libatomic/configure
-@@ -4282,4 +4282,4 @@ save_CFLAGS="$CFLAGS"
- # Add -Wall -Werror if we are using GCC.
- if test "x$GCC" = "xyes"; then
-- XCFLAGS="$XCFLAGS -Wall -Werror"
-+ XCFLAGS="$XCFLAGS -Wall"
- fi
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2017-libgomp-Werror.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2017-libgomp-Werror.patch
deleted file mode 100644
index 416808a63b15..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2017-libgomp-Werror.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-libgomp does not respect --disable-werror
-
-https://bugs.gentoo.org/229059
-http://gcc.gnu.org/PR38436
---- a/libgomp/configure.ac
-+++ b/libgomp/configure.ac
-@@ -4282,4 +4282,4 @@ save_CFLAGS="$CFLAGS"
- # Add -Wall -Werror if we are using GCC.
- if test "x$GCC" = "xyes"; then
-- XCFLAGS="$XCFLAGS -Wall -Werror"
-+ XCFLAGS="$XCFLAGS -Wall"
- fi
---- a/libgomp/configure
-+++ b/libgomp/configure
-@@ -4282,4 +4282,4 @@ save_CFLAGS="$CFLAGS"
- # Add -Wall -Werror if we are using GCC.
- if test "x$GCC" = "xyes"; then
-- XCFLAGS="$XCFLAGS -Wall -Werror"
-+ XCFLAGS="$XCFLAGS -Wall"
- fi
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2017-libitm-Werror.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2017-libitm-Werror.patch
deleted file mode 100644
index 27181e02cfbd..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2017-libitm-Werror.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-libitm does not respect --disable-werror
-
-https://bugs.gentoo.org/475350
---- a/libitm/configure.ac
-+++ b/libitm/configure.ac
-@@ -4282,4 +4282,4 @@ save_CFLAGS="$CFLAGS"
- # Add -Wall -Werror if we are using GCC.
- if test "x$GCC" = "xyes"; then
-- XCFLAGS="$XCFLAGS -Wall -Werror"
-+ XCFLAGS="$XCFLAGS -Wall"
- fi
---- a/libitm/configure
-+++ b/libitm/configure
-@@ -4282,4 +4282,4 @@ save_CFLAGS="$CFLAGS"
- # Add -Wall -Werror if we are using GCC.
- if test "x$GCC" = "xyes"; then
-- XCFLAGS="$XCFLAGS -Wall -Werror"
-+ XCFLAGS="$XCFLAGS -Wall"
- fi
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2017-ustat.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2017-ustat.patch
deleted file mode 100644
index 4c57b814ce57..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2017-ustat.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc 2019-04-19 20:53:11.382114157 +0200
-+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc 2019-04-19 20:57:10.725037767 +0200
-@@ -150,7 +150,6 @@
- # include <sys/procfs.h>
- #endif
- #include <sys/user.h>
--#include <sys/ustat.h>
- #include <linux/cyclades.h>
- #include <linux/if_eql.h>
- #include <linux/if_plip.h>
-@@ -243,7 +242,19 @@
- #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
-
- #if SANITIZER_LINUX && !SANITIZER_ANDROID
-- unsigned struct_ustat_sz = sizeof(struct ustat);
-+ // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
-+ // has been removed from glibc 2.28.
-+#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
-+ || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \
-+ || defined(__x86_64__)
-+#define SIZEOF_STRUCT_USTAT 32
-+#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \
-+ || defined(__powerpc__) || defined(__s390__) || defined(__sparc__)
-+#define SIZEOF_STRUCT_USTAT 20
-+#else
-+#error Unknown size of struct ustat
-+#endif
-+ unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT;
- unsigned struct_rlimit64_sz = sizeof(struct rlimit64);
- unsigned struct_statvfs64_sz = sizeof(struct statvfs64);
- #endif // SANITIZER_LINUX && !SANITIZER_ANDROID
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2018-gentoo.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2018-gentoo.patch
deleted file mode 100644
index 5d6a38af14e3..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2018-gentoo.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/gcc-7-gpl-2018-src/gcc/ada/osint.adb 2017-03-10 21:58:02.600710156 +0100
-+++ b/gcc-7-gpl-2018-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'
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p1.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p1.patch
deleted file mode 100644
index 80cc074d7f34..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p1.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 54d87ffe4b34052f159ac5b72b250129ce813b2a Mon Sep 17 00:00:00 2001
-From: Jakub Jelinek <jakub@redhat.com>
-Date: Fri, 14 Feb 2020 12:33:27 +0100
-Subject: [PATCH] backport: re PR sanitizer/92154 (new glibc breaks arm
- bootstrap due to libsanitizer)
-
- Backported from mainline
- 2019-10-22 Tamar Christina <tamar.christina@arm.com>
-
- PR sanitizer/92154
- * sanitizer_common/sanitizer_platform_limits_posix.cc:
- Cherry-pick compiler-rt revision r375220.
----
---- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
-+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
-@@ -1147,8 +1147,12 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, uid);
- CHECK_SIZE_AND_OFFSET(ipc_perm, gid);
- CHECK_SIZE_AND_OFFSET(ipc_perm, cuid);
- CHECK_SIZE_AND_OFFSET(ipc_perm, cgid);
--#if !defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21)
-+#if (!defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21)) && \
-+ !defined(__arm__)
- /* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */
-+/* On Arm glibc 2.31 and later provide a different mode field, this field is
-+ never used by libsanitizer so we can simply ignore this assert for all glibc
-+ versions. */
- CHECK_SIZE_AND_OFFSET(ipc_perm, mode);
- #endif
-
---
-2.25.2
-
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p2.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p2.patch
deleted file mode 100644
index bdd8dcbe3d02..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2018-libsanitizer-p2.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From dbdf86838aaaef76620c00c53096cfe157d5af6e Mon Sep 17 00:00:00 2001
-From: Jakub Jelinek <jakub@redhat.com>
-Date: Fri, 14 Feb 2020 12:38:30 +0100
-Subject: [PATCH] backport: re PR sanitizer/92154 (new glibc breaks arm
- bootstrap due to libsanitizer)
-
- Backported from mainline
- 2019-11-26 Jakub Jelinek <jakub@redhat.com>
-
- PR sanitizer/92154
- * sanitizer_common/sanitizer_platform_limits_posix.h: Cherry-pick
- llvm-project revision 947f9692440836dcb8d88b74b69dd379d85974ce.
- * sanitizer_common/sanitizer_platform_limits_posix.cc: Likewise.
----
---- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
-+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
-@@ -1147,12 +1147,9 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, uid);
- CHECK_SIZE_AND_OFFSET(ipc_perm, gid);
- CHECK_SIZE_AND_OFFSET(ipc_perm, cuid);
- CHECK_SIZE_AND_OFFSET(ipc_perm, cgid);
--#if (!defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21)) && \
-- !defined(__arm__)
--/* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */
--/* On Arm glibc 2.31 and later provide a different mode field, this field is
-- never used by libsanitizer so we can simply ignore this assert for all glibc
-- versions. */
-+#if !SANITIZER_LINUX || __GLIBC_PREREQ (2, 31)
-+/* glibc 2.30 and earlier provided 16-bit mode field instead of 32-bit
-+ on many architectures. */
- CHECK_SIZE_AND_OFFSET(ipc_perm, mode);
- #endif
-
---- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
-+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
-@@ -210,20 +210,13 @@ namespace __sanitizer {
- unsigned long __unused1;
- unsigned long __unused2;
- #elif defined(__sparc__)
--# if defined(__arch64__)
- unsigned mode;
-- unsigned short __pad1;
--# else
-- unsigned short __pad1;
-- unsigned short mode;
- unsigned short __pad2;
--# endif
- unsigned short __seq;
- unsigned long long __unused1;
- unsigned long long __unused2;
- #else
-- unsigned short mode;
-- unsigned short __pad1;
-+ unsigned int mode;
- unsigned short __seq;
- unsigned short __pad2;
- #if defined(__x86_64__) && !defined(_LP64)
---
-2.25.2
-
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2019-gentoo.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2019-gentoo.patch
deleted file mode 100644
index 36befaafc0f8..000000000000
--- a/dev-lang/gnat-gpl/files/gnat-gpl-2019-gentoo.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- a/patch/15_all_disable-systemtap-switch.patch 2019-05-28 09:25:40.556754095 +0200
-+++ b/patch/15_all_disable-systemtap-switch.patch 2019-05-28 09:25:00.731426775 +0200
-@@ -42,8 +42,8 @@
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
---#line 18451 "configure"
--+#line 18453 "configure"
-+-#line 18497 "configure"
-++#line 18499 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
-@@ -51,8 +51,8 @@
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
---#line 18557 "configure"
--+#line 18559 "configure"
-+-#line 18603 "configure"
-++#line 18605 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
---- a/gcc-8-2019-20190517-18C94-src/gcc/ada/osint.adb 2017-03-10 21:58:02.600710156 +0100
-+++ b/gcc-8-2019-20190517-18C94-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'
diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2021-gentoo.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2021-gentoo.patch
new file mode 100644
index 000000000000..681fd47262da
--- /dev/null
+++ b/dev-lang/gnat-gpl/files/gnat-gpl-2021-gentoo.patch
@@ -0,0 +1,95 @@
+--- 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/patch/04_all_nossp-on-nostdlib.patch 2021-05-10 21:37:05.733985417 +0200
++++ b/patch/04_all_nossp-on-nostdlib.patch 2021-05-10 21:38:02.925029050 +0200
+@@ -4,7 +4,7 @@
+ --- a/gcc/gcc.c 2017-07-04 09:15:57.740793000 +0200
+ +++ b/gcc/gcc.c 2018-03-02 13:58:44.387741114 +0100
+ @@ -857,6 +857,12 @@ proper position among the other output f
+- #define LINK_GCC_C_SEQUENCE_SPEC "%G %L %G"
++ #define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
+ #endif
+
+ +#ifdef ENABLE_DEFAULT_SSP
+@@ -19,9 +19,9 @@
+ @@ -1131,7 +1148,7 @@ static const char *cc1_options =
+ %{-version:--version}\
+ %{-help=*:--help=%*}\
+- %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
++ %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %w%b.s}}}\
+ - %{fsyntax-only:-o %j} %{-param*}\
+ + %{fsyntax-only:-o %j} %{-param*} " NO_SSP_SPEC "\
+ %{coverage:-fprofile-arcs -ftest-coverage}\
++ %{fdump-scos:-fpreserve-decisions-generic}\
+ %{fprofile-arcs|fprofile-generate*|coverage:\
+- %{!fprofile-update=singel:\
+--- 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 ()
+ {
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild
deleted file mode 100644
index eeeeaf2c0388..000000000000
--- a/dev-lang/gnat-gpl/gnat-gpl-2016-r4.ebuild
+++ /dev/null
@@ -1,161 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PATCH_GCC_VER=4.9.4
-PATCH_VER="1.4"
-UCLIBC_VER="1.0"
-
-# Hardened gcc 4 stuff
-PIE_VER="0.6.4"
-SPECS_VER="0.2.0"
-SPECS_GCC_VER="4.4.3"
-# arch/libc configurations known to be stable with {PIE,SSP}-by-default
-PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
-PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
-SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
-# uclibc need tls and nptl support for SSP support
-# uclibc need to be >= 0.9.33
-SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
-#end Hardened stuff
-
-TOOLCHAIN_GCC_PV=4.9.4
-
-REL=4.9
-MYP=gcc-${REL}-gpl-${PV}-src
-BTSTRP_X86=gnat-gpl-2014-x86-linux-bin
-BTSTRP_AMD64=gnat-gpl-2014-x86_64-linux-bin
-
-inherit toolchain-funcs toolchain
-
-DESCRIPTION="GNAT Ada Compiler - GPL version"
-HOMEPAGE="http://libre.adacore.com/"
-# we provide own tarball below
-SRC_URI+="
- http://mirrors.cdn.adacore.com/art/57399304c7a447658e0aff7f
- -> ${P}-src.tar.gz
- http://mirrors.cdn.adacore.com/art/573992d4c7a447658d00e1db
- -> ${MYP}.tar.gz
- http://mirrors.cdn.adacore.com/art/57399232c7a447658e0aff7d
- -> gcc-interface-${REL}-gpl-${PV}-src.tar.gz
- bootstrap? (
- amd64? (
- http://mirrors.cdn.adacore.com/art/564b3ebec8e196b040fbe66c ->
- ${BTSTRP_AMD64}.tar.gz
- )
- x86? (
- http://mirrors.cdn.adacore.com/art/564b3e9dc8e196b040fbe248 ->
- ${BTSTRP_X86}.tar.gz
- )
- )"
-
-LICENSE+=" GPL-2 GPL-3"
-SLOT="${TOOLCHAIN_GCC_PV}"
-KEYWORDS="amd64 x86"
-IUSE="+ada +bootstrap"
-RESTRICT="!test? ( test )"
-
-RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
-DEPEND="${RDEPEND}
- elibc_glibc? ( >=sys-libs/glibc-2.8 )
- >=sys-devel/binutils-2.20"
-
-PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
-
-S="${WORKDIR}"/${MYP}
-
-FSFGCC=gcc-${TOOLCHAIN_GCC_PV}
-
-pkg_setup() {
- toolchain_pkg_setup
-
- if use amd64; then
- BTSTRP=${BTSTRP_AMD64}
- else
- BTSTRP=${BTSTRP_X86}
- fi
- if use bootstrap; then
- GCC="${WORKDIR}"/${BTSTRP}/bin/gcc
- else
- GCC=${ADA:-$(tc-getCC)}
- fi
- CC=${GCC}
- local base=$(basename ${GCC})
- CXX="${base/gcc/g++}"
- GNATMAKE="${base/gcc/gnatmake}"
- GNATBIND="${base/gcc/gnatbind}"
- if [[ ${base} != ${GCC} ]] ; then
- local path=$(dirname ${GCC})
- GNATMAKE="${path}/${GNATMAKE}"
- GNATBIND="${path}/${GNATBIND}"
- CXX="${path}/${CXX}"
- fi
-}
-
-src_unpack() {
- if ! use bootstrap && [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
- eerror "You need a gcc compiler that provides the Ada Compiler:"
- eerror "1) use gcc-config to select the right compiler or"
- eerror "2) set the bootstrap use flag"
- die "ada compiler not available"
- fi
-
- toolchain_src_unpack
- if use bootstrap; then
- rm ${BTSTRP}/libexec/gcc/*/4.7.4/ld || die
- fi
-}
-
-src_prepare() {
- cd ..
-
- sed -i \
- -e "s:gnatmake:${GNATMAKE}:g" \
- ${P}-src/src/ada/Make-generated.in || die "sed failed"
- sed -i \
- -e "/xoscons/s:gnatmake:${GNATMAKE}:g" \
- gcc-interface-${REL}-gpl-${PV}-src/Makefile.in || die "sed failed"
-
- mv ${P}-src/src/ada ${MYP}/gcc/ || die
- mv gcc-interface-${REL}-gpl-${PV}-src ${MYP}/gcc/ada/gcc-interface || die
- mv ${FSFGCC}/gcc/doc/gcc.info ${MYP}/gcc/doc/ || die
- mv ${FSFGCC}/libjava ${MYP} || die
- rm -r ${FSFGCC} || die
- eapply "${FILESDIR}"/${P}-gentoo.patch
- cd -
-
- # Bug 638056
- eapply "${FILESDIR}/${P}-bootstrap.patch"
- # add Finalization_Size Attribute
- eapply "${FILESDIR}/${P}-finalization.patch"
- # add profile for gnat_util compatibility
- eapply "${FILESDIR}/${P}-profile.patch"
-
- EPATCH_EXCLUDE+=" 34_all_gcc48_config_i386.patch"
- EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
-
- toolchain_src_prepare
-
- use vanilla && return 0
- # Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs.
- [[ ${CHOST} == ${CTARGET} ]] && eapply "${FILESDIR}"/gcc-spec-env-r1.patch
-}
-
-src_configure() {
- downgrade_arch_flags "$(gcc-version)"
- toolchain_src_configure \
- CC=${GCC} \
- GNATBIND=${GNATBIND} \
- GNATMAKE=yes
-}
-
-pkg_postinst() {
- toolchain_pkg_postinst
- einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
- einfo "The compiler binary is gcc-${TOOLCHAIN_GCC_PV}"
- einfo "Even if the c/c++ compilers are using almost the same patched"
- einfo "source as the sys-devel/gcc package its use is not extensively"
- einfo "tested, and not supported for updating your system, except for ada"
- einfo "related packages"
-}
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild
deleted file mode 100644
index bff11256c1f6..000000000000
--- a/dev-lang/gnat-gpl/gnat-gpl-2017-r1.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PATCH_GCC_VER=6.3.0
-PATCH_VER="1.0"
-
-TOOLCHAIN_GCC_PV=6.3.0 # upstream is 6.3.1 but ada.eclass already assumes 6.3.0
-
-REL=6
-MYP=gcc-${REL}-gpl-${PV}-src
-BTSTRP_X86=gnat-gpl-2014-x86-linux-bin
-BTSTRP_AMD64=gnat-gpl-2014-x86_64-linux-bin
-
-# we provide own tarball below
-GCC_TARBALL_SRC_URI="
- http://mirrors.cdn.adacore.com/art/591adbb4c7a4473fcc4532a3
- -> ${P}-src.tar.gz
- http://mirrors.cdn.adacore.com/art/591adb65c7a4473fcbb153ac
- -> ${MYP}.tar.gz
- http://mirrors.cdn.adacore.com/art/591adbc5c7a4473fcbb153ae
- -> gcc-interface-${REL}-gpl-${PV}-src.tar.gz
- bootstrap? (
- amd64? (
- http://mirrors.cdn.adacore.com/art/564b3ebec8e196b040fbe66c ->
- ${BTSTRP_AMD64}.tar.gz
- )
- x86? (
- http://mirrors.cdn.adacore.com/art/564b3e9dc8e196b040fbe248 ->
- ${BTSTRP_X86}.tar.gz
- )
- )"
-
-inherit toolchain-funcs toolchain
-
-DESCRIPTION="GNAT Ada Compiler - GPL version"
-HOMEPAGE="http://libre.adacore.com/"
-
-LICENSE+=" GPL-2 GPL-3"
-SLOT="${TOOLCHAIN_GCC_PV}"
-KEYWORDS="amd64 x86"
-IUSE="+ada +bootstrap"
-RESTRICT="!test? ( test )"
-
-RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
-DEPEND="${RDEPEND}
- elibc_glibc? ( >=sys-libs/glibc-2.13 )
- >=sys-devel/binutils-2.20"
-
-S="${WORKDIR}"/${MYP}
-PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
-
-pkg_setup() {
- toolchain_pkg_setup
-
- if use amd64; then
- BTSTRP=${BTSTRP_AMD64}
- else
- BTSTRP=${BTSTRP_X86}
- fi
-
- if use bootstrap; then
- GCC="${WORKDIR}"/${BTSTRP}/bin/gcc
- else
- GCC=${ADA:-$(tc-getCC)}
- fi
-
- gnatbase=$(basename ${GCC})
- gnatpath=$(dirname ${GCC})
-
- GNATMAKE=${gnatbase/gcc/gnatmake}
- if [[ ${gnatpath} != "." ]] ; then
- GNATMAKE="${gnatpath}/${GNATMAKE}"
- fi
-}
-
-src_unpack() {
- if ! use bootstrap && [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
- eerror "You need a gcc compiler that provides the Ada Compiler:"
- eerror "1) use gcc-config to select the right compiler or"
- eerror "2) set the bootstrap use flag"
- die "ada compiler not available"
- fi
-
- toolchain_src_unpack
- if use bootstrap; then
- rm ${BTSTRP}/libexec/gcc/*/4.7.4/ld || die
- fi
-}
-
-src_prepare() {
- CC=${GCC}
- CXX="${gnatbase/gcc/g++}"
- GNATBIND="${gnatbase/gcc/gnatbind}"
- GNATLINK="${gnatbase/gcc/gnatlink}"
- GNATLS="${gnatbase/gcc/gnatls}"
- if [[ ${gnatpath} != "." ]] ; then
- CXX="${gnatpath}/${CXX}"
- GNATBIND="${gnatpath}/${GNATBIND}"
- GNATLINK="${gnatpath}/${GNATLINK}"
- GNATLS="${gnatpath}/${GNATLS}"
- fi
- mkdir bin || die
- ln -s $(which ${GCC}) bin/gcc || die
- ln -s $(which ${CXX}) bin/g++ || die
- ln -s $(which ${GNATMAKE}) bin/gnatmake || die
- ln -s $(which ${GNATBIND}) bin/gnatbind || die
- ln -s $(which ${GNATLINK}) bin/gnatlink || die
- ln -s $(which ${GNATLS}) bin/gnatls || die
-
- # upstream is 6.3.1 but ada.eclass already assumes 6.3.0
- echo ${TOOLCHAIN_GCC_PV} > gcc/BASE-VER
-
- cd ..
- mv ${P}-src/src/ada ${MYP}/gcc/ || die
- mv gcc-interface-${REL}-gpl-${PV}-src ${MYP}/gcc/ada/gcc-interface || die
- eapply "${FILESDIR}"/${P}-gentoo.patch
- cd -
- sed -i \
- -e 's:$(P) ::g' \
- gcc/ada/gcc-interface/Makefile.in \
- || die "sed failed"
- # fix missing ustat.h
- eapply "${FILESDIR}/${P}-ustat.patch"
-
- toolchain_src_prepare
- eapply "${FILESDIR}"/${P}-libgomp-Werror.patch
- eapply "${FILESDIR}"/${P}-libatomic-Werror.patch
- eapply "${FILESDIR}"/${P}-libitm-Werror.patch
-}
-
-src_configure() {
- export PATH=${PWD}/bin:${PATH}
- downgrade_arch_flags "$(gcc-version)"
- toolchain_src_configure
-}
-
-pkg_postinst() {
- toolchain_pkg_postinst
- einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
- einfo "The compiler binary is ${CTARGET}-gcc-${TOOLCHAIN_GCC_PV}"
- einfo "Even if the c/c++ compilers are using almost the same patched"
- einfo "source as the sys-devel/gcc package its use is not extensively"
- einfo "tested, and not supported for updating your system, except for ada"
- einfo "related packages"
-}
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild
deleted file mode 100644
index bb4782b8d4be..000000000000
--- a/dev-lang/gnat-gpl/gnat-gpl-2018-r3.ebuild
+++ /dev/null
@@ -1,144 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PATCH_GCC_VER=7.3.0
-PATCH_VER="1.8"
-
-TOOLCHAIN_GCC_PV=7.3.1
-
-REL=7
-MYP=gcc-${REL}-gpl-${PV}-src
-BTSTRP_X86=gnat-gpl-2014-x86-linux-bin
-BTSTRP_AMD64=gnat-gpl-2014-x86_64-linux-bin
-
-# we provide own tarball below
-GCC_TARBALL_SRC_URI="
- http://mirrors.cdn.adacore.com/art/5b0819dfc7a447df26c27aa5
- -> ${P}-src.tar.gz
- http://mirrors.cdn.adacore.com/art/5b0819dfc7a447df26c27aa7
- -> ${MYP}.tar.gz
- http://mirrors.cdn.adacore.com/art/5b0819dfc7a447df26c27aa6
- -> gcc-interface-${REL}-gpl-${PV}-src.tar.gz
- bootstrap? (
- amd64? (
- http://mirrors.cdn.adacore.com/art/564b3ebec8e196b040fbe66c ->
- ${BTSTRP_AMD64}.tar.gz
- )
- x86? (
- http://mirrors.cdn.adacore.com/art/564b3e9dc8e196b040fbe248 ->
- ${BTSTRP_X86}.tar.gz
- )
- )"
-
-inherit toolchain-funcs toolchain
-
-DESCRIPTION="GNAT Ada Compiler - GPL version"
-HOMEPAGE="http://libre.adacore.com/"
-
-LICENSE+=" GPL-2 GPL-3"
-KEYWORDS="amd64 x86"
-IUSE="+ada +bootstrap"
-RESTRICT="!test? ( test )"
-
-RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
-DEPEND="${RDEPEND}
- elibc_glibc? ( >=sys-libs/glibc-2.13 )
- >=sys-devel/binutils-2.20"
-
-S="${WORKDIR}"/${MYP}
-PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
-
-pkg_setup() {
- toolchain_pkg_setup
-
- if use amd64; then
- BTSTRP=${BTSTRP_AMD64}
- else
- BTSTRP=${BTSTRP_X86}
- fi
-
- if use bootstrap; then
- GCC="${WORKDIR}"/${BTSTRP}/bin/gcc
- else
- GCC=${ADA:-$(tc-getCC)}
- fi
-
- gnatbase=$(basename ${GCC})
- gnatpath=$(dirname ${GCC})
-
- GNATMAKE=${gnatbase/gcc/gnatmake}
- if [[ ${gnatpath} != "." ]] ; then
- GNATMAKE="${gnatpath}/${GNATMAKE}"
- fi
-}
-
-src_unpack() {
- if ! use bootstrap && [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
- eerror "You need a gcc compiler that provides the Ada Compiler:"
- eerror "1) use gcc-config to select the right compiler or"
- eerror "2) set the bootstrap use flag"
- die "ada compiler not available"
- fi
-
- toolchain_src_unpack
- if use bootstrap; then
- rm ${BTSTRP}/libexec/gcc/*/4.7.4/ld || die
- fi
-}
-
-src_prepare() {
- CC=${GCC}
- CXX="${gnatbase/gcc/g++}"
- GNATBIND="${gnatbase/gcc/gnatbind}"
- GNATLINK="${gnatbase/gcc/gnatlink}"
- GNATLS="${gnatbase/gcc/gnatls}"
- if [[ ${gnatpath} != "." ]] ; then
- CXX="${gnatpath}/${CXX}"
- GNATBIND="${gnatpath}/${GNATBIND}"
- GNATLINK="${gnatpath}/${GNATLINK}"
- GNATLS="${gnatpath}/${GNATLS}"
- fi
- mkdir bin || die
- ln -s $(which ${GCC}) bin/gcc || die
- ln -s $(which ${CXX}) bin/g++ || die
- ln -s $(which ${GNATMAKE}) bin/gnatmake || die
- ln -s $(which ${GNATBIND}) bin/gnatbind || die
- ln -s $(which ${GNATLINK}) bin/gnatlink || die
- ln -s $(which ${GNATLS}) bin/gnatls || die
-
- cd ..
- sed -i \
- -e 's:$(P) ::g' \
- gcc-interface-${REL}-gpl-${PV}-src/Makefile.in \
- || die "sed failed"
- mv ${P}-src/src/ada ${MYP}/gcc/ || die
- mv gcc-interface-${REL}-gpl-${PV}-src ${MYP}/gcc/ada/gcc-interface || die
- eapply "${FILESDIR}"/${P}-gentoo.patch
- cd -
-
- EPATCH_EXCLUDE+=" 91_all_bmi-i386-PR-target-81763.patch"
- EPATCH_EXCLUDE+=" 93_all_copy-constructible-fix.patch"
- EPATCH_EXCLUDE+=" 95_all_libsanitizer-avoidustat.h-glibc-2.28-part-1.patch"
- EPATCH_EXCLUDE+=" 98_all_msp430-partial-int.patch"
- toolchain_src_prepare
- eapply "${FILESDIR}"/${P}-libsanitizer-p1.patch
- eapply "${FILESDIR}"/${P}-libsanitizer-p2.patch
-}
-
-src_configure() {
- export PATH=${PWD}/bin:${PATH}
- downgrade_arch_flags "$(gcc-version)"
- toolchain_src_configure
-}
-
-pkg_postinst() {
- toolchain_pkg_postinst
- einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
- einfo "The compiler binary is ${CTARGET}-gcc-${TOOLCHAIN_GCC_PV}"
- einfo "Even if the c/c++ compilers are using almost the same patched"
- einfo "source as the sys-devel/gcc package its use is not extensively"
- einfo "tested, and not supported for updating your system, except for ada"
- einfo "related packages"
-}
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2019-r2.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2019-r2.ebuild
deleted file mode 100644
index 397ec960074f..000000000000
--- a/dev-lang/gnat-gpl/gnat-gpl-2019-r2.ebuild
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PATCH_GCC_VER=8.3.0
-PATCH_VER="4"
-
-TOOLCHAIN_GCC_PV=8.3.1
-
-REL=8
-MYP=gcc-${REL}-${PV}-20190517-18C94-src
-GNATDIR=gnat-${PV}-20190517-18C94-src
-INTFDIR=gcc-interface-${REL}-${PV}-20190510-18F59-src
-BTSTRP_X86=gnat-gpl-2014-x86-linux-bin
-BTSTRP_AMD64=gnat-gpl-2014-x86_64-linux-bin
-
-# we provide own tarball below
-GCC_TARBALL_SRC_URI="
- http://mirrors.cdn.adacore.com/art/5cdf865331e87aa2cdf16b49
- -> ${GNATDIR}.tar.gz
- http://mirrors.cdn.adacore.com/art/5cdf8a0731e87a8f1d425049
- -> ${MYP}.tar.gz
- http://mirrors.cdn.adacore.com/art/5cdf87cc31e87aa2cdf16b50
- -> ${INTFDIR}.tar.gz
- bootstrap? (
- amd64? (
- http://mirrors.cdn.adacore.com/art/564b3ebec8e196b040fbe66c ->
- ${BTSTRP_AMD64}.tar.gz
- )
- x86? (
- http://mirrors.cdn.adacore.com/art/564b3e9dc8e196b040fbe248 ->
- ${BTSTRP_X86}.tar.gz
- )
- )"
-
-inherit toolchain-funcs toolchain
-
-DESCRIPTION="GNAT Ada Compiler - GPL version"
-HOMEPAGE="http://libre.adacore.com/"
-
-LICENSE+=" GPL-2 GPL-3"
-KEYWORDS="amd64 x86"
-IUSE="+ada +bootstrap"
-RESTRICT="test"
-
-RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
-DEPEND="${RDEPEND}
- elibc_glibc? ( >=sys-libs/glibc-2.13 )
- >=sys-devel/binutils-2.20"
-
-S="${WORKDIR}"/${MYP}
-PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
-
-pkg_setup() {
- toolchain_pkg_setup
-
- if use amd64; then
- BTSTRP=${BTSTRP_AMD64}
- else
- BTSTRP=${BTSTRP_X86}
- fi
-
- if use bootstrap; then
- GCC="${WORKDIR}"/${BTSTRP}/bin/gcc
- else
- GCC=${ADA:-$(tc-getCC)}
- fi
-
- gnatbase=$(basename ${GCC})
- gnatpath=$(dirname ${GCC})
-
- GNATMAKE=${gnatbase/gcc/gnatmake}
- if [[ ${gnatpath} != "." ]] ; then
- GNATMAKE="${gnatpath}/${GNATMAKE}"
- fi
-}
-
-src_unpack() {
- if ! use bootstrap && [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
- eerror "You need a gcc compiler that provides the Ada Compiler:"
- eerror "1) use gcc-config to select the right compiler or"
- eerror "2) set the bootstrap use flag"
- die "ada compiler not available"
- fi
-
- toolchain_src_unpack
- if use bootstrap; then
- rm ${BTSTRP}/libexec/gcc/*/4.7.4/ld || die
- fi
-}
-
-src_prepare() {
- CC=${GCC}
- CXX="${gnatbase/gcc/g++}"
- GNATBIND="${gnatbase/gcc/gnatbind}"
- GNATLINK="${gnatbase/gcc/gnatlink}"
- GNATLS="${gnatbase/gcc/gnatls}"
- if [[ ${gnatpath} != "." ]] ; then
- CXX="${gnatpath}/${CXX}"
- GNATBIND="${gnatpath}/${GNATBIND}"
- GNATLINK="${gnatpath}/${GNATLINK}"
- GNATLS="${gnatpath}/${GNATLS}"
- fi
- mkdir bin || die
- ln -s $(which ${GCC}) bin/gcc || die
- ln -s $(which ${CXX}) bin/g++ || die
- ln -s $(which ${GNATMAKE}) bin/gnatmake || die
- ln -s $(which ${GNATBIND}) bin/gnatbind || die
- ln -s $(which ${GNATLINK}) bin/gnatlink || die
- ln -s $(which ${GNATLS}) bin/gnatls || die
-
- cd ..
- mv ${GNATDIR}/src/ada ${MYP}/gcc/ || die
- mv ${INTFDIR} ${MYP}/gcc/ada/gcc-interface || die
- eapply "${FILESDIR}"/${P}-gentoo.patch
- rm patch/27*.patch || die
- rm patch/28*.patch || die
- cd -
- sed -i \
- -e 's:$(P) ::g' \
- gcc/ada/gcc-interface/Makefile.in \
- || die "sed failed"
- toolchain_src_prepare
-}
-
-src_configure() {
- export PATH=${PWD}/bin:${PATH}
- downgrade_arch_flags "$(gcc-version)"
- toolchain_src_configure
-}
-
-pkg_postinst() {
- toolchain_pkg_postinst
- einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
- einfo "The compiler binary is ${CTARGET}-gcc-${TOOLCHAIN_GCC_PV}"
- einfo "Even if the c/c++ compilers are using almost the same patched"
- einfo "source as the sys-devel/gcc package its use is not extensively"
- einfo "tested, and not supported for updating your system, except for ada"
- einfo "related packages"
-}
diff --git a/dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild
new file mode 100644
index 000000000000..547c25989494
--- /dev/null
+++ b/dev-lang/gnat-gpl/gnat-gpl-2021-r5.ebuild
@@ -0,0 +1,161 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PATCH_GCC_VER=10.3.0
+PATCH_VER="4"
+
+TOOLCHAIN_GCC_PV=10.3.1
+PYTHON_COMPAT=( python3_{10..12} )
+
+REL=10
+MYP=gcc-${REL}-${PV}-20210519-19A74-src
+GNATDIR=gnat-${PV}-20210519-19A70-src
+INTFDIR=gcc-interface-${REL}-${PV}-20210519-19A75-src
+
+BTSTRP_X86=gnat-gpl-2014-x86-linux-bin
+BTSTRP_AMD64=gnat-gpl-2014-x86_64-linux-bin
+BASE_URI=https://community.download.adacore.com/v1
+# we provide own tarball below
+GCC_TARBALL_SRC_URI="
+ ${BASE_URI}/005d2b2eff627177986d2517eb31e1959bec6f3a?filename=${GNATDIR}.tar.gz
+ -> ${GNATDIR}.tar.gz
+ ${BASE_URI}/44cd393be0b468cc253bf2cf9cf7804c993e7b5b?filename=${MYP}.tar.gz
+ -> ${MYP}.tar.gz
+ ${BASE_URI}/8ace7d06e469d36d726cc8badb0ed78411e727f3?filename=${INTFDIR}.tar.gz
+ -> ${INTFDIR}.tar.gz
+ bootstrap? (
+ amd64? (
+ ${BASE_URI}/6eb6eef6bb897e4c743a519bfebe0b1d6fc409c6?filename=${BTSTRP_AMD64}.tar.gz&rand=1193
+ -> ${BTSTRP_AMD64}.tar.gz
+ )
+ x86? (
+ ${BASE_URI}/c5e9e6fdff5cb77ed90cf8c62536653e27c0bed6?filename=${BTSTRP_X86}.tar.gz&rand=436
+ -> ${BTSTRP_X86}.tar.gz
+ )
+ )"
+
+inherit toolchain-funcs toolchain
+
+DESCRIPTION="GNAT Ada Compiler - GPL version"
+HOMEPAGE="http://libre.adacore.com/"
+
+LICENSE+=" GPL-2 GPL-3"
+KEYWORDS="amd64 x86"
+IUSE="+ada +bootstrap"
+RESTRICT="test"
+
+RDEPEND="!=sys-devel/gcc-${TOOLCHAIN_GCC_PV}*"
+BDEPEND=sys-devel/binutils
+
+S="${WORKDIR}"/${MYP}
+
+pkg_pretend() {
+ toolchain_pkg_pretend
+ if tc-is-clang; then
+ die "${P} does not build with clang. It is bootstrapped."
+ fi
+}
+
+src_prepare() {
+ if use amd64; then
+ BTSTRP=${BTSTRP_AMD64}
+ else
+ BTSTRP=${BTSTRP_X86}
+ fi
+
+ if use bootstrap; then
+ GCC="${WORKDIR}"/${BTSTRP}/bin/gcc
+ else
+ GCC=${ADA:-$(tc-getCC)}
+ fi
+
+ gnatbase=$(basename ${GCC})
+ gnatpath=$(dirname ${GCC})
+
+ GNATMAKE=${gnatbase/gcc/gnatmake}
+ if [[ ${gnatpath} != "." ]] ; then
+ GNATMAKE="${gnatpath}/${GNATMAKE}"
+ fi
+
+ if ! use bootstrap && [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
+ eerror "You need a gcc compiler that provides the Ada Compiler:"
+ eerror "1) use gcc-config to select the right compiler or"
+ eerror "2) set the bootstrap use flag or"
+ eerror "3) set ADA to a working gcc ada compiler"
+ die "ada compiler not available"
+ fi
+
+ local bundledchost=""
+ use amd64 && local bundledchost="x86_64"
+ use x86 && local bundledchost="i686"
+ if use bootstrap; then
+ rm "${WORKDIR}"/${BTSTRP}/libexec/gcc/${bundledchost}-pc-linux-gnu/4.7.4/ld \
+ || die
+ ln -s /usr/bin/$CHOST-ld \
+ "${WORKDIR}"/${BTSTRP}/libexec/gcc/${bundledchost}-pc-linux-gnu/4.7.4/ld \
+ || die
+ rm "${WORKDIR}"/${BTSTRP}/libexec/gcc/${bundledchost}-pc-linux-gnu/4.7.4/as \
+ || die
+ ln -s /usr/bin/$CHOST-as \
+ "${WORKDIR}"/${BTSTRP}/libexec/gcc/${bundledchost}-pc-linux-gnu/4.7.4/as \
+ || die
+ fi
+
+ CC=${GCC}
+ CXX="${gnatbase/gcc/g++}"
+ GNATBIND="${gnatbase/gcc/gnatbind}"
+ GNATLINK="${gnatbase/gcc/gnatlink}"
+ GNATLS="${gnatbase/gcc/gnatls}"
+ if [[ ${gnatpath} != "." ]] ; then
+ CXX="${gnatpath}/${CXX}"
+ GNATBIND="${gnatpath}/${GNATBIND}"
+ GNATLINK="${gnatpath}/${GNATLINK}"
+ GNATLS="${gnatpath}/${GNATLS}"
+ fi
+ mkdir bin || die
+ ln -s $(type -P ${GCC}) bin/gcc || die
+ ln -s $(type -P ${CXX}) bin/g++ || die
+ ln -s $(type -P ${GNATMAKE}) bin/gnatmake || die
+ ln -s $(type -P ${GNATBIND}) bin/gnatbind || die
+ ln -s $(type -P ${GNATLINK}) bin/gnatlink || die
+ ln -s $(type -P ${GNATLS}) bin/gnatls || die
+ ln -s $(type -P ${GCC}) bin/${bundledchost}-pc-linux-gnu-gcc || die
+ ln -s $(type -P ${CXX}) bin/${bundledchost}-pc-linux-gnu-g++ || die
+ ln -s $(type -P ${GNATMAKE}) bin/${bundledchost}-pc-linux-gnu-gnatmake || die
+ ln -s $(type -P ${GNATBIND}) bin/${bundledchost}-pc-linux-gnu-gnatbind || die
+ ln -s $(type -P ${GNATLINK}) bin/${bundledchost}-pc-linux-gnu-gnatlink || die
+ ln -s $(type -P ${GNATLS}) bin/${bundledchost}-pc-linux-gnu-gnatls || die
+
+ cd ..
+ mv ${GNATDIR}/src/ada ${MYP}/gcc/ || die
+ mv ${INTFDIR} ${MYP}/gcc/ada/gcc-interface || die
+ eapply "${FILESDIR}"/${P}-gentoo.patch
+ cd -
+ sed -i \
+ -e 's:-fcf-protection":":' \
+ libiberty/configure \
+ lto-plugin/configure || die
+ sed -i \
+ -e 's:$(P) ::g' \
+ gcc/ada/gcc-interface/Makefile.in \
+ || die "sed failed"
+ toolchain_src_prepare
+}
+
+src_configure() {
+ export PATH=${PWD}/bin:${PATH}
+ downgrade_arch_flags "$(gcc-version)"
+ toolchain_src_configure
+}
+
+pkg_postinst() {
+ toolchain_pkg_postinst
+ einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
+ einfo "The compiler binary is ${CTARGET}-gcc-${TOOLCHAIN_GCC_PV}"
+ einfo "Even if the c/c++ compilers are using almost the same patched"
+ einfo "source as the sys-devel/gcc package its use is not extensively"
+ einfo "tested, and not supported for updating your system, except for ada"
+ einfo "related packages"
+}
diff --git a/dev-lang/gnat-gpl/metadata.xml b/dev-lang/gnat-gpl/metadata.xml
index d3aadec0e515..45bf56ac30ee 100644
--- a/dev-lang/gnat-gpl/metadata.xml
+++ b/dev-lang/gnat-gpl/metadata.xml
@@ -1,35 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ada@gentoo.org</email>
</maintainer>
<use>
<flag name="ada">Build the ADA language (GNAT) frontend</flag>
- <flag name="awt">Useful only when building GCJ, this enables Abstract
- Window Toolkit (AWT) peer support on top of GTK+</flag>
<flag name="bootstrap">Used to bootstrap gnat-gpl</flag>
- <flag name="cilk">Support the Cilk Plus language (C/C++ based languages for parallel programming)</flag>
+ <flag name="cet" restrict="&gt;=dev-lang/gnat-gpl-2021">Enable support for Intel Control Flow Enforcement Technology (CET)</flag>
+ <flag name="d">Enable support for the D programming language</flag>
+ <flag name="default-stack-clash-protection">Build packages with stack clash protection on by default</flag>
+ <flag name="default-znow">Request full relocation on start from ld.so by default</flag>
<flag name="fixed-point">Enable fixed-point arithmetic support for MIPS
targets in gcc (Warning: significantly increases compile time!)
</flag>
- <flag name="gcj">Build the GCJ Java language frontend.</flag>
<flag name="go">Build the GCC Go language frontend.</flag>
<flag name="graphite">Add support for the framework for loop
optimizations based on a polyhedral intermediate representation</flag>
- <flag name="mpx">Enable support for Intel Memory Protection Extensions (MPX)</flag>
<flag name="libssp">Build SSP support into a dedicated library rather
than use the code in the C library (DO NOT ENABLE THIS IF YOU DON'T
KNOW WHAT IT DOES)</flag>
- <flag name="nopie">Disable PIE support (NOT FOR GENERAL USE)</flag>
- <flag name="nossp">Disable SSP support (NOT FOR GENERAL USE)</flag>
- <flag name="nptl">Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually)</flag>
+ <flag name="modula2">Build the GCC Modula-2 language frontend.</flag>
<flag name="objc">Build support for the Objective C code language
</flag>
<flag name="objc++">Build support for the Objective C++ language</flag>
<flag name="objc-gc">Build support for the Objective C code language
Garbage Collector</flag>
<flag name="pgo">Build GCC using Profile Guided Optimization (PGO)</flag>
+ <flag name="rust">Build support for the Rust language, installs gccrs.</flag>
<flag name="sanitize">Build support for various sanitizer functions (ASAN/TSAN/etc...)</flag>
<flag name="systemtap">enable systemtap static probe points</flag>
<flag name="ssp">Build packages with stack smashing protector on by default</flag>