]> git.lizzy.rs Git - rust.git/blob - src/librustc_target/spec/linux_kernel_base.rs
Rollup merge of #64189 - phansch:add_macros_support, r=estebank
[rust.git] / src / librustc_target / spec / linux_kernel_base.rs
1 use crate::spec::{LinkArgs, LinkerFlavor, PanicStrategy, RelroLevel, TargetOptions};
2 use std::default::Default;
3
4 pub fn opts() -> TargetOptions {
5     let mut pre_link_args = LinkArgs::new();
6     pre_link_args.insert(
7         LinkerFlavor::Gcc,
8         vec!["-Wl,--as-needed".to_string(), "-Wl,-z,noexecstack".to_string()],
9     );
10
11     TargetOptions {
12         disable_redzone: true,
13         panic_strategy: PanicStrategy::Abort,
14         stack_probes: true,
15         eliminate_frame_pointer: false,
16         linker_is_gnu: true,
17         position_independent_executables: true,
18         needs_plt: true,
19         relro_level: RelroLevel::Full,
20         relocation_model: "static".to_string(),
21         target_family: Some("unix".to_string()),
22         pre_link_args,
23
24         ..Default::default()
25     }
26 }