commit: daef64167a5a1bdbec0010d7bef3820321f639bf Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Tue Apr 10 13:22:14 2018 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Tue Apr 10 13:22:14 2018 +0000 URL: https://gitweb.gentoo.org/proj/kde-sunset.git/commit/?id=daef6416
media-libs/phonon*: Import from Gentoo ebuild repo media-libs/phonon-gstreamer/metadata.xml | 8 ++ .../phonon-gstreamer-4.9.0-r1.ebuild | 88 ++++++++++++++ ...on-qt7-0_pre20110424-QWidget-cast-dynamic.patch | 28 +++++ .../files/phonon-qt7-0_pre20110424-darwin11.patch | 29 +++++ .../phonon-qt7/files/phonon-qt7-noshow.patch | 17 +++ media-libs/phonon-qt7/metadata.xml | 5 + .../phonon-qt7/phonon-qt7-0_pre20110424.ebuild | 40 +++++++ media-libs/phonon-vlc/metadata.xml | 5 + media-libs/phonon-vlc/phonon-vlc-0.9.1-r1.ebuild | 81 +++++++++++++ .../phonon/files/phonon-4.7.0-plugin-install.patch | 13 ++ media-libs/phonon/metadata.xml | 9 ++ media-libs/phonon/phonon-4.9.1-r1.ebuild | 132 +++++++++++++++++++++ 12 files changed, 455 insertions(+) diff --git a/media-libs/phonon-gstreamer/metadata.xml b/media-libs/phonon-gstreamer/metadata.xml new file mode 100644 index 0000000..547d2ad --- /dev/null +++ b/media-libs/phonon-gstreamer/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> + <use> + <flag name="network">Enable network streaming support via libsoup</flag> + </use> +</pkgmetadata> diff --git a/media-libs/phonon-gstreamer/phonon-gstreamer-4.9.0-r1.ebuild b/media-libs/phonon-gstreamer/phonon-gstreamer-4.9.0-r1.ebuild new file mode 100644 index 0000000..c24ca2f --- /dev/null +++ b/media-libs/phonon-gstreamer/phonon-gstreamer-4.9.0-r1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_PN="phonon-backend-gstreamer" +MY_P=${MY_PN}-${PV} + +if [[ ${PV} != *9999* ]]; then + SRC_URI="mirror://kde/stable/phonon/${MY_PN}/${PV}/${MY_P}.tar.xz" + KEYWORDS="alpha amd64 arm ~arm64 ppc ppc64 x86 ~amd64-fbsd ~x86-fbsd ~x64-macos" +else + EGIT_REPO_URI=( "git://anongit.kde.org/${PN}" ) + inherit git-r3 +fi + +inherit cmake-utils multibuild + +DESCRIPTION="Phonon GStreamer backend" +HOMEPAGE="https://phonon.kde.org/" + +LICENSE="LGPL-2.1+ || ( LGPL-2.1 LGPL-3 )" +SLOT="0" +IUSE="alsa debug +network qt4 +qt5" + +REQUIRED_USE="|| ( qt4 qt5 )" + +RDEPEND=" + dev-libs/glib:2 + dev-libs/libxml2:2 + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + >=media-libs/phonon-4.9.0[qt4?,qt5?] + media-plugins/gst-plugins-meta:1.0[alsa?,ogg,vorbis] + virtual/opengl + network? ( media-plugins/gst-plugins-soup:1.0 ) + qt4? ( + >=dev-qt/qtcore-4.8.7-r2:4[glib] + >=dev-qt/qtgui-4.8.7:4[glib] + >=dev-qt/qtopengl-4.8.7:4 + !<dev-qt/qtwebkit-4.10.4:4[gstreamer] + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtopengl:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + ) +" +DEPEND="${RDEPEND} + virtual/pkgconfig +" + +pkg_setup() { + if use qt4 && [[ $(gcc-major-version) -lt 5 ]] ; then + ewarn "A GCC version older than 5 was detected. There may be trouble. See also Gentoo bug #595618" + fi + + MULTIBUILD_VARIANTS=( $(usev qt4) $(usev qt5) ) +} + +src_configure() { + myconfigure() { + local mycmakeargs=() + if [[ ${MULTIBUILD_VARIANT} = qt4 ]]; then + mycmakeargs+=( -DPHONON_BUILD_PHONON4QT5=OFF ) + fi + if [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then + mycmakeargs+=( -DPHONON_BUILD_PHONON4QT5=ON ) + fi + cmake-utils_src_configure + } + + multibuild_foreach_variant myconfigure +} + +src_compile() { + multibuild_foreach_variant cmake-utils_src_compile +} + +src_test() { + multibuild_foreach_variant cmake-utils_src_test +} + +src_install() { + multibuild_foreach_variant cmake-utils_src_install +} diff --git a/media-libs/phonon-qt7/files/phonon-qt7-0_pre20110424-QWidget-cast-dynamic.patch b/media-libs/phonon-qt7/files/phonon-qt7-0_pre20110424-QWidget-cast-dynamic.patch new file mode 100644 index 0000000..ae22202 --- /dev/null +++ b/media-libs/phonon-qt7/files/phonon-qt7-0_pre20110424-QWidget-cast-dynamic.patch @@ -0,0 +1,28 @@ +Revert commit: + +commit b22b86f6940d2605e78398eca4ae05c3ea44a92c +Author: Ritt Konstantin <ritt...@gmail.com> +Date: Thu Jun 10 07:38:14 2010 +0400 + + fix build with -fno-rtti + + m_renderDrawWidget object inherits QWidget and can be safely static_cast-ed + +as it yields in: + +error: invalid static_cast from type ‘Phonon::QT7::IVideoRenderDrawWidget*’ to type ‘QWidget*’ + + +diff --git a/qt7/videowidget.mm b/qt7/videowidget.mm +index 736dcdf..e471140 100644 +--- a/qt7/videowidget.mm ++++ b/qt7/videowidget.mm +@@ -578,7 +578,7 @@ public: + PhononAutoReleasePool pool; + updateDrawFrameRect(); + if (m_renderDrawWidget) +- static_cast<QWidget *>(m_renderDrawWidget)->resize(size()); ++ dynamic_cast<QWidget *>(m_renderDrawWidget)->resize(size()); + break; } + case QEvent::Paint:{ + PhononAutoReleasePool pool; diff --git a/media-libs/phonon-qt7/files/phonon-qt7-0_pre20110424-darwin11.patch b/media-libs/phonon-qt7/files/phonon-qt7-0_pre20110424-darwin11.patch new file mode 100644 index 0000000..6d1a562 --- /dev/null +++ b/media-libs/phonon-qt7/files/phonon-qt7-0_pre20110424-darwin11.patch @@ -0,0 +1,29 @@ +disable AUGraphAddNode, it needs an AudioComponent iso Component +need a definition for gnuOrtho2D + +--- phonon-qt7/qt7/audionode.mm ++++ phonon-qt7/qt7/audionode.mm +@@ -69,9 +69,9 @@ + + OSStatus err = noErr; + #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 +- if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) +- err = AUGraphAddNode(m_audioGraph->audioGraphRef(), &description, &m_auNode); +- else ++// if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_5) ++// err = AUGraphAddNode(m_audioGraph->audioGraphRef(), &description, &m_auNode); ++// else + #endif + err = AUGraphNewNode(m_audioGraph->audioGraphRef(), &description, 0, 0, &m_auNode); + +--- phonon-qt7/qt7/videowidget.mm ++++ phonon-qt7/qt7/videowidget.mm +@@ -35,6 +35,8 @@ + #import <AppKit/NSImage.h> + #import <QTKit/QTMovieView.h> + ++#import <OpenGL/glu.h> ++ + ///////////////////////////////////////////////////////////////////////////////////////// + + #ifdef QT_MAC_USE_COCOA // Rendering to a QTMovieView can only be done in Cocoa diff --git a/media-libs/phonon-qt7/files/phonon-qt7-noshow.patch b/media-libs/phonon-qt7/files/phonon-qt7-noshow.patch new file mode 100644 index 0000000..e05c2c4 --- /dev/null +++ b/media-libs/phonon-qt7/files/phonon-qt7-noshow.patch @@ -0,0 +1,17 @@ +diff -ruN phonon-qt7.orig/CMakeLists.txt phonon-qt7/CMakeLists.txt +--- phonon-qt7.orig/CMakeLists.txt 2011-04-24 20:22:59.000000000 +0200 ++++ phonon-qt7/CMakeLists.txt 2011-04-24 20:42:15.000000000 +0200 +@@ -2,6 +2,8 @@ + + cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR) + ++set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") ++ + find_package(Phonon REQUIRED) + find_package(OpenGL REQUIRED) + +@@ -17,4 +19,3 @@ + add_subdirectory(qt7) + endif (Q_WS_MAC) + +-macro_display_feature_log() diff --git a/media-libs/phonon-qt7/metadata.xml b/media-libs/phonon-qt7/metadata.xml new file mode 100644 index 0000000..7a38bb9 --- /dev/null +++ b/media-libs/phonon-qt7/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> +</pkgmetadata> diff --git a/media-libs/phonon-qt7/phonon-qt7-0_pre20110424.ebuild b/media-libs/phonon-qt7/phonon-qt7-0_pre20110424.ebuild new file mode 100644 index 0000000..e844131 --- /dev/null +++ b/media-libs/phonon-qt7/phonon-qt7-0_pre20110424.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit cmake-utils + +DESCRIPTION="Phonon QuickTime7 backend" +HOMEPAGE="https://projects.kde.org/projects/kdesupport/phonon/phonon-quicktime" +SRC_URI="https://dev.gentoo.org/~dilfridge/distfiles/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +KEYWORDS="~ppc-macos ~x64-macos" +SLOT="0" +IUSE="debug" + +RDEPEND=">=media-libs/phonon-4.5" +DEPEND="${RDEPEND} + >=dev-util/automoc-0.9.87 + media-libs/opengl-apple + sys-devel/gcc-apple[objc] + virtual/pkgconfig +" + +# needs OpenGL, how do I specify this properly? +# I just depended on opengl-apple, hope this is what you meant -- grobian + +S="${WORKDIR}/${PN}" + +PATCHES=( + "${FILESDIR}/${PN}-noshow.patch" + "${FILESDIR}"/${P}-QWidget-cast-dynamic.patch + "${FILESDIR}"/${P}-darwin11.patch +) + +src_prepare() { + cmake-utils_src_prepare # for PATCHES + sed -i -e "/^include_directories/s:): ${EPREFIX}/usr/include):" \ + CMakeLists.txt || die +} diff --git a/media-libs/phonon-vlc/metadata.xml b/media-libs/phonon-vlc/metadata.xml new file mode 100644 index 0000000..7a38bb9 --- /dev/null +++ b/media-libs/phonon-vlc/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> +</pkgmetadata> diff --git a/media-libs/phonon-vlc/phonon-vlc-0.9.1-r1.ebuild b/media-libs/phonon-vlc/phonon-vlc-0.9.1-r1.ebuild new file mode 100644 index 0000000..528dd62 --- /dev/null +++ b/media-libs/phonon-vlc/phonon-vlc-0.9.1-r1.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_PN="phonon-backend-vlc" +MY_P="${MY_PN}-${PV}" + +if [[ ${PV} != *9999* ]]; then + SRC_URI="mirror://kde/stable/phonon/${MY_PN}/${PV}/${MY_P}.tar.xz" + KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86" + S="${WORKDIR}/${MY_P}" +else + EGIT_REPO_URI=( "git://anongit.kde.org/${PN}" ) + inherit git-r3 +fi + +inherit cmake-utils multibuild + +DESCRIPTION="Phonon VLC backend" +HOMEPAGE="https://phonon.kde.org/" + +LICENSE="LGPL-2.1+ || ( LGPL-2.1 LGPL-3 )" +SLOT="0" +IUSE="debug qt4 +qt5" + +REQUIRED_USE="|| ( qt4 qt5 )" + +RDEPEND=" + >=media-libs/phonon-4.9.0[qt4=,qt5=] + >=media-video/vlc-2.0.1:=[dbus,ogg,vorbis] + qt4? ( + >=dev-qt/qtcore-4.8.7-r2:4 + >=dev-qt/qtgui-4.8.7:4 + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + ) +" +DEPEND="${RDEPEND} + virtual/pkgconfig +" + +DOCS=( AUTHORS ) + +pkg_setup() { + if use qt4 && [[ $(gcc-major-version) -lt 5 ]] ; then + ewarn "A GCC version older than 5 was detected. There may be trouble. See also Gentoo bug #595618" + fi + + MULTIBUILD_VARIANTS=( $(usev qt4) $(usev qt5) ) +} + +src_configure() { + myconfigure() { + local mycmakeargs=() + if [[ ${MULTIBUILD_VARIANT} = qt4 ]]; then + mycmakeargs+=( -DPHONON_BUILD_PHONON4QT5=OFF ) + fi + if [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then + mycmakeargs+=( -DPHONON_BUILD_PHONON4QT5=ON ) + fi + cmake-utils_src_configure + } + + multibuild_foreach_variant myconfigure +} + +src_compile() { + multibuild_foreach_variant cmake-utils_src_compile +} + +src_test() { + multibuild_foreach_variant cmake-utils_src_test +} + +src_install() { + multibuild_foreach_variant cmake-utils_src_install +} diff --git a/media-libs/phonon/files/phonon-4.7.0-plugin-install.patch b/media-libs/phonon/files/phonon-4.7.0-plugin-install.patch new file mode 100644 index 0000000..5f478ca --- /dev/null +++ b/media-libs/phonon/files/phonon-4.7.0-plugin-install.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/FindPhononInternal.cmake b/cmake/FindPhononInternal.cmake +index 3245e9b..3427c62 100644 +--- a/cmake/FindPhononInternal.cmake ++++ b/cmake/FindPhononInternal.cmake +@@ -178,7 +178,7 @@ if (PHONON_BUILD_PHONON4QT5) + endif (PHONON_BUILD_PHONON4QT5) + set(BIN_INSTALL_DIR "bin" ) # CACHE PATH "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)") + set(LIB_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}" ) # CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed" +-set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)") ++set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/qt4" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/qt4)") + if (PHONON_BUILD_PHONON4QT5) + set(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/qt5" CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/qt5)" FORCE) + endif(PHONON_BUILD_PHONON4QT5) diff --git a/media-libs/phonon/metadata.xml b/media-libs/phonon/metadata.xml new file mode 100644 index 0000000..99863eb --- /dev/null +++ b/media-libs/phonon/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> + <use> + <flag name="designer">Install plugin for <pkg>dev-qt/designer</pkg></flag> + <flag name="vlc">Install VLC Phonon backend</flag> + </use> +</pkgmetadata> diff --git a/media-libs/phonon/phonon-4.9.1-r1.ebuild b/media-libs/phonon/phonon-4.9.1-r1.ebuild new file mode 100644 index 0000000..7f91cb3 --- /dev/null +++ b/media-libs/phonon/phonon-4.9.1-r1.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +if [[ ${PV} != *9999* ]]; then + SRC_URI="mirror://kde/stable/phonon/${PV}/${P}.tar.xz" + KEYWORDS="alpha amd64 arm ~arm64 ~ia64 ppc ppc64 ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +else + EGIT_REPO_URI=( "git://anongit.kde.org/${PN}" ) + inherit git-r3 +fi + +inherit cmake-multilib multibuild qmake-utils + +DESCRIPTION="KDE multimedia API" +HOMEPAGE="https://phonon.kde.org/" + +LICENSE="|| ( LGPL-2.1 LGPL-3 )" +SLOT="0" +IUSE="debug designer gstreamer pulseaudio qt4 +qt5 +vlc" + +REQUIRED_USE="|| ( qt4 qt5 )" + +RDEPEND=" + !!dev-qt/qtphonon:4 + pulseaudio? ( + dev-libs/glib:2[${MULTILIB_USEDEP}] + >=media-sound/pulseaudio-0.9.21[glib,${MULTILIB_USEDEP}] + ) + qt4? ( + >=dev-qt/qtcore-4.8.7-r2:4[${MULTILIB_USEDEP}] + >=dev-qt/qtdbus-4.8.7:4[${MULTILIB_USEDEP}] + >=dev-qt/qtgui-4.8.7:4[${MULTILIB_USEDEP}] + designer? ( >=dev-qt/designer-4.8.7:4[${MULTILIB_USEDEP}] ) + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtdbus:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + designer? ( dev-qt/designer:5 ) + ) +" +DEPEND="${RDEPEND} + virtual/pkgconfig[${MULTILIB_USEDEP}] + qt5? ( kde-frameworks/extra-cmake-modules:5 ) +" +PDEPEND=" + gstreamer? ( >=media-libs/phonon-gstreamer-4.9.0[qt4?,qt5?] ) + vlc? ( >=media-libs/phonon-vlc-0.9.0[qt4?,qt5?] ) +" + +PATCHES=( "${FILESDIR}/${PN}-4.7.0-plugin-install.patch" ) + +pkg_setup() { + MULTIBUILD_VARIANTS=( $(usev qt4) $(usev qt5) ) +} + +multilib_src_configure() { + local mycmakeargs=( + -DPHONON_BUILD_DESIGNER_PLUGIN=$(usex designer) + -DPHONON_INSTALL_QT_EXTENSIONS_INTO_SYSTEM_QT=TRUE + -DWITH_GLIB2=$(usex pulseaudio) + -DWITH_PulseAudio=$(usex pulseaudio) + -DQT_QMAKE_EXECUTABLE="$(${QT_MULTIBUILD_VARIANT}_get_bindir)"/qmake + ) + + if [[ ${QT_MULTIBUILD_VARIANT} = qt4 ]]; then + mycmakeargs+=( + -DPHONON_BUILD_PHONON4QT5=OFF + -DWITH_QZeitgeist=OFF + ) + fi + if [[ ${QT_MULTIBUILD_VARIANT} = qt5 ]]; then + mycmakeargs+=( + -DPHONON_BUILD_PHONON4QT5=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Declarative=ON + ) + fi + + cmake-utils_src_configure +} + +src_configure() { + myconfigure() { + local QT_MULTIBUILD_VARIANT=${MULTIBUILD_VARIANT} + if [[ ${QT_MULTIBUILD_VARIANT} = qt4 ]]; then + cmake-multilib_src_configure + elif [[ ${QT_MULTIBUILD_VARIANT} = qt5 ]]; then + multilib_src_configure + fi + } + + multibuild_foreach_variant myconfigure +} + +src_compile() { + mycompile() { + if [[ ${MULTIBUILD_VARIANT} = qt4 ]]; then + cmake-multilib_src_compile + elif [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then + cmake-utils_src_compile + fi + } + + multibuild_foreach_variant mycompile +} + +src_test() { + mytest() { + if [[ ${MULTIBUILD_VARIANT} = qt4 ]]; then + cmake-multilib_src_test + elif [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then + cmake-utils_src_test + fi + } + + multibuild_foreach_variant mytest +} + +src_install() { + myinstall() { + if [[ ${MULTIBUILD_VARIANT} = qt4 ]]; then + cmake-multilib_src_install + elif [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then + cmake-utils_src_install + fi + } + + multibuild_foreach_variant myinstall +}