mirror of
https://github.com/ziglang/zig.git
synced 2025-12-06 06:13:07 +00:00
zig cc: freestanding target implies -nostdlib
This commit is contained in:
parent
6cbe589b51
commit
f313ab18ae
14
src/main.cpp
14
src/main.cpp
@ -455,6 +455,7 @@ static int main0(int argc, char **argv) {
|
||||
CodeModel code_model = CodeModelDefault;
|
||||
const char *override_soname = nullptr;
|
||||
bool only_preprocess = false;
|
||||
bool ensure_libc_on_non_freestanding = false;
|
||||
|
||||
ZigList<const char *> llvm_argv = {0};
|
||||
llvm_argv.append("zig (LLVM option parsing)");
|
||||
@ -582,11 +583,11 @@ static int main0(int argc, char **argv) {
|
||||
} else if (argc >= 2 && strcmp(argv[1], "cc") == 0) {
|
||||
emit_h = false;
|
||||
strip = true;
|
||||
ensure_libc_on_non_freestanding = true;
|
||||
|
||||
bool c_arg = false;
|
||||
Stage2ClangArgIterator it;
|
||||
stage2_clang_arg_iterator(&it, argc, argv);
|
||||
bool nostdlib = false;
|
||||
bool is_shared_lib = false;
|
||||
ZigList<Buf *> linker_args = {};
|
||||
while (it.has_next) {
|
||||
@ -645,7 +646,7 @@ static int main0(int argc, char **argv) {
|
||||
want_pic = WantPICDisabled;
|
||||
break;
|
||||
case Stage2ClangArgNoStdLib:
|
||||
nostdlib = true;
|
||||
ensure_libc_on_non_freestanding = false;
|
||||
break;
|
||||
case Stage2ClangArgShared:
|
||||
is_dynamic = true;
|
||||
@ -772,10 +773,6 @@ static int main0(int argc, char **argv) {
|
||||
build_mode = BuildModeSafeRelease;
|
||||
}
|
||||
|
||||
if (!nostdlib && !have_libc) {
|
||||
have_libc = true;
|
||||
link_libs.append("c");
|
||||
}
|
||||
if (only_preprocess) {
|
||||
cmd = CmdBuild;
|
||||
out_type = OutTypeObj;
|
||||
@ -1216,6 +1213,11 @@ static int main0(int argc, char **argv) {
|
||||
return print_error_usage(arg0);
|
||||
}
|
||||
|
||||
if (!have_libc && ensure_libc_on_non_freestanding && target.os != OsFreestanding) {
|
||||
have_libc = true;
|
||||
link_libs.append("c");
|
||||
}
|
||||
|
||||
Buf zig_triple_buf = BUF_INIT;
|
||||
target_triple_zig(&zig_triple_buf, &target);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user