sync: enable Android support (#9790)

pull/9799/head
Larpon 2021-04-18 15:31:05 +02:00 committed by GitHub
parent 4a1e2f9dcc
commit 8710a0b7b1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 8 deletions

View File

@ -3,11 +3,12 @@ module sync
import time import time
import rand import rand
#flag windows -I @VROOT/thirdparty/stdatomic/win
#flag linux -I @VROOT/thirdparty/stdatomic/nix $if windows {
#flag darwin -I @VROOT/thirdparty/stdatomic/nix #flag -I @VROOT/thirdparty/stdatomic/win
#flag freebsd -I @VROOT/thirdparty/stdatomic/nix } $else {
#flag solaris -I @VROOT/thirdparty/stdatomic/nix #flag -I @VROOT/thirdparty/stdatomic/nix
}
$if linux { $if linux {
$if tinyc { $if tinyc {
@ -24,8 +25,7 @@ $if linux {
} }
#include <atomic.h> #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_load_ptr(voidptr) voidptr
fn C.atomic_store_ptr(voidptr, voidptr) fn C.atomic_store_ptr(voidptr, voidptr)
fn C.atomic_compare_exchange_weak_ptr(voidptr, voidptr, voidptr) bool fn C.atomic_compare_exchange_weak_ptr(voidptr, voidptr, voidptr) bool

View File

@ -5,7 +5,12 @@ module sync
import time import time
// There's no additional linking (-lpthread) needed for Android.
// See https://stackoverflow.com/a/31277163/1904615
$if !android {
#flag -lpthread #flag -lpthread
}
#include <semaphore.h> #include <semaphore.h>
[trusted] [trusted]