[OE-core] [PATCH 4/8] libsoup-2.4: convert from autotools to meson

Alexander Kanavin alex.kanavin at gmail.com
Mon Feb 18 12:41:04 UTC 2019


Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
---
 ...no-introspection-when-cross-building.patch | 24 +++++++++++++++++
 .../libsoup/libsoup-2.4_2.64.2.bb             | 27 +++++++++++++++----
 2 files changed, 46 insertions(+), 5 deletions(-)
 create mode 100644 meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch

diff --git a/meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch b/meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch
new file mode 100644
index 00000000000..72b029a80b6
--- /dev/null
+++ b/meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch
@@ -0,0 +1,24 @@
+From 921888affe66953c92a08ae440e911b016b124be Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin at gmail.com>
+Date: Fri, 15 Feb 2019 14:21:06 +0100
+Subject: [PATCH] Do not enforce no-introspection when cross-building
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 5a92cda..cfb3520 100644
+--- a/meson.build
++++ b/meson.build
+@@ -262,7 +262,7 @@ enable_gnome = get_option('gnome') and host_machine.system() != 'windows'
+ #########################
+ # GObject introspection #
+ #########################
+-enable_introspection = get_option('introspection') and find_program('g-ir-scanner', required: false).found() and not meson.is_cross_build()
++enable_introspection = get_option('introspection') and find_program('g-ir-scanner', required: false).found()
+ 
+ ############
+ # Vala API #
diff --git a/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb b/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb
index 9f852d5c054..ae7c1a68636 100644
--- a/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb
+++ b/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb
@@ -9,20 +9,37 @@ DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl"
 
 SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
 
-SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz"
+SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \
+           file://0001-Do-not-enforce-no-introspection-when-cross-building.patch \
+           "
 SRC_URI[md5sum] = "cac755dc6c6acd6e0c70007f547548f5"
 SRC_URI[sha256sum] = "75ddc194a5b1d6f25033bb9d355f04bfe5c03e0e1c71ed0774104457b3a786c6"
 
 S = "${WORKDIR}/libsoup-${PV}"
 
-inherit autotools gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc
+inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc
 
 # libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default.
 PACKAGECONFIG ??= ""
-PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome"
-PACKAGECONFIG[gssapi] = "--with-gssapi,--without-gssapi,krb5"
+PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false"
+PACKAGECONFIG[gssapi] = "-Dgssapi=true,-Dgssapi=false,krb5"
+
+EXTRA_OEMESON_append = " -Dvapi=false"
+
+GTKDOC_ENABLE_FLAG = "-Ddoc=true"
+GTKDOC_DISABLE_FLAG = "-Ddoc=false"
+
+GI_ENABLE_FLAG = "-Dintrospection=true"
+GI_DISABLE_FLAG = "-Dintrospection=false"
+
+EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}"
+
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \
+                                                                                       '${GI_DISABLE_FLAG}', d)} "
+
+EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \
+                                                                                     '${GTKDOC_DISABLE_FLAG}', d)} "
 
-EXTRA_OECONF = "--disable-vala"
 
 # When built without gnome support, libsoup-2.4 will contain only one shared lib
 # and will therefore become subject to renaming by debian.bbclass. Prevent
-- 
2.17.1



More information about the Openembedded-core mailing list