From 451bb0670ddd5f5c0606410f2b5f51733119645d Mon Sep 17 00:00:00 2001 From: rpj Date: Sat, 3 Apr 1999 22:05:39 +0000 Subject: ./ChangeLog Sun Apr 4 11:05:57 1999 Ross Johnson * sched.c (sched.h): Include. * sched.h: New file for POSIX 1b scheduling. * pthread.h: Move opaque structures to implement.h; move sched_* prototypes out and into sched.h. * implement.h: Add opaque structures from pthread.h. * sched.c (sched_yield): New function. * condvar.c (_pthread_sem_*): Rename to sem_*; except for _pthread_sem_timedwait which is an private function. Sat Apr 3 23:28:00 1999 Ross Johnson * Makefile.in (OBJS): Add errno.o. Fri Apr 2 11:08:50 1999 Ross Johnson * implement.h (_pthread_sem_*): Remove prototypes now defined in semaphore.h. * pthread.h (sempahore.h): Include. * semaphore.h: New file for POSIX 1b semaphores. * pthread.h (_pthread_sem_t): Change to sem_t. * semaphore.c (_pthread_sem_*): Change to sem_*; these functions will be exported from the library; set errno on error. - John Bossom (_pthread_sem_timedwait): Moved to private.c. * private.c (_pthread_sem_timedwait): Moved from semaphore.c; set errno on error. * errno.c (_errno): New file. New function. - John Bossom * pthread.h (pthread_t_): Add per-thread errno element. tests/ChangeLog Sun Apr 4 12:04:28 1999 Ross Johnson * tsd1.c (mythread): Change Sleep(0) to sched_yield(). (sched.h): Include. * condvar3.c (mythread): Remove redundant Sleep(). * runtest.bat: Re-organised to make more informative. --- tests/ChangeLog | 9 +++++++++ tests/condvar3.c | 2 -- tests/runall.bat | 4 +++- tests/runtest.bat | 55 ++++++++++++++++++++++++++++++++----------------------- tests/tsd1.c | 3 ++- 5 files changed, 46 insertions(+), 27 deletions(-) (limited to 'tests') diff --git a/tests/ChangeLog b/tests/ChangeLog index 7354fba..e0969ef 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,12 @@ +Sun Apr 4 12:04:28 1999 Ross Johnson + + * tsd1.c (mythread): Change Sleep(0) to sched_yield(). + (sched.h): Include. + + * condvar3.c (mythread): Remove redundant Sleep(). + + * runtest.bat: Re-organised to make more informative. + Fri Mar 19 1999 Ross Johnson * *.bat: redirect unwanted output to nul: diff --git a/tests/condvar3.c b/tests/condvar3.c index c2b08e6..ab1080e 100644 --- a/tests/condvar3.c +++ b/tests/condvar3.c @@ -59,8 +59,6 @@ enum { void * mythread(void * arg) { - Sleep(1); - assert(pthread_mutex_lock(&mutex) == 0); shared++; diff --git a/tests/runall.bat b/tests/runall.bat index 21bbbbe..3f5498d 100644 --- a/tests/runall.bat +++ b/tests/runall.bat @@ -1,4 +1,6 @@ -erase *.result +@echo off + +if x%1==x-f echo y | erase *.pass > nul: call runtest cl mutex1 call runtest cl mutex2 diff --git a/tests/runtest.bat b/tests/runtest.bat index 03a9413..4a06505 100644 --- a/tests/runtest.bat +++ b/tests/runtest.bat @@ -2,38 +2,47 @@ REM Usage: runtest cl|gcc testname testarg ... -echo y | erase /s tmp > nul: +if EXIST %2.pass goto bypass + +REM Make sure we start with only those files we expect to need +if exist tmp\*.* echo y | erase tmp\*.* > nul: rmdir tmp mkdir tmp -cd tmp -REM Make sure we start with only those files we expect to need -if exist pthread.dll erase pthread.dll > nul: -if exist pthread.h erase pthread.h > nul: -if exist test.h erase test.h > nul: -if exist pthread.lib erase pthread.lib > nul: -if exist libpthread32.a erase libpthread32.a > nul: -copy ..\..\pthread.dll . > nul: -copy ..\..\pthread.h . > nul: -copy ..\test.h . > nul: -copy ..\..\pthread.lib . > nul: -copy ..\..\libpthread32.a . > nul: +copy ..\pthread.dll tmp > nul: +copy ..\pthread.h tmp > nul: +copy ..\semaphore.h tmp > nul: +copy ..\sched.h tmp > nul: +copy test.h tmp > nul: +copy ..\pthread.lib tmp > nul: +copy ..\libpthread32.a tmp > nul: + +cd tmp REM Compile the test case REM produces aout.exe using the compiler given as %1 -call ..\c%1.bat %2 > nul: +call ..\c%1.bat %2 > ..\%2.%1log + +if ERRORLEVEL 1 goto cleanup + +REM erase ..\%2.%1log -echo TEST: %2 [%1] > ..\%2.result +echo TEST: %2 [%1] REM Run the test case -aout.exe %3 %4 %5 %6 %7 %8 %9 >> ..\%2.result +aout.exe %3 %4 %5 %6 %7 %8 %9 + +set RESULT=%ERRORLEVEL% + +if %RESULT% EQU 0 echo Passed [%RESULT%] > ..\%2.pass + +:cleanup -REM Clean up -erase aout.exe > nul: -if exist pthread.dll erase pthread.dll > nul: -if exist pthread.h erase pthread.h > nul: -if exist pthread.lib erase pthread.lib > nul: -if exist libpthread32.a erase libpthread32.a > nul: cd .. -more < %2.result +REM Clean up +if exist tmp\*.* echo y | erase tmp\*.* > nul: + +if EXIST %2.pass echo Passed [%RESULT%] + +:bypass \ No newline at end of file diff --git a/tests/tsd1.c b/tests/tsd1.c index 9448c10..9926a30 100644 --- a/tests/tsd1.c +++ b/tests/tsd1.c @@ -43,6 +43,7 @@ * - output identifies failed component */ +#include #include "test.h" static pthread_key_t key = NULL; @@ -87,7 +88,7 @@ mythread(void * arg) { while (key == NULL) { - Sleep(0); + sched_yield(); } setkey(arg); -- cgit v1.2.3