[gentoo-commits] repo/gentoo:master commit in: media-libs/qt-gstreamer/files/, media-libs/qt-gstreamer/
commit: fec3ff95d51445705b18ffa921880d55442c2355 Author: Andreas Sturmlechner gentoo org> AuthorDate: Sat Oct 19 14:51:35 2019 + Commit: Andreas Sturmlechner gentoo org> CommitDate: Sat Oct 19 15:51:38 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fec3ff95 media-libs/qt-gstreamer: Fix build with >=gstreamer-16 and clang Fix BDEPEND while at it. Thanks-to: Peter Levine gmail.com> Closes: https://bugs.gentoo.org/698022 Package-Manager: Portage-2.3.77, Repoman-2.3.17 Signed-off-by: Andreas Sturmlechner gentoo.org> .../files/qt-gstreamer-1.2.0-clang-38.patch| 67 ++ .../files/qt-gstreamer-1.2.0-gstreamer16.patch | 25 .../qt-gstreamer/qt-gstreamer-1.2.0-r4.ebuild | 9 ++- 3 files changed, 98 insertions(+), 3 deletions(-) diff --git a/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-clang-38.patch b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-clang-38.patch new file mode 100644 index 000..977a09d7f6c --- /dev/null +++ b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-clang-38.patch @@ -0,0 +1,67 @@ +From fc159e5c4c8ffeabdc7319514c6bb19c9c9e1d3b Mon Sep 17 00:00:00 2001 +From: Aleix Pol +Date: Mon, 13 Jun 2016 10:36:34 +0200 +Subject: [PATCH] Fix build with Clang 3.8 + +error: invalid suffix on literal; C++11 requires a space between literal and identifier + +https://bugzilla.gnome.org/show_bug.cgi?id=767578 +--- + elements/gstqtvideosink/delegates/basedelegate.cpp | 2 +- + elements/gstqtvideosink/delegates/qwidgetvideosinkdelegate.cpp | 2 +- + elements/gstqtvideosink/gstqtquick2videosink.cpp | 2 +- + elements/gstqtvideosink/gstqtvideosinkbase.cpp | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/elements/gstqtvideosink/delegates/basedelegate.cpp b/elements/gstqtvideosink/delegates/basedelegate.cpp +index 7dde59c..65f364c 100644 +--- a/elements/gstqtvideosink/delegates/basedelegate.cpp b/elements/gstqtvideosink/delegates/basedelegate.cpp +@@ -155,7 +155,7 @@ bool BaseDelegate::event(QEvent *event) + BufferEvent *bufEvent = dynamic_cast(event); + Q_ASSERT(bufEvent); + +-GST_TRACE_OBJECT(m_sink, "Received buffer %"GST_PTR_FORMAT, bufEvent->buffer); ++GST_TRACE_OBJECT(m_sink, "Received buffer %" GST_PTR_FORMAT, bufEvent->buffer); + + if (isActive()) { + gst_buffer_replace (&m_buffer, bufEvent->buffer); +diff --git a/elements/gstqtvideosink/delegates/qwidgetvideosinkdelegate.cpp b/elements/gstqtvideosink/delegates/qwidgetvideosinkdelegate.cpp +index 8f23dc2..c42513f 100644 +--- a/elements/gstqtvideosink/delegates/qwidgetvideosinkdelegate.cpp b/elements/gstqtvideosink/delegates/qwidgetvideosinkdelegate.cpp +@@ -36,7 +36,7 @@ QWidget *QWidgetVideoSinkDelegate::widget() const + + void QWidgetVideoSinkDelegate::setWidget(QWidget *widget) + { +-GST_LOG_OBJECT(m_sink, "Setting \"widget\" property to %"GST_PTR_FORMAT, widget); ++GST_LOG_OBJECT(m_sink, "Setting \"widget\" property to %" GST_PTR_FORMAT, widget); + + if (m_widget) { + m_widget.data()->removeEventFilter(this); +diff --git a/elements/gstqtvideosink/gstqtquick2videosink.cpp b/elements/gstqtvideosink/gstqtquick2videosink.cpp +index 7889fbf..bedc074 100644 +--- a/elements/gstqtvideosink/gstqtquick2videosink.cpp b/elements/gstqtvideosink/gstqtquick2videosink.cpp +@@ -248,7 +248,7 @@ gst_qt_quick2_video_sink_show_frame(GstVideoSink *sink, GstBuffer *buffer) + { + GstQtQuick2VideoSink *self = GST_QT_QUICK2_VIDEO_SINK (sink); + +-GST_TRACE_OBJECT(self, "Posting new buffer (%"GST_PTR_FORMAT") for rendering.", buffer); ++GST_TRACE_OBJECT(self, "Posting new buffer (%" GST_PTR_FORMAT ") for rendering.", buffer); + + QCoreApplication::postEvent(self->priv->delegate, new BaseDelegate::BufferEvent(buffer)); + +diff --git a/elements/gstqtvideosink/gstqtvideosinkbase.cpp b/elements/gstqtvideosink/gstqtvideosinkbase.cpp +index 118d0a2..a707e02 100644 +--- a/elements/gstqtvideosink/gstqtvideosinkbase.cpp b/elements/gstqtvideosink/gstqtvideosinkbase.cpp +@@ -207,7 +207,7 @@ GstFlowReturn GstQtVideoSinkBase::show_frame(GstVideoSink *video_sink, GstBuffer + { + GstQtVideoSinkBase *sink = GST_QT_VIDEO_SINK_BASE(video_sink); + +-GST_TRACE_OBJECT(sink, "Posting new buffer (%"GST_PTR_FORMAT") for rendering.", buffer); ++GST_TRACE_OBJECT(sink, "Posting new buffer (%" GST_PTR_FORMAT ") for rendering.", buffer); + + QCoreApplication::postEvent(sink->delegate, new BaseDelegate::BufferEvent(buffer)); + diff --git a/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-gstreamer16.patch b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-gstreamer16.patch new file mode 100644 index 000..6bb24048f6c --- /dev/null +++ b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-gstreamer16.patch @@ -0,0 +1,25 @@ +From 6e4fb2f3fcfb453c5522c66457ac5ed8c3b1b05c Mon Sep 1
[gentoo-commits] repo/gentoo:master commit in: media-libs/qt-gstreamer/files/, media-libs/qt-gstreamer/
commit: 6e829a8265e2085b82c71d3c6181e87938c45f1f Author: Andreas Sturmlechner gentoo org> AuthorDate: Sun Apr 15 22:14:47 2018 + Commit: Andreas Sturmlechner gentoo org> CommitDate: Sun Apr 15 22:16:14 2018 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e829a82 media-libs/qt-gstreamer: Fix cmake w/ Qt 5.11_beta3 Package-Manager: Portage-2.3.28, Repoman-2.3.9 .../files/qt-gstreamer-1.2.0-qt-5.11b3.patch | 50 .../qt-gstreamer/qt-gstreamer-1.2.0-r4.ebuild | 55 ++ 2 files changed, 105 insertions(+) diff --git a/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-qt-5.11b3.patch b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-qt-5.11b3.patch new file mode 100644 index 000..537516db8ec --- /dev/null +++ b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-qt-5.11b3.patch @@ -0,0 +1,50 @@ +From 8ed5453b1b5e6e8b3c202fb03c2084e04e5f6b44 Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner +Date: Sun, 15 Apr 2018 23:46:50 +0200 +Subject: [PATCH] Fix cmake with Qt 5.11_beta3 (dropping qt5_use_modules) + +--- + cmake/modules/FindQt4or5.cmake | 16 +--- + 1 file changed, 13 insertions(+), 3 deletions(-) + +diff --git a/cmake/modules/FindQt4or5.cmake b/cmake/modules/FindQt4or5.cmake +index 855a48e..d73b3a2 100644 +--- a/cmake/modules/FindQt4or5.cmake b/cmake/modules/FindQt4or5.cmake +@@ -49,6 +49,16 @@ macro(_qt4or5_component_names_to_qt_components output_list) + list(REMOVE_DUPLICATES ${output_list}) + endmacro() + ++macro(_qt5_component_names_to_target_link_libaries output_list) ++ foreach(module ${ARGN}) ++_qt4or5_component_name_to_qt_component(qt_component ${module}) ++list(APPEND ${output_list} Qt5::${qt_component}) ++unset(qt_component) ++ endforeach() ++ ++ list(REMOVE_DUPLICATES ${output_list}) ++endmacro() ++ + if (Qt4or5_FIND_QUIETLY) + set(_Qt4or5_FIND_PACKAGE_ARGS QUIET) + endif() +@@ -195,13 +205,13 @@ function(qt4or5_use_modules _target _link_type) + set(modules ${_link_type} ${ARGN}) + endif() + +- _qt4or5_component_names_to_qt_components(real_modules ${modules}) +- + # Verify that Qt5 was found before using qt5_* macros, + # otherwise cmake will bail out if they are undefined. + if (${QT_VERSION} STREQUAL "5" AND Qt5Core_FOUND) +-qt5_use_modules(${_target} ${link_type} ${real_modules}) ++_qt5_component_names_to_target_link_libaries(real_modules ${modules}) ++target_link_libraries(${_target} ${link_type} ${real_modules}) + elseif (${QT_VERSION} STREQUAL "4") ++_qt4or5_component_names_to_qt_components(real_modules ${modules}) + qt4_use_modules(${_target} ${link_type} ${real_modules}) + endif() + endfunction() +-- +2.17.0 + diff --git a/media-libs/qt-gstreamer/qt-gstreamer-1.2.0-r4.ebuild b/media-libs/qt-gstreamer/qt-gstreamer-1.2.0-r4.ebuild new file mode 100644 index 000..474afd4d00d --- /dev/null +++ b/media-libs/qt-gstreamer/qt-gstreamer-1.2.0-r4.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +if [[ ${PV} != ** ]]; then + SRC_URI="https://gstreamer.freedesktop.org/src/qt-gstreamer/${P}.tar.xz"; + KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86" +else + EGIT_REPO_URI="https://anongit.freedesktop.org/git/gstreamer/qt-gstreamer.git"; + inherit git-r3 +fi + +inherit cmake-utils + +DESCRIPTION="C++ bindings for GStreamer with a Qt-style API" +HOMEPAGE="https://gstreamer.freedesktop.org/modules/qt-gstreamer.html"; + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="test" + +RDEPEND=" + dev-libs/glib:2 + dev-libs/boost:= + dev-qt/qtcore:5 + dev-qt/qtdeclarative:5 + dev-qt/qtgui:5 + dev-qt/qtopengl:5 + dev-qt/qtwidgets:5 + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 +" +DEPEND="${RDEPEND} + test? ( dev-qt/qttest:5 ) +" + +PATCHES=( + "${FILESDIR}/${P}-gstreamer15.patch" + "${FILESDIR}/${P}-boost157.patch" + "${FILESDIR}/${P}-qt-5.11b3.patch" +) + +# bug 497880 +RESTRICT="test" + +src_configure() { + local mycmakeargs=( + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Declarative=ON + -DQTGSTREAMER_EXAMPLES=OFF + -DQTGSTREAMER_TESTS=$(usex test) + -DQT_VERSION=5 + ) + cmake-utils_src_configure +}
[gentoo-commits] repo/gentoo:master commit in: media-libs/qt-gstreamer/files/, media-libs/qt-gstreamer/
commit: 8bde2c6895dd6bef4c5d7bee86f584b19fcbc080 Author: Michael Palimaka gentoo org> AuthorDate: Wed Nov 4 12:25:41 2015 + Commit: Michael Palimaka gentoo org> CommitDate: Wed Nov 4 12:26:03 2015 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8bde2c68 media-libs/qt-gstreamer: backport patch from upstream solving build failure with >=media-libs/gstreamer-1.5 Gentoo-bug: 564652 Package-Manager: portage-2.2.20.1 .../files/qt-gstreamer-1.2.0-gstreamer15.patch | 39 ++ .../qt-gstreamer/qt-gstreamer-1.2.0-r1.ebuild | 5 ++- 2 files changed, 43 insertions(+), 1 deletion(-) diff --git a/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-gstreamer15.patch b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-gstreamer15.patch new file mode 100644 index 000..6e875f6 --- /dev/null +++ b/media-libs/qt-gstreamer/files/qt-gstreamer-1.2.0-gstreamer15.patch @@ -0,0 +1,39 @@ +From e2ca8094aa8d0eac1c3a98df66fe94ce0c754088 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jos=C3=A9=20Manuel=20Santamar=C3=ADa?= +Date: Fri, 2 Oct 2015 15:00:29 +0300 +Subject: Fix compilation with GStreamer >= 1.5.1 + +apply gstreamer pkg-config definitions To ensure gstreamer builds correctly, +pick up its cflags in FindGstreamer and apply them to the build as definitions + +https://lists.ubuntu.com/archives/kubuntu-devel/2015-August/009819.html + +https://bugzilla.gnome.org/show_bug.cgi?id=751382 + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 4d3e7dd..5744015 100644 +--- a/CMakeLists.txt b/CMakeLists.txt +@@ -106,6 +106,7 @@ find_package(GObject) + macro_log_feature(GOBJECT_FOUND "GObject" "Required to build QtGLib" "http://www.gtk.org/"; TRUE) + + set(CMAKE_REQUIRED_INCLUDES ${QTGSTREAMER_INCLUDES}) ++add_definitions(${GSTREAMER_DEFINITIONS}) + include(CheckCXXSourceCompiles) + check_cxx_source_compiles(" + #include +diff --git a/cmake/modules/FindGStreamer.cmake b/cmake/modules/FindGStreamer.cmake +index dab91ac..fe6cde1 100644 +--- a/cmake/modules/FindGStreamer.cmake b/cmake/modules/FindGStreamer.cmake +@@ -36,6 +36,7 @@ if (PKG_CONFIG_FOUND) + exec_program(${PKG_CONFIG_EXECUTABLE} + ARGS --variable pluginsdir gstreamer-${GSTREAMER_ABI_VERSION} + OUTPUT_VARIABLE PKG_GSTREAMER_PLUGIN_DIR) ++set(GSTREAMER_DEFINITIONS ${PKG_GSTREAMER_CFLAGS}) + endif() + + find_library(GSTREAMER_LIBRARY +-- +cgit v0.10.2 + diff --git a/media-libs/qt-gstreamer/qt-gstreamer-1.2.0-r1.ebuild b/media-libs/qt-gstreamer/qt-gstreamer-1.2.0-r1.ebuild index a33c8fe..3995ad0 100644 --- a/media-libs/qt-gstreamer/qt-gstreamer-1.2.0-r1.ebuild +++ b/media-libs/qt-gstreamer/qt-gstreamer-1.2.0-r1.ebuild @@ -53,7 +53,10 @@ DEPEND=" ) " -PATCHES=( "${FILESDIR}/${P}-boost157.patch" ) +PATCHES=( + "${FILESDIR}/${P}-boost157.patch" + "${FILESDIR}/${P}-gstreamer15.patch" +) # bug 497880 RESTRICT="test"