Files
ports/multimedia/gstreamer1-plugins/Makefile.common
T
Daniel Engberg 25faac8fb8 multimedia/gstreamer1-plugins: Introduce GST_PLUGIN_DEPENDS
Some plugins such as graphics/gstreamer1-plugins-vulkan has a dependency
of wayland which previously were handled by passing both CONFIGURE_ARGS and
MESON_ARGS via the gstreamer1 "framework" as the framework isn't
aware if dependencies to get what would eventually end up in MESON_ARGS in
correct order. This approach broke with commit
bf193dc1da as we now only make use of
MESON_ARGS instead of incorrectly using CONFIGURE_ARGS to pass
MESON_ARGS. In order to fix this introduce GST_PLUGIN_DEPENDS which
gets appended after gstreamer's current framework logic in MESON_ARGS.
It only supports defining one dependency but it's sufficient fow now.
2026-05-01 10:34:03 +02:00

431 lines
5.6 KiB
Makefile

BASE_GST_ALL_PLUGINS+= \
adder \
allocators \
alsa \
app \
audio \
audioconvert \
audiomixer \
audiorate \
audioresample \
audiotestsrc \
cdparanoia \
compositor \
debugutils \
dsd \
doc \
encoding \
examples \
fft \
gio \
gl \
libvisual \
nls \
ogg \
opus \
overlaycomposition \
pango \
pbtypes \
pbutils \
pkgconfig \
playback \
rawparse \
riff \
rtp \
rtsp \
sdp \
subparse \
tag \
tcp \
tests \
theora \
tools \
tremor \
typefind \
video \
videoconvertscale \
videorate \
videotestsrc \
volume \
vorbis \
ximage \
xvideo
BASE_GST_ENABLED_PLUGINS?=
BAD_GST_ALL_PLUGINS+= \
accurip \
adaptivedemux \
adpcmdec \
adpcmenc \
aes \
aiff \
aja \
amfcodec \
analytics \
analyticsoverlay \
androidmedia\
aom \
applemedia \
asfmux \
asio \
assrender \
audio \
audiobuffersplit \
audiofxbad \
audiolatency \
audiomixmatrix \
audiovisualizers \
autoconvert \
avtp \
basecamerabinsrc \
bayer \
bluez \
bs2b \
bz2 \
camerabin2 \
chromaprint \
closedcaption \
codec2json \
codecalpha \
codecparsers \
codecs \
codectimestamper \
coloreffects \
colormanagement \
cuda \
curl \
curl-ssh2 \
d3d11 \
d3d11-hlsl-precompile \
d3d11-math \
d3d11-wgc \
d3d12 \
dash \
data \
dc1394 \
debugutils \
decklink \
directfb \
directshow \
directsound \
doc \
drm \
dtls \
dts \
dvb \
dvbsubenc \
dvbsuboverlay \
dvdspu \
dwrite \
dxva \
examples \
extra-checks \
faac \
faad \
faceoverlay \
fbdev \
fdkaac \
festival \
fieldanalysis \
flite \
fluidsynth \
freeverb \
frei0r \
gaudieffects \
gdp \
geometrictransform \
gl \
gme \
gs \
gsm \
gtk3 \
hls \
id3tag \
insertbin \
inter \
interfaces \
interlace \
ipcpipeline \
iqa \
isac \
isoff \
ivfparse \
ivtc \
jp2kdecimator \
jpegformat \
kms \
ladspa \
ladspa-rdf \
lc3 \
ldac \
libde265 \
librfb \
lv2 \
magicleap \
mediafoundation \
microdns \
midi \
modplug \
mpeg2enc \
mpegdemux \
mpegpsmux \
mpegts \
mpegtsdemux \
mpegtsmux \
mplex \
msdk \
mse \
musepack \
mxf \
neon \
netsim \
nls \
nvcodec \
onnx \
onvif \
openal \
openaptx \
opencv \
openexr \
openh264 \
openjpeg \
openmpt \
openni2 \
opensles \
opus \
orc \
pcapparse \
pkgconfig \
play \
player \
pnm \
proxy \
qroverlay \
qsv \
qt6d3d11 \
rawparse \
removesilence \
resindvd \
rist \
rsvg \
rtmp \
rtmp2 \
rtp \
sbc \
sctp \
sdp \
segmentclip \
shm \
siren \
smooth \
smoothstreaming \
sndfile \
soundtouch \
spandsp \
speed \
srt \
srtp \
subenc \
svtav1 \
svthevcenc \
switchbin \
teletext \
tensordecoders \
tests \
timecode \
tinyalsa \
tools \
transcode \
transcoder \
ttml \
udev \
unixfd \
uridownloader \
uvch264 \
uvcgadget \
v4l2codecs \
va \
videofilters \
videoframe_audiolevel \
videoparsers \
videosignal \
vmaf \
vmnc \
voaacenc \
voamrwbenc \
vulkan \
wasapi \
wasapi2 \
wayland \
webp \
webrtc \
webrtcdsp \
wic \
wildmidi \
win32ipc \
winks \
winscreencap \
x265 \
zbar \
zxing
BAD_GST_ENABLED_PLUGINS?=
GOOD_GST_ALL_PLUGINS+= \
aalib \
adaptivedemux2 \
alpha \
amrnb \
amrwbdec \
apetag \
audiofx \
audioparsers \
auparse \
autodetect \
avi \
cairo \
cutter \
debugutils \
deinterlace \
directsound \
dtmf \
dv \
dv1394 \
effectv \
equalizer \
examples \
flac \
flv \
flx \
gdk-pixbuf \
goom \
goom2k1 \
gtk3 \
icydemux \
id3demux \
imagefreeze \
interleave \
isomp4 \
jack \
jpeg \
lame \
law \
level \
libcaca \
matroska \
monoscope \
mpg123 \
multifile \
multipart \
nls \
oss \
oss4 \
osxaudio \
osxvideo \
png \
pulse \
qt5 \
qt6 \
replaygain \
rtp \
rtpmanager \
rtsp \
shapewipe \
shout2 \
smpte \
soup \
spectrum \
speex \
taglib \
tests \
twolame \
udp \
v4l2 \
videobox \
videocrop \
videofilter \
videomixer \
vpx \
waveform \
wavenc \
wavpack \
wavparse \
ximagesrc \
xingmux \
y4m
GOOD_GST_ENABLED_PLUGINS?=
UGLY_GST_ALL_PLUGINS+= \
a52dec \
asfdemux \
cdio \
dvdlpcmdec \
dvdread \
dvdsub \
mpeg2dec \
nls \
realmedia \
sidplay \
x264
UGLY_GST_ENABLED_PLUGINS?=
# gstreamer scripts tend to call python3 rather than python
BINARY_ALIAS= python3=${PYTHON_VERSION}
# Disable all plugins by default
.if ${DIST}=="base"
.for d in ${BASE_GST_ALL_PLUGINS}
MESON_ARGS+= -D${d}=disabled
.endfor
.for d in ${BASE_GST_ENABLED_PLUGINS}
MESON_ARGS+= -D${d}=enabled
.endfor
.endif
.if ${DIST}=="bad"
.for d in ${BAD_GST_ALL_PLUGINS}
MESON_ARGS+= -D${d}=disabled
.endfor
.for d in ${BAD_GST_ENABLED_PLUGINS}
MESON_ARGS+= -D${d}=enabled
.endfor
.endif
.if ${DIST}=="good"
.for d in ${GOOD_GST_ALL_PLUGINS}
MESON_ARGS+= -D${d}=disabled
.endfor
.for d in ${GOOD_GST_ENABLED_PLUGINS}
MESON_ARGS+= -D${d}=enabled
.endfor
.endif
.if ${DIST}=="ugly"
.for d in ${UGLY_GST_ALL_PLUGINS}
MESON_ARGS+= -D${d}=disabled
.endfor
.for d in ${UGLY_GST_ENABLED_PLUGINS}
MESON_ARGS+= -D${d}=enabled
.endfor
.endif
.if ${GST_PLUGIN}!="base" && ${GST_PLUGIN}!="bad" && \
${GST_PLUGIN}!="good" && ${GST_PLUGIN}!="ugly" && \
${GST_PLUGIN}!="x"
MESON_ARGS+= -D${GST_PLUGIN}=enabled
.endif
.if defined(GST_PLUGIN_DEPENDS)
MESON_ARGS+= -D${GST_PLUGIN_DEPENDS}=enabled
.endif
.if !defined(NO_GSTREAMER_COMMON)
GST_PLUGIN_SUFFIX?= -${GST_PLUGIN}
USE_GSTREAMER+= ${DIST:base=}
.endif # NO_GSTREAMER_COMMON