authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-12-27 12:55:38-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2024-01-01 19:49:07-07:00
log4c3342ed76f543f2043c51c11596acae61e933ea
tree908823fd41fb9e4f87b7ff7aeb0f0db514519cdc
parent7f13754778ff1c0709b5b3e63de40ffbf5049164

glibc: fix crash from not setting owner module


1 files changed, 9 insertions(+), 8 deletions(-)

src/glibc.zig+9-8
......@@ -1067,13 +1067,7 @@ fn buildSharedLib(
10671067 const version: Version = .{ .major = lib.sover, .minor = 0, .patch = 0 };
10681068 const ld_basename = path.basename(comp.getTarget().standardDynamicLinkerPath().get().?);
10691069 const soname = if (mem.eql(u8, lib.name, "ld")) ld_basename else basename;
1070 const map_file_path = try path.join(arena, &[_][]const u8{ bin_directory.path.?, all_map_basename });
1071 const c_source_files = [1]Compilation.CSourceFile{
1072 .{
1073 .src_path = try path.join(arena, &[_][]const u8{ bin_directory.path.?, asm_file_basename }),
1074 .owner = undefined,
1075 },
1076 };
1070 const map_file_path = try path.join(arena, &.{ bin_directory.path.?, all_map_basename });
10771071
10781072 const optimize_mode = comp.compilerRtOptMode();
10791073 const strip = comp.compilerRtStrip();
......@@ -1115,13 +1109,20 @@ fn buildSharedLib(
11151109 .builtin_mod = null,
11161110 });
11171111
1112 const c_source_files = [1]Compilation.CSourceFile{
1113 .{
1114 .src_path = try path.join(arena, &.{ bin_directory.path.?, asm_file_basename }),
1115 .owner = root_mod,
1116 },
1117 };
1118
11181119 const sub_compilation = try Compilation.create(comp.gpa, .{
11191120 .local_cache_directory = zig_cache_directory,
11201121 .global_cache_directory = comp.global_cache_directory,
11211122 .zig_lib_directory = comp.zig_lib_directory,
11221123 .thread_pool = comp.thread_pool,
11231124 .self_exe_path = comp.self_exe_path,
1124 .cache_mode = .whole,
1125 .cache_mode = .incremental,
11251126 .config = config,
11261127 .root_mod = root_mod,
11271128 .root_name = lib.name,