summaryrefslogtreecommitdiffstats
path: root/Tests/FindThreads
diff options
context:
space:
mode:
authorRolf Eike Beer <eike@sf-mail.de>2015-09-22 15:50:59 (GMT)
committerBrad King <brad.king@kitware.com>2015-09-25 14:08:35 (GMT)
commitfff9434d455600320be1809c6d64577eeb21d6aa (patch)
tree4361b549a5831e97aed0b01a7298056cc8410210 /Tests/FindThreads
parent66db914adfd8cbb846fcf82e290fe006a800a36d (diff)
downloadCMake-fff9434d455600320be1809c6d64577eeb21d6aa.zip
CMake-fff9434d455600320be1809c6d64577eeb21d6aa.tar.gz
CMake-fff9434d455600320be1809c6d64577eeb21d6aa.tar.bz2
FindThreads: officially announce it works with only C++ enabled
Diffstat (limited to 'Tests/FindThreads')
-rw-r--r--Tests/FindThreads/CMakeLists.txt20
-rw-r--r--Tests/FindThreads/CXX-only/CMakeLists.txt13
2 files changed, 24 insertions, 9 deletions
diff --git a/Tests/FindThreads/CMakeLists.txt b/Tests/FindThreads/CMakeLists.txt
index 36518a3..aa9499b 100644
--- a/Tests/FindThreads/CMakeLists.txt
+++ b/Tests/FindThreads/CMakeLists.txt
@@ -1,9 +1,11 @@
-add_test(NAME FindThreads.C-only COMMAND ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/FindThreads/C-only"
- "${CMake_BINARY_DIR}/Tests/FindThreads/C-only"
- ${build_generator_args}
- --build-project FindThreads_C-only
- --build-options ${build_options}
- --test-command ${CMAKE_CTEST_COMMAND} -V
- )
+foreach (_lang IN ITEMS C CXX)
+ add_test(NAME FindThreads.${_lang}-only COMMAND ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/FindThreads/${_lang}-only"
+ "${CMake_BINARY_DIR}/Tests/FindThreads/${_lang}-only"
+ ${build_generator_args}
+ --build-project FindThreads_${_lang}-only
+ --build-options ${build_options}
+ --test-command ${CMAKE_CTEST_COMMAND} -V
+ )
+endforeach ()
diff --git a/Tests/FindThreads/CXX-only/CMakeLists.txt b/Tests/FindThreads/CXX-only/CMakeLists.txt
new file mode 100644
index 0000000..9993123
--- /dev/null
+++ b/Tests/FindThreads/CXX-only/CMakeLists.txt
@@ -0,0 +1,13 @@
+cmake_minimum_required(VERSION 3.3 FATAL_ERROR)
+project(FindThreads_CXX-only CXX)
+
+set(CMAKE_THREAD_PREFER_PTHREAD On)
+find_package(Threads REQUIRED)
+
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../../../Modules/CheckForPthreads.c
+ ${CMAKE_CURRENT_BINARY_DIR}/CheckForPthreads.cxx)
+
+if (NOT WIN32)
+ add_executable(thr ${CMAKE_CURRENT_BINARY_DIR}/CheckForPthreads.cxx)
+ target_link_libraries(thr Threads::Threads)
+endif ()