rwlock: Added SDL_rwlock API for shared locks.

This commit is contained in:
Ryan C. Gordon
2023-04-24 01:07:59 -04:00
parent 776820526b
commit e474047ff8
31 changed files with 1244 additions and 20 deletions

View File

@@ -2008,11 +2008,14 @@ elseif(WINDOWS)
if(SDL_THREADS)
set(SDL_THREAD_GENERIC_COND_SUFFIX 1)
set(SDL_THREAD_GENERIC_RWLOCK_SUFFIX 1)
set(SDL_THREAD_WINDOWS 1)
list(APPEND SOURCE_FILES
${SDL3_SOURCE_DIR}/src/thread/generic/SDL_syscond.c
${SDL3_SOURCE_DIR}/src/thread/generic/SDL_sysrwlock.c
${SDL3_SOURCE_DIR}/src/thread/windows/SDL_syscond_cv.c
${SDL3_SOURCE_DIR}/src/thread/windows/SDL_sysmutex.c
${SDL3_SOURCE_DIR}/src/thread/windows/SDL_sysrwlock_srw.c
${SDL3_SOURCE_DIR}/src/thread/windows/SDL_syssem.c
${SDL3_SOURCE_DIR}/src/thread/windows/SDL_systhread.c
${SDL3_SOURCE_DIR}/src/thread/windows/SDL_systls.c)
@@ -2597,6 +2600,7 @@ elseif(VITA)
${SDL3_SOURCE_DIR}/src/thread/vita/SDL_syssem.c
${SDL3_SOURCE_DIR}/src/thread/vita/SDL_systhread.c
${SDL3_SOURCE_DIR}/src/thread/vita/SDL_syscond.c
${SDL3_SOURCE_DIR}/src/thread/generic/SDL_sysrwlock.c
${SDL3_SOURCE_DIR}/src/thread/generic/SDL_systls.c)
set(HAVE_SDL_THREADS TRUE)
endif()
@@ -2732,7 +2736,7 @@ elseif(PSP)
endif()
if(SDL_THREADS)
set(SDL_THREAD_PSP 1)
file(GLOB PSP_THREAD_SOURCES ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_systls.c ${SDL3_SOURCE_DIR}/src/thread/psp/*.c)
file(GLOB PSP_THREAD_SOURCES ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_systls.c ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_sysrwlock.c ${SDL3_SOURCE_DIR}/src/thread/psp/*.c)
list(APPEND SOURCE_FILES ${PSP_THREAD_SOURCES})
set(HAVE_SDL_THREADS TRUE)
endif()
@@ -2791,7 +2795,7 @@ elseif(PS2)
endif()
if(SDL_THREADS)
set(SDL_THREAD_PS2 1)
file(GLOB PS2_THREAD_SOURCES ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_syscond.c ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_sysmutex.c ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_systls.c ${SDL3_SOURCE_DIR}/src/thread/ps2/*.c)
file(GLOB PS2_THREAD_SOURCES ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_syscond.c ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_sysmutex.c ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_sysrwlock.c ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_systls.c ${SDL3_SOURCE_DIR}/src/thread/ps2/*.c)
list(APPEND SOURCE_FILES ${PS2_THREAD_SOURCES})
set(HAVE_SDL_THREADS TRUE)
endif()
@@ -2852,7 +2856,7 @@ elseif(N3DS)
if(SDL_THREADS)
set(SDL_THREAD_N3DS 1)
file(GLOB N3DS_THREAD_SOURCES ${SDL3_SOURCE_DIR}/src/thread/n3ds/*.c)
list(APPEND SOURCE_FILES ${N3DS_THREAD_SOURCES} ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_systls.c)
list(APPEND SOURCE_FILES ${N3DS_THREAD_SOURCES} ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_systls.c ${SDL3_SOURCE_DIR}/src/thread/generic/SDL_sysrwlock.c)
set(HAVE_SDL_THREADS TRUE)
endif()