Gentoo Archives: gentoo-commits

From: Fabian Groffen <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/prefix:master commit in: sys-devel/gcc/files/, sys-devel/gcc/
Date: Mon, 06 Jun 2022 16:51:18
Message-Id: 1654534151.e5f9d97f02ef1b61fcee819e86130b081ef2c378.grobian@gentoo
1 commit: e5f9d97f02ef1b61fcee819e86130b081ef2c378
2 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jun 6 16:49:11 2022 +0000
4 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
5 CommitDate: Mon Jun 6 16:49:11 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=e5f9d97f
7
8 sys-devel/gcc: cleanup and add 12.1.0 for Apple M1
9
10 Cleanup old versions, no longer supported by toolchain.eclass. For
11 bootstraps where no C++ compiler is available, we'll have to manually
12 bootstrap a compiler in stage1.
13
14 gcc-12.1.0 is "hybrid", it uses normal sources by default (tested on
15 x64-solaris), and uses M1-capable sources (Ian) on Darwin targets
16 (tested on x64-macos).
17
18 Package-Manager: Portage-3.0.30, Repoman-3.0.3
19 Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
20
21 sys-devel/gcc/Manifest | 35 +----
22 .../gcc/files/gcc-12-no-libs-for-startfile.patch | 15 +++
23 .../gcc/files/gcc-12-prefix-search-dirs.patch | 37 ++++++
24 sys-devel/gcc/gcc-11_pre20200206.ebuild | 108 ----------------
25 ...gcc-11_pre20210226.ebuild => gcc-12.1.0.ebuild} | 66 +++++-----
26 sys-devel/gcc/gcc-4.1.2.ebuild | 68 ----------
27 sys-devel/gcc/gcc-4.2.4-r2.ebuild | 137 --------------------
28 sys-devel/gcc/gcc-4.7.3-r1.ebuild | 143 ---------------------
29 sys-devel/gcc/gcc-4.8.5-r1.ebuild | 106 ---------------
30 sys-devel/gcc/gcc-4.9.4.ebuild | 103 ---------------
31 sys-devel/gcc/gcc-5.4.0-r4.ebuild | 105 ---------------
32 sys-devel/gcc/gcc-7.4.0.ebuild | 92 -------------
33 sys-devel/gcc/gcc-8.3.0.ebuild | 4 +-
34 sys-devel/gcc/gcc-9.2.0-r3.ebuild | 4 +-
35 sys-devel/gcc/metadata.xml | 72 +++++------
36 15 files changed, 128 insertions(+), 967 deletions(-)
37
38 diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
39 index c2eb112112..bc6c8f741c 100644
40 --- a/sys-devel/gcc/Manifest
41 +++ b/sys-devel/gcc/Manifest
42 @@ -1,42 +1,15 @@
43 -DIST ecj-4.5.jar 1470676 BLAKE2B 793c10ba09fd8040c0e1181204141aea16780c9c9088e07126e00da2b510af2ad6f58d876357d7e98cbb02d783a3be434469d5de1df134ccb8cc508e45028d80 SHA512 d4e1bf7538ace56e3d69fa91da5bbd16c272923b4de0a9d8dee23ea2b75f9f38c603de72fc4061df49285c450b63f3df211cee5270e9fffc5447445d1a9c9e4e
44 DIST gcc-10.2.0-patches-6.tar.bz2 24103 BLAKE2B f719012f86136ad9c4ea1397548caca6e69687534599a88cc25fe0e4f83dd7fd34c07375fa6e612e2b430e078c1a59913160cce07312e94fa1ce575a33e5457b SHA512 61d97dba29024c7a22806689ebf33f5cb9ce099230bcc344f2865b976c3fdfd8ebec5962eaffd0156de75eca58499ba785867bd4a4ac92c6f799ab1bee8844a1
45 DIST gcc-10.2.0.tar.xz 75004144 BLAKE2B 1d79397330354e61439283cac96a109bf78ffc726265442e6d3ec131f107589ab7349d6612836edd8c8512f7bcc1d901a65a0d5d925d28a5bf3ef5cc3f9787ee SHA512 42ae38928bd2e8183af445da34220964eb690b675b1892bbeb7cd5bb62be499011ec9a93397dba5e2fb681afadfc6f2767d03b9035b44ba9be807187ae6dc65e
46 DIST gcc-10.3.0-patches-3.tar.bz2 18935 BLAKE2B 13eaf1e055b5b63069aed1575ed93f6bc822b5e3f2181ddfc88f4e7ff801f58997cd131b2efd79b90469b1f861db994feb2adcaecacf165442078f76e233fd9a SHA512 c3d6a6f32863cc0ff7c877314ff0c00a892e473f64d16b82d46b4a77aa97c3e7a575492d27f0d423acb2621c86c9a49bca0e26e45bda9e697495444fcac85084
47 DIST gcc-10.3.0.tar.xz 76692288 BLAKE2B ac7898f5eb8a7c5f151a526d1bb38913a68b50a65e4d010ac09fa20b6c801c671c790d780f23ccb8e4ecdfc686f4aa588082ccc9eb5c80c7b0e30788f824c1eb SHA512 2b2dd7453d48a398c29eaebd1422b70341001b8c90a62aee51e83344e7fdd8a8e45f82a4a9165bd7edc76dada912c932f4b6632c5636760fec4c5d7e402b3f86
48 -DIST gcc-11.0.0-patches-6.tar.bz2 12744 BLAKE2B 05e8d8b87cd1069bc6c03a6cbd61e5414148b7c6467e5b2ebf03af1493075280d8f1a5a123148f786724e3f813ef7fbb5f2728598ab4ab7879b4e649f592156b SHA512 9e873a40eca07e471a9832ed062575063144554ca306b60a9b5f7da61fa1f148a13fd5ea933c852d105931e452de1c6ab3cd7baf4f80da17b9d81eeb36c5b3fd
49 DIST gcc-11.2.0-patches-1.tar.bz2 11537 BLAKE2B 9dd791ada244c9b70b8b99f9f305a688c248134715ed1b26d406e53b114983faae6873cdc521497164388d24d5f61c199e98df146bc02f5578e877295bcf5c82 SHA512 6539efc60c656d0798a5896dc1b944ed69914b815102c7a1c10bdba4ef935abd326b01309f38316e121f1ed90ceb2abcaf65df6af116892daad829ac2623cefc
50 DIST gcc-11.2.0.tar.xz 80888824 BLAKE2B 69b61234ac436edfea2933df68c434a2ce7aa4454ef4da573e82587e1a42dc420189e949cfdadaf4cb37fc0de9674822210a95b77ff03aca0dbedfe67df19cc6 SHA512 d53a0a966230895c54f01aea38696f818817b505f1e2bfa65e508753fcd01b2aedb4a61434f41f3a2ddbbd9f41384b96153c684ded3f0fa97c82758d9de5c7cf
51 -DIST gcc-4.1.2-patches-1.5.tar.bz2 53576 BLAKE2B 16dcbf8bac85c3e95a8526ffd504f298ac09fbd79d8ee9f633782ffcd177eb0de256dc8ff36d45dc40dd8582b712e2ea0cd3b2063e3205d51cc022ad7befa7cc SHA512 3c7c15f740ec80aaa6f9c1ad77daeb2a2527f1719fbcc5d96d956e1fe1f24da961b1b030cf2bb631f1a0cc970f6462823e9a78441c9fd6b57f3645b04cd6a362
52 -DIST gcc-4.1.2-uclibc-patches-1.0.tar.bz2 20980 BLAKE2B cfc7dd4c7a0b1ed80c491d4ad56b05b05ff308fdbed2faa1b9f15b10c0f7834ee4ffcb0df1619f959f7a1a5f315305b550665c232404a8a3306e3e615539a0c8 SHA512 57789f4236a3085136afa83be3cef677bd813afd258d67bfdbecd2058f497cd459366d5515044c0208ab753946dc951dac6a3889752ca6dae836d837c22ce33b
53 -DIST gcc-4.1.2.tar.bz2 39707720 BLAKE2B 966b6a64c118456c7fb66eb2ad0dd84b1d53ad88dcbd146f446ef097a6975f5d6a7f1bcbbc4bfcd4e48b00eeb8054728e412db3d9818cff1f195e37859a4e510 SHA512 b97d3b72a3b0355611d5090b2c715b7a774f0e466a89326a0226c2809d12dfafb2d7c5a7af54bd5e00c135bbb6596f535e1a484740f7f1f691e8a57e6f0425cc
54 -DIST gcc-4.2.4-patches-1.3.tar.bz2 24723 BLAKE2B 55b9d4f1ca80327f14fff35d6184e915502ea248bb2aae823e749c88a20c680b20ce3dada732c699b1ece9dbeb5a6bc7f5b610a074c924736bd9e5983de06c7d SHA512 fc1ad5debf0ba6a755758ff4e2e1b41f3ac753b4a9c600c1525ac99a8f204c511257ee57fa287ff8296fe563859c931f8d5ca252f85656dcf7436571c1c87a06
55 -DIST gcc-4.2.4-uclibc-patches-1.0.tar.bz2 19167 BLAKE2B bf2bcc9ece9096cf7fda9999c56073774072fa03e5dbf389a617888b2269bc79a7cfb68a6e26da66dedce9f954a1766ed21bbdd907b747e9fb5ea3a0fbbb6474 SHA512 5545cfe6bfa7ab9a69a474cc051cc8744380077dcc193afefeb455e959e408a5e4dfd1adde5357886c7f598835400273ef80ad5c14976c0552b44f5cd48704ed
56 -DIST gcc-4.2.4.tar.bz2 44025458 BLAKE2B 1d9645298dbbb1aba7b2957acf5b9839bd702a85120aa82d4cada0e4ea68a1d633422d8fcedc405504768e2f932e4b9d1a70a86da0b8efa5fc923b786ebc259f SHA512 c6e3e4fce1d27d0c56ab24f4809367d9329b620b7c124e88de190f2ea2ae57b5e06d0bda85c5a74237a4f94ddba53dc91faea0611fff7b19ad720edc312cb0d9
57 -DIST gcc-4.4.3-specs-0.2.0.tar.bz2 2004 BLAKE2B 96f5ba2028bc6e0ef71e009857c37118a54d13d30de24d697c85e5772f9f2b7853615648cf2e4ee81d8385f6518c64588c0b56675c00f95ef39fca2a808f075e SHA512 779ecb0a064d2138b54569c8ae501975b8a6b72e5a3acbf8597619a8db77ee42ef9b0e62608d5192a15e4393e7dfc009bb50b994782236faa744b2c46b5fe517
58 -DIST gcc-4.7.3-patches-1.4.tar.bz2 43148 BLAKE2B 9b7472c799a8fddd59f0e18d638aa97def9049e3a0acc84712337b231a0dcad947ac41302e29b3e4e9d1197e41629a5c198ce102cf508ab0a4efb23276a788e7 SHA512 6dfc5b405e2eca70642f42974d7d3183ff8f0eed3e9f29fbf197e8959bc1795a1ba54df99e4f73df1017332f46bdf3d1c10d4b0f89fea71d604dd5ebda488c22
59 -DIST gcc-4.7.3-piepatches-v0.5.5.tar.bz2 15378 BLAKE2B 94c026b5878c59d9c50ae61285b0b1d6e9fd02b9aebe1f92996e6c4475626a1bd7beb37582e99eb624fd9a8a8354ae293c86feb40a9169f729fd38f332fc8a06 SHA512 d0189d2e4049d471dedaddcba319fe2c2b29855f7b33e84b26051504ead2936c852ef7870a1d19d755bb343c9b121b0ce5295665ab4ff1e448436bd448c08e1f
60 -DIST gcc-4.7.3-uclibc-patches-1.0.tar.bz2 3013 BLAKE2B 73389fcedfe6209d67551bc768922ff7090d817020ac2d4e62b40fc8a167569e2dd2f17ab76870b0e3f117486afd07ce724fd043c680d67de5dad715ca76d536 SHA512 6119159300e76be87732f2a44b1a9388228235d7832370dbae531c2c96694ea42ed4c75acf7abca98ec0035fbc50a8bf84225574505358c2739e64b0f3fd6a95
61 -DIST gcc-4.7.3.tar.bz2 82904224 BLAKE2B 084a21a317de5ccddf480e429f95d13f6c0c3a0102c38692aff0283b280aaeaf874e602a12341418a100566159bb54a14a3deb0a9c8604388ea08aac9e484f93 SHA512 5671a2dd3b6ac0d23f305cb11a796aebd823c1462b873136b412e660966143f4e07439bd8926c1443b78442beb6ae370ef91d819ec615920294875b722b7b0bd
62 -DIST gcc-4.8.5-patches-1.3.tar.bz2 26025 BLAKE2B 3744dfcac069b5f8321fc9cfb019d44c848d70d17e5908d3d97f0c314b98a7fd884235fec2b21c93027f6152577439f6d424f96836b113dcd589604af969c756 SHA512 8d190f81ca0d25281250dbf0a670fcf12334b0811a5bf664e6450942a2996d02b979c6e8f8760b287edad06df3d1f8e2fe5cb0c3dcf9677c3420457d841d9506
63 -DIST gcc-4.8.5-piepatches-v0.6.2.tar.bz2 14265 BLAKE2B b3bb37957ba8ee446967a3a60fee61c26a49f237241bbaf8bb3c3ec63656dd0492f518b129c8ef43cc06091742bc9c0b1042bb612c1110732b1e9608f28753ad SHA512 cd6af4047d4719dae9dbe86ce5342c7d8ddec38aad032486713b08e1b0cb711f5ca017e08d583137d51b8d4ef673366ba310e71bca7b49b82e9314781d6e9d99
64 -DIST gcc-4.8.5-uclibc-patches-1.0.tar.bz2 2976 BLAKE2B 1a804fd0b2fd5756e824f3eb511cf62d6af0fa8059ebcffadf6deb85e242ec8728b7883f2e054b465b87e4b61b6a2b55061a68eb8329c3a79a659d4c15808d21 SHA512 5469128eab06525915c75241797ad9ec4b63072ebfd5e110319bf810633cf3fbed39bbda4f6a0c74e537b248e7642780ecbe2086ad10be6e66b7dd289fa6534f
65 -DIST gcc-4.8.5.tar.bz2 86165587 BLAKE2B 760931013f96083078e74b8376eede6c23954e1f41cb44dbbdd8220fdede48807d89b9ca44fc4ae309f7cef441831b533512f1145cd563c5c797e96cf6cf1bfa SHA512 47fdfeca0c0a624cdec9c4ae47137d056c918d5c386d4b96985bb3c8172aba377cb66cbcc30e80832fd244a7d98f562c20198056915c70cfef0977545073a8ea
66 -DIST gcc-4.9.4-patches-1.3.tar.bz2 26060 BLAKE2B a61cb29111e8a9e35d810c0c557e901fc0d78e3b62027f5ea622d29becff9492e350c932824b23e5a38604bc3fa6c39fed9db902df4f830a3a362f1a1c2d9f58 SHA512 0214da6712a1b583f028be60e562f742d3d484d930976e2fce7be090113517c0e07faa20f750411b5125902f38a9944fe0c1dc8605d161c5bb11843acdebab75
67 -DIST gcc-4.9.4-piepatches-v0.6.4.tar.bz2 14414 BLAKE2B 2eccd4f2a164fbb32d13c7fe91627a2424c0a5570fe0cac97c2bb1c95294ba3d770832da7c445f75c91791466c5139a1e13753a3a40d87ff5e44e42749adee27 SHA512 243fa272ea0e49f700a76508bab3e03bbb353bcb930581b2f87f9a47df5cd3880e29f20b71612b21190adc463849e1e6ac2a38a49c0002b562d93d436f538285
68 -DIST gcc-4.9.4-uclibc-patches-1.0.tar.bz2 2618 BLAKE2B bff85a4088fb94fdb7a8b0bd552be98ace3e6d145889b6f8b4a1f2db2dad14342d155890ab159b42d5b55d88dfb7c392eb7f92590084e1958f6284c561da30f1 SHA512 5a1f44caa9261f4947101379628143869b31dec67fa28605e8e1f3894d4b7120c3f68ba6deb59da7a74fa906e27ab32cd3767761837dc3dfebc37865d349d6db
69 -DIST gcc-4.9.4.tar.bz2 90097606 BLAKE2B 373ff939ea72d6c4a7f3ab899b852b4c919481af2cfe3291281d9354c58a270d2eba73a0f301d90840dfabf423c82b368e113df7a2cb6cc28b2a703b0b6eb585 SHA512 93abb78e16277454f41a8e9810f41f66c0fdffdc539a762ff6b67d3037f78db971378683fd2ebf707d1d51c059fad2161fe42d110c330027f40214b7db0f3efe
70 -DIST gcc-5.4.0-patches-1.8.tar.bz2 32886 BLAKE2B 85879ba552ff21e198de568b2a1f2544d6cf542174af3ca571e41a504373bbc8912a87177a413883f194d909237eeeaf65366e6b93c2b917f803b3edd10bbff5 SHA512 10c1102a37d9d485665cca606318a1da6eec2188998d340b91a371c9defa6fae285619f9cadad2546de0b7f1068e9eaf653714462d3331db3197308799927a6b
71 -DIST gcc-5.4.0-piepatches-v0.6.5.tar.bz2 14551 BLAKE2B 6f3de9be0990a7580785821d8c85114a1907571c06bdf3a15ad91258f7c9e8bb6a4d2ddb8615f33bedf0ad036d215507e004fc095f788e40c824ae0ab3ffbb05 SHA512 4890f0713d261982ab81a20f93c5f65193aa1dfa171e3f9e5867f0b80ec7c1e76c5a997b1a4e6f47f8ce36af54ac91125c5bff8bf6d971b7d77c65a57a40a3c0
72 -DIST gcc-5.4.0-uclibc-patches-1.0.tar.bz2 3731 BLAKE2B fa436d1c1d9c150714092132f816740f8218dfeb4f9a6a8c830ea54d211a020f209e6fd1fcc313b2560b82c7855120053d346af72b7c12c88a7a948379dd2356 SHA512 009f34197e79c5e8c6497a0db01ac45cc657e92e56a663b4f3281661d108b2a129cd977fab5f0064f225d6812ae91e82bab22a2b10ae02c486881eeed85ec7a3
73 -DIST gcc-5.4.0.tar.bz2 95661481 BLAKE2B bf882acfa28cc1064cddd21e25332fff6bc65505d6af9acb2e455916edbc4f6b1de9b3524867f51d7819fc4f213ce21332fbf67cf71cd6c7b96fb8907e51d570 SHA512 2941cc950c8f2409a314df497631f9b0266211aa74746c1839c46e04f1c7c299afe2528d1ef16ea39def408a644ba48f97519ec7a7dd37d260c3e9423514265b
74 -DIST gcc-7.4.0-patches-1.1.tar.bz2 8778 BLAKE2B 52b02b3c619b99912ee254599788abebe3963cf85e49b56166069318e340a8e271d767e82798e6062fc2a042a86a88da66ab95f2d9e42933ff17688d616a903f SHA512 02ec2eb2460e24cf46f7a04ca3b80ca120719389a54a740070e991d9c96b6fd55d1fa04eb4249fd3043edc9c0f6519b5babcce76036cd0146183512aaae2d573
75 -DIST gcc-7.4.0.tar.xz 62601888 BLAKE2B df91ec680d5389736d3a37a2d85cf2e12fbe87b642fdf4b332e67a043e00944aca00243cc6709f86abd92115cb5a78502146636395571d1ea4899531e15d5d0e SHA512 8864d8e4b97c2e1a4f17422f6e68120172ebefeab97b1757734f7185ca68a6b9a89011c6833c03fa454c17b0ac35b15e1d284881e6971035948ac6100f3aa45e
76 +DIST gcc-12.1-darwin-r0.tar.gz 131006433 BLAKE2B fe94275821772586b90d003e5179a72c5662216d216db6b7fd066df8873744d5edff25521f3f30cb08d45f59545fa03e44364bdf831998a0285c0ba5df0c1547 SHA512 8bfae411e8f6f853ad50cda4f7bd672217883b305893c8dda9f630d712d8ef0857e89c8f4ce6c446340041d8da2ec98e6dfcc99861e844eb99c6f837e4f47dbb
77 +DIST gcc-12.1.0-musl-patches-4.tar.bz2 4818 BLAKE2B 56ba1c14cb911bad6b0afd4d03c28d95762e781285db98a5b27db18a5dd47f23ef4987ae557bd3e95004f15159495ffd992b9775110c1d8f284e25b81abd05a5 SHA512 517e2a4b16e8d7b3bb7ce4d06d4006c0488161cbd878b8bffc8c55e244bccd2cc865f8128912b7d086ef12c73d173bc61cb80682f4d06ae01466769f0f8dd41d
78 +DIST gcc-12.1.0-patches-7.tar.bz2 12049 BLAKE2B 85a67187a78194aaaab5a7cdbe953309ece37036f20bcc793d3cddacad5902d38f0bd1d3417de867624e282b4389d7476ef174909aafc64e1e5c8e073980bf71 SHA512 14bfbe616cd25456b05ce68daa4458d5f3ede6e50232b49ddb01c30494f8862c230d4a16402f298857e143102b9ff1a208db5c58fff0c0acc65cf3ff68c98cdc
79 +DIST gcc-12.1.0.tar.xz 82701928 BLAKE2B dca5df8fea680dbeda721742cce5c97de7eb4be490a32a158e06b88e2b9dd092150b7cfe490bb69e48e2f75d8bba231c8a54cd46b48ddcdc01bf9553ab57019d SHA512 2121d295292814a6761edf1fba08c5f633ebe16f52b80e7b73a91050e71e1d2ed98bf17eebad263e191879561c02b48906c53faa4c4670c486a26fc75df23900
80 DIST gcc-8.3.0-patches-1.0.tar.bz2 12278 BLAKE2B 793465c5de0af850c7f3017b3011e68f3bd1664e6ce3500a3dc3003d37c03fe81857698957770a135eadd395a7767fa804d354ecdcdeb1d83623280ca569d4ec SHA512 0efadd2481713992807fed2683666f1094b3757674754601c079569f3ef70cd7aed3cefc9f815f4e59a21d37e4e940c122df714e16f3878a5f966450c4273669
81 DIST gcc-8.3.0.tar.xz 63694700 BLAKE2B 71df2ff5bd6874d57519c2e9af6b22152c8c4d7fab906a5f427b41bc4e8e742127592a8684120d9d3c9ce6241439531850be08ec0a4f29dbfdee95435655fdca SHA512 1811337ae3add9680cec64968a2509d085b6dc5b6783fc1e8c295e3e47416196fd1a3ad8dfe7e10be2276b4f62c357659ce2902f239f60a8648548231b4b5802
82 DIST gcc-9.2.0-patches-4.tar.bz2 21655 BLAKE2B 2acf6d83ec934a65e77d2079a024b42622e1234f0516f12839f7d03c2f3e1bb275037b020e35ba847d6809d5577ba966619c78345b75355df0a754d02ccf9819 SHA512 114e01a7b08ecb1feab24ef3cfc72c8953748f1526722b80c18602025eef132e2b4c05db59c7a23eb2e7f42ed48eb02d92bcd73b1ca932374d6bedaf89cc66d0
83 DIST gcc-9.2.0.tar.xz 70607648 BLAKE2B 41a5e148f9a6857d6599679964c203533f76f330ad527fbe7c5e746d78f6f6f6d6d0f330a67cb1e794e155be8d1cd6e986bcc8a116d620dca410b78f0bcdd453 SHA512 a12dff52af876aee0fd89a8d09cdc455f35ec46845e154023202392adc164848faf8ee881b59b681b696e27c69fd143a214014db4214db62f9891a1c8365c040
84 DIST gcc-cygwinports-0de6b2ae6b6577eb0891a7ca8d551bdfa79bf5e8.tar.gz 20183 BLAKE2B dc9a4c78f98851ed77720d4c06d3fbf9f2d7d0e81a825cc89026994060fd29214f111fd3a52cec6518417cab2be89caf4a844a0869136287f174147ca7a6ebf3 SHA512 d01ee85a1327e7f6f16b3c2de6659699764f365215bd3e58247c5c65594153b9232bdc43ff89420cac75ad908ed39c7ff9fa4006818f5dd209b792d34d9ae7de
85 -DIST gcc-cygwinports-11fa2eec213324d64673ad41358f726f6523667f.tar.gz 23047 BLAKE2B 83e44a2eed9e134ea2531e3ecff4479f4d305a55d14729ed11c91199c1f56ec7e2d4df48d56de11ba43a9e936019943edc370a04a26f6b3bfd5616230feeffa5 SHA512 f8cbf3b2b20c1950d0984fe672536d92f7d05b065495d93205d72b7578e696847f074430c6e642668d1c0c26fa9d98a4dfd3fce7030d45f2d04f80499437587c
86 -DIST gcc-cygwinports-f44d762eb3551ea0d81aa8e4b428bcb7caabb628.tar.gz 32780 BLAKE2B 364353bf379a2a950050148caf2cef86239f2418a98f72b3edec4cf56e43e7d07601f4d1ca8103c691ddddff0fca96a6a8c728e2e50bca373c34441bdc7505be SHA512 d5bc37965745fa32a3ddd357e658bd066d4aadf19eee7a30047f4dc6f47450d320e33cbbe4bf22fa6f5e30f7f41ec6ec3a250df56760a38df0f14fea3e34a83e
87 -DIST gcc-pre11-apple-si-a172e87.tar.gz 125440972 BLAKE2B 45477b580b9637abbb1d5182bf5821b3acff4ad71c13be508e598df666fdc3621c44b234e7ca18ff0f82236b5a7a05901d790a42e671b7152e2605ccdf6766ed SHA512 52ce4d88a6c471e193ec11003af336bcd608088bd0e6268ad6f51db89749404be8087a7088bad21482b34739bbcc650aeb997837a7aed640649bd076258016a9
88 -DIST gcc-pre11-apple-si-f1bedb9.tar.gz 124531876 BLAKE2B b7450b5b3cafce9f92e4f793439d767193aa609f924ae8a8d07dc353d9e64c6d2881252706ffec93ff91c1a3970a8688a3d9454b880e5d7587795ad284790fe7 SHA512 2cc21803e9236db234f31584aaabb503b7a9612b82ac54fac389aeb19c4e36d70f60e3660f63e35462f8a494862c88951f4d6434fad7e4dafc0f5a041e906b28
89
90 diff --git a/sys-devel/gcc/files/gcc-12-no-libs-for-startfile.patch b/sys-devel/gcc/files/gcc-12-no-libs-for-startfile.patch
91 new file mode 100644
92 index 0000000000..8cc59a6ea3
93 --- /dev/null
94 +++ b/sys-devel/gcc/files/gcc-12-no-libs-for-startfile.patch
95 @@ -0,0 +1,15 @@
96 +* do not generate multilib paths, since adding those dirs, e.g.
97 + /usr/lib/amd64 or /usr/lib64, screws up Prefix badly (in %D)
98 + see also: http://article.gmane.org/gmane.linux.gentoo.alt/3575
99 +
100 +--- a/gcc/gcc.cc
101 ++++ b/gcc/gcc.cc
102 +@@ -4740,7 +4740,7 @@
103 + #endif
104 + info.separate_options = false;
105 +
106 +- for_each_path (&startfile_prefixes, true, 0, spec_path, &info);
107 ++ for_each_path (&startfile_prefixes, false, 0, spec_path, &info);
108 + }
109 + break;
110 +
111
112 diff --git a/sys-devel/gcc/files/gcc-12-prefix-search-dirs.patch b/sys-devel/gcc/files/gcc-12-prefix-search-dirs.patch
113 new file mode 100644
114 index 0000000000..2e733472c0
115 --- /dev/null
116 +++ b/sys-devel/gcc/files/gcc-12-prefix-search-dirs.patch
117 @@ -0,0 +1,37 @@
118 +--- a/gcc/gcc.cc
119 ++++ b/gcc/gcc.cc
120 +@@ -2691,6 +2691,34 @@
121 + {
122 + struct add_to_obstack_info *info = (struct add_to_obstack_info *) data;
123 +
124 ++#if DISABLE_MULTILIB
125 ++ /*
126 ++ * Fix multilib paths for our prefix, that is alter lib64 and lib32 to lib.
127 ++ * No allocation needed, since the path won't grow but only shrink by two
128 ++ * chars. We should not modify host multilib dirs, otherwise libs might not
129 ++ * be found in /lib64 or /usr/lib64
130 ++ */
131 ++ int elen = strlen(STANDARD_EXEC_PREFIX);
132 ++ if (elen && strncmp(path, STANDARD_EXEC_PREFIX, elen) == 0) {
133 ++ /* multilib dirs are put at the end like ../lib32/ ../lib64/ */
134 ++ static char const *mdirs[] = { "../lib64/", "../lib32/" };
135 ++ int plen = strlen(path);
136 ++ unsigned int idx;
137 ++ int mlen;
138 ++
139 ++ /* For each path replace the multilib dir at the end of the path. */
140 ++ for (idx = 0; idx < (sizeof(mdirs) / sizeof(mdirs[0])); idx++) {
141 ++ mlen = strlen(mdirs[idx]);
142 ++ if (strncmp(path + plen - mlen, mdirs[idx], mlen) == 0) {
143 ++ /* Overwrite the part with null-termination. In prefix the only multilib
144 ++ occurence is the one added by gcc so we can end here. */
145 ++ strcpy(path + plen - mlen, "../lib/");
146 ++ break;
147 ++ }
148 ++ }
149 ++ }
150 ++#endif
151 ++
152 + if (info->check_dir && !is_directory (path, false))
153 + return NULL;
154 +
155
156 diff --git a/sys-devel/gcc/gcc-11_pre20200206.ebuild b/sys-devel/gcc/gcc-11_pre20200206.ebuild
157 deleted file mode 100644
158 index e1bfc2eb77..0000000000
159 --- a/sys-devel/gcc/gcc-11_pre20200206.ebuild
160 +++ /dev/null
161 @@ -1,108 +0,0 @@
162 -# Copyright 1999-2021 Gentoo Authors
163 -# Distributed under the terms of the GNU General Public License v2
164 -
165 -EAPI="7"
166 -
167 -GCC_TARBALL_SRC_URI="https://dev.gentoo.org/~grobian/distfiles/gcc-pre11-apple-si-f1bedb9.tar.gz"
168 -PATCH_GCC_VER="11.0.0"
169 -PATCH_VER="6"
170 -TOOLCHAIN_GCC_PV=11.0.0
171 -
172 -inherit toolchain
173 -
174 -#KEYWORDS="~ppc-macos ~x64-macos"
175 -
176 -RDEPEND=""
177 -BDEPEND="
178 - kernel_linux? ( ${CATEGORY}/binutils )
179 - kernel_Darwin? (
180 - || ( ${CATEGORY}/binutils-apple ${CATEGORY}/native-cctools )
181 - )"
182 -
183 -S="${WORKDIR}"/gcc-darwin-arm64-master-wip-apple-si
184 -
185 -src_prepare() {
186 - has_version '>=sys-libs/glibc-2.32-r1' && rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch"
187 - toolchain_src_prepare
188 -
189 - if use elibc_Cygwin; then
190 - sed -e '/0001-share-mingw-fset-stack-executable-with-cygwin.patch/d' \
191 - -i "${WORKDIR}/gcc-${CYGWINPORTS_GITREV}/gcc.cygport" || die
192 - fi
193 -
194 - # make sure 64-bits native targets don't screw up the linker paths
195 - eapply -p0 "${FILESDIR}"/no-libs-for-startfile.patch
196 - if use prefix; then
197 - eapply -p0 "${FILESDIR}"/4.5.2/prefix-search-dirs.patch
198 - # try /usr/lib32 in 32bit profile on x86_64-linux (needs
199 - # --enable-multilib), but this does make sense in prefix only
200 - eapply -p0 "${FILESDIR}"/${PN}-4.8.3-linux-x86-on-amd64.patch
201 - fi
202 -
203 - # make it have correct install_names on Darwin
204 - eapply -p1 "${FILESDIR}"/4.3.3/darwin-libgcc_s-installname.patch
205 -
206 - if [[ ${CHOST} == powerpc*-darwin* ]] ; then
207 - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44107
208 - sed -i -e 's|^ifeq (/usr/lib,|ifneq (/usr/lib,|' \
209 - libgcc/config/t-slibgcc-darwin || die
210 - fi
211 -
212 - # fixup a what seems to be a typo, we need this at least to finish
213 - # compilation on arm64-macos during bootstrap as gmp.h else won't be
214 - # found
215 - sed -i -e 's/ALL_SPPFLAGS/ALL_CPPFLAGS/' \
216 - gcc/config/aarch64/t-aarch64 || die
217 -}
218 -
219 -src_configure() {
220 - local myconf=()
221 - case ${CTARGET}:" ${USE} " in
222 - powerpc*-darwin*)
223 - # bug #381179
224 - filter-flags "-mcpu=*" "-mtune=*"
225 - # bug #657522
226 - # A bug in configure checks whether -no-pie works, but the
227 - # compiler doesn't pass -no-pie onto the linker if -fno-PIE
228 - # isn't passed, so the configure check always finds -no-pie
229 - # is accepted. (Likewise, when -fno-PIE is passed, the
230 - # compiler passes -no_pie onto the linker.)
231 - # Since our linker doesn't grok this, avoid above checks to
232 - # be run
233 - # NOTE: later ld64 does grok -no_pie, not -no-pie (as checked)
234 - export gcc_cv_c_no_fpie=no
235 - export gcc_cv_no_pie=no
236 - ;;
237 - *-darwin20)
238 - # use sysroot with the linker, #756160
239 - export gcc_cv_ld_sysroot=yes
240 - ;;
241 - *-solaris*)
242 - # todo: some magic for native vs. GNU linking?
243 - myconf+=( --with-gnu-ld --with-gnu-as --enable-largefile )
244 - # Solaris 11 defines this in its headers, but that causes a
245 - # mismatch whilst compiling, bug #657514
246 - export ac_cv_func_aligned_alloc=no
247 - export ac_cv_func_memalign=no
248 - export ac_cv_func_posix_memalign=no
249 - ;;
250 - i[34567]86-*-linux*:*" prefix "*)
251 - # to allow the linux-x86-on-amd64.patch become useful, we need
252 - # to enable multilib, even if there is just one multilib option.
253 - myconf+=( --enable-multilib )
254 - if [[ ${CBUILD:-${CHOST}} == "${CHOST}" ]]; then
255 - # we might be on x86_64-linux, but don't do cross-compile, so
256 - # tell the host-compiler to really create 32bits (for stage1)
257 - # (real x86-linux-gcc also accept -m32).
258 - append-flags -m32
259 - fi
260 - ;;
261 - esac
262 -
263 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
264 - # least on Solaris, and AIX /bin/sh is way too slow,
265 - # so force it to use $BASH (that portage uses) - it can't be EPREFIX
266 - # in case that doesn't exist yet
267 - export CONFIG_SHELL="${CONFIG_SHELL:-${BASH}}"
268 - toolchain_src_configure "${myconf[@]}"
269 -}
270
271 diff --git a/sys-devel/gcc/gcc-11_pre20210226.ebuild b/sys-devel/gcc/gcc-12.1.0.ebuild
272 similarity index 66%
273 rename from sys-devel/gcc/gcc-11_pre20210226.ebuild
274 rename to sys-devel/gcc/gcc-12.1.0.ebuild
275 index 3aa29c8610..5270c920df 100644
276 --- a/sys-devel/gcc/gcc-11_pre20210226.ebuild
277 +++ b/sys-devel/gcc/gcc-12.1.0.ebuild
278 @@ -1,39 +1,50 @@
279 -# Copyright 1999-2021 Gentoo Authors
280 +# Copyright 1999-2022 Gentoo Authors
281 # Distributed under the terms of the GNU General Public License v2
282
283 -EAPI="7"
284 +EAPI=7
285
286 -GCC_TARBALL_SRC_URI="https://dev.gentoo.org/~grobian/distfiles/gcc-pre11-apple-si-a172e87.tar.gz"
287 -PATCH_GCC_VER="11.0.0"
288 -PATCH_VER="6"
289 -TOOLCHAIN_GCC_PV=11.0.1
290 +TOOLCHAIN_PATCH_DEV="sam"
291 +PATCH_VER="7"
292 +PATCH_GCC_VER="12.1.0"
293 +MUSL_VER="4"
294 +MUSL_GCC_VER="12.1.0"
295
296 inherit toolchain
297
298 -#KEYWORDS="~ppc-macos ~x64-macos"
299 +# Don't keyword live ebuilds
300 +if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
301 + KEYWORDS="~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
302 +fi
303
304 -RDEPEND=""
305 -BDEPEND="
306 - kernel_linux? ( ${CATEGORY}/binutils )
307 - kernel_Darwin? (
308 - || ( ${CATEGORY}/binutils-apple ${CATEGORY}/native-cctools )
309 - )"
310 +# use alternate source for Apple M1 (also works for x86_64)
311 +IANSGCCVER="gcc-12.1-darwin-r0"
312 +SRC_URI+=" elibc_Darwin? (
313 +https://github.com/iains/gcc-12-branch/archive/refs/tags/${IANSGCCVER}.tar.gz )"
314
315 -S="${WORKDIR}"/gcc-darwin-arm64-master-wip-apple-si
316 +# Technically only if USE=hardened *too* right now, but no point in complicating it further.
317 +# If GCC is enabling CET by default, we need glibc to be built with support for it.
318 +# bug #830454
319 +RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
320 +DEPEND="${RDEPEND}"
321 +BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]"
322 +
323 +src_unpack() {
324 + if use elibc_Darwin ; then
325 + # just use Ian's source, not the main one
326 + S="${WORKDIR}/gcc-12-branch-${IANSGCCVER}"
327 + fi
328 + default
329 +}
330
331 src_prepare() {
332 - has_version '>=sys-libs/glibc-2.32-r1' && rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch"
333 toolchain_src_prepare
334
335 - if use elibc_Cygwin; then
336 - sed -e '/0001-share-mingw-fset-stack-executable-with-cygwin.patch/d' \
337 - -i "${WORKDIR}/gcc-${CYGWINPORTS_GITREV}/gcc.cygport" || die
338 - fi
339 + eapply_user
340
341 # make sure 64-bits native targets don't screw up the linker paths
342 - eapply -p0 "${FILESDIR}"/no-libs-for-startfile.patch
343 + eapply "${FILESDIR}"/gcc-12-no-libs-for-startfile.patch
344 if use prefix; then
345 - eapply -p0 "${FILESDIR}"/4.5.2/prefix-search-dirs.patch
346 + eapply "${FILESDIR}"/gcc-12-prefix-search-dirs.patch
347 # try /usr/lib32 in 32bit profile on x86_64-linux (needs
348 # --enable-multilib), but this does make sense in prefix only
349 eapply -p0 "${FILESDIR}"/${PN}-4.8.3-linux-x86-on-amd64.patch
350 @@ -48,14 +59,11 @@ src_prepare() {
351 libgcc/config/t-slibgcc-darwin || die
352 fi
353
354 - # fixup a what seems to be a typo, we need this at least to finish
355 - # compilation on arm64-macos during bootstrap as gmp.h else won't be
356 - # found
357 - sed -i -e 's/ALL_SPPFLAGS/ALL_CPPFLAGS/' \
358 - gcc/config/aarch64/t-aarch64 || die
359 -
360 - # allow building with macOS 12
361 - eapply -p1 "${FILESDIR}"/${PN}-10.3.0-monterey.patch
362 + if [[ ${CHOST} == *-solaris* ]] ; then
363 + # madvise is not available in the compatibility mode GCC uses,
364 + # posix_madvise however, is
365 + sed -i -e 's/madvise/posix_madvise/' gcc/cp/module.cc || die
366 + fi
367 }
368
369 src_configure() {
370
371 diff --git a/sys-devel/gcc/gcc-4.1.2.ebuild b/sys-devel/gcc/gcc-4.1.2.ebuild
372 deleted file mode 100644
373 index 83751a153f..0000000000
374 --- a/sys-devel/gcc/gcc-4.1.2.ebuild
375 +++ /dev/null
376 @@ -1,68 +0,0 @@
377 -# Copyright 1999-2020 Gentoo Authors
378 -# Distributed under the terms of the GNU General Public License v2
379 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-4.1.2.ebuild,v 1.37 2014/01/19 01:51:34 dirtyepic Exp $
380 -
381 -EAPI="5"
382 -
383 -PATCH_VER="1.5"
384 -UCLIBC_VER="1.0"
385 -D_VER="0.24"
386 -
387 -inherit eutils toolchain flag-o-matic
388 -
389 -DESCRIPTION="The GNU Compiler Collection"
390 -
391 -LICENSE="GPL-2+ LGPL-2.1+ FDL-1.2+"
392 -KEYWORDS="~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
393 -
394 -RDEPEND=""
395 -DEPEND="${RDEPEND}
396 - kernel_Darwin? ( ${CATEGORY}/binutils-apple )
397 - !kernel_Darwin? ( !kernel_AIX? (
398 - ppc? ( >=${CATEGORY}/binutils-2.17 )
399 - ppc64? ( >=${CATEGORY}/binutils-2.17 )
400 - >=${CATEGORY}/binutils-2.15.94
401 - ) )"
402 -
403 -src_prepare() {
404 - toolchain_src_prepare
405 -
406 - use vanilla && return 0
407 -
408 - [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
409 -
410 - # Fix cross-compiling
411 - epatch "${FILESDIR}"/4.1.0/gcc-4.1.0-cross-compile.patch
412 -
413 - [[ ${CTARGET} == *-softfloat-* ]] && epatch "${FILESDIR}"/4.0.2/gcc-4.0.2-softfloat.patch
414 -
415 - epatch "${FILESDIR}"/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch
416 -
417 - epatch "${FILESDIR}"/${P}-freebsd.patch
418 - epatch "${FILESDIR}"/${P}-darwin-fpic.patch
419 -
420 - if [[ ${CHOST} == *-solaris* ]] ; then
421 - # fix nasty bootstrap problem: we need 4.1 due to no deps of MPC, GMP,
422 - # MPFR, but 4.1 doesn't know about *_sol2 ld targets of >=binutils-2.21
423 - # we likely have that one installed, so if so, we patch it to *_sol2
424 - if has_version '>=sys-devel/binutils-2.21' ; then
425 - einfo "Patching specs to target elf_*_sol2 for newer binutils"
426 - sed -i \
427 - -e '/TARGET_LD_EMULATION/s/elf_\(x86_64\|i386\)/elf_\1_sol2/g' \
428 - gcc/config/i386/sol2-10.h || die
429 - fi
430 - fi
431 -}
432 -
433 -src_configure() {
434 - case ${CHOST} in
435 - *-solaris*)
436 - # todo: some magic for native vs. GNU linking?
437 - EXTRA_ECONF="${EXTRA_ECONF} --with-gnu-ld"
438 - ;;
439 - esac
440 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
441 - # least on Solaris, so force it into our own bash
442 - export CONFIG_SHELL="${BASH}"
443 - toolchain_src_configure
444 -}
445
446 diff --git a/sys-devel/gcc/gcc-4.2.4-r2.ebuild b/sys-devel/gcc/gcc-4.2.4-r2.ebuild
447 deleted file mode 100644
448 index 52e7ff29d9..0000000000
449 --- a/sys-devel/gcc/gcc-4.2.4-r2.ebuild
450 +++ /dev/null
451 @@ -1,137 +0,0 @@
452 -# Copyright 1999-2021 Gentoo Authors
453 -# Distributed under the terms of the GNU General Public License v2
454 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-4.2.4-r1.ebuild,v 1.16 2014/01/19 01:51:34 dirtyepic Exp $
455 -
456 -EAPI="5"
457 -
458 -PATCH_VER="1.3"
459 -UCLIBC_VER="1.0"
460 -
461 -inherit eutils toolchain flag-o-matic prefix
462 -
463 -DESCRIPTION="The GNU Compiler Collection"
464 -
465 -LICENSE="GPL-3+ LGPL-2.1+ || ( GPL-3+ libgcc libstdc++ ) FDL-1.2+"
466 -KEYWORDS="~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
467 -
468 -RDEPEND=""
469 -DEPEND="${RDEPEND}
470 - kernel_Darwin? ( ${CATEGORY}/binutils-apple )
471 - !kernel_Darwin? (
472 - ppc? ( >=${CATEGORY}/binutils-2.17 )
473 - ppc64? ( >=${CATEGORY}/binutils-2.17 )
474 - >=${CATEGORY}/binutils-2.15.94
475 - )"
476 -
477 -src_prepare() {
478 - toolchain_src_prepare
479 -
480 - use vanilla && return 0
481 -
482 - # work around http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33637
483 - epatch "${FILESDIR}"/4.2.2/targettools-checks.patch
484 -
485 - # http://bugs.gentoo.org/show_bug.cgi?id=201490
486 - epatch "${FILESDIR}"/4.2.2/gentoo-fixincludes.patch
487 -
488 - # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27516
489 - epatch "${FILESDIR}"/4.2.2/treelang-nomakeinfo.patch
490 -
491 - # call the linker without explicit target like on sparc
492 - epatch "${FILESDIR}"/solaris-i386-ld-emulation-4.2.patch
493 -
494 - # fix configure problem, bug #416577
495 - epatch "${FILESDIR}"/4.2.2/solarisx86.patch
496 -
497 - # add support for 64-bits native target on Solaris (includes fix for #416577)
498 - epatch "${FILESDIR}"/4.2.2/solarisx86_64.patch
499 - if [[ ${CHOST} == *-solaris* ]] ; then
500 - # fix nasty bootstrap problem: we need 4.2 due to no deps of MPC, GMP,
501 - # MPFR, but 4.2 doesn't know about *_sol2 ld targets of >=binutils-2.21
502 - # we likely have that one installed, so if so, we patch it to *_sol2
503 - if has_version '>=sys-devel/binutils-2.21' ; then
504 - einfo "Patching specs to target elf_*_sol2 for newer binutils"
505 - sed -i \
506 - -e '/TARGET_LD_EMULATION/s/elf_\(x86_64\|i386\)/elf_\1_sol2/g' \
507 - gcc/config/i386/sol2-10.h || die
508 - sed -i \
509 - -e 's/elf\(32\|64\)_sparc/&_sol2/g' \
510 - gcc/config/sparc/sol2-gld-bi.h || die
511 - fi
512 - fi
513 -
514 - # make sure 64-bits native targets don't screw up the linker paths
515 - epatch "${FILESDIR}"/solaris-searchpath.patch
516 - epatch "${FILESDIR}"/no-libs-for-startfile.patch
517 - # replace nasty multilib dirs like ../lib64 that occur on --disable-multilib
518 - if use prefix; then
519 - epatch "${FILESDIR}"/4.2.2/prefix-search-dirs.patch
520 - eprefixify "${S}"/gcc/gcc.c
521 - fi
522 -
523 - # allow gcj compilation to succeed on platforms with libiconv
524 - epatch "${FILESDIR}"/gcj-${PV}-iconvlink.patch
525 -
526 - # try /usr/lib32 in 32bit profile on x86_64-linux (needs --enable-multilib)
527 - # but this does make sense in prefix only.
528 - use prefix && epatch "${FILESDIR}"/${P}-linux-x86-on-amd64.patch
529 -
530 - [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
531 -
532 - [[ ${CTARGET} == *-softfloat-* ]] && epatch "${FILESDIR}"/4.0.2/gcc-4.0.2-softfloat.patch
533 -
534 - epatch "${FILESDIR}"/4.2.2/ro-string.patch
535 -}
536 -
537 -src_configure() {
538 - case ${CTARGET}:" ${USE} " in
539 - *-solaris*)
540 - # todo: some magic for native vs. GNU linking?
541 - EXTRA_ECONF="${EXTRA_ECONF} --with-gnu-ld --with-gnu-as"
542 - ;;
543 - i[34567]86-*-linux*:*" prefix "*)
544 - # to allow the linux-x86-on-amd64.patch become useful, we need
545 - # to enable multilib, even if there is just one multilib option.
546 - EXTRA_ECONF="${EXTRA_ECONF} --enable-multilib"
547 - if [[ ${CBUILD:-${CHOST}} == "${CHOST}" ]]; then
548 - # we might be on x86_64-linux, but don't do cross-compile, so
549 - # tell the host-compiler to really create 32bits (for stage1)
550 - # (real x86-linux-gcc also accept -m32).
551 - tc-export CC CXX
552 - CC="${CC} -m32"
553 - CXX="${CC} -m32"
554 - fi
555 - ;;
556 - esac
557 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
558 - # least on Solaris, and AIX /bin/sh is ways too slow,
559 - # so force it to use $BASH (that portage uses) - it can't be EPREFIX
560 - # in case that doesn't exist yet
561 - export CONFIG_SHELL="${BASH}"
562 - toolchain_src_configure
563 -}
564 -
565 -src_install() {
566 - toolchain_src_install
567 -
568 - # create a small profile.d script, unsetting some of the bad
569 - # environment variables that the system could set from the outside.
570 - # (GCC_SPECS, GCC_EXEC_PREFIX, CPATH, LIBRARY_PATH, LD_LIBRARY_PATH,
571 - # C_INCLUDE_PATH, CPLUS_INCLUDE_PATH, LIBPATH, SHLIB_PATH, LIB, INCLUDE,
572 - # LD_LIBRARY_PATH_32, LD_LIBRARY_PATH_64).
573 - # Maybe there is a better location for doing this ...? Feel free to move
574 - # it there if you want to.
575 -
576 - cat > "${T}"/00-gcc-paths.sh <<- _EOF
577 - #!/bin/env bash
578 - # GCC specific variables
579 - unset GCC_SPECS GCC_EXEC_PREFIX
580 - # include path variables
581 - unset CPATH C_INCLUDE_PATH CPLUS_INCLUDE_PATH INCLUDE
582 - # library path variables
583 - unset LIBRARY_PATH LD_LIBRARY_PATH LIBPATH SHLIB_PATH LIB LD_LIBRARY_PATH_32 LD_LIBRARY_PATH_64
584 - _EOF
585 -
586 - insinto /etc/profile.d
587 - doins "${T}"/00-gcc-paths.sh
588 -}
589
590 diff --git a/sys-devel/gcc/gcc-4.7.3-r1.ebuild b/sys-devel/gcc/gcc-4.7.3-r1.ebuild
591 deleted file mode 100644
592 index 7b804b403e..0000000000
593 --- a/sys-devel/gcc/gcc-4.7.3-r1.ebuild
594 +++ /dev/null
595 @@ -1,143 +0,0 @@
596 -# Copyright 1999-2021 Gentoo Authors
597 -# Distributed under the terms of the GNU General Public License v2
598 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-4.7.3-r1.ebuild,v 1.16 2014/01/19 01:51:34 dirtyepic Exp $
599 -
600 -EAPI="5"
601 -
602 -PATCH_VER="1.4"
603 -UCLIBC_VER="1.0"
604 -
605 -# Hardened gcc 4 stuff
606 -PIE_VER="0.5.5"
607 -SPECS_VER="0.2.0"
608 -SPECS_GCC_VER="4.4.3"
609 -# arch/libc configurations known to be stable with {PIE,SSP}-by-default
610 -PIE_GLIBC_STABLE="x86 amd64 ppc ppc64 arm ia64"
611 -PIE_UCLIBC_STABLE="x86 arm amd64 ppc ppc64"
612 -SSP_STABLE="amd64 x86 ppc ppc64 arm
613 -# uclibc need tls and nptl support for SSP support"
614 -# uclibc need to be >= 0.9.33
615 -SSP_UCLIBC_STABLE="x86 amd64 ppc ppc64 arm"
616 -#end Hardened stuff
617 -
618 -inherit eutils toolchain flag-o-matic
619 -
620 -DESCRIPTION="The GNU Compiler Collection."
621 -
622 -LICENSE="GPL-3+ LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 ) FDL-1.3+"
623 -KEYWORDS="~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
624 -
625 -RDEPEND=""
626 -DEPEND="${RDEPEND}
627 - !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )
628 - kernel_Darwin? ( ${CATEGORY}/binutils-apple )
629 - kernel_linux? ( >=${CATEGORY}/binutils-2.18 )"
630 -
631 -if [[ ${CATEGORY} != cross-* ]] ; then
632 - PDEPEND="${PDEPEND} !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )"
633 -fi
634 -
635 -src_prepare() {
636 - if has_version '<sys-libs/glibc-2.12' ; then
637 - ewarn "Your host glibc is too old; disabling automatic fortify."
638 - ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
639 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
640 - fi
641 - # Fedora/RedHat ships glibc-2.15+ with some nasty warnings that cause
642 - # configure checks for most system headers to fail, resulting in bugs
643 - # compiling e.g. gcc itself, bug #433333
644 - if [[ -e /usr/include/features.h ]] ; then
645 - grep -qF "_FORTIFY_SOURCE requires compiling with optimization" \
646 - /usr/include/features.h && \
647 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
648 - fi
649 -
650 - # drop the x32 stuff once 4.7 goes stable
651 - if [[ ${CTARGET} != x86_64* ]] || ! has x32 $(get_all_abis TARGET) ; then
652 - EPATCH_EXCLUDE+=" 90_all_gcc-4.7-x32.patch"
653 - fi
654 -
655 - toolchain_src_prepare
656 -
657 - use vanilla && return 0
658 -
659 - # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60221
660 - epatch "${FILESDIR}"/gcc-4.7.2-cleanup-empty-eh-o0.patch
661 -
662 - # make sure solaris-x64 doesn't misdetect tls support, bug #505446
663 - epatch "${FILESDIR}"/4.7.2/solaris-x64-tls-gnu-as.patch
664 -
665 - # make sure 64-bits native targets don't screw up the linker paths
666 - epatch "${FILESDIR}"/4.7.1/solaris-searchpath.patch
667 - epatch "${FILESDIR}"/no-libs-for-startfile.patch
668 - if use prefix; then
669 - epatch "${FILESDIR}"/4.5.2/prefix-search-dirs.patch
670 - # try /usr/lib32 in 32bit profile on x86_64-linux (needs
671 - # --enable-multilib), but this does make sense in prefix only
672 - epatch "${FILESDIR}"/${PN}-4.7.2-linux-x86-on-amd64.patch
673 - fi
674 -
675 - # make it have correct install_names on Darwin
676 - epatch "${FILESDIR}"/4.3.3/darwin-libgcc_s-installname.patch
677 -
678 - [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
679 -}
680 -
681 -src_configure() {
682 - case ${CTARGET}:" ${USE} " in
683 - powerpc*-darwin*)
684 - # bug #381179
685 - filter-flags "-mcpu=*" "-mtune=*"
686 - ;;
687 - *-solaris*)
688 - # todo: some magic for native vs. GNU linking?
689 - EXTRA_ECONF="${EXTRA_ECONF} --with-gnu-ld --with-gnu-as"
690 - ;;
691 - i[34567]86-*-linux*:*" prefix "*)
692 - # to allow the linux-x86-on-amd64.patch become useful, we need
693 - # to enable multilib, even if there is just one multilib option.
694 - EXTRA_ECONF="${EXTRA_ECONF} --enable-multilib"
695 - if [[ ${CBUILD:-${CHOST}} == "${CHOST}" ]]; then
696 - # we might be on x86_64-linux, but don't do cross-compile, so
697 - # tell the host-compiler to really create 32bits (for stage1)
698 - # (real x86-linux-gcc also accept -m32).
699 - tc-export CC CXX
700 - CC="${CC} -m32"
701 - CXX="${CC} -m32"
702 - fi
703 - ;;
704 - esac
705 -
706 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
707 - # least on Solaris, and AIX /bin/sh is ways too slow,
708 - # so force it to use $BASH (that portage uses) - it can't be EPREFIX
709 - # in case that doesn't exist yet
710 - export CONFIG_SHELL="${CONFIG_SHELL:-${BASH}}"
711 - toolchain_src_configure
712 -}
713 -
714 -src_install() {
715 - toolchain_src_install
716 -
717 - # create a small profile.d script, unsetting some of the bad
718 - # environment variables that the sustem could set from the outside.
719 - # (GCC_SPECS, GCC_EXEC_PREFIX, CPATH, LIBRARY_PATH, LD_LIBRARY_PATH,
720 - # C_INCLUDE_PATH, CPLUS_INCLUDE_PATH, LIBPATH, SHLIB_PATH, LIB, INCLUDE,
721 - # LD_LIBRARY_PATH_32, LD_LIBRARY_PATH_64).
722 - # Maybe there is a better location for doing this ...? Feel free to move
723 - # it there if you want to.
724 -
725 - cat > "${T}"/00-gcc-paths.sh <<- _EOF
726 - #!/bin/env bash
727 - # GCC specific variables
728 - unset GCC_SPECS GCC_EXEC_PREFIX
729 - # include path variables
730 - unset CPATH C_INCLUDE_PATH CPLUS_INCLUDE_PATH INCLUDE
731 - # library path variables
732 - unset LIBRARY_PATH LD_LIBRARY_PATH LIBPATH SHLIB_PATH LIB LD_LIBRARY_PATH_32 LD_LIBRARY_PATH_64
733 - _EOF
734 -
735 - insinto /etc/profile.d
736 - doins "${T}"/00-gcc-paths.sh
737 -
738 -}
739
740 diff --git a/sys-devel/gcc/gcc-4.8.5-r1.ebuild b/sys-devel/gcc/gcc-4.8.5-r1.ebuild
741 deleted file mode 100644
742 index 96b1a6dcfa..0000000000
743 --- a/sys-devel/gcc/gcc-4.8.5-r1.ebuild
744 +++ /dev/null
745 @@ -1,106 +0,0 @@
746 -# Copyright 1999-2021 Gentoo Authors
747 -# Distributed under the terms of the GNU General Public License v2
748 -
749 -EAPI="5"
750 -
751 -PATCH_VER="1.3"
752 -UCLIBC_VER="1.0"
753 -
754 -# Hardened gcc 4 stuff
755 -PIE_VER="0.6.2"
756 -SPECS_VER="0.2.0"
757 -SPECS_GCC_VER="4.4.3"
758 -# arch/libc configurations known to be stable with {PIE,SSP}-by-default
759 -PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
760 -PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
761 -SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
762 -# uclibc need tls and nptl support for SSP support
763 -# uclibc need to be >= 0.9.33
764 -SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
765 -#end Hardened stuff
766 -
767 -inherit eutils toolchain flag-o-matic
768 -
769 -KEYWORDS="~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
770 -
771 -RDEPEND=""
772 -DEPEND="${RDEPEND}
773 - !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )
774 - kernel_linux? ( >=${CATEGORY}/binutils-2.20 )
775 - kernel_Darwin? ( ${CATEGORY}/binutils-apple )
776 -"
777 -
778 -if [[ ${CATEGORY} != cross-* ]] ; then
779 - PDEPEND="${PDEPEND} !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )"
780 -fi
781 -
782 -src_prepare() {
783 - if has_version '<sys-libs/glibc-2.12' ; then
784 - ewarn "Your host glibc is too old; disabling automatic fortify."
785 - ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
786 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
787 - fi
788 - # Fedora/RedHat ships glibc-2.15+ with some nasty warnings that cause
789 - # configure checks for most system headers to fail, resulting in bugs
790 - # compiling e.g. gcc itself, bug #433333
791 - if [[ -e /usr/include/features.h ]] ; then
792 - grep -qF "_FORTIFY_SOURCE requires compiling with optimization" \
793 - /usr/include/features.h && \
794 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
795 - fi
796 -
797 - toolchain_src_prepare
798 -
799 - use vanilla && return 0
800 -
801 - # make sure solaris-x64 doesn't misdetect tls support, bug #505446
802 - epatch "${FILESDIR}"/4.7.2/solaris-x64-tls-gnu-as.patch
803 -
804 - # make sure 64-bits native targets don't screw up the linker paths
805 - epatch "${FILESDIR}"/4.7.1/solaris-searchpath.patch
806 - epatch "${FILESDIR}"/no-libs-for-startfile.patch
807 - if use prefix; then
808 - epatch "${FILESDIR}"/4.5.2/prefix-search-dirs.patch
809 - # try /usr/lib32 in 32bit profile on x86_64-linux (needs
810 - # --enable-multilib), but this does make sense in prefix only
811 - epatch "${FILESDIR}"/${PN}-4.8.3-linux-x86-on-amd64.patch
812 - fi
813 -
814 - # make it have correct install_names on Darwin
815 - epatch "${FILESDIR}"/4.3.3/darwin-libgcc_s-installname.patch
816 -
817 - #Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs.
818 - [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env-r1.patch
819 -}
820 -
821 -src_configure() {
822 - local myconf=()
823 - case ${CTARGET}:" ${USE} " in
824 - powerpc*-darwin*)
825 - # bug #381179
826 - filter-flags "-mcpu=*" "-mtune=*"
827 - ;;
828 - *-solaris*)
829 - # todo: some magic for native vs. GNU linking?
830 - myconf+=( --with-gnu-ld --with-gnu-as )
831 - ;;
832 - i[34567]86-*-linux*:*" prefix "*)
833 - # to allow the linux-x86-on-amd64.patch become useful, we need
834 - # to enable multilib, even if there is just one multilib option.
835 - myconf+=( --enable-multilib )
836 - if [[ ${CBUILD:-${CHOST}} == "${CHOST}" ]]; then
837 - # we might be on x86_64-linux, but don't do cross-compile, so
838 - # tell the host-compiler to really create 32bits (for stage1)
839 - # (real x86-linux-gcc also accept -m32).
840 - append-flags -m32
841 - fi
842 - ;;
843 - esac
844 -
845 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
846 - # least on Solaris, and AIX /bin/sh is ways too slow,
847 - # so force it to use $BASH (that portage uses) - it can't be EPREFIX
848 - # in case that doesn't exist yet
849 - export CONFIG_SHELL="${CONFIG_SHELL:-${BASH}}"
850 - toolchain_src_configure "${myconf[@]}"
851 -}
852
853 diff --git a/sys-devel/gcc/gcc-4.9.4.ebuild b/sys-devel/gcc/gcc-4.9.4.ebuild
854 deleted file mode 100644
855 index 87b7195f5f..0000000000
856 --- a/sys-devel/gcc/gcc-4.9.4.ebuild
857 +++ /dev/null
858 @@ -1,103 +0,0 @@
859 -# Copyright 1999-2021 Gentoo Authors
860 -# Distributed under the terms of the GNU General Public License v2
861 -
862 -EAPI="5"
863 -
864 -PATCH_VER="1.3"
865 -UCLIBC_VER="1.0"
866 -
867 -# Hardened gcc 4 stuff
868 -PIE_VER="0.6.4"
869 -SPECS_VER="0.2.0"
870 -SPECS_GCC_VER="4.4.3"
871 -# arch/libc configurations known to be stable with {PIE,SSP}-by-default
872 -PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
873 -PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
874 -SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
875 -# uclibc need tls and nptl support for SSP support
876 -# uclibc need to be >= 0.9.33
877 -SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
878 -#end Hardened stuff
879 -
880 -inherit eutils toolchain flag-o-matic
881 -
882 -KEYWORDS="~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
883 -
884 -RDEPEND=""
885 -DEPEND="${RDEPEND}
886 - !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )
887 - kernel_linux? ( >=${CATEGORY}/binutils-2.20 )
888 - kernel_Darwin? ( ${CATEGORY}/binutils-apple )
889 -"
890 -
891 -if [[ ${CATEGORY} != cross-* ]] ; then
892 - PDEPEND="${PDEPEND} !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )"
893 -fi
894 -
895 -src_prepare() {
896 - if has_version '<sys-libs/glibc-2.12' ; then
897 - ewarn "Your host glibc is too old; disabling automatic fortify."
898 - ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
899 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
900 - fi
901 - # Fedora/RedHat ships glibc-2.15+ with some nasty warnings that cause
902 - # configure checks for most system headers to fail, resulting in bugs
903 - # compiling e.g. gcc itself, bug #433333
904 - if [[ -e /usr/include/features.h ]] ; then
905 - grep -qF "_FORTIFY_SOURCE requires compiling with optimization" \
906 - /usr/include/features.h && \
907 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
908 - fi
909 -
910 - toolchain_src_prepare
911 -
912 - use vanilla && return 0
913 - # Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs.
914 -
915 - # make sure 64-bits native targets don't screw up the linker paths
916 - epatch "${FILESDIR}"/no-libs-for-startfile.patch
917 - if use prefix; then
918 - epatch "${FILESDIR}"/4.5.2/prefix-search-dirs.patch
919 - # try /usr/lib32 in 32bit profile on x86_64-linux (needs
920 - # --enable-multilib), but this does make sense in prefix only
921 - epatch "${FILESDIR}"/${PN}-4.8.3-linux-x86-on-amd64.patch
922 - fi
923 -
924 - # make it have correct install_names on Darwin
925 - epatch "${FILESDIR}"/4.3.3/darwin-libgcc_s-installname.patch
926 -
927 - #Use -r1 for newer piepatchet that use DRIVER_SELF_SPECS for the hardened specs.
928 - [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env-r1.patch
929 -}
930 -
931 -src_configure() {
932 - local myconf=()
933 - case ${CTARGET}:" ${USE} " in
934 - powerpc*-darwin*)
935 - # bug #381179
936 - filter-flags "-mcpu=*" "-mtune=*"
937 - ;;
938 - *-solaris*)
939 - # todo: some magic for native vs. GNU linking?
940 - myconf+=( --with-gnu-ld --with-gnu-as )
941 - ;;
942 - i[34567]86-*-linux*:*" prefix "*)
943 - # to allow the linux-x86-on-amd64.patch become useful, we need
944 - # to enable multilib, even if there is just one multilib option.
945 - myconf+=( --enable-multilib )
946 - if [[ ${CBUILD:-${CHOST}} == "${CHOST}" ]]; then
947 - # we might be on x86_64-linux, but don't do cross-compile, so
948 - # tell the host-compiler to really create 32bits (for stage1)
949 - # (real x86-linux-gcc also accept -m32).
950 - append-flags -m32
951 - fi
952 - ;;
953 - esac
954 -
955 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
956 - # least on Solaris, and AIX /bin/sh is ways too slow,
957 - # so force it to use $BASH (that portage uses) - it can't be EPREFIX
958 - # in case that doesn't exist yet
959 - export CONFIG_SHELL="${CONFIG_SHELL:-${BASH}}"
960 - toolchain_src_configure "${myconf[@]}"
961 -}
962
963 diff --git a/sys-devel/gcc/gcc-5.4.0-r4.ebuild b/sys-devel/gcc/gcc-5.4.0-r4.ebuild
964 deleted file mode 100644
965 index 81cd232418..0000000000
966 --- a/sys-devel/gcc/gcc-5.4.0-r4.ebuild
967 +++ /dev/null
968 @@ -1,105 +0,0 @@
969 -# Copyright 1999-2021 Gentoo Authors
970 -# Distributed under the terms of the GNU General Public License v2
971 -
972 -EAPI="5"
973 -
974 -PATCH_VER="1.8"
975 -UCLIBC_VER="1.0"
976 -CYGWINPORTS_GITREV="f44d762eb3551ea0d81aa8e4b428bcb7caabb628" # gcc-5.3.0-3
977 -
978 -# Hardened gcc 4 stuff
979 -PIE_VER="0.6.5"
980 -SPECS_VER="0.2.0"
981 -SPECS_GCC_VER="4.4.3"
982 -# arch/libc configurations known to be stable with {PIE,SSP}-by-default
983 -PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
984 -PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
985 -SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
986 -# uclibc need tls and nptl support for SSP support
987 -# uclibc need to be >= 0.9.33
988 -SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
989 -#end Hardened stuff
990 -
991 -inherit eutils toolchain flag-o-matic
992 -
993 -KEYWORDS="~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
994 -
995 -RDEPEND=""
996 -DEPEND="${RDEPEND}
997 - !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )
998 - kernel_linux? ( >=${CATEGORY}/binutils-2.20 )
999 - kernel_Darwin? ( ${CATEGORY}/binutils-apple )
1000 -"
1001 -
1002 -if [[ ${CATEGORY} != cross-* ]] ; then
1003 - PDEPEND="${PDEPEND} !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.8 ) )"
1004 -fi
1005 -
1006 -src_prepare() {
1007 - if has_version '<sys-libs/glibc-2.12' ; then
1008 - ewarn "Your host glibc is too old; disabling automatic fortify."
1009 - ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
1010 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
1011 - fi
1012 - # Fedora/RedHat ships glibc-2.15+ with some nasty warnings that cause
1013 - # configure checks for most system headers to fail, resulting in bugs
1014 - # compiling e.g. gcc itself, bug #433333
1015 - if [[ -e /usr/include/features.h ]] ; then
1016 - grep -qF "_FORTIFY_SOURCE requires compiling with optimization" \
1017 - /usr/include/features.h && \
1018 - EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
1019 - fi
1020 -
1021 - toolchain_src_prepare
1022 -
1023 - use vanilla && return 0
1024 -
1025 - # make sure 64-bits native targets don't screw up the linker paths
1026 - epatch "${FILESDIR}"/no-libs-for-startfile.patch
1027 - if use prefix; then
1028 - epatch "${FILESDIR}"/4.5.2/prefix-search-dirs.patch
1029 - # try /usr/lib32 in 32bit profile on x86_64-linux (needs
1030 - # --enable-multilib), but this does make sense in prefix only
1031 - epatch "${FILESDIR}"/${PN}-4.8.3-linux-x86-on-amd64.patch
1032 - fi
1033 -
1034 - # make it have correct install_names on Darwin
1035 - epatch "${FILESDIR}"/4.3.3/darwin-libgcc_s-installname.patch
1036 -
1037 - # Apply https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=226138,
1038 - # upstream shipped since gcc-6.1.0.
1039 - find libstdc++-v3 -name Makefile.in -exec sed -i -e \
1040 - '/^AM_CPPFLAGS = \$(GLIBCXX_INCLUDES)$/s/$/ $(CPPFLAGS)/p' {} +
1041 -}
1042 -
1043 -src_configure() {
1044 - local myconf=()
1045 - case ${CTARGET}:" ${USE} " in
1046 - powerpc*-darwin*)
1047 - # bug #381179
1048 - filter-flags "-mcpu=*" "-mtune=*"
1049 - ;;
1050 - *-solaris*)
1051 - # todo: some magic for native vs. GNU linking?
1052 - myconf+=( --with-gnu-ld --with-gnu-as --enable-largefile )
1053 - ;;
1054 - i[34567]86-*-linux*:*" prefix "*)
1055 - # to allow the linux-x86-on-amd64.patch become useful, we need
1056 - # to enable multilib, even if there is just one multilib option.
1057 - myconf+=( --enable-multilib )
1058 - if [[ ${CBUILD:-${CHOST}} == "${CHOST}" ]]; then
1059 - # we might be on x86_64-linux, but don't do cross-compile, so
1060 - # tell the host-compiler to really create 32bits (for stage1)
1061 - # (real x86-linux-gcc also accept -m32).
1062 - append-flags -m32
1063 - fi
1064 - ;;
1065 - esac
1066 -
1067 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
1068 - # least on Solaris, and AIX /bin/sh is ways too slow,
1069 - # so force it to use $BASH (that portage uses) - it can't be EPREFIX
1070 - # in case that doesn't exist yet
1071 - export CONFIG_SHELL="${CONFIG_SHELL:-${BASH}}"
1072 - toolchain_src_configure "${myconf[@]}"
1073 -}
1074
1075 diff --git a/sys-devel/gcc/gcc-7.4.0.ebuild b/sys-devel/gcc/gcc-7.4.0.ebuild
1076 deleted file mode 100644
1077 index bbd5ce8c5a..0000000000
1078 --- a/sys-devel/gcc/gcc-7.4.0.ebuild
1079 +++ /dev/null
1080 @@ -1,92 +0,0 @@
1081 -# Copyright 1999-2021 Gentoo Authors
1082 -# Distributed under the terms of the GNU General Public License v2
1083 -
1084 -EAPI="5"
1085 -
1086 -PATCH_VER="1.1"
1087 -CYGWINPORTS_GITREV="11fa2eec213324d64673ad41358f726f6523667f" # gcc-7.4.0-1
1088 -
1089 -inherit eutils toolchain flag-o-matic
1090 -
1091 -KEYWORDS="~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
1092 -
1093 -RDEPEND=""
1094 -DEPEND="${RDEPEND}
1095 - !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.13 ) )
1096 - kernel_linux? ( >=${CATEGORY}/binutils-2.20 )
1097 - kernel_Darwin? ( ${CATEGORY}/binutils-apple )"
1098 -
1099 -if [[ ${CATEGORY} != cross-* ]] ; then
1100 - PDEPEND="${PDEPEND} !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.13 ) )"
1101 -fi
1102 -
1103 -src_prepare() {
1104 - toolchain_src_prepare
1105 -
1106 - use vanilla && return 0
1107 -
1108 - # make sure 64-bits native targets don't screw up the linker paths
1109 - epatch "${FILESDIR}"/no-libs-for-startfile.patch
1110 - if use prefix; then
1111 - epatch "${FILESDIR}"/4.5.2/prefix-search-dirs.patch
1112 - # try /usr/lib32 in 32bit profile on x86_64-linux (needs
1113 - # --enable-multilib), but this does make sense in prefix only
1114 - epatch "${FILESDIR}"/${PN}-4.8.3-linux-x86-on-amd64.patch
1115 - fi
1116 -
1117 - # make it have correct install_names on Darwin
1118 - epatch "${FILESDIR}"/4.3.3/darwin-libgcc_s-installname.patch
1119 -}
1120 -
1121 -src_configure() {
1122 - local myconf=()
1123 - case ${CTARGET}:" ${USE} " in
1124 - powerpc*-darwin*)
1125 - # bug #381179
1126 - filter-flags "-mcpu=*" "-mtune=*"
1127 - # bug #657522
1128 - # A bug in configure checks whether -no-pie works, but the
1129 - # compiler doesn't pass -no-pie onto the linker if -fno-PIE
1130 - # isn't passed, so the configure check always finds -no-pie
1131 - # is accepted. (Likewise, when -fno-PIE is passed, the
1132 - # compiler passes -no_pie onto the linker.)
1133 - # Since our linker doesn't grok this, avoid above checks to
1134 - # be run
1135 - # NOTE: later ld64 does grok -no_pie, not -no-pie (as checked)
1136 - export gcc_cv_c_no_fpie=no
1137 - export gcc_cv_no_pie=no
1138 - ;;
1139 - *-solaris*)
1140 - # todo: some magic for native vs. GNU linking?
1141 - myconf+=( --with-gnu-ld --with-gnu-as --enable-largefile )
1142 - # Solaris 11 defines this in its headers, but that causes a
1143 - # mismatch whilst compiling, bug #657514
1144 - export ac_cv_func_aligned_alloc=no
1145 - export ac_cv_func_memalign=no
1146 - export ac_cv_func_posix_memalign=no
1147 - ;;
1148 - *-cygwin*)
1149 - # use built-in SSP with Cygwin 2.10
1150 - # FIXME: --disable-libssp should suffice in GCC 8
1151 - export gcc_cv_libc_provides_ssp=yes
1152 - ;;
1153 - i[34567]86-*-linux*:*" prefix "*)
1154 - # to allow the linux-x86-on-amd64.patch become useful, we need
1155 - # to enable multilib, even if there is just one multilib option.
1156 - myconf+=( --enable-multilib )
1157 - if [[ ${CBUILD:-${CHOST}} == "${CHOST}" ]]; then
1158 - # we might be on x86_64-linux, but don't do cross-compile, so
1159 - # tell the host-compiler to really create 32bits (for stage1)
1160 - # (real x86-linux-gcc also accept -m32).
1161 - append-flags -m32
1162 - fi
1163 - ;;
1164 - esac
1165 -
1166 - # Since GCC 4.1.2 some non-posix (?) /bin/sh compatible code is used, at
1167 - # least on Solaris, and AIX /bin/sh is way too slow,
1168 - # so force it to use $BASH (that portage uses) - it can't be EPREFIX
1169 - # in case that doesn't exist yet
1170 - export CONFIG_SHELL="${CONFIG_SHELL:-${BASH}}"
1171 - toolchain_src_configure "${myconf[@]}"
1172 -}
1173
1174 diff --git a/sys-devel/gcc/gcc-8.3.0.ebuild b/sys-devel/gcc/gcc-8.3.0.ebuild
1175 index 2da9f162cf..a721f4aef0 100644
1176 --- a/sys-devel/gcc/gcc-8.3.0.ebuild
1177 +++ b/sys-devel/gcc/gcc-8.3.0.ebuild
1178 @@ -1,7 +1,7 @@
1179 -# Copyright 1999-2020 Gentoo Authors
1180 +# Copyright 1999-2022 Gentoo Authors
1181 # Distributed under the terms of the GNU General Public License v2
1182
1183 -EAPI="5"
1184 +EAPI="7"
1185
1186 PATCH_VER="1.0"
1187 CYGWINPORTS_GITREV="0de6b2ae6b6577eb0891a7ca8d551bdfa79bf5e8" # gcc-8.3.0-1
1188
1189 diff --git a/sys-devel/gcc/gcc-9.2.0-r3.ebuild b/sys-devel/gcc/gcc-9.2.0-r3.ebuild
1190 index 6d345e0357..11485cf4fe 100644
1191 --- a/sys-devel/gcc/gcc-9.2.0-r3.ebuild
1192 +++ b/sys-devel/gcc/gcc-9.2.0-r3.ebuild
1193 @@ -1,7 +1,7 @@
1194 -# Copyright 1999-2020 Gentoo Authors
1195 +# Copyright 1999-2022 Gentoo Authors
1196 # Distributed under the terms of the GNU General Public License v2
1197
1198 -EAPI="6"
1199 +EAPI="7"
1200
1201 PATCH_VER="4"
1202
1203
1204 diff --git a/sys-devel/gcc/metadata.xml b/sys-devel/gcc/metadata.xml
1205 index 666aee2a93..b6eef667b0 100644
1206 --- a/sys-devel/gcc/metadata.xml
1207 +++ b/sys-devel/gcc/metadata.xml
1208 @@ -1,44 +1,34 @@
1209 <?xml version="1.0" encoding="UTF-8"?>
1210 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
1211 +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
1212 <pkgmetadata>
1213 - <maintainer type="project">
1214 - <email>toolchain@g.o</email>
1215 - <name>Gentoo Toolchain Project</name>
1216 - </maintainer>
1217 - <use>
1218 - <flag name="ada">Build the ADA language (GNAT) frontend</flag>
1219 - <flag name="awt">Useful only when building GCJ, this enables Abstract Window Toolkit
1220 - (AWT) peer support on top of GTK+</flag>
1221 - <flag name="cilk">Support the Cilk Plus language (C/C++ based languages for parallel programming)</flag>
1222 - <flag name="d">Enable support for the D programming language</flag>
1223 - <flag name="fixed-point">Enable fixed-point arithmetic support for MIPS targets
1224 - in gcc (Warning: significantly increases compile time!)</flag>
1225 - <flag name="gcj">Build the GCJ Java language frontend.</flag>
1226 - <flag name="go">Build the GCC Go language frontend.</flag>
1227 - <flag name="graphite">Add support for the framework for loop
1228 - optimizations based on a polyhedral intermediate representation</flag>
1229 - <flag name="jit">Enable libgccjit so other applications can embed gcc for Just-In-Time compilation.
1230 - This will slow down the compiler a bit as it forces all of the toolchain to be shared libs.</flag>
1231 - <flag name="libssp">Build SSP support into a dedicated library rather than use the
1232 - code in the C library (DO NOT ENABLE THIS IF YOU DON'T KNOW WHAT IT DOES)</flag>
1233 - <flag name="lto">Build using Link Time Optimizations (LTO)</flag>
1234 - <flag name="mpx">Enable support for Intel Memory Protection Extensions (MPX)</flag>
1235 - <flag name="nopie">Disable PIE support (NOT FOR GENERAL USE)</flag>
1236 - <flag name="nossp">Disable SSP support (NOT FOR GENERAL USE)</flag>
1237 - <flag name="nptl">Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually)</flag>
1238 - <flag name="objc">Build support for the Objective C code language</flag>
1239 - <flag name="objc++">Build support for the Objective C++ language</flag>
1240 - <flag name="objc-gc">Build support for the Objective C code language Garbage
1241 - Collector</flag>
1242 - <flag name="pgo">Build GCC using Profile Guided Optimization (PGO)</flag>
1243 - <flag name="sanitize">Build support for various sanitizer functions (ASAN/TSAN/etc...)</flag>
1244 - <flag name="ssp">Build packages with stack smashing protector on by default</flag>
1245 - <flag name="systemtap">enable systemtap static probe points</flag>
1246 - <flag name="valgrind">Enable valgrind annotations for gcc internals (useful for gcc debugging).</flag>
1247 - <flag name="vtv">Build support for virtual table verification (a C++ hardening feature)</flag>
1248 - </use>
1249 - <upstream>
1250 - <remote-id type="cpe">cpe:/a:gnu:gcc</remote-id>
1251 - <remote-id type="sourceforge">dgcc</remote-id>
1252 - </upstream>
1253 + <maintainer type="project">
1254 + <email>toolchain@g.o</email>
1255 + <name>Gentoo Toolchain Project</name>
1256 + </maintainer>
1257 + <use>
1258 + <flag name="ada">Build the ADA language (GNAT) frontend</flag>
1259 + <flag name="cet" restrict="&gt;=sys-devel/gcc-10">Enable support for Intel Control Flow Enforcement Technology (CET)</flag>
1260 + <flag name="d">Enable support for the D programming language</flag>
1261 + <flag name="fixed-point">Enable fixed-point arithmetic support for MIPS targets in gcc (Warning: significantly increases compile time!)</flag>
1262 + <flag name="go">Build the GCC Go language frontend.</flag>
1263 + <flag name="graphite">Add support for the framework for loop optimizations based on a polyhedral intermediate representation</flag>
1264 + <flag name="jit">Enable libgccjit so other applications can embed gcc for Just-In-Time compilation. This will slow down the compiler a bit as it forces all of the toolchain to be shared libs.</flag>
1265 + <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>
1266 + <flag name="lto">Build using Link Time Optimizations (LTO)</flag>
1267 + <flag name="mpx">Enable support for Intel Memory Protection Extensions (MPX)</flag>
1268 + <flag name="nptl">Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually)</flag>
1269 + <flag name="objc">Build support for the Objective C code language</flag>
1270 + <flag name="objc++">Build support for the Objective C++ language</flag>
1271 + <flag name="objc-gc">Build support for the Objective C code language Garbage Collector</flag>
1272 + <flag name="pgo">Build GCC using Profile Guided Optimization (PGO)</flag>
1273 + <flag name="sanitize">Build support for various sanitizer functions (ASAN/TSAN/etc...)</flag>
1274 + <flag name="ssp">Build packages with stack smashing protector on by default</flag>
1275 + <flag name="systemtap">enable systemtap static probe points</flag>
1276 + <flag name="valgrind">Enable valgrind annotations for gcc internals (useful for gcc debugging).</flag>
1277 + <flag name="vtv">Build support for virtual table verification (a C++ hardening feature)</flag>
1278 + </use>
1279 + <upstream>
1280 + <remote-id type="cpe">cpe:/a:gnu:gcc</remote-id>
1281 + <remote-id type="sourceforge">dgcc</remote-id>
1282 + </upstream>
1283 </pkgmetadata>