diff mbox series

[PATCHv4] vte: update 0.70.2 -> 0.70.3

Message ID 20230223191937.1215699-1-f_l_k@t-online.de
State New
Headers show
Series [PATCHv4] vte: update 0.70.2 -> 0.70.3 | expand

Commit Message

Markus Volk Feb. 23, 2023, 7:19 p.m. UTC
- Allow to build the gtk4 widget and vapi
  This is needed to build gtk4 based terminals like blackbox
- Update dependencies
- Cleanup recipe

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 .../vte/{vte_0.70.2.bb => vte_0.70.3.bb}      | 25 +++++++++++--------
 1 file changed, 14 insertions(+), 11 deletions(-)
 rename meta/recipes-support/vte/{vte_0.70.2.bb => vte_0.70.3.bb} (69%)

Comments

Alexander Kanavin Feb. 23, 2023, 7:46 p.m. UTC | #1
On Thu, 23 Feb 2023 at 20:19, Markus Volk <f_l_k@t-online.de> wrote:
> +    ${@bb.utils.contains('DISTRO_FEATURES', 'gobject-introspection-data', 'vala', '', d)} \

You need to use GI_DATA_ENABLED variable instead here. Then the
:remove statements with vala in them below will not be needed.

Yes, I messed this up myself in the gcr recipe a few days ago, that
needs to be fixed too.

> +PACKAGECONFIG:remove:class-nativesdk = "vala gtk4"

Why does gtk4 need to be removed as well in this case?

Alex
Markus Volk Feb. 23, 2023, 8:04 p.m. UTC | #2
Am Do, 23. Feb 2023 um 20:46:03 +0100 schrieb Alexander Kanavin 
<alex.kanavin@gmail.com>:
> Why does gtk4 need to be removed as well in this case?

Because gtk4 is not allowed to build for nativesdk yet, only for 
native. I've tested that it'll work, if 'nativesdk' is added to 
BBCLASSEXTEND for gtk4, xkeyboard-config and libxkbcommon

> you need to use GI_DATA_ENABLED variable instead here.

Aah, thanks
Alexander Kanavin Feb. 23, 2023, 8:10 p.m. UTC | #3
On Thu, 23 Feb 2023 at 21:04, Markus Volk <f_l_k@t-online.de> wrote:
>
> Am Do, 23. Feb 2023 um 20:46:03 +0100 schrieb Alexander Kanavin <alex.kanavin@gmail.com>:
>
> Why does gtk4 need to be removed as well in this case?
>
>
> Because gtk4 is not allowed to build for nativesdk yet, only for native. I've tested that it'll work, if 'nativesdk' is added to BBCLASSEXTEND for gtk4, xkeyboard-config and libxkbcommon

Then that would be the correct fix.

Alex
Richard Purdie Feb. 23, 2023, 9:27 p.m. UTC | #4
On Thu, 2023-02-23 at 21:10 +0100, Alexander Kanavin wrote:
> On Thu, 23 Feb 2023 at 21:04, Markus Volk <f_l_k@t-online.de> wrote:
> > 
> > Am Do, 23. Feb 2023 um 20:46:03 +0100 schrieb Alexander Kanavin <alex.kanavin@gmail.com>:
> > 
> > Why does gtk4 need to be removed as well in this case?
> > 
> > 
> > Because gtk4 is not allowed to build for nativesdk yet, only for
> > native. I've tested that it'll work, if 'nativesdk' is added to
> > BBCLASSEXTEND for gtk4, xkeyboard-config and libxkbcommon
> 
> Then that would be the correct fix.

Not necessarily. The question is whether we need gtk4 support in our
SDK? I've prefer not to build/include things we don't need and I'm not
sure where gtk4 is being used there as yet?

Cheers,

Richard
Markus Volk Feb. 23, 2023, 9:39 p.m. UTC | #5
Am Do, 23. Feb 2023 um 21:27:25 +0000 schrieb Richard Purdie 
<richard.purdie@linuxfoundation.org>:
> Not necessarily. The question is whether we need gtk4 support in our
> SDK? I've prefer not to build/include things we don't need and I'm not
> sure where gtk4 is being used there as yet?

Also, I was wrong. Things are not that simple. gtk4 requires 
graphene-gobject and that is disabled by default for nativesdk. I 
really don't know why this didn't show up yesterday when I tested the 
build for nativesdk.

Using GI_DATA_ENABLED helped partially, but 'vala' still needs to be 
removed for nativesdk. Otherwise this looks pretty good now, builds for 
musl,x32,nativesdk. Fingers crossed that it passes the test now.
diff mbox series

Patch

diff --git a/meta/recipes-support/vte/vte_0.70.2.bb b/meta/recipes-support/vte/vte_0.70.3.bb
similarity index 69%
rename from meta/recipes-support/vte/vte_0.70.2.bb
rename to meta/recipes-support/vte/vte_0.70.3.bb
index ec2fb1f522..0c782b8c2f 100644
--- a/meta/recipes-support/vte/vte_0.70.2.bb
+++ b/meta/recipes-support/vte/vte_0.70.3.bb
@@ -11,34 +11,37 @@  LIC_FILES_CHKSUM = " \
     file://COPYING.XTERM;md5=d7fc3a23c16c039afafe2e042030f057 \
 "
 
-DEPENDS = "glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native icu"
+DEPENDS = "fribidi glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native icu pango zlib"
 
 GNOMEBASEBUILDCLASS = "meson"
 GIR_MESON_OPTION = 'gir'
 GIDOCGEN_MESON_OPTION = "docs"
 
-inherit gnomebase gi-docgen features_check upstream-version-is-even gobject-introspection
+inherit gnomebase gi-docgen features_check upstream-version-is-even gobject-introspection vala
 
-# vapigen.m4 is required when vala is not present (but the one from vala should be used normally)
 SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"
-SRC_URI[archive.sha256sum] = "4d15b4380de3f564d57eabd006389c407c705df5b0c70030fdcc24971a334d80"
+SRC_URI[archive.sha256sum] = "9457134a02f3157fca04f7e0d39bdb0f3099be0a3ce82b7139d0c98a80748f23"
 
 ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
 
-# Help g-ir-scanner find the .so for linking
-do_compile:prepend() {
-    export GIR_EXTRA_LIBS_PATH="${B}/src/.libs"
-}
-
 # Package additional files
 FILES:${PN}-dev += "${datadir}/vala/vapi/*"
 
-PACKAGECONFIG ??= "gnutls"
-PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false,vala-native vala"
+
+
+PACKAGECONFIG ??= " \
+    gnutls \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'gobject-introspection-data', 'vala', '', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gtk4', '', d)} \
+"
+PACKAGECONFIG[gtk4] = "-Dgtk4=true,-Dgtk4=false,gtk4"
+PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false"
 PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls"
 PACKAGECONFIG[systemd] = "-D_systemd=true,-D_systemd=false,systemd"
 # vala requires gir
+PACKAGECONFIG:remove:x86-x32 = "vala"
 PACKAGECONFIG:remove:class-native = "vala"
+PACKAGECONFIG:remove:class-nativesdk = "vala gtk4"
 
 CFLAGS += "-D_GNU_SOURCE"