From 4c3251ec645c8b71820dab7e51e612e5919d4e75 Mon Sep 17 00:00:00 2001 From: manuel Date: Sun, 23 Jul 2017 16:59:43 +0200 Subject: sync with upstream --- cmake/modules/FindBluray.cmake | 2 +- cmake/modules/FindEMBEDDED.cmake | 16 ----------- cmake/modules/FindFFMPEG.cmake | 2 +- cmake/modules/FindGBM.cmake | 44 +++++++++++++++++++++++++++++ cmake/modules/FindLibDvd.cmake | 2 +- cmake/modules/FindOpenGLES.cmake | 18 ++++-------- cmake/modules/FindOpenGLES3.cmake | 24 ++++++++++++++++ cmake/modules/FindSndio.cmake | 59 ++++++++++++++++++++++----------------- cmake/modules/FindVAAPI.cmake | 52 +++++++++++++--------------------- 9 files changed, 129 insertions(+), 90 deletions(-) delete mode 100644 cmake/modules/FindEMBEDDED.cmake create mode 100644 cmake/modules/FindGBM.cmake create mode 100644 cmake/modules/FindOpenGLES3.cmake (limited to 'cmake/modules') diff --git a/cmake/modules/FindBluray.cmake b/cmake/modules/FindBluray.cmake index 0bba128..9e5bf08 100644 --- a/cmake/modules/FindBluray.cmake +++ b/cmake/modules/FindBluray.cmake @@ -15,7 +15,7 @@ # Bluray::Bluray - The libbluray library if(PKG_CONFIG_FOUND) - pkg_check_modules(PC_BLURAY libbluray>=0.7.0 QUIET) + pkg_check_modules(PC_BLURAY libbluray>=0.9.3 QUIET) endif() find_path(BLURAY_INCLUDE_DIR libbluray/bluray.h diff --git a/cmake/modules/FindEMBEDDED.cmake b/cmake/modules/FindEMBEDDED.cmake deleted file mode 100644 index 8034c4e..0000000 --- a/cmake/modules/FindEMBEDDED.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# - Try to find embedded platforms (RPI/IMX6) -# Once done this will define -# -# EMBEDDED_FOUND - system is RPI / IMX6 and we most probably want to compile for GLES2 support -# (don't configure for OpenGL) - -if(NOT CMAKE_SYSTEM_PROCESSOR) - set(CMAKE_SYSTEM_PROCESSOR ${CPU}) -endif() - -string(REGEX MATCH "^arm" TARGET_ARCH_ARM "${CMAKE_SYSTEM_PROCESSOR}") -if(NOT KODI_DEPENDSBUILD AND NOT TARGET_ARCH_ARM) - return() -endif() - -find_path(EMBEDDED_FOUND NAMES include/linux/mxcfb.h include/bcm_host.h PATHS /opt/vc) diff --git a/cmake/modules/FindFFMPEG.cmake b/cmake/modules/FindFFMPEG.cmake index 63505a5..dbeb444 100644 --- a/cmake/modules/FindFFMPEG.cmake +++ b/cmake/modules/FindFFMPEG.cmake @@ -224,7 +224,7 @@ if(NOT FFMPEG_FOUND) if(FFMPEG_URL) get_filename_component(FFMPEG_URL "${FFMPEG_URL}" ABSOLUTE) else() - set(FFMPEG_URL ${FFMPEG_BASE_URL}/${FFMPEG_VER}.tar.gz) + set(FFMPEG_URL ${FFMPEG_BASE_URL}/archive/${FFMPEG_VER}.tar.gz) endif() if(VERBOSE) message(STATUS "FFMPEG_URL: ${FFMPEG_URL}") diff --git a/cmake/modules/FindGBM.cmake b/cmake/modules/FindGBM.cmake new file mode 100644 index 0000000..ac95241 --- /dev/null +++ b/cmake/modules/FindGBM.cmake @@ -0,0 +1,44 @@ +# FindGBM +# ---------- +# Finds the GBM library +# +# This will will define the following variables:: +# +# GBM_FOUND - system has GBM +# GBM_INCLUDE_DIRS - the GBM include directory +# GBM_LIBRARIES - the GBM libraries +# GBM_DEFINITIONS - the GBM definitions +# +# and the following imported targets:: +# +# GBM::GBM - The GBM library + +if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_GBM gbm QUIET) +endif() + +find_path(GBM_INCLUDE_DIR NAMES gbm.h + PATHS ${PC_GBM_INCLUDEDIR}) +find_library(GBM_LIBRARY NAMES gbm + PATHS ${PC_GBM_LIBDIR}) + +set(GBM_VERSION ${PC_GBM_VERSION}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(GBM + REQUIRED_VARS GBM_LIBRARY GBM_INCLUDE_DIR + VERSION_VAR GBM_VERSION) + +if(GBM_FOUND) + set(GBM_LIBRARIES ${GBM_LIBRARY}) + set(GBM_INCLUDE_DIRS ${GBM_INCLUDE_DIR}) + set(GBM_DEFINITIONS -DHAVE_GBM=1) + if(NOT TARGET GBM::GBM) + add_library(GBM::GBM UNKNOWN IMPORTED) + set_target_properties(GBM::GBM PROPERTIES + IMPORTED_LOCATION "${GBM_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${GBM_INCLUDE_DIR}") + endif() +endif() + +mark_as_advanced(GBM_INCLUDE_DIR GBM_LIBRARY) diff --git a/cmake/modules/FindLibDvd.cmake b/cmake/modules/FindLibDvd.cmake index eeb416c..86af89c 100644 --- a/cmake/modules/FindLibDvd.cmake +++ b/cmake/modules/FindLibDvd.cmake @@ -203,7 +203,7 @@ if(NOT WIN32) endif() else() # Dynamically loaded on Windows - find_path(LIBDVD_INCLUDE_DIR dvdcss/dvdcss.h PATHS ${CMAKE_SOURCE_DIR}/lib/libdvd/include) + find_path(LIBDVD_INCLUDE_DIR dvdcss/dvdcss.h) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(LibDvd REQUIRED_VARS LIBDVD_INCLUDE_DIR) diff --git a/cmake/modules/FindOpenGLES.cmake b/cmake/modules/FindOpenGLES.cmake index ab06f96..4333a69 100644 --- a/cmake/modules/FindOpenGLES.cmake +++ b/cmake/modules/FindOpenGLES.cmake @@ -10,13 +10,8 @@ # OPENGLES_LIBRARIES - the OpenGLES libraries # OPENGLES_DEFINITIONS - the OpenGLES definitions -find_package(EMBEDDED) - -if(PKG_CONFIG_FOUND AND NOT PLATFORM STREQUAL "raspberry-pi") +if(PKG_CONFIG_FOUND) pkg_check_modules(PC_OPENGLES glesv2 QUIET) - if(NOT OPENGLES_FOUND AND EMBEDDED_FOUND) - set(CMAKE_PREFIX_PATH ${EMBEDDED_FOUND} ${CMAKE_PREFIX_PATH}) - endif() endif() if(NOT CORE_SYSTEM_NAME STREQUAL ios) @@ -24,25 +19,22 @@ if(NOT CORE_SYSTEM_NAME STREQUAL ios) PATHS ${PC_OPENGLES_INCLUDEDIR}) find_library(OPENGLES_gl_LIBRARY NAMES GLESv2 PATHS ${PC_OPENGLES_LIBDIR}) - find_library(OPENGLES_egl_LIBRARY NAMES EGL - PATHS ${PC_OPENGLES_LIBDIR}) else() find_library(OPENGLES_gl_LIBRARY NAMES OpenGLES PATHS ${CMAKE_OSX_SYSROOT}/System/Library PATH_SUFFIXES Frameworks NO_DEFAULT_PATH) set(OPENGLES_INCLUDE_DIR ${OPENGLES_gl_LIBRARY}/Headers) - set(OPENGLES_egl_LIBRARY ${OPENGLES_gl_LIBRARY}) endif() include(FindPackageHandleStandardArgs) find_package_handle_standard_args(OpenGLES - REQUIRED_VARS OPENGLES_gl_LIBRARY OPENGLES_egl_LIBRARY OPENGLES_INCLUDE_DIR) + REQUIRED_VARS OPENGLES_gl_LIBRARY OPENGLES_INCLUDE_DIR) if(OPENGLES_FOUND) set(OPENGLES_INCLUDE_DIRS ${OPENGLES_INCLUDE_DIR}) - set(OPENGLES_LIBRARIES ${OPENGLES_gl_LIBRARY} ${OPENGLES_egl_LIBRARY}) - set(OPENGLES_DEFINITIONS -DHAVE_LIBGLESV2 -DHAVE_LIBEGL=1) + set(OPENGLES_LIBRARIES ${OPENGLES_gl_LIBRARY}) + set(OPENGLES_DEFINITIONS -DHAVE_LIBGLESV2) endif() -mark_as_advanced(OPENGLES_INCLUDE_DIR OPENGLES_gl_LIBRARY OPENGLES_egl_LIBRARY) +mark_as_advanced(OPENGLES_INCLUDE_DIR OPENGLES_gl_LIBRARY) diff --git a/cmake/modules/FindOpenGLES3.cmake b/cmake/modules/FindOpenGLES3.cmake new file mode 100644 index 0000000..394328d --- /dev/null +++ b/cmake/modules/FindOpenGLES3.cmake @@ -0,0 +1,24 @@ +#.rst: +# FindOpenGLES3 +# ------------ +# Finds the OpenGLES3 library +# +# This will will define the following variables:: +# +# OPENGLES3_FOUND - system has OpenGLES3 +# OPENGLES3_INCLUDE_DIRS - the OpenGLES3 include directory +# OPENGLES3_DEFINITIONS - the OpenGLES3 definitions + + +find_path(OPENGLES3_INCLUDE_DIR GLES3/gl3.h) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(OpenGLES3 + REQUIRED_VARS OPENGLES3_INCLUDE_DIR) + +if(OPENGLES3_FOUND) + set(OPENGLES3_INCLUDE_DIRS ${OPENGLES3_INCLUDE_DIR}) + set(OPENGLES3_DEFINITIONS -DHAVE_LIBGLESV3) +endif() + +mark_as_advanced(OPENGLES3_INCLUDE_DIR) diff --git a/cmake/modules/FindSndio.cmake b/cmake/modules/FindSndio.cmake index 4e66a4b..3dd53d9 100644 --- a/cmake/modules/FindSndio.cmake +++ b/cmake/modules/FindSndio.cmake @@ -1,34 +1,41 @@ -# sndio check, based on FindAlsa.cmake # - -# Copyright (c) 2006, David Faure, -# Copyright (c) 2007, Matthias Kretz -# Copyright (c) 2009, Jacob Meuser +# FindSndio +# --------- +# Finds the Sndio Library +# +# This will will define the following variables: +# +# SNDIO_FOUND - system has sndio +# SNDIO_INCLUDE_DIRS - sndio include directory +# SNDIO_DEFINITIONS - sndio definitions +# +# and the following imported targets:: +# +# Sndio::Sndio - the sndio library # -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - -include(CheckIncludeFiles) -include(CheckIncludeFileCXX) -include(CheckLibraryExists) -# Already done by toplevel +find_path(SNDIO_INCLUDE_DIR sndio.h) find_library(SNDIO_LIBRARY sndio) -set(SNDIO_LIBRARY_DIR "") -if(SNDIO_LIBRARY) - get_filename_component(SNDIO_LIBRARY_DIR ${SNDIO_LIBRARY} PATH) -endif(SNDIO_LIBRARY) -check_library_exists(sndio sio_open "${SNDIO_LIBRARY_DIR}" HAVE_SNDIO) -if(HAVE_SNDIO) - message(STATUS "Found sndio: ${SNDIO_LIBRARY}") - set(SNDIO_DEFINITIONS -DHAVE_SNDIO=1) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Sndio + REQUIRED_VARS SNDIO_LIBRARY SNDIO_INCLUDE_DIR) + +if(SNDIO_FOUND) + set(SNDIO_INCLUDE_DIRS ${SNDIO_INCLUDE_DIR}) set(SNDIO_LIBRARIES ${SNDIO_LIBRARY}) -else(HAVE_SNDIO) - message(STATUS "sndio not found") -endif(HAVE_SNDIO) -set(SNDIO_FOUND ${HAVE_SNDIO}) + set(SNDIO_DEFINITIONS -DHAVE_SNDIO=1) + + if(NOT TARGET Sndio::Sndio) + add_library(Sndio::Sndio UNKNOWN IMPORTED) + set_target_properties(Sndio::Sndio PROPERTIES + IMPORTED_LOCATION "${SNDIO_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${SNDIO_INCLUDE_DIR}") + set_target_properties(Sndio::Sndio PROPERTIES + INTERFACE_COMPILE_DEFINITIONS -DHAVE_SNDIO=1) + endif() +endif() -find_path(SNDIO_INCLUDES sndio.h) -mark_as_advanced(SNDIO_INCLUDES SNDIO_LIBRARY) +mark_as_advanced(SNDIO_INCLUDE_DIR SNDIO_LIBRARY) diff --git a/cmake/modules/FindVAAPI.cmake b/cmake/modules/FindVAAPI.cmake index 49f74d8..5b57d23 100644 --- a/cmake/modules/FindVAAPI.cmake +++ b/cmake/modules/FindVAAPI.cmake @@ -9,23 +9,29 @@ # VAAPI_INCLUDE_DIRS - the VAAPI include directory # VAAPI_LIBRARIES - the VAAPI libraries # VAAPI_DEFINITIONS - the VAAPI definitions -# -# and the following imported targets:: -# -# VAAPI::VAAPI - The VAAPI library if(PKG_CONFIG_FOUND) - pkg_check_modules(PC_VAAPI libva libva-x11 QUIET) + pkg_check_modules(PC_VAAPI libva libva-drm libva-x11 QUIET) endif() -find_path(VAAPI_INCLUDE_DIR va/va.h +set(REQUIRED_VARS "VAAPI_libva_LIBRARY" "VAAPI_libva-drm_LIBRARY" "VAAPI_libva_INCLUDE_DIR" "VAAPI_libva-drm_INCLUDE_DIR") + +find_path(VAAPI_libva_INCLUDE_DIR va/va.h PATHS ${PC_VAAPI_libva_INCLUDEDIR}) find_library(VAAPI_libva_LIBRARY NAMES va PATHS ${PC_VAAPI_libva_LIBDIR}) -find_library(VAAPI_libva-x11_LIBRARY NAMES va-x11 - PATHS ${PC_VAAPI_libva_LIBDIR}) +find_path(VAAPI_libva-drm_INCLUDE_DIR va/va_drm.h + PATHS ${PC_VAAPI_libva-drm_INCLUDEDIR}) find_library(VAAPI_libva-drm_LIBRARY NAMES va-drm - PATHS ${PC_VAAPI_libva_LIBDIR}) + PATHS ${PC_VAAPI_libva-drm_LIBDIR}) + +if(CORE_PLATFORM_NAME_LC STREQUAL "x11") + find_path(VAAPI_libva-x11_INCLUDE_DIR va/va_x11.h + PATHS ${PC_VAAPI_libva-x11_INCLUDEDIR}) + find_library(VAAPI_libva-x11_LIBRARY NAMES va-x11 + PATHS ${PC_VAAPI_libva-x11_LIBDIR}) + list(APPEND REQUIRED_VARS "VAAPI_libva-x11_INCLUDE_DIR" "VAAPI_libva-x11_LIBRARY") +endif() if(PC_VAAPI_libva_VERSION) set(VAAPI_VERSION_STRING ${PC_VAAPI_libva_VERSION}) @@ -41,32 +47,14 @@ endif() include(FindPackageHandleStandardArgs) find_package_handle_standard_args(VAAPI - REQUIRED_VARS VAAPI_libva_LIBRARY VAAPI_libva-x11_LIBRARY VAAPI_libva-drm_LIBRARY VAAPI_INCLUDE_DIR + REQUIRED_VARS ${REQUIRED_VARS} VERSION_VAR VAAPI_VERSION_STRING) if(VAAPI_FOUND) - set(VAAPI_INCLUDE_DIRS ${VAAPI_INCLUDE_DIR}) - set(VAAPI_LIBRARIES ${VAAPI_libva_LIBRARY} ${VAAPI_libva-x11_LIBRARY} ${VAAPI_libva-drm_LIBRARY}) + set(VAAPI_INCLUDE_DIRS ${VAAPI_INCLUDE_DIR} ${VAAPI_DRM_INCLUDE_DIR} ${VAAPI_X11_INCLUDE_DIR}) + set(VAAPI_LIBRARIES ${VAAPI_libva_LIBRARY} ${VAAPI_libva-drm_LIBRARY} ${VAAPI_libva-x11_LIBRARY}) set(VAAPI_DEFINITIONS -DHAVE_LIBVA=1) - - if(NOT TARGET VAAPI::VAAPI_X11) - add_library(VAAPI::VAAPI_X11 UNKNOWN IMPORTED) - set_target_properties(VAAPI::VAAPI_X11 PROPERTIES - IMPORTED_LOCATION "${VAAPI_libva-x11_LIBRARY}") - endif() - if (NOT TARGET VAAPI::VAAPI_DRM) - add_library(VAAPI::VAAPI_DRM UNKNOWN IMPORTED) - set_target_properties(VAAPI::VAAPI_DRM PROPERTIES - IMPORTED_LOCATION "${VAAPI_libva-drm_LIBRARY}") - endif() - if(NOT TARGET VAAPI::VAAPI) - add_library(VAAPI::VAAPI UNKNOWN IMPORTED) - set_target_properties(VAAPI::VAAPI PROPERTIES - IMPORTED_LOCATION "${VAAPI_libva_LIBRARY}" - INTERFACE_INCLUDE_DIRECTORIES "${VAAPI_INCLUDE_DIR}" - INTERFACE_COMPILE_DEFINITIONS HAVE_LIBVA=1 - INTERFACE_LINK_LIBRARIES "VAAPI::VAAPI_X11 VAAPI::VAAPI_DRM") - endif() endif() -mark_as_advanced(VAAPI_INCLUDE_DIR VAAPI_libva_LIBRARY VAAPI_libva-x11_LIBRARY VAAPI_libva-drm_LIBRARY) +mark_as_advanced(VAAPI_libva_INCLUDE_DIR VAAPI_libva-drm_INCLUDE_DIR VAAPI_libva-x11_INCLUDE_DIR + VAAPI_libva_LIBRARY VAAPI_libva-drm_LIBRARY VAAPI_libva-x11_LIBRARY) -- cgit v1.2.3