Lines 2-80
Link Here
|
2 |
# Distributed under the terms of the GNU General Public License v2 |
2 |
# Distributed under the terms of the GNU General Public License v2 |
3 |
# $Id$ |
3 |
# $Id$ |
4 |
|
4 |
|
5 |
EAPI=5 |
5 |
EAPI=6 |
6 |
|
6 |
|
7 |
EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git" |
7 |
LANGS=" af ar be bg bn br bs ca cs cy da de el en_CA en_GB eo es es_AR et eu fa fi fr ga gl he hi hr hu hy ia id is it ja ka kk ko lt lv mr ms nb nl oc pa pl pt pt_BR ro ru sk sl sr sr@latin sv te tr uk uz vi zh_CN zh_TW" |
8 |
|
8 |
|
9 |
LANGS=" af ar be bg bn br bs ca cs cy da de el en_CA en_GB eo es et eu fa fi fr ga gl he he_IL hi hr hu hy ia id is it ja ka kk ko lt lv mr ms my nb nl oc pa pl pt pt_BR ro ru si_LK sk sl sr sr@latin sv te tr tr_TR uk uz vi zh_CN zh_TW" |
9 |
EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git" |
10 |
|
10 |
|
11 |
inherit cmake-utils flag-o-matic fdo-mime gnome2-utils virtualx |
11 |
inherit cmake-utils flag-o-matic fdo-mime gnome2-utils virtualx git-r3 |
12 |
[[ ${PV} == *9999* ]] && inherit git-2 |
|
|
13 |
|
12 |
|
14 |
DESCRIPTION="A modern music player and library organizer based on Amarok 1.4 and Qt4" |
13 |
DESCRIPTION="A modern music player and library organizer based on Amarok 1.4 and Qt4" |
15 |
HOMEPAGE="http://www.clementine-player.org https://github.com/clementine-player/Clementine" |
14 |
HOMEPAGE="http://www.clementine-player.org https://github.com/clementine-player/Clementine" |
16 |
[[ ${PV} == *9999* ]] || \ |
|
|
17 |
SRC_URI="https://github.com/clementine-player/Clementine/archive/${PV/_}.tar.gz -> ${P}.tar.gz" |
18 |
|
19 |
LICENSE="GPL-3" |
15 |
LICENSE="GPL-3" |
20 |
SLOT="0" |
16 |
SLOT="0" |
21 |
[[ ${PV} == *9999* ]] || \ |
17 |
KEYWORDS="" |
22 |
KEYWORDS="~amd64 ~x86" |
18 |
IUSE="ayatana box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm skydrive +qt4 qt5 system-sqlite test ubuntu-one +udisks wiimote" |
23 |
IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm skydrive test ubuntu-one +udisks wiimote" |
|
|
24 |
IUSE+="${LANGS// / linguas_}" |
19 |
IUSE+="${LANGS// / linguas_}" |
25 |
|
20 |
|
26 |
REQUIRED_USE=" |
21 |
REQUIRED_USE=" |
|
|
22 |
^^ ( qt4 qt5 ) |
27 |
udisks? ( dbus ) |
23 |
udisks? ( dbus ) |
28 |
wiimote? ( dbus ) |
24 |
wiimote? ( dbus ) |
29 |
" |
25 |
" |
30 |
|
26 |
|
31 |
# qca dep is temporary for bug #489850 |
27 |
# qca dep is temporary for bug #489850 |
32 |
COMMON_DEPEND=" |
28 |
COMMON_DEPEND=" |
33 |
dev-db/sqlite:= |
29 |
qt4? ( >=dev-qt/qtcore-4.5:4 |
|
|
30 |
>=dev-qt/qtgui-4.5:4 |
31 |
>=dev-qt/qtopengl-4.5:4 |
32 |
>=dev-qt/qtsql-4.5:4[sqlite] |
33 |
app-crypt/qca:2[qt4(+)] |
34 |
>=dev-libs/qjson-0.5[qt4] |
35 |
>=media-libs/libmygpo-qt-1.0.7[qt4] |
36 |
media-libs/libechonest[qt4] |
37 |
dbus? ( >=dev-qt/qtdbus-4.5:4 ) ) |
38 |
qt5? ( >=dev-qt/qtcore-5.1:5 |
39 |
>=dev-qt/qtgui-5.1:5 |
40 |
>=dev-qt/qtnetwork-5.1:5 |
41 |
>=dev-qt/qtopengl-5.1:5 |
42 |
>=dev-qt/qttranslations-5.1:5 |
43 |
>=dev-qt/qtsql-5.1:5[sqlite] |
44 |
>=dev-qt/qtwidgets-5.1:5 |
45 |
>=dev-qt/qtx11extras-5.1:5 |
46 |
>=dev-qt/qtxml-5.1:5 |
47 |
>=dev-qt/linguist-tools-5.1:5 |
48 |
app-crypt/qca:2[qt5(+)] |
49 |
>=dev-libs/qjson-0.5[qt5] |
50 |
>=media-libs/libmygpo-qt-1.0.8[qt5] |
51 |
>=media-libs/libechonest-2.3.0[qt5] |
52 |
dbus? ( >=dev-qt/qtdbus-5.1:5 ) ) |
53 |
|
54 |
dev-libs/crypto++ |
34 |
>=dev-libs/glib-2.24.1-r1 |
55 |
>=dev-libs/glib-2.24.1-r1 |
|
|
56 |
dev-libs/libspotify |
35 |
dev-libs/libxml2 |
57 |
dev-libs/libxml2 |
36 |
dev-libs/protobuf:= |
58 |
dev-libs/protobuf:= |
37 |
dev-libs/qjson |
59 |
dev-libs/qjson |
38 |
>=dev-qt/qtcore-4.5:4 |
|
|
39 |
>=dev-qt/qtgui-4.5:4 |
40 |
>=dev-qt/qtopengl-4.5:4 |
41 |
>=dev-qt/qtsql-4.5:4[sqlite] |
42 |
>=media-libs/chromaprint-0.6 |
60 |
>=media-libs/chromaprint-0.6 |
43 |
media-libs/gstreamer:1.0 |
61 |
media-libs/gst-plugins-base:0.10 |
44 |
media-libs/gst-plugins-base:1.0 |
62 |
media-libs/gstreamer:0.10 |
45 |
media-libs/libechonest:=[qt4] |
|
|
46 |
>=media-libs/libmygpo-qt-1.0.8 |
47 |
>=media-libs/taglib-1.8[mp4] |
63 |
>=media-libs/taglib-1.8[mp4] |
48 |
sys-libs/zlib |
|
|
49 |
virtual/glu |
64 |
virtual/glu |
50 |
virtual/opengl |
65 |
virtual/opengl |
51 |
x11-libs/libX11 |
66 |
ayatana? ( dev-libs/libindicate-qt ) |
52 |
cdda? ( dev-libs/libcdio ) |
67 |
cdda? ( dev-libs/libcdio ) |
53 |
dbus? ( >=dev-qt/qtdbus-4.5:4 ) |
|
|
54 |
ipod? ( >=media-libs/libgpod-0.8.0 ) |
68 |
ipod? ( >=media-libs/libgpod-0.8.0 ) |
55 |
lastfm? ( >=media-libs/liblastfm-1[qt4(+)] ) |
69 |
lastfm? ( >=media-libs/liblastfm-1 ) |
56 |
mtp? ( >=media-libs/libmtp-1.0.0 ) |
|
|
57 |
moodbar? ( sci-libs/fftw:3.0 ) |
70 |
moodbar? ( sci-libs/fftw:3.0 ) |
58 |
projectm? ( media-libs/glew:= ) |
71 |
mtp? ( >=media-libs/libmtp-1.0.0 ) |
59 |
>=dev-libs/crypto++-5.6.2-r4 |
72 |
projectm? ( media-libs/glew ) |
|
|
73 |
system-sqlite? ( dev-db/sqlite[fts3(+)] ) |
60 |
" |
74 |
" |
61 |
# now only presets are used, libprojectm is internal |
75 |
# now only presets are used, libprojectm is internal |
62 |
# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches |
76 |
# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches |
63 |
# r1966 "Compile with a static sqlite by default, since Qt 4.7 doesn't seem to expose the symbols we need to use FTS" |
77 |
# r1966 "Compile with a static sqlite by default, since Qt 4.7 doesn't seem to expose the symbols we need to use FTS" |
64 |
RDEPEND="${COMMON_DEPEND} |
78 |
RDEPEND="${COMMON_DEPEND} |
65 |
dbus? ( udisks? ( sys-fs/udisks:2 ) ) |
79 |
dbus? ( udisks? ( sys-fs/udisks:0 ) ) |
66 |
mms? ( media-plugins/gst-plugins-libmms:1.0 ) |
80 |
mms? ( media-plugins/gst-plugins-libmms:0.10 ) |
67 |
mtp? ( gnome-base/gvfs ) |
81 |
mtp? ( gnome-base/gvfs ) |
68 |
projectm? ( >=media-libs/libprojectm-1.2.0 ) |
82 |
projectm? ( >=media-libs/libprojectm-1.2.0 ) |
69 |
media-plugins/gst-plugins-meta:1.0 |
83 |
media-plugins/gst-plugins-meta:0.10 |
70 |
media-plugins/gst-plugins-soup:1.0 |
84 |
media-plugins/gst-plugins-gio:0.10 |
71 |
media-plugins/gst-plugins-taglib:1.0 |
85 |
media-plugins/gst-plugins-soup:0.10 |
|
|
86 |
media-plugins/gst-plugins-taglib:0.10 |
72 |
" |
87 |
" |
73 |
DEPEND="${COMMON_DEPEND} |
88 |
DEPEND="${COMMON_DEPEND} |
74 |
>=dev-libs/boost-1.39 |
89 |
>=dev-libs/boost-1.39 |
75 |
virtual/pkgconfig |
90 |
virtual/pkgconfig |
76 |
sys-devel/gettext |
91 |
sys-devel/gettext |
77 |
dev-qt/qttest:4 |
92 |
qt4? ( test? ( dev-qt/qttest:4 ) ) |
|
|
93 |
qt5? ( test? ( dev-qt/qttest:5 ) ) |
78 |
dev-cpp/gmock |
94 |
dev-cpp/gmock |
79 |
box? ( dev-cpp/sparsehash ) |
95 |
box? ( dev-cpp/sparsehash ) |
80 |
dropbox? ( dev-cpp/sparsehash ) |
96 |
dropbox? ( dev-cpp/sparsehash ) |
Lines 83-99
Link Here
|
83 |
ubuntu-one? ( dev-cpp/sparsehash ) |
99 |
ubuntu-one? ( dev-cpp/sparsehash ) |
84 |
test? ( gnome-base/gsettings-desktop-schemas ) |
100 |
test? ( gnome-base/gsettings-desktop-schemas ) |
85 |
" |
101 |
" |
|
|
102 |
|
86 |
DOCS="Changelog" |
103 |
DOCS="Changelog" |
87 |
|
104 |
|
88 |
# https://github.com/clementine-player/Clementine/issues/3935 |
105 |
# https://github.com/clementine-player/Clementine/issues/3935 |
89 |
RESTRICT="test" |
106 |
RESTRICT="test" |
90 |
|
107 |
|
91 |
MY_P="${P/_}" |
108 |
# [[ ${PV} == *9999* ]] || \ |
92 |
# Switch to ^ when we switch to EAPI=6. |
109 |
# S="${WORKDIR}/${P^}" |
93 |
[[ ${PV} == *9999* ]] || \ |
|
|
94 |
S="${WORKDIR}/C${MY_P:1}" |
95 |
|
110 |
|
96 |
PATCHES=( "${FILESDIR}"/${PN}-1.3-fix-tokenizer.patch ) |
111 |
src_unpack() { |
|
|
112 |
if use qt5; then |
113 |
EGIT_BRANCH="qt5" |
114 |
fi |
115 |
|
116 |
git-r3_src_unpack |
117 |
} |
97 |
|
118 |
|
98 |
src_prepare() { |
119 |
src_prepare() { |
99 |
cmake-utils_src_prepare |
120 |
cmake-utils_src_prepare |
Lines 102-107
Link Here
|
102 |
sed -i \ |
123 |
sed -i \ |
103 |
-e '/add_test_file(translations_test.cpp/d' \ |
124 |
-e '/add_test_file(translations_test.cpp/d' \ |
104 |
tests/CMakeLists.txt || die |
125 |
tests/CMakeLists.txt || die |
|
|
126 |
# If qtchooser is installed, it may break the build, because moc,rcc and uic binaries for wrong qt version may be used. |
127 |
# Setting QT_SELECT environment variable will enforce correct binaries. |
128 |
if use qt4; then |
129 |
export QT_SELECT=qt4 |
130 |
elif use qt5; then |
131 |
export QT_SELECT=qt5 |
132 |
ewarn "Please note that Qt5 support is still experimental." |
133 |
ewarn "If you find anything to not work with Qt5, please report a bug." |
134 |
ewarn "«Work (slowly) in progress.»© https://github.com/clementine-player/Clementine/issues/3463#issuecomment-90714420" |
135 |
fi |
105 |
} |
136 |
} |
106 |
|
137 |
|
107 |
src_configure() { |
138 |
src_configure() { |
Lines 115-121
Link Here
|
115 |
-DBUILD_WERROR=OFF |
146 |
-DBUILD_WERROR=OFF |
116 |
-DLINGUAS="${langs}" |
147 |
-DLINGUAS="${langs}" |
117 |
-DBUNDLE_PROJECTM_PRESETS=OFF |
148 |
-DBUNDLE_PROJECTM_PRESETS=OFF |
118 |
-DUSE_SYSTEM_PROJECTM=ON |
|
|
119 |
$(cmake-utils_use cdda ENABLE_AUDIOCD) |
149 |
$(cmake-utils_use cdda ENABLE_AUDIOCD) |
120 |
$(cmake-utils_use dbus ENABLE_DBUS) |
150 |
$(cmake-utils_use dbus ENABLE_DBUS) |
121 |
$(cmake-utils_use udisks ENABLE_DEVICEKIT) |
151 |
$(cmake-utils_use udisks ENABLE_DEVICEKIT) |
Lines 126-132
Link Here
|
126 |
-DENABLE_GIO=ON |
156 |
-DENABLE_GIO=ON |
127 |
$(cmake-utils_use wiimote ENABLE_WIIMOTEDEV) |
157 |
$(cmake-utils_use wiimote ENABLE_WIIMOTEDEV) |
128 |
$(cmake-utils_use projectm ENABLE_VISUALISATIONS) |
158 |
$(cmake-utils_use projectm ENABLE_VISUALISATIONS) |
129 |
$(usex projectm '-DUSE_SYSTEM_PROJECTM=ON' '') |
159 |
$(cmake-utils_use ayatana ENABLE_SOUNDMENU) |
130 |
$(cmake-utils_use box ENABLE_BOX) |
160 |
$(cmake-utils_use box ENABLE_BOX) |
131 |
$(cmake-utils_use dropbox ENABLE_DROPBOX) |
161 |
$(cmake-utils_use dropbox ENABLE_DROPBOX) |
132 |
$(cmake-utils_use googledrive ENABLE_GOOGLE_DRIVE) |
162 |
$(cmake-utils_use googledrive ENABLE_GOOGLE_DRIVE) |
Lines 134-144
Link Here
|
134 |
$(cmake-utils_use ubuntu-one ENABLE_UBUNTU_ONE) |
164 |
$(cmake-utils_use ubuntu-one ENABLE_UBUNTU_ONE) |
135 |
-DENABLE_SPOTIFY_BLOB=OFF |
165 |
-DENABLE_SPOTIFY_BLOB=OFF |
136 |
-DENABLE_BREAKPAD=OFF |
166 |
-DENABLE_BREAKPAD=OFF |
137 |
#$(cmake-utils_use !system-sqlite STATIC_SQLITE) |
167 |
$(cmake-utils_use !system-sqlite STATIC_SQLITE) |
138 |
#$(cmake-utils_use system-sqlite I_HATE_MY_USERS) |
168 |
$(cmake-utils_use system-sqlite I_HATE_MY_USERS) |
139 |
#$(cmake-utils_use system-sqlite MY_USERS_WILL_SUFFER_BECAUSE_OF_ME) |
169 |
$(cmake-utils_use system-sqlite MY_USERS_WILL_SUFFER_BECAUSE_OF_ME) |
140 |
-DUSE_BUILTIN_TAGLIB=OFF |
170 |
-DUSE_BUILTIN_TAGLIB=OFF |
141 |
-DUSE_SYSTEM_GMOCK=ON |
171 |
-DUSE_SYSTEM_GMOCK=ON |
|
|
172 |
# force to find crypto++ see bug #548544 |
173 |
-DCRYPTOPP_LIBRARIES="crypto++" |
174 |
-DCRYPTOPP_FOUND=ON |
142 |
) |
175 |
) |
143 |
|
176 |
|
144 |
use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT |
177 |
use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT |