From 877f3c229703beaf61fd839a0676edad8f4b55a0 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Sat, 13 Nov 2021 16:25:29 +0000 Subject: [PATCH] extra/rust to 1.56.1-3 --- ...ompiler-Use-wasm-ld-for-wasm-targets.patch | 24 +++ extra/rust/PKGBUILD | 162 ++++++++++-------- 2 files changed, 113 insertions(+), 73 deletions(-) create mode 100644 extra/rust/0003-compiler-Use-wasm-ld-for-wasm-targets.patch diff --git a/extra/rust/0003-compiler-Use-wasm-ld-for-wasm-targets.patch b/extra/rust/0003-compiler-Use-wasm-ld-for-wasm-targets.patch new file mode 100644 index 000000000..7c433fa05 --- /dev/null +++ b/extra/rust/0003-compiler-Use-wasm-ld-for-wasm-targets.patch @@ -0,0 +1,24 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" +Date: Sat, 6 Nov 2021 22:42:06 +0100 +Subject: [PATCH] compiler: Use wasm-ld for wasm targets + +We don't ship rust-lld. +--- + compiler/rustc_target/src/spec/wasm_base.rs | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/compiler/rustc_target/src/spec/wasm_base.rs b/compiler/rustc_target/src/spec/wasm_base.rs +index 4c954a1e567c..f1d5fbf83748 100644 +--- a/compiler/rustc_target/src/spec/wasm_base.rs ++++ b/compiler/rustc_target/src/spec/wasm_base.rs +@@ -99,8 +99,7 @@ pub fn options() -> TargetOptions { + // arguments just yet + limit_rdylib_exports: false, + +- // we use the LLD shipped with the Rust toolchain by default +- linker: Some("rust-lld".to_owned()), ++ linker: Some("wasm-ld".to_owned()), + lld_flavor: LldFlavor::Wasm, + linker_is_gnu: false, + diff --git a/extra/rust/PKGBUILD b/extra/rust/PKGBUILD index fc7b3f50e..230cb114f 100644 --- a/extra/rust/PKGBUILD +++ b/extra/rust/PKGBUILD @@ -5,7 +5,7 @@ # Contributor: userwithuid # ALARM: Kevin Mihelich -# - remove lib32 package and related bits +# - remove lib32, musl, and wasm packages and related bits # - add a link to g++ to compensate for broken cross-compiler decisions # - build v6/v7 with -j2 - RAM constraints # - set llvm-config in config.toml for ARM architectures @@ -14,53 +14,55 @@ buildarch=28 highmem=1 -pkgname=('rust' 'rust-docs') +pkgbase=rust +pkgname=(rust rust-src) epoch=1 -pkgver=1.56.0 -pkgrel=1 - -_llvm_ver=12.0.1 - -pkgdesc='Systems programming language focused on safety, speed and concurrency' -url='https://www.rust-lang.org/' -arch=('x86_64') -license=('MIT' 'Apache') - -makedepends=('rust' "llvm=$_llvm_ver" 'libffi' 'perl' 'python' - 'curl' 'cmake' 'ninja') -checkdepends=('procps-ng' 'gdb') - -options=('!emptydirs' '!strip') - +pkgver=1.56.1 +pkgrel=3 +pkgdesc="Systems programming language focused on safety, speed and concurrency" +url=https://www.rust-lang.org/ +arch=(x86_64) +license=(MIT Apache) +options=(!emptydirs !strip) +_llvm_ver=13.0.0 +depends=(gcc-libs llvm-libs curl libssh2 gcc) +makedepends=(rust "llvm=$_llvm_ver" libffi perl python cmake + ninja lld) +checkdepends=(procps-ng gdb) source=( "https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz"{,.asc} "https://github.com/llvm/llvm-project/releases/download/llvmorg-$_llvm_ver/compiler-rt-$_llvm_ver.src.tar.xz"{,.sig} - 0001-bootstrap-Change-libexec-dir.patch 0001-cargo-Change-libexec-dir.patch + 0001-bootstrap-Change-libexec-dir.patch 0002-compiler-Change-LLVM-targets.patch + 0003-compiler-Use-wasm-ld-for-wasm-targets.patch ) -sha256sums=('cd0fd72d698deb3001c18e0f4bf8261d8f86420097eef94ca3a1fe047f2df43f' +sha256sums=('c3898dfaadaa193dc88ddbc5345946a163211b58621df1cfff70186b4fc79511' 'SKIP' - 'b4c8d5f2a802332987c1c0a95b5afb35b1a66a96fe44add4e4ed4792c4cba0a4' + '4c3602d76c7868a96b30c36165c4b7643e2a20173fced7e071b4baeb2d74db3f' 'SKIP' - 'a2a8a7c6a5732f79cc92f81d3c8380589c4e2b9a996fb565bbefe42f66b62597' '0f8cfbe0387dd62909fe9cb9523223ae1c2319494e2caf5fa4d0592198631b3e' - '977da945985dce4484ace8794cbc91241b1f3c27311c1a8b201231db6e1d19e5') -validpgpkeys=('108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE' # Rust Language (Tag and Release Signing Key) - '474E22316ABF4785A88C6E8EA2C794A986419D8A' # Tom Stellard - 'B6C8F98282B944E3B0D5C2530FC3042E345AD05D') # Hans Wennborg + 'a2a8a7c6a5732f79cc92f81d3c8380589c4e2b9a996fb565bbefe42f66b62597' + '977da945985dce4484ace8794cbc91241b1f3c27311c1a8b201231db6e1d19e5' + 'fcf3c4442ba6a9e59415652ce8514428b2e37b80c5fe7d07fb44259ad37abafb') +validpgpkeys=(108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE # Rust Language (Tag and Release Signing Key) + 474E22316ABF4785A88C6E8EA2C794A986419D8A # Tom Stellard + B6C8F98282B944E3B0D5C2530FC3042E345AD05D) # Hans Wennborg prepare() { - cd "rustc-$pkgver-src" + cd rustc-$pkgver-src # Patch bootstrap and cargo so credential helpers # are in /usr/lib instead of /usr/libexec - patch -Np1 -i ../0001-bootstrap-Change-libexec-dir.patch patch -d src/tools/cargo -Np1 < ../0001-cargo-Change-libexec-dir.patch + patch -Np1 -i ../0001-bootstrap-Change-libexec-dir.patch # Use our *-pc-linux-gnu targets, making LTO with clang simpler patch -Np1 -i ../0002-compiler-Change-LLVM-targets.patch + # Use our wasm-ld + patch -Np1 -i ../0003-compiler-Use-wasm-ld-for-wasm-targets.patch + cat >config.toml <