diff options
author | 2024-03-03 22:38:09 +0200 | |
---|---|---|
committer | 2024-03-03 22:54:29 +0200 | |
commit | c71451231fa9da213e3b5213957fe6a66a63fd84 (patch) | |
tree | 79fa5292e083c43d676878b5b57aaf33ddabf29e | |
parent | net-libs/glib-networking: add 2.78.1 (diff) | |
download | gentoo-c71451231fa9da213e3b5213957fe6a66a63fd84.tar.gz gentoo-c71451231fa9da213e3b5213957fe6a66a63fd84.tar.bz2 gentoo-c71451231fa9da213e3b5213957fe6a66a63fd84.zip |
app-crypt/gcr: add 4.2.1, enable py3.12, disable LTO
The tests fail with LTO enabled, but otherwise seems to work.
As this is a security/crypto package, err on the safe side and disable LTO
overall for now, if this is more than a test failure trigger.
Signed-off-by: Mart Raudsepp <leio@gentoo.org>
-rw-r--r-- | app-crypt/gcr/Manifest | 1 | ||||
-rw-r--r-- | app-crypt/gcr/gcr-4.2.1.ebuild | 94 |
2 files changed, 95 insertions, 0 deletions
diff --git a/app-crypt/gcr/Manifest b/app-crypt/gcr/Manifest index 9d265493247c..a29030333924 100644 --- a/app-crypt/gcr/Manifest +++ b/app-crypt/gcr/Manifest @@ -1,2 +1,3 @@ DIST gcr-3.41.1.tar.xz 1030368 BLAKE2B 9d254b7f2ad864c45200e58b685db97c1ffbc83d29ba8cbda94d30ec565aa3dc5a2535305dc63b3264131b68ec9e48f37ac30d5ba08d0ce156f3b6091cd62dc1 SHA512 dd70d41636ede863d05824b26823a8f572902f7a9b6f09b0c70586ef0d4c046864e6956130b9231850a515a9fbfcd56faf20354c1cf8f697f005827c048a2325 DIST gcr-4.1.0.tar.xz 722776 BLAKE2B 910cef50301a5988979f368501a8c62cf264b8af54c909309c335b06117e0504c39afd5f1c92613f13ce09db154ae5036af1ade50bd7f1482c48efd7abf02d22 SHA512 a91a5b0a7b62f7756dec2e7e19a59a4087a1423ccf24c5dd6d4a18de0a58fd91c5d5c131233360a3334c236b28ee94ec6889fcec1de85771a4b6a5daa5b9e203 +DIST gcr-4.2.1.tar.xz 719392 BLAKE2B a9134258f6daa59de4924f6bac01499d3bf87aae5e9d9ff5c69b2289ba0e82ef4c3f93a1ca7b1b007815e51e0c56f10a8abc616b31518dfa83581e8ffc5b3309 SHA512 fbb1664f6e276e35296aec46dab53ff308d031cae2f25b7d1ff5abdb56c5bd3764927d38b997d2ccbd260975f445d71619b2487327786c30b5f34d5e8865ff25 diff --git a/app-crypt/gcr/gcr-4.2.1.ebuild b/app-crypt/gcr/gcr-4.2.1.ebuild new file mode 100644 index 000000000000..60362694f682 --- /dev/null +++ b/app-crypt/gcr/gcr-4.2.1.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit flag-o-matic gnome.org gnome2-utils meson python-any-r1 vala xdg + +DESCRIPTION="Libraries for cryptographic UIs and accessing PKCS#11 modules" +HOMEPAGE="https://gitlab.gnome.org/GNOME/gcr" + +LICENSE="GPL-2+ LGPL-2+" +SLOT="4/gcr-4.4-gck-2.2" # subslot = soname and soversion of libgcr and libgck + +IUSE="gtk gtk-doc +introspection systemd test +vala" +REQUIRED_USE=" + gtk-doc? ( introspection ) + vala? ( introspection ) +" +RESTRICT="!test? ( test )" + +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +DEPEND=" + >=dev-libs/glib-2.68.0:2 + >=dev-libs/libgcrypt-1.2.2:0= + >=app-crypt/p11-kit-0.19.0 + >=app-crypt/libsecret-0.20 + systemd? ( sys-apps/systemd:= ) + gtk? ( gui-libs/gtk:4[introspection?] ) + >=sys-apps/dbus-1 + introspection? ( >=dev-libs/gobject-introspection-1.58:= ) + !<app-crypt/gcr-3.41.1-r1 +" +RDEPEND="${DEPEND}" +PDEPEND="app-crypt/gnupg" +BDEPEND=" + ${PYTHON_DEPS} + gtk? ( dev-libs/libxml2:2 ) + dev-util/gdbus-codegen + dev-util/glib-utils + gtk-doc? ( dev-util/gi-docgen ) + >=sys-devel/gettext-0.19.8 + test? ( app-crypt/gnupg ) + virtual/pkgconfig + vala? ( $(vala_depend) ) +" + +pkg_setup() { + python-any-r1_pkg_setup +} + +src_prepare() { + default + use vala && vala_setup + xdg_environment_reset +} + +src_configure() { + filter-lto # https://gitlab.gnome.org/GNOME/gcr/-/issues/43 + local emesonargs=( + $(meson_use introspection) + $(meson_use gtk gtk4) + $(meson_use gtk-doc gtk_doc) + -Dgpg_path="${EPREFIX}"/usr/bin/gpg + -Dssh_agent=true + $(meson_feature systemd) + $(meson_use vala vapi) + ) + meson_src_configure +} + +src_test() { + dbus-run-session meson test -C "${BUILD_DIR}" || die 'tests failed' +} + +src_install() { + meson_src_install + + if use gtk-doc; then + mkdir -p "${ED}"/usr/share/gtk-doc/html/ || die + mv "${ED}"/usr/share/doc/{gck-2,gcr-4} "${ED}"/usr/share/gtk-doc/html/ || die + fi +} + +pkg_postinst() { + xdg_pkg_postinst + gnome2_schemas_update +} + +pkg_postrm() { + xdg_pkg_postrm + gnome2_schemas_update +} |