summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/clementine')
-rw-r--r--media-sound/clementine/Manifest1
-rw-r--r--media-sound/clementine/clementine-1.3.1_p20181112.ebuild182
-rw-r--r--media-sound/clementine/files/clementine-1.3.1_p20181112-no-dbus.patch41
3 files changed, 224 insertions, 0 deletions
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 369a56dd408e..10cd87cf3d46 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 000000000000..0840a685935d
--- /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 000000000000..d03db2451ad3
--- /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
+