summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/BuildDepends/check.cmake
blob: 26a9eb65d2fc033f5ee4b4ace9bb4ed202ca3ffe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
if(EXISTS ${RunCMake_TEST_BINARY_DIR}/check-debug.cmake)
  include(${RunCMake_TEST_BINARY_DIR}/check-debug.cmake)
  if(RunCMake_TEST_FAILED)
    return()
  endif()
  foreach(exe IN LISTS check_exes)
    execute_process(COMMAND ${exe} RESULT_VARIABLE res)
    if(NOT res EQUAL ${check_step})
      set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}
 '${exe}' returned '${res}' but expected '${check_step}'
")
    endif()
  endforeach()
  foreach(p IN LISTS check_pairs)
    if("${p}" MATCHES "^(.*)\\|(.*)$")
      set(lhs "${CMAKE_MATCH_1}")
      set(rhs "${CMAKE_MATCH_2}")
      if(NOT EXISTS "${lhs}")
        set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}
 '${lhs}' missing
")
      elseif(NOT EXISTS "${rhs}")
        set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}
 '${rhs}' missing
")
      elseif(NOT "${lhs}" IS_NEWER_THAN "${rhs}")
        set(RunCMake_TEST_FAILED "${RunCMake_TEST_FAILED}
 '${lhs}' is not newer than '${rhs}'
")
      endif()
    endif()
  endforeach()
else()
  set(RunCMake_TEST_FAILED "
 '${RunCMake_TEST_BINARY_DIR}/check-debug.cmake' missing
")
endif()