summaryrefslogtreecommitdiff
path: root/app-crypt/gpgme
diff options
context:
space:
mode:
Diffstat (limited to 'app-crypt/gpgme')
-rw-r--r--app-crypt/gpgme/Manifest4
-rw-r--r--app-crypt/gpgme/files/gpgme-1.18.0-tests-start-stop-agent-use-command-v.patch27
-rw-r--r--app-crypt/gpgme/gpgme-1.18.0.ebuild132
3 files changed, 163 insertions, 0 deletions
diff --git a/app-crypt/gpgme/Manifest b/app-crypt/gpgme/Manifest
index e412c44f0eb3..9c2d0783f0a6 100644
--- a/app-crypt/gpgme/Manifest
+++ b/app-crypt/gpgme/Manifest
@@ -1,4 +1,8 @@
+AUX gpgme-1.18.0-tests-start-stop-agent-use-command-v.patch 771 BLAKE2B c0ab8ad60cbeda32910fe79ada37dab798b6d38d997516ae5d4c0b9acdad8bd1c98fda5e82769e6475ebce770661666e474ab8fad467338f919edcfebd5a2bc9 SHA512 b0bf27bcbf7973638345b8b526ec8b77df8257455a8b716715b62f16bc1b445238086ac54e3fc026277bed95b5f1fcae1e73e566a63bf5b2e5c51ecb52b023d9
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
EBUILD gpgme-1.17.1-r1.ebuild 3339 BLAKE2B b94b1c3ccbac471ad16c406823460d4ffca1c9428b1420f3b433f224faf2a4a760c23b2923bff5a007cf37c63497d9ed5737683ad9bb4cc97250443bb71e00b6 SHA512 f4479a00ae16770c7180c8465079a4cf0cb92811715f87439e92c591701d1ace2c6af35a2990120723ca4c4091fc673aa61fdbda67d6648891c24905279a0dd5
+EBUILD gpgme-1.18.0.ebuild 3585 BLAKE2B dd453284e0e7d65680de0bcb51013bafc85453924ac322a2928931f1c3967875af8dccc3dd1027fc87f3c004b24ed8e6f3f81ae556419bb0ed267588695beae5 SHA512 aba9378584f4bab17fde88193fe5c9d428ae05d90be96bf46009fe2e857c43af28a0463e1b9c3edb77cf9ad8b739eaffce08925e1a846c304b7e368b75e241dc
MISC metadata.xml 333 BLAKE2B 6dd18b63ec1f7656ab8bd705242bec45d7820db8be31f326172cad400711e6d7268c156d6b81facfdfa79118c04728ac910a8f8de36a11454227a1399235a582 SHA512 21b8d7bf3f14b5ab7e2ea587027395cdd881ecddd5a4f70237cafc70dc904b396a33f70dd7ef37519df5a204f4e3a89d9ea6ffc221df41bd9cbf23e69863f12f
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 <sam@gentoo.org>
+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 <sam@gentoo.org>
+--- 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
+}