initial work torwards std lib support for uefi

This commit is contained in:
Nick Erdmann
2019-07-28 23:51:51 +02:00
parent 6e8ef5b6f2
commit b979fc1bcd
21 changed files with 963 additions and 10 deletions

View File

@@ -8540,10 +8540,6 @@ static bool want_startup_code(CodeGen *g) {
if (g->is_test_build)
return false;
// start code does not handle UEFI target
if (g->zig_target->os == OsUefi)
return false;
// WASM freestanding can still have an entry point but other freestanding targets do not.
if (g->zig_target->os == OsFreestanding && !target_is_wasm(g->zig_target))
return false;
@@ -8553,8 +8549,12 @@ static bool want_startup_code(CodeGen *g) {
return false;
// If there is a pub main in the root source file, that means we need start code.
if (g->have_pub_main)
if (g->have_pub_main) {
return true;
} else {
if (g->zig_target->os == OsUefi)
return false;
}
if (g->out_type == OutTypeExe) {
// For build-exe, we might add start code even though there is no pub main, so that the