From 9c8608f702ec0f44ae55cd7f33bd8df0a2d48508 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Wed, 2 May 2012 10:58:52 +0200 Subject: Release 1.3.2. * configure.ac: Bump LT version to C19/A8/R1. * configure.ac (GITLOG_TO_CHANGELOG): Define. * Makefile.am (gen-ChangeLog): Use it. --- Makefile.am | 2 +- NEWS | 2 +- README | 24 ++++++-------------- README.GIT | 49 +++++++++++++++++++++++++++++++++++++++++ README.SVN | 51 ------------------------------------------- build-aux/gitlog-to-changelog | 36 +++++++++++++++++++++++++++--- configure.ac | 27 ++++++++++++----------- src/gpgme.h.in | 2 +- 8 files changed, 106 insertions(+), 87 deletions(-) create mode 100644 README.GIT delete mode 100644 README.SVN diff --git a/Makefile.am b/Makefile.am index 1ab445d2..18a8e38c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -50,7 +50,7 @@ gen_start_date = 2011-12-01T00:00:00 gen-ChangeLog: if test -d $(top_srcdir)/.git; then \ (cd $(top_srcdir) && \ - ./build-aux/gitlog-to-changelog \ + $(GITLOG_TO_CHANGELOG) --append-dot --tear-off \ --amend=build-aux/git-log-fix \ --since=$(gen_start_date) ) > $(distdir)/cl-t; \ cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\ diff --git a/NEWS b/NEWS index b7106e72..a7eeea8d 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,4 @@ -Noteworthy changes in version 1.3.2 (unreleased) +Noteworthy changes in version 1.3.2 (2012-05-02) ------------------------------------------------ * Remove support for libgpgme-pth. As far as we know, this was never used, diff --git a/README b/README index f4d806d7..7c977917 100644 --- a/README +++ b/README @@ -1,7 +1,7 @@ GPGME - GnuPG Made Easy --------------------------- - Copyright 2004, 2006, 2010 g10 Code GmbH + Copyright 2004, 2006, 2010, 2012 g10 Code GmbH This file is free software; as a special exception the author gives unlimited permission to copy and/or distribute it, with or without @@ -40,32 +40,23 @@ See the file INSTALL for generic installation instructions. Check that you have unmodified sources. See below on how to do this. Don't skip it - this is an important step! -To build GPGME, you need to install libgpg-error. You need at least -libgpg-error 1.8. +To build GPGME, you need to install libgpg-error (>= 1.8) and +Libassuan (>= 2.0.2). For support of the OpenPGP protocol (default), you should use the -latest version of GnuPG 1.2 or 1.4, available at: +latest version of GnuPG (>= 1.4) , available at: ftp://ftp.gnupg.org/gcrypt/gnupg/ - -You need at least GnuPG 1.2.2. +For support of the CMS (Cryptographic Message Syntax) protocol, you +need a GnuPG version >= 2.0. If configure can't find the `gpg' binary in your path, you can specify the location with the --with-gpg=/path/to/gpg argument to configure. -For support of the CMS (Cryptographic Message Syntax) protocol, you -need the latest CVS version of GnuPG 1.9, which is available in the -GnuPG repository: -http://www.gnupg.org/download/cvs_access.html -Use the tag `GNUPG-1-9-BRANCH'. There are also snapshots available at: -ftp://ftp.gnupg.org/gcrypt/alpha/gnupg/ - -You need at least GpgSM 1.9.6. - If configure can't find the `gpgsm' binary in your path, you can specify the location with the --with-gpgsm=/path/to/gpgsm argument to configure. -For building the CVS version of GPGME please see the file README.CVS +For building the GIT version of GPGME please see the file README.GIT for more information. @@ -120,4 +111,3 @@ in the tests/gpg/ directory may also prove useful. Please subscribe to the gnupg-devel@gnupg.org mailing list if you want to do serious work. - diff --git a/README.GIT b/README.GIT new file mode 100644 index 00000000..ee2c6383 --- /dev/null +++ b/README.GIT @@ -0,0 +1,49 @@ +If you are building from GIT, run the script + +./autogen.sh + +first, to make sure that you have all the necessary maintainer tools +are installed and to build the actual configuration files. If you +have just checked out from GIT, you should add the option "--force" to +autogen.sh so that meta data is noticed by autom4te.cache. Then run + +./configure --enable-maintainer-mode + +followed by the usual make. + +If autogen.sh complains about insufficient versions of the required +tools, or the tools are not installed, you may use environment +variables to override the default tool names: + + AUTOMAKE_SUFFIX is used as a suffix for all tools from the automake + package. For example + AUTOMAKE_SUFFIX="-1.7" ./autogen.sh + uses "automake-1.7" and "aclocal-1.7. + AUTOMAKE_PREFIX is used as a prefix for all tools from the automake + page and may be combined with AUTOMAKE_SUFFIX. e.g.: + AUTOMAKE_PREFIX=/usr/foo/bin ./autogen.sh + uses "automake" and "aclocal" in the /usr/foo/bin + directory. + AUTOCONF_SUFFIX is used as a suffix for all tools from the automake + package + AUTOCONF_PREFIX is used as a prefix for all tools from the automake + package + GETTEXT_SUFFIX is used as a suffix for all tools from the gettext + package + GETTEXT_PREFIX is used as a prefix for all tools from the gettext + package + +It is also possible to use the variable name AUTOMAKE, AUTOCONF, +ACLOCAL, AUTOHEADER, GETTEXT and MSGMERGE to directly specify the name +of the programs to run. It is however better to use the suffix and +prefix forms as described above because that does not require +knowledge about the actual tools used by autogen.sh. + + +Please don't use autopoint, libtoolize or autoreconf unless you are +the current maintainer and want to update the standard configuration +files. All those files should be in GIT and only updated manually +if the maintainer decides that newer versions are required. The +maintainer should also make sure that the required version of automake +et al. are properly indicated at the top of configure.ac and take care +to copy the files and not merely use symlinks. diff --git a/README.SVN b/README.SVN deleted file mode 100644 index c6422829..00000000 --- a/README.SVN +++ /dev/null @@ -1,51 +0,0 @@ -If you are building from Subversion, run the script - -./autogen.sh - -first, to make sure that you have all the necessary maintainer tools -are installed and to build the actual configuration files. If you -have just updated from SVN, you should add the option "--force" to -autogen.sh so that meta data from SVN is noticed. Then run - -./configure --enable-maintainer-mode - -followed by the usual make. - -If autogen.sh complains about insufficient versions of the required -tools, or the tools are not installed, you may use environment -variables to override the default tool names: - - AUTOMAKE_SUFFIX is used as a suffix for all tools from the automake - package. For example - AUTOMAKE_SUFFIX="-1.7" ./autogen.sh - uses "automake-1.7" and "aclocal-1.7. - AUTOMAKE_PREFIX is used as a prefix for all tools from the automake - page and may be combined with AUTOMAKE_SUFFIX. e.g.: - AUTOMAKE_PREFIX=/usr/foo/bin ./autogen.sh - uses "automake" and "aclocal" in the /usr/foo/bin - directory. - AUTOCONF_SUFFIX is used as a suffix for all tools from the automake - package - AUTOCONF_PREFIX is used as a prefix for all tools from the automake - package - GETTEXT_SUFFIX is used as a suffix for all tools from the gettext - package - GETTEXT_PREFIX is used as a prefix for all tools from the gettext - package - -It is also possible to use the variable name AUTOMAKE, AUTOCONF, -ACLOCAL, AUTOHEADER, GETTEXT and MSGMERGE to directly specify the name -of the programs to run. It is however better to use the suffix and -prefix forms as described above because that does not require -knowledge about the actual tools used by autgen.sh. - - -Please don't use autopoint, libtoolize or autoreconf unless you are -the current maintainer and want to update the standard configuration -files. All those files should be in the SVN and only updated manually -if the maintainer decides that newer versions are required. The -maintainer should also make sure that the required version of automake -et al. are properly indicated at the top of configure.ac and take care -to copy the files and not merely use symlinks. - - diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog index 40a80355..5cf071f6 100755 --- a/build-aux/gitlog-to-changelog +++ b/build-aux/gitlog-to-changelog @@ -3,13 +3,13 @@ eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}' if 0; # Convert git log output to ChangeLog format. -my $VERSION = '2011-11-02 07:53'; # UTC +my $VERSION = '2012-01-24 15:58 (wk)'; # UTC # The definition above must lie within the first 8 lines in order # for the Emacs time-stamp write hook (at end) to update it. # If you change this file with Emacs, please let the write hook # do its job. Otherwise, update this string manually. -# Copyright (C) 2008-2011 Free Software Foundation, Inc. +# Copyright (C) 2008-2012 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -25,6 +25,7 @@ my $VERSION = '2011-11-02 07:53'; # UTC # along with this program. If not, see . # Written by Jim Meyering +# Custom bugs bred by Werner Koch use strict; use warnings; @@ -64,6 +65,8 @@ OPTIONS: makes a change to SHA1's commit log text or metadata. --append-dot append a dot to the first line of each commit message if there is no other punctuation or blank at the end. + --tear-off tear off all commit log lines after a '--' line and + skip log entry with the first body line being '--'. --since=DATE convert only the logs since DATE; the default is to convert all log entries. --format=FMT set format string for commit subject and body; @@ -175,6 +178,7 @@ sub parse_amend_file($) my $format_string = '%s%n%b%n'; my $amend_file; my $append_dot = 0; + my $tear_off = 0; GetOptions ( help => sub { usage 0 }, @@ -183,6 +187,7 @@ sub parse_amend_file($) 'format=s' => \$format_string, 'amend=s' => \$amend_file, 'append-dot' => \$append_dot, + 'tear-off' => \$tear_off, ) or usage 1; @@ -201,6 +206,7 @@ sub parse_amend_file($) my $prev_date_line = ''; my @prev_coauthors = (); + while (1) { defined (my $in = ) @@ -214,6 +220,17 @@ sub parse_amend_file($) $n_read == $log_nbytes or die "$ME:$.: unexpected EOF\n"; + # Skip log entries with the default merge commit message. + $log =~ /^.*\n\nMerge branch '.*\n\s*/ + and goto SKIPCOMMIT; + + # Skip log entries if the body starts with a tear off marker. + if ($tear_off) + { + $log =~ /^.*\n\n.*\n--\s*/ + and goto SKIPCOMMIT; + } + # Extract leading hash. my ($sha, $rest) = split ':', $log, 2; defined $sha @@ -281,6 +298,18 @@ sub parse_amend_file($) @line = grep !/^Signed-off-by: .*>$/, @line; @line = grep !/^Co-authored-by: /, @line; + # Remove everything after a line with 2 dashes at the beginning. + if ($tear_off) + { + my @tmpline; + foreach (@line) + { + last if /^--\s*$/; + push @tmpline,$_; + } + @line = @tmpline; + } + # Remove leading and trailing blank lines. if (@line) { @@ -313,6 +342,7 @@ sub parse_amend_file($) print "\n", join ("\n", @line), "\n"; } + SKIPCOMMIT: defined ($in = ) or last; $in ne "\n" @@ -339,7 +369,7 @@ sub parse_amend_file($) # indent-tabs-mode: nil # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "my $VERSION = '" -# time-stamp-format: "%:y-%02m-%02d %02H:%02M" +# time-stamp-format: "%:y-%02m-%02d %02H:%02M (wk)" # time-stamp-time-zone: "UTC" # time-stamp-end: "'; # UTC" # End: diff --git a/configure.ac b/configure.ac index 6e0967c2..bc57bbd4 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ # configure.ac for GPGME # Copyright (C) 2000 Werner Koch (dd9jn) # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, -# 2009, 2010, 2011 g10 Code GmbH +# 2009, 2010, 2011, 2012 g10 Code GmbH # # This file is part of GPGME. # @@ -15,9 +15,8 @@ # 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 program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . # (Process this file with autoconf to produce a configure script.) AC_PREREQ(2.59) @@ -29,19 +28,19 @@ min_automake_version="1.11" # Never do a binary build with the same version number # in another year; this would mess up the build number. # -# The SVN version is usually the next intended release version with -# the string "-svnNNN" appended. The reason for this is that tests for a -# specific feature can already be done under the assumption that the -# SVN version is the most recent one in a branch. To disable the SVN -# version for the real release, set the my_issvn macro to no. -m4_define(my_version, [1.3.1]) -m4_define(my_issvn, [yes]) +# The GIT version is usually the next intended release version with +# the string "-gitNNNNNN" appended. The reason for this is that tests +# for a specific feature can already be done under the assumption that +# the GIT version is the most recent one in a branch. To disable the +# GIT version for the real release, set the my_isgit macro to no. +m4_define(my_version, [1.3.2]) +m4_define(my_isgit, [no]) m4_define([svn_revision], m4_esyscmd([printf "%d" $( (svn info 2>/dev/null \ || echo 'Revision: 0')|sed -n '/^Revision:/ {s/[^0-9]//gp;q;}')])) m4_define([git_revision], m4_esyscmd([git branch -v 2>/dev/null \ | awk '/^\* / {printf "%s",$3}'])) -m4_define([my_full_version], [my_version[]m4_if(my_issvn,[yes], +m4_define([my_full_version], [my_version[]m4_if(my_isgit,[yes], [m4_if(git_revision,[],[-svn[]svn_revision],[-git[]git_revision])])]) AC_INIT([gpgme],[my_full_version],[http://bugs.gnupg.org]) @@ -56,7 +55,7 @@ LIBGPGME_LT_CURRENT=19 # Subtract 2 from this value if you want to make the LFS transition an # ABI break. [Note to self: Remove this comment with the next regular break.] LIBGPGME_LT_AGE=8 -LIBGPGME_LT_REVISION=0 +LIBGPGME_LT_REVISION=1 # If the API is changed in an incompatible way: increment the next counter. GPGME_CONFIG_API_VERSION=1 @@ -92,6 +91,8 @@ AH_VERBATIM([_REENTRANT], AC_PROG_CC AC_PROG_CXX +AC_CHECK_PROGS(GITLOG_TO_CHANGELOG, gitlog-to-changelog, + [build-aux/gitlog-to-changelog]) AC_SUBST(LIBGPGME_LT_CURRENT) AC_SUBST(LIBGPGME_LT_AGE) diff --git a/src/gpgme.h.in b/src/gpgme.h.in index dad8d948..7263d983 100644 --- a/src/gpgme.h.in +++ b/src/gpgme.h.in @@ -1,7 +1,7 @@ /* gpgme.h - Public interface to GnuPG Made Easy. -*- c -*- Copyright (C) 2000 Werner Koch (dd9jn) Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2009 - 2010 g10 Code GmbH + 2010, 2011, 2012 g10 Code GmbH This file is part of GPGME. -- cgit v1.2.3