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+}