From da34767a98a7b2dfe2dcd04a63d5d82604b9791d Mon Sep 17 00:00:00 2001 From: Liran Date: Fri, 6 Jan 2017 16:20:50 +0200 Subject: [PATCH] Changed objects files extension to "obj" on windows --- src/librustc/session/config.rs | 1 + src/librustc_trans/back/link.rs | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/librustc/session/config.rs b/src/librustc/session/config.rs index b3cb5ace45bc0..beeeebf2b2659 100644 --- a/src/librustc/session/config.rs +++ b/src/librustc/session/config.rs @@ -109,6 +109,7 @@ impl OutputType { OutputType::Bitcode => "bc", OutputType::Assembly => "s", OutputType::LlvmAssembly => "ll", + OutputType::Object if cfg!(target_os = "windows") => "obj", OutputType::Object => "o", OutputType::Metadata => "rmeta", OutputType::DepInfo => "d", diff --git a/src/librustc_trans/back/link.rs b/src/librustc_trans/back/link.rs index defbb44448a9f..0c62313b40825 100644 --- a/src/librustc_trans/back/link.rs +++ b/src/librustc_trans/back/link.rs @@ -212,7 +212,7 @@ pub fn link_binary(sess: &Session, remove(sess, &obj); } } - remove(sess, &outputs.with_extension("metadata.o")); + remove(sess, &outputs.with_extension(&get_metadata_extension())); } out_filenames @@ -824,7 +824,7 @@ fn link_args(cmd: &mut Linker, // object file, so we link that in here. if crate_type == config::CrateTypeDylib || crate_type == config::CrateTypeProcMacro { - cmd.add_object(&outputs.with_extension("metadata.o")); + cmd.add_object(&outputs.with_extension(&get_metadata_extension())); } // Try to strip as much out of the generated object by removing unused @@ -1245,3 +1245,7 @@ fn relevant_lib(sess: &Session, lib: &NativeLibrary) -> bool { None => true, } } + +fn get_metadata_extension() -> String { + "metadata.".to_string() + OutputType::Object.extension() +}