Accepting request 1227272 from home:dimstar:Factory
- Add gpgme-fix-python-install.patch: Fix the installation of the python bindings without having to move them around manually. This should be the correct fix instead of Move the gpg python bindings out of the egg directory. Patch should be upstreamable (and thus be fixed for everybody) OBS-URL: https://build.opensuse.org/request/show/1227272 OBS-URL: https://build.opensuse.org/package/show/Base:System/gpgme?expand=0&rev=178
This commit is contained in:
commit
86c34da11f
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
4
_multibuild
Normal file
4
_multibuild
Normal file
@ -0,0 +1,4 @@
|
||||
<multibuild>
|
||||
<package>qt</package>
|
||||
<package>qt6</package>
|
||||
</multibuild>
|
3
baselibs.conf
Normal file
3
baselibs.conf
Normal file
@ -0,0 +1,3 @@
|
||||
libgpgme11
|
||||
libgpgmepp6
|
||||
libqgpgme15
|
BIN
gpgme-1.23.2.tar.bz2
(Stored with Git LFS)
Normal file
BIN
gpgme-1.23.2.tar.bz2
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
gpgme-1.23.2.tar.bz2.sig
Normal file
BIN
gpgme-1.23.2.tar.bz2.sig
Normal file
Binary file not shown.
3
gpgme-1.24.0.tar.bz2
Normal file
3
gpgme-1.24.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:61e3a6ad89323fecfaff176bc1728fb8c3312f2faa83424d9d5077ba20f5f7da
|
||||
size 1889410
|
BIN
gpgme-1.24.0.tar.bz2.sig
Normal file
BIN
gpgme-1.24.0.tar.bz2.sig
Normal file
Binary file not shown.
795
gpgme-D545-obsolete-distutils.patch
Normal file
795
gpgme-D545-obsolete-distutils.patch
Normal file
@ -0,0 +1,795 @@
|
||||
From e3ae88267f03b435ec7d9e80ae1e2891e1f118e6 Mon Sep 17 00:00:00 2001
|
||||
From: Ingo Klöcker <dev@ingo-kloecker.de>
|
||||
Date: Tue, 16 Jan 2024 09:53:39 +0100
|
||||
Subject: build: Update Python autoconf macro
|
||||
|
||||
* configure.ac: Call AX_PYTHON_DEVEL with new "optional" argument.
|
||||
* m4/ax_python_devel.m4: Replace with current version from the autoconf
|
||||
archive.
|
||||
--
|
||||
|
||||
The new "optional" argument allows us to leave out one of our custom
|
||||
changes.
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 9d551813..0e0b9d97 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -607,7 +607,7 @@ if test "$found_py" = "1"; then
|
||||
unset am_cv_python_pythondir
|
||||
unset am_cv_python_pyexecdir
|
||||
AM_PATH_PYTHON(mym4pythonver, [
|
||||
- AX_PYTHON_DEVEL
|
||||
+ AX_PYTHON_DEVEL([], [true])
|
||||
if test "$PYTHON_VERSION"; then
|
||||
PYTHONS="$(echo $PYTHONS $PYTHON)"
|
||||
PYTHON_VERSIONS="$(echo $PYTHON_VERSIONS $PYTHON_VERSION)"
|
||||
diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4
|
||||
index 55f0cfff..1f480db6 100644
|
||||
--- a/m4/ax_python_devel.m4
|
||||
+++ b/m4/ax_python_devel.m4
|
||||
@@ -1,10 +1,10 @@
|
||||
# ===========================================================================
|
||||
-# https://www.gnu.org/software/autoconf-archive/ax_python_devel.html
|
||||
+# https://www.gnu.org/software/autoconf-archive/ax_python_devel.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
-# AX_PYTHON_DEVEL([version])
|
||||
+# AX_PYTHON_DEVEL([version[,optional]])
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
@@ -12,8 +12,8 @@
|
||||
# in your configure.ac.
|
||||
#
|
||||
# This macro checks for Python and tries to get the include path to
|
||||
-# 'Python.h'. It provides the $(PYTHON_CPPFLAGS) and $(PYTHON_LDFLAGS)
|
||||
-# output variables. It also exports $(PYTHON_EXTRA_LIBS) and
|
||||
+# 'Python.h'. It provides the $(PYTHON_CPPFLAGS) and $(PYTHON_LIBS) output
|
||||
+# variables. It also exports $(PYTHON_EXTRA_LIBS) and
|
||||
# $(PYTHON_EXTRA_LDFLAGS) for embedding Python in your code.
|
||||
#
|
||||
# You can search for some particular version of Python by passing a
|
||||
@@ -23,6 +23,11 @@
|
||||
# version number. Don't use "PYTHON_VERSION" for this: that environment
|
||||
# variable is declared as precious and thus reserved for the end-user.
|
||||
#
|
||||
+# By default this will fail if it does not detect a development version of
|
||||
+# python. If you want it to continue, set optional to true, like
|
||||
+# AX_PYTHON_DEVEL([], [true]). The ax_python_devel_found variable will be
|
||||
+# "no" if it fails.
|
||||
+#
|
||||
# This macro should work for all versions of Python >= 2.1.0. As an end
|
||||
# user, you can disable the check for the python version by setting the
|
||||
# PYTHON_NOVERSIONCHECK environment variable to something else than the
|
||||
@@ -67,10 +72,18 @@
|
||||
# modified version of the Autoconf Macro, you may extend this special
|
||||
# exception to the GPL to apply to your modified version as well.
|
||||
|
||||
-#serial 17
|
||||
+#serial 36
|
||||
|
||||
AU_ALIAS([AC_PYTHON_DEVEL], [AX_PYTHON_DEVEL])
|
||||
AC_DEFUN([AX_PYTHON_DEVEL],[
|
||||
+ # Get whether it's optional
|
||||
+ if test -z "$2"; then
|
||||
+ ax_python_devel_optional=false
|
||||
+ else
|
||||
+ ax_python_devel_optional=$2
|
||||
+ fi
|
||||
+ ax_python_devel_found=yes
|
||||
+
|
||||
#
|
||||
# Allow the use of a (user set) custom python version
|
||||
#
|
||||
@@ -81,81 +94,147 @@ AC_DEFUN([AX_PYTHON_DEVEL],[
|
||||
|
||||
AC_PATH_PROG([PYTHON],[python[$PYTHON_VERSION]])
|
||||
if test -z "$PYTHON"; then
|
||||
- AC_MSG_ERROR([Cannot find python$PYTHON_VERSION in your system path])
|
||||
+ AC_MSG_WARN([Cannot find python$PYTHON_VERSION in your system path])
|
||||
+ if ! $ax_python_devel_optional; then
|
||||
+ AC_MSG_ERROR([Giving up, python development not available])
|
||||
+ fi
|
||||
+ ax_python_devel_found=no
|
||||
PYTHON_VERSION=""
|
||||
fi
|
||||
|
||||
- #
|
||||
- # Check for a version of Python >= 2.1.0
|
||||
- #
|
||||
- AC_MSG_CHECKING([for a version of Python >= '2.1.0'])
|
||||
- ac_supports_python_ver=`$PYTHON -c "import sys; \
|
||||
+ if test $ax_python_devel_found = yes; then
|
||||
+ #
|
||||
+ # Check for a version of Python >= 2.1.0
|
||||
+ #
|
||||
+ AC_MSG_CHECKING([for a version of Python >= '2.1.0'])
|
||||
+ ac_supports_python_ver=`$PYTHON -c "import sys; \
|
||||
ver = sys.version.split ()[[0]]; \
|
||||
print (ver >= '2.1.0')"`
|
||||
- if test "$ac_supports_python_ver" != "True"; then
|
||||
+ if test "$ac_supports_python_ver" != "True"; then
|
||||
if test -z "$PYTHON_NOVERSIONCHECK"; then
|
||||
AC_MSG_RESULT([no])
|
||||
- AC_MSG_FAILURE([
|
||||
+ AC_MSG_WARN([
|
||||
This version of the AC@&t@_PYTHON_DEVEL macro
|
||||
doesn't work properly with versions of Python before
|
||||
2.1.0. You may need to re-run configure, setting the
|
||||
-variables PYTHON_CPPFLAGS, PYTHON_LDFLAGS, PYTHON_SITE_PKG,
|
||||
+variables PYTHON_CPPFLAGS, PYTHON_LIBS, PYTHON_SITE_PKG,
|
||||
PYTHON_EXTRA_LIBS and PYTHON_EXTRA_LDFLAGS by hand.
|
||||
Moreover, to disable this check, set PYTHON_NOVERSIONCHECK
|
||||
to something else than an empty string.
|
||||
])
|
||||
+ if ! $ax_python_devel_optional; then
|
||||
+ AC_MSG_FAILURE([Giving up])
|
||||
+ fi
|
||||
+ ax_python_devel_found=no
|
||||
+ PYTHON_VERSION=""
|
||||
else
|
||||
AC_MSG_RESULT([skip at user request])
|
||||
fi
|
||||
- else
|
||||
+ else
|
||||
AC_MSG_RESULT([yes])
|
||||
+ fi
|
||||
fi
|
||||
|
||||
- #
|
||||
- # if the macro parameter ``version'' is set, honour it
|
||||
- #
|
||||
- if test -n "$1"; then
|
||||
+ if test $ax_python_devel_found = yes; then
|
||||
+ #
|
||||
+ # If the macro parameter ``version'' is set, honour it.
|
||||
+ # A Python shim class, VPy, is used to implement correct version comparisons via
|
||||
+ # string expressions, since e.g. a naive textual ">= 2.7.3" won't work for
|
||||
+ # Python 2.7.10 (the ".1" being evaluated as less than ".3").
|
||||
+ #
|
||||
+ if test -n "$1"; then
|
||||
AC_MSG_CHECKING([for a version of Python $1])
|
||||
- ac_supports_python_ver=`$PYTHON -c "import sys; \
|
||||
- ver = sys.version.split ()[[0]]; \
|
||||
+ cat << EOF > ax_python_devel_vpy.py
|
||||
+class VPy:
|
||||
+ def vtup(self, s):
|
||||
+ return tuple(map(int, s.strip().replace("rc", ".").split(".")))
|
||||
+ def __init__(self):
|
||||
+ import sys
|
||||
+ self.vpy = tuple(sys.version_info)[[:3]]
|
||||
+ def __eq__(self, s):
|
||||
+ return self.vpy == self.vtup(s)
|
||||
+ def __ne__(self, s):
|
||||
+ return self.vpy != self.vtup(s)
|
||||
+ def __lt__(self, s):
|
||||
+ return self.vpy < self.vtup(s)
|
||||
+ def __gt__(self, s):
|
||||
+ return self.vpy > self.vtup(s)
|
||||
+ def __le__(self, s):
|
||||
+ return self.vpy <= self.vtup(s)
|
||||
+ def __ge__(self, s):
|
||||
+ return self.vpy >= self.vtup(s)
|
||||
+EOF
|
||||
+ ac_supports_python_ver=`$PYTHON -c "import ax_python_devel_vpy; \
|
||||
+ ver = ax_python_devel_vpy.VPy(); \
|
||||
print (ver $1)"`
|
||||
+ rm -rf ax_python_devel_vpy*.py* __pycache__/ax_python_devel_vpy*.py*
|
||||
if test "$ac_supports_python_ver" = "True"; then
|
||||
- AC_MSG_RESULT([yes])
|
||||
+ AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
- AC_MSG_ERROR([this package requires Python $1.
|
||||
+ AC_MSG_WARN([this package requires Python $1.
|
||||
If you have it installed, but it isn't the default Python
|
||||
interpreter in your system path, please pass the PYTHON_VERSION
|
||||
variable to configure. See ``configure --help'' for reference.
|
||||
])
|
||||
+ if ! $ax_python_devel_optional; then
|
||||
+ AC_MSG_ERROR([Giving up])
|
||||
+ fi
|
||||
+ ax_python_devel_found=no
|
||||
PYTHON_VERSION=""
|
||||
fi
|
||||
+ fi
|
||||
fi
|
||||
|
||||
- #
|
||||
- # Check if you have distutils, else fail
|
||||
- #
|
||||
- AC_MSG_CHECKING([for the distutils Python package])
|
||||
- ac_distutils_result=`$PYTHON -c "import distutils" 2>&1`
|
||||
- if test -z "$ac_distutils_result"; then
|
||||
+ if test $ax_python_devel_found = yes; then
|
||||
+ #
|
||||
+ # Check if you have distutils, else fail
|
||||
+ #
|
||||
+ AC_MSG_CHECKING([for the sysconfig Python package])
|
||||
+ ac_sysconfig_result=`$PYTHON -c "import sysconfig" 2>&1`
|
||||
+ if test $? -eq 0; then
|
||||
AC_MSG_RESULT([yes])
|
||||
- else
|
||||
+ IMPORT_SYSCONFIG="import sysconfig"
|
||||
+ else
|
||||
AC_MSG_RESULT([no])
|
||||
- AC_MSG_ERROR([cannot import Python module "distutils".
|
||||
+
|
||||
+ AC_MSG_CHECKING([for the distutils Python package])
|
||||
+ ac_sysconfig_result=`$PYTHON -c "from distutils import sysconfig" 2>&1`
|
||||
+ if test $? -eq 0; then
|
||||
+ AC_MSG_RESULT([yes])
|
||||
+ IMPORT_SYSCONFIG="from distutils import sysconfig"
|
||||
+ else
|
||||
+ AC_MSG_WARN([cannot import Python module "distutils".
|
||||
Please check your Python installation. The error was:
|
||||
-$ac_distutils_result])
|
||||
- PYTHON_VERSION=""
|
||||
+$ac_sysconfig_result])
|
||||
+ if ! $ax_python_devel_optional; then
|
||||
+ AC_MSG_ERROR([Giving up])
|
||||
+ fi
|
||||
+ ax_python_devel_found=no
|
||||
+ PYTHON_VERSION=""
|
||||
+ fi
|
||||
+ fi
|
||||
fi
|
||||
|
||||
- #
|
||||
- # Check for Python include path
|
||||
- #
|
||||
- AC_MSG_CHECKING([for Python include path])
|
||||
- if test -z "$PYTHON_CPPFLAGS"; then
|
||||
- python_path=`$PYTHON -c "import distutils.sysconfig; \
|
||||
- print (distutils.sysconfig.get_python_inc ());"`
|
||||
- plat_python_path=`$PYTHON -c "import distutils.sysconfig; \
|
||||
- print (distutils.sysconfig.get_python_inc (plat_specific=1));"`
|
||||
+ if test $ax_python_devel_found = yes; then
|
||||
+ #
|
||||
+ # Check for Python include path
|
||||
+ #
|
||||
+ AC_MSG_CHECKING([for Python include path])
|
||||
+ if test -z "$PYTHON_CPPFLAGS"; then
|
||||
+ if test "$IMPORT_SYSCONFIG" = "import sysconfig"; then
|
||||
+ # sysconfig module has different functions
|
||||
+ python_path=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ print (sysconfig.get_path ('include'));"`
|
||||
+ plat_python_path=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ print (sysconfig.get_path ('platinclude'));"`
|
||||
+ else
|
||||
+ # old distutils way
|
||||
+ python_path=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ print (sysconfig.get_python_inc ());"`
|
||||
+ plat_python_path=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ print (sysconfig.get_python_inc (plat_specific=1));"`
|
||||
+ fi
|
||||
if test -n "${python_path}"; then
|
||||
if test "${plat_python_path}" != "${python_path}"; then
|
||||
python_path="-I$python_path -I$plat_python_path"
|
||||
@@ -164,22 +243,22 @@ $ac_distutils_result])
|
||||
fi
|
||||
fi
|
||||
PYTHON_CPPFLAGS=$python_path
|
||||
- fi
|
||||
- AC_MSG_RESULT([$PYTHON_CPPFLAGS])
|
||||
- AC_SUBST([PYTHON_CPPFLAGS])
|
||||
+ fi
|
||||
+ AC_MSG_RESULT([$PYTHON_CPPFLAGS])
|
||||
+ AC_SUBST([PYTHON_CPPFLAGS])
|
||||
|
||||
- #
|
||||
- # Check for Python library path
|
||||
- #
|
||||
- AC_MSG_CHECKING([for Python library path])
|
||||
- if test -z "$PYTHON_LDFLAGS"; then
|
||||
+ #
|
||||
+ # Check for Python library path
|
||||
+ #
|
||||
+ AC_MSG_CHECKING([for Python library path])
|
||||
+ if test -z "$PYTHON_LIBS"; then
|
||||
# (makes two attempts to ensure we've got a version number
|
||||
# from the interpreter)
|
||||
ac_python_version=`cat<<EOD | $PYTHON -
|
||||
|
||||
# join all versioning strings, on some systems
|
||||
# major/minor numbers could be in different list elements
|
||||
-from distutils.sysconfig import *
|
||||
+from sysconfig import *
|
||||
e = get_config_var('VERSION')
|
||||
if e is not None:
|
||||
print(e)
|
||||
@@ -190,23 +269,20 @@ EOD`
|
||||
ac_python_version=$PYTHON_VERSION
|
||||
else
|
||||
ac_python_version=`$PYTHON -c "import sys; \
|
||||
- print (sys.version[[:3]])"`
|
||||
+ print ("%d.%d" % sys.version_info[[:2]])"`
|
||||
fi
|
||||
fi
|
||||
|
||||
# Make the versioning information available to the compiler
|
||||
-
|
||||
- # JW: We don't need it and it interferes with the hack
|
||||
- # to detect multiple Pyhton versions
|
||||
- #AC_DEFINE_UNQUOTED([HAVE_PYTHON], ["$ac_python_version"],
|
||||
- # [If available, contains the Python version number currently in use.])
|
||||
+ AC_DEFINE_UNQUOTED([HAVE_PYTHON], ["$ac_python_version"],
|
||||
+ [If available, contains the Python version number currently in use.])
|
||||
|
||||
# First, the library directory:
|
||||
ac_python_libdir=`cat<<EOD | $PYTHON -
|
||||
|
||||
# There should be only one
|
||||
-import distutils.sysconfig
|
||||
-e = distutils.sysconfig.get_config_var('LIBDIR')
|
||||
+$IMPORT_SYSCONFIG
|
||||
+e = sysconfig.get_config_var('LIBDIR')
|
||||
if e is not None:
|
||||
print (e)
|
||||
EOD`
|
||||
@@ -214,8 +290,8 @@ EOD`
|
||||
# Now, for the library:
|
||||
ac_python_library=`cat<<EOD | $PYTHON -
|
||||
|
||||
-import distutils.sysconfig
|
||||
-c = distutils.sysconfig.get_config_vars()
|
||||
+$IMPORT_SYSCONFIG
|
||||
+c = sysconfig.get_config_vars()
|
||||
if 'LDVERSION' in c:
|
||||
print ('python'+c[['LDVERSION']])
|
||||
else:
|
||||
@@ -230,94 +306,160 @@ EOD`
|
||||
then
|
||||
# use the official shared library
|
||||
ac_python_library=`echo "$ac_python_library" | sed "s/^lib//"`
|
||||
- PYTHON_LDFLAGS="-L$ac_python_libdir -l$ac_python_library"
|
||||
+ PYTHON_LIBS="-L$ac_python_libdir -l$ac_python_library"
|
||||
else
|
||||
# old way: use libpython from python_configdir
|
||||
ac_python_libdir=`$PYTHON -c \
|
||||
- "from distutils.sysconfig import get_python_lib as f; \
|
||||
+ "from sysconfig import get_python_lib as f; \
|
||||
import os; \
|
||||
print (os.path.join(f(plat_specific=1, standard_lib=1), 'config'));"`
|
||||
- PYTHON_LDFLAGS="-L$ac_python_libdir -lpython$ac_python_version"
|
||||
+ PYTHON_LIBS="-L$ac_python_libdir -lpython$ac_python_version"
|
||||
fi
|
||||
|
||||
- if test -z "PYTHON_LDFLAGS"; then
|
||||
- AC_MSG_ERROR([
|
||||
+ if test -z "PYTHON_LIBS"; then
|
||||
+ AC_MSG_WARN([
|
||||
Cannot determine location of your Python DSO. Please check it was installed with
|
||||
- dynamic libraries enabled, or try setting PYTHON_LDFLAGS by hand.
|
||||
+ dynamic libraries enabled, or try setting PYTHON_LIBS by hand.
|
||||
])
|
||||
+ if ! $ax_python_devel_optional; then
|
||||
+ AC_MSG_ERROR([Giving up])
|
||||
+ fi
|
||||
+ ax_python_devel_found=no
|
||||
+ PYTHON_VERSION=""
|
||||
fi
|
||||
+ fi
|
||||
fi
|
||||
- AC_MSG_RESULT([$PYTHON_LDFLAGS])
|
||||
- AC_SUBST([PYTHON_LDFLAGS])
|
||||
|
||||
- #
|
||||
- # Check for site packages
|
||||
- #
|
||||
- AC_MSG_CHECKING([for Python site-packages path])
|
||||
- if test -z "$PYTHON_SITE_PKG"; then
|
||||
- PYTHON_SITE_PKG=`$PYTHON -c "import distutils.sysconfig; \
|
||||
- print (distutils.sysconfig.get_python_lib(0,0));"`
|
||||
- fi
|
||||
- AC_MSG_RESULT([$PYTHON_SITE_PKG])
|
||||
- AC_SUBST([PYTHON_SITE_PKG])
|
||||
+ if test $ax_python_devel_found = yes; then
|
||||
+ AC_MSG_RESULT([$PYTHON_LIBS])
|
||||
+ AC_SUBST([PYTHON_LIBS])
|
||||
|
||||
- #
|
||||
- # libraries which must be linked in when embedding
|
||||
- #
|
||||
- AC_MSG_CHECKING(python extra libraries)
|
||||
- if test -z "$PYTHON_EXTRA_LIBS"; then
|
||||
- PYTHON_EXTRA_LIBS=`$PYTHON -c "import distutils.sysconfig; \
|
||||
- conf = distutils.sysconfig.get_config_var; \
|
||||
+ #
|
||||
+ # Check for site packages
|
||||
+ #
|
||||
+ AC_MSG_CHECKING([for Python site-packages path])
|
||||
+ if test -z "$PYTHON_SITE_PKG"; then
|
||||
+ if test "$IMPORT_SYSCONFIG" = "import sysconfig"; then
|
||||
+ PYTHON_SITE_PKG=`$PYTHON -c "
|
||||
+$IMPORT_SYSCONFIG;
|
||||
+if hasattr(sysconfig, 'get_default_scheme'):
|
||||
+ scheme = sysconfig.get_default_scheme()
|
||||
+else:
|
||||
+ scheme = sysconfig._get_default_scheme()
|
||||
+if scheme == 'posix_local':
|
||||
+ # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/
|
||||
+ scheme = 'posix_prefix'
|
||||
+prefix = '$prefix'
|
||||
+if prefix == 'NONE':
|
||||
+ prefix = '$ac_default_prefix'
|
||||
+sitedir = sysconfig.get_path('purelib', scheme, vars={'base': prefix})
|
||||
+print(sitedir)"`
|
||||
+ else
|
||||
+ # distutils.sysconfig way
|
||||
+ PYTHON_SITE_PKG=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ print (sysconfig.get_python_lib(0,0));"`
|
||||
+ fi
|
||||
+ fi
|
||||
+ AC_MSG_RESULT([$PYTHON_SITE_PKG])
|
||||
+ AC_SUBST([PYTHON_SITE_PKG])
|
||||
+
|
||||
+ #
|
||||
+ # Check for platform-specific site packages
|
||||
+ #
|
||||
+ AC_MSG_CHECKING([for Python platform specific site-packages path])
|
||||
+ if test -z "$PYTHON_PLATFORM_SITE_PKG"; then
|
||||
+ if test "$IMPORT_SYSCONFIG" = "import sysconfig"; then
|
||||
+ PYTHON_PLATFORM_SITE_PKG=`$PYTHON -c "
|
||||
+$IMPORT_SYSCONFIG;
|
||||
+if hasattr(sysconfig, 'get_default_scheme'):
|
||||
+ scheme = sysconfig.get_default_scheme()
|
||||
+else:
|
||||
+ scheme = sysconfig._get_default_scheme()
|
||||
+if scheme == 'posix_local':
|
||||
+ # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/
|
||||
+ scheme = 'posix_prefix'
|
||||
+prefix = '$prefix'
|
||||
+if prefix == 'NONE':
|
||||
+ prefix = '$ac_default_prefix'
|
||||
+sitedir = sysconfig.get_path('platlib', scheme, vars={'platbase': prefix})
|
||||
+print(sitedir)"`
|
||||
+ else
|
||||
+ # distutils.sysconfig way
|
||||
+ PYTHON_PLATFORM_SITE_PKG=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ print (sysconfig.get_python_lib(1,0));"`
|
||||
+ fi
|
||||
+ fi
|
||||
+ AC_MSG_RESULT([$PYTHON_PLATFORM_SITE_PKG])
|
||||
+ AC_SUBST([PYTHON_PLATFORM_SITE_PKG])
|
||||
+
|
||||
+ #
|
||||
+ # libraries which must be linked in when embedding
|
||||
+ #
|
||||
+ AC_MSG_CHECKING(python extra libraries)
|
||||
+ if test -z "$PYTHON_EXTRA_LIBS"; then
|
||||
+ PYTHON_EXTRA_LIBS=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ conf = sysconfig.get_config_var; \
|
||||
print (conf('LIBS') + ' ' + conf('SYSLIBS'))"`
|
||||
- fi
|
||||
- AC_MSG_RESULT([$PYTHON_EXTRA_LIBS])
|
||||
- AC_SUBST(PYTHON_EXTRA_LIBS)
|
||||
+ fi
|
||||
+ AC_MSG_RESULT([$PYTHON_EXTRA_LIBS])
|
||||
+ AC_SUBST(PYTHON_EXTRA_LIBS)
|
||||
|
||||
- #
|
||||
- # linking flags needed when embedding
|
||||
- #
|
||||
- AC_MSG_CHECKING(python extra linking flags)
|
||||
- if test -z "$PYTHON_EXTRA_LDFLAGS"; then
|
||||
- PYTHON_EXTRA_LDFLAGS=`$PYTHON -c "import distutils.sysconfig; \
|
||||
- conf = distutils.sysconfig.get_config_var; \
|
||||
+ #
|
||||
+ # linking flags needed when embedding
|
||||
+ #
|
||||
+ AC_MSG_CHECKING(python extra linking flags)
|
||||
+ if test -z "$PYTHON_EXTRA_LDFLAGS"; then
|
||||
+ PYTHON_EXTRA_LDFLAGS=`$PYTHON -c "$IMPORT_SYSCONFIG; \
|
||||
+ conf = sysconfig.get_config_var; \
|
||||
print (conf('LINKFORSHARED'))"`
|
||||
- fi
|
||||
- AC_MSG_RESULT([$PYTHON_EXTRA_LDFLAGS])
|
||||
- AC_SUBST(PYTHON_EXTRA_LDFLAGS)
|
||||
+ # Hack for macos, it sticks this in here.
|
||||
+ PYTHON_EXTRA_LDFLAGS=`echo $PYTHON_EXTRA_LDFLAGS | sed 's/CoreFoundation.*$/CoreFoundation/'`
|
||||
+ fi
|
||||
+ AC_MSG_RESULT([$PYTHON_EXTRA_LDFLAGS])
|
||||
+ AC_SUBST(PYTHON_EXTRA_LDFLAGS)
|
||||
|
||||
- #
|
||||
- # final check to see if everything compiles alright
|
||||
- #
|
||||
- AC_MSG_CHECKING([consistency of all components of python development environment])
|
||||
- # save current global flags
|
||||
- ac_save_LIBS="$LIBS"
|
||||
- ac_save_CPPFLAGS="$CPPFLAGS"
|
||||
- LIBS="$ac_save_LIBS $PYTHON_LDFLAGS $PYTHON_EXTRA_LDFLAGS $PYTHON_EXTRA_LIBS"
|
||||
- CPPFLAGS="$ac_save_CPPFLAGS $PYTHON_CPPFLAGS"
|
||||
- AC_LANG_PUSH([C])
|
||||
- AC_LINK_IFELSE([
|
||||
+ #
|
||||
+ # final check to see if everything compiles alright
|
||||
+ #
|
||||
+ AC_MSG_CHECKING([consistency of all components of python development environment])
|
||||
+ # save current global flags
|
||||
+ ac_save_LIBS="$LIBS"
|
||||
+ ac_save_LDFLAGS="$LDFLAGS"
|
||||
+ ac_save_CPPFLAGS="$CPPFLAGS"
|
||||
+ LIBS="$ac_save_LIBS $PYTHON_LIBS $PYTHON_EXTRA_LIBS"
|
||||
+ LDFLAGS="$ac_save_LDFLAGS $PYTHON_EXTRA_LDFLAGS"
|
||||
+ CPPFLAGS="$ac_save_CPPFLAGS $PYTHON_CPPFLAGS"
|
||||
+ AC_LANG_PUSH([C])
|
||||
+ AC_LINK_IFELSE([
|
||||
AC_LANG_PROGRAM([[#include <Python.h>]],
|
||||
[[Py_Initialize();]])
|
||||
],[pythonexists=yes],[pythonexists=no])
|
||||
- AC_LANG_POP([C])
|
||||
- # turn back to default flags
|
||||
- CPPFLAGS="$ac_save_CPPFLAGS"
|
||||
- LIBS="$ac_save_LIBS"
|
||||
+ AC_LANG_POP([C])
|
||||
+ # turn back to default flags
|
||||
+ CPPFLAGS="$ac_save_CPPFLAGS"
|
||||
+ LIBS="$ac_save_LIBS"
|
||||
+ LDFLAGS="$ac_save_LDFLAGS"
|
||||
|
||||
- AC_MSG_RESULT([$pythonexists])
|
||||
+ AC_MSG_RESULT([$pythonexists])
|
||||
|
||||
- if test ! "x$pythonexists" = "xyes"; then
|
||||
- AC_MSG_WARN([
|
||||
+ if test ! "x$pythonexists" = "xyes"; then
|
||||
+ AC_MSG_WARN([
|
||||
Could not link test program to Python. Maybe the main Python library has been
|
||||
installed in some non-standard library path. If so, pass it to configure,
|
||||
- via the LDFLAGS environment variable.
|
||||
- Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib"
|
||||
+ via the LIBS environment variable.
|
||||
+ Example: ./configure LIBS="-L/usr/non-standard-path/python/lib"
|
||||
============================================================================
|
||||
+ ERROR!
|
||||
You probably have to install the development version of the Python package
|
||||
for your distribution. The exact name of this package varies among them.
|
||||
============================================================================
|
||||
- ])
|
||||
- PYTHON_VERSION=""
|
||||
+ ])
|
||||
+ if ! $ax_python_devel_optional; then
|
||||
+ AC_MSG_ERROR([Giving up])
|
||||
+ fi
|
||||
+ ax_python_devel_found=no
|
||||
+ PYTHON_VERSION=""
|
||||
+ fi
|
||||
fi
|
||||
|
||||
#
|
||||
From cc1f2b5acb8484edf0a722dcccac435687576a44 Mon Sep 17 00:00:00 2001
|
||||
From: Ingo Klöcker <dev@ingo-kloecker.de>
|
||||
Date: Tue, 16 Jan 2024 09:58:33 +0100
|
||||
Subject: build: Re-add still needed custom changes to Python autoconf macro
|
||||
|
||||
* m4/ax_python_devel.m4: Do not emit 'HAVE_PYTHON'.
|
||||
--
|
||||
|
||||
This reapplies the changes made with 5189c08 that are still needed for
|
||||
detecting multiple Python versions.
|
||||
|
||||
diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4
|
||||
index 1f480db6..8116028a 100644
|
||||
--- a/m4/ax_python_devel.m4
|
||||
+++ b/m4/ax_python_devel.m4
|
||||
@@ -274,8 +274,11 @@ EOD`
|
||||
fi
|
||||
|
||||
# Make the versioning information available to the compiler
|
||||
- AC_DEFINE_UNQUOTED([HAVE_PYTHON], ["$ac_python_version"],
|
||||
- [If available, contains the Python version number currently in use.])
|
||||
+
|
||||
+ # JW: We don't need it and it interferes with the hack
|
||||
+ # to detect multiple Python versions
|
||||
+ #AC_DEFINE_UNQUOTED([HAVE_PYTHON], ["$ac_python_version"],
|
||||
+ # [If available, contains the Python version number currently in use.])
|
||||
|
||||
# First, the library directory:
|
||||
ac_python_libdir=`cat<<EOD | $PYTHON -
|
||||
diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am
|
||||
index 68b98e8e..d601b075 100644
|
||||
--- a/lang/python/Makefile.am
|
||||
+++ b/lang/python/Makefile.am
|
||||
@@ -34,40 +34,40 @@ SUBDIRS = . ${tests} examples doc src
|
||||
.PHONY: prepare
|
||||
prepare: copystamp
|
||||
|
||||
-# For VPATH builds we need to copy some files because Python's
|
||||
-# distutils are not VPATH-aware.
|
||||
+# For VPATH builds we need to copy some files because Python
|
||||
+# is not VPATH-aware.
|
||||
copystamp:
|
||||
ln -sf "$(top_srcdir)/src/data.h" .
|
||||
ln -sf "$(top_builddir)/conf/config.h" .
|
||||
ln -sf "$(srcdir)/src" gpg
|
||||
touch $@
|
||||
|
||||
-all-local: copystamp
|
||||
+all-local: wheels
|
||||
+
|
||||
+wheels: copystamp
|
||||
set -e ; for PYTHON in $(PYTHONS); do \
|
||||
CPP="$(CPP)" \
|
||||
CFLAGS="$(CFLAGS)" \
|
||||
srcdir="$(srcdir)" \
|
||||
top_builddir="$(top_builddir)" \
|
||||
- $$PYTHON setup.py build --verbose --build-base="$$(basename "$${PYTHON}")-gpg" ; \
|
||||
+ $$PYTHON -m pip wheel --no-deps --no-build-isolation --progress-bar off --disable-pip-version-check --wheel-dir ./wheels . ; \
|
||||
done
|
||||
|
||||
-python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc: copystamp
|
||||
- $(MKDIR_P) python$(PYTHON_VERSION)-gpg-dist
|
||||
+dist/gpg-$(VERSION).tar.gz.asc: copystamp
|
||||
CPP="$(CPP)" \
|
||||
CFLAGS="$(CFLAGS)" \
|
||||
srcdir="$(srcdir)" \
|
||||
top_builddir="$(top_builddir)" \
|
||||
- $(PYTHON) setup.py sdist --verbose --dist-dir=python$(PYTHON_VERSION)-gpg-dist \
|
||||
- --manifest=python$(PYTHON_VERSION)-gpg-dist/MANIFEST
|
||||
+ $(PYTHON) -m build --sdist --no-isolation .
|
||||
gpgbin=gpgconf --list-components | grep OpenPGP | sed -e 's/gpg:OpenPGP://g'
|
||||
- $(gpgbin) --detach-sign --armor python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz
|
||||
+ $(gpgbin) --detach-sign --armor dist/gpg-$(VERSION).tar.gz
|
||||
|
||||
.PHONY: sdist
|
||||
-sdist: python$(PYTHON_VERSION)-gpg/dist/gpg-$(VERSION).tar.gz.asc
|
||||
+sdist: dist/gpg-$(VERSION).tar.gz.asc
|
||||
|
||||
.PHONY: upload
|
||||
-upload: python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz \
|
||||
- python$(PYTHON_VERSION)-gpg-dist/gpg-$(VERSION).tar.gz.asc
|
||||
+upload: dist/gpg-$(VERSION).tar.gz \
|
||||
+ dist/gpg-$(VERSION).tar.gz.asc
|
||||
twine upload $^
|
||||
|
||||
CLEANFILES = copystamp \
|
||||
@@ -75,34 +75,27 @@ CLEANFILES = copystamp \
|
||||
data.h \
|
||||
gpg
|
||||
|
||||
-# Remove the rest.
|
||||
-#
|
||||
-# 'make distclean' clears the write bit, breaking rm -rf. Fix the
|
||||
-# permissions.
|
||||
clean-local:
|
||||
- rm -rf -- build
|
||||
- for PYTHON in $(PYTHONS); do \
|
||||
- find "$$(basename "$${PYTHON}")-gpg" -type d ! -perm -200 -exec chmod u+w {} ';' ; \
|
||||
- rm -rf -- "$$(basename "$${PYTHON}")-gpg" ; \
|
||||
- done
|
||||
+ rm -rf -- build wheels dist gpg.egg-info
|
||||
|
||||
-install-exec-local:
|
||||
+# Python 2 pip won't install the wheel if the egg-info is present
|
||||
+install-exec-local: wheels
|
||||
+ rm -rf -- gpg.egg-info ; \
|
||||
set -e ; for PYTHON in $(PYTHONS); do \
|
||||
CPP="$(CPP)" \
|
||||
CFLAGS="$(CFLAGS)" \
|
||||
srcdir="$(srcdir)" \
|
||||
top_builddir="$(top_builddir)" \
|
||||
- $$PYTHON setup.py \
|
||||
- build \
|
||||
- --build-base="$$(basename "$${PYTHON}")-gpg" \
|
||||
- install \
|
||||
- --prefix "$(DESTDIR)$(prefix)" \
|
||||
- --verbose ; \
|
||||
+ $$PYTHON -m pip install \
|
||||
+ --no-index --find-links ./wheels \
|
||||
+ --prefix "$(DESTDIR)$(prefix)" \
|
||||
+ --verbose \
|
||||
+ gpg ; \
|
||||
done
|
||||
|
||||
uninstall-local:
|
||||
set -x; GV=$$(echo $(VERSION) | tr - _); for PYTHON in $(PYTHONS); do \
|
||||
PLATLIB="$(prefix)/$$("$${PYTHON}" -c 'import sysconfig, os; print(os.path.relpath(sysconfig.get_path("platlib", scheme="posix_prefix"), sysconfig.get_config_var("prefix")))')" ; \
|
||||
rm -rf -- "$(DESTDIR)$${PLATLIB}/gpg" \
|
||||
- "$(DESTDIR)$${PLATLIB}"/gpg-$$GV-py*.egg-info ; \
|
||||
+ "$(DESTDIR)$${PLATLIB}"/gpg-$$GV.dist-info ; \
|
||||
done
|
||||
diff --git a/lang/python/doc/src/gpgme-python-howto.org b/lang/python/doc/src/gpgme-python-howto.org
|
||||
index b4367872..c40e2249 100644
|
||||
--- a/lang/python/doc/src/gpgme-python-howto.org
|
||||
+++ b/lang/python/doc/src/gpgme-python-howto.org
|
||||
@@ -2945,7 +2945,7 @@ Save that into a file called =keycount.pyx= and then create a
|
||||
=setup.py= file which contains this:
|
||||
|
||||
#+BEGIN_SRC python -i
|
||||
-from distutils.core import setup
|
||||
+from setuptools import setup
|
||||
from Cython.Build import cythonize
|
||||
|
||||
setup(
|
||||
diff --git a/lang/python/examples/howto/advanced/cython/setup.py b/lang/python/examples/howto/advanced/cython/setup.py
|
||||
index f8dce034..849639e2 100644
|
||||
--- a/lang/python/examples/howto/advanced/cython/setup.py
|
||||
+++ b/lang/python/examples/howto/advanced/cython/setup.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from distutils.core import setup
|
||||
+from setuptools import setup
|
||||
from Cython.Build import cythonize
|
||||
|
||||
setup(
|
||||
diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in
|
||||
index 6f36861d..7b64ba7b 100755
|
||||
--- a/lang/python/setup.py.in
|
||||
+++ b/lang/python/setup.py.in
|
||||
@@ -18,8 +18,12 @@
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
-from distutils.core import setup, Extension
|
||||
-from distutils.command.build import build
|
||||
+try:
|
||||
+ from setuptools import setup, Extension
|
||||
+ from setuptools.command.build import build
|
||||
+except ImportError:
|
||||
+ from distutils.core import setup, Extension
|
||||
+ from distutils.command.build import build
|
||||
|
||||
import glob
|
||||
import os
|
||||
@@ -225,9 +229,8 @@ class BuildExtFirstHack(build):
|
||||
build.run(self)
|
||||
|
||||
|
||||
-py3 = [] if sys.version_info.major < 3 else ['-py3']
|
||||
swig_sources = []
|
||||
-swig_opts = ['-threads'] + py3 + extra_swig_opts
|
||||
+swig_opts = ['-threads'] + extra_swig_opts
|
||||
swige = Extension(
|
||||
'gpg._gpgme',
|
||||
sources=swig_sources,
|
||||
@@ -282,10 +285,12 @@ GPGME and these bindings is available here:
|
||||
'Programming Language :: Python :: 2',
|
||||
'Programming Language :: Python :: 2.7',
|
||||
'Programming Language :: Python :: 3',
|
||||
- 'Programming Language :: Python :: 3.4',
|
||||
- 'Programming Language :: Python :: 3.5',
|
||||
'Programming Language :: Python :: 3.6',
|
||||
- 'Programming Language :: Python :: 3.7',
|
||||
+ 'Programming Language :: Python :: 3.8',
|
||||
+ 'Programming Language :: Python :: 3.9',
|
||||
+ 'Programming Language :: Python :: 3.10',
|
||||
+ 'Programming Language :: Python :: 3.11',
|
||||
+ 'Programming Language :: Python :: 3.12',
|
||||
'Operating System :: POSIX',
|
||||
'Operating System :: Microsoft :: Windows',
|
||||
'Topic :: Communications :: Email',
|
||||
diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4
|
||||
index 8116028a..e3bedcbb 100644
|
||||
--- a/m4/ax_python_devel.m4
|
||||
+++ b/m4/ax_python_devel.m4
|
||||
@@ -468,4 +468,4 @@ print(sitedir)"`
|
||||
#
|
||||
# all done!
|
||||
#
|
||||
-])
|
||||
+])
|
||||
\ No newline at end of file
|
||||
diff --git a/m4/python.m4 b/m4/python.m4
|
||||
index 4b9483c0..e741511d 100644
|
||||
--- a/m4/python.m4
|
||||
+++ b/m4/python.m4
|
||||
@@ -36,12 +36,12 @@
|
||||
# numbers and dots only.
|
||||
AC_DEFUN([AM_PATH_PYTHON],
|
||||
[
|
||||
- dnl Find a Python interpreter. Python versions prior to 2.7 are not
|
||||
- dnl supported. Python 3.0 through to Python 3.3 are also not supported.
|
||||
+ dnl Find a Python interpreter. Python versions prior to 3.8 are
|
||||
+ dnl end-of-life and not supported, with the exception of 2.7 and 3.6
|
||||
m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
|
||||
[python2 python2.7 dnl
|
||||
python dnl
|
||||
- python3 python3.10 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4
|
||||
+ python3 python3.12 python3.11 python3.10 python3.9 python3.8 python3.6
|
||||
])
|
||||
|
||||
AC_ARG_VAR([PYTHON], [the Python interpreter])
|
28
gpgme-fix-python-install.patch
Normal file
28
gpgme-fix-python-install.patch
Normal file
@ -0,0 +1,28 @@
|
||||
Index: gpgme-1.24.0/lang/python/Makefile.am
|
||||
===================================================================
|
||||
--- gpgme-1.24.0.orig/lang/python/Makefile.am
|
||||
+++ gpgme-1.24.0/lang/python/Makefile.am
|
||||
@@ -96,7 +96,8 @@ install-exec-local:
|
||||
build \
|
||||
--build-base="$$(basename "$${PYTHON}")-gpg" \
|
||||
install \
|
||||
- --prefix "$(DESTDIR)$(prefix)" \
|
||||
+ --root "$(DESTDIR)" \
|
||||
+ --prefix "$(prefix)" \
|
||||
--verbose ; \
|
||||
done
|
||||
|
||||
Index: gpgme-1.24.0/lang/python/Makefile.in
|
||||
===================================================================
|
||||
--- gpgme-1.24.0.orig/lang/python/Makefile.in
|
||||
+++ gpgme-1.24.0/lang/python/Makefile.in
|
||||
@@ -818,7 +818,8 @@ install-exec-local:
|
||||
build \
|
||||
--build-base="$$(basename "$${PYTHON}")-gpg" \
|
||||
install \
|
||||
- --prefix "$(DESTDIR)$(prefix)" \
|
||||
+ --root "$(DESTDIR)" \
|
||||
+ --prefix "$(prefix)" \
|
||||
--verbose ; \
|
||||
done
|
||||
|
15
gpgme-suse-nobetasuffix.patch
Normal file
15
gpgme-suse-nobetasuffix.patch
Normal file
@ -0,0 +1,15 @@
|
||||
Index: gpgme-1.24.0/autogen.sh
|
||||
===================================================================
|
||||
--- gpgme-1.24.0.orig/autogen.sh
|
||||
+++ gpgme-1.24.0/autogen.sh
|
||||
@@ -270,8 +270,8 @@ if [ "$myhost" = "find-version" ]; then
|
||||
rvd=$((0x$(echo ${rev} | dd bs=1 count=4 2>/dev/null)))
|
||||
else
|
||||
ingit=no
|
||||
- beta=yes
|
||||
- tmp="-unknown"
|
||||
+ beta=no
|
||||
+ tmp=""
|
||||
cid="0000000"
|
||||
rev="0000000"
|
||||
rvd="0"
|
1605
gpgme.changes
Normal file
1605
gpgme.changes
Normal file
File diff suppressed because it is too large
Load Diff
86
gpgme.keyring
Normal file
86
gpgme.keyring
Normal file
@ -0,0 +1,86 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
eK+6lfilQuveoUwp/Xx5wXPNUy6q4eOOovCW7gS7I7288NGHCa2ul8sD6vA9C4mM
|
||||
4Zxaole9P9wwJe1zZFtCIy88zHM9vqv+YM9DxMCaW24+rUztr7eD4bCRdG+QlSh+
|
||||
7R/TaqSxY1eAAd1J5tma9CNJO73pTKU+/JhTBGFpSqMTCSskAwMCCAEBBwIDBF6X
|
||||
D9NmUQDgiyYNbhs1DMJ14mIw812wY1HVx/4QWYWiBunhrvSFxVbzsjD7/Wv+v3bm
|
||||
MPrL+M2DLyFiSewNmcS0JEdudVBHLmNvbSAoUmVsZWFzZSBTaWduaW5nIEtleSAy
|
||||
MDIxKYiaBBMTCABCFiEEAvON/3Mf+XywOaHaVJ5pXpBboggFAmFpSqMCGwMFCQ9x
|
||||
14oFCwkIBwIDIgIBBhUKCQgLAgQWAgMBAh4HAheAAAoJEFSeaV6QW6IITkoA/RYa
|
||||
jaTl1eEBU/Gdm12o3jrI55N5xZK2XTqSx25clVyjAP0XwMW/Og5+ND1ri3bAqADV
|
||||
WlBDUswz8wYxsb0C4kYBkoh1BBAWCgAdFiEEbapuZKdtKEBXG0kCUoiXuCZAOtoF
|
||||
AmFpTvEACgkQUoiXuCZAOtrJQAEAh7YyykjAy/Qs1yC3ji8iBfIVnPXvblrIx3SR
|
||||
RyDwRC8BAKtZbEuKTtPlgkLUgMleTcZJ/vEhJE+GvfQ9o5gWCqEFiHUEEBYKAB0W
|
||||
IQTB00tpIZ5K7sC6HCHj/f8hjkW3KwUCYWlPWgAKCRDj/f8hjkW3Kx4eAQDp6aGS
|
||||
N/fU4xLl8RSvQUVjVA+aCTrMQR3hRwqw8liF2wEA3O3ECxz6e1+DoItYoJBBLKLw
|
||||
eiInsGZ/+h5XYrpXTgA=
|
||||
=4+Sn
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
409
gpgme.spec
Normal file
409
gpgme.spec
Normal file
@ -0,0 +1,409 @@
|
||||
#
|
||||
# spec file for package gpgme
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define psuffix %{nil}
|
||||
%global flavor @BUILD_FLAVOR@%{nil}
|
||||
%if "%{flavor}" == ""
|
||||
%define psuffix %{nil}
|
||||
%bcond_without python3
|
||||
%bcond_with qt
|
||||
%endif
|
||||
%if "%{flavor}" == "qt"
|
||||
%define psuffix qt
|
||||
%bcond_with python3
|
||||
%bcond_without qt
|
||||
%endif
|
||||
%if "%{flavor}" == "qt6"
|
||||
%define psuffix qt6
|
||||
%bcond_with python3
|
||||
%bcond_without qt6
|
||||
%endif
|
||||
|
||||
%if 0%{suse_version} >= 1550 || "%{?pythons}" == "python311"
|
||||
%bcond_without replace_distutils
|
||||
%else
|
||||
# Keep deprecated distutils for Python 3.6 on 15.x
|
||||
%bcond_with replace_distutils
|
||||
%endif
|
||||
|
||||
Name: gpgme%{psuffix}
|
||||
Version: 1.24.0
|
||||
Release: 0
|
||||
Summary: Programmatic library interface to GnuPG
|
||||
License: GPL-3.0-or-later AND LGPL-2.1-or-later
|
||||
Group: Productivity/Security
|
||||
URL: https://www.gnupg.org/related_software/gpgme/
|
||||
Source: https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-%{version}.tar.bz2
|
||||
Source1: https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-%{version}.tar.bz2.sig
|
||||
Source2: baselibs.conf
|
||||
# https://www.gnupg.org/signature_key.html
|
||||
Source3: https://gnupg.org/signature_key.asc#/gpgme.keyring
|
||||
# used to have a fixed timestamp
|
||||
Source99: gpgme.changes
|
||||
# PATCH-FIX-OPENSUSE gpgme-suse-nobetasuffix.patch code@bnavigator.de -- remove "-unknown" betasuffix boo#1205197
|
||||
Patch2: gpgme-suse-nobetasuffix.patch
|
||||
Patch3: python313.patch
|
||||
Patch4: gpgme-fix-python-install.patch
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gpg2 >= 2.4.1
|
||||
BuildRequires: libassuan-devel >= 2.4.2
|
||||
BuildRequires: libgpg-error-devel >= 1.47
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: swig
|
||||
%if %{with python3}
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: python-rpm-macros
|
||||
%if %{with replace_distutils}
|
||||
BuildRequires: %{python_module pip}
|
||||
BuildRequires: %{python_module setuptools >= 62.4}
|
||||
BuildRequires: %{python_module wheel}
|
||||
%endif
|
||||
%endif
|
||||
%if %{with qt}
|
||||
BuildRequires: pkgconfig(Qt5Core)
|
||||
BuildRequires: pkgconfig(Qt5Test)
|
||||
%endif
|
||||
%if %{with qt6}
|
||||
%if 0%{?suse_version} < 1550
|
||||
# The default compiler is too old for Qt6, use the newest
|
||||
# version available in the :Update repo
|
||||
BuildRequires: gcc12-c++
|
||||
BuildRequires: gcc12-PIE
|
||||
%endif
|
||||
BuildRequires: pkgconfig(Qt6Core) >= 6.4.0
|
||||
BuildRequires: pkgconfig(Qt6Test)
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1550
|
||||
# TW: generate subpackages for every python3 flavor
|
||||
%define python_subpackage_only 1
|
||||
%python_subpackages
|
||||
%else
|
||||
%define python_sitearch %python3_sitearch
|
||||
%define python_version %python3_version
|
||||
%define python_files() -n python3-%{**}
|
||||
%endif
|
||||
|
||||
%description
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management. It uses GnuPG as its back-end.
|
||||
|
||||
%package -n libgpgme11
|
||||
Summary: Programmatic library interface to GnuPG
|
||||
Group: System/Libraries
|
||||
Requires: gpg2
|
||||
|
||||
%description -n libgpgme11
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management. It uses GnuPG as its back-end.
|
||||
|
||||
%package -n libgpgme-devel
|
||||
Summary: Development files for GPGME, a C library for accessing GnuPG
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: glibc-devel
|
||||
Requires: libgpg-error-devel
|
||||
Requires: libgpgme11 = %{version}
|
||||
%requires_ge libassuan-devel
|
||||
Provides: gpgme-devel = %{version}
|
||||
Obsoletes: gpgme-devel < %{version}
|
||||
|
||||
%description -n libgpgme-devel
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This subpackage contains the headers needed for building applications
|
||||
making use of libgpgme.
|
||||
|
||||
%package -n libgpgmepp6
|
||||
Summary: Programmatic C++ library interface to GnuPG
|
||||
Group: System/Libraries
|
||||
Requires: gpg2
|
||||
|
||||
%description -n libgpgmepp6
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This package contains the C++ bindings.
|
||||
|
||||
%package -n libgpgmepp-devel
|
||||
Summary: Development files for libgpgmepp, a C++ library for accessing GnuPG
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: glibc-devel
|
||||
Requires: libgpg-error-devel
|
||||
Requires: libgpgme-devel = %{version}
|
||||
Requires: libgpgmepp6 = %{version}
|
||||
# This avoids requiring CMake at build time for the default flavor
|
||||
Provides: cmake(Gpgmepp) = %{version}
|
||||
%requires_ge libassuan-devel
|
||||
|
||||
%description -n libgpgmepp-devel
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This subpackage contains the headers needed for building applications
|
||||
making use of libgpgmepp.
|
||||
|
||||
%if 0%{?python_subpackage_only}
|
||||
%package -n python-gpg
|
||||
Summary: Python %{python_version} bindings for GPGME, a library for accessing GnuPG
|
||||
Group: Development/Languages/Python
|
||||
|
||||
%description -n python-gpg
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This package contains the bindings to use the library from Python %{python_version} applications.
|
||||
|
||||
%else
|
||||
|
||||
%package -n python3-gpg
|
||||
Summary: Python 3 bindings for GPGME, a library for accessing GnuPG
|
||||
Group: Development/Languages/Python
|
||||
|
||||
%description -n python3-gpg
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This package contains the bindings to use the library from Python 3 applications.
|
||||
%endif
|
||||
|
||||
%package -n libqgpgme15
|
||||
Summary: Programmatic Qt 5 library interface to GnuPG
|
||||
Group: System/Libraries
|
||||
Requires: gpg2
|
||||
|
||||
%description -n libqgpgme15
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This package contains the Qt 5 bindings.
|
||||
|
||||
%package -n libqgpgme-devel
|
||||
Summary: Development files for libqgpgme, a Qt 5 library for accessing GnuPG
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: libgpgme-devel = %{version}
|
||||
Requires: libgpgmepp-devel = %{version}
|
||||
Requires: libqgpgme15 = %{version}
|
||||
|
||||
%description -n libqgpgme-devel
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This package contains the bindings to use the library in Qt 5 C++ applications.
|
||||
|
||||
%package -n libqgpgmeqt6-15
|
||||
Summary: Programmatic Qt 6 library interface to GnuPG
|
||||
Group: System/Libraries
|
||||
Requires: gpg2
|
||||
|
||||
%description -n libqgpgmeqt6-15
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This package contains the Qt 6 bindings.
|
||||
|
||||
%package -n libqgpgmeqt6-devel
|
||||
Summary: Development files for libqgpgmeqt6, a Qt library for accessing GnuPG
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: libgpgme-devel = %{version}
|
||||
Requires: libgpgmepp-devel = %{version}
|
||||
Requires: libqgpgmeqt6-15 = %{version}
|
||||
# The include folders have the same name in both libqgpgme-devel and libqgpgmeqt6-devel
|
||||
Conflicts: libqgpgme-devel
|
||||
|
||||
%description -n libqgpgmeqt6-devel
|
||||
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
easier for applications. It provides a high-level crypto API for
|
||||
encryption, decryption, signing, signature verification, and key
|
||||
management.
|
||||
|
||||
This package contains the bindings to use the library in Qt 6 C++ applications.
|
||||
|
||||
%prep
|
||||
%autosetup -N -n gpgme-%{version}
|
||||
%if %{with replace_distutils}
|
||||
%patch -p1 -P2 -P3
|
||||
%endif
|
||||
%if 0%{suse_version} > 1500
|
||||
# Note: rpm in 15.x does not know about the autopatch -m flag.
|
||||
# Need to apply every additional patch explicitly, if any.
|
||||
%autopatch -p1 -m4
|
||||
%endif
|
||||
|
||||
%build
|
||||
./autogen.sh
|
||||
build_timestamp=$(date -u +%{Y}-%{m}-%{dT}%{H}:%{M}+0000 -r %{SOURCE99})
|
||||
languages="cl cpp"
|
||||
|
||||
%if %{with python3}
|
||||
languages="${languages} python"
|
||||
%endif
|
||||
|
||||
%if %{with qt}
|
||||
languages="cpp qt"
|
||||
%endif
|
||||
|
||||
%if %{with qt6}
|
||||
languages="cpp qt6"
|
||||
%if 0%{?suse_version} < 1550
|
||||
# Qt6 needs full c++-17 support
|
||||
export CXX=g++-12 CC=gcc-12 CPP=cpp-12
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define _configure ../configure
|
||||
mkdir build
|
||||
pushd build
|
||||
%configure \
|
||||
--disable-silent-rules \
|
||||
--disable-static \
|
||||
--disable-fd-passing \
|
||||
--enable-languages="${languages}" \
|
||||
--enable-build-timestamp="${build_timestamp}"
|
||||
%make_build
|
||||
popd
|
||||
|
||||
%install
|
||||
pushd build
|
||||
%make_install
|
||||
find %{buildroot} -type f -name "*.la" -delete -print
|
||||
chmod -x %{buildroot}%{_libdir}/cmake/Gpgmepp/*.cmake
|
||||
|
||||
%if %{with qt} || %{with qt6}
|
||||
rm -r %{buildroot}%{_bindir}
|
||||
rm -r %{buildroot}%{_datadir}/aclocal/gpgme*
|
||||
rm -r %{buildroot}%{_includedir}/gpgme*
|
||||
rm -r %{buildroot}%{_infodir}/gpgme*
|
||||
rm -r %{buildroot}%{_libdir}/cmake/Gpgmepp
|
||||
rm -r %{buildroot}%{_libdir}/libgpgme*
|
||||
rm -r %{buildroot}%{_libdir}/pkgconfig/gpgme*
|
||||
rm -r %{buildroot}%{_mandir}/man1/gpgme-json.*
|
||||
%endif
|
||||
popd
|
||||
|
||||
%check
|
||||
GPGME_DEBUG=2:mygpgme.log %make_build check skip=%{?qt_skip:%{qt_skip}} || cat $(find -name mygpgme.log -type f)
|
||||
|
||||
%if %{with qt}
|
||||
%ldconfig_scriptlets -n libqgpgme15
|
||||
%endif
|
||||
|
||||
%if %{with qt6}
|
||||
%ldconfig_scriptlets -n libqgpgmeqt6-15
|
||||
%endif
|
||||
|
||||
%if %{without qt} && %{without qt6}
|
||||
%ldconfig_scriptlets -n libgpgme11
|
||||
%ldconfig_scriptlets -n libgpgmepp6
|
||||
%endif
|
||||
|
||||
%if %{without qt} && %{without qt6}
|
||||
%files
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%doc AUTHORS ChangeLog ChangeLog-2011 README NEWS THANKS TODO VERSION
|
||||
%{_bindir}/gpgme-tool
|
||||
%{_bindir}/gpgme-json
|
||||
%{_datadir}/common-lisp
|
||||
%{_datadir}/common-lisp/source
|
||||
%{_infodir}/gpgme*
|
||||
%{_mandir}/man1/gpgme-json.*
|
||||
|
||||
%files -n libgpgme11
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_libdir}/libgpgme.so.*
|
||||
|
||||
%files -n libgpgme-devel
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_libdir}/libgpgme.so
|
||||
%{_bindir}/gpgme-config
|
||||
%{_datadir}/aclocal/gpgme.m4
|
||||
%{_includedir}/gpgme.h
|
||||
%{_libdir}/pkgconfig/gpgme.pc
|
||||
%{_libdir}/pkgconfig/gpgme-glib.pc
|
||||
|
||||
%files -n libgpgmepp6
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_libdir}/libgpgmepp.so.*
|
||||
|
||||
%files -n libgpgmepp-devel
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_libdir}/libgpgmepp.so
|
||||
%{_includedir}/gpgme++
|
||||
%dir %{_libdir}/cmake
|
||||
%dir %{_libdir}/cmake/Gpgmepp
|
||||
%{_libdir}/cmake/Gpgmepp/GpgmeppConfig*.cmake
|
||||
%{_libdir}/pkgconfig/gpgmepp.pc
|
||||
%endif
|
||||
|
||||
%if %{with python3}
|
||||
%files %{python_files gpg}
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{python_sitearch}/gpg
|
||||
%{python_sitearch}/gpg-%{version}*.egg-info
|
||||
%endif
|
||||
|
||||
%if %{with qt}
|
||||
%files -n libqgpgme15
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_libdir}/libqgpgme.so.*
|
||||
|
||||
%files -n libqgpgme-devel
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_includedir}/qgpgme-qt5/
|
||||
%dir %{_libdir}/cmake
|
||||
%dir %{_libdir}/cmake/QGpgme
|
||||
%{_libdir}/cmake/QGpgme/*.cmake
|
||||
%{_libdir}/libqgpgme.so
|
||||
%endif
|
||||
|
||||
%if %{with qt6}
|
||||
%files -n libqgpgmeqt6-15
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_libdir}/libqgpgmeqt6.so.*
|
||||
|
||||
%files -n libqgpgmeqt6-devel
|
||||
%license COPYING COPYING.LESSER LICENSES
|
||||
%{_includedir}/qgpgme-qt6/
|
||||
%dir %{_libdir}/cmake
|
||||
%dir %{_libdir}/cmake/QGpgmeQt6
|
||||
%{_libdir}/cmake/QGpgmeQt6/*.cmake
|
||||
%{_libdir}/libqgpgmeqt6.so
|
||||
%endif
|
||||
|
||||
%changelog
|
38
python313.patch
Normal file
38
python313.patch
Normal file
@ -0,0 +1,38 @@
|
||||
Index: gpgme-1.24.0/configure.ac
|
||||
===================================================================
|
||||
--- gpgme-1.24.0.orig/configure.ac
|
||||
+++ gpgme-1.24.0/configure.ac
|
||||
@@ -614,7 +614,7 @@ if test "$found_py" = "1"; then
|
||||
if test "$found_py" = "1" -o "$found_py3" = "1"; then
|
||||
# Reset everything, so that we can look for another Python.
|
||||
m4_foreach([mym4pythonver],
|
||||
- [[2.7],[3.6],[3.8],[3.9],[3.10],[3.11],[3.12],[all]],
|
||||
+ [[2.7],[3.6],[3.8],[3.9],[3.10],[3.11],[3.12],[3.13],[all]],
|
||||
[unset PYTHON
|
||||
unset PYTHON_VERSION
|
||||
unset PYTHON_CPPFLAGS
|
||||
Index: gpgme-1.24.0/lang/python/setup.py.in
|
||||
===================================================================
|
||||
--- gpgme-1.24.0.orig/lang/python/setup.py.in
|
||||
+++ gpgme-1.24.0/lang/python/setup.py.in
|
||||
@@ -291,6 +291,7 @@ GPGME and these bindings is available he
|
||||
'Programming Language :: Python :: 3.10',
|
||||
'Programming Language :: Python :: 3.11',
|
||||
'Programming Language :: Python :: 3.12',
|
||||
+ 'Programming Language :: Python :: 3.13',
|
||||
'Operating System :: POSIX',
|
||||
'Operating System :: Microsoft :: Windows',
|
||||
'Topic :: Communications :: Email',
|
||||
Index: gpgme-1.24.0/m4/python.m4
|
||||
===================================================================
|
||||
--- gpgme-1.24.0.orig/m4/python.m4
|
||||
+++ gpgme-1.24.0/m4/python.m4
|
||||
@@ -41,7 +41,7 @@ AC_DEFUN([AM_PATH_PYTHON],
|
||||
m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
|
||||
[python2 python2.7 dnl
|
||||
python dnl
|
||||
- python3 python3.12 python3.11 python3.10 python3.9 python3.8 python3.6
|
||||
+ python3 python3.13 python3.12 python3.11 python3.10 python3.9 python3.8 python3.6
|
||||
])
|
||||
|
||||
AC_ARG_VAR([PYTHON], [the Python interpreter])
|
Loading…
x
Reference in New Issue
Block a user