]> git.proxmox.com Git - rustc.git/blame - src/librustc_target/spec/linux_kernel_base.rs
New upstream version 1.47.0+dfsg1
[rustc.git] / src / librustc_target / spec / linux_kernel_base.rs
CommitLineData
f9f354fc 1use crate::spec::{LinkArgs, LinkerFlavor, PanicStrategy, RelocModel, RelroLevel, TargetOptions};
e1599b0c
XL
2
3pub fn opts() -> TargetOptions {
4 let mut pre_link_args = LinkArgs::new();
5 pre_link_args.insert(
6 LinkerFlavor::Gcc,
7 vec!["-Wl,--as-needed".to_string(), "-Wl,-z,noexecstack".to_string()],
8 );
9
10 TargetOptions {
11 disable_redzone: true,
12 panic_strategy: PanicStrategy::Abort,
13 stack_probes: true,
14 eliminate_frame_pointer: false,
15 linker_is_gnu: true,
16 position_independent_executables: true,
17 needs_plt: true,
18 relro_level: RelroLevel::Full,
f9f354fc 19 relocation_model: RelocModel::Static,
e1599b0c
XL
20 pre_link_args,
21
22 ..Default::default()
23 }
24}