use driver::session;
use metadata::loader::meta_section_name;
-pub fn get_target_strs(target_os: session::os) -> target_strs::t {
+pub fn get_target_strs(target_triple: ~str, target_os: session::os) -> target_strs::t {
return target_strs::t {
module_asm: ~"",
}
},
- target_triple: match target_os {
- session::os_macos => ~"arm-apple-darwin",
- session::os_win32 => ~"arm-pc-mingw32",
- session::os_linux => ~"arm-unknown-linux-gnueabihf",
- session::os_android => ~"arm-linux-androideabi",
- session::os_freebsd => ~"arm-unknown-freebsd"
- },
+ target_triple: target_triple,
cc_args: ~[~"-marm"]
};
use driver::session::sess_os_to_meta_os;
use metadata::loader::meta_section_name;
-pub fn get_target_strs(target_os: session::os) -> target_strs::t {
+pub fn get_target_strs(target_triple: ~str, target_os: session::os) -> target_strs::t {
return target_strs::t {
module_asm: ~"",
}
},
- target_triple: match target_os {
- session::os_macos => ~"mips-apple-darwin",
- session::os_win32 => ~"mips-pc-mingw32",
- session::os_linux => ~"mips-unknown-linux-gnu",
- session::os_android => ~"mips-unknown-android-gnu",
- session::os_freebsd => ~"mips-unknown-freebsd"
- },
+ target_triple: target_triple,
cc_args: ~[]
};
use driver::session;
use metadata::loader::meta_section_name;
-pub fn get_target_strs(target_os: session::os) -> target_strs::t {
+pub fn get_target_strs(target_triple: ~str, target_os: session::os) -> target_strs::t {
return target_strs::t {
module_asm: ~"",
}
},
- target_triple: match target_os {
- session::os_macos => ~"i686-apple-darwin",
- session::os_win32 => ~"i686-pc-mingw32",
- session::os_linux => ~"i686-unknown-linux-gnu",
- session::os_android => ~"i686-unknown-android-gnu",
- session::os_freebsd => ~"i686-unknown-freebsd"
- },
+ target_triple: target_triple,
cc_args: ~[~"-m32"]
};
use driver::session;
use metadata::loader::meta_section_name;
-pub fn get_target_strs(target_os: session::os) -> target_strs::t {
+pub fn get_target_strs(target_triple: ~str, target_os: session::os) -> target_strs::t {
return target_strs::t {
module_asm: ~"",
}
},
- target_triple: match target_os {
- session::os_macos => ~"x86_64-apple-darwin",
- session::os_win32 => ~"x86_64-pc-mingw32",
- session::os_linux => ~"x86_64-unknown-linux-gnu",
- session::os_android => ~"x86_64-unknown-android-gnu",
- session::os_freebsd => ~"x86_64-unknown-freebsd",
- },
+ target_triple: target_triple,
cc_args: ~[~"-m64"]
};
abi::Arm => (ast::ty_i32, ast::ty_u32, ast::ty_f64),
abi::Mips => (ast::ty_i32, ast::ty_u32, ast::ty_f64)
};
+ let target_triple = sopts.target_triple.clone();
let target_strs = match arch {
- abi::X86 => x86::get_target_strs(os),
- abi::X86_64 => x86_64::get_target_strs(os),
- abi::Arm => arm::get_target_strs(os),
- abi::Mips => mips::get_target_strs(os)
+ abi::X86 => x86::get_target_strs(target_triple, os),
+ abi::X86_64 => x86_64::get_target_strs(target_triple, os),
+ abi::Arm => arm::get_target_strs(target_triple, os),
+ abi::Mips => mips::get_target_strs(target_triple, os)
};
let target_cfg = @session::config {
os: os,