diff options
Diffstat (limited to 'app-crypt/gcr')
-rw-r--r-- | app-crypt/gcr/Manifest | 3 | ||||
-rw-r--r-- | app-crypt/gcr/files/3.41.1-implicit-func-decl.patch | 30 | ||||
-rw-r--r-- | app-crypt/gcr/gcr-3.41.1-r2.ebuild (renamed from app-crypt/gcr/gcr-3.40.0.ebuild) | 50 | ||||
-rw-r--r-- | app-crypt/gcr/gcr-4.2.1.ebuild | 88 | ||||
-rw-r--r-- | app-crypt/gcr/metadata.xml | 13 |
5 files changed, 165 insertions, 19 deletions
diff --git a/app-crypt/gcr/Manifest b/app-crypt/gcr/Manifest index cc0e9da4b4eb..520f875e448e 100644 --- a/app-crypt/gcr/Manifest +++ b/app-crypt/gcr/Manifest @@ -1 +1,2 @@ -DIST gcr-3.40.0.tar.xz 1011044 BLAKE2B 6b1016f74e5fd3ace32a534a59575db9c39b5deefd2f4f3a747ef7e87a43c7c00b33500d8151009347af9fe6b073c390895bb6e17c577c6e150c780c487b997e SHA512 7118608e7bef7d0cf2eea33cb3286b7f9c3622a38892ce88cf33ed453d343cc33e070831e7b4d0c5cdb43c2e57b3f0b91c7cbd6aa8463982d3af8844b59bcb81 +DIST gcr-3.41.1.tar.xz 1030368 BLAKE2B 9d254b7f2ad864c45200e58b685db97c1ffbc83d29ba8cbda94d30ec565aa3dc5a2535305dc63b3264131b68ec9e48f37ac30d5ba08d0ce156f3b6091cd62dc1 SHA512 dd70d41636ede863d05824b26823a8f572902f7a9b6f09b0c70586ef0d4c046864e6956130b9231850a515a9fbfcd56faf20354c1cf8f697f005827c048a2325 +DIST gcr-4.2.1.tar.xz 719392 BLAKE2B a9134258f6daa59de4924f6bac01499d3bf87aae5e9d9ff5c69b2289ba0e82ef4c3f93a1ca7b1b007815e51e0c56f10a8abc616b31518dfa83581e8ffc5b3309 SHA512 fbb1664f6e276e35296aec46dab53ff308d031cae2f25b7d1ff5abdb56c5bd3764927d38b997d2ccbd260975f445d71619b2487327786c30b5f34d5e8865ff25 diff --git a/app-crypt/gcr/files/3.41.1-implicit-func-decl.patch b/app-crypt/gcr/files/3.41.1-implicit-func-decl.patch new file mode 100644 index 000000000000..f1f1ddc0b5d9 --- /dev/null +++ b/app-crypt/gcr/files/3.41.1-implicit-func-decl.patch @@ -0,0 +1,30 @@ +https://bugs.gentoo.org/900152 + +It doesn't make sense to default XOPEN_SOURCE and subsequently DEFAULT_SOURCE +as DEFAULT_SOURCE is asking for no extensions. Anyway, just ask for GNU_SOURCE +as it'll placate both musl and glibc for all of strptime/timegm/getpass and +gcr-3 is obsolete anyway. +--- a/gck/meson.build ++++ b/gck/meson.build +@@ -77,8 +77,7 @@ gck_cflags = [ + '-DGCK_API_SUBJECT_TO_CHANGE', + '-DP11_KIT_API_SUBJECT_TO_CHANGE', + '-DPKCS11_REGISTRY_DIR="@0@"'.format(get_option('prefix') / get_option('libdir') / 'pkcs11'), +- '-D_XOPEN_SOURCE', # Needed for strptime() +- '-D_DEFAULT_SOURCE', # Needed for timegm ++ '-D_GNU_SOURCE', # Needed for strptime(), timegm, getpass + ] + + gck_symbolmap = meson.current_source_dir() / 'libgck.map' +--- a/gcr/meson.build ++++ b/gcr/meson.build +@@ -146,7 +146,7 @@ gcr_base_cflags = [ + '-DGCR_API_SUBJECT_TO_CHANGE', + '-DGCK_API_SUBJECT_TO_CHANGE', + '-DP11_KIT_API_SUBJECT_TO_CHANGE', +- '-D_XOPEN_SOURCE', # Needed for strptime() ++ '-D_GNU_SOURCE', # Needed for strptime(), timegm, getpass + ] + + gcr_base_symbolmap = meson.current_source_dir() / 'libgcr-base.map' + diff --git a/app-crypt/gcr/gcr-3.40.0.ebuild b/app-crypt/gcr/gcr-3.41.1-r2.ebuild index 781d04088abb..4be077ac83ef 100644 --- a/app-crypt/gcr/gcr-3.40.0.ebuild +++ b/app-crypt/gcr/gcr-3.41.1-r2.ebuild @@ -1,9 +1,8 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 -VALA_USE_DEPEND="vapigen" -PYTHON_COMPAT=( python3_{7..9} ) +EAPI=8 +PYTHON_COMPAT=( python3_{9..13} ) inherit gnome.org gnome2-utils meson python-any-r1 vala xdg @@ -13,16 +12,21 @@ HOMEPAGE="https://gitlab.gnome.org/GNOME/gcr" LICENSE="GPL-2+ LGPL-2+" SLOT="0/1" # subslot = suffix of libgcr-base-3 and co -IUSE="gtk gtk-doc +introspection test +vala" -REQUIRED_USE="vala? ( introspection )" +IUSE="gtk gtk-doc +introspection systemd test +vala" +REQUIRED_USE=" + gtk-doc? ( introspection ) + vala? ( introspection ) +" RESTRICT="!test? ( test )" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" DEPEND=" >=dev-libs/glib-2.44.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? ( >=x11-libs/gtk+-3.22:3[introspection?] ) >=sys-apps/dbus-1 introspection? ( >=dev-libs/gobject-introspection-1.58:= ) @@ -34,10 +38,7 @@ BDEPEND=" gtk? ( dev-libs/libxml2:2 ) dev-util/gdbus-codegen dev-util/glib-utils - gtk-doc? ( - >=dev-util/gtk-doc-1.9 - app-text/docbook-xml-dtd:4.1.2 - ) + gtk-doc? ( dev-util/gi-docgen ) >=sys-devel/gettext-0.19.8 test? ( app-crypt/gnupg ) virtual/pkgconfig @@ -46,6 +47,7 @@ BDEPEND=" PATCHES=( "${FILESDIR}"/3.38.0-optional-vapi.patch + "${FILESDIR}"/3.41.1-implicit-func-decl.patch ) pkg_setup() { @@ -53,8 +55,9 @@ pkg_setup() { } src_prepare() { - use vala && vala_src_prepare - xdg_src_prepare + default + use vala && vala_setup + xdg_environment_reset } src_configure() { @@ -63,6 +66,8 @@ src_configure() { $(meson_use gtk) $(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 @@ -72,6 +77,25 @@ src_test() { dbus-run-session meson test -C "${BUILD_DIR}" || die 'tests failed' } +src_install() { + meson_src_install + + # These files are installed by gcr:4 + local conflicts=( + "${ED}"/usr/libexec/gcr-ssh-agent + ) + use systemd && conflicts+=( + "${ED}"/usr/lib/systemd/user/gcr-ssh-agent.{service,socket} + ) + einfo "${conflicts[@]}" + rm "${conflicts[@]}" || die + + if use gtk-doc; then + mkdir -p "${ED}"/usr/share/gtk-doc/html/ || die + mv "${ED}"/usr/share/doc/{gck-1,gcr-3,gcr-ui-3} "${ED}"/usr/share/gtk-doc/html/ || die + fi +} + pkg_postinst() { xdg_pkg_postinst gnome2_schemas_update 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..ed823652b725 --- /dev/null +++ b/app-crypt/gcr/gcr-4.2.1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic gnome.org gnome2-utils meson 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=" + 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) ) +" + +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 +} diff --git a/app-crypt/gcr/metadata.xml b/app-crypt/gcr/metadata.xml index 39980802b1da..11816fc8230a 100644 --- a/app-crypt/gcr/metadata.xml +++ b/app-crypt/gcr/metadata.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<maintainer type="project"> - <email>gnome@gentoo.org</email> - <name>Gentoo GNOME Desktop</name> -</maintainer> + <maintainer type="project"> + <email>gnome@gentoo.org</email> + <name>Gentoo GNOME Desktop</name> + </maintainer> + <upstream> + <remote-id type="gnome-gitlab">GNOME/gcr</remote-id> + </upstream> </pkgmetadata> |