2019-03-16 19:37:44 +01:00
|
|
|
IF(RPM)
|
|
|
|
MACRO(FIND_DEP V)
|
|
|
|
SET(out ${V}_DEP)
|
|
|
|
IF (NOT DEFINED ${out})
|
|
|
|
IF(EXISTS ${${V}} AND NOT IS_DIRECTORY ${${V}})
|
|
|
|
EXECUTE_PROCESS(COMMAND ${ARGN} RESULT_VARIABLE res OUTPUT_VARIABLE O OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
|
|
ELSE()
|
|
|
|
SET(res 1)
|
|
|
|
ENDIF()
|
|
|
|
IF (res)
|
|
|
|
SET(O)
|
|
|
|
ELSE()
|
|
|
|
MESSAGE(STATUS "Need ${O} for ${${V}}")
|
|
|
|
ENDIF()
|
|
|
|
SET(${out} ${O} CACHE INTERNAL "Package that contains ${${V}}" FORCE)
|
|
|
|
ENDIF()
|
|
|
|
ENDMACRO()
|
|
|
|
|
2019-04-08 10:03:46 +02:00
|
|
|
# FindBoost.cmake doesn't leave any trace, do it here
|
|
|
|
IF (Boost_INCLUDE_DIR)
|
|
|
|
FIND_FILE(Boost_config_hpp boost/config.hpp PATHS ${Boost_INCLUDE_DIR})
|
|
|
|
ENDIF()
|
|
|
|
|
2019-03-16 19:37:44 +01:00
|
|
|
GET_CMAKE_PROPERTY(ALL_VARS CACHE_VARIABLES)
|
|
|
|
FOREACH (V ${ALL_VARS})
|
|
|
|
GET_PROPERTY(H CACHE ${V} PROPERTY HELPSTRING)
|
|
|
|
IF (H MATCHES "^Have library [^/]" AND ${V})
|
|
|
|
STRING(REGEX REPLACE "^Have library " "" L ${H})
|
|
|
|
SET(V ${L}_LIBRARY)
|
|
|
|
FIND_LIBRARY(${V} ${L})
|
|
|
|
ENDIF()
|
|
|
|
GET_PROPERTY(T CACHE ${V} PROPERTY TYPE)
|
|
|
|
IF ((T STREQUAL FILEPATH OR V MATCHES "^CMAKE_COMMAND$") AND ${V} MATCHES "^/")
|
|
|
|
IF (RPM)
|
|
|
|
FIND_DEP(${V} rpm -q --qf "%{NAME}" -f ${${V}})
|
|
|
|
ELSE() # must be DEB
|
|
|
|
MESSAGE(FATAL_ERROR "Not implemented")
|
|
|
|
ENDIF ()
|
|
|
|
SET(BUILD_DEPS ${BUILD_DEPS} ${${V}_DEP})
|
|
|
|
ENDIF()
|
|
|
|
ENDFOREACH()
|
2019-08-18 22:18:44 +02:00
|
|
|
IF (BUILD_DEPS)
|
|
|
|
LIST(REMOVE_DUPLICATES BUILD_DEPS)
|
|
|
|
STRING(REPLACE ";" " " CPACK_RPM_BUILDREQUIRES "${BUILD_DEPS}")
|
|
|
|
ENDIF()
|
2019-03-16 19:37:44 +01:00
|
|
|
ENDIF(RPM)
|