Correct -init for *nix

This commit is contained in:
gingerBill
2022-01-12 20:17:30 +00:00
parent 7df93ea504
commit e30f16b1f3
+3 -3
View File
@@ -445,7 +445,7 @@ i32 linker_stage(lbGenerator *gen) {
// so it doesn't generate symbols which cannot be relocated. // so it doesn't generate symbols which cannot be relocated.
link_settings = gb_string_appendc(link_settings, "-shared "); link_settings = gb_string_appendc(link_settings, "-shared ");
// NOTE(dweiler): __$startup_runtime must be called at initialization // NOTE(dweiler): _odin_entry_point must be called at initialization
// time of the shared object, we can pass -init to the linker by using // time of the shared object, we can pass -init to the linker by using
// a comma separated list of arguments to -Wl. // a comma separated list of arguments to -Wl.
// //
@@ -457,10 +457,10 @@ i32 linker_stage(lbGenerator *gen) {
// Shared libraries are .dylib on MacOS and .so on Linux. // Shared libraries are .dylib on MacOS and .so on Linux.
#if defined(GB_SYSTEM_OSX) #if defined(GB_SYSTEM_OSX)
output_ext = STR_LIT(".dylib"); output_ext = STR_LIT(".dylib");
link_settings = gb_string_appendc(link_settings, "-Wl,-init,'___$startup_runtime' "); link_settings = gb_string_appendc(link_settings, "-Wl,-init,'__odin_entry_point' ");
#else #else
output_ext = STR_LIT(".so"); output_ext = STR_LIT(".so");
link_settings = gb_string_appendc(link_settings, "-Wl,-init,'__$startup_runtime' "); link_settings = gb_string_appendc(link_settings, "-Wl,-init,'__odin_entry_point' ");
#endif #endif
} else { } else {
link_settings = gb_string_appendc(link_settings, "-no-pie "); link_settings = gb_string_appendc(link_settings, "-no-pie ");