2 crt_objects, cvs, LinkArgs, LinkOutputKind, LinkerFlavor, LldFlavor, TargetOptions,
5 pub fn opts() -> TargetOptions {
6 let mut pre_link_args = LinkArgs::new();
8 LinkerFlavor::Lld(LldFlavor::Ld),
11 "--hash-style=gnu".into(),
13 "max-page-size=4096".into(),
19 "separate-loadable-segments".into(),
20 "--pack-dyn-relocs=relr".into(),
26 linker_flavor: LinkerFlavor::Lld(LldFlavor::Ld),
27 linker: Some("rust-lld".into()),
28 dynamic_linking: true,
30 families: cvs!["unix"],
31 is_like_fuchsia: true,
33 pre_link_objects: crt_objects::new(&[
34 (LinkOutputKind::DynamicNoPicExe, &["Scrt1.o"]),
35 (LinkOutputKind::DynamicPicExe, &["Scrt1.o"]),
36 (LinkOutputKind::StaticNoPicExe, &["Scrt1.o"]),
37 (LinkOutputKind::StaticPicExe, &["Scrt1.o"]),
39 position_independent_executables: true,
40 has_thread_local: true,