Index: ossp-pkg/pth/ChangeLog RCS File: /v/ossp/cvs/ossp-pkg/pth/ChangeLog,v rcsdiff -q -kk '-r1.516' '-r1.517' -u '/v/ossp/cvs/ossp-pkg/pth/ChangeLog,v' 2>/dev/null --- ChangeLog 2000/07/01 08:09:23 1.516 +++ ChangeLog 2000/07/01 12:40:50 1.517 @@ -19,14 +19,14 @@ | ||__ _| __|_(_) |_|_____________________________________________________________ - Changes between 1.4a1 and 1.4a2 (16-Apr-2000 to xx-Jun-2000) + Changes between 1.4a1 and 1.4a2 (16-Apr-2000 to 01-Jul-2000) + + *) Upgraded to GNU Shtool 1.5.0 + [Ralf S. Engelschall] *) Added OS/390 support to config.sub. [Greg Ames ] - *) Upgraded to GNU Shtool 1.4.10 - [Ralf S. Engelschall] - *) Upgraded rse-pmt.ps paper to latest version as it will be published on USENIX 2000. [Ralf S. Engelschall] Index: ossp-pkg/pth/Makefile.in RCS File: /v/ossp/cvs/ossp-pkg/pth/Makefile.in,v co -q -kk -p'1.140' '/v/ossp/cvs/ossp-pkg/pth/Makefile.in,v' | diff -u /dev/null - -L'ossp-pkg/pth/Makefile.in' 2>/dev/null --- ossp-pkg/pth/Makefile.in +++ - 2024-05-09 04:45:09.583318801 +0200 @@ -0,0 +1,533 @@ +## +## GNU Pth - The GNU Portable Threads +## Copyright (c) 1999-2000 Ralf S. Engelschall +## +## 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 . +## +## Makefile.in: Pth Makefile input +## + # ``UNIX -- where you can do anything + # in two keystrokes, or less...'' +@SET_MAKE@ + +## +## ____ PATH DEFINITIONS ___________________________________________ +## + +VPATH = @srcdir@ +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ + +S = @srcdir_prefix@ +C = ./ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +bindir = @bindir@ +libdir = @libdir@ +includedir = @includedir@ +mandir = @mandir@ +datadir = @datadir@ + +## +## ____ TOOL DEFINITIONS ___________________________________________ +## + +SHELL = /bin/sh +CC = @CC@ +CPPFLAGS = @CPPFLAGS@ -I. +CFLAGS = @CFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +SHTOOL = $(srcdir)/shtool +LIBTOOL = $(C)libtool +RM = rm -f +RMDIR = rmdir +TRUE = true +CAT = cat +CP = cp +SED = sed +ECHO = echo +GZIP = gzip +GTAR = gtar +TARDY = tardy +POD2MAN = pod2man +GDB = gdb +PERL = perl + +## +## ____ TARGET DEFINITIONS _________________________________________ +## + +BATCH = @BATCH@ +PLATFORM = @PLATFORM@ +PTH_MCTX_ID = @PTH_MCTX_ID@ +PTH_STACK_GROWTH = @PTH_STACK_GROWTH@ + +TARGET_ALL = @TARGET_ALL@ +TARGET_PREQ = pth_p.h +TARGET_LIBS = libpth.la @LIBPTHREAD_LA@ +TARGET_MANS = $(S)pth-config.1 $(S)pth.3 @PTHREAD_CONFIG_1@ @PTHREAD_3@ +TARGET_TEST = test_std test_mp test_misc test_philo test_sig \ + test_select test_httpd test_sfio @TEST_PTHREAD@ + +# object files for library generation +# (order is just aesthically important) +LOBJS = pth_debug.lo pth_ring.lo pth_pqueue.lo pth_time.lo pth_errno.lo \ + pth_mctx.lo pth_tcb.lo pth_sched.lo pth_attr.lo pth_lib.lo pth_event.lo \ + pth_data.lo pth_clean.lo pth_cancel.lo pth_msg.lo pth_sync.lo pth_fork.lo \ + pth_util.lo pth_high.lo pth_syscall.lo pth_ext.lo pth_compat.lo pth_string.lo + +# source files for header generation +# (order is important and has to follow dependencies in pth_p.h) +HSRCS = $(S)pth_compat.c $(S)pth_debug.c $(S)pth_syscall.c $(S)pth_errno.c $(S)pth_ring.c $(S)pth_mctx.c \ + $(S)pth_clean.c $(S)pth_time.c $(S)pth_tcb.c $(S)pth_util.c $(S)pth_pqueue.c $(S)pth_event.c \ + $(S)pth_sched.c $(S)pth_data.c $(S)pth_msg.c $(S)pth_cancel.c $(S)pth_sync.c $(S)pth_attr.c $(S)pth_lib.c \ + $(S)pth_fork.c $(S)pth_high.c $(S)pth_ext.c $(S)pth_string.c + +## +## ____ UTILITY DEFINITIONS _________________________________________ +## + +_VERSION_FILE = \ + $(S)pth_vers.c + +_VERSION = \ + echo "updating package version"; \ + $(SHTOOL) version -lc -n 'GNU Pth' -p pth_internal_ $$OPT $(_VERSION_FILE); \ + V=`$(SHTOOL) version -lc -dlong $(_VERSION_FILE)`; \ + $(SED) -e "s/Version .*(.*)/Version $$V/g" README.n && mv README.n README; \ + V=`$(SHTOOL) version -lc -dshort $(_VERSION_FILE)`; \ + $(SED) -e "s/%define ver .*/%define ver $$V/g" pth.spec.n && mv pth.spec.n pth.spec + +_TARBALL = \ + $(SHTOOL) tarball -o $${NAME}.tar.gz -d $${NAME} -u gnu -g pth \ + -e 'CVS,\.cvsignore,\.configure,\.\#.*,\.[ao]$$' -c 'gzip --best' . + +_MANPAGE = \ + echo "Formatting $${BASENAME}.pod into $${BASENAME}.$${SEC} via $(POD2MAN)"; \ + V1=`$(SHTOOL) version -lc -dshort $(_VERSION_FILE)`; \ + V2=`$(SHTOOL) version -lc -dlong $(_VERSION_FILE)`; \ + D=`$(SHTOOL) version -lc -dlong $(_VERSION_FILE) |\ + $(SED) -e 's;.*(;;' -e 's;).*;;'`; \ + $(POD2MAN) --section=$${SEC} --center="$${ONELINE}" \ + --release="$$D" --date="$${NAME} $$V1" $(S)$${BASENAME}.pod |\ + $(SED) -e "s;PTH_VERSION_STR;$$V2;" >$${BASENAME}.$${SEC} + +_DEBUG = \ + core=""; \ + if [ -f $$TEST.core ]; then \ + core="$$TEST.core"; \ + elif [ -f core ]; then \ + core="core"; \ + fi; \ + $(LIBTOOL) --mode=execute $(GDB) $$TEST $$core + +## +## ____ END USER TARGETS ____________________________________________ +## + +# be aware of libtool when building the objects +.SUFFIXES: +.SUFFIXES: .c .o .lo +.c.o: + $(CC) -c $(CPPFLAGS) $(CFLAGS) $< +.c.lo: + $(LIBTOOL) --mode=compile --quiet $(CC) -c $(CPPFLAGS) $(CFLAGS) $< + +# the default target +all: all-normal +all-normal: $(TARGET_ALL) + @touch .done-all + @$(MAKE) $(MFLAGS) what-next +all-for-install: $(TARGET_ALL) + @touch .done-all + +# build the private shared header file +pth_p.h: $(S)pth_p.h.in + $(SHTOOL) scpp -o pth_p.h -t $(S)pth_p.h.in -Dcpp -Cintern -M '==#==' $(HSRCS) + +# build the static and possibly shared libraries +libpth.la: $(LOBJS) + $(LIBTOOL) --mode=link --quiet $(CC) -o libpth.la $(LOBJS) \ + -rpath $(libdir) -version-info `$(SHTOOL) version -lc -dlibtool $(_VERSION_FILE)` +libpthread.la: pthread.lo $(LOBJS) + $(LIBTOOL) --mode=link --quiet $(CC) -o libpthread.la pthread.lo $(LOBJS) \ + -rpath $(libdir) -version-info `$(SHTOOL) version -lc -dlibtool $(_VERSION_FILE)` + +# build the manual pages +$(S)pth-config.1: $(S)pth-config.pod $(_VERSION_FILE) + @BASENAME="pth-config"; SEC=1; \ + NAME="GNU Pth"; ONELINE="GNU Portable Threads"; \ + $(_MANPAGE) +$(S)pth.3: $(S)pth.pod $(_VERSION_FILE) + @BASENAME="pth"; SEC=3; \ + NAME="GNU Pth"; ONELINE="GNU Portable Threads"; \ + $(_MANPAGE) +$(S)pthread-config.1: $(S)pthread-config.pod $(_VERSION_FILE) + @BASENAME="pthread-config"; SEC=1; \ + NAME="GNU Pth"; ONELINE="POSIX Threading API of GNU Pth"; \ + $(_MANPAGE) +$(S)pthread.3: $(S)pthread.pod $(_VERSION_FILE) + @BASENAME="pthread"; SEC=3; \ + NAME="GNU Pth"; ONELINE="POSIX Threading API of GNU Pth"; \ + $(_MANPAGE) + +# build test program +test_std: test_std.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_std test_std.o test_common.o libpth.la $(LIBS) +test_httpd: test_httpd.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_httpd test_httpd.o test_common.o libpth.la $(LIBS) +test_misc: test_misc.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_misc test_misc.o test_common.o libpth.la $(LIBS) +test_mp: test_mp.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_mp test_mp.o test_common.o libpth.la $(LIBS) +test_philo: test_philo.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_philo test_philo.o test_common.o libpth.la $(LIBS) +test_sig: test_sig.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_sig test_sig.o test_common.o libpth.la $(LIBS) +test_select: test_select.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_select test_select.o test_common.o libpth.la $(LIBS) +test_sfio: test_sfio.o test_common.o libpth.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_sfio test_sfio.o test_common.o libpth.la $(LIBS) +test_pthread: test_pthread.o test_common.o libpthread.la + $(LIBTOOL) --mode=link --quiet $(CC) $(LDFLAGS) -o test_pthread test_pthread.o test_common.o libpthread.la $(LIBS) + +# install the package +install: all-for-install + @$(MAKE) $(MFLAGS) install-dirs install-pth @INSTALL_PTHREAD@ + @touch .done-install + @$(MAKE) $(MFLAGS) what-next +install-dirs: + $(SHTOOL) mkdir -f -p -m 755 $(prefix) + $(SHTOOL) mkdir -f -p -m 755 $(bindir) + $(SHTOOL) mkdir -f -p -m 755 $(includedir) + $(SHTOOL) mkdir -f -p -m 755 $(libdir) + $(SHTOOL) mkdir -f -p -m 755 $(mandir)/man1 + $(SHTOOL) mkdir -f -p -m 755 $(mandir)/man3 + $(SHTOOL) mkdir -f -p -m 755 $(datadir)/aclocal +install-pth: + $(SHTOOL) install -c -m 755 pth-config $(bindir)/pth-config + $(SHTOOL) install -c -m 644 $(S)pth-config.1 $(mandir)/man1/pth-config.1 + $(SHTOOL) install -c -m 644 $(S)pth.3 $(mandir)/man3/pth.3 + $(SHTOOL) install -c -m 644 $(S)pth.m4 $(datadir)/aclocal/pth.m4 + $(SHTOOL) install -c -m 644 pth.h $(includedir)/pth.h + @umask 022; $(LIBTOOL) --mode=install \ + $(SHTOOL) install -c libpth.la $(libdir)/libpth.la +install-pthread: + $(SHTOOL) install -c -m 755 pthread-config $(bindir)/pthread-config + $(SHTOOL) install -c -m 644 $(S)pthread-config.1 $(mandir)/man1/pthread-config.1 + $(SHTOOL) install -c -m 644 pthread.h $(includedir)/pthread.h + $(SHTOOL) install -c -m 644 $(S)pthread.3 $(mandir)/man3/pthread.3 + @umask 022; $(LIBTOOL) --mode=install \ + $(SHTOOL) install -c libpthread.la $(libdir)/libpthread.la + +# uninstall the package +uninstall: + @$(MAKE) $(MFLAGS) @UNINSTALL_PTHREAD@ uninstall-pth uninstall-dirs + @touch .done-uninstall + @$(MAKE) $(MFLAGS) what-next +uninstall-pthread: + $(RM) $(bindir)/pthread-config + $(RM) $(mandir)/man1/pthread-config.1 + $(RM) $(includedir)/pthread.h + $(RM) $(mandir)/man3/pthread.3 + @$(LIBTOOL) --mode=uninstall $(RM) $(libdir)/libpthread.la +uninstall-pth: + $(RM) $(bindir)/pth-config + $(RM) $(mandir)/man1/pth-config.1 + $(RM) $(mandir)/man3/pth.3 + $(RM) $(datadir)/aclocal/pth.m4 + $(RM) $(includedir)/pth.h + @$(LIBTOOL) --mode=uninstall $(RM) $(libdir)/libpth.la +uninstall-dirs: + -$(RMDIR) $(datadir)/aclocal >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(datadir) >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(mandir)/man1 >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(mandir)/man3 >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(mandir) >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(libdir) >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(includedir) >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(bindir) >/dev/null 2>&1 || $(TRUE) + -$(RMDIR) $(prefix) >/dev/null 2>&1 || $(TRUE) + +# clean the source tree for re-building +clean: + $(RM) $(TARGET_PREQ) + $(RM) $(TARGET_TEST) + $(RM) $(TARGET_LIBS) + $(RM) core *.core *.bak *~ + $(RM) *.o *.lo + $(RM) .libs/* + -$(RMDIR) .libs >/dev/null 2>&1 || $(TRUE) + $(RM) .done-* + +# clean the source tree for re-configuring and re-building +distclean: clean + $(RM) Makefile + $(RM) pth-config pth_acdef.h pth_acmac.h pth.h + $(RM) pthread-config pthread.h + $(RM) config.log config.cache config.status + $(RM) -r striptease.dir + $(RM) libtool + +# clean the source tree by removing really all generate stuff +realclean: distclean + $(RM) $(TARGET_MANS) + +# give hints what to do as the next step +what-next: + -@if [ ".$(BATCH)" != .yes ]; then \ + if [ ".$(WHEN)" != . ]; then \ + when="$(WHEN)"; \ + else \ + when="Now"; \ + fi; \ + echo ""; \ + if [ ! -f .done-all ]; then \ + cmd=`$(SHTOOL) echo -e "%Bmake%b"`; \ + echo "$$when please type \`$$cmd' to compile. Good luck."; \ + elif [ ! -f .done-test ]; then \ + cmd=`$(SHTOOL) echo -e "%Bmake test%b"`; \ + echo "$$when please type \`$$cmd' to run a quick test suite. Hope it works."; \ + elif [ ! -f .done-install ]; then \ + cmd=`$(SHTOOL) echo -e "%Bmake install%b"`; \ + echo "$$when please type \`$$cmd' to install the package."; \ + elif [ ! -f .done-uninstall ]; then \ + cmd=`$(SHTOOL) echo -e "%Bmake uninstall%b"`; \ + echo "$$when use the package (you can remove it later via \`$$cmd')."; \ + cmd=`$(SHTOOL) echo -e "%Becho \"subscribe pth-users\" | mail pth-users-request@gnu.org%b"`; \ + echo "Additionally you should consider subscribing to the GNU Pth support"; \ + echo "mailing list pth-users@gnu.org by running the following command:"; \ + echo "\`$$cmd'"; \ + else \ + echo "$$when there is nothing more you can do here... ;)"; \ + echo "There is just \`make clean' left for you."; \ + fi; \ + echo ""; \ + fi + +# execute and debug one of the test programs +test: test-std +test-std: test_std + -@./test_std; \ + if [ $$? -eq 0 ]; then \ + touch .done-test; \ + if [ ".`grep $(PLATFORM) $(S)PORTING`" = . ]; then \ + VERSION=`$(SHTOOL) version -lc -dshort $(_VERSION_FILE)`; \ + echo "Please send the following summary line via Email to the author"; \ + echo "Ralf S. Engelschall for inclusion into"; \ + echo "the list of successfully tested platforms (see PORTING file):"; \ + echo ""; \ + $(SHTOOL) echo -e "Pth: %BOK%b: %B$(PLATFORM)%b | %B$(PTH_MCTX_ID)%b | %B$(PTH_STACK_GROWTH)%b | %B$$VERSION%b"; \ + $(MAKE) $(MFLAGS) what-next WHEN="Then"; \ + else \ + $(MAKE) $(MFLAGS) what-next WHEN="Now"; \ + fi; \ + exit 0; \ + else \ + VERSION=`$(SHTOOL) version -lc -dshort $(_VERSION_FILE)`; \ + echo "Please send the following summary line together with details about"; \ + $(SHTOOL) echo -e "the configuration (%Bpth_acdef.h%b, %Bpth_acmac.h%b, %Bconfig.status%b, %Bconfig.log%b)"; \ + echo "and build/test steps (output of 'make' and 'make test') to the author"; \ + echo "Ralf S. Engelschall to help him in tracking"; \ + echo "down your platform problem."; \ + echo ""; \ + $(SHTOOL) echo -e "Pth: %BFAILED%b: %B$(PLATFORM)%b | %B$(PTH_MCTX_ID)%b | %B$(PTH_STACK_GROWTH)%b | %B$$VERSION%b"; \ + echo ""; \ + exit 1; \ + fi +test-httpd: test_httpd + ./test_httpd +test-mp: test_mp + ./test_mp +test-misc: test_misc + ./test_misc +test-philo: test_philo + ./test_philo +test-sig: test_sig + ./test_sig +test-select: test_select + ./test_select +test-sfio: test_sfio + ./test_sfio +test-pthread: test_pthread + ./test_pthread + +# GNU compat targets +check: test +installcheck: +installdirs: install-dirs +install-strip: install +mostlyclean: clean +maintainer-clean: realclean +info: +dvi: +TAGS: + +## +## ____ DEVELOPER TARGETS ___________________________________________ +## (THIS IS NOT INTENDED TO BE RUN BY END USERS) +## + +# fixup the permissions in the source tree +fixperm: + @echo "Fixing permissions in source tree" + @$(SHTOOL) fixperm * + +# update Autoconf files +update-autoconf: configure pth_acdef.h.in +configure: configure.in + $(RM) configure + autoconf +pth_acdef.h.in: configure.in acconfig.h acheader.m4 + $(RM) pth_acdef.h.in + cat acheader.m4 configure.in | autoheader - >pth_acdef.h.in + +# update build tools +update-tools: + @$(RM) shtool ltmain.sh ltconfig + @$(MAKE) $(MFLAGS) shtool ltmain.sh ltconfig +shtool: + shtoolize -o shtool echo version scpp mkdir install fixperm tarball +ltmain.sh: + @F=`libtoolize -n -c -f | grep 'cp.*ltmain.sh' |\ + $(SED) -e 's;[^/]*;;' -e 's; .*;;'`; \ + $(ECHO) "ltmain.sh <-- $$F"; cat $$F |\ + $(SED) -e 's:/bin/sh; then:/bin/sh || test ".`$(ECHO) $$nonopt | grep shtool`" != .;then:' \ + -e 's:exec \$$SHELL \$$0 --finish:exit 0 #:' >ltmain.sh +ltconfig: + @F=`libtoolize -n -c -f | grep 'cp.*ltconfig' | $(SED) -e 's;[^/]*;;' -e 's; .*;;'`; \ + $(ECHO) "ltconfig <-- $$F"; $(CAT) $$F >ltconfig + +# debug the test programs +debug: debug-std +debug-std: test_std + TEST=test_std && $(_DEBUG) +debug-httpd: test_httpd + TEST=test_httpd && $(_DEBUG) +debug-mp: test_mp + TEST=test_mp && $(_DEBUG) +debug-misc: test_misc + TEST=test_misc && $(_DEBUG) +debug-philo: test_philo + TEST=test_philo && $(_DEBUG) +debug-sig: test_sig + TEST=test_sig && $(_DEBUG) +debug-select: test_select + TEST=test_select && $(_DEBUG) +debug-sfio: test_sfio + TEST=test_sfio && $(_DEBUG) +debug-pthread: test_pthread + TEST=test_pthread && $(_DEBUG) + +# roll the release or snapshot tarball +dist: distclean fixperm + @V=`$(SHTOOL) version -l c -d short $(_VERSION_FILE)`; NAME="pth-$$V"; \ + $(ECHO) "Rolling RELEASE tarball $$NAME.tar.gz"; $(_TARBALL) +snap: distclean fixperm + @V=`$(SHTOOL) version -l c -d short $(_VERSION_FILE)`; NAME="pth-$$V-SNAP"; \ + $(ECHO) "Rolling SNAPSHOT tarball $$NAME.tar.gz"; $(_TARBALL) + +# increase or update version information +new-version: + @V="$(VERSION)"; \ + if [ ".$$V" != . ]; then \ + OPT="-s$$V"; \ + else \ + OPT="-e"; \ + fi; \ + $(_VERSION) +update-version: + @OPT="-s`$(SHTOOL) version -lc -dshort $(_VERSION_FILE)`" && $(_VERSION) + +# make a striptease +striptease: + @$(PERL) striptease.pl + +# create dependencies +depend: + $(CP) Makefile.in Makefile.in.bak \ + && $(SED) -ne '1,/^# DO NOT REMOVE/p' Makefile.in > Makefile.new \ + && $(CC) -MM $(CPPFLAGS) $(CFLAGS) *.c |\ + $(SED) -e 's/^\(pth_.*\)\.o:/\1.lo:/' >> Makefile.new \ + && $(CP) Makefile.new Makefile.in \ + && $(RM) Makefile.new + +## +## ____ DEPENDENCY AREA ____________________________________________ +## (AUTOMATICALLY UPDATED - DO NOT EDIT) +## + +$(LOBJS): Makefile + +# DO NOT REMOVE +pth_attr.lo: pth_attr.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_cancel.lo: pth_cancel.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_clean.lo: pth_clean.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_compat.lo: pth_compat.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_data.lo: pth_data.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_debug.lo: pth_debug.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_errno.lo: pth_errno.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_event.lo: pth_event.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_ext.lo: pth_ext.c pth_p.h pth_vers.c pth.h pth_acdef.h pth_acmac.h +pth_fork.lo: pth_fork.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_high.lo: pth_high.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_lib.lo: pth_lib.c pth_p.h pth_vers.c pth.h pth_acdef.h pth_acmac.h +pth_mctx.lo: pth_mctx.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_msg.lo: pth_msg.c pth_p.h pth_vers.c pth.h pth_acdef.h pth_acmac.h +pth_pqueue.lo: pth_pqueue.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_ring.lo: pth_ring.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_sched.lo: pth_sched.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_sync.lo: pth_sync.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_syscall.lo: pth_syscall.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_tcb.lo: pth_tcb.c pth_p.h pth_vers.c pth.h pth_acdef.h pth_acmac.h +pth_time.lo: pth_time.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_util.lo: pth_util.c pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +pth_vers.lo: pth_vers.c +pthread.o: pthread.c pthread.h pth_p.h pth_vers.c pth.h pth_acdef.h \ + pth_acmac.h +test_common.o: test_common.c pth.h test_common.h +test_httpd.o: test_httpd.c pth.h test_common.h +test_misc.o: test_misc.c pth.h +test_mp.o: test_mp.c pth.h test_common.h +test_philo.o: test_philo.c pth.h test_common.h +test_pthread.o: test_pthread.c pthread.h +test_select.o: test_select.c pth.h +test_sfio.o: test_sfio.c pth.h +test_sig.o: test_sig.c pth.h +test_std.o: test_std.c pth.h Index: ossp-pkg/pth/README RCS File: /v/ossp/cvs/ossp-pkg/pth/README,v co -q -kk -p'1.185' '/v/ossp/cvs/ossp-pkg/pth/README,v' | diff -u /dev/null - -L'ossp-pkg/pth/README' 2>/dev/null --- ossp-pkg/pth/README +++ - 2024-05-09 04:45:09.586653432 +0200 @@ -0,0 +1,83 @@ + ____ _ _ + | _ \| |_| |__ + | |_) | __| '_ \ ``Only those who attempt + | __/| |_| | | | the absurd can achieve + |_| \__|_| |_| the impossible.'' + + GNU Pth - The GNU Portable Threads + Version 1.4a2 (01-Jul-2000) + + ABSTRACT + + 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 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 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. + + Finally, Pth guarranties its fixed set of API functionality on + all platforms, i.e., functions like pth_poll(3), pth_readv(3) or + pth_writev(3) are always available, even if the particular underlaying + platform does not actually support their functionality (through the + system calls poll(2), readv(2), writev(2), etc). + + Although Pth is very feature-rich, it is a rather small threading + library. It consists only of approximately 7,000 line (or 300 KB) of + ANSI C code which are auto-configured with approximately 400 lines (or + 60 KB) of Autoconf/m4 macros and which are documented by approximately + 3,000 lines (or 150 KB) of documentation. Additionally the sources + are documented with approximately 3,600 additional lines of comments. + As a result, the whole source tree is just about 1.5 MB in size and + fits into a small tarball less than 350 KB in size. This allows Pth to + fit very well even into the source tree of other applications without + bloating it up very much. + + Pth was successfully tested on FreeBSD, NetBSD, OpenBSD, BSDI, + GNU/Linux, Solaris, HPUX, Tru64 (OSF/1), AIX, IRIX, UnixWare, SCO + OpenServer, SINIX, ReliantUNIX, ISC, AmigaOS, Rhapsody (MacOS X), FTX, + AUX and Win32/Cygwin. And it should should automatically adjust itself + to remaining Unix platforms, too. + + COPYRIGHT AND LICENSE + + Copyright (c) 1999-2000 Ralf S. Engelschall + + 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 (see file COPYING); if not, write + to the Free Software Foundation, Inc., 59 Temple Place, Suite + 330, Boston, MA 02111-1307 USA, or contact Ralf S. Engelschall + . + + HOME AND DOCUMENTATION + + The documentation and latest release can be found on + + http://www.gnu.org/software/pth/ + ftp://ftp.gnu.org/gnu/pth/ + Ralf S. Engelschall + rse@engelschall.com + www.engelschall.com Index: ossp-pkg/pth/aclocal.m4 RCS File: /v/ossp/cvs/ossp-pkg/pth/aclocal.m4,v co -q -kk -p'1.86' '/v/ossp/cvs/ossp-pkg/pth/aclocal.m4,v' | diff -u /dev/null - -L'ossp-pkg/pth/aclocal.m4' 2>/dev/null --- ossp-pkg/pth/aclocal.m4 +++ - 2024-05-09 04:45:09.589562906 +0200 @@ -0,0 +1,1639 @@ +dnl ## +dnl ## GNU Pth - The GNU Portable Threads +dnl ## Copyright (c) 1999-2000 Ralf S. Engelschall +dnl ## +dnl ## This file is part of GNU Pth, a non-preemptive thread scheduling +dnl ## library which can be found at http://www.gnu.org/software/pth/. +dnl ## +dnl ## This library is free software; you can redistribute it and/or +dnl ## modify it under the terms of the GNU Lesser General Public +dnl ## License as published by the Free Software Foundation; either +dnl ## version 2.1 of the License, or (at your option) any later version. +dnl ## +dnl ## This library is distributed in the hope that it will be useful, +dnl ## but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl ## Lesser General Public License for more details. +dnl ## +dnl ## You should have received a copy of the GNU Lesser General Public +dnl ## License along with this library; if not, write to the Free Software +dnl ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +dnl ## USA, or contact Ralf S. Engelschall . +dnl ## +dnl ## aclocal.m4: Pth Autoconf macros +dnl ## +divert(-1) + dnl # ``"Reuse an expert's code" is the right + dnl # advice for most people. But it's a useless + dnl # advice for the experts writing the code + dnl # in the first place.' + dnl # -- Dan J. Bernstein + +dnl ## +dnl ## Display Configuration Headers +dnl ## +dnl ## configure.in: +dnl ## AC_MSG_PART() +dnl ## + +define(AC_MSG_PART,[dnl +if test ".$enable_subdir" != .yes; then + AC_MSG_RESULT() + AC_MSG_RESULT(${TB}$1:${TN}) +fi +])dnl + +dnl ## +dnl ## Display a message under --verbose +dnl ## +dnl ## configure.in: +dnl ## AC_MSG_VERBOSE() +dnl ## + +define(AC_MSG_VERBOSE,[dnl +if test ".$verbose" = .yes; then + AC_MSG_RESULT([ $1]) +fi +]) + +dnl ## +dnl ## Do not display message for a command +dnl ## +dnl ## configure.in: +dnl ## AC_MSG_SILENT(...) +dnl ## + +define(AC_FD_TMP, 9) +define(AC_MSG_SILENT,[dnl +exec AC_FD_TMP>&AC_FD_MSG AC_FD_MSG>/dev/null +$1 +exec AC_FD_MSG>&AC_FD_TMP AC_FD_TMP>&- +]) + +dnl ## +dnl ## Perform something only once +dnl ## +dnl ## configure.in: +dnl ## AC_ONCE() +dnl ## + +define(AC_ONCE,[ +ifelse(ac_once_$1, already_done, ,[ + define(ac_once_$1, already_done) + $2 +])dnl +]) + +dnl ## +dnl ## Support for $(S) +dnl ## +dnl ## configure.in: +dnl ## AC_SRCDIR_PREFIX() +dnl ## + +AC_DEFUN(AC_SRCDIR_PREFIX,[ +ac_prog=[$]0 +changequote(, )dnl +ac_srcdir=`echo $ac_prog | sed -e 's%/[^/][^/]*$%%' -e 's%\([^/]\)/*$%\1%'` +changequote([, ])dnl +if test ".$ac_srcdir" = ".$ac_prog"; then + ac_srcdir="" +elif test "x$ac_srcdir" = "x."; then + ac_srcdir="" +else + if test ".$CFLAGS" = .; then + CFLAGS="-I$ac_srcdir" + else + CFLAGS="$CFLAGS -I$ac_srcdir" + fi + ac_srcdir="$ac_srcdir/" +fi +$1="$ac_srcdir" +AC_SUBST($1) +])dnl + +dnl ## +dnl ## Support for --enable-subdir (for use with pth.m4) +dnl ## +dnl ## configure.in: +dnl ## AC_ENABLESUBDIR +dnl ## + +AC_DEFUN(AC_ENABLESUBDIR,[ +AC_ARG_ENABLE(subdir,dnl +[ --enable-subdir enable local building as subdirectory (default=no)],[dnl +],[dnl +enable_subdir=no +])dnl +if test ".$enable_subdir" = .yes; then + enable_batch=yes + enable_shared=no +fi +])dnl + +dnl ## +dnl ## Support for Configuration Headers +dnl ## +dnl ## configure.in: +dnl ## AC_HEADLINE(, , +dnl ## , , +dnl ## ) +dnl ## + +AC_DEFUN(AC_HEADLINE,[dnl +AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl +# configuration header +if test ".`echo dummy [$]@ | grep enable-subdir`" != .; then + enable_subdir=yes +fi +if test ".`echo dummy [$]@ | grep help`" = .; then + # bootstrapping shtool + ac_prog=[$]0 +changequote(, )dnl + ac_srcdir=`echo $ac_prog | sed -e 's%/[^/][^/]*$%%' -e 's%\([^/]\)/*$%\1%'` +changequote([, ])dnl + test ".$ac_srcdir" = ".$ac_prog" && ac_srcdir=. + ac_shtool="${CONFIG_SHELL-/bin/sh} $ac_srcdir/shtool" + + # find out terminal sequences + if test ".$enable_subdir" != .yes; then + TB=`$ac_shtool echo -n -e %B 2>/dev/null` + TN=`$ac_shtool echo -n -e %b 2>/dev/null` + else + TB='' + TN='' + fi + + # find out package version + $3_STR="`$ac_shtool version -lc -dlong $ac_srcdir/$4`" + AC_SUBST($3_STR) + + # friendly header ;) + if test ".$enable_subdir" != .yes; then + echo "Configuring ${TB}$1${TN} ($2), Version ${TB}${$3_STR}${TN}" + echo "$5" + fi + + # additionally find out hex version + $3_HEX="`$ac_shtool version -lc -dhex $ac_srcdir/$4`" + AC_SUBST($3_HEX) +fi +AC_DIVERT_POP() +])dnl + +dnl ## +dnl ## Support for Platform IDs +dnl ## +dnl ## configure.in: +dnl ## AC_PLATFORM() +dnl ## + +AC_DEFUN(AC_PLATFORM,[ +if test ".$host" != .NONE; then + $1="$host" +elif test ".$nonopt" != .NONE; then + $1="$nonopt" +else + $1=`${CONFIG_SHELL-/bin/sh} $srcdir/config.guess` +fi +$1=`${CONFIG_SHELL-/bin/sh} $srcdir/config.sub $$1` || exit 1 +AC_SUBST($1) +if test ".$enable_subdir" != .yes; then + echo "Platform: ${TB}${$1}${TN}" +fi +])dnl + +dnl ## +dnl ## Support for config.param files +dnl ## +dnl ## configure.in: +dnl ## AC_CONFIG_PARAM() +dnl ## + +AC_DEFUN(AC_CONFIG_PARAM,[ +AC_DIVERT_PUSH(-1) +AC_ARG_WITH(param,[ --with-param=ID[,ID,..] load parameters from $1]) +AC_DIVERT_POP() +AC_DIVERT_PUSH(AC_DIVERSION_NOTICE) +ac_prev="" +ac_param="" +if test -f $1; then + ac_param="$1:common" +fi +for ac_option +do + if test ".$ac_prev" != .; then + eval "$ac_prev=\$ac_option" + ac_prev="" + continue + fi + case "$ac_option" in + -*=*) ac_optarg=`echo "$ac_option" | sed 's/[[-_a-zA-Z0-9]]*=//'` ;; + *) ac_optarg="" ;; + esac + case "$ac_option" in + --with-param=* ) + case $ac_optarg in + *:* ) + ac_from=`echo $ac_optarg | sed -e 's/:.*//'` + ac_what=`echo $ac_optarg | sed -e 's/.*://'` + ;; + * ) + ac_from="$1" + ac_what="$ac_optarg" + ;; + esac + if test ".$ac_param" = .; then + ac_param="$ac_from:$ac_what" + else + ac_param="$ac_param,$ac_from:$ac_what" + fi + ;; + esac +done +if test ".$ac_param" != .; then + # echo "loading parameters" + OIFS="$IFS" + IFS="," + pconf="/tmp/autoconf.$$" + echo "ac_options=''" >$pconf + ac_from="$1" + for ac_section in $ac_param; do + changequote(, ) + case $ac_section in + *:* ) + ac_from=`echo "$ac_section" | sed -e 's/:.*//'` + ac_section=`echo "$ac_section" | sed -e 's/.*://'` + ;; + esac + (echo ''; cat $ac_from; echo '') |\ + sed -e "1,/[ ]*[ ]*${ac_section}[ ]*{[ ]*/d" \ + -e '/[ ]*}[ ]*/,$d' \ + -e ':join' -e '/\\[ ]*$/N' -e 's/\\[ ]*\n[ ]*//' -e 'tjoin' \ + -e 's/^[ ]*//g' \ + -e 's/^\([^-].*=.*\) IF \(.*\)$/if \2; then \1; fi/' \ + -e 's/^\(--.*=.*\) IF \(.*\)$/if \2; then ac_options="$ac_options \1"; fi/' \ + -e 's/^\(--.*\) IF \(.*\)$/if \2; then ac_options="$ac_options \1"; fi/' \ + -e 's/^\(--.*=.*\)$/ac_options="$ac_options \1"/' \ + -e 's/^\(--.*\)$/ac_options="$ac_options \1"/' \ + >>$pconf + changequote([, ]) + done + IFS="$OIFS" + . $pconf + rm -f $pconf >/dev/null 2>&1 + if test ".[$]*" = .; then + set -- $ac_options + else + set -- "[$]@" $ac_options + fi +fi +AC_DIVERT_POP() +])dnl + +dnl ## +dnl ## Check whether compiler option works +dnl ## +dnl ## configure.in: +dnl ## AC_COMPILER_OPTION(, ,