commit:     c71451231fa9da213e3b5213957fe6a66a63fd84
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun Mar  3 20:38:09 2024 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Mar  3 20:54:29 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7145123

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 <AT> gentoo.org>

 app-crypt/gcr/Manifest         |  1 +
 app-crypt/gcr/gcr-4.2.1.ebuild | 94 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 95 insertions(+)

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
+}

Reply via email to