GnuPG master migrated to nPth
Werner Koch
wk at gnupg.org
Wed Jan 25 17:04:48 CET 2012
Hi,
I merged the npth branch of GnuPG into master. Thus there is no more
need for GNU Pth. The drawback is that you need to build and install
the replacement library nPth. There are no tarballs yet, thus you need
to get that library from its GIT repo:
git clone git://git.gnupg.org/npth.git
you will also need the latest version of libassuan:
git clone git://git.gnupg.org/libassuan.git
Q: What is nPth?
A: nPth - The New GNU Portable Threads Library
This is a library to provide the GNU Pth API and thus a
non-preemptive threads implementation.
In contrast to GNU Pth is is based on the system's standard threads
implementation. This allows the use of libraries which are not
compatible to GNU Pth. Experience with a Windows Pth emulation
showed that this is a solid way to provide a co-routine based
framework.
Q: For what system is nPth available?
A: As of now nPth provides support for pthread based systems and
Windows. Support for other threading implementations is not planned,
but can be done. The only tested platforms are GNU/Linux systems; it
has not yet been tested on *BSD systems. The support for Windows is
implemented but not well tested. nPth is a small library and easy to
port to other systems.
Q: Why did you drop GNU Pth?
A: Almost all systems these days have reliable native thread support
thus we should make use of it. We did it for Windows anyway (via our
w32pth). The use of GNU Pth is troublesome if you need to link to
libraries which require pthread. There are also some problems with
GNU Pth on certain systems (iirc, HP/UX). Further, GNU Pth is not
anymore used by many projects. Debian Sid lists only zhcon (Fast
console CJK system using FrameBuffer) as another user of it.
Salam-Shalom,
Werner
--
Die Gedanken sind frei. Ausnahmen regelt ein Bundesgesetz.
More information about the Gnupg-devel
mailing list