summaryrefslogtreecommitdiffstats
path: root/Tests/CMakeOnly
diff options
context:
space:
mode:
authorGergely Meszaros <gergely@streamhpc.com>2024-01-02 15:23:06 (GMT)
committerBrad King <brad.king@kitware.com>2024-01-04 16:25:15 (GMT)
commitce9c6d0994799a64d1cea4eac0492d27ded74b75 (patch)
treeb9acd37b50e6a46c76fa8fa929fce42933705f72 /Tests/CMakeOnly
parent9ba3fc91e5ce567b0f50b28573af9508242446d6 (diff)
downloadCMake-ce9c6d0994799a64d1cea4eac0492d27ded74b75.zip
CMake-ce9c6d0994799a64d1cea4eac0492d27ded74b75.tar.gz
CMake-ce9c6d0994799a64d1cea4eac0492d27ded74b75.tar.bz2
HIP: Propagate CMAKE_HIP_PLATFORM from/to the test project in check_language
Fixes: #25541
Diffstat (limited to 'Tests/CMakeOnly')
-rw-r--r--Tests/CMakeOnly/CMakeLists.txt7
-rw-r--r--Tests/CMakeOnly/CheckLanguageHIPPlatform/CMakeLists.txt17
-rw-r--r--Tests/CMakeOnly/CheckLanguageHIPPlatform2/CMakeLists.txt14
3 files changed, 38 insertions, 0 deletions
diff --git a/Tests/CMakeOnly/CMakeLists.txt b/Tests/CMakeOnly/CMakeLists.txt
index a41b44e..30cabf1 100644
--- a/Tests/CMakeOnly/CMakeLists.txt
+++ b/Tests/CMakeOnly/CMakeLists.txt
@@ -25,6 +25,13 @@ add_CMakeOnly_test(CheckCXXSymbolExists)
add_CMakeOnly_test(CheckCXXCompilerFlag)
add_CMakeOnly_test(CheckLanguage)
+if (CMake_TEST_HIP)
+ set_property(TEST CMakeOnly.CheckLanguage APPEND PROPERTY LABELS "HIP")
+ add_CMakeOnly_test(CheckLanguageHIPPlatform)
+ set_property(TEST CMakeOnly.CheckLanguageHIPPlatform APPEND PROPERTY LABELS "HIP")
+ add_CMakeOnly_test(CheckLanguageHIPPlatform2)
+ set_property(TEST CMakeOnly.CheckLanguageHIPPlatform2 APPEND PROPERTY LABELS "HIP")
+endif()
add_CMakeOnly_test(CheckStructHasMember)
diff --git a/Tests/CMakeOnly/CheckLanguageHIPPlatform/CMakeLists.txt b/Tests/CMakeOnly/CheckLanguageHIPPlatform/CMakeLists.txt
new file mode 100644
index 0000000..03b8aa0
--- /dev/null
+++ b/Tests/CMakeOnly/CheckLanguageHIPPlatform/CMakeLists.txt
@@ -0,0 +1,17 @@
+cmake_minimum_required (VERSION 3.28)
+project(CheckLanguageHIPPlatform NONE)
+include(CheckLanguage)
+
+check_language(HIP)
+
+if(NOT DEFINED CMAKE_HIP_COMPILER)
+ message(FATAL_ERROR "check_language did not set result")
+endif()
+
+if (NOT CMAKE_HIP_COMPILER)
+ message(FATAL_ERROR "check_language should not fail!")
+endif()
+
+if (NOT DEFINED CMAKE_HIP_PLATFORM)
+ message(FATAL_ERROR "check_language did not set CMAKE_HIP_PLATFORM!")
+endif()
diff --git a/Tests/CMakeOnly/CheckLanguageHIPPlatform2/CMakeLists.txt b/Tests/CMakeOnly/CheckLanguageHIPPlatform2/CMakeLists.txt
new file mode 100644
index 0000000..f251c49
--- /dev/null
+++ b/Tests/CMakeOnly/CheckLanguageHIPPlatform2/CMakeLists.txt
@@ -0,0 +1,14 @@
+cmake_minimum_required (VERSION 3.28)
+project(CheckLanguageHIPPlatform2 NONE)
+include(CheckLanguage)
+
+set(CMAKE_HIP_PLATFORM "not-a-hip-platform" CACHE STRING "")
+check_language(HIP)
+
+if(NOT DEFINED CMAKE_HIP_COMPILER)
+ message(FATAL_ERROR "check_language did not set result")
+endif()
+
+if (CMAKE_HIP_COMPILER)
+ message(FATAL_ERROR "check_language should have failed")
+endif()