| include(RunCMake) | |
| run_cmake(EnvAndHints) | |
| run_cmake(DirsPerName) | |
| run_cmake(NamesPerDir) | |
| run_cmake(RelAndAbsPath) | |
| run_cmake(Required) | |
| run_cmake(NO_CACHE) | |
| run_cmake(IgnorePrefixPath) | |
| run_cmake(REGISTRY_VIEW-no-view) | |
| run_cmake(REGISTRY_VIEW-wrong-view) | |
| run_cmake(VALIDATOR-no-function) | |
| run_cmake(VALIDATOR-undefined-function) | |
| run_cmake(VALIDATOR-specify-macro) | |
| run_cmake(VALIDATOR) | |
| if(CMAKE_SYSTEM_NAME MATCHES "^(Windows|CYGWIN|MSYS)$") | |
| run_cmake(WindowsCom) | |
| run_cmake(WindowsExe) | |
| else() | |
| # test non readable file only if not root | |
| execute_process( | |
| COMMAND id -u $ENV{USER} | |
| OUTPUT_VARIABLE uid | |
| OUTPUT_STRIP_TRAILING_WHITESPACE) | |
| if(NOT "${uid}" STREQUAL "0") | |
| run_cmake(CMP0109-WARN) | |
| run_cmake(CMP0109-OLD) | |
| run_cmake(CMP0109-NEW) | |
| endif() | |
| endif() | |
| if(APPLE) | |
| run_cmake(BundleSpaceInName) | |
| endif() | |
| run_cmake_with_options(EnvAndHintsDebugVar --debug-find-var=PROG) | |
| if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows") | |
| # Tests using the Windows registry | |
| find_program(REG NAMES "reg.exe" NO_CACHE) | |
| if (REG) | |
| ## check host architecture | |
| cmake_host_system_information(RESULT result QUERY WINDOWS_REGISTRY "HKCU" SUBKEYS VIEW 64 ERROR_VARIABLE status) | |
| if (status STREQUAL "") | |
| set(ARCH "64bit") | |
| else() | |
| set(ARCH "32bit") | |
| endif() | |
| # crete some entries in the registry | |
| cmake_path(CONVERT "${RunCMake_SOURCE_DIR}/registry_host${ARCH}.reg" TO_NATIVE_PATH_LIST registry_data) | |
| execute_process(COMMAND "${REG}" import "${registry_data}" OUTPUT_QUIET ERROR_QUIET) | |
| run_cmake_with_options(Registry-query -DARCH=${ARCH}) | |
| # clean-up registry | |
| execute_process(COMMAND "${REG}" delete "HKCU\\SOFTWARE\\Classes\\CLSID\\CMake-Tests\\find_program" /f OUTPUT_QUIET ERROR_QUIET) | |
| if (ARCH STREQUAL "64bit") | |
| execute_process(COMMAND "${REG}" delete "HKCU\\SOFTWARE\\Classes\\WOW6432Node\\CLSID\\CMake-Tests\\find_program" /f OUTPUT_QUIET ERROR_QUIET) | |
| endif() | |
| endif() | |
| endif() |