From 01b2bf4a44c586f2fa51e8824be608b92d82fed4 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 22 Mar 2017 11:55:41 -0400 Subject: on Darwin/MacOS/iOS, add c to link libs implicitly --- src/codegen.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/codegen.cpp') diff --git a/src/codegen.cpp b/src/codegen.cpp index f67cdf2ab2..3babaac0e4 100644 --- a/src/codegen.cpp +++ b/src/codegen.cpp @@ -115,6 +115,15 @@ CodeGen *codegen_create(Buf *root_source_dir, const ZigTarget *target) { } + // On Darwin/MacOS/iOS, we always link libSystem which contains libc. + if (g->zig_target.os == ZigLLVM_Darwin || + g->zig_target.os == ZigLLVM_MacOSX || + g->zig_target.os == ZigLLVM_IOS) + { + g->link_libc = true; + g->link_libs.append(buf_create_from_str("c")); + } + return g; } @@ -191,6 +200,8 @@ void codegen_add_rpath(CodeGen *g, const char *name) { void codegen_add_link_lib(CodeGen *g, const char *lib) { if (strcmp(lib, "c") == 0) { + if (g->link_libc) + return; g->link_libc = true; } g->link_libs.append(buf_create_from_str(lib)); -- cgit v1.2.3