diff options
author | rpj <rpj> | 2005-04-26 02:43:18 +0000 |
---|---|---|
committer | rpj <rpj> | 2005-04-26 02:43:18 +0000 |
commit | f87899d45b5b9d10e75d7cf30bcbc0f4dac9f251 (patch) | |
tree | 5cb024ca6ac9ff8b0530528d279e482c880664f9 | |
parent | a06bad7ea9a24a3ea93fe1e7b9b99155481ada3a (diff) |
''
-rw-r--r-- | Bmakefile | 2 | ||||
-rw-r--r-- | README.Borland | 9 | ||||
-rw-r--r-- | implement.h | 4 | ||||
-rw-r--r-- | tests/Bmakefile | 8 | ||||
-rw-r--r-- | tests/eyal1.c | 2 |
5 files changed, 13 insertions, 12 deletions
@@ -238,7 +238,7 @@ install: $(DLLS) $(DLLS): $(DLL_OBJS) version.res ilink32 /Tpd /Gi c0d32x.obj $(DLL_OBJS), \ $@, ,\ - cw32mt.lib import32.lib, ,\ + cw32mti.lib import32.lib, ,\ version.res .c.obj: diff --git a/README.Borland b/README.Borland index 1694d55..a130d2b 100644 --- a/README.Borland +++ b/README.Borland @@ -43,12 +43,9 @@ pthreadVC's errno from a Borland C++-compiled host application correctly - I imagine there are other potential problems from the RTL mismatch too.) -[RPJ: There are still problems with errno under Borland and the DLL -will not pass the testsuite yet because of it. Setting and then reading -errno from within the same DLL, or the same application module is fine, -but DLL and application modules do not seem to be looking at the same -location for errno, even though they are logically running in the same -thread.] +[RPJ: Make sure you use the same RTL in both dll and application builds. +The dll and tests Bmakefiles use cw32mti.lib. Having some trouble with +memory read exceptions running the test suite using BCC55.] Best regards, Will diff --git a/implement.h b/implement.h index d2bb791..d575539 100644 --- a/implement.h +++ b/implement.h @@ -92,6 +92,8 @@ typedef VOID (APIENTRY *PAPCFUNC)(DWORD dwParam); #if defined(__MINGW32__) #include <stdint.h> +#elif defined(__BORLANDC__) || defined(__WATCOMC__) +#define int64_t ULONGLONG #else #define int64_t _int64 #endif @@ -568,6 +570,8 @@ extern "C" int ptw32_semwait (sem_t * sem); + DWORD ptw32_relmillisecs (const struct timespec * abstime); + #ifdef NEED_FTIME void ptw32_timespec_to_filetime (const struct timespec *ts, FILETIME * ft); void ptw32_filetime_to_timespec (const FILETIME * ft, struct timespec *ts); diff --git a/tests/Bmakefile b/tests/Bmakefile index c5888f8..285239a 100644 --- a/tests/Bmakefile +++ b/tests/Bmakefile @@ -46,7 +46,7 @@ CPHDR = pthread.h semaphore.h sched.h OPTIM = -O2 -XXLIBS = ws2_32.lib +XXLIBS = cw32mti.lib ws2_32.lib # C++ Exceptions BCEFLAGS = -P -DPtW32NoCatchWarn -D__CLEANUP_CXX @@ -85,7 +85,7 @@ PASSES= loadfree.pass \ condvar1.pass condvar1_1.pass condvar1_2.pass condvar2.pass condvar2_1.pass \ exit1.pass create1.pass create2.pass reuse1.pass reuse2.pass equal1.pass \ kill1.pass valid1.pass valid2.pass \ - exit2.pass exit3.pass exit4 exit5 \ + exit2.pass exit3.pass exit4.pass exit5.pass \ join0.pass join1.pass join2.pass join3.pass \ mutex4.pass mutex6.pass mutex6n.pass mutex6e.pass mutex6r.pass \ mutex6s.pass mutex6es.pass mutex6rs.pass \ @@ -104,13 +104,13 @@ PASSES= loadfree.pass \ rwlock2_t.pass rwlock3_t.pass rwlock4_t.pass rwlock5_t.pass rwlock6_t.pass rwlock6_t2.pass \ context1.pass \ cancel3.pass cancel4.pass cancel5.pass cancel6a.pass cancel6d.pass \ - cancel7 cancel8 \ + cancel7.pass cancel8.pass \ cleanup0.pass cleanup1.pass cleanup2.pass cleanup3.pass \ priority1.pass priority2.pass inherit1.pass \ spin1.pass spin2.pass spin3.pass spin4.pass \ barrier1.pass barrier2.pass barrier3.pass barrier4.pass barrier5.pass \ exception1.pass exception2.pass exception3.pass \ - cancel9 create3 + cancel9.pass create3.pass BENCHRESULTS = \ benchtest1.bench benchtest2.bench benchtest3.bench benchtest4.bench benchtest5.bench diff --git a/tests/eyal1.c b/tests/eyal1.c index 31226b0..72b5697 100644 --- a/tests/eyal1.c +++ b/tests/eyal1.c @@ -294,7 +294,7 @@ main (int argc, char *argv[]) assert((tcs[i].stat = pthread_create (&tcs[i].thread, NULL, - (void *(*)(void *))&print_server, + (void *(*)(void *))print_server, (void *) &tcs[i]) ) == 0); |