aboutsummaryrefslogtreecommitdiff
path: root/base/runtime
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2025-12-17 10:46:43 +0000
committergingerBill <gingerBill@users.noreply.github.com>2025-12-17 10:46:43 +0000
commit51438ed0c0e6022fe3f000735c0b8feeb146f360 (patch)
tree2316fdd5de40e796f54e5c3030cea6450ccaeb7a /base/runtime
parent32f459e152144f8f44f5bd9c8892b30996da011c (diff)
Redefine `RUNTIME_LINKAGE` when `-no-entry-point` is set in certain circumstances.
Diffstat (limited to 'base/runtime')
-rw-r--r--base/runtime/internal.odin9
1 files changed, 5 insertions, 4 deletions
diff --git a/base/runtime/internal.odin b/base/runtime/internal.odin
index 0e674aca8..ac317fc21 100644
--- a/base/runtime/internal.odin
+++ b/base/runtime/internal.odin
@@ -7,10 +7,11 @@ import "base:intrinsics"
IS_WASM :: ODIN_ARCH == .wasm32 || ODIN_ARCH == .wasm64p32
@(private)
-RUNTIME_LINKAGE :: "strong" when (
- ODIN_USE_SEPARATE_MODULES ||
- ODIN_BUILD_MODE == .Dynamic ||
- !ODIN_NO_CRT) else "internal"
+RUNTIME_LINKAGE :: "strong" when ODIN_USE_SEPARATE_MODULES else
+ "internal" when ODIN_NO_ENTRY_POINT && (ODIN_BUILD_MODE == .Static || ODIN_BUILD_MODE == .Dynamic || ODIN_BUILD_MODE == .Object) else
+ "strong" when ODIN_BUILD_MODE == .Dynamic else
+ "strong " when !ODIN_NO_CRT else
+ "internal"
RUNTIME_REQUIRE :: false // !ODIN_TILDE
@(private)