1 use crate::spec
::{crt_objects, LinkArgs, LinkOutputKind, LinkerFlavor, LldFlavor, TargetOptions}
;
3 pub fn opts() -> TargetOptions
{
4 let mut pre_link_args
= LinkArgs
::new();
6 LinkerFlavor
::Lld(LldFlavor
::Ld
),
8 "--build-id".to_string(),
9 "--hash-style=gnu".to_string(),
11 "max-page-size=4096".to_string(),
15 "rodynamic".to_string(),
17 "separate-loadable-segments".to_string(),
18 "--pack-dyn-relocs=relr".to_string(),
23 linker
: Some("rust-lld".to_owned()),
24 lld_flavor
: LldFlavor
::Ld
,
25 dynamic_linking
: true,
27 target_family
: Some("unix".to_string()),
28 is_like_fuchsia
: true,
32 pre_link_objects
: crt_objects
::new(&[
33 (LinkOutputKind
::DynamicNoPicExe
, &["Scrt1.o"]),
34 (LinkOutputKind
::DynamicPicExe
, &["Scrt1.o"]),
35 (LinkOutputKind
::StaticNoPicExe
, &["Scrt1.o"]),
36 (LinkOutputKind
::StaticPicExe
, &["Scrt1.o"]),
38 position_independent_executables
: true,