diff options
Diffstat (limited to 'user/rust/APKBUILD')
-rw-r--r-- | user/rust/APKBUILD | 217 |
1 files changed, 94 insertions, 123 deletions
diff --git a/user/rust/APKBUILD b/user/rust/APKBUILD index 50608079b..ede75b2d8 100644 --- a/user/rust/APKBUILD +++ b/user/rust/APKBUILD @@ -1,32 +1,33 @@ -# Contributor: Jakub Jirutka <jakub@jirutka.cz> -# Contributor: Shiz <hi@shiz.me> -# Contributor: Jeizsm <jeizsm@gmail.com> # Maintainer: Samuel Holland <samuel@sholland.org> pkgname=rust -pkgver=1.37.0 -_bootcargover=0.37.0 -_bootver=1.36.0 -_llvmver=8 +pkgver=1.80.0 +_bootver=1.79.0-r0 +_llvmver=18 pkgrel=0 pkgdesc="The Rust Programming Language" url="https://www.rust-lang.org" arch="all" +#options="!check" # Failures on aarch64 and ppc64. license="(Apache-2.0 OR MIT) AND (NCSA OR MIT) AND BSD-2-Clause AND BSD-3-Clause" -depends="$pkgname-stdlib=$pkgver-r$pkgrel gcc musl-dev" +depends="$pkgname-std=$pkgver-r$pkgrel gcc musl-dev" +# debuginfo-gdb tests fail due to security settings +# node makes Rust think it can do rustdoc-gui tests which require many NPM pkgs +checkdepends="!gdb !node" makedepends=" curl-dev - libgit2-dev - libssh2-dev llvm$_llvmver-dev llvm$_llvmver-test-utils openssl-dev python3 + cargo-bootstrap=$_bootver + rust-bootstrap=$_bootver + rustfmt-bootstrap=$_bootver zlib-dev " provides="$pkgname-bootstrap=$pkgver-r$pkgrel" subpackages=" $pkgname-dbg - $pkgname-stdlib + $pkgname-std $pkgname-analysis $pkgname-doc $pkgname-gdb::noarch @@ -38,149 +39,138 @@ subpackages=" cargo-doc:_cargo_doc:noarch cargo-bash-completion:_cargo_bashcomp:noarch cargo-zsh-completion:_cargo_zshcomp:noarch - miri - rls rustfmt " source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.xz - https://distfiles.adelielinux.org/source/rust/cargo-$_bootcargover-$CBUILD.tar.xz - https://distfiles.adelielinux.org/source/rust/rust-std-$_bootver-$CBUILD.tar.xz - https://distfiles.adelielinux.org/source/rust/rustc-$_bootver-$CBUILD.tar.xz - 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch - 0002-Fix-LLVM-build.patch - 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch - 0004-Require-static-native-libraries-when-linking-static-.patch - 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch - 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch - 0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch - 0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch - 0009-compiletest-Match-suffixed-environments.patch - 0010-test-c-variadic-Fix-patterns-on-powerpc64.patch - 0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch - 0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch - 0013-Ignore-broken-and-non-applicable-tests.patch - 0014-Link-stage-2-tools-dynamically-to-libstd.patch - 0015-Move-debugger-scripts-to-usr-share-rust.patch - 0016-Add-foxkit-target-specs.patch - 0030-libc-linkage.patch - 0031-typenum-pmmx.patch - 0040-rls-atomics.patch + 0001-Fix-LLVM-build.patch + 0002-Fix-linking-to-zlib-when-cross-compiling.patch + 0003-Fix-rustdoc-when-cross-compiling-on-musl.patch + 0004-Remove-musl_root-and-CRT-fallback-from-musl-targets.patch + 0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch + 0006-Link-libssp_nonshared.a-on-all-musl-targets.patch + 0007-test-failed-doctest-output-Fix-normalization.patch + 0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch + 0009-Ignore-broken-and-non-applicable-tests.patch + 0010-Link-stage-2-tools-dynamically-to-libstd.patch + 0011-Move-debugger-scripts-to-usr-share-rust.patch + 0012-Add-foxkit-target-specs.patch + mir-opt-tests-endianness.patch + powerpc-atomics.patch + ppc64-abi.patch + stdarch-ppc.patch + test-be.patch + ui-test-strings.patch " builddir="$srcdir/rustc-$pkgver-src" _rlibdir="/usr/lib/rustlib/$CTARGET/lib" prepare() { default_prepare + # These tests require Node and various NPM packages. + rm -rf "$builddir"/tests/rustdoc-* - $srcdir/cargo-$_bootcargover-$CBUILD/install.sh \ - --destdir=$srcdir/prebuilt \ - --prefix=/ \ - --disable-ldconfig - $srcdir/rust-std-$_bootver-$CBUILD/install.sh \ - --destdir=$srcdir/prebuilt \ - --prefix=/ \ - --disable-ldconfig - $srcdir/rustc-$_bootver-$CBUILD/install.sh \ - --destdir=$srcdir/prebuilt \ - --prefix=/ \ - --disable-ldconfig + # Tests depend on FP precision that can't be given on i586: #1259 + rm -f "$builddir"/tests/ui/traits/object/print_vtable_sizes.rs + rm -f "$builddir"/tests/ui/traits/object/print_vtable_sizes.stdout } build() { cat > config.toml <<- EOF [build] + doc-stage = 2 + build-stage = 2 + test-stage = 2 build = "$CBUILD" host = [ "$CHOST" ] target = [ "$CTARGET" ] - cargo = "$srcdir/prebuilt/bin/cargo" - rustc = "$srcdir/prebuilt/bin/rustc" + cargo = "/usr/bin/cargo" + rustc = "/usr/bin/rustc" + rustfmt = "/usr/bin/rustfmt" + docs = true + compiler-docs = false submodules = false python = "python3" locked-deps = true vendor = true extended = true - tools = [ "analysis", "cargo", "clippy", "rls", "rustfmt", "src" ] + tools = [ "analysis", "cargo", "clippy", "rustfmt", "src" ] + verbose = 1 + sanitizers = false + profiler = false + cargo-native-static = false [install] prefix = "/usr" [rust] + optimize = true + debug = false codegen-units = 1 - codegen-units-std = 1 - debug-assertions = false - debuginfo-level = 2 + debuginfo-level = 1 debuginfo-level-rustc = 0 debuginfo-level-tests = 0 backtrace = true incremental = false parallel-compiler = false channel = "stable" + description = "Adelie ${pkgver}-r${pkgrel}" rpath = false verbose-tests = true + optimize-tests = true + codegen-tests = true dist-src = false + lld = false + use-lld = false + llvm-tools = false + backtrace-on-ice = true + remap-debuginfo = false jemalloc = false - llvm-libunwind = false + llvm-libunwind = "no" + new-symbol-mangling = true [target.$CTARGET] cc = "$CTARGET-gcc" cxx = "$CTARGET-g++" + ar = "ar" + ranlib = "ranlib" linker = "$CTARGET-gcc" llvm-config = "/usr/lib/llvm$_llvmver/bin/llvm-config" crt-static = false [dist] src-tarball = false + compression-formats = [ "xz" ] EOF - LIBGIT2_SYS_USE_PKG_CONFIG=1 \ LLVM_LINK_SHARED=1 \ RUST_BACKTRACE=1 \ python3 x.py dist -j ${JOBS:-2} } check() { - LIBGIT2_SYS_USE_PKG_CONFIG=1 \ LLVM_LINK_SHARED=1 \ - RUST_BACKTRACE=1 \ - python3 x.py test -j ${JOBS:-2} --no-doc --no-fail-fast \ - src/test/codegen \ - src/test/codegen-units \ - src/test/compile-fail \ - src/test/incremental \ - src/test/mir-opt \ - src/test/pretty \ - src/test/run-fail \ - src/test/run-fail/pretty \ - src/test/run-make \ - src/test/run-make-fulldeps \ - src/test/run-pass \ - src/test/run-pass/pretty \ - src/test/run-pass-fulldeps \ - src/test/run-pass-fulldeps/pretty \ - src/test/ui \ - src/test/ui-fulldeps + python3 x.py test -j ${JOBS:-2} --no-doc tests/ui } package() { cd "$builddir"/build/dist - tar xf rust-$pkgver-$CTARGET.tar.gz + tar xf rust-$pkgver-$CTARGET.tar.xz rust-$pkgver-$CTARGET/install.sh \ --destdir="$pkgdir" \ --prefix=/usr \ --sysconfdir="$pkgdir"/etc \ --disable-ldconfig - tar xf rust-src-$pkgver.tar.gz + tar xf rust-src-$pkgver.tar.xz rust-src-$pkgver/install.sh \ --destdir="$pkgdir" \ --prefix=/usr \ --disable-ldconfig - rm "$pkgdir"/usr/lib/*.so \ - "$pkgdir"/usr/lib/rustlib/components \ + rm "$pkgdir"/usr/lib/rustlib/components \ "$pkgdir"/usr/lib/rustlib/install.log \ "$pkgdir"/usr/lib/rustlib/manifest-* \ "$pkgdir"/usr/lib/rustlib/rust-installer-version \ "$pkgdir"/usr/lib/rustlib/uninstall.sh } -stdlib() { +std() { pkgdesc="Standard library for Rust" depends="musl-utils" @@ -192,7 +182,7 @@ stdlib() { analysis() { pkgdesc="Compiler analysis data for the Rust standard library" - depends="$pkgname=$pkgver-r$pkgrel $pkgname-stdlib=$pkgver-r$pkgrel" + depends="$pkgname=$pkgver-r$pkgrel $pkgname-std=$pkgver-r$pkgrel" _mv "$pkgdir"${_rlibdir%/*}/analysis "$subpkgdir"${_rlibdir%/*} } @@ -232,14 +222,14 @@ src() { cargo() { pkgdesc="The Rust package manager" provides="cargo-bootstrap=$pkgver-r$pkgrel" - depends="$pkgname-stdlib=$pkgver-r$pkgrel $pkgname" + depends="$pkgname-std=$pkgver-r$pkgrel $pkgname" _mv "$pkgdir"/usr/bin/cargo "$subpkgdir"/usr/bin } _cargo_clippy() { pkgdesc="A collection of Rust lints (cargo plugin)" - depends="$pkgname-stdlib=$pkgver-r$pkgrel cargo" + depends="$pkgname-std=$pkgver-r$pkgrel cargo" _mv "$pkgdir"/usr/bin/cargo-clippy \ "$pkgdir"/usr/bin/clippy-driver \ @@ -248,7 +238,7 @@ _cargo_clippy() { _cargo_fmt() { pkgdesc="Format Rust code (cargo plugin)" - depends="$pkgname-stdlib=$pkgver-r$pkgrel cargo rustfmt" + depends="$pkgname-std=$pkgver-r$pkgrel cargo rustfmt" install_if="cargo=$pkgver-r$pkgrel rustfmt=$pkgver-r$pkgrel" _mv "$pkgdir"/usr/bin/cargo-fmt "$subpkgdir"/usr/bin @@ -287,25 +277,10 @@ _cargo_doc() { "$subpkgdir"/usr/share/man/man1 } -miri() { - pkgdesc="An interpreter for Rust's mid-level intermediate representation" - license="Apache-2.0 OR MIT" - depends="$pkgname-stdlib=$pkgver-r$pkgrel" - - _mv "$pkgdir"/usr/bin/miri "$subpkgdir"/usr/bin -} - -rls() { - pkgdesc="The Rust language server" - license="Apache-2.0 OR MIT" - depends="$pkgname-stdlib=$pkgver-r$pkgrel" - - _mv "$pkgdir"/usr/bin/rls "$subpkgdir"/usr/bin -} - rustfmt() { pkgdesc="Format Rust code" - depends="$pkgname-stdlib=$pkgver-r$pkgrel" + provides="rustfmt-bootstrap=$pkgver-r$pkgrel" + depends="$pkgname-std=$pkgver-r$pkgrel" _mv "$pkgdir"/usr/bin/rustfmt "$subpkgdir"/usr/bin } @@ -316,26 +291,22 @@ _mv() { mv "$@" } -sha512sums="bfee43f578e6d44ead950b870b9fd31087e1bd3f917611f5dce7ad56504b83185edf43e297e8d1304e9e97b9a580d1e6adf6608ab8ed6dee0dc8c5153cdbc5d4 rustc-1.37.0-src.tar.xz -ab0711dafeae76d9718a0c6aaf118f512d295c66191d96198acc3591f5412d4ee6c50ad5cc56df8f1f32a2be3c4d9bb5ead798c6b9f4089c0a624e09825dd6be cargo-0.37.0-powerpc-foxkit-linux-musl.tar.xz -aa97abeccf03d3368b60731845d23ff74fb962818b7d1e6ada2e9a647b442a1b824541402f3a883c9be6e1f8db94ca98244fc4009ff0386403c57f999bd6d263 rust-std-1.36.0-powerpc-foxkit-linux-musl.tar.xz -5078bdd341b145119ba3396892cd8f63c65fafb1b041674e350b2cc02376fd2c32799baca85e916522c34c416a6c67d9d92bf8f44abb575a1ae1fedc4726516e rustc-1.36.0-powerpc-foxkit-linux-musl.tar.xz -5b765a47a49cbab26e5093ebf6dce5b8e3463ebdb0e404b9c952fef7993fd57e9a0d9f7d301c97b76b8bd35e4ea8b72c8768aa384cd215c2a12ddd45727343f8 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch -9b711ee16eed20a0293c1ca6d96c48db3fae5f2f60fdcb04ae2d1acfdc8036fa3b41ca799717aa14279fd7b7db0090861bceddeafd8d41f70433039e4983d9c8 0002-Fix-LLVM-build.patch -7f61bdc7c754379e1675d2f102f1f60f4c29ca2a2293d70741db46a0f29d61008d067166c7576cd0e5fa3c26e811e711e851b22f7df69974a7b53fa316c33777 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch -0f1989e4db3a48fe8718002a58aaecf359bc65bf5a6dae327c062fce0b8a3176a6b70c80c72118d5fcabbc16b67b986ce67ab1fda13ca52899ca320716f3e606 0004-Require-static-native-libraries-when-linking-static-.patch -b27045eb7809438db988979843f68ddfee46a6f889b0fbaaed401b249d6e224940e9d15143e55f8b2df911a8fa24dfec81da0f064b47a86f3ed24010aee309e3 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch -4662f036e037b99178bb24c32524211eb5fc10ac711d16f13ddb933db84811eab3149cbe943521536d00c765eade1c1df01ca7e8f4fee69fca540546c0fbe806 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch -8742ff1c442dc2c7baad528fd6c51e202d091f24fbd7ac1350241a729a20f6f90818b76bb4de0b36b09afdeaad89b54843f08fb474e2232854cb68cd3d6a57b5 0007-Fix-C-aggregate-passing-ABI-on-powerpc.patch -8eb5c08701cfcdc14ece1c40fa2276e760283ce9228c96ff1dedb5256dcec307c3705a8e27ac1bd767184d0acfc835b9b0b4f02d5fa7ec24a75f04014e67ec61 0008-Fix-zero-sized-aggregate-ABI-on-powerpc.patch -20f794339f7a9c048dad2f39b5a3dad9293b07ba0b130354c0e74ec71088d2f2c24f6630543e8e5a41b244c8c1013249403ce8acf1fc2c2b4ab5065049f7f04e 0009-compiletest-Match-suffixed-environments.patch -d3d3250d762b482c93679cbc7a1d5ccf2eb803e271b840a5d426cf77d58d2cb53fd76baf46bfbaf7674c5ef9f18133cf0b48be08864c002171f3547aaa377bd6 0010-test-c-variadic-Fix-patterns-on-powerpc64.patch -d01d27d6f344fd30f75e7acd8f1b967eda382f7ee6387f8b0c52aa1ab083d5d86fa9d8d424c3e2b792502e75df03bacc58bd24ed4e448cfefe6bbfbb57586b06 0011-test-use-extern-for-plugins-Don-t-assume-multilib.patch -e25a4ba32b3b6fbc774c341bb3bda481a9f86917204e7c9bd69f34e2a72b4b3e58256d0619a94ce1d0f4cc17913d7216974b86fe96a776ba4260d0a01dcacaa9 0012-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch -68f7b35980c7b4b7088e28a7350c847656d4ffecbcec125ac6790a057a8a735563739f0ade8a7cf0283844cd1655114fa7ad6be106993e34b66e520aed34dd6d 0013-Ignore-broken-and-non-applicable-tests.patch -b6d4ce58e540373da797c89ed2ca3b23a8504511ee6bb6d0c52bd04273498aab10c99baf6f4633bb5a246c2612a7a538cbfed494bf901afdc6688f937234b4ac 0014-Link-stage-2-tools-dynamically-to-libstd.patch -fc10130544f7ceda378a9e7fb03a0dc4ea32a6d031061eada60af2d1c688d94f38ab31aad74f8f11b8aec2614415befa2c5e9789eeaf73b998f39b9677886155 0015-Move-debugger-scripts-to-usr-share-rust.patch -2c11c4bee3c6d10de6c2a9937bf3901f4c60dd1d9c50fcf57daa182a9b4d7b40d27632d3ef31ef083ae7903fcd49fdd41413ab8de1021f7d857884b9ac53c724 0016-Add-foxkit-target-specs.patch -7642e95d7f5e5d167a2f3e1300fc63f7bf34b6c0667b4e43e7c2378acd8c293f82d7c5651dfb75b03d717c0c5c369911f595dc641a629024e615d443244e6da1 0030-libc-linkage.patch -0cb12e9165d198c1e04b258454dbaf5459e192ad24d64c9fa132ebe0f1bcd5da3550eae8dfdaa792fa809b505af62964ecf0219dc4373420ee8ad3e111539a09 0031-typenum-pmmx.patch -ab35bacf45ef5e46be110a8d27867fd4d5deb23cd5cbe8dc7f1da2177469945f9254f2a7915ee4fc430468a4421623429f0a01eb9eba14e047384efe3d3ec152 0040-rls-atomics.patch" +sha512sums="548522599122bdff739472c1d120dcff8de171d6f4155c2fb73e47c7d80431694ceceb0439f36ef2a7bea23ac5a76de8e1f75fcade1f3ff2c3fca0ab21e6197a rustc-1.80.0-src.tar.xz +b701f9ae32c4e62dde7ecaef40a9083f6253d83dcd3821c6ce86784fb439b11c5b908e42b4d9eff9ebe8860b3b4673c489ff8e6b4828e15df02756e4c8985c94 0001-Fix-LLVM-build.patch +1f976da43d99ff58b7d8716e594485e191c2df43ab4c75123a223ae0cfcca0c129281575d2bee5996faf10f9008357d30c48876a491b62bdd722c83c4f3d35d2 0002-Fix-linking-to-zlib-when-cross-compiling.patch +619a0150bdc59ef8d844e9eff907e51015003164d17012b38bcac642618efb65e25ea4b1ead06d4b023caf02d4eb8dbd481daa04b42d0002a9986f05854c0ca4 0003-Fix-rustdoc-when-cross-compiling-on-musl.patch +cfd8cfc1a8af2a8319ae9bd4ed14b1ef22d429e99da4237ea7d037d6fa556174db6b47e9268c8c258e08b7a71d8c2370cce8445c3dd994a07e4699705f2ae2de 0004-Remove-musl_root-and-CRT-fallback-from-musl-targets.patch +6868fe48b7424d39c94ea560037ab4154a0b8f20a027617433d912a5ec60cf0bf1a49da165009345b75f8aedf7d0f81dd23135f9bb28d3f5cd081b56aa74a986 0005-Prefer-libgcc_eh-over-libunwind-for-musl.patch +b34187a82cd3db02b8aac8f18147d653a7191b841e145460dfbff518a7747a6aa1c08721703929bfc7e446c9ed9512383a5eefaad2cb5c02d16e8f00d12627db 0006-Link-libssp_nonshared.a-on-all-musl-targets.patch +e13020274290c1149b7fcf3a119cc34d7f6b64abaa69d6ac9a8780569c4f44041c40b915da6e9675cc7e0ee05d42b13e14608fbab6eac6d3547428bf21f4e9f2 0007-test-failed-doctest-output-Fix-normalization.patch +6850174cebb3dfb2f41e277b0b46db9cabe18c904f39a6775f8cd12dc6c237a7de820a5dc8c538f9b965c069b4197141f0613add096574a7df4ca2d1ae01ab4d 0008-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch +f98ae741a9f33a0e3541c6c43a3eb86b653b202d70783435ea2cc1b35c1da8b6db796e9217e243050de05b9ea2520600c5e890481d2366a1da742aad3482fab2 0009-Ignore-broken-and-non-applicable-tests.patch +6b68d068d7653b81590f7a0bd5359868c0ce48fa3eda467cac9dbfcead7b566ab27489ee923b024e71294130a17b1f2efc1a06a8effc93ea4a4d5a43ec8d091d 0010-Link-stage-2-tools-dynamically-to-libstd.patch +c6d94cbb80394d270302a2389c22b528583c4ad7298c7b3f657175912e0abd075b45ec847daa2c8e6e4eb38536a8a37461cd15d78c0f83771d816f11e1cf2e01 0011-Move-debugger-scripts-to-usr-share-rust.patch +690d12d2b983f82fadad1ff661887852227871787d8b4f5dff7de96ac94dbb7d64887e19258fa146e8cf1e6356cffa6e5954739e9e133165e8d2c970c6f47a84 0012-Add-foxkit-target-specs.patch +e8561c9ceadf121239ad13496e4baeca6a93e29bb99bc2d37d9e1919caaf0e2456219a0e3d3cd88af281b2b9d23c735597f1ee05cc99daa690961397aa28efa6 mir-opt-tests-endianness.patch +5d57a7a18e0a7f8b7755de89255f97642e4fe585a02465de70227867ac99db84766cd25e702ae13c3a4488504bd4c84eb7e9ceb3a83fdf8f2df0eacf64cc16c1 powerpc-atomics.patch +4d21e0e04768e19f1d93ee54d787ed1c4c6fe1e7cab91c92413caa22765f96843f9d98ccb014210d893b3a6bb3246b6fba60b8d6d8a832fedbeff50803225b81 ppc64-abi.patch +63592425a6f68046b75148a25289ff1b8b6a7db02ca0aa7c97d35697f18267a6adeb8be3136c8fd930704352d5528e70b0d57f79bac39b9331953174f76d5919 stdarch-ppc.patch +07591c0b6731349093aee868723ab526391a6dda946e9dd442428d878e3d5f23223277778ea71860f0101cac23f47e7973f36d4fd88cf5d3e3ad95e9d6b07b27 test-be.patch +c1cdcff68504e5b7b9d5f3081c83c8d8855d9523cc3539bd727f3dc78b7db70b4ce40c76852dd62fc50423128faf86ed8af1c65f7955134af85bc494dd376001 ui-test-strings.patch" |