EnsureFileInclude.cmake 928 B

123456789101112131415161718192021222324252627
  1. # Ensure that an include file is provided by the system
  2. # Add the check about the mandatory status to the check_include_file macro
  3. # provided by cmake
  4. include (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)
  5. macro(ensure_file_include INCLUDE_FILENAME VARIABLE_NAME MANDATORY_STATUS)
  6. #message(WARNING "INCLUDE_FILENAME=${INCLUDE_FILENAME} \n"
  7. # "VARIABLE_NAME=${VARIABLE_NAME} \n"
  8. # "MANDATORY_STATUS=${MANDATORY_STATUS}")
  9. CHECK_INCLUDE_FILE(${INCLUDE_FILENAME} ${VARIABLE_NAME})
  10. #message(WARNING "INCLUDE_FILENAME=${INCLUDE_FILENAME} \n"
  11. # "VARIABLE_NAME=${VARIABLE_NAME} \n"
  12. # "VARIABLE_NAME_VALUE=${${VARIABLE_NAME}} \n"
  13. # "MANDATORY_STATUS=${MANDATORY_STATUS}")
  14. if (NOT ${${VARIABLE_NAME}})
  15. if (${MANDATORY_STATUS})
  16. message(FATAL_ERROR "The file ${INCLUDE_FILENAME} is mandatory but not found on your system")
  17. endif()
  18. endif()
  19. endmacro()