Control: tags -1 patch
Control: tags -1 fixed-upstream

On 2022-10-25 Andreas Metzler <ametz...@bebt.de> wrote:
> Control: forwarded -1 https://dev.gnupg.org/T6204

> On 2022-10-23 Lucas Nussbaum <lu...@debian.org> 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 <ametz...@debian.org>  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
-\&<\&js...@debian.org\&> and \fBDaniel Leidert\fR <\&daniel.leid...@wgdd.de\&>
-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 <gni...@fsij.org>
+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 <gni...@fsij.org>
+---
+ 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 <gni...@fsij.org>
+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 <gni...@fsij.org>
+---
+ 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+}

Reply via email to