Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/, media-sound/clementine/files/
Date: Sun, 02 Dec 2018 18:43:59
Message-Id: 1543776214.6f170caf208f8995d0b81f4a031e2906db459ed4.asturm@gentoo
1 commit: 6f170caf208f8995d0b81f4a031e2906db459ed4
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Sun Dec 2 00:05:13 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Sun Dec 2 18:43:34 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f170caf
7
8 media-sound/clementine: 1.3.1_p20181201 snapshot bump
9
10 Package-Manager: Portage-2.3.52, Repoman-2.3.12
11 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
12
13 media-sound/clementine/Manifest | 1 +
14 .../clementine/clementine-1.3.1_p20181201.ebuild | 182 +++++++++++++++++++++
15 .../files/clementine-1.3.1_p20181201-cmake.patch | 165 +++++++++++++++++++
16 3 files changed, 348 insertions(+)
17
18 diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
19 index 914ef63abe0..cd11a00b680 100644
20 --- a/media-sound/clementine/Manifest
21 +++ b/media-sound/clementine/Manifest
22 @@ -1,2 +1,3 @@
23 DIST clementine-1.3.1_p20180416.tar.gz 8489387 BLAKE2B 37412428cf030a71f0011ba68a7ce71a3bbdc59402dc6d6349cca8ee44b208052cee9add1597a9577e5a6ed4bb2ebf16c4e1f79612d12be265f637caffd02a76 SHA512 8f38554571c637d9f79df43679ac2a76383f7a9b4ee8e921a16175889180e72afadc352dd40d73a671aa8ae9b01f6a251ae7b94b010043f8bcb8d8f42dcfff62
24 DIST clementine-1.3.1_p20181112.tar.gz 8526632 BLAKE2B da3f155006ef5e94233104011aadad41e974ec339827b91bd3c5c0c2420b23199be852a9d0cb7c9b0112ba2d43ff3e3e87388db92679f8e64da5c3fa3e578c1d SHA512 eed16cec7323b142e4602a4bd81d7363e9cf4fc203c3b8b341aadbe883fdbd571dff0792260eec8af2f91e79fe905c3510d1e7ce1b06e9d4698016820cc771fa
25 +DIST clementine-1.3.1_p20181201.tar.gz 8535075 BLAKE2B c4b6660ee9718054cc13c6b4fc2e1dccf9c117319f5b682dc5de2861fc40cc129e079449e1c2e15733faf14b6e18b42f37c228000a8e6c121b7fdcb2e48bc7b9 SHA512 fcc062857b95a5cabc41449143bb876df9955cdaaa59868f147d7a165dea13e2e4e1c11ea23f4309c8af7bef42d694a82867420245513af8e4dfbd91ab6f9a2c
26
27 diff --git a/media-sound/clementine/clementine-1.3.1_p20181201.ebuild b/media-sound/clementine/clementine-1.3.1_p20181201.ebuild
28 new file mode 100644
29 index 00000000000..3d3061880f8
30 --- /dev/null
31 +++ b/media-sound/clementine/clementine-1.3.1_p20181201.ebuild
32 @@ -0,0 +1,182 @@
33 +# Copyright 1999-2018 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=6
37 +
38 +PLOCALES="af ar be bg bn br bs ca cs cy da de el en 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 mk_MK 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"
39 +
40 +MY_P="${P/_}"
41 +if [[ ${PV} == *9999* ]]; then
42 + EGIT_BRANCH="qt5"
43 + EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
44 + GIT_ECLASS="git-r3"
45 +else
46 + COMMIT=d87307fbc718a57ca38b5354f196db05b560036c
47 + SRC_URI="https://github.com/${PN}-player/${PN^}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
48 + KEYWORDS="~amd64 ~x86"
49 +fi
50 +inherit cmake-utils flag-o-matic gnome2-utils l10n virtualx xdg-utils ${GIT_ECLASS}
51 +unset GIT_ECLASS
52 +
53 +DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
54 +HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
55 +
56 +LICENSE="GPL-3"
57 +SLOT="0"
58 +IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
59 +
60 +REQUIRED_USE="
61 + udisks? ( dbus )
62 + wiimote? ( dbus )
63 +"
64 +
65 +COMMON_DEPEND="
66 + app-crypt/qca:2[qt5(+)]
67 + dev-db/sqlite:=
68 + dev-libs/crypto++[asm]
69 + dev-libs/glib:2
70 + dev-libs/libxml2
71 + dev-libs/protobuf:=
72 + dev-qt/qtconcurrent:5
73 + dev-qt/qtcore:5
74 + dev-qt/qtgui:5
75 + dev-qt/qtnetwork:5[ssl]
76 + dev-qt/qtsql:5[sqlite]
77 + dev-qt/qtwidgets:5
78 + media-libs/chromaprint:=
79 + media-libs/gstreamer:1.0
80 + media-libs/gst-plugins-base:1.0
81 + >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
82 + >=media-libs/taglib-1.11.1_p20181028
83 + sys-libs/zlib
84 + virtual/glu
85 + x11-libs/libX11
86 + cdda? ( dev-libs/libcdio:= )
87 + dbus? ( dev-qt/qtdbus:5 )
88 + ipod? ( >=media-libs/libgpod-0.8.0 )
89 + lastfm? ( >=media-libs/liblastfm-1.1.0_pre20150206 )
90 + moodbar? ( sci-libs/fftw:3.0 )
91 + mtp? ( >=media-libs/libmtp-1.0.0 )
92 + projectm? (
93 + media-libs/glew:=
94 + >=media-libs/libprojectm-1.2.0
95 + virtual/opengl
96 + )
97 +"
98 +# Note: sqlite driver of dev-qt/qtsql is bundled, so no sqlite use is required; check if this can be overcome someway;
99 +# Libprojectm-1.2 seems to work fine, so no reason to use bundled version; check clementine's patches:
100 +# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
101 +# Still possibly essential but not applied yet patches are:
102 +# 06-fix-numeric-locale.patch
103 +# 08-stdlib.h-for-rand.patch
104 +RDEPEND="${COMMON_DEPEND}
105 + media-plugins/gst-plugins-meta:1.0
106 + media-plugins/gst-plugins-soup:1.0
107 + media-plugins/gst-plugins-taglib:1.0
108 + mms? ( media-plugins/gst-plugins-libmms:1.0 )
109 + mtp? ( gnome-base/gvfs[mtp] )
110 + udisks? ( sys-fs/udisks:2 )
111 +"
112 +DEPEND="${COMMON_DEPEND}
113 + >=dev-cpp/gtest-1.8.0
114 + dev-libs/boost
115 + dev-qt/linguist-tools:5
116 + dev-qt/qtx11extras:5
117 + dev-qt/qtxml:5
118 + sys-devel/gettext
119 + virtual/pkgconfig
120 + box? ( dev-cpp/sparsehash )
121 + dropbox? ( dev-cpp/sparsehash )
122 + googledrive? ( dev-cpp/sparsehash )
123 + projectm? ( dev-qt/qtopengl:5 )
124 + pulseaudio? ( media-sound/pulseaudio )
125 + seafile? ( dev-cpp/sparsehash )
126 + skydrive? ( dev-cpp/sparsehash )
127 + test? (
128 + dev-qt/qttest:5
129 + gnome-base/gsettings-desktop-schemas
130 + )
131 +"
132 +
133 +RESTRICT="test"
134 +
135 +S="${WORKDIR}/${PN^}-${COMMIT}"
136 +
137 +DOCS=( Changelog README.md )
138 +
139 +PATCHES=( "${FILESDIR}"/${P}-cmake.patch )
140 +
141 +src_prepare() {
142 + l10n_find_plocales_changes "src/translations" "" ".po"
143 +
144 + cmake-utils_src_prepare
145 + # some tests fail or hang
146 + sed -i \
147 + -e '/add_test_file(translations_test.cpp/d' \
148 + tests/CMakeLists.txt || die
149 +
150 + if ! use test; then
151 + sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
152 + cmake_comment_add_subdirectory tests
153 + fi
154 +
155 + rm -r 3rdparty/{libmygpo-qt,libmygpo-qt5,taglib} || die
156 +}
157 +
158 +src_configure() {
159 + # spotify is not in portage
160 + local mycmakeargs=(
161 + -DBUILD_WERROR=OFF
162 + # force to find crypto++ see bug #548544
163 + -DCRYPTOPP_LIBRARIES="cryptopp"
164 + -DCRYPTOPP_FOUND=ON
165 + # avoid automagically enabling of ccache (bug #611010)
166 + -DCCACHE_EXECUTABLE=OFF
167 + -DENABLE_BREAKPAD=OFF #< disable crash reporting
168 + -DENABLE_DEVICEKIT=OFF
169 + -DENABLE_GIO=ON
170 + -DENABLE_SPOTIFY_BLOB=OFF
171 + -DUSE_SYSTEM_GMOCK=ON
172 + -DUSE_SYSTEM_PROJECTM=ON
173 + -DBUNDLE_PROJECTM_PRESETS=OFF
174 + -DLINGUAS="$(l10n_get_locales)"
175 + -DENABLE_BOX="$(usex box)"
176 + -DENABLE_AUDIOCD="$(usex cdda)"
177 + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DBus=$(usex !dbus)
178 + -DENABLE_DROPBOX="$(usex dropbox)"
179 + -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
180 + -DENABLE_LIBGPOD="$(usex ipod)"
181 + -DENABLE_LIBLASTFM="$(usex lastfm)"
182 + -DENABLE_MOODBAR="$(usex moodbar)"
183 + -DENABLE_LIBMTP="$(usex mtp)"
184 + -DENABLE_VISUALISATIONS="$(usex projectm)"
185 + -DENABLE_SEAFILE="$(usex seafile)"
186 + -DENABLE_SKYDRIVE="$(usex skydrive)"
187 + -DENABLE_LIBPULSE="$(usex pulseaudio)"
188 + -DENABLE_UDISKS2="$(usex udisks)"
189 + -DENABLE_WIIMOTEDEV="$(usex wiimote)"
190 + )
191 +
192 + use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
193 +
194 + cmake-utils_src_configure
195 +}
196 +
197 +src_test() {
198 + cd "${CMAKE_BUILD_DIR}" || die
199 + virtx emake test
200 +}
201 +
202 +pkg_postinst() {
203 + xdg_desktop_database_update
204 + gnome2_icon_cache_update
205 +
206 + elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
207 + elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
208 + elog "depending on your preferences"
209 +}
210 +
211 +pkg_postrm() {
212 + xdg_desktop_database_update
213 + gnome2_icon_cache_update
214 +}
215
216 diff --git a/media-sound/clementine/files/clementine-1.3.1_p20181201-cmake.patch b/media-sound/clementine/files/clementine-1.3.1_p20181201-cmake.patch
217 new file mode 100644
218 index 00000000000..633bf39be9d
219 --- /dev/null
220 +++ b/media-sound/clementine/files/clementine-1.3.1_p20181201-cmake.patch
221 @@ -0,0 +1,165 @@
222 +From 940fcb260b345d2598d04fd07c6718566b3adda1 Mon Sep 17 00:00:00 2001
223 +From: Andreas Sturmlechner <asturm@g.o>
224 +Date: Sat, 1 Dec 2018 23:29:43 +0100
225 +Subject: [PATCH 1/3] Qt5::Test is not required in the global QT_LIBRARIES
226 + definition
227 +
228 +---
229 + CMakeLists.txt | 2 +-
230 + 1 file changed, 1 insertion(+), 1 deletion(-)
231 +
232 +diff --git a/CMakeLists.txt b/CMakeLists.txt
233 +index e660a376a..e18e008c0 100644
234 +--- a/CMakeLists.txt
235 ++++ b/CMakeLists.txt
236 +@@ -110,7 +110,7 @@ if(WIN32)
237 + find_package(Qt5 REQUIRED COMPONENTS WinExtras)
238 + endif()
239 +
240 +-set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network Qt5::Sql Qt5::Xml Qt5::OpenGL Qt5::Test)
241 ++set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network Qt5::Sql Qt5::Xml Qt5::OpenGL)
242 +
243 + if(DBUS_FOUND)
244 + set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::DBus)
245 +--
246 +2.19.2
247 +
248 +
249 +From 4e11613088d24f248046d449f63bfd245f1e82cc Mon Sep 17 00:00:00 2001
250 +From: Andreas Sturmlechner <asturm@g.o>
251 +Date: Sat, 1 Dec 2018 23:44:35 +0100
252 +Subject: [PATCH 2/3] Qt5::DBus had already been optional, drop bogus pkgconfig
253 + search
254 +
255 +This partially reverts commit 4321ecf7d26c5eed577a97d230786bb9f56ea37f.
256 +---
257 + CMakeLists.txt | 17 +++++++----------
258 + 1 file changed, 7 insertions(+), 10 deletions(-)
259 +
260 +diff --git a/CMakeLists.txt b/CMakeLists.txt
261 +index e18e008c0..0d1403e04 100644
262 +--- a/CMakeLists.txt
263 ++++ b/CMakeLists.txt
264 +@@ -52,7 +52,6 @@ find_package(PkgConfig REQUIRED)
265 + find_package(Protobuf REQUIRED)
266 + find_package(FFTW3)
267 + find_package(ALSA)
268 +-pkg_check_modules(DBUS dbus-1)
269 + if (NOT APPLE)
270 + find_package(X11)
271 + endif()
272 +@@ -96,13 +95,10 @@ find_path(SPARSEHASH_INCLUDE_DIRS google/sparsetable)
273 + # QT
274 + set(QT_MIN_VERSION 5.6.0)
275 + find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Concurrent Widgets Network Sql Xml OpenGL Test)
276 ++find_package(Qt5DBus ${QT_MIN_VERSION})
277 + if(X11_FOUND)
278 + find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS X11Extras)
279 + endif()
280 +-if(DBUS_FOUND)
281 +- find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS DBus)
282 +- get_target_property(QT_DBUSXML2CPP_EXECUTABLE Qt5::qdbusxml2cpp LOCATION)
283 +-endif()
284 + if(APPLE)
285 + find_package(Qt5 REQUIRED COMPONENTS MacExtras)
286 + endif()
287 +@@ -112,8 +108,9 @@ endif()
288 +
289 + set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network Qt5::Sql Qt5::Xml Qt5::OpenGL)
290 +
291 +-if(DBUS_FOUND)
292 ++if(Qt5DBus_FOUND)
293 + set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::DBus)
294 ++ get_target_property(QT_DBUSXML2CPP_EXECUTABLE Qt5::qdbusxml2cpp LOCATION)
295 + endif()
296 + if(X11_FOUND)
297 + set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::X11Extras)
298 +@@ -286,19 +283,19 @@ optional_component(LIBLASTFM ON "Last.fm support"
299 + )
300 +
301 + optional_component(DBUS ON "D-Bus support"
302 +- DEPENDS "D-Bus" DBUS_FOUND
303 ++ DEPENDS "Qt5DBus" Qt5DBus_FOUND
304 + )
305 +
306 + optional_component(WIIMOTEDEV ON "Wiimote support"
307 +- DEPENDS "D-Bus support" DBUS_FOUND
308 ++ DEPENDS "D-Bus support" Qt5DBus_FOUND
309 + )
310 +
311 + optional_component(DEVICEKIT ON "Devices: DeviceKit backend"
312 +- DEPENDS "D-Bus support" DBUS_FOUND
313 ++ DEPENDS "D-Bus support" Qt5DBus_FOUND
314 + )
315 +
316 + optional_component(UDISKS2 ON "Devices: UDisks2 backend"
317 +- DEPENDS "D-Bus support" DBUS_FOUND
318 ++ DEPENDS "D-Bus support" Qt5DBus_FOUND
319 + )
320 +
321 + if (CRYPTOPP_FOUND OR HAVE_SPOTIFY_BLOB)
322 +--
323 +2.19.2
324 +
325 +
326 +From 21e9f8be5b986581ab04869d28c335f949423ef5 Mon Sep 17 00:00:00 2001
327 +From: Andreas Sturmlechner <asturm@g.o>
328 +Date: Sun, 2 Dec 2018 00:21:17 +0100
329 +Subject: [PATCH 3/3] Find X11 only once, in root CMakeLists.txt
330 +
331 +Since we have HAVE_X11, use HAVE_X11 in cmake.
332 +---
333 + 3rdparty/qxt/CMakeLists.txt | 1 -
334 + CMakeLists.txt | 4 ++--
335 + src/CMakeLists.txt | 1 -
336 + 3 files changed, 2 insertions(+), 4 deletions(-)
337 +
338 +diff --git a/3rdparty/qxt/CMakeLists.txt b/3rdparty/qxt/CMakeLists.txt
339 +index 8fd9220ae..73c67a9fa 100644
340 +--- a/3rdparty/qxt/CMakeLists.txt
341 ++++ b/3rdparty/qxt/CMakeLists.txt
342 +@@ -10,7 +10,6 @@ set(QXT-MOC-HEADERS
343 + qxtglobalshortcut.h
344 + )
345 +
346 +-find_package(X11)
347 + include_directories(${X11_INCLUDE_DIR})
348 + include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
349 +
350 +diff --git a/CMakeLists.txt b/CMakeLists.txt
351 +index 0d1403e04..bd191b59e 100644
352 +--- a/CMakeLists.txt
353 ++++ b/CMakeLists.txt
354 +@@ -96,7 +96,7 @@ find_path(SPARSEHASH_INCLUDE_DIRS google/sparsetable)
355 + set(QT_MIN_VERSION 5.6.0)
356 + find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Concurrent Widgets Network Sql Xml OpenGL Test)
357 + find_package(Qt5DBus ${QT_MIN_VERSION})
358 +-if(X11_FOUND)
359 ++if(HAVE_X11)
360 + find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS X11Extras)
361 + endif()
362 + if(APPLE)
363 +@@ -112,7 +112,7 @@ if(Qt5DBus_FOUND)
364 + set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::DBus)
365 + get_target_property(QT_DBUSXML2CPP_EXECUTABLE Qt5::qdbusxml2cpp LOCATION)
366 + endif()
367 +-if(X11_FOUND)
368 ++if(HAVE_X11)
369 + set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::X11Extras)
370 + endif()
371 + if(APPLE)
372 +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
373 +index 0eb14e28c..4a612d5bd 100644
374 +--- a/src/CMakeLists.txt
375 ++++ b/src/CMakeLists.txt
376 +@@ -1364,7 +1364,6 @@ if (UNIX AND NOT APPLE)
377 + # command but they're actually used by libraries that appear after them, so
378 + # they end up getting ignored. This appends them to the very end of the link
379 + # line, ensuring they're always used.
380 +- find_package(X11)
381 + if (FREEBSD)
382 + target_link_libraries(clementine_lib ${X11_X11_LIB})
383 + else ()
384 +--
385 +2.19.2
386 +