about summary refs log tree commit diff
diff options
context:
space:
mode:
authorTamir Duberstein <tamird@gmail.com>2015-04-29 11:12:25 -0700
committerTamir Duberstein <tamird@gmail.com>2015-04-29 13:50:26 -0700
commit9f36ec0d4272006eb02f156280626efef7292dde (patch)
tree8888279c738a8f45f212ab280753d7b15df1dd66
parent7e2b09351de0f0f647aa92942781f5e5c5d1ee45 (diff)
downloadrust-9f36ec0d4272006eb02f156280626efef7292dde.tar.gz
rust-9f36ec0d4272006eb02f156280626efef7292dde.zip
Use PIE on Android
This is OK to do given:
  - PIE is supported on Android starting with API 16.
  - The bots are running API 18.
  - API < 16 now has a 12.5% market share[0] as of 2015-04-29.

Unfortunately, this breaks backtrace support. See #17520.

Closes #17437.

[0] https://developer.android.com/about/dashboards/index.html
-rw-r--r--src/librustc_back/target/arm_linux_androideabi.rs2
-rw-r--r--src/test/run-pass/backtrace.rs1
2 files changed, 1 insertions, 2 deletions
diff --git a/src/librustc_back/target/arm_linux_androideabi.rs b/src/librustc_back/target/arm_linux_androideabi.rs
index b3baa78f493..cbaa2b205b0 100644
--- a/src/librustc_back/target/arm_linux_androideabi.rs
+++ b/src/librustc_back/target/arm_linux_androideabi.rs
@@ -13,8 +13,6 @@ use target::Target;
 pub fn target() -> Target {
     let mut base = super::android_base::opts();
     base.features = "+v7".to_string();
-    // FIXME #17437 (and #17448): Android doesn't support position dependent executables anymore.
-    base.position_independent_executables = false;
 
     Target {
         data_layout: "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-\
diff --git a/src/test/run-pass/backtrace.rs b/src/test/run-pass/backtrace.rs
index f4b62eb2e7c..3f4849dbcb2 100644
--- a/src/test/run-pass/backtrace.rs
+++ b/src/test/run-pass/backtrace.rs
@@ -10,6 +10,7 @@
 
 // no-pretty-expanded FIXME #15189
 // ignore-windows FIXME #13259
+// ignore-android FIXME #17520
 
 use std::env;
 use std::process::{Command, Stdio};