blob: e7757fd4726c9ec28412fd6669e7eadcaa701aea [file] [log] [blame]
use std::borrow::Cow;
use crate::spec::{Os, RelroLevel, SplitDebuginfo, TargetOptions, cvs};
pub(crate) fn opts() -> TargetOptions {
TargetOptions {
os: Os::Linux,
dynamic_linking: true,
families: cvs!["unix"],
has_rpath: true,
position_independent_executables: true,
relro_level: RelroLevel::Full,
has_thread_local: true,
crt_static_respected: true,
// We want backtraces to work by default and they rely on unwind tables
// (regardless of `-C panic` strategy).
default_uwtable: true,
supported_split_debuginfo: Cow::Borrowed(&[
SplitDebuginfo::Packed,
SplitDebuginfo::Unpacked,
SplitDebuginfo::Off,
]),
..Default::default()
}
}