| 3 |
3 |
|
| 4 |
4 |
EAPI=8
|
| 5 |
5 |
|
| 6 |
|
inherit meson
|
|
6 |
inherit flag-o-matic meson
|
| 7 |
7 |
|
| 8 |
8 |
DESCRIPTION="Lightweight and versatile audio player"
|
| 9 |
9 |
HOMEPAGE="https://audacious-media-player.org/"
|
| 10 |
|
SRC_URI="https://distfiles.audacious-media-player.org/${P}.tar.bz2"
|
| 11 |
|
|
| 12 |
|
LICENSE="GPL-2"
|
|
10 |
SRC_URI="
|
|
11 |
https://distfiles.audacious-media-player.org/${P}.tar.bz2
|
|
12 |
mirror://gentoo/gentoo_ice-xmms-0.2.tar.bz2
|
|
13 |
"
|
|
14 |
# BSD-2 albumart, alsa, asx, audpl, cd-menu-items, compressor, crossfade, cue, delete-files,
|
|
15 |
# ffaudio, gio, glspectrum, gtkui, jack, ladspa, mixer, mms, mpris2, openmpt, opus, pipewire,
|
|
16 |
# playlist-manager, qtaudio, qtui, resample, sdl, search-tool, silence-removal, song-info,
|
|
17 |
# sox-resampler, speedpitch, statusicon-qt, ui-common
|
|
18 |
# BSD psf, xsf
|
|
19 |
# GPL-2+ amidiplug, aosd, blur_scope, bs2b, filewriter, flac, hotkey, lirc, m3u, metronom,
|
|
20 |
# neon, pls, psf(peops), pulse, qtglspectrum, qthotkey, sid, sndfile, statusicon, tonegen,
|
|
21 |
# vorbis, vtx, xsf(desmume), xspf
|
|
22 |
# CC-BY-SA-4.0 Glare skin
|
|
23 |
# GPL-3 ampache, cdaudio, notify, playback-history-qt, scrobbler, skins-qt, skins, songchange,
|
|
24 |
# LGPL-2.1+ console, ladspa.h
|
|
25 |
# ISC bitcrusher, cairo-spectrum, crystalizer, lyrics, mpg123, qt-spectrum, streamtuner,
|
|
26 |
# voice-removal, vumeter
|
|
27 |
# MIT xsf(spu)
|
|
28 |
# public-domain modplug
|
|
29 |
LICENSE="BSD-2 BSD CC-BY-SA-4.0 GPL-2+ GPL-3 ISC LGPL-2.1+ MIT public-domain"
|
| 13 |
30 |
SLOT="0"
|
| 14 |
|
KEYWORDS="amd64 ~ppc64 ~riscv x86"
|
|
31 |
KEYWORDS="~amd64 ~ppc64 ~riscv ~x86"
|
| 15 |
32 |
IUSE="
|
| 16 |
33 |
aac +alsa ampache bs2b cdda cue ffmpeg flac fluidsynth gme gtk http jack
|
| 17 |
|
lame libnotify libsamplerate lirc mms modplug mp3 opengl openmpt opus
|
| 18 |
|
pipewire pulseaudio qt6 scrobbler sdl sid sndfile soxr speedpitch
|
| 19 |
|
streamtuner vorbis wavpack X
|
|
34 |
lame libnotify libsamplerate lirc mms modplug +mp3 opengl openmpt opus
|
|
35 |
pipewire pulseaudio qt6 qtmedia scrobbler sdl sid sndfile soxr streamtuner
|
|
36 |
vorbis wavpack wayland X
|
| 20 |
37 |
"
|
| 21 |
38 |
|
| 22 |
39 |
REQUIRED_USE="
|
| ... | ... | |
| 27 |
44 |
# The following plugins REQUIRE a GUI build of audacious, because non-GUI
|
| 28 |
45 |
# builds do NOT install the libaudgui library & headers.
|
| 29 |
46 |
# Plugins without a configure option:
|
| 30 |
|
# alarm
|
| 31 |
|
# albumart
|
|
47 |
# albumart{,-qt}
|
|
48 |
# blur-scope{,-qt}
|
| 32 |
49 |
# delete-files
|
|
50 |
# filebrowser-qt
|
| 33 |
51 |
# ladspa
|
| 34 |
|
# playlist-manager
|
| 35 |
|
# search-tool
|
| 36 |
|
# skins
|
| 37 |
|
# vtx
|
|
52 |
# lyrics-{gtk,qt}
|
|
53 |
# playback-history-qt
|
|
54 |
# playlist-manager{,-qt}
|
|
55 |
# search-tool{,-qt}
|
|
56 |
# song-info-qt
|
|
57 |
# spectrum-analyzer
|
|
58 |
# statusicon{,-qt}
|
|
59 |
# skins{,-qt}
|
| 38 |
60 |
# Plugins with a configure option:
|
| 39 |
|
# glspectrum
|
|
61 |
# aosd (X+gtk)
|
|
62 |
# ampache (qt6)
|
|
63 |
# glspectrum (X) (handles qtglspectrum if qt6)
|
| 40 |
64 |
# gtkui
|
| 41 |
|
# hotkey
|
|
65 |
# hotkey (X) (handles qthotkey if qt6)
|
| 42 |
66 |
# notify
|
| 43 |
|
# statusicon
|
|
67 |
# qtui
|
|
68 |
# streamtuner (qt6)
|
|
69 |
# vumeter{,-qt} (forced)
|
| 44 |
70 |
BDEPEND="
|
| 45 |
71 |
dev-util/gdbus-codegen
|
| 46 |
72 |
virtual/pkgconfig
|
| ... | ... | |
| 51 |
77 |
dev-libs/libxml2:2=
|
| 52 |
78 |
~media-sound/audacious-${PV}[gtk=,qt6=]
|
| 53 |
79 |
virtual/zlib:=
|
| 54 |
|
>=x11-libs/gdk-pixbuf-2.26:2
|
| 55 |
|
aac? ( >=media-libs/faad2-2.7 )
|
|
80 |
aac? ( media-libs/faad2 )
|
| 56 |
81 |
alsa? ( >=media-libs/alsa-lib-1.0.16 )
|
| 57 |
|
ampache? ( =media-libs/ampache_browser-1*:= )
|
| 58 |
82 |
bs2b? ( >=media-libs/libbs2b-3.0.0 )
|
| 59 |
83 |
cdda? (
|
| 60 |
84 |
>=dev-libs/libcdio-0.70:=
|
| ... | ... | |
| 62 |
86 |
>=media-libs/libcddb-1.2.1
|
| 63 |
87 |
)
|
| 64 |
88 |
cue? ( media-libs/libcue:= )
|
| 65 |
|
ffmpeg? ( >=media-video/ffmpeg-0.7.3:= )
|
| 66 |
|
flac? (
|
| 67 |
|
>=media-libs/flac-1.2.1-r1:=
|
| 68 |
|
>=media-libs/libvorbis-1.0
|
| 69 |
|
)
|
|
89 |
ffmpeg? ( >=media-video/ffmpeg-2.8.1:= )
|
|
90 |
flac? ( >=media-libs/flac-1.2.1-r1:= )
|
| 70 |
91 |
fluidsynth? ( >=media-sound/fluidsynth-1.0.6:= )
|
| 71 |
92 |
gtk? (
|
| 72 |
93 |
>=dev-libs/json-glib-1.0
|
| 73 |
94 |
x11-libs/cairo
|
| 74 |
|
>=x11-libs/gtk+-3.22:3
|
|
95 |
>=x11-libs/gdk-pixbuf-2.26:2
|
|
96 |
>=x11-libs/gtk+-3.22:3[wayland?,X?]
|
| 75 |
97 |
x11-libs/pango
|
|
98 |
libnotify? ( >=x11-libs/libnotify-0.7 )
|
| 76 |
99 |
X? (
|
| 77 |
|
opengl? ( virtual/opengl )
|
| 78 |
100 |
x11-libs/libX11
|
| 79 |
101 |
x11-libs/libXcomposite
|
| 80 |
102 |
x11-libs/libXrender
|
|
103 |
opengl? ( media-libs/libglvnd[X] )
|
| 81 |
104 |
)
|
| 82 |
105 |
)
|
| 83 |
|
http? ( >=net-libs/neon-0.27 )
|
| 84 |
|
jack? (
|
| 85 |
|
>=media-libs/bio2jack-0.4
|
| 86 |
|
virtual/jack
|
| 87 |
|
)
|
|
106 |
http? ( >=net-libs/neon-0.27:= )
|
|
107 |
jack? ( virtual/jack )
|
| 88 |
108 |
lame? ( media-sound/lame )
|
| 89 |
|
libnotify? ( >=x11-libs/libnotify-0.7 )
|
| 90 |
|
libsamplerate? ( media-libs/libsamplerate:= )
|
|
109 |
libsamplerate? ( media-libs/libsamplerate )
|
| 91 |
110 |
lirc? ( app-misc/lirc )
|
| 92 |
111 |
mms? ( >=media-libs/libmms-0.3 )
|
| 93 |
112 |
modplug? ( media-libs/libmodplug )
|
| 94 |
|
mp3? ( media-sound/mpg123-base )
|
|
113 |
mp3? ( >=media-sound/mpg123-base-1.12 )
|
| 95 |
114 |
openmpt? ( >=media-libs/libopenmpt-0.2 )
|
| 96 |
115 |
opus? ( >=media-libs/opusfile-0.4 )
|
| 97 |
|
pipewire? ( >=media-video/pipewire-0.3.26:= )
|
|
116 |
pipewire? ( >=media-video/pipewire-0.3.33:= )
|
| 98 |
117 |
pulseaudio? ( >=media-libs/libpulse-0.9.5 )
|
| 99 |
118 |
qt6? (
|
| 100 |
|
dev-qt/qtbase:6[gui,opengl?,widgets]
|
| 101 |
|
dev-qt/qtmultimedia:6
|
|
119 |
dev-qt/qtbase:6[gui,widgets]
|
|
120 |
ampache? ( >=media-libs/ampache_browser-1.0.7-r1 )
|
|
121 |
libnotify? (
|
|
122 |
>=x11-libs/gdk-pixbuf-2.26:2
|
|
123 |
>=x11-libs/libnotify-0.7
|
|
124 |
)
|
|
125 |
opengl? ( dev-qt/qtbase:6[-gles2-only,opengl] )
|
|
126 |
qtmedia? ( dev-qt/qtmultimedia:6 )
|
|
127 |
streamtuner? ( dev-qt/qtbase:6[network] )
|
| 102 |
128 |
X? (
|
| 103 |
|
dev-qt/qtbase:6=[X]
|
|
129 |
dev-qt/qtbase:6[X]
|
| 104 |
130 |
x11-libs/libX11
|
| 105 |
131 |
)
|
| 106 |
132 |
)
|
| 107 |
133 |
scrobbler? ( >=net-misc/curl-7.9.7 )
|
| 108 |
|
sdl? ( >=media-libs/libsdl2-2.0[sound] )
|
| 109 |
|
sid? ( >=media-libs/libsidplayfp-2.0 )
|
|
134 |
sdl? ( >=media-libs/libsdl3-3.2.0 )
|
|
135 |
sid? ( >=media-libs/libsidplayfp-2.0:= )
|
| 110 |
136 |
sndfile? ( >=media-libs/libsndfile-1.0.17-r1 )
|
| 111 |
137 |
soxr? ( media-libs/soxr )
|
| 112 |
|
speedpitch? ( media-libs/libsamplerate:= )
|
| 113 |
|
streamtuner? ( dev-qt/qtbase:6[network] )
|
| 114 |
138 |
vorbis? (
|
| 115 |
139 |
>=media-libs/libogg-1.1.3
|
| 116 |
140 |
>=media-libs/libvorbis-1.2.0
|
| ... | ... | |
| 119 |
143 |
"
|
| 120 |
144 |
RDEPEND="${DEPEND}"
|
| 121 |
145 |
|
| 122 |
|
pkg_setup() {
|
| 123 |
|
use mp3 || ewarn "MP3 support is optional, you may want to enable the mp3 USE-flag"
|
| 124 |
|
}
|
| 125 |
|
|
| 126 |
146 |
src_prepare() {
|
| 127 |
147 |
default
|
|
148 |
# avoid automagic for glspectrum
|
| 128 |
149 |
if ! use X; then
|
| 129 |
150 |
sed -i -e "s/dependency('x11',.*)/disabler()/" meson.build || die
|
| 130 |
151 |
fi
|
| 131 |
152 |
}
|
| 132 |
153 |
|
| 133 |
154 |
src_configure() {
|
|
155 |
# defang automagic dependencies
|
|
156 |
use X || append-cppflags -DGENTOO_GTK_HIDE_X11
|
|
157 |
use wayland || append-cppflags -DGENTOO_GTK_HIDE_WAYLAND
|
|
158 |
|
| 134 |
159 |
local emesonargs=(
|
| 135 |
160 |
# GUI toolkits
|
| 136 |
161 |
$(meson_use gtk)
|
| ... | ... | |
| 139 |
164 |
-Dqt5=false
|
| 140 |
165 |
|
| 141 |
166 |
# container plugins
|
| 142 |
|
$(meson_use cue cue)
|
|
167 |
$(meson_use cue)
|
| 143 |
168 |
|
| 144 |
169 |
# transport plugins
|
| 145 |
|
$(meson_use mms mms)
|
|
170 |
$(meson_use mms)
|
| 146 |
171 |
$(meson_use http neon)
|
| 147 |
172 |
|
| 148 |
173 |
# input plugins
|
| 149 |
|
$(meson_use aac aac)
|
|
174 |
$(meson_use aac)
|
| 150 |
175 |
-Dadplug=false
|
| 151 |
176 |
$(meson_use fluidsynth amidiplug)
|
| 152 |
177 |
$(meson_use cdda cdaudio)
|
| 153 |
178 |
$(meson_use gme console)
|
| 154 |
179 |
$(meson_use ffmpeg ffaudio)
|
| 155 |
|
$(meson_use flac flac)
|
| 156 |
|
$(meson_use modplug modplug)
|
|
180 |
$(meson_use flac)
|
|
181 |
$(meson_use modplug)
|
| 157 |
182 |
$(meson_use mp3 mpg123)
|
| 158 |
|
$(meson_use openmpt openmpt)
|
| 159 |
|
$(meson_use opus opus)
|
| 160 |
|
$(meson_use sid sid)
|
| 161 |
|
$(meson_use sndfile sndfile)
|
| 162 |
|
$(meson_use vorbis vorbis)
|
| 163 |
|
$(meson_use wavpack wavpack)
|
|
183 |
$(meson_use openmpt)
|
|
184 |
$(meson_use opus)
|
|
185 |
$(meson_use sid)
|
|
186 |
$(meson_use sndfile)
|
|
187 |
$(meson_use vorbis)
|
|
188 |
$(meson_use wavpack)
|
| 164 |
189 |
|
| 165 |
190 |
# output plugins
|
| 166 |
|
$(meson_use alsa alsa)
|
|
191 |
$(meson_use alsa)
|
| 167 |
192 |
-Dcoreaudio=false
|
| 168 |
193 |
# filewriter
|
| 169 |
194 |
$(meson_use flac filewriter-flac)
|
| 170 |
195 |
$(meson_use lame filewriter-mp3)
|
| 171 |
196 |
$(meson_use vorbis filewriter-ogg)
|
| 172 |
|
$(meson_use jack jack)
|
|
197 |
$(meson_use jack)
|
| 173 |
198 |
-Doss=false
|
| 174 |
|
$(meson_use pipewire pipewire)
|
|
199 |
$(meson_use pipewire)
|
| 175 |
200 |
$(meson_use pulseaudio pulse)
|
| 176 |
|
$(meson_use qt6 qtaudio)
|
|
201 |
$(meson_use qtmedia qtaudio)
|
| 177 |
202 |
$(meson_use sdl sdlout)
|
| 178 |
203 |
-Dsndio=false
|
| 179 |
204 |
|
| 180 |
205 |
# general plugins
|
| 181 |
|
$(meson_use ampache ampache)
|
|
206 |
$(meson_use ampache)
|
| 182 |
207 |
$(meson_use X aosd)
|
| 183 |
208 |
$(meson_use X hotkey)
|
| 184 |
|
$(meson_use lirc lirc)
|
|
209 |
$(meson_use lirc)
|
| 185 |
210 |
-Dmac-media-keys=false
|
| 186 |
211 |
-Dmpris2=true
|
| 187 |
212 |
$(meson_use libnotify notify)
|
| 188 |
213 |
$(meson_use scrobbler scrobbler2)
|
| 189 |
214 |
-Dsongchange=true
|
| 190 |
|
$(meson_use streamtuner streamtuner)
|
|
215 |
$(meson_use streamtuner)
|
| 191 |
216 |
|
| 192 |
217 |
# effect plugins
|
| 193 |
|
$(meson_use bs2b bs2b)
|
|
218 |
$(meson_use bs2b)
|
| 194 |
219 |
$(meson_use libsamplerate resample)
|
| 195 |
|
$(meson_use soxr soxr)
|
| 196 |
|
$(meson_use speedpitch speedpitch)
|
|
220 |
$(meson_use libsamplerate speedpitch)
|
|
221 |
$(meson_use soxr)
|
| 197 |
222 |
|
| 198 |
223 |
# visualization plugins
|
| 199 |
224 |
$(meson_use opengl gl-spectrum)
|
| ... | ... | |
| 202 |
227 |
|
| 203 |
228 |
meson_src_configure
|
| 204 |
229 |
}
|
|
230 |
|
|
231 |
src_install() {
|
|
232 |
meson_src_install
|
|
233 |
|
|
234 |
# the skin Winamp2.9 is copyrighted, so revert upstream' commit 367e7a3
|
|
235 |
# see comments at https://www.gnome-look.org/p/1008229 and bug #965338
|
|
236 |
# part of skins-data which depends on gui
|
|
237 |
if use gtk || use qt6; then
|
|
238 |
rm -r "${ED}"/usr/share/audacious/Skins/Winamp2.9 || die
|
|
239 |
fi
|
|
240 |
|
|
241 |
# Gentoo_ice Winamp skin installation; bug #109772
|
|
242 |
# The Winamp interface is not supported on Wayland.
|
|
243 |
if use X; then
|
|
244 |
insinto /usr/share/audacious/Skins/gentoo_ice
|
|
245 |
doins -r "${WORKDIR}"/gentoo_ice/.
|
|
246 |
docinto gentoo_ice
|
|
247 |
dodoc "${WORKDIR}"/README
|
|
248 |
fi
|
|
249 |
}
|