summaryrefslogtreecommitdiff
path: root/user/rust/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'user/rust/APKBUILD')
-rw-r--r--user/rust/APKBUILD241
1 files changed, 121 insertions, 120 deletions
diff --git a/user/rust/APKBUILD b/user/rust/APKBUILD
index 9a37b97c3..ede75b2d8 100644
--- a/user/rust/APKBUILD
+++ b/user/rust/APKBUILD
@@ -1,31 +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.33.0
-_bootcargover=0.33.0
-_bootver=1.32.0
-_llvmver=7
+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
@@ -37,134 +39,138 @@ subpackages="
cargo-doc:_cargo_doc:noarch
cargo-bash-completion:_cargo_bashcomp:noarch
cargo-zsh-completion:_cargo_zshcomp:noarch
- 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-runtest-Fix-proc-macro-tests-on-musl-hosts.patch
- 0008-test-enum-debug-Correct-minimum-LLVM-version.patch
- 0009-test-use-extern-for-plugins-Don-t-assume-multilib.patch
- 0010-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
- 0011-Ignore-broken-and-non-applicable-tests.patch
- 0012-Link-stage-2-tools-dynamically-to-libstd.patch
- 0013-Move-debugger-scripts-to-usr-share-rust.patch
- 0014-Add-foxkit-target-specs.patch
- 0030-libc-linkage.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() {
- cd "$builddir"
-
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() {
- cd "$builddir"
-
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
- debuginfo = true
- debuginfo-lines = true
- debuginfo-only-std = true
- debuginfo-tools = true
+ 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 = "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 build -j ${JOBS:-2}
+ python3 x.py dist -j ${JOBS:-2}
}
check() {
- cd "$builddir"
-
- 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-fail-fulldeps \
- src/test/run-fail-fulldeps/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
+ LLVM_LINK_SHARED=1 \
+ python3 x.py test -j ${JOBS:-2} --no-doc tests/ui
}
package() {
- cd "$builddir"
+ cd "$builddir"/build/dist
- DESTDIR="$pkgdir" python3 x.py install
+ 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.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 \
- "$pkgdir"/usr/share/doc/rust/*.old
+ "$pkgdir"/usr/lib/rustlib/uninstall.sh
}
-stdlib() {
+std() {
pkgdesc="Standard library for Rust"
depends="musl-utils"
@@ -176,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%/*}
}
@@ -188,7 +194,8 @@ gdb() {
install_if="$pkgname=$pkgver-r$pkgrel gdb"
_mv "$pkgdir"/usr/bin/rust-gdb "$subpkgdir"/usr/bin
- _mv "$pkgdir"/usr/share/rust/gdb_*.py "$subpkgdir"/usr/share/rust || true
+ _mv "$pkgdir"/usr/bin/rust-gdbgui "$subpkgdir"/usr/bin
+ _mv "$pkgdir"/usr/share/rust/gdb_*.py "$subpkgdir"/usr/share/rust
}
lldb() {
@@ -198,7 +205,7 @@ lldb() {
install_if="$pkgname=$pkgver-r$pkgrel lldb"
_mv "$pkgdir"/usr/bin/rust-lldb "$subpkgdir"/usr/bin
- _mv "$pkgdir"/usr/share/rust/lldb_*.py "$subpkgdir"/usr/share/rust || true
+ _mv "$pkgdir"/usr/share/rust/lldb_*.py "$subpkgdir"/usr/share/rust
}
src() {
@@ -214,14 +221,15 @@ src() {
cargo() {
pkgdesc="The Rust package manager"
- depends="$pkgname-stdlib=$pkgver-r$pkgrel $pkgname"
+ provides="cargo-bootstrap=$pkgver-r$pkgrel"
+ 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 \
@@ -230,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
@@ -269,17 +277,10 @@ _cargo_doc() {
"$subpkgdir"/usr/share/man/man1
}
-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
}
@@ -289,23 +290,23 @@ _mv() {
mkdir -p "$dest"
mv "$@"
}
-sha512sums="3291e4e19f75f44c81e6fcf4c01edc7c9d326eca43722381231abcf2e99f4314059ba59a29b79f5511ad9421c358c45e8fe18584d6954d17fe2aabad0f9d9147 rustc-1.33.0-src.tar.xz
-24caa7730dd41f61b97bb909d499f928cebab948e814b786e7d3836e92188ef27da48147532e063b3cec424e41a4374581274f21dc79bb95cf310f92c8609579 cargo-0.33.0-powerpc64-foxkit-linux-musl.tar.xz
-c6d237d6daaae1e8a342691917bdc76fa6a59f5bd99a1df38baebf6d5c1ddc6f8460ac6e1db8168120accb9c5f90f652ea013b4d865c486c72e90244be753ebd rust-std-1.32.0-powerpc64-foxkit-linux-musl.tar.xz
-8ff3bca961e146593f17e1581d20eaeae99768a4fac65258cf5ef80ef69b427a4980fd345b69b831028ca3e882d52d2ebd42a2eccab2c812da09e2bc28960ffe rustc-1.32.0-powerpc64-foxkit-linux-musl.tar.xz
-a5e03a091b224b9cd3cd6d8a0b1ac70389f374c95ff09f55b01e739b3a98a8551d2208b2750137ebaacbb8628d1bb54a96aaeb938c961e4eb33a071594bce1dc 0001-Don-t-pass-CFLAGS-to-the-C-compiler.patch
-bf387aad3d117e30621bd1914c3a713a710db0639413d57802c3a9bba49bf422dedf5e03b4a3073ec1efbd571cbcd10b6a0b3f98f2b019555581db5599b84f44 0002-Fix-LLVM-build.patch
-b931204afaf3ac4c73f41c29586b0cebdb06867bf401717a473c2367ebf25be1a42827f7ccccea50c15006c744cb73fc7ea9627816d0a2b53421546a4e478436 0003-Allow-rustdoc-to-work-when-cross-compiling-on-musl.patch
-da362880f89a2df8223ed255d44803e9d7d8115666946fe3a4fe4a78030cd8ee40d6aabc1ceaab110e62e9a67af7631729348f71f2d514458ef0a60e6decff3b 0004-Require-static-native-libraries-when-linking-static-.patch
-1bdc441cb068697c7f6984e16bdde28bdd17b7a2517c33b666851d55f1d987a76e4d7f034b7221538c663c0a33603d8ac1f60ffb167a4a5d01677a7b214ab21d 0005-Remove-nostdlib-and-musl_root-from-musl-targets.patch
-03580acc8391a7b32fb2a7880c6a924838803e8ce4771e465f24b7a09263b9b0ca7ae4fd84770c262cf25734d49ab0f838d57104b181224b901e26f25dc9d2e9 0006-Prefer-libgcc_eh-over-libunwind-for-musl.patch
-8e06768d0723aca0dd292942381255061b83505da89bc45c8c8c280dcaf3184e1b05b3744559fc3ed576f9a726bd593d892a71e8fd81bfebee62bb86d62f5531 0007-runtest-Fix-proc-macro-tests-on-musl-hosts.patch
-52138d4cc238ee44eafabfe281e3378298d510c9ffd9f123a5934f33b7e68b6fa262605c044bfce5943b18983d0145bdf33b9c168e030fee892247ef7ce4ec19 0008-test-enum-debug-Correct-minimum-LLVM-version.patch
-34be92c7ce327f488b7a933e7232890615b3d07c08a09028d712c01aa53f89025b47aaaccdc5c2e1d52948eb967b40ea2c576b29b0102feadc7153d6d9984f79 0009-test-use-extern-for-plugins-Don-t-assume-multilib.patch
-47b025edccb7e2d7c42353c3a8665714a3b5661a7d832a9bd71bf9bff75ffe7c6e90a9d55b765dadec54ce29c2539fa894801487718ac1053bd4528b413a487d 0010-test-sysroot-crates-are-unstable-Fix-test-when-rpath.patch
-c32c5d807ec23f5e88f47f83220a117ff3f048cec4731e50d0cae082c971ea03993a6e4f95225046a0b06b406608ee97fb85671ad8f86e5da4970bba210388d6 0011-Ignore-broken-and-non-applicable-tests.patch
-6b089c21b3b756d5d8b3198f4a914d8a2f90216ce25d491f7caeb0a637d0f729e9e5184dfa3e07b50570df5791576d1aa4bf2a1f33183c67bc2ba6ba36c0752e 0012-Link-stage-2-tools-dynamically-to-libstd.patch
-d9568a3e21b60831b193c4a9554756d0be77d0c63d06d6c3ff1c7fd35822aaa3b2e2cf8acd29fe07eb698ebf48673245e052a6ddfa4d39bb687eea8c4c236e50 0013-Move-debugger-scripts-to-usr-share-rust.patch
-f1269241ccddf4594752b97e6856dad98ca987d2491b1bd95f6123352eec52f3acb3f17dae1c2a42be55e25db4a7e0d6bb1fb2b468cc139ad14559e0753a4c87 0014-Add-foxkit-target-specs.patch
-7197503a3bf1cdd6cb5ff3350add2682cc64f7d33f7a4b270c53321401e439de5c24ddb2f7c5a76bb3488c8b766237f674fedaa9202c480f53595d7837214f0f 0030-libc-linkage.patch
-41ab9d6f361ee2fba267c9836c1a382dc86101d1bfb59cd942be8e8fc526ad65d845c9395cba7f760808d345d107f32e75af9057d67c450b8fbdd8a73636fb2e 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"