diff --git a/recipes-devtools/rust/compiler-rt_1.14.0.bb b/recipes-devtools/rust/compiler-rt_1.15.1.bb similarity index 58% rename from recipes-devtools/rust/compiler-rt_1.14.0.bb rename to recipes-devtools/rust/compiler-rt_1.15.1.bb index 8e08013..b7b8f50 100644 --- a/recipes-devtools/rust/compiler-rt_1.14.0.bb +++ b/recipes-devtools/rust/compiler-rt_1.15.1.bb @@ -1,2 +1,4 @@ require compiler-rt.inc require rust-source-${PV}.inc + +EXTRA_OECONF = "--disable-rustbuild" diff --git a/recipes-devtools/rust/files/rust-1.14.0/0002-mk-for-stage0-use-RUSTFLAGS-to-override-target-libs-.patch b/recipes-devtools/rust/files/rust-1.14.0/0002-mk-for-stage0-use-RUSTFLAGS-to-override-target-libs-.patch deleted file mode 100644 index f4a983b..0000000 --- a/recipes-devtools/rust/files/rust-1.14.0/0002-mk-for-stage0-use-RUSTFLAGS-to-override-target-libs-.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 52fa8537ae9073b81340a974c8eebb1b2fc2e1aa Mon Sep 17 00:00:00 2001 -From: Cody P Schafer -Date: Tue, 18 Nov 2014 14:52:56 -0500 -Subject: [PATCH 2/3] mk: for stage0, use RUSTFLAGS to override target libs dir - -Setting HLIB specially for stage0 (and even more specially for windows) -also affects the location we place TLIB. To keep the TLIBs we build in -the place requested by configure, use '-L' and '--sysroot' to point -stage0-rustc at the appropriate location. ---- - mk/main.mk | 29 ++++++++++++----------------- - 1 file changed, 12 insertions(+), 17 deletions(-) - -diff --git a/mk/main.mk b/mk/main.mk -index fd0464a..755bf09 100644 ---- a/mk/main.mk -+++ b/mk/main.mk -@@ -403,32 +403,26 @@ define SREQ - HROOT$(1)_H_$(3) = $(3)/stage$(1) - HBIN$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/bin - --ifeq ($$(CFG_WINDOWSY_$(3)),1) --# On Windows we always store host runtime libraries in the 'bin' directory because --# there's no rpath. Target libraries go under $CFG_LIBDIR_RELATIVE (usually 'lib'). --HLIB_RELATIVE$(1)_H_$(3) = bin --TROOT$(1)_T_$(2)_H_$(3) = $$(HROOT$(1)_H_$(3))/$$(CFG_LIBDIR_RELATIVE)/rustlib/$(2) --# Remove the next 3 lines after a snapshot --ifeq ($(1),0) --RUSTFLAGS_STAGE0 += -L $$(TROOT$(1)_T_$(2)_H_$(3))/lib --endif -- --else -- --ifeq ($(1),0) --HLIB_RELATIVE$(1)_H_$(3) = lib --else - HLIB_RELATIVE$(1)_H_$(3) = $$(CFG_LIBDIR_RELATIVE) --endif -+ - TROOT$(1)_T_$(2)_H_$(3) = $$(HLIB$(1)_H_$(3))/rustlib/$(2) - --endif - HLIB$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/$$(HLIB_RELATIVE$(1)_H_$(3)) - - # Destinations of artifacts for target architectures - TBIN$(1)_T_$(2)_H_$(3) = $$(TROOT$(1)_T_$(2)_H_$(3))/bin - TLIB$(1)_T_$(2)_H_$(3) = $$(TROOT$(1)_T_$(2)_H_$(3))/lib - -+# Don't trust stage0, be explicit about libraries -+# TODO: rather than specifying sysroot, we really want to tell which libdir to -+# use (ie: the dir containing 'rustlib'). This would allow us to avoid -+# passing the '-L' options. -+ifeq ($(1),0) -+RUSTFLAGS_S_$(1)_T_$(2)_H_$(3) += --sysroot "$$(HROOT$(1)_H_$(3))" \ -+ -L "$$(TLIB$(1)_T_$(2)_H_$(3))" -+endif -+ -+ - # Preqrequisites for using the stageN compiler - ifeq ($(1),0) - HSREQ$(1)_H_$(3) = $$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) -@@ -548,6 +542,7 @@ STAGE$(1)_T_$(2)_H_$(3) := \ - $$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) \ - --cfg $$(CFGFLAG$(1)_T_$(2)_H_$(3)) \ - $$(CFG_RUSTC_FLAGS) $$(EXTRAFLAGS_STAGE$(1)) --target=$(2)) \ -+ $$(RUSTFLAGS_S_$(1)_T_$(2)_H_$(3)) \ - $$(RUSTC_FLAGS_$(2)) - - endef --- -2.10.1 (Apple Git-78) - diff --git a/recipes-devtools/rust/files/rust-1.14.0/0001-Target-add-default-target.json-path-libdir-rust-targ.patch b/recipes-devtools/rust/files/rust-1.15.1/0001-Target-add-default-target.json-path-libdir-rust-targ.patch similarity index 89% rename from recipes-devtools/rust/files/rust-1.14.0/0001-Target-add-default-target.json-path-libdir-rust-targ.patch rename to recipes-devtools/rust/files/rust-1.15.1/0001-Target-add-default-target.json-path-libdir-rust-targ.patch index df6e0d8..c0798d6 100644 --- a/recipes-devtools/rust/files/rust-1.14.0/0001-Target-add-default-target.json-path-libdir-rust-targ.patch +++ b/recipes-devtools/rust/files/rust-1.15.1/0001-Target-add-default-target.json-path-libdir-rust-targ.patch @@ -1,4 +1,4 @@ -From 24b71f1ce87c1247d0e573d3dcba4686f237c817 Mon Sep 17 00:00:00 2001 +From e9c6cf5d1a9bb7f50c5e98a660217062b510928b Mon Sep 17 00:00:00 2001 From: Cody P Schafer Date: Tue, 18 Nov 2014 01:40:21 -0500 Subject: [PATCH 1/3] Target: add default target.json path: @@ -11,20 +11,20 @@ Subject: [PATCH 1/3] Target: add default target.json path: 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/src/librustc/session/config.rs b/src/librustc/session/config.rs -index 63eabd5..6d002d0 100644 +index 5e3c8bc..15fd763 100644 --- a/src/librustc/session/config.rs +++ b/src/librustc/session/config.rs -@@ -42,7 +42,7 @@ use std::fmt; - use std::hash::Hasher; +@@ -42,7 +42,7 @@ use std::hash::Hasher; use std::collections::hash_map::DefaultHasher; + use std::collections::HashSet; use std::iter::FromIterator; -use std::path::PathBuf; +use std::path::{Path, PathBuf}; pub struct Config { pub target: Target, -@@ -1002,8 +1002,8 @@ pub fn build_configuration(sess: &Session, - v +@@ -1001,8 +1001,8 @@ pub fn build_configuration(sess: &Session, + user_cfg } -pub fn build_target_config(opts: &Options, sp: &Handler) -> Config { @@ -35,10 +35,10 @@ index 63eabd5..6d002d0 100644 Err(e) => { sp.struct_fatal(&format!("Error loading target specification: {}", e)) diff --git a/src/librustc/session/mod.rs b/src/librustc/session/mod.rs -index b4dadbf..72fa269 100644 +index 91765e6..29e5e5d 100644 --- a/src/librustc/session/mod.rs +++ b/src/librustc/session/mod.rs -@@ -564,13 +564,17 @@ pub fn build_session_(sopts: config::Options, +@@ -575,13 +575,17 @@ pub fn build_session_(sopts: config::Options, codemap: Rc, cstore: Rc CrateStore<'a>>) -> Session { @@ -59,7 +59,7 @@ index b4dadbf..72fa269 100644 let default_sysroot = match sopts.maybe_sysroot { Some(_) => None, diff --git a/src/librustc_back/target/mod.rs b/src/librustc_back/target/mod.rs -index 4d9315a..12aadab 100644 +index 351d469..3282dbd 100644 --- a/src/librustc_back/target/mod.rs +++ b/src/librustc_back/target/mod.rs @@ -51,6 +51,7 @@ use std::io::prelude::*; @@ -70,7 +70,7 @@ index 4d9315a..12aadab 100644 mod android_base; mod apple_base; -@@ -604,12 +605,13 @@ impl Target { +@@ -625,12 +626,13 @@ impl Target { /// /// The error string could come from any of the APIs called, including /// filesystem access and JSON decoding. @@ -85,7 +85,7 @@ index 4d9315a..12aadab 100644 fn load_file(path: &Path) -> Result { let mut f = File::open(path).map_err(|e| e.to_string())?; -@@ -640,8 +642,14 @@ impl Target { +@@ -661,8 +663,14 @@ impl Target { .unwrap_or(OsString::new()); // FIXME 16351: add a sane default search path? diff --git a/recipes-devtools/rust/files/rust-1.14.0/0003-std-thread_local-workaround-for-NULL-__dso_handle.patch b/recipes-devtools/rust/files/rust-1.15.1/0003-std-thread_local-workaround-for-NULL-__dso_handle.patch similarity index 94% rename from recipes-devtools/rust/files/rust-1.14.0/0003-std-thread_local-workaround-for-NULL-__dso_handle.patch rename to recipes-devtools/rust/files/rust-1.15.1/0003-std-thread_local-workaround-for-NULL-__dso_handle.patch index 77b4054..f50fb41 100644 --- a/recipes-devtools/rust/files/rust-1.14.0/0003-std-thread_local-workaround-for-NULL-__dso_handle.patch +++ b/recipes-devtools/rust/files/rust-1.15.1/0003-std-thread_local-workaround-for-NULL-__dso_handle.patch @@ -1,4 +1,4 @@ -From 719526b7227609733bc4400651e9919545934905 Mon Sep 17 00:00:00 2001 +From bff536002eba2ed322d329d9022ccdc77da458a3 Mon Sep 17 00:00:00 2001 From: Cody P Schafer Date: Wed, 3 Dec 2014 19:15:19 -0500 Subject: [PATCH 3/3] std/thread_local: workaround for NULL __dso_handle diff --git a/recipes-devtools/rust/libstd-rs_1.14.0.bb b/recipes-devtools/rust/libstd-rs_1.14.0.bb deleted file mode 100644 index d8e02b2..0000000 --- a/recipes-devtools/rust/libstd-rs_1.14.0.bb +++ /dev/null @@ -1,6 +0,0 @@ -require rust-source-${PV}.inc -require libstd-rs.inc - -SRC_URI += "\ - crate://crates.io/gcc/0.3.27 \ -" diff --git a/recipes-devtools/rust/libstd-rs_1.15.1.bb b/recipes-devtools/rust/libstd-rs_1.15.1.bb new file mode 100644 index 0000000..944df6a --- /dev/null +++ b/recipes-devtools/rust/libstd-rs_1.15.1.bb @@ -0,0 +1,19 @@ +require rust-source-${PV}.inc +require libstd-rs.inc + +EXTRA_OECONF = "--disable-rustbuild" + +CARGO_BUILD_FLAGS += "--features 'jemalloc panic-unwind'" + +SRC_URI += "\ + crate://crates.io/cmake/0.1.18 \ + crate://crates.io/env_logger/0.3.5 \ + crate://crates.io/filetime/0.1.10 \ + crate://crates.io/gcc/0.3.40 \ + crate://crates.io/getopts/0.2.14 \ + crate://crates.io/libc/0.2.17 \ + crate://crates.io/log/0.3.6 \ + crate://crates.io/num_cpus/0.2.13 \ + crate://crates.io/rustc-serialize/0.3.19 \ + crate://crates.io/toml/0.1.30 \ +" diff --git a/recipes-devtools/rust/rust-cross_1.14.0.bb b/recipes-devtools/rust/rust-cross_1.15.1.bb similarity index 100% rename from recipes-devtools/rust/rust-cross_1.14.0.bb rename to recipes-devtools/rust/rust-cross_1.15.1.bb diff --git a/recipes-devtools/rust/rust-llvm_1.14.0.bb b/recipes-devtools/rust/rust-llvm_1.15.1.bb similarity index 100% rename from recipes-devtools/rust/rust-llvm_1.14.0.bb rename to recipes-devtools/rust/rust-llvm_1.15.1.bb diff --git a/recipes-devtools/rust/rust-source-1.14.0.inc b/recipes-devtools/rust/rust-source-1.15.1.inc similarity index 58% rename from recipes-devtools/rust/rust-source-1.14.0.inc rename to recipes-devtools/rust/rust-source-1.15.1.inc index 9a02953..dc3bdfb 100644 --- a/recipes-devtools/rust/rust-source-1.14.0.inc +++ b/recipes-devtools/rust/rust-source-1.15.1.inc @@ -1,24 +1,24 @@ -# Specifics for Rust 1.14.0 +# Specifics for Rust 1.15.1 ## This is information on the rust-snapshot (binary) used to build our current release. ## snapshot info is taken from rust/src/stage0.txt ## TODO: find a way to add additional SRC_URIs based on the contents of an ## earlier SRC_URI. -RS_VERSION = "1.13.0" +RS_VERSION = "1.14.0" RUST_SNAPSHOT = "rustc-${RS_VERSION}-${RUST_BUILD_SYS}" # These are x86_64-unknown-linux-gnu hashes, how can we add more? -SRC_URI[rust-snapshot.md5sum] = "1400262e1529f94a12d2f5c77cc67782" -SRC_URI[rust-snapshot.sha256sum] = "0b092ba6750be89aad32b231ad9c625a11b040fae3cad5aa3ef32aaf213332d4" +SRC_URI[rust-snapshot.md5sum] = "f178d9d6aad0f87c451f4b2f93170633" +SRC_URI[rust-snapshot.sha256sum] = "0eeec4211aa872f24c220200a0c2b095bbfc9c0f737c1c5df2555967c8f36787" SRC_URI += "\ https://static.rust-lang.org/dist/rustc-${PV}-src.tar.gz;name=rust \ " -SRC_URI[rust.md5sum] = "00b6bb5b465e7bd89c541eea99876cdc" -SRC_URI[rust.sha256sum] = "c790edd2e915bd01bea46122af2942108479a2fda9a6f76d1094add520ac3b6b" +SRC_URI[rust.md5sum] = "5bbfff5ef8857a73d120616546a7fd29" +SRC_URI[rust.sha256sum] = "2e7daad418a830b45b977cd7ecf181b65f30f73df63ff36e124ea5fe5d1af327" # later versions of rust change the directory that they unextract to -RUSTSRC = "${WORKDIR}/rustc-${PV}" +RUSTSRC = "${WORKDIR}/rustc-${PV}-src" # set this as our default S = "${RUSTSRC}" diff --git a/recipes-devtools/rust/rust_1.14.0.bb b/recipes-devtools/rust/rust_1.15.1.bb similarity index 85% rename from recipes-devtools/rust/rust_1.14.0.bb rename to recipes-devtools/rust/rust_1.15.1.bb index 704f66f..208ef97 100644 --- a/recipes-devtools/rust/rust_1.14.0.bb +++ b/recipes-devtools/rust/rust_1.15.1.bb @@ -1,9 +1,10 @@ require rust.inc require rust-source-${PV}.inc +EXTRA_OECONF = "--disable-rustbuild" + SRC_URI += " \ file://rust-${PV}/0001-Target-add-default-target.json-path-libdir-rust-targ.patch \ - file://rust-${PV}/0002-mk-for-stage0-use-RUSTFLAGS-to-override-target-libs-.patch \ file://rust-${PV}/0003-std-thread_local-workaround-for-NULL-__dso_handle.patch \ "