| # dethread cmake file |
| |
| if (NOT DE_DEFS) |
| message(FATAL_ERROR "Include Defs.cmake") |
| endif () |
| |
| set(DETHREAD_SRCS |
| deAtomic.c |
| deAtomic.h |
| deMutex.h |
| deSemaphore.h |
| deSingleton.c |
| deSingleton.h |
| deThread.h |
| deThreadLocal.h |
| deThreadTest.c |
| deThreadTest.h |
| win32/deMutexWin32.c |
| win32/deSemaphoreWin32.c |
| win32/deThreadWin32.c |
| win32/deThreadLocalWin32.c |
| unix/deMutexUnix.c |
| unix/deNamedSemaphoreUnix.c |
| unix/deSemaphoreUnix.c |
| unix/deThreadUnix.c |
| unix/deThreadLocalUnix.c |
| ) |
| |
| set(DETHREAD_LIBS |
| debase |
| depool |
| ) |
| |
| include_directories( |
| ../debase |
| ../depool |
| ${CMAKE_CURRENT_SOURCE_DIR} |
| ) |
| |
| if (DE_OS_IS_UNIX) |
| if (${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") |
| add_definitions(-D__BSD_VISIBLE) |
| add_definitions(-D_XOPEN_SOURCE=600) |
| endif () |
| add_definitions(-D_GNU_SOURCE) |
| |
| set(DETHREAD_LIBS ${DETHREAD_LIBS} pthread) |
| endif () |
| |
| if (DE_OS_IS_ANDROID OR DE_OS_IS_OSX OR DE_OS_IS_IOS OR DE_OS_IS_QNX) |
| add_definitions(-D_XOPEN_SOURCE=600) |
| endif () |
| |
| add_library(dethread STATIC ${DETHREAD_SRCS}) |
| target_link_libraries(dethread ${DETHREAD_LIBS}) |
| |
| set(DETHREAD_STANDALONE_TEST ON CACHE STRING "Build standalone binary for testing dethread.") |
| |
| if (DETHREAD_STANDALONE_TEST AND (DE_OS_IS_WIN32 OR DE_OS_IS_UNIX OR DE_OS_IS_OSX)) |
| add_executable(dethread_test standalone_test.c) |
| target_link_libraries(dethread_test dethread debase) |
| endif () |