You've already forked macports-ports
mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
4872d6d488
None of the Qt5 versions currently build for anything older than High Sierra.
509 lines
17 KiB
Tcl
509 lines
17 KiB
Tcl
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
|
|
|
|
PortSystem 1.0
|
|
PortGroup meson 1.0
|
|
PortGroup active_variants 1.1
|
|
|
|
name audacious-plugins
|
|
|
|
# Please keep audacious, audacious-core and audacious-plugins synchronized.
|
|
version 4.6.1
|
|
revision 0
|
|
|
|
# FIXME: probably more licenses involved here...
|
|
license BSD GPL-2+
|
|
categories audio
|
|
maintainers {ionic @Ionic} \
|
|
{makr @mohd-akram}
|
|
homepage https://www.audacious-media-player.org/
|
|
description Adds I/O, audio decoding, audio transforming and UI plugins.
|
|
long_description This ports bundles most of the functionality for audacious. \
|
|
{*}${description}
|
|
|
|
# Maintainer-only helper for testing changes quickly and easily.
|
|
#fetch.type git
|
|
#git.url https://github.com/Ionic/audacious-plugins
|
|
#git.branch ${name}-${version}-buildfix
|
|
|
|
master_sites https://distfiles.audacious-media-player.org
|
|
use_bzip2 yes
|
|
checksums rmd160 f02d78e3241562548a67e30d79b9d8cb3989d55b \
|
|
sha256 22e58a8a2c3f3caa9687434353618c822963cc8846cd239de36d4e8e5bd166a6 \
|
|
size 1797504
|
|
|
|
universal_variant no
|
|
|
|
depends_build port:gettext
|
|
|
|
depends_lib port:audacious-core \
|
|
port:gettext-runtime \
|
|
port:libxml2 \
|
|
port:zlib \
|
|
path:lib/pkgconfig/glib-2.0.pc:glib2
|
|
|
|
depends_run port:unzip
|
|
|
|
compiler.c_standard 1999
|
|
compiler.cxx_standard 2017
|
|
|
|
# Options order per meson_options.txt
|
|
# gui
|
|
configure.args-append \
|
|
-Dgtk=false \
|
|
-Dgtk2=false \
|
|
-Dqt=false \
|
|
-Dqt5=false
|
|
|
|
# container
|
|
configure.args-append \
|
|
-Dcue=false
|
|
|
|
# transport
|
|
configure.args-append \
|
|
-Dmms=false \
|
|
-Dneon=false
|
|
|
|
# input
|
|
configure.args-append \
|
|
-Daac=false \
|
|
-Dadplug=false \
|
|
-Damidiplug=false \
|
|
-Dcdaudio=false \
|
|
-Dconsole=true \
|
|
-Dffaudio=false \
|
|
-Dflac=false \
|
|
-Dmodplug=false \
|
|
-Dmpg123=false \
|
|
-Dopenmpt=false \
|
|
-Dopus=false \
|
|
-Dsid=false \
|
|
-Dsndfile=false \
|
|
-Dvorbis=false \
|
|
-Dwavpack=false
|
|
|
|
# output
|
|
# sdlout was originally the only working audio output plugin on macOS.
|
|
# coreaudio is always enabled on macOS. It has problems setting the initial volume.
|
|
# When using Qt5, the QtMultimedia audio output seems to be a good choice feature-wise.
|
|
# Try PulseAudio at your own risk.
|
|
configure.args-append \
|
|
-Dalsa=false \
|
|
-Dcoreaudio=false \
|
|
-Dfilewriter=true \
|
|
-Dfilewriter-flac=false \
|
|
-Dfilewriter-mp3=false \
|
|
-Dfilewriter-ogg=false \
|
|
-Djack=false \
|
|
-Doss=false \
|
|
-Dpipewire=false \
|
|
-Dpulse=false \
|
|
-Dqtaudio=false \
|
|
-Dsdlout=false \
|
|
-Dsndio=false
|
|
|
|
# general
|
|
configure.args-append \
|
|
-Dampache=false \
|
|
-Daosd=false \
|
|
-Dhotkey=false \
|
|
-Dlirc=false \
|
|
-Dmac-now-playing=false \
|
|
-Dmpris2=false \
|
|
-Dnotify=false \
|
|
-Dscrobbler2=false \
|
|
-Dsongchange=true \
|
|
-Dstreamtuner=false
|
|
|
|
# effect
|
|
configure.args-append \
|
|
-Dbs2b=false \
|
|
-Dresample=false \
|
|
-Dsoxr=false \
|
|
-Dspeedpitch=false
|
|
|
|
# visualization
|
|
configure.args-append \
|
|
-Dgl-spectrum=false \
|
|
-Dvumeter=false
|
|
|
|
platform darwin {
|
|
configure.args-replace -Dcoreaudio=false \
|
|
-Dcoreaudio=true \
|
|
-Dmac-now-playing=false \
|
|
-Dmac-now-playing=true
|
|
}
|
|
|
|
# Even if we disable blocks to make it build with GCC, it is broken
|
|
# and outputs only hiss. Use SDL audio out instead, until fixed.
|
|
# FIXME: https://github.com/audacious-media-player/audacious/issues/1440
|
|
platform darwin powerpc {
|
|
configure.args-replace -Dcoreaudio=true \
|
|
-Dcoreaudio=false
|
|
}
|
|
|
|
# This issue was supposed to be fixed, but it did not work as intended.
|
|
# Temporarily revert upstream commit and restore our patch. This is tested.
|
|
# https://github.com/audacious-media-player/audacious-plugins/pull/166
|
|
patchfiles-append patch-big-endian.diff
|
|
|
|
default_variants +full
|
|
|
|
depends_build-append \
|
|
path:bin/pkg-config:pkgconfig
|
|
|
|
post-destroot {
|
|
xinstall -d -m 0755 ${destroot}${prefix}/share/doc/${name}
|
|
xinstall -m 0644 ${worksrcpath}/COPYING ${destroot}${prefix}/share/doc/${name}
|
|
}
|
|
|
|
variant pulseaudio description {Add support for PulseAudio} {
|
|
depends_lib-append port:pulseaudio
|
|
configure.args-replace -Dpulse=false \
|
|
-Dpulse=true
|
|
}
|
|
|
|
variant mp3 description {Add support for MP3 files} {
|
|
depends_lib-append port:mpg123 \
|
|
port:lame
|
|
configure.args-replace -Dmpg123=false \
|
|
-Dmpg123=true \
|
|
-Dfilewriter-mp3=false \
|
|
-Dfilewriter-mp3=true
|
|
}
|
|
|
|
variant mpris2 description {Adds support for MPRIS2} {
|
|
# gdbus-codegen
|
|
depends_build-append path:lib/pkgconfig/glib-2.0.pc:glib2
|
|
depends_run-append port:dbus
|
|
configure.args-replace -Dmpris2=false \
|
|
-Dmpris2=true
|
|
}
|
|
|
|
variant hotkey description {Adds global hotkey plugin (X11)} {
|
|
configure.args-replace -Dhotkey=false \
|
|
-Dhotkey=true
|
|
}
|
|
|
|
variant lirc description {Adds support for infrared devices via LIRC} {
|
|
depends_lib-append port:lirc
|
|
configure.args-replace -Dlirc=false \
|
|
-Dlirc=true
|
|
}
|
|
|
|
variant osd description {Adds OSD support via pangocairo} {
|
|
depends_lib-append port:xrender \
|
|
port:xorg-libXcomposite
|
|
configure.args-replace -Daosd=false \
|
|
-Daosd=true
|
|
}
|
|
|
|
variant notifications description {Adds support for notifications via libnotify} {
|
|
depends_lib-append port:libnotify \
|
|
path:lib/pkgconfig/gdk-pixbuf-2.0.pc:gdk-pixbuf2
|
|
configure.args-replace -Dnotify=false \
|
|
-Dnotify=true
|
|
}
|
|
|
|
variant vorbis description {Add support for the OggVorbis audio codec} {
|
|
depends_lib-append port:libvorbis \
|
|
port:libogg
|
|
configure.args-replace -Dvorbis=false \
|
|
-Dvorbis=true \
|
|
-Dfilewriter-ogg=false \
|
|
-Dfilewriter-ogg=true
|
|
}
|
|
|
|
variant opus description {Add support for the Opus codec} {
|
|
depends_lib-append port:opusfile
|
|
configure.args-replace -Dopus=false \
|
|
-Dopus=true
|
|
}
|
|
|
|
variant flac description {Add support for FLAC: Free Lossless Audio Codec} {
|
|
depends_lib-append port:flac
|
|
configure.args-replace -Dflac=false \
|
|
-Dflac=true \
|
|
-Dfilewriter-flac=false \
|
|
-Dfilewriter-flac=true
|
|
}
|
|
|
|
variant wavpack description {Add support for wavpack audio compression tools} {
|
|
depends_lib-append port:wavpack
|
|
configure.args-replace -Dwavpack=false \
|
|
-Dwavpack=true
|
|
}
|
|
|
|
variant aac description {Add support for MPEG-4 AAC Audio} {
|
|
depends_lib-append port:faad2
|
|
configure.args-replace -Daac=false \
|
|
-Daac=true
|
|
}
|
|
|
|
variant sndfile description {Add support for libsndfile} {
|
|
depends_lib-append port:libsndfile
|
|
configure.args-replace -Dsndfile=false \
|
|
-Dsndfile=true
|
|
}
|
|
|
|
variant modplug description {Add support for MOD audio codec} {
|
|
depends_lib-append port:libmodplug
|
|
configure.args-replace -Dmodplug=false \
|
|
-Dmodplug=true
|
|
}
|
|
|
|
variant openmpt description {Add support for MOD, XM, S3M,IT, MPTM and others} {
|
|
depends_lib-append port:libopenmpt
|
|
configure.args-replace -Dopenmpt=false \
|
|
-Dopenmpt=true
|
|
}
|
|
|
|
variant adplug description {Add support for the AdLib synthesizer} {
|
|
depends_lib-append port:adplug \
|
|
port:libbinio
|
|
configure.args-replace -Dadplug=false \
|
|
-Dadplug=true
|
|
}
|
|
|
|
variant bs2b description {Add support for Bauer stereophonic-to-binaural} {
|
|
depends_lib-append port:libbs2b
|
|
configure.args-replace -Dbs2b=false \
|
|
-Dbs2b=true
|
|
}
|
|
|
|
variant ffmpeg description {Add support for decoding audio streams via ffmpeg} {
|
|
PortGroup ffmpeg 1.0
|
|
|
|
ffmpeg.version 8
|
|
configure.args-replace -Dffaudio=false \
|
|
-Dffaudio=true
|
|
}
|
|
|
|
variant jack description {Add support for the JACK Audio Connection Kit} {
|
|
depends_lib-append port:jack
|
|
configure.args-replace -Djack=false \
|
|
-Djack=true
|
|
}
|
|
|
|
variant sid description {Build with SID (Commodore 64 Audio) support} {
|
|
depends_lib-append port:libsidplayfp
|
|
configure.args-replace -Dsid=false \
|
|
-Dsid=true
|
|
}
|
|
|
|
variant midi description {Add MIDI playback support via fluidsynth} {
|
|
depends_lib-append port:fluidsynth
|
|
configure.args-replace -Damidiplug=false \
|
|
-Damidiplug=true
|
|
}
|
|
|
|
variant cdaudio description {Add support for CDAudio} {
|
|
depends_lib-append port:libcdio-paranoia \
|
|
port:libcdio \
|
|
port:libcddb
|
|
configure.args-replace -Dcdaudio=false \
|
|
-Dcdaudio=true
|
|
}
|
|
|
|
variant lastfm description {Add support for last.fm} {
|
|
depends_lib-append port:curl
|
|
configure.args-replace -Dscrobbler2=false \
|
|
-Dscrobbler2=true
|
|
}
|
|
|
|
variant ampache description {Add support for browsing music on an Ampache server} {
|
|
depends_lib-append port:ampache_browser
|
|
configure.args-replace -Dampache=false \
|
|
-Dampache=true
|
|
|
|
if {[variant_isset qt5]} {
|
|
require_active_variants ampache_browser qt5
|
|
}
|
|
|
|
if {[variant_isset qt6]} {
|
|
require_active_variants ampache_browser qt6
|
|
}
|
|
}
|
|
|
|
variant mms description {Add support for Microsoft Media Server (MMS) streams} {
|
|
depends_lib-append port:libmms
|
|
configure.args-replace -Dmms=false \
|
|
-Dmms=true
|
|
}
|
|
|
|
variant neon description {Add support for neon HTTP client} {
|
|
depends_lib-append port:neon
|
|
configure.args-replace -Dneon=false \
|
|
-Dneon=true
|
|
}
|
|
|
|
variant cue description {Add support for CUE sheets} {
|
|
depends_lib-append port:libcue
|
|
configure.args-replace -Dcue=false \
|
|
-Dcue=true
|
|
}
|
|
|
|
variant transform description {Add support for audio transformation, most notably resampling, pitching and speed control} {
|
|
depends_lib-append port:libsamplerate \
|
|
port:soxr
|
|
configure.args-replace -Dresample=false \
|
|
-Dresample=true \
|
|
-Dspeedpitch=false \
|
|
-Dspeedpitch=true \
|
|
-Dsoxr=false \
|
|
-Dsoxr=true
|
|
}
|
|
|
|
variant opengl description {Add support for spectrum visualization via OpenGL} {
|
|
if {[variant_isset gtk2] || [variant_isset gtk3]} {
|
|
depends_lib-append path:lib/libGL.dylib:mesa
|
|
}
|
|
configure.args-replace -Dgl-spectrum=false \
|
|
-Dgl-spectrum=true
|
|
}
|
|
|
|
variant vumeter description {Add support for VU meter visualization} {
|
|
configure.args-replace -Dvumeter=false \
|
|
-Dvumeter=true
|
|
}
|
|
|
|
variant sdl3 description {Add SDL audio output via SDL3} {
|
|
depends_lib-append port:SDL3
|
|
configure.args-replace -Dsdlout=false \
|
|
-Dsdlout=true
|
|
}
|
|
|
|
variant qt5 conflicts qt6 description {Add Qt5 support} {
|
|
PortGroup qt5 1.0
|
|
|
|
qt5.depends_component qtmultimedia
|
|
|
|
configure.args-replace -Dqt=false \
|
|
-Dqt=true \
|
|
-Dqt5=false \
|
|
-Dqt5=true \
|
|
-Dqtaudio=false \
|
|
-Dqtaudio=true
|
|
|
|
require_active_variants audacious-core qt5
|
|
}
|
|
|
|
variant qt6 conflicts qt5 description {Add Qt6 support} {
|
|
PortGroup qt6 1.0
|
|
|
|
qt6.depends_lib qtmultimedia
|
|
|
|
# https://trac.macports.org/ticket/69214
|
|
configure.pkg_config_path-append [option qt6.dir]/lib/pkgconfig
|
|
|
|
configure.args-replace -Dqt=false \
|
|
-Dqt=true \
|
|
-Dqtaudio=false \
|
|
-Dqtaudio=true
|
|
|
|
require_active_variants audacious-core qt6
|
|
}
|
|
|
|
variant gtk2 conflicts gtk3 description {Add GTK2 support} {
|
|
depends_lib-append path:lib/pkgconfig/gtk+-2.0.pc:gtk2 \
|
|
port:json-glib
|
|
|
|
configure.args-replace -Dgtk=false \
|
|
-Dgtk=true \
|
|
-Dgtk2=false \
|
|
-Dgtk2=true
|
|
|
|
require_active_variants audacious-core gtk2
|
|
}
|
|
|
|
variant gtk3 conflicts gtk2 description {Add GTK3 support} {
|
|
depends_lib-append path:lib/pkgconfig/gtk+-3.0.pc:gtk3 \
|
|
port:json-glib
|
|
|
|
configure.args-replace -Dgtk=false \
|
|
-Dgtk=true
|
|
|
|
require_active_variants audacious-core gtk3
|
|
}
|
|
|
|
variant full requires mp3 mpris2 wavpack aac sndfile modplug openmpt sid \
|
|
midi cdaudio lastfm mms neon cue flac transform \
|
|
vorbis opus adplug bs2b notifications \
|
|
description {Build all plugins, except additional sound output plugins and potentially conflicting variants} {}
|
|
|
|
if {[variant_isset jack]} {
|
|
notes-append {
|
|
You have selected the JACK audio output plugin. \
|
|
To use this plugin, jackd needs to be started manually. \
|
|
The plugin is known to have issues leading to crackling sound output. \
|
|
Please don't report bugs against this plugin.\
|
|
}
|
|
}
|
|
|
|
default_variants-append +sdl3 +ffmpeg
|
|
|
|
# Need either one of gtk2, gtk3, Qt5 or Qt6 to have a GUI.
|
|
# Default to qt6, which is preferred by upstream.
|
|
if {![variant_isset qt5]} {
|
|
if {${os.platform} ne "darwin" || ${os.major} >= 23} {
|
|
default_variants-append +qt6
|
|
}
|
|
}
|
|
if {![variant_isset qt6]} {
|
|
if {${os.platform} ne "darwin" || ${os.major} >= 17} {
|
|
default_variants-append +qt5
|
|
}
|
|
}
|
|
if {![variant_isset qt5] && ![variant_isset qt6] && ![variant_isset gtk2]} {
|
|
default_variants-append +gtk3
|
|
}
|
|
|
|
# UI required variants
|
|
|
|
# Add other variants to the "full" set if UI is enabled
|
|
if {[variant_isset full] && ([variant_isset gtk2] || [variant_isset gtk3] || [variant_isset qt5] || [variant_isset qt6])} {
|
|
default_variants-append +opengl +vumeter
|
|
}
|
|
|
|
# OpenGL requires UI
|
|
if {![variant_isset gtk2] && ![variant_isset gtk3] && ![variant_isset qt5] && ![variant_isset qt6] && [variant_isset opengl]} {
|
|
ui_debug "The opengl variant requires either the gtk2, gtk3, qt5 or qt6 variant to be enabled."
|
|
error "+opengl requires +gtk2, +gtk3, +qt5 or +qt6."
|
|
}
|
|
|
|
# VU meter requires UI
|
|
if {![variant_isset gtk2] && ![variant_isset gtk3] && ![variant_isset qt5] && ![variant_isset qt6] && [variant_isset vumeter]} {
|
|
ui_debug "The vumeter variant requires either the gtk2, gtk3, qt5 or qt6 variant to be enabled."
|
|
error "+vumeter requires +gtk2, +gtk3, +qt5 or +qt6."
|
|
}
|
|
|
|
# Qt only
|
|
|
|
# Ampache only supported with Qt5 or Qt6
|
|
if {![variant_isset qt5] && ![variant_isset qt6] && [variant_isset ampache]} {
|
|
ui_debug "The ampache variant requires either the qt5 or qt6 variants to be enabled."
|
|
error "+ampache requires +qt5 or +qt6."
|
|
}
|
|
|
|
# GTK only
|
|
|
|
# Add other variants to the "full" set if GTK is enabled
|
|
if {[variant_isset full] && ([variant_isset gtk2] || [variant_isset gtk3])} {
|
|
default_variants-append +osd
|
|
}
|
|
|
|
# hotkey only supported with GTK
|
|
if {![variant_isset gtk2] && ![variant_isset gtk3] && [variant_isset hotkey]} {
|
|
ui_debug "The hotkey variant requires either the gtk2 or gtk3 variant to be enabled."
|
|
error "+hotkey require +gtk2 or +gtk3."
|
|
}
|
|
|
|
# OSD only supported with GTK
|
|
if {![variant_isset gtk2] && ![variant_isset gtk3] && [variant_isset osd]} {
|
|
ui_debug "The osd variant requires either the gtk2 or gtk3 variant to be enabled."
|
|
error "+osd require +gtk2 or +gtk3."
|
|
}
|
|
|
|
livecheck.type regex
|
|
livecheck.url ${master_sites}
|
|
livecheck.regex "${name}-(\\d+(?:\\.\\d+)*)${extract.suffix}"
|