Skip to content
Snippets Groups Projects
Commit a0e38bb9 authored by Anna Wilcox's avatar Anna Wilcox :fox:
Browse files

Merge branch 'rust' into 'master'

user/rust: Bump to 1.29.2, better fixes for i586, ppc32



See merge request !99
parents c1dbd8de e2549aaf
No related branches found
No related tags found
No related merge requests found
From a6da366371be1d8a1c55de52d9a53f93b9951cd0 Mon Sep 17 00:00:00 2001
From 2a651859050ef1826fd1dd15e2bb272a67c03438 Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Mon, 17 Sep 2018 02:29:06 +0000
Subject: [PATCH 28/29] Add foxkit target specs
---
src/bootstrap/native.rs | 10 +++++++--
.../spec/aarch64_foxkit_linux_musl.rs | 21 +++++++++++++++++++
.../spec/armv7_foxkit_linux_musleabihf.rs | 21 +++++++++++++++++++
.../spec/i586_foxkit_linux_musl.rs | 21 +++++++++++++++++++
src/librustc_target/spec/mod.rs | 7 +++++++
.../spec/powerpc64_foxkit_linux_musl.rs | 21 +++++++++++++++++++
.../spec/powerpc_foxkit_linux_musl.rs | 21 +++++++++++++++++++
.../spec/x86_64_foxkit_linux_musl.rs | 21 +++++++++++++++++++
8 files changed, 141 insertions(+), 2 deletions(-)
src/bootstrap/native.rs | 10 ++++++--
.../spec/aarch64_foxkit_linux_musl.rs | 21 +++++++++++++++++
.../spec/armv7_foxkit_linux_musleabihf.rs | 21 +++++++++++++++++
.../spec/i586_foxkit_linux_musl.rs | 23 +++++++++++++++++++
src/librustc_target/spec/mod.rs | 7 ++++++
.../spec/powerpc64_foxkit_linux_musl.rs | 21 +++++++++++++++++
.../spec/powerpc_foxkit_linux_musl.rs | 23 +++++++++++++++++++
.../spec/x86_64_foxkit_linux_musl.rs | 21 +++++++++++++++++
8 files changed, 145 insertions(+), 2 deletions(-)
create mode 100644 src/librustc_target/spec/aarch64_foxkit_linux_musl.rs
create mode 100644 src/librustc_target/spec/armv7_foxkit_linux_musleabihf.rs
create mode 100644 src/librustc_target/spec/i586_foxkit_linux_musl.rs
......@@ -111,10 +111,10 @@ index 0000000000..facfd5d363
+}
diff --git a/src/librustc_target/spec/i586_foxkit_linux_musl.rs b/src/librustc_target/spec/i586_foxkit_linux_musl.rs
new file mode 100644
index 0000000000..cd6280e586
index 0000000000..e0284d96e6
--- /dev/null
+++ b/src/librustc_target/spec/i586_foxkit_linux_musl.rs
@@ -0,0 +1,21 @@
@@ -0,0 +1,23 @@
+// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
......@@ -125,7 +125,7 @@ index 0000000000..cd6280e586
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+use spec::TargetResult;
+use spec::{LinkerFlavor, TargetResult};
+
+pub fn target() -> TargetResult {
+ let mut base = super::i586_unknown_linux_musl::target()?;
......@@ -133,6 +133,8 @@ index 0000000000..cd6280e586
+ base.llvm_target = "i586-foxkit-linux-musl".to_string();
+ base.target_vendor = "foxkit".to_string();
+ base.options.crt_static_default = false;
+ base.options.post_link_args.insert(LinkerFlavor::Gcc,
+ vec!["-Wl,--as-needed".to_string(), "-lssp_nonshared".to_string()]);
+
+ Ok(base)
+}
......@@ -183,10 +185,10 @@ index 0000000000..b7202ee0fc
+}
diff --git a/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs b/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs
new file mode 100644
index 0000000000..4daa96d3ce
index 0000000000..34246a7e28
--- /dev/null
+++ b/src/librustc_target/spec/powerpc_foxkit_linux_musl.rs
@@ -0,0 +1,21 @@
@@ -0,0 +1,23 @@
+// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
......@@ -197,7 +199,7 @@ index 0000000000..4daa96d3ce
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+use spec::TargetResult;
+use spec::{LinkerFlavor, TargetResult};
+
+pub fn target() -> TargetResult {
+ let mut base = super::powerpc_unknown_linux_musl::target()?;
......@@ -205,6 +207,8 @@ index 0000000000..4daa96d3ce
+ base.llvm_target = "powerpc-foxkit-linux-musl".to_string();
+ base.target_vendor = "foxkit".to_string();
+ base.options.crt_static_default = false;
+ base.options.post_link_args.insert(LinkerFlavor::Gcc,
+ vec!["-Wl,--as-needed".to_string(), "-lssp_nonshared".to_string()]);
+
+ Ok(base)
+}
......
From 22bb29c2b807180ed0522d9c930e14c327582571 Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Sat, 6 Oct 2018 04:17:14 +0000
Subject: [PATCH 29/29] Work around libbacktrace built with -fstack-protector
On 32-bit x86 and ppc, gcc generates calls to __stack_chk_fail_local,
which must be a hidden function in every DSO. gcc provides the
implementation in libssp_nonshared. libbacktrace is built in hosted
mode, where Adelie's compiler enables -fstack-protector by default.
However, rustc passes -nodefaultlibs, inhibiting gcc from linking
libssp_nonshared.
---
src/libpanic_unwind/Cargo.toml | 1 +
src/libpanic_unwind/build.rs | 10 ++++++++++
2 files changed, 11 insertions(+)
create mode 100644 src/libpanic_unwind/build.rs
diff --git a/src/libpanic_unwind/Cargo.toml b/src/libpanic_unwind/Cargo.toml
index 74aaa4d5ae..c1b66aeefe 100644
--- a/src/libpanic_unwind/Cargo.toml
+++ b/src/libpanic_unwind/Cargo.toml
@@ -1,5 +1,6 @@
[package]
authors = ["The Rust Project Developers"]
+build = "build.rs"
name = "panic_unwind"
version = "0.0.0"
diff --git a/src/libpanic_unwind/build.rs b/src/libpanic_unwind/build.rs
new file mode 100644
index 0000000000..0d9a14b64c
--- /dev/null
+++ b/src/libpanic_unwind/build.rs
@@ -0,0 +1,10 @@
+use std::env;
+
+fn main() {
+ let target = env::var("TARGET").unwrap();
+ match target.as_ref() {
+ "i586-foxkit-linux-musl" => println!("cargo:rustc-link-lib=ssp_nonshared"),
+ "powerpc-foxkit-linux-musl" => println!("cargo:rustc-link-lib=ssp_nonshared"),
+ _ => {},
+ };
+}
--
2.18.0
This diff is collapsed.
From 90c01fa6b0f45c63dc19aa75cd39b38d2de5e98b Mon Sep 17 00:00:00 2001
From: est31 <MTest31@outlook.com>
Date: Sun, 1 Jul 2018 09:25:11 +0200
Subject: [PATCH] Re-add aarch64 stuff removed by previous commit
Previous commit
dcff154781e4b3c6ef3a6a4024c73631f52f48cb
"libc: changes to ppc64le musl branch to support building of rust on Alpine"
has removed stuff from mod.rs and added it to some submodules, but
missed the aarch64 submodule.
This copies the stuff that that commit added to the x86_64.rs submodule
and puts it into aarch64.rs.
---
src/unix/notbsd/linux/musl/b64/aarch64.rs | 135 ++++++++++++++++++++++
1 file changed, 135 insertions(+)
diff --git a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs
index da0827a7750..98c53dc4f2b 100644
--- a/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs
+++ b/src/vendor/libc/src/unix/notbsd/linux/musl/b64/aarch64.rs
@@ -339,3 +339,138 @@ pub const SYS_pwritev2: ::c_long = 287;
pub const SYS_pkey_mprotect: ::c_long = 288;
pub const SYS_pkey_alloc: ::c_long = 289;
pub const SYS_pkey_free: ::c_long = 290;
+
+pub const RLIMIT_NLIMITS: ::c_int = 16;
+pub const TIOCINQ: ::c_int = ::FIONREAD;
+pub const MCL_CURRENT: ::c_int = 0x0001;
+pub const MCL_FUTURE: ::c_int = 0x0002;
+pub const CBAUD: ::tcflag_t = 0o0010017;
+pub const TAB1: ::c_int = 0x00000800;
+pub const TAB2: ::c_int = 0x00001000;
+pub const TAB3: ::c_int = 0x00001800;
+pub const CR1: ::c_int = 0x00000200;
+pub const CR2: ::c_int = 0x00000400;
+pub const CR3: ::c_int = 0x00000600;
+pub const FF1: ::c_int = 0x00008000;
+pub const BS1: ::c_int = 0x00002000;
+pub const VT1: ::c_int = 0x00004000;
+pub const VWERASE: usize = 14;
+pub const VREPRINT: usize = 12;
+pub const VSUSP: usize = 10;
+pub const VSTART: usize = 8;
+pub const VSTOP: usize = 9;
+pub const VDISCARD: usize = 13;
+pub const VTIME: usize = 5;
+pub const IXON: ::tcflag_t = 0x00000400;
+pub const IXOFF: ::tcflag_t = 0x00001000;
+pub const ONLCR: ::tcflag_t = 0x4;
+pub const CSIZE: ::tcflag_t = 0x00000030;
+pub const CS6: ::tcflag_t = 0x00000010;
+pub const CS7: ::tcflag_t = 0x00000020;
+pub const CS8: ::tcflag_t = 0x00000030;
+pub const CSTOPB: ::tcflag_t = 0x00000040;
+pub const CREAD: ::tcflag_t = 0x00000080;
+pub const PARENB: ::tcflag_t = 0x00000100;
+pub const PARODD: ::tcflag_t = 0x00000200;
+pub const HUPCL: ::tcflag_t = 0x00000400;
+pub const CLOCAL: ::tcflag_t = 0x00000800;
+pub const ECHOKE: ::tcflag_t = 0x00000800;
+pub const ECHOE: ::tcflag_t = 0x00000010;
+pub const ECHOK: ::tcflag_t = 0x00000020;
+pub const ECHONL: ::tcflag_t = 0x00000040;
+pub const ECHOPRT: ::tcflag_t = 0x00000400;
+pub const ECHOCTL: ::tcflag_t = 0x00000200;
+pub const ISIG: ::tcflag_t = 0x00000001;
+pub const ICANON: ::tcflag_t = 0x00000002;
+pub const PENDIN: ::tcflag_t = 0x00004000;
+pub const NOFLSH: ::tcflag_t = 0x00000080;
+pub const CIBAUD: ::tcflag_t = 0o02003600000;
+pub const CBAUDEX: ::tcflag_t = 0o010000;
+pub const VSWTC: usize = 7;
+pub const OLCUC: ::tcflag_t = 0o000002;
+pub const NLDLY: ::tcflag_t = 0o000400;
+pub const CRDLY: ::tcflag_t = 0o003000;
+pub const TABDLY: ::tcflag_t = 0o014000;
+pub const BSDLY: ::tcflag_t = 0o020000;
+pub const FFDLY: ::tcflag_t = 0o100000;
+pub const VTDLY: ::tcflag_t = 0o040000;
+pub const XTABS: ::tcflag_t = 0o014000;
+pub const B57600: ::speed_t = 0o010001;
+pub const B115200: ::speed_t = 0o010002;
+pub const B230400: ::speed_t = 0o010003;
+pub const B460800: ::speed_t = 0o010004;
+pub const B500000: ::speed_t = 0o010005;
+pub const B576000: ::speed_t = 0o010006;
+pub const B921600: ::speed_t = 0o010007;
+pub const B1000000: ::speed_t = 0o010010;
+pub const B1152000: ::speed_t = 0o010011;
+pub const B1500000: ::speed_t = 0o010012;
+pub const B2000000: ::speed_t = 0o010013;
+pub const B2500000: ::speed_t = 0o010014;
+pub const B3000000: ::speed_t = 0o010015;
+pub const B3500000: ::speed_t = 0o010016;
+pub const B4000000: ::speed_t = 0o010017;
+
+pub const FIOCLEX: ::c_int = 0x5451;
+pub const FIONBIO: ::c_int = 0x5421;
+pub const EDEADLK: ::c_int = 35;
+pub const EDEADLOCK: ::c_int = EDEADLK;
+pub const SO_PASSCRED: ::c_int = 16;
+pub const SO_PEERCRED: ::c_int = 17;
+pub const SO_RCVLOWAT: ::c_int = 18;
+pub const SO_SNDLOWAT: ::c_int = 19;
+pub const SO_RCVTIMEO: ::c_int = 20;
+pub const SO_SNDTIMEO: ::c_int = 21;
+pub const EXTPROC: ::tcflag_t = 0x00010000;
+pub const VEOL: usize = 11;
+pub const VEOL2: usize = 16;
+pub const VMIN: usize = 6;
+pub const IEXTEN: ::tcflag_t = 0x00008000;
+pub const TOSTOP: ::tcflag_t = 0x00000100;
+pub const FLUSHO: ::tcflag_t = 0x00001000;
+pub const TCGETS: ::c_int = 0x5401;
+pub const TCSETS: ::c_int = 0x5402;
+pub const TCSETSW: ::c_int = 0x5403;
+pub const TCSETSF: ::c_int = 0x5404;
+pub const TCGETA: ::c_int = 0x5405;
+pub const TCSETA: ::c_int = 0x5406;
+pub const TCSETAW: ::c_int = 0x5407;
+pub const TCSETAF: ::c_int = 0x5408;
+pub const TCSBRK: ::c_int = 0x5409;
+pub const TCXONC: ::c_int = 0x540A;
+pub const TCFLSH: ::c_int = 0x540B;
+pub const TIOCGSOFTCAR: ::c_int = 0x5419;
+pub const TIOCSSOFTCAR: ::c_int = 0x541A;
+pub const TIOCLINUX: ::c_int = 0x541C;
+pub const TIOCGSERIAL: ::c_int = 0x541E;
+pub const TIOCEXCL: ::c_int = 0x540C;
+pub const TIOCNXCL: ::c_int = 0x540D;
+pub const TIOCSCTTY: ::c_int = 0x540E;
+pub const TIOCGPGRP: ::c_int = 0x540F;
+pub const TIOCSPGRP: ::c_int = 0x5410;
+pub const TIOCOUTQ: ::c_int = 0x5411;
+pub const TIOCSTI: ::c_int = 0x5412;
+pub const TIOCGWINSZ: ::c_int = 0x5413;
+pub const TIOCSWINSZ: ::c_int = 0x5414;
+pub const TIOCMGET: ::c_int = 0x5415;
+pub const TIOCMBIS: ::c_int = 0x5416;
+pub const TIOCMBIC: ::c_int = 0x5417;
+pub const TIOCMSET: ::c_int = 0x5418;
+pub const FIONREAD: ::c_int = 0x541B;
+pub const TIOCCONS: ::c_int = 0x541D;
+
+pub const TIOCM_LE: ::c_int = 0x001;
+pub const TIOCM_DTR: ::c_int = 0x002;
+pub const TIOCM_RTS: ::c_int = 0x004;
+pub const TIOCM_ST: ::c_int = 0x008;
+pub const TIOCM_SR: ::c_int = 0x010;
+pub const TIOCM_CTS: ::c_int = 0x020;
+pub const TIOCM_CAR: ::c_int = 0x040;
+pub const TIOCM_RNG: ::c_int = 0x080;
+pub const TIOCM_DSR: ::c_int = 0x100;
+pub const TIOCM_CD: ::c_int = TIOCM_CAR;
+pub const TIOCM_RI: ::c_int = TIOCM_RNG;
+
+extern {
+ pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int;
+}
This diff is collapsed.
This diff is collapsed.
......@@ -3,7 +3,7 @@
# Contributor: Jeizsm <jeizsm@gmail.com>
# Maintainer: Samuel Holland <samuel@sholland.org>
pkgname=rust
pkgver=1.29.1
pkgver=1.29.2
_bootcargover=0.30.0
_bootver=1.29.1
_llvmver=6
......@@ -69,13 +69,8 @@ source="https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.xz
0026-Link-stage-2-tools-dynamically-to-libstd.patch
0027-Move-debugger-scripts-to-usr-share-rust.patch
0028-Add-foxkit-target-specs.patch
0029-Work-around-libbacktrace-built-with-fstack-protector.patch
0030-liblibc-linkage.patch
0031-liblibc-0163a7ce20b5.patch
0032-libc-dcff154781e4.patch
0033-libc-90c01fa6b0f4.patch
0034-libc-0163a7ce20b5.patch
0035-libc-checksums.patch
0035-rand-5b9e5c39d857.patch
0036-rand-checksums.patch
0040-rls-atomics.patch
......@@ -310,7 +305,7 @@ _mv() {
mkdir -p "$dest"
mv "$@"
}
sha512sums="1ded651b4c460e11e5e44c26de88a80fb13c2000097de2ee1e5af89638e12a7e8f43dd756689d4cc4fad45c52d4d43a3c70dd6a3ae550735b9dad5f8defea6a7 rustc-1.29.1-src.tar.xz
sha512sums="d8fa9501764348ace8f60f2069bcd016925abe56c8bbc2b87fb52ff796e4bc7284c1fccbb1671416437bb82fde7d9240eeae875d6099914e27e75cfe050e2d38 rustc-1.29.2-src.tar.xz
bd1fd3694947fc192419dab1e1e314fb5a9d7266715b5765dd1766507a234b6ad93bd097f531d560adc8b9f71534f53c440e6986e63b322319fcd0c24325d979 cargo-0.30.0-powerpc64-foxkit-linux-musl.tar.xz
d6ce24de73131702b623e8a146435526457b6d766fe6192df7471f1942119a6396b85121ce2250da3c3ec21b44aaff316e5c0387796654129d074d29d60a25b2 rust-std-1.29.1-powerpc64-foxkit-linux-musl.tar.xz
b649fc30dee7510f656c53f3a5737a66d59726e24be7085134504f0202a899e549274df417c814487e5fbd8bbb69470411c9ed770dbc37af15a99a63f913a508 rustc-1.29.1-powerpc64-foxkit-linux-musl.tar.xz
......@@ -338,14 +333,9 @@ b6c34f9982d6f5b59acc716391a63f922accf69bdcf2631ab57ce3279a62e1874bceb7d0707fdd52
cf8d642afcfd27fbc8c982a27d7d09f6097f1d0bfb67251d3a51323bd86743f584ebbd1cb4a8e872bd7711610929aa4bd514a107956fb89dd14f6dc50e9bdd26 0025-Ignore-broken-and-non-applicable-tests.patch
9b9f4625d0a56417fa72d58982e55449b8fb5ed103799327a9017976ddd8ec431e81f592d3f843927068bd0e68e8e5a589650f18fb37bd275100f17bb65a1560 0026-Link-stage-2-tools-dynamically-to-libstd.patch
35fc80eb99d818f8d4c67a5dc72c1acc56a26b529b5a24cad7aa0d5ea4e872384c4eb07084caa3436140cdf377ed0bbcb920e40473a65f2ff90e3ddc1e20e390 0027-Move-debugger-scripts-to-usr-share-rust.patch
ab300269ab18f3d8e82586d0ff1a8f2713027aa675844450cd1dc30f9fd8daf268caa4e61744c927044dd7d62638b9153e123ed6eb242f0ccab892306e1991a8 0028-Add-foxkit-target-specs.patch
542a3aa430eea4142428293e7a9f4077210a319bb7bd91a4f051222277862bc4a8eba1c013ec6d7dddbc848e1b903cc8c4082d1aad623ec85674de14ba95a2ca 0029-Work-around-libbacktrace-built-with-fstack-protector.patch
b53bc78603b9953a7aecf947b32e209e56dc20f5a8d2d64b5a10c4c3a98c66500119851e49775f35e2ff9697ed7815894c39837f04dc59616f37c8d4be8448fe 0028-Add-foxkit-target-specs.patch
f94abe390798b968bccfba1c908ab5895220ed0d167314b790a9c28b10cac81fb2e3b08760b4e8551ad5a5d02cd052d3d0d647ad8f8634e97f4d3b0470a21c42 0030-liblibc-linkage.patch
9b761388e3e7d4ac7ced81bf2572439724f4ce3190b49429b92249f4b858cc9bbb79d72e25365825cbd25cb9b3352c627dcc88cc643e5abeb917cf14755cab0b 0031-liblibc-0163a7ce20b5.patch
48a2ea6beb5f333d646fcc7aa15405d24f52f48e82b8f9cd09737dbfef16df0679246b30a28871595d13414b44c316122e0c969e1ae555b7ab18b692057c0d67 0032-libc-dcff154781e4.patch
fcfdd6b2702b8b23d8fd339ceb23b75a6e9814a388f00d226c8101be46a0f29835c77b75ab665e36972fde14364d762816ea2dcf3c1d90dd1e574fb8f6c33c80 0033-libc-90c01fa6b0f4.patch
7773b0c20aee126f90960c29b575f0c3c949d877e6b0e682c34ba8cdf6055a57697d6d6c287eafdf5976125830d5898128c73ac7dc8b4c40347577afcdb086d5 0034-libc-0163a7ce20b5.patch
6c5d68874bb82de214ff0488bd0ff7c1215c48575618d4d37d307004d462b4010df0d4909dd73da7f024c9ea00f5e2680a733235b6b85abdbd352cf1e13a6681 0035-libc-checksums.patch
94ee746f50ba3d88e409cd6b840a0995fa40d38e6a3c4a7e9fa32430242c492f35f6fb95ee22e0da6dba84f39dc83f0196a0921c5ec2bc602ea220b017c78be2 0035-rand-5b9e5c39d857.patch
5e409a7e45afd2104e1bbbcedb0cc2a04b2c3838d820bb3dc6e879a3d4619f0cce562d2bf2b0c55b780375bf26f0d4d4d6b0acdac199e1c39b2d94543d35e017 0036-rand-checksums.patch
9182408b7a87fc2f01dc12a36440e43a721f7693da00310806f6306e711c04b34d43b6ab348ae523656937f61389adb6a5a2b8ff46dec5424ad20c29652d4edf 0040-rls-atomics.patch"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment