summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/GenEx-PATH/IS_RELATIVE.cmake.in
diff options
context:
space:
mode:
authorMarc Chevrier <marc.chevrier@gmail.com>2022-05-18 09:15:10 (GMT)
committerMarc Chevrier <marc.chevrier@gmail.com>2022-05-31 13:39:51 (GMT)
commitf11e66670ba9716f45cf757285a77b937dce420b (patch)
treec18b78f99b1bdcc7b36ebbab43727816a07803ed /Tests/RunCMake/GenEx-PATH/IS_RELATIVE.cmake.in
parent9f4aec6d61f0c4f91cae8f35c5b514d456fba8ff (diff)
downloadCMake-f11e66670ba9716f45cf757285a77b937dce420b.zip
CMake-f11e66670ba9716f45cf757285a77b937dce420b.tar.gz
CMake-f11e66670ba9716f45cf757285a77b937dce420b.tar.bz2
Genex-PATH: path handling
Fixes: #23498
Diffstat (limited to 'Tests/RunCMake/GenEx-PATH/IS_RELATIVE.cmake.in')
-rw-r--r--Tests/RunCMake/GenEx-PATH/IS_RELATIVE.cmake.in45
1 files changed, 45 insertions, 0 deletions
diff --git a/Tests/RunCMake/GenEx-PATH/IS_RELATIVE.cmake.in b/Tests/RunCMake/GenEx-PATH/IS_RELATIVE.cmake.in
new file mode 100644
index 0000000..6d36581
--- /dev/null
+++ b/Tests/RunCMake/GenEx-PATH/IS_RELATIVE.cmake.in
@@ -0,0 +1,45 @@
+
+include ("${RunCMake_SOURCE_DIR}/check_errors.cmake")
+unset (errors)
+
+
+if (WIN32)
+ set(path "c:/a")
+ set(output "$<PATH:IS_RELATIVE,c:/a>")
+else()
+ set(path "/a")
+ set(output "$<PATH:IS_RELATIVE,/a>")
+endif()
+if (output)
+ list (APPEND errors "'${path} is relative")
+endif()
+
+set(output "$<PATH:IS_RELATIVE,a/b>")
+if (NOT output)
+ list (APPEND errors "'a/b' is not relative")
+endif()
+
+if (WIN32)
+ set(output "$<PATH:IS_RELATIVE,c:/a/b>")
+ if (output)
+ list (APPEND errors "'c:/a/b' is relative")
+ endif()
+
+ set(output "$<PATH:IS_RELATIVE,//host/b>")
+ if (output)
+ list (APPEND errors "'//host/b' is relative")
+ endif()
+
+ set(output "$<PATH:IS_RELATIVE,/a>")
+ if (NOT output)
+ list (APPEND errors "'/a' is not relative")
+ endif()
+
+ set(output "$<PATH:IS_RELATIVE,c:a>")
+ if (NOT output)
+ list (APPEND errors "'c:a' is not relative")
+ endif()
+endif()
+
+
+check_errors("PATH:IS_RELATIVE" ${errors})