Avoid redundant -Wl,-dylib flag when linking

This commit is contained in:
Mads Marquart 2024-10-10 03:38:10 +02:00
parent fc0f045dd1
commit d6aaf7b036

View File

@ -404,12 +404,14 @@ fn push_linker_plugin_lto_args(&mut self, plugin_path: Option<&OsStr>) {
fn build_dylib(&mut self, crate_type: CrateType, out_filename: &Path) {
// On mac we need to tell the linker to let this library be rpathed
if self.sess.target.is_like_osx {
if !self.is_ld {
if self.is_cc() {
// `-dynamiclib` makes `cc` pass `-dylib` to the linker.
self.cc_arg("-dynamiclib");
} else {
self.link_arg("-dylib");
// Clang also sets `-dynamic`, but that's implied by `-dylib`, so unnecessary.
}
self.link_arg("-dylib");
// Note that the `osx_rpath_install_name` option here is a hack
// purely to support bootstrap right now, we should get a more
// principled solution at some point to force the compiler to pass