From f1bc53e6a0153146a2e321450c9f93a9b60ebfe8 Mon Sep 17 00:00:00 2001 From: Steven J Newbury Date: Mon, 6 Apr 2009 01:15:07 +0100 Subject: Add media-sound/phonon --- media-sound/phonon/ChangeLog | 51 ++++++++++++ media-sound/phonon/Manifest | 5 ++ media-sound/phonon/files/fix_nonascii_chars.patch | 95 +++++++++++++++++++++++ media-sound/phonon/metadata.xml | 5 ++ media-sound/phonon/phonon-4.3.1.ebuild | 62 +++++++++++++++ 5 files changed, 218 insertions(+) create mode 100644 media-sound/phonon/ChangeLog create mode 100644 media-sound/phonon/Manifest create mode 100644 media-sound/phonon/files/fix_nonascii_chars.patch create mode 100644 media-sound/phonon/metadata.xml create mode 100644 media-sound/phonon/phonon-4.3.1.ebuild (limited to 'media-sound') diff --git a/media-sound/phonon/ChangeLog b/media-sound/phonon/ChangeLog new file mode 100644 index 000000000..d3d17844f --- /dev/null +++ b/media-sound/phonon/ChangeLog @@ -0,0 +1,51 @@ +# ChangeLog for media-sound/phonon +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/media-sound/phonon/ChangeLog,v 1.11 2009/03/08 21:36:06 alexxy Exp $ + + 08 Mar 2009; Alexey Shvetsov -phonon-4.3.0-r1.ebuild: + Drop KDE 4.2.0 + +*phonon-4.3.1 (04 Mar 2009) + + 04 Mar 2009; Alexey Shvetsov +phonon-4.3.1.ebuild: + Bump KDE 4.2.1 + + 28 Feb 2009; Tomas Chvatal phonon-4.3.0-r1.ebuild: + Qt-opengl is hard dep since it is needed for tests too. Per bug #242884. + +*phonon-4.3.0-r1 (28 Feb 2009) + + 28 Feb 2009; Tomas Chvatal + +files/fix_nonascii_chars.patch, -phonon-4.2.0.ebuild, + -phonon-4.3.0.ebuild, +phonon-4.3.0-r1.ebuild: + Fix nonascii character named/taged files with xine playback. Per bug + #259825. + + 05 Feb 2009; Tomas Chvatal phonon-4.3.0.ebuild: + Fix -xine build. Per bug #257509. + + 01 Feb 2009; Jorge Manuel B. S. Vicetto + phonon-4.3.0.ebuild: + Restored ~ppc and ~ppc64 keywords to KDE-4.2.0 + +*phonon-4.3.0 (27 Jan 2009) + + 27 Jan 2009; Alexey Shvetsov +phonon-4.3.0.ebuild: + Bump to new phonon-4.3.0 + + 15 Nov 2008; Mike Frysinger phonon-4.2.0.ebuild: + Add ppc/ppc64 love #244306. + + 11 Oct 2008; Jorge Manuel B. S. Vicetto + phonon-4.2.0.ebuild: + Bumped gstreamer and gst-plugins-base dep to >=0.10.20. + +*phonon-4.2.0 (02 Oct 2008) + + 25 Oct 2008; Pieter Van den Abeele phonon-4.2.0.ebuild: + Keyworded ~ppc. Closes bug #244240 + + 02 Oct 2008; Jorge Manuel B. S. Vicetto + +metadata.xml, +phonon-4.2.0.ebuild: + media-sound + diff --git a/media-sound/phonon/Manifest b/media-sound/phonon/Manifest new file mode 100644 index 000000000..27e54f111 --- /dev/null +++ b/media-sound/phonon/Manifest @@ -0,0 +1,5 @@ +AUX fix_nonascii_chars.patch 3159 RMD160 cde38d5c7000618eefa910b9638ac6b51ed663f9 SHA1 4b520fbc8e42764225d1fe7ee73213e7bbf92f3f SHA256 5969e2766160c21565dfcef3dffb6c264a9031dc6364a580b9b452358d07d6de +DIST phonon-4.3.1.tar.bz2 575856 RMD160 d91cc7e994d4f6a143a7cd6c2a723b579b294141 SHA1 f7537e5280d0a4cc1348975daa7a7e45d833d45c SHA256 7fb6d9efad29d7ac390d539cd516177c26cc2f92ddb9b3a5d70f2c49fc15269a +EBUILD phonon-4.3.1.ebuild 1452 RMD160 b597db2c156e50dd46f11c107b25f31d4a355a92 SHA1 74d17605b5558bcae1dd723c198a73818b1f4b11 SHA256 cc00d33cd9c19c8ce25a5121d2226b7b866db87b2e6e8a3b946c9e1b7348e6e6 +MISC ChangeLog 1748 RMD160 e2f95ff62d97c5df958a6432dcdbf9a8faf043d0 SHA1 2ca476fd0b52f94528f18988271ec46b92124759 SHA256 c4017a4ef73c65fc395f9fc5469e74db696a9a9abd9fa43b99dedec9f34bf73f +MISC metadata.xml 156 RMD160 ecce3b981f150c45ae1e84e2d208e678d6124259 SHA1 b64f7c0b4e5db816d82ad19848f72118af129d35 SHA256 2f4da28506b9d4185f320f67a6191d30c7a921217ed4447ed46ea0bc4aefc79a diff --git a/media-sound/phonon/files/fix_nonascii_chars.patch b/media-sound/phonon/files/fix_nonascii_chars.patch new file mode 100644 index 000000000..d39e2ab5e --- /dev/null +++ b/media-sound/phonon/files/fix_nonascii_chars.patch @@ -0,0 +1,95 @@ +--- branches/phonon/4.3/xine/mediaobject.cpp 2009/02/10 09:11:04 924143 ++++ branches/phonon/4.3/xine/mediaobject.cpp 2009/02/10 09:17:28 924144 +@@ -317,6 +317,20 @@ + setSourceInternal(source, HardSwitch); + } + ++static QByteArray mrlEncode(QByteArray mrl) ++{ ++ for (int i = 0; i < mrl.size(); ++i) { ++ const unsigned char c = static_cast(mrl.at(i)); ++ if (c & 0x80 || c == '\\' || c < 32 || c == '%') { ++ char enc[4]; ++ qsnprintf(enc, 4, "%%%02X", c); ++ mrl = mrl.left(i) + QByteArray(enc, 3) + mrl.mid(i + 1); ++ i += 2; ++ } ++ } ++ return mrl; ++} ++ + void MediaObject::setSourceInternal(const MediaSource &source, HowToSetTheUrl how) + { + //debug() << Q_FUNC_INFO; +@@ -340,13 +354,18 @@ + m_stream->setError(Phonon::NormalError, tr("Cannot open media data at '%1'").arg(source.url().toString(QUrl::RemovePassword))); + return; + } +- switch (how) { +- case GaplessSwitch: +- m_stream->gaplessSwitchTo(source.url()); +- break; +- case HardSwitch: +- m_stream->setUrl(source.url()); +- break; ++ { ++ const QByteArray &mrl = (source.url().scheme() == QLatin1String("file") ? ++ "file:/" + mrlEncode(QFile::encodeName(source.url().toLocalFile())) : ++ source.url().toEncoded()); ++ switch (how) { ++ case GaplessSwitch: ++ m_stream->gaplessSwitchTo(mrl); ++ break; ++ case HardSwitch: ++ m_stream->setMrl(mrl); ++ break; ++ } + } + break; + case MediaSource::Disc: +--- branches/phonon/4.3/xine/xinestream.cpp 2009/02/10 09:11:04 924143 ++++ branches/phonon/4.3/xine/xinestream.cpp 2009/02/10 09:17:28 924144 +@@ -619,12 +619,6 @@ + } + + // called from main thread +-void XineStream::gaplessSwitchTo(const QUrl &url) +-{ +- gaplessSwitchTo(url.toEncoded()); +-} +- +-// called from main thread + void XineStream::gaplessSwitchTo(const QByteArray &mrl) + { + QCoreApplication::postEvent(this, new GaplessSwitchEvent(mrl)); +@@ -1707,12 +1701,6 @@ + } + + // called from main thread +-void XineStream::setUrl(const QUrl &url) +-{ +- setMrl(url.toEncoded()); +-} +- +-// called from main thread + void XineStream::setMrl(const QByteArray &mrl, StateForNewMrl sfnm) + { + debug() << Q_FUNC_INFO << mrl << ", " << sfnm; +--- branches/phonon/4.3/xine/xinestream.h 2009/02/10 09:11:04 924143 ++++ branches/phonon/4.3/xine/xinestream.h 2009/02/10 09:17:28 924144 +@@ -86,7 +86,6 @@ + //void needRewire(AudioPostList *postList); + void useGaplessPlayback(bool); + void useGapOf(int gap); +- void gaplessSwitchTo(const QUrl &url); + void gaplessSwitchTo(const QByteArray &mrl); + void closeBlocking(); + void aboutToDeleteVideoWidget(); +@@ -141,7 +140,6 @@ + + void unload(); + public slots: +- void setUrl(const QUrl &url); + void setMrl(const QByteArray &mrl, StateForNewMrl = StoppedState); + void play(); + void pause(); diff --git a/media-sound/phonon/metadata.xml b/media-sound/phonon/metadata.xml new file mode 100644 index 000000000..8d1e86a9c --- /dev/null +++ b/media-sound/phonon/metadata.xml @@ -0,0 +1,5 @@ + + + +kde + diff --git a/media-sound/phonon/phonon-4.3.1.ebuild b/media-sound/phonon/phonon-4.3.1.ebuild new file mode 100644 index 000000000..2f2ad793d --- /dev/null +++ b/media-sound/phonon/phonon-4.3.1.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-sound/phonon/phonon-4.3.1.ebuild,v 1.1 2009/03/04 19:01:55 alexxy Exp $ + +EAPI="2" +inherit cmake-utils multilib-native + +KDE_VERSION="4.2.1" + +DESCRIPTION="KDE multimedia API" +HOMEPAGE="http://phonon.kde.org" +SRC_URI="mirror://kde/stable/${KDE_VERSION}/src/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="debug gstreamer +xcb +xine" + +RDEPEND=" + !kde-base/phonon-xine + !x11-libs/qt-phonon:4 + >=x11-libs/qt-test-4.4.0:4 + >=x11-libs/qt-dbus-4.4.0:4 + >=x11-libs/qt-gui-4.4.0:4 + >=x11-libs/qt-opengl-4.4.0:4 + gstreamer? ( + media-libs/gstreamer + media-libs/gst-plugins-base + ) + xine? ( + >=media-libs/xine-lib-1.1.15-r1[xcb?] + xcb? ( x11-libs/libxcb ) + ) +" + +DEPEND="${RDEPEND} + >=kde-base/automoc-0.9.87 +" + +PATCHES=( "$FILESDIR/fix_nonascii_chars.patch" ) + +pkg_setup() { + if use !xine && use !gstreamer; then + die "you must at least select one backend for phonon" + fi +} + +multilib-native_src_configure_internal() { + mycmakeargs="${mycmakeargs} + $(cmake-utils_use_with gstreamer GStreamer) + $(cmake-utils_use_with gstreamer GStreamerPlugins) + $(cmake-utils_use_with xine Xine)" + + if use xine; then + mycmakeargs="${mycmakeargs} + $(cmake-utils_use_with xcb XCB)" + else + sed -i -e '/xine/d' \ + "${S}/CMakeLists.txt" || die "sed failed" + fi + cmake-utils_src_configure +} -- cgit v1.2.3-65-gdbad