commit:     192671d48deba04dbc032db5bfc65c0ea48158a2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 15 18:49:04 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 15 18:49:32 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=192671d4

app-crypt/gpgme: add 1.18.0

Broke ABI again.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-crypt/gpgme/Manifest                           |   2 +
 ...18.0-tests-start-stop-agent-use-command-v.patch |  27 +++++
 app-crypt/gpgme/gpgme-1.18.0.ebuild                | 132 +++++++++++++++++++++
 3 files changed, 161 insertions(+)

diff --git a/app-crypt/gpgme/Manifest b/app-crypt/gpgme/Manifest
index 228275f1e483..fb1c045a3555 100644
--- a/app-crypt/gpgme/Manifest
+++ b/app-crypt/gpgme/Manifest
@@ -1,2 +1,4 @@
 DIST gpgme-1.17.1.tar.bz2 1747692 BLAKE2B 
44cf9309cbad038f23aa7c5c77fd85be23faf3d8e1eb7abdb87a737ad1ade1ee269a95ce618dba327bbd06e6f4b2a91e2446744ee08f09ea6fb3b2dad44431c5
 SHA512 
e6399c3de1e430e38f2692bf5ec0c02ecb36ea3dbb56ff29dc3a438a5be4900a77a0559dc5b673dc1ffbff5e7f589e548e19176b2644fe8f63e00c6b9181b920
 DIST gpgme-1.17.1.tar.bz2.sig 119 BLAKE2B 
31832424c0e029dc520d3302a71b086d9fcb044c74344cc0fb4b6c6a02d0dd840e62e7eb60acfaf004e6f3650d58436b58e645ef2a50b948ecaf3ca162bf577a
 SHA512 
e1a4213d0d39f2efd0d5c007a0449c76bd650e76e002a9acb673eef0579912db06d844df11a4f7cb821e1d8468d2d6c1303f1c5d915a5c3c9cb5abacfbd004fc
+DIST gpgme-1.18.0.tar.bz2 1762323 BLAKE2B 
a071b839eb75455378514f003920cd387320e9fae416e71151cf6ac1b4a058b58ed054450b79e3eeaf820ff5324ea14efa003612867477b7379a776942d62be6
 SHA512 
c0cb0b337d017793a15dd477a7f5eaef24587fcda3d67676bf746bb342398d04792c51abe3c26ae496e799c769ce667d4196d91d86e8a690d02c6718c8f6b4ac
+DIST gpgme-1.18.0.tar.bz2.sig 119 BLAKE2B 
968f8b24ec71b4157214dd026aed83c96894ef353a9cb171f268d640a62fe464ba43540f318abf95dcfc19dffab177a0c3ad8a6e9937dc80e4ececbc8ceb3203
 SHA512 
02958d86cc037fffc787c6611ace8676d4e04cc1f65fd117eb911d3bfd665dddb7849bcd838af598465be78960f54883eac09c29c42f891f2e4b9713095aed7d

diff --git 
a/app-crypt/gpgme/files/gpgme-1.18.0-tests-start-stop-agent-use-command-v.patch 
b/app-crypt/gpgme/files/gpgme-1.18.0-tests-start-stop-agent-use-command-v.patch
new file mode 100644
index 000000000000..aeae35f45636
--- /dev/null
+++ 
b/app-crypt/gpgme/files/gpgme-1.18.0-tests-start-stop-agent-use-command-v.patch
@@ -0,0 +1,27 @@
+Sent upstream to gnupg-devel@ but not yet in archive.
+
+From: Sam James <[email protected]>
+Date: Mon, 15 Aug 2022 19:29:06 +0100
+Subject: [PATCH] tests/start-stop-agent: use 'command -v' instead of 'which'
+
+`which` is an external command which isn't required by POSIX.
+
+Debian and other distributions (like Gentoo!) are looking
+to drop it from their base set of packages.
+
+Switch to `command -v` which should always work instead.
+
+Note we already use `command -v` at the start of this test anyway.
+
+Signed-off-by: Sam James <[email protected]>
+--- a/tests/start-stop-agent
++++ b/tests/start-stop-agent
+@@ -15,7 +15,7 @@ fi
+ 
+ GPG_AGENT_INFO=
+ export GPG_AGENT_INFO
+-GPG_AGENT=$(which gpg-agent)
++GPG_AGENT=$(command -v gpg-agent)
+ 
+ token=$(echo "gpgme-$(pwd)" | tr ' ' '_')
+ 

diff --git a/app-crypt/gpgme/gpgme-1.18.0.ebuild 
b/app-crypt/gpgme/gpgme-1.18.0.ebuild
new file mode 100644
index 000000000000..4338e7b48226
--- /dev/null
+++ b/app-crypt/gpgme/gpgme-1.18.0.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..11} )
+DISTUTILS_OPTIONAL=1
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc
+
+inherit distutils-r1 libtool flag-o-matic qmake-utils toolchain-funcs 
verify-sig
+
+DESCRIPTION="GnuPG Made Easy is a library for making GnuPG easier to use"
+HOMEPAGE="https://www.gnupg.org/related_software/gpgme";
+SRC_URI="mirror://gnupg/gpgme/${P}.tar.bz2
+       verify-sig? ( mirror://gnupg/gpgme/${P}.tar.bz2.sig )"
+
+LICENSE="GPL-2 LGPL-2.1"
+# Please check ABI on each bump, even if SONAMEs didn't change: bug #833355
+# Use e.g. app-portage/iwdevtools integration with dev-libs/libabigail's 
abidiff.
+# Subslot: SONAME of each: <libgpgme.libgpgmepp.libqgpgme.FUDGE>
+# Bump FUDGE if a release is made which breaks ABI without changing SONAME.
+# (Reset to 0 if FUDGE != 0 if libgpgme/libgpgmepp/libqpggme change.)
+SLOT="1/11.6.15.1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos 
~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="common-lisp static-libs +cxx python qt5 test"
+RESTRICT="!test? ( test )"
+
+# Note: On each bump, update dep bounds on each version from configure.ac!
+RDEPEND=">=app-crypt/gnupg-2
+       >=dev-libs/libassuan-2.5.3:=
+       >=dev-libs/libgpg-error-1.36:=
+       python? ( ${PYTHON_DEPS} )
+       qt5? ( dev-qt/qtcore:5 )"
+       #doc? ( app-doc/doxygen[dot] )
+DEPEND="${RDEPEND}
+       test? (
+               qt5? ( dev-qt/qttest:5 )
+       )"
+BDEPEND="python? ( dev-lang/swig )
+       verify-sig? ( sec-keys/openpgp-keys-gnupg )"
+
+REQUIRED_USE="qt5? ( cxx ) python? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.18.0-tests-start-stop-agent-use-command-v.patch
+)
+
+do_python() {
+       if use python; then
+               pushd "lang/python" > /dev/null || die
+               top_builddir="../.." srcdir="." CPP="$(tc-getCPP)" 
distutils-r1_src_${EBUILD_PHASE}
+               popd > /dev/null || die
+       fi
+}
+
+src_prepare() {
+       default
+
+       elibtoolize
+
+       # bug #697456
+       addpredict /run/user/$(id -u)/gnupg
+
+       local MAX_WORKDIR=66
+       if use test && [[ "${#WORKDIR}" -gt "${MAX_WORKDIR}" ]]; then
+               eerror "Unable to run tests as WORKDIR='${WORKDIR}' is longer 
than ${MAX_WORKDIR} which causes failure!"
+               die "Could not run tests as requested with too-long WORKDIR."
+       fi
+
+       # Make best effort to allow longer PORTAGE_TMPDIR
+       # as usock limitation fails build/tests
+       ln -s "${P}" "${WORKDIR}/b" || die
+       S="${WORKDIR}/b"
+}
+
+src_configure() {
+       local languages=()
+
+       use common-lisp && languages+=( "cl" )
+       use cxx && languages+=( "cpp" )
+       if use qt5; then
+               languages+=( "qt" )
+               #use doc ||
+               export DOXYGEN=true
+               export MOC="$(qt5_get_bindir)/moc"
+       fi
+
+       # bug #847955
+       append-lfs-flags
+
+       # bug #811933 for libassuan prefix
+       econf \
+               $(use test || echo "--disable-gpgconf-test --disable-gpg-test 
--disable-gpgsm-test --disable-g13-test") \
+               --enable-languages="${languages[*]}" \
+               --with-libassuan-prefix="${ESYSROOT}"/usr \
+               $(use_enable static-libs static)
+
+       use python && emake -C lang/python prepare
+
+       do_python
+}
+
+src_compile() {
+       default
+       do_python
+}
+
+src_test() {
+       default
+
+       use python && distutils-r1_src_test
+}
+
+python_test() {
+       emake -C lang/python/tests check \
+               PYTHON=${EPYTHON} \
+               PYTHONS=${EPYTHON} \
+               TESTFLAGS="--python-libdir=${BUILD_DIR}/lib"
+}
+
+src_install() {
+       default
+
+       do_python
+
+       find "${ED}" -type f -name '*.la' -delete || die
+
+       # Backward compatibility for gentoo
+       # (in the past, we had slots)
+       dodir /usr/include/gpgme
+       dosym ../gpgme.h /usr/include/gpgme/gpgme.h
+}

Reply via email to