rustc_target/spec/base/
aix.rs
1use rustc_abi::Endian;
2
3use crate::spec::{Cc, CodeModel, LinkOutputKind, LinkerFlavor, TargetOptions, crt_objects, cvs};
4
5pub(crate) fn opts() -> TargetOptions {
6 TargetOptions {
7 abi: "vec-extabi".into(),
8 code_model: Some(CodeModel::Large),
9 cpu: "pwr7".into(),
10 os: "aix".into(),
11 vendor: "ibm".into(),
12 dynamic_linking: true,
13 endian: Endian::Big,
14 executables: true,
15 archive_format: "aix_big".into(),
16 families: cvs!["unix"],
17 has_rpath: false,
18 has_thread_local: true,
19 crt_static_respected: true,
20 linker_flavor: LinkerFlavor::Unix(Cc::No),
21 linker: Some("ld".into()),
22 eh_frame_header: false,
23 is_like_aix: true,
24 default_dwarf_version: 3,
25 function_sections: true,
26 pre_link_objects: crt_objects::new(&[
27 (LinkOutputKind::DynamicNoPicExe, &["/usr/lib/crt0_64.o", "/usr/lib/crti_64.o"]),
28 (LinkOutputKind::DynamicPicExe, &["/usr/lib/crt0_64.o", "/usr/lib/crti_64.o"]),
29 ]),
30 dll_suffix: ".a".into(),
31 ..Default::default()
32 }
33}