summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/GenEx-PATH/NORMAL_PATH.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/NORMAL_PATH.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/NORMAL_PATH.cmake.in')
-rw-r--r--Tests/RunCMake/GenEx-PATH/NORMAL_PATH.cmake.in43
1 files changed, 43 insertions, 0 deletions
diff --git a/Tests/RunCMake/GenEx-PATH/NORMAL_PATH.cmake.in b/Tests/RunCMake/GenEx-PATH/NORMAL_PATH.cmake.in
new file mode 100644
index 0000000..e6cc4a3
--- /dev/null
+++ b/Tests/RunCMake/GenEx-PATH/NORMAL_PATH.cmake.in
@@ -0,0 +1,43 @@
+
+include ("${RunCMake_SOURCE_DIR}/check_errors.cmake")
+unset (errors)
+
+set (reference "a/./b/..")
+cmake_path(NORMAL_PATH reference)
+set(output "$<PATH:NORMAL_PATH,a/./b/..>")
+if (NOT output STREQUAL reference)
+ list (APPEND errors "'${output}' instead of '${reference}'")
+endif()
+
+set (reference "a/.///b/../")
+cmake_path(NORMAL_PATH reference)
+set(output "$<PATH:NORMAL_PATH,a/.///b/../>")
+if (NOT output STREQUAL reference)
+ list (APPEND errors "'${output}' instead of '${reference}'")
+endif()
+
+if (WIN32)
+ set (reference "//host/./b/..")
+ cmake_path(NORMAL_PATH reference)
+ set(output "$<PATH:NORMAL_PATH,//host/./b/..>")
+ if (NOT output STREQUAL reference)
+ list (APPEND errors "'${output}' instead of '${reference}'")
+ endif()
+
+ set (reference "//host/./b/../")
+ cmake_path(NORMAL_PATH reference)
+ set(output "$<PATH:NORMAL_PATH,//host/./b/../>")
+ if (NOT output STREQUAL reference)
+ list (APPEND errors "'${output}' instead of '${reference}'")
+ endif()
+
+ set (reference "c://a/.///b/../")
+ cmake_path(NORMAL_PATH reference)
+ set(output "$<PATH:NORMAL_PATH,c://a/.///b/../>")
+ if (NOT output STREQUAL reference)
+ list (APPEND errors "'${output}' instead of '${reference}'")
+ endif()
+endif()
+
+
+check_errors("PATH:NORMAL_PATH" ${errors})