summaryrefslogtreecommitdiffstats
path: root/compiler/rustc_target/src/spec/base/android.rs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_target/src/spec/base/android.rs')
-rw-r--r--compiler/rustc_target/src/spec/base/android.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/compiler/rustc_target/src/spec/base/android.rs b/compiler/rustc_target/src/spec/base/android.rs
new file mode 100644
index 000000000..af15c16a5
--- /dev/null
+++ b/compiler/rustc_target/src/spec/base/android.rs
@@ -0,0 +1,16 @@
+use crate::spec::{base, SanitizerSet, TargetOptions};
+
+pub fn opts() -> TargetOptions {
+ let mut base = base::linux::opts();
+ base.os = "android".into();
+ base.is_like_android = true;
+ base.default_dwarf_version = 2;
+ base.has_thread_local = false;
+ base.supported_sanitizers = SanitizerSet::ADDRESS;
+ // This is for backward compatibility, see https://github.com/rust-lang/rust/issues/49867
+ // for context. (At that time, there was no `-C force-unwind-tables`, so the only solution
+ // was to always emit `uwtable`).
+ base.default_uwtable = true;
+ base.crt_static_respected = true;
+ base
+}