mirror of
https://git.yoctoproject.org/poky
synced 2026-01-29 21:08:42 +01:00
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>
This commit is contained in:
committed by
Richard Purdie
parent
15bdcd1d59
commit
0dea8ef670
@@ -0,0 +1,49 @@
|
||||
From 9b67bb18d8409e0e693cc6000507acbd73a30eab Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex@linutronix.de>
|
||||
Date: Wed, 16 Nov 2022 11:27:24 +0100
|
||||
Subject: [PATCH 1/2] meson.build: correctly handle disabled ssh_agent option
|
||||
|
||||
Existing code produces these errors:
|
||||
| gcr/meson.build:61:0: ERROR: Unable to get the path of a not-found external program
|
||||
| gcr/meson.build:101:5: ERROR: Unknown variable "ssh_add_path".
|
||||
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
|
||||
Upstream-Status: Backport [ https://gitlab.gnome.org/GNOME/gcr/-/commit/9b67bb18d8409e0e693cc6000507acbd73a30eab ]
|
||||
---
|
||||
meson.build | 12 ++++++++----
|
||||
1 file changed, 8 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 3f35173..11d7fa7 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -58,8 +58,10 @@ if p11_system_config_modules == ''
|
||||
error('Couldn\'t find location for pkcs11 module config')
|
||||
endif
|
||||
libsecret_dep = dependency('libsecret-1', version: '>= 0.20', required: get_option('ssh_agent'))
|
||||
-ssh_add_path = find_program('ssh-add', required: get_option('ssh_agent')).full_path()
|
||||
-ssh_agent_path = find_program('ssh-agent', required: get_option('ssh_agent')).full_path()
|
||||
+if get_option('ssh_agent')
|
||||
+ ssh_add_path = find_program('ssh-add').full_path()
|
||||
+ ssh_agent_path = find_program('ssh-agent').full_path()
|
||||
+endif
|
||||
|
||||
with_systemd = false
|
||||
libsystemd_deps = []
|
||||
@@ -96,8 +98,10 @@ conf.set('HAVE_TIMEGM', cc.has_function('timegm'))
|
||||
conf.set('HAVE_MLOCK', cc.has_function('mlock'))
|
||||
conf.set_quoted('GPG_EXECUTABLE', gpg_path)
|
||||
conf.set_quoted('LIBGCRYPT_VERSION', libgcrypt_dep.version())
|
||||
-conf.set_quoted('SSH_ADD_EXECUTABLE', ssh_add_path)
|
||||
-conf.set_quoted('SSH_AGENT_EXECUTABLE', ssh_agent_path)
|
||||
+if get_option('ssh_agent')
|
||||
+ conf.set_quoted('SSH_ADD_EXECUTABLE', ssh_add_path)
|
||||
+ conf.set_quoted('SSH_AGENT_EXECUTABLE', ssh_agent_path)
|
||||
+endif
|
||||
conf.set10('WITH_SYSTEMD', with_systemd)
|
||||
config_file = configure_file(
|
||||
output: 'config.h',
|
||||
--
|
||||
2.34.1
|
||||
|
||||
57
meta/recipes-gnome/gcr/gcr_4.0.0.bb
Normal file
57
meta/recipes-gnome/gcr/gcr_4.0.0.bb
Normal file
@@ -0,0 +1,57 @@
|
||||
SUMMARY = "A library for bits of crypto UI and parsing etc"
|
||||
DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \
|
||||
accessing key stores. It also provides the viewer for crypto files on the \
|
||||
GNOME desktop."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues"
|
||||
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
|
||||
|
||||
DEPENDS = "p11-kit glib-2.0 libgcrypt gnupg-native \
|
||||
${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}"
|
||||
|
||||
CACHED_CONFIGUREVARS += "ac_cv_path_GPG='gpg2'"
|
||||
|
||||
CFLAGS += "-D_GNU_SOURCE"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
inherit gnomebase gtk-icon-cache gi-docgen features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg
|
||||
UPSTREAM_CHECK_REGEX = "gcr-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz"
|
||||
|
||||
SRC_URI += "file://0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch"
|
||||
SRC_URI[archive.sha256sum] = "c45855924f0ee7bab43e2dd38bfafd2ac815c6e9864341c0161e171173dcec7c"
|
||||
|
||||
PACKAGECONFIG ??= " \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'gtk', '', d)} \
|
||||
"
|
||||
PACKAGECONFIG[gtk] = "-Dgtk4=true,-Dgtk4=false,gtk4"
|
||||
PACKAGECONFIG[ssh_agent] = "-Dssh_agent=true,-Dssh_agent=false,libsecret,openssh"
|
||||
#'Use systemd socket activation for server programs'
|
||||
PACKAGECONFIG[systemd] = "-Dsystemd=enabled,-Dsystemd=disabled,systemd"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/gcr-4 \
|
||||
${systemd_user_unitdir}/gcr-ssh-agent.socket \
|
||||
${systemd_user_unitdir}/gcr-ssh-agent.service \
|
||||
"
|
||||
|
||||
# http://errors.yoctoproject.org/Errors/Details/20229/
|
||||
ARM_INSTRUCTION_SET:armv4 = "arm"
|
||||
ARM_INSTRUCTION_SET:armv5 = "arm"
|
||||
ARM_INSTRUCTION_SET:armv6 = "arm"
|
||||
|
||||
EXTRA_OEMESON += "--cross-file=${WORKDIR}/meson-${PN}.cross"
|
||||
|
||||
do_write_config:append() {
|
||||
cat >${WORKDIR}/meson-${PN}.cross <<EOF
|
||||
[binaries]
|
||||
gpg2 = '${bindir}/gpg2'
|
||||
ssh-add = '${bindir}/ssh-add'
|
||||
ssh-agent = '${bindir}/ssh-agent'
|
||||
EOF
|
||||
}
|
||||
Reference in New Issue
Block a user