*** /dev/null Sat Nov 23 01:34:35 2024
--- - Sat Nov 23 01:34:51 2024
***************
*** 0 ****
--- 1,111 ----
+ ##
+ ## GNU Pth - The GNU Portable Threads
+ ## Copyright (c) 2000 Ralf S. Engelschall <rse@engelschall.com>
+ ##
+ ## This file is part of GNU Pth, a non-preemptive thread scheduling
+ ## library which can be found at http://www.gnu.org/software/pth/.
+ ##
+ ## This library 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.
+ ##
+ ## This library 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 library; if not, write to the Free Software
+ ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ ## USA, or contact Ralf S. Engelschall <rse@engelschall.com>.
+ ##
+ ## pth.spec: RPM specification
+ ##
+
+ # This is a specification file for the RedHat Package Manager (RPM).
+ # It is part of the Pth source tree and this way directly included in
+ # Pth distribution tarballs. This way one can use a simple `rpm -tb
+ # pth-1.X.Y.tar.gz' command to build binary RPM packages from a Pth
+ # distribution tarball.
+
+ %define prefix /usr
+ %define ver 1.4a3
+ %define rel 1
+
+ Name: pth
+ Version: %{ver}
+ Release: %{rel}
+ Group: System Environment/Libraries
+ Copyright: LGPL
+ URL: http://www.gnu.org/software/pth/
+ Summary: GNU Pth - The GNU Portable Threads
+
+ Source: ftp://ftp.gnu.org/gnu/pth/pth-%{ver}.tar.gz
+ BuildRoot: /tmp/pth-%{ver}-root
+
+ %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 (aka ``multithreading'') inside event-driven 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.
+
+ The thread scheduling itself is done in a cooperative way, i.e., the
+ threads are managed by a priority- and event-based non-preemptive
+ scheduler. The intention is that this way one can achieve better
+ portability and run-time performance than with preemptive scheduling. The
+ event facility allows threads to wait until various types of events occur,
+ including pending I/O on filedescriptors, asynchronous signals, elapsed
+ timers, pending I/O on message ports, thread and process termination, and
+ even customized callback functions.
+
+ Additionally Pth provides an optional emulation API for POSIX.1c threads
+ ("Pthreads") which can be used for backward compatibility to existing
+ multithreaded applications.
+
+ %package devel
+ Summary: GNU Pth development package
+ Group: Development/Libraries
+ Requires: pth = %{ver}
+
+ %description devel
+ Headers, static libraries, and documentation for GNU Portable Threads.
+
+ %prep
+
+ %setup
+
+ %build
+ CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --enable-batch --enable-optimize --enable-syscall-soft
+ make
+ make test
+
+ %install
+ rm -rf $RPM_BUILD_ROOT
+ make install prefix=$RPM_BUILD_ROOT%{prefix}
+
+ %clean
+ rm -rf $RPM_BUILD_ROOT
+
+ %post -p /sbin/ldconfig
+
+ %postun -p /sbin/ldconfig
+
+ %files
+ %defattr(-,root,root)
+ %doc ANNOUNCE AUTHORS COPYING ChangeLog HACKING HISTORY INSTALL NEWS PORTING README SUPPORT TESTS THANKS USERS
+ %{prefix}/lib/libpth.so
+ %{prefix}/lib/libpth.so.*
+
+ %files devel
+ %defattr(-,root,root)
+ %{prefix}/bin/pth-config
+ %{prefix}/include/pth.h
+ %{prefix}/lib/libpth.a
+ %{prefix}/lib/libpth.la
+ %{prefix}/man/man1/pth-config.1
+ %{prefix}/man/man3/pth.3
+ %{prefix}/share/aclocal/pth.m4
+
|