zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 9257669cd4ecb10c51baea2bccee993e0c82bd20 (tree)
parent 1b0be5c1cef5b4836f4315e294e4156fc9d0956c
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Thu, 16 Dec 2021 03:33:37 -0700

glibc: do not pass -DSHARED to any of the libc_nonshared.a sources

This essentially reverts 6a12dce207114842e2e49a3aeb18af01ab207f0b but it
leaves breadcrumbs in the source explaining why things are the way they
are.

Diffstat:
Msrc/glibc.zig | 5++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/glibc.zig b/src/glibc.zig @@ -335,8 +335,11 @@ pub fn buildCRTFile(comp: *Compilation, crt_file: CRTFile) !void { } const shared_def = switch (dep.flavor) { - .shared => "-DSHARED", .nonshared => "-DLIBC_NONSHARED=1", + // glibc passes `-DSHARED` for these. However, empirically if + // we do that here we will see undefined symbols such as `__GI_memcpy`. + // So we pass the same thing as for nonshared. + .shared => "-DLIBC_NONSHARED=1", }; try args.appendSlice(&[_][]const u8{ "-D_LIBC_REENTRANT",