authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-03-22 11:55:41-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-03-22 11:55:41-04:00
log01b2bf4a44c586f2fa51e8824be608b92d82fed4
tree487e4484a35984c7177f4481c25a18d31c9ebfe9
parent87bc97daefc8b5d8b665ea2fb2b6c232b80344bc

on Darwin/MacOS/iOS, add c to link libs implicitly


1 files changed, 11 insertions(+), 0 deletions(-)

src/codegen.cpp+11
...@@ -115,6 +115,15 @@ CodeGen *codegen_create(Buf *root_source_dir, const ZigTarget *target) {...@@ -115,6 +115,15 @@ CodeGen *codegen_create(Buf *root_source_dir, const ZigTarget *target) {
115115
116 }116 }
117117
118 // On Darwin/MacOS/iOS, we always link libSystem which contains libc.
119 if (g->zig_target.os == ZigLLVM_Darwin ||
120 g->zig_target.os == ZigLLVM_MacOSX ||
121 g->zig_target.os == ZigLLVM_IOS)
122 {
123 g->link_libc = true;
124 g->link_libs.append(buf_create_from_str("c"));
125 }
126
118 return g;127 return g;
119}128}
120129
...@@ -191,6 +200,8 @@ void codegen_add_rpath(CodeGen *g, const char *name) {...@@ -191,6 +200,8 @@ void codegen_add_rpath(CodeGen *g, const char *name) {
191200
192void codegen_add_link_lib(CodeGen *g, const char *lib) {201void codegen_add_link_lib(CodeGen *g, const char *lib) {
193 if (strcmp(lib, "c") == 0) {202 if (strcmp(lib, "c") == 0) {
203 if (g->link_libc)
204 return;
194 g->link_libc = true;205 g->link_libc = true;
195 }206 }
196 g->link_libs.append(buf_create_from_str(lib));207 g->link_libs.append(buf_create_from_str(lib));