1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-08 17:19:20 +00:00

gstreamer: Fix reproducibility issue around libcap

Add an option to avoid builds depending on the presence of setcap
from the host system.

[YOCTO #13786]

(From OE-Core rev: 182910321971cb87e54c2a92cb8ea6c531a743ee)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2020-02-19 15:15:19 +00:00
parent 97942b789a
commit 29d57a9e27
2 changed files with 39 additions and 0 deletions
@@ -0,0 +1,37 @@
Currently gstreamer configuration depends on whether setcap is found on the host
system. Turn this into a configure option to make builds deterinistic.
RP 2020/2/19
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Upstream-Status: Pending
Index: gstreamer-1.16.1/libs/gst/helpers/meson.build
===================================================================
--- gstreamer-1.16.1.orig/libs/gst/helpers/meson.build
+++ gstreamer-1.16.1/libs/gst/helpers/meson.build
@@ -73,7 +73,12 @@ if have_ptp
endif
endif
- setcap = find_program('setcap', '/usr/sbin/setcap', '/sbin/setcap', required : false)
+ setcap_feature = get_option('setcap')
+ if setcap_feature.disabled()
+ setcap = find_program('dontexist', required : false)
+ else
+ setcap = find_program('setcap', '/usr/sbin/setcap', '/sbin/setcap', required : false)
+ endif
# user/group to change to in gst-ptp-helper
ptp_helper_setuid_user = get_option('ptp-helper-setuid-user')
Index: gstreamer-1.16.1/meson_options.txt
===================================================================
--- gstreamer-1.16.1.orig/meson_options.txt
+++ gstreamer-1.16.1/meson_options.txt
@@ -26,6 +26,7 @@ option('libunwind', type : 'feature', va
option('libdw', type : 'feature', value : 'auto', description : 'Use libdw to generate better backtraces from libunwind')
option('dbghelp', type : 'feature', value : 'auto', description : 'Use dbghelp to generate backtraces')
option('bash-completion', type : 'feature', value : 'auto', description : 'Install bash completion files')
+option('setcap', type : 'feature', value : 'auto', description : 'Use setcap')
# Common feature options
option('examples', type : 'feature', value : 'auto', yield : true)
@@ -21,6 +21,7 @@ SRC_URI = " \
file://0002-meson-build-gir-even-when-cross-compiling-if-introsp.patch \
file://0003-meson-Add-valgrind-feature.patch \
file://0004-meson-Add-option-for-installed-tests.patch \
file://capfix.patch \
"
SRC_URI[md5sum] = "c505fb818b36988daaa846e9e63eabe8"
SRC_URI[sha256sum] = "02211c3447c4daa55919c5c0f43a82a6fbb51740d57fc3af0639d46f1cf4377d"
@@ -39,6 +40,7 @@ PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind"
PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils"
PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion"
PACKAGECONFIG[tools] = "-Dtools=enabled,-Dtools=disabled"
PACKAGECONFIG[setcap] = "-Dsetcap=enabled,-Dsetcap=disabled,libcap libcap-native"
# TODO: put this in a gettext.bbclass patch
def gettext_oemeson(d):