de2906e670
rustc: 1.2.0 -> 1.3.0 rustcMaster: 2015-09-05 -> 2015-09-21 This also removes the llvm bundling which reduced immediate the closure size by ~50MB. It also tries to reduce some of the superfluous dependencies to help reduce the number of potential rebuilds (namely removing git).
57 lines
2.4 KiB
Diff
57 lines
2.4 KiB
Diff
From c97759699264c6b1fa0e88420cd3c720df25e594 Mon Sep 17 00:00:00 2001
|
|
From: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
|
|
Date: Tue, 11 Aug 2015 01:09:21 +0200
|
|
Subject: [PATCH] rustc_back: add configure options for default linker and ar
|
|
|
|
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
|
|
---
|
|
configure | 4 ++++
|
|
mk/target.mk | 4 ++++
|
|
src/librustc_back/target/mod.rs | 4 ++--
|
|
3 files changed, 10 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/configure b/configure
|
|
index 071788c..dc9d7d7 100755
|
|
--- a/configure
|
|
+++ b/configure
|
|
@@ -607,6 +607,10 @@ valopt aarch64-linux-android-ndk "" "aarch64-linux-android NDK standalone path"
|
|
valopt release-channel "dev" "the name of the release channel to build"
|
|
valopt musl-root "/usr/local" "MUSL root installation directory"
|
|
|
|
+# Used on systems where "cc" and "ar" are unavailable
|
|
+valopt default-linker "cc" "the default linker"
|
|
+valopt default-ar "ar" "the default ar"
|
|
+
|
|
# Many of these are saved below during the "writing configuration" step
|
|
# (others are conditionally saved).
|
|
opt_nosave manage-submodules 1 "let the build manage the git submodules"
|
|
diff --git a/mk/target.mk b/mk/target.mk
|
|
index aae66c4..408ab96 100644
|
|
--- a/mk/target.mk
|
|
+++ b/mk/target.mk
|
|
@@ -13,6 +13,10 @@
|
|
# this exists can be found on issue #2400
|
|
export CFG_COMPILER_HOST_TRIPLE
|
|
|
|
+# Used as defaults for the runtime ar and cc tools
|
|
+export CFG_DEFAULT_LINKER
|
|
+export CFG_DEFAULT_AR
|
|
+
|
|
# The standard libraries should be held up to a higher standard than any old
|
|
# code, make sure that these common warnings are denied by default. These can
|
|
# be overridden during development temporarily. For stage0, we allow warnings
|
|
diff --git a/src/librustc_back/target/mod.rs b/src/librustc_back/target/mod.rs
|
|
index d9cfdaa..542791a 100644
|
|
--- a/src/librustc_back/target/mod.rs
|
|
+++ b/src/librustc_back/target/mod.rs
|
|
@@ -185,8 +185,8 @@ impl Default for TargetOptions {
|
|
fn default() -> TargetOptions {
|
|
TargetOptions {
|
|
data_layout: String::new(),
|
|
- linker: "cc".to_string(),
|
|
- ar: "ar".to_string(),
|
|
+ linker: option_env!("CFG_DEFAULT_LINKER").unwrap_or("cc").to_string(),
|
|
+ ar: option_env!("CFG_DEFAULT_AR").unwrap_or("ar").to_string(),
|
|
pre_link_args: Vec::new(),
|
|
post_link_args: Vec::new(),
|
|
cpu: "generic".to_string(),
|