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