From: Debian Rust Maintainers Date: Thu, 18 Jul 2019 01:25:06 +0000 (+0100) Subject: d-add-soname X-Git-Tag: archive/raspbian/1.39.0+dfsg1-4+rpi1~2^2^2~7 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=37127b129881c882b39694040ba16b421d32eac2;p=rustc.git d-add-soname Gbp-Pq: Name d-add-soname.patch --- diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs index d5a56f6a09..daa986d495 100644 --- a/src/librustc_codegen_ssa/back/link.rs +++ b/src/librustc_codegen_ssa/back/link.rs @@ -1184,6 +1184,13 @@ fn link_args<'a, B: ArchiveBuilder<'a>>(cmd: &mut dyn Linker, cmd.args(&rpath::get_rpath_flags(&mut rpath_config)); } + if (crate_type == config::CrateType::Dylib || crate_type == config::CrateType::Cdylib) + && t.options.linker_is_gnu { + let filename = String::from(out_filename.file_name().unwrap().to_str().unwrap()); + let soname = [String::from("-Wl,-soname=") + &filename]; + cmd.args(&soname); + } + // Finally add all the linker arguments provided on the command line along // with any #[link_args] attributes found inside the crate if let Some(ref args) = sess.opts.cg.link_args {