summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2017-12-20 13:03:03 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-01-07 14:05:39 +0000
commitb7376a36a3beb36131a791d79d66eb0110b7b954 (patch)
tree5aba51997ac9bd31b3b7225766cfa6f67159bad1 /meta/recipes-multimedia
parent492f842360888a914cae4bf5c975205d24b773ec (diff)
downloadpoky-b7376a36a3beb36131a791d79d66eb0110b7b954.tar.gz
gstreamer: use a patch instead of sed to fix gtk-doc makefiles
seds can get stale without warning and repeated application can cause problems, so move the gtk-doc seds into a patch. (From OE-Core rev: a704411ab0f1e5f8cbf57ff54b36d60ccaf0d223) (From OE-Core rev: e0a4e78b879eeacff8ef6803c1345056abf018e7) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia')
-rw-r--r--meta/recipes-multimedia/gstreamer/files/gtk-doc-tweaks.patch25
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc16
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc15
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0.inc15
4 files changed, 33 insertions, 38 deletions
diff --git a/meta/recipes-multimedia/gstreamer/files/gtk-doc-tweaks.patch b/meta/recipes-multimedia/gstreamer/files/gtk-doc-tweaks.patch
new file mode 100644
index 0000000000..593d5bb043
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/files/gtk-doc-tweaks.patch
@@ -0,0 +1,25 @@
1Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient
2binaries instead of libtool wrapper or running them directly.
3
4Also substitute a bogus plugin scanner, as trying to run the real one is causing
5issues during build on x86_64.
6
7Upstream-Status: Inappropriate
8Signed-off-by: Ross Burton <ross.burton@intel.com>
9
10--- a/common/gtk-doc.mak.orig 2017-12-20 12:43:20.586474397 +0000
11+++ b/common/gtk-doc.mak 2017-12-20 12:45:20.758874995 +0000
12@@ -8,3 +8,3 @@
13 GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
14-GTKDOC_RUN = $(LIBTOOL) --mode=execute
15+GTKDOC_RUN = $(top_builddir)/gtkdoc-qemuwrapper
16 else
17@@ -12,3 +12,3 @@
18 GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
19-GTKDOC_RUN =
20+GTKDOC_RUN = $(top_builddir)/gtkdoc-qemuwrapper
21 endif
22@@ -99,2 +99,3 @@
23 fi; \
24+ GST_PLUGIN_SCANNER_1_0="$(top_builddir)/libs/gst/helpers/gst-plugin-scanner-dummy" \
25 GST_PLUGIN_SYSTEM_PATH_1_0=`cd $(top_builddir) && pwd` \
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
index 3f6d4c3703..5906e4ad36 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
@@ -5,6 +5,8 @@ SECTION = "multimedia"
5 5
6DEPENDS = "gstreamer1.0 glib-2.0-native" 6DEPENDS = "gstreamer1.0 glib-2.0-native"
7 7
8SRC_URI_append = " file://gtk-doc-tweaks.patch"
9
8inherit autotools pkgconfig upstream-version-is-even gobject-introspection gtk-doc 10inherit autotools pkgconfig upstream-version-is-even gobject-introspection gtk-doc
9 11
10acpaths = "-I ${S}/common/m4 -I ${S}/m4" 12acpaths = "-I ${S}/common/m4 -I ${S}/m4"
@@ -34,18 +36,6 @@ delete_pkg_m4_file() {
34 rm -f "${S}/common/m4/gtk-doc.m4" 36 rm -f "${S}/common/m4/gtk-doc.m4"
35} 37}
36 38
37# gstreamer is not using system-wide makefiles (which we patch in gtkdoc recipe, 39do_configure[prefuncs] += " delete_pkg_m4_file"
38# but its own custom ones, which we have to patch here
39patch_gtk_doc_makefiles() {
40 # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
41 # instead of libtool wrapper or running them directly
42 # Also substitute a bogus plugin scanner, as trying to run the real one is causing issues during build on x86_64.
43 sed -i \
44 -e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \
45 -e "s|\$(GTKDOC_EXTRA_ENVIRONMENT)|\$(GTKDOC_EXTRA_ENVIRONMENT) GST_PLUGIN_SCANNER_1_0=\$(top_builddir)/libs/gst/helpers/gst-plugin-scanner-dummy|" \
46 ${S}/common/gtk-doc*mak
47}
48
49do_configure[prefuncs] += " delete_pkg_m4_file patch_gtk_doc_makefiles"
50 40
51PACKAGES_DYNAMIC = "^${PN}-.*" 41PACKAGES_DYNAMIC = "^${PN}-.*"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc
index 7191f9892d..70e90b8ba6 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc
@@ -9,7 +9,8 @@ PNREAL = "gst-rtsp-server"
9 9
10SRC_URI = "http://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz \ 10SRC_URI = "http://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz \
11 file://0001-Don-t-hardcode-libtool-name-when-using-introspection.patch \ 11 file://0001-Don-t-hardcode-libtool-name-when-using-introspection.patch \
12 file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch" 12 file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \
13 file://gtk-doc-tweaks.patch"
13 14
14S = "${WORKDIR}/${PNREAL}-${PV}" 15S = "${WORKDIR}/${PNREAL}-${PV}"
15 16
@@ -24,15 +25,5 @@ delete_pkg_m4_file() {
24 rm "${S}/common/m4/pkg.m4" || true 25 rm "${S}/common/m4/pkg.m4" || true
25} 26}
26 27
27# gstreamer is not using system-wide makefiles (which we patch in gtkdoc recipe, 28do_configure[prefuncs] += " delete_pkg_m4_file"
28# but its own custom ones, which we have to patch here
29patch_gtk_doc_makefiles() {
30 # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
31 # instead of libtool wrapper or running them directly
32 sed -i \
33 -e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \
34 ${S}/common/gtk-doc*mak
35}
36
37do_configure[prefuncs] += " delete_pkg_m4_file patch_gtk_doc_makefiles"
38 29
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
index 329193486d..f523ef59f9 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
@@ -16,6 +16,7 @@ acpaths = "-I ${S}/common/m4 -I ${S}/m4"
16 16
17SRC_URI_append = " \ 17SRC_URI_append = " \
18 file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \ 18 file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \
19 file://gtk-doc-tweaks.patch \
19" 20"
20 21
21PACKAGECONFIG ??= "" 22PACKAGECONFIG ??= ""
@@ -52,19 +53,7 @@ delete_pkg_m4_file() {
52 rm -f "${S}/common/m4/gtk-doc.m4" 53 rm -f "${S}/common/m4/gtk-doc.m4"
53} 54}
54 55
55# gstreamer is not using system-wide makefiles (which we patch in gtkdoc recipe, 56do_configure[prefuncs] += "delete_pkg_m4_file"
56# but its own custom ones, which we have to patch here
57patch_gtk_doc_makefiles() {
58 # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
59 # instead of libtool wrapper or running them directly
60 # Also substitute a bogus plugin scanner, as trying to run the real one is causing issues during build on x86_64.
61 sed -i \
62 -e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \
63 -e "s|\$(GTKDOC_EXTRA_ENVIRONMENT)|\$(GTKDOC_EXTRA_ENVIRONMENT) GST_PLUGIN_SCANNER_1_0=\$(top_builddir)/libs/gst/helpers/gst-plugin-scanner-dummy|" \
64 ${S}/common/gtk-doc*mak
65}
66
67do_configure[prefuncs] += " delete_pkg_m4_file patch_gtk_doc_makefiles"
68 57
69do_compile_prepend() { 58do_compile_prepend() {
70 export GIR_EXTRA_LIBS_PATH="${B}/gst/.libs:${B}/libs/gst/base/.libs" 59 export GIR_EXTRA_LIBS_PATH="${B}/gst/.libs:${B}/libs/gst/base/.libs"