diff mbox series

[PATCHv2] vte: update 0.70.2 -> 0.70.3

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

Commit Message

Markus Volk Feb. 21, 2023, 6:52 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 and remove unneeded patch

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 ...EXITCODE-macro-for-non-glibc-systems.patch | 42 -------------------
 .../vte/{vte_0.70.2.bb => vte_0.70.3.bb}      | 22 +++++-----
 2 files changed, 10 insertions(+), 54 deletions(-)
 delete mode 100644 meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
 rename meta/recipes-support/vte/{vte_0.70.2.bb => vte_0.70.3.bb} (69%)

Comments

Markus Volk Feb. 21, 2023, 6:53 p.m. UTC | #1
v2 enables vala only, if gobject-introspection-data is in 
DISTRO_FEATURES to unblock platforms that don't provide it

Am Di, 21. Feb 2023 um 19:52:31 +0100 schrieb Markus Volk 
<f_l_k@t-online.de>:
> - Allow to build the gtk4 widget and vapi
>   This is needed to build gtk4 based terminals like blackbox
> - Update dependencies
> - Cleanup recipe and remove unneeded patch
> 
> Signed-off-by: Markus Volk <f_l_k@t-online.de 
> <mailto:f_l_k@t-online.de>>
> ---
>  ...EXITCODE-macro-for-non-glibc-systems.patch | 42 
> -------------------
>  .../vte/{vte_0.70.2.bb => vte_0.70.3.bb}      | 22 +++++-----
>  2 files changed, 10 insertions(+), 54 deletions(-)
>  delete mode 100644 
> meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>  rename meta/recipes-support/vte/{vte_0.70.2.bb => vte_0.70.3.bb} 
> (69%)
> 
> diff --git 
> a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch 
> b/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
> deleted file mode 100644
> index b4100fc381..0000000000
> --- 
> a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -From de9639baac792327c701e509258b8a13f6959e82 Mon Sep 17 00:00:00 
> 2001
> -From: Danilo Spinella <danyspin97@protonmail.com 
> <mailto:danyspin97@protonmail.com>>
> -Date: Thu, 21 Mar 2019 14:19:26 +0100
> -Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
> -MIME-Version: 1.0
> -Content-Type: text/plain; charset=UTF-8
> -Content-Transfer-Encoding: 8bit
> -
> -Upstream-Status: Submitted [1]
> -
> -Signed-off-by: Andreas Müller <schnitzeltony@gmail.com 
> <mailto:schnitzeltony@gmail.com>>
> -
> -[1] <https://gitlab.gnome.org/GNOME/vte/issues/72>
> -
> ----
> - src/missing.hh | 4 ++++
> - src/widget.cc  | 1 +
> - 2 files changed, 5 insertions(+)
> -
> ---- a/src/missing.hh
> -+++ b/src/missing.hh
> -@@ -24,6 +24,10 @@
> - #define NSIG (8 * sizeof(sigset_t))
> - #endif
> -
> -+#ifndef W_EXITCODE
> -+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
> -+#endif
> -+
> - #ifndef HAVE_FDWALK
> - int fdwalk(int (*cb)(void* data, int fd),
> -            void* data);
> ---- a/src/widget.cc
> -+++ b/src/widget.cc
> -@@ -21,6 +21,7 @@
> - #include "widget.hh"
> -
> - #include <sys/wait.h> // for W_EXITCODE
> -+#include "missing.hh" // for W_EXITCODE on non-glibc systems
> -
> - #include <exception>
> - #include <new>
> 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..a39598216b 100644
> --- a/meta/recipes-support/vte/vte_0.70.2.bb
> +++ b/meta/recipes-support/vte/vte_0.70.3.bb
> @@ -11,30 +11,28 @@ LIC_FILES_CHKSUM = " \
>      file://COPYING.XTERM;md5=d7fc3a23c16c039afafe2e042030f057 
> <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" 
> <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 
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 
> 'gobject-introspection-data', 'vala', '', d)} \
> +    ${@bb.utils.contains 
> <mailto:${@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
> --
> 2.34.1
>
Alexandre Belloni Feb. 22, 2023, 11:08 a.m. UTC | #2
Hello,

This causes:

stdio: WARNING: Nothing PROVIDES 'nativesdk-gtk4' (but virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb DEPENDS on or otherwise requires it). Close matches:
stdio: WARNING: Nothing RPROVIDES 'nativesdk-vte' (but virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb RDEPENDS on or otherwise requires it)
stdio: WARNING: Nothing RPROVIDES 'nativesdk-vte-dev' (but virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb RDEPENDS on or otherwise requires it)

On 21/02/2023 19:52:31+0100, Markus Volk wrote:
> - Allow to build the gtk4 widget and vapi
>   This is needed to build gtk4 based terminals like blackbox
> - Update dependencies
> - Cleanup recipe and remove unneeded patch
> 
> Signed-off-by: Markus Volk <f_l_k@t-online.de>
> ---
>  ...EXITCODE-macro-for-non-glibc-systems.patch | 42 -------------------
>  .../vte/{vte_0.70.2.bb => vte_0.70.3.bb}      | 22 +++++-----
>  2 files changed, 10 insertions(+), 54 deletions(-)
>  delete mode 100644 meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>  rename meta/recipes-support/vte/{vte_0.70.2.bb => vte_0.70.3.bb} (69%)
> 
> diff --git a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch b/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
> deleted file mode 100644
> index b4100fc381..0000000000
> --- a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -From de9639baac792327c701e509258b8a13f6959e82 Mon Sep 17 00:00:00 2001
> -From: Danilo Spinella <danyspin97@protonmail.com>
> -Date: Thu, 21 Mar 2019 14:19:26 +0100
> -Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
> -MIME-Version: 1.0
> -Content-Type: text/plain; charset=UTF-8
> -Content-Transfer-Encoding: 8bit
> -
> -Upstream-Status: Submitted [1]
> -
> -Signed-off-by: Andreas M�ller <schnitzeltony@gmail.com>
> -
> -[1] https://gitlab.gnome.org/GNOME/vte/issues/72
> -
> ----
> - src/missing.hh | 4 ++++
> - src/widget.cc  | 1 +
> - 2 files changed, 5 insertions(+)
> -
> ---- a/src/missing.hh
> -+++ b/src/missing.hh
> -@@ -24,6 +24,10 @@
> - #define NSIG (8 * sizeof(sigset_t))
> - #endif
> - 
> -+#ifndef W_EXITCODE
> -+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
> -+#endif
> -+
> - #ifndef HAVE_FDWALK
> - int fdwalk(int (*cb)(void* data, int fd),
> -            void* data);
> ---- a/src/widget.cc
> -+++ b/src/widget.cc
> -@@ -21,6 +21,7 @@
> - #include "widget.hh"
> - 
> - #include <sys/wait.h> // for W_EXITCODE
> -+#include "missing.hh" // for W_EXITCODE on non-glibc systems
> - 
> - #include <exception>
> - #include <new>
> 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..a39598216b 100644
> --- a/meta/recipes-support/vte/vte_0.70.2.bb
> +++ b/meta/recipes-support/vte/vte_0.70.3.bb
> @@ -11,30 +11,28 @@ 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
> -- 
> 2.34.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#177535): https://lists.openembedded.org/g/openembedded-core/message/177535
> Mute This Topic: https://lists.openembedded.org/mt/97115916/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Markus Volk Feb. 22, 2023, 11:31 a.m. UTC | #3
What would be the preferred way to fix it?

I'd prefer the more progressive way and add BBCLASSEXTEND +="nativesdk" 
to gtk.bb
But this would also add the need to build libxkbcommon and 
xkeyboard-config for nativesdk

vte recipe already has a PACKAGECONFIG:remove line, so i guess it will 
be less invasive to additionally add:
PACKAGECONFIG:remove:class-nativesdk = "gtk4"

Am Mi, 22. Feb 2023 um 12:08:45 +0100 schrieb Alexandre Belloni via 
lists.openembedded.org 
<alexandre.belloni=bootlin.com@lists.openembedded.org>:
> Hello,
> 
> This causes:
> 
> stdio: WARNING: Nothing PROVIDES 'nativesdk-gtk4' (but 
> virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb 
> DEPENDS on or otherwise requires it). Close matches:
> stdio: WARNING: Nothing RPROVIDES 'nativesdk-vte' (but 
> virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb 
> RDEPENDS on or otherwise requires it)
> stdio: WARNING: Nothing RPROVIDES 'nativesdk-vte-dev' (but 
> virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb 
> RDEPENDS on or otherwise requires it)
> 
> On 21/02/2023 19:52:31+0100, Markus Volk wrote:
>>  - Allow to build the gtk4 widget and vapi
>>    This is needed to build gtk4 based terminals like blackbox
>>  - Update dependencies
>>  - Cleanup recipe and remove unneeded patch
>> 
>>  Signed-off-by: Markus Volk <f_l_k@t-online.de 
>> <mailto:f_l_k@t-online.de>>
>>  ---
>>   ...EXITCODE-macro-for-non-glibc-systems.patch | 42 
>> -------------------
>>   .../vte/{vte_0.70.2.bb => vte_0.70.3.bb}      | 22 +++++-----
>>   2 files changed, 10 insertions(+), 54 deletions(-)
>>   delete mode 100644 
>> meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>>   rename meta/recipes-support/vte/{vte_0.70.2.bb => vte_0.70.3.bb} 
>> (69%)
>> 
>>  diff --git 
>> a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch 
>> b/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>>  deleted file mode 100644
>>  index b4100fc381..0000000000
>>  --- 
>> a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>>  +++ /dev/null
>>  @@ -1,42 +0,0 @@
>>  -From de9639baac792327c701e509258b8a13f6959e82 Mon Sep 17 00:00:00 
>> 2001
>>  -From: Danilo Spinella <danyspin97@protonmail.com 
>> <mailto:danyspin97@protonmail.com>>
>>  -Date: Thu, 21 Mar 2019 14:19:26 +0100
>>  -Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
>>  -MIME-Version: 1.0
>>  -Content-Type: text/plain; charset=UTF-8
>>  -Content-Transfer-Encoding: 8bit
>>  -
>>  -Upstream-Status: Submitted [1]
>>  -
>>  -Signed-off-by: Andreas Müller <schnitzeltony@gmail.com 
>> <mailto:schnitzeltony@gmail.com>>
>>  -
>>  -[1] <https://gitlab.gnome.org/GNOME/vte/issues/72>
>>  -
>>  ----
>>  - src/missing.hh | 4 ++++
>>  - src/widget.cc  | 1 +
>>  - 2 files changed, 5 insertions(+)
>>  -
>>  ---- a/src/missing.hh
>>  -+++ b/src/missing.hh
>>  -@@ -24,6 +24,10 @@
>>  - #define NSIG (8 * sizeof(sigset_t))
>>  - #endif
>>  -
>>  -+#ifndef W_EXITCODE
>>  -+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
>>  -+#endif
>>  -+
>>  - #ifndef HAVE_FDWALK
>>  - int fdwalk(int (*cb)(void* data, int fd),
>>  -            void* data);
>>  ---- a/src/widget.cc
>>  -+++ b/src/widget.cc
>>  -@@ -21,6 +21,7 @@
>>  - #include "widget.hh"
>>  -
>>  - #include <sys/wait.h> // for W_EXITCODE
>>  -+#include "missing.hh" // for W_EXITCODE on non-glibc systems
>>  -
>>  - #include <exception>
>>  - #include <new>
>>  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..a39598216b 100644
>>  --- a/meta/recipes-support/vte/vte_0.70.2.bb
>>  +++ b/meta/recipes-support/vte/vte_0.70.3.bb
>>  @@ -11,30 +11,28 @@ LIC_FILES_CHKSUM = " \
>>       file://COPYING.XTERM;md5=d7fc3a23c16c039afafe2e042030f057 
>> <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" 
>> <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 
>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 
>> 'gobject-introspection-data', 'vala', '', d)} \
>>  +    ${@bb.utils.contains 
>> <mailto:${@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
>>  --
>>  2.34.1
>> 
> 
>> 
>> 
>> 
> 
> 
> --
> Alexandre Belloni, co-owner and COO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com <https://bootlin.com/>
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#177564): 
> <https://lists.openembedded.org/g/openembedded-core/message/177564>
> Mute This Topic: <https://lists.openembedded.org/mt/97115916/3618223>
> Group Owner: openembedded-core+owner@lists.openembedded.org 
> <mailto:openembedded-core+owner@lists.openembedded.org>
> Unsubscribe: 
> <https://lists.openembedded.org/g/openembedded-core/unsub> 
> [f_l_k@t-online.de <mailto:f_l_k@t-online.de>]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Markus Volk Feb. 22, 2023, 11:50 a.m. UTC | #4
Verified that both ways would work and sent a patch for the second 
approach. Looks easier for now

Am Mi, 22. Feb 2023 um 12:31:26 +0100 schrieb Markus Volk 
<f_l_k@t-online.de>:
> What would be the preferred way to fix it?
> 
> I'd prefer the more progressive way and add BBCLASSEXTEND 
> +="nativesdk" to gtk.bb
> But this would also add the need to build libxkbcommon and 
> xkeyboard-config for nativesdk
> 
> vte recipe already has a PACKAGECONFIG:remove line, so i guess it 
> will be less invasive to additionally add:
> PACKAGECONFIG:remove:class-nativesdk = "gtk4"
> 
> Am Mi, 22. Feb 2023 um 12:08:45 +0100 schrieb Alexandre Belloni via 
> lists.openembedded.org 
> <alexandre.belloni=bootlin.com@lists.openembedded.org>:
>> Hello,
>> 
>> This causes:
>> 
>> stdio: WARNING: Nothing PROVIDES 'nativesdk-gtk4' (but 
>> virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb 
>> DEPENDS on or otherwise requires it). Close matches:
>> stdio: WARNING: Nothing RPROVIDES 'nativesdk-vte' (but 
>> virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb 
>> RDEPENDS on or otherwise requires it)
>> stdio: WARNING: Nothing RPROVIDES 'nativesdk-vte-dev' (but 
>> virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-support/vte/vte_0.70.3.bb 
>> RDEPENDS on or otherwise requires it)
>> 
>> On 21/02/2023 19:52:31+0100, Markus Volk wrote:
>>>  - Allow to build the gtk4 widget and vapi
>>>    This is needed to build gtk4 based terminals like blackbox
>>>  - Update dependencies
>>>  - Cleanup recipe and remove unneeded patch
>>> 
>>>  Signed-off-by: Markus Volk <f_l_k@t-online.de 
>>> <mailto:f_l_k@t-online.de>>
>>>  ---
>>>   ...EXITCODE-macro-for-non-glibc-systems.patch | 42 
>>> -------------------
>>>   .../vte/{vte_0.70.2.bb => vte_0.70.3.bb}      | 22 +++++-----
>>>   2 files changed, 10 insertions(+), 54 deletions(-)
>>>   delete mode 100644 
>>> meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>>>   rename meta/recipes-support/vte/{vte_0.70.2.bb => vte_0.70.3.bb} 
>>> (69%)
>>> 
>>>  diff --git 
>>> a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch 
>>> b/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>>>  deleted file mode 100644
>>>  index b4100fc381..0000000000
>>>  --- 
>>> a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
>>>  +++ /dev/null
>>>  @@ -1,42 +0,0 @@
>>>  -From de9639baac792327c701e509258b8a13f6959e82 Mon Sep 17 00:00:00 
>>> 2001
>>>  -From: Danilo Spinella <danyspin97@protonmail.com 
>>> <mailto:danyspin97@protonmail.com>>
>>>  -Date: Thu, 21 Mar 2019 14:19:26 +0100
>>>  -Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
>>>  -MIME-Version: 1.0
>>>  -Content-Type: text/plain; charset=UTF-8
>>>  -Content-Transfer-Encoding: 8bit
>>>  -
>>>  -Upstream-Status: Submitted [1]
>>>  -
>>>  -Signed-off-by: Andreas Müller <schnitzeltony@gmail.com 
>>> <mailto:schnitzeltony@gmail.com>>
>>>  -
>>>  -[1] <https://gitlab.gnome.org/GNOME/vte/issues/72>
>>>  -
>>>  ----
>>>  - src/missing.hh | 4 ++++
>>>  - src/widget.cc  | 1 +
>>>  - 2 files changed, 5 insertions(+)
>>>  -
>>>  ---- a/src/missing.hh
>>>  -+++ b/src/missing.hh
>>>  -@@ -24,6 +24,10 @@
>>>  - #define NSIG (8 * sizeof(sigset_t))
>>>  - #endif
>>>  -
>>>  -+#ifndef W_EXITCODE
>>>  -+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
>>>  -+#endif
>>>  -+
>>>  - #ifndef HAVE_FDWALK
>>>  - int fdwalk(int (*cb)(void* data, int fd),
>>>  -            void* data);
>>>  ---- a/src/widget.cc
>>>  -+++ b/src/widget.cc
>>>  -@@ -21,6 +21,7 @@
>>>  - #include "widget.hh"
>>>  -
>>>  - #include <sys/wait.h> // for W_EXITCODE
>>>  -+#include "missing.hh" // for W_EXITCODE on non-glibc systems
>>>  -
>>>  - #include <exception>
>>>  - #include <new>
>>>  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..a39598216b 100644
>>>  --- a/meta/recipes-support/vte/vte_0.70.2.bb
>>>  +++ b/meta/recipes-support/vte/vte_0.70.3.bb
>>>  @@ -11,30 +11,28 @@ LIC_FILES_CHKSUM = " \
>>>       file://COPYING.XTERM;md5=d7fc3a23c16c039afafe2e042030f057 
>>> <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" 
>>> <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 
>>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 
>>> 'gobject-introspection-data', 'vala', '', d)} \
>>>  +    ${@bb.utils.contains 
>>> <mailto:${@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
>>>  --
>>>  2.34.1
>>> 
>> 
>>> 
>>> 
>>> 
>> 
>> 
>> --
>> Alexandre Belloni, co-owner and COO, Bootlin
>> Embedded Linux and Kernel engineering
>> https://bootlin.com <https://bootlin.com/>
>> 
>> 
>>
diff mbox series

Patch

diff --git a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch b/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
deleted file mode 100644
index b4100fc381..0000000000
--- a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
+++ /dev/null
@@ -1,42 +0,0 @@ 
-From de9639baac792327c701e509258b8a13f6959e82 Mon Sep 17 00:00:00 2001
-From: Danilo Spinella <danyspin97@protonmail.com>
-Date: Thu, 21 Mar 2019 14:19:26 +0100
-Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Submitted [1]
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
-
-[1] https://gitlab.gnome.org/GNOME/vte/issues/72
-
----
- src/missing.hh | 4 ++++
- src/widget.cc  | 1 +
- 2 files changed, 5 insertions(+)
-
---- a/src/missing.hh
-+++ b/src/missing.hh
-@@ -24,6 +24,10 @@
- #define NSIG (8 * sizeof(sigset_t))
- #endif
- 
-+#ifndef W_EXITCODE
-+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
-+#endif
-+
- #ifndef HAVE_FDWALK
- int fdwalk(int (*cb)(void* data, int fd),
-            void* data);
---- a/src/widget.cc
-+++ b/src/widget.cc
-@@ -21,6 +21,7 @@
- #include "widget.hh"
- 
- #include <sys/wait.h> // for W_EXITCODE
-+#include "missing.hh" // for W_EXITCODE on non-glibc systems
- 
- #include <exception>
- #include <new>
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..a39598216b 100644
--- a/meta/recipes-support/vte/vte_0.70.2.bb
+++ b/meta/recipes-support/vte/vte_0.70.3.bb
@@ -11,30 +11,28 @@  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