[Pkg-gnupg-commit] [gpgme] 170/412: python: Get version information from the build system.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Sep 22 21:26:40 UTC 2016


This is an automated email from the git hooks/post-receive script.

dkg pushed a commit to branch master
in repository gpgme.

commit 7eef399d89d4c3877cb795ed5ba45ecb241e67be
Author: Justus Winter <justus at g10code.com>
Date:   Thu Jun 9 12:38:50 2016 +0200

    python: Get version information from the build system.
    
    * configure.ac: Generate 'setup.py' and 'version.py'.
    * lang/python/Makefile.am: Use generated setup script.
    * lang/python/pyme/version.py: Turn it into a template, and get
    version information from the build system.  Also drop some variables.
    * lang/python/setup.py: Likewise.  This way we can avoid importing the
    version module, which is frowned upon and actually caused a problem.
    
    Signed-off-by: Justus Winter <justus at g10code.com>
---
 configure.ac                          |  5 ++-
 lang/python/Makefile.am               |  5 +--
 lang/python/pyme/version.py           | 42 ------------------------
 lang/python/pyme/version.py.in        | 62 +++++++++++++++++++++++++++++++++++
 lang/python/{setup.py => setup.py.in} | 21 ++++--------
 5 files changed, 76 insertions(+), 59 deletions(-)

diff --git a/configure.ac b/configure.ac
index b84b04b..4269540 100644
--- a/configure.ac
+++ b/configure.ac
@@ -775,7 +775,10 @@ AC_CONFIG_FILES(lang/qt/tests/Makefile)
 AC_CONFIG_FILES([lang/Makefile lang/cl/Makefile lang/cl/gpgme.asd])
 AM_COND_IF([HAVE_DOXYGEN], [AC_CONFIG_FILES([lang/qt/doc/Doxyfile])])
 AC_CONFIG_FILES(lang/qt/doc/Makefile)
-AC_CONFIG_FILES([lang/python/Makefile lang/python/tests/Makefile])
+AC_CONFIG_FILES([lang/python/Makefile
+		 lang/python/setup.py
+		 lang/python/pyme/version.py
+		 lang/python/tests/Makefile])
 AC_OUTPUT
 
 echo "
diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am
index 46f45d0..2c84f2b 100644
--- a/lang/python/Makefile.am
+++ b/lang/python/Makefile.am
@@ -40,7 +40,8 @@ gpgme_wrap.c pyme/pygpgme.py: gpgme.i errors.i gpgme.h copystamp
 	  $<
 
 all-local: gpgme_wrap.c pyme/pygpgme.py copystamp
-	CFLAGS="$(CFLAGS)" $(PYTHON) $(srcdir)/setup.py build --verbose
+	CFLAGS="$(CFLAGS)" \
+	  $(PYTHON) setup.py build --verbose
 
 clean-local:
 	rm -rf -- build gpgme.h errors.i gpgme_wrap.c pyme/pygpgme.py \
@@ -50,7 +51,7 @@ clean-local:
 	fi
 
 install-exec-local:
-	$(PYTHON) $(srcdir)/setup.py install \
+	$(PYTHON) setup.py install \
 	  --prefix $(DESTDIR)$(prefix) \
 	  --record $(DESTDIR)$(pythondir)/pyme/install_files.txt \
 	  --verbose
diff --git a/lang/python/pyme/version.py b/lang/python/pyme/version.py
deleted file mode 100644
index b60f50c..0000000
--- a/lang/python/pyme/version.py
+++ /dev/null
@@ -1,42 +0,0 @@
-
-productname = 'pyme'
-versionstr = "0.9.1"
-revno = int('$Rev: 281 $'[6:-2])
-revstr = "Rev %d" % revno
-datestr = '$Date$'
-
-versionlist = versionstr.split(".")
-major = versionlist[0]
-minor = versionlist[1]
-patch = versionlist[2]
-copyright = "Copyright (C) 2015 Ben McGinnes, 2014-2015 Martin Albrecht, 2004-2008 Igor Belyi, 2002 John Goerzen"
-author = "Ben McGinnes"
-author_email = "ben at adversary.org"
-description = "Python 3 support for GPGME GnuPG cryptography library"
-bigcopyright = """%(productname)s %(versionstr)s (%(revstr)s)
-%(copyright)s <%(author_email)s>""" % locals()
-
-banner = bigcopyright + """
-This software comes with ABSOLUTELY NO WARRANTY; see the file
-COPYING for details.  This is free software, and you are welcome
-to distribute it under the conditions laid out in COPYING."""
-
-homepage = "https://gnupg.org"
-license = """Copyright (C) 2015 Ben McGinnes <ben at adversary.org>
-Copyright (C) 2014, 2015 Martin Albrecht <martinralbrecht at googlemail.com>
-Copyright (C) 2004, 2008 Igor Belyi <belyi at users.sourceforge.net>
-Copyright (C) 2002 John Goerzen <jgoerzen at complete.org>
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Lesser General Public
-License as published by the Free Software Foundation; either
-version 2.1 of the License, or (at your option) any later version.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Lesser General Public License for more details.
-
-You should have received a copy of the GNU Lesser General Public
-License along with this library; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA"""
diff --git a/lang/python/pyme/version.py.in b/lang/python/pyme/version.py.in
new file mode 100644
index 0000000..764bf69
--- /dev/null
+++ b/lang/python/pyme/version.py.in
@@ -0,0 +1,62 @@
+# Copyright (C) 2016 g10 Code GmbH
+# Copyright (C) 2015 Ben McGinnes <ben at adversary.org>
+# Copyright (C) 2004 Igor Belyi <belyi at users.sourceforge.net>
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
+
+productname = 'pyme'
+versionstr = "@VERSION@"
+
+# XXX: Do we want to embed such information?
+#revno = int('$Rev: 281 $'[6:-2])
+#revstr = "Rev %d" % revno
+
+versionlist = versionstr.split(".")
+major = versionlist[0]
+minor = versionlist[1]
+patch = versionlist[2]
+
+copyright = """\
+Copyright (C) 2016 g10 Code GmbH
+Copyright (C) 2015 Ben McGinnes
+Copyright (C) 2014-2015 Martin Albrecht
+Copyright (C) 2004-2008 Igor Belyi
+Copyright (C) 2002 John Goerzen"""
+
+author = "The GnuPG hackers"
+author_email = "gnupg-devel at gnupg.org"
+
+description = "Python 3 support for GPGME GnuPG cryptography library"
+homepage = "https://gnupg.org"
+
+license = """Copyright (C) 2016 g10 Code GmbH
+Copyright (C) 2015 Ben McGinnes <ben at adversary.org>
+Copyright (C) 2014, 2015 Martin Albrecht <martinralbrecht at googlemail.com>
+Copyright (C) 2004, 2008 Igor Belyi <belyi at users.sourceforge.net>
+Copyright (C) 2002 John Goerzen <jgoerzen at complete.org>
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA"""
diff --git a/lang/python/setup.py b/lang/python/setup.py.in
similarity index 87%
rename from lang/python/setup.py
rename to lang/python/setup.py.in
index 0d90403..9e6e008 100755
--- a/lang/python/setup.py
+++ b/lang/python/setup.py.in
@@ -1,8 +1,6 @@
 #!/usr/bin/env python3
 
-
-# Module: installer
-# COPYRIGHT #
+# Copyright (C) 2016 g10 Code GmbH
 # Copyright (C) 2004 Igor Belyi <belyi at users.sourceforge.net>
 # Copyright (C) 2002 John Goerzen <jgoerzen at complete.org>
 #
@@ -19,15 +17,11 @@
 #    You should have received a copy of the GNU Lesser General Public
 #    License along with this library; if not, write to the Free Software
 #    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
-# END OF COPYRIGHT #
 
 from distutils.core import setup, Extension
 import os, os.path, sys
 import subprocess
 
-sys.path.insert(0, os.path.dirname(__file__))
-import pyme.version
-
 def getconfig(what):
     confdata = subprocess.Popen(["../../src/gpgme-config", "--%s" % what],
                                 stdout=subprocess.PIPE).communicate()[0]
@@ -80,14 +74,13 @@ swige = Extension("pyme._pygpgme", ["gpgme_wrap.c", "helpers.c"],
                   extra_link_args = libs)
 
 setup(name = "pyme",
-      version=pyme.version.versionstr,
-      description=pyme.version.description,
-      author=pyme.version.author,
-      author_email=pyme.version.author_email,
-      url=pyme.version.homepage,
+      version="@VERSION@",
+      description='Python bindings for GPGME GnuPG cryptography library',
+      author='The GnuPG hackers',
+      author_email='gnupg-devel at gnupg.org',
+      url='https://www.gnupg.org',
       ext_modules=[swige],
       packages = ['pyme', 'pyme.constants', 'pyme.constants.data',
                   'pyme.constants.keylist', 'pyme.constants.sig'],
-      license=pyme.version.copyright + \
-                ", Licensed under the GPL version 2 and the LGPL version 2.1"
+      license="LGPL2.1+ (the library), GPL2+ (tests and examples)"
 )

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gpgme.git



More information about the Pkg-gnupg-commit mailing list