[arch-commits] Commit in gstreamer/repos (7 files)

Jan Steffens heftig at gemini.archlinux.org
Wed Jun 15 23:32:31 UTC 2022


    Date: Wednesday, June 15, 2022 @ 23:32:31
  Author: heftig
Revision: 448748

archrelease: copy trunk to staging-x86_64

Added:
  gstreamer/repos/staging-x86_64/
  gstreamer/repos/staging-x86_64/0001-meson-Allow-building-with-system-orc.patch
    (from rev 448747, gstreamer/trunk/0001-meson-Allow-building-with-system-orc.patch)
  gstreamer/repos/staging-x86_64/0002-HACK-meson-Disable-broken-tests.patch
    (from rev 448747, gstreamer/trunk/0002-HACK-meson-Disable-broken-tests.patch)
  gstreamer/repos/staging-x86_64/0003-HACK-meson-Work-around-broken-detection-of-underscor.patch
    (from rev 448747, gstreamer/trunk/0003-HACK-meson-Work-around-broken-detection-of-underscor.patch)
  gstreamer/repos/staging-x86_64/0004-opencv-Allow-building-against-4.6.x.patch
    (from rev 448747, gstreamer/trunk/0004-opencv-Allow-building-against-4.6.x.patch)
  gstreamer/repos/staging-x86_64/PKGBUILD
    (from rev 448747, gstreamer/trunk/PKGBUILD)
  gstreamer/repos/staging-x86_64/gstreamer.install
    (from rev 448747, gstreamer/trunk/gstreamer.install)

-----------------------------------------------------------------+
 0001-meson-Allow-building-with-system-orc.patch                 |   22 
 0002-HACK-meson-Disable-broken-tests.patch                      |   58 
 0003-HACK-meson-Work-around-broken-detection-of-underscor.patch |   24 
 0004-opencv-Allow-building-against-4.6.x.patch                  |  135 +
 PKGBUILD                                                        |  742 ++++++++++
 gstreamer.install                                               |    7 
 6 files changed, 988 insertions(+)

Copied: gstreamer/repos/staging-x86_64/0001-meson-Allow-building-with-system-orc.patch (from rev 448747, gstreamer/trunk/0001-meson-Allow-building-with-system-orc.patch)
===================================================================
--- staging-x86_64/0001-meson-Allow-building-with-system-orc.patch	                        (rev 0)
+++ staging-x86_64/0001-meson-Allow-building-with-system-orc.patch	2022-06-15 23:32:31 UTC (rev 448748)
@@ -0,0 +1,22 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <heftig at archlinux.org>
+Date: Mon, 6 Jun 2022 00:30:08 +0200
+Subject: [PATCH] meson: Allow building with system orc
+
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 9ea00429bcb5..0481dbcbe512 100644
+--- a/meson.build
++++ b/meson.build
+@@ -112,7 +112,7 @@ elif build_system == 'darwin'
+   subproject('macos-bison-binary')
+ endif
+ 
+-orc_subproject = subproject('orc', required: get_option('orc'))
++orc_subproject = subproject('orc', required: false)
+ 
+ foreach custom_subproj: get_option('custom_subprojects').split(',')
+     if custom_subproj != ''

Copied: gstreamer/repos/staging-x86_64/0002-HACK-meson-Disable-broken-tests.patch (from rev 448747, gstreamer/trunk/0002-HACK-meson-Disable-broken-tests.patch)
===================================================================
--- staging-x86_64/0002-HACK-meson-Disable-broken-tests.patch	                        (rev 0)
+++ staging-x86_64/0002-HACK-meson-Disable-broken-tests.patch	2022-06-15 23:32:31 UTC (rev 448748)
@@ -0,0 +1,58 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <heftig at archlinux.org>
+Date: Mon, 6 Jun 2022 00:30:08 +0200
+Subject: [PATCH] HACK: meson: Disable broken tests
+
+---
+ subprojects/gst-editing-services/meson.build        | 1 -
+ subprojects/gst-python/meson.build                  | 1 -
+ subprojects/gst-rtsp-server/tests/check/meson.build | 1 -
+ subprojects/gstreamer-vaapi/meson.build             | 1 -
+ 4 files changed, 4 deletions(-)
+
+diff --git a/subprojects/gst-editing-services/meson.build b/subprojects/gst-editing-services/meson.build
+index 04373faa0df3..c4ef81439052 100644
+--- a/subprojects/gst-editing-services/meson.build
++++ b/subprojects/gst-editing-services/meson.build
+@@ -274,7 +274,6 @@ subdir('plugins')
+ if not get_option('tools').disabled()
+   subdir('tools')
+ endif
+-subdir('tests')
+ if not get_option('examples').disabled()
+   subdir('examples')
+ endif
+diff --git a/subprojects/gst-python/meson.build b/subprojects/gst-python/meson.build
+index 707bde7d96ea..e1fd643e5cd6 100644
+--- a/subprojects/gst-python/meson.build
++++ b/subprojects/gst-python/meson.build
+@@ -104,5 +104,4 @@ if not get_option('plugin').disabled()
+   endif
+ endif
+ if not get_option('tests').disabled()
+-  subdir('testsuite')
+ endif
+diff --git a/subprojects/gst-rtsp-server/tests/check/meson.build b/subprojects/gst-rtsp-server/tests/check/meson.build
+index 229af32f8117..b9372c125d77 100644
+--- a/subprojects/gst-rtsp-server/tests/check/meson.build
++++ b/subprojects/gst-rtsp-server/tests/check/meson.build
+@@ -27,7 +27,6 @@ rtsp_server_tests = [
+   'gst/mediafactory',
+   'gst/media',
+   'gst/permissions',
+-  'gst/rtspserver',
+   'gst/sessionmedia',
+   'gst/sessionpool',
+   'gst/stream',
+diff --git a/subprojects/gstreamer-vaapi/meson.build b/subprojects/gstreamer-vaapi/meson.build
+index 61ddc86f5dbe..8732d714abe8 100644
+--- a/subprojects/gstreamer-vaapi/meson.build
++++ b/subprojects/gstreamer-vaapi/meson.build
+@@ -202,7 +202,6 @@ plugins = []
+ 
+ subdir('gst-libs')
+ subdir('gst')
+-subdir('tests')
+ subdir('docs')
+ 
+ # Set release date

Copied: gstreamer/repos/staging-x86_64/0003-HACK-meson-Work-around-broken-detection-of-underscor.patch (from rev 448747, gstreamer/trunk/0003-HACK-meson-Work-around-broken-detection-of-underscor.patch)
===================================================================
--- staging-x86_64/0003-HACK-meson-Work-around-broken-detection-of-underscor.patch	                        (rev 0)
+++ staging-x86_64/0003-HACK-meson-Work-around-broken-detection-of-underscor.patch	2022-06-15 23:32:31 UTC (rev 448748)
@@ -0,0 +1,24 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <heftig at archlinux.org>
+Date: Mon, 6 Jun 2022 00:30:08 +0200
+Subject: [PATCH] HACK: meson: Work around broken detection of underscore
+ prefixes
+
+See: https://github.com/mesonbuild/meson/issues/5482
+---
+ subprojects/gst-plugins-good/gst/deinterlace/meson.build | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/subprojects/gst-plugins-good/gst/deinterlace/meson.build b/subprojects/gst-plugins-good/gst/deinterlace/meson.build
+index e86bebe613fc..96a961107ab6 100644
+--- a/subprojects/gst-plugins-good/gst/deinterlace/meson.build
++++ b/subprojects/gst-plugins-good/gst/deinterlace/meson.build
+@@ -54,8 +54,6 @@ if have_nasm and host_cpu == 'x86_64'
+   # https://github.com/mesonbuild/meson/issues/5482
+   if ['darwin', 'ios'].contains(host_system)
+     asm_prefix_def = '-DPREFIX'
+-  elif cc.symbols_have_underscore_prefix()
+-    asm_prefix_def = '-DPREFIX'
+   else
+     asm_prefix_def = '-UPREFIX'
+   endif

Copied: gstreamer/repos/staging-x86_64/0004-opencv-Allow-building-against-4.6.x.patch (from rev 448747, gstreamer/trunk/0004-opencv-Allow-building-against-4.6.x.patch)
===================================================================
--- staging-x86_64/0004-opencv-Allow-building-against-4.6.x.patch	                        (rev 0)
+++ staging-x86_64/0004-opencv-Allow-building-against-4.6.x.patch	2022-06-15 23:32:31 UTC (rev 448748)
@@ -0,0 +1,135 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <heftig at archlinux.org>
+Date: Mon, 6 Jun 2022 00:30:08 +0200
+Subject: [PATCH] opencv: Allow building against 4.6.x
+
+Replace the broken version checks with one modeled after
+`GLIB_CHECK_VERSION`.
+---
+ .../gst-plugins-bad/ext/opencv/gstcvtracker.cpp    | 14 +++++++-------
+ .../gst-plugins-bad/ext/opencv/gstcvtracker.h      | 11 +++++++++--
+ subprojects/gst-plugins-bad/ext/opencv/meson.build |  2 +-
+ 3 files changed, 17 insertions(+), 10 deletions(-)
+
+diff --git a/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.cpp b/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.cpp
+index 492c9cf9b877..0c5dfda35f0a 100644
+--- a/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.cpp
++++ b/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.cpp
+@@ -233,7 +233,7 @@ gst_cvtracker_init (GstCVTracker * filter)
+   filter->y = DEFAULT_PROP_INITIAL_Y;
+   filter->width = DEFAULT_PROP_INITIAL_WIDTH;
+   filter->height = DEFAULT_PROP_INITIAL_HEIGHT;
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+   filter->tracker = cv::legacy::upgradeTrackingAPI(
+       cv::legacy::TrackerMedianFlow::create());
+ #else
+@@ -283,40 +283,40 @@ create_cvtracker (GstCVTracker * filter)
+ {
+   switch (filter->algorithm) {
+     case GST_OPENCV_TRACKER_ALGORITHM_BOOSTING:
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+       filter->tracker = cv::legacy::upgradeTrackingAPI(
+           cv::legacy::TrackerBoosting::create());
+ #else
+       filter->tracker = cv::TrackerBoosting::create();
+ #endif
+       break;
+     case GST_OPENCV_TRACKER_ALGORITHM_CSRT:
+       filter->tracker = cv::TrackerCSRT::create ();
+       break;
+     case GST_OPENCV_TRACKER_ALGORITHM_KCF:
+       filter->tracker = cv::TrackerKCF::create ();
+       break;
+     case GST_OPENCV_TRACKER_ALGORITHM_MEDIANFLOW:
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+       filter->tracker = cv::legacy::upgradeTrackingAPI(
+           cv::legacy::TrackerMedianFlow::create());
+ #else
+       filter->tracker = cv::TrackerMedianFlow::create();
+ #endif
+       break;
+     case GST_OPENCV_TRACKER_ALGORITHM_MIL:
+       filter->tracker = cv::TrackerMIL::create ();
+       break;
+     case GST_OPENCV_TRACKER_ALGORITHM_MOSSE:
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+       filter->tracker = cv::legacy::upgradeTrackingAPI(
+           cv::legacy::TrackerMOSSE::create());
+ #else
+       filter->tracker = cv::TrackerMOSSE::create ();
+ #endif
+       break;
+     case GST_OPENCV_TRACKER_ALGORITHM_TLD:
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+       filter->tracker = cv::legacy::upgradeTrackingAPI(
+           cv::legacy::TrackerTLD::create());
+ #else
+@@ -366,19 +366,19 @@ gst_cvtracker_transform_ip (GstOpencvVideoFilter * base,
+   GstMessage *msg;
+ 
+   if (filter->roi.empty ()) {
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+     filter->roi = new (cv::Rect);
+ #else
+     filter->roi = new (cv::Rect2d);
+ #endif
+     filter->roi->x = filter->x;
+     filter->roi->y = filter->y;
+     filter->roi->width = filter->width;
+     filter->roi->height = filter->height;
+     create_cvtracker (filter);
+     filter->tracker->init (img, *filter->roi);
+   } else if (filter->tracker->update (img, *filter->roi)) {
+-#if (!(CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1))
++#if !GST_OPENCV_CHECK_VERSION(4, 5, 1)
+     /* Round values to avoid inconsistencies depending on the OpenCV version. */
+     filter->roi->x = cvRound (filter->roi->x);
+     filter->roi->y = cvRound (filter->roi->y);
+diff --git a/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.h b/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.h
+index d3531efbc593..1a06111d8b03 100644
+--- a/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.h
++++ b/subprojects/gst-plugins-bad/ext/opencv/gstcvtracker.h
+@@ -50,7 +50,14 @@
+ #include <opencv2/core.hpp>
+ #include <opencv2/imgproc.hpp>
+ #include <opencv2/tracking.hpp>
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++
++#define GST_OPENCV_CHECK_VERSION(major,minor,revision) \
++  (CV_VERSION_MAJOR > (major) || \
++   (CV_VERSION_MAJOR == (major) && CV_VERSION_MINOR > (minor)) || \
++   (CV_VERSION_MAJOR == (major) && CV_VERSION_MINOR == (minor) && \
++    CV_VERSION_REVISION >= (revision)))
++
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+ #include <opencv2/tracking/tracking_legacy.hpp>
+ #endif
+ 
+@@ -84,7 +91,7 @@ struct _GstCVTracker
+   gboolean post_debug_info;
+ 
+   cv::Ptr<cv::Tracker> tracker;
+-#if CV_VERSION_MAJOR == 4 && CV_VERSION_MINOR >= 5 && CV_VERSION_REVISION >= 1
++#if GST_OPENCV_CHECK_VERSION(4, 5, 1)
+   cv::Ptr<cv::Rect> roi;
+ #else
+   cv::Ptr<cv::Rect2d> roi;
+diff --git a/subprojects/gst-plugins-bad/ext/opencv/meson.build b/subprojects/gst-plugins-bad/ext/opencv/meson.build
+index 1d86b9092d9d..3962cff90a55 100644
+--- a/subprojects/gst-plugins-bad/ext/opencv/meson.build
++++ b/subprojects/gst-plugins-bad/ext/opencv/meson.build
+@@ -71,7 +71,7 @@ if opencv_found
+ endif
+ 
+ if not opencv_found
+-  opencv_dep = dependency('opencv4', version : ['>= 4.0.0', '< 4.6.0'], required : false)
++  opencv_dep = dependency('opencv4', version : ['>= 4.0.0', '< 4.7.0'], required : false)
+   opencv_found = opencv_dep.found()
+   if opencv_found
+     foreach h : libopencv4_headers

Copied: gstreamer/repos/staging-x86_64/PKGBUILD (from rev 448747, gstreamer/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD	                        (rev 0)
+++ staging-x86_64/PKGBUILD	2022-06-15 23:32:31 UTC (rev 448748)
@@ -0,0 +1,742 @@
+# Maintainer: Jan Alexander Steffens (heftig) <heftig at archlinux.org>
+# Contributor: Jan de Groot <jgc at archlinux.org>
+
+pkgbase=gstreamer
+pkgname=(
+  gstreamer
+  gst-plugins-bad-libs   # Split badaudio first
+  gst-plugins-base-libs
+  gst-plugins-base
+  gst-plugins-good
+  gst-plugins-bad
+  gst-plugin-gtk
+  gst-plugin-msdk
+  gst-plugin-opencv
+  gst-plugin-qmlgl
+  gst-plugin-va
+  gst-plugin-wpe
+  gst-plugins-ugly
+  gst-libav
+  gst-rtsp-server
+  gst-editing-services
+  gstreamer-vaapi
+  gst-python
+  gstreamer-docs
+)
+pkgver=1.20.2
+pkgrel=3
+pkgdesc="Multimedia graph framework"
+url="https://gstreamer.freedesktop.org/"
+arch=(x86_64)
+license=(LGPL)
+makedepends=(
+  # superproject
+  git meson
+
+  # gstreamer
+  valgrind libunwind gobject-introspection bash-completion gtk3 libcap python
+
+  # gst-plugins-base
+  cdparanoia graphene libvisual opus libtheora libxv sdl2 qt5-base qt5-tools
+  zlib libglvnd wayland wayland-protocols libx11 libgudev libdrm mesa orc
+
+  # gst-plugins-good
+  nasm v4l-utils aalib flac jack2 lame libcaca libdv mpg123 libraw1394
+  libavc1394 libiec61883 qt5-declarative qt5-x11extras qt5-wayland libpulse
+  libshout taglib twolame libvpx wavpack cairo libsoup3
+
+  # gst-plugins-bad
+  opencv vulkan-icd-loader vulkan-headers vulkan-validation-layers shaderc
+  libltc bluez-libs libavtp libbs2b bzip2 chromaprint libdca faac faad2
+  libfdk-aac fluidsynth libgme libkate liblrdf ladspa libde265 lilv lv2
+  libmicrodns mjpegtools libmpcdec neon openal libdvdnav rtmpdump sbc soundtouch
+  spandsp libsrtp svt-hevc zvbi libnice webrtc-audio-processing wildmidi
+  zxing-cpp zbar nettle libxml2 gsm libopenmpt wpewebkit libldac libfreeaptx
+  qrencode json-glib libva libxkbcommon-x11
+
+  # gst-plugins-ugly
+  a52dec opencore-amr libcdio libdvdread libmpeg2 libsidplay x264
+
+  # gst-libav
+  ffmpeg
+
+  # gstreamer-vaapi
+  libxrandr
+
+  # gst-python
+  python-gobject
+)
+checkdepends=(xorg-server-xvfb)
+options=(debug)
+_commit=8dbfc89a850d484a27937eb882978251bfce06b3  # tags/1.20.2^0
+source=(
+  "git+https://gitlab.freedesktop.org/gstreamer/gstreamer.git#commit=$_commit"
+  "https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-$pkgver.tar.xz"{,.asc}
+  0001-meson-Allow-building-with-system-orc.patch
+  0002-HACK-meson-Disable-broken-tests.patch
+  0003-HACK-meson-Work-around-broken-detection-of-underscor.patch
+  0004-opencv-Allow-building-against-4.6.x.patch
+)
+sha256sums=('SKIP'
+            'ca70d921cbbba9fe17679b47d2e0db886e0422d37652837a170d76c3f2b4bc53'
+            'SKIP'
+            'de7ae4a8d38be56a2079a0a64d84281758f7aaa3918cd57376dd0c244574cf10'
+            'a88d22b06b8d09f5d7111465c41bbabe13df97d41c1216fc3338ecf4bd13d8d9'
+            '79d3038a0ba0c3958ffa8b5aec8431336b372906c07c0c878c3767bec0acb46f'
+            'd06d390787e8b54dba04f1988af88c9e64e91b25e136559f6651268685f7b906')
+validpgpkeys=(D637032E45B8C6585B9456565D2EEE6F6F349D7C) # Tim Müller <tim at gstreamer-foundation.org>
+
+pkgver() {
+  cd gstreamer
+  git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
+}
+
+prepare() {
+  cd gstreamer
+
+  # Fix linking with system orc
+  git apply -3 ../0001-meson-Allow-building-with-system-orc.patch
+
+  # Disable broken tests
+  git apply -3 ../0002-HACK-meson-Disable-broken-tests.patch
+  
+  # Workaround broken detection of underscore prefixes
+  # https://github.com/mesonbuild/meson/issues/5482
+  git apply -3 ../0003-HACK-meson-Work-around-broken-detection-of-underscor.patch
+
+  # Fix building against opencv 4.6
+  git apply -3 ../0004-opencv-Allow-building-against-4.6.x.patch
+}
+
+build() {
+  local meson_options=(
+    -D devtools=disabled
+    -D doc=disabled
+    -D examples=disabled
+    -D gpl=enabled
+    -D gst-examples=disabled
+    -D libnice=disabled
+    -D vaapi=enabled
+    -D gstreamer:dbghelp=disabled
+    -D gstreamer:gobject-cast-checks=disabled
+    -D gstreamer:package-name="Arch Linux gstreamer $pkgver-$pkgrel"
+    -D gstreamer:package-origin="https://www.archlinux.org/"
+    -D gstreamer:ptp-helper-permissions=capabilities
+    -D gst-plugins-base:gobject-cast-checks=disabled
+    -D gst-plugins-base:package-name="Arch Linux gst-plugins-base $pkgver-$pkgrel"
+    -D gst-plugins-base:package-origin="https://www.archlinux.org/"
+    -D gst-plugins-base:tremor=disabled
+    -D gst-plugins-good:gobject-cast-checks=disabled
+    -D gst-plugins-good:package-name="Arch Linux gst-plugins-good $pkgver-$pkgrel"
+    -D gst-plugins-good:package-origin="https://www.archlinux.org/"
+    -D gst-plugins-good:rpicamsrc=disabled
+    -D gst-plugins-bad:directfb=disabled
+    -D gst-plugins-bad:flite=disabled
+    -D gst-plugins-bad:gobject-cast-checks=disabled
+    -D gst-plugins-bad:gs=disabled
+    -D gst-plugins-bad:iqa=disabled
+    -D gst-plugins-bad:isac=disabled
+    -D gst-plugins-bad:magicleap=disabled
+    -D gst-plugins-bad:onnx=disabled
+    -D gst-plugins-bad:openh264=disabled
+    -D gst-plugins-bad:openni2=disabled
+    -D gst-plugins-bad:opensles=disabled
+    -D gst-plugins-bad:package-name="Arch Linux gst-plugins-bad $pkgver-$pkgrel"
+    -D gst-plugins-bad:package-origin="https://www.archlinux.org/"
+    -D gst-plugins-bad:tinyalsa=disabled
+    -D gst-plugins-bad:voaacenc=disabled
+    -D gst-plugins-bad:voamrwbenc=disabled
+    -D gst-plugins-bad:wasapi2=disabled
+    -D gst-plugins-bad:wasapi=disabled
+    -D gst-plugins-ugly:gobject-cast-checks=disabled
+    -D gst-plugins-ugly:package-name="Arch Linux gst-plugins-ugly $pkgver-$pkgrel"
+    -D gst-plugins-ugly:package-origin="https://www.archlinux.org/"
+    -D gst-libav:package-name="Arch Linux gst-libav $pkgver-$pkgrel"
+    -D gst-libav:package-origin="https://www.archlinux.org/"
+    -D gst-rtsp-server:gobject-cast-checks=disabled
+    -D gst-rtsp-server:package-name="Arch Linux gst-rtsp-server $pkgver-$pkgrel"
+    -D gst-rtsp-server:package-origin="https://www.archlinux.org/"
+    -D gst-editing-services:validate=disabled
+    -D gstreamer-vaapi:package-origin="https://www.archlinux.org/"
+  )
+
+  arch-meson gstreamer build "${meson_options[@]}"
+  meson compile -C build
+}
+
+check() (
+  mkdir -p -m 700 "${XDG_RUNTIME_DIR:=$PWD/runtime-dir}"
+  export XDG_RUNTIME_DIR
+
+  # Flaky due to timeouts
+  xvfb-run -s '-nolisten local' \
+    meson test -C build --print-errorlogs || :
+)
+
+_install() {
+  local src dir
+  for src in "${files[@]}"; do
+    dir="$pkgdir/$(dirname "$src")"
+    mkdir -p "$dir"
+    mv -v "$src" "$dir"
+  done
+}
+
+package_gstreamer() {
+  pkgdesc+=" - core"
+  depends=(libxml2 glib2 libunwind libcap libelf)
+  optdepends=('python: gst-plugins-doc-cache-generator')
+  install=gstreamer.install
+
+  DESTDIR="$srcdir/root" meson install -C build
+
+  cd root; local files=(
+    usr/include/gstreamer-1.0/gst/{base,check,controller,net,*.h}
+    usr/lib/libgst{reamer,base,check,controller,net}-1.0.so*
+    usr/lib/pkgconfig/gstreamer{,-base,-check,-controller,-net}-1.0.pc
+    usr/lib/girepository-1.0/Gst{,Base,Check,Controller,Net}-1.0.typelib
+    usr/share/gir-1.0/Gst{,Base,Check,Controller,Net}-1.0.gir
+
+    usr/lib/gstreamer-1.0/gst-{completion,ptp}-helper
+    usr/lib/gstreamer-1.0/gst-{hotdoc-plugins,plugin}-scanner
+    usr/lib/gstreamer-1.0/gst-plugins-doc-cache-generator
+    usr/lib/gstreamer-1.0/libgstcoreelements.so
+    usr/lib/gstreamer-1.0/libgstcoretracers.so
+
+    usr/share/locale/*/LC_MESSAGES/gstreamer-1.0.mo
+
+    usr/bin/gst-{inspect,launch,stats,tester,typefind}-1.0
+    usr/share/man/man1/gst-{inspect,launch,stats,typefind}-1.0.1
+
+    usr/share/bash-completion/completions/gst-{inspect,launch}-1.0
+    usr/share/bash-completion/helpers/gst
+
+    usr/share/gdb/auto-load/usr/lib/libgstreamer-1.0.so*.py
+    usr/share/gstreamer-1.0/gdb/glib_gobject_helper.py
+    usr/share/gstreamer-1.0/gdb/gst_gdb.py
+
+    usr/share/aclocal/gst-element-check-1.0.m4
+  ); _install
+}
+
+package_gst-plugins-bad-libs() {
+  pkgdesc+=" - bad"
+  depends=(
+    "gst-plugins-base-libs=$pkgver"
+    orc libdrm libx11 libgudev libusb libxkbcommon-x11
+  )
+
+  cd root; local files=(
+    usr/include/gstreamer-1.0/gst/audio/{audio-bad-prelude,gstnonstreamaudiodecoder,gstplanaraudioadapter}.h
+    usr/include/gstreamer-1.0/gst/{basecamerabinsrc,codecparsers,insertbin,interfaces,isoff,mpegts,play,player,sctp,transcoder,uridownloader,vulkan,wayland,webrtc}
+    usr/lib/libgst{adaptivedemux,badaudio,basecamerabinsrc,codecparsers,codecs,insertbin,isoff,mpegts,photography,play,player,sctp,transcoder,uridownloader,vulkan,wayland,webrtc}-1.0.so*
+    usr/lib/pkgconfig/gstreamer-{bad-audio,codecparsers,insertbin,mpegts,photography,play,player,sctp,transcoder,vulkan{,-wayland,-xcb},wayland,webrtc}-1.0.pc
+    usr/lib/girepository-1.0/Gst{BadAudio,Codecs,InsertBin,Mpegts,Play,Player,Transcoder,Vulkan{,Wayland,XCB},WebRTC}-1.0.typelib
+    usr/share/gir-1.0/Gst{BadAudio,Codecs,InsertBin,Mpegts,Play,Player,Transcoder,Vulkan{,Wayland,XCB},WebRTC}-1.0.gir
+
+    usr/lib/pkgconfig/gstreamer-plugins-bad-1.0.pc
+    usr/lib/gstreamer-1.0/libgstaccurip.so
+    usr/lib/gstreamer-1.0/libgstadpcmdec.so
+    usr/lib/gstreamer-1.0/libgstadpcmenc.so
+    usr/lib/gstreamer-1.0/libgstaiff.so
+    usr/lib/gstreamer-1.0/libgstasfmux.so
+    usr/lib/gstreamer-1.0/libgstaudiobuffersplit.so
+    usr/lib/gstreamer-1.0/libgstaudiofxbad.so
+    usr/lib/gstreamer-1.0/libgstaudiolatency.so
+    usr/lib/gstreamer-1.0/libgstaudiomixmatrix.so
+    usr/lib/gstreamer-1.0/libgstaudiovisualizers.so
+    usr/lib/gstreamer-1.0/libgstautoconvert.so
+    usr/lib/gstreamer-1.0/libgstbayer.so
+    usr/lib/gstreamer-1.0/libgstbluez.so
+    usr/lib/gstreamer-1.0/libgstcamerabin.so
+    usr/lib/gstreamer-1.0/libgstcodecalpha.so
+    usr/lib/gstreamer-1.0/libgstcoloreffects.so
+    usr/lib/gstreamer-1.0/libgstdebugutilsbad.so
+    usr/lib/gstreamer-1.0/libgstdecklink.so
+    usr/lib/gstreamer-1.0/libgstdvb.so
+    usr/lib/gstreamer-1.0/libgstdvbsubenc.so
+    usr/lib/gstreamer-1.0/libgstdvbsuboverlay.so
+    usr/lib/gstreamer-1.0/libgstdvdspu.so
+    usr/lib/gstreamer-1.0/libgstfaceoverlay.so
+    usr/lib/gstreamer-1.0/libgstfbdevsink.so
+    usr/lib/gstreamer-1.0/libgstfestival.so
+    usr/lib/gstreamer-1.0/libgstfieldanalysis.so
+    usr/lib/gstreamer-1.0/libgstfreeverb.so
+    usr/lib/gstreamer-1.0/libgstfrei0r.so
+    usr/lib/gstreamer-1.0/libgstgaudieffects.so
+    usr/lib/gstreamer-1.0/libgstgdp.so
+    usr/lib/gstreamer-1.0/libgstgeometrictransform.so
+    usr/lib/gstreamer-1.0/libgstid3tag.so
+    usr/lib/gstreamer-1.0/libgstinter.so
+    usr/lib/gstreamer-1.0/libgstinterlace.so
+    usr/lib/gstreamer-1.0/libgstipcpipeline.so
+    usr/lib/gstreamer-1.0/libgstivfparse.so
+    usr/lib/gstreamer-1.0/libgstivtc.so
+    usr/lib/gstreamer-1.0/libgstjp2kdecimator.so
+    usr/lib/gstreamer-1.0/libgstjpegformat.so
+    usr/lib/gstreamer-1.0/libgstkms.so
+    usr/lib/gstreamer-1.0/libgstlegacyrawparse.so
+    usr/lib/gstreamer-1.0/libgstmidi.so
+    usr/lib/gstreamer-1.0/libgstmpegpsdemux.so
+    usr/lib/gstreamer-1.0/libgstmpegpsmux.so
+    usr/lib/gstreamer-1.0/libgstmpegtsdemux.so
+    usr/lib/gstreamer-1.0/libgstmpegtsmux.so
+    usr/lib/gstreamer-1.0/libgstmxf.so
+    usr/lib/gstreamer-1.0/libgstnetsim.so
+    usr/lib/gstreamer-1.0/libgstnvcodec.so
+    usr/lib/gstreamer-1.0/libgstpcapparse.so
+    usr/lib/gstreamer-1.0/libgstpnm.so
+    usr/lib/gstreamer-1.0/libgstproxy.so
+    usr/lib/gstreamer-1.0/libgstremovesilence.so
+    usr/lib/gstreamer-1.0/libgstrfbsrc.so
+    usr/lib/gstreamer-1.0/libgstrist.so
+    usr/lib/gstreamer-1.0/libgstrtmp2.so
+    usr/lib/gstreamer-1.0/libgstrtpmanagerbad.so
+    usr/lib/gstreamer-1.0/libgstrtponvif.so
+    usr/lib/gstreamer-1.0/libgstsdpelem.so
+    usr/lib/gstreamer-1.0/libgstsegmentclip.so
+    usr/lib/gstreamer-1.0/libgstshm.so
+    usr/lib/gstreamer-1.0/libgstsiren.so
+    usr/lib/gstreamer-1.0/libgstsmooth.so
+    usr/lib/gstreamer-1.0/libgstspeed.so
+    usr/lib/gstreamer-1.0/libgstsubenc.so
+    usr/lib/gstreamer-1.0/libgstswitchbin.so
+    usr/lib/gstreamer-1.0/libgsttranscode.so
+    usr/lib/gstreamer-1.0/libgstuvch264.so
+    usr/lib/gstreamer-1.0/libgstv4l2codecs.so
+    usr/lib/gstreamer-1.0/libgstvideofiltersbad.so
+    usr/lib/gstreamer-1.0/libgstvideoframe_audiolevel.so
+    usr/lib/gstreamer-1.0/libgstvideoparsersbad.so
+    usr/lib/gstreamer-1.0/libgstvideosignal.so
+    usr/lib/gstreamer-1.0/libgstvmnc.so
+    usr/lib/gstreamer-1.0/libgsty4mdec.so
+
+    usr/share/gstreamer-1.0/encoding-profiles
+    usr/share/gstreamer-1.0/presets/GstFreeverb.prs
+
+    usr/share/locale/*/LC_MESSAGES/gst-plugins-bad-1.0.mo
+
+    usr/bin/gst-transcoder-1.0
+  ); _install
+}
+
+package_gst-plugins-base-libs() {
+  pkgdesc+=" - base"
+  depends=(
+    "gstreamer=$pkgver"
+    orc libxv iso-codes libgudev libgl mesa
+  )
+
+  cd root; local files=(
+    usr/include/gstreamer-1.0/gst/{allocators,app,audio,fft,gl,pbutils,riff,rtp,rtsp,sdp,tag,video}
+    usr/lib/libgst{allocators,app,audio,fft,gl,pbutils,riff,rtp,rtsp,sdp,tag,video}-1.0.so*
+    usr/lib/pkgconfig/gstreamer-{allocators,app,audio,fft,gl{,-egl,-prototypes,-wayland,-x11},pbutils,riff,rtp,rtsp,sdp,tag,video}-1.0.pc
+    usr/lib/girepository-1.0/Gst{Allocators,App,Audio,GL{,EGL,Wayland,X11},Pbutils,Rtp,Rtsp,Sdp,Tag,Video}-1.0.typelib
+    usr/share/gir-1.0/Gst{Allocators,App,Audio,GL{,EGL,Wayland,X11},Pbutils,Rtp,Rtsp,Sdp,Tag,Video}-1.0.gir
+
+    usr/lib/pkgconfig/gstreamer-plugins-base-1.0.pc
+    usr/lib/gstreamer-1.0/include/gst/gl/gstglconfig.h
+    usr/lib/gstreamer-1.0/libgstadder.so
+    usr/lib/gstreamer-1.0/libgstapp.so
+    usr/lib/gstreamer-1.0/libgstaudioconvert.so
+    usr/lib/gstreamer-1.0/libgstaudiomixer.so
+    usr/lib/gstreamer-1.0/libgstaudiorate.so
+    usr/lib/gstreamer-1.0/libgstaudioresample.so
+    usr/lib/gstreamer-1.0/libgstaudiotestsrc.so
+    usr/lib/gstreamer-1.0/libgstcompositor.so
+    usr/lib/gstreamer-1.0/libgstencoding.so
+    usr/lib/gstreamer-1.0/libgstgio.so
+    usr/lib/gstreamer-1.0/libgstoverlaycomposition.so
+    usr/lib/gstreamer-1.0/libgstpbtypes.so
+    usr/lib/gstreamer-1.0/libgstplayback.so
+    usr/lib/gstreamer-1.0/libgstrawparse.so
+    usr/lib/gstreamer-1.0/libgstsubparse.so
+    usr/lib/gstreamer-1.0/libgsttcp.so
+    usr/lib/gstreamer-1.0/libgsttypefindfunctions.so
+    usr/lib/gstreamer-1.0/libgstvideoconvert.so
+    usr/lib/gstreamer-1.0/libgstvideorate.so
+    usr/lib/gstreamer-1.0/libgstvideoscale.so
+    usr/lib/gstreamer-1.0/libgstvideotestsrc.so
+    usr/lib/gstreamer-1.0/libgstvolume.so
+    usr/lib/gstreamer-1.0/libgstximagesink.so
+    usr/lib/gstreamer-1.0/libgstxvimagesink.so
+
+    usr/share/locale/*/LC_MESSAGES/gst-plugins-base-1.0.mo
+
+    usr/bin/gst-{device-monitor,discoverer,play}-1.0
+    usr/share/man/man1/gst-{device-monitor,discoverer,play}-1.0.1
+
+    usr/share/gst-plugins-base
+  ); _install
+}
+
+package_gst-plugins-base() {
+  pkgdesc+=" - base plugins"
+  depends=(
+    "gst-plugins-base-libs=$pkgver"
+    alsa-lib cdparanoia libvisual libvorbis libtheora pango opus graphene libpng
+    libjpeg
+  )
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstalsa.so
+    usr/lib/gstreamer-1.0/libgstcdparanoia.so
+    usr/lib/gstreamer-1.0/libgstlibvisual.so
+    usr/lib/gstreamer-1.0/libgstogg.so
+    usr/lib/gstreamer-1.0/libgstopengl.so
+    usr/lib/gstreamer-1.0/libgstopus.so
+    usr/lib/gstreamer-1.0/libgstpango.so
+    usr/lib/gstreamer-1.0/libgsttheora.so
+    usr/lib/gstreamer-1.0/libgstvorbis.so
+  ); _install
+}
+
+package_gst-plugins-good() {
+  pkgdesc+=" - good plugins"
+  depends=(
+    "gst-plugins-base-libs=$pkgver"
+    libpulse libsoup3 gst-plugins-base-libs wavpack aalib taglib libdv libshout
+    libvpx gdk-pixbuf2 libcaca libavc1394 libiec61883 libxdamage v4l-utils cairo
+    libgudev speex flac libraw1394 lame mpg123 twolame
+    libjack.so
+  )
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgst1394.so
+    usr/lib/gstreamer-1.0/libgstaasink.so
+    usr/lib/gstreamer-1.0/libgstalaw.so
+    usr/lib/gstreamer-1.0/libgstalpha.so
+    usr/lib/gstreamer-1.0/libgstalphacolor.so
+    usr/lib/gstreamer-1.0/libgstapetag.so
+    usr/lib/gstreamer-1.0/libgstaudiofx.so
+    usr/lib/gstreamer-1.0/libgstaudioparsers.so
+    usr/lib/gstreamer-1.0/libgstauparse.so
+    usr/lib/gstreamer-1.0/libgstautodetect.so
+    usr/lib/gstreamer-1.0/libgstavi.so
+    usr/lib/gstreamer-1.0/libgstcacasink.so
+    usr/lib/gstreamer-1.0/libgstcairo.so
+    usr/lib/gstreamer-1.0/libgstcutter.so
+    usr/lib/gstreamer-1.0/libgstdebug.so
+    usr/lib/gstreamer-1.0/libgstdeinterlace.so
+    usr/lib/gstreamer-1.0/libgstdtmf.so
+    usr/lib/gstreamer-1.0/libgstdv.so
+    usr/lib/gstreamer-1.0/libgsteffectv.so
+    usr/lib/gstreamer-1.0/libgstequalizer.so
+    usr/lib/gstreamer-1.0/libgstflac.so
+    usr/lib/gstreamer-1.0/libgstflv.so
+    usr/lib/gstreamer-1.0/libgstflxdec.so
+    usr/lib/gstreamer-1.0/libgstgdkpixbuf.so
+    usr/lib/gstreamer-1.0/libgstgoom.so
+    usr/lib/gstreamer-1.0/libgstgoom2k1.so
+    usr/lib/gstreamer-1.0/libgsticydemux.so
+    usr/lib/gstreamer-1.0/libgstid3demux.so
+    usr/lib/gstreamer-1.0/libgstimagefreeze.so
+    usr/lib/gstreamer-1.0/libgstinterleave.so
+    usr/lib/gstreamer-1.0/libgstisomp4.so
+    usr/lib/gstreamer-1.0/libgstjack.so
+    usr/lib/gstreamer-1.0/libgstjpeg.so
+    usr/lib/gstreamer-1.0/libgstlame.so
+    usr/lib/gstreamer-1.0/libgstlevel.so
+    usr/lib/gstreamer-1.0/libgstmatroska.so
+    usr/lib/gstreamer-1.0/libgstmonoscope.so
+    usr/lib/gstreamer-1.0/libgstmpg123.so
+    usr/lib/gstreamer-1.0/libgstmulaw.so
+    usr/lib/gstreamer-1.0/libgstmultifile.so
+    usr/lib/gstreamer-1.0/libgstmultipart.so
+    usr/lib/gstreamer-1.0/libgstnavigationtest.so
+    usr/lib/gstreamer-1.0/libgstoss4.so
+    usr/lib/gstreamer-1.0/libgstossaudio.so
+    usr/lib/gstreamer-1.0/libgstpng.so
+    usr/lib/gstreamer-1.0/libgstpulseaudio.so
+    usr/lib/gstreamer-1.0/libgstreplaygain.so
+    usr/lib/gstreamer-1.0/libgstrtp.so
+    usr/lib/gstreamer-1.0/libgstrtpmanager.so
+    usr/lib/gstreamer-1.0/libgstrtsp.so
+    usr/lib/gstreamer-1.0/libgstshapewipe.so
+    usr/lib/gstreamer-1.0/libgstshout2.so
+    usr/lib/gstreamer-1.0/libgstsmpte.so
+    usr/lib/gstreamer-1.0/libgstsoup.so
+    usr/lib/gstreamer-1.0/libgstspectrum.so
+    usr/lib/gstreamer-1.0/libgstspeex.so
+    usr/lib/gstreamer-1.0/libgsttaglib.so
+    usr/lib/gstreamer-1.0/libgsttwolame.so
+    usr/lib/gstreamer-1.0/libgstudp.so
+    usr/lib/gstreamer-1.0/libgstvideo4linux2.so
+    usr/lib/gstreamer-1.0/libgstvideobox.so
+    usr/lib/gstreamer-1.0/libgstvideocrop.so
+    usr/lib/gstreamer-1.0/libgstvideofilter.so
+    usr/lib/gstreamer-1.0/libgstvideomixer.so
+    usr/lib/gstreamer-1.0/libgstvpx.so
+    usr/lib/gstreamer-1.0/libgstwavenc.so
+    usr/lib/gstreamer-1.0/libgstwavpack.so
+    usr/lib/gstreamer-1.0/libgstwavparse.so
+    usr/lib/gstreamer-1.0/libgstximagesrc.so
+    usr/lib/gstreamer-1.0/libgsty4menc.so
+
+    usr/share/gstreamer-1.0/presets/GstIirEqualizer{3,10}Bands.prs
+    usr/share/gstreamer-1.0/presets/Gst{QTMux,VP8Enc}.prs
+
+    usr/share/locale/*/LC_MESSAGES/gst-plugins-good-1.0.mo
+  ); _install
+}
+
+package_gst-plugins-bad() {
+  pkgdesc+=" - bad plugins"
+  depends=(
+    "gst-plugins-bad-libs=$pkgver"
+    aom libass libbs2b bzip2 chromaprint pango lcms2 curl libxml2 libdc1394
+    libde265 openssl libdca faac faad2 libfdk-aac fluidsynth libgme nettle
+    libkate liblrdf lilv libmodplug mjpegtools libmpcdec neon openal openexr
+    openjpeg2 opus libdvdnav libdvdread librsvg rtmpdump sbc libsndfile libltc
+    soundtouch spandsp srt libsrtp zvbi vulkan-icd-loader libxcb wayland libwebp
+    libnice webrtc-audio-processing wildmidi x265 zbar gsm libopenmpt libldac
+    libfreeaptx qrencode json-glib libavtp libmicrodns svt-hevc zxing-cpp
+  )
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstaes.so
+    usr/lib/gstreamer-1.0/libgstaom.so
+    usr/lib/gstreamer-1.0/libgstassrender.so
+    usr/lib/gstreamer-1.0/libgstavtp.so
+    usr/lib/gstreamer-1.0/libgstbs2b.so
+    usr/lib/gstreamer-1.0/libgstbz2.so
+    usr/lib/gstreamer-1.0/libgstchromaprint.so
+    usr/lib/gstreamer-1.0/libgstclosedcaption.so
+    usr/lib/gstreamer-1.0/libgstcolormanagement.so
+    usr/lib/gstreamer-1.0/libgstcurl.so
+    usr/lib/gstreamer-1.0/libgstdash.so
+    usr/lib/gstreamer-1.0/libgstdc1394.so
+    usr/lib/gstreamer-1.0/libgstde265.so
+    usr/lib/gstreamer-1.0/libgstdtls.so
+    usr/lib/gstreamer-1.0/libgstdtsdec.so
+    usr/lib/gstreamer-1.0/libgstfaac.so
+    usr/lib/gstreamer-1.0/libgstfaad.so
+    usr/lib/gstreamer-1.0/libgstfdkaac.so
+    usr/lib/gstreamer-1.0/libgstfluidsynthmidi.so
+    usr/lib/gstreamer-1.0/libgstgme.so
+    usr/lib/gstreamer-1.0/libgstgsm.so
+    usr/lib/gstreamer-1.0/libgsthls.so
+    usr/lib/gstreamer-1.0/libgstkate.so
+    usr/lib/gstreamer-1.0/libgstladspa.so
+    usr/lib/gstreamer-1.0/libgstldac.so
+    usr/lib/gstreamer-1.0/libgstlv2.so
+    usr/lib/gstreamer-1.0/libgstmicrodns.so
+    usr/lib/gstreamer-1.0/libgstmodplug.so
+    usr/lib/gstreamer-1.0/libgstmpeg2enc.so
+    usr/lib/gstreamer-1.0/libgstmplex.so
+    usr/lib/gstreamer-1.0/libgstmusepack.so
+    usr/lib/gstreamer-1.0/libgstneonhttpsrc.so
+    usr/lib/gstreamer-1.0/libgstopenal.so
+    usr/lib/gstreamer-1.0/libgstopenaptx.so
+    usr/lib/gstreamer-1.0/libgstopenexr.so
+    usr/lib/gstreamer-1.0/libgstopenjpeg.so
+    usr/lib/gstreamer-1.0/libgstopenmpt.so
+    usr/lib/gstreamer-1.0/libgstopusparse.so
+    usr/lib/gstreamer-1.0/libgstqroverlay.so
+    usr/lib/gstreamer-1.0/libgstresindvd.so
+    usr/lib/gstreamer-1.0/libgstrsvg.so
+    usr/lib/gstreamer-1.0/libgstrtmp.so
+    usr/lib/gstreamer-1.0/libgstsbc.so
+    usr/lib/gstreamer-1.0/libgstsctp.so
+    usr/lib/gstreamer-1.0/libgstsmoothstreaming.so
+    usr/lib/gstreamer-1.0/libgstsndfile.so
+    usr/lib/gstreamer-1.0/libgstsoundtouch.so
+    usr/lib/gstreamer-1.0/libgstspandsp.so
+    usr/lib/gstreamer-1.0/libgstsrt.so
+    usr/lib/gstreamer-1.0/libgstsrtp.so
+    usr/lib/gstreamer-1.0/libgstsvthevcenc.so
+    usr/lib/gstreamer-1.0/libgstteletext.so
+    usr/lib/gstreamer-1.0/libgsttimecode.so
+    usr/lib/gstreamer-1.0/libgstttmlsubs.so
+    usr/lib/gstreamer-1.0/libgstvulkan.so
+    usr/lib/gstreamer-1.0/libgstwaylandsink.so
+    usr/lib/gstreamer-1.0/libgstwebp.so
+    usr/lib/gstreamer-1.0/libgstwebrtc.so
+    usr/lib/gstreamer-1.0/libgstwebrtcdsp.so
+    usr/lib/gstreamer-1.0/libgstwildmidi.so
+    usr/lib/gstreamer-1.0/libgstx265.so
+    usr/lib/gstreamer-1.0/libgstzbar.so
+    usr/lib/gstreamer-1.0/libgstzxing.so
+  ); _install
+}
+
+package_gst-plugin-gtk() {
+  pkgdesc+=" - gtk plugin"
+  depends=("gst-plugins-base-libs=$pkgver" gtk3)
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstgtk.so
+  ); _install
+}
+
+package_gst-plugin-msdk() {
+  pkgdesc+=" - msdk plugin"
+  depends=("gst-plugins-bad-libs=$pkgver" libmfx libva)
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstmsdk.so
+  ); _install
+}
+
+package_gst-plugin-opencv() {
+  pkgdesc+=" - opencv plugin"
+  depends=("gst-plugins-base-libs=$pkgver" opencv)
+
+  cd root; local files=(
+    usr/include/gstreamer-1.0/gst/opencv
+    usr/lib/libgstopencv-1.0.so*
+
+    usr/lib/gstreamer-1.0/libgstopencv.so
+  ); _install
+}
+
+package_gst-plugin-qmlgl() {
+  pkgdesc+=" - qmlgl plugin"
+  depends=(
+    "gst-plugins-base-libs=$pkgver"
+    qt5-declarative qt5-x11extras qt5-wayland
+  )
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstqmlgl.so
+  ); _install
+}
+
+package_gst-plugin-va() {
+  pkgdesc+=" - va plugin"
+  depends=("gst-plugins-bad-libs=$pkgver" libva)
+
+  cd root; local files=(
+    usr/lib/libgstva-1.0.so*
+
+    usr/lib/gstreamer-1.0/libgstva.so
+  ); _install
+}
+
+package_gst-plugin-wpe() {
+  pkgdesc+=" - wpe plugin"
+  depends=("gst-plugins-base-libs=$pkgver" wpewebkit)
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstwpe.so
+    usr/lib/gst-plugins-bad/wpe-extension/libgstwpeextension.so
+  ); _install
+}
+
+package_gst-plugins-ugly() {
+  pkgdesc+=" - ugly plugins"
+  depends=(
+    "gst-plugins-base-libs=$pkgver"
+    libdvdread libmpeg2 a52dec libsidplay libcdio x264 opencore-amr
+  )
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgsta52dec.so
+    usr/lib/gstreamer-1.0/libgstamrnb.so
+    usr/lib/gstreamer-1.0/libgstamrwbdec.so
+    usr/lib/gstreamer-1.0/libgstasf.so
+    usr/lib/gstreamer-1.0/libgstcdio.so
+    usr/lib/gstreamer-1.0/libgstdvdlpcmdec.so
+    usr/lib/gstreamer-1.0/libgstdvdread.so
+    usr/lib/gstreamer-1.0/libgstdvdsub.so
+    usr/lib/gstreamer-1.0/libgstmpeg2dec.so
+    usr/lib/gstreamer-1.0/libgstrealmedia.so
+    usr/lib/gstreamer-1.0/libgstsid.so
+    usr/lib/gstreamer-1.0/libgstx264.so
+    usr/lib/gstreamer-1.0/libgstxingmux.so
+
+    usr/share/gstreamer-1.0/presets/Gst{Amrnb,X264}Enc.prs
+
+    usr/share/locale/*/LC_MESSAGES/gst-plugins-ugly-1.0.mo
+  ); _install
+}
+
+package_gst-libav() {
+  pkgdesc+=" - libav plugin"
+  depends=("gst-plugins-base-libs=$pkgver" bzip2 ffmpeg)
+  provides=("gst-ffmpeg=$pkgver")
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstlibav.so
+  ); _install
+}
+
+package_gst-rtsp-server() {
+  pkgdesc+=" - rtsp server"
+  depends=("gst-plugins-base-libs=$pkgver")
+
+  cd root; local files=(
+    usr/include/gstreamer-1.0/gst/rtsp-server
+    usr/lib/libgstrtspserver-1.0.so*
+    usr/lib/pkgconfig/gstreamer-rtsp-server-1.0.pc
+    usr/lib/girepository-1.0/GstRtspServer-1.0.typelib
+    usr/share/gir-1.0/GstRtspServer-1.0.gir
+
+    usr/lib/gstreamer-1.0/libgstrtspclientsink.so
+  ); _install
+}
+
+package_gst-editing-services() {
+  pkgdesc+=" - editing services"
+  depends=("gst-plugins-base-libs=$pkgver" python)
+
+  cd root; local files=(
+    usr/include/gstreamer-1.0/ges
+    usr/lib/libges-1.0.so*
+    usr/lib/pkgconfig/gst-editing-services-1.0.pc
+    usr/lib/girepository-1.0/GES-1.0.typelib
+    usr/share/gir-1.0/GES-1.0.gir
+
+    usr/lib/gstreamer-1.0/libgstges.so
+    usr/lib/gstreamer-1.0/libgstnle.so
+
+    usr/lib/python*/site-packages/gi/overrides/GES.py
+
+    usr/bin/ges-launch-1.0
+    usr/share/man/man1/ges-launch-1.0.1
+
+    usr/share/bash-completion/completions/ges-launch-1.0
+  ); _install
+
+  python -m compileall -d /usr/lib "$pkgdir/usr/lib"
+  python -O -m compileall -d /usr/lib "$pkgdir/usr/lib"
+}
+
+package_gstreamer-vaapi() {
+  pkgdesc+=" - vaapi plugin"
+  depends=("gst-plugins-bad-libs=$pkgver" libva libxrandr)
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstvaapi.so
+  ); _install
+}
+
+package_gst-python() {
+  pkgdesc+=" - python plugin"
+  depends=("gst-plugins-base-libs=$pkgver" python-gobject)
+
+  cd root; local files=(
+    usr/lib/gstreamer-1.0/libgstpython.so
+    usr/lib/python*/site-packages/gi/overrides
+  ); _install
+
+  python -m compileall -d /usr/lib "$pkgdir/usr/lib"
+  python -O -m compileall -d /usr/lib "$pkgdir/usr/lib"
+}
+
+package_gstreamer-docs() {
+  pkgdesc+=" - documentation"
+  license=(GPL3 LGPL custom:BSD custom:CC-BY-SA-4.0 custom:MIT custom:OPL)
+
+  # make sure there are no files left to install
+  find root -depth -print0 | xargs -0 rmdir
+
+  cd gstreamer-docs-$pkgver
+
+  mkdir -p "$pkgdir/usr/share"
+  cp -a devhelp "$pkgdir/usr/share/devhelp"
+
+  install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING LICENSE*
+}
+
+# vim:set sw=2 et:

Copied: gstreamer/repos/staging-x86_64/gstreamer.install (from rev 448747, gstreamer/trunk/gstreamer.install)
===================================================================
--- staging-x86_64/gstreamer.install	                        (rev 0)
+++ staging-x86_64/gstreamer.install	2022-06-15 23:32:31 UTC (rev 448748)
@@ -0,0 +1,7 @@
+post_install() {
+  post_upgrade $1 ''
+}
+
+post_upgrade() {
+  setcap cap_net_bind_service,cap_net_admin+ep usr/lib/gstreamer-1.0/gst-ptp-helper
+}



More information about the arch-commits mailing list