diff options
| author | Markus Volk <f_l_k@t-online.de> | 2022-12-09 15:11:15 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-12-17 11:10:04 +0000 |
| commit | 0dea8ef67018f4a80959b372f2722e54fb635f9c (patch) | |
| tree | 95ff4c53bbc23a907db89d61f2ddb3b66dd2e7ab /meta | |
| parent | 15bdcd1d5981c90e378075c82eb3a6e5de442be1 (diff) | |
| download | poky-0dea8ef67018f4a80959b372f2722e54fb635f9c.tar.gz | |
gcr: add recipe for gcr-4, needed to build with gtk4
(From OE-Core rev: 2dd272956f8a0450c998b584e27b75cfec00de22)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
| -rw-r--r-- | meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch | 49 | ||||
| -rw-r--r-- | meta/recipes-gnome/gcr/gcr_4.0.0.bb | 57 |
2 files changed, 106 insertions, 0 deletions
diff --git a/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch b/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch new file mode 100644 index 0000000000..940f78ebab --- /dev/null +++ b/meta/recipes-gnome/gcr/gcr/0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | From 9b67bb18d8409e0e693cc6000507acbd73a30eab Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alexander Kanavin <alex@linutronix.de> | ||
| 3 | Date: Wed, 16 Nov 2022 11:27:24 +0100 | ||
| 4 | Subject: [PATCH 1/2] meson.build: correctly handle disabled ssh_agent option | ||
| 5 | |||
| 6 | Existing code produces these errors: | ||
| 7 | | gcr/meson.build:61:0: ERROR: Unable to get the path of a not-found external program | ||
| 8 | | gcr/meson.build:101:5: ERROR: Unknown variable "ssh_add_path". | ||
| 9 | |||
| 10 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 11 | |||
| 12 | Upstream-Status: Backport [ https://gitlab.gnome.org/GNOME/gcr/-/commit/9b67bb18d8409e0e693cc6000507acbd73a30eab ] | ||
| 13 | --- | ||
| 14 | meson.build | 12 ++++++++---- | ||
| 15 | 1 file changed, 8 insertions(+), 4 deletions(-) | ||
| 16 | |||
| 17 | diff --git a/meson.build b/meson.build | ||
| 18 | index 3f35173..11d7fa7 100644 | ||
| 19 | --- a/meson.build | ||
| 20 | +++ b/meson.build | ||
| 21 | @@ -58,8 +58,10 @@ if p11_system_config_modules == '' | ||
| 22 | error('Couldn\'t find location for pkcs11 module config') | ||
| 23 | endif | ||
| 24 | libsecret_dep = dependency('libsecret-1', version: '>= 0.20', required: get_option('ssh_agent')) | ||
| 25 | -ssh_add_path = find_program('ssh-add', required: get_option('ssh_agent')).full_path() | ||
| 26 | -ssh_agent_path = find_program('ssh-agent', required: get_option('ssh_agent')).full_path() | ||
| 27 | +if get_option('ssh_agent') | ||
| 28 | + ssh_add_path = find_program('ssh-add').full_path() | ||
| 29 | + ssh_agent_path = find_program('ssh-agent').full_path() | ||
| 30 | +endif | ||
| 31 | |||
| 32 | with_systemd = false | ||
| 33 | libsystemd_deps = [] | ||
| 34 | @@ -96,8 +98,10 @@ conf.set('HAVE_TIMEGM', cc.has_function('timegm')) | ||
| 35 | conf.set('HAVE_MLOCK', cc.has_function('mlock')) | ||
| 36 | conf.set_quoted('GPG_EXECUTABLE', gpg_path) | ||
| 37 | conf.set_quoted('LIBGCRYPT_VERSION', libgcrypt_dep.version()) | ||
| 38 | -conf.set_quoted('SSH_ADD_EXECUTABLE', ssh_add_path) | ||
| 39 | -conf.set_quoted('SSH_AGENT_EXECUTABLE', ssh_agent_path) | ||
| 40 | +if get_option('ssh_agent') | ||
| 41 | + conf.set_quoted('SSH_ADD_EXECUTABLE', ssh_add_path) | ||
| 42 | + conf.set_quoted('SSH_AGENT_EXECUTABLE', ssh_agent_path) | ||
| 43 | +endif | ||
| 44 | conf.set10('WITH_SYSTEMD', with_systemd) | ||
| 45 | config_file = configure_file( | ||
| 46 | output: 'config.h', | ||
| 47 | -- | ||
| 48 | 2.34.1 | ||
| 49 | |||
diff --git a/meta/recipes-gnome/gcr/gcr_4.0.0.bb b/meta/recipes-gnome/gcr/gcr_4.0.0.bb new file mode 100644 index 0000000000..264069ffd1 --- /dev/null +++ b/meta/recipes-gnome/gcr/gcr_4.0.0.bb | |||
| @@ -0,0 +1,57 @@ | |||
| 1 | SUMMARY = "A library for bits of crypto UI and parsing etc" | ||
| 2 | DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \ | ||
| 3 | accessing key stores. It also provides the viewer for crypto files on the \ | ||
| 4 | GNOME desktop." | ||
| 5 | HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr" | ||
| 6 | BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues" | ||
| 7 | |||
| 8 | LICENSE = "GPL-2.0-only" | ||
| 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" | ||
| 10 | |||
| 11 | DEPENDS = "p11-kit glib-2.0 libgcrypt gnupg-native \ | ||
| 12 | ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}" | ||
| 13 | |||
| 14 | CACHED_CONFIGUREVARS += "ac_cv_path_GPG='gpg2'" | ||
| 15 | |||
| 16 | CFLAGS += "-D_GNU_SOURCE" | ||
| 17 | |||
| 18 | GNOMEBASEBUILDCLASS = "meson" | ||
| 19 | GTKDOC_MESON_OPTION = "gtk_doc" | ||
| 20 | inherit gnomebase gtk-icon-cache gi-docgen features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg | ||
| 21 | UPSTREAM_CHECK_REGEX = "gcr-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz" | ||
| 22 | |||
| 23 | SRC_URI += "file://0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch" | ||
| 24 | SRC_URI[archive.sha256sum] = "c45855924f0ee7bab43e2dd38bfafd2ac815c6e9864341c0161e171173dcec7c" | ||
| 25 | |||
| 26 | PACKAGECONFIG ??= " \ | ||
| 27 | ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \ | ||
| 28 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)} \ | ||
| 29 | ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'gtk', '', d)} \ | ||
| 30 | " | ||
| 31 | PACKAGECONFIG[gtk] = "-Dgtk4=true,-Dgtk4=false,gtk4" | ||
| 32 | PACKAGECONFIG[ssh_agent] = "-Dssh_agent=true,-Dssh_agent=false,libsecret,openssh" | ||
| 33 | #'Use systemd socket activation for server programs' | ||
| 34 | PACKAGECONFIG[systemd] = "-Dsystemd=enabled,-Dsystemd=disabled,systemd" | ||
| 35 | |||
| 36 | FILES:${PN} += " \ | ||
| 37 | ${datadir}/dbus-1 \ | ||
| 38 | ${datadir}/gcr-4 \ | ||
| 39 | ${systemd_user_unitdir}/gcr-ssh-agent.socket \ | ||
| 40 | ${systemd_user_unitdir}/gcr-ssh-agent.service \ | ||
| 41 | " | ||
| 42 | |||
| 43 | # http://errors.yoctoproject.org/Errors/Details/20229/ | ||
| 44 | ARM_INSTRUCTION_SET:armv4 = "arm" | ||
| 45 | ARM_INSTRUCTION_SET:armv5 = "arm" | ||
| 46 | ARM_INSTRUCTION_SET:armv6 = "arm" | ||
| 47 | |||
| 48 | EXTRA_OEMESON += "--cross-file=${WORKDIR}/meson-${PN}.cross" | ||
| 49 | |||
| 50 | do_write_config:append() { | ||
| 51 | cat >${WORKDIR}/meson-${PN}.cross <<EOF | ||
| 52 | [binaries] | ||
| 53 | gpg2 = '${bindir}/gpg2' | ||
| 54 | ssh-add = '${bindir}/ssh-add' | ||
| 55 | ssh-agent = '${bindir}/ssh-agent' | ||
| 56 | EOF | ||
| 57 | } | ||
