From 1dbce4b0afb8f76eb7cd7aad0e3c34d4f7fc2274 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= Date: Fri, 9 Mar 2018 14:53:15 +0100 Subject: [PATCH] Make the default relro level be doing nothing at all MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Löthberg --- src/librustc_back/lib.rs | 4 ++++ src/librustc_back/target/mod.rs | 2 +- src/librustc_trans/back/link.rs | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/librustc_back/lib.rs b/src/librustc_back/lib.rs index 9de56cca3394..9baee2677099 100644 --- a/src/librustc_back/lib.rs +++ b/src/librustc_back/lib.rs @@ -131,6 +131,7 @@ pub enum RelroLevel { Full, Partial, Off, + None, } impl RelroLevel { @@ -139,6 +140,7 @@ impl RelroLevel { RelroLevel::Full => "full", RelroLevel::Partial => "partial", RelroLevel::Off => "off", + RelroLevel::None => "none", } } } @@ -151,6 +153,7 @@ impl FromStr for RelroLevel { "full" => Ok(RelroLevel::Full), "partial" => Ok(RelroLevel::Partial), "off" => Ok(RelroLevel::Off), + "none" => Ok(RelroLevel::None), _ => Err(()), } } @@ -162,6 +165,7 @@ impl ToJson for RelroLevel { RelroLevel::Full => "full".to_json(), RelroLevel::Partial => "partial".to_json(), RelroLevel::Off => "off".to_json(), + RelroLevel::None => "None".to_json(), } } } diff --git a/src/librustc_back/target/mod.rs b/src/librustc_back/target/mod.rs index 0a3e1826f3a1..250d85d45203 100644 --- a/src/librustc_back/target/mod.rs +++ b/src/librustc_back/target/mod.rs @@ -514,7 +514,7 @@ impl Default for TargetOptions { has_rpath: false, no_default_libraries: true, position_independent_executables: false, - relro_level: RelroLevel::Off, + relro_level: RelroLevel::None, pre_link_objects_exe: Vec::new(), pre_link_objects_dll: Vec::new(), post_link_objects: Vec::new(), diff --git a/src/librustc_trans/back/link.rs b/src/librustc_trans/back/link.rs index 56b845c30493..235a95f63e4c 100644 --- a/src/librustc_trans/back/link.rs +++ b/src/librustc_trans/back/link.rs @@ -1017,6 +1017,8 @@ fn link_args(cmd: &mut Linker, RelroLevel::Off => { cmd.no_relro(); }, + RelroLevel::None => { + }, } // Pass optimization flags down to the linker.