Skip to content

Commit

Permalink
Rollup merge of rust-lang#83822 - petrochenkov:linkandro, r=davidtwco
Browse files Browse the repository at this point in the history
rustc_target: Remove compiler-rt linking hack on Android

`compiler-rt` did some significant work last year trying to eliminate this kind of duplicated symbols, so the flag may be no longer necessary.
Tested locally with AArch64 Android, seems to work, CI will check the rest of the targets.
  • Loading branch information
Dylan-DPC authored Apr 6, 2021
2 parents 861b0fb + 6ac2080 commit a39b243
Showing 1 changed file with 1 addition and 7 deletions.
8 changes: 1 addition & 7 deletions compiler/rustc_target/src/spec/android_base.rs
Original file line number Diff line number Diff line change
@@ -1,14 +1,8 @@
use crate::spec::{LinkerFlavor, TargetOptions};
use crate::spec::TargetOptions;

pub fn opts() -> TargetOptions {
let mut base = super::linux_gnu_base::opts();
base.os = "android".to_string();
// Many of the symbols defined in compiler-rt are also defined in libgcc.
// Android's linker doesn't like that by default.
base.pre_link_args
.entry(LinkerFlavor::Gcc)
.or_default()
.push("-Wl,--allow-multiple-definition".to_string());
base.dwarf_version = Some(2);
base.position_independent_executables = true;
base.has_elf_tls = false;
Expand Down

0 comments on commit a39b243

Please sign in to comment.