|
@@ -28,6 +28,24 @@ include(CheckIncludeFiles)
|
|
|
set(OUTPUT_EXT)
|
|
|
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/others/rlgl_standalone.c)
|
|
|
|
|
|
+include(CheckIncludeFile)
|
|
|
+CHECK_INCLUDE_FILE("stdatomic.h" HAVE_STDATOMIC_H)
|
|
|
+set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
|
|
|
+find_package(Threads)
|
|
|
+if (CMAKE_USE_PTHREADS_INIT AND HAVE_STDATOMIC_H)
|
|
|
+ add_if_flag_compiles("-std=c11" CMAKE_C_FLAGS)
|
|
|
+ if(THREADS_HAVE_PTHREAD_ARG)
|
|
|
+ add_if_flag_compiles("-pthread" CMAKE_C_FLAGS)
|
|
|
+ endif()
|
|
|
+ if(CMAKE_THREAD_LIBS_INIT)
|
|
|
+ link_libraries("${CMAKE_THREAD_LIBS_INIT}")
|
|
|
+ endif()
|
|
|
+else()
|
|
|
+ # Items requiring pthreads
|
|
|
+ list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/core/core_loading_thread.c)
|
|
|
+endif()
|
|
|
+
|
|
|
+
|
|
|
if(${PLATFORM} MATCHES "Android")
|
|
|
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/others/rlgl_standalone.c)
|
|
|
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/others/standard_lighting.c)
|