diff options
author | wsnipex <wsnipex@a1.net> | 2016-12-13 10:19:30 +0100 |
---|---|---|
committer | wsnipex <wsnipex@a1.net> | 2016-12-13 10:49:50 +0100 |
commit | 19e6fb0522d817449bf8a97caaa3461efe257101 (patch) | |
tree | d75ba30c201f152e2ab7d980f5fa5eacdc01dcf7 /project | |
parent | ba6db75e6bc4641dd4595c45e909282f5ac8e309 (diff) |
[cmake] update and fix FindMMAL
Diffstat (limited to 'project')
-rw-r--r-- | project/cmake/modules/FindMMAL.cmake | 59 |
1 files changed, 39 insertions, 20 deletions
diff --git a/project/cmake/modules/FindMMAL.cmake b/project/cmake/modules/FindMMAL.cmake index 8843983680..0b5f5564ec 100644 --- a/project/cmake/modules/FindMMAL.cmake +++ b/project/cmake/modules/FindMMAL.cmake @@ -6,31 +6,50 @@ # MMAL_LIBRARIES - The MMAL libraries if(PKG_CONFIG_FOUND) - pkg_check_modules(MMAL mmal QUIET) + pkg_check_modules(PC_MMAL mmal QUIET) endif() -if(NOT MMAL_FOUND) - find_path(MMAL_INCLUDE_DIRS interface/mmal/mmal.h) - find_library(MMAL_LIBRARY mmal) - find_library(MMALCORE_LIBRARY mmal_core) - find_library(MMALUTIL_LIBRARY mmal_util) - find_library(MMALCLIENT_LIBRARY mmal_vc_client) - find_library(MMALCOMPONENT_LIBRARY mmal_components) - find_library(BCM_LIBRARY bcm_host) - find_library(VCHIQ_LIBRARY vchiq_arm) - find_library(VCOS_LIBRARY vcos) - find_library(VCSM_LIBRARY vcsm) - find_library(CONTAINER_LIBRARY containers) +find_path(MMAL_INCLUDE_DIR NAMES interface/mmal/mmal.h PATHS ${PC_MMAL_INCLUDEDIR}) +find_library(MMAL_LIBRARY NAMES mmal libmmal PATHS ${PC_MMAL_LIBDIR}) +find_library(MMALCORE_LIBRARY NAMES mmal_core libmmal_core PATHS ${PC_MMAL_LIBDIR}) +find_library(MMALUTIL_LIBRARY NAMES mmal_util libmmal_util PATHS ${PC_MMAL_LIBDIR}) +find_library(MMALCLIENT_LIBRARY NAMES mmal_vc_client libmmal_vc_client PATHS ${PC_MMAL_LIBDIR}) +find_library(MMALCOMPONENT_LIBRARY NAMES mmal_components libmmal_components PATHS ${PC_MMAL_LIBDIR}) +find_library(BCM_LIBRARY NAMES bcm_host libbcm_host PATHS ${PC_MMAL_LIBDIR}) +find_library(VCHIQ_LIBRARY NAMES vchiq_arm libvchiq_arm PATHS ${PC_MMAL_LIBDIR}) +find_library(VCHOSTIF_LIBRARY NAMES vchostif libvchostif PATHS ${PC_MMAL_LIBDIR}) +find_library(VCILCS_LIBRARY NAMES vcilcs libvcilcs PATHS ${PC_MMAL_LIBDIR}) +find_library(VCOS_LIBRARY NAMES vcos libvcos PATHS ${PC_MMAL_LIBDIR}) +find_library(VCSM_LIBRARY NAMES vcsm libvcsm PATHS ${PC_MMAL_LIBDIR}) +find_library(CONTAINER_LIBRARY NAMES containers libcontainers PATHS ${PC_MMAL_LIBDIR}) + + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(MMAL REQUIRED_VARS MMAL_INCLUDE_DIR + MMAL_LIBRARY MMALCORE_LIBRARY MMALUTIL_LIBRARY + MMALCLIENT_LIBRARY MMALCOMPONENT_LIBRARY BCM_LIBRARY + VCHIQ_LIBRARY VCOS_LIBRARY VCSM_LIBRARY VCHOSTIF_LIBRARY + VCILCS_LIBRARY CONTAINER_LIBRARY) + + +if(MMAL_FOUND) + set(MMAL_INCLUDE_DIRS ${MMAL_INCLUDE_DIR}) set(MMAL_LIBRARIES ${MMAL_LIBRARY} ${MMALCORE_LIBRARY} ${MMALUTIL_LIBRARY} ${MMALCLIENT_LIBRARY} ${MMALCOMPONENT_LIBRARY} - ${BCM_LIBRARY} ${VCHIQ_LIBRARY} ${VCOS_LIBRARY} ${VCSM_LIBRARY} ${CONTAINER_LIBRARY} + ${BCM_LIBRARY} ${VCHIQ_LIBRARY} ${VCOS_LIBRARY} ${VCSM_LIBRARY} + ${VCHOSTIF_LIBRARY} ${VCILCS_LIBRARY} ${CONTAINER_LIBRARY} CACHE STRING "mmal libraries" FORCE) -endif() - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(MMAL DEFAULT_MSG MMAL_LIBRARIES MMAL_INCLUDE_DIRS) + list(APPEND MMAL_DEFINITIONS -DHAVE_MMAL=1 -DHAS_MMAL=1) -list(APPEND MMAL_DEFINITIONS -DHAVE_MMAL=1 -DHAS_MMAL=1) + if(NOT TARGET MMAL::MMAL) + add_library(MMAL::MMAL UNKNOWN IMPORTED) + set_target_properties(MMAL::MMAL PROPERTIES + IMPORTED_LOCATION "${MMAL_LIBRARIES}" + INTERFACE_INCLUDE_DIRECTORIES "${MMAL_INCLUDE_DIR}") + endif() +endif() -mark_as_advanced(MMAL_INCLUDE_DIRS MMAL_LIBRARIES MMAL_DEFINITIONS) +mark_as_advanced(MMAL_INCLUDE_DIRS MMAL_LIBRARIES MMAL_DEFINITIONS + MMAL_LIBRARY MMALCORE_LIBRARY MMALUTIL_LIBRARY MMALCLIENT_LIBRARY MMALCOMPONENT_LIBRARY BCM_LIBRARY + VCHIQ_LIBRARY VCOS_LIBRARY VCSM_LIBRARY VCHOSTIF_LIBRARY VCILCS_LIBRARY CONTAINER_LIBRARY) |