Index: ossp-pkg/pth/ChangeLog RCS File: /v/ossp/cvs/ossp-pkg/pth/ChangeLog,v rcsdiff -q -kk '-r1.488.2.9' '-r1.488.2.10' -u '/v/ossp/cvs/ossp-pkg/pth/ChangeLog,v' 2>/dev/null --- ChangeLog 2000/07/01 14:07:10 1.488.2.9 +++ ChangeLog 2000/07/29 14:57:14 1.488.2.10 @@ -19,6 +19,18 @@ | |_ ___) | __|_(_)____/____________________________________________________________ + Changes between 1.3.6 and 1.3.7 (01-Jul-2000 to 29-Jul-2000) + + *) Backport from GNU Pth 1.4a3: + 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. + [Ralf S. Engelschall] + + *) Backport from GNU Pth 1.4a3: + Fixed (unused) pth_time_mul() function: operator & replaced by % + [Tim Harris ] + Changes between 1.3.5 and 1.3.6 (17-Apr-2000 to 01-Jul-2000) *) Backport from GNU Pth 1.4a2: Index: ossp-pkg/pth/pth.3 RCS File: /v/ossp/cvs/ossp-pkg/pth/Attic/pth.3,v rcsdiff -q -kk '-r1.208.2.5' '-r1.208.2.6' -u '/v/ossp/cvs/ossp-pkg/pth/Attic/pth.3,v' 2>/dev/null --- pth.3 2000/07/01 14:07:10 1.208.2.5 +++ pth.3 2000/07/29 14:57:14 1.208.2.6 @@ -2,7 +2,7 @@ ''' $RCSfile$$Revision$$Date$ ''' ''' $Log$ -''' Revision 1.208.2.5 2000/07/01 14:07:10 rse +''' Revision 1.208.2.6 2000/07/29 14:57:14 rse ''' *** empty log message *** ''' ''' @@ -96,7 +96,7 @@ .nr % 0 .rr F .\} -.TH pth 3 "01-Jul-2000" "GNU Pth 1.3.5" "GNU Portable Threads" +.TH pth 3 "01-Jul-2000" "GNU Pth 1.3.6" "GNU Portable Threads" .UC .if n .hy 0 .if n .na @@ -193,7 +193,7 @@ .SH "NAME" \fBpth\fR \- GNU Portable Threads .SH "VERSION" -GNU Pth 1.3.5 (01-Jul-2000) +GNU Pth 1.3.6 (01-Jul-2000) .SH "SYNOPSIS" .Ip "\fBGlobal Library Management\fR" 4 pth_init, Index: ossp-pkg/pth/pth_time.c RCS File: /v/ossp/cvs/ossp-pkg/pth/pth_time.c,v co -q -kk -p'1.24.2.1' '/v/ossp/cvs/ossp-pkg/pth/pth_time.c,v' | diff -u /dev/null - -L'ossp-pkg/pth/pth_time.c' 2>/dev/null --- ossp-pkg/pth/pth_time.c +++ - 2024-05-15 09:10:33.236815878 +0200 @@ -0,0 +1,182 @@ +/* +** 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 . +** +** pth_time.c: Pth time calculations +*/ + /* ``Real programmers confuse + Christmas and Halloween + because DEC 25 = OCT 31.'' + -- Unknown */ +#include "pth_p.h" + +#if cpp +#define PTH_TIME_NOW (pth_time_t *)(0) +#define PTH_TIME_ZERO &pth_time_zero +#define PTH_TIME(sec,usec) { sec, usec } +#define pth_time_equal(t1,t2) \ + (((t1).tv_sec == (t2).tv_sec) && ((t1).tv_usec == (t2).tv_usec)) +#endif /* cpp */ + +/* a global variable holding a zero time */ +intern pth_time_t pth_time_zero = { 0L, 0L }; + +/* sleep for a specified amount of microseconds */ +intern void pth_time_usleep(unsigned long usec) +{ +#ifdef HAVE_USLEEP + usleep((unsigned int )usec); +#else + struct timeval timeout; + timeout.tv_sec = usec / 1000000; + timeout.tv_usec = usec - (1000000 * timeout.tv_sec); + while (pth_sc(select)(1, NULL, NULL, NULL, &timeout) < 0 && errno == EINTR) ; +#endif + return; +} + +/* calculate: t1 = t2 */ +#if cpp +#if defined(HAVE_GETTIMEOFDAY_ARGS1) +#define __gettimeofday(t) gettimeofday(t) +#else +#define __gettimeofday(t) gettimeofday(t, NULL) +#endif +#define pth_time_set(t1,t2) \ + do { \ + if ((t2) == PTH_TIME_NOW) \ + __gettimeofday((t1)); \ + else { \ + (t1)->tv_sec = (t2)->tv_sec; \ + (t1)->tv_usec = (t2)->tv_usec; \ + } \ + } while (0) +#endif /* cpp */ + +/* time value constructor */ +pth_time_t pth_time(long sec, long usec) +{ + pth_time_t tv; + + tv.tv_sec = sec; + tv.tv_usec = usec; + return tv; +} + +/* timeout value constructor */ +pth_time_t pth_timeout(long sec, long usec) +{ + pth_time_t tv; + pth_time_t tvd; + + pth_time_set(&tv, PTH_TIME_NOW); + tvd.tv_sec = sec; + tvd.tv_usec = usec; + pth_time_add(&tv, &tvd); + return tv; +} + +/* calculate: t1 <=> t2 */ +intern int pth_time_cmp(pth_time_t *t1, pth_time_t *t2) +{ + int rc; + + rc = t1->tv_sec - t2->tv_sec; + if (rc == 0) + rc = t1->tv_usec - t2->tv_usec; + return rc; +} + +/* calculate: t1 = t1 + t2 */ +#if cpp +#define pth_time_add(t1,t2) \ + (t1)->tv_sec += (t2)->tv_sec; \ + (t1)->tv_usec += (t2)->tv_usec; \ + if ((t1)->tv_usec > 1000000) { \ + (t1)->tv_sec += 1; \ + (t1)->tv_usec -= 1000000; \ + } +#endif + +/* calculate: t1 = t1 - t2 */ +#if cpp +#define pth_time_sub(t1,t2) \ + (t1)->tv_sec -= (t2)->tv_sec; \ + (t1)->tv_usec -= (t2)->tv_usec; \ + if ((t1)->tv_usec < 0) { \ + (t1)->tv_sec -= 1; \ + (t1)->tv_usec += 1000000; \ + } +#endif + +/* calculate: t1 = t1 / n */ +intern void pth_time_div(pth_time_t *t1, int n) +{ + long q, r; + + q = (t1->tv_sec / n); + r = (((t1->tv_sec % n) * 1000000) / n) + (t1->tv_usec / n); + if (r > 1000000) { + q += 1; + r -= 1000000; + } + t1->tv_sec = q; + t1->tv_usec = r; + return; +} + +/* calculate: t1 = t1 * n */ +intern void pth_time_mul(pth_time_t *t1, int n) +{ + t1->tv_sec *= n; + t1->tv_usec *= n; + t1->tv_sec += (t1->tv_usec / 1000000); + t1->tv_usec = (t1->tv_usec % 1000000); + return; +} + +/* convert a time structure into a double value */ +intern double pth_time_t2d(pth_time_t *t) +{ + double d; + + d = ((double)t->tv_sec*1000000 + (double)t->tv_usec) / 1000000; + return d; +} + +/* convert a time structure into a integer value */ +intern int pth_time_t2i(pth_time_t *t) +{ + int i; + + i = (t->tv_sec*1000000 + t->tv_usec) / 1000000; + return i; +} + +/* check whether time is positive */ +intern int pth_time_pos(pth_time_t *t) +{ + if (t->tv_sec > 0 && t->tv_usec > 0) + return 1; + else + return 0; +} + Index: ossp-pkg/pth/pthread-config.1 RCS File: /v/ossp/cvs/ossp-pkg/pth/Attic/pthread-config.1,v rcsdiff -q -kk '-r1.81.2.5' '-r1.81.2.6' -u '/v/ossp/cvs/ossp-pkg/pth/Attic/pthread-config.1,v' 2>/dev/null --- pthread-config.1 2000/07/01 14:07:10 1.81.2.5 +++ pthread-config.1 2000/07/29 14:57:14 1.81.2.6 @@ -2,7 +2,7 @@ ''' $RCSfile$$Revision$$Date$ ''' ''' $Log$ -''' Revision 1.81.2.5 2000/07/01 14:07:10 rse +''' Revision 1.81.2.6 2000/07/29 14:57:14 rse ''' *** empty log message *** ''' ''' @@ -96,7 +96,7 @@ .nr % 0 .rr F .\} -.TH PTHREAD-CONFIG 1 "01-Jul-2000" "GNU Pth 1.3.5" "POSIX Threading API of GNU Pth" +.TH PTHREAD-CONFIG 1 "01-Jul-2000" "GNU Pth 1.3.6" "POSIX Threading API of GNU Pth" .UC .if n .hy 0 .if n .na @@ -193,7 +193,7 @@ .SH "NAME" \fBpthread-config\fR \- Pth pthread library build utility .SH "VERSION" -GNU Pth 1.3.5 (01-Jul-2000) +GNU Pth 1.3.6 (01-Jul-2000) .SH "SYNOPSIS" \fBpthread-config\fR [\fB--help\fR] Index: ossp-pkg/pth/pthread.3 RCS File: /v/ossp/cvs/ossp-pkg/pth/Attic/pthread.3,v rcsdiff -q -kk '-r1.85.2.5' '-r1.85.2.6' -u '/v/ossp/cvs/ossp-pkg/pth/Attic/pthread.3,v' 2>/dev/null --- pthread.3 2000/07/01 14:07:10 1.85.2.5 +++ pthread.3 2000/07/29 14:57:14 1.85.2.6 @@ -2,7 +2,7 @@ ''' $RCSfile$$Revision$$Date$ ''' ''' $Log$ -''' Revision 1.85.2.5 2000/07/01 14:07:10 rse +''' Revision 1.85.2.6 2000/07/29 14:57:14 rse ''' *** empty log message *** ''' ''' @@ -96,7 +96,7 @@ .nr % 0 .rr F .\} -.TH pthread 3 "01-Jul-2000" "GNU Pth 1.3.5" "POSIX Threading API of GNU Pth" +.TH pthread 3 "01-Jul-2000" "GNU Pth 1.3.6" "POSIX Threading API of GNU Pth" .UC .if n .hy 0 .if n .na @@ -193,7 +193,7 @@ .SH "NAME" \fBpthread\fR \- POSIX.1c Threading API of GNU Pth .SH "VERSION" -GNU Pth 1.3.5 (01-Jul-2000) +GNU Pth 1.3.6 (01-Jul-2000) .SH "SYNOPSIS" \fBApplication Makefiles:\fR .PP