____ _ _
| _ \| |_| |__
| |_) | __| '_ \ ``Only those who attempt
| __/| |_| | | | the absurd can achieve
|_| \__|_| |_| the impossible.''
GNU Pth - The GNU Portable Threads
Pth is a very portable POSIX/ANSI-C based library for Unix platforms
which provides non-preemptive priority-based scheduling for multiple
threads of execution (aka "multi-threading") inside event-driven
applications. All threads run in the same address space of the server
application, but each thread has its own individual program-counter,
run-time stack, signal mask and errno variable.
The thread scheduling itself is done in a cooperative way, i.e., the
threads are managed and dispatched by a priority- and event-driven
non-preemptive scheduler. The intention is that this way both better
portability and run-time performance is achieved than with preemptive
scheduling. The event facility allows threads to wait until various
types of internal and external events occur, including pending I/O on
file descriptors, asynchronous signals, elapsed timers, pending I/O
on message ports, thread and process termination, and even results of
customized callback functions.
Pth also provides an optional emulation API for POSIX.1c threads
("Pthreads") which can be used for backward compatibility to existing
NEW IN PTH 2.0
Pth 2.0 provides more strict POSIX.1-2001/SUSv3 compliant wrapper
functions in its high-level I/O API. Most notable, the implementations
of pth_poll(3) and pth_select(3) were completely worked off in order
to achieve POSIX semantics. A Pth variant of the new POSIX pselect(2)
function was introduced, too.
Pth now has support for arbitrary (usually higher than the default)
FD_SETSIZE values to support larger-scale server applications.
A new environment attribute PTH_ATTR_DISPATCHES allows the application
to query the total number of machine context dispatches Pth performed
since the last attribute reset.
Pth's internal machine context implementation is now exported in a
sub-API pth_uctx in order to allow applications to use raw user-space
context switching. This can be used to implement co-routines,
exception handling or even an alternative multi-threading environment
with the help of Pth.
The "hard syscall mapping" functionality was completely rewritten
from scratch. Previously, the internal system call exit points were
based on syscall(2) only. This was problematic because it by-passed
the C library glue code which often performs necessary glue code in
order to call the code in the kernel correctly. Now the internal exit
points are based on a by-system-call dynamically selected combination
of RTLD_NEXT+dlsym(2), dlopen(2)+dlsym(2) and the known syscall(2) (in
this fallback order). This way the "hard syscall mapping" became a lot
more portable and flexible.
Optional support for OSSP ex based exception handling was added which
allows ISO C applications to use fully multi-threading aware ISO C++
style exception handling.
Finally, the Pth build environment was upgraded to be now based on GNU
autoconf 2.57, GNU shtool 1.6.2 and GNU libtool 1.4.3.
More details about Pth can be found at the following locations from
the GNU and OSSP projects:
o GNU: http://www.gnu.org/software/pth/
o GNU: ftp://ftp.gnu.org/gnu/pth/
o OSSP: http://www.ossp.org/pkg/lib/pth/
o OSSP: ftp://ftp.ossp.org/pkg/lib/pth/
Ralf S. Engelschall
The last couple of releases seemed to have some configury
issues, especially on BSD-derived platforms. As I've found
time, I've tried to address these, especially for OpenBSD
and Darwin. So, after much travail, I am happy to announce
the latest release: 5.5.2
=== Admin stuff:
Mohit - could you please install the new documentation, too?
My updated gnu.org web site now references entries in the
new docs. I've stashed the tarball here:
Someone at Red Hat - could you please install a tarball in
the "infrastructure" slot? I don't have shell access to
sources.cygnus.com anymore. In fact, my guess is I still
have an autogen build tree sitting in my home directory
on that box. You may as well purge that, too.... :-)
Thanks! - Bruce
it took a little longer as expected but good things take time and we
hope you will like the new development release available from:
Here's the list of changes for this release:
Overview of Changes in GIMP 1.3.12
- Improved and cleaned up undo system [Mitch]
- Added hooks for plug-in debugging [Yosh]
- Redesigned the tool options code [Mitch]
- Converted the API reference to DocBook XML [Sven]
- Lots of text tool changes [Sven]
- Factored common code out of a number of plug-ins [Maurits]
- Cleaned up and improved the code that handles the plug-ins [Mitch]
- Finished colorblindness display filter using the algorithm contributed
by Alex Wade and Robert Dougherty.
- Updated the gimprc man-page, or actually, wrote a tool that does it [Sven]
- Improved the code that handles all the menus [Mitch]
- Added new PSD save plug-in [Bolsh]
- Added back SphereDesigner plug-in [Sven]
- More plug-ins cleaned up [Maurits, Sven]
- Reorganized startup code [Yosh]
- Portability fixes for 64bit platforms [Yosh, Sven]
- Handle large swap files (>2GB) [Sven]
- Updates to the Win32 build system [Tor Lillqvist, Hans Breuer]
- More work on the vectors tool [Simon, Mitch]
- Lots of bug fixes
Garry R. Osgood, Jakub Steiner, Simon Budig, Henrik Brix Andersen,
Akkana, Carol Spears, Seth Burgess, Nathan Summers, David Necas,
Cameron Gregory, Larry Ewing
Thanks to everyone who contributed.
GNU Automake 1.7.3
We're pleased to announce the release of Automake 1.7.3
Automake is a tool for automatically generating `Makefile.in's
suitable for use with Autoconf, compliant with the GNU Makefile
standards, and portable to various make implementations.
This is a bug fix release. The list of bug fixes is appended.
You can find the new release here:
Soon it will also appear on the sources and GNU mirrors listed here:
Here are the MD5 checksums:
Please report bugs to <firstname.lastname@example.org>.
- Akim, Alexandre, and Tom
Bugs fixed in 1.7.3:
* Fix stamp files numbering (when using multiple AC_CONFIG_HEADERS).
* Query distutils for `pythondir' and `pythonexecdir', instead of
using an hardcoded path. This should allow builds on 64-bit
distributions that usually use lib64/ instead of lib/.
* AM_PATH_PYTHON will also search for python2.3.
* elisp files are now built all at once instead of one by one. Besides
incurring a speed-up, this is required to support interdependent elisp fi=
* Support for DJGPP:
- `make distcheck' will now work in `_inst/' and `_build' instead
of `=3Dinst/' and `=3Dbuild/'
- use `_dirstamp' when the file-system doesn't support `.dirstamp'
- install/uninstall `*.i[0-9][0-9]'-style info files
- more changes that affect only the Automake package (not its output)
* Fix some incompatibilities with upcoming perl-5.10.
* Properly quote AC_PACKAGETARNAME and ACPACKAGE_VERSION when defining
PACKAGE and VERSION.
* depcomp fixes:
- dashmstdout and dashXmstdout modes: don't use `-o /dev/null', this
is troublesome with gcc and Solaris compilers. (PR/385)
- makedepend mode: work with Libtool. (PR/385 too)
- support for ICC.
* better support for unusual gettext setups, such as multiple po/ directori=
- Flag missing po/ and intl/ directories as warnings, not errors.
- Disable these warnings if po/ does not exist.
* Noteworthy manual updates:
- New FAQ chapter.
- Document how AC_CONFIG_AUX_DIR interacts with missing files.
(Debian Bug #39542)
- Document `AM_YFLAGS =3D -d'. (PR/382)
The Mailutils team is pleased to announce the 0.3 release of GNU Mailutils.
The release is available by anonymous FTP from:
and from mirrors worldwide -- see <http://www.gnu.org/order/ftp.html>;.
The md5 checksums of the files are:
GNU Mailutils is a collection of utilities for handling electronic mail.
It contains a series of useful mail clients and servers built around
the single core library.
Specifically, the package contains a pop3, an imap4 server, and a sieve
mail filter. It also provides a POSIX `mailx' client, and a collection of
other tools. All programs are capable of reading and storing mail in a
variety of formats.
More information about the package is available from the following
Please email bugs or suggestions to <email@example.com>.
New in this release:
* Added NLS support. Currently Catalan and Spanish translations
* The libsieve supports relational tests according to RFC 3431.
The syntax of multiline strings is extended. It is possible
to use arbitrary ending delimiter instead of the default dot,
and to strip off the leading tabs, which allows for natural
indentation of the multiline strings.
* imap4d: Added support for TLS (using GnuTLS) and GSASL (using GNU SASL).
The untagged output was fixed to conform to the RFC 2060. Specifically,
the output of STORE command is corrected in accordance with the
rfc2060-errata document; the EXIST and RECENT untagged are always
returned by EXAMINE, SELECT, and NOOP.
Implemented LOGINDISABLED capability and IDLE command (RFC 2177).
* pop3d: Added TLS support.
* mail: Fixed error diagnostics and removed startup banner.
* mh: The basic MH utilities are implemented that allow to use the
package with the GNU Emacs mh-e module.