sync: enable Android support (#9790)
parent
4a1e2f9dcc
commit
8710a0b7b1
|
@ -3,11 +3,12 @@ module sync
|
|||
import time
|
||||
import rand
|
||||
|
||||
#flag windows -I @VROOT/thirdparty/stdatomic/win
|
||||
#flag linux -I @VROOT/thirdparty/stdatomic/nix
|
||||
#flag darwin -I @VROOT/thirdparty/stdatomic/nix
|
||||
#flag freebsd -I @VROOT/thirdparty/stdatomic/nix
|
||||
#flag solaris -I @VROOT/thirdparty/stdatomic/nix
|
||||
|
||||
$if windows {
|
||||
#flag -I @VROOT/thirdparty/stdatomic/win
|
||||
} $else {
|
||||
#flag -I @VROOT/thirdparty/stdatomic/nix
|
||||
}
|
||||
|
||||
$if linux {
|
||||
$if tinyc {
|
||||
|
@ -24,8 +25,7 @@ $if linux {
|
|||
}
|
||||
|
||||
#include <atomic.h>
|
||||
|
||||
// the following functions are actually generic in C
|
||||
// The following functions are actually generic in C
|
||||
fn C.atomic_load_ptr(voidptr) voidptr
|
||||
fn C.atomic_store_ptr(voidptr, voidptr)
|
||||
fn C.atomic_compare_exchange_weak_ptr(voidptr, voidptr, voidptr) bool
|
||||
|
|
|
@ -5,7 +5,12 @@ module sync
|
|||
|
||||
import time
|
||||
|
||||
#flag -lpthread
|
||||
// There's no additional linking (-lpthread) needed for Android.
|
||||
// See https://stackoverflow.com/a/31277163/1904615
|
||||
$if !android {
|
||||
#flag -lpthread
|
||||
}
|
||||
|
||||
#include <semaphore.h>
|
||||
|
||||
[trusted]
|
||||
|
|
Loading…
Reference in New Issue