<feed xmlns='http://www.w3.org/2005/Atom'>
<title>libgpg-error/src/Makefile.am, branch libgpg-error-1.15</title>
<subtitle>Error codes used by GnuPG et al.</subtitle>
<id>http://git.bktus.com/gpgfrontend/libgpg-error/atom?h=libgpg-error-1.15</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/libgpg-error/atom?h=libgpg-error-1.15'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/'/>
<updated>2014-09-11T13:12:55Z</updated>
<entry>
<title>Fix build problems with non-gmake (ie. AIX).</title>
<updated>2014-09-11T13:12:55Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-09-11T13:12:55Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=316171204d9a995f8b85431830bbc225ea144b48'/>
<id>urn:sha1:316171204d9a995f8b85431830bbc225ea144b48</id>
<content type='text'>
* src/Makefile.am: Do not distribute gpg-error.h.
(lock-obj-pub.native.h): Prepend a "./" to match the dependency.
</content>
</entry>
<entry>
<title>Fix problems with ssize_t and off_t.</title>
<updated>2014-09-11T12:37:21Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-09-11T12:33:46Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=5a4684f3b0db4cd5c13f94b1319c245ef96ce91d'/>
<id>urn:sha1:5a4684f3b0db4cd5c13f94b1319c245ef96ce91d</id>
<content type='text'>
* configure.ac (AC_SYS_LARGEFILE): New.
(AC_CHECK_HEADERS): Check for stdint.h.
(AC_CHECK_SIZEOF): Add for int, long and long long.
(REPLACEMENT_FOR_OFF_T): New ac_define.
* src/mkheader.c (have_stdint_h, have_w32_system, have_w64_system)
(replacement_for_off_type, stdint_h_included): New.
(xfree, xstrdup): New.
(parse_config_h): New.
(write_special): Support "define:gpgrt_off_t", "define:gpgrt_ssize_t",
"api_ssize_t" tags.
(main): Add config.h arg.  Call parse_config_h.  Fix substitute code.
* src/Makefile.am (gpg-error.h): Pass config.h to mkheader.

* src/gpg-error.h.in: Include definitions for gpgrt_ssize_t and
gpgrt_off_t.  Let mkheader insert ssize_t keywords.  Chnage all off_t
to gpgrt_off_t.
* src/estream.c: Change all off_t to gpgrt_off_t.  Chnage all ssize_t
to gpgrt_ssize_t.
* src/visibility.c (gpgrt_fseeko): Use gpgrt_off_t.
(gpgrt_ftello): Ditto.
(gpgrt_getline): Use gpgrt_ssize_t.
(gpgrt_read_line): Ditto.
</content>
</entry>
<entry>
<title>Implement symbol visibility.</title>
<updated>2014-08-25T14:37:46Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-08-22T17:08:08Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=216e7def2118a1774fa7ebeb45b8635b9fe6ba42'/>
<id>urn:sha1:216e7def2118a1774fa7ebeb45b8635b9fe6ba42</id>
<content type='text'>
* configure.ac: New option --enable-ld-version-script.
(GPGRT_USE_VISIBILITY): New ac_define.
(HAVE_LD_VERSION_SCRIPT): New am_conditional.
* src/gpg-error.vers: New.
* src/gpgrt-int.h: New.
* src/visibility.c, src/visibility.h: New.  Lot of changes to symbold
names.
--

This is only doe for the old API.  The estream API needs to be added.
</content>
</entry>
<entry>
<title>Add estream code from GnuPG.</title>
<updated>2014-08-25T14:37:45Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-08-21T17:37:37Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=2b74237d19e44f7173bb052677f0ec35e6ff51b0'/>
<id>urn:sha1:2b74237d19e44f7173bb052677f0ec35e6ff51b0</id>
<content type='text'>
* src/estream-printf.c, src/estream-printf.h: New.
* src/estream.c, src/estream.h: New.
* m4/estream.m4: New.
* src/Makefile.am (libgpg_error_la_SOURCES): Add new files.
* configure.ac (AH_BOTTOM): Define estream prefix.
&lt;gcc&gt;: Add useful gcc warning options.
(estream_INIT): Call.
--

This is the base line patch to move the estream code from GnuPG to
libgpg-error.  The code has been taken from the GnuPG repository at
commit cb680c5ea540738692a5c74951802b0fdc658e85.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Add new lock-obj-pub.*.h from debian buildds.</title>
<updated>2014-07-27T11:47:05Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2014-07-25T23:00:42Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=8338a4ba93367974758dc5e195f67e9d171d4086'/>
<id>urn:sha1:8338a4ba93367974758dc5e195f67e9d171d4086</id>
<content type='text'>
* src/syscfg/lock-obj-pub.aarch64-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.alpha-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabi.h: New.
* src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabihf.h: New.
* src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.i486-pc-gnu.h: New.
* src/syscfg/lock-obj-pub.i486-pc-kfreebsd-gnu.h: New.
* src/syscfg/lock-obj-pub.i486-pc-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.m68k-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.mips-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.mipsel-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.powerpc-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.powerpc64-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.s390x-ibm-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.sh4-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.sparc-unknown-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.x86_64-pc-kfreebsd-gnu.h: New.
* src/syscfg/lock-obj-pub.x86_64-pc-linux-gnu.h: New.
* src/syscfg/lock-obj-pub.x86_64-pc-linux-gnux32.h: New.
* src/Makefile.am (lock_obj_pub): Add new files.
--

To generate these:

pull all the logs stored under the "install" links from:

   https://buildd.debian.org/status/package.php?p=libgpg-error&amp;suite=unstable
   https://buildd.debian-ports.org/status/package.php?p=libgpg-error&amp;suite=unstable

and then extract the headers via:

for x in fetch*; do
   awk '/^## lock-obj-pub\..*\.h$/{ X=2 } { if (X &gt; 0) { print $0 } }  /^##$/{ X = X-1 } ' &lt; "$x" &gt;tmp
   mv -f tmp $( head -n1 &lt; tmp | cut -f2 -d\ )
done
</content>
</entry>
<entry>
<title>Fix a syscfg/ file name.</title>
<updated>2014-01-29T07:47:01Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-01-29T07:47:01Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=bb5318aa5536fa48ec240c2ff48b9e2e1d9916ef'/>
<id>urn:sha1:bb5318aa5536fa48ec240c2ff48b9e2e1d9916ef</id>
<content type='text'>
* src/syscfg/lock-obj.arm-unknown-linux-androideabi.h: Rename to ...
* src/syscfg/lock-obj-pub.arm-unknown-linux-androideabi.h: this.
* src/Makefile.am (lock_obj_pub): Fix file name.
--

Ooops.  A wrong comment in a generated header can make a lot of
trouble.
</content>
</entry>
<entry>
<title>Add lock info for arm-unknown-linux-androideabi.</title>
<updated>2014-01-25T11:48:05Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-01-09T18:14:09Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=e1aa030d7655743f0c3cdd5f7b26ae1b4665fbc6'/>
<id>urn:sha1:e1aa030d7655743f0c3cdd5f7b26ae1b4665fbc6</id>
<content type='text'>
* src/syscfg/lock-obj.arm-unknown-linux-androideabi.h: New.  Provided
by Hans-Christoph Steiner.
* src/Makefile.am (lock_obj_pub): Add file.
</content>
</entry>
<entry>
<title>Extend the platform dependent build rules.</title>
<updated>2014-01-17T16:54:59Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-01-09T18:14:09Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=d83b12213231443b93de39863b916ada6232035a'/>
<id>urn:sha1:d83b12213231443b93de39863b916ada6232035a</id>
<content type='text'>
* src/mkheader.c (mk_include_name): New.
(include_file): Implement '&amp;' substitution.
(try_include_file): New.
(write_special): Use try_include_file and syscfg/.
(main): Add a new arg.
* configure.ac (CROSS_COMPILING): New am_conditional.
(HOST_TRIPLET_STRING): New ac_define.
* src/gen-posix-lock-obj.c (main): Print the host triplet.
* src/w32-lock-obj-pub.in: Move to ...
* src/syscfg/lock-obj-pub.mingw32.h: here.
* src/Makefile.am (lock_obj_pub): New.
(pre_mkheader_cmds): New.
(gpg-error.h): Run pre_mkheader_cmds.
(parts_of_gpg_error_h, lock-obj-pub.native.h): Do not use when
cross-compiling.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Fix linking for last change on non-ELF platforms.</title>
<updated>2014-01-16T14:39:34Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-01-09T18:14:09Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=4f9b13e99bdfed886dadfd1b70a69af3747ebc98'/>
<id>urn:sha1:4f9b13e99bdfed886dadfd1b70a69af3747ebc98</id>
<content type='text'>
* src/Makefile.am (libgpg_error_la_LIBADD): Add LIBTHREAD.
--

If configure told us to link with -lpthread we need to pass that
library to the libgpg-error.la build rule.  Which is the right thing
to do.  Without that we may run into strange errors; for example on
AIX pthread_mutex_lock is silently not resolved and thus any use of
gpgrt_lock_lock will immediately lead to segv.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Add gpgrt_lock_ functions.</title>
<updated>2014-01-16T08:58:22Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-01-09T18:14:09Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/libgpg-error/commit/?id=ff937c39febe63d52c55590d8e3bd3a460f26651'/>
<id>urn:sha1:ff937c39febe63d52c55590d8e3bd3a460f26651</id>
<content type='text'>
* src/gpg-error.h.in (GPGRT_LOCK_DEFINE): New.
(gpgrt_lock_init): New.
(gpgrt_lock_lock): New.
(gpgrt_lock_unlock): New.
(gpgrt_lock_destroy): New.
(gpgrt_yield): New.
* src/gpg-error.def.in: Add new functions.
* m4/lock.m4, m4/threadlib.m4: New. Taken from current gnulib.
* configure.ac: Call gl_LOCK.  Check size of pthread_mutex_t. Add
LIBTHREAD to GPG_ERROR_CONFIG_LIBS.
* src/err-codes.h.in (GPG_ERR_INV_LOCK_OBJ): New.
* src/gen-posix-lock-obj.c: New.
* src/gen-w32-lock-obj.c: New.
* src/lock.h, src/thread.h: New.
* src/posix-lock-obj.h, src/w32-lock-obj.h: New.
* src/posix-lock.c, src/w32-lock.c: New.
* src/posix-thread.c, src/w32-thread.c:
* src/w32-lock-obj-pub.in: New.
* src/mkheader.c (include_file): Support build time include files.
(write_special): Add keyword "include:lock-obj".
* src/Makefile.am:
(posix-lock-obj-pub.in): New rule.
(noinst_PROGRAMS): Add gen-*-lock-obj helpers.

* tests/t-common.h: New.
* tests/t-lock.c: New.
* tests/Makefile.am (t_lock_LDADD): Add new test.

--

This patch introduces the gpgrt_ functions which will be extended over
time to provide a library of commonly used code in GnuPG and
Libgcrypt.  Having them in a library named libgpg-error is a misnomer
but this way we can achieve a smooth upgrade path.

In contrasts to other GnuPG libraries, the gpgrt_ functions return a
simple gpg_err_code_t and not gpg_error_t.  The rationale for this is
that a source of error identifier does not make sense here; it is
better to use the source of error identifier of the caller.  This can
easily be achieved in a component by wrapping these function in a
gpg_error macro/inline.

There is no cross-compiling support for Posix platforms; the
gen-posix-lock-obj tool must be run on the target system.

Note that the gen-w32-lock-obj tool is not needed at build time but
was used to figure out ABI definitions for Windows.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
</feed>
