diff options
Diffstat (limited to 'sys-devel/gcc')
49 files changed, 1637 insertions, 895 deletions
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index 74f6ad2c8b42..2dcf5272ed0c 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -1,41 +1,36 @@ -DIST gcc-10-20211126.tar.xz 71674848 BLAKE2B 81f4a572e973db7a3701601e66ea58c8e535a55d4d4ac164de00bdb06f7f265585f45d46171cf40d42ebcd3fb02ac81b643398c560912698eb6c008ac6e09518 SHA512 db887184c649ebeede5a1b9f13c00fe425012434cb93ec960c3ca50c0bcdeab04a1cc13b20de21b940e5d6a09c3b1c7fc415110a0e990ec1d938627bf97b9342 -DIST gcc-10-20220623.tar.xz 71747668 BLAKE2B 3849182a188f4a3b5f19e66008a23ab50ff5bf933d28254432d62ce880b7921124302658553c7bc1e8756c430d11b5d577685d1d70b9851b714d1e15b1d7b4ac SHA512 294093cdd0949238e903f91c4ed28b2fd063d25aa6aa7947acdb318350c582e43d15b98a78756da692d0625c6d190c67b62f215ac865594712d6f8efe298831b -DIST gcc-10-20220630.tar.xz 71753264 BLAKE2B 19179c6ff805dd280835176955995e6a402705d69120023e3b472b4290b29babc9184a07e35c0e780aed6f4b6505c9b8e9c0fd020d251755f73c8f802c65947d SHA512 8c5f9c3a8c8f9b0d3b8236b41fb6cc1facc01bd3c1b3882a68f61ed7e9bb84ac2a478f52ac17e4a7af488970aa5935faa0635158b51edffeb2784d1dbf0407cf -DIST gcc-10.3.0-musl-patches-1.tar.bz2 2999 BLAKE2B 3e36bbf2f93fdce15e20f807fa262f7a7abbde85b6f6b4e1383f6eccd8a53d876687d56cde83a80cde8a50e15bec407a1212aa0c85520892563e3d5ef7aaca98 SHA512 21483912a7b152f27db82d837a4cf91f2552d5fe238702aeca0c0dd8c7d3695bc70d8794c94a19106df28e053baf14c38433ca8e38e849082b76273cb51f2384 -DIST gcc-10.3.0-patches-3.tar.bz2 18935 BLAKE2B 13eaf1e055b5b63069aed1575ed93f6bc822b5e3f2181ddfc88f4e7ff801f58997cd131b2efd79b90469b1f861db994feb2adcaecacf165442078f76e233fd9a SHA512 c3d6a6f32863cc0ff7c877314ff0c00a892e473f64d16b82d46b4a77aa97c3e7a575492d27f0d423acb2621c86c9a49bca0e26e45bda9e697495444fcac85084 -DIST gcc-10.3.0.tar.xz 76692288 BLAKE2B ac7898f5eb8a7c5f151a526d1bb38913a68b50a65e4d010ac09fa20b6c801c671c790d780f23ccb8e4ecdfc686f4aa588082ccc9eb5c80c7b0e30788f824c1eb SHA512 2b2dd7453d48a398c29eaebd1422b70341001b8c90a62aee51e83344e7fdd8a8e45f82a4a9165bd7edc76dada912c932f4b6632c5636760fec4c5d7e402b3f86 -DIST gcc-10.4.0-musl-patches-1.tar.xz 3808 BLAKE2B 804d1fcc451dcd03be71240dd498ec2d179869571d44012967c48dccf5a478dd8c55000a964a80fdd5584d739a777dee1c83241cffce514ef002df2572854a67 SHA512 83e4a9c0f7062baf0c606a2bcc56a818494991403d7577dea65f04bbc25bdb786a5889b80d45d80e7f4be07c1aef786802cbfcfafd1a17ec255a2d4e93a77570 -DIST gcc-10.4.0-patches-0.tar.bz2 15231 BLAKE2B f64a2e7f317acf9416da69c129ea869116be2780828f9d3cda59f7ea8d39634df7f0347f745275bb167f95aae2a3b8e97ec7c78f775d9002718dd67cb9429f68 SHA512 d1497930ccf4d6ee8700faeb676945e65b3aa2ba3a580a3564575fad1590ad076741f2ecad778ab48d0c4e8ed7723b84b0a660cb67cc4530495691702159a43a -DIST gcc-10.4.0-patches-1.tar.xz 14392 BLAKE2B 76cc16bb611f1ac2020f0f430fc3f038e8ad29827e000b7aeca2a3143e91a674dee18b9530451fe37110c20dd3548ece387c323b460199e911e8195fc88eddf4 SHA512 f574ad66025eccb824e5901ef14f38268fc1fb26d9fc4fc9d04c8652c7bcee78ea196bdda88dbf891f167a6d7d75a74fb5776592dc25971c5902ba9d5d721266 -DIST gcc-10.4.0-patches-2.tar.xz 15000 BLAKE2B 59a61f7de4b6d2338a8b4fbc88a8e55838d5fdce1bd906b798540839a7efca9b97024779b515df6a7673ee6908540834bc1f58188ed9ef311c51e1f351ed003e SHA512 e1c8f0bf9d64db3f84a6eab0f41ee848643a67ba6ab57df7a8267139928f6e292d95c5b4ed865ff8d9a80028bb07cec714d56438b97004cd2a27f111f1f336da -DIST gcc-10.4.0.tar.xz 75018092 BLAKE2B ec1169025d3896b70ab80a4b8ce5040763a95529fc7e120c6bc3a3eb1db5cf938ebde347c1e595a8ff7d4081e79ded6252702d7a1a09648449b7a0783188e434 SHA512 440c08ca746da450d9a1b35e8fd2305cb27e7e6987cd9d0f7d375f3b1fc9e4b0bd7acb3cd7bf795e72fcbead59cdef5b6c152862f5d35cd9fbfe6902101ce648 -DIST gcc-11-20220115.tar.xz 75676672 BLAKE2B 12171fd97731dbca67f13cc2a3a3a3989c22d628b289cbd3d46080f77a8d951f15c1e54e83a2e62ab41b69221f9784e970799a11a9ed5b224a77ba4b1b081f07 SHA512 7455b3b29d3c64df9123afef82faf922d97e08a3ea30fbc2d9286d4f6ed2fafbfc0f9d94ae1b9eee45329e95a27bd642b3aa679d83a0c27a3e30967d49e0728c -DIST gcc-11-20220624.tar.xz 75765436 BLAKE2B 642bbda212f31344822ec90bce1422146515b153ddb306c5fd1bcf25be25fea7ed5bc1aa6f5987755969e73af5de1484fb79a805e87428bcfa0b13257b9c35df SHA512 736a71de166851816914561bfbe7c00110b32f8b7e1666176babdfcfbdef4410ba07c8e2d912da2830fa14c6732f9ca555cae127481b07a85f7e689d87f9d509 -DIST gcc-11-20220701.tar.xz 75776176 BLAKE2B 958ba928ba6094e947990ef834f397d94a1f2bb0319aca77cab2d53c1eb12fce8b03d8e1b1fecc0be39f5154fb10126faf5667d6c345e65fb932a3680b55f8dd SHA512 ca378e8cb427c098099192aaa9441a2e85acc38f9a7309d56ef252e7434f7869df8f2af932f0ddc2d3c9e44341092ef05f284fed6a21b56c7c93faff68949709 -DIST gcc-11.2.0-musl-patches-1.tar.bz2 2999 BLAKE2B 3e36bbf2f93fdce15e20f807fa262f7a7abbde85b6f6b4e1383f6eccd8a53d876687d56cde83a80cde8a50e15bec407a1212aa0c85520892563e3d5ef7aaca98 SHA512 21483912a7b152f27db82d837a4cf91f2552d5fe238702aeca0c0dd8c7d3695bc70d8794c94a19106df28e053baf14c38433ca8e38e849082b76273cb51f2384 -DIST gcc-11.2.0-patches-1.tar.bz2 11537 BLAKE2B 9dd791ada244c9b70b8b99f9f305a688c248134715ed1b26d406e53b114983faae6873cdc521497164388d24d5f61c199e98df146bc02f5578e877295bcf5c82 SHA512 6539efc60c656d0798a5896dc1b944ed69914b815102c7a1c10bdba4ef935abd326b01309f38316e121f1ed90ceb2abcaf65df6af116892daad829ac2623cefc -DIST gcc-11.2.0.tar.xz 80888824 BLAKE2B 69b61234ac436edfea2933df68c434a2ce7aa4454ef4da573e82587e1a42dc420189e949cfdadaf4cb37fc0de9674822210a95b77ff03aca0dbedfe67df19cc6 SHA512 d53a0a966230895c54f01aea38696f818817b505f1e2bfa65e508753fcd01b2aedb4a61434f41f3a2ddbbd9f41384b96153c684ded3f0fa97c82758d9de5c7cf -DIST gcc-11.3.0-musl-patches-1.tar.bz2 3997 BLAKE2B 5ca064cc78b067f4a7822fa0341c37ae03c8024f871d2e274e481a583afa96c36e291be93fbdd633f203260ae2ea9ac1d45f666d134bac75bc9a715a369d7374 SHA512 0ab239c66cf62a737266377c19b8dda6af6df56380f6731c2c17f3e82778e7e023a68d31728490eea3ad946f4b71d4cab363a75548f74b4b7f653972469d9e91 -DIST gcc-11.3.0-patches-4.tar.bz2 14030 BLAKE2B cdd555f329c7c0b993cd3527489681bfcc2162db0997611b66337e6b287356761c7deccd3b9f9bb8980a32df0574017a52c5e445e24db746757d87ffccb1ea89 SHA512 cb227599d01734ae9f9fc7ae2c8dd4cae1da80d6ab398ec6f112535239ac76ce8e91fbac88e19c2f75cb08ab75f966c1d1ad4af80ede67e953fbbafc7baefa58 -DIST gcc-11.3.0-patches-5.tar.bz2 14575 BLAKE2B 55ff9558f3ffe89d511663f12477e72ed1bc29d4fa8f1bc58b9c52d28838716ba9b8291ede7b86e28c3bee0633c34763f611779fe46531bd75d8aa7661b46118 SHA512 65bf4c0d1d43923298efd527a5f4da2a10d88a383d2eef72e6a25ce37964ddaf27c49545915228347e8320f905afcdfe1275d98e8458993a7229425f74ae41bd -DIST gcc-11.3.0.tar.xz 81141364 BLAKE2B 7e562d25446ca4ab9fe8cdb714866f66aba3744d78bf84f31bfb097c1a981e4c7f990cb1e6bcfec5ae6671836a4984e2b70eb8fed81dcef5e244f88da8623469 SHA512 f0be5ad705c73b84477128a69c047f57dd47002f375eb60e1e842e08cf2009a509e92152bca345823926d550b7395ae6d4de7db51d1ee371c2dc37313881fca7 -DIST gcc-11.4.0-musl-patches-0.tar.xz 3844 BLAKE2B f3f1be6718e3cf08e553a1a2319a85e13368279849f6f3ab89ad7abe505316afacf5084846c0cb133bdcb5c918244644242c194e6ce55455a26e67b3983d73ef SHA512 a81db52d21de364137461dcff7e1af696df4a02fa26452f90439ae4af14ccbffe68eb4ee93ae56257490ab8aa36b4bff37c4e1f2cf4dd4624b3a6fb4cb50b7ac -DIST gcc-11.4.0-patches-0.tar.xz 13404 BLAKE2B a384e6604befe306e6ee444b886c1aed1ef469299f5c7903da8314d73fd06463fb4f24be24d3d03df4883eaa8eb24beb477d881c5a1886d5913fee110b11a35c SHA512 f46f971f87deceaa8bc60eaa815aa1625f1cae01d2cccaeb6ff87f518198a756a1f7b496bd5bad004d713a4e8e6138f0b9a832e4df344fcb3009def840f9f6b9 -DIST gcc-11.4.0-patches-1.tar.xz 13956 BLAKE2B ff6ee1b81ad214e74a49c00b15767086c6b12b1566b42c4fb88778bfae3a8e319e42ffbcd8aa7f717b6f32bd966dc0da08be3a57a27992d9b90368622e7e2ff0 SHA512 3b9b641bb00b85fa88c87d8923ebcfb844125ff6149b998c565006173f4d68b0ccf8c1fec2c7bac0684584c61176346cee7373b165587a092bcd92ccb96c61db -DIST gcc-12-20220528.tar.xz 79096228 BLAKE2B 9c06ce85c6302bd43e06d35d5d5cc9e81268d368484bd60af707e6dbbe791d85ec2a177fe7deae1379d313269fcaea2ff5245e20e54ca667f452c27efb738c13 SHA512 498be61fcae7e4ec55e1f270e1d02fadfe9069692afab6442dac0b7ab480ad7112121f4728a9f99c7868e7373b2c770ad4833a3b4a1a8a43b3417e79f286c28c -DIST gcc-12-20220625.tar.xz 79092788 BLAKE2B 491da523abc0a63bbceaa6c76b251a5b6c224e1684b5db4e6155fdcab4b0d8d505376d30a13e1b0331f37558aac311477bbb3179b63da850acae436b642c9ee1 SHA512 0527c6d69cd53e8aba3464746b7989e3128af74818864a2e5b4be66313203d32a84201440a254da8de72842b0ebbbccf1ec14c6a121cb09f9454358b0a37b8f9 -DIST gcc-12-20220702.tar.xz 79091468 BLAKE2B a15363dbab5f331b2e5ee6362ef6701307513bca211cacdee2bf17cf50cf88a019110c2b2412939b614c3346b5ec3823ee5b1bca19db526693149a163e5b98fe SHA512 e5ab44e79f641ace6d9d77ffb176f3309d35e8f36b6bdd42f09e29fcc82766933e0fb8f86be84bf7419fe9918c554544d34c448b706ec0cb052e738e5594683c -DIST gcc-12.0.0-musl-patches-4.tar.xz 4456 BLAKE2B 80ae755b52c31d57eb737b3ec5e70d96e7e20f6720664cd94573b1c6cd079a0e29f73277c27b2f2570706da5239006dabd44f834824c515f6615ed5dc39c273f SHA512 cf917f40133d2b8090e98880e6c87d38129f44bcb454f4d707ef57967635a6fb571d7b85b7cb854421bc9aa88e48767a47aad99c767f9415899f97922d61c497 -DIST gcc-12.0.0-patches-5.tar.xz 9820 BLAKE2B cdebb6fa59e594f95cc4b028d329c0fed3ffa1731a4ca1a2954b7760f4a674e773cfe5888fb2c63a619d5d80ec464d98a94870bfe2e3ea34370afce7f67526bb SHA512 a9c27b0188fd842e88d6a831cdf1f9c6d0cada4ec260b5f7e67f3d8fe0f439fb0d2c82469de9fecebd657043babf3e63a24ee53776be2617bb90e1d3dd3f521e -DIST gcc-12.1.0-musl-patches-4.tar.xz 4448 BLAKE2B ddad7bccea7474a0552e069df25e66b4af68470da655aaf7669c2ceca7d0588cebb171e8a949c8935eeadff23af4d3de41d44245c06d48044cfc1d1fadc6540a SHA512 bb3b9e4a81efd2d0ceb405220a9c15453d780d8bc01ed5ebf4837a318e0f8ad8cc36d6ad3f2eed5051bb6dc82f223d8b61321b8f602890a770eefd69c0c144b9 -DIST gcc-12.1.0-musl-patches-5.tar.xz 4656 BLAKE2B b8dead8e796df2563cc7bfd4ad95f71f7cfbd51bc0d2bccb7479d2856cc3731b55f5e23b548c5f5f37790aae269815bbba6ee6596c5183847eed0bb1878bf340 SHA512 480e3e34e3f7e7ae27319fa9c51913125b2d4f41b0994c6df4c5c6f008d3ffdacbe059cd1ee643c2b9248a0c69db90867a076b0456c8d6649a1a7e9b62ff6800 -DIST gcc-12.1.0-musl-patches-6.tar.xz 3840 BLAKE2B 5d8ce4dcebd081fae485d3e1367c06c185e07c110b0cfe9598b71209c55adf96a26e198ab91fb3dfb33ddb2d8abd211a518dd74f5113cae1e3a4f90db32bb746 SHA512 b666ac0e9bef1b74dc5cc616ddb13dc40d9ecd1f5ae48b877cc1003356952a9afd800327d4210c732deb94554403d9b8730d2037bec380e413fc9a6cb59ecf23 -DIST gcc-12.1.0-patches-7.tar.xz 11584 BLAKE2B 4487726f8225d6bb2fde91fce8343c34ebece8cca08b258115a55b0f0c594e3a205efe26738c2b06cb8c6ea9d13b451514e073bb3a94d664a56120d9826515df SHA512 4882754d2f55c8144a5af4bcfbc1ee7802f08fc5acca96151cc6323a98e94b9246a69e067bcbf92dcdb8021499b8e1197cd7bd682876aca3e6f1f63a405c1dae -DIST gcc-12.1.0-patches-8.tar.xz 12020 BLAKE2B 6138ef4d76a682ecfd05ba7c80d8f5db791ea24420d944b7f55b8aa55e7a42d02c0d20d0c25ebba92cdf85fdeb3dad7c7e2676d4a39197862bb90cfc9151ce48 SHA512 d2784967ca580bdc9308bc4b2449eb23601aab46bfcca10f4e7db2267e04950e4d9ffe4d0091fb916149a4982786c80959a069e0da07638bfdcf9d5b8926627b -DIST gcc-12.1.0-patches-9.tar.xz 12536 BLAKE2B ceb045b2a5c5a2a3047d73296fa1057421ef58c7f793d1f031f43dbd1a6faf49bdf1956e96a4f8e34c4d3fde2c26fcc9b146c223d8b1b3e1f944c2ec8574b786 SHA512 b899ec2d6da65df0f32838be3c89dbb1dc6b423133aa5121635547a1aa18b5d52b920e62522143682c0818baf185ebacb75ab84383ef0ad9768ba567807da5f4 -DIST gcc-12.1.0.tar.xz 82701928 BLAKE2B dca5df8fea680dbeda721742cce5c97de7eb4be490a32a158e06b88e2b9dd092150b7cfe490bb69e48e2f75d8bba231c8a54cd46b48ddcdc01bf9553ab57019d SHA512 2121d295292814a6761edf1fba08c5f633ebe16f52b80e7b73a91050e71e1d2ed98bf17eebad263e191879561c02b48906c53faa4c4670c486a26fc75df23900 -DIST gcc-13-20220619.tar.xz 79328496 BLAKE2B 8c5104870593803b5cc0df02d671522f576bb56ad957e453d9f2bbc7995ccff2a4549ffef5f3beef15f2b9db6b1dc11b1993e2e5fa09feb9a5f6585be315f3f9 SHA512 69dfaf4a54a73b22127dd5167dd7d92e26e33e1bbf45507b05c97342db16264f96d78764745e41ac4ecade989789ac186364dcf9d13d765a5a5e7326469a9852 -DIST gcc-8.5.0-patches-2.tar.bz2 16921 BLAKE2B 619a47f74edf05fa01c9de59d0ff7abb027a01cf0bdec91ac41046166192f4eae561684136c4a6a5e077f64754bb5b0710905129f31b0def21d88f92e6bba7fb SHA512 b6095d4570895e2c4dd58fed5756194aea27391b813e5e2de42b2749cb318c4bea2087eb0ff92c70e7f98ae4482c49d476db57be83d7beb19fd462aa61714ab2 +DIST gcc-10.5.0-musl-patches-2.tar.xz 3452 BLAKE2B 5387e516d07d81477b3f39b8b3bd986bf861d32cd25dc5481c97bd3620d00c918c5661e86857f66dbf28a655401a53e43417f638c443e44cbfdbf5e950caac4d SHA512 86f2ce31cc4fc4fb5a6043fb527bf822d895e1a6220652024f78a1cbd5a962edb6be8dc5f43c32053e075f39bb2350ea8f14e7d57e0473dd2933a7b44676bde5 +DIST gcc-10.5.0-patches-6.tar.xz 18208 BLAKE2B 4cac3340108fb378c76ad62b728429f3c97f348d178744e7536575f3576ca8aa682b878b7df3b1c162dccae64a3cb56c66d8d60eae323e1ece2de4278084fdbd SHA512 9d6c84325fbc118cee01347468ce729c278e5b026b16da945fe54050726e26f86a46ee7b71a01a47cf927b70bfcce459c49a6bc4fb93dcfaa047c76d4c5bc5bc +DIST gcc-10.5.0.tar.xz 77846412 BLAKE2B 9b71761f4015649514677784443886e59733ac3845f7dfaa4343f46327d36c08c403c444b9e492b870ac0b3f2e3568f972b7700a0ef05a497fb4066079b3143b SHA512 d86dbc18b978771531f4039465e7eb7c19845bf607dc513c97abf8e45ffe1086a99d98f83dfb7b37204af22431574186de9d5ff80c8c3c3a98dbe3983195bffd +DIST gcc-11-20240111.tar.xz 76240620 BLAKE2B dcf3b2493ca6ba1a9cd0137186cfbf1b96296ff9c5625e40ec7b89e5903b07dc151b61ad54b885fc57ccc02214e2cfa7b9249cbd755ac2554c6ca0008f0704d8 SHA512 aaed094cb6dd99166e0ec59886014108574ddab52701581f0f8e7f0abb966320d01f1bce6ff646170618ca7c2819d20523a23615f20114dbe412de43b937caf4 +DIST gcc-11-20240501.tar.xz 76267628 BLAKE2B 31674f1fbaacac3bc8d4f0553b42569128c978b7153eb867387ff2cedd11ba29e2877a66eefbb41b93745e9ff3da7db18c00aacff5766a34b020cb82252da3a4 SHA512 b4fd43b02ddf60dd933f86813cf4c5e2abf4d3344adcffc4166ad2463b2aa37603eb85df642e952a1c72a6356fc41d80567096ddc4e46d4b4589ade34ae77b2d +DIST gcc-11-20240508.tar.xz 76272620 BLAKE2B eef6352309b8faf0c6749c3239b0507fe5cb02904059bffa56fec72975b90c6bfbc42d7301fde20fd162df99763b64f40689a4dde7a9d6ec42c363791f1f894c SHA512 4a6ae0789f753efd4cde2394d489ac0dce83c057fe93ae08de70fe36ee3393d86f9a3bfaa5f1cb113cd6031bb81fcf883523052eed00daf464fe1511eb23c5b9 +DIST gcc-11-20240515.tar.xz 76271444 BLAKE2B cf7844a31f74ba64240afcab3b4a38aa7e57bc7844b4c9a8f37b0aed59807346e53bd387c0111eba5cc0e461d7afdd89532cf682a43e5984be7dae3ec0df70cd SHA512 e74b029cc62f7d9a59b9fe3cb18ab8f17dd583aee786ca7f264dab3a98992b6d3e6a194ebd8b58e0bac960142ce76e5317990695fda8b08629fed82864d8964b +DIST gcc-11.4.0-musl-patches-2.tar.xz 4308 BLAKE2B a2335e155fc57816fed822a648e0eaefafcba9d04e1ad0fd7baeea5a694ab6f5e3c1678cb406f2a1bd17bab25cb01699d032713a1ccf337948dfda2093844607 SHA512 17b84f907cb1bd763873655e6f35fd3ed55a40b602b70a626f04f83b4cc89c6261db1661de78d4d969187a8c56e9f6305b742515a3836b962248a21df0df5d0c +DIST gcc-11.4.0-patches-12.tar.xz 13824 BLAKE2B e4df9e0dc9512882022aaf325ebf65c540169454c91dd31f913c6f57f6eb291c79ae919671b53db1549799d4a70c09298bf45ed82ad05eb1f961443cc958369d SHA512 87fed0c3f8e28c9f702443db58350bb615110b27ebe334b5de2ea60678e2548c56cd75cffade210d69634e2ac0a9311f5100ddb45d97645aa76d5688bc421a61 +DIST gcc-12-20240209.tar.xz 79824868 BLAKE2B 1ae5a646da470f06648c4766c77475ceb287c5f6647d5102f1aef6590f973233d5e7f83b5e0241488d49dba59dd605c211938379e68a393a2dccb3834103ae4b SHA512 9f9a04f4477f41bb2a5662aedef2af75b039de50c2dc99310e504e6080cb7aae06a1255337ea2e563975cb108ddc6766adbbaf4e3d5d5712801d7ba9a5209dbd +DIST gcc-12-20240502.tar.xz 79851984 BLAKE2B e3ed4f4fb20ce2ed421fadd40dfd1c6831759228925002146c316683cd0aef47792f433dc9ab120fb79e2afa2aa83cbf68f6b82e97615cac500322d4f0d1cce9 SHA512 c46e6b00f65d96afc65ce6cc9f7591ff81d5789aff9f49fc6fed96047fe27e24a8a103f0b96485e4a717600aeb9b45933ccbb2191eb087275fc1350629c9b842 +DIST gcc-12-20240509.tar.xz 79847124 BLAKE2B 106cabbf4eddacf637d733ff1b0586a4efcf43b3388f923461d9e255c5ed35ec51ca1cf5956e33d45d5251735007fc54a072e2ae1845ea5c3567806f84ce01f1 SHA512 1757286976c845adf83970332233293495b16e767e09e736a2648b6a8adfa56b4e4dd63d3a1b2db7e04eadc2d32b0763e986543bf037c3260ce6757085d0d487 +DIST gcc-12.3.0-musl-patches-1.tar.xz 3572 BLAKE2B c7bf65f7c9ea8023ddaac821ee2b778622fa310ac72a72b2f7032494a8f304eac86217f9204622e6c21aaef9952bece0d09bc126facd4f42b602927909815ab5 SHA512 babc279fea2c1fd4c018815f2f5630214fd46015ce9f365c28af242681d51818eaca30ce298eddcab1eed5ac5f2759e2b47b2335afab9d722b4469a6d4fec326 +DIST gcc-12.3.0-patches-3.tar.xz 14852 BLAKE2B 7a5f1f43063b15f424099afd72096212fbbbc5151ff01f2de15dfb6e7cf274981c8cfaedba9ef61576c9096fb172fc550a7deb5cd7d9366fd249fd5dd3951f76 SHA512 aa89e4c2ae02f4fb42229ad5167f2eaa3a8fae51118645bf07199fe2124b9c83948590662b053d08002ef709fa870ea88315fd4ccbe4441a74e9cb62edcb82fb +DIST gcc-13-20240210.tar.xz 84354416 BLAKE2B 5807623d3f7dd751b6dfe164cfd50d57b2f93485c23c3c2228a4a846a9a94cdad52a5e6f2806e5e7ee2a7b5526386ebdb339c44c7ea023d69f8652088a1b114d SHA512 14a01ced7ac2bfd9fc93de4e3819b4d0823fbe129d3f1faabeb707e9e3e2613b4173321b58b3648a7250e3b7ff5d94edfee60e6c38682f31a1f7b57b1c01433f +DIST gcc-13-20240503.tar.xz 84417232 BLAKE2B 4024852c3252667054e6086263b2a0e21dfa1e56a7adf4edb2fee4841dc2b41eb3f02dee7b15c5de3a1ac7c438929da4ca584cab07724086f6eb315a331c4a44 SHA512 32b74972ba94d1016e052eb7c7dc976b32d679e40aeafb406bbbc69d34ade3fe0f35d8941ef678eaf0bb33aea1aaba8fbce9122733b12920a470763a18aa6514 +DIST gcc-13-20240510.tar.xz 84434880 BLAKE2B 5e4287c90dc7af4b8186f7a8766f2777aade3d6c863ee56c7b87b91f0805a73d1a16c6a2243816f4f5ab17583220bcd323bc123770937e43bd603318f7aa17e9 SHA512 cd438ec026a107ee41314d87e994e722cb332604cb02878d02eae3732c38c0a39494fed05af4276bf6de902cb6600eba55bfc650fc72fb187dfd15186e46c1f8 +DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69 +DIST gcc-13.2.0-patches-14.tar.xz 46928 BLAKE2B fce23bc5315f35b04a4976550c4b44578944a1b17e40c7553351eeb8a1ef0f3a2538da5a5e1ae6f37b784ff11bbd8a44b8f6eec542be63e34d984dee69e1cd81 SHA512 d7d52bb2915fd89c06b0134bede8db939cadbb1f2dcddf923bee2c3f9f577ff9e5e986b60420d892539edf82867a0d1bd635807814bc618b06a2b37cdaca893a +DIST gcc-13.2.0-patches-15.tar.xz 47052 BLAKE2B f145341813d6baf9cbcc3e8421c7f427148503d2aeddd6a2eaac1ad3d470a818292392861542a7915d8b0f2f9b3255603f394b2e6833141658fc035bcd2b5366 SHA512 c89a3fccd944f03d25e076a967c3b220803ee9a6fbedec1daf2c20f629dd6162ce6be4f259522bd193169f0e8307daa9895b5d8581cf975ee086e5abfd675e34 +DIST gcc-13.2.0-patches-16.tar.xz 44792 BLAKE2B 0b6b584d68e69685638695596b780249ca0119ad362747a82d886fd10f77ceb05d02e033e906a090c67f44b1977f40df6a95206d81a32dd15e2f5413c6c92496 SHA512 324d9e63d16c35d55edde20de049162c01b0d487b4548d06c49f0da04a761ec255bc5e020cc2e7f60d12f5d129768afdcf7c86a59126f71f388ab375c34be6de +DIST gcc-13.3.0-RC-20240514.tar.xz 87893144 BLAKE2B 2b46b464a7313c74ee4789804edef24e4edf9554696920b990ce6e7887e056672970b79dc6343c939617bcdcc724bf960313025759269d80c53f9c500ed51b57 SHA512 1ba0b3d3b0d9787ff3c32a491188c2b8a823b983e01a60b9d9c1ee2c6a83e09d09a275168c7eab7153637d1f3b1be415db3ee3ea6fcc22b6d458e4333a396693 +DIST gcc-14-20240511.tar.xz 88010940 BLAKE2B 98df36154ed111af8a0eed465eeda72145eb7df06dc6dbccb0918ab3fd583d1af46b87322f0b6113b41e89af64b3023ec76037c942aa7e08e5ec5a8e0f9cd731 SHA512 c0e9cdd687859c5531d9a17b148873b5a5c7e4e3495f5f96b0c4baefc7989e40df2118b16c0ec26a9ec968584be7a39480aad995e0eb40a046608df905834d82 +DIST gcc-14.1.0-musl-patches-1.tar.xz 3600 BLAKE2B 4cd920b7ca1f122cae806707564d8e45bfd48e78c88788a12a301f6068b5a5f335d8885e67479ac536c66aeaa81f2ecb7240ae56e9fc821a7246ab66b453711f SHA512 61c48d90a55dfc2129d96aee69d939d6a89f6407f69f7bd12c1a619f28989f471fd219d731958f8e62b0fd650c32300f0ad8dc06d5df23d9fc8c1a77fe210c25 +DIST gcc-14.1.0-patches-1.tar.xz 11584 BLAKE2B d483f4e3324acdc26b9837028d5e20ad0cdcf3ef4bcc78a6902d63ceebc7e5ff70c8163f6a8c8e36405df47c59dd2df506147c53ce51a8ec73494e65b5902647 SHA512 3d7aea113b594d1896c93e9e6be85f467488fa75de2800ed76eab2f87cef26829b235d1f361b187e38cf13b0fb9518cd4431c3106ec1e49d0f744e7eb703eaa0 +DIST gcc-14.1.0.tar.xz 92265736 BLAKE2B 7efd6574b8bca081de6e31480ec0565c6d7fb773383e8e1fdcc17e35bba2bf44b3f4f995cdbcccd001689926e96a6563ef3d099902fe3b37ab09dcf553ab0596 SHA512 e9e224f2b26646fcf038d28dfa08b94c623bc57941f99894a321d01c600f7c68aff6b8837fd25e73e540de1f8de5606e98694a62cdcdfb525ce768b3ef6879ea +DIST gcc-15-20240428.tar.xz 87999896 BLAKE2B 83e53e5a93166c741bd61f1642539823f9eef5859f89c85493cfe0be412251950c07b3704e8a983c61e00fd4b0e0027f7333867f9b4245ba45d6f606ce56953d SHA512 69aedb59fd4d9ec59b7a71098bcf330ec0515e7a51e7510d237e086e7c042526aaa52a702783b6121ee7c9133345c8234d5d2fcd89459d7ae8a1a1e09c42cce8 +DIST gcc-15-20240505.tar.xz 88033016 BLAKE2B ba6469602b31024e9d8025159d3595edac6060a2e406c9bf1db1317badddc7fa3a1c9b3b13448fda86c1db1d6ad0fc9a9151611ef944fe6521996d9d62980c33 SHA512 8a15f0e4335aaa0685cfb84943ea0a53c279b92f01736d819f42bcc98e51b2a0ee28f64b08a30da14b08f5ab4ff8ae7785e0ab28e782138b6d9726b8667b89ba +DIST gcc-15-20240512.tar.xz 88076192 BLAKE2B 43f7ffbe0e7a101040ac8eda9ae0b877cc0ceee84e4b4a3f630023cb2d70893390b0a5d2cb83a0b192f3ece89cb4a88902d84178c91ac69d27f0631e4508dc25 SHA512 f4bb318933a2646cccb0db24ba0d943b5e89982cbf132db3a2124a2c621533791ba6561308cd3979a7135c2e4521f3a423614fede47eb9dd073b3501cf3bad09 +DIST gcc-15.0.0-musl-patches-1.tar.xz 3596 BLAKE2B 48fddc723ec8282cc2704c795a50fb37a46738a555151e0430180dda61d039fe96b29a6c3e8a543386d69690302bf46dfc89aad572082b7e47c928c0ccefdeb0 SHA512 e43284d02e25b77b911ce90d57520897751e86c631bdd6beb7d2e4429000156801b8c11bd9a737ec11bc966812f13ae44b88c1893645f8e6c6f8dfddc636ec39 +DIST gcc-15.0.0-patches-1.tar.xz 11588 BLAKE2B 0623914dcf3ee0d44c729776cebbecfe92b256039a48c91e3fc16a27254a9c40436a1b6ea7fa9285914b153af861ea98ab845515169af204eeea0243c890a652 SHA512 7d3bcb1adcfa79c1672737125539fc0583f9c74eb8da0301ea0e441c68afeb7e1dbcbdffbf18e03b2515b4f23822a39e339298cf88ea94b93f5fc22b497cd545 +DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 -DIST gcc-9.4.0-patches-1.tar.bz2 14012 BLAKE2B d5fbfd73d9c3a5b66be5b124d981fe5a7468363c83784989a50731f87931435f4b6302e4c20a64b20680581ed40005eff7bdd5855526a093f73a04c3c1ddab31 SHA512 b84884c7d2197cb14229d3321b98cd66c783cf9ebf7e5d1b1186e6cf32ee9e47d004ebad26118f9c848f9bc0a3783ceb23d9b65101d98c3bfa99874e66ee7cbc +DIST gcc-9.5.0-patches-2.tar.xz 14324 BLAKE2B 1d3bf3e673108ad2fcdcb86daefb4603d1c9f6aa815e34d1591054d466b76d6f50cce124ab4760528c4951ea16eb00888a3e6485417f81ebf250548732df4a8e SHA512 a6d6f650aaf0bd193a17ac279649f0544a282cea295824384c59341c3000eac4b574b60e00dd427585d928f9768166abf85168b47772132790ad98854acacbbf DIST gcc-9.5.0.tar.xz 72462752 BLAKE2B 69e39314ee6bb46e3be491ba9c3cbc4914cb716f732c6d3f2b14d9382750b40c4f14b5d3051225b81f936ef8297b0ba8cb5439512e961dae5815d3bee2b0bfdb SHA512 cdd144ce4f747e051480410afc8506c90a57cb45da89071ddae377b1453bca3014422455ade9fe4563ebe51f4b6348cbc0c61905a9b8801cd597d51ad0ec62b3 +DIST gcc-validate-failures-a447cd6dee206facb66720bdacf0c765a8b09f33.py 27537 BLAKE2B 96c7474de0bc50ab890a91551412398c979396c43aa237a4b6d8baa98ce7fda2cc9f5a755a03fd9d055d885ee2fb40ba29644a0649c24398361ce75a20fae634 SHA512 409434953351cf1f2287f1e4a4fbde5b28a27add35ddd284080acec71b33cb4ec5e1c07f41a79fac060bd6f1eedd198812495141923e410ded907429fe515f83 diff --git a/sys-devel/gcc/files/gcc-11.2.0-cross-compile-include.patch b/sys-devel/gcc/files/gcc-11.2.0-cross-compile-include.patch deleted file mode 100644 index d06410650bb0..000000000000 --- a/sys-devel/gcc/files/gcc-11.2.0-cross-compile-include.patch +++ /dev/null @@ -1,26 +0,0 @@ -https://bugs.gentoo.org/803371 -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80196 -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100017 ---- a/configure -+++ b/configure -@@ -17044,7 +17044,7 @@ else - fi - - --RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET" -+RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET -nostdinc++" - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target ar" >&5 - $as_echo_n "checking where to find the target ar... " >&6; } ---- a/configure.ac -+++ b/configure.ac -@@ -3529,7 +3529,7 @@ ACX_CHECK_INSTALLED_TARGET_TOOL(STRIP_FOR_TARGET, strip) - ACX_CHECK_INSTALLED_TARGET_TOOL(WINDRES_FOR_TARGET, windres) - ACX_CHECK_INSTALLED_TARGET_TOOL(WINDMC_FOR_TARGET, windmc) - --RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET" -+RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET -nostdinc++" - - GCC_TARGET_TOOL(ar, AR_FOR_TARGET, AR, [binutils/ar]) - GCC_TARGET_TOOL(as, AS_FOR_TARGET, AS, [gas/as-new]) - diff --git a/sys-devel/gcc/files/gcc-13-fix-cross-fixincludes.patch b/sys-devel/gcc/files/gcc-13-fix-cross-fixincludes.patch new file mode 100644 index 000000000000..6d1681938b07 --- /dev/null +++ b/sys-devel/gcc/files/gcc-13-fix-cross-fixincludes.patch @@ -0,0 +1,21 @@ +Revert of https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=59e4c98173a79fcaa2c33253261409f38856c384 +for now to fix cross fixincludes builds. + +https://bugs.gentoo.org/905118 +https://bugs.gentoo.org/925204 +https://bugs.gentoo.org/926059 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -532,11 +532,7 @@ LINKER_PLUGIN_API_H = $(srcdir)/../include/plugin-api.h + # Default native SYSTEM_HEADER_DIR, to be overridden by targets. + NATIVE_SYSTEM_HEADER_DIR = @NATIVE_SYSTEM_HEADER_DIR@ + # Default cross SYSTEM_HEADER_DIR, to be overridden by targets. +-ifeq (@includedir@,$(prefix)/include) +- CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ +-else +- CROSS_SYSTEM_HEADER_DIR = @includedir@ +-endif ++CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ + + # autoconf sets SYSTEM_HEADER_DIR to one of the above. + # Purge it of unnecessary internal relative paths diff --git a/sys-devel/gcc/files/gcc-14.1.0-emacs-PR114965.patch b/sys-devel/gcc/files/gcc-14.1.0-emacs-PR114965.patch new file mode 100644 index 000000000000..df4fcee90c51 --- /dev/null +++ b/sys-devel/gcc/files/gcc-14.1.0-emacs-PR114965.patch @@ -0,0 +1,106 @@ +https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=d54151df3ba0ee3203e0b8cb8f8fcd168a766c51 +https://gcc.gnu.org/PR114965 + +From d54151df3ba0ee3203e0b8cb8f8fcd168a766c51 Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek <jakub@redhat.com> +Date: Wed, 8 May 2024 10:17:32 +0200 +Subject: [PATCH] reassoc: Fix up optimize_range_tests_to_bit_test [PR114965] + +The optimize_range_tests_to_bit_test optimization normally emits a range +test first: + if (entry_test_needed) + { + tem = build_range_check (loc, optype, unshare_expr (exp), + false, lowi, high); + if (tem == NULL_TREE || is_gimple_val (tem)) + continue; + } +so during the bit test we already know that exp is in the [lowi, high] +range, but skips it if we have range info which tells us this isn't +necessary. +Also, normally it emits shifts by exp - lowi counter, but has an +optimization to use just exp counter if the mask isn't a more expensive +constant in that case and lowi is > 0 and high is smaller than prec. + +The following testcase is miscompiled because the two abnormal cases +are triggered. The range of exp is [43, 43][48, 48][95, 95], so we on +64-bit arch decide we don't need the entry test, because 95 - 43 < 64. +And we also decide to use just exp as counter, because the range test +tests just for exp == 43 || exp == 48, so high is smaller than 64 too. +Because 95 is in the exp range, we can't do that, we'd either need to +do a range test first, i.e. +if (exp - 43U <= 48U - 43U) if ((1UL << exp) & mask1)) +or need to subtract lowi from the shift counter, i.e. +if ((1UL << (exp - 43)) & mask2) +but can't do both unless r.upper_bound () is < prec. + +The following patch ensures that. + +2024-05-08 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/114965 + * tree-ssa-reassoc.cc (optimize_range_tests_to_bit_test): Don't try to + optimize away exp - lowi subtraction from shift count unless entry + test is emitted or unless r.upper_bound () is smaller than prec. + + * gcc.c-torture/execute/pr114965.c: New test. + +(cherry picked from commit 9adec2d91e62a479474ae79df5b455fd4b8463ba) +--- + .../gcc.c-torture/execute/pr114965.c | 30 +++++++++++++++++++ + gcc/tree-ssa-reassoc.cc | 3 +- + 2 files changed, 32 insertions(+), 1 deletion(-) + create mode 100644 gcc/testsuite/gcc.c-torture/execute/pr114965.c + +diff --git a/gcc/testsuite/gcc.c-torture/execute/pr114965.c b/gcc/testsuite/gcc.c-torture/execute/pr114965.c +new file mode 100644 +index 000000000000..89d68e187015 +--- /dev/null ++++ b/gcc/testsuite/gcc.c-torture/execute/pr114965.c +@@ -0,0 +1,30 @@ ++/* PR tree-optimization/114965 */ ++ ++static void ++foo (const char *x) ++{ ++ ++ char a = '0'; ++ while (1) ++ { ++ switch (*x) ++ { ++ case '_': ++ case '+': ++ a = *x; ++ x++; ++ continue; ++ default: ++ break; ++ } ++ break; ++ } ++ if (a == '0' || a == '+') ++ __builtin_abort (); ++} ++ ++int ++main () ++{ ++ foo ("_"); ++} +diff --git a/gcc/tree-ssa-reassoc.cc b/gcc/tree-ssa-reassoc.cc +index 61f54f07b577..556ecdebe2d7 100644 +--- a/gcc/tree-ssa-reassoc.cc ++++ b/gcc/tree-ssa-reassoc.cc +@@ -3418,7 +3418,8 @@ optimize_range_tests_to_bit_test (enum tree_code opcode, int first, int length, + We can avoid then subtraction of the minimum value, but the + mask constant could be perhaps more expensive. */ + if (compare_tree_int (lowi, 0) > 0 +- && compare_tree_int (high, prec) < 0) ++ && compare_tree_int (high, prec) < 0 ++ && (entry_test_needed || wi::ltu_p (r.upper_bound (), prec))) + { + int cost_diff; + HOST_WIDE_INT m = tree_to_uhwi (lowi); +-- +2.39.3 diff --git a/sys-devel/gcc/files/gcc-configure-LANG.patch b/sys-devel/gcc/files/gcc-configure-LANG.patch deleted file mode 100644 index d1b1b0353662..000000000000 --- a/sys-devel/gcc/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/sys-devel/gcc/gcc-10.3.0-r2.ebuild b/sys-devel/gcc/gcc-10.3.0-r2.ebuild deleted file mode 100644 index d62162f1a68d..000000000000 --- a/sys-devel/gcc/gcc-10.3.0-r2.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -TOOLCHAIN_PATCH_DEV="slyfox" -PATCH_VER="3" -MUSL_VER="1" - -inherit toolchain - -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -RDEPEND="" -BDEPEND="${CATEGORY}/binutils" - -src_prepare() { - if has_version '>=sys-libs/glibc-2.32-r1'; then - rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch" || die - fi - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-10.3.1_p20211126.ebuild b/sys-devel/gcc/gcc-10.3.1_p20211126.ebuild deleted file mode 100644 index e07e3b74876d..000000000000 --- a/sys-devel/gcc/gcc-10.3.1_p20211126.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="0" -PATCH_GCC_VER="10.4.0" -MUSL_VER="1" -MUSL_GCC_VER="10.3.0" - -inherit toolchain - -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -RDEPEND="" -BDEPEND="${CATEGORY}/binutils" - -src_prepare() { - if has_version '>=sys-libs/glibc-2.32-r1'; then - rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch" || die - fi - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-10.3.1_p20220623.ebuild b/sys-devel/gcc/gcc-10.3.1_p20220623.ebuild deleted file mode 100644 index 3b0410d85b84..000000000000 --- a/sys-devel/gcc/gcc-10.3.1_p20220623.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_SUFFIX="xz" -TOOLCHAIN_PATCH_DEV="sam" -#TOOLCHAIN_GCC_RC=1 -PATCH_GCC_VER="10.4.0" -PATCH_VER="1" -MUSL_VER="1" -MUSL_GCC_VER="10.4.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="https://gcc.gnu.org/pub/gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) - -# Don't keyword live ebuilds -#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then -# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -#fi - -RDEPEND="" -BDEPEND="${CATEGORY}/binutils" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - if has_version '>=sys-libs/glibc-2.32-r1'; then - rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch" || die - fi - - toolchain_src_prepare -} diff --git a/sys-devel/gcc/gcc-10.4.1_p20220630.ebuild b/sys-devel/gcc/gcc-10.4.1_p20220630.ebuild deleted file mode 100644 index b2fac30d2ffc..000000000000 --- a/sys-devel/gcc/gcc-10.4.1_p20220630.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_SUFFIX="xz" -TOOLCHAIN_PATCH_DEV="sam" -#TOOLCHAIN_GCC_RC=1 -PATCH_GCC_VER="10.4.0" -PATCH_VER="2" -MUSL_VER="1" -MUSL_GCC_VER="10.4.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="https://gcc.gnu.org/pub/gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) - -# Don't keyword live ebuilds -#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then -# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -#fi - -RDEPEND="" -BDEPEND="${CATEGORY}/binutils" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - if has_version '>=sys-libs/glibc-2.32-r1'; then - rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch" || die - fi - - toolchain_src_prepare -} diff --git a/sys-devel/gcc/gcc-10.4.0.ebuild b/sys-devel/gcc/gcc-10.5.0.ebuild index 81fd79a887f9..5b9310b4db8d 100644 --- a/sys-devel/gcc/gcc-10.4.0.ebuild +++ b/sys-devel/gcc/gcc-10.5.0.ebuild @@ -1,42 +1,45 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -TOOLCHAIN_PATCH_SUFFIX="xz" TOOLCHAIN_PATCH_DEV="sam" -#TOOLCHAIN_GCC_RC=1 -PATCH_GCC_VER="10.4.0" -PATCH_VER="2" -MUSL_VER="1" -MUSL_GCC_VER="10.4.0" +PATCH_GCC_VER="10.5.0" +PATCH_VER="6" +MUSL_VER="2" +MUSL_GCC_VER="10.5.0" +PYTHON_COMPAT=( python3_{10..12} ) -if [[ $(ver_cut 3) == 9999 ]] ; then +if [[ ${PV} == *.9999 ]] ; then MY_PV_2=$(ver_cut 2) + MY_PV_3=1 if [[ ${MY_PV_2} == 0 ]] ; then MY_PV_2=0 + MY_PV_3=0 else - MY_PV_2=$(($(ver_cut 2) - 1)) + MY_PV_2=$((${MY_PV_2} - 1)) fi # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then # Cheesy hack for RCs MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="https://gcc.gnu.org/pub/gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" TOOLCHAIN_SET_S=no S="${WORKDIR}"/${MY_P} fi inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + :; fi RDEPEND="" diff --git a/sys-devel/gcc/gcc-10.5.9999.ebuild b/sys-devel/gcc/gcc-10.5.9999.ebuild deleted file mode 100644 index d43d8bf4fbb3..000000000000 --- a/sys-devel/gcc/gcc-10.5.9999.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_SUFFIX="xz" -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="10.4.0" -MUSL_GCC_VER="10.4.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -RDEPEND="" -BDEPEND="${CATEGORY}/binutils" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - if has_version '>=sys-libs/glibc-2.32-r1'; then - rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch" || die - fi - - toolchain_src_prepare -} diff --git a/sys-devel/gcc/gcc-11.2.0.ebuild b/sys-devel/gcc/gcc-11.2.0.ebuild deleted file mode 100644 index 9dc5d2276295..000000000000 --- a/sys-devel/gcc/gcc-11.2.0.ebuild +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -TOOLCHAIN_PATCH_DEV="slyfox" -PATCH_VER="1" -MUSL_VER="1" - -inherit toolchain - -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -RDEPEND="" -BDEPEND="${CATEGORY}/binutils" - -src_prepare() { - toolchain_src_prepare - - if tc-is-cross-compiler ; then - # bug #803371 - eapply "${FILESDIR}"/gcc-11.2.0-cross-compile-include.patch - fi - - eapply_user -} diff --git a/sys-devel/gcc/gcc-11.2.1_p20220115.ebuild b/sys-devel/gcc/gcc-11.2.1_p20220115.ebuild deleted file mode 100644 index 4e44bafeab22..000000000000 --- a/sys-devel/gcc/gcc-11.2.1_p20220115.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="4" -PATCH_GCC_VER="11.3.0" -MUSL_VER="1" -MUSL_GCC_VER="11.3.0" - -inherit toolchain - -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86" - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-11.3.0.ebuild b/sys-devel/gcc/gcc-11.3.0.ebuild deleted file mode 100644 index b02633ee3060..000000000000 --- a/sys-devel/gcc/gcc-11.3.0.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="5" -PATCH_GCC_VER="11.3.0" -MUSL_VER="1" -MUSL_GCC_VER="11.3.0" - -inherit toolchain - -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-11.3.1_p20220624.ebuild b/sys-devel/gcc/gcc-11.3.1_p20220624.ebuild deleted file mode 100644 index 66746a359bd7..000000000000 --- a/sys-devel/gcc/gcc-11.3.1_p20220624.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -TOOLCHAIN_PATCH_SUFFIX="xz" -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="0" -PATCH_GCC_VER="11.4.0" -MUSL_VER="0" -MUSL_GCC_VER="11.4.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) - -# Don't keyword live ebuilds -#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then -# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -#fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-11.3.1_p20220701.ebuild b/sys-devel/gcc/gcc-11.3.1_p20220701.ebuild deleted file mode 100644 index fec8a9f96524..000000000000 --- a/sys-devel/gcc/gcc-11.3.1_p20220701.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_SUFFIX="xz" -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="1" -PATCH_GCC_VER="11.4.0" -MUSL_VER="0" -MUSL_GCC_VER="11.4.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) - -# Don't keyword live ebuilds -#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then -# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -#fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-11.4.1_p20240111.ebuild b/sys-devel/gcc/gcc-11.4.1_p20240111.ebuild new file mode 100644 index 000000000000..48284c744548 --- /dev/null +++ b/sys-devel/gcc/gcc-11.4.1_p20240111.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="11.4.0" +PATCH_VER="12" +MUSL_VER="2" +MUSL_GCC_VER="11.4.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-11.4.1_p20240501.ebuild b/sys-devel/gcc/gcc-11.4.1_p20240501.ebuild new file mode 100644 index 000000000000..2d76258b157e --- /dev/null +++ b/sys-devel/gcc/gcc-11.4.1_p20240501.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="11.4.0" +PATCH_VER="12" +MUSL_VER="2" +MUSL_GCC_VER="11.4.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-11.4.1_p20240508.ebuild b/sys-devel/gcc/gcc-11.4.1_p20240508.ebuild new file mode 100644 index 000000000000..66e7925a44d5 --- /dev/null +++ b/sys-devel/gcc/gcc-11.4.1_p20240508.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="11.4.0" +PATCH_VER="12" +MUSL_VER="2" +MUSL_GCC_VER="11.4.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-11.4.1_p20240515.ebuild b/sys-devel/gcc/gcc-11.4.1_p20240515.ebuild new file mode 100644 index 000000000000..66e7925a44d5 --- /dev/null +++ b/sys-devel/gcc/gcc-11.4.1_p20240515.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="11.4.0" +PATCH_VER="12" +MUSL_VER="2" +MUSL_GCC_VER="11.4.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-11.4.9999.ebuild b/sys-devel/gcc/gcc-11.4.9999.ebuild deleted file mode 100644 index de29705ca377..000000000000 --- a/sys-devel/gcc/gcc-11.4.9999.ebuild +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -TOOLCHAIN_PATCH_SUFFIX="xz" -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="11.4.0" -MUSL_GCC_VER="11.4.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-11.5.9999.ebuild b/sys-devel/gcc/gcc-11.5.9999.ebuild new file mode 100644 index 000000000000..b0f31ae90006 --- /dev/null +++ b/sys-devel/gcc/gcc-11.5.9999.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="11.4.0" +MUSL_GCC_VER="11.4.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-12.1.0.ebuild b/sys-devel/gcc/gcc-12.1.0.ebuild deleted file mode 100644 index d2fce9d32825..000000000000 --- a/sys-devel/gcc/gcc-12.1.0.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="5" -PATCH_GCC_VER="12.0.0" -MUSL_VER="4" -MUSL_GCC_VER="12.0.0" - -inherit toolchain - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - KEYWORDS="~loong" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-12.1.1_p20220528-r1.ebuild b/sys-devel/gcc/gcc-12.1.1_p20220528-r1.ebuild deleted file mode 100644 index aa68dc8eaadf..000000000000 --- a/sys-devel/gcc/gcc-12.1.1_p20220528-r1.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="7" -PATCH_GCC_VER="12.1.0" -MUSL_VER="4" -MUSL_GCC_VER="12.1.0" - -inherit toolchain - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - KEYWORDS="~loong" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-12.1.1_p20220625.ebuild b/sys-devel/gcc/gcc-12.1.1_p20220625.ebuild deleted file mode 100644 index 51819ad52713..000000000000 --- a/sys-devel/gcc/gcc-12.1.1_p20220625.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="8" -PATCH_GCC_VER="12.1.0" -MUSL_VER="5" -MUSL_GCC_VER="12.1.0" - -inherit toolchain - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-12.1.1_p20220702.ebuild b/sys-devel/gcc/gcc-12.1.1_p20220702.ebuild deleted file mode 100644 index 4ce888a6319a..000000000000 --- a/sys-devel/gcc/gcc-12.1.1_p20220702.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_VER="9" -PATCH_GCC_VER="12.1.0" -MUSL_VER="6" -MUSL_GCC_VER="12.1.0" - -inherit toolchain - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - KEYWORDS="~loong" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-12.2.9999.ebuild b/sys-devel/gcc/gcc-12.2.9999.ebuild deleted file mode 100644 index d1a72887e795..000000000000 --- a/sys-devel/gcc/gcc-12.2.9999.ebuild +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="12.1.0" -MUSL_GCC_VER="12.1.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-12.3.1_p20240209.ebuild b/sys-devel/gcc/gcc-12.3.1_p20240209.ebuild new file mode 100644 index 000000000000..465d30643d37 --- /dev/null +++ b/sys-devel/gcc/gcc-12.3.1_p20240209.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="12.3.0" +PATCH_VER="3" +MUSL_VER="1" +MUSL_GCC_VER="12.3.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-12.3.1_p20240502.ebuild b/sys-devel/gcc/gcc-12.3.1_p20240502.ebuild new file mode 100644 index 000000000000..ba3312fc2671 --- /dev/null +++ b/sys-devel/gcc/gcc-12.3.1_p20240502.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="12.3.0" +PATCH_VER="3" +MUSL_VER="1" +MUSL_GCC_VER="12.3.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-12.3.1_p20240509.ebuild b/sys-devel/gcc/gcc-12.3.1_p20240509.ebuild new file mode 100644 index 000000000000..1f38c9fc478d --- /dev/null +++ b/sys-devel/gcc/gcc-12.3.1_p20240509.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="12.3.0" +PATCH_VER="3" +MUSL_VER="1" +MUSL_GCC_VER="12.3.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-12.4.9999.ebuild b/sys-devel/gcc/gcc-12.4.9999.ebuild new file mode 100644 index 000000000000..888f07093124 --- /dev/null +++ b/sys-devel/gcc/gcc-12.4.9999.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="12.3.0" +MUSL_GCC_VER="12.3.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-13.0.0_pre20220619.ebuild b/sys-devel/gcc/gcc-13.0.0_pre20220619.ebuild deleted file mode 100644 index 0c0625463882..000000000000 --- a/sys-devel/gcc/gcc-13.0.0_pre20220619.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="13.1.0" -MUSL_GCC_VER="13.1.0" -TOOLCHAIN_USE_GIT_PATCHES=yes - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=$(($(ver_cut 3) - 9998)) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=master - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND="${CATEGORY}/binutils[cet(-)?]" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-13.0.9999.ebuild b/sys-devel/gcc/gcc-13.0.9999.ebuild deleted file mode 100644 index 121075573253..000000000000 --- a/sys-devel/gcc/gcc-13.0.9999.ebuild +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="13.1.0" -MUSL_GCC_VER="13.1.0" - -if [[ $(ver_cut 3) == 9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=$(($(ver_cut 3) - 9998)) - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$(($(ver_cut 2) - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -fi - -inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=master - -# Don't keyword live ebuilds -if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -fi - -# Technically only if USE=hardened *too* right now, but no point in complicating it further. -# If GCC is enabling CET by default, we need glibc to be built with support for it. -# bug #830454 -RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" -DEPEND="${RDEPEND}" -BDEPEND="${CATEGORY}/binutils[cet(-)?]" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sys-devel/gcc/gcc-13.2.1_p20240210.ebuild b/sys-devel/gcc/gcc-13.2.1_p20240210.ebuild new file mode 100644 index 000000000000..172da408c5ab --- /dev/null +++ b/sys-devel/gcc/gcc-13.2.1_p20240210.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="13.2.0" +PATCH_VER="14" +MUSL_VER="2" +MUSL_GCC_VER="13.2.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-13.2.1_p20240503.ebuild b/sys-devel/gcc/gcc-13.2.1_p20240503.ebuild new file mode 100644 index 000000000000..236fb7fa9711 --- /dev/null +++ b/sys-devel/gcc/gcc-13.2.1_p20240503.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="13.2.0" +PATCH_VER="15" +MUSL_VER="2" +MUSL_GCC_VER="13.2.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-13.2.1_p20240510.ebuild b/sys-devel/gcc/gcc-13.2.1_p20240510.ebuild new file mode 100644 index 000000000000..3660aa66f2a7 --- /dev/null +++ b/sys-devel/gcc/gcc-13.2.1_p20240510.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="13.2.0" +PATCH_VER="16" +MUSL_VER="2" +MUSL_GCC_VER="13.2.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-13.2.1_p20240514.ebuild b/sys-devel/gcc/gcc-13.2.1_p20240514.ebuild new file mode 100644 index 000000000000..c54a0c1faa34 --- /dev/null +++ b/sys-devel/gcc/gcc-13.2.1_p20240514.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +TOOLCHAIN_GCC_RC=1 +PATCH_GCC_VER="13.2.0" +PATCH_VER="16" +MUSL_VER="2" +MUSL_GCC_VER="13.2.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-13.3.9999.ebuild b/sys-devel/gcc/gcc-13.3.9999.ebuild new file mode 100644 index 000000000000..be072bf23992 --- /dev/null +++ b/sys-devel/gcc/gcc-13.3.9999.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="13.2.0" +MUSL_GCC_VER="13.2.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-14.1.0-r1.ebuild b/sys-devel/gcc/gcc-14.1.0-r1.ebuild new file mode 100644 index 000000000000..bf8cde2986d2 --- /dev/null +++ b/sys-devel/gcc/gcc-14.1.0-r1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="14.1.0" +PATCH_VER="1" +MUSL_VER="1" +MUSL_GCC_VER="14.1.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/gcc-14.1.0-emacs-PR114965.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-14.1.0.ebuild b/sys-devel/gcc/gcc-14.1.0.ebuild new file mode 100644 index 000000000000..2a180604e938 --- /dev/null +++ b/sys-devel/gcc/gcc-14.1.0.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="14.1.0" +PATCH_VER="1" +MUSL_VER="1" +MUSL_GCC_VER="14.1.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-14.1.1_p20240511.ebuild b/sys-devel/gcc/gcc-14.1.1_p20240511.ebuild new file mode 100644 index 000000000000..2a180604e938 --- /dev/null +++ b/sys-devel/gcc/gcc-14.1.1_p20240511.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="14.1.0" +PATCH_VER="1" +MUSL_VER="1" +MUSL_GCC_VER="14.1.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-14.1.9999.ebuild b/sys-devel/gcc/gcc-14.1.9999.ebuild new file mode 100644 index 000000000000..f576374d0692 --- /dev/null +++ b/sys-devel/gcc/gcc-14.1.9999.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="14.1.0" +MUSL_GCC_VER="14.1.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240428.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240428.ebuild new file mode 100644 index 000000000000..9a4195c2fdab --- /dev/null +++ b/sys-devel/gcc/gcc-15.0.0_pre20240428.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="15.0.0" +PATCH_VER="1" +MUSL_VER="1" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240505.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240505.ebuild new file mode 100644 index 000000000000..9a4195c2fdab --- /dev/null +++ b/sys-devel/gcc/gcc-15.0.0_pre20240505.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="15.0.0" +PATCH_VER="1" +MUSL_VER="1" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240512.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240512.ebuild new file mode 100644 index 000000000000..9a4195c2fdab --- /dev/null +++ b/sys-devel/gcc/gcc-15.0.0_pre20240512.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="15.0.0" +PATCH_VER="1" +MUSL_VER="1" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-15.0.9999.ebuild b/sys-devel/gcc/gcc-15.0.9999.ebuild new file mode 100644 index 000000000000..77c134c6d288 --- /dev/null +++ b/sys-devel/gcc/gcc-15.0.9999.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="15.0.0" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-8.5.0-r1.ebuild b/sys-devel/gcc/gcc-8.5.0-r1.ebuild index ff799268370b..59774f3759bf 100644 --- a/sys-devel/gcc/gcc-8.5.0-r1.ebuild +++ b/sys-devel/gcc/gcc-8.5.0-r1.ebuild @@ -1,10 +1,12 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" -TOOLCHAIN_PATCH_DEV="slyfox" -PATCH_VER="2" +TOOLCHAIN_PATCH_SUFFIX="xz" +TOOLCHAIN_PATCH_DEV="sam" +PATCH_VER="4" +PYTHON_COMPAT=( python3_{10..12} ) inherit toolchain diff --git a/sys-devel/gcc/gcc-9.5.0.ebuild b/sys-devel/gcc/gcc-9.5.0.ebuild index 4a953b324d63..5a52911294cf 100644 --- a/sys-devel/gcc/gcc-9.5.0.ebuild +++ b/sys-devel/gcc/gcc-9.5.0.ebuild @@ -1,29 +1,42 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="7" +EAPI=8 -TOOLCHAIN_PATCH_DEV="slyfox" -PATCH_GCC_VER="9.4.0" -PATCH_VER="1" +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="9.5.0" +PATCH_VER="2" +PYTHON_COMPAT=( python3_{10..12} ) -if [[ $(ver_cut 3) == 9999 ]] ; then +if [[ ${PV} == *.9999 ]] ; then MY_PV_2=$(ver_cut 2) + MY_PV_3=1 if [[ ${MY_PV_2} == 0 ]] ; then MY_PV_2=0 + MY_PV_3=0 else - MY_PV_2=$(($(ver_cut 2) - 1)) + MY_PV_2=$((${MY_PV_2} - 1)) fi # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} fi inherit toolchain -# Needs to be after inherit (for now?), bug #830908 -EGIT_BRANCH=releases/gcc-$(ver_cut 1) -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" +fi RDEPEND="" BDEPEND="${CATEGORY}/binutils" diff --git a/sys-devel/gcc/metadata.xml b/sys-devel/gcc/metadata.xml index b6eef667b039..853d96579504 100644 --- a/sys-devel/gcc/metadata.xml +++ b/sys-devel/gcc/metadata.xml @@ -7,28 +7,118 @@ </maintainer> <use> <flag name="ada">Build the ADA language (GNAT) frontend</flag> - <flag name="cet" restrict=">=sys-devel/gcc-10">Enable support for Intel Control Flow Enforcement Technology (CET)</flag> + <flag name="cet" restrict=">=sys-devel/gcc-10"> + Enable support for control flow hijacking protection. + + On amd64, this provides Intel Control Flow Enforcement Technology (CET). + + On arm64, this provides Branch Target Identification (BTI) + and Pointer Authentication Code (PAC) support. + + This is only effective on amd64 or arm64. + + Only provides benefits on newer CPUs. For Intel, the CPU + must be at least as new as Tiger Lake. For AMD, it must be + at least as new as Zen 3. This is harmless on older CPUs, + but provides no benefit either. + + For ARM64, PAC was introduced in armv8.3-a, and BTI was + introduced in armv8.5-a. + + When combined with USE=hardened on amd64, GCC will set -fcf-protection + by default when building software. The effect is minimal + on systems which do not support it, other than a possible + small increase in codesize for the NOPs. The generated + code is therefore compatible with i686 at the earliest. + + On arm64, GCC will set -mbranch-protection=standard by default + when building software. + </flag> <flag name="d">Enable support for the D programming language</flag> + <flag name="debug"> + Enables GCC's 'checking' facility via --enable-checking=yes,extra,rtl. + + This adds checks to various compiler passes for integrity and input + validation. This can help catch possible miscompilations early as + well as latent bugs which could become real problems in future, but + at the cost of slower compile times when using GCC. + + Unrelated to backtraces. + </flag> + <flag name="default-stack-clash-protection"> + Build packages with stack clash protection on by default as + a hardening measure. + + This enables -fstack-clash-protection by default which protects against + large memory allocations allowing stack smashing. + + May cause slightly increased codesize, but modern compilers + have been adapted to optimize well for this case, as + this mitigation is now quite common. + + See https://developers.redhat.com/blog/2020/05/22/stack-clash-mitigation-in-gcc-part-3 + and https://www.qualys.com/2017/06/19/stack-clash/stack-clash.txt. + </flag> + <flag name="default-znow"> + Request full relocation on start from ld.so by default. + + This sets the -z,now (BIND_NOW) flag by default on all linker invocations. By + resolving all dynamic symbols at application startup, parts of the program + can be made read-only as a hardening measure. + + This is closely related to RELRO which is also separately + enabled by default. + + In some applications with many unresolved symbols (heavily plugin based, + for example), startup time may be impacted. + </flag> <flag name="fixed-point">Enable fixed-point arithmetic support for MIPS targets in gcc (Warning: significantly increases compile time!)</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="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> + <flag name="ieee-long-double">Use accelerated 128-bit IEEE long double ABI (ppc64le only)</flag> + <flag name="jit">Enable libgccjit so other applications can embed gcc for Just-In-Time compilation.</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="lto">Build using Link Time Optimizations (LTO)</flag> - <flag name="mpx">Enable support for Intel Memory Protection Extensions (MPX)</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="lto"> + Build using Link Time Optimizations (LTO). + + Note that GCC is always built with support for building + other programs with LTO. This USE flag is for whether + GCC itself is built and optimized with LTO. + </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="sanitize">Build support for various sanitizer functions (ASAN/TSAN/etc...)</flag> - <flag name="ssp">Build packages with stack smashing protector on by default</flag> + <flag name="pgo"> + Build GCC using Profile Guided Optimization (PGO). + + GCC will build itself and then analyze the just-built + binary and then rebuild itself using the data obtained + from analysis of codepaths taken. + + It does not affect whether GCC itself supports PGO + when building other software. + + This substantially increases the build time needed for + building GCC itself. + </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...) + to find runtime problems in applications. + </flag> + <flag name="ssp">Build packages with stack smashing protection on by default</flag> <flag name="systemtap">enable systemtap static probe points</flag> - <flag name="valgrind">Enable valgrind annotations for gcc internals (useful for gcc debugging).</flag> - <flag name="vtv">Build support for virtual table verification (a C++ hardening feature)</flag> + <flag name="vtv"> + Build support for virtual table verification (a C++ hardening feature). + + This does not control whether GCC defaults to using VTV> + + Note that actually using VTV breaks ABI and hence the whole + system must be built with -fvtable-verify. + </flag> </use> <upstream> <remote-id type="cpe">cpe:/a:gnu:gcc</remote-id> - <remote-id type="sourceforge">dgcc</remote-id> </upstream> </pkgmetadata> |