From: Alexander Kanavin <alexander.kanavin@linux.intel.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH 08/28] gstreamer1.0: enable gtk-doc support
Date: Fri, 26 Aug 2016 17:28:23 +0300 [thread overview]
Message-ID: <d205eadc140c3fa5ee24d9145f301cbf1351afe4.1472221205.git.alexander.kanavin@linux.intel.com> (raw)
In-Reply-To: <cover.1472221205.git.alexander.kanavin@linux.intel.com>
In-Reply-To: <cover.1472221205.git.alexander.kanavin@linux.intel.com>
check support is no longer disabled by default because it is a requirement
of gtk-doc support in gstreamer.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
---
meta/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc | 2 +-
meta/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc | 2 +-
.../gstreamer/gstreamer1.0-plugins.inc | 14 ++++++++++++--
.../gstreamer/gstreamer1.0-rtsp-server.inc | 14 ++++++++++++--
meta/recipes-multimedia/gstreamer/gstreamer1.0.inc | 16 ++++++++++++----
5 files changed, 38 insertions(+), 10 deletions(-)
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc
index 363101e..b24de62 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc
@@ -7,7 +7,7 @@ LICENSE_FLAGS = "commercial"
DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base zlib bzip2 xz"
-inherit autotools pkgconfig upstream-version-is-even
+inherit autotools pkgconfig upstream-version-is-even gtk-doc
# CAUTION: Using the system libav is not recommended. Since the libav API is changing all the time,
# compilation errors (and other, more subtle bugs) can happen. It is usually better to rely on the
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc
index 0fff612..41059d7 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc
@@ -7,7 +7,7 @@ LICENSE_FLAGS = "commercial"
DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
-inherit autotools pkgconfig gettext
+inherit autotools pkgconfig gettext gtk-doc
acpaths = "-I ${S}/common/m4 -I ${S}/m4"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
index 2dcec50..e29a25f 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
@@ -5,7 +5,7 @@ SECTION = "multimedia"
DEPENDS = "gstreamer1.0 glib-2.0-native"
-inherit autotools pkgconfig upstream-version-is-even gobject-introspection
+inherit autotools pkgconfig upstream-version-is-even gobject-introspection gtk-doc
acpaths = "-I ${S}/common/m4 -I ${S}/m4"
@@ -35,6 +35,16 @@ delete_pkg_m4_file() {
rm "${S}/common/m4/pkg.m4" || true
}
-do_configure[prefuncs] += " delete_pkg_m4_file"
+# gstreamer is not using system-wide makefiles (which we patch in gtkdoc recipe,
+# but its own custom ones, which we have to patch here
+patch_gtk_doc_makefiles() {
+ # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
+ # instead of libtool wrapper or running them directly
+ sed -i \
+ -e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \
+ ${S}/common/gtk-doc*mak
+}
+
+do_configure[prefuncs] += " delete_pkg_m4_file patch_gtk_doc_makefiles"
PACKAGES_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 8fc90f1..13ba40d 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc
@@ -13,7 +13,7 @@ SRC_URI = "http://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz
S = "${WORKDIR}/${PNREAL}-${PV}"
-inherit autotools pkgconfig upstream-version-is-even gobject-introspection
+inherit autotools pkgconfig upstream-version-is-even gobject-introspection gtk-doc
# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well
LIBV = "1.0"
@@ -24,5 +24,15 @@ delete_pkg_m4_file() {
rm "${S}/common/m4/pkg.m4" || true
}
-do_configure[prefuncs] += " delete_pkg_m4_file"
+# gstreamer is not using system-wide makefiles (which we patch in gtkdoc recipe,
+# but its own custom ones, which we have to patch here
+patch_gtk_doc_makefiles() {
+ # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
+ # instead of libtool wrapper or running them directly
+ sed -i \
+ -e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \
+ ${S}/common/gtk-doc*mak
+}
+
+do_configure[prefuncs] += " delete_pkg_m4_file patch_gtk_doc_makefiles"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
index 86ac10c..c8af539 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0.inc
@@ -8,7 +8,7 @@ LICENSE = "LGPLv2+"
DEPENDS = "glib-2.0 glib-2.0-native libcap libxml2 bison-native flex-native"
-inherit autotools pkgconfig gettext upstream-version-is-even gobject-introspection
+inherit autotools pkgconfig gettext upstream-version-is-even gobject-introspection gtk-doc
# This way common/m4/introspection.m4 will come first
# (it has a custom INTROSPECTION_INIT macro, and so must be used instead of our common introspection.m4 file)
@@ -20,7 +20,6 @@ SRC_URI_append = " \
PACKAGECONFIG ??= ""
-PACKAGECONFIG[check] = "--enable-check,--disable-check"
PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
PACKAGECONFIG[tests] = "--enable-tests,--disable-tests"
PACKAGECONFIG[valgrind] = "--enable-valgrind,--disable-valgrind,valgrind,"
@@ -31,7 +30,6 @@ EXTRA_OECONF = " \
--disable-dependency-tracking \
--disable-docbook \
--disable-examples \
- --disable-gtk-doc \
"
CACHED_CONFIGUREVARS += "ac_cv_header_valgrind_valgrind_h=no"
@@ -53,7 +51,17 @@ delete_pkg_m4_file() {
rm "${S}/common/m4/pkg.m4" || true
}
-do_configure[prefuncs] += " delete_pkg_m4_file"
+# gstreamer is not using system-wide makefiles (which we patch in gtkdoc recipe,
+# but its own custom ones, which we have to patch here
+patch_gtk_doc_makefiles() {
+ # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
+ # instead of libtool wrapper or running them directly
+ sed -i \
+ -e "s|GTKDOC_RUN =.*|GTKDOC_RUN = \$(top_builddir)/gtkdoc-qemuwrapper|" \
+ ${S}/common/gtk-doc*mak
+}
+
+do_configure[prefuncs] += " delete_pkg_m4_file patch_gtk_doc_makefiles"
do_compile_prepend() {
export GIR_EXTRA_LIBS_PATH="${B}/gst/.libs:${B}/libs/gst/base/.libs"
--
2.9.3
next prev parent reply other threads:[~2016-08-26 14:30 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-26 14:28 [PATCH 00/28] Enable gtk-doc Alexander Kanavin
2016-08-26 14:28 ` [PATCH 01/28] source-highlight: add a recipe Alexander Kanavin
2016-08-26 14:28 ` [PATCH 02/28] gtk-doc: add a recipe, remove gtk-doc-stub Alexander Kanavin
2016-08-26 14:28 ` [PATCH 03/28] bitbake.conf: add "api-documentation" to default distro features Alexander Kanavin
2016-08-26 14:28 ` [PATCH 04/28] gtk-doc.bbclass: enable building gtk-doc based documentation Alexander Kanavin
2016-08-26 14:28 ` [PATCH 05/28] kmod: do not let gtkdocize fail Alexander Kanavin
2016-08-26 14:28 ` [PATCH 06/28] systemd: drop unused gtkdoc-related variable Alexander Kanavin
2016-08-26 14:28 ` [PATCH 07/28] libglade: remove the recipe Alexander Kanavin
2016-08-26 14:28 ` Alexander Kanavin [this message]
2016-08-26 14:28 ` [PATCH 09/28] webkitgtk: enable gtk-doc support Alexander Kanavin
2016-08-26 14:28 ` [PATCH 10/28] gcr: disable gtk-doc on x86_64 Alexander Kanavin
2016-08-26 14:28 ` [PATCH 11/28] gcr, libsecret, webkitgtk: disable gtk-doc on mips64 Alexander Kanavin
2016-08-26 14:28 ` [PATCH 12/28] webkitgtk: re-enable introspection on powerpc Alexander Kanavin
2016-08-26 14:28 ` [PATCH 13/28] dbus-glib: enable gtk-doc Alexander Kanavin
2016-08-26 14:28 ` [PATCH 14/28] orc: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 15/28] libidn: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 16/28] libuser: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 17/28] gdk-pixbuf: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 18/28] gnome-desktop3: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 19/28] json-glib: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 20/28] libgudev: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 21/28] libenck3: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 22/28] cairo: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 23/28] harfbuzz: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 24/28] gnutls: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 25/28] libtasn1: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 26/28] libsoup-2.4: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 27/28] p11-kit: " Alexander Kanavin
2016-08-26 14:28 ` [PATCH 28/28] util-linux: do not enable gtk-doc and explain why Alexander Kanavin
2016-08-31 7:48 ` [PATCH 00/28] Enable gtk-doc Richard Purdie
2016-09-01 21:59 ` Randy MacLeod
2016-09-02 15:06 ` Alexander Kanavin
2016-09-05 6:58 ` Anders Darander
2016-09-09 13:42 ` Richard Purdie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d205eadc140c3fa5ee24d9145f301cbf1351afe4.1472221205.git.alexander.kanavin@linux.intel.com \
--to=alexander.kanavin@linux.intel.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox