diff --git a/audio/flacon/Makefile b/audio/flacon/Makefile index 1787ba5a19f9..8afec18f63d1 100644 --- a/audio/flacon/Makefile +++ b/audio/flacon/Makefile @@ -1,35 +1,48 @@ PORTNAME= flacon -PORTVERSION= 11.3.0 -PORTREVISION= 1 +PORTVERSION= 12.0.0 DISTVERSIONPREFIX= v CATEGORIES= audio MAINTAINER= danfe@FreeBSD.org COMMENT= Graphical audio file extractor and encoder WWW= https://flacon.github.io/ LICENSE= LGPL21+ # XXX: yaml-cpp is needed for tests/flacon_test program only BUILD_DEPENDS= ${LOCALBASE}/include/yaml-cpp/yaml.h:devel/yaml-cpp LIB_DEPENDS= libtag.so:audio/taglib \ libuchardet.so:textproc/uchardet TEST_DEPENDS= alacenc:audio/alacenc \ faac:audio/faac flac:audio/flac \ lame:audio/lame mac:audio/mac \ mediainfo:multimedia/mediainfo \ oggenc:audio/vorbis-tools \ opusenc:audio/opus-tools sox:audio/sox \ ttaenc:audio/tta wavpack:audio/wavpack -USES= cmake compiler:c++11-lang desktop-file-utils pkgconfig qt:5 +USES= cmake compiler:c++17-lang desktop-file-utils iconv \ + pkgconfig qt:5 USE_GITHUB= yes USE_QT= buildtools:build concurrent:build qmake:build testlib:build \ linguisttools:build core gui network widgets CMAKE_ARGS= -DBUILD_TESTS:BOOL=YES +post-patch: +# Catch up with newish MediaInfo(Lib) tag names so the tests can pass: +# Part -> Part_Position in tests 18.{1,5,6} +.for n f in 1 FLAC 5 OGG 6 OPUS + @${REINPLACE_CMD} -E 's,^Part {9},Part_Position,' \ + ${WRKSRC}/tests/data/testConvert/18.$n\ tags\ $f/spec.ini +.endfor +# Cover_Type "Cover (front)" changed to "Cover" (25.04 -> 25.05) + @${REINPLACE_CMD} -e '/^Cover_Type/s,Cover (front),Cover,' \ + ${WRKSRC}/tests/data/testConvert/18.1\ tags\ FLAC/spec.ini + do-test: - @cd ${TEST_WRKSRC} && ctest -C ${CMAKE_BUILD_TYPE} ${_MAKE_JOBS} - @${CAT} ${TEST_WRKSRC}/Testing/Temporary/LastTest.log + @ctest --test-dir ${TEST_WRKSRC} -C ${CMAKE_BUILD_TYPE} \ + ${_MAKE_JOBS} || { rc=$$?; ${CAT} \ + ${TEST_WRKSRC}/Testing/Temporary/LastTest.log; \ + return $$rc; } .include diff --git a/audio/flacon/distinfo b/audio/flacon/distinfo index 11ded7aeaaf3..3e97c464ec72 100644 --- a/audio/flacon/distinfo +++ b/audio/flacon/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1696434228 -SHA256 (flacon-flacon-v11.3.0_GH0.tar.gz) = af8e90362ef2b2f1f1a0978b7d7ff7977e5875993579d2df793813e04d4cb31d -SIZE (flacon-flacon-v11.3.0_GH0.tar.gz) = 4081613 +TIMESTAMP = 1739543762 +SHA256 (flacon-flacon-v12.0.0_GH0.tar.gz) = 78199ff925b7cd0ffeb628d47909ca4172f8ff0d8fd8192bb537e0c012e6f4c6 +SIZE (flacon-flacon-v12.0.0_GH0.tar.gz) = 5843268 diff --git a/audio/flacon/files/patch-tests_tools.cpp b/audio/flacon/files/patch-tests_tools.cpp new file mode 100644 index 000000000000..b9ec835444df --- /dev/null +++ b/audio/flacon/files/patch-tests_tools.cpp @@ -0,0 +1,11 @@ +--- tests/tools.cpp.orig 2025-02-14 14:36:02 UTC ++++ tests/tools.cpp +@@ -693,7 +693,7 @@ QString Mediainfo::tagToJsonPath(const QString &tag) c + { + if (mFileExt == "wv") { + // clang-format off +- if (tag == "AlbumPerformer") return "extra/ALBUM_ARTIST"; ++ if (tag == "extra/ALBUM_ARTIST") return "Album_Performer"; + // clang-format on + } +