Skip to content

Commit

Permalink
community/rust: upgrade to 1.37.0, enable on aarch64&x86 again
Browse files Browse the repository at this point in the history
Use upstream triplets for now, rust doesn't seem to want to work with our
triplets...

See rust-lang/rust#62447
  • Loading branch information
Cogitri authored and maxice8 committed Aug 30, 2019
1 parent 7184ba0 commit 6c8381b
Show file tree
Hide file tree
Showing 7 changed files with 146 additions and 440 deletions.
58 changes: 38 additions & 20 deletions community/rust/APKBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
# Contributor: Jeizsm <[email protected]>
# Maintainer: Rasmus Thomsen <[email protected]>
pkgname=rust
pkgver=1.36.0
pkgver=1.37.0
_llvmver=8
_bootver=1.35.0
_bootver=1.36.0
pkgrel=0
pkgdesc="The Rust Programming Language"
url="https://www.rust-lang.org"
arch="x86_64 armv7 armhf"
arch="x86_64 armv7 armhf aarch64 x86"
license="Apache-2.0 AND MIT"

# gcc is needed at runtime just for linking. Someday rustc might invoke
Expand All @@ -33,10 +33,19 @@ makedepends="
tar
zlib-dev
coreutils
rust-bootstrap=>$_bootver
cargo-bootstrap
"

case "$CARCH" in
aarch64|x86|ppc64le) ;;
*)
makedepends="
$makedepends
rust-bootstrap=>$_bootver
cargo-bootstrap
"
;;
esac

# XXX: This is a hack to allow this abuild to depend on itself. Adding "rust"
# to makedepends would not work, because abuild implicitly removes $pkgname
# and $subpackages from the abuild's dependencies.
Expand All @@ -58,7 +67,9 @@ subpackages="
cargo-doc:_cargo_doc:noarch
"
source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz
https://exp.exqa.de/alpine-rust/rust-aarch64-$_bootver.tar.xz
https://dist.cogitri.dev/rust-aarch64-1.36.0.tar.xz
https://dist.cogitri.dev/rust-x86-1.36.0.tar.xz
https://dist.cogitri.dev/rust-ppc64le-1.36.0.tar.xz
musl-fix-static-linking.patch
musl-fix-linux_musl_base.patch
static-pie.patch
Expand All @@ -68,19 +79,24 @@ source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz
alpine-change-rpath-to-rustlib.patch
alpine-target.patch
install-template-shebang.patch
cargo-tests-ignore-resolving_minimum_version_with_transitive_deps.patch
check-rustc
cargo-skip-broken-tests.patch
link-musl-dynamically.patch
musl-dont-use-crt-static.patch
"
builddir="$srcdir/rustc-$pkgver-src"


# We have to add new arches in multiple steps:
# 1. Compile with the upstream triplets, compiling alpine's triplets in
# 2. Compile again, now with our triplets selected as build/target, now that
# rustc knows about them
case "$CARCH" in
x86)
export LD_LIBRARY_PATH="$srcdir/rust-x86/usr/lib"
export PATH="$srcdir/rust-x86/usr/bin:$PATH"
_build="i686-unknown-linux-musl"
_target="$_build"
;;
armv7)
_build="armv7-unknown-linux-musleabihf"
_target="$_build"
Expand All @@ -90,6 +106,8 @@ case "$CARCH" in
_target="$_build"
;;
ppc64le)
export LD_LIBRARY_PATH="$srcdir/rust-ppc64le/usr/lib"
export PATH="$srcdir/rust-ppc64le/usr/bin:$PATH"
_build="powerpc64le-unknown-linux-musl"
_target="$_build"
;;
Expand Down Expand Up @@ -139,23 +157,23 @@ build() {
esac

./configure \
--build=${_build} \
--host=${_target} \
--target=${_target} \
--build="$_build" \
--host="$_target" \
--target="$_target" \
--prefix="/usr" \
--release-channel="stable" \
--enable-local-rust \
--local-rust-root="/usr" \
--llvm-root="/usr/lib/llvm$_llvmver" \
--musl-root="/usr" \
--disable-docs \
--enable-extended \
--tools="analysis,cargo,src" \
--enable-llvm-link-shared \
--enable-option-checking \
--enable-locked-deps \
--enable-vendor \
--disable-full-bootstrap
--set="target.$_build.musl-root=/usr" \
--set="target.$_build.crt-static=false"

./x.py build --jobs ${JOBS:-2}
}
Expand Down Expand Up @@ -300,19 +318,19 @@ _mv() {
mv "$@"
}

sha512sums="f0bd470a98d2b044c2af40d0c19838c3f7410c4acea5b2f8b5bcf0ca8294917986e7e5aed7d00ea5520e8b03d7130f993e75125576c693ba571feae0d0b961e9 rustc-1.36.0-src.tar.gz
e22bccc770715aaf2a42ea2a09ef24df4f7939f2bdd529538a570db817dcd43e8f7e2ac45412970f1e2aed754d84043a950357e5045172ac64f3aca1c1e86f98 rust-aarch64-1.35.0.tar.xz
sha512sums="d75dd3b664f4467750b93786126051f8a1d33e24823951bbe2a56b2c1f6c829c35dcfb7dbce2f98c5de212d882ab8bccdd99bb57facdb4bc1870eb81de824d74 rustc-1.37.0-src.tar.gz
53971f91e81bbce17480fec199f11ce64a1a600efaf6c81dcef6b9341bad3bafcbb657bc16daa5c846a7750d0c5982acca8e62af449a2a5e5b256391b07f0f23 rust-aarch64-1.36.0.tar.xz
a75d3c3fe9c1fb032eb0b8195edd3389f54cec6d503da6e593f627b7d652a98c87dd9187c10ed10cd892d6b5c484546d9011c80c76d4675575129ff3abf3ab5a rust-x86-1.36.0.tar.xz
923c3682618815db04915c0811149ca4b2fbf4a0bc4f89450b970a1f5bb0fbd7ee1fbeac8d119504c5288200a9378cad1bda6f72156bf96a7500085a5e429a90 rust-ppc64le-1.36.0.tar.xz
f5aa0124618acc0176dc30b2fab6d15327c1978db55ccf2074d1db88e0a1bbdaebc0bcdcfd5a8554964edb51be9830c6db64bc99f237463488a45c9804170a4e musl-fix-static-linking.patch
a2871fa75fb63570031eda80390461a137fe31ba82bf253caeabf3fb6673b4c80b535917dde139a300fb6d5f8c14fe09c8f7aaf4a506ef5e837540cf00aaa977 musl-fix-linux_musl_base.patch
41fd9e8a8dd99074d95d664e65f92dba644b8ef9fa37b9a1d781a01fe49eaa254c430f0f277622dc4f8203aad2d129a045fdf1679a0da526d549fac60654be26 musl-fix-linux_musl_base.patch
97e81c57af93df550577f41d795185a9eb0c37528776c250076cc57f06c87e81139eb71cd6b6a4730528511821ae50c304d7deb534d6422cd08bb44193ae605d static-pie.patch
d4659b56dbf1218da98b995a0a89a8cfd069dd94b3e9aef4aee987484d96fc8b92f6d695ea4123eff26711961f2db2f7324bf5b4043f41722cd89581aac97f1c need-rpath.patch
7c190c0d47934d91605f89ec2caef597477b154f59e66e032b986cfc2e1db4e5b3fc5cdc1f0178f064b4ac314f692569533a45640b1578aadead9fa6ab999f73 minimize-rpath.patch
e90e544d2413ae79c553bb1d82eac9b41eb2a7c7ffb7cb28dc3573418bd453c27dcc48f38ce4b8e33bb994b5481db70303c707231b7d4f7fde561bebf0838f21 minimize-rpath.patch
35e0619672843d9dd41df4a086404a59b57c12fa014e42d06102bc3856a96ed021e716f9d581ec5c89444acbaedd3edcd2b8a85576df3bb4451c0edde3afbba5 alpine-move-py-scripts-to-share.patch
4f5746acb08c18f749691a8455cc81ea2e9a361621790b006b884c9c895ab9e51a001b6638bed071a9af5c232ed8d1b43c58260839a3f6dce4eec3f495ce4348 alpine-change-rpath-to-rustlib.patch
4d4262efd3b679722070268e2d054c433d395200797bb0b45dbf73580d6fe0784b56a3462154a6ada28cd2bb1396dea15516b1e7262e6901feaa8a8ae7ebbb18 alpine-target.patch
080c3c1af15936c3795724d3cf0f60798ef470bce898e43b6757843bf56f6d46de3dd5b9ea3b116b2011b40373cf8daf17abc94cfff4bdb6221bd431aa0844fd alpine-target.patch
7d59258d4462eba0207739a5c0c8baf1f19d9a396e5547bb4d59d700eb94d50ba6add2e523f3e94e29e993821018594625ea4ac86304fb58f7f8c82622a26ab0 install-template-shebang.patch
3d6f027088e1ec189ce864bf5ed150ccad8be5d9fc0973f1b4d202eec6eab865834403335a9f0765bbfa54638aed7f5d5f2183ba9dfeab9f5bc4ef48111a8427 cargo-tests-ignore-resolving_minimum_version_with_transitive_deps.patch
c31fdfe8a9b3411576c75da46645cf0465b9053000a2ab49cf9b2f2733f679d6d33acbf236d67a20e14935d094a685453b7f1840180249f39d610fd0902c3125 check-rustc
afca9b5524e270b6ddad4b2c99bba9a5f156a2411b04a9ca5802b185b50420de70555bb2526dcb4d5b12b29ff30afa2fe461d1de83b5345dd8e4ccf52e875c3f cargo-skip-broken-tests.patch
78484210917af128a0fa1cfd762b937e2ff047764829e4ba5a10c1f4589bfb2420bf183b039ef88d8d9a2a60e5e150b7e1cd7e7aa1b1154baa2034d485a8a3bf link-musl-dynamically.patch
795194976763326c5e4a9eefc8b651b6d5fb533d2d000631ed48a92bafac90e9ca33b8d662e6c53ef109ea1a90c69def715d7d7154e3f9fb9035a58a313a7db3 musl-dont-use-crt-static.patch"
Loading

0 comments on commit 6c8381b

Please sign in to comment.