blob: ba5660a5ede2758453b9c59839af2aadabc4ec3d [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 = "[^\d\.](?P<pver>3.(?!9\d+)\d+(\.\d+)+)\.tar"
22
23SRC_URI = "https://download.gnome.org/sources/gcr/3.41/gcr-${PV}.tar.xz;name=archive"
24SRC_URI += "file://0001-meson.build-correctly-handle-disabled-ssh_agent-opti.patch"
25SRC_URI[archive.sha256sum] = "bb7128a3c2febbfee9c03b90d77d498d0ceb237b0789802d60185c71c4bea24f"
26
27S = "${WORKDIR}/gcr-${PV}"
28
29PACKAGECONFIG ??= " \
30 ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
31 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)} \
32 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'gtk', '', d)} \
33"
34PACKAGECONFIG[gtk] = "-Dgtk=true,-Dgtk=false,gtk+3"
35PACKAGECONFIG[ssh_agent] = "-Dssh_agent=true,-Dssh_agent=false,libsecret,openssh"
36#'Use systemd socket activation for server programs'
37PACKAGECONFIG[systemd] = "-Dsystemd=enabled,-Dsystemd=disabled,systemd"
38
39FILES:${PN} += " \
40 ${datadir}/dbus-1 \
41 ${datadir}/gcr-3 \
42 ${systemd_user_unitdir}/gcr-ssh-agent.socket \
43 ${systemd_user_unitdir}/gcr-ssh-agent.service \
44"
45
46# http://errors.yoctoproject.org/Errors/Details/20229/
47ARM_INSTRUCTION_SET:armv4 = "arm"
48ARM_INSTRUCTION_SET:armv5 = "arm"
49ARM_INSTRUCTION_SET:armv6 = "arm"
50
51EXTRA_OEMESON += "--cross-file ${WORKDIR}/meson-${PN}.cross"
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}