summaryrefslogtreecommitdiffstats
path: root/Tests/GeneratorExpression/check_object_files.cmake
blob: cfccd2961f5be28d57e1244268841d74a537057b (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

if (NOT EXISTS ${OBJLIB_LISTFILE})
  message(SEND_ERROR "Object listing file \"${OBJLIB_LISTFILE}\" not found!")
endif()

file(STRINGS ${OBJLIB_LISTFILE} objlib_files ENCODING UTF-8)

list(LENGTH objlib_files num_objectfiles)
if (NOT EXPECTED_NUM_OBJECTFILES EQUAL num_objectfiles)
  message(SEND_ERROR "Unexpected number of entries in object list file (${num_objectfiles} instead of ${EXPECTED_NUM_OBJECTFILES})")
endif()

foreach(objlib_file ${objlib_files})
  set(file_exists False)
  if (EXISTS ${objlib_file})
    set(file_exists True)
  endif()

  if (NOT file_exists)
    if(attempts)
      list(REMOVE_DUPLICATES attempts)
      set(tried "  Tried ${attempts}")
    endif()
    message(SEND_ERROR "File \"${objlib_file}\" does not exist!${tried}")
  endif()
endforeach()