From bf9e3889f7e5df139d80a40a7e88ea335a2fb32d Mon Sep 17 00:00:00 2001 From: Debian Rust Maintainers Date: Thu, 5 Sep 2019 08:06:23 +0100 Subject: [PATCH] d-add-soname Gbp-Pq: Name d-add-soname.patch --- src/librustc_codegen_ssa/back/link.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs index e3d297e786..376097ac58 100644 --- a/src/librustc_codegen_ssa/back/link.rs +++ b/src/librustc_codegen_ssa/back/link.rs @@ -1207,6 +1207,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 { -- 2.30.2