Commit dd522c0c97

Jakub Konka <kubkon@jakubkonka.com>
2020-11-19 18:12:55
stage2 elf: fix glibc to always specify soname
1 parent 375bab8
Changed files (1)
src/glibc.zig
@@ -911,13 +911,14 @@ fn buildSharedLib(
     const tracy = trace(@src());
     defer tracy.end();
 
+    const basename = try std.fmt.allocPrint(arena, "lib{s}.so.{d}", .{ lib.name, lib.sover });
     const emit_bin = Compilation.EmitLoc{
         .directory = bin_directory,
-        .basename = try std.fmt.allocPrint(arena, "lib{s}.so.{d}", .{ lib.name, lib.sover }),
+        .basename = basename,
     };
     const version: std.builtin.Version = .{ .major = lib.sover, .minor = 0, .patch = 0 };
     const ld_basename = path.basename(comp.getTarget().standardDynamicLinkerPath().get().?);
-    const soname = if (mem.eql(u8, lib.name, "ld")) ld_basename else null;
+    const soname = if (mem.eql(u8, lib.name, "ld")) ld_basename else basename;
     const map_file_path = try path.join(arena, &[_][]const u8{ bin_directory.path.?, all_map_basename });
     const c_source_files = [1]Compilation.CSourceFile{
         .{