blob: 22edd386fcb7a01f23e4e4405def686b94bc316b [file] [log] [blame]
Andrew Geissler517393d2023-01-13 08:55:19 -06001SUMMARY = "A library for bits of crypto UI and parsing etc"
2DESCRIPTION = "GCR is a library for displaying certificates, and crypto UI, \
3accessing key stores. It also provides the viewer for crypto files on the \
4GNOME desktop."
5HOMEPAGE = "https://gitlab.gnome.org/GNOME/gcr"
6BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues"
7
8LICENSE = "GPL-2.0-only"
9LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
10
11DEPENDS = "p11-kit glib-2.0 libgcrypt gnupg-native \
12 ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}"
13
14CACHED_CONFIGUREVARS += "ac_cv_path_GPG='gpg2'"
15
16CFLAGS += "-D_GNU_SOURCE"
17
18GNOMEBASEBUILDCLASS = "meson"
19GTKDOC_MESON_OPTION = "gtk_doc"
20inherit gnomebase gtk-icon-cache gi-docgen features_check upstream-version-is-even vala gobject-introspection gettext mime mime-xdg
21UPSTREAM_CHECK_REGEX = "gcr-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz"
22
23REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl', '', d)}"
24
25SRC_URI += "file://0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch"
26SRC_URI[archive.sha256sum] = "c45855924f0ee7bab43e2dd38bfafd2ac815c6e9864341c0161e171173dcec7c"
27
28PACKAGECONFIG ??= " \
29 ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
30 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)} \
31 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'gtk', '', d)} \
32"
33PACKAGECONFIG[gtk] = "-Dgtk4=true,-Dgtk4=false,gtk4"
34PACKAGECONFIG[ssh_agent] = "-Dssh_agent=true,-Dssh_agent=false,libsecret,openssh"
35#'Use systemd socket activation for server programs'
36PACKAGECONFIG[systemd] = "-Dsystemd=enabled,-Dsystemd=disabled,systemd"
37
38FILES:${PN} += " \
39 ${datadir}/dbus-1 \
40 ${datadir}/gcr-4 \
41 ${systemd_user_unitdir}/gcr-ssh-agent.socket \
42 ${systemd_user_unitdir}/gcr-ssh-agent.service \
43"
44
45# http://errors.yoctoproject.org/Errors/Details/20229/
46ARM_INSTRUCTION_SET:armv4 = "arm"
47ARM_INSTRUCTION_SET:armv5 = "arm"
48ARM_INSTRUCTION_SET:armv6 = "arm"
49
50EXTRA_OEMESON += "--cross-file=${WORKDIR}/meson-${PN}.cross"
51
52do_write_config:append() {
53 cat >${WORKDIR}/meson-${PN}.cross <<EOF
54[binaries]
55gpg2 = '${bindir}/gpg2'
56ssh-add = '${bindir}/ssh-add'
57ssh-agent = '${bindir}/ssh-agent'
58EOF
59}