-
Notifications
You must be signed in to change notification settings - Fork 111
Expand file tree
/
Copy pathMakefile_wasm
More file actions
119 lines (91 loc) · 3.65 KB
/
Makefile_wasm
File metadata and controls
119 lines (91 loc) · 3.65 KB
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
# This is a Makefile for the examples,
# for Mac and the clang compiler.
# It does assume a Unix-like setup for some commands,
# but if you only want to call "make" with the default target,
# you should be OK.
# If your compiler name is not given here, change it.
CC = em++
CC_FLAGS = -O3 -flto -mtune=generic
# These flags are not turned on by default, but DDS should pass them.
# Turn them on below.
WARN_FLAGS = \
-Wshadow \
-Wsign-conversion \
-pedantic -Wall -Wextra \
-Wcast-align -Wcast-qual \
-Wctor-dtor-privacy \
-Wdisabled-optimization \
-Winit-self \
-Wmissing-declarations \
-Wmissing-include-dirs \
-Wcomment \
-Wold-style-cast \
-Woverloaded-virtual \
-Wredundant-decls \
-Wsign-promo \
-Wstrict-overflow=1 \
-Wswitch-default -Wundef \
-Werror \
-Wno-unused \
-Wno-unknown-pragmas \
-Wno-long-long \
-Wno-format
# Here you can turn on warnings.
# CC_FULL_FLAGS = $(CC_FLAGS)
CC_FULL_FLAGS = $(CC_FLAGS) $(WARN_FLAGS) -D__WASM__
DLLBASE = dds
STATIC_LIB = lib$(DLLBASE).a
COMMON_SOURCE_FILES = \
hands.cpp
ALL_EXAMPLE_FILES = \
AnalysePlayBin.js \
AnalysePlayPBN \
AnalyseAllPlaysBin \
AnalyseAllPlaysPBN \
CalcDDtable.cpp \
CalcDDtablePBN.cpp \
CalcAllTables.cpp \
CalcAllTablesPBN.cpp \
DealerPar.cpp \
Par.cpp \
SolveBoard.cpp \
SolveBoardPBN.cpp \
SolveAllBoards.cpp
LIB_FLAGS = -L. $(STATIC_LIB)
OBJ_FILES = $(subst .cpp,.o,$(COMMON_SOURCE_FILES))
EX_OBJ_FILES = $(subst .cpp,.o,$(ALL_EXAMPLE_FILES))
EX_EXE_FILES = $(subst .cpp,,$(ALL_EXAMPLE_FILES))
AnalysePlayBin.html: $(OBJ_FILES) AnalysePlayBin.cpp $(STATIC_LIB)
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) AnalysePlayBin.cpp -o AnalysePlayBin.html
AnalysePlayPBN: $(OBJ_FILES) AnalysePlayPBN.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) AnalysePlayPBN.o -o AnalysePlayPBN
AnalyseAllPlaysBin: $(OBJ_FILES) AnalyseAllPlaysBin.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) AnalyseAllPlaysBin.o -o AnalyseAllPlaysBin
AnalyseAllPlaysPBN: $(OBJ_FILES) AnalyseAllPlaysPBN.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) AnalyseAllPlaysPBN.o -o AnalyseAllPlaysPBN
CalcDDtable: $(OBJ_FILES) CalcDDtable.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) CalcDDtable.o -o CalcDDtable
CalcDDtablePBN: $(OBJ_FILES) CalcDDtablePBN.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) CalcDDtablePBN.o -o CalcDDtablePBN
CalcAllTables: $(OBJ_FILES) CalcAllTables.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) CalcAllTables.o -o CalcAllTables
CalcAllTablesPBN: $(OBJ_FILES) CalcAllTablesPBN.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) CalcAllTablesPBN.o -o CalcAllTablesPBN
DealerPar: $(OBJ_FILES) DealerPar.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) DealerPar.o -o DealerPar
Par: $(OBJ_FILES) Par.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) Par.o -o Par
SolveBoard: $(OBJ_FILES) SolveBoard.cpp $(STATIC_LIB)
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) SolveBoard.cpp -o SolveBoard.html
dds: $(OBJ_FILES) dds.cpp $(STATIC_LIB)
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) dds.cpp -o dds.html
SolveBoardPBN: $(OBJ_FILES) SolveBoardPBN.o
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) SolveBoardPBN.o -o SolveBoardPBN.html
SolveAllBoards: $(OBJ_FILES) SolveAllBoards.cpp $(STATIC_LIB)
$(CC) $(CC_FULL_FLAGS) $(LD_FLAGS) $(LIB_FLAGS) $(OBJ_FILES) SolveAllBoards.cpp -o SolveAllBoards.html
%.o: %.cpp
$(CC) $(CC_FULL_FLAGS) -c $< -o $*.o
depend:
makedepend -Y -- $(cOMMON_SOURCE_FILES) $(ALL_EXAMPLE_FILES)
clean:
rm -f *.o $(EX_EXE_FILES) $(STATIC_LIB)