]> git.lizzy.rs Git - rust.git/blob - compiler/rustc_target/src/spec/hermit_base.rs
Auto merge of #77618 - fusion-engineering-forks:windows-parker, r=Amanieu
[rust.git] / compiler / rustc_target / src / spec / hermit_base.rs
1 use crate::spec::{LinkArgs, LinkerFlavor, LldFlavor, PanicStrategy};
2 use crate::spec::{RelocModel, TargetOptions, TlsModel};
3
4 pub fn opts() -> TargetOptions {
5     let mut pre_link_args = LinkArgs::new();
6     pre_link_args.insert(
7         LinkerFlavor::Lld(LldFlavor::Ld),
8         vec!["--build-id".to_string(), "--hash-style=gnu".to_string(), "--Bstatic".to_string()],
9     );
10
11     TargetOptions {
12         os: "hermit".to_string(),
13         linker_flavor: LinkerFlavor::Lld(LldFlavor::Ld),
14         linker: Some("rust-lld".to_owned()),
15         executables: true,
16         has_elf_tls: true,
17         linker_is_gnu: true,
18         pre_link_args,
19         panic_strategy: PanicStrategy::Abort,
20         position_independent_executables: true,
21         static_position_independent_executables: true,
22         relocation_model: RelocModel::Pic,
23         os_family: None,
24         tls_model: TlsModel::InitialExec,
25         ..Default::default()
26     }
27 }