diff options
Diffstat (limited to 'dev-lang/gnat-gpl')
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=">=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> |