app-crypt/gpgme: Sync with Gentoo

It's from Gentoo commit f3c4b07609097765b98e8134532ae162184e6ffd.
This commit is contained in:
Flatcar Buildbot 2025-04-28 07:12:04 +00:00
parent e1b49aa081
commit 3863495ae8
3 changed files with 0 additions and 274 deletions

View File

@ -1,5 +1,3 @@
DIST gpgme-1.23.2.tar.bz2 1836904 BLAKE2B 563e470e861c7cc64ecb3e8dd0a0ed8436bc0867105093abcec09f4d1e1dd95cbf64c8161cf8500b9842583b57f6583efff63e5111234e36fda1e6fbedce2f78 SHA512 6cfcd07e81a93de240582de5a46545420cee93d1f27fe20ea2c983780fdd3036b69fdba073cf549d68a20791e189bf4b3cdde14a43f912d2ab9ef3414c83ac75
DIST gpgme-1.23.2.tar.bz2.sig 238 BLAKE2B fafba6e2f1f34c53fa3f7e05953298132f7b046048660b9f2df5bc11ccb9694b581117ca78883a8f4ca9af060397a39f3132a3711be1cd28183b7c2f8f93a8b7 SHA512 65b7cdd4ce06bb0b15b13033d226423380338efdcb47ffc3f33780a92973453053f8f59b12a3f37e392e773bdd207a7420c25aa3a210c15eec45b7bfef6e891e
DIST gpgme-1.24.1.tar.bz2 1891695 BLAKE2B 8438291baec336c329deb9b864e1f3d2710066b992495a82cf83b264b52166e65bfb997aa7a06a18d90bd1048772da8ab6189ba114dd5117f50614dc8210cd37 SHA512 13e90371a733bca4cfefeac0588059d9fab3310b63c58c759f5ba9f9fddc6b0bdab6493fc2bc129c0ebe102ce4effa8067823937d3382f7c7ff02183717bbfd6
DIST gpgme-1.24.1.tar.bz2.sig 119 BLAKE2B 95232e31a8402cc5ec79d3a459ec6e35feb2d419dc7ac49b8e78103159ca472aac648e97acc3723dee4f2301e2333356e2b1f4376f423d8a3ef3734913249e69 SHA512 11650ea2af3e1c865eafc3c55632befeb036ce0435c32770dd6d6a03026ba7d343e9dcb3ab3597f6b6aae317f1aa26fa1e824f36caaf7214422b8b7ec76cc953
DIST gpgme-1.24.2.tar.bz2 1891804 BLAKE2B 3d112fe3401c6143d09474eefcc3fda00394b0db61c37d7da79ddf3352c71b67e2972800efbefa89bba4726a4997ef473c3dbdac8c5d42612a73332711cf4d4a SHA512 ad69101d1fceef6cd1dd6d5348f6f2be06912da6b6a7d0fece3ce08cf35054e6953b80ca9c4748554882892faa44e7c54e705cf25bbf2b796cd4ad12b09da185

View File

@ -1,40 +0,0 @@
From ecd0c86d62351d267bdc9566286c532a394c711b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ingo=20Kl=C3=B6cker?= <dev@ingo-kloecker.de>
Date: Mon, 2 Sep 2024 15:33:25 +0200
Subject: [PATCH] build,python: Fix build with setuptools 72.2.0+
* lang/python/setup.py.in (BuildExtFirstHack.run): Extend members of the
extension instead of lists that were passed to the extension.
--
setuptools 72.2.0 integrated changes in distutils which included
"Support for Pathlike objects in data files and extensions". With this
change the extensions now take a copy of the sources list passed to the
constructor instead of keeping a reference to the passed list. Hence,
modifying the sources list that was passed to the extension didn't
change the sources list of the extension anymore. This is fixed by
modifying the sources list of the extension directly. For consistency
we do the same for the swig_opts list.
GnuPG-bug-id: 7281
---
lang/python/setup.py.in | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in
index 7b64ba7b..d6f537e0 100755
--- a/lang/python/setup.py.in
+++ b/lang/python/setup.py.in
@@ -217,9 +217,9 @@ class BuildExtFirstHack(build):
def run(self):
self._generate()
- swig_sources.extend((self._in_build_base('gpgme.i'),
- self._in_build_base('helpers.c')))
- swig_opts.extend([
+ swige.sources.extend((self._in_build_base('gpgme.i'),
+ self._in_build_base('helpers.c')))
+ swige.swig_opts.extend([
'-I' + self.build_base, '-outdir',
os.path.join(self.build_lib, 'gpg')
])

View File

@ -1,232 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Maintainers should:
# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/
# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159
# (find the one for the current release then subscribe to it +
# any subsequent ones linked within so you're covered for a while.)
DISTUTILS_EXT=1
DISTUTILS_OPTIONAL=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..13} )
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc
# in-source builds are not supported:
# * https://dev.gnupg.org/T6313#166339
# * https://dev.gnupg.org/T6673#174545
inherit distutils-r1 libtool flag-o-matic multibuild 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.2"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="common-lisp static-libs +cxx python qt5 qt6 test"
RESTRICT="!test? ( test )"
REQUIRED_USE="
qt5? ( cxx )
qt6? ( cxx )
python? ( ${PYTHON_REQUIRED_USE} )
"
# - 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.46-r1:=
python? ( ${PYTHON_DEPS} )
qt5? ( dev-qt/qtcore:5 )
qt6? ( dev-qt/qtbase:6 )
"
DEPEND="
${RDEPEND}
test? (
qt5? ( dev-qt/qttest:5 )
)
"
#doc? ( app-text/doxygen[dot] )
BDEPEND="
python? (
${PYTHON_DEPS}
${DISTUTILS_DEPS}
dev-lang/swig
)
verify-sig? ( sec-keys/openpgp-keys-gnupg )
"
PATCHES=(
"${FILESDIR}"/${PN}-1.18.0-tests-start-stop-agent-use-command-v.patch
"${FILESDIR}"/${PN}-1.23.1-tests-gnupg-no-tofu.patch
# backport fix for setuptools 72.2 breakage
"${FILESDIR}"/ecd0c86d62351d267bdc9566286c532a394c711b.patch
)
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"
# Qt 5 and Qt 6 are mutually exclusive in the gpgme build. We don't have
# to do three builds (normal, qt5, qt6), and we can instead just
# do normal+qt5 or normal+qt6. For now, we pessimise qt6 by making it
# be a separate build, but in time, we can swap it so qt5 has to be
# the separate one so some build time gets saved in the common case.
MULTIBUILD_VARIANTS=(
base
$(usev qt6 qt6)
)
gpgme_create_builddir() {
mkdir -p "${BUILD_DIR}" || die
}
multibuild_foreach_variant gpgme_create_builddir
}
src_configure() {
multibuild_foreach_variant gpgme_src_configure
}
gpgme_src_configure() {
# bug #847955
append-lfs-flags
cd "${BUILD_DIR}" || die
local languages=()
case ${MULTIBUILD_VARIANT} in
base)
languages=(
$(usev common-lisp 'cl')
$(usev cxx 'cpp')
$(usev qt5 'qt5')
)
if use qt5; then
#use doc ||
export DOXYGEN=true
export MOC="$(qt5_get_bindir)/moc"
fi
;;
*)
# Sanity check for refactoring, the non-base variant is only for Qt 6
use qt6 || die "Non-base variant shouldn't be built without Qt 6! Please report at bugs.gentoo.org."
languages=(
cpp
qt6
)
export MOC="$(qt6_get_libdir)/qt6/libexec/moc"
;;
esac
local myeconfargs=(
$(use test || echo "--disable-gpgconf-test --disable-gpg-test --disable-gpgsm-test --disable-g13-test")
--enable-languages="${languages[*]}"
$(use_enable static-libs static)
GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config"
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
if [[ ${MULTIBUILD_VARIANT} == base ]] && use python ; then
emake -C lang/python prepare
pushd lang/python > /dev/null || die
top_builddir="../.." srcdir="${S}/lang/python" CPP="$(tc-getCPP)" distutils-r1_src_configure
popd > /dev/null || die
fi
}
src_compile() {
multibuild_foreach_variant gpgme_src_compile
}
gpgme_src_compile() {
cd "${BUILD_DIR}" || die
emake
if [[ ${MULTIBUILD_VARIANT} == base ]] && use python ; then
pushd lang/python > /dev/null || die
top_builddir="../.." srcdir="${S}/lang/python" CPP="$(tc-getCPP)" distutils-r1_src_compile
popd > /dev/null || die
fi
}
src_test() {
multibuild_foreach_variant gpgme_src_test
}
gpgme_src_test() {
cd "${BUILD_DIR}" || die
emake check
if [[ ${MULTIBUILD_VARIANT} == base ]] && use python ; then
distutils-r1_src_test
fi
}
python_test() {
emake -C lang/python/tests check \
PYTHON=${EPYTHON} \
PYTHONS=${EPYTHON} \
TESTFLAGS="--python-libdir=${BUILD_DIR}/lib"
}
src_install() {
einstalldocs
multibuild_foreach_variant gpgme_src_install
}
gpgme_src_install() {
cd "${BUILD_DIR}" || die
emake DESTDIR="${D}" install
if [[ ${MULTIBUILD_VARIANT} == base ]] && use python ; then
pushd lang/python > /dev/null || die
top_builddir="../.." srcdir="${S}/lang/python" CPP="$(tc-getCPP)" distutils-r1_src_install
popd > /dev/null || die
fi
find "${ED}" -type f -name '*.la' -delete || die
# Backward compatibility for gentoo
# (in the past, we had slots)
dodir /usr/include/gpgme
dosym -r /usr/include/gpgme.h /usr/include/gpgme/gpgme.h
}