rust: new version & patch refresh

This commit is contained in:
Cody P Schafer
2014-12-01 16:31:40 -05:00
parent 27838c7763
commit c35271c0f9
13 changed files with 86 additions and 57 deletions
@@ -1,18 +1,24 @@
From 2e75d7858baf8b00388f51928f2eab9395b67e49 Mon Sep 17 00:00:00 2001
From 3a42bfdbf3ad198deecdbfc2c5741c8d1b5cbb2f Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Wed, 26 Nov 2014 10:00:32 -0500
Subject: [PATCH] libstd/io/process/Command: fully quote and escape the command
and all args
Subject: [PATCH 01/11] libstd/io/process/Command: fully quote and escape the
command and all args
This makes the command (which may have trailing or leading white space
the user does not expect) unambiguous.
It also makes any usage of a literal ' (single quote) in arguments or
the command name unambiguous by escaping them in the same style as posix
shell.
---
src/libstd/io/process.rs | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
src/libstd/io/process.rs | 28 ++++++++++++++++++++++++++--
1 file changed, 26 insertions(+), 2 deletions(-)
diff --git a/src/libstd/io/process.rs b/src/libstd/io/process.rs
index d4d24c1..0904928 100644
index d4d24c1..90e5567 100644
--- a/src/libstd/io/process.rs
+++ b/src/libstd/io/process.rs
@@ -383,14 +383,36 @@ impl Command {
@@ -383,14 +383,38 @@ impl Command {
}
}
@@ -44,10 +50,12 @@ index d4d24c1..0904928 100644
/// character.
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- try!(write!(f, "{}", String::from_utf8_lossy(self.program.as_bytes_no_nul())));
+ try!(write!(f, "{}", SingleQuotedStr::new(String::from_utf8_lossy(self.program.as_bytes_no_nul()).as_slice())));
+ try!(write!(f, "{}", SingleQuotedStr::new(String::from_utf8_lossy(
+ self.program.as_bytes_no_nul()).as_slice())));
for arg in self.args.iter() {
- try!(write!(f, " '{}'", String::from_utf8_lossy(arg.as_bytes_no_nul())));
+ try!(write!(f, " {}", SingleQuotedStr::new(String::from_utf8_lossy(arg.as_bytes_no_nul()).as_slice())));
+ try!(write!(f, " {}", SingleQuotedStr::new(String::from_utf8_lossy(
+ arg.as_bytes_no_nul()).as_slice())));
}
Ok(())
}
@@ -0,0 +1,33 @@
From 9af37c0bae0925de62b106b8bad3c8b3c81a20b9 Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Mon, 1 Dec 2014 15:50:13 -0500
Subject: [PATCH 02/11] std/io/process: add Show tests
---
src/libstd/io/process.rs | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/src/libstd/io/process.rs b/src/libstd/io/process.rs
index 90e5567..67476f0 100644
--- a/src/libstd/io/process.rs
+++ b/src/libstd/io/process.rs
@@ -1237,4 +1237,16 @@ mod tests {
let val = env.get(&EnvKey("PATH".to_c_str()));
assert!(val.unwrap() == &"bar".to_c_str());
}
+
+ fn check_show(c: Command, v: &str) {
+ assert_eq!(format!("{}", c), v)
+ }
+
+ #[test]
+ fn show() {
+ check_show(Command::new("gcc ").arg("-Ifoo'bar"), "'gcc ' '-Ifoo'\\''bar'");
+ check_show(Command::new("c99"), "'c99'");
+ check_show(Command::new("c99 "), "'c99 '");
+ check_show(Command::new("Can't buy me love"), "'Can'\\''t buy me love'");
+ }
}
--
2.1.3
@@ -1,7 +1,7 @@
From e9a9e2995d6e55fdab56b10549928218df8d0240 Mon Sep 17 00:00:00 2001
From 76975beaff8cd6a7123c1ac65bf301559656d9ab Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Sat, 15 Nov 2014 20:12:48 -0500
Subject: [PATCH 1/9] platform.mk: avoid choking on i586
Subject: [PATCH 03/11] platform.mk: avoid choking on i586
---
mk/platform.mk | 4 +++-
@@ -1,7 +1,7 @@
From 34cf235dd2e8d357f3aac42d0ff17afc92e3c881 Mon Sep 17 00:00:00 2001
From 9f5da84a1bfc2f17c56af11c98e03f80cdd0505c Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Mon, 17 Nov 2014 16:14:15 -0500
Subject: [PATCH 2/9] mk/rt/compiler_rt: pass LDFLAGS from
Subject: [PATCH 04/11] mk/rt/compiler_rt: pass LDFLAGS from
CFG_GCCISH_LINK_FLAGS
---
@@ -1,7 +1,7 @@
From c7b10c32d790dbdca3c2b961f237d79431871d36 Mon Sep 17 00:00:00 2001
From 57865c3a06909470918db23e3d5c5b0fa925a29c Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Tue, 18 Nov 2014 01:40:21 -0500
Subject: [PATCH 3/9] Target: add default target.json path:
Subject: [PATCH 05/11] Target: add default target.json path:
$libdir/rust/targets
---
@@ -11,10 +11,10 @@ Subject: [PATCH 3/9] Target: add default target.json path:
3 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/src/librustc/session/config.rs b/src/librustc/session/config.rs
index e10a1a4..feb4878 100644
index 3c2dbae..e99bf2c 100644
--- a/src/librustc/session/config.rs
+++ b/src/librustc/session/config.rs
@@ -540,8 +540,8 @@ pub fn build_configuration(sess: &Session) -> ast::CrateConfig {
@@ -546,8 +546,8 @@ pub fn build_configuration(sess: &Session) -> ast::CrateConfig {
v
}
@@ -26,10 +26,10 @@ index e10a1a4..feb4878 100644
Err(e) => {
sp.handler().fatal((format!("Error loading target specification: {}", e)).as_slice());
diff --git a/src/librustc/session/mod.rs b/src/librustc/session/mod.rs
index 72a9f23..d6ccae7 100644
index 047e598..25151be 100644
--- a/src/librustc/session/mod.rs
+++ b/src/librustc/session/mod.rs
@@ -219,7 +219,11 @@ pub fn build_session_(sopts: config::Options,
@@ -239,7 +239,11 @@ pub fn build_session_(sopts: config::Options,
local_crate_source_file: Option<Path>,
span_diagnostic: diagnostic::SpanHandler)
-> Session {
@@ -1,7 +1,8 @@
From 1fd138dbc5ccf1197baad97f1ab8d169f82053cf Mon Sep 17 00:00:00 2001
From fa47c64a5b41597786b8212b92fc59ee87af096f Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Tue, 18 Nov 2014 14:52:56 -0500
Subject: [PATCH 4/9] mk: for stage0, use RUSTFLAGS to override target libs dir
Subject: [PATCH 06/11] 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
@@ -12,7 +13,7 @@ stage0-rustc at the appropriate location.
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/mk/main.mk b/mk/main.mk
index a9a99f1..d81a804 100644
index 4aed1ce..867d919 100644
--- a/mk/main.mk
+++ b/mk/main.mk
@@ -335,21 +335,22 @@ define SREQ
@@ -46,7 +47,7 @@ index a9a99f1..d81a804 100644
# Preqrequisites for using the stageN compiler
ifeq ($(1),0)
HSREQ$(1)_H_$(3) = $$(HBIN$(1)_H_$(3))/rustc$$(X_$(3))
@@ -459,6 +460,7 @@ STAGE$(1)_T_$(2)_H_$(3) := \
@@ -461,6 +462,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)) \
@@ -54,7 +55,7 @@ index a9a99f1..d81a804 100644
$$(RUSTC_FLAGS_$(2))
PERF_STAGE$(1)_T_$(2)_H_$(3) := \
@@ -467,6 +469,7 @@ PERF_STAGE$(1)_T_$(2)_H_$(3) := \
@@ -469,6 +471,7 @@ PERF_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)) \
@@ -1,7 +1,7 @@
From 252e607f9942874c16d45e0c9146ac992b614cb0 Mon Sep 17 00:00:00 2001
From 2deaa6d8455b277f9f1980f8bf5dc237eca7462c Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Tue, 18 Nov 2014 13:48:14 -0500
Subject: [PATCH 5/9] mk: add missing CFG_LIBDIR_RELATIVE
Subject: [PATCH 07/11] mk: add missing CFG_LIBDIR_RELATIVE
---
mk/grammar.mk | 4 ++--
@@ -1,7 +1,7 @@
From c622cb85bdd3d4d5349240b1431854ac9ee250ac Mon Sep 17 00:00:00 2001
From 49d9ff71a7ab92c28241f599af0b2343f2d9f442 Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Mon, 24 Nov 2014 13:10:15 -0500
Subject: [PATCH 6/9] configure: support --bindir, and extend libdir to
Subject: [PATCH 08/11] configure: support --bindir, and extend libdir to
non-blessed dirs
Adds --bindir, and:
@@ -24,7 +24,7 @@ Note that this adds the requirement of the 'realpath' tool
9 files changed, 85 insertions(+), 64 deletions(-)
diff --git a/configure b/configure
index 5ac3982..4176631 100755
index 613f62d..bc92474 100755
--- a/configure
+++ b/configure
@@ -340,6 +340,7 @@ need_cmd date
@@ -56,7 +56,7 @@ index 5ac3982..4176631 100755
# Validate Options
step_msg "validating $CFG_SELF args"
validate_opt
@@ -1334,6 +1343,7 @@ putvar CFG_PREFIX
@@ -1333,6 +1342,7 @@ putvar CFG_PREFIX
putvar CFG_HOST
putvar CFG_TARGET
putvar CFG_LIBDIR_RELATIVE
@@ -106,7 +106,7 @@ index 88b451f..0fba6ee 100644
$(Q)rm -R tmp/dist
diff --git a/mk/main.mk b/mk/main.mk
index d81a804..128f956 100644
index 867d919..cfbc1b0 100644
--- a/mk/main.mk
+++ b/mk/main.mk
@@ -318,7 +318,9 @@ export CFG_BUILD
@@ -157,7 +157,7 @@ index 16cbaab..f8a354c 100644
endif
diff --git a/mk/prepare.mk b/mk/prepare.mk
index 7df2489..842078f 100644
index d404d3d..afc6d81 100644
--- a/mk/prepare.mk
+++ b/mk/prepare.mk
@@ -147,10 +147,10 @@ endef
@@ -1,14 +1,14 @@
From 9131d50decdde98fac37164b42a339f7ccf33c5b Mon Sep 17 00:00:00 2001
From cb25ce23ce1105d8695a8cc20f3e763c494c51bd Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Mon, 24 Nov 2014 13:20:57 -0500
Subject: [PATCH 7/9] XXX: remove conflicting realpath hack
Subject: [PATCH 09/11] XXX: remove conflicting realpath hack
---
configure | 13 +------------
1 file changed, 1 insertion(+), 12 deletions(-)
diff --git a/configure b/configure
index 4176631..b10b427 100755
index bc92474..4b05c91 100755
--- a/configure
+++ b/configure
@@ -550,20 +550,9 @@ CFG_TARGET=$(to_llvm_triple $CFG_TARGET)
@@ -1,14 +1,14 @@
From 9d3d00c93160d026b5b8895920ce21bdebe19af3 Mon Sep 17 00:00:00 2001
From e52460bf2c9550e4fbc10944f2868ed02ed71497 Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Mon, 24 Nov 2014 13:22:43 -0500
Subject: [PATCH 8/9] XXX: configure: unneeded windows check
Subject: [PATCH 10/11] XXX: configure: unneeded windows check
---
configure | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index b10b427..a967fb2 100755
index 4b05c91..a9bd175 100755
--- a/configure
+++ b/configure
@@ -554,8 +554,8 @@ fi
@@ -1,7 +1,7 @@
From 0e058b076a33f26e902decf41da78c9d61a4bc63 Mon Sep 17 00:00:00 2001
From b1ea0b2db188b21f17af2206dcff059ed309a690 Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Mon, 24 Nov 2014 13:54:42 -0500
Subject: [PATCH 9/9] Parallelize submake invocations
Subject: [PATCH 11/11] Parallelize submake invocations
---
mk/clean.mk | 2 +-
@@ -12,10 +12,10 @@ Subject: [PATCH 9/9] Parallelize submake invocations
5 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/mk/clean.mk b/mk/clean.mk
index 97c823c..da99763 100644
index aadc55b..f671745 100644
--- a/mk/clean.mk
+++ b/mk/clean.mk
@@ -120,7 +120,7 @@ $(foreach host, $(CFG_HOST), \
@@ -121,7 +121,7 @@ $(foreach host, $(CFG_HOST), \
define DEF_CLEAN_LLVM_HOST
ifeq ($(CFG_LLVM_ROOT),)
clean-llvm$(1):
@@ -53,7 +53,7 @@ index 0fba6ee..72b799c 100644
$(Q)cd tmp/empty_dir && sh ../../tmp/dist/$(PKG_NAME)-$(CFG_BUILD)/install.sh --uninstall --prefix="$(DESTDIR)$(CFG_PREFIX)" --libdir="$(DESTDIR)$(CFG_LIBDIR)" --mandir="$(DESTDIR)$(CFG_MANDIR)" --bindir="$(DESTDIR)$(CFG_BINDIR)"
# Remove tmp files because it's a decent amount of disk space
diff --git a/mk/llvm.mk b/mk/llvm.mk
index bce4390..f0f3892 100644
index ba2e073..3998806 100644
--- a/mk/llvm.mk
+++ b/mk/llvm.mk
@@ -28,7 +28,7 @@ LLVM_STAMP_$(1) = $$(CFG_LLVM_BUILD_DIR_$(1))/llvm-auto-clean-stamp
-13
View File
@@ -1,13 +0,0 @@
SRCREV = "ccc4a7cebc759b3c8295b64bd5c1fe29fdb3db8a"
require rust-git.inc
SRC_URI_append = "\
file://0001-platform.mk-avoid-choking-on-i586.patch \
file://0002-mk-rt-compiler_rt-pass-LDFLAGS-from-CFG_GCCISH_LINK_.patch \
file://0003-Target-add-default-target.json-path-libdir-rust-targ.patch \
file://0004-mk-for-stage0-use-RUSTFLAGS-to-override-target-libs-.patch \
file://0005-mk-add-missing-CFG_LIBDIR_RELATIVE.patch \
file://0006-configure-support-bindir-and-extend-libdir-to-non-bl.patch \
file://0007-XXX-remove-conflicting-realpath-hack.patch \
file://0008-XXX-configure-unneeded-windows-check.patch \
"
@@ -1,4 +1,4 @@
SRCREV = "c637cab85323c97be37d0c12bfa0fc0e9ea2c367"
SRCREV = "de95ad4c46788518822326941bdc5084b1023abf"
require rust-git.inc
SRC_URI_append = "\