diff options
Diffstat (limited to 'sys-devel/rust-std')
-rw-r--r-- | sys-devel/rust-std/Manifest | 2 | ||||
-rw-r--r-- | sys-devel/rust-std/rust-std-1.84.0.ebuild | 154 |
2 files changed, 156 insertions, 0 deletions
diff --git a/sys-devel/rust-std/Manifest b/sys-devel/rust-std/Manifest index 07c3a487d8ed..d3bac054ec8d 100644 --- a/sys-devel/rust-std/Manifest +++ b/sys-devel/rust-std/Manifest @@ -8,6 +8,7 @@ DIST rustc-1.80.1-src.tar.xz 199234944 BLAKE2B 39891362f2a4bc249f5d943e3ded48d2a DIST rustc-1.81.0-src.tar.xz 216743872 BLAKE2B d9f52da9092d0723c862ebbb2dc351cad0670be6872f691b4c9f36faf06803f072720ebd04f06745c355d807991b38312cc830b12d6d3f50b0574bb7325340b7 SHA512 b8a837ced521d2ca2c7f228a0640da591384519e4dbc1ae768524d50616da6abbd2f7bdae3777caebc0447dac91bf76481282ce5a2264d7f30e173caa6321a51 DIST rustc-1.82.0-src.tar.xz 219769328 BLAKE2B 611f33e134c2d459c9af1695c0a4d033df93afc986e91a17fceb0dd293fb4ffbd5f7475ef571d36cecf49da6c3fdb3801c98d7f72f9dd1c39e42502f649b192f SHA512 d158c7c71c1814bde2a3ec3cbeabe34949bd3201b730c0d7ec6baad4158bb28dd13696c430a6b99dc38b9d23ad7ddf8dde7d2487cbfbbbe9c3473016994210f0 DIST rustc-1.83.0-src.tar.xz 353808388 BLAKE2B 217c85f7351a7c57a2684da2c7c81a32094187b3812dee628b327a5b2faca57235abc54d033c586c071c8bfa0c7360bb28761aaa42fe18414e388db704d81231 SHA512 64db57949c6ac1df6a3f4c6bd0938685a5fb1bc3d318b34ccfcfccb0f9eff1cffd4d8a53a190ef0409eeca9ad12bc6234c2c1de69196cc74ae02d6afa20d0ce6 +DIST rustc-1.84.0-src.tar.xz 354993944 BLAKE2B e4697d8a9f42484556ed490390aef535b2214ccb3715ade57936211c1c637737da5f2b9a6c53a30df0fba1744fbd80d4d1382c0b74f6b36b36098bf187557201 SHA512 9e964c1b964e74083a9002fa04b072fa8fe7a520b24ad55e88a89bb2a2a2cd5727c5438d6db425b824ae7502ab215c2dd3f49777efd65f76bae09965df2e070a EBUILD rust-std-1.71.1.ebuild 3434 BLAKE2B b419921941149604dde46b09eaf4c6c3456a750e86984e9da87f55a8c26a6f47ad0af220c9bf25eeb64087417cf03bfe21f2c649b9e4a470fac704665ea03991 SHA512 7b01967a53f8cc7343088ce1e744a5622f2e6129df1e3807490b782a9819e71493dd06cb848cdd748aa8caa8edda51af1c7088c819e249855cd2143c5b824df1 EBUILD rust-std-1.74.1.ebuild 3425 BLAKE2B 565cff2ad12983badb862c9c4cdf1ca6b29de258e0a612cc3320fab5b4802fe7fb15ca6e15e9a7f4007675a6ca9d9b294b01deaed19b61b411199ce5e70f25bd SHA512 49c10f5731a6d22c86b07497135c7a372bdc6d6c9cf5e6f4ec6848a73725d1238a94fc814763e60d6e680d1720e33e2607a458a5fbae41a043d6514abc9c4fbb EBUILD rust-std-1.75.0.ebuild 3513 BLAKE2B 0c7896ca2859e793c0daef7f0c8b28ec676dc80c737602bd127f420f651c922f4d5e4d0d066a4f22f3bf7f23d3b3e3da4b8903dd6b3cda8a00b170b44ee24906 SHA512 c4261b37358667ac32851fda7f79eb210bec30b2de69d5b867a5e6a6b26bbb10eb1acea2837fff4b836e0642982b15dff1b75912b0548959e5c9600d174c36ce @@ -17,4 +18,5 @@ EBUILD rust-std-1.80.1.ebuild 3424 BLAKE2B a1c2699723dfe16c431d46779b4bfa0360116 EBUILD rust-std-1.81.0.ebuild 3424 BLAKE2B a1c2699723dfe16c431d46779b4bfa03601162a912961e0c0c0c3aa95b39a69726513e6d040c8aebc4ff0dcf9f9d5aae9b20acc694407251b328749ca7e55048 SHA512 bbc066c53e4742f704a5f67431c6295e780b231145258eb8812c19a2ee048526eadf2a28727dfdb9f37f5adb205806ad0d1088fee7ec053ad70ac3fa6d8fe1c3 EBUILD rust-std-1.82.0.ebuild 3424 BLAKE2B a1c2699723dfe16c431d46779b4bfa03601162a912961e0c0c0c3aa95b39a69726513e6d040c8aebc4ff0dcf9f9d5aae9b20acc694407251b328749ca7e55048 SHA512 bbc066c53e4742f704a5f67431c6295e780b231145258eb8812c19a2ee048526eadf2a28727dfdb9f37f5adb205806ad0d1088fee7ec053ad70ac3fa6d8fe1c3 EBUILD rust-std-1.83.0.ebuild 3424 BLAKE2B a1c2699723dfe16c431d46779b4bfa03601162a912961e0c0c0c3aa95b39a69726513e6d040c8aebc4ff0dcf9f9d5aae9b20acc694407251b328749ca7e55048 SHA512 bbc066c53e4742f704a5f67431c6295e780b231145258eb8812c19a2ee048526eadf2a28727dfdb9f37f5adb205806ad0d1088fee7ec053ad70ac3fa6d8fe1c3 +EBUILD rust-std-1.84.0.ebuild 3424 BLAKE2B fc74d016011076c5666a5bd3e2f81817d54bd1befb750ee39ea9c9310eda4995682ff24d3d327900148e06691167d3610692baf33ef29ae9652863aa7c6a8a23 SHA512 2d135ccb3cff3701ae8230821d14b2048a37b1ea94fe79da992bcbe9d007a6d95f46fbfaab41d7bbd49952b4fa99c548e95107ac7d37d88cf9c90fac992d6f6c MISC metadata.xml 1088 BLAKE2B de084a7853c3464405807bbd6d75477dbfdee3f3f8318d27b1dd01ec9a3cf8af1072a0593105f2220caff6ebe055d36ca2974cabf00271458a2a13c2f394ccaa SHA512 c0cb17085432a5316b4a4a719398d5998b6379273fb94a7ee517b385b70a3bc6b61e9bb77ae1bb3fa94fe2efef403eab7c2a4c802f431abe4af22d392b764e96 diff --git a/sys-devel/rust-std/rust-std-1.84.0.ebuild b/sys-devel/rust-std/rust-std-1.84.0.ebuild new file mode 100644 index 000000000000..de231d3c162c --- /dev/null +++ b/sys-devel/rust-std/rust-std-1.84.0.ebuild @@ -0,0 +1,154 @@ +# Copyright 2020-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +inherit flag-o-matic multiprocessing python-any-r1 rust-toolchain toolchain-funcs + +DESCRIPTION="Rust standard library, standalone (for crossdev)" +HOMEPAGE="https://www.rust-lang.org" +SRC_URI="https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz" +S="${WORKDIR}/${P/-std/c}-src" + +LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4" +SLOT="stable/$(ver_cut 1-2)" +# please do not keyword +#KEYWORDS="" #nowarn +IUSE="debug" + +BDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/rust-${PV}:= +" + +DEPEND="|| + ( + >="${CATEGORY}"/gcc-4.7:* + >="${CATEGORY/sys-devel/llvm-core}"/clang-3.5:* + ) +" + +RDEPEND="${DEPEND}" + +# need full compiler to run tests +RESTRICT="test" + +QA_FLAGS_IGNORED="usr/lib/rust/${PV}/rustlib/.*/lib/lib.*.so" + +# +# The cross magic +# +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +is_cross() { + [[ ${CHOST} != ${CTARGET} ]] +} + +toml_usex() { + usex "$1" true false +} + +pkg_pretend() { + is_cross || die "${PN} should only be used for cross" +} + +pkg_setup() { + python-any-r1_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + # do the great cleanup + strip-flags + filter-flags '-mcpu=*' '-march=*' '-mtune=*' '-m32' '-m64' + strip-unsupported-flags + + local rust_root x + rust_root="$(rustc --print sysroot)" + rtarget="$(rust_abi ${CTARGET})" + rtarget="${ERUST_STD_RTARGET:-${rtarget}}" # some targets need to be custom. + rbuild="$(rust_abi ${CBUILD})" + rhost="$(rust_abi ${CHOST})" + + echo + for x in CATEGORY rust_root rbuild rhost rtarget RUSTFLAGS CFLAGS CXXFLAGS LDFLAGS; do + einfo "$(printf '%10s' ${x^^}:) ${!x}" + done + + cat <<- EOF > "${S}"/config.toml + [build] + build = "${rbuild}" + host = ["${rhost}"] + target = ["${rtarget}"] + cargo = "${rust_root}/bin/cargo" + rustc = "${rust_root}/bin/rustc" + submodules = false + python = "${EPYTHON}" + locked-deps = true + vendor = true + extended = true + verbose = 2 + cargo-native-static = false + [install] + prefix = "${EPREFIX}/usr/lib/${PN}/${PV}" + sysconfdir = "etc" + docdir = "share/doc/rust" + bindir = "bin" + libdir = "lib" + mandir = "share/man" + [rust] + # https://github.com/rust-lang/rust/issues/54872 + codegen-units-std = 1 + optimize = true + debug = $(toml_usex debug) + debug-assertions = $(toml_usex debug) + debuginfo-level-rustc = 0 + backtrace = true + incremental = false + default-linker = "$(tc-getCC)" + rpath = false + dist-src = false + remap-debuginfo = true + jemalloc = false + [dist] + src-tarball = false + [target.${rtarget}] + ar = "$(tc-getAR ${CTARGET})" + cc = "$(tc-getCC ${CTARGET})" + cxx = "$(tc-getCXX ${CTARGET})" + linker = "$(tc-getCC ${CTARGET})" + ranlib = "$(tc-getRANLIB ${CTARGET})" + $(usev elibc_musl 'crt-static = false') + EOF + + einfo "${PN^} configured with the following settings:" + cat "${S}"/config.toml || die +} + +src_compile() { + env RUST_BACKTRACE=1 \ + "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) \ + library/std --stage 0 || die +} + +src_test() { + ewarn "${PN} can't run tests" +} + +src_install() { + local rustlib="lib/rust/${PV}/lib/rustlib" + dodir "/usr/${rustlib}" + pushd "build/${rhost}/stage0-sysroot/lib/rustlib" > /dev/null || die + cp -pPRv "${rtarget}" "${ED}/usr/${rustlib}" || die + popd > /dev/null || die +} |