PROTON-2235 set threaderciser test timeout and modernize compilation (#262)
diff --git a/c/tests/CMakeLists.txt b/c/tests/CMakeLists.txt
index 86a4a41..0f8521c 100644
--- a/c/tests/CMakeLists.txt
+++ b/c/tests/CMakeLists.txt
@@ -79,28 +79,25 @@
target_link_libraries(c-ssl-proactor-test qpid-proton-core qpid-proton-proactor ${PLATFORM_LIBS})
# Thread race test.
- if (MSVC)
- # test does not compile on Windows
- set(DEFAULT_THREADERCISER OFF)
- else (MSVC)
+ if (CMAKE_USE_PTHREADS_INIT OR CMAKE_HP_PTHREADS_INIT)
+ # test requires pthreads
set(DEFAULT_THREADERCISER ON)
- endif (MSVC)
+ else (CMAKE_USE_PTHREADS_INIT OR CMAKE_HP_PTHREADS_INIT)
+ set(DEFAULT_THREADERCISER OFF)
+ endif (CMAKE_USE_PTHREADS_INIT OR CMAKE_HP_PTHREADS_INIT)
option(THREADERCISER "Run the threaderciser concurrency tests" ${DEFAULT_THREADERCISER})
if (THREADERCISER)
add_executable(c-threaderciser threaderciser.c)
set_target_properties(c-threaderciser
PROPERTIES COMPILE_FLAGS "${COMPILE_LANGUAGE_FLAGS} ${CMAKE_C_FLAGS} ${C_WARNING_FLAGS}")
+ target_link_libraries (c-threaderciser qpid-proton-proactor ${CMAKE_THREAD_LIBS_INIT})
pn_add_test(
EXECUTABLE
NAME c-threaderciser
PREPEND_ENVIRONMENT ${test_env}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMAND $<TARGET_FILE:c-threaderciser>)
- target_link_libraries (c-threaderciser qpid-proton-proactor)
- find_library(Pthread_LIBRARY pthread)
- if (Pthread_LIBRARY)
- target_link_libraries (c-threaderciser ${Pthread_LIBRARY})
- endif()
+ set_tests_properties (c-threaderciser PROPERTIES TIMEOUT 120)
endif()
if(WIN32)