commit 12efefeba5a8128e0a79b4b04fad0d538c382e47 (tree)
parent 9e4360c335c543ad4ff80791257eabfc556f3ac1
Author: Jakub Konka <kubkon@jakubkonka.com>
Date: Thu, 19 Nov 2020 13:09:30 +0100
stage2 elf: make -soname an opt-in and not opt-out
As discussed with LemonBoy, it makes more sense to have the `-soname`
an opt-in option rather than opt-out, which is especially true if
we are to align `zig cc` with `cc` to a greater degree.
Diffstat:
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/src/link/Elf.zig b/src/link/Elf.zig
@@ -1512,13 +1512,10 @@ fn linkWithLLD(self: *Elf, comp: *Compilation) !void {
}
if (is_dyn_lib) {
- const soname = self.base.options.override_soname orelse if (self.base.options.version) |ver|
- try std.fmt.allocPrint(arena, "lib{}.so.{}", .{ self.base.options.root_name, ver.major })
- else
- try std.fmt.allocPrint(arena, "lib{}.so", .{self.base.options.root_name});
- try argv.append("-soname");
- try argv.append(soname);
-
+ if (self.base.options.override_soname) |soname| {
+ try argv.append("-soname");
+ try argv.append(soname);
+ }
if (self.base.options.version_script) |version_script| {
try argv.append("-version-script");
try argv.append(version_script);