From 343082998723d09c7b354eb21ff4793c6d4fda3e Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 19 Aug 2022 20:37:19 +0100 Subject: gentoo auto-resync : 19:08:2022 - 20:37:18 --- sys-devel/Manifest.gz | Bin 9468 -> 9464 bytes sys-devel/gcc/Manifest | 10 +- sys-devel/gcc/files/gcc-10.4.0-glibc-2.36.patch | 39 +++ sys-devel/gcc/files/gcc-11.3.0-glibc-2.36.patch | 41 ++++ sys-devel/gcc/gcc-10.4.0.ebuild | 2 + sys-devel/gcc/gcc-11.3.0.ebuild | 1 + sys-devel/gcc/gcc-12.2.0.ebuild | 52 ++++ sys-devel/gcc/gcc-12.2.9999.ebuild | 57 ----- sys-devel/gcc/gcc-12.3.9999.ebuild | 57 +++++ sys-devel/mold/Manifest | 7 +- sys-devel/mold/files/mold-1.4.1-glob-tests.patch | 296 +++++++++++++++++++++++ sys-devel/mold/metadata.xml | 3 + sys-devel/mold/mold-1.4.1.ebuild | 103 ++++++++ sys-devel/mold/mold-9999.ebuild | 76 +++--- 14 files changed, 644 insertions(+), 100 deletions(-) create mode 100644 sys-devel/gcc/files/gcc-10.4.0-glibc-2.36.patch create mode 100644 sys-devel/gcc/files/gcc-11.3.0-glibc-2.36.patch create mode 100644 sys-devel/gcc/gcc-12.2.0.ebuild delete mode 100644 sys-devel/gcc/gcc-12.2.9999.ebuild create mode 100644 sys-devel/gcc/gcc-12.3.9999.ebuild create mode 100644 sys-devel/mold/files/mold-1.4.1-glob-tests.patch create mode 100644 sys-devel/mold/mold-1.4.1.ebuild (limited to 'sys-devel') diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz index 839c2db4972c..8a9169799882 100644 Binary files a/sys-devel/Manifest.gz and b/sys-devel/Manifest.gz differ diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index a8a918c5e74b..898b85c50cf0 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -1,4 +1,6 @@ +AUX gcc-10.4.0-glibc-2.36.patch 1682 BLAKE2B d9e36e0821d55d98ac6e82594b9aae4fbf6f45a986dbbfa967ad288f83679fe234559bbfb4534d3c45ec26f5759e3b201ffd25264cf2dbe266bd27c53deb8e51 SHA512 19b820e4d7d068beca8ebecc8039b3df2945ad7e37a2097f2aa70a915808980a811140673d468bd23e7ec137362db2538740552e0b8ee4463dd7e131298f62f8 AUX gcc-11.2.0-cross-compile-include.patch 875 BLAKE2B 92ed84f2b75dd88c73ca115a9faf454ff51a445fb7939ba51ac2b2e7bf6847cacd699cf4a147f056563b0b50b2ac4a0f907cec5bf0b411ec6a8b8b02ec1f410e SHA512 1195825ce57a43ea3826f1f3bcdb4ed17ce849887419960ab79d49e75117586ffcadb0363d6fd845e79417dc6186d6e93100e20c5d24961b5d827cce5ee85635 +AUX gcc-11.3.0-glibc-2.36.patch 1704 BLAKE2B c13ac093909fae3e1176e036b32f740ec8ad4d5efdf433bdaa54b169b9f13c6f6e9fa55ecf356b8f88e6aab4498a1a5937ca9d11db1fcf2e2e638d8b7fe9bc2c SHA512 cee29a2ff199329b92a644a610a69ed028e5dc76975916f652a25a71ef89ddddd0fb1b99c1fb0e424b8ac60e26711b5cf7a1b720249d7681a28550be370b9ae8 AUX gcc-configure-LANG.patch 2052 BLAKE2B 28c36f4992e41305ee421dade5eaaac34e3bdc523665b03f360f2bc01e8f69e9dc48052edb80dece63ab561e80325b4f125502482eb16f7324f1c03670021550 SHA512 a694c7ac2f45cc657097ff5b0cf1356ac88a9c06035c9ba15167e9d444844d0d8a478eb1b9b62195dd063774f79697b9148b9cdb6c261640b472c291061b2129 AUX gcc-configure-texinfo.patch 341 BLAKE2B d2ea3b2ea08f5d3a498ba27d0fb95e325097e2104e55caa28b66515cb48662649140d90b639369aedc54b2b1178fa4b49cda442f5f504e09d88a2efa45a5057c SHA512 e8d34c5077409df5495cf0c5fbf5e77f841c5698108fa6a5fde33eb28202c685603bdefd8368918e55f30c4b995e895d71d64c715c1ec2b017e09eb2c54c09ff DIST gcc-10-20211126.tar.xz 71674848 BLAKE2B 81f4a572e973db7a3701601e66ea58c8e535a55d4d4ac164de00bdb06f7f265585f45d46171cf40d42ebcd3fb02ac81b643398c560912698eb6c008ac6e09518 SHA512 db887184c649ebeede5a1b9f13c00fe425012434cb93ec960c3ca50c0bcdeab04a1cc13b20de21b940e5d6a09c3b1c7fc415110a0e990ec1d938627bf97b9342 @@ -33,6 +35,7 @@ DIST gcc-12.1.0-patches-8.tar.xz 12020 BLAKE2B 6138ef4d76a682ecfd05ba7c80d8f5db7 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-12.2.0-RC-20220812.tar.xz 84732336 BLAKE2B de38eab480965e44d64ccda40070aadb0e892732b6fd4cd80feb5636aff2b14ee0ca2fb0ed38fb1ba46d83c6173a60069a9335cc0f321451edaac387c832056d SHA512 74d6f7c9cb1070920ae85533b6db986c3a784f74a3f5eac113c483230b78737c33bc6f10a2221ace7f9c8af0e3824390241da73d367dd77e5832205a47a47940 +DIST gcc-12.2.0.tar.xz 84645292 BLAKE2B 715574af9ad678f9dc8cfd19c866bf910c7edfd479e7e9681337feaa9b54e5d304ddb85483816b8d89754d502405823ae2eff0d1e444538763f40be8e428d8da SHA512 e9e857bd81bf7a370307d6848c81b2f5403db8c7b5207f54bce3f3faac3bde63445684092c2bc1a2427cddb6f7746496d9fbbef05fbbd77f2810b2998f1f9173 DIST gcc-13-20220731.tar.xz 79440792 BLAKE2B c7b6e8113c5c858b0e348ce930ca71c3386b91d62f4a3355df38e899dff26f9e02d44673ad1d57a93a5edb3f8633b9f8fc74b779059b9fdb54ebc0f73c95ef36 SHA512 58e320f19cebe4d7364a64a2ded60ef6fb8f68d6abcd3a3c13b0a23ab016d4f40cd9e0e12f665b713314c34b46a65c263a4f04bfac01a7f476755987365aa4e0 DIST gcc-13-20220807.tar.xz 79472584 BLAKE2B d23ad0d06414c0e7dfc11473641abb63585c95a07b1da50f3c9d6ae6ba3f365b7bd17297914670468e8b26e4146c8de2dc35c0b96ddc752a07c1dca3a0227dce SHA512 03aed1aa6a73b4aaa5318e456334132576036ee859a26eba3d49826a03da554cec22739cc4fae441f72eb5ea53449e75b73e8f3a41192e09a6e00d4fc227a4ee DIST gcc-13.0.0-patches-1.tar.xz 11064 BLAKE2B 82a7ad193dac00475931840bcee82ef7a51718a74af224b03a41f8349e34c2a64a3eb29985b4e2bffde958c58782242eccaedaa54d950e8d51d8bb6f45868e0e SHA512 e04b510f529dd3187a08ae9cb9a894a3d3d30af81f13c43cc082fda7d26c44a3bf19d36ec02024b2ade8b8c193e9730246abeadee603c41b5873c5b785709921 @@ -42,13 +45,13 @@ DIST gcc-9.5.0-patches-1.tar.xz 13772 BLAKE2B 2e2e84a28a729cd271a23716ff3fe08b72 DIST gcc-9.5.0.tar.xz 72462752 BLAKE2B 69e39314ee6bb46e3be491ba9c3cbc4914cb716f732c6d3f2b14d9382750b40c4f14b5d3051225b81f936ef8297b0ba8cb5439512e961dae5815d3bee2b0bfdb SHA512 cdd144ce4f747e051480410afc8506c90a57cb45da89071ddae377b1453bca3014422455ade9fe4563ebe51f4b6348cbc0c61905a9b8801cd597d51ad0ec62b3 EBUILD gcc-10.3.0-r2.ebuild 502 BLAKE2B 2fefeb929c4dd64837a4d27549624bc5c11a10f89ea29e73873f60506a332c220aa70dde76ce29a17ef023fea82ea6a7b3548f14b1a38f22adc028a09bd98d31 SHA512 7cfd3be4e22142ff7abb2a63c0eedfa42994a25753f45e47ad74a6bc266a467b25f072600a3578c12fbaae17110d957161e164623d31f5a3496447187e6e46ff EBUILD gcc-10.3.1_p20211126.ebuild 542 BLAKE2B 43170f8b81699ab102c389f42313ab6d448ee8097cbaa940cfd10eec884c3223b1569635169e6285b5810f07bde4d9d40d78003ebf6dbe07e32e60a80469cc97 SHA512 dfc4cd1ab39af930d37ff7d14bee89a92a575624e159223be56d2c695ee384afdc6ea84797d468c3b736992db8befe379c5cee04833772fe259d16d6965d58a1 -EBUILD gcc-10.4.0.ebuild 1446 BLAKE2B 8b28b55283e30c6524f5aed8e73ef7d80cac8a7f7aab3bd93a85b36d0c7f36ff112fdb821855425c08c57b07822024cd7e497d7937abc8cc10cc3c06a11f5ab2 SHA512 f4e100e43056317ea0bfcc50ded0c7a1a0d54b98e9eaee8ea1691de8ca920d3e414d5ae76715609eeccb8c13c25d072244090537868d4b91ea0da072b6b2887b +EBUILD gcc-10.4.0.ebuild 1491 BLAKE2B 1c4d7ae91891781f44718a85814f88f73939fb3805ab947043049fcabe3531f43f20a23292aa675814f0e8832322eda29624355d97c5b169e48c7dc0d215b0be SHA512 edb504f45460b0ee58a1af6c9ce7b82a36b41aa5ae701b80dcddaa80d545d7a87db259b27eefb8683cd4622e02870a95f67835b51937fa74041898c4b7bbfae3 EBUILD gcc-10.4.1_p20220804.ebuild 1456 BLAKE2B 10e4d926dd4555636a040655834bcae3260fb5177c69cb7242c7dbba29123a1fa8570e31c81996e0e01a409c61bc02a1ce2d3bb836b37d88c915b122209baea8 SHA512 ad64e2e13b4f8f4c96a6670e9f4cd8986e81769fa879be4419347bc4ada6092daa09fcf3bb9c2c177f44d4e4d426dba105e94b50497e7ff30be707d81da906ea EBUILD gcc-10.4.1_p20220811.ebuild 1456 BLAKE2B 10e4d926dd4555636a040655834bcae3260fb5177c69cb7242c7dbba29123a1fa8570e31c81996e0e01a409c61bc02a1ce2d3bb836b37d88c915b122209baea8 SHA512 ad64e2e13b4f8f4c96a6670e9f4cd8986e81769fa879be4419347bc4ada6092daa09fcf3bb9c2c177f44d4e4d426dba105e94b50497e7ff30be707d81da906ea EBUILD gcc-10.5.9999.ebuild 1108 BLAKE2B af5f165e046455efaaaca747c1deb018b0f43dad720129f72821879fe61790b9d2c233ae9ac0e8d11911b92d390c7a8b082b5dba5a771716f7d9b0aeeb1c6a3b SHA512 905b1f6108ac0608c077e940570829bf9c1e5bde5d852cdbae2b5fddaa304df76dd5bd4499dfb5d26667ced09b3a772567dd850169cec8799731d1cc0abb125c EBUILD gcc-11.2.0.ebuild 495 BLAKE2B 122998d820667dbf776aaa7f48a79b3c127f1558f8ec811543e83d3f8534be368749e388254ff14139076baabdcc7ead4be8c5d8f23b3c764ad721cf0478265d SHA512 65a1c11c97d4bde439abad6cd68ee97dd04e8750f4728c3588e923f32eb56b61afa0243570b8c66599e6fe9f6d122113c00c5c1cdf9b7869f01c1564a6c21707 EBUILD gcc-11.2.1_p20220115.ebuild 688 BLAKE2B c85314316bd63ceae85eaf1ae501932be00c2f5b80092ec4a894aa221e015daceb6687dbf962089b39195ae6470665e7faf09fe9600ae0c74e4d94fcd903e789 SHA512 59d147c88bf9e2a3779320ee89145f01f2acd1110efffc9f967a0c7fee3d910218424b48bf2166c06662a0b1b545b996869f5060ee23da54e8a10f1a0afc3477 -EBUILD gcc-11.3.0.ebuild 687 BLAKE2B 0fb753c50afc9734b65abcb5fff76b029fcf4b2e2a969540a849b4700fe80a95f889fec4e327600e49bb77d1c0297dd02423e41c89f5c8669023463922244cab SHA512 4cf43f6f5ac8b0c386faaad247596bc7b551490c2402b20fc2aadf20ad355fb6a847212d11089c737fac3e230cd4785dc8b03737a2b0e3cd92e91ebef5707ae8 +EBUILD gcc-11.3.0.ebuild 731 BLAKE2B 6118f89eb22e36893ab646baba3c5688911dcea96b5e36f366246dd68b25102c3bf559aee46cb12e4db4af808ed88f277f95a7211bdfa580b0d984d2631cb822 SHA512 f2cee305ea1b6401f7fc446e9b60b1fb659af7f5fb9739b2dfd4a10b66640cc6fa76e6c605b87c51481a9c55f8b9c86bb25d6ed51db6808cabefdc9f8c515e7d EBUILD gcc-11.3.1_p20220805.ebuild 1304 BLAKE2B edb9cfd2518e934014e6c6a7966b86a3d4fd83bd1f733a86428ff094e9aa5868e2dbcaf046e2a83483c77afd50ce5d778ee2ab03eb0216f404721242b231251a SHA512 4e4c92e175879fb813c26b910d3d9d8571e6dd96505e99e8f3127799b0f2dad5dba47b32b5a3cee502c9340efb11c417b7559d2118d49a212c5ad5f6e05b8691 EBUILD gcc-11.3.1_p20220812.ebuild 1304 BLAKE2B edb9cfd2518e934014e6c6a7966b86a3d4fd83bd1f733a86428ff094e9aa5868e2dbcaf046e2a83483c77afd50ce5d778ee2ab03eb0216f404721242b231251a SHA512 4e4c92e175879fb813c26b910d3d9d8571e6dd96505e99e8f3127799b0f2dad5dba47b32b5a3cee502c9340efb11c417b7559d2118d49a212c5ad5f6e05b8691 EBUILD gcc-11.4.9999.ebuild 1267 BLAKE2B 09a26812068945e11164d0a4f8f5cc10dc261a20a647fd4102decc83eecbbe8fcc7f38093609314fa1f26c46164e8248aede741880f7cff64dd5a94836765fa2 SHA512 4ecf698cd6e96dc08683a0e9b69936cdd9085c300d330fb9830cee0e38783e0a1fc8409db39159f9b247f28fc5d7d7572ad3e975f3951f1cb8537f49886bdcde @@ -56,7 +59,8 @@ EBUILD gcc-12.1.0.ebuild 819 BLAKE2B edb479f30802d9ac62555dc535d388f7630572f44d4 EBUILD gcc-12.1.1_p20220625.ebuild 799 BLAKE2B 82f30877d60dd0c8b9313c46e1b790748e920ea1e05ce6b9e76d33b6d9539f09ed37687265aa752fc496e61890ce5acba7765b16c793708a7564bea6df144d23 SHA512 818bea94f67785be1f2a390afcaf1550167c508cc4546047c4823189ce1b58111314c78cb13c91cdcd18463cfaec2aa882d738bd32367e43840d3c1bffdcbd8f EBUILD gcc-12.1.1_p20220806.ebuild 802 BLAKE2B f78bd580d137107e9a6fed22e3e4183c4d5867b0627ec70df7fa96094b44b4ec3a6c4af18f2801cc5f01bd6f1dc9ed6d2241bcc683b9e61b80dd99a7f49f6f60 SHA512 9673c3167e071e94d8cf4953d1fe63cc5af88c55deb69a7b5fc45bc8b6452ec79205637cc24e5dd15520a7f9f6c5a548cdbd4ab86973c06fe0c9a59b1e275ec8 EBUILD gcc-12.1.1_p20220812.ebuild 1456 BLAKE2B b982de0e09a698616c42c4a4d72356dfc189a72d99b3a41a6fb864bb71383cda2a7099c41c88f0463020ae7cc29339bc5cf8d3e15eb6f6a55e6a74fb2c4ed6e6 SHA512 40cfe8d732b9a62b55e3a2bdec56188f4e70edb72ab981ba3a4ba3ca35862bd92d948ed48201f91e8188e52c87778da8bf334bafff2e00cbccb7c98c2614fdca -EBUILD gcc-12.2.9999.ebuild 1545 BLAKE2B 86594191729256f3c5541b09461feaf6a5e3afa7ed2f0fa43739ca3225eb6974f996f4702c8eb51ba7e64215a2fce313ef4e010556bf9389aa3543fe34e27d44 SHA512 0f7d29dab9c8b376b2d5abdf5f0a2c889a2fb28bd37f6c897609b9c222215215a18c0a1e858b1688e3a601acb0c8f896b8a89783aafa05eb0f022e42c657a9ed +EBUILD gcc-12.2.0.ebuild 1434 BLAKE2B f41ce3195499c81a18a96a41028fd2f0f850c1adda9e77ffadea5176729b9b415ab6ed9953d851952fe723a9c64857035dae14a180f791a9455f84f4e1415275 SHA512 96077a54de03bca8bb9065d8708545c9b50998b93e78d8b3c01362c9dabb785174eb642f6154e8564abc42b5f0d2696bc0e1ea7b7684d0bf7034593acffed3eb +EBUILD gcc-12.3.9999.ebuild 1545 BLAKE2B 86594191729256f3c5541b09461feaf6a5e3afa7ed2f0fa43739ca3225eb6974f996f4702c8eb51ba7e64215a2fce313ef4e010556bf9389aa3543fe34e27d44 SHA512 0f7d29dab9c8b376b2d5abdf5f0a2c889a2fb28bd37f6c897609b9c222215215a18c0a1e858b1688e3a601acb0c8f896b8a89783aafa05eb0f022e42c657a9ed EBUILD gcc-13.0.0_pre20220731.ebuild 1282 BLAKE2B 03e7f5b4c1434905797713910db534e33e9ccd97e7b931a3980222412b48d3daeae62f259a6f4445fccb4fcb510f92ef39c30e0c91930ec333f0af544b38ab84 SHA512 6cc09fc3d0736469630089056c8c79ec3a4751311201f832826be7c6782598b8efa110b23c45fd187006a5911eb7c0d132d478ccbd1c5817ebc123d10c807aa3 EBUILD gcc-13.0.0_pre20220807.ebuild 1288 BLAKE2B a2281da17b96d44850dccf6a6420d66cf163a8f53ea755f1414911fcffd71b504273f3010b6a6c3cb796bf763d8da5b8fa64efb7e107b3e5a8bb1ab767704d05 SHA512 8108432caffabab640a472344adf5660a005436790d31f287f1e72109dd69b5831ea0f3e956a822439862da6a24b78daa7c4253fe51ce9b47457de3b83d80b5d EBUILD gcc-13.0.9999.ebuild 1252 BLAKE2B dbc0cdcbb6bae2177185c41fa014a0c98e05a8101f33e12975e2af951e25539117b9279573770b5d17261032b0c51d80864140417a13b152aa34739c28c0f0c3 SHA512 96e940c83f9e58b7b929c5293ca44582c266d3e10615f6aded5cd0b11cb1d46306382fea04227040a7d7cbfdc0f042e3b1c89a0e617193bbfadea50a4732e9a2 diff --git a/sys-devel/gcc/files/gcc-10.4.0-glibc-2.36.patch b/sys-devel/gcc/files/gcc-10.4.0-glibc-2.36.patch new file mode 100644 index 000000000000..e773071188b7 --- /dev/null +++ b/sys-devel/gcc/files/gcc-10.4.0-glibc-2.36.patch @@ -0,0 +1,39 @@ +https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=6bd956e31b2fb6fe1eee4eb1bf309247dcd19b23 +https://bugs.gentoo.org/864717 + +From 6bd956e31b2fb6fe1eee4eb1bf309247dcd19b23 Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Mon, 11 Jul 2022 22:03:14 +0200 +Subject: [PATCH] libsanitizer: cherry-pick 9cf13067cb5088626ba7 from upstream + +9cf13067cb5088626ba7ee1ec4c42ec59c7995a0 [sanitizer] Remove #include to resolve fsconfig_command/mount_attr conflict with glibc 2.36 + +(cherry picked from commit 2701442d0cf6292f6624443c15813d6d1a3562fe) +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -72,7 +72,9 @@ + #include + #include + #include ++#if SANITIZER_ANDROID + #include ++#endif + #include + #include + #include +@@ -822,10 +824,10 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned IOCTL_EVIOCGPROP = IOCTL_NOT_PRESENT; + unsigned IOCTL_EVIOCSKEYCODE_V2 = IOCTL_NOT_PRESENT; + #endif +- unsigned IOCTL_FS_IOC_GETFLAGS = FS_IOC_GETFLAGS; +- unsigned IOCTL_FS_IOC_GETVERSION = FS_IOC_GETVERSION; +- unsigned IOCTL_FS_IOC_SETFLAGS = FS_IOC_SETFLAGS; +- unsigned IOCTL_FS_IOC_SETVERSION = FS_IOC_SETVERSION; ++ unsigned IOCTL_FS_IOC_GETFLAGS = _IOR('f', 1, long); ++ unsigned IOCTL_FS_IOC_GETVERSION = _IOR('v', 1, long); ++ unsigned IOCTL_FS_IOC_SETFLAGS = _IOW('f', 2, long); ++ unsigned IOCTL_FS_IOC_SETVERSION = _IOW('v', 2, long); + unsigned IOCTL_GIO_CMAP = GIO_CMAP; + unsigned IOCTL_GIO_FONT = GIO_FONT; + unsigned IOCTL_GIO_UNIMAP = GIO_UNIMAP; + diff --git a/sys-devel/gcc/files/gcc-11.3.0-glibc-2.36.patch b/sys-devel/gcc/files/gcc-11.3.0-glibc-2.36.patch new file mode 100644 index 000000000000..7907223248ae --- /dev/null +++ b/sys-devel/gcc/files/gcc-11.3.0-glibc-2.36.patch @@ -0,0 +1,41 @@ +https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=d2356ebb0084a0d80dbfe33040c9afe938c15d19 +https://bugs.gentoo.org/864717 + +Fix build w/ glibc 2.36. + +From d2356ebb0084a0d80dbfe33040c9afe938c15d19 Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Mon, 11 Jul 2022 22:03:14 +0200 +Subject: [PATCH] libsanitizer: cherry-pick 9cf13067cb5088626ba7 from upstream + +9cf13067cb5088626ba7ee1ec4c42ec59c7995a0 [sanitizer] Remove #include to resolve fsconfig_command/mount_attr conflict with glibc 2.36 + +(cherry picked from commit 2701442d0cf6292f6624443c15813d6d1a3562fe) +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -72,7 +72,9 @@ + #include + #include + #include ++#if SANITIZER_ANDROID + #include ++#endif + #include + #include + #include +@@ -828,10 +830,10 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned IOCTL_EVIOCGPROP = IOCTL_NOT_PRESENT; + unsigned IOCTL_EVIOCSKEYCODE_V2 = IOCTL_NOT_PRESENT; + #endif +- unsigned IOCTL_FS_IOC_GETFLAGS = FS_IOC_GETFLAGS; +- unsigned IOCTL_FS_IOC_GETVERSION = FS_IOC_GETVERSION; +- unsigned IOCTL_FS_IOC_SETFLAGS = FS_IOC_SETFLAGS; +- unsigned IOCTL_FS_IOC_SETVERSION = FS_IOC_SETVERSION; ++ unsigned IOCTL_FS_IOC_GETFLAGS = _IOR('f', 1, long); ++ unsigned IOCTL_FS_IOC_GETVERSION = _IOR('v', 1, long); ++ unsigned IOCTL_FS_IOC_SETFLAGS = _IOW('f', 2, long); ++ unsigned IOCTL_FS_IOC_SETVERSION = _IOW('v', 2, long); + unsigned IOCTL_GIO_CMAP = GIO_CMAP; + unsigned IOCTL_GIO_FONT = GIO_FONT; + unsigned IOCTL_GIO_UNIMAP = GIO_UNIMAP; + diff --git a/sys-devel/gcc/gcc-10.4.0.ebuild b/sys-devel/gcc/gcc-10.4.0.ebuild index 31a46b613160..311d04b1e636 100644 --- a/sys-devel/gcc/gcc-10.4.0.ebuild +++ b/sys-devel/gcc/gcc-10.4.0.ebuild @@ -43,6 +43,8 @@ RDEPEND="" BDEPEND="${CATEGORY}/binutils" src_prepare() { + eapply "${FILESDIR}"/${P}-glibc-2.36.patch + local p upstreamed_patches=( # add them here ) diff --git a/sys-devel/gcc/gcc-11.3.0.ebuild b/sys-devel/gcc/gcc-11.3.0.ebuild index a90a5c1bc452..93499169999c 100644 --- a/sys-devel/gcc/gcc-11.3.0.ebuild +++ b/sys-devel/gcc/gcc-11.3.0.ebuild @@ -23,5 +23,6 @@ BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" src_prepare() { toolchain_src_prepare + eapply "${FILESDIR}"/${P}-glibc-2.36.patch eapply_user } diff --git a/sys-devel/gcc/gcc-12.2.0.ebuild b/sys-devel/gcc/gcc-12.2.0.ebuild new file mode 100644 index 000000000000..c2a70e93db66 --- /dev/null +++ b/sys-devel/gcc/gcc-12.2.0.ebuild @@ -0,0 +1,52 @@ +# 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" + +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 ~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.2.9999.ebuild b/sys-devel/gcc/gcc-12.2.9999.ebuild deleted file mode 100644 index cf4fddcdf19e..000000000000 --- a/sys-devel/gcc/gcc-12.2.9999.ebuild +++ /dev/null @@ -1,57 +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)) -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 ~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.9999.ebuild b/sys-devel/gcc/gcc-12.3.9999.ebuild new file mode 100644 index 000000000000..cf4fddcdf19e --- /dev/null +++ b/sys-devel/gcc/gcc-12.3.9999.ebuild @@ -0,0 +1,57 @@ +# 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)) +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 ~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/mold/Manifest b/sys-devel/mold/Manifest index a7448ca46c5e..2393d61aa249 100644 --- a/sys-devel/mold/Manifest +++ b/sys-devel/mold/Manifest @@ -1,10 +1,13 @@ AUX mold-1.2.1-install-nopython.patch 1178 BLAKE2B 62092d363291f640567e334a7d16e90640b5e98a972729340527eb1a10f7febd77b6ae6a71e82c93c4d8c3ea04812893b1a42cd7404b3d6aba6bd35ede308567 SHA512 c22cd13018472ecf84fbd9a192c7072e4d7cd263e9bb19a94b1997014b110790266c7ae62977ce716aedb659a5d40be4bc95e8c0dbb2b8b5cf8e1d799fff4887 AUX mold-1.3.0-openssl-pkgconfig.patch 887 BLAKE2B c014be11c2e18b8df12f156ac8a40468afdf1b0b600c9af73a7373063b1e3658dd199b5ef3bd538641720bfbe10c602d96b0066420c321affb5d2f432fbbda57 SHA512 072f311bdbde5b556bcf1916d5586124007d0d47642c3555cd76c96d19fc1b77ef2f260937bcdc9014201c2a702ce5b4d9612cfdfab1e7b5d80882db2332329a AUX mold-1.3.1-fix-riscv-set32.patch 831 BLAKE2B 103fa9944f16993842b941b607b7e157b8fa31064fd7a115c8f1da4b617b98939b55caae98b246047e6ec0fa136d2b175001ab4dd18df5817cb282fd4e3aad9c SHA512 03b1ae4708826df19d7a879b985f7e81ad283abace64e306b982800ba633136d8f01b00221b3d9ca57fe3b21eb2796af33b0c3fbee4d94e6bb9e84043828fe01 +AUX mold-1.4.1-glob-tests.patch 5512 BLAKE2B bade33580bb63e58541dc1bafe4dc0fd0592e752e6f6003e67e210899ac3f4ee31490d40ee00c8af6ffd222744c56f74c677ba9e4aec2f3c2f4a9fc117846287 SHA512 712c878a649c13808509454fd65c10810777f1ca655365aa7fd3cf25e79247b88367ab454e6508e13f3f932ccc71ae25e4459fb6d3d107efcbe30e943e2f4bfa DIST mold-1.3.1.tar.gz 4692379 BLAKE2B e34e9416cfc65d2097c4659ddc205a0c4492e50a1c6e4560006757e5c371d27410e38131f353cd0ee60b124e5fe42b0a1c50cdc3a7bed9f666596e608340e4fd SHA512 f576d2fcfee5cb3bade5ba24dcdd3020a16131ce7d4c3a00c3f92b94785ed86f3f040a6f5814b9c975c4c3d90a2b8c36a8101d5fbf1bc0a4be316f4a4a6dcefa DIST mold-1.4.0.tar.gz 4722082 BLAKE2B 65ac52724018f5df82ca40b287a5f3b2c3e4b6b313ef2573bfd0ed6d03054d92b9e1e52cbdad1930406cff232c4b952c33a16979968502c439b860bd782726a9 SHA512 7b7c4a7bac6bbc6e22372d93d94a6cb804c7017eba16b90e9bbc42b9608108c724ef55337aabdd9ce2f5244b94c8fd64311e70e18b5f8cf5f68533c2639e550d +DIST mold-1.4.1.tar.gz 6280266 BLAKE2B 60d0a876e0bcc8f644e4b6fffe0de14299bf2bd6e382869c87761d725dca6efa874cac37aaf94ad85038c5a24521ed3582782be943236ab81c2e4b66e6002f5e SHA512 304caf4e9d9b24170a9442a84036790407bd02609a5d07c31e5f0f6285128099cbc962571804636a5da55afda59b447c12218f9e4d402fbfa55ebc354814bdda EBUILD mold-1.3.1-r1.ebuild 2264 BLAKE2B 5353e5967cae7cbfcf4d768d42c23701ecbc0016c6b5e177d655ca2a6c578df202b7598850af9c9cf527ea5361c6ffbedf18d39b8a1adfbfdf3ab7036cae2802 SHA512 44bb07f58b481536ad247da9576dc9ab510b2e4148dc2a4c94cf6c356409344a21319b1a59ee576f6ec41422631158cc6d540aa4fc4105dcc81b8d071952b611 EBUILD mold-1.3.1.ebuild 2200 BLAKE2B 7e8a4f95b4edfe6642f6409cd41ef8bf9938ac5c688d0942d74c074b0cc0f1de0b1cf491f876685c59c04934d882cf8e728820b7ea9064a5d0700058ea0842fd SHA512 e962c064be2f8fe1699838fe93ead8b5864dcc64f0f4b10b052522d6099cdeb3d2096fee74b6951d0aa18e2f09ad99d595c1f0e5f4666788eebb80fcd03a6000 EBUILD mold-1.4.0.ebuild 2200 BLAKE2B 7e8a4f95b4edfe6642f6409cd41ef8bf9938ac5c688d0942d74c074b0cc0f1de0b1cf491f876685c59c04934d882cf8e728820b7ea9064a5d0700058ea0842fd SHA512 e962c064be2f8fe1699838fe93ead8b5864dcc64f0f4b10b052522d6099cdeb3d2096fee74b6951d0aa18e2f09ad99d595c1f0e5f4666788eebb80fcd03a6000 -EBUILD mold-9999.ebuild 2193 BLAKE2B 12b3d1d0a480392843605f906051bc8e83c988cb2e9717c5b1ae2dcd0d4f5503487c5245e24fd32e9dceaa4083b05e0862582a6e78078be7b9646d416aac7172 SHA512 7562327a3f6c95dec206df868bc4f8c1cf59b2962249811068bd106ad480c4a5769aa1194b88ee8e20e3477b67ec51a068d3049f7ab786ab5fa3c1b8f539b1b5 -MISC metadata.xml 424 BLAKE2B a1c0cbdcb86c323fa1e6143c9665ec548f7713e74002a25b2fc26c51b60dae00922d3448a5aaecd5027a8cb026a681386ca7dea90657a3e10b25fb194dafc0d3 SHA512 1adc934e78ca0210743a1aa7479ebc4b5ea0b66a348c4408423460f02b404b885d3a8eca6e89ea8ac53ac9c76e85116965f1eef79e3f3e1f0451c8cf5ce0dfd6 +EBUILD mold-1.4.1.ebuild 2523 BLAKE2B 918cacb29b353bffe93f6b8164608aad604c8677b266c208913578daec2ee2ce95d619611b7601cd37f5db7e16f84d2929cd759f13c9ccec151243802fc40faa SHA512 a5d56159205814b4148faf68a9945d1915386472b2c42c4c2041a0ca3f78146a8ca3649a0a565af5d05d30d9d1fdb76aa6b6db60e2b0bd1a071255d60c6956a3 +EBUILD mold-9999.ebuild 2390 BLAKE2B 4ec131858d22054500485e7b534f571cc313b2ad8f223825508939c74f075e47e278ab5e5b5f01c42d33a1a784a087bbc35439d768004ee0a661174648ad94da SHA512 e85c79d6670bc86f20448e389c7fb60d59fa0e0ef24bb5bc740bde50ba7f9999e70352cbe1017d3b26f0b69a95f679603e2fccf3230c957314d29cd0018af498 +MISC metadata.xml 521 BLAKE2B beb00b6a0cf0b062e5ca97aaf42cc39dfd35459159b9b84c894909dd19ecf5e7bf22aea234de31b9deddbeb26b8b64e0cef306f606a78b279b915c0c20cb4e33 SHA512 ca5c1bd9e7fbb02b79607133e28a00b44e4dbebd815b6a4f4c6e96514c43e744eee4a8485d6aaa5a34438dcc928a9082bfa07c392caf4fe1290a584ec69efa58 diff --git a/sys-devel/mold/files/mold-1.4.1-glob-tests.patch b/sys-devel/mold/files/mold-1.4.1-glob-tests.patch new file mode 100644 index 000000000000..ad9dda565323 --- /dev/null +++ b/sys-devel/mold/files/mold-1.4.1-glob-tests.patch @@ -0,0 +1,296 @@ +From 60070e0c1352a1cc6b02a0d1a30c657368a033c3 Mon Sep 17 00:00:00 2001 +From: Rui Ueyama +Date: Fri, 19 Aug 2022 20:05:26 +0800 +Subject: [PATCH] Simplify + +--- + test/elf/CMakeLists.txt | 265 +------------------------------------- + test/macho/CMakeLists.txt | 100 +------------- + 2 files changed, 6 insertions(+), 359 deletions(-) + +diff --git a/test/elf/CMakeLists.txt b/test/elf/CMakeLists.txt +index 5d15d6cb..138e8205 100644 +--- a/test/elf/CMakeLists.txt ++++ b/test/elf/CMakeLists.txt +@@ -1,269 +1,12 @@ +-set(MOLD_ELF_TESTS +- absolute-symbols +- allow-multiple-definition +- ar-alignment +- arm32-thumb-interwork +- as-needed +- as-needed-weak +- as-needed2 +- auxiliary +- basic +- bno-symbolic +- bsymbolic +- bsymbolic-functions +- bug178 +- build-id +- canonical-plt +- cmdline +- color-diagnostics +- comment +- common +- common-archive +- common-ref +- compress-debug-sections +- compressed-debug-info +- compressed-debug-info-gnu +- copyrel +- copyrel-protected +- copyrel-relro +- dead-debug-sections +- debug-macro-section +- default-symver +- defsym +- defsym2 +- demangle +- demangle-rust +- dependency-file +- disable-new-dtags +- discard +- dso-undef +- dt-init +- dt-needed +- duplicate-error +- dynamic +- dynamic-dt-debug +- dynamic-linker +- dynamic-list +- dynamic-list2 +- dynamic-list3 +- emit-relocs +- empty-file +- empty-input +- empty-version +- emulation-deduction +- entry +- exception +- exception-mcmodel-large +- exclude-libs +- exclude-libs2 +- exclude-libs3 +- execstack +- execstack-if-needed +- export-dynamic +- export-from-exe +- fatal-warnings +- filler +- filter +- func-addr +- gc-sections +- gdb-index-compress-output +- gdb-index-dwarf2 +- gdb-index-dwarf3 +- gdb-index-dwarf4 +- gdb-index-dwarf5 +- gdb-index-empty +- glibc-2.22-bug +- gnu-hash +- gnu-linkonce +- gnu-retain +- gnu-unique +- gnu-warning +- hello-dynamic +- hello-static +- help +- hidden-undef +- icf +- icf-small +- ifunc-dso +- ifunc-dynamic +- ifunc-export +- ifunc-static +- ifunc-static-pie +- image-base +- incompatible-libs +- incompatible-libs2 +- incompatible-obj +- init +- init-array +- init-array-priorities +- init-array-readonly +- init-in-dso +- initfirst +- interpose +- invalid-version-script +- large-alignment +- large-alignment-dso +- link-order +- linker-script +- linker-script-defsym +- linker-script2 +- linker-script3 +- linker-script4 +- lto-archive +- lto-dso +- lto-gcc +- lto-llvm +- lto-version-script +- many-sections +- mergeable-records +- mergeable-strings +- missing-but-ok +- missing-error +- mold-wrapper +- mold-wrapper2 +- no-quick-exit +- nocopyreloc +- noinhibit-exec +- non-canonical-plt +- nostdlib +- note +- note-property +- note2 +- now +- oformat-binary +- omagic +- pack-dyn-relocs-relr +- package-metadata +- pie +- plt +- plt-dso +- pltgot +- preinit-array +- print-dependencies +- protected +- protected-dynsym +- push-pop-state +- relax +- reloc +- reloc-overflow +- reloc-rodata +- reloc-zero +- relocatable +- relocatable-archive +- relro +- repro +- require-defined +- response-file +- retain-symbols-file +- reverse-sections +- rodata-name +- rosegment +- rpath +- run +- run-clang +- section-alignment +- section-name +- section-start +- shared +- shuffle-sections +- shuffle-sections-seed +- soname +- start-lib +- start-stop-symbol +- static-archive +- static-pie +- stdout +- strip +- symbol-rank +- symbol-version +- symbol-version2 +- symbol-version3 +- symtab +- symtab-dso +- symtab-section-symbols +- synthetic-symbols +- sysroot +- sysroot-linker-script +- sysroot2 +- thin-archive +- thread-count +- tls-common +- tls-dso +- tls-gd +- tls-gd-mcmodel-large +- tls-gd-noplt +- tls-gd2 +- tls-ie +- tls-large-tbss +- tls-ld +- tls-ld-mcmodel-large +- tls-ld-noplt +- tls-le +- tls-module-base +- tls-nopic +- tls-pic +- tlsdesc +- tlsdesc-import +- tlsdesc-static +- trace +- trace-symbol +- undefined +- unique +- unresolved-symbols +- verbose +- version +- version-script +- version-script10 +- version-script11 +- version-script12 +- version-script13 +- version-script14 +- version-script15 +- version-script16 +- version-script17 +- version-script2 +- version-script3 +- version-script4 +- version-script5 +- version-script6 +- version-script7 +- version-script8 +- version-script9 +- versioned-undef +- visibility +- warn-common +- warn-execstack +- warn-once +- warn-shared-textrel +- warn-textrel +- warn-unresolved-symbols +- weak-export-dso +- weak-export-exe +- weak-undef +- whole-archive +- wrap +- z-cet-report +- z-defs +- z-ibt +- z-ibtplt +- z-max-page-size +- z-nodefaultlib +- z-nodump +- z-now +- z-origin +- z-separate-code +- z-shstk +- z-text +- z-unknown +- ) +- + option(MOLD_ENABLE_QEMU_TESTS "Enable tests for other targets" OFF) + ++file(GLOB MOLD_ELF_TESTS RELATIVE ${CMAKE_CURRENT_LIST_DIR} "*.sh") ++ + function(mold_add_arch_test NAME TRIPLE MACHINE) + if(NOT ${CMAKE_HOST_SYSTEM_PROCESSOR} STREQUAL ${MACHINE}) + set(TEST_NAME "${MACHINE}-${NAME}") + add_test(NAME ${TEST_NAME} +- COMMAND bash -x ${CMAKE_CURRENT_LIST_DIR}/${NAME}.sh ++ COMMAND bash -x ${CMAKE_CURRENT_LIST_DIR}/${NAME} + WORKING_DIRECTORY ${mold_BINARY_DIR}) + + set(TEST_ENV +@@ -280,7 +23,7 @@ endfunction() + + foreach(TEST IN LISTS MOLD_ELF_TESTS) + add_test(NAME "${CMAKE_HOST_SYSTEM_PROCESSOR}-${TEST}" +- COMMAND bash -x ${CMAKE_CURRENT_LIST_DIR}/${TEST}.sh ++ COMMAND bash -x ${CMAKE_CURRENT_LIST_DIR}/${TEST} + WORKING_DIRECTORY ${mold_BINARY_DIR}) + + if(MOLD_ENABLE_QEMU_TESTS) diff --git a/sys-devel/mold/metadata.xml b/sys-devel/mold/metadata.xml index f8a85299d5bb..20ae5863a76b 100644 --- a/sys-devel/mold/metadata.xml +++ b/sys-devel/mold/metadata.xml @@ -12,4 +12,7 @@ rui314/mold + + Use dev-cpp/tbb package instead of vendored copy + diff --git a/sys-devel/mold/mold-1.4.1.ebuild b/sys-devel/mold/mold-1.4.1.ebuild new file mode 100644 index 000000000000..1aac8ca1098e --- /dev/null +++ b/sys-devel/mold/mold-1.4.1.ebuild @@ -0,0 +1,103 @@ +# Copyright 2021-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake toolchain-funcs + +DESCRIPTION="A Modern Linker" +HOMEPAGE="https://github.com/rui314/mold" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/rui314/mold.git" + inherit git-r3 +else + SRC_URI="https://github.com/rui314/mold/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~riscv" +fi + +# mold (AGPL-3) +# - xxhash (BSD-2) +# - tbb (Apache-2.0) +LICENSE="AGPL-3 Apache-2.0 BSD-2" +SLOT="0" +IUSE="system-tbb" + +RDEPEND=" + sys-libs/zlib + system-tbb? ( >=dev-cpp/tbb-2021.4.0:= ) + !kernel_Darwin? ( + >=dev-libs/mimalloc-2:= + dev-libs/openssl:= + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + # Allows us to rm the tests as before. Will be included in next + # release. + "${FILESDIR}"/mold-1.4.1-glob-tests.patch +) + +pkg_pretend() { + # Requires a c++20 compiler, see #831473 + if [[ ${MERGE_TYPE} != binary ]]; then + if tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]]; then + die "${PN} needs at least gcc 10" + elif tc-is-clang && [[ $(clang-major-version) -lt 12 ]]; then + die "${PN} needs at least clang 12" + fi + fi +} + +src_prepare() { + cmake_src_prepare + + # Needs unpackaged dwarfdump + rm test/elf/{{dead,compress}-debug-sections,compressed-debug-info}.sh || die + + # Heavy tests, need qemu + rm test/elf/gdb-index-{compress-output,dwarf{2,3,4,5}}.sh || die + rm test/elf/lto-{archive,dso,gcc,llvm,version-script}.sh || die + + # Sandbox sadness + rm test/elf/run.sh || die + sed -i 's|`pwd`/mold-wrapper.so|"& ${LD_PRELOAD}"|' \ + test/elf/mold-wrapper{,2}.sh || die + + # static-pie tests require glibc built with static-pie support + if ! has_version -d 'sys-libs/glibc[static-pie(+)]'; then + rm test/elf/{,ifunc-}static-pie.sh || die + fi + + # Don't require python + sed -i '/find_package(Python3/d' CMakeLists.txt || die + sed -i '/add_dependencies/d' CMakeLists.txt || die + cat <git-hash.cc +#include +namespace mold { +std::string mold_git_hash = "gentoo-${PVR}"; +} +EOF +} + +src_configure() { + local mycmakeargs=( + -DMOLD_ENABLE_QEMU_TESTS=OFF + -DMOLD_LTO=OFF # Should be up to the user to decide this with CXXFLAGS. + -DMOLD_USE_SYSTEM_MIMALLOC=ON + -DMOLD_USE_SYSTEM_TBB=$(usex system-tbb) + ) + cmake_src_configure +} + +src_install() { + dobin "${BUILD_DIR}"/${PN} + dolib.so "${BUILD_DIR}"/${PN}-wrapper.so + + dodoc docs/{design,execstack}.md + doman docs/${PN}.1 + + dosym ${PN} /usr/bin/ld.${PN} + dosym ${PN} /usr/bin/ld64.${PN} + dosym ../../../usr/bin/${PN} /usr/libexec/${PN}/ld +} diff --git a/sys-devel/mold/mold-9999.ebuild b/sys-devel/mold/mold-9999.ebuild index 2a7faac5052d..b170b570b827 100644 --- a/sys-devel/mold/mold-9999.ebuild +++ b/sys-devel/mold/mold-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit toolchain-funcs +inherit cmake toolchain-funcs DESCRIPTION="A Modern Linker" HOMEPAGE="https://github.com/rui314/mold" @@ -12,28 +12,26 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://github.com/rui314/mold/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64" + KEYWORDS="~amd64 ~riscv" fi -LICENSE="AGPL-3" +# mold (AGPL-3) +# - xxhash (BSD-2) +# - tbb (Apache-2.0) +LICENSE="AGPL-3 Apache-2.0 BSD-2" SLOT="0" +IUSE="system-tbb" -RDEPEND=">=dev-cpp/tbb-2021.4.0:= +RDEPEND=" sys-libs/zlib + system-tbb? ( >=dev-cpp/tbb-2021.4.0:= ) !kernel_Darwin? ( >=dev-libs/mimalloc-2:= dev-libs/openssl:= - )" -# As of 1.1, xxhash is now a header-only dep, but it's now bundled :( -# TODO: restore SYSTEM_XXHASH upstream? + ) +" DEPEND="${RDEPEND}" -PATCHES=( - # Bug #841575 - "${FILESDIR}"/${PN}-1.2.1-install-nopython.patch - "${FILESDIR}"/${PN}-1.3.0-openssl-pkgconfig.patch -) - pkg_pretend() { # Requires a c++20 compiler, see #831473 if [[ ${MERGE_TYPE} != binary ]]; then @@ -46,7 +44,7 @@ pkg_pretend() { } src_prepare() { - default + cmake_src_prepare # Needs unpackaged dwarfdump rm test/elf/{{dead,compress}-debug-sections,compressed-debug-info}.sh || die @@ -64,34 +62,36 @@ src_prepare() { if ! has_version -d 'sys-libs/glibc[static-pie(+)]'; then rm test/elf/{,ifunc-}static-pie.sh || die fi -} - -src_compile() { - tc-export CC CXX - emake \ - CFLAGS="${CFLAGS}" \ - CXXFLAGS="${CXXFLAGS}" \ - SYSTEM_TBB=1 \ - SYSTEM_MIMALLOC=1 \ - STRIP="true" \ - LIBDIR="${EPREFIX}/usr/$(get_libdir)" + # Don't require python + sed -i '/find_package(Python3/d' CMakeLists.txt || die + sed -i '/add_dependencies/d' CMakeLists.txt || die + cat <git-hash.cc +#include +namespace mold { +std::string mold_git_hash = "gentoo-${PVR}"; +} +EOF } -src_test() { - emake \ - SYSTEM_TBB=1 \ - SYSTEM_MIMALLOC=1 \ - check +src_configure() { + local mycmakeargs=( + -DMOLD_ENABLE_QEMU_TESTS=OFF + -DMOLD_LTO=OFF # Should be up to the user to decide this with CXXFLAGS. + -DMOLD_USE_SYSTEM_MIMALLOC=ON + -DMOLD_USE_SYSTEM_TBB=$(usex system-tbb) + ) + cmake_src_configure } src_install() { - emake \ - SYSTEM_TBB=1 \ - SYSTEM_MIMALLOC=1 \ - DESTDIR="${D}" \ - PREFIX="${EPREFIX}/usr" \ - LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ - STRIP="true" \ - install + dobin "${BUILD_DIR}"/${PN} + dolib.so "${BUILD_DIR}"/${PN}-wrapper.so + + dodoc docs/{design,execstack}.md + doman docs/${PN}.1 + + dosym ${PN} /usr/bin/ld.${PN} + dosym ${PN} /usr/bin/ld64.${PN} + dosym ../../../usr/bin/${PN} /usr/libexec/${PN}/ld } -- cgit v1.2.3