Files
CMake/Tests/RunCMake/if/IsDirectoryLong.cmake
scivision a1dc38a567 Help: Document behavior of if(EXISTS,IS_DIRECTORY) for empty paths
Document and add explicit tests for empty string input:
`if(EXISTS "")` and `if(IS_DIRECTORY "")` are always false.
This avoids need for users to do extra checks due to
CMake non-short-circuit logic as below:

    if("${p}")
      if(EXISTS "${p}")
2023-01-24 14:13:52 -05:00

14 lines
377 B
CMake

set(d "/long/path/to/directory")
foreach(i RANGE 11)
string(APPEND d "${d}")
endforeach()
string(LENGTH "${d}" dl)
if(IS_DIRECTORY "${d}/")
message(FATAL_ERROR "Directory should not exist!")
else()
message(STATUS "Directory path with length ${dl} correctly does not exist.")
endif()
if(IS_DIRECTORY "")
message(FATAL_ERROR "IS_DIRECTORY \"\" should not exist")
endif()