From ee89db9b172bf32bdf63bdcd841c4b3b8960ce0b Mon Sep 17 00:00:00 2001 From: bjorn3 <17426603+bjorn3@users.noreply.github.com> Date: Thu, 25 Jul 2024 19:53:17 +0000 Subject: Move temp file name generation out of the create_dll_import_lib method --- compiler/rustc_codegen_ssa/src/back/archive.rs | 5 ++--- compiler/rustc_codegen_ssa/src/back/link.rs | 10 +++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) (limited to 'compiler/rustc_codegen_ssa/src') diff --git a/compiler/rustc_codegen_ssa/src/back/archive.rs b/compiler/rustc_codegen_ssa/src/back/archive.rs index fd39ef2649b..b4ee6514b04 100644 --- a/compiler/rustc_codegen_ssa/src/back/archive.rs +++ b/compiler/rustc_codegen_ssa/src/back/archive.rs @@ -31,9 +31,8 @@ pub trait ArchiveBuilderBuilder { sess: &Session, lib_name: &str, dll_imports: &[DllImport], - tmpdir: &Path, - is_direct_dependency: bool, - ) -> PathBuf; + output_path: &Path, + ); fn extract_bundled_libs<'a>( &'a self, diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs index 730d1ff73a0..4bdaeaf2996 100644 --- a/compiler/rustc_codegen_ssa/src/back/link.rs +++ b/compiler/rustc_codegen_ssa/src/back/link.rs @@ -494,13 +494,17 @@ fn create_dll_import_libs<'a>( Ok(collate_raw_dylibs(sess, used_libraries)? .into_iter() .map(|(raw_dylib_name, raw_dylib_imports)| { + let name_suffix = if is_direct_dependency { "_imports" } else { "_imports_indirect" }; + let output_path = tmpdir.join(format!("{raw_dylib_name}{name_suffix}.lib")); + archive_builder_builder.create_dll_import_lib( sess, &raw_dylib_name, &raw_dylib_imports, - tmpdir, - is_direct_dependency, - ) + &output_path, + ); + + output_path }) .collect()) } -- cgit 1.4.1-3-g733a5