blob: 039aebc0dc1aec6156fb1eea77df8cb55be24e5d [file] [log] [blame]
From da48b7fceed0238884f341530b5f4d84005dab57 Mon Sep 17 00:00:00 2001
From: Alex Merry <alex.merry@kde.org>
Date: Sun, 18 Oct 2015 15:21:45 +0100
Subject: [PATCH] Fix finding recent versions of GStreamer.
Newer versions of GStreamer put gst-config.h under
lib/gstreamer-1.0/include, so we need to make sure that directory will
be added to the include path as well.
REVIEW: 125690
---
cmake/FindGStreamer.cmake | 26 +++++++++++++++++++++-----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/cmake/FindGStreamer.cmake b/cmake/FindGStreamer.cmake
index d7243d4..e30c349 100644
--- a/cmake/FindGStreamer.cmake
+++ b/cmake/FindGStreamer.cmake
@@ -36,6 +36,27 @@ FIND_PATH(GSTREAMER_INCLUDE_DIR gst/gst.h
PATH_SUFFIXES gstreamer-1.0
)
+IF (NOT GSTREAMER_INCLUDE_DIR)
+ MESSAGE(STATUS "GStreamer: WARNING: include dir not found")
+ENDIF (NOT GSTREAMER_INCLUDE_DIR)
+
+# Newer versions of GStreamer put gst-config.h under lib/gstreamer-1.0/include
+FIND_PATH(GSTREAMER_CONF_INCLUDE_DIR gst/gstconfig.h
+ PATHS
+ ${PKG_GSTREAMER_INCLUDE_DIRS}
+ PATH_SUFFIXES gstreamer-1.0
+ )
+
+IF (NOT GSTREAMER_CONF_INCLUDE_DIR)
+ MESSAGE(STATUS "GStreamer: WARNING: gstconfig.h not found")
+ENDIF (NOT GSTREAMER_CONF_INCLUDE_DIR)
+
+IF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_CONF_INCLUDE_DIR)
+ IF (NOT GSTREAMER_CONF_INCLUDE_DIR STREQUAL GSTREAMER_INCLUDE_DIR)
+ LIST(APPEND GSTREAMER_INCLUDE_DIR "${GSTREAMER_CONF_INCLUDE_DIR}")
+ ENDIF()
+ENDIF (GSTREAMER_INCLUDE_DIR AND GSTREAMER_CONF_INCLUDE_DIR)
+
FIND_LIBRARY(GSTREAMER_LIBRARIES NAMES gstreamer-1.0
PATHS
${PKG_GSTREAMER_LIBRARY_DIRS}
@@ -51,11 +72,6 @@ FIND_LIBRARY(GSTREAMER_APP_LIBRARY NAMES gstapp-1.0
${PKG_GSTREAMER_LIBRARY_DIRS}
)
-IF (GSTREAMER_INCLUDE_DIR)
-ELSE (GSTREAMER_INCLUDE_DIR)
- MESSAGE(STATUS "GStreamer: WARNING: include dir not found")
-ENDIF (GSTREAMER_INCLUDE_DIR)
-
IF (GSTREAMER_LIBRARIES)
ELSE (GSTREAMER_LIBRARIES)
MESSAGE(STATUS "GStreamer: WARNING: library not found")
--
2.4.10