From f2df8e7137d1c81e07e5a01cb110b62516602d42 Mon Sep 17 00:00:00 2001 From: Andreas Grapentin Date: Thu, 11 Apr 2019 17:04:20 +0200 Subject: libre/clementine: rebuilt --- libre/clementine/PKGBUILD | 135 +++++++++++++-------- .../add-missing-functional-includes-5630.patch | 51 -------- .../clementine-1.3.1-chromaprint-1.4.0.patch | 41 ------- libre/clementine/clementine-chromaprint1.4.0.patch | 41 +++++++ libre/clementine/clementine-cryptopp6.patch | 25 ++++ 5 files changed, 152 insertions(+), 141 deletions(-) delete mode 100644 libre/clementine/add-missing-functional-includes-5630.patch delete mode 100644 libre/clementine/clementine-1.3.1-chromaprint-1.4.0.patch create mode 100644 libre/clementine/clementine-chromaprint1.4.0.patch create mode 100644 libre/clementine/clementine-cryptopp6.patch diff --git a/libre/clementine/PKGBUILD b/libre/clementine/PKGBUILD index aa8cbe52e..4e17a1407 100644 --- a/libre/clementine/PKGBUILD +++ b/libre/clementine/PKGBUILD @@ -1,4 +1,3 @@ -# $Id: PKGBUILD 209417 2017-01-29 21:40:56Z alucryd $ # Maintainer (Arch): Maxime Gauduin # Contributor (Arch): Stéphane Gaudreault # Contributor (Arch): BlackEagle @@ -8,53 +7,93 @@ # Maintainer: Omar Vega Ramos # Contributor: Kete +# rationale for inclusion in libre: +# - replaced nonfree nyancat artwork with moognu +# - removed spotify support +# +# additional changes: +# - build from release tarball instead of VCS + pkgname=clementine _pkgname=$pkgname-libre pkgver=1.3.1 -pkgrel=18.parabola4 -pkgdesc='A modern music player and library organizer, without nonfree artwork and Spotify support' -url='http://www.clementine-player.org/' -license=('GPL') -arch=('i686' 'x86_64' 'armv7h') -replaces=("$_pkgname") -conflicts=("$_pkgname") -depends=('chromaprint' 'crypto++' 'fftw' 'gcc-libs' 'glew' 'glib2' 'glibc' - 'gst-plugins-base-libs' 'gstreamer' 'libcdio' 'libechonest' 'libgl' - 'libgpod' 'liblastfm' 'libmtp' 'libpulse' 'libx11' 'protobuf<3.8' 'qjson' - 'qt4' 'sqlite' 'taglib' 'zlib') -makedepends=('boost' 'cmake' 'mesa' 'sparsehash') -optdepends=('gst-plugins-base: "Base" plugin libraries' - 'gst-plugins-good: "Good" plugin libraries' - 'gst-plugins-bad: "Bad" plugin libraries' - 'gst-plugins-ugly: "Ugly" plugin libraries' - 'gst-libav: Libav plugin' - 'gvfs: Various devices support') -mksource=("clementine-${pkgver}.tar.gz::https://github.com/clementine-player/Clementine/archive/${pkgver}.tar.gz") -source=("https://repo.parabola.nu/other/${_pkgname}/${_pkgname}-${pkgver}.tar.gz" - 'clementine-gcc6.patch' - 'add-missing-functional-includes-5630.patch' - 'clementine-1.3.1-chromaprint-1.4.0.patch' - 'https://github.com/clementine-player/Clementine/commit/75f9439843a0e9cdc26cd739d5e1dbd93bd974bc.patch' - 'remove-nonfree-artwork-and-spotify.patch' - 'moognu.png') -mksha256sums=('f885931a9ab7c88607d07b50c64fcce46fc05f13dd2c0a04188c94eff938f37c') -sha256sums=('9b84b3b867963da265308b150746aec0faaf5bcd79f78e3363a741edda7286ec' +pkgrel=21 +pkgrel+=.parabola1 +pkgdesc='A modern music player and library organizer' +pkgdesc+=', without nonfree artwork and Spotify support' +url=https://www.clementine-player.org/ +license=(GPL) +arch=(x86_64) +arch+=(i686 armv7h) +depends=( + chromaprint + crypto++ + fftw + glew + glib2 + gst-plugins-base-libs + gstreamer + libcdio + libechonest + libgl + libgpod + liblastfm + libmtp + libpulse + libx11 + protobuf + qjson + qt4 + sqlite + taglib + zlib +) +makedepends=( + boost + cmake + mesa + sparsehash +) +optdepends=( + 'gst-plugins-base: "Base" plugin libraries' + 'gst-plugins-good: "Good" plugin libraries' + 'gst-plugins-bad: "Bad" plugin libraries' + 'gst-plugins-ugly: "Ugly" plugin libraries' + 'gst-libav: Libav plugin' + 'gvfs: Various devices support' +) +source=( + clementine-${pkgver}.tar.gz::https://github.com/clementine-player/Clementine/archive/${pkgver}.tar.gz + clementine-gcc6.patch + clementine-chromaprint1.4.0.patch + clementine-cryptopp6.patch + https://github.com/clementine-player/Clementine/commit/8a6cc8b5069265e1e92e22def985e22c5955e503.patch + https://github.com/clementine-player/Clementine/commit/75f9439843a0e9cdc26cd739d5e1dbd93bd974bc.patch + https://github.com/clementine-player/Clementine/commit/ddfa5e63f1ef0e243a007efbe576fceb9b2442e8.patch + remove-nonfree-artwork-and-spotify.patch + moognu.png +) +sha256sums=('f885931a9ab7c88607d07b50c64fcce46fc05f13dd2c0a04188c94eff938f37c' '05bd4dc0138eed084332fa1a688a96858418731f337f54e0d8ab0853123f40ee' - '213a1c2eb3f3c1d2904ed855ad851c10705d04cfa20b36b843b60003469fdc1a' '4cc9c9df599df4a595c6acf4e129a54296c0a8e537627435e3df14e1e95447b0' + 'e9c09dca76ed8fae2ecb089571396c9293f546871fb2f27cc37010dd5cba9e46' + '77e32aae6f035523d5cfb8adb45cb0857ebed751b7fcd1f250a2972c79f6282e' 'd4dbd7f09da7a554f86237476b96e3ca097117b7ab2acd706088c72203d8b64f' + '9c02acd0a2b70ce8d0b6574161df692fc08c9e9c3061a4a7b78be7805b279dc7' '8978c44d38e95edd8d7fec00d64debfa78e9906653cfd47caa2b2fb5aaf45d9d' 'c6918617769152f3617c61f721819e69d03f671b85760b11cfe45abd53955bc4') -mksource() { + +prepare() { + if [[ -d build ]]; then + rm -rf build + fi + mkdir build + cd Clementine-${pkgver} # remove nonfree artwork for the Nyan Cat plugin # https://labs.parabola.nu/issues/329 rm -v data/nyancat.png -} - -prepare() { - cd Clementine-${pkgver} # remove nonfree artwork and Spotify references patch -Np1 -i ../remove-nonfree-artwork-and-spotify.patch @@ -82,32 +121,30 @@ prepare() { # Fix build with GCC 6 patch -p1 -i ../clementine-gcc6.patch # https://github.com/clementine-player/Clementine/pull/5630 - patch -p1 -i ../add-missing-functional-includes-5630.patch + patch -Np1 -i ../8a6cc8b5069265e1e92e22def985e22c5955e503.patch # Fix build with chromaprint 1.4.0 - patch -p1 -i ../clementine-1.3.1-chromaprint-1.4.0.patch + patch -p1 -i ../clementine-chromaprint1.4.0.patch + # Fix build with crypto++ 6.0.0 due to https://github.com/weidai11/cryptopp/issues/442 + # (this is not necessary on parabola, since we remove the patched files) + # patch -p1 -i ../clementine-cryptopp6.patch # FS#58413 patch -Np1 -i ../75f9439843a0e9cdc26cd739d5e1dbd93bd974bc.patch - - if [[ -d build ]]; then - rm -rf build - fi - mkdir build + # Fix DI.FM + patch -Np1 -i ../ddfa5e63f1ef0e243a007efbe576fceb9b2442e8.patch } build() { - cd Clementine-${pkgver}/build + cd build - cmake .. \ - -DCMAKE_BUILD_TYPE='Release' \ - -DCMAKE_INSTALL_PREFIX='/usr'\ + cmake ../Clementine-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr\ -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-catch-value" make } package() { - cd Clementine-${pkgver}/build - - make DESTDIR="${pkgdir}" install + make DESTDIR="${pkgdir}" -C build install } # vim: ts=2 sw=2 et: diff --git a/libre/clementine/add-missing-functional-includes-5630.patch b/libre/clementine/add-missing-functional-includes-5630.patch deleted file mode 100644 index 0355eefca..000000000 --- a/libre/clementine/add-missing-functional-includes-5630.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 8a6cc8b5069265e1e92e22def985e22c5955e503 Mon Sep 17 00:00:00 2001 -From: Morris Hafner -Date: Mon, 13 Feb 2017 17:46:46 +0100 -Subject: [PATCH] Add missing includes (#5630) - ---- - src/core/mergedproxymodel.cpp | 1 + - src/devices/giolister.cpp | 1 + - src/library/groupbydialog.cpp | 2 ++ - 3 files changed, 4 insertions(+) - -diff --git a/src/core/mergedproxymodel.cpp b/src/core/mergedproxymodel.cpp -index 56217f6fd..8c210d391 100644 ---- a/src/core/mergedproxymodel.cpp -+++ b/src/core/mergedproxymodel.cpp -@@ -23,6 +23,7 @@ - - #include - -+#include - #include - - // boost::multi_index still relies on these being in the global namespace. -diff --git a/src/devices/giolister.cpp b/src/devices/giolister.cpp -index aa3bddb34..5f63ef248 100644 ---- a/src/devices/giolister.cpp -+++ b/src/devices/giolister.cpp -@@ -17,6 +17,7 @@ - - #include "config.h" - -+#include - #include - - #include -diff --git a/src/library/groupbydialog.cpp b/src/library/groupbydialog.cpp -index 5efdc9f36..e5f711b34 100644 ---- a/src/library/groupbydialog.cpp -+++ b/src/library/groupbydialog.cpp -@@ -20,6 +20,8 @@ - - #include - -+#include -+ - // boost::multi_index still relies on these being in the global namespace. - using std::placeholders::_1; - using std::placeholders::_2; --- -2.13.4 - diff --git a/libre/clementine/clementine-1.3.1-chromaprint-1.4.0.patch b/libre/clementine/clementine-1.3.1-chromaprint-1.4.0.patch deleted file mode 100644 index 099704026..000000000 --- a/libre/clementine/clementine-1.3.1-chromaprint-1.4.0.patch +++ /dev/null @@ -1,41 +0,0 @@ -From ded312685735fc266d4154d355286eeb86db3bcd Mon Sep 17 00:00:00 2001 -From: Chocobozzz -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 9579b62ae..c7ad99e2e 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(data.data()), -+ chromaprint_feed(chromaprint, reinterpret_cast(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/libre/clementine/clementine-chromaprint1.4.0.patch b/libre/clementine/clementine-chromaprint1.4.0.patch new file mode 100644 index 000000000..099704026 --- /dev/null +++ b/libre/clementine/clementine-chromaprint1.4.0.patch @@ -0,0 +1,41 @@ +From ded312685735fc266d4154d355286eeb86db3bcd Mon Sep 17 00:00:00 2001 +From: Chocobozzz +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 9579b62ae..c7ad99e2e 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(data.data()), ++ chromaprint_feed(chromaprint, reinterpret_cast(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/libre/clementine/clementine-cryptopp6.patch b/libre/clementine/clementine-cryptopp6.patch new file mode 100644 index 000000000..8197c38fe --- /dev/null +++ b/libre/clementine/clementine-cryptopp6.patch @@ -0,0 +1,25 @@ +diff --git a/src/internet/spotify/spotifyblobdownloader.cpp b/src/internet/spotify/spotifyblobdownloader.cpp +index e34577f5d..045aeeb8a 100644 +--- a/src/internet/spotify/spotifyblobdownloader.cpp ++++ b/src/internet/spotify/spotifyblobdownloader.cpp +@@ -189,7 +189,7 @@ bool SpotifyBlobDownloader::CheckSignature( + + try { + CryptoPP::ByteQueue bytes; +- bytes.Put(reinterpret_cast(public_key_data.constData()), ++ bytes.Put(reinterpret_cast(public_key_data.constData()), + public_key_data.size()); + bytes.MessageEnd(); + +@@ -204,9 +204,9 @@ bool SpotifyBlobDownloader::CheckSignature( + actual_filename.remove(kSignatureSuffix); + + const bool result = verifier.VerifyMessage( +- reinterpret_cast(file_data[actual_filename].constData()), ++ reinterpret_cast(file_data[actual_filename].constData()), + file_data[actual_filename].size(), +- reinterpret_cast( ++ reinterpret_cast( + file_data[signature_filename].constData()), + file_data[signature_filename].size()); + qLog(Debug) << "Verifying" << actual_filename << "against" -- cgit v1.2.2