freebsd-ports/multimedia/qmmp-qt6/Makefile
Dima Panov 92fcc3e57e
multimedia/qmmp-qt6: update to 2.2.3 release (+)
Changes since 2.2.2:
* added simple WildMidi config validation;
* updated AppStream metadata;
* fixed build without X11 support (2.2.3 only);
* fixed volume level notification;
* fixed dts/ac3 support in the ffmpeg plugin;
* fixed ignoring of the CUE data file with embedded CUE;
* updated Korean translation.
2025-02-03 01:47:02 +03:00

260 lines
7.1 KiB
Makefile

PORTNAME= qmmp
PORTVERSION= 2.2.3
CATEGORIES= multimedia
MASTER_SITES= http://qmmp.ylsoftware.com/files/${PORTNAME}/${DISTVERSION:R}/ \
SF/qmmp-dev/${PORTNAME}/${DISTVERSION:R}/
PKGNAMESUFFIX= -qt6
MAINTAINER= fluffy@FreeBSD.org
COMMENT= Qt6-based multimedia player
WWW= https://qmmp.ylsoftware.com/
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
USES= cmake desktop-file-utils gl gnome iconv:wchar_t pathfix \
pkgconfig qt:6 tar:bzip2 xorg
USE_GL= opengl
PATHFIX_CMAKELISTSTXT= src/qmmpui/CMakeLists.txt src/qmmp/CMakeLists.txt
USE_QT= base declarative:build tools:build
USE_XORG= x11 xcb
USE_LDCONFIG= yes
CONFLICTS= ${PORTNAME}-qt5
PORTSCOUT= limit:^1\..*
PLIST_SUB= SHLIB_VER=${DISTVERSION:C/-.*//} \
LIB_SUFFX=-${DISTVERSION:R} \
BIN_SUFFX=-${DISTVERSION:R:R}
PORTDOCS= README README.RUS AUTHORS
CMAKE_OFF= USE_CDA \
USE_MAD \
USE_MMS \
USE_MPC \
USE_MPLAYER
CMAKE_ON= USE_ANALYZER \
USE_COPYPASTE \
USE_COVER \
USE_CROSSFADE \
USE_CUE \
USE_DIR_ASSOC \
USE_FILEOPS \
USE_GNOMEHOTKEY \
USE_HISTORY \
USE_KDENOTIFY \
USE_HOTKEY \
USE_MPRIS \
USE_NOTIFIER \
USE_NULL \
USE_SKINNED \
USE_STATICON \
USE_STEREO \
USE_TRACKCHANGE
OPTIONS_SUB= yes
OPTIONS_GROUP= DOCUMENTS PLUGIN_APPLICATION PLUGIN_FORMATS \
PLUGIN_DSP_EFFECTS PLUGIN_VISUAL_EFFECTS PLUGIN_OUTPUT \
PLUGIN_PLAYLIST PLUGIN_NETWORKING MISC
OPTIONS_GROUP_DOCUMENTS= DOCS DOXYGEN
OPTIONS_GROUP_MISC= CONVERTER ENCA FILEWRITER \
RGSCAN SID
OPTIONS_GROUP_PLUGIN_APPLICATION= QMMP_DIALOG QSUI TWOPANELDIALOG
OPTIONS_GROUP_PLUGIN_DSP_EFFECTS= BS2B LADSPA SOXR
OPTIONS_GROUP_PLUGIN_FORMATS= ARCHIVE FAAD FFMPEG FLAC GME \
MPG123 OPUS SNDFILE \
VORBIS WAVPACK WILDMIDI XMP
OPTIONS_GROUP_PLUGIN_NETWORKING= CURL LYRICS SB SCROBBLER
OPTIONS_GROUP_PLUGIN_OUTPUT= ALSA JACK OSS OSS4 \
PIPEWIRE PULSEAUDIO QTMULTIMEDIA SHOUTCAST
OPTIONS_GROUP_PLUGIN_PLAYLIST= UDISKS
OPTIONS_GROUP_PLUGIN_VISUAL_EFFECTS= PROJECTM
OPTIONS_DEFAULT= ALSA ARCHIVE BS2B CONVERTER CURL ENCA \
FFMPEG FILEWRITER FLAC GME JACK LADSPA \
LYRICS OPUS OSS4 PROJECTM PIPEWIRE \
PULSEAUDIO QMMP_DIALOG QSUI RGSCAN SHOUTCAST SB \
SCROBBLER SID SNDFILE SOXR TWOPANELDIALOG \
UDISKS VORBIS WAVPACK WILDMIDI XMP
OPTIONS_EXCLUDE_i386= ARCHIVE
ARCHIVE_DESC= Read archived media file
BS2B_DESC= Support the Bauer stereophonic2binaural effect
CONVERTER_DESC= Support file type converter
DOCUMENTS_DESC= Documentation and API Reference
ENCA_DESC= Support automatic character set detection
FILEWRITER_DESC= Dump output sound into ogg audio file
GME_DESC= Support video game music files
LYRICS_DESC= Support to show lyrics using lyrics.wikia.com
MISC_DESC= Other features
OPUS_DESC= Enable reading opusfile tags
OSS4_DESC= Open Sound System (ver4) support
PLUGIN_APPLICATION_DESC= Main program view
PLUGIN_DSP_EFFECTS_DESC= DSP effects
PLUGIN_FORMATS_DESC= Support various media formats
PLUGIN_NETWORKING_DESC= Features via the Net
PLUGIN_OUTPUT_DESC= Output sound systems
PLUGIN_PLAYLIST_DESC= Playlist operation
PLUGIN_VISUAL_EFFECTS_DESC= Visual effects
PROJECTM_DESC= Support the projectM music visualiser
QMMP_DIALOG_DESC= An original dialog
QSUI_DESC= Simple UI based on standard widgets set
QTMULTIMEDIA_DESC= Support to use Qt low-level multimedia API
RGSCAN_DESC= ReplayGain scanner
SB_DESC= Browser for IceCast stream directory
SCROBBLER_DESC= Support Libre.fm/Last.fm scrobbler feature
SID_DESC= Support sid
TWOPANELDIALOG_DESC= File dialog by two-panel selector
UDISKS_DESC= Support removable disc detection using UDisks
WILDMIDI_DESC= Support to playback MIDI files
XMP_DESC= Support various module formats using libxmp
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
ALSA_CMAKE_BOOL= USE_ALSA
ARCHIVE_USES= libarchive
ARCHIVE_CMAKE_BOOL= USE_ARCHIVE
BS2B_LIB_DEPENDS= libbs2b.so:audio/libbs2b
BS2B_CMAKE_BOOL= USE_BS2B
CONVERTER_LIB_DEPENDS= libtag.so:audio/taglib
CONVERTER_CMAKE_BOOL= USE_CONVERTER
CURL_LIB_DEPENDS= libcurl.so:ftp/curl
CURL_CMAKE_BOOL= USE_CURL
DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen
ENCA_LIB_DEPENDS= libenca.so:converters/enca
ENCA_CMAKE_BOOL= USE_ENCA
FAAD_LIB_DEPENDS= libfaad.so:audio/faad \
libtag.so:audio/taglib
FAAD_USES= iconv
FAAD_CMAKE_BOOL= USE_AAC
FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
FFMPEG_CMAKE_BOOL= USE_FFMPEG
FILEWRITER_LIB_DEPENDS= libvorbisenc.so:audio/libvorbis
FILEWRITER_CMAKE_BOOL= USE_FILEWRITER
FLAC_LIB_DEPENDS= libFLAC.so:audio/flac \
libtag.so:audio/taglib
FLAC_CMAKE_BOOL= USE_FLAC
GME_LIB_DEPENDS= libgme.so:audio/libgme
GME_CMAKE_BOOL= USE_GME
JACK_BUILD_DEPENDS= jackit>=0.121.2:audio/jack
JACK_LIB_DEPENDS= libjack.so:audio/jack \
libsoxr.so:audio/libsoxr
JACK_CMAKE_BOOL= USE_JACK
LADSPA_RUN_DEPENDS= analyseplugin:audio/ladspa
LADSPA_CMAKE_BOOL= USE_LADSPA
LYRICS_CMAKE_BOOL= USE_LYRICS
MPG123_LIB_DEPENDS= libmpg123.so:audio/mpg123 \
libtag.so:audio/taglib
MPG123_CMAKE_BOOL= USE_MPG123
OPUS_LIB_DEPENDS= libopusfile.so:audio/opusfile \
libopus.so:audio/opus \
libtag.so:audio/taglib
OPUS_CMAKE_BOOL= USE_OPUS
OSS_CMAKE_BOOL= USE_OSS
OSS4_BUILD_DEPENDS= ${LOCALBASE}/lib/oss/include/sys/soundcard.h:audio/oss
OSS4_CMAKE_BOOL= USE_OSS4
PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire
PIPEWIRE_CMAKE_BOOL= USE_PIPEWIRE
PROJECTM_LIB_DEPENDS= libprojectM.so:graphics/libprojectm
PROJECTM_CMAKE_BOOL= USE_PROJECTM
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
PULSEAUDIO_CMAKE_BOOL= USE_PULSE
QMMP_DIALOG_CMAKE_BOOL= USE_QMMP_DIALOG
QSUI_CMAKE_BOOL= USE_QSUI
QTMULTIMEDIA_USE= QT=multimedia
QTMULTIMEDIA_CMAKE_BOOL=USE_QTMULTIMEDIA
RGSCAN_LIB_DEPENDS= libtag.so:audio/taglib
RGSCAN_CMAKE_BOOL= USE_RGSCAN
SB_CMAKE_BOOL= USE_SB
SCROBBLER_CMAKE_BOOL= USE_SCROBBLER
SHOUTCAST_LIB_DEPENDS= libogg.so:audio/libogg \
libshout.so:audio/libshout \
libsoxr.so:audio/libsoxr \
libvorbis.so:audio/libvorbis
SHOUTCAST_CMAKE_BOOL= USE_SHOUT
SID_LIB_DEPENDS= libsidplayfp.so:audio/libsidplayfp
SID_CMAKE_BOOL= USE_SID
SNDFILE_LIB_DEPENDS= libsndfile.so:audio/libsndfile
SNDFILE_CMAKE_BOOL= USE_SNDFILE
SOXR_LIB_DEPENDS= libsoxr.so:audio/libsoxr
SOXR_CMAKE_BOOL= USE_SOXR
TWOPANELDIALOG_CMAKE_BOOL= USE_TWO_PANEL_DIALOG
UDISKS_RUN_DEPENDS= bsdisks:sysutils/bsdisks
UDISKS_CMAKE_BOOL= USE_UDISKS
VORBIS_LIB_DEPENDS= libvorbis.so:audio/libvorbis \
libogg.so:audio/libogg \
libtag.so:audio/taglib
VORBIS_CMAKE_BOOL= USE_VORBIS
WAVPACK_LIB_DEPENDS= libwavpack.so:audio/wavpack
WAVPACK_CMAKE_BOOL= USE_WAVPACK
WILDMIDI_LIB_DEPENDS= libWildMidi.so:audio/wildmidi
WILDMIDI_CMAKE_BOOL= USE_MIDI
XMP_LIB_DEPENDS= libxmp.so:audio/libxmp
XMP_CMAKE_BOOL= USE_XMP
post-patch:
@${GREP} -L '${LOCALBASE}/lib/oss' \
${WRKSRC}/src/plugins/Output/oss4/CMakeLists.txt | ${XARGS} \
${REINPLACE_CMD} -e 's|/usr/local/|${LOCALBASE}/|'
post-build-DOXYGEN-on:
cd ${WRKSRC}/doc && doxygen Doxyfile
post-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}; \
cd ${WRKSRC} && ${INSTALL_MAN} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
post-install-DOXYGEN-on:
cd ${WRKSRC}/doc/html && \
${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}/html
@${FIND} -P ${STAGEDIR}${DOCSDIR}/html -type f 2>/dev/null | \
${SED} -ne 's|^${STAGEDIR}${PREFIX}/||p' >> ${TMPPLIST}
.include <bsd.port.mk>