diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-02-19 15:15:19 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-02-19 21:27:44 +0000 |
commit | 182910321971cb87e54c2a92cb8ea6c531a743ee (patch) | |
tree | e5c7c5eaf369313397ef82c291c9c0b8ecec067c /meta/recipes-multimedia | |
parent | fe97845a45434902c5a994e253a127a462d7d3b4 (diff) | |
download | openembedded-core-contrib-182910321971cb87e54c2a92cb8ea6c531a743ee.tar.gz |
gstreamer: Fix reproducibility issue around libcap
Add an option to avoid builds depending on the presence of setcap
from the host system.
[YOCTO #13786]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia')
-rw-r--r-- | meta/recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch | 37 | ||||
-rw-r--r-- | meta/recipes-multimedia/gstreamer/gstreamer1.0_1.16.1.bb | 2 |
2 files changed, 39 insertions, 0 deletions
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch new file mode 100644 index 00000000000..7ca3d5ad4a6 --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch @@ -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) diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.16.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.16.1.bb index 6b8a5a0eb01..d2beafdc34f 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.16.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.16.1.bb @@ -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): |