Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: 4bc70da4d0
Fetching contributors…

Cannot retrieve contributors at this time

file 156 lines (137 sloc) 4.711 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=4

KDE_HANDBOOK="optional"
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 test +utils"

# 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)
)
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
dev-util/pkgconfig
test? ( >=dev-cpp/gmock-1.4.0 )
"
RDEPEND="${COMMONDEPEND}
$(add_kdebase_dep phonon-kde)
!media-sound/amarok-utils
"

# tests don't currently build when MySQL embedded collection is disabled
REQUIRED_USE="test? ( embedded )"

src_prepare() {
# only released versions have handbooks bundled
if [[ ${PV} != *9999* ]]; then
# 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."
fi

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
# we already have test in IUSE, prevent 2nd compilation in src test
mycmakeargs=(
-DWITH_PLAYER=ON
-DWITH_Libgcrypt=OFF
-DWITH_Mygpo-qt=OFF
$(cmake-utils_use embedded WITH_MYSQL_EMBEDDED)
$(cmake-utils_use test KDE4_BUILD_TESTS)
$(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
}

src_test() {
# prevent 2nd compilation, we have already built tests if USE=test

local excluded_tests="testmetafiletrack|testsqlscanmanager|testsqluserplaylistprovider"
einfo "Following tests are currently excluded:"
einfo " * termatafiletrack: fails"
einfo " * testsqlscanmanager: takes too long (60s and more)"
einfo " * testsqluserplaylistprovider: fails"

# sometimes tests timeout after 1500s; make the waiting shorter
cmake-utils_src_test --timeout 120 --exclude-regex "${excluded_tests}"
}

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
}
Something went wrong with that request. Please try again.