blob: 4fef3c3df742fcf2bd34b2b67e86eedba3cbca0a (
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
|
# 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
#
# Mingw32
#
CC = gcc
CFLAGS = -g -O2 -UNDEBUG -Wall -o $@ $^
BUILD_DIR = ..\build
INCLUDES = -I./include
LIBS = ./lib/libpthread32.a
##
## MSVC
##
#CC = cl
#CFLAGS = /W3 /MT /nologo /Yd /Zi /Fe$@ $^
#BUILD_DIR = ..
#INCLUDES = -I.\include
#LIBS = .\lib\pthread.lib
HDR = .\include\pthread.h
LIB = .\lib\libpthread32.a
DLL = pthread.dll
# If a test case returns a non-zero exit code to the shell, make will
# stop.
TESTS = count1 create1 equal1 exit1 exit2 exit3 \
join1 eyal1 mutex1 mutex2 mutex3 \
once1 self1 self2 tsd1
PASSES = $(TESTS:%=%.pass)
all: $(PASSES)
@ $(ECHO) ALL TESTS PASSED! Congratulations!
%.pass: %.exe $(LIB) $(DLL) $(HDR)
$*
@$(ECHO) Passed
@ $(TOUCH) $@
%.exe: %.c
@ $(CC) $(CFLAGS) $(INCLUDES) $(LIBS)
$(LIB):
@- $(MKDIR) .\lib
@ $(CP) $(BUILD_DIR)\$@ .\$@
$(HDR):
@- $(MKDIR) .\include
@ $(CP) $(BUILD_DIR)\$@ .\$@
$(DLL):
@ $(CP) $(BUILD_DIR)\$@ .\$@
clean:
- $(RM) *.dll
- $(RM) $(LIB)
- $(RM) $(HDR)
- $(RM) *.exe
- $(RM) *.pass
|