diff --git a/src/tools/run-make-support/src/artifact_names.rs b/src/tools/run-make-support/src/artifact_names.rs index a2c58f4e4b6..bc6ec7566e5 100644 --- a/src/tools/run-make-support/src/artifact_names.rs +++ b/src/tools/run-make-support/src/artifact_names.rs @@ -1,7 +1,9 @@ //! A collection of helpers to construct artifact names, such as names of dynamic or static //! librarys which are target-dependent. -use crate::targets::{is_darwin, is_msvc, is_windows}; +// FIXME(jieyouxu): convert these to return `PathBuf`s instead of strings! + +use crate::targets::is_msvc; /// Construct the static library name based on the target. #[must_use] @@ -31,41 +33,15 @@ pub fn static_lib_name(name: &str) -> String { /// Construct the dynamic library name based on the target. #[must_use] pub fn dynamic_lib_name(name: &str) -> String { - // See tools.mk (irrelevant lines omitted): - // - // ```makefile - // ifeq ($(UNAME),Darwin) - // DYLIB = $(TMPDIR)/lib$(1).dylib - // else - // ifdef IS_WINDOWS - // DYLIB = $(TMPDIR)/$(1).dll - // else - // DYLIB = $(TMPDIR)/lib$(1).so - // endif - // endif - // ``` assert!(!name.contains(char::is_whitespace), "dynamic library name cannot contain whitespace"); - let extension = dynamic_lib_extension(); - if is_darwin() { - format!("lib{name}.{extension}") - } else if is_windows() { - format!("{name}.{extension}") - } else { - format!("lib{name}.{extension}") - } + format!("{}{name}.{}", std::env::consts::DLL_PREFIX, std::env::consts::DLL_EXTENSION) } /// Construct the dynamic library extension based on the target. #[must_use] pub fn dynamic_lib_extension() -> &'static str { - if is_darwin() { - "dylib" - } else if is_windows() { - "dll" - } else { - "so" - } + std::env::consts::DLL_EXTENSION } /// Construct the name of a rust library (rlib). @@ -77,5 +53,5 @@ pub fn rust_lib_name(name: &str) -> String { /// Construct the binary (executable) name based on the target. #[must_use] pub fn bin_name(name: &str) -> String { - if is_windows() { format!("{name}.exe") } else { name.to_string() } + format!("{name}{}", std::env::consts::EXE_SUFFIX) }