git: ca3f925d6eb5 - main - framework: convert bsd.gstreamer.mk to Uses/gstreamer.mk
Date: Sat, 30 Apr 2022 08:03:45 UTC
The branch main has been updated by tcberner: URL: https://cgit.FreeBSD.org/ports/commit/?id=ca3f925d6eb53ff27e2a49775f6d33f52a587ae4 commit ca3f925d6eb53ff27e2a49775f6d33f52a587ae4 Author: Tobias C. Berner <tcberner@FreeBSD.org> AuthorDate: 2022-04-29 04:52:18 +0000 Commit: Tobias C. Berner <tcberner@FreeBSD.org> CommitDate: 2022-04-30 08:03:20 +0000 framework: convert bsd.gstreamer.mk to Uses/gstreamer.mk - convert bsd.gstreamer.mk to Uses/gstreamer.mk - convert ports tree to make use of USES=gstreamer - remove duplicate dependency lines from the tree Differential Revision: https://reviews.freebsd.org/D35097 --- CHANGES | 22 + Mk/Uses/gstreamer.mk | 448 +++++++++++++++++++ Mk/bsd.gstreamer.mk | 562 ------------------------ Mk/bsd.port.mk | 10 +- audio/exaile/Makefile | 4 +- audio/faudio/Makefile | 5 +- audio/gnome-music/Makefile | 4 +- audio/gnome-podcasts/Makefile | 4 +- audio/goobox/Makefile | 3 +- audio/gradio/Makefile | 4 +- audio/gsequencer/Makefile | 3 +- audio/gstreamer1-plugins-sndio/Makefile | 6 +- audio/libcanberra/Makefile | 2 +- audio/lollypop/Makefile | 6 +- audio/moodbar/Makefile | 4 +- audio/mp3splt-gtk/Makefile | 3 +- audio/mpz/Makefile | 4 +- audio/pianod2/Makefile | 4 +- audio/pithos/Makefile | 4 +- audio/pragha/Makefile | 4 +- audio/pulseeffects/Makefile | 4 +- audio/rhythmbox/Makefile | 4 +- audio/sayonara/Makefile | 4 +- audio/shortwave/Makefile | 6 +- audio/sound-juicer/Makefile | 4 +- audio/strawberry/Makefile | 3 +- deskutils/alarm-clock-applet/Makefile | 3 +- deskutils/gnome-pomodoro/Makefile | 3 +- deskutils/gnome-sound-recorder/Makefile | 4 +- deskutils/lumina-mediaplayer/Makefile | 6 +- deskutils/solanum/Makefile | 4 +- deskutils/spice-gtk/Makefile | 3 +- deskutils/xfce4-tumbler/Makefile | 2 +- devel/efl/Makefile | 3 +- devel/libspice-server/Makefile | 2 +- editors/libreoffice/Makefile | 2 +- editors/openoffice-devel/Makefile | 2 +- emulators/wine-proton/Makefile | 4 +- games/eboard/Makefile | 3 +- games/lordsawar/Makefile | 3 +- games/py-pychess/Makefile | 3 +- graphics/elementary-photos/Makefile | 3 +- graphics/entangle/Makefile | 4 +- graphics/evince/Makefile | 3 +- graphics/gnome-video-effects/Makefile | 4 +- graphics/gthumb/Makefile | 2 +- graphics/kmscube/Makefile | 4 +- graphics/opencv/Makefile | 2 +- graphics/osg/Makefile | 4 +- graphics/osg34/Makefile | 3 +- graphics/pdfpc/Makefile | 3 +- graphics/shotwell/Makefile | 5 +- mail/py-mailnag/Makefile | 3 +- misc/copperspice-examples/Makefile | 3 +- multimedia/aravis/Makefile | 3 +- multimedia/cheese/Makefile | 4 +- multimedia/clutter-gst/Makefile | 3 +- multimedia/clutter-gst3/Makefile | 3 +- multimedia/elementary-videos/Makefile | 8 +- multimedia/gnome-twitch/Makefile | 6 +- multimedia/gst123/Makefile | 4 +- multimedia/gstreamer1-editing-services/Makefile | 4 +- multimedia/gstreamer1-libav/Makefile | 3 +- multimedia/gstreamer1-plugins-all/Makefile | 5 +- multimedia/gstreamer1-plugins-bad/Makefile | 4 +- multimedia/gstreamer1-plugins-core/Makefile | 12 +- multimedia/gstreamer1-plugins-gnonlin/Makefile | 4 +- multimedia/gstreamer1-plugins-good/Makefile | 3 - multimedia/gstreamer1-plugins-rust/Makefile | 3 +- multimedia/gstreamer1-plugins-svt-av1/Makefile | 3 +- multimedia/gstreamer1-plugins-svt-hevc/Makefile | 3 +- multimedia/gstreamer1-plugins-svt-vp9/Makefile | 3 +- multimedia/gstreamer1-plugins-ugly/Makefile | 3 - multimedia/gstreamer1-plugins/Makefile | 11 +- multimedia/gstreamer1-plugins/Makefile.common | 12 +- multimedia/gstreamer1-qt/Makefile | 3 +- multimedia/gstreamer1-rtsp-server/Makefile | 4 +- multimedia/gstreamer1-transcoder/Makefile | 4 +- multimedia/gstreamer1-vaapi/Makefile | 4 +- multimedia/gstreamer1-validate/Makefile | 3 +- multimedia/gstreamermm/Makefile | 3 +- multimedia/handbrake/Makefile | 2 +- multimedia/kamoso/Makefile | 3 +- multimedia/kooha/Makefile | 4 +- multimedia/librespot/Makefile | 5 +- multimedia/neolink/Makefile | 3 +- multimedia/phonon-gstreamer/Makefile | 3 +- multimedia/photofilmstrip/Makefile | 4 +- multimedia/pipewire/Makefile | 3 +- multimedia/pitivi/Makefile | 4 +- multimedia/py-gstreamer1/Makefile | 3 +- multimedia/qt5-multimedia/Makefile | 3 +- multimedia/quodlibet/Makefile | 6 +- multimedia/snappy/Makefile | 3 +- multimedia/termplay/Makefile | 3 +- multimedia/totem/Makefile | 4 +- multimedia/webcamoid/Makefile | 3 +- multimedia/xfce4-parole/Makefile | 8 +- net-im/cawbird/Makefile | 2 +- net-im/dino/Makefile | 3 +- net-im/farstream/Makefile | 4 +- net-im/fractal/Makefile | 4 +- net-im/ktp-call-ui/Makefile | 3 +- net-im/libnice/Makefile | 2 +- net-im/libpurple/Makefile | 5 +- net-im/pidgin-sipe/Makefile | 3 +- net-im/telepathy-qt/Makefile | 4 +- net/freerdp/Makefile | 4 +- net/grilo-plugins/Makefile | 4 +- net/gupnp-dlna/Makefile | 3 +- net/libdmapsharing/Makefile | 3 +- net/uget/Makefile | 2 +- security/authenticator/Makefile | 4 +- sysutils/brasero/Makefile | 3 +- sysutils/gnome-control-center/Makefile | 3 +- sysutils/tracker-miners/Makefile | 2 +- sysutils/xfburn/Makefile | 2 +- textproc/libextractor/Makefile | 2 +- www/qt5-webkit/Makefile | 5 +- www/webkit2-gtk3/Makefile | 3 +- x11-fm/nautilus/Makefile | 3 +- x11-fm/sushi/Makefile | 3 +- x11-toolkits/copperspice/Makefile | 4 +- x11-toolkits/gstreamer1-plugins-gtk4/Makefile | 4 +- x11-toolkits/gtk40/Makefile | 2 +- x11-toolkits/wxgtk30/Makefile | 2 +- x11-toolkits/wxgtk31/Makefile | 2 +- x11/cinnamon/Makefile | 3 +- x11/florence/Makefile | 3 +- x11/gnome-shell/Makefile | 3 +- x11/lumina-core/Makefile | 3 +- x11/workrave/Makefile | 3 +- x11/xpra/Makefile | 6 +- 133 files changed, 677 insertions(+), 844 deletions(-) diff --git a/CHANGES b/CHANGES index e96e1b0d4a0d..6a40475bf8d5 100644 --- a/CHANGES +++ b/CHANGES @@ -10,6 +10,28 @@ in the release notes and/or placed into UPDATING. All ports committers are allowed to commit to this file. +20220430: +AUTHOR: tcberner@FreeBSD.org + + A new USES has been added to handle dependency on gstreamer. + + Instead of writing + + USE_GSTREAMER1=[list of components] + + you now have to write + + USES=gstreamer + USE_GSTREAMER=[list of components] + + If your port previously set just + + USE_GSTREAMER=yes + + this now is simply + + USES=gstreamer + 20220415: AUTHOR: amdmi3@FreeBSD.org diff --git a/Mk/Uses/gstreamer.mk b/Mk/Uses/gstreamer.mk new file mode 100644 index 000000000000..066b3b895e44 --- /dev/null +++ b/Mk/Uses/gstreamer.mk @@ -0,0 +1,448 @@ +# +# gstreamer.mk - Support for gstreamer-plugins-based ports. +# +# Usage: +# USES= gstreamer[:version] +# USE_GSTREAMER= [list of components] +# +# Supported versions: 1 -- default +# # + +.if ! defined(_INCLUDE_USES_GSTREAMER_MK) +_INCLUDE_USES_GSTREAMER_MK= YES + +#== Argument handling + +# Preparations to support multiple gstreamer versions +_GST_VER_SUPPORTED= 1 +_GST_VER_DEFAULT= 1 +_GST_VER= # +. for ver in ${_GST_VER_SUPPORTED:O:u} +. if ${gstreamer_ARGS:M${ver}} +. if empty(_GST_VER) +_GST_VER= ${ver} +. else +INGORE= Incorrect USES=gstreamer:${gstramer_ARGS} - multiple versions defined +. endif +. endif +. endfor + +. if empty(_GST_VER) +_GST_VER= ${_GST_VER_DEFAULT} +. endif + +#== Component setup + +_GST1_VERSION= 1.16.2 +_GST1_LIB_VER= 1.0 + +_GST1_CATEGORIES= audio comms devel ftp graphics multimedia net security \ + sysutils www x11 x11-toolkits +_GST1_PLUGINS_audio= a52dec amrnb amrwbdec bs2b cdparanoia chromaprint faac \ + faad flac flite gme gsm jack ladspa lame lv2 modplug \ + mpg123 musepack ogg openmpt opus pulse shout2 sidplay \ + sndfile sndio soundtouch speex taglib twolame vorbis \ + wavpack webrtcdsp +_GST1_PLUGINS_comms= spandsp +_GST1_PLUGINS_devel= soup +_GST1_PLUGINS_ftp= curl +_GST1_PLUGINS_graphics= aalib cairo gdkpixbuf gl jpeg kms libcaca libvisual \ + opencv openexr openjpeg png qt rsvg vulkan webp zbar +_GST1_PLUGINS_multimedia= aom assrender bad dash dts dv dvd dvdread \ + editing-services gnonlin good hls kate libav libde265 \ + mpeg2dec mpeg2enc mplex mm openh264 resindvd rtmp \ + smoothstreaming theora ttml ugly v4l2 vpx x264 x265 +_GST1_PLUGINS_net= libmms srtp +_GST1_PLUGINS_security= dtls +_GST1_PLUGINS_sysutils= cdio hal +_GST1_PLUGINS_www= neon +_GST1_PLUGINS_x11= x ximagesrc +_GST1_PLUGINS_x11-toolkits= gtk gtk4 pango + +# == Unversioned information + +# Gather all available plugins for the chosen version +_GST_PLUGINS_BASE= bad core good ugly libgstreamer plugins +_GST_PLUGINS_VER:= ${_GST${_GST_VER}_CATEGORIES:S/^/\${_GST${_GST_VER}_PLUGINS_/:S/$/}/} + +_GST_VERSION= ${_GST${_GST_VER}_VERSION} + +# List of all available components +_USE_GSTREAMER_ALL= ${_GST_PLUGINS_BASE} \ + ${_GST_PLUGINS_VER} + +#== Dependency setup + +#==== Top-level components + +gst-plugins_PORT= multimedia/gstreamer${_GST_VER}-plugins +gst-plugins_IMPL= # empty +gst-plugins_SUFFIX= # + +gst-bad_PORT= multimedia/gstreamer${_GST_VER}-plugins-bad +gst-bad_IMPL= # + +gst-core_PORT= multimedia/gstreamer${_GST_VER}-plugins-core +gst-core_IMPL= # +gst-core_GST1_VERSION= 1.16 +gst-core_VERSION= ${gst-core_GST${_GST_VER}_VERSION} + +gst-good_PORT= multimedia/gstreamer${_GST_VER}-plugins-good +gst-good_IMPL= # + +gst-ugly_PORT= multimedia/gstreamer${_GST_VER}-plugins-ugly +gst-ugly_IMPL= # + +gst-libgstreamer_LIB= libgstreamer${_GST${_GST_VER}_LIB_VER:D-${_GST${_GST_VER}_LIB_VER}}.so +gst-libgstreamer_PORT= multimedia/gstreamer${_GST_VER} + +#==== Audio Plugins Section + +gst-a52dec_PORT= audio/gstreamer${_GST_VER}-plugins-a52dec +gst-a52dec_IMPL= ugly + +gst-amrnb_PORT= audio/gstreamer${_GST_VER}-plugins-amrnb +gst-amrnb_IMPL= ugly + +gst-amrwbdec_PORT= audio/gstreamer${_GST_VER}-plugins-amrwbdec +gst-amrwbdec_IMPL= ugly + +gst-bs2b_PORT= audio/gstreamer${_GST_VER}-plugins-bs2b +gst-bs2b_IMPL= bad + +gst-cdparanoia_PORT= audio/gstreamer${_GST_VER}-plugins-cdparanoia +gst-cdparanoia_IMPL= # + +gst-chromaprint_PORT= audio/gstreamer${_GST_VER}-plugins-chromaprint +gst-chromeprint_IMPL= bad + +gst-faac_PORT= audio/gstreamer${_GST_VER}-plugins-faac +gst-faac_IMPL= bad + +gst-faad_PORT= audio/gstreamer${_GST_VER}-plugins-faad +gst-faad_IMPL= bad + +gst-flac_PORT= audio/gstreamer${_GST_VER}-plugins-flac +gst-flac_IMPL= good + +gst-flite_PORT= audio/gstreamer${_GST_VER}-plugins-flite +gst-flite_IMPL= bad + +gst-gme_PORT= audio/gstreamer${_GST_VER}-plugins-gme +gst-gme_IMPL= bad + +gst-gsm_PORT= audio/gstreamer${_GST_VER}-plugins-gsm +gst-gsm_IMPL= bad + +gst-hal_PORT= sysutils/gstreamer${_GST_VER}-plugins-hal +gst-hal_IMPL= good + +gst-jack_PORT= audio/gstreamer${_GST_VER}-plugins-jack +gst-jack_IMPL= good + +gst-ladspa_PORT= audio/gstreamer${_GST_VER}-plugins-ladspa +gst-ladspa_IMPL= bad + +gst-lame_PORT= audio/gstreamer${_GST_VER}-plugins-lame +gst-lame_IMPL= ugly + +gst-lv2_PORT= audio/gstreamer${_GST_VER}-plugins-lv2 +gst-lv2_IMPL= bad + +gst-modplug_PORT= audio/gstreamer${_GST_VER}-plugins-modplug +gst-modplug_IMPL= bad + +gst-mpg123_PORT= audio/gstreamer${_GST_VER}-plugins-mpg123 +gst-mpg123_IMPL= ugly + +gst-musepack_PORT= audio/gstreamer${_GST_VER}-plugins-musepack +gst-musepack_IMPL= bad + +gst-neon_PORT= www/gstreamer${_GST_VER}-plugins-neon +gst-neon_IMPL= bad + +gst-ogg_PORT= audio/gstreamer${_GST_VER}-plugins-ogg +gst-ogg_IMPL= # + +gst-opus_PORT= audio/gstreamer${_GST_VER}-plugins-opus +gst-opus_IMPL= # + +gst-pulse_PORT= audio/gstreamer${_GST_VER}-plugins-pulse +gst-pulse_IMPL= good + +gst-shout2_PORT= audio/gstreamer${_GST_VER}-plugins-shout2 +gst-shout2_IMPL= good + +gst-sidplay_PORT= audio/gstreamer${_GST_VER}-plugins-sidplay +gst-sidplay_IMPL= ugly + +gst-sndio_PORT= audio/gstreamer${_GST_VER}-plugins-sndio +gst-sndio_IMPL= # + +gst-sndfile_PORT= audio/gstreamer${_GST_VER}-plugins-sndfile +gst-sndfile_IMPL= bad + +gst-soundtouch_PORT= audio/gstreamer${_GST_VER}-plugins-soundtouch +gst-soundtouch_IMPL= bad + +gst-speex_PORT= audio/gstreamer${_GST_VER}-plugins-speex +gst-speex_IMPL= good + +gst-taglib_PORT= audio/gstreamer${_GST_VER}-plugins-taglib +gst-taglib_IMPL= good + +gst-twolame_PORT= audio/gstreamer${_GST_VER}-plugins-twolame +gst-twolame_IMPL= ugly + +gst-vorbis_PORT= audio/gstreamer${_GST_VER}-plugins-vorbis +gst-vorbis_IMPL= # + +gst-wavpack_PORT= audio/gstreamer${_GST_VER}-plugins-wavpack +gst-wavpack_IMPL= good + +gst-webrtcdsp_PORT= audio/gstreamer${_GST_VER}-plugins-webrtcdsp +gst-webrtcdsp_IMPL= bad + +#==== comms plugin section + +gst-spandsp_PORT= comms/gstreamer${_GST_VER}-plugins-spandsp +gst-spandsp_IMPL= bad + +#==== devel plugin section + +gst-soup_PORT= devel/gstreamer${_GST_VER}-plugins-soup +gst-soup_IMPL= good + +#==== ftp plugin section + +gst-curl_PORT= ftp/gstreamer${_GST_VER}-plugins-curl +gst-curl_IMPL= bad + +#==== graphics plugin section + +gst-aalib_PORT= graphics/gstreamer${_GST_VER}-plugins-aalib +gst-aalib_IMPL= good + +gst-aom_PORT= multimedia/gstreamer${_GST_VER}-plugins-aom +gst-aom_IMPL= bad + +gst-assrender_PORT= multimedia/gstreamer${_GST_VER}-plugins-assrender +gst-assrender_IMPL= bad + +gst-cairo_PORT= graphics/gstreamer${_GST_VER}-plugins-cairo +gst-cairo_IMPL= good + +gst-gdkpixbuf_PORT= graphics/gstreamer${_GST_VER}-plugins-gdkpixbuf +gst-gdkpixbuf_IMPL= good + +gst-gl_PORT= graphics/gstreamer${_GST_VER}-plugins-gl +gst-gl_IMPL= bad + +gst-jpeg_PORT= graphics/gstreamer${_GST_VER}-plugins-jpeg +gst-jpeg_IMPL= good + +gst-kms_PORT= graphics/gstreamer${_GST_VER}-plugins-kms +gst-kms_IMPL= bad + +gst-libcaca_PORT= graphics/gstreamer${_GST_VER}-plugins-libcaca +gst-libcaca_IMPL= good + +gst-libvisual_PORT= graphics/gstreamer${_GST_VER}-plugins-libvisual +gst-libvisual_IMPL= # + +gst-opencv_PORT= graphics/gstreamer${_GST_VER}-plugins-opencv +gst-opencv_IMPL= bad + +gst-openexr_PORT= graphics/gstreamer${_GST_VER}-plugins-openexr +gst-openexr_IMPL= bad + +gst-openjpeg_PORT= graphics/gstreamer${_GST_VER}-plugins-openjpeg +gst-openjpeg_IMPL= bad + +gst-openmpt_PORT= audio/gstreamer${_GST_VER}-plugins-openmpt +gst-openmpt_IMPL= bad + +gst-png_PORT= graphics/gstreamer${_GST_VER}-plugins-png +gst-png_IMPL= good + +gst-qt_PORT= graphics/gstreamer${_GST_VER}-plugins-qt +gst-qt_IMPL= good + +gst-rsvg_PORT= graphics/gstreamer${_GST_VER}-plugins-rsvg +gst-rsvg_IMPL= bad + +gst-webp_PORT= graphics/gstreamer${_GST_VER}-plugins-webp +gst-webp_IMPL= bad + +gst-zbar_PORT= graphics/gstreamer${_GST_VER}-plugins-zbar +gst-zbar_IMPL= bad + +#==== multimedia plugins section + +gst-dash_PORT= multimedia/gstreamer${_GST_VER}-plugins-dash +gst-dash_IMPL= bad + +gst-dvdread_PORT= multimedia/gstreamer${_GST_VER}-plugins-dvdread +gst-dvdread_IMPL= ugly + +gst-editing-services_PORT= multimedia/gstreamer${_GST_VER}-editing-services +gst-editing-services_SUFFIX= # +gst-editing-services_IMPL= # + +gst-dts_PORT= multimedia/gstreamer${_GST_VER}-plugins-dts +gst-dts_IMPL= bad + +gst-dv_PORT= multimedia/gstreamer${_GST_VER}-plugins-dv +gst-dv_IMPL= good + +gst-dvd_PORT= multimedia/gstreamer${_GST_VER}-plugins-dvd +gst-dvd_IMPL= ugly + +gst-gnonlin_PORT= multimedia/gstreamer${_GST_VER}-plugins-gnonlin +gst-gnonlin_IMPL= good + +gst-hls_PORT= multimedia/gstreamer${_GST_VER}-plugins-hls +gst-hls_IMPL= bad + +gst-kate_PORT= multimedia/gstreamer${_GST_VER}-plugins-kate +gst-kate_IMPL= bad + +gst-libav_PORT= multimedia/gstreamer${_GST_VER}-libav +gst-libav_SUFFIX= # +gst-libav_IMPL= # + +gst-libde265_PORT= multimedia/gstreamer${_GST_VER}-plugins-libde265 +gst-libde265_IMPL= bad + +gst-mm_PORT= multimedia/gstreamermm +gst-mm_PREFIX= gstreamer +gst-mm_SUFFIX= # +gst-mm_IMPL= # +gst-mm_GST1_VERSION= 1.10.0 +gst-mm_VERSION= ${gst-mm_GST${_GST_VER}_VERSION} + +gst-mpeg2dec_PORT= multimedia/gstreamer${_GST_VER}-plugins-mpeg2dec +gst-mpeg2dec_IMPL= ugly + +gst-mpeg2enc_PORT= multimedia/gstreamer${_GST_VER}-plugins-mpeg2enc +gst-mpeg2enc_IMPL= bad + +gst-mplex_PORT= multimedia/gstreamer${_GST_VER}-plugins-mplex +gst-mplex_IMPL= bad + +gst-openh264_PORT= multimedia/gstreamer${_GST_VER}-plugins-openh264 +gst-openh264_IMPL= bad + +gst-rtmp_PORT= multimedia/gstreamer${_GST_VER}-plugins-rtmp +gst-rtmp_IMPL= bad + +gst-smoothstreaming_PORT= multimedia/gstreamer${_GST_VER}-plugins-smoothstreaming +gst-smoothstreaming_IMPL= bad + +gst-ttml_PORT= multimedia/gstreamer${_GST_VER}-plugins-ttml +gst-ttml_IMPL= bad + +gst-v4l2_PORT= multimedia/gstreamer${_GST_VER}-plugins-v4l2 +gst-v4l2_IMPL= good + +# hmmm +gst-vaapi_PORT= multimedia/gstreamer-vaapi +gst-vaapi_IMPL= bad + +gst-vpx_PORT= multimedia/gstreamer${_GST_VER}-plugins-vpx +gst-vpx_IMPL= good + +gst-vulkan_PORT= graphics/gstreamer${_GST_VER}-plugins-vulkan +gst-vulkan_IMPL= bad + +gst-resindvd_PORT= multimedia/gstreamer${_GST_VER}-plugins-resindvd +gst-resindvd_IMPL= bad + +gst-theora_PORT= multimedia/gstreamer${_GST_VER}-plugins-theora +gst-theora_IMPL= # + +gst-x264_PORT= multimedia/gstreamer${_GST_VER}-plugins-x264 +gst-x264_IMPL= ugly + +gst-x265_PORT= multimedia/gstreamer${_GST_VER}-plugins-x265 +gst-x265_IMPL= bad + +#==== Net Plugins Section + +gst-libmms_PORT= net/gstreamer${_GST_VER}-plugins-libmms +gst-libmms_IMPL= bad + +gst-srtp_PORT= net/gstreamer${_GST_VER}-plugins-srtp +gst-srtp_IMPL= bad + +#==== security plugins section + +gst-dtls_PORT= security/gstreamer${_GST_VER}-plugins-dtls +gst-dtls_IMPL= bad + +#==== sysutils plugins section + +gst-cdio_PORT= sysutils/gstreamer${_GST_VER}-plugins-cdio +gst-cdio_IMPL= ugly + +#==== x11 plugins section + +gst-x_PORT= x11/gstreamer${_GST_VER}-plugins-x +gst-x_IMPL= # + +gst-ximagesrc_PORT= x11/gstreamer${_GST_VER}-plugins-ximagesrc +gst-ximagesrc_IMPL= good + +#==== x11-toolkits plugins section + +gst-gtk_PORT= x11-toolkits/gstreamer${_GST_VER}-plugins-gtk +gst-gtk_IMPL= bad + +gst-gtk4_PORT= x11-toolkits/gstreamer${_GST_VER}-plugins-gtk4 +gst-gtk4_IMPL= good + +gst-pango_PORT= x11-toolkits/gstreamer${_GST_VER}-plugins-pango +gst-pango_IMPL= # + +#== Dependency creation + +_GST_BR_DEPENDS= # +_GST_LIB_DEPENDS= # + +USE_GSTREAMER?= # +# everything wants this +USE_GSTREAMER+= libgstreamer +. if ${PORTDIRNAME} != gstreamer${_GST_VER}-plugins +USE_GSTREAMER+= plugins +. endif + +# Gather all Impl values +_GST_IMPL_LIST:= ${USE_GSTREAMER:S/^/\${gst-/:S/$/_IMPL}/} + +# Combine the wanted copmonents and the required implementations +_USE_GSTREAMER= ${USE_GSTREAMER} \ + ${_GST_IMPL_LIST} + +. for component in ${_USE_GSTREAMER:O:u} +# Fill in the common default component values +gst-${component}_VERSION?= ${_GST_VERSION} +gst-${component}_NAME?= ${component} +gst-${component}_PREFIX?= gstreamer${_GST_VER}- +gst-${component}_SUFFIX?= plugins- +gst-${component}_PKG?= ${gst-${component}_PREFIX}${gst-${component}_SUFFIX}${gst-${component}_NAME} + +. if empty(_USE_GSTREAMER_ALL:M${component}) +IGNORE= unknown gstreamer component '${component}' for gstreamer:${_GST_VER} +. endif +. if !empty(gst-${component}_LIB) +_GST_LIB_DEPENDS+= ${gst-${component}_LIB}:${gst-${component}_PORT} +. else +_GST_BR_DEPENDS+= ${gst-${component}_PKG}>=${gst-${component}_VERSION}:${gst-${component}_PORT} +. endif +. endfor + +LIB_DEPENDS+= ${_GST_LIB_DEPENDS:O:u} +BUILD_DEPENDS+= ${_GST_BR_DEPENDS:O:u} +RUN_DEPENDS+= ${_GST_BR_DEPENDS:O:u} + +.endif diff --git a/Mk/bsd.gstreamer.mk b/Mk/bsd.gstreamer.mk deleted file mode 100644 index 7e7b7d85d9e5..000000000000 --- a/Mk/bsd.gstreamer.mk +++ /dev/null @@ -1,562 +0,0 @@ -#-*- tab-width: 4; -*- -# ex:ts=4 -# -# bsd.gstreamer.mk - Support for gstreamer-plugins-based ports. -# -# Created by: Michael Johnson <ahze@FreeBSD.org> - -.if !defined(_POSTMKINCLUDED) && !defined(Gstreamer_Pre_Include) - -Gstreamer_Include_MAINTAINER= multimedia@FreeBSD.org -Gstreamer_Pre_Include= bsd.gstreamer.mk - -.endif - -# Ports can use the following: -# -# For Gstreamer 1.x the same rules apply but instead of -# USE_GSTREAMER=, USE_GSTREAMER1= is used. -# -# If you want to use USE_GSTREAMER after <bsd.port.pre.mk> -# you must follow one of the examples listed below -# -# .include <bsd.port.options.mk> -# .if defined(WITH_VORBIS) -# USE_GSTREAMER= vorbis -# .endif -# -# or -# USE_GSTREAMER= yes -# .include <bsd.port.options.mk> -# .if defined(WITH_FAAD) -# USE_GSTREAMER+= faad -# .endif -# .include <bsd.port.pre.mk> -# -# USE_GSTREAMER=yes will always add a dependency to -# gstreamer-plugins -# -# "Normal" dependencies and variables -# - -GSTREAMER1_PORT= ${PORTSDIR}/multimedia/gstreamer1-plugins -_GST1_LIB_BASE= ${LOCALBASE}/lib/gstreamer-${GST1_VERSION} -GST1_VERSION= 1.4 -GST1_MINOR_VERSION= .0 -GST1_SHLIB_VERSION= 0 -GST1_MINIMAL_VERSION= .0 - -# These are the current supported gstreamer-plugins modules: -# Supported plugins by both 0.10 and 1.0. -_GSTREAMER_PLUGINS= \ - a52dec \ - aalib \ - amrnb \ - amrwbdec \ - cairo \ - cdio \ - cdparanoia \ - dts \ - dv \ - faac \ - faad \ - flac \ - flite \ - gdkpixbuf \ - gl \ - gme \ - gnonlin \ - gsm \ - jack \ - jpeg \ - ladspa \ - lame \ - libcaca \ - libmms \ - libvisual \ - mpeg2dec \ - mpeg2enc \ - musepack \ - neon \ - ogg \ - opus \ - pango \ - pulse \ - resindvd \ - shout2 \ - sndfile \ - sndio \ - sidplay \ - soundtouch \ - soup \ - speex \ - taglib \ - theora \ - twolame \ - v4l2 \ - vorbis \ - wavpack \ - x264 - -# plugins only in 1.0 -.if defined(USE_GSTREAMER1) -_GSTREAMER_PLUGINS+= \ - aom \ - assrender \ - bs2b \ - chromaprint \ - curl \ - dash \ - dtls \ - dvdread \ - editing-services \ - gtk \ - gtk4 \ - hls \ - kate \ - kms \ - libav \ - libde265 \ - lv2 \ - mm \ - modplug \ - mpg123 \ - mplex \ - opencv \ - openexr \ - openh264 \ - openjpeg \ - openmpt \ - png \ - qt \ - rsvg \ - rtmp \ - smoothstreaming \ - spandsp \ - srtp \ - ttml \ - vpx \ - vulkan \ - webp \ - webrtcdsp \ - x \ - x265 \ - ximagesrc \ - zbar -# vaapi -.endif # USE_GSTREAMER1 - -# other plugins -_USE_GSTREAMER_ALL= bad core good ugly yes ${_GSTREAMER_PLUGINS} - -#--------------------------------------------------------------------------# - -core_DEPENDS= multimedia/gstreamer-plugins-core -core_IMPL= # - -yes_DEPENDS= multimedia/gstreamer-plugins -yes_NAME= gstreamer-plugins -yes_NAME10= gstreamer1-plugins -yes_GST_PREFIX= # empty -yes_IMPL= # empty - -# XXX check if IMPL is correct for both 0.10 and 1.0 - -#-- audio plugins section -------------------------------------------------# - -# Audio Plugins Section -a52dec_DEPENDS= audio/gstreamer-plugins-a52dec -a52dec_IMPL= ugly - -amrnb_DEPENDS= audio/gstreamer-plugins-amrnb -amrnb_IMPL= ugly - -amrwbdec_DEPENDS= audio/gstreamer-plugins-amrwbdec -amrwbdec_IMPL= ugly - -bs2b_DEPENDS= audio/gstreamer-plugins-bs2b -bs2b_IMPL= bad - -cdparanoia_DEPENDS= audio/gstreamer-plugins-cdparanoia -cdparanoia_IMPL= # - -chromaprint_DEPENDS= audio/gstreamer-plugins-chromaprint -chromeprint_IMPL= bad - -faac_DEPENDS= audio/gstreamer-plugins-faac -faac_IMPL= bad - -faad_DEPENDS= audio/gstreamer-plugins-faad -faad_IMPL= bad - -flac_DEPENDS= audio/gstreamer-plugins-flac -flac_IMPL= good - -flite_DEPENDS= audio/gstreamer-plugins-flite -flite_IMPL= bad - -gme_DEPENDS= audio/gstreamer-plugins-gme -gme_IMPL= bad - -gsm_DEPENDS= audio/gstreamer-plugins-gsm -gsm_IMPL= bad - -hal_DEPENDS= sysutils/gstreamer-plugins-hal -hal_IMPL= good - -jack_DEPENDS= audio/gstreamer-plugins-jack -jack_IMPL= good - -ladspa_DEPENDS= audio/gstreamer-plugins-ladspa -ladspa_IMPL= bad - -lame_DEPENDS= audio/gstreamer-plugins-lame -lame_IMPL= ugly - -lv2_DEPENDS= audio/gstreamer-plugins-lv2 -lv2_IMPL= bad - -modplug_DEPENDS= audio/gstreamer-plugins-modplug -modplug_IMPL= bad - -mpg123_DEPENDS= audio/gstreamer-plugins-mpg123 -mpg123_IMPL= ugly - -musepack_DEPENDS= audio/gstreamer-plugins-musepack -musepack_IMPL= bad - -neon_DEPENDS= www/gstreamer-plugins-neon -neon_IMPL= bad - -ogg_DEPENDS= audio/gstreamer-plugins-ogg -ogg_IMPL= # - -opus_DEPENDS= audio/gstreamer-plugins-opus -opus_IMPL= # - -pulse_DEPENDS= audio/gstreamer-plugins-pulse -pulse_IMPL= good - -shout2_DEPENDS= audio/gstreamer-plugins-shout2 -shout2_IMPL= good - -sidplay_DEPENDS= audio/gstreamer-plugins-sidplay -sidplay_IMPL= ugly - -sndio_DEPENDS= audio/gstreamer-plugins-sndio -sndio_IMPL= # - -sndfile_DEPENDS= audio/gstreamer-plugins-sndfile -sndfile_IMPL= bad - -soundtouch_DEPENDS= audio/gstreamer-plugins-soundtouch -soundtouch_IMPL= bad - -speex_DEPENDS= audio/gstreamer-plugins-speex -speex_IMPL= good - -taglib_DEPENDS= audio/gstreamer-plugins-taglib -taglib_IMPL= good - -twolame_DEPENDS= audio/gstreamer-plugins-twolame -twolame_IMPL= ugly - -vorbis_DEPENDS= audio/gstreamer-plugins-vorbis -vorbis_IMPL= # - -wavpack_DEPENDS= audio/gstreamer-plugins-wavpack -wavpack_IMPL= good - -webrtcdsp_DEPENDS= audio/gstreamer-plugins-webrtcdsp -webrtcdsp_IMPL= bad - -#-- comms plugin section --------------------------------------------------# - -spandsp_DEPENDS= comms/gstreamer-plugins-spandsp -spandsp_IMPL= bad - -#-- devel plugin section --------------------------------------------------# - -soup_DEPENDS= devel/gstreamer-plugins-soup -soup_IMPL= good - -#-- ftp plugin section ----------------------------------------------------# - -curl_DEPENDS= ftp/gstreamer-plugins-curl -curl_IMPL= bad - -#-- graphics plugin section -----------------------------------------------# - -aalib_DEPENDS= graphics/gstreamer-plugins-aalib -aalib_IMPL= good - -aom_DEPENDS= multimedia/gstreamer-plugins-aom -aom_IMPL= bad - -assrender_DEPENDS= multimedia/gstreamer-plugins-assrender -assrender_IMPL= bad - -cairo_DEPENDS= graphics/gstreamer-plugins-cairo -cairo_IMPL= good - -gdkpixbuf_DEPENDS= graphics/gstreamer-plugins-gdkpixbuf -gdkpixbuf_IMPL= good - -gl_DEPENDS= graphics/gstreamer-plugins-gl -gl_IMPL= bad - -jpeg_DEPENDS= graphics/gstreamer-plugins-jpeg -jpeg_IMPL= good - -kms_DEPENDS= graphics/gstreamer-plugins-kms -kms_IMPL= bad - -libcaca_DEPENDS= graphics/gstreamer-plugins-libcaca -libcaca_IMPL= good - -libvisual_DEPENDS= graphics/gstreamer-plugins-libvisual -libvisual_IMPL= # - -opencv_DEPENDS= graphics/gstreamer-plugins-opencv -opencv_IMPL= bad - -openexr_DEPENDS= graphics/gstreamer-plugins-openexr -openexr_IMPL= bad - -openjpeg_DEPENDS= graphics/gstreamer-plugins-openjpeg -openjpeg_IMPL= bad - -openmpt_DEPENDS= audio/gstreamer-plugins-openmpt -openmpt_IMPL= bad - -png_DEPENDS= graphics/gstreamer-plugins-png -png_IMPL= good - -qt_DEPENDS= graphics/gstreamer-plugins-qt -qt_IMPL= good - -rsvg_DEPENDS= graphics/gstreamer-plugins-rsvg -rsvg_IMPL= bad - -webp_DEPENDS= graphics/gstreamer-plugins-webp *** 2511 LINES SKIPPED ***