summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/CommandLine/RunCMakeTest.cmake
diff options
context:
space:
mode:
authorJon Chronopoulos <patches@crondog.com>2019-08-26 04:21:12 (GMT)
committerBrad King <brad.king@kitware.com>2019-08-30 14:37:30 (GMT)
commite6c9a8bac3a2f3103ee79058e92dadd2d30c8ac5 (patch)
treec8d3145e78215886dc052210401b8fecc078d509 /Tests/RunCMake/CommandLine/RunCMakeTest.cmake
parent2a1be178de5f12d55ec486609f4512e6b2b9d168 (diff)
downloadCMake-e6c9a8bac3a2f3103ee79058e92dadd2d30c8ac5.zip
CMake-e6c9a8bac3a2f3103ee79058e92dadd2d30c8ac5.tar.gz
CMake-e6c9a8bac3a2f3103ee79058e92dadd2d30c8ac5.tar.bz2
cmake: Teach -E remove_directory to remove directory symlinks
If the argument to `remove_directory` is a symlink to a directory, remove the symlink instead. Issue: #19533
Diffstat (limited to 'Tests/RunCMake/CommandLine/RunCMakeTest.cmake')
-rw-r--r--Tests/RunCMake/CommandLine/RunCMakeTest.cmake11
1 files changed, 11 insertions, 0 deletions
diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake
index dd49423..2bc5966 100644
--- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake
@@ -348,6 +348,17 @@ run_cmake_command(E_make_directory-two-directories-and-file
${CMAKE_COMMAND} -E make_directory ${out}/d1 ${out}/d2 ${outfile})
run_cmake_command(E_remove_directory-two-directories-and-file
${CMAKE_COMMAND} -E remove_directory ${out}/d1 ${out}/d2 ${outfile})
+
+if(UNIX)
+ file(MAKE_DIRECTORY ${out}/dir)
+ file(CREATE_LINK ${out}/dir ${out}/link_dir SYMBOLIC)
+ file(CREATE_LINK ${outfile} ${out}/link_file_for_test.txt SYMBOLIC)
+ run_cmake_command(E_remove_directory-symlink-dir
+ ${CMAKE_COMMAND} -E remove_directory ${out}/link_dir)
+ run_cmake_command(E_remove_directory-symlink-file
+ ${CMAKE_COMMAND} -E remove_directory ${out}/link_file_for_test.txt)
+endif()
+
unset(out)
unset(outfile)