Control: tags -1 patch
Control: tags -1 fixed-upstream
On 2022-10-25 Andreas Metzler <[email protected]> wrote:
> Control: forwarded -1 https://dev.gnupg.org/T6204
> On 2022-10-23 Lucas Nussbaum <[email protected]> wrote:
> > Source: gpgme1.0
> > Version: 1.18.0-1
> [...]
> > > Could not find gpg-error-config. Please install the libgpg-error
> > > development package.
> > > make[4]: *** [Makefile:760: all-local] Error 1
> [...]
> There is a patch in upstream GIT ae9258fbf3b9d434495ef11fc184a91fe7c4ca57 but
> it breaks when @GPG_ERROR_CFLAGS@ expands to nothing which happens on
> Debian.
Which has been promptly fixed. Find attached debdiffs for a proposed
upload. - I can also massage this into a mergew-request or push
directly to https://salsa.debian.org/debian/gpgme Just give me a
heads-up.
cu Andreas
--
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'
diff -Nru gpgme1.0-1.18.0/debian/changelog gpgme1.0-1.18.0/debian/changelog
--- gpgme1.0-1.18.0/debian/changelog 2022-09-29 02:31:10.000000000 +0200
+++ gpgme1.0-1.18.0/debian/changelog 2022-10-26 06:56:43.000000000 +0200
@@ -1,3 +1,16 @@
+gpgme1.0 (1.18.0-1.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Add 0010-build-python-Don-t-use-gpg-error-config-gpgme-config.patch
+ and 0013-python-Fix-configure-generating-setup.py.patch from upstream
+ GIT master to fix FTBFS after removal of gpg-error-config.
+ Closes: #1022348
+ * Without gpg-error-config gpgme-config is not installed by the upstream
+ build system anymore. Adapt libgpgme-dev.install, drop related lintian
+ override and Debian specific manpage.
+
+ -- Andreas Metzler <[email protected]> Wed, 26 Oct 2022 06:56:43 +0200
+
gpgme1.0 (1.18.0-1) unstable; urgency=medium
* new upstream version
diff -Nru gpgme1.0-1.18.0/debian/gpgme-config.1 gpgme1.0-1.18.0/debian/gpgme-config.1
--- gpgme1.0-1.18.0/debian/gpgme-config.1 2022-09-06 20:52:33.000000000 +0200
+++ gpgme1.0-1.18.0/debian/gpgme-config.1 1970-01-01 01:00:00.000000000 +0100
@@ -1,94 +0,0 @@
-.TH "GPGME" "1" "08 July 2012" "gpgme" "User commands"
-
-.SH NAME
-gpgme\-config \- script to get information about the installed version of GPGME
-
-.SH SYNOPSIS
-.B gpgme\-config
-.RB [ \-\-api\-version ]
-.RB [ \-\-cflags ]
-.RB [ \-\-exec\-prefix ]
-.RB [ \-\-get\-gpg ]
-.RB [ \-\-get\-gpgsm ]
-.RB [ \-\-host ]
-.RB [ \-\-libs ]
-.RB [ \-\-prefix ]
-.RB [ \-\-thread=pthread ]
-.RB [ \-\-version ]
-
-.SH DESCRIPTION
-.PP
-\fBgpgme\-config\fP is a tool that is used to configure to determine
-the compiler and linker flags that should be used to compile
-and link programs that use \fIGPGME\fP. It is also used internally
-to the .m4 macros for GNU autoconf that are included with \fIGPGME\fP.
-
-.SH OPTIONS
-.PP
-\fBgpgme\-config\fP accepts the following options:
-.TP
-.B \-\-api\-version
-Print the currently installed API version of \fIGPGME\fP to standard output.
-.TP
-.B \-\-cflags
-Print the compiler flags that are necessary to compile a \fIGPGME\fP program.
-.TP
-.B \-\-exec\-prefix
-Print the exec prefix that was used to configure the \fIGPGME\fP build.
-.TP
-.B \-\-get\-gpg
-Print the path to the
-.BR gpg (1)
-binary used to configure the \fIGPGME\fP build.
-.TP
-.B \-\-get\-gpgsm
-Print the path to the
-.BR gpgsm (1)
-binary used to configure the \fIGPGME\fP build.
-.TP
-.B \-\-host
-Print host information.
-.TP
-.B \-\-libs
-Print the linker flags that are necessary to link a \fIGPGME\fP program.
-.TP
-.B \-\-prefix
-Print the prefix that was used to configure the \fIGPGME\fP build.
-.TP
-.B \-\-thread=pthread
-Switch for the
-.B \-\-cflags
-and
-.B \-\-libs
-options for the thread-enabled \fIGPGME\fP version.
-.TP
-.B \-\-version
-Print the currently installed version of \fIGPGME\fP to standard output.
-
-.SH AUTHORS
-.PP
-.PP
-The
-.I GPGME
-library is written by many contributors, including Werner Koch, Marcus
-Brinkmann, Andre Heinecke, Justus Winter, and Karl-Heinz Zimmer.
-.PP
-This manual page page was written by \fBJose Carlos Garcia Sogo\fR
-\&<\&[email protected]\&> and \fBDaniel Leidert\fR <\&[email protected]\&>
-for the Debian distribution (but may be used by others).
-
-.SH BUGS
-.PP
-Please report bugs to <https://bugs.gnupg.org>.
-
-.SH COPYRIGHT
-\fBgpgme\-tool\fP is Copyright \(co 2015-2016 g10 Code GmbH License
-GPLv2+: GNU GPL version 2 or later <https://www.gnu.org/licenses/>
-.PP
-This is free software: you are free to change and redistribute it.
-There is NO WARRANTY, to the extent permitted by law.
-
-.SH "SEE ALSO"
-.BR gpgme\-tool (1),
-.BR /usr/include/gpgme.h ,
-.B info gpgme
diff -Nru gpgme1.0-1.18.0/debian/libgpgme-dev.install gpgme1.0-1.18.0/debian/libgpgme-dev.install
--- gpgme1.0-1.18.0/debian/libgpgme-dev.install 2022-09-06 20:52:33.000000000 +0200
+++ gpgme1.0-1.18.0/debian/libgpgme-dev.install 2022-10-26 06:56:43.000000000 +0200
@@ -1,4 +1,3 @@
-usr/bin/gpgme-config
usr/bin/gpgme-tool
usr/include/gpgme.h
usr/lib/*/libgpgme.a
diff -Nru gpgme1.0-1.18.0/debian/libgpgme-dev.lintian-overrides gpgme1.0-1.18.0/debian/libgpgme-dev.lintian-overrides
--- gpgme1.0-1.18.0/debian/libgpgme-dev.lintian-overrides 2022-09-29 02:30:15.000000000 +0200
+++ gpgme1.0-1.18.0/debian/libgpgme-dev.lintian-overrides 1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-# this has been litigated upstream and i do not see it getting fixed.
-# please see https://bugs.debian.org/659168 and https://dev.gnupg.org/T1414
-libgpgme-dev: old-style-config-script [usr/bin/gpgme-config]
diff -Nru gpgme1.0-1.18.0/debian/libgpgme-dev.manpages gpgme1.0-1.18.0/debian/libgpgme-dev.manpages
--- gpgme1.0-1.18.0/debian/libgpgme-dev.manpages 2022-09-06 20:52:33.000000000 +0200
+++ gpgme1.0-1.18.0/debian/libgpgme-dev.manpages 2022-10-26 06:56:43.000000000 +0200
@@ -1,2 +1 @@
-debian/gpgme-config.1
debian/gpgme-tool.1
diff -Nru gpgme1.0-1.18.0/debian/patches/0010-build-python-Don-t-use-gpg-error-config-gpgme-config.patch gpgme1.0-1.18.0/debian/patches/0010-build-python-Don-t-use-gpg-error-config-gpgme-config.patch
--- gpgme1.0-1.18.0/debian/patches/0010-build-python-Don-t-use-gpg-error-config-gpgme-config.patch 1970-01-01 01:00:00.000000000 +0100
+++ gpgme1.0-1.18.0/debian/patches/0010-build-python-Don-t-use-gpg-error-config-gpgme-config.patch 2022-10-26 06:53:39.000000000 +0200
@@ -0,0 +1,130 @@
+From ae9258fbf3b9d434495ef11fc184a91fe7c4ca57 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <[email protected]>
+Date: Thu, 15 Sep 2022 13:46:23 +0900
+Subject: [PATCH] build:python: Don't use gpg-error-config/gpgme-config.
+
+* lang/python/setup.py.in: Use @prefix@, @GPGME_CONFIG_LIBS@,
+@GPGME_CONFIG_CFLAGS@, and @GPG_ERROR_CFLAGS@ of configure.
+
+--
+
+GnuPG-bug-id: 6204
+Signed-off-by: NIIBE Yutaka <[email protected]>
+---
+ lang/python/setup.py.in | 34 +++++-----------------------------
+ 1 file changed, 5 insertions(+), 29 deletions(-)
+
+diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in
+index 9785a282..6741d3c8 100755
+--- a/lang/python/setup.py.in
++++ b/lang/python/setup.py.in
+@@ -26,77 +26,60 @@ import os
+ import os.path
+ import re
+ import shutil
+ import subprocess
+ import sys
+
+ # Out-of-tree build of the gpg bindings.
+-gpg_error_config = ['gpg-error-config']
+-gpgme_config_flags = ['--thread=pthread']
+-gpgme_config = ['gpgme-config'] + gpgme_config_flags
+ gpgme_h = ''
+ include_dirs = [os.getcwd()]
+ library_dirs = []
+ in_tree = False
+ extra_swig_opts = []
+ extra_macros = dict()
+
+ top_builddir = os.environ.get('top_builddir')
+ if top_builddir:
+ # In-tree build.
+ in_tree = True
+- gpgme_config = [os.path.join(top_builddir, 'src/gpgme-config')
+- ] + gpgme_config_flags
+ gpgme_h = os.path.join(top_builddir, 'src/gpgme.h')
+ library_dirs = [os.path.join(top_builddir,
+ 'src/.libs')] # XXX uses libtool internals
+ extra_macros.update(
+ HAVE_CONFIG_H=1,
+ HAVE_DATA_H=1,
+ IN_TREE_BUILD=1,
+ )
+
+ if hasattr(subprocess, 'DEVNULL'):
+ devnull = subprocess.DEVNULL
+ else:
+ devnull = open(os.devnull, 'w')
+
+-try:
+- subprocess.check_call(gpgme_config + ['--version'], stdout=devnull)
+-except:
+- sys.exit('Could not find gpgme-config. ' +
+- 'Please install the libgpgme development package.')
+
+-
+-def getconfig(what, config=gpgme_config):
+- confdata = subprocess.Popen(
+- config + ['--%s' % what], stdout=subprocess.PIPE).communicate()[0]
+- return [x for x in confdata.decode('utf-8').split() if x != '']
+-
+-
+-version = version_raw = getconfig('version')[0]
++version = version_raw = "@VERSION@"
+ if '-' in version:
+ version = version.split('-')[0]
+ major, minor, patch = map(int, version.split('.'))
+
+ if not (major > 1 or (major == 1 and minor >= 7)):
+ sys.exit('Need at least GPGME version 1.7, found {}.'.format(version_raw))
+
+ if not gpgme_h:
+- gpgme_h = os.path.join(getconfig('prefix')[0], 'include', 'gpgme.h')
++ gpgme_h = os.path.join('@prefix@', 'include', 'gpgme.h')
+
+ define_macros = []
+-libs = getconfig('libs')
++libs = '@GPGME_CONFIG_LIBS@'.split(' ')
+
+ # Define extra_macros for both the SWIG and C code
+ for k, v in extra_macros.items():
+ extra_swig_opts.append('-D{0}={1}'.format(k, v))
+ define_macros.append((k, str(v)))
+
+-for item in getconfig('cflags'):
++for item in '@GPGME_CONFIG_CFLAGS@'.split(' '):
+ if item.startswith('-I'):
+ include_dirs.append(item[2:])
+ elif item.startswith('-D'):
+ defitem = item[2:].split('=', 1)
+ if len(defitem) == 2:
+ define_macros.append((defitem[0], defitem[1]))
+ else:
+@@ -178,23 +161,16 @@ class BuildExtFirstHack(build):
+
+ def _generate_gpgme_h(self, source_name, sink_name):
+ print('Using gpgme.h from {}'.format(source_name))
+ shutil.copy2(source_name, sink_name)
+
+ def _generate_errors_i(self):
+
+- try:
+- subprocess.check_call(
+- gpg_error_config + ['--version'], stdout=devnull)
+- except:
+- sys.exit('Could not find gpg-error-config. ' +
+- 'Please install the libgpg-error development package.')
+-
+ gpg_error_content = self._read_header(
+- 'gpg-error.h', getconfig('cflags', config=gpg_error_config))
++ 'gpg-error.h', '@GPG_ERROR_CFLAGS@'.split(' '))
+
+ filter_re = re.compile(r'GPG_ERR_[^ ]* =')
+ rewrite_re = re.compile(r' *(.*) = .*')
+
+ errors_i_content = ''
+ for line in gpg_error_content.splitlines():
+ if not filter_re.search(line):
+--
+2.35.1
+
diff -Nru gpgme1.0-1.18.0/debian/patches/0013-python-Fix-configure-generating-setup.py.patch gpgme1.0-1.18.0/debian/patches/0013-python-Fix-configure-generating-setup.py.patch
--- gpgme1.0-1.18.0/debian/patches/0013-python-Fix-configure-generating-setup.py.patch 1970-01-01 01:00:00.000000000 +0100
+++ gpgme1.0-1.18.0/debian/patches/0013-python-Fix-configure-generating-setup.py.patch 2022-10-26 06:54:05.000000000 +0200
@@ -0,0 +1,89 @@
+From f1802682c3c8794edaca37966405bd1f070f5e01 Mon Sep 17 00:00:00 2001
+From: NIIBE Yutaka <[email protected]>
+Date: Wed, 26 Oct 2022 11:02:36 +0900
+Subject: [PATCH] python: Fix configure generating setup.py.
+
+* lang/python/setup.py.in: Handle the case, when substitutions
+may be empty.
+
+--
+
+Reported-by: Andreas Metzler
+Fixes-commit: ae9258fbf3b9d434495ef11fc184a91fe7c4ca57
+GnuPG-bug-id: 6204
+Signed-off-by: NIIBE Yutaka <[email protected]>
+---
+ lang/python/setup.py.in | 27 ++++++++++++++++-----------
+ 1 file changed, 16 insertions(+), 11 deletions(-)
+
+diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in
+index 6741d3c8..6f36861d 100755
+--- a/lang/python/setup.py.in
++++ b/lang/python/setup.py.in
+@@ -64,30 +64,34 @@ major, minor, patch = map(int, version.split('.'))
+ if not (major > 1 or (major == 1 and minor >= 7)):
+ sys.exit('Need at least GPGME version 1.7, found {}.'.format(version_raw))
+
+ if not gpgme_h:
+ gpgme_h = os.path.join('@prefix@', 'include', 'gpgme.h')
+
+ define_macros = []
+-libs = '@GPGME_CONFIG_LIBS@'.split(' ')
++if '@GPGME_CONFIG_LIBS@':
++ libs = '@GPGME_CONFIG_LIBS@'.split(' ')
++else:
++ libs = []
+
+ # Define extra_macros for both the SWIG and C code
+ for k, v in extra_macros.items():
+ extra_swig_opts.append('-D{0}={1}'.format(k, v))
+ define_macros.append((k, str(v)))
+
+-for item in '@GPGME_CONFIG_CFLAGS@'.split(' '):
+- if item.startswith('-I'):
+- include_dirs.append(item[2:])
+- elif item.startswith('-D'):
+- defitem = item[2:].split('=', 1)
+- if len(defitem) == 2:
+- define_macros.append((defitem[0], defitem[1]))
+- else:
+- define_macros.append((defitem[0], None))
++if '@GPGME_CONFIG_CFLAGS@':
++ for item in '@GPGME_CONFIG_CFLAGS@'.split(' '):
++ if item.startswith('-I'):
++ include_dirs.append(item[2:])
++ elif item.startswith('-D'):
++ defitem = item[2:].split('=', 1)
++ if len(defitem) == 2:
++ define_macros.append((defitem[0], defitem[1]))
++ else:
++ define_macros.append((defitem[0], None))
+
+ # Adjust include and library locations in case of win32
+ uname_s = os.popen('uname -s').read()
+ if uname_s.startswith('MINGW32'):
+ mnts = [
+ x.split()[0:3:2] for x in os.popen('mount').read().split('\n') if x
+ ]
+@@ -161,16 +165,17 @@ class BuildExtFirstHack(build):
+
+ def _generate_gpgme_h(self, source_name, sink_name):
+ print('Using gpgme.h from {}'.format(source_name))
+ shutil.copy2(source_name, sink_name)
+
+ def _generate_errors_i(self):
+
++ ge_cflags='@GPG_ERROR_CFLAGS@'
+ gpg_error_content = self._read_header(
+- 'gpg-error.h', '@GPG_ERROR_CFLAGS@'.split(' '))
++ 'gpg-error.h', ge_cflags.split(' ') if ge_cflags else [])
+
+ filter_re = re.compile(r'GPG_ERR_[^ ]* =')
+ rewrite_re = re.compile(r' *(.*) = .*')
+
+ errors_i_content = ''
+ for line in gpg_error_content.splitlines():
+ if not filter_re.search(line):
+--
+2.35.1
+
diff -Nru gpgme1.0-1.18.0/debian/patches/series gpgme1.0-1.18.0/debian/patches/series
--- gpgme1.0-1.18.0/debian/patches/series 2022-09-29 01:56:34.000000000 +0200
+++ gpgme1.0-1.18.0/debian/patches/series 2022-10-26 06:54:15.000000000 +0200
@@ -3,3 +3,5 @@
0003-Ship-python-examples-with-python3-in-shebang-line.patch
0004-Avoid-the-hardcoded-list-of-Python-versions.patch
0007-lang-python-tests-Fix-FTBFS-caused-by-missing-PYTHON.patch
+0010-build-python-Don-t-use-gpg-error-config-gpgme-config.patch
+0013-python-Fix-configure-generating-setup.py.patch
[The following lists of changes regard files as different if they have
different names, permissions or owners.]
Files in second .changes but not in first
-----------------------------------------
-rw-r--r-- root/root
/usr/lib/debug/.build-id/b8/d39380db3200a606c9cd1062d4b2f56aed6b38.debug
-rw-r--r-- root/root
/usr/lib/debug/.build-id/c3/b182394e47f694624a513bca1bc046449cc320.debug
Files in first .changes but not in second
-----------------------------------------
-rw-r--r-- root/root
/usr/lib/debug/.build-id/44/c3d8fda34edf0aa20d122ec9513406ece685f0.debug
-rw-r--r-- root/root
/usr/lib/debug/.build-id/7c/f75c6efec78f4ba2c42a6308b8ac13772299ad.debug
-rw-r--r-- root/root /usr/share/lintian/overrides/libgpgme-dev
-rw-r--r-- root/root /usr/share/man/man1/gpgme-config.1.gz
-rwxr-xr-x root/root /usr/bin/gpgme-config
Control files of package libgpgme-dev: lines which differ (wdiff format)
------------------------------------------------------------------------
Depends: libassuan-dev, libc6-dev, libgpg-error-dev, libgpgme11 (=
[-1.18.0-1),-] {+1.18.0-1.1),+} libassuan0 (>= 2.4.2), libc6 (>= 2.34),
libgpg-error0 (>= 1.36)
Installed-Size: [-1263-] {+1253+}
Provides: libgpgme11-dev (= [-1.18.0-1)-] {+1.18.0-1.1)+}
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libgpgme-dev-dbgsym: lines which differ (wdiff format)
-------------------------------------------------------------------------------
Depends: libgpgme-dev (= [-1.18.0-1)-] {+1.18.0-1.1)+}
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libgpgme11: lines which differ (wdiff format)
----------------------------------------------------------------------
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libgpgme11-dbgsym: lines which differ (wdiff format)
-----------------------------------------------------------------------------
Build-Ids: [-44c3d8fda34edf0aa20d122ec9513406ece685f0-]
{+c3b182394e47f694624a513bca1bc046449cc320+}
Depends: libgpgme11 (= [-1.18.0-1)-] {+1.18.0-1.1)+}
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libgpgmepp-dev: lines which differ (wdiff format)
--------------------------------------------------------------------------
Depends: libgpgmepp6 (= [-1.18.0-1),-] {+1.18.0-1.1),+} libqgpgme15 (=
[-1.18.0-1),-] {+1.18.0-1.1),+} qtbase5-dev
Recommends: libgpgmepp-doc (= [-1.18.0-1)-] {+1.18.0-1.1)+}
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libgpgmepp-doc: lines which differ (wdiff format)
--------------------------------------------------------------------------
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libgpgmepp6: lines which differ (wdiff format)
-----------------------------------------------------------------------
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libgpgmepp6-dbgsym: lines which differ (wdiff format)
------------------------------------------------------------------------------
Depends: libgpgmepp6 (= [-1.18.0-1)-] {+1.18.0-1.1)+}
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libqgpgme15: lines which differ (wdiff format)
-----------------------------------------------------------------------
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package libqgpgme15-dbgsym: lines which differ (wdiff format)
------------------------------------------------------------------------------
Depends: libqgpgme15 (= [-1.18.0-1)-] {+1.18.0-1.1)+}
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package python3-gpg: lines which differ (wdiff format)
-----------------------------------------------------------------------
Version: [-1.18.0-1-] {+1.18.0-1.1+}
Control files of package python3-gpg-dbgsym: lines which differ (wdiff format)
------------------------------------------------------------------------------
Build-Ids: [-7cf75c6efec78f4ba2c42a6308b8ac13772299ad-]
{+b8d39380db3200a606c9cd1062d4b2f56aed6b38+}
Depends: python3-gpg (= [-1.18.0-1)-] {+1.18.0-1.1)+}
Version: [-1.18.0-1-] {+1.18.0-1.1+}