authorgravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2020-11-19 18:12:55+01:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-11-27 15:42:39-07:00
logdd522c0c977cb2ce4d1bb1d059e1755d7c94cef5
tree290bb562876c67a30ec9a158d6ec9f07be44de44
parent375bab8460517f5d5ee02c161dc65ff1694132d7

stage2 elf: fix glibc to always specify soname


1 files changed, 3 insertions(+), 2 deletions(-)

src/glibc.zig+3-2
...@@ -911,13 +911,14 @@ fn buildSharedLib(...@@ -911,13 +911,14 @@ fn buildSharedLib(
911 const tracy = trace(@src());911 const tracy = trace(@src());
912 defer tracy.end();912 defer tracy.end();
913913
914 const basename = try std.fmt.allocPrint(arena, "lib{s}.so.{d}", .{ lib.name, lib.sover });
914 const emit_bin = Compilation.EmitLoc{915 const emit_bin = Compilation.EmitLoc{
915 .directory = bin_directory,916 .directory = bin_directory,
916 .basename = try std.fmt.allocPrint(arena, "lib{s}.so.{d}", .{ lib.name, lib.sover }),917 .basename = basename,
917 };918 };
918 const version: std.builtin.Version = .{ .major = lib.sover, .minor = 0, .patch = 0 };919 const version: std.builtin.Version = .{ .major = lib.sover, .minor = 0, .patch = 0 };
919 const ld_basename = path.basename(comp.getTarget().standardDynamicLinkerPath().get().?);920 const ld_basename = path.basename(comp.getTarget().standardDynamicLinkerPath().get().?);
920 const soname = if (mem.eql(u8, lib.name, "ld")) ld_basename else null;921 const soname = if (mem.eql(u8, lib.name, "ld")) ld_basename else basename;
921 const map_file_path = try path.join(arena, &[_][]const u8{ bin_directory.path.?, all_map_basename });922 const map_file_path = try path.join(arena, &[_][]const u8{ bin_directory.path.?, all_map_basename });
922 const c_source_files = [1]Compilation.CSourceFile{923 const c_source_files = [1]Compilation.CSourceFile{
923 .{924 .{