Index: audio/amarok-kde4/Makefile =================================================================== --- audio/amarok-kde4/Makefile +++ audio/amarok-kde4/Makefile @@ -3,7 +3,7 @@ PORTNAME= amarok PORTVERSION= 2.8.0 -PORTREVISION= 13 +PORTREVISION= 14 CATEGORIES= audio kde MASTER_SITES= KDE/stable/${PORTNAME}/${PORTVERSION}/src @@ -15,7 +15,7 @@ LIB_DEPENDS= libtag.so:audio/taglib \ libtag-extras.so:audio/taglib-extras \ - liblastfm.so:audio/liblastfm \ + liblastfm.so:audio/liblastfm@qt4 \ libqjson.so:devel/qjson \ libqca.so:devel/qca \ libdbus-1.so:devel/dbus Index: audio/clementine-player/Makefile =================================================================== --- audio/clementine-player/Makefile +++ audio/clementine-player/Makefile @@ -3,7 +3,7 @@ PORTNAME= clementine PORTVERSION= 1.3.1 -PORTREVISION= 17 +PORTREVISION= 18 CATEGORIES= audio PKGNAMESUFFIX= -player @@ -174,7 +174,7 @@ GPOD_CMAKE_ON= -DENABLE_LIBGPOD=ON GPOD_CMAKE_OFF= -DENABLE_LIBGPOD=OFF -LASTFM_LIB_DEPENDS= liblastfm.so:audio/liblastfm +LASTFM_LIB_DEPENDS= liblastfm.so:audio/liblastfm@qt4 LASTFM_CMAKE_ON= -DENABLE_LIBLASTFM=ON LASTFM_CMAKE_OFF= -DENABLE_LIBLASTFM=OFF Index: audio/lastfm-desktop/Makefile =================================================================== --- audio/lastfm-desktop/Makefile +++ audio/lastfm-desktop/Makefile @@ -3,7 +3,7 @@ PORTNAME= lastfm-desktop PORTVERSION= 2.1.36 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= audio MAINTAINER= ports@FreeBSD.org @@ -12,7 +12,7 @@ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING -LIB_DEPENDS= liblastfm.so:audio/liblastfm \ +LIB_DEPENDS= liblastfm.so:audio/liblastfm@qt4 \ libavcodec.so:multimedia/ffmpeg \ libgpod.so:audio/libgpod \ libimobiledevice.so:comms/libimobiledevice \ Index: audio/liblastfm/Makefile =================================================================== --- audio/liblastfm/Makefile +++ audio/liblastfm/Makefile @@ -2,9 +2,10 @@ # $FreeBSD$ PORTNAME= liblastfm -PORTVERSION= 1.0.9 -PORTREVISION= 1 +DISTVERSION= 1.0.9-5 +DISTVERSIONSUFFIX= -g4433165 CATEGORIES= audio +PKGNAMESUFFIX= -${FLAVOR} MAINTAINER= jhale@FreeBSD.org COMMENT= Qt C++ library for the Last.fm webservices @@ -12,15 +13,26 @@ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING -USE_GITHUB= yes -GH_ACCOUNT= lastfm +FLAVORS= qt4 qt5 +FLAVOR?= ${FLAVORS:[1]} USES= cmake pkgconfig USE_LDCONFIG= yes +USE_GITHUB= yes +GH_ACCOUNT= lastfm + +.if ${FLAVOR} == qt4 USE_QT4= corelib dbus network sql xml \ moc_build qmake_build rcc_build +CMAKE_ON+= BUILD_WITH_QT4 +.else +USE_QT5= core dbus network sql xml \ + buildtools_build qmake_build +CMAKE_OFF+= BUILD_WITH_QT4 +QTVER_SUFFIX= 5 +.endif -CMAKE_ARGS= -DBUILD_WITH_QT4:BOOL=ON +PLIST_SUB= QTVER_SUFFIX="${QTVER_SUFFIX}" OPTIONS_DEFINE= FINGERPRINT TEST OPTIONS_DEFAULT= FINGERPRINT @@ -32,9 +44,15 @@ FINGERPRINT_CMAKE_BOOL= BUILD_FINGERPRINT # We only need fftw3.h from math/fftw3; no need to install FINGERPRINT_BUILD_DEPENDS= ${NONEXISTENT}:math/fftw3:patch -FINGERPRINT_CMAKE_ON= -DLIBFFTW3_INCLUDE_DIR:PATH=`${MAKE} -C ${PORTSDIR}/math/fftw3 -VWRKSRC`/api +# ${SED} replacement is a workaround for a poudriere bug (at least existing in +# 3.2.99.20180309) causing the fftw3 WRKDIR to be flavored unnecessarily +FINGERPRINT_CMAKE_ON= -DLIBFFTW3_INCLUDE_DIR:PATH=`${MAKE} -C ${PORTSDIR}/math/fftw3 -VWRKSRC | ${SED} 's|${PKGNAMESUFFIX}||'`/api +.if ${FLAVOR} == qt4 TEST_USE= QT4=qtestlib_build +.else +TEST_USE= QT5=testlib_build +.endif TEST_CMAKE_BOOL= BUILD_TESTS TEST_TARGET= test Index: audio/liblastfm/distinfo =================================================================== --- audio/liblastfm/distinfo +++ audio/liblastfm/distinfo @@ -1,2 +1,3 @@ -SHA256 (lastfm-liblastfm-1.0.9_GH0.tar.gz) = 5276b5fe00932479ce6fe370ba3213f3ab842d70a7d55e4bead6e26738425f7b -SIZE (lastfm-liblastfm-1.0.9_GH0.tar.gz) = 119320 +TIMESTAMP = 1520816838 +SHA256 (lastfm-liblastfm-1.0.9-5-g4433165_GH0.tar.gz) = 8cf1835af3f38f0c7c576e8a01c2d19ee32c7006a44d2d183fb64ed228bc5ca6 +SIZE (lastfm-liblastfm-1.0.9-5-g4433165_GH0.tar.gz) = 119427 Index: audio/liblastfm/files/patch-src_UrlBuilder.cpp =================================================================== --- /dev/null +++ audio/liblastfm/files/patch-src_UrlBuilder.cpp @@ -0,0 +1,18 @@ +- Use https to avoid 301 redirect +- Override default TolerantMode to prevent overprocessing the input URL + +--- src/UrlBuilder.cpp.orig 2015-02-06 16:49:40 UTC ++++ src/UrlBuilder.cpp +@@ -60,10 +60,10 @@ QUrl + lastfm::UrlBuilder::url() const + { + QUrl url; +- url.setScheme( "http" ); ++ url.setScheme( "https" ); + url.setHost( host() ); + #if QT_VERSION >= QT_VERSION_CHECK( 5, 0, 0 ) +- url.setPath( d->path ); ++ url.setPath( d->path , QUrl::StrictMode ); + #else + url.setEncodedPath( d->path ); + #endif Index: audio/liblastfm/files/patch-src_mbid__mp3.c =================================================================== --- audio/liblastfm/files/patch-src_mbid__mp3.c +++ audio/liblastfm/files/patch-src_mbid__mp3.c @@ -2,9 +2,9 @@ warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses] if (!strncmp(head,"ID3",3) == 0) { ---- src/mbid_mp3.c.orig 2014-10-02 14:05:46 UTC +--- src/mbid_mp3.c.orig 2015-02-06 16:49:40 UTC +++ src/mbid_mp3.c -@@ -94,7 +94,7 @@ int getMP3_MBID(const char *path, char m +@@ -94,7 +94,7 @@ int getMP3_MBID(const char *path, char mbid[MBID_BUFFE while (s) { mfile(3,head,fp,&s); Index: audio/liblastfm/files/patch-tests_TestUrlBuilder.h =================================================================== --- /dev/null +++ audio/liblastfm/files/patch-tests_TestUrlBuilder.h @@ -0,0 +1,13 @@ +http://www.last.fm 301 redirects to https://www.last.fm causing test to fail + +--- tests/TestUrlBuilder.h.orig 2018-03-12 12:32:35 UTC ++++ tests/TestUrlBuilder.h +@@ -81,7 +81,7 @@ private slots: + + void test404() /** @author */ + { +- QCOMPARE( getResponseCode( QUrl("http://www.last.fm/404") ), 404 ); ++ QCOMPARE( getResponseCode( QUrl("https://www.last.fm/404") ), 404 ); + } + }; + Index: audio/liblastfm/pkg-plist =================================================================== --- audio/liblastfm/pkg-plist +++ audio/liblastfm/pkg-plist @@ -1,36 +1,36 @@ -include/lastfm/AbstractType.h -include/lastfm/Album.h -include/lastfm/Artist.h -include/lastfm/Audioscrobbler.h -include/lastfm/Auth.h -include/lastfm/Chart.h -%%FINGERPRINT%%include/lastfm/Fingerprint.h -include/lastfm/FingerprintId.h -%%FINGERPRINT%%include/lastfm/FingerprintableSource.h -include/lastfm/InternetConnectionMonitor.h -include/lastfm/Library.h -include/lastfm/Mbid.h -include/lastfm/NetworkAccessManager.h -include/lastfm/NetworkConnectionMonitor.h -include/lastfm/Playlist.h -include/lastfm/RadioStation.h -include/lastfm/RadioTuner.h -include/lastfm/ScrobbleCache.h -include/lastfm/ScrobblePoint.h -include/lastfm/Tag.h -include/lastfm/Tasteometer.h -include/lastfm/Track.h -include/lastfm/Url.h -include/lastfm/UrlBuilder.h -include/lastfm/User.h -include/lastfm/XmlQuery.h -include/lastfm/Xspf.h -include/lastfm/global.h -include/lastfm/misc.h -include/lastfm/ws.h -lib/liblastfm.so -lib/liblastfm.so.1 -lib/liblastfm.so.1.0.9 -%%FINGERPRINT%%lib/liblastfm_fingerprint.so -%%FINGERPRINT%%lib/liblastfm_fingerprint.so.1 -%%FINGERPRINT%%lib/liblastfm_fingerprint.so.1.0.9 +include/lastfm%%QTVER_SUFFIX%%/AbstractType.h +include/lastfm%%QTVER_SUFFIX%%/Album.h +include/lastfm%%QTVER_SUFFIX%%/Artist.h +include/lastfm%%QTVER_SUFFIX%%/Audioscrobbler.h +include/lastfm%%QTVER_SUFFIX%%/Auth.h +include/lastfm%%QTVER_SUFFIX%%/Chart.h +%%FINGERPRINT%%include/lastfm%%QTVER_SUFFIX%%/Fingerprint.h +include/lastfm%%QTVER_SUFFIX%%/FingerprintId.h +%%FINGERPRINT%%include/lastfm%%QTVER_SUFFIX%%/FingerprintableSource.h +include/lastfm%%QTVER_SUFFIX%%/InternetConnectionMonitor.h +include/lastfm%%QTVER_SUFFIX%%/Library.h +include/lastfm%%QTVER_SUFFIX%%/Mbid.h +include/lastfm%%QTVER_SUFFIX%%/NetworkAccessManager.h +include/lastfm%%QTVER_SUFFIX%%/NetworkConnectionMonitor.h +include/lastfm%%QTVER_SUFFIX%%/Playlist.h +include/lastfm%%QTVER_SUFFIX%%/RadioStation.h +include/lastfm%%QTVER_SUFFIX%%/RadioTuner.h +include/lastfm%%QTVER_SUFFIX%%/ScrobbleCache.h +include/lastfm%%QTVER_SUFFIX%%/ScrobblePoint.h +include/lastfm%%QTVER_SUFFIX%%/Tag.h +include/lastfm%%QTVER_SUFFIX%%/Tasteometer.h +include/lastfm%%QTVER_SUFFIX%%/Track.h +include/lastfm%%QTVER_SUFFIX%%/Url.h +include/lastfm%%QTVER_SUFFIX%%/UrlBuilder.h +include/lastfm%%QTVER_SUFFIX%%/User.h +include/lastfm%%QTVER_SUFFIX%%/XmlQuery.h +include/lastfm%%QTVER_SUFFIX%%/Xspf.h +include/lastfm%%QTVER_SUFFIX%%/global.h +include/lastfm%%QTVER_SUFFIX%%/misc.h +include/lastfm%%QTVER_SUFFIX%%/ws.h +lib/liblastfm%%QTVER_SUFFIX%%.so +lib/liblastfm%%QTVER_SUFFIX%%.so.1 +lib/liblastfm%%QTVER_SUFFIX%%.so.1.1.0 +%%FINGERPRINT%%lib/liblastfm_fingerprint%%QTVER_SUFFIX%%.so +%%FINGERPRINT%%lib/liblastfm_fingerprint%%QTVER_SUFFIX%%.so.1 +%%FINGERPRINT%%lib/liblastfm_fingerprint%%QTVER_SUFFIX%%.so.1.1.0 Index: x11/leechcraft/Makefile =================================================================== --- x11/leechcraft/Makefile +++ x11/leechcraft/Makefile @@ -3,7 +3,7 @@ PORTNAME= leechcraft PORTVERSION= 0.6.70 -PORTREVISION= 27 +PORTREVISION= 28 CATEGORIES= x11 MASTER_SITES= http://dist.leechcraft.org/LeechCraft/0.6.70/ @@ -185,7 +185,7 @@ LASTFMSCROBBLE_DESC= Last.FM scrobbler plugin LASTFMSCROBBLE_CMAKE_ON= -DENABLE_LASTFMSCROBBLE:BOOL=true LASTFMSCROBBLE_CMAKE_OFF= -DENABLE_LASTFMSCROBBLE:BOOL=false -LASTFMSCROBBLE_LIB_DEPENDS= liblastfm.so:audio/liblastfm +LASTFMSCROBBLE_LIB_DEPENDS= liblastfm.so:audio/liblastfm@qt4 LAUGHTY_DESC= The LeechCraft notification daemon LAUGHTY_CMAKE_ON= -DENABLE_LAUGHTY:BOOL=true