From 192671d48deba04dbc032db5bfc65c0ea48158a2 Mon Sep 17 00:00:00 2001 From: Sam James Date: Mon, 15 Aug 2022 19:49:04 +0100 Subject: app-crypt/gpgme: add 1.18.0 Broke ABI again. Signed-off-by: Sam James --- 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(+) create mode 100644 app-crypt/gpgme/files/gpgme-1.18.0-tests-start-stop-agent-use-command-v.patch create mode 100644 app-crypt/gpgme/gpgme-1.18.0.ebuild (limited to 'app-crypt/gpgme') 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 +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 +--- 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: +# 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 +} -- cgit v1.2.3-65-gdbad