diff options
author | wsnipex <wsnipex@a1.net> | 2016-12-13 10:19:30 +0100 |
---|---|---|
committer | wsnipex <wsnipex@a1.net> | 2016-12-14 09:33:08 +0100 |
commit | a7dae8a00da6f35af5152a47b272e0b39637af19 (patch) | |
tree | bf176e448b36d837539a7eaf116724a9a0e3f960 | |
parent | ad7b27a47218c7580396d4d8c91622f92ef26de4 (diff) |
[cmake] update and fix FindMMAL
-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) |