Merge topic 'file-REAL_PATH-EXPAND_TILDE'

e4b793c614 file(REAL_PATH): add option EXPAND_TILDE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !6033
This commit is contained in:
Brad King
2021-04-26 15:30:50 +00:00
committed by Kitware Robot
6 changed files with 77 additions and 21 deletions
+31 -9
View File
@@ -1,14 +1,36 @@
file(TOUCH "${CMAKE_CURRENT_BINARY_DIR}/test.txt")
file(REMOVE "${CMAKE_CURRENT_BINARY_DIR}/test.sym")
file(CREATE_LINK "test.txt" "${CMAKE_CURRENT_BINARY_DIR}/test.sym" SYMBOLIC)
if (NOT WIN32 OR CYGWIN)
file(TOUCH "${CMAKE_CURRENT_BINARY_DIR}/test.txt")
file(REMOVE "${CMAKE_CURRENT_BINARY_DIR}/test.sym")
file(CREATE_LINK "test.txt" "${CMAKE_CURRENT_BINARY_DIR}/test.sym" SYMBOLIC)
file(REAL_PATH "${CMAKE_CURRENT_BINARY_DIR}/test.sym" real_path)
if (NOT real_path STREQUAL "${CMAKE_CURRENT_BINARY_DIR}/test.txt")
message(SEND_ERROR "real path is \"${real_path}\", should be \"${CMAKE_CURRENT_BINARY_DIR}/test.txt\"")
file(REAL_PATH "${CMAKE_CURRENT_BINARY_DIR}/test.sym" real_path)
if (NOT real_path STREQUAL "${CMAKE_CURRENT_BINARY_DIR}/test.txt")
message(SEND_ERROR "real path is \"${real_path}\", should be \"${CMAKE_CURRENT_BINARY_DIR}/test.txt\"")
endif()
file(REAL_PATH "test.sym" real_path BASE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
if (NOT real_path STREQUAL "${CMAKE_CURRENT_BINARY_DIR}/test.txt")
message(SEND_ERROR "real path is \"${real_path}\", should be \"${CMAKE_CURRENT_BINARY_DIR}/test.txt\"")
endif()
endif()
file(REAL_PATH "test.sym" real_path BASE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
if (NOT real_path STREQUAL "${CMAKE_CURRENT_BINARY_DIR}/test.txt")
message(SEND_ERROR "real path is \"${real_path}\", should be \"${CMAKE_CURRENT_BINARY_DIR}/test.txt\"")
If (WIN32)
cmake_path(SET HOME_DIR "$ENV{USERPROFILE}")
if (NOT HOME_DIR)
cmake_path(SET HOME_DIR "$ENV{HOME}")
endif()
else()
set(HOME_DIR "$ENV{HOME}")
endif()
file(REAL_PATH "~" real_path EXPAND_TILDE)
if (NOT real_path STREQUAL "${HOME_DIR}")
message(SEND_ERROR "real path is \"${real_path}\", should be \"${HOME_DIR}\"")
endif()
file(REAL_PATH "~/test.txt" real_path EXPAND_TILDE)
if (NOT real_path STREQUAL "${HOME_DIR}/test.txt")
message(SEND_ERROR "real path is \"${real_path}\", should be \"${HOME_DIR}/test.txt\"")
endif()
+4 -3
View File
@@ -96,11 +96,12 @@ if(NOT WIN32 OR CYGWIN)
run_cmake(READ_SYMLINK-noexist)
run_cmake(READ_SYMLINK-notsymlink)
run_cmake(INSTALL-FOLLOW_SYMLINK_CHAIN)
run_cmake(REAL_PATH-unexpected-arg)
run_cmake(REAL_PATH-no-base-dir)
run_cmake(REAL_PATH)
endif()
run_cmake(REAL_PATH-unexpected-arg)
run_cmake(REAL_PATH-no-base-dir)
run_cmake(REAL_PATH)
if(RunCMake_GENERATOR MATCHES "Ninja")
# Detect ninja version so we know what tests can be supported.
execute_process(