PocoConfig.cmake.in 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. if (CMAKE_VERSION VERSION_LESS 2.8.9)
  2. message(FATAL_ERROR "Poco requires at least CMake version 2.8.9")
  3. endif()
  4. if (NOT Poco_FIND_COMPONENTS)
  5. set(Poco_NOT_FOUND_MESSAGE "The Poco package requires at least one component")
  6. set(Poco_FOUND False)
  7. return()
  8. endif()
  9. set(_Poco_FIND_PARTS_REQUIRED)
  10. if (Poco_FIND_REQUIRED)
  11. set(_Poco_FIND_PARTS_REQUIRED REQUIRED)
  12. endif()
  13. set(_Poco_FIND_PARTS_QUIET)
  14. if (Poco_FIND_QUIETLY)
  15. set(_Poco_FIND_PARTS_QUIET QUIET)
  16. endif()
  17. get_filename_component(_Poco_install_prefix "${CMAKE_CURRENT_LIST_DIR}" ABSOLUTE)
  18. set(_Poco_NOTFOUND_MESSAGE)
  19. # Let components find each other, but don't overwrite CMAKE_PREFIX_PATH
  20. set(_Poco_CMAKE_PREFIX_PATH_old ${CMAKE_PREFIX_PATH})
  21. set(CMAKE_PREFIX_PATH ${_Poco_install_prefix})
  22. foreach(module ${Poco_FIND_COMPONENTS})
  23. find_package(Poco${module}
  24. ${_Poco_FIND_PARTS_QUIET}
  25. ${_Poco_FIND_PARTS_REQUIRED}
  26. PATHS "${_Poco_install_prefix}" NO_DEFAULT_PATH
  27. )
  28. if (NOT Poco${module}_FOUND)
  29. if (Poco_FIND_REQUIRED_${module})
  30. set(_Poco_NOTFOUND_MESSAGE "${_Poco_NOTFOUND_MESSAGE}Failed to find Poco component \"${module}\" config file at \"${_Poco_install_prefix}/Poco${module}/Poco${module}Config.cmake\"\n")
  31. elseif(NOT Poco_FIND_QUIETLY)
  32. message(WARNING "Failed to find Poco component \"${module}\" config file at \"${_Poco_install_prefix}/Poco${module}/Poco${module}Config.cmake\"")
  33. endif()
  34. endif()
  35. # For backward compatibility set the LIBRARIES variable
  36. list(APPEND Poco_LIBRARIES "Poco::${module}")
  37. endforeach()
  38. # Restore the original CMAKE_PREFIX_PATH value
  39. set(CMAKE_PREFIX_PATH ${_Poco_CMAKE_PREFIX_PATH_old})
  40. if (_Poco_NOTFOUND_MESSAGE)
  41. set(Poco_NOT_FOUND_MESSAGE "${_Poco_NOTFOUND_MESSAGE}")
  42. set(Poco_FOUND False)
  43. endif()