Blob Blame History Raw
Summary:        GNU Pth - The GNU Portable Threads
Name:           pth
Version:        2.0.3
Release:        1
Epoch:          0
License:        LGPL
Group:          System Environment/Libraries
URL:            http://www.gnu.org/software/pth/
Source:         ftp://ftp.gnu.org/gnu/pth/pth-%{version}.tar.gz
Source1:        ftp://ftp.gnu.org/gnu/pth/pth-%{version}.tar.gz.sig
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

%description
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 ("multithreading") inside server applications.
All threads run in the same address space of the server application,
but each thread has it's own individual program-counter, run-time
stack, signal mask and errno variable.

%package devel
Summary:        Development headers and libraries for GNU Pth
Group:          Development/Libraries
Requires:       %{name} = %{epoch}:%{version}-%{release}

%description devel
Development headers and libraries for GNU Pth.


%prep
%setup -q


%build
%configure
# this is necessary; without it make -j fails
make pth_p.h
make %{?_smp_mflags}


%check || :
make test


%install
rm -rf $RPM_BUILD_ROOT
%makeinstall
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la


%clean
rm -rf $RPM_BUILD_ROOT


%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig


%files
%defattr(-,root,root,-)
%doc ANNOUNCE AUTHORS COPYING ChangeLog HISTORY NEWS PORTING README
%doc SUPPORT TESTS THANKS USERS
%{_libdir}/*.so.*

%files devel
%defattr(-,root,root,-)
%doc HACKING
%{_bindir}/*
%{_includedir}/*
%{_libdir}/*.a
%{_libdir}/*.so
%{_mandir}/*/*
%{_datadir}/aclocal/*


%changelog
* Tue Dec 14 2004 Michael Schwendt <mschwendt[AT]users.sf.net> - 0:2.0.3-1
- Update to 2.0.3, minor and common spec adjustments + LGPL, %%check,
  use URLs for official GNU companion sites.

* Thu Oct 07 2004 Adrian Reber <adrian@lisas.de> - 0:2.0.2-0.fdr.2
- iconv-ing spec to utf8

* Wed Oct 06 2004 Adrian Reber <adrian@lisas.de> - 0:2.0.2-0.fdr.1
- Update to 2.0.2 and current Fedora guidelines.
- added workaround for make -j problem

* Sat Mar 22 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.0.0-0.fdr.1
- Update to 2.0.0 and current Fedora guidelines.
- Exclude %%{_libdir}/*.la

* Fri Feb  7 2003 Ville Skyttä <ville.skytta at iki.fi> - 1.4.1-1.fedora.1
- First Fedora release, based on Ryan Weaver's work.
- Move (most of) docs to main package.

* Mon Jan 28 2002 Ryan Weaver <ryanw@falsehope.com>
  [pth-1.4.1-1]
- Internally make sure an invalid file-descriptor (integer not
  between 0 and (FD_SETSIZE-1) does not lead to any segfaults or
  other undefined behaviour. Instead an error is returned and errno
  is set to EBADF, similar to what the OS functions do. Especially
  pth_poll() now return with this error (instead of skipping the fd)
  if an fd in the "struct pollfd" is invalid.
- Correctly support PTH_FDMODE_NONBLOCK in pth_connect and pth_accept.
- Fixed typos in manual page.
- For portability reasons changed definition of PTH_EXT_SFIO to 0/1
  instead of FALSE/TRUE because some external definitions use a
  casted value and hence make trouble on plain #if constructs.
- Fixed return value (number of occurred events) of pth_wait().
- Replaced thread-unsafe usage of a static struct iovec in
  pth_writev_ev() with a thread-safe stack/heap-based solution.
- Replaced antiquated PTH_FLAG_NOJOIN references with the correct
  PTH_ATTR_JOINABLE references in the manual page.
- Fixed a (not very subtle) bug in pth_writev_ev() that screwed up
  output if a partial write happened.
- Fixed static initializers PTH_BARRIER_INIT and PTH_COND_INIT.
- Typo fixes in pth.pod
- Upgraded to GNU shtool, version 1.5.4.
- Fixed "make striptease": pth_string.c was not included and some
  commands which were removed at all (and this way causes syntax
  errors) will be now correctly commented out with ":" commands.
- Fixed pth.pod: a closing angle bracket was missing, leading to
  incorrect POD to XXXX formatting.

* Mon Mar 26 2001 Ryan Weaver <ryanw@falsehope.com>
  [pth-1.4.0-1]
- Added PTHREAD_PRIO_XXXX definitions to pthread.h for
  conformance to the POSIX/SUSv2 Pthread API.
- Implemented the pthread_{set,get}concurrency() API parts of
  POSIX/SUSv2, although internally we are (allowed to be) free to not
  do anything based on the requested level.
- Adjusted all pthread_attr_getXXXX() functions to use a "const
  pthread_attr_t *" as the first argument instead of "pthread_attr_t
  *" to fully-conform to POSIX/SUSv2.
- Added ENOSYS-stubs for pthread_attr_{set,get}guardsize()
  to the Pthread API to be more complete with POSIX/SUSv2 specs.
- Added still missing soft system call mapping to Pth and Pthread
  APIs for functions recv(2), send(2), recvfrom(2) and sendto(2).
- Upgraded to GNU shtool 1.5.2
- Fixed an even-manager bug which causes a thread that calls
  pth_nap() to never woke up if the only elapsed event was a timer.
- Added `#define _BITS_SIGTHREAD_H' to pthread.h to avoid inclusion
  of bits/sigthread.h (from signal.h) on Linux running glibc6 2.2.
- Added support to Makefile.in for DESTDIR variable. This allows
  easier rolling of installation tarballs (for instance from within
  RPM or similar facilities) by using "make install DESTDIR=/tmp/pth".
- Implemented a pth_system(3) function which is a thread-aware
  clone of the POSIX system(2) function.
- Fixed typos in pth.pod: "fd" -> "s" for pth_connect/pth_accept.
- Make --disable-shared the default under Solaris-2.[78]/x86, because
  it is known to segfault sporadically if Pth is built as a DSO.  As
  traces showed, it is not a Pth problem, but it looks like a problem with
  the dynamic linker on Solaris/x86.  The same Solaris versions on SPARC
  don't have this problem.
- Updated copyright messages to cover new year 2001.
- Fixed quoting in configure.in
- Let pth_sleep(3) and pth_usleep(3) immediately return
  if an argument of zero is given.
- Fixed pthread.pod: the newer pod2man versions seems to dislike
  embedded comments, so I moved them to the top of the file.
- Changed CVS URL in HACKING document.
- Mention http://www.mail-archive.com/pth-users@gnu.org/ in pth.pod
  and SUPPORT document.

* Sun Jul 30 2000 Ryan Weaver <ryanw@infohwy.com>
  [pth-1.3.7-1]
- Upgraded to GNU shtool 1.5.1. This fixes especially the
  compilation problems under Solaris which were caused by a too
  unportable `shtool version' command from 1.5.0.
- Fixed (unused) pth_time_mul() function: operator & replaced by %

* Tue Jul  4 2000 Ryan Weaver <ryanw@infohwy.com>
  [pth-1.3.6-1]
- Upgraded to GNU Shtool 1.5.0
- Added OS/390 support to config.sub.
- Upgraded rse-pmt.ps paper to latest version as it was
  published on USENIX 2000.
- Upgraded to GNU libtool 1.3.5
- Allow for convinience reasons pth_usleep() to accept also
  arguments greater than 1000000.