From 401a8315b1f4160234c680e9485c106790834e29 Mon Sep 17 00:00:00 2001 From: Chris Reffett Date: Fri, 22 Jun 2012 01:29:47 +0000 Subject: Rev bump, added patch to fix Amarok crashing for bug 395575. Remove old. (Portage version: 2.2.0_alpha110/cvs/Linux x86_64) --- media-sound/amarok/ChangeLog | 8 +- media-sound/amarok/amarok-2.5.0-r2.ebuild | 144 -------------------- media-sound/amarok/amarok-2.5.0-r3.ebuild | 145 +++++++++++++++++++++ .../amarok/files/amarok-2.5.0-qtdebug.patch | 55 ++++++++ 4 files changed, 207 insertions(+), 145 deletions(-) delete mode 100644 media-sound/amarok/amarok-2.5.0-r2.ebuild create mode 100644 media-sound/amarok/amarok-2.5.0-r3.ebuild create mode 100644 media-sound/amarok/files/amarok-2.5.0-qtdebug.patch diff --git a/media-sound/amarok/ChangeLog b/media-sound/amarok/ChangeLog index 3f2ae38967b3..060990984d34 100644 --- a/media-sound/amarok/ChangeLog +++ b/media-sound/amarok/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for media-sound/amarok # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-sound/amarok/ChangeLog,v 1.424 2012/05/26 15:22:19 alexxy Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-sound/amarok/ChangeLog,v 1.425 2012/06/22 01:29:47 creffett Exp $ + +*amarok-2.5.0-r3 (22 Jun 2012) + + 22 Jun 2012; -amarok-2.5.0-r2.ebuild, + +amarok-2.5.0-r3.ebuild, +files/amarok-2.5.0-qtdebug.patch: + Rev bump, added patch to fix Amarok crashing for bug 395575. Remove old. 26 May 2012; Alexey Shvetsov amarok-2.5.0-r2.ebuild, metadata.xml: diff --git a/media-sound/amarok/amarok-2.5.0-r2.ebuild b/media-sound/amarok/amarok-2.5.0-r2.ebuild deleted file mode 100644 index 922098bdb624..000000000000 --- a/media-sound/amarok/amarok-2.5.0-r2.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-sound/amarok/amarok-2.5.0-r2.ebuild,v 1.3 2012/05/26 15:22:19 alexxy Exp $ - -EAPI=4 - -KDE_LINGUAS="af ar ast be bg bs ca ca@valencia cs csb da de el en_GB eo es et -eu fa fi fr ga gl he hr hu is it ja km ko ku lt lv mai ml ms nb nds ne nl nn -oc pa pl pt pt_BR ro ru se si sk sl sq sr sr@ijekavian sr@ijekavianlatin -sr@Latn sv tg th tr ug uk wa zh_CN zh_TW" -KDE_SCM="git" -KDE_REQUIRED="never" -inherit flag-o-matic kde4-base - -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.bz2" - KEYWORDS="~amd64 ~ppc ~x86" -else - KEYWORDS="" -fi - -LICENSE="GPL-2" -SLOT="4" -IUSE="cdda daap debug +embedded ipod lastfm mp3tunes mtp ofa opengl semantic-desktop +utils" - -# Tests require gmock - http://code.google.com/p/gmock/ -# It's not in the tree yet -RESTRICT="test" - -# ipod requires gdk enabled and also gtk compiled in libgpod -COMMONDEPEND=" - app-crypt/qca:2 - >=app-misc/strigi-0.5.7 - $(add_kdebase_dep kdelibs 'opengl?,semantic-desktop?') - $(add_kdebase_dep kdebase-kioslaves) - >=media-libs/taglib-1.6.1[asf,mp4] - >=media-libs/taglib-extras-1.0.1 - sys-libs/zlib - >=virtual/mysql-5.1[embedded?] - x11-libs/qt-script - >=x11-libs/qtscriptgenerator-0.1.0 - cdda? ( - $(add_kdebase_dep libkcddb) - $(add_kdebase_dep libkcompactdisc) - || ( - $(add_kdebase_dep kdemultimedia-kioslaves) - $(add_kdebase_dep audiocd-kio) - ) - ) - ipod? ( >=media-libs/libgpod-0.7.0[gtk] ) - lastfm? ( >=media-libs/liblastfm-0.3.0 ) - mp3tunes? ( - dev-libs/glib:2 - dev-libs/libxml2 - dev-libs/openssl - net-libs/loudmouth - net-misc/curl - x11-libs/qt-core[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 -" -RDEPEND="${COMMONDEPEND} - $(add_kdebase_dep phonon-kde) - !media-sound/amarok-utils -" - -PATCHES=( - "${FILESDIR}/${PN}-2.5.0-kde48.patch" -) - -src_prepare() { - # en locale is special in a way that it is always enabled. English Amarok - # handbook however lies in the doc/en_US folder and thus is not picked - # up by kde4-functions eclass. Rename it. - sed -e 's:add_subdirectory(en_US):add_subdirectory(en):' \ - -i "${S}/doc/CMakeLists.txt" \ - || die "Replacing en_US by en in doc/CMakeLists.txt failed." - mv "${S}/doc/en_US" "${S}/doc/en" || die "Moving doc/en_US to doc/en failed." - - kde4-base_src_prepare -} - -src_configure() { - # Append minimal-toc cflag for ppc64, see bug 280552 and 292707 - use ppc64 && append-flags -mminimal-toc - local mycmakeargs - - # Mygpo-qt not yet in portage, add IUSE when available - mycmakeargs=( - -DWITH_PLAYER=ON - -DWITH_Libgcrypt=OFF - -DWITH_Mygpo-qt=OFF - $(cmake-utils_use embedded WITH_MYSQL_EMBEDDED) - $(cmake-utils_use_with ipod) - $(cmake-utils_use_with ipod Gdk) - $(cmake-utils_use_with lastfm LibLastFm) - $(cmake-utils_use_with mtp) - $(cmake-utils_use_with mp3tunes MP3Tunes) - $(cmake-utils_use_with ofa LibOFA) - ) - - mycmakeargs+=( - $(cmake-utils_use_with utils UTILITIES) - ) - # $(cmake-utils_use_with semantic-desktop Nepomuk) - # $(cmake-utils_use_with semantic-desktop Soprano) - - kde4-base_src_configure -} - -pkg_postinst() { - kde4-base_pkg_postinst - - if use daap; then - echo - elog "You have installed amarok with daap support." - elog "You may be interested in installing www-servers/mongrel as well." - echo - fi - - 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/amarok-2.5.0-r3.ebuild b/media-sound/amarok/amarok-2.5.0-r3.ebuild new file mode 100644 index 000000000000..94c24925b4fc --- /dev/null +++ b/media-sound/amarok/amarok-2.5.0-r3.ebuild @@ -0,0 +1,145 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-sound/amarok/amarok-2.5.0-r3.ebuild,v 1.1 2012/06/22 01:29:47 creffett Exp $ + +EAPI=4 + +KDE_LINGUAS="af ar ast be bg bs ca ca@valencia cs csb da de el en_GB eo es et +eu fa fi fr ga gl he hr hu is it ja km ko ku lt lv mai ml ms nb nds ne nl nn +oc pa pl pt pt_BR ro ru se si sk sl sq sr sr@ijekavian sr@ijekavianlatin +sr@Latn sv tg th tr ug uk wa zh_CN zh_TW" +KDE_SCM="git" +KDE_REQUIRED="never" +inherit flag-o-matic kde4-base + +DESCRIPTION="Advanced audio player based on KDE framework." +HOMEPAGE="http://amarok.kde.org/" +if [[ ${PV} != *9999* ]]; then + SRC_URI="mirror://kde/unstable/${PN}/${PV}/src/${P}.tar.bz2" + KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +else + KEYWORDS="" +fi + +LICENSE="GPL-2" +SLOT="4" +IUSE="cdda daap debug +embedded ipod lastfm mp3tunes mtp ofa opengl semantic-desktop +utils" + +# Tests require gmock - http://code.google.com/p/gmock/ +# It's not in the tree yet +RESTRICT="test" + +# ipod requires gdk enabled and also gtk compiled in libgpod +COMMONDEPEND=" + app-crypt/qca:2 + >=app-misc/strigi-0.5.7 + $(add_kdebase_dep kdelibs 'opengl?,semantic-desktop?') + $(add_kdebase_dep kdebase-kioslaves) + >=media-libs/taglib-1.6.1[asf,mp4] + >=media-libs/taglib-extras-1.0.1 + sys-libs/zlib + >=virtual/mysql-5.1[embedded?] + x11-libs/qt-script + >=x11-libs/qtscriptgenerator-0.1.0 + cdda? ( + $(add_kdebase_dep libkcddb) + $(add_kdebase_dep libkcompactdisc) + || ( + $(add_kdebase_dep kdemultimedia-kioslaves) + $(add_kdebase_dep audiocd-kio) + ) + ) + ipod? ( >=media-libs/libgpod-0.7.0[gtk] ) + lastfm? ( >=media-libs/liblastfm-0.3.0 ) + mp3tunes? ( + dev-libs/glib:2 + dev-libs/libxml2 + dev-libs/openssl + net-libs/loudmouth + net-misc/curl + x11-libs/qt-core[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 +" +RDEPEND="${COMMONDEPEND} + $(add_kdebase_dep phonon-kde) + !media-sound/amarok-utils +" + +PATCHES=( + "${FILESDIR}/${PN}-2.5.0-kde48.patch" + "${FILESDIR}/${PN}-2.5.0-qtdebug.patch" +) + +src_prepare() { + # en locale is special in a way that it is always enabled. English Amarok + # handbook however lies in the doc/en_US folder and thus is not picked + # up by kde4-functions eclass. Rename it. + sed -e 's:add_subdirectory(en_US):add_subdirectory(en):' \ + -i "${S}/doc/CMakeLists.txt" \ + || die "Replacing en_US by en in doc/CMakeLists.txt failed." + mv "${S}/doc/en_US" "${S}/doc/en" || die "Moving doc/en_US to doc/en failed." + + kde4-base_src_prepare +} + +src_configure() { + # Append minimal-toc cflag for ppc64, see bug 280552 and 292707 + use ppc64 && append-flags -mminimal-toc + local mycmakeargs + + # Mygpo-qt not yet in portage, add IUSE when available + mycmakeargs=( + -DWITH_PLAYER=ON + -DWITH_Libgcrypt=OFF + -DWITH_Mygpo-qt=OFF + $(cmake-utils_use embedded WITH_MYSQL_EMBEDDED) + $(cmake-utils_use_with ipod) + $(cmake-utils_use_with ipod Gdk) + $(cmake-utils_use_with lastfm LibLastFm) + $(cmake-utils_use_with mtp) + $(cmake-utils_use_with mp3tunes MP3Tunes) + $(cmake-utils_use_with ofa LibOFA) + ) + + mycmakeargs+=( + $(cmake-utils_use_with utils UTILITIES) + ) + # $(cmake-utils_use_with semantic-desktop Nepomuk) + # $(cmake-utils_use_with semantic-desktop Soprano) + + kde4-base_src_configure +} + +pkg_postinst() { + kde4-base_pkg_postinst + + if use daap; then + echo + elog "You have installed amarok with daap support." + elog "You may be interested in installing www-servers/mongrel as well." + echo + fi + + 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.5.0-qtdebug.patch b/media-sound/amarok/files/amarok-2.5.0-qtdebug.patch new file mode 100644 index 000000000000..8c6e0223b0dd --- /dev/null +++ b/media-sound/amarok/files/amarok-2.5.0-qtdebug.patch @@ -0,0 +1,55 @@ +Patch originally from KDE commit d1a1c80370e4132c26fa636308822fdb3aa1b2e6, modified to work with current Amarok. +diff -ruN /root/amarok-2.5.0/ChangeLog amarok-2.5.0/ChangeLog +--- a/amarok-2.5.0/ChangeLog 2011-12-15 02:36:48.000000000 -0500 ++++ b/amarok-2.5.0/ChangeLog 2012-06-21 21:05:29.871236927 -0400 +@@ -8,6 +8,7 @@ + Playlist's layout items. + + BUGFIXES: ++ * Fix crash on start when Qt is build with debugging assertions. (BR 285720) + * Do not crash when iPod doesn't have a master playlist. (BR 288936) + * Fix Last.fm not finding KDE Wallet. (BR 286741) + * Put a border around bottom toolbars, visually separating them from +diff -ruN /root/amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.cpp amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.cpp +--- a/amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.cpp 2011-12-15 02:36:48.000000000 -0500 ++++ b/amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.cpp 2012-06-21 21:05:09.810237474 -0400 +@@ -223,23 +223,15 @@ + { + int &rowValue = groupList[insertedProxyRow-1]; + if( idx.row() <= rowValue ) +- { + //increment the rows that come after the new row since they moved one place up. + rowValue++; +- } + else +- { + break; +- } + } + + if( updatedGroups.contains( i.key() ) ) +- { +- //the row needs to be added to this group +- beginInsertRows( index( i.key() ), insertedProxyRow, insertedProxyRow ); +- groupList.insert( insertedProxyRow, idx.row() ); +- endInsertRows(); +- } ++ // we're inside beginInsertRows() or beginInsertRows(), don't re-enter it. ++ groupList.insert( insertedProxyRow, idx.row() ); + } + + return updatedGroups; +diff -ruN /root/amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.h amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.h +--- a/amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.h 2011-12-15 02:36:48.000000000 -0500 ++++ b/amarok-2.5.0/src/browsers/playlistbrowser/QtGroupingProxy.h 2012-06-21 21:04:42.778238198 -0400 +@@ -38,8 +38,8 @@ + void setGroupedColumn( int groupedColumn ); + + /* QAbstractProxyModel methods */ +- virtual QModelIndex index( int, int c = 0, +- const QModelIndex& parent = QModelIndex() ) const; ++ virtual QModelIndex index( int row, int column = 0, ++ const QModelIndex& parent = QModelIndex() ) const; + virtual Qt::ItemFlags flags( const QModelIndex &idx ) const; + virtual QModelIndex parent( const QModelIndex &idx ) const; + virtual int rowCount( const QModelIndex &idx = QModelIndex() ) const; -- cgit v1.2.3-65-gdbad