commit:     ef10a3d13a487524479ae42575745c467f6c8c68
Author:     Tiziano Müller <dev-zero <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 07:41:21 2016 +0000
Commit:     Tiziano Müller <dev-zero <AT> gentoo <DOT> org>
CommitDate: Sat Apr 16 07:41:21 2016 +0000
URL:        https://gitweb.gentoo.org/dev/dev-zero.git/commit/?id=ef10a3d1

media-sound/clementine: rev-bump with working libspotify integration

 media-sound/clementine/Manifest                    |   3 +
 .../clementine/clementine-1.3_rc1-r2.ebuild        | 168 +++++++++++++++++++++
 .../files/clementine-1.3_rc1-cmake-2.patch         |  54 +++++++
 .../files/clementine-1.3_rc1-fix-tokenizer.patch   |  21 +++
 media-sound/clementine/metadata.xml                |  31 ++++
 5 files changed, 277 insertions(+)

diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
new file mode 100644
index 0000000..9a18ea5
--- /dev/null
+++ b/media-sound/clementine/Manifest
@@ -0,0 +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-r2.ebuild 
b/media-sound/clementine/clementine-1.3_rc1-r2.ebuild
new file mode 100644
index 0000000..2138d90
--- /dev/null
+++ b/media-sound/clementine/clementine-1.3_rc1-r2.ebuild
@@ -0,0 +1,168 @@
+# 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 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 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 spotify 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:=[qt4]
+       >=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:= )
+       spotify? ( >=media-libs/libspotify-12.1.45 )
+"
+# 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-2.patch
+       "${FILESDIR}"/${PN}-1.3_rc1-fix-tokenizer.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
+
+       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)
+               $(cmake-utils_use spotify ENABLE_SPOTIFY_BLOB)
+               -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-2.patch 
b/media-sound/clementine/files/clementine-1.3_rc1-cmake-2.patch
new file mode 100644
index 0000000..5694602
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3_rc1-cmake-2.patch
@@ -0,0 +1,54 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 831c323..c137bce 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -56,11 +56,9 @@ find_package(PkgConfig REQUIRED)
+ find_package(Protobuf REQUIRED)
+ find_package(FFTW3)
+ 
+-find_library(PROTOBUF_STATIC_LIBRARY libprotobuf.a libprotobuf)
+ 
+ pkg_check_modules(CDIO libcdio)
+ pkg_check_modules(CHROMAPRINT REQUIRED libchromaprint)
+-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 +69,7 @@ pkg_check_modules(GSTREAMER_BASE REQUIRED gstreamer-base-1.0)
+ 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 +273,8 @@ optional_component(LIBPULSE ON "Pulse audio integration"
+ 
+ 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)
+-  set(HAVE_CRYPTOPP ON)
+-  set(HAVE_SPOTIFY_DOWNLOADER ON)
+-endif()
++set(HAVE_CRYPTOPP OFF)
++set(HAVE_SPOTIFY_DOWNLOADER OFF)
+ 
+ # Find DBus if it's enabled
+ if (HAVE_DBUS)
+diff --git a/ext/clementine-spotifyblob/CMakeLists.txt 
b/ext/clementine-spotifyblob/CMakeLists.txt
+index 02c25e8..3898c5f 100644
+--- a/ext/clementine-spotifyblob/CMakeLists.txt
++++ b/ext/clementine-spotifyblob/CMakeLists.txt
+@@ -46,7 +46,7 @@ target_link_libraries(clementine-spotifyblob
+   ${QT_QTNETWORK_LIBRARY}
+   ${GSTREAMER_BASE_LIBRARIES}
+   ${GSTREAMER_APP_LIBRARIES}
+-  ${PROTOBUF_STATIC_LIBRARY}
++  ${PROTOBUF_LIBRARIES}
+   clementine-spotifyblob-messages
+   libclementine-common
+ )

diff --git 
a/media-sound/clementine/files/clementine-1.3_rc1-fix-tokenizer.patch 
b/media-sound/clementine/files/clementine-1.3_rc1-fix-tokenizer.patch
new file mode 100644
index 0000000..6413bf7
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.3_rc1-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(

diff --git a/media-sound/clementine/metadata.xml 
b/media-sound/clementine/metadata.xml
new file mode 100644
index 0000000..eda2d27
--- /dev/null
+++ b/media-sound/clementine/metadata.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Nikoli</name>
+       </maintainer>
+       <maintainer type="project">
+               <email>[email protected]</email>
+               <name>Proxy Maintainers</name>
+       </maintainer>
+       <maintainer type="project">
+               <email>[email protected]</email>
+               <name>Gentoo Sound project</name>
+       </maintainer>
+       <use>
+               <flag name="box">Enable Box support</flag>
+               <flag name="dropbox">Enable Dropbox support</flag>
+               <flag name="googledrive">Enable Google Drive support</flag>
+               <flag name="lastfm">Use liblastfm for fetching song info, 
scrobbling and radio streams</flag>
+               <flag name="moodbar">Enable moodbar support</flag>
+               <flag name="projectm">Build with ProjectM visualization</flag>
+               <flag name="skydrive">Enable Skydrive support</flag>
+               <flag name="system-sqlite">Use the system-wide 
<pkg>dev-db/sqlite</pkg> installation</flag>
+               <flag name="ubuntu-one">Enable Ubuntu One support</flag>
+               <flag name="wiimote">Enable support for Wii remote</flag>
+       </use>
+       <upstream>
+               <remote-id 
type="github">clementine-player/Clementine</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to