aboutsummaryrefslogtreecommitdiff
path: root/cmake/modules
diff options
context:
space:
mode:
authorNiels Ole Salscheider <niels_ole@salscheider-online.de>2019-10-29 11:53:08 +0100
committerLNJ <lnj@kaidan.im>2020-03-16 22:22:59 +0100
commitc67ccc6d939b8f1efd118f92baea997fe1b7f1a6 (patch)
treeda09676630fbd19cc30220aecd69891ef70c2d7d /cmake/modules
parenta7f801700291b7a42dd8191e3fc6f5ffe1072550 (diff)
downloadqxmpp-c67ccc6d939b8f1efd118f92baea997fe1b7f1a6.tar.gz
Import cmake scripts for gstreamer from qt-gstreamer
Diffstat (limited to 'cmake/modules')
-rw-r--r--cmake/modules/FindGLIB2.cmake85
-rw-r--r--cmake/modules/FindGObject.cmake82
-rw-r--r--cmake/modules/FindGStreamer.cmake169
-rw-r--r--cmake/modules/MacroFindGStreamerLibrary.cmake77
4 files changed, 413 insertions, 0 deletions
diff --git a/cmake/modules/FindGLIB2.cmake b/cmake/modules/FindGLIB2.cmake
new file mode 100644
index 00000000..5082212e
--- /dev/null
+++ b/cmake/modules/FindGLIB2.cmake
@@ -0,0 +1,85 @@
+# - Try to find the GLIB2 libraries
+# Once done this will define
+#
+# GLIB2_FOUND - system has glib2
+# GLIB2_INCLUDE_DIR - the glib2 include directory
+# GLIB2_LIBRARIES - glib2 library
+
+# Copyright (c) 2008 Laurent Montel, <montel@kde.org>
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1. Redistributions of source code must retain the copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+if(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES)
+ # Already in cache, be silent
+ set(GLIB2_FIND_QUIETLY TRUE)
+endif(GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES)
+
+if (NOT WIN32)
+ find_package(PkgConfig QUIET)
+ if(PKG_CONFIG_FOUND)
+ pkg_check_modules(PKG_GLIB QUIET glib-2.0)
+ endif()
+endif(NOT WIN32)
+
+find_path(GLIB2_MAIN_INCLUDE_DIR glib.h
+ PATH_SUFFIXES glib-2.0
+ HINTS ${PKG_GLIB_INCLUDE_DIRS} ${PKG_GLIB_INCLUDEDIR})
+
+# search the glibconfig.h include dir under the same root where the library is found
+find_library(GLIB2_LIBRARIES
+ NAMES glib-2.0
+ HINTS ${PKG_GLIB_LIBRARY_DIRS} ${PKG_GLIB_LIBDIR})
+
+find_path(GLIB2_INTERNAL_INCLUDE_DIR glibconfig.h
+ PATH_SUFFIXES glib-2.0/include ../lib/glib-2.0/include
+ HINTS ${PKG_GLIB_INCLUDE_DIRS} ${PKG_GLIB_LIBRARIES} ${CMAKE_SYSTEM_LIBRARY_PATH})
+
+set(GLIB2_INCLUDE_DIR ${GLIB2_MAIN_INCLUDE_DIR})
+
+# not sure if this include dir is optional or required
+# for now it is optional
+if(GLIB2_INTERNAL_INCLUDE_DIR)
+ set(GLIB2_INCLUDE_DIR ${GLIB2_INCLUDE_DIR} ${GLIB2_INTERNAL_INCLUDE_DIR})
+endif(GLIB2_INTERNAL_INCLUDE_DIR)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(GLIB2 DEFAULT_MSG GLIB2_LIBRARIES GLIB2_MAIN_INCLUDE_DIR)
+
+mark_as_advanced(GLIB2_INCLUDE_DIR GLIB2_LIBRARIES)
+
+
+find_program(GLIB2_GENMARSHAL_UTIL glib-genmarshal)
+
+macro(glib2_genmarshal output_name)
+ file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/genmarshal_tmp)
+ foreach(_declaration ${ARGN})
+ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/genmarshal_tmp "${_declaration}\n")
+ endforeach()
+ add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${output_name}.h ${CMAKE_CURRENT_BINARY_DIR}/${output_name}.c
+ COMMAND ${GLIB2_GENMARSHAL_UTIL} --header genmarshal_tmp > ${output_name}.h
+ COMMAND ${GLIB2_GENMARSHAL_UTIL} --body genmarshal_tmp > ${output_name}.c
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+endmacro()
diff --git a/cmake/modules/FindGObject.cmake b/cmake/modules/FindGObject.cmake
new file mode 100644
index 00000000..cd6d5f4e
--- /dev/null
+++ b/cmake/modules/FindGObject.cmake
@@ -0,0 +1,82 @@
+# - Try to find GObject
+# Once done this will define
+#
+# GOBJECT_FOUND - system has GObject
+# GOBJECT_INCLUDE_DIR - the GObject include directory
+# GOBJECT_LIBRARIES - the libraries needed to use GObject
+# GOBJECT_DEFINITIONS - Compiler switches required for using GObject
+
+# Copyright (c) 2006, Tim Beaulen <tbscope@gmail.com>
+# Copyright (c) 2008 Helio Chissini de Castro, <helio@kde.org>
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1. Redistributions of source code must retain the copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
+ # in cache already
+ SET(GObject_FIND_QUIETLY TRUE)
+ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
+ SET(GObject_FIND_QUIETLY FALSE)
+ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
+
+IF (NOT WIN32)
+ FIND_PACKAGE(PkgConfig REQUIRED)
+ # use pkg-config to get the directories and then use these values
+ # in the FIND_PATH() and FIND_LIBRARY() calls
+ PKG_CHECK_MODULES(PKG_GOBJECT2 REQUIRED gobject-2.0)
+ SET(GOBJECT_DEFINITIONS ${PKG_GOBJECT2_CFLAGS})
+ENDIF (NOT WIN32)
+
+FIND_PATH(GOBJECT_INCLUDE_DIR gobject/gobject.h
+ HINTS ${PKG_GOBJECT2_INCLUDE_DIRS} ${PKG_GOBJECT2_INCLUDEDIR}
+ PATHS /usr/include/glib-2.0/
+ PATH_SUFFIXES glib-2.0
+ )
+
+FIND_LIBRARY(_GObjectLibs NAMES gobject-2.0
+ HINTS
+ ${PKG_GOBJECT2_LIBRARY_DIRS}
+ ${PKG_GOBJECT2_LIBDIR}
+ )
+FIND_LIBRARY(_GModuleLibs NAMES gmodule-2.0
+ HINTS
+ ${PKG_GOBJECT2_LIBRARY_DIRS}
+ ${PKG_GOBJECT2_LIBDIR}
+ )
+FIND_LIBRARY(_GThreadLibs NAMES gthread-2.0
+ HINTS
+ ${PKG_GOBJECT2_LIBRARY_DIRS}
+ ${PKG_GOBJECT2_LIBDIR}
+ )
+FIND_LIBRARY(_GLibs NAMES glib-2.0
+ HINTS
+ ${PKG_GOBJECT2_LIBRARY_DIRS}
+ ${PKG_GOBJECT2_LIBDIR}
+ )
+
+SET (GOBJECT_LIBRARIES ${_GObjectLibs} ${_GModuleLibs} ${_GThreadLibs} ${_GLibs})
+
+MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(GObject DEFAULT_MSG GOBJECT_INCLUDE_DIR GOBJECT_LIBRARIES)
diff --git a/cmake/modules/FindGStreamer.cmake b/cmake/modules/FindGStreamer.cmake
new file mode 100644
index 00000000..dd306dc1
--- /dev/null
+++ b/cmake/modules/FindGStreamer.cmake
@@ -0,0 +1,169 @@
+# - Try to find GStreamer
+# Once done this will define
+#
+# GSTREAMER_FOUND - system has GStreamer
+# GSTREAMER_INCLUDE_DIR - the GStreamer main include directory
+# GSTREAMER_INCLUDE_DIRS - the GStreamer include directories
+# GSTREAMER_LIBRARY - the main GStreamer library
+# GSTREAMER_PLUGIN_DIR - the GStreamer plugin directory
+#
+# And for all the plugin libraries specified in the COMPONENTS
+# of find_package, this module will define:
+#
+# GSTREAMER_<plugin_lib>_LIBRARY_FOUND - system has <plugin_lib>
+# GSTREAMER_<plugin_lib>_LIBRARY - the <plugin_lib> library
+# GSTREAMER_<plugin_lib>_INCLUDE_DIR - the <plugin_lib> include directory
+#
+# Copyright (c) 2010, Collabora Ltd.
+# @author George Kiagiadakis <george.kiagiadakis@collabora.co.uk>
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1. Redistributions of source code must retain the copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+if (GSTREAMER_INCLUDE_DIR AND GSTREAMER_LIBRARY)
+ set(GStreamer_FIND_QUIETLY TRUE)
+else()
+ set(GStreamer_FIND_QUIETLY FALSE)
+endif()
+
+set(GSTREAMER_ABI_VERSION "1.0")
+
+
+# Find the main library
+find_package(PkgConfig)
+
+if (PKG_CONFIG_FOUND)
+ pkg_check_modules(PKG_GSTREAMER QUIET gstreamer-${GSTREAMER_ABI_VERSION})
+ if(PKG_GSTREAMER_FOUND)
+ exec_program(${PKG_CONFIG_EXECUTABLE}
+ ARGS --variable pluginsdir gstreamer-${GSTREAMER_ABI_VERSION}
+ OUTPUT_VARIABLE PKG_GSTREAMER_PLUGIN_DIR)
+ endif()
+ set(GSTREAMER_DEFINITIONS ${PKG_GSTREAMER_CFLAGS})
+endif()
+
+find_library(GSTREAMER_LIBRARY
+ NAMES gstreamer-${GSTREAMER_ABI_VERSION}
+ HINTS ${PKG_GSTREAMER_LIBRARY_DIRS} ${PKG_GSTREAMER_LIBDIR})
+
+find_path(GSTREAMER_INCLUDE_DIR
+ gst/gst.h
+ HINTS ${PKG_GSTREAMER_INCLUDE_DIRS} ${PKG_GSTREAMER_INCLUDEDIR}
+ PATH_SUFFIXES gstreamer-${GSTREAMER_ABI_VERSION})
+
+find_path(GSTREAMER_gstconfig_INCLUDE_DIR
+ gst/gstconfig.h
+ HINTS ${PKG_GSTREAMER_INCLUDE_DIRS} ${PKG_GSTREAMER_INCLUDEDIR}
+ PATH_SUFFIXES gstreamer-${GSTREAMER_ABI_VERSION})
+
+set(GSTREAMER_INCLUDE_DIRS ${GSTREAMER_INCLUDE_DIR} ${GSTREAMER_gstconfig_INCLUDE_DIR})
+list(REMOVE_DUPLICATES GSTREAMER_INCLUDE_DIRS)
+
+if (PKG_GSTREAMER_PLUGIN_DIR)
+ set(_GSTREAMER_PLUGIN_DIR ${PKG_GSTREAMER_PLUGIN_DIR})
+else()
+ get_filename_component(_GSTREAMER_LIB_DIR ${GSTREAMER_LIBRARY} PATH)
+ set(_GSTREAMER_PLUGIN_DIR ${_GSTREAMER_LIB_DIR}/gstreamer-${GSTREAMER_ABI_VERSION})
+endif()
+
+set(GSTREAMER_PLUGIN_DIR ${_GSTREAMER_PLUGIN_DIR}
+ CACHE PATH "The path to the gstreamer plugins installation directory")
+
+mark_as_advanced(GSTREAMER_LIBRARY
+ GSTREAMER_INCLUDE_DIR
+ GSTREAMER_gstconfig_INCLUDE_DIR
+ GSTREAMER_PLUGIN_DIR)
+
+
+# Find additional libraries
+include(MacroFindGStreamerLibrary)
+
+macro(_find_gst_component _name _header)
+ find_gstreamer_library(${_name} ${_header} ${GSTREAMER_ABI_VERSION} ${GStreamer_FIND_QUIETLY})
+ set(_GSTREAMER_EXTRA_VARIABLES ${_GSTREAMER_EXTRA_VARIABLES}
+ GSTREAMER_${_name}_LIBRARY GSTREAMER_${_name}_INCLUDE_DIR)
+endmacro()
+
+foreach(_component ${GStreamer_FIND_COMPONENTS})
+ if (${_component} STREQUAL "base")
+ _find_gst_component(BASE gstbasesink.h)
+ elseif (${_component} STREQUAL "check")
+ _find_gst_component(CHECK gstcheck.h)
+ elseif (${_component} STREQUAL "controller")
+ _find_gst_component(CONTROLLER gstargbcontrolbinding.h)
+ elseif (${_component} STREQUAL "net")
+ _find_gst_component(NET gstnet.h)
+ else()
+ message (AUTHOR_WARNING "FindGStreamerPluginsBase.cmake: Invalid component \"${_component}\" was specified")
+ endif()
+endforeach()
+
+
+# Version check
+if (GStreamer_FIND_VERSION)
+ if (PKG_GSTREAMER_FOUND)
+ if("${PKG_GSTREAMER_VERSION}" VERSION_LESS "${GStreamer_FIND_VERSION}")
+ if(NOT GStreamer_FIND_QUIETLY)
+ message(STATUS "Found GStreamer version ${PKG_GSTREAMER_VERSION}, but at least version ${GStreamer_FIND_VERSION} is required")
+ endif()
+ set(GSTREAMER_VERSION_COMPATIBLE FALSE)
+ else()
+ set(GSTREAMER_VERSION_COMPATIBLE TRUE)
+ endif()
+ elseif(GSTREAMER_INCLUDE_DIR)
+ include(CheckCXXSourceCompiles)
+
+ set(CMAKE_REQUIRED_INCLUDES ${GSTREAMER_INCLUDE_DIR})
+ string(REPLACE "." "," _comma_version ${GStreamer_FIND_VERSION})
+ # Hack to invalidate the cached value
+ set(GSTREAMER_VERSION_COMPATIBLE GSTREAMER_VERSION_COMPATIBLE)
+
+ check_cxx_source_compiles("
+#define G_BEGIN_DECLS
+#define G_END_DECLS
+#include <gst/gstversion.h>
+
+#if GST_CHECK_VERSION(${_comma_version})
+int main() { return 0; }
+#else
+# error \"GStreamer version incompatible\"
+#endif
+" GSTREAMER_VERSION_COMPATIBLE)
+
+ if (NOT GSTREAMER_VERSION_COMPATIBLE AND NOT GStreamer_FIND_QUIETLY)
+ message(STATUS "GStreamer ${GStreamer_FIND_VERSION} is required, but the version found is older")
+ endif()
+ else()
+ # We didn't find gstreamer at all
+ set(GSTREAMER_VERSION_COMPATIBLE FALSE)
+ endif()
+else()
+ # No version constrain was specified, thus we consider the version compatible
+ set(GSTREAMER_VERSION_COMPATIBLE TRUE)
+endif()
+
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(GStreamer DEFAULT_MSG
+ GSTREAMER_LIBRARY GSTREAMER_INCLUDE_DIRS
+ GSTREAMER_VERSION_COMPATIBLE ${_GSTREAMER_EXTRA_VARIABLES})
diff --git a/cmake/modules/MacroFindGStreamerLibrary.cmake b/cmake/modules/MacroFindGStreamerLibrary.cmake
new file mode 100644
index 00000000..dd14385b
--- /dev/null
+++ b/cmake/modules/MacroFindGStreamerLibrary.cmake
@@ -0,0 +1,77 @@
+# - macro find_gstreamer_library
+#
+# Copyright (c) 2010, Collabora Ltd.
+# @author George Kiagiadakis <george.kiagiadakis@collabora.co.uk>
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1. Redistributions of source code must retain the copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+macro(find_gstreamer_library _name _header _abi_version _quiet)
+ string(TOLOWER ${_name} _lower_name)
+ string(TOUPPER ${_name} _upper_name)
+
+ if (GSTREAMER_${_upper_name}_LIBRARY AND GSTREAMER_${_upper_name}_INCLUDE_DIR)
+ set(_GSTREAMER_${_upper_name}_QUIET TRUE)
+ else()
+ set(_GSTREAMER_${_upper_name}_QUIET FALSE)
+ endif()
+
+ if (PKG_CONFIG_FOUND)
+ pkg_check_modules(PKG_GSTREAMER_${_upper_name} QUIET gstreamer-${_lower_name}-${_abi_version})
+ endif()
+
+ find_library(GSTREAMER_${_upper_name}_LIBRARY
+ NAMES gst${_lower_name}-${_abi_version}
+ HINTS ${PKG_GSTREAMER_${_upper_name}_LIBRARY_DIRS}
+ ${PKG_GSTREAMER_${_upper_name}_LIBDIR}
+ )
+
+ find_path(GSTREAMER_${_upper_name}_INCLUDE_DIR
+ gst/${_lower_name}/${_header}
+ HINTS ${PKG_GSTREAMER_${_upper_name}_INCLUDE_DIRS}
+ ${PKG_GSTREAMER_${_upper_name}_INCLUDEDIR}
+ PATH_SUFFIXES gstreamer-${_abi_version}
+ )
+
+ if (GSTREAMER_${_upper_name}_LIBRARY AND GSTREAMER_${_upper_name}_INCLUDE_DIR)
+ set(GSTREAMER_${_upper_name}_LIBRARY_FOUND TRUE)
+ else()
+ set(GSTREAMER_${_upper_name}_LIBRARY_FOUND FALSE)
+ endif()
+
+ if (NOT _GSTREAMER_${_upper_name}_QUIET AND NOT _quiet)
+ if (GSTREAMER_${_upper_name}_LIBRARY)
+ message(STATUS "Found GSTREAMER_${_upper_name}_LIBRARY: ${GSTREAMER_${_upper_name}_LIBRARY}")
+ else()
+ message(STATUS "Could NOT find GSTREAMER_${_upper_name}_LIBRARY")
+ endif()
+
+ if (GSTREAMER_${_upper_name}_INCLUDE_DIR)
+ message(STATUS "Found GSTREAMER_${_upper_name}_INCLUDE_DIR: ${GSTREAMER_${_upper_name}_INCLUDE_DIR}")
+ else()
+ message(STATUS "Could NOT find GSTREAMER_${_upper_name}_INCLUDE_DIR")
+ endif()
+ endif()
+
+ mark_as_advanced(GSTREAMER_${_upper_name}_LIBRARY GSTREAMER_${_upper_name}_INCLUDE_DIR)
+endmacro()