summaryrefslogtreecommitdiff
path: root/tests/Makefile
blob: 8143b46381486c5916f462ae461bd1bed825883e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# Makefile for the pthreads test suite.
# If all of the .pass files can be created, the test suite has passed.


CP	= copy
RM	= erase
MKDIR	= mkdir
TOUCH	= echo Passed >
ECHO	= @echo

CPHDR	= pthread.h semaphore.h sched.h
CPLIB	= pthread.lib
CPDLL	= pthread.dll

CFLAGS= /W3 /MT /nologo /Yd /Zi -D_WIN32_WINNT=0x400 -DSTDCALL=_stdcall
LFLAGS= /INCREMENTAL:NO
LIBS	= .\pthread.lib
INCLUDES=-I.
BUILD_DIR=..

COPYFILES	= $(CPHDR) $(CPLIB) $(CPDLL)

# If a test case returns a non-zero exit code to the shell, make will
# stop.

PASSES= loadfree.pass \
	  mutex1.pass  condvar1.pass  condvar2.pass  \
	  exit1.pass  create1.pass  equal1.pass  \
	  exit2.pass  exit3.pass  \
	  join0.pass  join1.pass  join2.pass  \
	  mutex2.pass  mutex3.pass  \
	  count1.pass  once1.pass  tsd1.pass  \
	  self1.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  \
	  context1.pass  \
	  cancel3.pass  cancel4.pass  cleanup1.pass  \
	  cleanup2.pass  cleanup3.pass  \
	  exception1.pass 

all:	$(CPLIB) $(CPDLL) $(CPHDR) $(PASSES)
	@ $(ECHO) ALL TESTS PASSED! Congratulations!

loadfree.pass: loadfree.exe
mutex1.pass: mutex1.exe
mutex2.pass: mutex2.exe
exit1.pass: exit1.exe
condvar1.pass: condvar1.exe
self1.pass: self1.exe
condvar2.pass: condvar2.exe condvar1.pass
create1.pass: create1.exe mutex2.pass
cancel1.pass: cancel1.exe create1.pass
cancel2.pass: cancel2.exe cancel1.pass
mutex3.pass: mutex3.exe create1.pass
equal1.pass: equal1.exe create1.pass
exit2.pass: exit2.exe create1.pass
exit3.pass: exit3.exe create1.pass
join0.pass: join0.exe create1.pass
join1.pass: join1.exe create1.pass
join2.pass: join2.exe create1.pass
count1.pass: count1.exe join1.pass
once1.pass: once1.exe create1.pass
tsd1.pass: tsd1.exe join1.pass
self2.pass: self2.exe create1.pass
eyal1.pass: eyal1.exe tsd1.pass
condvar3.pass: condvar3.exe create1.pass
condvar4.pass: condvar4.exe create1.pass
condvar5.pass: condvar5.exe condvar4.pass
condvar6.pass: condvar6.exe condvar5.pass
condvar7.pass: condvar7.exe condvar6.pass cleanup1.pass
condvar8.pass: condvar8.exe condvar7.pass
condvar9.pass: condvar9.exe condvar8.pass
errno1.pass: errno1.exe mutex3.pass
rwlock1.pass: rwlock1.exe condvar6.pass
rwlock2.pass: rwlock2.exe rwlock1.pass
rwlock3.pass: rwlock3.exe rwlock2.pass
rwlock4.pass: rwlock4.exe rwlock3.pass
rwlock5.pass: rwlock5.exe rwlock4.pass
rwlock6.pass: rwlock6.exe rwlock5.pass
context1.pass: context1.exe cancel2.pass
cancel3.pass: cancel3.exe context1.pass
cancel4.pass: cancel4.exe cancel3.pass
cleanup1.pass: cleanup1.exe cancel4.pass
cleanup2.pass: cleanup2.exe cleanup1.pass
cleanup3.pass: cleanup3.exe cleanup2.pass
exception1.pass: exception1.exe cancel4.pass

$(PASSES): $*.exe
	@ .\$*.exe
	@ $(ECHO) Passed
	@ $(TOUCH) $*.pass

.c.exe:
	@ $(CC) $(CFLAGS) $(INCLUDES) $< /Fe$@ /link $(LFLAGS) $(LIBS)

.c.pre:
	@ $(CC) /E $(CFLAGS) $(INCLUDES) /Fe$@ $<

$(COPYFILES):
	@ $(ECHO) Copying $@
	@ $(CP) $(BUILD_DIR)\$@ .

clean:
	- $(RM) *.dll
	- $(RM) pthread.h
	- $(RM) semaphore.h
	- $(RM) sched.h
	- $(RM) *.lib
	- $(RM) *.e
	- $(RM) *.obj
	- $(RM) *.pdb
	- $(RM) *.o
	- $(RM) *.exe
	- $(RM) *.pass