summaryrefslogtreecommitdiff
path: root/media-sound
diff options
context:
space:
mode:
authorJohannes Huber <johu@gentoo.org>2016-05-18 23:49:44 +0200
committerJohannes Huber <johu@gentoo.org>2016-05-18 23:50:43 +0200
commit87c151e54bf1f78cfc333845ca69df569cf27bc9 (patch)
tree4b1bd008da699d11cb61ed20317ba7c8888f3d16 /media-sound
parent808cbd7400602ae010e5ab0dcdaf8db9cfa87a99 (diff)
downloadgentoo-87c151e54bf1f78cfc333845ca69df569cf27bc9.tar.gz
gentoo-87c151e54bf1f78cfc333845ca69df569cf27bc9.tar.xz
media-sound/amarok: Fix script console crash
Revision bump adds upstream patch which fixes crash when script console is enabled. Gentoo-bug: 583016 Package-Manager: portage-2.3.0_rc1
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/amarok/amarok-2.8.90-r2.ebuild133
-rw-r--r--media-sound/amarok/files/amarok-2.8.90-scriptconsole.patch33
2 files changed, 166 insertions, 0 deletions
diff --git a/media-sound/amarok/amarok-2.8.90-r2.ebuild b/media-sound/amarok/amarok-2.8.90-r2.ebuild
new file mode 100644
index 00000000000..04e5ff614a0
--- /dev/null
+++ b/media-sound/amarok/amarok-2.8.90-r2.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+KDE_LINGUAS="bs ca ca@valencia cs da de el en_GB es et eu fi fr ga gl hu it ja
+lt lv nb nl pa pl pt pt_BR ro ru sl sr sr@ijekavian sr@ijekavianlatin sr@latin
+sv tr uk zh_CN zh_TW"
+KDE_REQUIRED="never"
+KDE_HANDBOOK="optional"
+VIRTUALX_REQUIRED="test"
+VIRTUALDBUS_TEST="true"
+inherit flag-o-matic kde4-base pax-utils
+
+DESCRIPTION="Advanced audio player based on KDE framework"
+HOMEPAGE="http://amarok.kde.org/"
+if [[ ${PV} != *9999* ]]; then
+ SRC_URI="mirror://kde/stable/${PN}/${PV}/src/${P}.tar.xz"
+ KEYWORDS="~amd64 ~ppc ~x86"
+else
+ KEYWORDS=""
+fi
+
+LICENSE="GPL-2"
+SLOT="4"
+IUSE="cdda debug +embedded ipod lastfm mp3tunes mtp ofa opengl test +utils"
+
+if [[ ${KDE_BUILD_TYPE} == live ]]; then
+ RESTRICT="test"
+fi
+
+# ipod requires gdk enabled and also gtk compiled in libgpod
+COMMONDEPEND="
+ app-crypt/qca:2[qt4(+)]
+ $(add_kdebase_dep kdelibs 'opengl?' 4.8.4)
+ $(add_kdeapps_dep kdebase-kioslaves)
+ >=media-libs/taglib-1.7[asf,mp4]
+ >=media-libs/taglib-extras-1.0.1
+ sys-libs/zlib
+ >=virtual/mysql-5.1[embedded?]
+ >=dev-qt/qtcore-4.8:4
+ >=dev-qt/qtdbus-4.8:4
+ >=dev-qt/qtscript-4.8:4
+ >=x11-libs/qtscriptgenerator-0.1.0
+ cdda? (
+ $(add_kdeapps_dep libkcddb)
+ $(add_kdeapps_dep libkcompactdisc)
+ $(add_kdeapps_dep audiocd-kio)
+ )
+ ipod? ( >=media-libs/libgpod-0.7.0[gtk] )
+ lastfm? ( >=media-libs/liblastfm-1.0.3[qt4(+)] )
+ mp3tunes? (
+ dev-libs/glib:2
+ dev-libs/libxml2
+ dev-libs/openssl:0
+ net-libs/loudmouth
+ net-misc/curl
+ >=dev-qt/qtcore-4.8.4:4[glib]
+ )
+ mtp? ( >=media-libs/libmtp-1.0.0 )
+ ofa? ( >=media-libs/libofa-0.9.0 )
+ opengl? ( virtual/opengl )
+"
+DEPEND="${COMMONDEPEND}
+ dev-util/automoc
+ virtual/pkgconfig
+ test? ( dev-cpp/gmock )
+"
+RDEPEND="${COMMONDEPEND}
+ !media-sound/amarok-utils
+ $(add_kdeapps_dep phonon-kde)
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.8.0-taglib110.patch"
+ "${FILESDIR}/${P}-mysql-embedded.patch"
+ "${FILESDIR}/${P}-mysqld-rpath.patch"
+ "${FILESDIR}/${P}-scriptconsole.patch"
+)
+
+src_configure() {
+ # Append minimal-toc cflag for ppc64, see bug 280552 and 292707
+ use ppc64 && append-flags -mminimal-toc
+
+ local mycmakeargs=(
+ -DWITH_PLAYER=ON
+ -DWITH_Libgcrypt=OFF
+ -DWITH_SPECTRUM_ANALYZER=OFF
+ -DWITH_NepomukCore=OFF
+ -DWITH_Soprano=OFF
+ -DWITH_MYSQL_EMBEDDED=$(usex embedded)
+ -DWITH_IPOD=$(usex ipod)
+ -DWITH_GDKPixBuf=$(usex ipod)
+ -DWITH_LibLastFm=$(usex lastfm)
+ -DWITH_MP3Tunes=$(usex mp3tunes)
+ -DWITH_Mtp=$(usex mtp)
+ -DWITH_LibOFA=$(usex ofa)
+ -DWITH_UTILITIES=$(usex utils)
+ )
+
+ # bug 581554: add libmysqld location for rpath patch
+ use embedded && mycmakeargs+=( -DMYSQLD_DIR="${EPREFIX}/usr/$(get_libdir)/mysql" )
+
+ kde4-base_src_configure
+}
+
+src_install() {
+ kde4-base_src_install
+
+ # bug 481592
+ pax-mark m "${ED}"/usr/bin/amarok
+}
+
+pkg_postinst() {
+ kde4-base_pkg_postinst
+
+ if ! use embedded; then
+ echo
+ elog "You've disabled the amarok support for embedded mysql DBs."
+ elog "You'll have to configure amarok to use an external db server."
+ echo
+ elog "Please read http://amarok.kde.org/wiki/MySQL_Server for details on how"
+ elog "to configure the external db and migrate your data from the embedded database."
+ echo
+
+ if has_version "virtual/mysql[minimal]"; then
+ elog "You built mysql with the minimal use flag, so it doesn't include the server."
+ elog "You won't be able to use the local mysql installation to store your amarok collection."
+ echo
+ fi
+ fi
+}
diff --git a/media-sound/amarok/files/amarok-2.8.90-scriptconsole.patch b/media-sound/amarok/files/amarok-2.8.90-scriptconsole.patch
new file mode 100644
index 00000000000..455146bdb5d
--- /dev/null
+++ b/media-sound/amarok/files/amarok-2.8.90-scriptconsole.patch
@@ -0,0 +1,33 @@
+From 2900fe47adde10999a6c0f907d73b00a1c1bd5b1 Mon Sep 17 00:00:00 2001
+From: Myriam Schweingruber <myriam@kde.org>
+Date: Wed, 18 May 2016 21:59:17 +0200
+Subject: [PATCH] Fix a crash in amarok when opening the Script Console
+
+The script console tries to write to a system folder instead of a user
+ folder. Note to devs: always make sure to test a system installation,
+ not just a local build.
+
+Thanks to Johannes Huber for the quick fix suggestion.
+
+BUG: 363176
+FIXED-IN: 2.9
+---
+ src/scripting/scriptconsole/ScriptConsole.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/scripting/scriptconsole/ScriptConsole.cpp b/src/scripting/scriptconsole/ScriptConsole.cpp
+index 6edd9a2..e4e0fab 100644
+--- a/src/scripting/scriptconsole/ScriptConsole.cpp
++++ b/src/scripting/scriptconsole/ScriptConsole.cpp
+@@ -161,7 +161,7 @@ ScriptConsole::ScriptConsole( QWidget *parent )
+ settings.endGroup();
+
+ if( m_savePath.isEmpty() )
+- m_savePath = KUrl( KStandardDirs::locate( "data", "amarok/scriptconsole/" ) ).path();
++ m_savePath = KUrl( KStandardDirs::locateLocal( "data", "amarok/scriptconsole/" ) ).path();
+
+ slotNewScript();
+ connect( m_debugger, SIGNAL(evaluationSuspended()), SLOT(slotEvaluationSuspended()) );
+--
+2.8.2
+