1 use crate::spec::{LinkArgs, LinkerFlavor, LldFlavor, SplitDebuginfo, TargetOptions};
3 pub fn opts() -> TargetOptions {
4 let pre_link_args_msvc = vec![
5 // Suppress the verbose logo and authorship debugging output, which would needlessly
9 let mut pre_link_args = LinkArgs::new();
10 pre_link_args.insert(LinkerFlavor::Msvc, pre_link_args_msvc.clone());
11 pre_link_args.insert(LinkerFlavor::Lld(LldFlavor::Link), pre_link_args_msvc);
14 linker_flavor: LinkerFlavor::Msvc,
16 is_like_windows: true,
18 lld_flavor: LldFlavor::Link,
21 abi_return_struct_as_int: true,
22 emit_debug_gdb_scripts: false,
24 // Currently this is the only supported method of debuginfo on MSVC
25 // where `*.pdb` files show up next to the final artifact.
26 split_debuginfo: SplitDebuginfo::Packed,