mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
extra/gstreamer to 1.20.4-1
This commit is contained in:
parent
fe3b22451f
commit
374e264cf2
4 changed files with 99 additions and 42 deletions
|
@ -0,0 +1,84 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Nirbheek Chauhan <nirbheek@centricular.com>
|
||||
Date: Wed, 21 Sep 2022 21:48:31 +0530
|
||||
Subject: [PATCH] meson: Add a new option to control the source for orc
|
||||
|
||||
Previously we were unconditionally cloning the orc subproject because
|
||||
we want the developer environment to use the latest orc. However, some
|
||||
people want to use the system orc instead, or want to auto-detect
|
||||
which to use, with the system orc getting preference. This requires
|
||||
adding a new option to select that. See discussion at:
|
||||
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2556
|
||||
|
||||
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1282
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3062>
|
||||
---
|
||||
meson.build | 22 +++++++++++++++++++++-
|
||||
meson_options.txt | 1 +
|
||||
subprojects/orc.wrap | 3 +++
|
||||
3 files changed, 25 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 03df4ab157df..5b714eb5ee8f 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -126,7 +126,19 @@ elif build_system == 'darwin'
|
||||
subproject('macos-bison-binary')
|
||||
endif
|
||||
|
||||
-orc_subproject = subproject('orc', required: get_option('orc'))
|
||||
+orc_option = get_option('orc')
|
||||
+# There is a check below to keep this in sync with subprojects/gst-plugins-base/meson.build
|
||||
+orc_req = '>= 0.4.24'
|
||||
+orc_source_option = get_option('orc-source')
|
||||
+orc_subproject = disabler()
|
||||
+if orc_option.allowed()
|
||||
+ if orc_source_option == 'subproject'
|
||||
+ orc_subproject = subproject('orc', required: orc_option)
|
||||
+ else
|
||||
+ dependency('orc-0.4', version: orc_req, required: orc_option,
|
||||
+ allow_fallback: orc_source_option == 'auto')
|
||||
+ endif
|
||||
+endif
|
||||
|
||||
foreach custom_subproj: get_option('custom_subprojects').split(',')
|
||||
if custom_subproj != ''
|
||||
@@ -162,6 +174,14 @@ foreach sp : subprojects
|
||||
subproj = subproject(project_name, required: is_required)
|
||||
endif
|
||||
|
||||
+ if project_name == 'gst-plugins-base'
|
||||
+ gst_base_orc_req = subproj.get_variable('orc_req', '')
|
||||
+ if gst_base_orc_req != orc_req
|
||||
+ error('orc_req is "@0@" but it should be "@1@" from subprojects/gst-plugins-base/meson.build'
|
||||
+ .format(orc_req, gst_base_orc_req))
|
||||
+ endif
|
||||
+ endif
|
||||
+
|
||||
if subproj.found()
|
||||
plugins = subproj.get_variable('plugins', [])
|
||||
all_plugins += plugins
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 7a43f3443098..a2d4203c22ef 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -33,6 +33,7 @@ option('gst-full-device-providers', type : 'string', value : '',
|
||||
description : '''List of device providers to expose in gstreamer-full's ABI with the syntax plugin1:dp1;plugin2:dp1:dp2. By default '' will export all device provider of the enabled plugin.''')
|
||||
option('gst-full-dynamic-types', type : 'string', value : '',
|
||||
description : '''List of dynamic types to expose in gstreamer-full's ABI with the syntax plugin:dt1,dt2. By default '' will export all device provider of the enabled plugin.''')
|
||||
+option('orc-source', type: 'combo', choices: ['system', 'subproject', 'auto'], value: 'subproject')
|
||||
|
||||
# License-related feature options
|
||||
option('gpl', type: 'feature', value: 'disabled',
|
||||
diff --git a/subprojects/orc.wrap b/subprojects/orc.wrap
|
||||
index 690d8e368b38..a3b553a614fa 100644
|
||||
--- a/subprojects/orc.wrap
|
||||
+++ b/subprojects/orc.wrap
|
||||
@@ -3,3 +3,6 @@ directory=orc
|
||||
url=https://gitlab.freedesktop.org/gstreamer/orc.git
|
||||
push-url=git@gitlab.freedesktop.org:gstreamer/orc.git
|
||||
revision=887392103956a8733a750c4442e2664d5c26527d
|
||||
+
|
||||
+[provide]
|
||||
+orc-0.4 = orc_dep
|
|
@ -1,28 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
|
||||
Date: Mon, 6 Jun 2022 00:29:08 +0200
|
||||
Subject: [PATCH] meson: Allow building with system orc
|
||||
|
||||
---
|
||||
meson.build | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 617ba8a41461..509565e90891 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -112,7 +112,13 @@ elif build_system == 'darwin'
|
||||
subproject('macos-bison-binary')
|
||||
endif
|
||||
|
||||
-orc_subproject = subproject('orc', required: get_option('orc'))
|
||||
+orc_subproject_required = get_option('orc')
|
||||
+if orc_subproject_required.allowed()
|
||||
+ # Download if possible, otherwise use system orc
|
||||
+ orc_subproject_required = false
|
||||
+endif
|
||||
+
|
||||
+orc_subproject = subproject('orc', required: orc_subproject_required)
|
||||
|
||||
foreach custom_subproj: get_option('custom_subprojects').split(',')
|
||||
if custom_subproj != ''
|
|
@ -11,10 +11,10 @@ Subject: [PATCH] HACK: meson: Disable broken tests
|
|||
4 files changed, 4 deletions(-)
|
||||
|
||||
diff --git a/subprojects/gst-editing-services/meson.build b/subprojects/gst-editing-services/meson.build
|
||||
index 1a4a29b3657f..857290baf35f 100644
|
||||
index 2efa61a0355f..0fe8276d5903 100644
|
||||
--- a/subprojects/gst-editing-services/meson.build
|
||||
+++ b/subprojects/gst-editing-services/meson.build
|
||||
@@ -274,7 +274,6 @@ subdir('plugins')
|
||||
@@ -273,7 +273,6 @@ subdir('plugins')
|
||||
if not get_option('tools').disabled()
|
||||
subdir('tools')
|
||||
endif
|
||||
|
@ -23,7 +23,7 @@ index 1a4a29b3657f..857290baf35f 100644
|
|||
subdir('examples')
|
||||
endif
|
||||
diff --git a/subprojects/gst-python/meson.build b/subprojects/gst-python/meson.build
|
||||
index dce5982e59d7..ed51d7e88f36 100644
|
||||
index 2f4c544f7079..5e0aef606e10 100644
|
||||
--- a/subprojects/gst-python/meson.build
|
||||
+++ b/subprojects/gst-python/meson.build
|
||||
@@ -104,5 +104,4 @@ if not get_option('plugin').disabled()
|
||||
|
@ -45,7 +45,7 @@ index 229af32f8117..b9372c125d77 100644
|
|||
'gst/sessionpool',
|
||||
'gst/stream',
|
||||
diff --git a/subprojects/gstreamer-vaapi/meson.build b/subprojects/gstreamer-vaapi/meson.build
|
||||
index 702441cb7b5c..9fff27ce91b9 100644
|
||||
index 491765105820..42641a22878a 100644
|
||||
--- a/subprojects/gstreamer-vaapi/meson.build
|
||||
+++ b/subprojects/gstreamer-vaapi/meson.build
|
||||
@@ -202,7 +202,6 @@ plugins = []
|
||||
|
|
|
@ -29,8 +29,8 @@ pkgname=(
|
|||
gst-python
|
||||
gstreamer-docs
|
||||
)
|
||||
pkgver=1.20.3
|
||||
pkgrel=2
|
||||
pkgver=1.20.4
|
||||
pkgrel=1
|
||||
pkgdesc="Multimedia graph framework"
|
||||
url="https://gstreamer.freedesktop.org/"
|
||||
arch=(x86_64)
|
||||
|
@ -75,19 +75,19 @@ makedepends=(
|
|||
)
|
||||
checkdepends=(xorg-server-xvfb)
|
||||
options=(debug)
|
||||
_commit=ccf22e315cedf81e0075ab179ffb1b733da5206e # tags/1.20.3^0
|
||||
_commit=642730bd67d3c23ac68bd328fbddd191a7a43f25 # tags/1.20.4^0
|
||||
source=(
|
||||
"git+https://gitlab.freedesktop.org/gstreamer/gstreamer.git#commit=$_commit"
|
||||
"https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-1.20.3.tar.xz"{,.asc}
|
||||
0001-meson-Allow-building-with-system-orc.patch
|
||||
"https://gstreamer.freedesktop.org/src/gstreamer-docs/gstreamer-docs-${pkgver%%+*}.tar.xz"{,.asc}
|
||||
0001-meson-Add-a-new-option-to-control-the-source-for-orc.patch
|
||||
0002-HACK-meson-Disable-broken-tests.patch
|
||||
0003-HACK-meson-Work-around-broken-detection-of-underscor.patch
|
||||
)
|
||||
sha256sums=('SKIP'
|
||||
'73fc428a40d6a34c2ceb80e3e572b20f19f8ebe216d566f010de11573063f1bf'
|
||||
'9a40511387c5b14fa8ed4555bda1bb9dd336b4b8a00e18cc97929b4dd930a79a'
|
||||
'SKIP'
|
||||
'292edebc224557db08404b0d53e2824413f0aad2a99c991de2cb8ccc6e9a7683'
|
||||
'11971a978e37fda3822f95fb61b59ba3ded6487066dc59fcbde7b72a3a9cfe70'
|
||||
'54115800d579864db41ba9b3f62745696a9e012ca5c7afa990ee6943f0912365'
|
||||
'5cd72310f9f4230ca6bba6a2b972eb783296ab622a2586683cd8623b6907d3ff'
|
||||
'79d3038a0ba0c3958ffa8b5aec8431336b372906c07c0c878c3767bec0acb46f')
|
||||
validpgpkeys=(D637032E45B8C6585B9456565D2EEE6F6F349D7C) # Tim Müller <tim@gstreamer-foundation.org>
|
||||
|
||||
|
@ -100,7 +100,7 @@ prepare() {
|
|||
cd gstreamer
|
||||
|
||||
# Fix linking with system orc
|
||||
git apply -3 ../0001-meson-Allow-building-with-system-orc.patch
|
||||
git apply -3 ../0001-meson-Add-a-new-option-to-control-the-source-for-orc.patch
|
||||
|
||||
# Disable broken tests
|
||||
git apply -3 ../0002-HACK-meson-Disable-broken-tests.patch
|
||||
|
@ -118,6 +118,7 @@ build() {
|
|||
-D gpl=enabled
|
||||
-D gst-examples=disabled
|
||||
-D libnice=disabled
|
||||
-D orc-source=system
|
||||
-D vaapi=enabled
|
||||
-D gstreamer:dbghelp=disabled
|
||||
-D gstreamer:gobject-cast-checks=disabled
|
||||
|
@ -725,7 +726,7 @@ package_gstreamer-docs() {
|
|||
# make sure there are no files left to install
|
||||
find root -depth -print0 | xargs -0 rmdir
|
||||
|
||||
cd gstreamer-docs-$pkgver
|
||||
cd gstreamer-docs-${pkgver%%+*}
|
||||
|
||||
mkdir -p "$pkgdir/usr/share"
|
||||
cp -a devhelp "$pkgdir/usr/share/devhelp"
|
||||
|
|
Loading…
Reference in a new issue