minor tweaks
This commit is contained in:
parent
0c556095f4
commit
030abfa0d2
16
src/link.cpp
16
src/link.cpp
|
@ -1653,7 +1653,7 @@ static void construct_linker_job_elf(LinkJob *lj) {
|
|||
soname = buf_sprintf("lib%s.so.%" ZIG_PRI_usize, buf_ptr(g->root_out_name), g->version_major);
|
||||
}
|
||||
|
||||
if (target_requires_pie(g->zig_target) && !is_dyn_lib && g->libc != nullptr) {
|
||||
if (target_requires_pie(g->zig_target) && g->out_type == OutTypeExe) {
|
||||
lj->args.append("-pie");
|
||||
}
|
||||
|
||||
|
@ -1665,13 +1665,13 @@ static void construct_linker_job_elf(LinkJob *lj) {
|
|||
if (g->zig_target->os == OsNetBSD) {
|
||||
crt1o = "crt0.o";
|
||||
} else if (target_is_android(g->zig_target)) {
|
||||
if (g->have_dynamic_link) {
|
||||
crt1o = "crtbegin_dynamic.o";
|
||||
} else if (!g->have_dynamic_link) {
|
||||
if (target_is_android(g->zig_target)) {
|
||||
crt1o = "crtbegin.o";
|
||||
} else {
|
||||
crt1o = "crt1.o";
|
||||
crt1o = "crtbegin_static.o";
|
||||
}
|
||||
} else if (!g->have_dynamic_link) {
|
||||
crt1o = "crt1.o";
|
||||
} else {
|
||||
crt1o = "Scrt1.o";
|
||||
}
|
||||
|
@ -1821,11 +1821,13 @@ static void construct_linker_job_elf(LinkJob *lj) {
|
|||
}
|
||||
|
||||
// crt end
|
||||
if (target_is_android(g->zig_target) && g->libc != nullptr) {
|
||||
if (lj->link_in_crt) {
|
||||
if (target_is_android(g->zig_target)) {
|
||||
lj->args.append(get_libc_crt_file(g, "crtend_android.o"));
|
||||
} else if (lj->link_in_crt && target_libc_needs_crti_crtn(g->zig_target)) {
|
||||
} else if (target_libc_needs_crti_crtn(g->zig_target)) {
|
||||
lj->args.append(get_libc_crt_file(g, "crtn.o"));
|
||||
}
|
||||
}
|
||||
|
||||
if (!g->zig_target->is_native) {
|
||||
lj->args.append("--allow-shlib-undefined");
|
||||
|
|
Loading…
Reference in New Issue
Block a user