Merge remote-tracking branch 'live/master' into macharena

This commit is contained in:
Colin Davidson
2025-07-28 14:24:46 -07:00
121 changed files with 4615 additions and 1781 deletions
+1 -1
View File
@@ -62,7 +62,7 @@ global_block_descriptor := Block_Descriptor{
size = size_of(Internal_Block_Literal),
}
foreign import libSystem "system:System.framework"
foreign import libSystem "system:System"
foreign libSystem {
_NSConcreteGlobalBlock: intrinsics.objc_class
_NSConcreteStackBlock: intrinsics.objc_class
+1 -1
View File
@@ -4,7 +4,7 @@ package darwin
import "core:c"
@(export)
foreign import system "system:System.framework"
foreign import system "system:System"
Bool :: b8
+1 -1
View File
@@ -1,6 +1,6 @@
package darwin
foreign import mach "system:System.framework"
foreign import mach "system:System"
import "core:c"
import "base:intrinsics"
+1 -1
View File
@@ -4,7 +4,7 @@ import "base:intrinsics"
import "core:sys/posix"
foreign import lib "system:System.framework"
foreign import lib "system:System"
// Incomplete bindings to the proc API on MacOS, add to when needed.
+5 -15
View File
@@ -3,23 +3,13 @@ package darwin
// #define OS_WAIT_ON_ADDR_AVAILABILITY \
// __API_AVAILABLE(macos(14.4), ios(17.4), tvos(17.4), watchos(10.4))
when ODIN_OS == .Darwin {
when ODIN_PLATFORM_SUBTARGET == .iOS && ODIN_MINIMUM_OS_VERSION >= 17_04_00 {
WAIT_ON_ADDRESS_AVAILABLE :: true
} else when ODIN_MINIMUM_OS_VERSION >= 14_04_00 {
WAIT_ON_ADDRESS_AVAILABLE :: true
when ODIN_PLATFORM_SUBTARGET_IOS {
WAIT_ON_ADDRESS_AVAILABLE :: ODIN_MINIMUM_OS_VERSION >= 17_04_00
ULOCK_WAIT_2_AVAILABLE :: ODIN_MINIMUM_OS_VERSION >= 14_00_00
} else {
WAIT_ON_ADDRESS_AVAILABLE :: false
WAIT_ON_ADDRESS_AVAILABLE :: ODIN_MINIMUM_OS_VERSION >= 14_04_00
ULOCK_WAIT_2_AVAILABLE :: ODIN_MINIMUM_OS_VERSION >= 11_00_00
}
when ODIN_PLATFORM_SUBTARGET == .iOS && ODIN_MINIMUM_OS_VERSION >= 14_00_00 {
ULOCK_WAIT_2_AVAILABLE :: true
} else when ODIN_MINIMUM_OS_VERSION >= 11_00_00 {
ULOCK_WAIT_2_AVAILABLE :: true
} else {
ULOCK_WAIT_2_AVAILABLE :: false
}
} else {
WAIT_ON_ADDRESS_AVAILABLE :: false
ULOCK_WAIT_2_AVAILABLE :: false