mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-09 14:06:58 +02:00
dev-lang/rust-bin: Sync with Gentoo
It's from Gentoo commit 4d9c164ae8269af33819eb2567b56998b1b2c237.
This commit is contained in:
parent
b66c944122
commit
68df544453
@ -553,6 +553,34 @@ DIST rust-1.86.0-x86_64-unknown-linux-gnu.tar.xz 192462932 BLAKE2B 75bb01181aad6
|
||||
DIST rust-1.86.0-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B b7365bb0f74a12de2e80b4579323b3ae3b3e65460a216cad7c8f61d4fb4bb86bb55cc25721a6cbd8be5b2b5a92aec7601950d2f1b04f94644a890c91966bc20f SHA512 d57cd3221f0d1dbfe69dbe4c5417b0e2d292a09fa892ed46ea90df95b6502c5d0e54eb4916f1289041758dbcc30cd6910f2bd4edc99f2711abb6a9e246361c6b
|
||||
DIST rust-1.86.0-x86_64-unknown-linux-musl.tar.xz 283110076 BLAKE2B 9881d9dc7ac8e1f6cdf632131b31eae7404d17f76d38873509e4b8e549e00c37dfef3bdb0663a20b6fb13dc8198a6d25f74931d6f7e4d017400420a6032ab374 SHA512 abb2d6ccc009840b32e48755b2af2a7f2b04eafe285e5c2f35593bf3219e12cfb8ce9e15429cf2315bc5a0ee5103d3b64c7eea121cb77cb8ff2e699bd685bf88
|
||||
DIST rust-1.86.0-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 9dbec80a7661d103e0b0a2187bd524eb5a4f255e6a15ac4bf59f82eb0b5710ef09dec0f35dd0e3015d374c701c2945ddc510a05c5bad2287ce855c30c0460935 SHA512 9664e026d85ed42227680c385bfc42a2cdfdb3a37858ced5cfcf2f7baec4840e01fc0e3e581fba1297a55245864f3d1483f430fc58295b98b84814df07f73c0c
|
||||
DIST rust-1.87.0_beta20250420-aarch64-unknown-linux-gnu.tar.xz 167053492 BLAKE2B f2138a03c2e842daa3ad49bb25b2ea63b7cb40165e472cdb20aca778b9fbc6d21f6102e10a0de411e873ddac7726a52dd0221afc6869650aa9a4cdca2e7fa9c1 SHA512 1db6b9ccb1071e95af7900c891e2f72ce52b434d7157c5b89370288d4fc12f4b2f51edbac761e09be79777d2bd156a334a71535e9bd15fe8a67596a9853ff0c3
|
||||
DIST rust-1.87.0_beta20250420-aarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 55efcb2f4a63e712934e25edb15adacbe5941b0fa795827526fb720b5fc4083de7cc093c763cd86324b107aef74a953d06f510033f398fd018152e24ae3574a9 SHA512 b5d609a91d2bd2254337c776c33f6b6322211a7aa03da9afd26683afbcd5f02fcd62938b0288e572c55d8f413bc32b4d3df6c6cd544c4a6d3a38630cb058c91f
|
||||
DIST rust-1.87.0_beta20250420-aarch64-unknown-linux-musl.tar.xz 244278800 BLAKE2B 59b807b8c8e83c825a34734d6d317fb56a0fd670a629a20866ad2baa3afadc2e22353f81415b2ae073b705e063633f3961fcaf10ab34eb8eb6b2c05d2df204e4 SHA512 b6cb75ef359d48081dc4c40dc7e6f9794a121d750cec5b18f040aa0f80efa521d32eea0435cf74e467b59467af1bcbd971a3724d53a04963be7c0b21c5bcfdf8
|
||||
DIST rust-1.87.0_beta20250420-aarch64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B ac1cecf73f8018a8aa9bcf42f452818b810e13b7ea00be9b2a10ec60605980458b223600389dee74e679134951277ef5cd3b0d402425ffdcf1285530c490e028 SHA512 fedabb1ed5f3a38c36b20cd4dbbc44e11044522ad86e328d804ff975725195a33b321b447c5b918afa7bcff1485b1d4078a37181db4e3584905a7dca8ec13be2
|
||||
DIST rust-1.87.0_beta20250420-arm-unknown-linux-gnueabi.tar.xz 229437800 BLAKE2B c7f6f72c9f538832edb58443115b202e6947f6e4cb8bd2fbbb81ad36ef93ea899067d1a94970eccdb5e6577f9d6d5d60a829a125dac3b48dfb7892d029aa9b46 SHA512 601c2c9a0f4acd988bcd4ee1ba2515baa092c4558d8a2109a965873b26d91f5645605a9371cdadd8fa27eabc34c2d50a781f8921fc9f9eed91933f800f36ca69
|
||||
DIST rust-1.87.0_beta20250420-arm-unknown-linux-gnueabi.tar.xz.asc 801 BLAKE2B af63985f0b853ef1b8f0ae5b4448afe277c304cbb783cb73eee51a9c1b4429a245e164e5d63a62c9a50b72e0a52328e58ec2505eda2f5bc87cf36e4218d741e9 SHA512 deb475f6dff36af8ccaa4c27794dfc48073ea2e32177631e7ddde3f8f6cbceec6963f16c27b1fba9c191c4e48a6040b1929c4dd792303d6ee6cdda53bb5c893d
|
||||
DIST rust-1.87.0_beta20250420-arm-unknown-linux-gnueabihf.tar.xz 229830976 BLAKE2B 5cb3bc360d230b8b5fc3c5390b3d5097fefb76dfb73c47312ec229612fac1f1e34160b0a91d3374b7915dbece571f5edc05651bdfac344aebe6b99350b1d6042 SHA512 c1b6a2538967a05b336227d06e5cc7e73ad75e73abd39b1c690ffd6ddd9ec5f52adc2d209ace65672691da97ca12b200a7ecca3a0590f366af5aad0d190882e1
|
||||
DIST rust-1.87.0_beta20250420-arm-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 9a9f0c2cb9991f0131662b41e8dcfc6a8bc66b32baa844b58e25aae09699f902496927454377643987cec0031da23a9b7b358d07b28e327720f75b6426741926 SHA512 8145c0adfbef8179396ff9d65089f179a523e6b500908a9a272c858d86cbc6235909b1f5e91ef5188377d00ed6a22c8668baa3c16827620a1698c7abce42fd99
|
||||
DIST rust-1.87.0_beta20250420-armv7-unknown-linux-gnueabihf.tar.xz 235549272 BLAKE2B 8df4bb650ee3f4d58227480e341db7cc9f0e7b065cb887c2931da46eab951edb304e6dcb3320496ac9da4a90e386973126fe4e197152c37554dd17c2b1cb624f SHA512 8699544f8faf3002afb973179b3555bf12afd03667d295ec48d95cc3737e4bfd65d21bada4b7d2ad2582c6060a785603ec86ef636063b2b382da1bfedbfea331
|
||||
DIST rust-1.87.0_beta20250420-armv7-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 45cb81d2f9133c4c6929a0d866393858237d4d99eece49bf8878dc351ac31224e61cb9f19b96e2639cc29502cecc4475dd1eb4f1d96fbe6a45ad03e00a215ceb SHA512 c294dca3cff31b08e40394d8d25b4af5c7c98cfaaa7b2b1ee07b6c2af4b961181b56121b7638b42f6bcf36978b5a56e8311ec2c6f658b72daee39e4fbd360407
|
||||
DIST rust-1.87.0_beta20250420-i686-unknown-linux-gnu.tar.xz 263549596 BLAKE2B b2e31c243b1514f17bc43c7715838e710dda3a8fa567c49a470b7bce082873b802b655cc790fdbf5325ab3df6c7fe5ccaa1ab9295ed0071dee532bce52f0b06b SHA512 d02a842878dac99812aff56c6d906d60c51c37a6e03185c6a956f2712ffb0a46b9b198fdd7b05d50e7f9c56505d819253be28fa035f02c042065796853f571ed
|
||||
DIST rust-1.87.0_beta20250420-i686-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 3f6b3b1aea710e68713f67fcb13ad0ff81879f3e2c95bc288bf73dff01d051ca0e9f4e586b802fbf91dc9f75b69988c0df764a0d6128c02e9dbbc992f70fb340 SHA512 b35be052c1dba1b8d9f673a99fc5b2c5b123f33feffc4c5b24de2d5528c4624dc0d0ef75b9904cd9e86db12db7148693d1c5c065a07377072fc515fa4395ffd2
|
||||
DIST rust-1.87.0_beta20250420-loongarch64-unknown-linux-gnu.tar.xz 261203096 BLAKE2B efc35a94cba075d843bd800fb52cb26bd01bcb02567a708926a5f8163e50cfab20802f50a8f11b449448b7924df462aafd6756a25eca3dee9882efed7a987366 SHA512 da71cf2b582f95119fddfb2dadf668b3c9ce9d731cffa68510ca72a7d2f5304c91530f020c3edfdcd03f4aca73905e8e32e8d5c304d0eb81dea432e212e715e5
|
||||
DIST rust-1.87.0_beta20250420-loongarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B fee28e7ed6d77dd9a4a1a67fcdb886213c8cb047187508a0f4557dabc9a4fb9ff1278ffaf9b5ec652ac3eea1801275c4019221077a787a1045bce38c8b8bb08a SHA512 6f9de5973a73eff1f44121e859aa97d74ca3df451ac1cdc20e5cf6f242368aa355157eb24c91084dcd7c2e594810b8c7ce4b6258fac5e68404e1789ef76a3bd9
|
||||
DIST rust-1.87.0_beta20250420-powerpc-unknown-linux-gnu.tar.xz 255800912 BLAKE2B 56e2e716d97e96096563569f1f8823ad31b8f104f424bc75d23c2b694181df9dd81b2d6b550f18149fb367041e7c7f30463e4c0abe294b45f3b1853e6f1423eb SHA512 cd489c80bb6c901ba134af7f2d45afdd7ee1b82b3e1e4eb45049ec1316f9c067c463561459ddd7eab014ec8fdf4e00fc681baa63a36c1d953c2105df54acffe3
|
||||
DIST rust-1.87.0_beta20250420-powerpc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B c134bf010ec2db06a8643668ffb6474fa530be7c31a076b2700f47477cddd2d8591ab2288b19f11b228dc933cb78c0576b4e512b89f3346ce4f01a0d68afd65f SHA512 514039fa3faead4cdadaafbd7cc0583f7bb084a1accc295928b0f44657d94b0e47931d8badc69f80c13351ef6dd872a7d43856d7ba2ca63495a0f340c19f5c3c
|
||||
DIST rust-1.87.0_beta20250420-powerpc64-unknown-linux-gnu.tar.xz 255799988 BLAKE2B 585274636abb052f26ffeee7918a2ab5ee38029e7e895fbb278f24b659b8e28f34f6613375f90c1eb7dcc8236f657d5bef760c55291d048e4d102845883eee21 SHA512 b5d464d78b9b7ce0ef960c71d0a1e9d683ae599b46acaf096639baa69e0f67153e3ccf70e08ee4d2e9d23f8778cf654c6e9c3383d39a862a01ce03ecf2033338
|
||||
DIST rust-1.87.0_beta20250420-powerpc64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 5fe0d07c0fedc718143aa8bc43383a95397a96ac46affa15f5114cb782996430bd347bd2a488d2cbab162fd2570834761296ec5e837da145093a83444d5c9fb9 SHA512 9a3c2b157adff51a286815de379bb8e42990c6dc4ee345950ea866ef6ef7cd4da17f39868aafec8ad9682eed187ca5665f5d332af8dbdb9beb29ce21bf14ba0c
|
||||
DIST rust-1.87.0_beta20250420-powerpc64le-unknown-linux-gnu.tar.xz 271492844 BLAKE2B b090331958ac17b08b24b28ef772307bef4788ba16b40fa6cc62b0e1c6e4f5fecf4151048ab7f0ab10ff41a8c1c714df65e62c162dc9fdd8d56b3cc7390d93d5 SHA512 688fd8f82fb690f95a86e9457caca313527dee737c4bc6f928cce449ed456c5a569f1448afe6b8cee770e16a7603f5a212c62566df44115277cfc12b6969692d
|
||||
DIST rust-1.87.0_beta20250420-powerpc64le-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 6b83e970941e484c36c6147bb629383bf6a79a535c99f9c0c73b9881e38f2fcd4193bd27ffee4262fe2f5e0d74c867d35f7b60ff6543b61edc67b05b7674a5ac SHA512 c849e801743a2a7f36d7a436309ed0bc5adf52cc3717a631a2dd56eeafd1942e97d624500f67d83d53187a821a56db88bdaad8928bd732bcea0a5d5e11803a41
|
||||
DIST rust-1.87.0_beta20250420-riscv64gc-unknown-linux-gnu.tar.xz 250483088 BLAKE2B 175a7c391337c844879736d7b71e5a9ebb777fb6134cb8ad4e42a3de56815487b5cefca681089a93e354f1a1d8f8d5b3bfb5016bb7b80003db4d8e2f70be71fd SHA512 4ebafd8d1ebe0238e040c36c422b5b828b309c2f8322145ba07820a068e3c53a2ed7798c4ac67e2610baec1126c8d8e271c3b3004971490a253a5c59090c8fd7
|
||||
DIST rust-1.87.0_beta20250420-riscv64gc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 72e0e1cb9f3e5fcd76e62c3efd42530f2cf04d54f05cbabeaaf3e1e16ce3f84a2d5f0ba0658da8cfdfd574bf85e4471a0b963a2ba57c1d790b314f0b89df9f56 SHA512 0e9ea30c181d46a8835c6c323bfb23f3eb1a7a267361b8aad056d4c820dd69b184ba210a9d0e1341d65178929eac473c69d11b4e0ec4f65de52f82f9bb93900b
|
||||
DIST rust-1.87.0_beta20250420-s390x-unknown-linux-gnu.tar.xz 240064780 BLAKE2B 193ca1b6d4a65eab53be8b6c16acb7b0acade0cb3c41dc244e06c38d34a0c9b1a6ad7bf852cb2ce1e432ca8f509e890dbe63cfc48c4cca11f8dd72a52664c39f SHA512 060c876c11cd5783e7517ebeefe9d601b2f1e3220b69851200cb00d8fc06434c492740374798133248b3b5fd3b08e5d9ce9d458191896be9296a6245b7d30fe8
|
||||
DIST rust-1.87.0_beta20250420-s390x-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B f41d5b89fbdc2f2d7fd7bfa56df5a481784bfa86563c2429a19cc86c397146151b9de31ce71f6a54986fd307533dc8f9df0ca23edbf659fa0efb1bd74613cfd2 SHA512 96968b74f64a7402be3d27e09867d62eb0554169553abac241c6ad4393c3854128494776bc9132bdcaee499e89e6a4875b8a25731af176d88297fa74f6c1dbea
|
||||
DIST rust-1.87.0_beta20250420-x86_64-unknown-linux-gnu.tar.xz 198552720 BLAKE2B 89ed8af9a09c7dd63833d91482f87b727b9597978318c7e66cec36afd1adaa13ed8ed6c87a2a5e118d8d1d0fc022e6cf8e3c6c79c92edf95162df9baf83aca04 SHA512 33b1df17bda04cf0b4dcd04337185dbd1b99bb440a0cfa2b6aaaf72257acb739e07f417ee56b691e32b8739016149a8bd5492cca8a84c0daeb92cfd9c5d4560a
|
||||
DIST rust-1.87.0_beta20250420-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 45a0d818111946afc5e6544deea84d649175a0059f6a4574b7d7d2095ff008285ad09945f7e79b02331b13627da51cdea535cf80e4454248572a1fe5524489f2 SHA512 47d46d2c48cbe2a0b72278bf4e60483b889d83371ee35eb568809cd50d1e5058eee62f416e1ba3871016e0a2957be57a3716882eae41eb6c384510f4e523e3af
|
||||
DIST rust-1.87.0_beta20250420-x86_64-unknown-linux-musl.tar.xz 293222552 BLAKE2B 167b847bb5f23de2ab1b918976c7abe8cfa9d98b51ffad52aa208d986c9e409f37f72114280dd61a255496502d92d22e0d26c233c4034214d5e9f1565ecd32f1 SHA512 535e5320e11e70b86213146803994b7bf15475c24aa2822cf9f193586b01e8d77de509d9ba08cd6892f43b2caf1c22c657c4a1949582bc10283a47fc014de2d6
|
||||
DIST rust-1.87.0_beta20250420-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B e25674a14e3efdfd95fe2269c9848bd9c78a9f7819d35a6fa54abc50478250eaf1207249719d92b9d8fa104943a3129ff3045cd4e7039febf94ad483098796fd SHA512 f493ca8b9604350e93deec6b698086662b82b8b774d66b7090815755657111255710b04105bff9f72d9d83de0268cb34df4db9c184f1066a364d5c44dda3331f
|
||||
DIST rust-src-1.71.1.tar.xz 2460244 BLAKE2B e3a5b5bfb808310f96e760aab55310c7a790fa551d248c9c5dbb407e0a80653563d8df73a9e0973aa63d3286aad6c755b78098dd8db2dc1a2ed3cadb926b40e1 SHA512 659cc46e1ece2ddbcf5ab748bae48843bd36353cc633b59e4ac062d843af66919e8d5c39ccb72ebdbf94a0e26a8056ade6bd1c8fe9a936469bd405122a8ae35d
|
||||
DIST rust-src-1.74.1.tar.xz 2544036 BLAKE2B d95431b69f102782f51878ff73ce8802cac6dab7909497c3231d1c479b95dc2a618cc6efd8bac9c6bd59a2b10dc6be05199f1e1bd74e45cc640ee52352c29268 SHA512 11467d0936193c5a5be8c2eba1aefe2b7028af48494698863de2c4057d68ce33dcee1fc66dc2d68b1d32f0202ce49e9b906727849de8f8d904dd07930e76d5a4
|
||||
DIST rust-src-1.75.0.tar.xz 2570256 BLAKE2B 9db7ccff07ffe6991233e9f530321fd6ba48c561dcf1226537afa70c7d045421d8e83c5300b0866ec6fccfaae96dd67b9f204e9e0e12108c0c766d467cd78909 SHA512 e7565cea2f1658a05237a698e38880df2544319b41b6d8b0805db5f1f94fd3bb4f986967d0440fcdfe3a135e33246f3c747665b964f57ff5942f56133af78cdd
|
||||
@ -569,3 +597,4 @@ DIST rust-src-1.84.1.tar.xz 3016012 BLAKE2B c9edeaf0797a22e384c54b3fe3e7c833464c
|
||||
DIST rust-src-1.85.0.tar.xz 3036988 BLAKE2B b7281b23eef60cf052e1641a29915c02c590166a73e5ae75890072ce80f95a2ab71cead3e3da7adf757ec0352d1dcc87ba4c3070282a27657b34420fe24a0c16 SHA512 613cfa603dc457cee34b154acef9573d766ce5757c9e8342b13d362f2e62b4cee47071a59df9fd5fa42ecade1a9efdada5784402aaf7254d5996558533bff8db
|
||||
DIST rust-src-1.85.1.tar.xz 3036412 BLAKE2B f137ffcebd2d231d8b3dc5c9072f6afe39a071bc9608ac468bca364fafaa9c277b91e40da870a083c802cc13b9b876a548d7fa8ae67ad9552321a7412b7d8cd8 SHA512 d230cbb1daae3e2f5168abef94c5b99fb118c34a980f018d5df3e43f6ead4e0a17d6ea29bcfbcd0fb745e215f7a4d0282a99a714dba77b98a16254bb27c2d2ad
|
||||
DIST rust-src-1.86.0.tar.xz 3053544 BLAKE2B 2d1d8a4be4f9dc9355ce9a2d1599e0a57c5d1cb32f7b2eb413f6009dbce7d63db2533dc038cf50f5277a2d7bf4434f2076632c12a6fd33335ccf3a9f2ab685d1 SHA512 2818d94412bb0766ce53383932cd8ce96275a8e923f916c4bf7116fbcb7c2053cfb9714667add1a9d50b18366c973ba3ab4fe55d49c8abc8cc57656635c59f63
|
||||
DIST rust-src-1.87.0_beta20250420.tar.xz 3118744 BLAKE2B 44c32b7b91c1b8440eaa64ec22422775fcc47581b0620bb51fcf738fa9e73ee938c40df578885db095cd4b442f50d972c2ec44c64a77a6093c7cf65bcee04a70 SHA512 cb08ad457250112c696e5ea82606ecf1f49d0196bfac81d743587458dc1c23a728afcd33c2651690a107c9fb45c15033648c2a7e0228aa00860b9b21b3b1e9a6
|
||||
|
@ -1,6 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>rust@gentoo.org</email>
|
||||
<name>Rust Project</name>
|
||||
</maintainer>
|
||||
<maintainer type="person" proxied="yes">
|
||||
<email>randy@electronsweatshop.com</email>
|
||||
<name>Randy Barlow</name>
|
||||
@ -13,10 +17,6 @@
|
||||
<email>matoro_gentoo@matoro.tk</email>
|
||||
<name>Matoro Mahri</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>rust@gentoo.org</email>
|
||||
<name>Rust Project</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="clippy">Install clippy, Rust code linter</flag>
|
||||
<flag name="rustfmt">Install rustfmt, Rust code formatter</flag>
|
||||
|
@ -10,7 +10,7 @@ inherit llvm-r1 multilib prefix rust-toolchain verify-sig multilib-minimal
|
||||
|
||||
MY_P="rust-${PV}-r101"
|
||||
# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep "xz_url.*rust-src"
|
||||
MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-06-13/rust-src-${PV}.tar.xz"
|
||||
MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-05-02/rust-src-${PV}.tar.xz"
|
||||
GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PV}-r101" # omit leading slash
|
||||
|
||||
DESCRIPTION="Systems programming language from Mozilla"
|
||||
|
@ -27,7 +27,7 @@ else
|
||||
$(rust_arch_uri powerpc64le-unknown-linux-musl rust-${PV})
|
||||
) ) )
|
||||
"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Systems programming language from Mozilla"
|
||||
|
@ -70,6 +70,7 @@ RDEPEND="
|
||||
)
|
||||
!dev-lang/rust:stable
|
||||
!dev-lang/rust-bin:stable
|
||||
!dev-lang/rust-bin:1.86
|
||||
"
|
||||
BDEPEND="
|
||||
prefix? ( dev-util/patchelf )
|
||||
|
314
sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.87.0_beta20250420.ebuild
vendored
Normal file
314
sdk_container/src/third_party/portage-stable/dev-lang/rust-bin/rust-bin-1.87.0_beta20250420.ebuild
vendored
Normal file
@ -0,0 +1,314 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LLVM_COMPAT=( 20 )
|
||||
LLVM_OPTIONAL="yes"
|
||||
|
||||
inherit edo llvm-r1 multilib prefix rust-toolchain verify-sig multilib-minimal optfeature
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
# We need to fetch a tarball in src_unpack
|
||||
PROPERTIES+=" live"
|
||||
elif [[ ${PV} == *beta* ]]; then
|
||||
# curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep "xz_url.*rust-src"
|
||||
betaver=${PV//*beta}
|
||||
BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
|
||||
RUST_TOOLCHAIN_BASEURL=https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/
|
||||
SRC_URI="$(rust_all_arch_uris rust-beta rust-${PV})
|
||||
rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/rust-src-beta.tar.xz -> rust-src-${PV}.tar.xz )
|
||||
"
|
||||
else
|
||||
# curl -Ls static.rust-lang.org/dist/channel-rust-${PV}.toml | grep "xz_url.*rust-src"
|
||||
SRC_URI="$(rust_all_arch_uris "${PV}")
|
||||
rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2025-01-30/rust-src-${PV}.tar.xz )
|
||||
"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
fi
|
||||
|
||||
GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PVR}" # omit trailing slash
|
||||
|
||||
DESCRIPTION="Systems programming language from Mozilla"
|
||||
HOMEPAGE="https://www.rust-lang.org/"
|
||||
|
||||
if [[ ${PV} != *9999* && ${PV} != *beta* ]] ; then
|
||||
# Keep this separate to allow easy commenting out if not yet built
|
||||
SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-sparc64-unknown-linux-gnu.tar.xz ) "
|
||||
SRC_URI+=" mips? (
|
||||
abi_mips_o32? (
|
||||
big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips-unknown-linux-gnu.tar.xz )
|
||||
!big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mipsel-unknown-linux-gnu.tar.xz )
|
||||
)
|
||||
abi_mips_n64? (
|
||||
big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64-unknown-linux-gnuabi64.tar.xz )
|
||||
!big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64el-unknown-linux-gnuabi64.tar.xz )
|
||||
)
|
||||
)"
|
||||
SRC_URI+=" riscv? (
|
||||
elibc_musl? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-riscv64gc-unknown-linux-musl.tar.xz )
|
||||
)"
|
||||
SRC_URI+=" ppc64? ( elibc_musl? (
|
||||
big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64-unknown-linux-musl.tar.xz )
|
||||
!big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64le-unknown-linux-musl.tar.xz )
|
||||
) )"
|
||||
fi
|
||||
|
||||
LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
|
||||
SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable
|
||||
IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src rustfmt"
|
||||
|
||||
RDEPEND="
|
||||
>=app-eselect/eselect-rust-20190311
|
||||
dev-libs/openssl
|
||||
sys-apps/lsb-release
|
||||
|| (
|
||||
llvm-runtimes/libgcc
|
||||
sys-devel/gcc:*
|
||||
)
|
||||
!dev-lang/rust:stable
|
||||
!dev-lang/rust-bin:stable
|
||||
"
|
||||
BDEPEND="
|
||||
prefix? ( dev-util/patchelf )
|
||||
verify-sig? ( sec-keys/openpgp-keys-rust )
|
||||
"
|
||||
[[ ${PV} == *9999* ]] && BDEPEND+=" net-misc/curl"
|
||||
|
||||
REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
|
||||
|
||||
# stripping rust may break it (at least on x86_64)
|
||||
# https://github.com/rust-lang/rust/issues/112286
|
||||
RESTRICT="strip"
|
||||
|
||||
QA_PREBUILT="
|
||||
opt/rust-bin-${SLOT}/bin/.*
|
||||
opt/rust-bin-${SLOT}/lib/.*.so*
|
||||
opt/rust-bin-${SLOT}/libexec/.*
|
||||
opt/rust-bin-${SLOT}/lib/rustlib/.*/bin/.*
|
||||
opt/rust-bin-${SLOT}/lib/rustlib/.*/lib/.*
|
||||
"
|
||||
|
||||
# An rmeta file is custom binary format that contains the metadata for the crate.
|
||||
# rmeta files do not support linking, since they do not contain compiled object files.
|
||||
# so we can safely silence the warning for this QA check.
|
||||
QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
# We need to fetch the latest nightly listing and get the apprapriate src_uri for our arch
|
||||
local rust_bin_url rustc_src_url
|
||||
# Cut down on webrequests by fetching the nightly toml once
|
||||
curl -Ls static.rust-lang.org/dist/channel-rust-nightly.toml > "${WORKDIR}/channel-rust-nightly.toml" ||
|
||||
die "Failed to fetch nightly revision info"
|
||||
rustc_src_url=$(grep 'xz_url.*rust-src' "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2)
|
||||
rust_bin_url=$(grep "xz_url.*rust-nightly-$(rust_abi)" "${WORKDIR}/channel-rust-nightly.toml" | cut -d '"' -f 2)
|
||||
einfo "Using nightly Rust from: ${rust_bin_url}"
|
||||
|
||||
if use rust-src; then
|
||||
einfo "Using nightly Rust-src from: ${rustc_src_url}"
|
||||
# We need to fetch the rust-src tarball
|
||||
einfo "Fetching nightly rust-src tarball ..."
|
||||
curl --progress-bar -L "${rustc_src_url}" -o "${WORKDIR}/rust-src-${PV}.tar.xz" ||
|
||||
die "Failed to fetch nightly rust-src tarball."
|
||||
# no verify-sig here, just unpack it
|
||||
tar -xf "${WORKDIR}/rust-src-${PV}.tar.xz" || die "Failed to unpack nightly rust-src tarball"
|
||||
fi
|
||||
|
||||
einfo "Fetching nightly Rust tarball ..."
|
||||
curl --progress-bar -L "${rust_bin_url}" -O || die "Failed to fetch nightly tarball"
|
||||
if use verify-sig; then
|
||||
einfo "Fetching nightly signature ..."
|
||||
curl --progress-bar -L "${rust_bin_url}.asc" -O || die "Failed to fetch nightly signature"
|
||||
verify-sig_verify_detached "${WORKDIR}/rust-nightly-$(rust_abi).tar.xz" \
|
||||
"${WORKDIR}/rust-nightly-$(rust_abi).tar.xz.asc"
|
||||
fi
|
||||
tar -xf "${WORKDIR}/rust-nightly-$(rust_abi).tar.xz" || die "Failed to unpack nightly tarball"
|
||||
else
|
||||
# sadly rust-src tarball does not have corresponding .asc file
|
||||
# so do partial verification
|
||||
if use verify-sig; then
|
||||
for f in ${A}; do
|
||||
if [[ -f ${DISTDIR}/${f}.asc ]]; then
|
||||
verify-sig_verify_detached "${DISTDIR}/${f}" "${DISTDIR}/${f}.asc"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
default_src_unpack
|
||||
|
||||
fi
|
||||
case ${PV} in
|
||||
*9999*)
|
||||
mv "${WORKDIR}/rust-nightly-$(rust_abi)" "${S}" || die
|
||||
;;
|
||||
*beta*)
|
||||
mv "${WORKDIR}/rust-beta-$(rust_abi)" "${S}" || die
|
||||
;;
|
||||
*)
|
||||
mv "${WORKDIR}/rust-${PV}-$(rust_abi)" "${S}" || die
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
patchelf_for_bin() {
|
||||
local filetype=$(file -b ${1})
|
||||
if [[ ${filetype} == *ELF*interpreter* ]]; then
|
||||
einfo "${1}'s interpreter changed"
|
||||
patchelf ${1} --set-interpreter ${2} || die
|
||||
elif [[ ${filetype} == *script* ]]; then
|
||||
hprefixify ${1}
|
||||
fi
|
||||
}
|
||||
|
||||
rust_native_abi_install() {
|
||||
pushd "${S}" >/dev/null || die
|
||||
local analysis="$(grep 'analysis' ./components || die "analysis not found in components")"
|
||||
local std="$(grep 'std' ./components || die "std not found in components")"
|
||||
local components=( "rustc" "cargo" "${std}" )
|
||||
use doc && components+=( "rust-docs" )
|
||||
use clippy && components+=( "clippy-preview" )
|
||||
use rustfmt && components+=( "rustfmt-preview" )
|
||||
use rust-analyzer && components+=( "rust-analyzer-preview" "${analysis}" )
|
||||
# Rust component 'rust-src' is extracted from separate archive
|
||||
if use rust-src; then
|
||||
einfo "Combining rust and rust-src installers"
|
||||
case ${PV} in
|
||||
*9999*)
|
||||
mv -v "${WORKDIR}/rust-src-nightly/rust-src" "${S}" || die
|
||||
;;
|
||||
*beta*)
|
||||
mv -v "${WORKDIR}/rust-src-beta/rust-src" "${S}" || die
|
||||
;;
|
||||
*)
|
||||
mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
|
||||
;;
|
||||
esac
|
||||
echo rust-src >> ./components || die
|
||||
components+=( "rust-src" )
|
||||
fi
|
||||
edo ./install.sh \
|
||||
--components="$(IFS=,; echo "${components[*]}")" \
|
||||
--disable-verify \
|
||||
--prefix="${ED}/opt/rust-bin-${SLOT}" \
|
||||
--mandir="${ED}/opt/rust-bin-${SLOT}/man" \
|
||||
--disable-ldconfig
|
||||
|
||||
docompress /opt/${P}/man/
|
||||
|
||||
if use prefix; then
|
||||
local interpreter=$(patchelf --print-interpreter "${EPREFIX}"/bin/bash)
|
||||
ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${SLOT}/bin"
|
||||
find "${ED}/opt/${SLOT}/bin" -type f -print0 | \
|
||||
while IFS= read -r -d '' filename; do
|
||||
patchelf_for_bin ${filename} ${interpreter} \; || die
|
||||
done
|
||||
eend $?
|
||||
fi
|
||||
|
||||
local symlinks=(
|
||||
cargo
|
||||
rustc
|
||||
rustdoc
|
||||
rust-gdb
|
||||
rust-gdbgui
|
||||
rust-lldb
|
||||
)
|
||||
|
||||
use clippy && symlinks+=( clippy-driver cargo-clippy )
|
||||
use rustfmt && symlinks+=( rustfmt cargo-fmt )
|
||||
use rust-analyzer && symlinks+=( rust-analyzer )
|
||||
|
||||
einfo "installing eselect-rust symlinks and paths"
|
||||
local i
|
||||
for i in "${symlinks[@]}"; do
|
||||
# we need realpath on /usr/bin/* symlink return version-appended binary path.
|
||||
# so /usr/bin/rustc should point to /opt/rust-bin-<ver>/bin/rustc-<ver>
|
||||
local ver_i="${i}-bin-${SLOT}"
|
||||
ln -v "${ED}/opt/rust-bin-${SLOT}/bin/${i}" "${ED}/opt/rust-bin-${SLOT}/bin/${ver_i}" || die
|
||||
dosym -r "/opt/rust-bin-${SLOT}/bin/${ver_i}" "/usr/bin/${ver_i}"
|
||||
done
|
||||
|
||||
# symlinks to switch components to active rust in eselect
|
||||
dosym -r "/opt/rust-bin-${SLOT}/lib" "/usr/lib/rust/lib-bin-${SLOT}"
|
||||
dosym -r "/opt/rust-bin-${SLOT}/man" "/usr/lib/rust/man-bin-${SLOT}"
|
||||
dosym -r "/opt/rust-bin-${SLOT}/lib/rustlib" "/usr/lib/rustlib-bin-${SLOT}"
|
||||
dosym -r "/opt/rust-bin-${SLOT}/share/doc/rust" "/usr/share/doc/rust-bin-${SLOT}"
|
||||
|
||||
# make all capital underscored variable
|
||||
local CARGO_TRIPLET="$(rust_abi)"
|
||||
CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
|
||||
CARGO_TRIPLET="${CARGO_TRIPLET^^}"
|
||||
cat <<-_EOF_ > "${T}/50${P}"
|
||||
MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${SLOT}"
|
||||
$(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C target-feature=-crt-static\"")
|
||||
_EOF_
|
||||
doenvd "${T}/50${P}"
|
||||
|
||||
# note: eselect-rust adds EROOT to all paths below
|
||||
cat <<-_EOF_ > "${T}/provider-${PN}-${SLOT}"
|
||||
/usr/bin/cargo
|
||||
/usr/bin/rustdoc
|
||||
/usr/bin/rust-gdb
|
||||
/usr/bin/rust-gdbgui
|
||||
/usr/bin/rust-lldb
|
||||
/usr/lib/rustlib
|
||||
/usr/lib/rust/lib
|
||||
/usr/lib/rust/man
|
||||
/usr/share/doc/rust
|
||||
_EOF_
|
||||
|
||||
if use clippy; then
|
||||
echo /usr/bin/clippy-driver >> "${T}/provider-${PN}-${SLOT}"
|
||||
echo /usr/bin/cargo-clippy >> "${T}/provider-${PN}-${SLOT}"
|
||||
fi
|
||||
if use rustfmt; then
|
||||
echo /usr/bin/rustfmt >> "${T}/provider-${PN}-${SLOT}"
|
||||
echo /usr/bin/cargo-fmt >> "${T}/provider-${PN}-${SLOT}"
|
||||
fi
|
||||
if use rust-analyzer; then
|
||||
echo /usr/bin/rust-analyzer >> "${T}/provider-${PN}-${SLOT}"
|
||||
fi
|
||||
|
||||
insinto /etc/env.d/rust
|
||||
doins "${T}/provider-${PN}-${SLOT}"
|
||||
popd >/dev/null || die
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
if multilib_is_native_abi; then
|
||||
rust_native_abi_install
|
||||
else
|
||||
local rust_target
|
||||
rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
|
||||
dodir "/opt/${P}/lib/rustlib"
|
||||
cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
|
||||
"${ED}/opt/${P}/lib/rustlib" || die
|
||||
fi
|
||||
|
||||
# BUG: installs x86_64 binary on other arches
|
||||
rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
eselect rust update
|
||||
|
||||
if has_version dev-debug/gdb || has_version llvm-core/lldb; then
|
||||
elog "Rust installs helper scripts for calling GDB and LLDB,"
|
||||
elog "for convenience they are installed under /usr/bin/rust-{gdb,lldb}-${PV}."
|
||||
fi
|
||||
|
||||
if has_version app-editors/emacs; then
|
||||
optfeature "emacs support for rust" app-emacs/rust-mode
|
||||
fi
|
||||
|
||||
if has_version app-editors/gvim || has_version app-editors/vim; then
|
||||
optfeature "vim support for rust" app-vim/rust-vim
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect rust cleanup
|
||||
}
|
Loading…
Reference in New Issue
Block a user