diff options
Diffstat (limited to 'tests/Makefile')
| -rw-r--r-- | tests/Makefile | 102 | 
1 files changed, 61 insertions, 41 deletions
| diff --git a/tests/Makefile b/tests/Makefile index 281cd50..5915d54 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -11,13 +11,17 @@ ECHO	= @echo  CPHDR	= pthread.h semaphore.h sched.h
  # C++ Exceptions
 -VCEFLAGS	= /GX /TP /DPtW32NoCatchWarn
 +VCEFLAGS	= /GX /TP /DPtW32NoCatchWarn /D__CLEANUP_CXX
  VCELIB	= pthreadVCE.lib
  VCEDLL	= pthreadVCE.dll
  # Structured Exceptions
 -VSEFLAGS	=
 +VSEFLAGS	= /D__CLEANUP_SEH
  VSELIB	= pthreadVSE.lib
  VSEDLL	= pthreadVSE.dll
 +#C cleanup code
 +VCFLAGS	= /D__CLEANUP_C
 +VCLIB	= pthreadVC.lib
 +VCDLL	= pthreadVC.dll
  CFLAGS= /W3 /WX /MT /nologo /Yd /Zi -D_WIN32_WINNT=0x400
  LFLAGS= /INCREMENTAL:NO
 @@ -33,30 +37,36 @@ EHFLAGS	=  # stop.
  PASSES= loadfree.pass \
 -	  mutex1.pass  mutex2.pass  mutex3.pass mutex4.pass \
 +	  self1.pass mutex5.pass  \
 +	  mutex1.pass  mutex1n.pass  mutex1e.pass  mutex1r.pass  mutex2.pass  mutex3.pass  \
  	  condvar1.pass  condvar2.pass  \
  	  exit1.pass  create1.pass  equal1.pass  \
  	  exit2.pass  exit3.pass  \
  	  join0.pass  join1.pass  join2.pass  \
 +	  mutex4.pass  mutex6.pass  mutex6n.pass  mutex6e.pass  mutex6r.pass  \
  	  count1.pass  once1.pass  tsd1.pass  \
 -	  self1.pass  self2.pass  \
 +	  self2.pass  \
  	  cancel1.pass  cancel2.pass  \
  	  eyal1.pass  \
  	  condvar3.pass  condvar4.pass  condvar5.pass  condvar6.pass  \
  	  condvar7.pass  condvar8.pass  condvar9.pass  \
  	  errno1.pass  \
 -	  rwlock1.pass  rwlock2.pass  rwlock3.pass  rwlock4.pass  rwlock5.pass  rwlock6.pass  \
 +	  rwlock1.pass  rwlock2.pass  rwlock3.pass  rwlock4.pass  rwlock5.pass  rwlock6.pass  rwlock7.pass  \
  	  context1.pass  \
  	  cancel3.pass  cancel4.pass  cancel5.pass  \
  	  cleanup0.pass  cleanup1.pass  cleanup2.pass  cleanup3.pass  \
 -	  exception1.pass  exception2.pass exception3.pass
 +	  exception1.pass  exception2.pass  exception3.pass
  all:
  	@ $(ECHO) Run one of the following command lines:
 -	@ $(ECHO) nmake clean VCE   (to test using dll with C++ exception handling)
 -	@ $(ECHO) nmake clean VSE   (to test using dll with structured exception handling)
 +	@ $(ECHO) nmake clean VCE   (to test using MSVC dll with C++ exception handling)
 +	@ $(ECHO) nmake clean VSE   (to test using MSVC dll with structured exception handling)
 +	@ $(ECHO) nmake clean VC    (to test using MSVC dll with C cleanup code)
 -auto: clean VCE clean VSE
 +auto:
 +	@ nmake clean VCE
 +	@ nmake clean VSE
 +	@ nmake clean VC
  tests: $(CPLIB) $(CPDLL) $(CPHDR) $(PASSES)
  	@ $(ECHO) ALL TESTS PASSED! Congratulations!
 @@ -73,6 +83,9 @@ VCE:  VSE:	
  	@ nmake TEST="$@" CPLIB="$(VSELIB)" CPDLL="$(VSEDLL)" EHFLAGS="$(VSEFLAGS)" tests
 +VC:
 +	@ nmake TEST="$@" CPLIB="$(VCLIB)" CPDLL="$(VCDLL)" EHFLAGS="$(VCFLAGS)" tests
 +
  .c.exe:
  	@ $(ECHO) Compiling $@
  	@ $(CC) $(EHFLAGS) $(CFLAGS) $(INCLUDES) $< /Fe$@ /link $(LFLAGS) $(CPLIB)
 @@ -101,29 +114,17 @@ clean:  	- $(RM) *.exe
  	- $(RM) *.pass
 -loadfree.pass: pthread.dll
 -mutex1.pass:
 -mutex2.pass:
 -exit1.pass:
 -condvar1.pass:
 -self1.pass:
 -condvar2.pass: condvar1.pass
 -create1.pass: mutex2.pass
  cancel1.pass: create1.pass
  cancel2.pass: cancel1.pass
 -mutex3.pass: create1.pass
 -mutex4.pass: mutex3.pass
 -equal1.pass: create1.pass
 -exit2.pass: create1.pass
 -exit3.pass: create1.pass
 -join0.pass: create1.pass
 -join1.pass: create1.pass
 -join2.pass: create1.pass
 -count1.pass: join1.pass
 -once1.pass: create1.pass
 -tsd1.pass: join1.pass
 -self2.pass: create1.pass
 -eyal1.pass: tsd1.pass
 +cancel3.pass: context1.pass
 +cancel4.pass: cancel3.pass
 +cancel5.pass: cancel3.pass
 +cleanup0.pass: cancel5.pass
 +cleanup1.pass: cleanup0.pass
 +cleanup2.pass: cleanup1.pass
 +cleanup3.pass: cleanup2.pass
 +condvar1.pass:
 +condvar2.pass: condvar1.pass
  condvar3.pass: create1.pass
  condvar4.pass: create1.pass
  condvar5.pass: condvar4.pass
 @@ -131,21 +132,40 @@ condvar6.pass: condvar5.pass  condvar7.pass: condvar6.pass cleanup1.pass
  condvar8.pass: condvar7.pass
  condvar9.pass: condvar8.pass
 +context1.pass: cancel2.pass
 +count1.pass: join1.pass
 +create1.pass: mutex2.pass
 +equal1.pass: create1.pass
  errno1.pass: mutex3.pass
 +exception1.pass: cancel4.pass
 +exception2.pass: exception1.pass
 +exception3.pass: exception2.pass
 +exit1.pass:
 +exit2.pass: create1.pass
 +exit3.pass: create1.pass
 +eyal1.pass: tsd1.pass
 +join0.pass: create1.pass
 +join1.pass: create1.pass
 +join2.pass: create1.pass
 +loadfree.pass: pthread.dll
 +mutex1.pass: self1.pass
 +mutex1n.pass: mutex1.pass
 +mutex1e.pass: mutex1.pass
 +mutex1r.pass: mutex1.pass
 +mutex2.pass: mutex1.pass
 +mutex3.pass: create1.pass
 +mutex4.pass: mutex3.pass
 +mutex5.pass:
 +once1.pass: create1.pass
  rwlock1.pass: condvar6.pass
  rwlock2.pass: rwlock1.pass
  rwlock3.pass: rwlock2.pass
  rwlock4.pass: rwlock3.pass
  rwlock5.pass: rwlock4.pass
  rwlock6.pass: rwlock5.pass
 -context1.pass: cancel2.pass
 -cancel3.pass: context1.pass
 -cancel4.pass: cancel3.pass
 -cancel5.pass: cancel3.pass
 -cleanup0.pass: cancel5.pass
 -cleanup1.pass: cleanup0.pass
 -cleanup2.pass: cleanup1.pass
 -cleanup3.pass: cleanup2.pass
 -exception1.pass: cancel4.pass
 -exception2.pass: exception1.pass
 -exception3.pass: exception2.pass
 +rwlock7.pass: rwlock6.pass
 +self1.pass:
 +self2.pass: create1.pass
 +tsd1.pass: join1.pass
 +
 +
 | 
