[git] GPG-ERROR - branch, master, updated. libgpg-error-1.10-29-ga7eb1be

by Werner Koch cvs at cvs.gnupg.org
Thu Dec 1 16:44:19 CET 2011


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Error codes used by GnuPG et al.".

The branch, master has been updated
       via  a7eb1bec2b76318bd17d4413d7f44197a241e3bc (commit)
       via  5a0d2a5abc0a707c20449b6afd37daa9fd373a18 (commit)
       via  9d75d671d66386ad862db0466c4dd67a246dfe72 (commit)
      from  aaa3f53457369125bcfa6eeaf283df77df87d4f9 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a7eb1bec2b76318bd17d4413d7f44197a241e3bc
Author: Werner Koch <wk at gnupg.org>
Date:   Thu Dec 1 15:52:38 2011 +0100

    Remove non-source file from the repo.
    
    * po/remove-potcdate.sed: Remove.

diff --git a/po/remove-potcdate.sed b/po/remove-potcdate.sed
deleted file mode 100644
index edb38d7..0000000
--- a/po/remove-potcdate.sed
+++ /dev/null
@@ -1,11 +0,0 @@
-/^"POT-Creation-Date: .*"$/{
-x
-s/P/P/
-ta
-g
-d
-bb
-:a
-x
-:b
-}

commit 5a0d2a5abc0a707c20449b6afd37daa9fd373a18
Author: Werner Koch <wk at gnupg.org>
Date:   Thu Dec 1 15:48:55 2011 +0100

    Fix for newer autoconf version.
    
    * Makefile.am (EXTRA_DIST): Fix filename.
    * configure.ac (my_full_version): New.
    (AC_INIT):  Use new macro.  Change bug address to the bug tracker URL.

diff --git a/.gitignore b/.gitignore
index 6b8851e..e7fc0df 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,9 @@
+*.lo
+*.o
+.deps/
+.libs/
+po/*.gmo
+po/messages.mo
 Makefile.in
 aclocal.m4
 autom4te.cache/
@@ -5,3 +11,36 @@ configure
 config.h.in
 src/err-codes.h
 src/err-sources.h
+/lang/Makefile
+/lang/cl/Makefile
+/lang/cl/gpg-error-codes.lisp
+/lang/cl/gpg-error.asd
+/libtool
+/m4/Makefile
+/po/Makefile
+/po/POTFILES
+/po/stamp-po
+/config.log
+/config.status
+/config.h
+/Makefile
+/src/Makefile
+/src/code-from-errno.h
+/src/code-to-errno.h
+/src/err-codes-sym.h
+/src/err-sources-sym.h
+/src/errnos-sym.h
+/src/extra-h.in
+/src/gpg-error
+/src/gpg-error-config
+/src/gpg-error.def
+/src/gpg-error.h
+/src/libgpg-error.la
+/src/mkerrcodes
+/src/mkerrcodes.h
+/src/mkw32errmap.map.c
+/src/versioninfo.rc
+/stamp-h1
+/tests/Makefile
+/tests/t-strerror
+/tests/t-syserror
diff --git a/Makefile.am b/Makefile.am
index e92925b..7c92ff6 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -22,7 +22,7 @@ AUTOMAKE_OPTIONS = dist-bzip2
 
 EXTRA_DIST = autogen.sh config.rpath libgpg-error.spec.in 		\
              COPYING COPYING.LIB potomo doc/HACKING ChangeLog-2011   	\
-	     po/ChangeLog-2011m4/ChangeLog-2011 contrib/ChangeLog-2011 	\
+	     po/ChangeLog-2011 m4/ChangeLog-2011 contrib/ChangeLog-2011 \
              build-aux/gitlog-to-changelog build-aux/git-log-footer	\
              build-aux/git-log-fix
 
diff --git a/configure.ac b/configure.ac
index a2ad1dd..ee42f9e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -31,10 +31,9 @@ m4_define([svn_revision], m4_esyscmd([printf "%d" $(svn info 2>/dev/null \
           | sed -n '/^Revision:/ s/[^0-9]//gp'|head -1)]))
 m4_define([git_revision], m4_esyscmd([git branch -v 2>/dev/null \
           | awk '/^\* / {printf "%s",$3}']))
-AC_INIT([libgpg-error],
-        [my_version[]m4_if(my_issvn,[yes],
-        [m4_if(git_revision,[],[-svn[]svn_revision],[-git[]git_revision])])],
-        [bug-gnupg at gnupg.org])
+m4_define([my_full_version], [my_version[]m4_if(my_issvn,[yes],
+          [m4_if(git_revision,[],[-svn[]svn_revision],[-git[]git_revision])])])
+AC_INIT([libgpg-error],[my_full_version], [http://bugs.gnupg.org])
 # LT Version numbers, remember to change them just *before* a release.
 #   (Code changed:			REVISION++)
 #   (Interfaces added/removed/changed:	CURRENT++, REVISION=0)
@@ -150,7 +149,6 @@ AC_SUBST(GPG_ERROR_CONFIG_LIBS)
 AC_SUBST(GPG_ERROR_CONFIG_CFLAGS)
 AC_SUBST(GPG_ERROR_CONFIG_ISUBDIRAFTER)
 AC_SUBST(GPG_ERROR_CONFIG_HOST)
-AC_CONFIG_FILES([src/gpg-error-config], [chmod +x src/gpg-error-config])
 
 
 # Special defines for certain platforms
@@ -193,6 +191,7 @@ AC_CONFIG_FILES([po/Makefile.in m4/Makefile])
 AC_CONFIG_FILES([src/Makefile tests/Makefile])
 AC_CONFIG_FILES([lang/Makefile lang/cl/Makefile lang/cl/gpg-error.asd])
 AC_CONFIG_FILES([src/versioninfo.rc])
+AC_CONFIG_FILES([src/gpg-error-config], [chmod +x src/gpg-error-config])
 
 AC_OUTPUT
 

commit 9d75d671d66386ad862db0466c4dd67a246dfe72
Author: Werner Koch <wk at gnupg.org>
Date:   Thu Dec 1 14:57:15 2011 +0100

    Generate the ChangeLog from commit logs.
    
    * build-aux/gitlog-to-changelog: New script.  Taken from gnulib.
    * build-aux/git-log-fix: New file.
    * build-aux/git-log-footer: New file.
    * doc/HACKING: New file.
    * ChangeLog: New file.
    * Makefile.am (EXTRA_DIST): Add new files.
    (gen-ChangeLog): New.
    (dist-hook): Run gen-ChangeLog.
    
    Rename all ChangeLog files to ChangeLog-2011.

diff --git a/ChangeLog b/ChangeLog
index b838b86..3994986 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,1204 +1,16 @@
-2011-11-28  Jim Meyering  <meyering at redhat.com>
+No more ChangeLog files
+========================
 
-	accept --with-libgpg-error-prefix as well as --with-gpg-error-prefix
-	* src/gpg-error.m4 (AM_PATH_GPG_ERROR): Also accept
-	--with-libgpg-error-prefix=PFX, for consistency with our three
-	library sibling packages.
+Do not modify any of the ChangeLog files in Libgpg-error.  Starting on
+December 1st, 2011 we put change information only in the GIT commit
+log, and generate a top-level ChangeLog file from logs at "make dist"
+time.  As such, there are strict requirements on the form of the
+commit log messages.  See doc/HACKING for details.  The old ChangeLog
+files have all be renamed to ChangeLog-2011.
 
-2011-08-23  Werner Koch  <wk at g10code.com>
 
-	* src/err-codes.h.in: Add GPG_ERR_DUP_KEY and GPG_ERR_AMBIGUOUS.
 
-2011-04-06  Werner Koch  <wk at g10code.com>
-
-	* autogen.sh: Support option --build-w64.
-	* configure.ac (HAVE_W64_SYSTEM): New.
-
-	* src/gpg-error.m4: Test whether gpg-error-config exists.
-
-2011-02-23  Werner Koch  <wk at g10code.com>
-
-	* autogen.sh: Check git setup.
-
-	* src/gpg-error-config.in: Add option --host.
-	* configure.ac (GPG_ERROR_CONFIG_HOST): New.
-	* src/gpg-error.m4: Use AC_PATH_TOOL to look for
-	gpg-error-config.  Print a warning if host does not match.
-
-2011-02-01  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_INV_CURVE and GPG_ERR_UNKNOWN_CURVE.
-
-2011-01-06  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_NO_KEYSERVER.
-
-2010-12-23  Werner Koch  <wk at g10code.com>
-
-	* configure.ac: Support git_revision.
-
-2010-11-01  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/w32-gettext.c (CreateFileA): Rename to ...
-	(MyCreateFileA): ... this, but provide macro CreateFileA.
-
-2010-10-31  Werner Koch  <wk at g10code.com>
-
-	* src/init.c (abort): Use TerminateProcess; exit would call atexit
-	functions.
-
-2010-10-29  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/w32-gettext.c: Guard include of <sys/types.h>.  Do not
-	include <sys/stat.h>.
-	(CreateFileA) [HAVE_W32CE_SYSTEM]: New wrapper function.
-	(load_domain): Use native Windows API.
-
-	* src/init.c (TLS_OUT_OF_INDEXES) [HAVE_W32CE_SYSTEM,
-	!TLS_OUT_OF_INDEXES]: Define it.
-	(abort) [!__MINGW32CE__]: Define it.
-
-2010-10-28  Werner Koch  <wk at g10code.com>
-
-	* src/mkstrtable.awk: s/inline/GPG_ERR_INLINE/
-	* src/w32-gettext.c: Include gpg-error.h and replace all
-	__inline__ by GPG_ERR_INLINE.
-	(module_init):  Use _GPG_ERR_CONSTRUCTOR.
-	(_gpg_w32__init_gettext_module): Build also if we don't have
-	constructors
-	* src/gpg-error.h.in (GPG_ERR_INLINE) [_MSC_VER]: Define as __inline.
-
-2010-10-26  Werner Koch  <wk at g10code.com>
-
-	Release 1.10.
-
-	* configure.ac: Set LT version to C8/A8/R0.
-	* config.guess: Update to version 2010-09-24.
-	* config.sub: Update to version 2010-09-11.
-
-2010-10-20  Werner Koch  <wk at g10code.com>
-
-	* potomo: New.  Copied from GnuPG.
-	* Makefile.am (install-data-hook) [W32]: New.
-
-	* src/init.c (get_locale_dir): Strip the "bin" part.
-	* src/gpg-error.c (get_locale_dir): Ditto.
-
-2010-09-30  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_FULLY_CANCELED.
-
-2010-09-16  Werner Koch  <wk at g10code.com>
-
-	* src/w32-gettext.c (module_init): Do not set a constructur if not
-	build as DLL.
-	(_gpg_w32__init_gettext_module): New.
-
-2010-09-16  gettextize  <bug-gnu-gettext at gnu.org>
-
-	* configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.17.
-
-2010-09-16  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_MISSING_ISSUER_CERT.
-
-	* src/Makefile.am (err-sources.h, err-codes.h): Built them in the
-	source directory.
-
-2010-09-02  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_NOT_INITIALIZED.
-
-2010-08-19  Werner Koch  <wk at g10code.com>
-
-	* configure.ac (AH_BOTTOM): Define GPG_ERR_ENABLE_ERRNO_MACROS.
-	* src/w32ce-add.h (strerror) [!GPG_ERR_ENABLE_ERRNO_MACROS]:  Do
-	not define.
-
-2010-07-21  Werner Koch  <wk at g10code.com>
-
-	Release 1.9.
-
-	* configure.ac: Set LT version to C7/A7/R0.
-
-2010-07-20  Werner Koch  <wk at g10code.com>
-
-	* src/init.c (DllMain) [!DLL_EXPORT]: Do not build.
-	(gpg_err_init) [W32][!DLL_EXPORT]: Init TLS.
-	(gpg_err_deinit): New.
-	* src/gpg-error.def.in: Add gpg_err_deinit.
-	* src/gpg-error.h.in: Add gpg_err_deinit.
-
-2010-07-05  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in (GPG_ERR_TOO_MANY, GPG_ERR_LIMIT_REACHED): New.
-
-2010-06-18  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in (GPG_ERR_MISSING_KEY): New.
-
-2010-05-06  Werner Koch  <wk at g10code.com>
-
-	Release 1.8.
-
-	* configure.ac: Set LT version to C6/A6/R0.
-
-2010-04-14  Werner Koch  <wk at g10code.com>
-
-	* src/init.c (_gpg_w32ce_get_errno): Add native error mapping.
-	* src/Makefile.am (mkw32errmap.map.c): New.
-	* src/mkw32errmap.c (struct table_s): Add field W32CODE2.
-	(table): Init this field.
-	(main): Add option --map.
-
-2010-03-15  Werner Koch  <wk at g10code.com>
-
-	* src/mkheader.awk: Add emacs local-var line.
-
-	* src/w32-add.h (gettext_localename): Fix type in name.
-
-2010-03-09  Werner Koch  <wk at g10code.com>
-
-	* src/w32-add.h [!GPG_ERR_ENABLE_GETTEXT_MACROS]: Do not provide
-	gettext macros.
-
-2010-03-08  Werner Koch  <wk at g10code.com>
-
-	* src/w32-add.h (_GPG_ERR_ATTR_FORMAT_ARG): New.
-	(_gpg_w32_gettext, _gpg_w32_dgettext, _gpg_w32_dngettext): Use it.
-
-2010-03-01  Werner Koch  <wk at g10code.com>
-
-	* src/mkw32errmap.c: Map ESPIPE.
-
-2010-02-17  Werner Koch  <wk at g10code.com>
-
-	* src/Makefile.am: Revert last change.
-	(gpg_extra_headers): New.
-	(nobase_include_HEADERS): Rename to include_HEADERS and remove
-	extra_headers.
-	(mkerrcodes.h): Depend on gpg_extra_headers.
-	(install-data-local): New.
-	(gpg-extra/errno.h): Create gpg-extra dir if needed.
-
-2010-02-17  Werner Koch  <wk at g10code.com>
-
-	* src/Makefile.am (extra_headers): Remove.
-
-2010-01-21  Werner Koch  <wk at g10code.com>
-
-	* configure.ac (have_w32ce_system): Initialize to no.
-
-	* src/mkstrtable.awk (END): Do not print PREFIX before
-	LAST_MSGSTR.
-
-	* src/init.c (get_locale_dir): Rework to match what gnupg is doing.
-	(get_root_key, read_w32_registry_string): Remove.
-	* src/gpg-error.c (get_locale_dir): Replace by code from init.c
-	(get_root_key, read_w32_registry_string): Remove.
-
-2010-01-20  Werner Koch  <wk at g10code.com>
-
-	* src/init.c (gpg_err_init): Factor code out to ..
-	(real_init): .. new.
-
-	* src/Makefile.am (gpg_error_SOURCES): Remove arch_sources.
-	(export_symbols): Do not prefix gpg-error-def with srcdir.
-
-2010-01-19  Werner Koch  <wk at g10code.com>
-
-	* src/init.c (DllMain): Call _w32_gettext_init.
-	(get_tls): Use it also for standard Windows.
-	(DllMain): Ditto.
-	(struct tls_space_s): Move to ..
-	(get_tls): Make global.
-	* src/init.h: .. New.
-	* src/gettext.h: Do not include w32-gettext.h.
-	* src/w32-gettext.c: Replace by version from GnuPG.
-	(my_nl_locale_name) [W32CE]: Do not use getenv.  Use
-	GetSystemDefaultLCID.
-	(struct loaded_domain): Use uint16_t for NSTRINGS and MAPPED to
-	save space.
-	(load_domain): Check for too large MO files.
-	(utf8_to_wchar): Use gpg_err_set_errno.
-	(bindtextdomain): Rename to _gpg_w32_bindtextdomain.
-	(textdomain): Rename to _gpg_w32_textdomain.
-	(gettext): Rename to _gpg_w32_gettext.
-	(dgettext): Rename to _gpg_w32_dgettext.
-	(ngettext): Remove.
-	(gettext_localename): Rename to _gpg_w32_gettext_localename.
-	(gettext_select_utf8): Rename to _gpg_w32_gettext_use_utf8.
-	(_gpg_w32_bindtextdomain): Change to only register the directory.
-	Return the current directory if asked to.
-	(do_gettext): Add DOMAINNAME arg and take care of it.
-	* src/w32-add.h: New.
-	* src/w32-gettext.h: Remove.
-	* src/Makefile.am (extra-h.in): Process w32-add.h.
-	(arch_sources): Remove w32-gettext.h.
-
-2010-01-18  Werner Koch  <wk at g10code.com>
-
-	* src/init.c (wchar_to_utf8, utf8_to_wchar): New.
-
-	* src/gpg-error.c (main): Add option --list.
-
-2010-01-18  Werner Koch  <wk at g10code.com>
-
-	* ltmain.sh (wrappers_required): Don't set for mingw32ce.
-
-	* tests/Makefile.am (extra_includes): New.
-	* tests/t-syserror.c (main): Use gpg_err_set_errno.
-
-	* src/w32ce-add.h: New.
-	* src/Makefile.am (EXTRA_DIST): Add it
-	(extra-h.in): New rule
-	(gpg-error.h): Pass extra-h.in to mkheader.
-	* src/mkheader.awk (extra_body): New.
-
-	* src/gpg-error.c (get_err_from_number): Use gpg_err_set_errno.
-
-	* src/mkw32errmap.c: New
-	* src/gpg-error.def: Rename to  ..
-	* src/gpg-error.def.in: .. this.
-	(_gpg_errno_location): New.
-	* src/init.c (struct tls_space_s, tls_index): New.
-	(get_tls, _gpg_errno_location, DllMain): New.
-	(read_w32_registry_string) [W32CE]: Don't expand envvars.
-	(_gpg_w32ce_strerror): New.
-	* src/Makefile.am (extra_headers, extra_cppflags): New.
-	(include_HEADERS): Add extra_headers.  Prefix with nobase_.
-	(libgpg_error_la_CPPFLAGS, gpg_error_CPPFLAGS)
-	(mkerrcodes.h): Add extra_cppflags.
-	(RCCOMPILE): Replace libgpg_error_la_CPPFLAGS by direct inclusion
-	of -DLOCALEDIR.
-	* configure.ac (HAVE_W32CE_SYSTEM): New AM_CONDITIONAL and
-	AC_DEFINE.
-	(GPG_ERROR_CONFIG_ISUBDIRAFTER): New.
-	* src/gpg-error-config.in <--libs>: Replace fixed -lgpg-error
-	by subst variable.
-	(isubdirafter): New.
-	<--cflags>: Take subst variable in account.  Add idirafter stuff.
-
-2009-10-26  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h.in (GPG_ERR_SOURCE_DIM): Reduce to 128.
-
-2009-09-29  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in (GPG_ERR_NO_ENGINE): New.
-
-2009-09-21  Werner Koch  <wk at g10code.com>
-
-	* src/err-sources.h.in (GPG_ERR_SOURCE_G13): New.
-
-2009-08-20  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: s/octadecimal/octal/.  Reported by Petr Pisar.
-
-2009-07-23  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_NOT_ENABLED.
-
-2009-07-17  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/mkerrnos.awk: Output code to cause WSA Errors to be found
-	from gpg error codes.
-	* README: Add problem of translating error codes back and forth.
-
-	* src/mkerrcodes1.awk: Output code to cause WSA Errors to be
-	transparently translated.
-	* src/code-from-errno.c [HAVE_W32_SYSTEM]: Don't include winsock2.h.
-	(w32_special_errnos) [HAVE_W32_SYSTEM]: Removed.
-	(gpg_err_code_from_errno) [HAVE_W32_SYSTEM]: Remove special case.
-	* README: Document problem with printing some WSA Errors.
-
-2009-06-23  Marcus Brinkmann  <marcus at g10code.de>
-
-	Update to libtool 2.2.6a.
-	* configure.ac: Invoke AC_CONFIG_MACRO_DIR.
-	(AC_LIBTOOL_WIN32_DLL, AC_LIBTOOL_RC): Replace by ...
-	(LT_PREREQ, LT_INIT, LT_LANG): ... these.
-	* config.guess, config.sub, install-sh, ltmain.sh, m4/libtool.m4:
-	Updated to libtool 2.2.6a.
-	* m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4,
-	m4/lt~obsolete.m4: New files from libtool 2.2.6a.
-	* src/Makefile.am (LTRCCOMPILE): Refactor with ...
-	(RCCOMPILE): ... this new macro.  Add $(libgpg_error_la_CPPFLAGS).
-	(SUFFIXES): Add .lo.
-	(.rc.o): Change to ...
-	(.rc.lo): ... this implicit rule.
-	(gpg_error_res_ldflag): Removed.
-	(gpg_error_res): Use libtool object file name here.
-	(install-def-file): Fix typo.
-	(libgpg_error_la_LDFLAGS): Remove gpg_error_res_ldflag usage.
-	(libgpg_error_la_LIBADD): Add gpg_error_res.
-
-2008-11-26  Werner Koch  <wk at g10code.com>
-
-	Release 1.7.
-
-	* configure.ac: Set LT version to C5/A5/R0.
-
-2008-11-12  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_NO_PASSPHRASE and GPG_ERR_NO_PIN.
-
-2008-11-08  Moritz  <moritz at gnu.org>
-
-	* lang/cl/gpg-error.lisp ("gpg_err_code_from_syserror"): Fix
-	defcfun: removed "(void)".
-
-	* lang/cl/gpg-error.lisp (size-t): Wrong call to defctype:
-	function accepts optional, not keyword argument.
-	(gpg-error-t): Likewise.
-
-2008-10-29  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/mkstrtable.awk: Make generated code -W clean to silence gcc
-	warnings.
-
-2008-08-06  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in (GPG_ERR_NOT_OPERATIONAL): New.
-
-2008-04-01  Werner Koch  <wk at g10code.com>
-
-	* configure.ac (AC_INIT): Fix m4 quoting.
-
-2007-12-11  Werner Koch  <wk at g10code.com>
-
-	* Makefile.am (EXTRA_DIST): Add COPYING.
-
-2007-10-29  Werner Koch  <wk at g10code.com>
-
-	Released 1.6.
-
-	* configure.ac: Set LT version to C4/A4/R0.
-
-	* config.guess, config.sub: Updated.
-
-	* src/err-sources.h.in: (GPG_ERR_SOURCE_KLEO): New.
-
-	* w32-gettext.c (SUBLANG_BENGALI_BANGLADESH): Fix to 2 as per MSDN.
-	(SUBLANG_PUNJABI_PAKISTAN): Remove as it is not in MSDN.
-	(SUBLANG_ROMANIAN_MOLDOVA): Remove as it is not in MSDN.
-	(SUBLANG_ROMANIAN_ROMANIA): Change to value 1 as per MSDN.
-
-2007-09-27  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/Makefile.am (%.o): Replace pattern rule with suffix rule.
-	(SUFFIXES): New variable.
-
-2007-09-27  Werner Koch  <wk at g10code.com>
-
-	* src/err-sources.h.in (GPG_ERR_SOURCE_GPA): New.
-	* src/err-codes.h.in (GPG_ERR_UNFINISHED): New.
-
-2007-08-03  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac: Call AM_PROG_CC_C_O.  Allow --disable-languages.
-	* autogen.sh: Use = not == in test.
-	* lang/cl/Makefile.am: Do not use :=, but =.
-	* Makefile.am [!LANGUAGES_SOME]: Don't add lang to subdirs.
-	* m4/inttypes-h.m4, m4/lock.m4, m4/visibility.m4: New files.
-
-2007-05-19  Marcus Brinkmann  <marcus at g10code.de>
-
-	* lang/cl/gpg-error.lisp (gpg-err-source-t): Add
-	:gpg-err-source-any.
-
-2007-06-18  Werner Koch  <wk at g10code.com>
-
-	* src/code-from-errno.c (w32_special_errnos) [W32]: New.  This is
-	to provide some common mappings for winsocket error codes.
-	(gpg_err_code_from_errno, gpg_err_code_from_syserror): Use it.
-
-2007-05-09  Werner Koch  <wk at g10code.com>
-
-	* src/gpg-error.m4: Print found version on success.
-
-2006-12-09  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/Makefile.am (EXTRA_DIST): Add README.
-	* src/README: New file.
-
-2006-12-01  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.c (get_err_from_number): Fix last change.
-
-	* src/gpg-error.c (get_err_from_number): Support source and code
-	number in split format like "7.17".
-
-2006-11-30  Werner Koch  <wk at g10code.com>
-
-	Released 1.5.
-
-	* configure.ac: Set LT version to C3/A3/R1.
-
-	* README: Switch to tar.bz2 and sha1sum.
-
-	* src/gpg-error.c (main): Add option --version.
-
-	* autogen.sh (FORCE): Add option --force.
-
-	* intl/: Removed.
-	* Makefile.am (SUBDIRS): Removed intl.
-	* configure.ac (AM_GNU_GETTEXT): Use external flag
-	* src/Makefile.am: Removed -I../intl.
-
-2006-11-23  Werner Koch  <wk at g10code.com>
-
-	* configure.ac: Display configuration status after AC_OUTPUT.
-	(AC_INIT): Use SVN revision magic.
-	(AC_GNU_SOURCE): New.
-
-2006-11-23  gettextize  <bug-gnu-gettext at gnu.org>
-
-	* configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.15.
-
-2006-11-15  Werner Koch  <wk at g10code.com>
-
-	* autogen.sh: Add convenience option --build-amd64.
-
-2006-10-20  Werner Koch  <wk at g10code.com>
-
-	* Makefile.am (stowinstall): New convenience target.
-
-2006-09-18  Werner Koch  <wk at g10code.com>
-
-	* src/gpg-error.def: Added gpg_err_code_from_syserror.
-
-2006-09-14  Werner Koch  <wk at g10code.com>
-
-	Released 1.4.
-
-	* configure.ac: Set LT version to C3/A3/R0.
-	(AB_INIT): New.
-
-	* autogen.sh (--build-w32): Better cross-compiler locating.
-
-	* src/strerror.c (system_strerror_r): Made static.
-
-	* tests/t-syserror.c: New.
-	* tests/Makefile.am (TESTS): Added new test.
-
-	* lang/cl/gpg-error.lisp ("gpg_err_code_from_syserror"): New.
-	(gpg-err-code-from-syserror): New.
-	(gpg-error-from-syserror): New.
-	* lang/cl/gpg-error-package.lisp: Export new functions
-
-	* src/gpg-error.h.in (gpg_error_from_syserror): New.
-	* src/code-from-errno.c (gpg_err_code_from_errno): Cosmetic change
-	to first check whether ERR is zero.
-	(gpg_err_code_from_syserror): New.
-
-2006-09-06  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_UNKNOWN_OPTION and
-	GPG_ERR_UNKNOWN_COMMAND.
-
-2006-09-05  Werner Koch  <wk at g10code.com>
-
-	* src/err-sources.h.in (GPG_ERR_SOURCE_ANY): New. This is so that
-	we have source distinguished from the Unknown one but declaring
-	that it is an gpg-error style error code.
-
-	* src/err-codes.h.in: Added GPG_ERR_ASS_* codes, rabnge 257-281.
-	(GPG_ERR_MISSING_ERRNO): New.
-
-2006-07-04  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/init.c (get_locale_dir): Return NULL instead of garbage.
-	* src/gpg-error.c (get_locale_dir): Likewise.
-	Reported by Simon Josefsson <jas at extundo.com>.
-
-2006-05-30  Marcus Brinkmann  <marcus at g10code.de>
-
-	* lang/cl/gpg-error.asd.in (gpg-error): Add "depends-on" on cffi.
-
-2006-05-29  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/init.c (gpg_err_init) [!ENABLE_NLS]: Do not initialize the
-	locale.
-	* src/gpg-error.c (i18n_init) [!ENABLE_NLS]: Likewise.
-	Patch submitted by Nils Durner <ndurner at web.de>.
-
-2006-05-25  Marcus Brinkmann  <marcus at g10code.de>
-
-	* lang/cl/gpg-error.asd: Renamed to ...
-	* lang/cl/gpg-error.asd.in: ... this.
-	* configure.ac (AC_CONFIG_FILES): Add lang/cl/gpg-error.asd.in.
-
-	* lang/cl/mkerrcodes.awk, lang/cl/gpg-error-package.lisp,
-	lang/cl/gpg-error.lisp, lang/cl/gpg-error.asd, lang/cl/Makefile.am
-	(clfilesdir): Fix package and file names.
-
-	* lang/cl/Makefile.am (clfilesdir): Use datadir, not prefix.
-
-2006-05-05  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac (AC_CONFIG_FILES): Add lang/Makefile and
-	lang/cl/Makefile.
-	* Makefile.am (SUBDIRS): Add lang.
-	* lang: New directory.
-	* lang/README, lang/Makefile.am: New files.
-	* lang/cl: New directory.
-	* lang/cl/Makefile.am, lang/cl/README, lang/cl/gpg-error.asd,
-	lang/cl/gpg-error-package.lisp, lang/cl/gpg-error.lisp,
-	lang/cl/mkerrcodes.awk: New files.
-
-2006-03-14  Marcus Brinkmann  <marcus at g10code.de>
-
-	Released 1.3.
-
-	* configure.ac (LIBGPG_ERROR_LT_REVISION): Bump for release.
-
-	Many files regenerated.
-	* src/Makefile.am (gpg_error_CPPFLAGS, libgpg_error_la_CPPFLAGS):
-	Add -I../intl.
-	* Makefile.am (SUBDIRS): Add intl.
-	* configure.ac (AC_CONFIG_FILES): Add intl/Makefile.
-	(AM_GNU_GETTEXT_VERSION): Bump to 0.14.5.
-
-2006-03-06  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac (min_automake_version): Bump to 1.9.6.
-	* mkinstalldirs, depcomp, compile, INSTALL, COPYING, missing,
-	install-sh: Update from automake 1.9.6.
-	ltmain.sh: Update from libtool 1.5.22.
-
-2006-03-03  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac (LIBGPG_ERROR_LT_CURRENT, LIBGPG_ERROR_LT_AGE):
-	Bump for release.
-	(LIBGPG_ERROR_LT_REVISION): Reset to 0 for release.
-
-2005-11-02  Werner Koch  <wk at g10code.com>
-
-	* src/Makefile.am (gpg_error_SOURCES): Include ARCH_SOURCES.
-	* src/gpg-error.c [W32]: Include gettext.h instead of libintl.h.
-
-	* configure.ac (AH_BOTTOM): Define ENABLE_NLS for W32 builds.
-	* src/w32-gettext.h (dgettext): Changed prototype from
-	libintl_dgettext.
-	* src/w32-gettext.c: Replaced use of WIN32 by HAVE_W32_SYSTEM on
-	demand of the holy GNUquisition.
-	(bindtextdomain, textdomain, dgettext): Need to cast the const way
-	from the return value.
-
-2005-10-26  Werner Koch  <wk at g10code.com>
-
-	* Makefile.am: Used dist-bzip2 option.
-
-2005-10-25  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/w32-gettext.c (get_string): Remove extra arguments to
-	utf8_to_native_invocation.
-	(utf8_to_wchar, wchar_to_native): New function.
-	(utf8_to_native): Rewritten.
-
-	* src/Makefile.am (gpg_error_CPPFLAGS): New variable.
-	* src/gpg-error.c (i18n_init): Don't return anything.
-
-	* src/Makefile.am (arch_sources): New variable.
-	(libgpg_error_la_SOURCES): Add $(arch_sources).
-	* src/gettext.h [HAVE_W32_SYSTEM]: Include w32-gettext.h.
-	* src/w32-gettext.h: New file.
-	* src/w32-gettext.c: New file.
-	* src/gpg-error.h.in: Check for gcc's constructor attribute.
-	Use it for gpg_err_init.
-	(GPG_ERR_INITIALIZED): Define if constructor is available.
-	* src/gpg-error.c (main) [GPG_ERR_INITIALIZED]: Don't invoke
-	gpg_err_init.
-	(i18n_init): Call bindtextdomain as well.  Now that gpg-error has
-	its own gettext implementation, we can't rely on it anymore.
-	Also, repeat all the w32 stuff for fetching the registry.
-
-2005-10-23  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/Makefile.am (libgpg_error_la_SOURCES): Add init.c.
-	* src/init.c: New file.
-	* src/gpg-error.h.in (gpg_error_init): New function.
-	* src/gpg-error.def: Add gpg_err_init.
-	* src/gpg-error.c: Remove SIMPLE_GETTEXT stuff.
-	(i18n_init): Don't bind text domain.
-	(main): Call gpg_err_init.
-
-2005-10-20  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac: Instead checking for windres and dlltool, invoke
-	AC_LIBTOOL_WIN32_DLL and AC_LIBTOOL_RC.
-	* src/Makefile.am [HAVE_W32_SYSTEM]: Use libtool, which simplifies
-	the rules.
-
-2005-10-02  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac: Escape arguments in AC_INIT invocation.
-	* config.guess, config.sub, ltmain.sh: Update.
-
-2005-08-19  Werner Koch  <wk at g10code.com>
-
-	* configure.ac: Add code to allow building a W32 DLL.
-	* src/Makefile.am: Changed to allow building for W32.
-	* src/versioninfo.rc.in: New.
-	* src/gpg-error.def: New.
-
-2005-06-20  Marcus Brinkmann  <marcus at g10code.de>
-
-	Released 1.1.
-
-	* configure.ac: Bump up LIBGPG_ERROR_LT_REVISION, update version
-	field.
-
-2005-06-16  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/mkerrcodes.awk: Fix comment.  Allow any non-empty line to
-	start the processing, not only lines starting with numbers.
-	Reported by Guillaume Libersat <glibersat at hurdfr.org>.
-
-2005-01-05  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac: Check for locale.h.
-
-2005-04-20  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_LOCKED.
-
-2005-04-18  Werner Koch  <wk at g10code.com>
-
-	* src/err-codes.h.in: Add GPG_ERR_UNKNOWN_EXTN and
-	GPG_ERR_UNKNOWN_CRIT_EXTN.
-
-2004-12-18  Werner Koch  <wk at g10code.com>
-
-	* autogen.sh: Add option --build-w32.
-
-2004-09-14  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.m4: Add copyright note.
-
-	* configure.ac: Call AC_CANONICAL_HOST.  Suppress warning about
-	lack of strerror_r on all Solaris platforms.
-
-2004-07-30  Werner Koch  <wk at g10code.de>
-
-	Released 1.0.
-
-	* configure.ac: Bumbed version to 1.0, LT to C1/A1/R3.
-
-2004-07-15  Werner Koch  <wk at gnupg.org>
-
-	* src/err-codes.h.in: Renamed description for CARD_RESET.
-
-2004-06-28  Werner Koch  <wk at gnupg.org>
-
-	* src/err-codes.h.in: Add GPG_ERR_INV_REQUEST.
-
-2004-06-08  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/Makefile.am (mkerrcodes): Prefix mkerrcodes.c with $(srcdir)
-	to fix VPATH build.
-
-2004-05-25  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/err-codes.h.in: Add GPG_ERR_PROTOCOL_VIOLATION and
-	GPG_ERR_INV_MAC.
-
-2004-04-23  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/Makefile.am (mkerrcodes): Do not use $< in non-inference rule.
-	(code-from-errno.h): Likewise.
-
-2004-04-22  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/Makefile.am (gpg_error_CPPFLAGS): New variable.
-	(localedir): Likewise.
-	* gpg-error.c: Include the gettext headers.
-	(init_i18n): New function.
-	(main): Call init_i18n, gettextize messages.
-
-2004-04-02  Thomas Schwinge  <schwinge at nic-nac-project.de>
-
-	* autogen.sh: Added ACLOCAL_FLAGS.
-
-2004-04-19  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.m4: Quote first argument to AC_DEFUN.
-
-	* src/mkerrcodes.awk: Allow whitespace before expanded
-	preprocessor macro (ie, the error code value).  Needed for Solaris 2.8.
-
-2004-04-08  Moritz Schulte  <moritz at g10code.de>
-
-	* src/gpg-error.c (main): Return zero on success.
-
-2004-03-09  Marcus Brinkmann  <marcus at g10code.de>
-
-	* libgpg-error.spec.in (%files): Add gpg-error.  Submitted by
-	Albrecht Dreß <albrecht.dress at arcor.de>.
-
-	* src/mkerrcodes.c (main): Fix type of argv.  Return something.
-
-2004-03-09  Werner Koch  <wk at gnupg.org>
-
-	* Makefile.am (dist-hook): Create a VERSION file for use by mkdiff.
-
-	* src/Makefile.am (mkerrcodes.h): Let CPP work on a temporary file.
-	(CLEANFILES): Add that temporary file.
-	* configure.ac (AC_PROG_CPP): Added.
-
-	* src/err-codes.h.in: Removed trailing spaces from
-	GPG_ERR_NOT_LOCKED.
-
-2004-03-08  Werner Koch  <wk at gnupg.org>
-
-	* src/err-sources.h.in: Added GPG_ERR_SOURCE_GSTI.
-
-2004-03-07  Marcus Brinkmann  <marcus at g10code.de>
-
-	Released 0.7.
-
-	* configure.ac: Bumbed up LIBGPG_ERROR_LT_REVISON.
-
-	* src/gpg-error-config.in: Fix last change.
-	* src/gpg-error-config.in (Options): Do not emit include and lib
-	directory for prefix "/usr" or "".
-
-	* tests/Makefile.am (INCLUDES): Change to -I$(top_srcdir)/src to
-	-I$(top_builddir).
-
-2004-03-01  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac: Define CC_FOR_BUILD.
-	* src/Makefile.am (BUILT_SOURCES): Add gpg-error.h.
-	(EXTRA_DIST): Add mkerrcodes.awk and mkerrcodes.c.
-	(CLEANFILES): Add mkerrcodes.h and mkerrcodes.
-	(mkerrcodes.h): New target.
-	(mkerrcodes): New target.
-	(code-from-errno.h): Rewritten.
-
-	* src/errnos.in: Remove include statement (which was ignored
-	anyway).
-	* src/mkerrcodes.awk: New file.
-	* src/mkerrcodes.c: New file.
-
-2004-02-27  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/Makefile.am (noinst_PROGRAMS): Rename to ...
-	(bin_PROGRAMS): ... this.
-
-	* src/gpg-error.h.in: Add extern "C" closure for C-- compilers.
-
-	* src/Makefile.am (noinst_PROGRAMS): New variable.
-	(gpg_error_LDADD): New variable.
-	(gpg_error_SOURCES): New variable.
-	(EXTRA_DIST): Add mkheader.awk and gpg-error.h.in.
-	(BUILT_SOURCES): Add err-sources-sym.h, err-codes-sym.h and
-	errnos-sym.h.
-	(CLEANFILES): Add err-sources-sym.h, err-codes-sym.h,
-	errnos-sym.h and gpg-error.h.
-	(err-codes.h, err-sources.h): Add -v textidx=3 to mkstrtable.awk
-	invocation.
-	(err-codes-sym.h): New target.
-	(err-sources-sym.h): New target.
-	(gpg-error.h): New rule.
-	* src/mkstrtable.awk: Skip the second field (which contains the
-	error code symbol).
-	(FS): Allow more than one tab as field separator.
-	Allow to specify the field to be used as text with the variable
-	textidx.
-	Allow to suppress gettext markers in the output.
-	Allow to specify a prefix to the messages.
-	Allow to specify a namespace for the variable and macro names.
-	* src/mkerrnos.awk (FS): Initialize.  Understand variable
-	errnoidx, which defaults to 2, to cope with the error names being
-	in a different column than the first.
-	* src/mkerrcodes1.awk: Likewise.  Use \t as separator.
-	* src/mkheader.awk: New file.
-	* src/errnos.in: Add error code numbers (relativ to
-	GPG_ERR_SYSTEM_ERROR).
-	* src/strerror-sym.c: New file.
-	* src/strsources-sym.c: New file.
-	* src/err-codes.h.in: Add the error code symbol for every error
-	code.
-	(GPG_ERR_BUFFER_TOO_SHORT): Fix error code (it is 200, not 199).
-	* src/err-sources.h.in: Likewise.
-	* src/gpg-error.h.in: New file.
-	* src/gpg-error.h: File removed.
-	* src/gpg-error.c: New file.
-
-2004-02-18  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error-config.in: Ignore setting of --prefix.
-
-2004-02-11  Werner Koch  <wk at gnupg.org>
-
-	* autogen.sh (check_version): Removed bashism and simplified.
-
-2004-02-03  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h: Added GPG_ERR_NOT_LOCKED.
-
-2003-12-22  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h: Added GPG_ERR_LOCALE_PROBLEM.
-
-2003-12-12  Werner Koch  <wk at gnupg.org>
-
-	* src/err-codes.h.in: s/revoced/revoked/.
-
-2003-12-08  Werner Koch  <wk at gnupg.org>
-
-	* README.CVS: Enhanced.
-
-	* autogen.sh: New.
-	* Makefile.am (EXTRA_DIST): Added autogen.sh.
-
-2003-11-14  Werner Koch  <wk at gnupg.org>
-
-	* configure.ac: Bumbed version number to 0.7.
-
-	Released 0.6.
-
-	* configure.ac: Bumbed up LIBGPG_ERROR_LT_REVISON.
-
-2003-11-13  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h, src/err-codes.h.in: Removed: GPG_ERR_IO_ERROR,
-	GPG_ERR_FILE_ERROR, GPG_ERR_READ_ERROR, GPG_ERR_WRITE_ERROR,
-	GPG_ERR_LOCK_ERROR.
-
-	* src/gpg-error.h (GPG_ERR_SOURCE_DIRMNGR): Fixed typo.
-
-2003-11-12  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h, src/err-codes.h.in: Added these codes:
-	GPG_ERR_INV_ATTR, GPG_ERR_NO_VALUE, GPG_ERR_NOT_FOUND,
-	GPG_ERR_VALUE_NOT_FOUND, GPG_ERR_SYNTAX, GPG_ERR_INV_CRL,
-	GPG_ERR_BAD_BER, GPG_ERR_INV_BER, GPG_ERR_ELEMENT_NOT_FOUND,
-	GPG_ERR_IDENTIFIER_NOT_FOUND, GPG_ERR_INV_TAG, GPG_ERR_INV_LENGTH,
-	GPG_ERR_INV_KEYINFO, GPG_ERR_UNEXPECTED_TAG, GPG_ERR_NOT_DER_ENCODED,
-	GPG_ERR_NO_CMS_OBJ, GPG_ERR_INV_CMS_OBJ, GPG_ERR_UNKNOWN_CMS_OBJ,
-	GPG_ERR_UNSUPPORTED_CMS_OBJ, GPG_ERR_UNSUPPORTED_ENCODING,
-	GPG_ERR_UNSUPPORTED_CMS_VERSION, GPG_ERR_UNKNOWN_ALGORITHM,
-	GPG_ERR_ENCODING_PROBLEM, GPG_ERR_INV_STATE, GPG_ERR_DUP_VALUE,
-	GPG_ERR_MISSING_ACTION, GPG_ERR_MODULE_NOT_FOUND,
-	GPG_ERR_INV_OID_STRING, GPG_ERR_INV_TIME, GPG_ERR_INV_CRL_OBJ,
-	GPG_ERR_UNSUPPORTED_CRL_VERSION, GPG_ERR_INV_CERT_OBJ,
-	GPG_ERR_UNKNOWN_NAME, GPG_ERR_IO_ERROR, GPG_ERR_FILE_ERROR,
-	GPG_ERR_READ_ERROR, GPG_ERR_WRITE_ERROR, GPG_ERR_LOCK_ERROR,
-	GPG_ERR_BUFFER_TOO_SHORT.
-
-2003-11-06  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h, src/err-sources.h.in: Added error sources for
-	Libksba and Dirmngr. Added GPG_ERR_TRUNCATED.
-
-2003-11-03  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h: Allow GPG_ERR_INLINE to get overriden, so that
-	one can use the -D flag to specify the inline keyword.  Suggested
-	by Philip Brown.
-
-2003-10-28  Moritz Schulte  <mo at g10code.com>
-
-	* src/gpg-error.h (gpg_err_code_t): Added:
-	GPG_ERR_NO_ENCODING_METHOD, GPG_ERR_NO_ENCRYPTION_SCHEME,
-	GPG_ERR_NO_SIGNATURE_SCHEME.
-	* src/err-codes.h.in: Likewise.
-
-2003-10-25  Werner Koch  <wk at gnupg.org>
-
-	* src/strerror.c: Include stdio.h for snprintf
-	prototype. Suggested by papadopo at shfj.cea.fr, fixes #gnupg/214.
-
-2003-10-11  Moritz Schulte  <mo at g10code.com>
-
-	* src/gpg-error.m4: Do not ask gpg-error-config to change the
-	prefix, if --with-gpg-error-prefix=... is used.
-
-2003-10-06  Marcus Brinkmann  <marcus at g10code.de>
-
-	Released 0.5.
-
-	* configure.ac (LIBGPG_ERROR_LT_CURRENT, LIBGPG_ERROR_LT_AGE):
-	Bump up by one.
-
-2003-09-30  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h: Include <stddef.h>.
-	(gpg_strerror_r): Change prototype to match POSIX.  Rewritten for
-	that prototype.
-	* src/strerror.c: Include <errno.h>.
-	(gpg_strerror_r, system_strerror_r): Change prototype to match
-	POSIX.  Rewritten for that prototype.  Rewritten for that
-	prototype.
-
-2003-09-30  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h: Add PIN_NOT_SYNCED.
-
-2003-09-13  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac: Invoke AC_FUNC_STRERROR_R.
-	* src/gpg-error.h (gpg_strerror_r): New prototype.
-	* src/strerror.c (system_strerror_r): New function.
-	(gpg_strerror_r): New function.
-
-2003-09-04  Marcus Brinkmann  <marcus at g10code.de>
-
-	* libgpg-error.spec.in: New file.
-	* Makefile.am (EXTRA_DIST): Add libgpg-error.spec.in.
-	* AUTHORS (Maintainer): Add Robert Schiele as contributor.
-
-2003-09-03  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error-config.in: Rewritten.
-
-2003-09-03  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac (AC_INIT): Bump up version number.
-
-2003-09-03  Marcus Brinkmann  <marcus at g10code.de>
-
-	Released 0.4.
-
-	* src/gpg-error.h: Define GPG_ERR_INLINE to nothing if the
-	compiler does not implement C99.
-	* configure.ac: (AC_INIT): Bump up version number.
-
-2003-09-02  Moritz Schulte  <mo at g10code.com>
-
-	* src/gpg-error.h (gpg_err_code_t): Added: GPG_ERR_NO_PRIME.
-	* src/err-codes.h.in: Likewise.
-
-2003-08-19  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h (GPG_ERR_SYSTEM_ERROR): Fix value (should have
-	been 2^15, was 2^14).
-	(GPG_ERR_CODE_DIM): Fix value (should have been 65536, was 32768).
-	Change the error codes of all system errors to have the
-	GPG_ERR_SYSTEM_ERROR bit set.
-
-2003-08-06  Marcus Brinkmann  <marcus at g10code.de>
-
-	* code-from-errno.c, code-to-errno.c, err-codes.h.in,
-	err-sources.h.in, errnos.in, gpg-error.h, strerror.c, strsource.c:
-	Fix typo in copyright notice.
-
-2003-07-31  Marcus Brinkmann  <marcus at g10code.de>
-
-	* README: Clarify copyright conditions.
-	* src/mkstrtable.awk: Don't claim in the copyright information
-	that this program is part of libgpg-error.
-	* src/mkerrnos.awk: Likewise.
-	* src/mkerrcodes1.awk: Likewise.
-	* src/mkerrcodes2.awk: Likewise.
-
-2003-07-31  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/strerror.c (gpg_strerror): Use CODE, not ERR to map error
-	code to errno.
-
-	* configure.ac (AC_INIT): Bump version to 0.3.
-
-	Released 0.3.
-
-2003-07-30  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac (AC_INIT): Bump version to 0.2.
-
-	Released 0.2.
-
-2003-07-17  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h: Add HARDWARE, PIN_BLOCKED and USE_CONDITIONS.
-
-2003-07-16  Moritz Schulte  <moritz at g10code.com>
-
-	* src/gpg-error.h (gpg_err_code): Cast return value to
-	gpg_err_code_t.  Thanks to Ralf Schneider
-	<ralf at tapfere-schneiderleins.de>.
-	(gpg_err_source): Cast return value to gpg_err_source_t.  Thanks
-	to Ralf Schneider <ralf at tapfere-schneiderleins.de>.
-
-2003-07-15  Moritz Schulte  <moritz at g10code.com>
-
-	* src/gpg-error.m4 (AM_PATH_GPG_ERROR): Use `0.0' instead of
-	`0.0.0' in case no version number is given, since the following
-	sed commands expect the former form, not a triplet.
-
-2003-07-06  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h (GPG_ERR_INLINE): Define macro.  Use it instead
-	of __inline__ in this file.
-
-2003-06-30  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h: Add WRONG_CARD.
-
-2003-06-22  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h: Fix value of GPG_ERR_CANCELED.
-
-2003-06-06  Marcus Brinkmann  <marcus at g10code.de>
-
-	* configure.ac: Define GPG_ERROR_CONFIG_LIBS and
-	GPG_ERROR_CONFIG_CFLAGS.
-	Add src/gpg-error-config to config files.
-	* src/Makefile.am (EXTRA_DIST): Add gpg-error-config.in and
-	gpg-error.m4.
-	(bin_SCRIPTS): New variable.
-	(m4datadir, m4data_DATA): New variables.
-	* src/gpg-error-config.in: New file.
-	* src/gpg-error.m4: New file.
-
-	Released 0.1.
-
-2003-06-05  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h (gpg_err_make_from_errno): Fix implementation.
-
-	* src/gpg-error.h (gpg_err_code_t): Add GPG_ERR_SIG_EXPIRED.
-	(err-codes.h.in): Likewise.
-
-	* src/gpg-error.h (gpg_error_from_errno): Change return type to
-	gpg_error_t.
-
-2003-06-04  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h (gpg_err_code_t): Add GPG_ERR_INV_ENGINE,
-	GPG_ERR_PUBKEY_NOT_TRUSTED, GPG_ERR_DECRYPT_FAILED,
-	GPG_ERR_KEY_EXPIRED.
-	(gpg_make_error): Rename to gpg_err_make.
-	(gpg_error): Use here.
-	* tests/t-strerror.c (main): And here.
-	(gpg_make_error_from_errno): Rename to gpg_err_make_from_errno.
-
-	* src/gpg-error.h (gpg_make_error_from_errno): New inline function.
-	(gpg_error_from_errno): Likewise.
-
-	* src/code-from-errno.c (gpg_err_code_from_errno): Handle the case
-	of no error at all.
-
-2003-06-04  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg-error.h (gpg_err_source_t): Add GPG_ERR_SOURCE_USER_1 to
-	GPG_ERR_SOURCE_USER_4.
-	(gpg_err_code_t): Add GPG_ERR_USER_1 to GPG_ERR_USER_16.
-	* src/err-sources.h.in: Likewise.
-	* src/err-codes.h.in: Likewise.
-
-	* src/gpg-error.h: Rename GPG_ERR_INVALID_RESPONSE to
-	GPG_ERR_INV_RESPONSE, GPG_ERR_INVALID_CARD to GPG_ERR_INV_CARD,
-	GPG_ERR_INVALID_INDEX to GPG_ERR_INV_INDEX, GPG_ERR_INVALID_ID to
-	GPG_ERR_INV_ID, GPG_ERR_AGENT_ERROR to GPG_ERR_AGENT,
-	GPG_ERR_ASSUAN_ERROR to GPG_ERR_ASSUAN, GPG_ERR_PIN_ENTRY_ERROR to
-	GPG_ERR_PIN_ENTRY, GPG_ERR_DIRMNGR_ERROR to GPG_ERR_DIRMNGR,
-	GPG_ERR_CARD_ERROR to GPG_ERR_CARD, GPG_ERR_CONFIGURATION_ERROR to
-	GPG_ERR_CONFIGURATION, GPG_ERR_SCDAEMON_ERROR to GPG_ERR_SCDAEMON.
-
-2003-06-03  Werner Koch  <wk at gnupg.org>
-
-	* src/gpg-error.h, src/err-codes.h.in: Add codes for TIMEOUT,
-	INV_HANDLE, NOTHING_FOUND, WRONG_BLOB_TYPE and MISSING_VALUE.
-	* src/gpg-error.h, src/err-sources.h.in: Add KEYBOX which is the
-	keybox subsystem of GnuPG.
-
-2003-06-02  Moritz Schulte  <moritz at g10code.com>
-
-	* src/gpg-error.h: Fix description of gpg_err_code_to_errno
-	(i.e. substitute `ERR' with `CODE').
-	* src/code-to-errno.c: Likewise.
-
-	* tests/t-strerror.c: Include <gpg-error.h> instead of
-	<gpg/error.h>.
-
-2003-06-01  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/strerror.c: Include <string.h>.
-
-	* src/gpg-error.h (gpg_err_code_t): Remove GPG_ERR_FILE_READ,
-	GPG_ERR_FILE_WRITE, GPG_ERR_FILE_OPEN, GPG_ERR_FILE_CREATE,
-	GPG_ERR_FILE_CLOSE, GPG_ERR_FILE_DELETE, GPG_ERR_FILE_EXISTS,
-	GPG_ERR_FILE, GPG_ERR_IO, GPG_ERR_OUT_OF_CORE, GPG_ERR_READ_ERROR,
-	GPG_ERR_WRITE_ERROR.
-	* src/err-codes.h.in: Likewise.
-
-	* src/Makefile.am (EXTRA_DIST): Add err-sources.h and err-codes.h.
-
-	* src/mkerrcodes1.awk: New file.
-	* src/mkerrcodes2.awk: New file.
-	* src/mkerrnos.awk: New file.
-	* src/errnos.in: New file.
-	* src/code-from-errno.c: New file.
-	* src/code-to-errno.c: New file.
-	* src/Makefile.am (libgpg_error_la_SOURCES): Remove err-sources.h
-	and err-codes.h.  Add code-to-errno.c and code-from-errno.c.
-	(code-to-errno.h): New target.
-	(code-from-errno.h): Likewise.
-	(EXTRA_DIST): Add mkerrnos.awk, errnos.in, and mkerrcodes1.awk.
-	(BUILT_SOURCES): Add code-to-errno.h and code-from-errno.h.
-	(CLEANFILES): Likewise.
-	* src/strerror.c (gpg_strerror): Use strerror for system errors.
-	* src/err-codes.h.in: Add 16382 (Unknown system error).
-	* src/gpg-error.h (gpg_err_code_t): Add system errors.
-	(GPG_ERR_CODE_DIM): Change to 32768.
-	(GPG_ERR_SYSTEM_ERROR): New macro.
-	(gpg_err_code_from_errno): New prototype.
-	(gpg_err_code_to_errno): Likewise.
-
-	* src/Makefile.am (nobase_include_HEADERS): Rename target to ...
-	(include_HEADERS): ... this.  Change file to gpg-error.h
-	(libgpg_error_la_SOURCES): Change gpg/error.h to gpg-error.h.
-	* src/gpg/error.h: Move to ...
-	* src/gpg-error.h: ... here.  New file.
-	* src/strerror.c: Include <gpg-error.h>, not <gpg/error.h>.
-	* src/strsource.c: Likewise.
-
-	* src/gpg/error.h (gpg_error_t): Change type to unsigned int, not
-	long.
-
-2003-05-26  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/gpg/error.h (gpg_make_error): Only OR in the error source if
-	there is an error, this allows to test for success with "if (!err)"
-	and similar tests.
-
-2003-05-15  Marcus Brinkmann  <marcus at g10code.de>
-
-	* src/mkstrtable.awk: Add exception clause to license about the
-	output of the script.
-	* configure.ac: Change license to LGPL 2.1 or later.
-	* Makefile.am: Likewise.
-	* src/Makefile.am: Likewise.
-	* src/err-codes.h.in: Likewise.
-	* src/err-sources.h.in: Likewise.
-	* src/strsource.c: Likewise.
-	* src/strerror.c: Likewise.
-	* src/gpg/error.h: Likewise.
-	* tests/Makefile.am: Likewise.
-
-	* src/mkstrtable.awk: New variable HEADER.  Copy input until first
-	line with an actual code and description occurs.
-	* src/err-codes.h.in: Uncomment license, so it is copied into the
-	output.
-	* src/err-sources.h.in: Likewise.
-
-2003-05-15  Marcus Brinkmann  <marcus at g10code.de>
-
-	* COPYING.LIB: New file.
-
-2003-05-15  Marcus Brinkmann  <marcus at g10code.de>
-
-	* Initial check-in.
-
- Copyright 2003, 2004, 2005, 2006, 2007, 2010, 2011 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
- modifications, as long as this notice is preserved.
-
- This file is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+Local Variables:
+buffer-read-only: t
+mode: text
+End:
diff --git a/ChangeLog b/ChangeLog-2011
similarity index 99%
copy from ChangeLog
copy to ChangeLog-2011
index b838b86..474164c 100644
--- a/ChangeLog
+++ b/ChangeLog-2011
@@ -1,3 +1,10 @@
+2011-12-01  Werner Koch  <wk at g10code.com>
+
+	NB: ChangeLog files are no longer manually maintained.  Starting
+	on December 1st, 2011 we put change information only in the GIT
+	commit log, and generate a top-level ChangeLog file from logs at
+	"make dist".  See doc/HACKING for details.
+
 2011-11-28  Jim Meyering  <meyering at redhat.com>
 
 	accept --with-libgpg-error-prefix as well as --with-gpg-error-prefix
diff --git a/Makefile.am b/Makefile.am
index d0d3000..e92925b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,18 +1,18 @@
 # Makefile.am for libgpg-error.
 # Copyright (C) 2003, 2006, 2007 g10 Code GmbH
-# 
+#
 # This file is part of libgpg-error.
-# 
+#
 # libgpg-error 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.
-# 
+#
 # libgpg-error 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 program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
@@ -20,8 +20,11 @@
 ACLOCAL_AMFLAGS = -I m4
 AUTOMAKE_OPTIONS = dist-bzip2
 
-EXTRA_DIST = autogen.sh config.rpath libgpg-error.spec.in COPYING COPYING.LIB \
-	     potomo
+EXTRA_DIST = autogen.sh config.rpath libgpg-error.spec.in 		\
+             COPYING COPYING.LIB potomo doc/HACKING ChangeLog-2011   	\
+	     po/ChangeLog-2011m4/ChangeLog-2011 contrib/ChangeLog-2011 	\
+             build-aux/gitlog-to-changelog build-aux/git-log-footer	\
+             build-aux/git-log-fix
 
 if LANGUAGES_SOME
 lang_subdirs = lang
@@ -32,11 +35,26 @@ endif
 SUBDIRS = m4 src tests po $(lang_subdirs)
 
 
-dist-hook:
+dist-hook: gen-ChangeLog
 	sed -e 's/@pkg_version@/$(VERSION)/g' \
 	    $(top_srcdir)/libgpg-error.spec.in  > $(distdir)/libgpg-error.spec
 	@set -e; echo "$(VERSION)" > $(distdir)/VERSION
 
+
+gen_start_date = 2011-12-01T00:00:00
+.PHONY: gen-ChangeLog
+gen-ChangeLog:
+	if test -d $(top_srcdir)/.git; then				\
+	  (cd $(top_srcdir) &&                      			\
+	    ./build-aux/gitlog-to-changelog				\
+	    --amend=build-aux/git-log-fix				\
+	    --since=$(gen_start_date) ) > $(distdir)/cl-t;		\
+          cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\
+	  rm -f $(distdir)/ChangeLog;					\
+	  mv $(distdir)/cl-t $(distdir)/ChangeLog;			\
+	fi
+
+
 if HAVE_W32_SYSTEM
 install-data-hook:
 	set -e; \
@@ -49,6 +67,6 @@ install-data-hook:
 	done
 endif
 
-stowinstall: 
+stowinstall:
 	$(MAKE) $(AM_MAKEFLAGS) install prefix=/usr/local/stow/libgpg-error
 
diff --git a/build-aux/git-log-fix b/build-aux/git-log-fix
new file mode 100644
index 0000000..af702fe
--- /dev/null
+++ b/build-aux/git-log-fix
@@ -0,0 +1,3 @@
+# This file is expected to be used via gitlog-to-changelog's --amend=FILE
+# option.  It specifies what changes to make to each given SHA1's commit
+# log and metadata, using Perl-eval'able expressions.
diff --git a/build-aux/git-log-footer b/build-aux/git-log-footer
new file mode 100644
index 0000000..c31fe93
--- /dev/null
+++ b/build-aux/git-log-footer
@@ -0,0 +1,14 @@
+
+2011-12-01  Werner Koch  <wk at gnupg.org>
+
+	NB: Changes done before December 1st, 2011 are described in
+	per directory files named ChangeLog-2011.  See doc/HACKING for
+	details.
+
+        -----
+	Copyright (C) 2011 Free Software Foundation, Inc.
+
+	Copying and distribution of this file and/or the original GIT
+	commit log messages, with or without modification, are
+	permitted provided the copyright notice and this notice are
+	preserved.
diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog
new file mode 100755
index 0000000..40a8035
--- /dev/null
+++ b/build-aux/gitlog-to-changelog
@@ -0,0 +1,345 @@
+eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
+  & eval 'exec perl -wS "$0" $argv:q'
+    if 0;
+# Convert git log output to ChangeLog format.
+
+my $VERSION = '2011-11-02 07:53'; # 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.
+
+# 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
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program 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 General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Written by Jim Meyering
+
+use strict;
+use warnings;
+use Getopt::Long;
+use POSIX qw(strftime);
+
+(my $ME = $0) =~ s|.*/||;
+
+# use File::Coda; # http://meyering.net/code/Coda/
+END {
+  defined fileno STDOUT or return;
+  close STDOUT and return;
+  warn "$ME: failed to close standard output: $!\n";
+  $? ||= 1;
+}
+
+sub usage ($)
+{
+  my ($exit_code) = @_;
+  my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR);
+  if ($exit_code != 0)
+    {
+      print $STREAM "Try `$ME --help' for more information.\n";
+    }
+  else
+    {
+      print $STREAM <<EOF;
+Usage: $ME [OPTIONS] [ARGS]
+
+Convert git log output to ChangeLog format.  If present, any ARGS
+are passed to "git log".  To avoid ARGS being parsed as options to
+$ME, they may be preceded by '--'.
+
+OPTIONS:
+
+   --amend=FILE FILE maps from an SHA1 to perl code (i.e., s/old/new/) that
+                  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.
+   --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;
+                  see 'man git-log' for the list of format metacharacters;
+                  the default is '%s%n%b%n'
+
+   --help       display this help and exit
+   --version    output version information and exit
+
+EXAMPLE:
+
+  $ME --since=2008-01-01 > ChangeLog
+  $ME -- -n 5 foo > last-5-commits-to-branch-foo
+
+In a FILE specified via --amend, comment lines (starting with "#") are ignored.
+FILE must consist of <SHA,CODE+> pairs where SHA is a 40-byte SHA1 (alone on
+a line) referring to a commit in the current project, and CODE refers to one
+or more consecutive lines of Perl code.  Pairs must be separated by one or
+more blank line.
+
+Here is sample input for use with --amend=FILE, from coreutils:
+
+3a169f4c5d9159283548178668d2fae6fced3030
+# fix typo in title:
+s/all tile types/all file types/
+
+1379ed974f1fa39b12e2ffab18b3f7a607082202
+# Due to a bug in vc-dwim, I mis-attributed a patch by Paul to myself.
+# Change the author to be Paul.  Note the escaped "@":
+s,Jim .*>,Paul Eggert <eggert\@cs.ucla.edu>,
+
+EOF
+    }
+  exit $exit_code;
+}
+
+# If the string $S is a well-behaved file name, simply return it.
+# If it contains white space, quotes, etc., quote it, and return the new string.
+sub shell_quote($)
+{
+  my ($s) = @_;
+  if ($s =~ m![^\w+/.,-]!)
+    {
+      # Convert each single quote to '\''
+      $s =~ s/\'/\'\\\'\'/g;
+      # Then single quote the string.
+      $s = "'$s'";
+    }
+  return $s;
+}
+
+sub quoted_cmd(@)
+{
+  return join (' ', map {shell_quote $_} @_);
+}
+
+# Parse file F.
+# Comment lines (starting with "#") are ignored.
+# F must consist of <SHA,CODE+> pairs where SHA is a 40-byte SHA1
+# (alone on a line) referring to a commit in the current project, and
+# CODE refers to one or more consecutive lines of Perl code.
+# Pairs must be separated by one or more blank line.
+sub parse_amend_file($)
+{
+  my ($f) = @_;
+
+  open F, '<', $f
+    or die "$ME: $f: failed to open for reading: $!\n";
+
+  my $fail;
+  my $h = {};
+  my $in_code = 0;
+  my $sha;
+  while (defined (my $line = <F>))
+    {
+      $line =~ /^\#/
+        and next;
+      chomp $line;
+      $line eq ''
+        and $in_code = 0, next;
+
+      if (!$in_code)
+        {
+          $line =~ /^([0-9a-fA-F]{40})$/
+            or (warn "$ME: $f:$.: invalid line; expected an SHA1\n"),
+              $fail = 1, next;
+          $sha = lc $1;
+          $in_code = 1;
+          exists $h->{$sha}
+            and (warn "$ME: $f:$.: duplicate SHA1\n"),
+              $fail = 1, next;
+        }
+      else
+        {
+          $h->{$sha} ||= '';
+          $h->{$sha} .= "$line\n";
+        }
+    }
+  close F;
+
+  $fail
+    and exit 1;
+
+  return $h;
+}
+
+{
+  my $since_date;
+  my $format_string = '%s%n%b%n';
+  my $amend_file;
+  my $append_dot = 0;
+  GetOptions
+    (
+     help => sub { usage 0 },
+     version => sub { print "$ME version $VERSION\n"; exit },
+     'since=s' => \$since_date,
+     'format=s' => \$format_string,
+     'amend=s' => \$amend_file,
+     'append-dot' => \$append_dot,
+    ) or usage 1;
+
+
+  defined $since_date
+    and unshift @ARGV, "--since=$since_date";
+
+  # This is a hash that maps an SHA1 to perl code (i.e., s/old/new/)
+  # that makes a correction in the log or attribution of that commit.
+  my $amend_code = defined $amend_file ? parse_amend_file $amend_file : {};
+
+  my @cmd = (qw (git log --log-size),
+             '--pretty=format:%H:%ct  %an  <%ae>%n%n'.$format_string, @ARGV);
+  open PIPE, '-|', @cmd
+    or die ("$ME: failed to run `". quoted_cmd (@cmd) ."': $!\n"
+            . "(Is your Git too old?  Version 1.5.1 or later is required.)\n");
+
+  my $prev_date_line = '';
+  my @prev_coauthors = ();
+  while (1)
+    {
+      defined (my $in = <PIPE>)
+        or last;
+      $in =~ /^log size (\d+)$/
+        or die "$ME:$.: Invalid line (expected log size):\n$in";
+      my $log_nbytes = $1;
+
+      my $log;
+      my $n_read = read PIPE, $log, $log_nbytes;
+      $n_read == $log_nbytes
+        or die "$ME:$.: unexpected EOF\n";
+
+      # Extract leading hash.
+      my ($sha, $rest) = split ':', $log, 2;
+      defined $sha
+        or die "$ME:$.: malformed log entry\n";
+      $sha =~ /^[0-9a-fA-F]{40}$/
+        or die "$ME:$.: invalid SHA1: $sha\n";
+
+      # If this commit's log requires any transformation, do it now.
+      my $code = $amend_code->{$sha};
+      if (defined $code)
+        {
+          eval 'use Safe';
+          my $s = new Safe;
+          # Put the unpreprocessed entry into "$_".
+          $_ = $rest;
+
+          # Let $code operate on it, safely.
+          my $r = $s->reval("$code")
+            or die "$ME:$.:$sha: failed to eval \"$code\":\n$@\n";
+
+          # Note that we've used this entry.
+          delete $amend_code->{$sha};
+
+          # Update $rest upon success.
+          $rest = $_;
+        }
+
+      my @line = split "\n", $rest;
+      my $author_line = shift @line;
+      defined $author_line
+        or die "$ME:$.: unexpected EOF\n";
+      $author_line =~ /^(\d+)  (.*>)$/
+        or die "$ME:$.: Invalid line "
+          . "(expected date/author/email):\n$author_line\n";
+
+      my $date_line = sprintf "%s  $2\n", strftime ("%F", localtime ($1));
+
+      # Format 'Co-authored-by: A U Thor <email at example.com>' lines in
+      # standard multi-author ChangeLog format.
+      my @coauthors = grep /^Co-authored-by:.*$/, @line;
+      for (@coauthors)
+        {
+          s/^Co-authored-by:\s*/\t    /;
+          s/\s*</  </;
+
+          /<.*?@.*\..*>/
+            or warn "$ME: warning: missing email address for "
+              . substr ($_, 5) . "\n";
+        }
+
+      # If this header would be the same as the previous date/name/email/
+      # coauthors header, then arrange not to print it.
+      if ($date_line ne $prev_date_line or "@coauthors" ne "@prev_coauthors")
+        {
+          $prev_date_line eq ''
+            or print "\n";
+          print $date_line;
+          @coauthors
+            and print join ("\n", @coauthors), "\n";
+        }
+      $prev_date_line = $date_line;
+      @prev_coauthors = @coauthors;
+
+      # Omit "Co-authored-by..." and "Signed-off-by..." lines.
+      @line = grep !/^Signed-off-by: .*>$/, @line;
+      @line = grep !/^Co-authored-by: /, @line;
+
+      # Remove leading and trailing blank lines.
+      if (@line)
+        {
+          while ($line[0] =~ /^\s*$/) { shift @line; }
+          while ($line[$#line] =~ /^\s*$/) { pop @line; }
+        }
+
+      # If there were any lines
+      if (@line == 0)
+        {
+          warn "$ME: warning: empty commit message:\n  $date_line\n";
+        }
+      else
+        {
+          if ($append_dot)
+            {
+              # If the first line of the message has enough room, then
+              if (length $line[0] < 72)
+                {
+                  # append a dot if there is no other punctuation or blank
+                  # at the end.
+                  $line[0] =~ /[[:punct:]\s]$/
+                    or $line[0] .= '.';
+                }
+            }
+
+          # Prefix each non-empty line with a TAB.
+          @line = map { length $_ ? "\t$_" : '' } @line;
+
+          print "\n", join ("\n", @line), "\n";
+        }
+
+      defined ($in = <PIPE>)
+        or last;
+      $in ne "\n"
+        and die "$ME:$.: unexpected line:\n$in";
+    }
+
+  close PIPE
+    or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n";
+  # FIXME-someday: include $PROCESS_STATUS in the diagnostic
+
+  # Complain about any unused entry in the --amend=F specified file.
+  my $fail = 0;
+  foreach my $sha (keys %$amend_code)
+    {
+      warn "$ME:$amend_file: unused entry: $sha\n";
+      $fail = 1;
+    }
+
+  exit $fail;
+}
+
+# Local Variables:
+# mode: perl
+# 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-time-zone: "UTC"
+# time-stamp-end: "'; # UTC"
+# End:
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
deleted file mode 100644
index c109306..0000000
--- a/contrib/ChangeLog
+++ /dev/null
@@ -1,19 +0,0 @@
-2010-11-15  Marcus Brinkmann  <mb at g10code.com>
-
-	* conf-w32ce-msc/stdint.h: New file.
-	* conf-w32ce-msc/build.mk (conf_sources): Add stdint.h.
-
-2010-11-15  Werner Koch  <wk at g10code.com>
-
-	* conf-w32ce-msc/build.mk (clean): New.
-
-2010-11-02  Werner Koch  <wk at g10code.com>
-
-	* conf-w32ce-msc/build.mk: Change directory layout.  Provide
-	install target.
-
-2010-10-28  Werner Koch  <wk at g10code.com>
-
-	* contrib/conf-w32ce-msc/build.mk: New.
-	* contrib/conf-w32ce-msc/config.h: New.
-
diff --git a/contrib/ChangeLog-2011 b/contrib/ChangeLog-2011
new file mode 100644
index 0000000..87c1aa4
--- /dev/null
+++ b/contrib/ChangeLog-2011
@@ -0,0 +1,25 @@
+2011-12-01  Werner Koch  <wk at g10code.com>
+
+	NB: ChangeLog files are no longer manually maintained.  Starting
+	on December 1st, 2011 we put change information only in the GIT
+	commit log, and generate a top-level ChangeLog file from logs at
+	"make dist".  See doc/HACKING for details.
+
+2010-11-15  Marcus Brinkmann  <mb at g10code.com>
+
+	* conf-w32ce-msc/stdint.h: New file.
+	* conf-w32ce-msc/build.mk (conf_sources): Add stdint.h.
+
+2010-11-15  Werner Koch  <wk at g10code.com>
+
+	* conf-w32ce-msc/build.mk (clean): New.
+
+2010-11-02  Werner Koch  <wk at g10code.com>
+
+	* conf-w32ce-msc/build.mk: Change directory layout.  Provide
+	install target.
+
+2010-10-28  Werner Koch  <wk at g10code.com>
+
+	* contrib/conf-w32ce-msc/build.mk: New.
+	* contrib/conf-w32ce-msc/config.h: New.
diff --git a/doc/HACKING b/doc/HACKING
new file mode 100644
index 0000000..e30b2f8
--- /dev/null
+++ b/doc/HACKING
@@ -0,0 +1,25 @@
+# HACKING                                                       -*- org -*-
+#+TITLE: Various hacking notes
+#+STARTUP: showall
+
+* No more ChangeLog files
+
+  Do not modify any of the ChangeLog files in Libgpg-error.  Starting
+  on December 1st, 2011 we put change information only in the GIT
+  commit log, and generate a top-level ChangeLog file from logs at
+  "make dist" time.  As such, there are strict requirements on the
+  form of the commit log messages.  The old ChangeLog files have all
+  be renamed to ChangeLog-2011
+
+
+* Commit log requirements
+
+  Your commit log should always start with a one-line summary, the
+  second line should be blank, and the remaining lines are usually
+  ChangeLog-style entries for all affected files.  However, it's fine
+  -- even recommended -- to write a few lines of prose describing the
+  change, when the summary and ChangeLog entries don't give enough of
+  the big picture.  Omit the leading TABs that you're used to seeing
+  in a "real" ChangeLog file, but keep the maximum line length at 72
+  or smaller, so that the generated ChangeLog lines, each with its
+  leading TAB, will not exceed 80 columns.
diff --git a/m4/ChangeLog b/m4/ChangeLog-2011
similarity index 93%
rename from m4/ChangeLog
rename to m4/ChangeLog-2011
index 10adb6c..d803b60 100644
--- a/m4/ChangeLog
+++ b/m4/ChangeLog-2011
@@ -1,3 +1,10 @@
+2011-12-01  Werner Koch  <wk at g10code.com>
+
+	NB: ChangeLog files are no longer manually maintained.  Starting
+	on December 1st, 2011 we put change information only in the GIT
+	commit log, and generate a top-level ChangeLog file from logs at
+	"make dist".  See doc/HACKING for details.
+
 2010-09-16  gettextize  <bug-gnu-gettext at gnu.org>
 
 	* gettext.m4: Upgrade to gettext-0.17.
@@ -104,4 +111,3 @@
 	* uintmax_t.m4: New file, from gettext-0.11.5.
 	* ulonglong.m4: New file, from gettext-0.11.5.
 	* Makefile.am: New file.
-
diff --git a/po/ChangeLog b/po/ChangeLog-2011
similarity index 91%
rename from po/ChangeLog
rename to po/ChangeLog-2011
index 46959ce..ddc40f9 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog-2011
@@ -1,3 +1,10 @@
+2011-12-01  Werner Koch  <wk at g10code.com>
+
+	NB: ChangeLog files are no longer manually maintained.  Starting
+	on December 1st, 2011 we put change information only in the GIT
+	commit log, and generate a top-level ChangeLog file from logs at
+	"make dist".  See doc/HACKING for details.
+
 2010-09-16  Jakub Bogusz  <qboosh at pld-linux.org>  (wk)
 
 	* pl.po: Update.

-----------------------------------------------------------------------

Summary of changes:
 .gitignore                       |   39 ++
 ChangeLog                        | 1212 +-------------------------------------
 ChangeLog => ChangeLog-2011      |    7 +
 Makefile.am                      |   34 +-
 build-aux/git-log-fix            |    3 +
 build-aux/git-log-footer         |   14 +
 build-aux/gitlog-to-changelog    |  345 +++++++++++
 configure.ac                     |    9 +-
 contrib/ChangeLog                |   19 -
 contrib/ChangeLog-2011           |   25 +
 doc/HACKING                      |   25 +
 m4/{ChangeLog => ChangeLog-2011} |    8 +-
 po/{ChangeLog => ChangeLog-2011} |    7 +
 po/remove-potcdate.sed           |   11 -
 14 files changed, 514 insertions(+), 1244 deletions(-)
 copy ChangeLog => ChangeLog-2011 (99%)
 create mode 100644 build-aux/git-log-fix
 create mode 100644 build-aux/git-log-footer
 create mode 100755 build-aux/gitlog-to-changelog
 delete mode 100644 contrib/ChangeLog
 create mode 100644 contrib/ChangeLog-2011
 create mode 100644 doc/HACKING
 rename m4/{ChangeLog => ChangeLog-2011} (93%)
 rename po/{ChangeLog => ChangeLog-2011} (91%)
 delete mode 100644 po/remove-potcdate.sed


hooks/post-receive
-- 
Error codes used by GnuPG et al.
http://git.gnupg.org




More information about the Gnupg-commits mailing list