* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2015-08-25 8:13 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2015-08-25 8:13 UTC (permalink / raw
To: gentoo-commits
commit: ecf8d4814fde069659bf0d999ee5bddc3f27a18b
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 25 08:12:02 2015 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Aug 25 08:13:18 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecf8d481
media-sound/clementine: Added subslot dependency for media-libs/glew
and slot dependency for dev-db/sqlite.
Fixed compilation with >=dev-libs/boost-1.57.0 (bug #542528).
Package-Manager: portage-2.2.20.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
media-sound/clementine/clementine-1.2.3.ebuild | 7 +-
...tine-1.2.3-hide_boost_includes_from_q_moc.patch | 181 +++++++++++++++++++++
2 files changed, 185 insertions(+), 3 deletions(-)
diff --git a/media-sound/clementine/clementine-1.2.3.ebuild b/media-sound/clementine/clementine-1.2.3.ebuild
index d9410eb..eb76fd1 100644
--- a/media-sound/clementine/clementine-1.2.3.ebuild
+++ b/media-sound/clementine/clementine-1.2.3.ebuild
@@ -36,7 +36,7 @@ COMMON_DEPEND="
dbus? ( >=dev-qt/qtdbus-4.5:4 )
>=dev-qt/qtopengl-4.5:4
>=dev-qt/qtsql-4.5:4[sqlite]
- system-sqlite? ( dev-db/sqlite[fts3(+)] )
+ system-sqlite? ( dev-db/sqlite:3[fts3(+)] )
>=media-libs/taglib-1.8[mp4]
>=dev-libs/glib-2.24.1-r1
dev-libs/libxml2
@@ -57,7 +57,7 @@ COMMON_DEPEND="
lastfm? ( >=media-libs/liblastfm-1 )
mtp? ( >=media-libs/libmtp-1.0.0 )
moodbar? ( sci-libs/fftw:3.0 )
- projectm? ( media-libs/glew )
+ projectm? ( media-libs/glew:= )
"
# now only presets are used, libprojectm is internal
# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
@@ -94,7 +94,8 @@ RESTRICT="test"
S="${WORKDIR}/${P^}"
PATCHES=(
- "${FILESDIR}"/clementine-1.2.3-namespaces.patch
+ "${FILESDIR}/${PN}-1.2.3-namespaces.patch"
+ "${FILESDIR}/${P}-hide_boost_includes_from_q_moc.patch"
)
src_prepare() {
diff --git a/media-sound/clementine/files/clementine-1.2.3-hide_boost_includes_from_q_moc.patch b/media-sound/clementine/files/clementine-1.2.3-hide_boost_includes_from_q_moc.patch
new file mode 100644
index 0000000..c582d7a
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.2.3-hide_boost_includes_from_q_moc.patch
@@ -0,0 +1,181 @@
+Description: Wrap boost includes to avoid FTBFS due to qt4 moc.
+Author: Robert Bruce Park <robert.park@canonical.com>
+Bug-Debian: https://bugs.debian.org/795144
+Last-Update: <2015-04-13>
+
+--- a/src/core/boundfuturewatcher.h
++++ b/src/core/boundfuturewatcher.h
+@@ -3,7 +3,9 @@
+
+ #include <QFutureWatcher>
+
++#ifndef Q_MOC_RUN
+ #include <boost/noncopyable.hpp>
++#endif
+
+ template <typename T, typename D>
+ class BoundFutureWatcher : public QFutureWatcher<T>, boost::noncopyable {
+--- a/src/core/database.cpp
++++ b/src/core/database.cpp
+@@ -23,7 +23,9 @@
+ #include "core/logging.h"
+ #include "core/taskmanager.h"
+
++#ifndef Q_MOC_RUN
+ #include <boost/scope_exit.hpp>
++#endif
+
+ #include <QCoreApplication>
+ #include <QDir>
+--- a/src/core/macglobalshortcutbackend.mm
++++ b/src/core/macglobalshortcutbackend.mm
+@@ -22,7 +22,9 @@
+ #include "mac_startup.h"
+ #import "mac_utilities.h"
+
++#ifndef Q_MOC_RUN
+ #include <boost/noncopyable.hpp>
++#endif
+
+ #include <QAction>
+ #include <QList>
+--- a/src/core/mergedproxymodel.h
++++ b/src/core/mergedproxymodel.h
+@@ -25,10 +25,12 @@
+ using std::placeholders::_1;
+ using std::placeholders::_2;
+
++#ifndef Q_MOC_RUN
+ #include <boost/multi_index_container.hpp>
+ #include <boost/multi_index/member.hpp>
+ #include <boost/multi_index/ordered_index.hpp>
+ #include <boost/multi_index/hashed_index.hpp>
++#endif
+
+ using boost::multi_index::multi_index_container;
+ using boost::multi_index::indexed_by;
+--- a/src/core/scopedtransaction.h
++++ b/src/core/scopedtransaction.h
+@@ -18,7 +18,9 @@
+ #ifndef SCOPEDTRANSACTION_H
+ #define SCOPEDTRANSACTION_H
+
++#ifndef Q_MOC_RUN
+ #include <boost/noncopyable.hpp>
++#endif
+
+ class QSqlDatabase;
+
+--- a/src/core/signalchecker.h
++++ b/src/core/signalchecker.h
+@@ -20,8 +20,10 @@
+
+ #include <glib-object.h>
+
++#ifndef Q_MOC_RUN
+ #include <boost/function_types/function_arity.hpp>
+ #include <boost/typeof/typeof.hpp>
++#endif
+
+ // Do not call this directly, use CHECKED_GCONNECT instead.
+ bool CheckedGConnect(
+--- a/src/devices/macdevicelister.mm
++++ b/src/devices/macdevicelister.mm
+@@ -38,7 +38,9 @@
+ #import <Foundation/NSString.h>
+ #import <Foundation/NSURL.h>
+
++#ifndef Q_MOC_RUN
+ #include <boost/scope_exit.hpp>
++#endif
+
+ #include <libmtp.h>
+
+--- a/src/library/groupbydialog.h
++++ b/src/library/groupbydialog.h
+@@ -25,9 +25,11 @@
+ using std::placeholders::_1;
+ using std::placeholders::_2;
+
++#ifndef Q_MOC_RUN
+ #include <boost/multi_index_container.hpp>
+ #include <boost/multi_index/member.hpp>
+ #include <boost/multi_index/ordered_index.hpp>
++#endif
+
+ #include "librarymodel.h"
+
+--- a/tests/database_test.cpp
++++ b/tests/database_test.cpp
+@@ -20,7 +20,9 @@
+
+ #include "core/database.h"
+
++#ifndef Q_MOC_RUN
+ #include <boost/scoped_ptr.hpp>
++#endif
+
+ #include <QtDebug>
+ #include <QSqlQuery>
+--- a/tests/librarybackend_test.cpp
++++ b/tests/librarybackend_test.cpp
+@@ -23,7 +23,9 @@
+ #include "core/song.h"
+ #include "core/database.h"
+
++#ifndef Q_MOC_RUN
+ #include <boost/scoped_ptr.hpp>
++#endif
+
+ #include <QFileInfo>
+ #include <QSignalSpy>
+--- a/tests/plsparser_test.cpp
++++ b/tests/plsparser_test.cpp
+@@ -27,7 +27,9 @@
+ #include <QUrl>
+ #include <QtDebug>
+
++#ifndef Q_MOC_RUN
+ #include <boost/shared_ptr.hpp>
++#endif
+
+ using boost::shared_ptr;
+
+--- a/tests/songloader_test.cpp
++++ b/tests/songloader_test.cpp
+@@ -29,7 +29,10 @@
+ #include <QSignalSpy>
+ #include <QtDebug>
+
++#ifndef Q_MOC_RUN
+ #include <boost/scoped_ptr.hpp>
++#endif
++
+ #include <cstdlib>
+
+ using ::testing::_;
+--- a/tests/songplaylistitem_test.cpp
++++ b/tests/songplaylistitem_test.cpp
+@@ -19,7 +19,10 @@
+ #include "test_utils.h"
+
+ #include <gtest/gtest.h>
++
++#ifndef Q_MOC_RUN
+ #include <boost/scoped_ptr.hpp>
++#endif
+
+ #include <QTemporaryFile>
+ #include <QFileInfo>
+--- a/tests/utilities_test.cpp
++++ b/tests/utilities_test.cpp
+@@ -21,7 +21,9 @@
+
+ #include "core/utilities.h"
+
++#ifndef Q_MOC_RUN
+ #include <boost/scoped_ptr.hpp>
++#endif
+
+ #include <QtDebug>
+
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2016-01-13 17:21 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2016-01-13 17:21 UTC (permalink / raw
To: gentoo-commits
commit: 1fb08fe2ed703c87172c9ead38f96d8f8ede6e12
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 13 17:20:32 2016 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jan 13 17:20:58 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1fb08fe2
media-sound/clementine: Bump to version 1.3_rc1 (bug #571462).
Package-Manager: portage-2.2.26
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
media-sound/clementine/Manifest | 1 +
media-sound/clementine/clementine-1.3_rc1.ebuild | 167 +++++++++++++++++++++
.../files/clementine-1.3_rc1-cmake.patch | 41 +++++
3 files changed, 209 insertions(+)
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 25001dc..9a18ea5 100644
--- a/media-sound/clementine/Manifest
+++ b/media-sound/clementine/Manifest
@@ -1,2 +1,3 @@
DIST clementine-1.2.2.tar.gz 9076752 SHA256 1f674c42f05c476baf74f1dd37b1aa357ff9199e4493173052c856a53e5f0a96 SHA512 48e934ed1f18724c4cc79eaf7ac16dcb2ecc9d268a4986a8a421c6518d7a13bd81a5b7d249b4ff146c860bed520a59d2062139fb57672609019b8c2c84e495ca WHIRLPOOL 13c3f129566c0789e67b23b2382d7ed1f756221647c4b2cc1b4b1b1efcb5e04571837a843c8ff7c099f9bcd3f9b1dd481b1fa75fe1c4b27e90169026e8880840
DIST clementine-1.2.3.tar.gz 9076977 SHA256 7df5650445a005c09f5f0e1a1b0d077037c37ecbe4ee77baf9d45f121308a1bf SHA512 fd43a7dcfec360d4478a56d0600300b6913b294f127afb0249971b45b54b48475d128861e06885c482bbdd37b09aa56b1c238675763fdb8c50329005b066bec3 WHIRLPOOL 23d0fb971118b0d73ec4a52cfa3f8829118ab65c12fb01ce30433541f5da081b52c5dd485aa0efdda2b4b57b286f59702aa686f9b7ce17a0a2595b208b95d524
+DIST clementine-1.3_rc1.tar.gz 8477665 SHA256 f08b797b47305b8a0b7e1713d11977df12e09911f05c577c9f81641369f252a0 SHA512 973410a0d2baf0646a77eb5bcbea2af3f34a4baa5671f7a81fa99203703c478d38dd2f32ce0ccac9babf8add56717fd5fdec8a4bacefe8b9b8fa0256ec509edb WHIRLPOOL 968ca43b4a15169926ad68a009c568ae03ef17e8b0542fe6c4ebd07fc4e64ae6782ab63d3a05851064e288522e44e885a9a1dc52b94246e016c60c91e41e0a76
diff --git a/media-sound/clementine/clementine-1.3_rc1.ebuild b/media-sound/clementine/clementine-1.3_rc1.ebuild
new file mode 100644
index 0000000..4c4758a
--- /dev/null
+++ b/media-sound/clementine/clementine-1.3_rc1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
+
+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"
+
+inherit cmake-utils flag-o-matic fdo-mime gnome2-utils virtualx
+[[ ${PV} == *9999* ]] && inherit git-2
+
+DESCRIPTION="A modern music player and library organizer based on Amarok 1.4 and Qt4"
+HOMEPAGE="http://www.clementine-player.org https://github.com/clementine-player/Clementine"
+[[ ${PV} == *9999* ]] || \
+SRC_URI="https://github.com/clementine-player/Clementine/archive/${PV/_}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+[[ ${PV} == *9999* ]] || \
+KEYWORDS="~amd64 ~x86"
+IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm skydrive test ubuntu-one +udisks wiimote"
+IUSE+="${LANGS// / linguas_}"
+
+REQUIRED_USE="
+ udisks? ( dbus )
+ wiimote? ( dbus )
+"
+
+# qca dep is temporary for bug #489850
+COMMON_DEPEND="
+ dev-db/sqlite:=
+ >=dev-libs/glib-2.24.1-r1
+ dev-libs/libxml2
+ dev-libs/protobuf:=
+ dev-libs/qjson
+ >=dev-qt/qtcore-4.5:4
+ >=dev-qt/qtgui-4.5:4
+ >=dev-qt/qtopengl-4.5:4
+ >=dev-qt/qtsql-4.5:4[sqlite]
+ >=media-libs/chromaprint-0.6
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ media-libs/libechonest:=
+ >=media-libs/libmygpo-qt-1.0.8
+ >=media-libs/taglib-1.8[mp4]
+ sys-libs/zlib
+ virtual/glu
+ virtual/opengl
+ x11-libs/libX11
+ cdda? ( dev-libs/libcdio )
+ dbus? ( >=dev-qt/qtdbus-4.5:4 )
+ ipod? ( >=media-libs/libgpod-0.8.0 )
+ lastfm? ( >=media-libs/liblastfm-1[qt4(+)] )
+ mtp? ( >=media-libs/libmtp-1.0.0 )
+ moodbar? ( sci-libs/fftw:3.0 )
+ projectm? ( media-libs/glew:= )
+"
+# now only presets are used, libprojectm is internal
+# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
+# r1966 "Compile with a static sqlite by default, since Qt 4.7 doesn't seem to expose the symbols we need to use FTS"
+RDEPEND="${COMMON_DEPEND}
+ dbus? ( udisks? ( sys-fs/udisks:2 ) )
+ mms? ( media-plugins/gst-plugins-libmms:1.0 )
+ mtp? ( gnome-base/gvfs )
+ projectm? ( >=media-libs/libprojectm-1.2.0 )
+ media-plugins/gst-plugins-meta:1.0
+ media-plugins/gst-plugins-soup:1.0
+ media-plugins/gst-plugins-taglib:1.0
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-libs/boost-1.39
+ virtual/pkgconfig
+ sys-devel/gettext
+ dev-qt/qttest:4
+ dev-cpp/gmock
+ box? ( dev-cpp/sparsehash )
+ dropbox? ( dev-cpp/sparsehash )
+ googledrive? ( dev-cpp/sparsehash )
+ skydrive? ( dev-cpp/sparsehash )
+ ubuntu-one? ( dev-cpp/sparsehash )
+ test? ( gnome-base/gsettings-desktop-schemas )
+"
+DOCS="Changelog"
+
+# https://github.com/clementine-player/Clementine/issues/3935
+RESTRICT="test"
+
+MY_P="${P/_}"
+# Switch to ^ when we switch to EAPI=6.
+[[ ${PV} == *9999* ]] || \
+S="${WORKDIR}/C${MY_P:1}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3_rc1-cmake.patch
+)
+
+src_prepare() {
+ cmake-utils_src_prepare
+
+ # some tests fail or hang
+ sed -i \
+ -e '/add_test_file(translations_test.cpp/d' \
+ tests/CMakeLists.txt || die
+}
+
+src_configure() {
+ local langs x
+ for x in ${LANGS}; do
+ use linguas_${x} && langs+=" ${x}"
+ done
+
+ # spotify is not in portage
+ local mycmakeargs=(
+ -DBUILD_WERROR=OFF
+ -DLINGUAS="${langs}"
+ -DBUNDLE_PROJECTM_PRESETS=OFF
+ -DUSE_SYSTEM_PROJECTM=ON
+ $(cmake-utils_use cdda ENABLE_AUDIOCD)
+ $(cmake-utils_use dbus ENABLE_DBUS)
+ $(cmake-utils_use udisks ENABLE_DEVICEKIT)
+ $(cmake-utils_use ipod ENABLE_LIBGPOD)
+ $(cmake-utils_use lastfm ENABLE_LIBLASTFM)
+ $(cmake-utils_use mtp ENABLE_LIBMTP)
+ $(cmake-utils_use moodbar ENABLE_MOODBAR)
+ -DENABLE_GIO=ON
+ $(cmake-utils_use wiimote ENABLE_WIIMOTEDEV)
+ $(cmake-utils_use projectm ENABLE_VISUALISATIONS)
+ $(usex projectm '-DUSE_SYSTEM_PROJECTM=ON' '')
+ $(cmake-utils_use box ENABLE_BOX)
+ $(cmake-utils_use dropbox ENABLE_DROPBOX)
+ $(cmake-utils_use googledrive ENABLE_GOOGLE_DRIVE)
+ $(cmake-utils_use skydrive ENABLE_SKYDRIVE)
+ $(cmake-utils_use ubuntu-one ENABLE_UBUNTU_ONE)
+ -DENABLE_SPOTIFY_BLOB=OFF
+ -DENABLE_BREAKPAD=OFF
+ #$(cmake-utils_use !system-sqlite STATIC_SQLITE)
+ #$(cmake-utils_use system-sqlite I_HATE_MY_USERS)
+ #$(cmake-utils_use system-sqlite MY_USERS_WILL_SUFFER_BECAUSE_OF_ME)
+ -DUSE_BUILTIN_TAGLIB=OFF
+ -DUSE_SYSTEM_GMOCK=ON
+ )
+
+ use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
+
+ cmake-utils_src_configure
+}
+
+src_test() {
+ cd "${CMAKE_BUILD_DIR}" || die
+ Xemake test
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/clementine/files/clementine-1.3_rc1-cmake.patch b/media-sound/clementine/files/clementine-1.3_rc1-cmake.patch
new file mode 100644
index 0000000..8aefe97
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3_rc1-cmake.patch
@@ -0,0 +1,41 @@
+--- Clementine-1.3rc1/CMakeLists.txt
++++ Clementine-1.3rc1/CMakeLists.txt
+@@ -60,7 +60,7 @@
+
+ pkg_check_modules(CDIO libcdio)
+ pkg_check_modules(CHROMAPRINT REQUIRED libchromaprint)
+-pkg_search_module(CRYPTOPP cryptopp libcrypto++)
++#pkg_search_module(CRYPTOPP cryptopp libcrypto++)
+ pkg_check_modules(GIO gio-2.0)
+ pkg_check_modules(GLIB REQUIRED glib-2.0)
+ pkg_check_modules(GOBJECT REQUIRED gobject-2.0)
+@@ -71,7 +71,7 @@
+ pkg_check_modules(GSTREAMER_TAG REQUIRED gstreamer-tag-1.0)
+ pkg_check_modules(LIBGPOD libgpod-1.0>=0.7.92)
+ pkg_check_modules(LIBMTP libmtp>=1.0)
+-pkg_check_modules(LIBMYGPO_QT libmygpo-qt>=1.0.9)
++pkg_check_modules(LIBMYGPO_QT libmygpo-qt>=1.0.8)
+ pkg_check_modules(LIBPULSE libpulse)
+ pkg_check_modules(LIBXML libxml-2.0)
+ pkg_check_modules(QJSON REQUIRED QJson)
+@@ -275,13 +275,14 @@
+
+ optional_component(VISUALISATIONS ON "Visualisations")
+
+-if(NOT HAVE_SPOTIFY_BLOB AND NOT CRYPTOPP_FOUND)
+- message(FATAL_ERROR "Either crypto++ must be available or the non-GPL Spotify "
+- "code must be compiled in")
+-elseif(CRYPTOPP_FOUND)
++#if(NOT HAVE_SPOTIFY_BLOB AND NOT CRYPTOPP_FOUND)
++# message(FATAL_ERROR "Either crypto++ must be available or the non-GPL Spotify "
++# "code must be compiled in")
++#elseif(CRYPTOPP_FOUND)
+ set(HAVE_CRYPTOPP ON)
+- set(HAVE_SPOTIFY_DOWNLOADER ON)
+-endif()
++ set(HAVE_SPOTIFY_DOWNLOADER OFF)
++ set(HAVE_SPOTIFY_BLOB OFF)
++#endif()
+
+ # Find DBus if it's enabled
+ if (HAVE_DBUS)
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2016-04-17 4:41 Jason Donenfeld
0 siblings, 0 replies; 16+ messages in thread
From: Jason Donenfeld @ 2016-04-17 4:41 UTC (permalink / raw
To: gentoo-commits
commit: d9b0d9b1b437b7b130549e5b683cf4afc8a865e2
Author: Jason A. Donenfeld <zx2c4 <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 17 04:41:15 2016 +0000
Commit: Jason Donenfeld <zx2c4 <AT> gentoo <DOT> org>
CommitDate: Sun Apr 17 04:41:15 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d9b0d9b1
media-sound/clementine: needs patch for tokenizer
Package-Manager: portage-2.2.28
media-sound/clementine/clementine-1.3.ebuild | 2 ++
media-sound/clementine/clementine-9999.ebuild | 5 ++---
.../files/clementine-1.3-fix-tokenizer.patch | 21 +++++++++++++++++++++
3 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/media-sound/clementine/clementine-1.3.ebuild b/media-sound/clementine/clementine-1.3.ebuild
index 3eb1742..bfac234 100644
--- a/media-sound/clementine/clementine-1.3.ebuild
+++ b/media-sound/clementine/clementine-1.3.ebuild
@@ -93,6 +93,8 @@ MY_P="${P/_}"
[[ ${PV} == *9999* ]] || \
S="${WORKDIR}/C${MY_P:1}"
+PATCHES=( "${FILESDIR}"/${PN}-1.3-fix-tokenizer.patch )
+
src_prepare() {
cmake-utils_src_prepare
diff --git a/media-sound/clementine/clementine-9999.ebuild b/media-sound/clementine/clementine-9999.ebuild
index 79b9c7d..bfac234 100644
--- a/media-sound/clementine/clementine-9999.ebuild
+++ b/media-sound/clementine/clementine-9999.ebuild
@@ -56,6 +56,7 @@ COMMON_DEPEND="
mtp? ( >=media-libs/libmtp-1.0.0 )
moodbar? ( sci-libs/fftw:3.0 )
projectm? ( media-libs/glew:= )
+ >=dev-libs/crypto++-5.6.2-r4
"
# now only presets are used, libprojectm is internal
# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
@@ -92,9 +93,7 @@ MY_P="${P/_}"
[[ ${PV} == *9999* ]] || \
S="${WORKDIR}/C${MY_P:1}"
-PATCHES=(
- "${FILESDIR}"/${PN}-1.3_rc1-cmake.patch
-)
+PATCHES=( "${FILESDIR}"/${PN}-1.3-fix-tokenizer.patch )
src_prepare() {
cmake-utils_src_prepare
diff --git a/media-sound/clementine/files/clementine-1.3-fix-tokenizer.patch b/media-sound/clementine/files/clementine-1.3-fix-tokenizer.patch
new file mode 100644
index 0000000..6413bf7
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3-fix-tokenizer.patch
@@ -0,0 +1,21 @@
+https://github.com/clementine-player/Clementine/issues/5297
+
+--- src/core/database.cpp
++++ src/core/database.cpp
+@@ -265,6 +265,16 @@
+ StaticInit();
+
+ {
++#ifdef SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER
++ QVariant v = db.driver()->handle();
++ if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*") == 0) {
++ sqlite3* handle = *static_cast<sqlite3**>(v.data());
++ if (handle) {
++ sqlite3_db_config(handle, SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER, 1, NULL);
++ }
++ }
++#endif
++
+ QSqlQuery set_fts_tokenizer("SELECT fts3_tokenizer(:name, :pointer)", db);
+ set_fts_tokenizer.bindValue(":name", "unicode");
+ set_fts_tokenizer.bindValue(
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2016-04-17 17:52 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2016-04-17 17:52 UTC (permalink / raw
To: gentoo-commits
commit: 75a31d8181bb748f4ed65443e6b819fa6c534fbd
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 17 17:50:49 2016 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Apr 17 17:52:07 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75a31d81
media-sound/clementine: Bumped 1.3 ebuild to EAPI-6. Removed spotify support
again until we have a reliable dev-libs/crypto++ available.
Package-Manager: portage-2.2.28
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
media-sound/clementine/clementine-1.3.ebuild | 41 +++++++++++-----------
.../files/clementine-1.3-fix-tokenizer.patch | 4 +--
.../files/clementine-1.3_rc1-cmake.patch | 32 +++++++++++++++++
3 files changed, 54 insertions(+), 23 deletions(-)
diff --git a/media-sound/clementine/clementine-1.3.ebuild b/media-sound/clementine/clementine-1.3.ebuild
index bfac234..2e12657 100644
--- a/media-sound/clementine/clementine-1.3.ebuild
+++ b/media-sound/clementine/clementine-1.3.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
# $Id$
-EAPI=5
+EAPI=6
EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
@@ -56,7 +56,6 @@ COMMON_DEPEND="
mtp? ( >=media-libs/libmtp-1.0.0 )
moodbar? ( sci-libs/fftw:3.0 )
projectm? ( media-libs/glew:= )
- >=dev-libs/crypto++-5.6.2-r4
"
# now only presets are used, libprojectm is internal
# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
@@ -93,7 +92,10 @@ MY_P="${P/_}"
[[ ${PV} == *9999* ]] || \
S="${WORKDIR}/C${MY_P:1}"
-PATCHES=( "${FILESDIR}"/${PN}-1.3-fix-tokenizer.patch )
+PATCHES=(
+ "${FILESDIR}/${PN}-1.3_rc1-cmake.patch"
+ "${FILESDIR}/${PN}-1.3-fix-tokenizer.patch"
+)
src_prepare() {
cmake-utils_src_prepare
@@ -116,27 +118,24 @@ src_configure() {
-DLINGUAS="${langs}"
-DBUNDLE_PROJECTM_PRESETS=OFF
-DUSE_SYSTEM_PROJECTM=ON
- $(cmake-utils_use cdda ENABLE_AUDIOCD)
- $(cmake-utils_use dbus ENABLE_DBUS)
- $(cmake-utils_use udisks ENABLE_DEVICEKIT)
- $(cmake-utils_use ipod ENABLE_LIBGPOD)
- $(cmake-utils_use lastfm ENABLE_LIBLASTFM)
- $(cmake-utils_use mtp ENABLE_LIBMTP)
- $(cmake-utils_use moodbar ENABLE_MOODBAR)
+ -DENABLE_AUDIOCD="$(usex cdda)"
+ -DENABLE_DBUS="$(usex dbus)"
+ -DENABLE_DEVICEKIT="$(usex udisks)"
+ -DENABLE_LIBGPOD="$(usex ipod)"
+ -DENABLE_LIBLASTFM="$(usex lastfm)"
+ -DENABLE_LIBMTP="$(usex mtp)"
+ -DENABLE_MOODBAR="$(usex moodbar)"
-DENABLE_GIO=ON
- $(cmake-utils_use wiimote ENABLE_WIIMOTEDEV)
- $(cmake-utils_use projectm ENABLE_VISUALISATIONS)
+ -DENABLE_WIIMOTEDEV="$(usex wiimote)"
+ -DENABLE_VISUALISATIONS="$(usex projectm)"
$(usex projectm '-DUSE_SYSTEM_PROJECTM=ON' '')
- $(cmake-utils_use box ENABLE_BOX)
- $(cmake-utils_use dropbox ENABLE_DROPBOX)
- $(cmake-utils_use googledrive ENABLE_GOOGLE_DRIVE)
- $(cmake-utils_use skydrive ENABLE_SKYDRIVE)
- $(cmake-utils_use ubuntu-one ENABLE_UBUNTU_ONE)
+ -DENABLE_BOX="$(usex box)"
+ -DENABLE_DROPBOX="$(usex dropbox)"
+ -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
+ -DENABLE_SKYDRIVE="$(usex skydrive)"
+ -DENABLE_UBUNTU_ONE="$(usex ubuntu-one)"
-DENABLE_SPOTIFY_BLOB=OFF
-DENABLE_BREAKPAD=OFF
- #$(cmake-utils_use !system-sqlite STATIC_SQLITE)
- #$(cmake-utils_use system-sqlite I_HATE_MY_USERS)
- #$(cmake-utils_use system-sqlite MY_USERS_WILL_SUFFER_BECAUSE_OF_ME)
-DUSE_BUILTIN_TAGLIB=OFF
-DUSE_SYSTEM_GMOCK=ON
)
@@ -148,7 +147,7 @@ src_configure() {
src_test() {
cd "${CMAKE_BUILD_DIR}" || die
- Xemake test
+ virtx emake test
}
pkg_preinst() {
diff --git a/media-sound/clementine/files/clementine-1.3-fix-tokenizer.patch b/media-sound/clementine/files/clementine-1.3-fix-tokenizer.patch
index 6413bf7..4375186 100644
--- a/media-sound/clementine/files/clementine-1.3-fix-tokenizer.patch
+++ b/media-sound/clementine/files/clementine-1.3-fix-tokenizer.patch
@@ -1,7 +1,7 @@
https://github.com/clementine-player/Clementine/issues/5297
---- src/core/database.cpp
-+++ src/core/database.cpp
+--- a/src/core/database.cpp
++++ b/src/core/database.cpp
@@ -265,6 +265,16 @@
StaticInit();
diff --git a/media-sound/clementine/files/clementine-1.3_rc1-cmake.patch b/media-sound/clementine/files/clementine-1.3_rc1-cmake.patch
new file mode 100644
index 0000000..22a922b
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3_rc1-cmake.patch
@@ -0,0 +1,32 @@
+--- Clementine-1.3rc1/CMakeLists.txt
++++ Clementine-1.3rc1/CMakeLists.txt
+@@ -60,7 +60,7 @@
+
+ pkg_check_modules(CDIO libcdio)
+ pkg_check_modules(CHROMAPRINT REQUIRED libchromaprint)
+-pkg_search_module(CRYPTOPP cryptopp libcrypto++)
++#pkg_search_module(CRYPTOPP cryptopp libcrypto++)
+ pkg_check_modules(GIO gio-2.0)
+ pkg_check_modules(GLIB REQUIRED glib-2.0)
+ pkg_check_modules(GOBJECT REQUIRED gobject-2.0)
+@@ -275,13 +275,14 @@
+
+ optional_component(VISUALISATIONS ON "Visualisations")
+
+-if(NOT HAVE_SPOTIFY_BLOB AND NOT CRYPTOPP_FOUND)
+- message(FATAL_ERROR "Either crypto++ must be available or the non-GPL Spotify "
+- "code must be compiled in")
+-elseif(CRYPTOPP_FOUND)
++#if(NOT HAVE_SPOTIFY_BLOB AND NOT CRYPTOPP_FOUND)
++# message(FATAL_ERROR "Either crypto++ must be available or the non-GPL Spotify "
++# "code must be compiled in")
++#elseif(CRYPTOPP_FOUND)
+ set(HAVE_CRYPTOPP ON)
+- set(HAVE_SPOTIFY_DOWNLOADER ON)
+-endif()
++ set(HAVE_SPOTIFY_DOWNLOADER OFF)
++ set(HAVE_SPOTIFY_BLOB OFF)
++#endif()
+
+ # Find DBus if it's enabled
+ if (HAVE_DBUS)
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2016-12-26 23:39 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2016-12-26 23:39 UTC (permalink / raw
To: gentoo-commits
commit: 435d5fdb52747acb507a0cbc1fec3778110e0a37
Author: Alexander Golubev <fatzer2 <AT> gmail <DOT> com>
AuthorDate: Mon Dec 26 22:23:30 2016 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Dec 26 23:38:58 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=435d5fdb
media-sound/clementine-1.3.1: drop echonest support
Gentoo Bug: 573712
Thanks for the patch to Lars Wendler.
Also rename the recently added patch 'clementine-chromaprint14' to meet
gentoo patch naming suggestions.
Closes: https://github.com/gentoo/gentoo/pull/3246
...-1.3.1-r4.ebuild => clementine-1.3.1-r5.ebuild} | 4 +-
....patch => clementine-1.3.1-chromaprint14.patch} | 0
.../clementine-1.3.1-libechonest_removal.patch | 701 +++++++++++++++++++++
3 files changed, 703 insertions(+), 2 deletions(-)
diff --git a/media-sound/clementine/clementine-1.3.1-r4.ebuild b/media-sound/clementine/clementine-1.3.1-r5.ebuild
similarity index 98%
rename from media-sound/clementine/clementine-1.3.1-r4.ebuild
rename to media-sound/clementine/clementine-1.3.1-r5.ebuild
index a61c2fe..4d23bb0 100644
--- a/media-sound/clementine/clementine-1.3.1-r4.ebuild
+++ b/media-sound/clementine/clementine-1.3.1-r5.ebuild
@@ -41,7 +41,6 @@ COMMON_DEPEND="
>=media-libs/chromaprint-0.6
media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0
- media-libs/libechonest:=[qt4(+)]
>=media-libs/libmygpo-qt-1.0.9[qt4(+)]
>=media-libs/taglib-1.8[mp4(+)]
sys-libs/zlib
@@ -95,7 +94,8 @@ S="${WORKDIR}/${MY_P^}"
PATCHES=(
"${FILESDIR}"/${PN}-1.3-fix-tokenizer.patch
"${FILESDIR}"/${P}-fix-desktop-file.patch
- "${FILESDIR}"/${PN}-chromaprint14.patch #603662
+ "${FILESDIR}"/${P}-chromaprint14.patch #603662
+ "${FILESDIR}"/${P}-libechonest_removal.patch
)
src_prepare() {
diff --git a/media-sound/clementine/files/clementine-chromaprint14.patch b/media-sound/clementine/files/clementine-1.3.1-chromaprint14.patch
similarity index 100%
rename from media-sound/clementine/files/clementine-chromaprint14.patch
rename to media-sound/clementine/files/clementine-1.3.1-chromaprint14.patch
diff --git a/media-sound/clementine/files/clementine-1.3.1-libechonest_removal.patch b/media-sound/clementine/files/clementine-1.3.1-libechonest_removal.patch
new file mode 100644
index 00000000..63eb096
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3.1-libechonest_removal.patch
@@ -0,0 +1,701 @@
+Remove depend upon media-libs/libechonest and its support from clementine due to echonest service
+was shutdown and this functionality is useless now and results in nothing but a slight security
+and privacy risk.
+See Gentoo bug #573712.
+Based upon patch extracted from upstream git; original patch info:
+commit a8a0f2e4fdd3d4b2fd23b8628a3abc27c290d01d
+Author: John Maguire <john.maguire@gmail.com>
+Date: Mon Jun 27 14:45:40 2016 +0100
+
+ Remove echonest and update songkick concert fetcher.
+--- Clementine-1.3.1/CMakeLists.txt
++++ Clementine-1.3.1/CMakeLists.txt
+@@ -365,9 +365,6 @@
+ endif (NOT APPLE)
+ endif (USE_SYSTEM_QXT)
+
+-find_path(ECHONEST_INCLUDE_DIRS echonest/echonest_export.h)
+-find_library(ECHONEST_LIBRARIES echonest)
+-
+ # Use system gmock if it's available
+ # We need to look for both gmock and gtest
+ find_path(GMOCK_INCLUDE_DIRS gmock/gmock.h)
+--- Clementine-1.3.1/src/CMakeLists.txt
++++ Clementine-1.3.1/src/CMakeLists.txt
+@@ -35,7 +35,6 @@
+ include_directories(${QTSINGLEAPPLICATION_INCLUDE_DIRS})
+ include_directories(${QTIOCOMPRESSOR_INCLUDE_DIRS})
+ include_directories(${QXT_INCLUDE_DIRS})
+-include_directories(${ECHONEST_INCLUDE_DIRS})
+ include_directories(${SHA2_INCLUDE_DIRS})
+ include_directories(${CHROMAPRINT_INCLUDE_DIRS})
+ include_directories(${MYGPOQT_INCLUDE_DIRS})
+@@ -297,8 +296,6 @@
+ songinfo/artistinfoview.cpp
+ songinfo/collapsibleinfoheader.cpp
+ songinfo/collapsibleinfopane.cpp
+- songinfo/echonestbiographies.cpp
+- songinfo/echonestimages.cpp
+ songinfo/songinfobase.cpp
+ songinfo/songinfofetcher.cpp
+ songinfo/songinfoprovider.cpp
+@@ -586,8 +583,6 @@
+ songinfo/artistinfoview.h
+ songinfo/collapsibleinfoheader.h
+ songinfo/collapsibleinfopane.h
+- songinfo/echonestbiographies.h
+- songinfo/echonestimages.h
+ songinfo/songinfobase.h
+ songinfo/songinfofetcher.h
+ songinfo/songinfoprovider.h
+@@ -822,16 +817,12 @@
+ internet/lastfm/lastfmcompat.cpp
+ internet/lastfm/lastfmservice.cpp
+ internet/lastfm/lastfmsettingspage.cpp
+- songinfo/echonestsimilarartists.cpp
+- songinfo/echonesttags.cpp
+ songinfo/lastfmtrackinfoprovider.cpp
+ songinfo/tagwidget.cpp
+ HEADERS
+ covers/lastfmcoverprovider.h
+ internet/lastfm/lastfmservice.h
+ internet/lastfm/lastfmsettingspage.h
+- songinfo/echonestsimilarartists.h
+- songinfo/echonesttags.h
+ songinfo/lastfmtrackinfoprovider.h
+ songinfo/tagwidget.h
+ UI
+@@ -1241,7 +1232,6 @@
+ ${TAGLIB_LIBRARIES}
+ ${MYGPOQT_LIBRARIES}
+ ${CHROMAPRINT_LIBRARIES}
+- ${ECHONEST_LIBRARIES}
+ ${GOBJECT_LIBRARIES}
+ ${GLIB_LIBRARIES}
+ ${GIO_LIBRARIES}
+--- Clementine-1.3.1/src/main.cpp
++++ Clementine-1.3.1/src/main.cpp
+@@ -76,8 +76,6 @@
+ #include <glib.h>
+ #include <gst/gst.h>
+
+-#include <echonest/Config.h>
+-
+ #ifdef Q_OS_DARWIN
+ #include <sys/resource.h>
+ #include <sys/sysctl.h>
+@@ -401,8 +399,8 @@
+ // Add root CA cert for SoundCloud, whose certificate is missing on OS X.
+ QSslSocket::addDefaultCaCertificates(
+ QSslCertificate::fromPath(":/soundcloud-ca.pem", QSsl::Pem));
+- QSslSocket::addDefaultCaCertificates(
+- QSslCertificate::fromPath(":/Equifax_Secure_Certificate_Authority.pem", QSsl::Pem));
++ QSslSocket::addDefaultCaCertificates(QSslCertificate::fromPath(
++ ":/Equifax_Secure_Certificate_Authority.pem", QSsl::Pem));
+
+ // Has the user forced a different language?
+ QString override_language = options.language();
+@@ -440,10 +438,6 @@
+ Application app;
+ app.set_language_name(language);
+
+- Echonest::Config::instance()->setAPIKey("DFLFLJBUF4EGTXHIG");
+- Echonest::Config::instance()->setNetworkAccessManager(
+- new NetworkAccessManager);
+-
+ // Network proxy
+ QNetworkProxyFactory::setApplicationProxyFactory(
+ NetworkProxyFactory::Instance());
+--- Clementine-1.3.1/src/songinfo/artistinfoview.cpp
++++ Clementine-1.3.1/src/songinfo/artistinfoview.cpp
+@@ -16,25 +16,12 @@
+ */
+
+ #include "artistinfoview.h"
+-#include "echonestbiographies.h"
+-#include "echonestimages.h"
+ #include "songinfofetcher.h"
+ #include "songkickconcerts.h"
+ #include "widgets/prettyimageview.h"
+
+-#ifdef HAVE_LIBLASTFM
+-#include "echonestsimilarartists.h"
+-#include "echonesttags.h"
+-#endif
+-
+ ArtistInfoView::ArtistInfoView(QWidget* parent) : SongInfoBase(parent) {
+- fetcher_->AddProvider(new EchoNestBiographies);
+- fetcher_->AddProvider(new EchoNestImages);
+ fetcher_->AddProvider(new SongkickConcerts);
+-#ifdef HAVE_LIBLASTFM
+- fetcher_->AddProvider(new EchoNestSimilarArtists);
+- fetcher_->AddProvider(new EchoNestTags);
+-#endif
+ }
+
+ ArtistInfoView::~ArtistInfoView() {}
+--- Clementine-1.3.1/src/songinfo/echonestbiographies.cpp
++++ Clementine-1.3.1/src/songinfo/echonestbiographies.cpp
+@@ -1,123 +0,0 @@
+-/* This file is part of Clementine.
+- Copyright 2010, David Sansome <me@davidsansome.com>
+-
+- Clementine is free software: you can redistribute it and/or modify
+- it under the terms of the GNU General Public License as published by
+- the Free Software Foundation, either version 3 of the License, or
+- (at your option) any later version.
+-
+- Clementine is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#include "echonestbiographies.h"
+-
+-#include <memory>
+-
+-#include <echonest/Artist.h>
+-
+-#include "songinfotextview.h"
+-#include "core/logging.h"
+-#include "ui/iconloader.h"
+-
+-struct EchoNestBiographies::Request {
+- Request(int id) : id_(id), artist_(new Echonest::Artist) {}
+-
+- int id_;
+- std::unique_ptr<Echonest::Artist> artist_;
+-};
+-
+-EchoNestBiographies::EchoNestBiographies() {
+- site_relevance_["wikipedia"] = 100;
+- site_relevance_["lastfm"] = 60;
+- site_relevance_["amazon"] = 30;
+-
+- site_icons_["amazon"] = IconLoader::Load("amazon", IconLoader::Provider);
+- site_icons_["aol"] = IconLoader::Load("aol", IconLoader::Provider);
+- site_icons_["cdbaby"] = IconLoader::Load("cdbaby", IconLoader::Provider);
+- site_icons_["lastfm"] = IconLoader::Load("as", IconLoader::Lastfm);
+- site_icons_["mog"] = IconLoader::Load("mog", IconLoader::Provider);
+- site_icons_["mtvmusic"] = IconLoader::Load("mtvmusic", IconLoader::Provider);
+- site_icons_["myspace"] = IconLoader::Load("myspace", IconLoader::Provider);
+- site_icons_["wikipedia"] = IconLoader::Load("wikipedia", IconLoader::Provider);
+-}
+-
+-void EchoNestBiographies::FetchInfo(int id, const Song& metadata) {
+- std::shared_ptr<Request> request(new Request(id));
+- request->artist_->setName(metadata.artist());
+-
+- QNetworkReply* reply = request->artist_->fetchBiographies();
+- connect(reply, SIGNAL(finished()), SLOT(RequestFinished()));
+- requests_[reply] = request;
+-}
+-
+-void EchoNestBiographies::RequestFinished() {
+- QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
+- if (!reply || !requests_.contains(reply)) return;
+- reply->deleteLater();
+-
+- RequestPtr request = requests_.take(reply);
+-
+- try {
+- request->artist_->parseProfile(reply);
+- }
+- catch (Echonest::ParseError e) {
+- qLog(Warning) << "Error parsing echonest reply:" << e.errorType()
+- << e.what();
+- }
+-
+- QSet<QString> already_seen;
+-
+- for (const Echonest::Biography& bio : request->artist_->biographies()) {
+- QString canonical_site = bio.site().toLower();
+- canonical_site.replace(QRegExp("[^a-z]"), "");
+-
+- if (already_seen.contains(canonical_site)) continue;
+- already_seen.insert(canonical_site);
+-
+- CollapsibleInfoPane::Data data;
+- data.id_ = "echonest/bio/" + bio.site();
+- data.title_ = tr("Biography from %1").arg(bio.site());
+- data.type_ = CollapsibleInfoPane::Data::Type_Biography;
+-
+- if (site_relevance_.contains(canonical_site))
+- data.relevance_ = site_relevance_[canonical_site];
+- if (site_icons_.contains(canonical_site))
+- data.icon_ = site_icons_[canonical_site];
+-
+- SongInfoTextView* editor = new SongInfoTextView;
+- QString text;
+- // Add a link to the bio webpage at the top if we have one
+- if (!bio.url().isEmpty()) {
+- QString bio_url = bio.url().toEncoded();
+- if (bio.site() == "facebook") {
+- bio_url.replace("graph.facebook.com", "www.facebook.com");
+- }
+- text += "<p><a href=\"" + bio_url + "\">" +
+- tr("Open in your browser") + "</a></p>";
+- }
+-
+- text += bio.text();
+- if (bio.site() == "last.fm") {
+- // Echonest lost formatting and it seems there is currently no plans on
+- // Echonest side for changing this.
+- // But with last.fm, we can guess newlines: " " corresponds to a newline
+- // (this seems to be because on last.fm' website, extra blank is inserted
+- // before <br /> tag, and this blank is kept).
+- // This is tricky, but this make the display nicer for last.fm
+- // biographies.
+- text.replace(" ", "<p>");
+- }
+- editor->SetHtml(text);
+- data.contents_ = editor;
+-
+- emit InfoReady(request->id_, data);
+- }
+-
+- emit Finished(request->id_);
+-}
+--- Clementine-1.3.1/src/songinfo/echonestbiographies.h
++++ Clementine-1.3.1/src/songinfo/echonestbiographies.h
+@@ -1,48 +0,0 @@
+-/* This file is part of Clementine.
+- Copyright 2010, David Sansome <me@davidsansome.com>
+-
+- Clementine is free software: you can redistribute it and/or modify
+- it under the terms of the GNU General Public License as published by
+- the Free Software Foundation, either version 3 of the License, or
+- (at your option) any later version.
+-
+- Clementine is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#ifndef ECHONESTBIOGRAPHIES_H
+-#define ECHONESTBIOGRAPHIES_H
+-
+-#include <memory>
+-
+-#include "songinfoprovider.h"
+-
+-class QNetworkReply;
+-
+-class EchoNestBiographies : public SongInfoProvider {
+- Q_OBJECT
+-
+- public:
+- EchoNestBiographies();
+-
+- void FetchInfo(int id, const Song& metadata);
+-
+- private slots:
+- void RequestFinished();
+-
+- private:
+- QMap<QString, int> site_relevance_;
+- QMap<QString, QIcon> site_icons_;
+-
+- struct Request;
+- typedef std::shared_ptr<Request> RequestPtr;
+-
+- QMap<QNetworkReply*, RequestPtr> requests_;
+-};
+-
+-#endif // ECHONESTBIOGRAPHIES_H
+--- Clementine-1.3.1/src/songinfo/echonestsimilarartists.cpp
++++ Clementine-1.3.1/src/songinfo/echonestsimilarartists.cpp
+@@ -1,76 +0,0 @@
+-/* This file is part of Clementine.
+- Copyright 2010, David Sansome <me@davidsansome.com>
+-
+- Clementine is free software: you can redistribute it and/or modify
+- it under the terms of the GNU General Public License as published by
+- the Free Software Foundation, either version 3 of the License, or
+- (at your option) any later version.
+-
+- Clementine is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#include "echonestsimilarartists.h"
+-#include "tagwidget.h"
+-#include "core/logging.h"
+-#include "ui/iconloader.h"
+-
+-#include <echonest/Artist.h>
+-
+-Q_DECLARE_METATYPE(QVector<QString>);
+-
+-void EchoNestSimilarArtists::FetchInfo(int id, const Song& metadata) {
+- using Echonest::Artist;
+-
+- Artist::SearchParams params;
+- params << Artist::SearchParamEntry(Artist::Name, metadata.artist());
+- params << Artist::SearchParamEntry(Artist::MinHotttnesss, 0.5);
+-
+- QNetworkReply* reply = Echonest::Artist::fetchSimilar(params);
+- connect(reply, SIGNAL(finished()), SLOT(RequestFinished()));
+- requests_[reply] = id;
+-}
+-
+-void EchoNestSimilarArtists::RequestFinished() {
+- QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
+- if (!reply || !requests_.contains(reply)) return;
+- reply->deleteLater();
+-
+- int id = requests_.take(reply);
+-
+- Echonest::Artists artists;
+- try {
+- artists = Echonest::Artist::parseSimilar(reply);
+- }
+- catch (Echonest::ParseError e) {
+- qLog(Warning) << "Error parsing echonest reply:" << e.errorType()
+- << e.what();
+- }
+-
+- if (!artists.isEmpty()) {
+- CollapsibleInfoPane::Data data;
+- data.id_ = "echonest/similarartists";
+- data.title_ = tr("Similar artists");
+- data.type_ = CollapsibleInfoPane::Data::Type_Similar;
+- data.icon_ = IconLoader::Load("echonest", IconLoader::Provider);
+-
+- TagWidget* widget = new TagWidget(TagWidget::Type_Artists);
+- data.contents_ = widget;
+-
+- widget->SetIcon(IconLoader::Load("x-clementine-artist", IconLoader::Base));
+-
+- for (const Echonest::Artist& artist : artists) {
+- widget->AddTag(artist.name());
+- if (widget->count() >= 10) break;
+- }
+-
+- emit InfoReady(id, data);
+- }
+-
+- emit Finished(id);
+-}
+--- Clementine-1.3.1/src/songinfo/echonestsimilarartists.h
++++ Clementine-1.3.1/src/songinfo/echonestsimilarartists.h
+@@ -1,38 +0,0 @@
+-/* This file is part of Clementine.
+- Copyright 2010, David Sansome <me@davidsansome.com>
+-
+- Clementine is free software: you can redistribute it and/or modify
+- it under the terms of the GNU General Public License as published by
+- the Free Software Foundation, either version 3 of the License, or
+- (at your option) any later version.
+-
+- Clementine is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#ifndef ECHONESTSIMILARARTISTS_H
+-#define ECHONESTSIMILARARTISTS_H
+-
+-#include "songinfoprovider.h"
+-
+-class QNetworkReply;
+-
+-class EchoNestSimilarArtists : public SongInfoProvider {
+- Q_OBJECT
+-
+- public:
+- void FetchInfo(int id, const Song& metadata);
+-
+- private slots:
+- void RequestFinished();
+-
+- private:
+- QMap<QNetworkReply*, int> requests_;
+-};
+-
+-#endif // ECHONESTSIMILARARTISTS_H
+--- Clementine-1.3.1/src/songinfo/echonesttags.cpp
++++ Clementine-1.3.1/src/songinfo/echonesttags.cpp
+@@ -1,80 +0,0 @@
+-/* This file is part of Clementine.
+- Copyright 2010, David Sansome <me@davidsansome.com>
+-
+- Clementine is free software: you can redistribute it and/or modify
+- it under the terms of the GNU General Public License as published by
+- the Free Software Foundation, either version 3 of the License, or
+- (at your option) any later version.
+-
+- Clementine is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#include "echonesttags.h"
+-
+-#include <memory>
+-
+-#include <echonest/Artist.h>
+-
+-#include "tagwidget.h"
+-#include "core/logging.h"
+-#include "ui/iconloader.h"
+-
+-struct EchoNestTags::Request {
+- Request(int id) : id_(id), artist_(new Echonest::Artist) {}
+-
+- int id_;
+- std::unique_ptr<Echonest::Artist> artist_;
+-};
+-
+-void EchoNestTags::FetchInfo(int id, const Song& metadata) {
+- std::shared_ptr<Request> request(new Request(id));
+- request->artist_->setName(metadata.artist());
+-
+- QNetworkReply* reply = request->artist_->fetchTerms();
+- connect(reply, SIGNAL(finished()), SLOT(RequestFinished()));
+- requests_[reply] = request;
+-}
+-
+-void EchoNestTags::RequestFinished() {
+- QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
+- if (!reply || !requests_.contains(reply)) return;
+- reply->deleteLater();
+-
+- RequestPtr request = requests_.take(reply);
+-
+- try {
+- request->artist_->parseProfile(reply);
+- }
+- catch (Echonest::ParseError e) {
+- qLog(Warning) << "Error parsing echonest reply:" << e.errorType()
+- << e.what();
+- }
+-
+- if (!request->artist_->terms().isEmpty()) {
+- CollapsibleInfoPane::Data data;
+- data.id_ = "echonest/artisttags";
+- data.title_ = tr("Artist tags");
+- data.type_ = CollapsibleInfoPane::Data::Type_Tags;
+- data.icon_ = IconLoader::Load("icon_tag", IconLoader::Lastfm);
+-
+- TagWidget* widget = new TagWidget(TagWidget::Type_Tags);
+- data.contents_ = widget;
+-
+- widget->SetIcon(data.icon_);
+-
+- for (const Echonest::Term& term : request->artist_->terms()) {
+- widget->AddTag(term.name());
+- if (widget->count() >= 10) break;
+- }
+-
+- emit InfoReady(request->id_, data);
+- }
+-
+- emit Finished(request->id_);
+-}
+--- Clementine-1.3.1/src/songinfo/echonesttags.h
++++ Clementine-1.3.1/src/songinfo/echonesttags.h
+@@ -1,43 +0,0 @@
+-/* This file is part of Clementine.
+- Copyright 2010, David Sansome <me@davidsansome.com>
+-
+- Clementine is free software: you can redistribute it and/or modify
+- it under the terms of the GNU General Public License as published by
+- the Free Software Foundation, either version 3 of the License, or
+- (at your option) any later version.
+-
+- Clementine is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#ifndef ECHONESTTAGS_H
+-#define ECHONESTTAGS_H
+-
+-#include <memory>
+-
+-#include "songinfoprovider.h"
+-
+-class QNetworkReply;
+-
+-class EchoNestTags : public SongInfoProvider {
+- Q_OBJECT
+-
+- public:
+- void FetchInfo(int id, const Song& metadata);
+-
+- private slots:
+- void RequestFinished();
+-
+- private:
+- struct Request;
+- typedef std::shared_ptr<Request> RequestPtr;
+-
+- QMap<QNetworkReply*, RequestPtr> requests_;
+-};
+-
+-#endif // ECHONESTTAGS_H
+--- Clementine-1.3.1/src/songinfo/songkickconcerts.cpp
++++ Clementine-1.3.1/src/songinfo/songkickconcerts.cpp
+@@ -21,9 +21,6 @@
+ #include <QVBoxLayout>
+ #include <QXmlStreamWriter>
+
+-#include <echonest/Artist.h>
+-#include <echonest/TypeInformation.h>
+-
+ #include <qjson/parser.h>
+
+ #include "core/closure.h"
+@@ -31,77 +28,64 @@
+ #include "songkickconcertwidget.h"
+ #include "ui/iconloader.h"
+
+-const char* SongkickConcerts::kSongkickArtistBucket = "songkick";
+-const char* SongkickConcerts::kSongkickArtistCalendarUrl =
+- "https://api.songkick.com/api/3.0/artists/%1/calendar.json?"
+- "per_page=5&"
+- "apikey=8rgKfy1WU6IlJFfN";
++namespace {
++const char* kSongkickArtistCalendarUrl =
++ "https://api.songkick.com/api/3.0/artists/%1/calendar.json";
++const char* kSongkickArtistSearchUrl =
++ "https://api.songkick.com/api/3.0/search/artists.json";
++const char* kSongkickApiKey = "8rgKfy1WU6IlJFfN";
++} // namespace
+
+ SongkickConcerts::SongkickConcerts() {
+ Geolocator* geolocator = new Geolocator;
+ geolocator->Geolocate();
+ connect(geolocator, SIGNAL(Finished(Geolocator::LatLng)),
+ SLOT(GeolocateFinished(Geolocator::LatLng)));
+- NewClosure(geolocator, SIGNAL(Finished(Geolocator::LatLng)), geolocator,
+- SLOT(deleteLater()));
++ connect(geolocator, SIGNAL(Finished(Geolocator::LatLng)), geolocator,
++ SLOT(deleteLater()));
+ }
+
+ void SongkickConcerts::FetchInfo(int id, const Song& metadata) {
+- Echonest::Artist::SearchParams params;
+- params.push_back(
+- qMakePair(Echonest::Artist::Name, QVariant(metadata.artist())));
+- qLog(Debug) << "Params:" << params;
+- QNetworkReply* reply = Echonest::Artist::search(
+- params,
+- Echonest::ArtistInformation(Echonest::ArtistInformation::NoInformation,
+- QStringList() << kSongkickArtistBucket));
+- qLog(Debug) << reply->request().url();
++ if (metadata.artist().isEmpty()) {
++ emit Finished(id);
++ return;
++ }
++
++ QUrl url(kSongkickArtistSearchUrl);
++ url.addQueryItem("apikey", kSongkickApiKey);
++ url.addQueryItem("query", metadata.artist());
++
++ QNetworkRequest request(url);
++ QNetworkReply* reply = network_.get(request);
+ NewClosure(reply, SIGNAL(finished()), this,
+ SLOT(ArtistSearchFinished(QNetworkReply*, int)), reply, id);
+ }
+
+ void SongkickConcerts::ArtistSearchFinished(QNetworkReply* reply, int id) {
+ reply->deleteLater();
+- try {
+- Echonest::Artists artists = Echonest::Artist::parseSearch(reply);
+- if (artists.isEmpty()) {
+- qLog(Debug) << "Failed to find artist in echonest";
+- emit Finished(id);
+- return;
+- }
+-
+- const Echonest::Artist& artist = artists[0];
+- const Echonest::ForeignIds& foreign_ids = artist.foreignIds();
+- QString songkick_id;
+- for (const Echonest::ForeignId& id : foreign_ids) {
+- if (id.catalog == "songkick") {
+- songkick_id = id.foreign_id;
+- break;
+- }
+- }
+-
+- if (songkick_id.isEmpty()) {
+- qLog(Debug) << "Failed to fetch songkick foreign id for artist";
+- emit Finished(id);
+- return;
+- }
+-
+- QStringList split = songkick_id.split(':');
+- if (split.count() != 3) {
+- qLog(Error) << "Weird songkick id";
+- emit Finished(id);
+- return;
+- }
+-
+- FetchSongkickCalendar(split[2], id);
+- } catch (Echonest::ParseError& e) {
+- qLog(Error) << "Error parsing echonest reply:" << e.errorType() << e.what();
++
++ QJson::Parser parser;
++ QVariantMap json = parser.parse(reply).toMap();
++
++ QVariantMap results_page = json["resultsPage"].toMap();
++ QVariantMap results = results_page["results"].toMap();
++ QVariantList artists = results["artist"].toList();
++
++ if (artists.isEmpty()) {
+ emit Finished(id);
++ return;
+ }
++
++ QVariantMap artist = artists.first().toMap();
++ QString artist_id = artist["id"].toString();
++
++ FetchSongkickCalendar(artist_id, id);
+ }
+
+ void SongkickConcerts::FetchSongkickCalendar(const QString& artist_id, int id) {
+ QUrl url(QString(kSongkickArtistCalendarUrl).arg(artist_id));
++ url.addQueryItem("per_page", "5");
++ url.addQueryItem("apikey", kSongkickApiKey);
+ qLog(Debug) << url;
+ QNetworkReply* reply = network_.get(QNetworkRequest(url));
+ NewClosure(reply, SIGNAL(finished()), this,
+--- Clementine-1.3.1/src/songinfo/songkickconcerts.h
++++ Clementine-1.3.1/src/songinfo/songkickconcerts.h
+@@ -44,9 +44,6 @@
+
+ NetworkAccessManager network_;
+ Geolocator::LatLng latlng_;
+-
+- static const char* kSongkickArtistBucket;
+- static const char* kSongkickArtistCalendarUrl;
+ };
+
+ #endif
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2017-11-19 15:09 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2017-11-19 15:09 UTC (permalink / raw
To: gentoo-commits
commit: f36c3c321d5e383adbfb2ed448ad1e9d1f598179
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 19 12:39:38 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 15:09:08 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f36c3c32
media-sound/clementine: Switch 9999 to qt5
Forward-port fts3-tokenizer fix to qt5 branch.
Add patch to properly find linguist-tools for lconvert.
Closes: https://bugs.gentoo.org/562610
Package-Manager: Portage-2.3.14, Repoman-2.3.6
media-sound/clementine/clementine-9999.ebuild | 47 ++++++++++++++++------
.../files/clementine-fts3-tokenizer.patch | 36 +++++++++++++++++
.../clementine/files/clementine-qt5-lconvert.patch | 28 +++++++++++++
3 files changed, 98 insertions(+), 13 deletions(-)
diff --git a/media-sound/clementine/clementine-9999.ebuild b/media-sound/clementine/clementine-9999.ebuild
index 3e249872f86..50ae57df046 100644
--- a/media-sound/clementine/clementine-9999.ebuild
+++ b/media-sound/clementine/clementine-9999.ebuild
@@ -3,6 +3,7 @@
EAPI=6
+EGIT_BRANCH="qt5"
EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
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"
@@ -19,7 +20,7 @@ LICENSE="GPL-3"
SLOT="0"
[[ ${PV} == *9999* ]] || \
KEYWORDS="~amd64 ~x86"
-IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
+IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote +X"
REQUIRED_USE="
udisks? ( dbus )
@@ -27,35 +28,42 @@ REQUIRED_USE="
"
COMMON_DEPEND="
+ app-crypt/qca:2[qt5(+)]
dev-db/sqlite:=
dev-libs/crypto++
dev-libs/glib:2
dev-libs/libxml2
dev-libs/protobuf:=
- dev-libs/qjson
- dev-qt/qtcore:4[ssl]
- dev-qt/qtgui:4
- dev-qt/qtopengl:4
- dev-qt/qtsql:4
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5[ssl]
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtwebkit:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
media-libs/chromaprint:=
media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0
- >=media-libs/libmygpo-qt-1.0.9[qt4(+)]
+ >=media-libs/libmygpo-qt-1.0.9[qt5]
media-libs/taglib[mp4(+)]
sys-libs/zlib
virtual/glu
virtual/opengl
- x11-libs/libX11
cdda? ( dev-libs/libcdio )
- dbus? ( dev-qt/qtdbus:4 )
+ dbus? ( dev-qt/qtdbus:5 )
ipod? ( >=media-libs/libgpod-0.8.0 )
- lastfm? ( >=media-libs/liblastfm-1[qt4(+)] )
+ lastfm? ( >=media-libs/liblastfm-1[qt5] )
moodbar? ( sci-libs/fftw:3.0 )
mtp? ( >=media-libs/libmtp-1.0.0 )
projectm? (
media-libs/glew:=
>=media-libs/libprojectm-1.2.0
)
+ X? (
+ dev-qt/qtx11extras:5
+ x11-libs/libX11
+ )
"
# Note: sqlite driver of dev-qt/qtsql is bundled, so no sqlite use is required; check if this can be overcome someway;
# Libprojectm-1.2 seems to work fine, so no reason to use bundled version; check clementine's patches:
@@ -77,7 +85,7 @@ DEPEND="${COMMON_DEPEND}
dev-cpp/gmock
)
dev-libs/boost:=
- dev-qt/qttest:4
+ dev-qt/linguist-tools:5
sys-devel/gettext
virtual/pkgconfig
box? ( dev-cpp/sparsehash )
@@ -86,15 +94,22 @@ DEPEND="${COMMON_DEPEND}
pulseaudio? ( media-sound/pulseaudio )
seafile? ( dev-cpp/sparsehash )
skydrive? ( dev-cpp/sparsehash )
- test? ( gnome-base/gsettings-desktop-schemas )
+ test? (
+ dev-qt/qttest:5
+ gnome-base/gsettings-desktop-schemas
+ )
"
+
DOCS=( Changelog README.md )
MY_P="${P/_}"
[[ ${PV} == *9999* ]] || \
S="${WORKDIR}/${MY_P^}"
-PATCHES=( "${FILESDIR}"/${PN}-1.3-fix-tokenizer.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-fts3-tokenizer.patch
+ "${FILESDIR}"/${PN}-qt5-lconvert.patch
+)
src_prepare() {
l10n_find_plocales_changes "src/translations" "" ".po"
@@ -104,6 +119,11 @@ src_prepare() {
sed -i \
-e '/add_test_file(translations_test.cpp/d' \
tests/CMakeLists.txt || die
+
+ if ! use test; then
+ sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
+ cmake_comment_add_subdirectory tests
+ fi
}
src_configure() {
@@ -139,6 +159,7 @@ src_configure() {
-DENABLE_LIBPULSE="$(usex pulseaudio)"
-DENABLE_UDISKS2="$(usex udisks)"
-DENABLE_WIIMOTEDEV="$(usex wiimote)"
+ -DCMAKE_DISABLE_FIND_PACKAGE_X11="$(usex X)"
)
use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
diff --git a/media-sound/clementine/files/clementine-fts3-tokenizer.patch b/media-sound/clementine/files/clementine-fts3-tokenizer.patch
new file mode 100644
index 00000000000..41a5cd76c99
--- /dev/null
+++ b/media-sound/clementine/files/clementine-fts3-tokenizer.patch
@@ -0,0 +1,36 @@
+From 77b6d72a3e8d841977a3e30ea435cd9e9289fc96 Mon Sep 17 00:00:00 2001
+From: Alexander Golubev <fatzer2@gmail.com>
+Date: Thu, 16 Mar 2017 14:54:55 +0300
+Subject: [PATCH] core/database: configure fts3 tokenizer support
+
+Original patch by Arfrever
+This fixes https://github.com/clementine-player/Clementine/issues/5297
+---
+ src/core/database.cpp | 14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/core/database.cpp b/src/core/database.cpp
+index 86e8a1052..36113d8c1 100644
+--- a/src/core/database.cpp
++++ b/src/core/database.cpp
+@@ -265,6 +265,20 @@ QSqlDatabase Database::Connect() {
+ StaticInit();
+
+ {
++
++#ifdef SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER
++ // In case sqlite>=3.12 is compiled without -DSQLITE_ENABLE_FTS3_TOKENIZER (generally a good idea
++ // due to security reasons) the fts3 support should be enabled explicitly.
++ // see https://github.com/clementine-player/Clementine/issues/5297
++ QVariant v = db.driver()->handle();
++ if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*") == 0) {
++ sqlite3* handle = *static_cast<sqlite3**>(v.data());
++ if (handle) {
++ sqlite3_db_config(handle, SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER, 1, NULL);
++ }
++ }
++#endif
++
+ QSqlQuery set_fts_tokenizer(db);
+ set_fts_tokenizer.prepare("SELECT fts3_tokenizer(:name, :pointer)");
+ set_fts_tokenizer.bindValue(":name", "unicode");
diff --git a/media-sound/clementine/files/clementine-qt5-lconvert.patch b/media-sound/clementine/files/clementine-qt5-lconvert.patch
new file mode 100644
index 00000000000..8565f30cee0
--- /dev/null
+++ b/media-sound/clementine/files/clementine-qt5-lconvert.patch
@@ -0,0 +1,28 @@
+From 5f75801a08a606073c700bd829ea694950de0729 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Sun, 19 Nov 2017 16:00:55 +0100
+Subject: [PATCH] Properly find Qt5LinguistTools
+
+---
+ CMakeLists.txt | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4022c383b..5bdb2a00e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -45,9 +45,8 @@ if(NOT APPLE)
+ find_package(Qt5 COMPONENTS WebKitWidgets)
+ endif(NOT APPLE)
+
+-# Find Qt's lconvert binary. Try qt's binary dir first, fall back to looking in PATH
+-find_program(QT_LCONVERT_EXECUTABLE NAMES lconvert lconvert-qt5 PATHS ${QT_BINARY_DIR} NO_DEFAULT_PATH)
+-find_program(QT_LCONVERT_EXECUTABLE NAMES lconvert lconvert-qt5)
++find_package(Qt5LinguistTools CONFIG REQUIRED)
++set(QT_LCONVERT_EXECUTABLE Qt5::lconvert)
+
+ if(APPLE)
+ if(NOT QT_MAC_USE_COCOA)
+--
+2.15.0
+
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2017-12-19 9:32 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2017-12-19 9:32 UTC (permalink / raw
To: gentoo-commits
commit: 85f6b085c7f460f2ac9b8f64781151f082d9e2cf
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 19 09:32:08 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Dec 19 09:32:28 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=85f6b085
media-sound/clementine: Drop old
Closes: https://bugs.gentoo.org/640300
Package-Manager: Portage-2.3.13, Repoman-2.3.4
media-sound/clementine/Manifest | 1 -
media-sound/clementine/clementine-1.3.1-r5.ebuild | 174 -----
.../files/clementine-1.3.1-chromaprint14.patch | 41 --
.../files/clementine-1.3.1-fix-desktop-file.patch | 52 --
.../clementine-1.3.1-libechonest_removal.patch | 701 ---------------------
media-sound/clementine/metadata.xml | 2 -
6 files changed, 971 deletions(-)
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 59c2e0dfbb0..e631e549623 100644
--- a/media-sound/clementine/Manifest
+++ b/media-sound/clementine/Manifest
@@ -1,2 +1 @@
-DIST clementine-1.3.1.tar.gz 8501827 BLAKE2B ebb003f28f9a4dd8fff4e5a92aeb1b6c948be794731c202241b8cb91f4678d6b2d035d6c9cd0d6e7b4b7d9a494d3c1c5bb5e88243e7a34e565c07c34d048ebdd SHA512 1942a046be24a583b5e2095dd39dc736c1b14a47dc4aad61d6252c1fccf745c26d7b35da907a220d5dc8c0736f5b589d050ed9582de343aa3cb5abc607001790
DIST clementine-1.3.1_p20171113.tar.gz 8467904 BLAKE2B bf1f59b987c0e4ec5c2ced00fab07c1a7e1df0eb5a46e90358b37eaaeaa916fb3e6a08ad79fc5fb791342d857783f615eb3726974dcfef9388da2793b1b7fe6a SHA512 39c459be8e4c5dd53ab9de6cdfd57f947926ccc2cd39ce2f72460bb991f7b2a28e6bc074e7bc23b0eba81c3d630e91dc2373794832c1089a9b5de7b212b94674
diff --git a/media-sound/clementine/clementine-1.3.1-r5.ebuild b/media-sound/clementine/clementine-1.3.1-r5.ebuild
deleted file mode 100644
index 88c6a2096dc..00000000000
--- a/media-sound/clementine/clementine-1.3.1-r5.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
-
-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"
-
-inherit cmake-utils flag-o-matic xdg-utils gnome2-utils virtualx
-[[ ${PV} == *9999* ]] && inherit git-r3
-
-DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
-HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
-[[ ${PV} == *9999* ]] || \
-SRC_URI="https://github.com/clementine-player/Clementine/archive/${PV/_}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-[[ ${PV} == *9999* ]] || \
-KEYWORDS="amd64 x86"
-IUSE="amazoncloud box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio skydrive test +udisks vkontakte wiimote"
-IUSE+="${LANGS// / linguas_}"
-
-REQUIRED_USE="
- udisks? ( dbus )
- wiimote? ( dbus )
-"
-
-COMMON_DEPEND="
- dev-db/sqlite:=
- >=dev-libs/glib-2.24.1-r1
- dev-libs/libxml2
- dev-libs/protobuf:=
- dev-libs/qjson
- >=dev-qt/qtcore-4.5:4[ssl]
- >=dev-qt/qtgui-4.5:4
- >=dev-qt/qtopengl-4.5:4
- >=dev-qt/qtsql-4.5:4
- >=media-libs/chromaprint-0.6
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0
- >=media-libs/libmygpo-qt-1.0.9[qt4(+)]
- >=media-libs/taglib-1.8[mp4(+)]
- sys-libs/zlib
- dev-libs/crypto++
- virtual/glu
- virtual/opengl
- x11-libs/libX11
- cdda? ( dev-libs/libcdio )
- dbus? ( >=dev-qt/qtdbus-4.5:4 )
- ipod? ( >=media-libs/libgpod-0.8.0 )
- lastfm? ( >=media-libs/liblastfm-1[qt4(+)] )
- mtp? ( >=media-libs/libmtp-1.0.0 )
- moodbar? ( sci-libs/fftw:3.0 )
- projectm? ( media-libs/glew:=
- >=media-libs/libprojectm-1.2.0 )
-"
-# Note: sqlite driver of dev-qt/qtsql is bundled, so no sqlite use is required; check if this can be overcome someway;
-# Libprojectm-1.2 seams to work fine, so no reasons to use bundled version; check the clementine's patches:
-# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
-# Still possibly essential but not applied yet patches are:
-# 06-fix-numeric-locale.patch
-# 08-stdlib.h-for-rand.patch
-RDEPEND="${COMMON_DEPEND}
- dbus? ( udisks? ( sys-fs/udisks:0 ) )
- mms? ( media-plugins/gst-plugins-libmms:1.0 )
- mtp? ( gnome-base/gvfs[mtp] )
- media-plugins/gst-plugins-meta:1.0
- media-plugins/gst-plugins-soup:1.0
- media-plugins/gst-plugins-taglib:1.0
-"
-DEPEND="${COMMON_DEPEND}
- >=dev-libs/boost-1.39:=
- virtual/pkgconfig
- sys-devel/gettext
- dev-qt/qttest:4
- || (
- >=dev-cpp/gtest-1.8.0
- dev-cpp/gmock
- )
- amazoncloud? ( dev-cpp/sparsehash )
- box? ( dev-cpp/sparsehash )
- dropbox? ( dev-cpp/sparsehash )
- googledrive? ( dev-cpp/sparsehash )
- pulseaudio? ( media-sound/pulseaudio )
- skydrive? ( dev-cpp/sparsehash )
- test? ( gnome-base/gsettings-desktop-schemas )
-"
-DOCS=( Changelog README.md )
-
-MY_P="${P/_}"
-[[ ${PV} == *9999* ]] || \
-S="${WORKDIR}/${MY_P^}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.3-fix-tokenizer.patch
- "${FILESDIR}"/${P}-fix-desktop-file.patch
- "${FILESDIR}"/${P}-chromaprint14.patch #603662
- "${FILESDIR}"/${P}-libechonest_removal.patch
-)
-
-src_prepare() {
- cmake-utils_src_prepare
-
- # some tests fail or hang
- sed -i \
- -e '/add_test_file(translations_test.cpp/d' \
- tests/CMakeLists.txt || die
-}
-
-src_configure() {
- local langs x
- for x in ${LANGS}; do
- use linguas_${x} && langs+=" ${x}"
- done
-
- # spotify is not in portage
- local mycmakeargs=(
- -DBUILD_WERROR=OFF
- -DLINGUAS="${langs}"
- -DENABLE_AMAZON_CLOUD_DRIVE="$(usex amazoncloud)"
- -DENABLE_AUDIOCD="$(usex cdda)"
- -DENABLE_DBUS="$(usex dbus)"
- -DENABLE_DEVICEKIT="$(usex udisks)"
- -DENABLE_LIBGPOD="$(usex ipod)"
- -DENABLE_LIBLASTFM="$(usex lastfm)"
- -DENABLE_LIBMTP="$(usex mtp)"
- -DENABLE_MOODBAR="$(usex moodbar)"
- -DENABLE_GIO=ON
- -DENABLE_WIIMOTEDEV="$(usex wiimote)"
- -DENABLE_VISUALISATIONS="$(usex projectm)"
- -DENABLE_BOX="$(usex box)"
- -DENABLE_DROPBOX="$(usex dropbox)"
- -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
- -DENABLE_LIBPULSE="$(usex pulseaudio)"
- -DENABLE_SKYDRIVE="$(usex skydrive)"
- -DENABLE_VK="$(usex vkontakte)"
- -DENABLE_SPOTIFY_BLOB=OFF
- -DENABLE_BREAKPAD=OFF #< disable crash reporting
- -DUSE_BUILTIN_TAGLIB=OFF
- -DUSE_SYSTEM_GMOCK=ON
- -DUSE_SYSTEM_PROJECTM=ON
- -DBUNDLE_PROJECTM_PRESETS=OFF
- # force to find crypto++ see bug #548544
- -DCRYPTOPP_LIBRARIES="crypto++"
- -DCRYPTOPP_FOUND=ON
- # avoid automagically enabling of ccache (bug #611010)
- -DCCACHE_EXECUTABLE=OFF
- )
-
- use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
-
- cmake-utils_src_configure
-}
-
-src_test() {
- cd "${CMAKE_BUILD_DIR}" || die
- virtx emake test
-}
-
-pkg_preinst() {
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- gnome2_icon_cache_update
-}
diff --git a/media-sound/clementine/files/clementine-1.3.1-chromaprint14.patch b/media-sound/clementine/files/clementine-1.3.1-chromaprint14.patch
deleted file mode 100644
index bfdc49265aa..00000000000
--- a/media-sound/clementine/files/clementine-1.3.1-chromaprint14.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From ded312685735fc266d4154d355286eeb86db3bcd Mon Sep 17 00:00:00 2001
-From: Chocobozzz <florian.bigard@gmail.com>
-Date: Thu, 8 Dec 2016 23:12:17 +0100
-Subject: [PATCH] Add compatibility with chromaprint >= 1.4
-
----
- src/musicbrainz/chromaprinter.cpp | 14 +++++++++++---
- 1 file changed, 11 insertions(+), 3 deletions(-)
-
-diff --git a/src/musicbrainz/chromaprinter.cpp b/src/musicbrainz/chromaprinter.cpp
-index 9579b62..c7ad99e 100644
---- a/src/musicbrainz/chromaprinter.cpp
-+++ b/src/musicbrainz/chromaprinter.cpp
-@@ -143,16 +143,24 @@ QString Chromaprinter::CreateFingerprint() {
- ChromaprintContext* chromaprint =
- chromaprint_new(CHROMAPRINT_ALGORITHM_DEFAULT);
- chromaprint_start(chromaprint, kDecodeRate, kDecodeChannels);
-- chromaprint_feed(chromaprint, reinterpret_cast<void*>(data.data()),
-+ chromaprint_feed(chromaprint, reinterpret_cast<int16_t *>(data.data()),
- data.size() / 2);
- chromaprint_finish(chromaprint);
-
-- void* fprint = nullptr;
- int size = 0;
-+
-+#if CHROMAPRINT_VERSION_MAJOR >= 1 && CHROMAPRINT_VERSION_MINOR >= 4
-+ u_int32_t *fprint = nullptr;
-+ char *encoded = nullptr;
-+#else
-+ void *fprint = nullptr;
-+ void *encoded = nullptr;
-+#endif
-+
- int ret = chromaprint_get_raw_fingerprint(chromaprint, &fprint, &size);
-+
- QByteArray fingerprint;
- if (ret == 1) {
-- void* encoded = nullptr;
- int encoded_size = 0;
- chromaprint_encode_fingerprint(fprint, size, CHROMAPRINT_ALGORITHM_DEFAULT,
- &encoded, &encoded_size, 1);
diff --git a/media-sound/clementine/files/clementine-1.3.1-fix-desktop-file.patch b/media-sound/clementine/files/clementine-1.3.1-fix-desktop-file.patch
deleted file mode 100644
index bb561318c59..00000000000
--- a/media-sound/clementine/files/clementine-1.3.1-fix-desktop-file.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-This patch fixes gentoo QA notices against the desktop file (see gentoo bug 460412#3)
-Based upon patch extracted from upstream git; original patch info:
-commit 04f73d125365d97fa6f72677ec5d220292690e56
-Author: Golubev Alexander <fatzer2@gmail.com>
-Date: Mon Jul 18 13:45:03 2016 +0400
-
- Remove OnlyShowIn=Unity from clementine.desktop's action sections (#5444)
-
-diff --git a/dist/clementine.desktop b/dist/clementine.desktop
-index 2fb9559..9ee881e 100644
---- a/dist/clementine.desktop
-+++ b/dist/clementine.desktop
-@@ -38,7 +38,6 @@ Actions=Play;Pause;Stop;Previous;Next;
- [Desktop Action Play]
- Name=Play
- Exec=clementine --play
--OnlyShowIn=Unity;
- Name[af]=Speel
- Name[be]=Прайграць
- Name[bg]=Възпроизвеждане
-@@ -89,7 +88,6 @@ Name[zh_TW]=播放
- [Desktop Action Pause]
- Name=Pause
- Exec=clementine --pause
--OnlyShowIn=Unity;
- Name[be]=Прыпыніць
- Name[bg]=Пауза
- Name[br]=Ehan
-@@ -135,7 +133,6 @@ Name[zh_TW]=暫停
- [Desktop Action Stop]
- Name=Stop
- Exec=clementine --stop
--OnlyShowIn=Unity;
- Name[be]=Спыніць
- Name[bg]=Спиране
- Name[br]=Paouez
-@@ -184,7 +181,6 @@ Name[zh_TW]=停止
- [Desktop Action Previous]
- Name=Previous
- Exec=clementine --previous
--OnlyShowIn=Unity;
- Name[af]=Vorige
- Name[be]=Папярэдні
- Name[bg]=Предишна
-@@ -232,7 +228,6 @@ Name[zh_TW]=往前
- [Desktop Action Next]
- Name=Next
- Exec=clementine --next
--OnlyShowIn=Unity;
- Name[af]=Volgende
- Name[be]=Далей
- Name[bg]=Следваща
diff --git a/media-sound/clementine/files/clementine-1.3.1-libechonest_removal.patch b/media-sound/clementine/files/clementine-1.3.1-libechonest_removal.patch
deleted file mode 100644
index 63eb096d84d..00000000000
--- a/media-sound/clementine/files/clementine-1.3.1-libechonest_removal.patch
+++ /dev/null
@@ -1,701 +0,0 @@
-Remove depend upon media-libs/libechonest and its support from clementine due to echonest service
-was shutdown and this functionality is useless now and results in nothing but a slight security
-and privacy risk.
-See Gentoo bug #573712.
-Based upon patch extracted from upstream git; original patch info:
-commit a8a0f2e4fdd3d4b2fd23b8628a3abc27c290d01d
-Author: John Maguire <john.maguire@gmail.com>
-Date: Mon Jun 27 14:45:40 2016 +0100
-
- Remove echonest and update songkick concert fetcher.
---- Clementine-1.3.1/CMakeLists.txt
-+++ Clementine-1.3.1/CMakeLists.txt
-@@ -365,9 +365,6 @@
- endif (NOT APPLE)
- endif (USE_SYSTEM_QXT)
-
--find_path(ECHONEST_INCLUDE_DIRS echonest/echonest_export.h)
--find_library(ECHONEST_LIBRARIES echonest)
--
- # Use system gmock if it's available
- # We need to look for both gmock and gtest
- find_path(GMOCK_INCLUDE_DIRS gmock/gmock.h)
---- Clementine-1.3.1/src/CMakeLists.txt
-+++ Clementine-1.3.1/src/CMakeLists.txt
-@@ -35,7 +35,6 @@
- include_directories(${QTSINGLEAPPLICATION_INCLUDE_DIRS})
- include_directories(${QTIOCOMPRESSOR_INCLUDE_DIRS})
- include_directories(${QXT_INCLUDE_DIRS})
--include_directories(${ECHONEST_INCLUDE_DIRS})
- include_directories(${SHA2_INCLUDE_DIRS})
- include_directories(${CHROMAPRINT_INCLUDE_DIRS})
- include_directories(${MYGPOQT_INCLUDE_DIRS})
-@@ -297,8 +296,6 @@
- songinfo/artistinfoview.cpp
- songinfo/collapsibleinfoheader.cpp
- songinfo/collapsibleinfopane.cpp
-- songinfo/echonestbiographies.cpp
-- songinfo/echonestimages.cpp
- songinfo/songinfobase.cpp
- songinfo/songinfofetcher.cpp
- songinfo/songinfoprovider.cpp
-@@ -586,8 +583,6 @@
- songinfo/artistinfoview.h
- songinfo/collapsibleinfoheader.h
- songinfo/collapsibleinfopane.h
-- songinfo/echonestbiographies.h
-- songinfo/echonestimages.h
- songinfo/songinfobase.h
- songinfo/songinfofetcher.h
- songinfo/songinfoprovider.h
-@@ -822,16 +817,12 @@
- internet/lastfm/lastfmcompat.cpp
- internet/lastfm/lastfmservice.cpp
- internet/lastfm/lastfmsettingspage.cpp
-- songinfo/echonestsimilarartists.cpp
-- songinfo/echonesttags.cpp
- songinfo/lastfmtrackinfoprovider.cpp
- songinfo/tagwidget.cpp
- HEADERS
- covers/lastfmcoverprovider.h
- internet/lastfm/lastfmservice.h
- internet/lastfm/lastfmsettingspage.h
-- songinfo/echonestsimilarartists.h
-- songinfo/echonesttags.h
- songinfo/lastfmtrackinfoprovider.h
- songinfo/tagwidget.h
- UI
-@@ -1241,7 +1232,6 @@
- ${TAGLIB_LIBRARIES}
- ${MYGPOQT_LIBRARIES}
- ${CHROMAPRINT_LIBRARIES}
-- ${ECHONEST_LIBRARIES}
- ${GOBJECT_LIBRARIES}
- ${GLIB_LIBRARIES}
- ${GIO_LIBRARIES}
---- Clementine-1.3.1/src/main.cpp
-+++ Clementine-1.3.1/src/main.cpp
-@@ -76,8 +76,6 @@
- #include <glib.h>
- #include <gst/gst.h>
-
--#include <echonest/Config.h>
--
- #ifdef Q_OS_DARWIN
- #include <sys/resource.h>
- #include <sys/sysctl.h>
-@@ -401,8 +399,8 @@
- // Add root CA cert for SoundCloud, whose certificate is missing on OS X.
- QSslSocket::addDefaultCaCertificates(
- QSslCertificate::fromPath(":/soundcloud-ca.pem", QSsl::Pem));
-- QSslSocket::addDefaultCaCertificates(
-- QSslCertificate::fromPath(":/Equifax_Secure_Certificate_Authority.pem", QSsl::Pem));
-+ QSslSocket::addDefaultCaCertificates(QSslCertificate::fromPath(
-+ ":/Equifax_Secure_Certificate_Authority.pem", QSsl::Pem));
-
- // Has the user forced a different language?
- QString override_language = options.language();
-@@ -440,10 +438,6 @@
- Application app;
- app.set_language_name(language);
-
-- Echonest::Config::instance()->setAPIKey("DFLFLJBUF4EGTXHIG");
-- Echonest::Config::instance()->setNetworkAccessManager(
-- new NetworkAccessManager);
--
- // Network proxy
- QNetworkProxyFactory::setApplicationProxyFactory(
- NetworkProxyFactory::Instance());
---- Clementine-1.3.1/src/songinfo/artistinfoview.cpp
-+++ Clementine-1.3.1/src/songinfo/artistinfoview.cpp
-@@ -16,25 +16,12 @@
- */
-
- #include "artistinfoview.h"
--#include "echonestbiographies.h"
--#include "echonestimages.h"
- #include "songinfofetcher.h"
- #include "songkickconcerts.h"
- #include "widgets/prettyimageview.h"
-
--#ifdef HAVE_LIBLASTFM
--#include "echonestsimilarartists.h"
--#include "echonesttags.h"
--#endif
--
- ArtistInfoView::ArtistInfoView(QWidget* parent) : SongInfoBase(parent) {
-- fetcher_->AddProvider(new EchoNestBiographies);
-- fetcher_->AddProvider(new EchoNestImages);
- fetcher_->AddProvider(new SongkickConcerts);
--#ifdef HAVE_LIBLASTFM
-- fetcher_->AddProvider(new EchoNestSimilarArtists);
-- fetcher_->AddProvider(new EchoNestTags);
--#endif
- }
-
- ArtistInfoView::~ArtistInfoView() {}
---- Clementine-1.3.1/src/songinfo/echonestbiographies.cpp
-+++ Clementine-1.3.1/src/songinfo/echonestbiographies.cpp
-@@ -1,123 +0,0 @@
--/* This file is part of Clementine.
-- Copyright 2010, David Sansome <me@davidsansome.com>
--
-- Clementine is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- Clementine is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#include "echonestbiographies.h"
--
--#include <memory>
--
--#include <echonest/Artist.h>
--
--#include "songinfotextview.h"
--#include "core/logging.h"
--#include "ui/iconloader.h"
--
--struct EchoNestBiographies::Request {
-- Request(int id) : id_(id), artist_(new Echonest::Artist) {}
--
-- int id_;
-- std::unique_ptr<Echonest::Artist> artist_;
--};
--
--EchoNestBiographies::EchoNestBiographies() {
-- site_relevance_["wikipedia"] = 100;
-- site_relevance_["lastfm"] = 60;
-- site_relevance_["amazon"] = 30;
--
-- site_icons_["amazon"] = IconLoader::Load("amazon", IconLoader::Provider);
-- site_icons_["aol"] = IconLoader::Load("aol", IconLoader::Provider);
-- site_icons_["cdbaby"] = IconLoader::Load("cdbaby", IconLoader::Provider);
-- site_icons_["lastfm"] = IconLoader::Load("as", IconLoader::Lastfm);
-- site_icons_["mog"] = IconLoader::Load("mog", IconLoader::Provider);
-- site_icons_["mtvmusic"] = IconLoader::Load("mtvmusic", IconLoader::Provider);
-- site_icons_["myspace"] = IconLoader::Load("myspace", IconLoader::Provider);
-- site_icons_["wikipedia"] = IconLoader::Load("wikipedia", IconLoader::Provider);
--}
--
--void EchoNestBiographies::FetchInfo(int id, const Song& metadata) {
-- std::shared_ptr<Request> request(new Request(id));
-- request->artist_->setName(metadata.artist());
--
-- QNetworkReply* reply = request->artist_->fetchBiographies();
-- connect(reply, SIGNAL(finished()), SLOT(RequestFinished()));
-- requests_[reply] = request;
--}
--
--void EchoNestBiographies::RequestFinished() {
-- QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
-- if (!reply || !requests_.contains(reply)) return;
-- reply->deleteLater();
--
-- RequestPtr request = requests_.take(reply);
--
-- try {
-- request->artist_->parseProfile(reply);
-- }
-- catch (Echonest::ParseError e) {
-- qLog(Warning) << "Error parsing echonest reply:" << e.errorType()
-- << e.what();
-- }
--
-- QSet<QString> already_seen;
--
-- for (const Echonest::Biography& bio : request->artist_->biographies()) {
-- QString canonical_site = bio.site().toLower();
-- canonical_site.replace(QRegExp("[^a-z]"), "");
--
-- if (already_seen.contains(canonical_site)) continue;
-- already_seen.insert(canonical_site);
--
-- CollapsibleInfoPane::Data data;
-- data.id_ = "echonest/bio/" + bio.site();
-- data.title_ = tr("Biography from %1").arg(bio.site());
-- data.type_ = CollapsibleInfoPane::Data::Type_Biography;
--
-- if (site_relevance_.contains(canonical_site))
-- data.relevance_ = site_relevance_[canonical_site];
-- if (site_icons_.contains(canonical_site))
-- data.icon_ = site_icons_[canonical_site];
--
-- SongInfoTextView* editor = new SongInfoTextView;
-- QString text;
-- // Add a link to the bio webpage at the top if we have one
-- if (!bio.url().isEmpty()) {
-- QString bio_url = bio.url().toEncoded();
-- if (bio.site() == "facebook") {
-- bio_url.replace("graph.facebook.com", "www.facebook.com");
-- }
-- text += "<p><a href=\"" + bio_url + "\">" +
-- tr("Open in your browser") + "</a></p>";
-- }
--
-- text += bio.text();
-- if (bio.site() == "last.fm") {
-- // Echonest lost formatting and it seems there is currently no plans on
-- // Echonest side for changing this.
-- // But with last.fm, we can guess newlines: " " corresponds to a newline
-- // (this seems to be because on last.fm' website, extra blank is inserted
-- // before <br /> tag, and this blank is kept).
-- // This is tricky, but this make the display nicer for last.fm
-- // biographies.
-- text.replace(" ", "<p>");
-- }
-- editor->SetHtml(text);
-- data.contents_ = editor;
--
-- emit InfoReady(request->id_, data);
-- }
--
-- emit Finished(request->id_);
--}
---- Clementine-1.3.1/src/songinfo/echonestbiographies.h
-+++ Clementine-1.3.1/src/songinfo/echonestbiographies.h
-@@ -1,48 +0,0 @@
--/* This file is part of Clementine.
-- Copyright 2010, David Sansome <me@davidsansome.com>
--
-- Clementine is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- Clementine is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#ifndef ECHONESTBIOGRAPHIES_H
--#define ECHONESTBIOGRAPHIES_H
--
--#include <memory>
--
--#include "songinfoprovider.h"
--
--class QNetworkReply;
--
--class EchoNestBiographies : public SongInfoProvider {
-- Q_OBJECT
--
-- public:
-- EchoNestBiographies();
--
-- void FetchInfo(int id, const Song& metadata);
--
-- private slots:
-- void RequestFinished();
--
-- private:
-- QMap<QString, int> site_relevance_;
-- QMap<QString, QIcon> site_icons_;
--
-- struct Request;
-- typedef std::shared_ptr<Request> RequestPtr;
--
-- QMap<QNetworkReply*, RequestPtr> requests_;
--};
--
--#endif // ECHONESTBIOGRAPHIES_H
---- Clementine-1.3.1/src/songinfo/echonestsimilarartists.cpp
-+++ Clementine-1.3.1/src/songinfo/echonestsimilarartists.cpp
-@@ -1,76 +0,0 @@
--/* This file is part of Clementine.
-- Copyright 2010, David Sansome <me@davidsansome.com>
--
-- Clementine is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- Clementine is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#include "echonestsimilarartists.h"
--#include "tagwidget.h"
--#include "core/logging.h"
--#include "ui/iconloader.h"
--
--#include <echonest/Artist.h>
--
--Q_DECLARE_METATYPE(QVector<QString>);
--
--void EchoNestSimilarArtists::FetchInfo(int id, const Song& metadata) {
-- using Echonest::Artist;
--
-- Artist::SearchParams params;
-- params << Artist::SearchParamEntry(Artist::Name, metadata.artist());
-- params << Artist::SearchParamEntry(Artist::MinHotttnesss, 0.5);
--
-- QNetworkReply* reply = Echonest::Artist::fetchSimilar(params);
-- connect(reply, SIGNAL(finished()), SLOT(RequestFinished()));
-- requests_[reply] = id;
--}
--
--void EchoNestSimilarArtists::RequestFinished() {
-- QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
-- if (!reply || !requests_.contains(reply)) return;
-- reply->deleteLater();
--
-- int id = requests_.take(reply);
--
-- Echonest::Artists artists;
-- try {
-- artists = Echonest::Artist::parseSimilar(reply);
-- }
-- catch (Echonest::ParseError e) {
-- qLog(Warning) << "Error parsing echonest reply:" << e.errorType()
-- << e.what();
-- }
--
-- if (!artists.isEmpty()) {
-- CollapsibleInfoPane::Data data;
-- data.id_ = "echonest/similarartists";
-- data.title_ = tr("Similar artists");
-- data.type_ = CollapsibleInfoPane::Data::Type_Similar;
-- data.icon_ = IconLoader::Load("echonest", IconLoader::Provider);
--
-- TagWidget* widget = new TagWidget(TagWidget::Type_Artists);
-- data.contents_ = widget;
--
-- widget->SetIcon(IconLoader::Load("x-clementine-artist", IconLoader::Base));
--
-- for (const Echonest::Artist& artist : artists) {
-- widget->AddTag(artist.name());
-- if (widget->count() >= 10) break;
-- }
--
-- emit InfoReady(id, data);
-- }
--
-- emit Finished(id);
--}
---- Clementine-1.3.1/src/songinfo/echonestsimilarartists.h
-+++ Clementine-1.3.1/src/songinfo/echonestsimilarartists.h
-@@ -1,38 +0,0 @@
--/* This file is part of Clementine.
-- Copyright 2010, David Sansome <me@davidsansome.com>
--
-- Clementine is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- Clementine is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#ifndef ECHONESTSIMILARARTISTS_H
--#define ECHONESTSIMILARARTISTS_H
--
--#include "songinfoprovider.h"
--
--class QNetworkReply;
--
--class EchoNestSimilarArtists : public SongInfoProvider {
-- Q_OBJECT
--
-- public:
-- void FetchInfo(int id, const Song& metadata);
--
-- private slots:
-- void RequestFinished();
--
-- private:
-- QMap<QNetworkReply*, int> requests_;
--};
--
--#endif // ECHONESTSIMILARARTISTS_H
---- Clementine-1.3.1/src/songinfo/echonesttags.cpp
-+++ Clementine-1.3.1/src/songinfo/echonesttags.cpp
-@@ -1,80 +0,0 @@
--/* This file is part of Clementine.
-- Copyright 2010, David Sansome <me@davidsansome.com>
--
-- Clementine is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- Clementine is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#include "echonesttags.h"
--
--#include <memory>
--
--#include <echonest/Artist.h>
--
--#include "tagwidget.h"
--#include "core/logging.h"
--#include "ui/iconloader.h"
--
--struct EchoNestTags::Request {
-- Request(int id) : id_(id), artist_(new Echonest::Artist) {}
--
-- int id_;
-- std::unique_ptr<Echonest::Artist> artist_;
--};
--
--void EchoNestTags::FetchInfo(int id, const Song& metadata) {
-- std::shared_ptr<Request> request(new Request(id));
-- request->artist_->setName(metadata.artist());
--
-- QNetworkReply* reply = request->artist_->fetchTerms();
-- connect(reply, SIGNAL(finished()), SLOT(RequestFinished()));
-- requests_[reply] = request;
--}
--
--void EchoNestTags::RequestFinished() {
-- QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
-- if (!reply || !requests_.contains(reply)) return;
-- reply->deleteLater();
--
-- RequestPtr request = requests_.take(reply);
--
-- try {
-- request->artist_->parseProfile(reply);
-- }
-- catch (Echonest::ParseError e) {
-- qLog(Warning) << "Error parsing echonest reply:" << e.errorType()
-- << e.what();
-- }
--
-- if (!request->artist_->terms().isEmpty()) {
-- CollapsibleInfoPane::Data data;
-- data.id_ = "echonest/artisttags";
-- data.title_ = tr("Artist tags");
-- data.type_ = CollapsibleInfoPane::Data::Type_Tags;
-- data.icon_ = IconLoader::Load("icon_tag", IconLoader::Lastfm);
--
-- TagWidget* widget = new TagWidget(TagWidget::Type_Tags);
-- data.contents_ = widget;
--
-- widget->SetIcon(data.icon_);
--
-- for (const Echonest::Term& term : request->artist_->terms()) {
-- widget->AddTag(term.name());
-- if (widget->count() >= 10) break;
-- }
--
-- emit InfoReady(request->id_, data);
-- }
--
-- emit Finished(request->id_);
--}
---- Clementine-1.3.1/src/songinfo/echonesttags.h
-+++ Clementine-1.3.1/src/songinfo/echonesttags.h
-@@ -1,43 +0,0 @@
--/* This file is part of Clementine.
-- Copyright 2010, David Sansome <me@davidsansome.com>
--
-- Clementine is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- Clementine is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Clementine. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#ifndef ECHONESTTAGS_H
--#define ECHONESTTAGS_H
--
--#include <memory>
--
--#include "songinfoprovider.h"
--
--class QNetworkReply;
--
--class EchoNestTags : public SongInfoProvider {
-- Q_OBJECT
--
-- public:
-- void FetchInfo(int id, const Song& metadata);
--
-- private slots:
-- void RequestFinished();
--
-- private:
-- struct Request;
-- typedef std::shared_ptr<Request> RequestPtr;
--
-- QMap<QNetworkReply*, RequestPtr> requests_;
--};
--
--#endif // ECHONESTTAGS_H
---- Clementine-1.3.1/src/songinfo/songkickconcerts.cpp
-+++ Clementine-1.3.1/src/songinfo/songkickconcerts.cpp
-@@ -21,9 +21,6 @@
- #include <QVBoxLayout>
- #include <QXmlStreamWriter>
-
--#include <echonest/Artist.h>
--#include <echonest/TypeInformation.h>
--
- #include <qjson/parser.h>
-
- #include "core/closure.h"
-@@ -31,77 +28,64 @@
- #include "songkickconcertwidget.h"
- #include "ui/iconloader.h"
-
--const char* SongkickConcerts::kSongkickArtistBucket = "songkick";
--const char* SongkickConcerts::kSongkickArtistCalendarUrl =
-- "https://api.songkick.com/api/3.0/artists/%1/calendar.json?"
-- "per_page=5&"
-- "apikey=8rgKfy1WU6IlJFfN";
-+namespace {
-+const char* kSongkickArtistCalendarUrl =
-+ "https://api.songkick.com/api/3.0/artists/%1/calendar.json";
-+const char* kSongkickArtistSearchUrl =
-+ "https://api.songkick.com/api/3.0/search/artists.json";
-+const char* kSongkickApiKey = "8rgKfy1WU6IlJFfN";
-+} // namespace
-
- SongkickConcerts::SongkickConcerts() {
- Geolocator* geolocator = new Geolocator;
- geolocator->Geolocate();
- connect(geolocator, SIGNAL(Finished(Geolocator::LatLng)),
- SLOT(GeolocateFinished(Geolocator::LatLng)));
-- NewClosure(geolocator, SIGNAL(Finished(Geolocator::LatLng)), geolocator,
-- SLOT(deleteLater()));
-+ connect(geolocator, SIGNAL(Finished(Geolocator::LatLng)), geolocator,
-+ SLOT(deleteLater()));
- }
-
- void SongkickConcerts::FetchInfo(int id, const Song& metadata) {
-- Echonest::Artist::SearchParams params;
-- params.push_back(
-- qMakePair(Echonest::Artist::Name, QVariant(metadata.artist())));
-- qLog(Debug) << "Params:" << params;
-- QNetworkReply* reply = Echonest::Artist::search(
-- params,
-- Echonest::ArtistInformation(Echonest::ArtistInformation::NoInformation,
-- QStringList() << kSongkickArtistBucket));
-- qLog(Debug) << reply->request().url();
-+ if (metadata.artist().isEmpty()) {
-+ emit Finished(id);
-+ return;
-+ }
-+
-+ QUrl url(kSongkickArtistSearchUrl);
-+ url.addQueryItem("apikey", kSongkickApiKey);
-+ url.addQueryItem("query", metadata.artist());
-+
-+ QNetworkRequest request(url);
-+ QNetworkReply* reply = network_.get(request);
- NewClosure(reply, SIGNAL(finished()), this,
- SLOT(ArtistSearchFinished(QNetworkReply*, int)), reply, id);
- }
-
- void SongkickConcerts::ArtistSearchFinished(QNetworkReply* reply, int id) {
- reply->deleteLater();
-- try {
-- Echonest::Artists artists = Echonest::Artist::parseSearch(reply);
-- if (artists.isEmpty()) {
-- qLog(Debug) << "Failed to find artist in echonest";
-- emit Finished(id);
-- return;
-- }
--
-- const Echonest::Artist& artist = artists[0];
-- const Echonest::ForeignIds& foreign_ids = artist.foreignIds();
-- QString songkick_id;
-- for (const Echonest::ForeignId& id : foreign_ids) {
-- if (id.catalog == "songkick") {
-- songkick_id = id.foreign_id;
-- break;
-- }
-- }
--
-- if (songkick_id.isEmpty()) {
-- qLog(Debug) << "Failed to fetch songkick foreign id for artist";
-- emit Finished(id);
-- return;
-- }
--
-- QStringList split = songkick_id.split(':');
-- if (split.count() != 3) {
-- qLog(Error) << "Weird songkick id";
-- emit Finished(id);
-- return;
-- }
--
-- FetchSongkickCalendar(split[2], id);
-- } catch (Echonest::ParseError& e) {
-- qLog(Error) << "Error parsing echonest reply:" << e.errorType() << e.what();
-+
-+ QJson::Parser parser;
-+ QVariantMap json = parser.parse(reply).toMap();
-+
-+ QVariantMap results_page = json["resultsPage"].toMap();
-+ QVariantMap results = results_page["results"].toMap();
-+ QVariantList artists = results["artist"].toList();
-+
-+ if (artists.isEmpty()) {
- emit Finished(id);
-+ return;
- }
-+
-+ QVariantMap artist = artists.first().toMap();
-+ QString artist_id = artist["id"].toString();
-+
-+ FetchSongkickCalendar(artist_id, id);
- }
-
- void SongkickConcerts::FetchSongkickCalendar(const QString& artist_id, int id) {
- QUrl url(QString(kSongkickArtistCalendarUrl).arg(artist_id));
-+ url.addQueryItem("per_page", "5");
-+ url.addQueryItem("apikey", kSongkickApiKey);
- qLog(Debug) << url;
- QNetworkReply* reply = network_.get(QNetworkRequest(url));
- NewClosure(reply, SIGNAL(finished()), this,
---- Clementine-1.3.1/src/songinfo/songkickconcerts.h
-+++ Clementine-1.3.1/src/songinfo/songkickconcerts.h
-@@ -44,9 +44,6 @@
-
- NetworkAccessManager network_;
- Geolocator::LatLng latlng_;
--
-- static const char* kSongkickArtistBucket;
-- static const char* kSongkickArtistCalendarUrl;
- };
-
- #endif
diff --git a/media-sound/clementine/metadata.xml b/media-sound/clementine/metadata.xml
index 40e967ff3e4..21fd21a7552 100644
--- a/media-sound/clementine/metadata.xml
+++ b/media-sound/clementine/metadata.xml
@@ -20,7 +20,6 @@
<name>Gentoo Sound project</name>
</maintainer>
<use>
- <flag name="amazoncloud">Enable Amazon cloud drive support</flag>
<flag name="box">Enable filesharing via Box.com</flag>
<flag name="dropbox">Enable Dropbox support</flag>
<flag name="googledrive">Enable Google Drive support</flag>
@@ -29,7 +28,6 @@
<flag name="projectm">Build with ProjectM visualization</flag>
<flag name="seafile">Enable support for seafile: a file sync service</flag>
<flag name="skydrive">Enable Skydrive support</flag>
- <flag name="vkontakte">Enable vk.com support</flag>
<flag name="wiimote">Enable support for Wii remote</flag>
</use>
<upstream>
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2018-03-17 0:27 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2018-03-17 0:27 UTC (permalink / raw
To: gentoo-commits
commit: 7869a12948ccd5fce91507f8481a947e606985df
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 16 23:18:17 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Mar 17 00:26:26 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7869a129
media-sound/clementine: 1.3.1_p20180314 snapshot bump
Package-Manager: Portage-2.3.24, Repoman-2.3.6
media-sound/clementine/Manifest | 1 +
.../clementine/clementine-1.3.1_p20180314.ebuild | 192 +++++++++++++++++++++
.../files/clementine-1.3.1_p20180314-qt-5.11.patch | 51 ++++++
3 files changed, 244 insertions(+)
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 0e1b8a2a3b6..558788994a4 100644
--- a/media-sound/clementine/Manifest
+++ b/media-sound/clementine/Manifest
@@ -1,2 +1,3 @@
DIST clementine-1.3.1_p20171113.tar.gz 8467904 BLAKE2B bf1f59b987c0e4ec5c2ced00fab07c1a7e1df0eb5a46e90358b37eaaeaa916fb3e6a08ad79fc5fb791342d857783f615eb3726974dcfef9388da2793b1b7fe6a SHA512 39c459be8e4c5dd53ab9de6cdfd57f947926ccc2cd39ce2f72460bb991f7b2a28e6bc074e7bc23b0eba81c3d630e91dc2373794832c1089a9b5de7b212b94674
DIST clementine-1.3.1_p20180219.tar.gz 8486446 BLAKE2B f0d34dae90acfd41a4dad6943ea088fb64d16308caf8dce569c0c5a900c149a0c40838b8f420a42e9e5cf6718965cec8fe7f9bb2ed7489719f3d8316308f2d49 SHA512 7464f03be6894202ecfeb9f2dd97821cd76cec1285be2dc82155b023406c57ec1a94e3659438726b6bf3c667579ab43f668f03e12c261aea05aa468e73a05146
+DIST clementine-1.3.1_p20180314.tar.gz 8486396 BLAKE2B 978651924c50ee3669f82a51f98978869103edac3f7f7cfef372dc1f1483caa2f543d9d626a4552647acaeabb4f329a69cb5c76d8c6e9b8d605de2f86025344c SHA512 5c21540a91dae9f0db336947552548e44eec80fc9e6ebf95cbca3d2ab60cd096be963aec105f0c8d72d2628777cb6628e4a7e50f54a3edbcc22708c59f620e4a
diff --git a/media-sound/clementine/clementine-1.3.1_p20180314.ebuild b/media-sound/clementine/clementine-1.3.1_p20180314.ebuild
new file mode 100644
index 00000000000..296ae7151df
--- /dev/null
+++ b/media-sound/clementine/clementine-1.3.1_p20180314.ebuild
@@ -0,0 +1,192 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+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"
+
+MY_P="${P/_}"
+if [[ ${PV} == *9999* ]]; then
+ EGIT_BRANCH="qt5"
+ EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
+ GIT_ECLASS="git-r3"
+else
+ COMMIT=2d7894915dfc9043da9282d216775ef75041c773
+ SRC_URI="https://github.com/${PN}-player/${PN^}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+inherit cmake-utils flag-o-matic gnome2-utils l10n virtualx xdg-utils ${GIT_ECLASS} vcs-snapshot
+unset GIT_ECLASS
+
+DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
+HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
+
+REQUIRED_USE="
+ udisks? ( dbus )
+ wiimote? ( dbus )
+"
+
+COMMON_DEPEND="
+ app-crypt/qca:2[qt5(+)]
+ dev-db/sqlite:=
+ dev-libs/crypto++
+ dev-libs/glib:2
+ dev-libs/libxml2
+ dev-libs/protobuf:=
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5[ssl]
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ dev-qt/qtxml:5
+ media-libs/chromaprint:=
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
+ media-libs/taglib
+ sys-libs/zlib
+ virtual/glu
+ virtual/opengl
+ x11-libs/libX11
+ cdda? ( dev-libs/libcdio:= )
+ dbus? ( dev-qt/qtdbus:5 )
+ ipod? ( >=media-libs/libgpod-0.8.0 )
+ lastfm? ( >=media-libs/liblastfm-1[qt5(+)] )
+ moodbar? ( sci-libs/fftw:3.0 )
+ mtp? ( >=media-libs/libmtp-1.0.0 )
+ projectm? (
+ media-libs/glew:=
+ >=media-libs/libprojectm-1.2.0
+ )
+"
+# Note: sqlite driver of dev-qt/qtsql is bundled, so no sqlite use is required; check if this can be overcome someway;
+# Libprojectm-1.2 seems to work fine, so no reason to use bundled version; check clementine's patches:
+# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
+# Still possibly essential but not applied yet patches are:
+# 06-fix-numeric-locale.patch
+# 08-stdlib.h-for-rand.patch
+RDEPEND="${COMMON_DEPEND}
+ media-plugins/gst-plugins-meta:1.0
+ media-plugins/gst-plugins-soup:1.0
+ media-plugins/gst-plugins-taglib:1.0
+ mms? ( media-plugins/gst-plugins-libmms:1.0 )
+ mtp? ( gnome-base/gvfs[mtp] )
+ udisks? ( sys-fs/udisks:2 )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-cpp/gtest-1.8.0
+ dev-libs/boost
+ dev-qt/linguist-tools:5
+ dev-qt/qtopengl:5
+ sys-devel/gettext
+ virtual/pkgconfig
+ box? ( dev-cpp/sparsehash )
+ dropbox? ( dev-cpp/sparsehash )
+ googledrive? ( dev-cpp/sparsehash )
+ pulseaudio? ( media-sound/pulseaudio )
+ seafile? ( dev-cpp/sparsehash )
+ skydrive? ( dev-cpp/sparsehash )
+ test? (
+ dev-qt/qttest:5
+ gnome-base/gsettings-desktop-schemas
+ )
+"
+
+DOCS=( Changelog README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-fts3-tokenizer.patch
+ "${FILESDIR}"/${P}-qt-5.11.patch
+)
+
+src_prepare() {
+ l10n_find_plocales_changes "src/translations" "" ".po"
+
+ cmake-utils_src_prepare
+ # some tests fail or hang
+ sed -i \
+ -e '/add_test_file(translations_test.cpp/d' \
+ tests/CMakeLists.txt || die
+
+ if ! use test; then
+ sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
+ cmake_comment_add_subdirectory tests
+ fi
+
+ # Fix clementine relying on downstream renaming of lastfm header dir
+ sed -i -e "/^#include/s/lastfm5/lastfm/" \
+ tests/albumcoverfetcher_test.cpp \
+ src/internet/lastfm/lastfm{settingspage.cpp,service.cpp,compat.h} \
+ src/core/song.cpp || die "Failed to sed lastfm header suffix"
+ sed -e "/^find_path.*LASTFM5/s/lastfm5/lastfm/" \
+ -i CMakeLists.txt || die "Failed to sed lastfm header suffix"
+}
+
+src_configure() {
+ # spotify is not in portage
+ local mycmakeargs=(
+ -DBUILD_WERROR=OFF
+ # force to find crypto++ see bug #548544
+ -DCRYPTOPP_LIBRARIES="crypto++"
+ -DCRYPTOPP_FOUND=ON
+ # avoid automagically enabling of ccache (bug #611010)
+ -DCCACHE_EXECUTABLE=OFF
+ -DENABLE_BREAKPAD=OFF #< disable crash reporting
+ -DENABLE_DEVICEKIT=OFF
+ -DENABLE_GIO=ON
+ -DENABLE_SPOTIFY_BLOB=OFF
+ -DUSE_BUILTIN_TAGLIB=OFF
+ -DUSE_SYSTEM_GMOCK=ON
+ -DUSE_SYSTEM_PROJECTM=ON
+ -DBUNDLE_PROJECTM_PRESETS=OFF
+ -DLINGUAS="$(l10n_get_locales)"
+ -DENABLE_BOX="$(usex box)"
+ -DENABLE_AUDIOCD="$(usex cdda)"
+ -DENABLE_DBUS="$(usex dbus)"
+ -DENABLE_DROPBOX="$(usex dropbox)"
+ -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
+ -DENABLE_LIBGPOD="$(usex ipod)"
+ -DENABLE_LIBLASTFM="$(usex lastfm)"
+ -DENABLE_MOODBAR="$(usex moodbar)"
+ -DENABLE_LIBMTP="$(usex mtp)"
+ -DENABLE_VISUALISATIONS="$(usex projectm)"
+ -DENABLE_SEAFILE="$(usex seafile)"
+ -DENABLE_SKYDRIVE="$(usex skydrive)"
+ -DENABLE_LIBPULSE="$(usex pulseaudio)"
+ -DENABLE_UDISKS2="$(usex udisks)"
+ -DENABLE_WIIMOTEDEV="$(usex wiimote)"
+ )
+
+ use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
+
+ cmake-utils_src_configure
+}
+
+src_test() {
+ cd "${CMAKE_BUILD_DIR}" || die
+ virtx emake test
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ gnome2_icon_cache_update
+
+ elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
+ elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
+ elog "depending on your preferences"
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/clementine/files/clementine-1.3.1_p20180314-qt-5.11.patch b/media-sound/clementine/files/clementine-1.3.1_p20180314-qt-5.11.patch
new file mode 100644
index 00000000000..8903da17498
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3.1_p20180314-qt-5.11.patch
@@ -0,0 +1,51 @@
+From b0b72ccfee2484ec05861879cca45d62d87055ae Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Sat, 17 Mar 2018 00:29:11 +0100
+Subject: [PATCH] Fix build with Qt 5.11
+
+---
+ src/playlist/playlistcontainer.cpp | 1 +
+ src/ui/globalshortcutssettingspage.cpp | 1 +
+ src/widgets/errordialog.cpp | 2 ++
+ 3 files changed, 4 insertions(+)
+
+diff --git a/src/playlist/playlistcontainer.cpp b/src/playlist/playlistcontainer.cpp
+index 58f1ad2d6..2ba1a3ff1 100644
+--- a/src/playlist/playlistcontainer.cpp
++++ b/src/playlist/playlistcontainer.cpp
+@@ -23,6 +23,7 @@
+ #include "playlistparsers/playlistparser.h"
+ #include "ui/iconloader.h"
+
++#include <QAction>
+ #include <QFileDialog>
+ #include <QInputDialog>
+ #include <QKeyEvent>
+diff --git a/src/ui/globalshortcutssettingspage.cpp b/src/ui/globalshortcutssettingspage.cpp
+index ec5d29b28..c60a9561d 100644
+--- a/src/ui/globalshortcutssettingspage.cpp
++++ b/src/ui/globalshortcutssettingspage.cpp
+@@ -24,6 +24,7 @@
+ #include "ui/iconloader.h"
+ #include "ui/settingsdialog.h"
+
++#include <QAction>
+ #include <QKeyEvent>
+ #include <QMessageBox>
+ #include <QProcess>
+diff --git a/src/widgets/errordialog.cpp b/src/widgets/errordialog.cpp
+index 1086305f3..3fd590840 100644
+--- a/src/widgets/errordialog.cpp
++++ b/src/widgets/errordialog.cpp
+@@ -18,6 +18,8 @@
+ #include "errordialog.h"
+ #include "ui_errordialog.h"
+
++#include <QStyle>
++
+ ErrorDialog::ErrorDialog(QWidget* parent)
+ : QDialog(parent), ui_(new Ui_ErrorDialog) {
+ ui_->setupUi(this);
+--
+2.16.2
+
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2018-11-17 23:10 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2018-11-17 23:10 UTC (permalink / raw
To: gentoo-commits
commit: f7bad51a4cf9b76f1859cee8aff0e1086d73a64b
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 17 22:56:11 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 17 23:10:35 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f7bad51a
media-sound/clementine: 1.3.1_p20181112 snapshot bump
Bug: https://bugs.gentoo.org/658808
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-sound/clementine/Manifest | 1 +
.../clementine/clementine-1.3.1_p20181112.ebuild | 182 +++++++++++++++++++++
.../files/clementine-1.3.1_p20181112-no-dbus.patch | 41 +++++
3 files changed, 224 insertions(+)
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 369a56dd408..10cd87cf3d4 100644
--- a/media-sound/clementine/Manifest
+++ b/media-sound/clementine/Manifest
@@ -1,2 +1,3 @@
DIST clementine-1.3.1_p20180416.tar.gz 8489387 BLAKE2B 37412428cf030a71f0011ba68a7ce71a3bbdc59402dc6d6349cca8ee44b208052cee9add1597a9577e5a6ed4bb2ebf16c4e1f79612d12be265f637caffd02a76 SHA512 8f38554571c637d9f79df43679ac2a76383f7a9b4ee8e921a16175889180e72afadc352dd40d73a671aa8ae9b01f6a251ae7b94b010043f8bcb8d8f42dcfff62
DIST clementine-1.3.1_p20180523.tar.gz 8490122 BLAKE2B 783cd420c8e3cd7423ecb6caa3466efd2c09e9033c2a198f52dc113603233f1bf3e3dc5208491338c0fdc9ab26e5b661e7fced0dd835b4c19a867fa3cacc9ccd SHA512 a47de226108240313fef2ce965726b3afea988030adffe38fdabf5d0dc46b2eda42cfebc32d77e939eb6dd687a99556c9bd8848c6a5e78c434950d00a8833200
+DIST clementine-1.3.1_p20181112.tar.gz 8526632 BLAKE2B da3f155006ef5e94233104011aadad41e974ec339827b91bd3c5c0c2420b23199be852a9d0cb7c9b0112ba2d43ff3e3e87388db92679f8e64da5c3fa3e578c1d SHA512 eed16cec7323b142e4602a4bd81d7363e9cf4fc203c3b8b341aadbe883fdbd571dff0792260eec8af2f91e79fe905c3510d1e7ce1b06e9d4698016820cc771fa
diff --git a/media-sound/clementine/clementine-1.3.1_p20181112.ebuild b/media-sound/clementine/clementine-1.3.1_p20181112.ebuild
new file mode 100644
index 00000000000..0840a685935
--- /dev/null
+++ b/media-sound/clementine/clementine-1.3.1_p20181112.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+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"
+
+MY_P="${P/_}"
+if [[ ${PV} == *9999* ]]; then
+ EGIT_BRANCH="qt5"
+ EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
+ GIT_ECLASS="git-r3"
+else
+ COMMIT=b8eea8ccc116388b67e4b042a5b81e87bf7a24e5
+ SRC_URI="https://github.com/${PN}-player/${PN^}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+inherit cmake-utils flag-o-matic gnome2-utils l10n virtualx xdg-utils ${GIT_ECLASS}
+unset GIT_ECLASS
+
+DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
+HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
+
+REQUIRED_USE="
+ udisks? ( dbus )
+ wiimote? ( dbus )
+"
+
+COMMON_DEPEND="
+ app-crypt/qca:2[qt5(+)]
+ dev-db/sqlite:=
+ dev-libs/crypto++[asm]
+ dev-libs/glib:2
+ dev-libs/libxml2
+ dev-libs/protobuf:=
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5[ssl]
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtwidgets:5
+ media-libs/chromaprint:=
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
+ >=media-libs/taglib-1.11.1_p20181028
+ sys-libs/zlib
+ virtual/glu
+ virtual/opengl
+ x11-libs/libX11
+ cdda? ( dev-libs/libcdio:= )
+ dbus? ( dev-qt/qtdbus:5 )
+ ipod? ( >=media-libs/libgpod-0.8.0 )
+ lastfm? ( >=media-libs/liblastfm-1.1.0_pre20150206 )
+ moodbar? ( sci-libs/fftw:3.0 )
+ mtp? ( >=media-libs/libmtp-1.0.0 )
+ projectm? (
+ media-libs/glew:=
+ >=media-libs/libprojectm-1.2.0
+ )
+"
+# Note: sqlite driver of dev-qt/qtsql is bundled, so no sqlite use is required; check if this can be overcome someway;
+# Libprojectm-1.2 seems to work fine, so no reason to use bundled version; check clementine's patches:
+# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
+# Still possibly essential but not applied yet patches are:
+# 06-fix-numeric-locale.patch
+# 08-stdlib.h-for-rand.patch
+RDEPEND="${COMMON_DEPEND}
+ media-plugins/gst-plugins-meta:1.0
+ media-plugins/gst-plugins-soup:1.0
+ media-plugins/gst-plugins-taglib:1.0
+ mms? ( media-plugins/gst-plugins-libmms:1.0 )
+ mtp? ( gnome-base/gvfs[mtp] )
+ udisks? ( sys-fs/udisks:2 )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-cpp/gtest-1.8.0
+ dev-libs/boost
+ dev-qt/linguist-tools:5
+ dev-qt/qtopengl:5
+ dev-qt/qtx11extras:5
+ dev-qt/qtxml:5
+ sys-devel/gettext
+ virtual/pkgconfig
+ box? ( dev-cpp/sparsehash )
+ dropbox? ( dev-cpp/sparsehash )
+ googledrive? ( dev-cpp/sparsehash )
+ pulseaudio? ( media-sound/pulseaudio )
+ seafile? ( dev-cpp/sparsehash )
+ skydrive? ( dev-cpp/sparsehash )
+ test? (
+ dev-qt/qttest:5
+ gnome-base/gsettings-desktop-schemas
+ )
+"
+
+RESTRICT="test"
+
+S="${WORKDIR}/${PN^}-${COMMIT}"
+
+DOCS=( Changelog README.md )
+
+PATCHES=( "${FILESDIR}"/${P}-no-dbus.patch )
+
+src_prepare() {
+ l10n_find_plocales_changes "src/translations" "" ".po"
+
+ cmake-utils_src_prepare
+ # some tests fail or hang
+ sed -i \
+ -e '/add_test_file(translations_test.cpp/d' \
+ tests/CMakeLists.txt || die
+
+ if ! use test; then
+ sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
+ cmake_comment_add_subdirectory tests
+ fi
+
+ rm -r 3rdparty/{libmygpo-qt,libmygpo-qt5,taglib} || die
+}
+
+src_configure() {
+ # spotify is not in portage
+ local mycmakeargs=(
+ -DBUILD_WERROR=OFF
+ # force to find crypto++ see bug #548544
+ -DCRYPTOPP_LIBRARIES="cryptopp"
+ -DCRYPTOPP_FOUND=ON
+ # avoid automagically enabling of ccache (bug #611010)
+ -DCCACHE_EXECUTABLE=OFF
+ -DENABLE_BREAKPAD=OFF #< disable crash reporting
+ -DENABLE_DEVICEKIT=OFF
+ -DENABLE_GIO=ON
+ -DENABLE_SPOTIFY_BLOB=OFF
+ -DUSE_SYSTEM_GMOCK=ON
+ -DUSE_SYSTEM_PROJECTM=ON
+ -DBUNDLE_PROJECTM_PRESETS=OFF
+ -DLINGUAS="$(l10n_get_locales)"
+ -DENABLE_BOX="$(usex box)"
+ -DENABLE_AUDIOCD="$(usex cdda)"
+ -DENABLE_DBUS="$(usex dbus)"
+ -DENABLE_DROPBOX="$(usex dropbox)"
+ -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
+ -DENABLE_LIBGPOD="$(usex ipod)"
+ -DENABLE_LIBLASTFM="$(usex lastfm)"
+ -DENABLE_MOODBAR="$(usex moodbar)"
+ -DENABLE_LIBMTP="$(usex mtp)"
+ -DENABLE_VISUALISATIONS="$(usex projectm)"
+ -DENABLE_SEAFILE="$(usex seafile)"
+ -DENABLE_SKYDRIVE="$(usex skydrive)"
+ -DENABLE_LIBPULSE="$(usex pulseaudio)"
+ -DENABLE_UDISKS2="$(usex udisks)"
+ -DENABLE_WIIMOTEDEV="$(usex wiimote)"
+ )
+
+ use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
+
+ cmake-utils_src_configure
+}
+
+src_test() {
+ cd "${CMAKE_BUILD_DIR}" || die
+ virtx emake test
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ gnome2_icon_cache_update
+
+ elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
+ elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
+ elog "depending on your preferences"
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/clementine/files/clementine-1.3.1_p20181112-no-dbus.patch b/media-sound/clementine/files/clementine-1.3.1_p20181112-no-dbus.patch
new file mode 100644
index 00000000000..d03db2451ad
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3.1_p20181112-no-dbus.patch
@@ -0,0 +1,41 @@
+From d940136d0ae2a98ea72d842df0099bebcd361426 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Fri, 2 Nov 2018 12:58:08 +0100
+Subject: [PATCH] Fix build without Qt5DBus
+
+---
+ CMakeLists.txt | 2 +-
+ src/CMakeLists.txt | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c1de26e3e..eaf794c27 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -304,7 +304,7 @@ endif ()
+ if(WIN32)
+ set(QT_LIBRARIES Qt5::Core Qt5::OpenGL Qt5::Sql Qt5::Network Qt5::Xml Qt5::Widgets Qt5::Concurrent)
+ else(WIN32)
+- set(QT_LIBRARIES Qt5::Core Qt5::OpenGL Qt5::Sql Qt5::Network Qt5::Xml Qt5::Widgets Qt5::Concurrent Qt5::X11Extras Qt5::DBus)
++ set(QT_LIBRARIES Qt5::Core Qt5::OpenGL Qt5::Sql Qt5::Network Qt5::Xml Qt5::Widgets Qt5::Concurrent Qt5::X11Extras)
+ endif(WIN32)
+
+ # Remove GLU and GL from the link line - they're not really required
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 120f09949..88f1ac6c3 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -1249,6 +1249,10 @@ target_link_libraries(clementine_lib
+ Qocoa
+ )
+
++if (HAVE_DBUS)
++ target_link_libraries(clementine_lib Qt5::DBus)
++endif ()
++
+ if(ENABLE_VISUALISATIONS)
+ target_link_libraries(clementine_lib ${LIBPROJECTM_LIBRARIES})
+ endif(ENABLE_VISUALISATIONS)
+--
+2.19.1
+
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2019-02-17 16:05 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2019-02-17 16:05 UTC (permalink / raw
To: gentoo-commits
commit: 80b389e422c3815ed885df9e36d1bccfe929ec5d
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 17 16:05:08 2019 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Feb 17 16:05:21 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80b389e4
media-sound/clementine: Removed old.
Package-Manager: Portage-2.3.60, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
media-sound/clementine/Manifest | 2 -
.../clementine/clementine-1.3.1_p20180416.ebuild | 181 --------------------
.../clementine/clementine-1.3.1_p20181201.ebuild | 182 ---------------------
.../files/clementine-1.3.1_p20181201-cmake.patch | 165 -------------------
.../files/clementine-fts3-tokenizer.patch | 36 ----
5 files changed, 566 deletions(-)
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 6e52851f4d7..2ef425142c8 100644
--- a/media-sound/clementine/Manifest
+++ b/media-sound/clementine/Manifest
@@ -1,3 +1 @@
-DIST clementine-1.3.1_p20180416.tar.gz 8489387 BLAKE2B 37412428cf030a71f0011ba68a7ce71a3bbdc59402dc6d6349cca8ee44b208052cee9add1597a9577e5a6ed4bb2ebf16c4e1f79612d12be265f637caffd02a76 SHA512 8f38554571c637d9f79df43679ac2a76383f7a9b4ee8e921a16175889180e72afadc352dd40d73a671aa8ae9b01f6a251ae7b94b010043f8bcb8d8f42dcfff62
-DIST clementine-1.3.1_p20181201.tar.gz 8535075 BLAKE2B c4b6660ee9718054cc13c6b4fc2e1dccf9c117319f5b682dc5de2861fc40cc129e079449e1c2e15733faf14b6e18b42f37c228000a8e6c121b7fdcb2e48bc7b9 SHA512 fcc062857b95a5cabc41449143bb876df9955cdaaa59868f147d7a165dea13e2e4e1c11ea23f4309c8af7bef42d694a82867420245513af8e4dfbd91ab6f9a2c
DIST clementine-1.3.1_p20190127.tar.gz 8516435 BLAKE2B ce884c25d76e26349cf11109f885361dd79c4d567b08927962a611a2bb17dbe6674ac176f6b09b3a8ebe14e82f30125a56ffd08ff6d2072a96ee7b9ba1f066db SHA512 b82d2dc49dbe41e68440fb421cda6989f670a2a43829bf42e21f3c07d6f6badcb217333559d6dd9c66accd88e2473e5c717969e987410bf4801669dccba7cd15
diff --git a/media-sound/clementine/clementine-1.3.1_p20180416.ebuild b/media-sound/clementine/clementine-1.3.1_p20180416.ebuild
deleted file mode 100644
index 2af2d69f7b7..00000000000
--- a/media-sound/clementine/clementine-1.3.1_p20180416.ebuild
+++ /dev/null
@@ -1,181 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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"
-
-MY_P="${P/_}"
-if [[ ${PV} == *9999* ]]; then
- EGIT_BRANCH="qt5"
- EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
- GIT_ECLASS="git-r3"
-else
- COMMIT=bd096dcbc3cfa8965ee96245b95c4027278b42a6
- SRC_URI="https://github.com/${PN}-player/${PN^}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 x86"
-fi
-inherit cmake-utils flag-o-matic gnome2-utils l10n virtualx xdg-utils ${GIT_ECLASS}
-unset GIT_ECLASS
-
-DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
-HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
-
-REQUIRED_USE="
- udisks? ( dbus )
- wiimote? ( dbus )
-"
-
-COMMON_DEPEND="
- app-crypt/qca:2[qt5(+)]
- dev-db/sqlite:=
- dev-libs/crypto++[asm]
- dev-libs/glib:2
- dev-libs/libxml2
- dev-libs/protobuf:=
- dev-qt/qtconcurrent:5
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtsql:5[sqlite]
- dev-qt/qtwidgets:5
- media-libs/chromaprint:=
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0
- >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
- media-libs/taglib
- sys-libs/zlib
- virtual/glu
- virtual/opengl
- x11-libs/libX11
- cdda? ( dev-libs/libcdio:= )
- dbus? ( dev-qt/qtdbus:5 )
- ipod? ( >=media-libs/libgpod-0.8.0 )
- lastfm? ( >=media-libs/liblastfm-1.1.0_pre20150206 )
- moodbar? ( sci-libs/fftw:3.0 )
- mtp? ( >=media-libs/libmtp-1.0.0 )
- projectm? (
- media-libs/glew:=
- >=media-libs/libprojectm-1.2.0
- )
-"
-# Note: sqlite driver of dev-qt/qtsql is bundled, so no sqlite use is required; check if this can be overcome someway;
-# Libprojectm-1.2 seems to work fine, so no reason to use bundled version; check clementine's patches:
-# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
-# Still possibly essential but not applied yet patches are:
-# 06-fix-numeric-locale.patch
-# 08-stdlib.h-for-rand.patch
-RDEPEND="${COMMON_DEPEND}
- media-plugins/gst-plugins-meta:1.0
- media-plugins/gst-plugins-soup:1.0
- media-plugins/gst-plugins-taglib:1.0
- mms? ( media-plugins/gst-plugins-libmms:1.0 )
- mtp? ( gnome-base/gvfs[mtp] )
- udisks? ( sys-fs/udisks:2 )
-"
-DEPEND="${COMMON_DEPEND}
- >=dev-cpp/gtest-1.8.0
- dev-libs/boost
- dev-qt/linguist-tools:5
- dev-qt/qtopengl:5
- dev-qt/qtx11extras:5
- dev-qt/qtxml:5
- sys-devel/gettext
- virtual/pkgconfig
- box? ( dev-cpp/sparsehash )
- dropbox? ( dev-cpp/sparsehash )
- googledrive? ( dev-cpp/sparsehash )
- pulseaudio? ( media-sound/pulseaudio )
- seafile? ( dev-cpp/sparsehash )
- skydrive? ( dev-cpp/sparsehash )
- test? (
- dev-qt/qttest:5
- gnome-base/gsettings-desktop-schemas
- )
-"
-
-RESTRICT="test"
-
-S="${WORKDIR}/${PN^}-${COMMIT}"
-
-DOCS=( Changelog README.md )
-
-PATCHES=( "${FILESDIR}"/${PN}-fts3-tokenizer.patch )
-
-src_prepare() {
- l10n_find_plocales_changes "src/translations" "" ".po"
-
- cmake-utils_src_prepare
- # some tests fail or hang
- sed -i \
- -e '/add_test_file(translations_test.cpp/d' \
- tests/CMakeLists.txt || die
-
- if ! use test; then
- sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
- cmake_comment_add_subdirectory tests
- fi
-}
-
-src_configure() {
- # spotify is not in portage
- local mycmakeargs=(
- -DBUILD_WERROR=OFF
- # force to find crypto++ see bug #548544
- -DCRYPTOPP_LIBRARIES="cryptopp"
- -DCRYPTOPP_FOUND=ON
- # avoid automagically enabling of ccache (bug #611010)
- -DCCACHE_EXECUTABLE=OFF
- -DENABLE_BREAKPAD=OFF #< disable crash reporting
- -DENABLE_DEVICEKIT=OFF
- -DENABLE_GIO=ON
- -DENABLE_SPOTIFY_BLOB=OFF
- -DUSE_BUILTIN_TAGLIB=OFF
- -DUSE_SYSTEM_GMOCK=ON
- -DUSE_SYSTEM_PROJECTM=ON
- -DBUNDLE_PROJECTM_PRESETS=OFF
- -DLINGUAS="$(l10n_get_locales)"
- -DENABLE_BOX="$(usex box)"
- -DENABLE_AUDIOCD="$(usex cdda)"
- -DENABLE_DBUS="$(usex dbus)"
- -DENABLE_DROPBOX="$(usex dropbox)"
- -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
- -DENABLE_LIBGPOD="$(usex ipod)"
- -DENABLE_LIBLASTFM="$(usex lastfm)"
- -DENABLE_MOODBAR="$(usex moodbar)"
- -DENABLE_LIBMTP="$(usex mtp)"
- -DENABLE_VISUALISATIONS="$(usex projectm)"
- -DENABLE_SEAFILE="$(usex seafile)"
- -DENABLE_SKYDRIVE="$(usex skydrive)"
- -DENABLE_LIBPULSE="$(usex pulseaudio)"
- -DENABLE_UDISKS2="$(usex udisks)"
- -DENABLE_WIIMOTEDEV="$(usex wiimote)"
- )
-
- use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
-
- cmake-utils_src_configure
-}
-
-src_test() {
- cd "${CMAKE_BUILD_DIR}" || die
- virtx emake test
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- gnome2_icon_cache_update
-
- elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
- elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
- elog "depending on your preferences"
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- gnome2_icon_cache_update
-}
diff --git a/media-sound/clementine/clementine-1.3.1_p20181201.ebuild b/media-sound/clementine/clementine-1.3.1_p20181201.ebuild
deleted file mode 100644
index 3d3061880f8..00000000000
--- a/media-sound/clementine/clementine-1.3.1_p20181201.ebuild
+++ /dev/null
@@ -1,182 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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"
-
-MY_P="${P/_}"
-if [[ ${PV} == *9999* ]]; then
- EGIT_BRANCH="qt5"
- EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
- GIT_ECLASS="git-r3"
-else
- COMMIT=d87307fbc718a57ca38b5354f196db05b560036c
- SRC_URI="https://github.com/${PN}-player/${PN^}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-inherit cmake-utils flag-o-matic gnome2-utils l10n virtualx xdg-utils ${GIT_ECLASS}
-unset GIT_ECLASS
-
-DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
-HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
-
-REQUIRED_USE="
- udisks? ( dbus )
- wiimote? ( dbus )
-"
-
-COMMON_DEPEND="
- app-crypt/qca:2[qt5(+)]
- dev-db/sqlite:=
- dev-libs/crypto++[asm]
- dev-libs/glib:2
- dev-libs/libxml2
- dev-libs/protobuf:=
- dev-qt/qtconcurrent:5
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtsql:5[sqlite]
- dev-qt/qtwidgets:5
- media-libs/chromaprint:=
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0
- >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
- >=media-libs/taglib-1.11.1_p20181028
- sys-libs/zlib
- virtual/glu
- x11-libs/libX11
- cdda? ( dev-libs/libcdio:= )
- dbus? ( dev-qt/qtdbus:5 )
- ipod? ( >=media-libs/libgpod-0.8.0 )
- lastfm? ( >=media-libs/liblastfm-1.1.0_pre20150206 )
- moodbar? ( sci-libs/fftw:3.0 )
- mtp? ( >=media-libs/libmtp-1.0.0 )
- projectm? (
- media-libs/glew:=
- >=media-libs/libprojectm-1.2.0
- virtual/opengl
- )
-"
-# Note: sqlite driver of dev-qt/qtsql is bundled, so no sqlite use is required; check if this can be overcome someway;
-# Libprojectm-1.2 seems to work fine, so no reason to use bundled version; check clementine's patches:
-# https://github.com/clementine-player/Clementine/tree/master/3rdparty/libprojectm/patches
-# Still possibly essential but not applied yet patches are:
-# 06-fix-numeric-locale.patch
-# 08-stdlib.h-for-rand.patch
-RDEPEND="${COMMON_DEPEND}
- media-plugins/gst-plugins-meta:1.0
- media-plugins/gst-plugins-soup:1.0
- media-plugins/gst-plugins-taglib:1.0
- mms? ( media-plugins/gst-plugins-libmms:1.0 )
- mtp? ( gnome-base/gvfs[mtp] )
- udisks? ( sys-fs/udisks:2 )
-"
-DEPEND="${COMMON_DEPEND}
- >=dev-cpp/gtest-1.8.0
- dev-libs/boost
- dev-qt/linguist-tools:5
- dev-qt/qtx11extras:5
- dev-qt/qtxml:5
- sys-devel/gettext
- virtual/pkgconfig
- box? ( dev-cpp/sparsehash )
- dropbox? ( dev-cpp/sparsehash )
- googledrive? ( dev-cpp/sparsehash )
- projectm? ( dev-qt/qtopengl:5 )
- pulseaudio? ( media-sound/pulseaudio )
- seafile? ( dev-cpp/sparsehash )
- skydrive? ( dev-cpp/sparsehash )
- test? (
- dev-qt/qttest:5
- gnome-base/gsettings-desktop-schemas
- )
-"
-
-RESTRICT="test"
-
-S="${WORKDIR}/${PN^}-${COMMIT}"
-
-DOCS=( Changelog README.md )
-
-PATCHES=( "${FILESDIR}"/${P}-cmake.patch )
-
-src_prepare() {
- l10n_find_plocales_changes "src/translations" "" ".po"
-
- cmake-utils_src_prepare
- # some tests fail or hang
- sed -i \
- -e '/add_test_file(translations_test.cpp/d' \
- tests/CMakeLists.txt || die
-
- if ! use test; then
- sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
- cmake_comment_add_subdirectory tests
- fi
-
- rm -r 3rdparty/{libmygpo-qt,libmygpo-qt5,taglib} || die
-}
-
-src_configure() {
- # spotify is not in portage
- local mycmakeargs=(
- -DBUILD_WERROR=OFF
- # force to find crypto++ see bug #548544
- -DCRYPTOPP_LIBRARIES="cryptopp"
- -DCRYPTOPP_FOUND=ON
- # avoid automagically enabling of ccache (bug #611010)
- -DCCACHE_EXECUTABLE=OFF
- -DENABLE_BREAKPAD=OFF #< disable crash reporting
- -DENABLE_DEVICEKIT=OFF
- -DENABLE_GIO=ON
- -DENABLE_SPOTIFY_BLOB=OFF
- -DUSE_SYSTEM_GMOCK=ON
- -DUSE_SYSTEM_PROJECTM=ON
- -DBUNDLE_PROJECTM_PRESETS=OFF
- -DLINGUAS="$(l10n_get_locales)"
- -DENABLE_BOX="$(usex box)"
- -DENABLE_AUDIOCD="$(usex cdda)"
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DBus=$(usex !dbus)
- -DENABLE_DROPBOX="$(usex dropbox)"
- -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
- -DENABLE_LIBGPOD="$(usex ipod)"
- -DENABLE_LIBLASTFM="$(usex lastfm)"
- -DENABLE_MOODBAR="$(usex moodbar)"
- -DENABLE_LIBMTP="$(usex mtp)"
- -DENABLE_VISUALISATIONS="$(usex projectm)"
- -DENABLE_SEAFILE="$(usex seafile)"
- -DENABLE_SKYDRIVE="$(usex skydrive)"
- -DENABLE_LIBPULSE="$(usex pulseaudio)"
- -DENABLE_UDISKS2="$(usex udisks)"
- -DENABLE_WIIMOTEDEV="$(usex wiimote)"
- )
-
- use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
-
- cmake-utils_src_configure
-}
-
-src_test() {
- cd "${CMAKE_BUILD_DIR}" || die
- virtx emake test
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
- gnome2_icon_cache_update
-
- elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
- elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
- elog "depending on your preferences"
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
- gnome2_icon_cache_update
-}
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
deleted file mode 100644
index 633bf39be9d..00000000000
--- a/media-sound/clementine/files/clementine-1.3.1_p20181201-cmake.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From 940fcb260b345d2598d04fd07c6718566b3adda1 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sat, 1 Dec 2018 23:29:43 +0100
-Subject: [PATCH 1/3] Qt5::Test is not required in the global QT_LIBRARIES
- definition
-
----
- CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e660a376a..e18e008c0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -110,7 +110,7 @@ if(WIN32)
- find_package(Qt5 REQUIRED COMPONENTS WinExtras)
- endif()
-
--set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network Qt5::Sql Qt5::Xml Qt5::OpenGL Qt5::Test)
-+set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network Qt5::Sql Qt5::Xml Qt5::OpenGL)
-
- if(DBUS_FOUND)
- set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::DBus)
---
-2.19.2
-
-
-From 4e11613088d24f248046d449f63bfd245f1e82cc Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sat, 1 Dec 2018 23:44:35 +0100
-Subject: [PATCH 2/3] Qt5::DBus had already been optional, drop bogus pkgconfig
- search
-
-This partially reverts commit 4321ecf7d26c5eed577a97d230786bb9f56ea37f.
----
- CMakeLists.txt | 17 +++++++----------
- 1 file changed, 7 insertions(+), 10 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e18e008c0..0d1403e04 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -52,7 +52,6 @@ find_package(PkgConfig REQUIRED)
- find_package(Protobuf REQUIRED)
- find_package(FFTW3)
- find_package(ALSA)
--pkg_check_modules(DBUS dbus-1)
- if (NOT APPLE)
- find_package(X11)
- endif()
-@@ -96,13 +95,10 @@ find_path(SPARSEHASH_INCLUDE_DIRS google/sparsetable)
- # QT
- set(QT_MIN_VERSION 5.6.0)
- find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Concurrent Widgets Network Sql Xml OpenGL Test)
-+find_package(Qt5DBus ${QT_MIN_VERSION})
- if(X11_FOUND)
- find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS X11Extras)
- endif()
--if(DBUS_FOUND)
-- find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS DBus)
-- get_target_property(QT_DBUSXML2CPP_EXECUTABLE Qt5::qdbusxml2cpp LOCATION)
--endif()
- if(APPLE)
- find_package(Qt5 REQUIRED COMPONENTS MacExtras)
- endif()
-@@ -112,8 +108,9 @@ endif()
-
- set(QT_LIBRARIES Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network Qt5::Sql Qt5::Xml Qt5::OpenGL)
-
--if(DBUS_FOUND)
-+if(Qt5DBus_FOUND)
- set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::DBus)
-+ get_target_property(QT_DBUSXML2CPP_EXECUTABLE Qt5::qdbusxml2cpp LOCATION)
- endif()
- if(X11_FOUND)
- set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::X11Extras)
-@@ -286,19 +283,19 @@ optional_component(LIBLASTFM ON "Last.fm support"
- )
-
- optional_component(DBUS ON "D-Bus support"
-- DEPENDS "D-Bus" DBUS_FOUND
-+ DEPENDS "Qt5DBus" Qt5DBus_FOUND
- )
-
- optional_component(WIIMOTEDEV ON "Wiimote support"
-- DEPENDS "D-Bus support" DBUS_FOUND
-+ DEPENDS "D-Bus support" Qt5DBus_FOUND
- )
-
- optional_component(DEVICEKIT ON "Devices: DeviceKit backend"
-- DEPENDS "D-Bus support" DBUS_FOUND
-+ DEPENDS "D-Bus support" Qt5DBus_FOUND
- )
-
- optional_component(UDISKS2 ON "Devices: UDisks2 backend"
-- DEPENDS "D-Bus support" DBUS_FOUND
-+ DEPENDS "D-Bus support" Qt5DBus_FOUND
- )
-
- if (CRYPTOPP_FOUND OR HAVE_SPOTIFY_BLOB)
---
-2.19.2
-
-
-From 21e9f8be5b986581ab04869d28c335f949423ef5 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sun, 2 Dec 2018 00:21:17 +0100
-Subject: [PATCH 3/3] Find X11 only once, in root CMakeLists.txt
-
-Since we have HAVE_X11, use HAVE_X11 in cmake.
----
- 3rdparty/qxt/CMakeLists.txt | 1 -
- CMakeLists.txt | 4 ++--
- src/CMakeLists.txt | 1 -
- 3 files changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/3rdparty/qxt/CMakeLists.txt b/3rdparty/qxt/CMakeLists.txt
-index 8fd9220ae..73c67a9fa 100644
---- a/3rdparty/qxt/CMakeLists.txt
-+++ b/3rdparty/qxt/CMakeLists.txt
-@@ -10,7 +10,6 @@ set(QXT-MOC-HEADERS
- qxtglobalshortcut.h
- )
-
--find_package(X11)
- include_directories(${X11_INCLUDE_DIR})
- include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 0d1403e04..bd191b59e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -96,7 +96,7 @@ find_path(SPARSEHASH_INCLUDE_DIRS google/sparsetable)
- set(QT_MIN_VERSION 5.6.0)
- find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Concurrent Widgets Network Sql Xml OpenGL Test)
- find_package(Qt5DBus ${QT_MIN_VERSION})
--if(X11_FOUND)
-+if(HAVE_X11)
- find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS X11Extras)
- endif()
- if(APPLE)
-@@ -112,7 +112,7 @@ if(Qt5DBus_FOUND)
- set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::DBus)
- get_target_property(QT_DBUSXML2CPP_EXECUTABLE Qt5::qdbusxml2cpp LOCATION)
- endif()
--if(X11_FOUND)
-+if(HAVE_X11)
- set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::X11Extras)
- endif()
- if(APPLE)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 0eb14e28c..4a612d5bd 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -1364,7 +1364,6 @@ if (UNIX AND NOT APPLE)
- # command but they're actually used by libraries that appear after them, so
- # they end up getting ignored. This appends them to the very end of the link
- # line, ensuring they're always used.
-- find_package(X11)
- if (FREEBSD)
- target_link_libraries(clementine_lib ${X11_X11_LIB})
- else ()
---
-2.19.2
-
diff --git a/media-sound/clementine/files/clementine-fts3-tokenizer.patch b/media-sound/clementine/files/clementine-fts3-tokenizer.patch
deleted file mode 100644
index 41a5cd76c99..00000000000
--- a/media-sound/clementine/files/clementine-fts3-tokenizer.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 77b6d72a3e8d841977a3e30ea435cd9e9289fc96 Mon Sep 17 00:00:00 2001
-From: Alexander Golubev <fatzer2@gmail.com>
-Date: Thu, 16 Mar 2017 14:54:55 +0300
-Subject: [PATCH] core/database: configure fts3 tokenizer support
-
-Original patch by Arfrever
-This fixes https://github.com/clementine-player/Clementine/issues/5297
----
- src/core/database.cpp | 14 ++++++++++++++
- 1 file changed, 14 insertions(+)
-
-diff --git a/src/core/database.cpp b/src/core/database.cpp
-index 86e8a1052..36113d8c1 100644
---- a/src/core/database.cpp
-+++ b/src/core/database.cpp
-@@ -265,6 +265,20 @@ QSqlDatabase Database::Connect() {
- StaticInit();
-
- {
-+
-+#ifdef SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER
-+ // In case sqlite>=3.12 is compiled without -DSQLITE_ENABLE_FTS3_TOKENIZER (generally a good idea
-+ // due to security reasons) the fts3 support should be enabled explicitly.
-+ // see https://github.com/clementine-player/Clementine/issues/5297
-+ QVariant v = db.driver()->handle();
-+ if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*") == 0) {
-+ sqlite3* handle = *static_cast<sqlite3**>(v.data());
-+ if (handle) {
-+ sqlite3_db_config(handle, SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER, 1, NULL);
-+ }
-+ }
-+#endif
-+
- QSqlQuery set_fts_tokenizer(db);
- set_fts_tokenizer.prepare("SELECT fts3_tokenizer(:name, :pointer)");
- set_fts_tokenizer.bindValue(":name", "unicode");
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2019-07-13 8:51 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2019-07-13 8:51 UTC (permalink / raw
To: gentoo-commits
commit: 66e5a91fc96dd9acf01f84b458c7c4b39aa405bf
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 13 08:50:06 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jul 13 08:50:45 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=66e5a91f
media-sound/clementine: Fix restore from systray with >=Qt-5.12.4
See upstream PR: https://github.com/clementine-player/Clementine/pull/6351
Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../clementine/clementine-1.3.1_p20190609.ebuild | 2 ++
...-1.3.1_p20190609-fix-restore-from-systray.patch | 34 ++++++++++++++++++++++
2 files changed, 36 insertions(+)
diff --git a/media-sound/clementine/clementine-1.3.1_p20190609.ebuild b/media-sound/clementine/clementine-1.3.1_p20190609.ebuild
index 54765a4608b..a4d5f63d5bb 100644
--- a/media-sound/clementine/clementine-1.3.1_p20190609.ebuild
+++ b/media-sound/clementine/clementine-1.3.1_p20190609.ebuild
@@ -104,6 +104,8 @@ RESTRICT="test"
DOCS=( Changelog README.md )
+PATCHES=( "${FILESDIR}/${P}-fix-restore-from-systray.patch" )
+
src_prepare() {
l10n_find_plocales_changes "src/translations" "" ".po"
diff --git a/media-sound/clementine/files/clementine-1.3.1_p20190609-fix-restore-from-systray.patch b/media-sound/clementine/files/clementine-1.3.1_p20190609-fix-restore-from-systray.patch
new file mode 100644
index 00000000000..9f27e219e89
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3.1_p20190609-fix-restore-from-systray.patch
@@ -0,0 +1,34 @@
+From 1bf633e71b7b5d8e5965971036d66e1d18552b49 Mon Sep 17 00:00:00 2001
+From: Michael Niggli <m.niggli@gmail.com>
+Date: Fri, 31 May 2019 17:04:46 +0200
+Subject: [PATCH] Fix blank window when restoring from systray
+
+This applies the fix qBittorrent used for this same issue:
+https://github.com/qbittorrent/qBittorrent/issues/9240,
+so credit goes to those guys
+---
+ src/ui/mainwindow.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp
+index 2944d46ec..ad603fd64 100644
+--- a/src/ui/mainwindow.cpp
++++ b/src/ui/mainwindow.cpp
+@@ -1441,7 +1441,7 @@ void MainWindow::closeEvent(QCloseEvent* event) {
+ keep_running = s.value("keeprunning", tray_icon_->IsVisible()).toBool();
+
+ if (keep_running && event->spontaneous()) {
+- event->accept();
++ event->ignore();
+ SetHiddenInTray(true);
+ } else {
+ Exit();
+@@ -1454,7 +1454,7 @@ void MainWindow::SetHiddenInTray(bool hidden) {
+ // Some window managers don't remember maximized state between calls to
+ // hide() and show(), so we have to remember it ourself.
+ if (hidden) {
+- hide();
++ QTimer::singleShot(0, this, &QWidget::hide);
+ } else {
+ if (was_maximized_)
+ showMaximized();
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2021-07-02 10:42 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2021-07-02 10:42 UTC (permalink / raw
To: gentoo-commits
commit: 108a30eff5e383a41da0285e07d44ed74eb40c88
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 2 10:39:53 2021 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Jul 2 10:42:18 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=108a30ef
media-sound/clementine: Fixed build with gcc11
Thanks-to: Jiří Moravec <qjim <AT> volny.cz>
Closes: https://bugs.gentoo.org/788607
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
media-sound/clementine/clementine-1.4.0_rc1.ebuild | 1 +
....0_rc1-gcc11-fix-static-assertion-failure.patch | 70 ++++++++++++++++++++++
2 files changed, 71 insertions(+)
diff --git a/media-sound/clementine/clementine-1.4.0_rc1.ebuild b/media-sound/clementine/clementine-1.4.0_rc1.ebuild
index ef72ab5c0af..620d245f5d3 100644
--- a/media-sound/clementine/clementine-1.4.0_rc1.ebuild
+++ b/media-sound/clementine/clementine-1.4.0_rc1.ebuild
@@ -108,6 +108,7 @@ DOCS=( Changelog README.md )
PATCHES=(
"${FILESDIR}/${P}-QPainterPath_include.patch" #725678
+ "${FILESDIR}/${P}-gcc11-fix-static-assertion-failure.patch" #788607
)
src_prepare() {
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc1-gcc11-fix-static-assertion-failure.patch b/media-sound/clementine/files/clementine-1.4.0_rc1-gcc11-fix-static-assertion-failure.patch
new file mode 100644
index 00000000000..1a492fe5664
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.4.0_rc1-gcc11-fix-static-assertion-failure.patch
@@ -0,0 +1,70 @@
+From cfcd0a956e6758624fab0ff20aee9eb08b3df0b3 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
+Date: Wed, 16 Dec 2020 20:03:26 +0100
+Subject: [PATCH] Drop -std=c++0x and -U__STRICT_ANSI__
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This was causing compilation failures, static assertion failed, with GCC 11.
+
+Fix #6865
+
+Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
+---
+ ext/clementine-spotifyblob/CMakeLists.txt | 2 +-
+ ext/clementine-tagreader/CMakeLists.txt | 2 +-
+ src/CMakeLists.txt | 2 +-
+ tests/CMakeLists.txt | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/ext/clementine-spotifyblob/CMakeLists.txt b/ext/clementine-spotifyblob/CMakeLists.txt
+index e5342ee5b..6fd551d57 100644
+--- a/ext/clementine-spotifyblob/CMakeLists.txt
++++ b/ext/clementine-spotifyblob/CMakeLists.txt
+@@ -7,7 +7,7 @@ include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-spotifyblob)
+ include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-common)
+ include_directories(${CMAKE_SOURCE_DIR}/src)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option --std=c++0x -U__STRICT_ANSI__")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option")
+
+ link_directories(${SPOTIFY_LIBRARY_DIRS})
+
+diff --git a/ext/clementine-tagreader/CMakeLists.txt b/ext/clementine-tagreader/CMakeLists.txt
+index 855e390cf..a48b01450 100644
+--- a/ext/clementine-tagreader/CMakeLists.txt
++++ b/ext/clementine-tagreader/CMakeLists.txt
+@@ -7,7 +7,7 @@ include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-tagreader)
+ include_directories(${CMAKE_SOURCE_DIR}/src)
+ include_directories(${CMAKE_BINARY_DIR}/src)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x -U__STRICT_ANSI__")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+
+ set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR})
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 627b2e7cb..0bbc775ba 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -1,6 +1,6 @@
+
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option --std=c++0x -U__STRICT_ANSI__")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option")
+
+ option(BUILD_WERROR "Build with -Werror" ON)
+
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 4474e7be5..ff571fc19 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ cmake_minimum_required(VERSION 2.8.11)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x -fpermissive -Wno-c++11-narrowing -U__STRICT_ANSI__")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive -Wno-c++11-narrowing")
+
+ if(USE_SYSTEM_GMOCK)
+ include_directories(${GMOCK_INCLUDE_DIRS} ${GTEST_INCLUDE_DIRS})
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2022-10-16 4:53 Miroslav Šulc
0 siblings, 0 replies; 16+ messages in thread
From: Miroslav Šulc @ 2022-10-16 4:53 UTC (permalink / raw
To: gentoo-commits
commit: 302d46e47e75b664144499370bef450fed383df0
Author: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 16 04:46:22 2022 +0000
Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sun Oct 16 04:46:22 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=302d46e4
media-sound/clementine: dropped obsolete 1.4.0_rc1
Bug: https://bugs.gentoo.org/877175
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>
media-sound/clementine/Manifest | 1 -
media-sound/clementine/clementine-1.4.0_rc1.ebuild | 181 ---------------------
...clementine-1.4.0_rc1-QPainterPath_include.patch | 50 ------
....0_rc1-gcc11-fix-static-assertion-failure.patch | 70 --------
4 files changed, 302 deletions(-)
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 2c93e95fd8ee..9d094a2ce96c 100644
--- a/media-sound/clementine/Manifest
+++ b/media-sound/clementine/Manifest
@@ -1,2 +1 @@
DIST clementine-1.4.0_rc2.tar.gz 9073685 BLAKE2B a2376f1a895c651c2eb089419e20b9ce6050739f1342a6fdf1ebad0a14b65a08f56cc846eb79ad7facb77d6ee2cac74f9e374bd8e284a2a7f87d7c117779a08d SHA512 403093386efabd52e649c0e379abbf4873c4b2f8d0af72cda2b7e0255f90c60259f961045e7b51d0e5bf35425d678ff6b018c9191845ebbd156d9216d8bd7722
-DIST clementine-1.4.0rc1.tar.xz 5593564 BLAKE2B 894d86903df1ba43fca2f07c83d92bcb5d65a0103a4ecd1b321d44259534930c977f0caeaf0c93446dbec4422937f2ddc7f665daa7cb41e5c183fa7f16571809 SHA512 c74102a3ca4a99c3627b718389478e5ca79ba71ce45eccd232ca2eb3fb60a1632afa62908a2831244d6c35154ad6a8b4fa2b2485b4440b9685a0521bfacaabdb
diff --git a/media-sound/clementine/clementine-1.4.0_rc1.ebuild b/media-sound/clementine/clementine-1.4.0_rc1.ebuild
deleted file mode 100644
index 20ab0d44c70d..000000000000
--- a/media-sound/clementine/clementine-1.4.0_rc1.ebuild
+++ /dev/null
@@ -1,181 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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"
-
-inherit cmake flag-o-matic plocale virtualx xdg
-
-MY_P="${P/_}"
-if [[ ${PV} == *9999* ]]; then
- EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
- inherit git-r3
-else
- S="${WORKDIR}/${P/_}"
- SRC_URI_BASE="https://github.com/clementine-player/${PN^}"
- COMMIT=""
- if [[ -n "${COMMIT}" ]] ; then
- SRC_URI="${SRC_URI_BASE}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN^}-${COMMIT}"
- elif [[ $(ver_cut 3) -gt 90 ]] ; then
- SRC_URI="${SRC_URI_BASE}/archive/${PV}.tar.gz -> ${P}.tar.gz"
- else
- SRC_URI="${SRC_URI_BASE}/releases/download/${PV/_}/${P/_}.tar.xz"
- fi
- KEYWORDS="amd64 ~arm64 ~ppc64 x86"
-fi
-DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
-HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="box cdda +dbus debug dropbox googledrive ipod lastfm mms moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="
- udisks? ( dbus )
- wiimote? ( dbus )
-"
-
-BDEPEND="
- >=dev-cpp/gtest-1.8.0
- dev-qt/linguist-tools:5
- sys-devel/gettext
- virtual/pkgconfig
- test? (
- dev-qt/qttest:5
- gnome-base/gsettings-desktop-schemas
- )
-"
-COMMON_DEPEND="
- app-crypt/qca:2[qt5(+)]
- dev-db/sqlite:=
- dev-libs/crypto++:=
- dev-libs/glib:2
- dev-libs/libxml2
- dev-libs/protobuf:=
- dev-qt/qtconcurrent:5
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtsql:5[sqlite]
- dev-qt/qtwidgets:5
- media-libs/chromaprint:=
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0
- >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
- >=media-libs/taglib-1.11.1_p20181028
- sys-libs/zlib
- virtual/glu
- x11-libs/libX11
- cdda? ( dev-libs/libcdio:= )
- dbus? ( dev-qt/qtdbus:5 )
- ipod? ( >=media-libs/libgpod-0.8.0 )
- lastfm? ( >=media-libs/liblastfm-1.1.0_pre20150206 )
- moodbar? ( sci-libs/fftw:3.0 )
- mtp? ( >=media-libs/libmtp-1.0.0 )
- projectm? (
- media-libs/glew:=
- >=media-libs/libprojectm-3.1.12:0=
- virtual/opengl
- )
-"
-RDEPEND="${COMMON_DEPEND}
- media-plugins/gst-plugins-meta:1.0
- media-plugins/gst-plugins-soup:1.0
- media-plugins/gst-plugins-taglib:1.0
- mms? ( media-plugins/gst-plugins-libmms:1.0 )
- mtp? ( gnome-base/gvfs[mtp] )
- udisks? ( sys-fs/udisks:2 )
-"
-DEPEND="${COMMON_DEPEND}
- dev-libs/boost
- dev-qt/qtopengl:5
- dev-qt/qtx11extras:5
- dev-qt/qtxml:5
- box? ( dev-cpp/sparsehash )
- dropbox? ( dev-cpp/sparsehash )
- googledrive? ( dev-cpp/sparsehash )
- pulseaudio? ( media-sound/pulseaudio )
- seafile? ( dev-cpp/sparsehash )
- skydrive? ( dev-cpp/sparsehash )
-"
-
-RESTRICT="test"
-
-DOCS=( Changelog README.md )
-
-PATCHES=(
- "${FILESDIR}/${P}-QPainterPath_include.patch" #725678
- "${FILESDIR}/${P}-gcc11-fix-static-assertion-failure.patch" #788607
-)
-
-src_prepare() {
- plocale_find_changes "src/translations" "" ".po"
-
- cmake_src_prepare
- # some tests fail or hang
- sed -i \
- -e '/add_test_file(translations_test.cpp/d' \
- tests/CMakeLists.txt || die
-
- if ! use test; then
- sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
- cmake_comment_add_subdirectory tests
- fi
-
- rm -r 3rdparty/{libmygpo-qt,libmygpo-qt5,taglib} || die
-}
-
-src_configure() {
- # spotify is not in portage
- local mycmakeargs=(
- -DBUILD_WERROR=OFF
- # force to find crypto++ see bug #548544
- -DCRYPTOPP_LIBRARIES="cryptopp"
- -DCRYPTOPP_FOUND=ON
- # avoid automagically enabling of ccache (bug #611010)
- -DCCACHE_EXECUTABLE=OFF
- -DENABLE_BREAKPAD=OFF #< disable crash reporting
- -DENABLE_DEVICEKIT=OFF
- -DENABLE_GIO=ON
- -DENABLE_SPOTIFY_BLOB=OFF
- -DUSE_SYSTEM_GMOCK=ON
- -DUSE_SYSTEM_PROJECTM=ON
- -DBUNDLE_PROJECTM_PRESETS=OFF
- -DLINGUAS="$(plocale_get_locales)"
- -DENABLE_BOX="$(usex box)"
- -DENABLE_AUDIOCD="$(usex cdda)"
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DBus=$(usex !dbus)
- -DENABLE_DROPBOX="$(usex dropbox)"
- -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
- -DENABLE_LIBGPOD="$(usex ipod)"
- -DENABLE_LIBLASTFM="$(usex lastfm)"
- -DENABLE_MOODBAR="$(usex moodbar)"
- -DENABLE_LIBMTP="$(usex mtp)"
- -DENABLE_VISUALISATIONS="$(usex projectm)"
- -DENABLE_SEAFILE="$(usex seafile)"
- -DENABLE_SKYDRIVE="$(usex skydrive)"
- -DENABLE_LIBPULSE="$(usex pulseaudio)"
- -DENABLE_UDISKS2="$(usex udisks)"
- -DENABLE_WIIMOTEDEV="$(usex wiimote)"
- )
-
- use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
-
- cmake_src_configure
-}
-
-src_test() {
- cd "${CMAKE_BUILD_DIR}" || die
- virtx emake test
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
-
- elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
- elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
- elog "depending on your preferences"
-}
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc1-QPainterPath_include.patch b/media-sound/clementine/files/clementine-1.4.0_rc1-QPainterPath_include.patch
deleted file mode 100644
index 3a441412ba26..000000000000
--- a/media-sound/clementine/files/clementine-1.4.0_rc1-QPainterPath_include.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 7715ae5c01528213a97369e14d5461efd264cc27 Mon Sep 17 00:00:00 2001
-From: SDNick484 <SDNick484@gmail.com>
-Date: Thu, 28 May 2020 10:34:31 +0200
-Subject: [PATCH] Adds missing QPainterPath include
-
----
- src/widgets/freespacebar.cpp | 1 +
- src/widgets/osdpretty.cpp | 1 +
- src/widgets/sliderwidget.cpp | 1 +
- 3 files changed, 3 insertions(+)
-
-diff --git a/src/widgets/freespacebar.cpp b/src/widgets/freespacebar.cpp
-index 3067f722b..c9789d353 100644
---- a/src/widgets/freespacebar.cpp
-+++ b/src/widgets/freespacebar.cpp
-@@ -20,6 +20,7 @@
-
- #include <QLinearGradient>
- #include <QPainter>
-+#include <QPainterPath>
-
- const int FreeSpaceBar::kBarHeight = 20;
- const int FreeSpaceBar::kBarBorderRadius = 8;
-diff --git a/src/widgets/osdpretty.cpp b/src/widgets/osdpretty.cpp
-index 9d95716d8..30cef7dae 100644
---- a/src/widgets/osdpretty.cpp
-+++ b/src/widgets/osdpretty.cpp
-@@ -26,6 +26,7 @@
- #include <QLayout>
- #include <QMouseEvent>
- #include <QPainter>
-+#include <QPainterPath>
- #include <QSettings>
- #include <QTimer>
- #include <QTimeLine>
-diff --git a/src/widgets/sliderwidget.cpp b/src/widgets/sliderwidget.cpp
-index 581a0de7b..96bbc0e5e 100644
---- a/src/widgets/sliderwidget.cpp
-+++ b/src/widgets/sliderwidget.cpp
-@@ -27,6 +27,7 @@
- #include <QSize>
- #include <QTimer>
- #include <QStyle>
-+#include <QtGui>
- #include <QMenu>
- #include <QWheelEvent>
- #include <QMouseEvent>
---
-2.27.0.rc2
-
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc1-gcc11-fix-static-assertion-failure.patch b/media-sound/clementine/files/clementine-1.4.0_rc1-gcc11-fix-static-assertion-failure.patch
deleted file mode 100644
index 1a492fe5664c..000000000000
--- a/media-sound/clementine/files/clementine-1.4.0_rc1-gcc11-fix-static-assertion-failure.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From cfcd0a956e6758624fab0ff20aee9eb08b3df0b3 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
-Date: Wed, 16 Dec 2020 20:03:26 +0100
-Subject: [PATCH] Drop -std=c++0x and -U__STRICT_ANSI__
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This was causing compilation failures, static assertion failed, with GCC 11.
-
-Fix #6865
-
-Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
----
- ext/clementine-spotifyblob/CMakeLists.txt | 2 +-
- ext/clementine-tagreader/CMakeLists.txt | 2 +-
- src/CMakeLists.txt | 2 +-
- tests/CMakeLists.txt | 2 +-
- 4 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/ext/clementine-spotifyblob/CMakeLists.txt b/ext/clementine-spotifyblob/CMakeLists.txt
-index e5342ee5b..6fd551d57 100644
---- a/ext/clementine-spotifyblob/CMakeLists.txt
-+++ b/ext/clementine-spotifyblob/CMakeLists.txt
-@@ -7,7 +7,7 @@ include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-spotifyblob)
- include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-common)
- include_directories(${CMAKE_SOURCE_DIR}/src)
-
--set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option --std=c++0x -U__STRICT_ANSI__")
-+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option")
-
- link_directories(${SPOTIFY_LIBRARY_DIRS})
-
-diff --git a/ext/clementine-tagreader/CMakeLists.txt b/ext/clementine-tagreader/CMakeLists.txt
-index 855e390cf..a48b01450 100644
---- a/ext/clementine-tagreader/CMakeLists.txt
-+++ b/ext/clementine-tagreader/CMakeLists.txt
-@@ -7,7 +7,7 @@ include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-tagreader)
- include_directories(${CMAKE_SOURCE_DIR}/src)
- include_directories(${CMAKE_BINARY_DIR}/src)
-
--set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x -U__STRICT_ANSI__")
-+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
-
- set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR})
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 627b2e7cb..0bbc775ba 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -1,6 +1,6 @@
-
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
--set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option --std=c++0x -U__STRICT_ANSI__")
-+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option")
-
- option(BUILD_WERROR "Build with -Werror" ON)
-
-diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
-index 4474e7be5..ff571fc19 100644
---- a/tests/CMakeLists.txt
-+++ b/tests/CMakeLists.txt
-@@ -1,6 +1,6 @@
- cmake_minimum_required(VERSION 2.8.11)
-
--set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x -fpermissive -Wno-c++11-narrowing -U__STRICT_ANSI__")
-+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive -Wno-c++11-narrowing")
-
- if(USE_SYSTEM_GMOCK)
- include_directories(${GMOCK_INCLUDE_DIRS} ${GTEST_INCLUDE_DIRS})
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2023-10-17 5:24 Yixun Lan
0 siblings, 0 replies; 16+ messages in thread
From: Yixun Lan @ 2023-10-17 5:24 UTC (permalink / raw
To: gentoo-commits
commit: a19cfd05bb1bc1ed9ed84342a95bca123b347eb9
Author: Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Fri Oct 6 17:56:47 2023 +0000
Commit: Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Tue Oct 17 05:23:48 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a19cfd05
media-sound/clementine: Fix build with new abseil and proto
Bug: https://bugs.gentoo.org/912853
Bug: https://bugs.gentoo.org/913738
Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>
...-9999.ebuild => clementine-1.4.0_rc2-r4.ebuild} | 10 ++++
media-sound/clementine/clementine-9999.ebuild | 6 ++
.../files/clementine-1.4.0_rc2-absl.patch | 15 +++++
.../files/clementine-1.4.0_rc2-c17.patch | 67 ++++++++++++++++++++++
4 files changed, 98 insertions(+)
diff --git a/media-sound/clementine/clementine-9999.ebuild b/media-sound/clementine/clementine-1.4.0_rc2-r4.ebuild
similarity index 94%
copy from media-sound/clementine/clementine-9999.ebuild
copy to media-sound/clementine/clementine-1.4.0_rc2-r4.ebuild
index 9922ac005926..0ba33dd8074d 100644
--- a/media-sound/clementine/clementine-9999.ebuild
+++ b/media-sound/clementine/clementine-1.4.0_rc2-r4.ebuild
@@ -30,6 +30,7 @@ REQUIRED_USE="
"
COMMON_DEPEND="
+ dev-cpp/abseil-cpp:=
dev-db/sqlite:3
dev-libs/glib:2
dev-libs/protobuf:=
@@ -91,6 +92,12 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}/clementine-1.4.0_rc2-lz.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-c17.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-absl.patch"
+)
+
DOCS=( Changelog README.md )
src_prepare() {
@@ -111,12 +118,15 @@ src_prepare() {
}
src_configure() {
+ # spotify is not in portage
local mycmakeargs=(
-DBUILD_WERROR=OFF
# avoid automagically enabling of ccache (bug #611010)
-DCCACHE_EXECUTABLE=OFF
-DENABLE_BREAKPAD=OFF #< disable crash reporting
-DENABLE_GIO=ON
+ -DENABLE_SPOTIFY=OFF
+ -DENABLE_SPOTIFY_BLOB=OFF
-DUSE_SYSTEM_GMOCK=ON
-DUSE_SYSTEM_PROJECTM=ON
-DBUNDLE_PROJECTM_PRESETS=OFF
diff --git a/media-sound/clementine/clementine-9999.ebuild b/media-sound/clementine/clementine-9999.ebuild
index 9922ac005926..4e0ac13d9ad3 100644
--- a/media-sound/clementine/clementine-9999.ebuild
+++ b/media-sound/clementine/clementine-9999.ebuild
@@ -30,6 +30,7 @@ REQUIRED_USE="
"
COMMON_DEPEND="
+ dev-cpp/abseil-cpp:=
dev-db/sqlite:3
dev-libs/glib:2
dev-libs/protobuf:=
@@ -91,6 +92,11 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}/clementine-1.4.0_rc2-c17.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-absl.patch"
+)
+
DOCS=( Changelog README.md )
src_prepare() {
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch b/media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch
new file mode 100644
index 000000000000..48eb9dda4227
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch
@@ -0,0 +1,15 @@
+Fix build
+
+https://bugs.gentoo.org/912853
+
+--- a/ext/libclementine-tagreader/CMakeLists.txt
++++ b/ext/libclementine-tagreader/CMakeLists.txt
+@@ -37,7 +37,7 @@ add_library(libclementine-tagreader STATIC
+ )
+
+ target_link_libraries(libclementine-tagreader
+- ${PROTOBUF_LIBRARY}
+ libclementine-common
++ ${PROTOBUF_LIBRARY} absl_log_internal_check_op absl_log_internal_message
+ )
+
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc2-c17.patch b/media-sound/clementine/files/clementine-1.4.0_rc2-c17.patch
new file mode 100644
index 000000000000..3121b1e15bf0
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.4.0_rc2-c17.patch
@@ -0,0 +1,67 @@
+Fix build
+
+https://bugs.gentoo.org/912853
+
+--- a/3rdparty/libprojectm/CMakeLists.txt
++++ b/3rdparty/libprojectm/CMakeLists.txt
+@@ -24,7 +24,7 @@ set(BUILD_PROJECTM_STATIC ON)
+ set(DISABLE_NATIVE_PRESETS ON)
+ set(DISABLE_MILKDROP_PRESETS OFF)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
+
+ pkg_check_modules(GLEW glew)
+
+--- a/3rdparty/qtsingleapplication/CMakeLists.txt
++++ b/3rdparty/qtsingleapplication/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ cmake_minimum_required(VERSION 3.0.0)
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++17")
+
+ set(SINGLEAPP-SOURCES
+ qtlocalpeer.cpp
+--- a/ext/libclementine-common/CMakeLists.txt
++++ b/ext/libclementine-common/CMakeLists.txt
+@@ -2,7 +2,7 @@ include_directories(${PROTOBUF_INCLUDE_DIRS})
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++17")
+
+ set(SOURCES
+ core/closure.cpp
+--- a/ext/libclementine-remote/CMakeLists.txt
++++ b/ext/libclementine-remote/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ include_directories(${PROTOBUF_INCLUDE_DIRS})
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++17")
+
+ set(MESSAGES
+ remotecontrolmessages.proto
+--- a/ext/libclementine-tagreader/CMakeLists.txt
++++ b/ext/libclementine-tagreader/CMakeLists.txt
+@@ -3,7 +3,7 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+ include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-common)
+
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++0x")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++17")
+
+ set(MESSAGES
+ tagreadermessages.proto
+--- a/gst/moodbar/CMakeLists.txt
++++ b/gst/moodbar/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ cmake_minimum_required(VERSION 3.0.0)
+
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall --std=c++0x")
++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual -Wall --std=c++17")
+
+ include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
+
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2023-12-23 20:05 Joonas Niilola
0 siblings, 0 replies; 16+ messages in thread
From: Joonas Niilola @ 2023-12-23 20:05 UTC (permalink / raw
To: gentoo-commits
commit: 83d2aec8200c8232978d20d43701c4442376a316
Author: Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Fri Nov 10 22:41:37 2023 +0000
Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sat Dec 23 20:05:55 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83d2aec8
media-sound/clementine: read projectm visualizations from subdirs
Closes: https://bugs.gentoo.org/917064
Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Closes: https://github.com/gentoo/gentoo/pull/33760
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
.../clementine/clementine-1.4.0_rc2-r5.ebuild | 169 +++++++++++++++++++++
.../files/clementine-1.4.0_rc2-projectm-dir.patch | 53 +++++++
2 files changed, 222 insertions(+)
diff --git a/media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild b/media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild
new file mode 100644
index 000000000000..6e37ca03e086
--- /dev/null
+++ b/media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild
@@ -0,0 +1,169 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
+HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
+
+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"
+
+inherit cmake flag-o-matic plocale virtualx xdg
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/clementine-player/Clementine/archive/refs/tags/${PV/_}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/Clementine-${PV/_}"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="alsa box cdda +dbus debug dropbox googledrive ipod lastfm moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ udisks? ( dbus )
+ wiimote? ( dbus )
+"
+
+COMMON_DEPEND="
+ dev-cpp/abseil-cpp:=
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/protobuf:=
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5[ssl]
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ media-libs/chromaprint:=
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
+ >=media-libs/taglib-1.11.1_p20181028
+ sys-libs/zlib
+ x11-libs/libX11
+ alsa? ( media-libs/alsa-lib )
+ cdda? ( dev-libs/libcdio:= )
+ dbus? ( dev-qt/qtdbus:5 )
+ ipod? ( >=media-libs/libgpod-0.8.0 )
+ lastfm? ( >=media-libs/liblastfm-1.1.0_pre20150206 )
+ moodbar? ( sci-libs/fftw:3.0= )
+ mtp? ( >=media-libs/libmtp-1.0.0:= )
+ projectm? (
+ media-libs/glew:=
+ >=media-libs/libprojectm-3.1.12:0=
+ virtual/opengl
+ )
+ pulseaudio? ( media-libs/libpulse )
+"
+RDEPEND="${COMMON_DEPEND}
+ media-plugins/gst-plugins-meta:1.0
+ media-plugins/gst-plugins-soup:1.0
+ media-plugins/gst-plugins-taglib:1.0
+ mtp? ( gnome-base/gvfs[mtp] )
+ udisks? ( sys-fs/udisks:2 )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/boost
+ dev-libs/libxml2
+ dev-qt/qtopengl:5
+ dev-qt/qtxml:5
+ virtual/glu
+ box? ( dev-cpp/sparsehash )
+ dropbox? ( dev-cpp/sparsehash )
+ googledrive? ( dev-cpp/sparsehash )
+ seafile? ( dev-cpp/sparsehash )
+ skydrive? ( dev-cpp/sparsehash )
+"
+BDEPEND="
+ >=dev-cpp/gtest-1.8.0
+ dev-qt/linguist-tools:5
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ dev-qt/qttest:5
+ gnome-base/gsettings-desktop-schemas
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/clementine-1.4.0_rc2-lz.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-c17.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-absl.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-projectm-dir.patch"
+)
+
+DOCS=( Changelog README.md )
+
+src_prepare() {
+ plocale_find_changes "src/translations" "" ".po"
+
+ cmake_src_prepare
+ # some tests fail or hang
+ sed -i \
+ -e '/add_test_file(translations_test.cpp/d' \
+ tests/CMakeLists.txt || die
+
+ if ! use test; then
+ sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
+ cmake_comment_add_subdirectory tests
+ fi
+
+ rm -r 3rdparty/{libmygpo-qt,libmygpo-qt5,taglib} || die
+}
+
+src_configure() {
+ # spotify is not in portage
+ local mycmakeargs=(
+ -DBUILD_WERROR=OFF
+ # avoid automagically enabling of ccache (bug #611010)
+ -DCCACHE_EXECUTABLE=OFF
+ -DENABLE_BREAKPAD=OFF #< disable crash reporting
+ -DENABLE_GIO=ON
+ -DENABLE_SPOTIFY=OFF
+ -DENABLE_SPOTIFY_BLOB=OFF
+ -DUSE_SYSTEM_GMOCK=ON
+ -DUSE_SYSTEM_PROJECTM=ON
+ -DBUNDLE_PROJECTM_PRESETS=OFF
+ -DLINGUAS="$(plocale_get_locales)"
+ -DENABLE_BOX="$(usex box)"
+ -DENABLE_AUDIOCD="$(usex cdda)"
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DBus=$(usex !dbus)
+ -DENABLE_DROPBOX="$(usex dropbox)"
+ -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
+ -DENABLE_LIBGPOD="$(usex ipod)"
+ -DENABLE_LIBLASTFM="$(usex lastfm)"
+ -DENABLE_MOODBAR="$(usex moodbar)"
+ -DENABLE_LIBMTP="$(usex mtp)"
+ -DENABLE_VISUALISATIONS="$(usex projectm)"
+ -DENABLE_SEAFILE="$(usex seafile)"
+ -DENABLE_SKYDRIVE="$(usex skydrive)"
+ -DENABLE_LIBPULSE="$(usex pulseaudio)"
+ -DENABLE_UDISKS2="$(usex udisks)"
+ -DENABLE_WIIMOTEDEV="$(usex wiimote)"
+ "$(cmake_use_find_package alsa ALSA)"
+ )
+
+ use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
+
+ cmake_src_configure
+}
+
+src_test() {
+ cd "${CMAKE_BUILD_DIR}" || die
+ virtx cmake_build clementine_test
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
+ elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
+ elog "depending on your preferences"
+}
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc2-projectm-dir.patch b/media-sound/clementine/files/clementine-1.4.0_rc2-projectm-dir.patch
new file mode 100644
index 000000000000..8f92766193d6
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.4.0_rc2-projectm-dir.patch
@@ -0,0 +1,53 @@
+Read visualisations from subdirs
+
+https://bugs.gentoo.org/917064
+https://github.com/clementine-player/Clementine/issues/7151
+
+--- a/src/visualisations/projectmpresetmodel.cpp
++++ b/src/visualisations/projectmpresetmodel.cpp
+@@ -27,22 +27,26 @@
+ #endif
+
+ #include <QDir>
++#include <QDirIterator>
+ #include <QtDebug>
++#include <set>
+
+ ProjectMPresetModel::ProjectMPresetModel(ProjectMVisualisation* vis,
+ QObject* parent)
+ : QAbstractItemModel(parent), vis_(vis) {
+ // Find presets
+- QDir preset_dir(vis_->preset_url());
+- QStringList presets(
+- preset_dir.entryList(QStringList() << "*.milk"
+- << "*.prjm",
++ QDirIterator it(vis_->preset_url(),
++ QStringList() << "*.milk" << "*.prjm",
+ QDir::Files | QDir::NoDotAndDotDot | QDir::Readable,
+- QDir::Name | QDir::IgnoreCase));
++ QDirIterator::Subdirectories);
++ std::set<std::pair<QString, QString>> files;
++ while (it.hasNext()) {
++ it.next();
++ files.insert({it.filePath(), it.fileName()});
++ }
+
+- for (const QString& filename : presets) {
+- all_presets_ << Preset(preset_dir.absoluteFilePath(filename), filename,
+- false);
++ for (const auto& [filePath, fileName] : files) {
++ all_presets_ << Preset(filePath, fileName, false);
+ }
+ }
+
+--- a/src/visualisations/projectmvisualisation.cpp
++++ b/src/visualisations/projectmvisualisation.cpp
+@@ -93,7 +93,7 @@ void ProjectMVisualisation::InitProjectM() {
+ if (!QFile::exists(path)) continue;
+
+ // Don't use empty directories
+- if (QDir(path).entryList(QDir::Files | QDir::NoDotAndDotDot).isEmpty())
++ if (QDir(path).entryList(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot).isEmpty())
+ continue;
+
+ preset_path = path;
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/
@ 2024-01-05 10:36 Sam James
0 siblings, 0 replies; 16+ messages in thread
From: Sam James @ 2024-01-05 10:36 UTC (permalink / raw
To: gentoo-commits
commit: 940208ab8e575fbde5337f019fd45d69e337eaba
Author: Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Thu Jan 4 01:16:52 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 5 10:36:20 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=940208ab
media-sound/clementine: Fix build with older abseil
Bug: https://bugs.gentoo.org/919422
Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Closes: https://github.com/gentoo/gentoo/pull/34631
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild | 3 ++-
media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild b/media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild
index 6e37ca03e086..c6a6697e2ccc 100644
--- a/media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild
+++ b/media-sound/clementine/clementine-1.4.0_rc2-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -148,6 +148,7 @@ src_configure() {
-DENABLE_UDISKS2="$(usex udisks)"
-DENABLE_WIIMOTEDEV="$(usex wiimote)"
"$(cmake_use_find_package alsa ALSA)"
+ -DGENTOO_FIX_ABSL_LIBS="$(test-flags-CCLD -labsl_log_internal_check_op -labsl_log_internal_message)"
)
use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch b/media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch
index 48eb9dda4227..60c2adff3689 100644
--- a/media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch
+++ b/media-sound/clementine/files/clementine-1.4.0_rc2-absl.patch
@@ -10,6 +10,6 @@ https://bugs.gentoo.org/912853
target_link_libraries(libclementine-tagreader
- ${PROTOBUF_LIBRARY}
libclementine-common
-+ ${PROTOBUF_LIBRARY} absl_log_internal_check_op absl_log_internal_message
++ ${PROTOBUF_LIBRARY} ${GENTOO_FIX_ABSL_LIBS}
)
^ permalink raw reply related [flat|nested] 16+ messages in thread
end of thread, other threads:[~2024-01-05 10:36 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-17 4:41 [gentoo-commits] repo/gentoo:master commit in: media-sound/clementine/files/, media-sound/clementine/ Jason Donenfeld
-- strict thread matches above, loose matches on Subject: below --
2024-01-05 10:36 Sam James
2023-12-23 20:05 Joonas Niilola
2023-10-17 5:24 Yixun Lan
2022-10-16 4:53 Miroslav Šulc
2021-07-02 10:42 Lars Wendler
2019-07-13 8:51 Andreas Sturmlechner
2019-02-17 16:05 Lars Wendler
2018-11-17 23:10 Andreas Sturmlechner
2018-03-17 0:27 Andreas Sturmlechner
2017-12-19 9:32 Andreas Sturmlechner
2017-11-19 15:09 Andreas Sturmlechner
2016-12-26 23:39 Lars Wendler
2016-04-17 17:52 Lars Wendler
2016-01-13 17:21 Lars Wendler
2015-08-25 8:13 Lars Wendler
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox