summaryrefslogtreecommitdiff
path: root/Makefile
blob: 662696cbdf976a00a1a27e8ecb00ca88b37e8cea (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
# MODE=NUMA make -j

#
# BIT  = { 32 | 64 }
# MODE = { NUMA | SMP }
#
# BIT	= 64
# MODE	= NUMA
# MODE	= SMP

ifneq ($(BIT), 64)
ifneq ($(BIT), 32)
BIT	= 64
endif
endif

ifneq ($(MODE), NUMA)
ifneq ($(MODE), SMP)
MODE	= SMP
endif
endif

ifeq ($(MODE), NUMA)
LIB	= -lpthread -lnuma
endif

ifeq ($(MODE), SMP)
LIB	= -lpthread
endif

SRC	= Main.C Chain.C Experiment.C Lock.C Output.C Run.C SpinBarrier.C Timer.C Thread.C Types.C
HDR	= $(SRC:.C=.h)
OBJ	= $(SRC:.C=.o)
EXE	= pChase$(BIT)_$(MODE)

RM	= /bin/rm
MV	= /bin/mv
CI	= /usr/bin/ci
CO	= /usr/bin/co

CXXFLAGS= -O3 -m$(BIT) -D$(MODE)

.C.o:
	$(CXX) -c $(CXXFLAGS) $<

$(EXE):	$(OBJ)
	$(CXX) -o $(EXE) $(CXXFLAGS) $(OBJ) $(LIB)

$(OBJ):	$(HDR)

rmexe:
	$(RM) -rf $(EXE)

rmobj:
	$(RM) -rf $(OBJ)

ci:
	$(CI) -f $(SRC) $(HDR) Makefile

co:
	$(CO) -l $(SRC) $(HDR) Makefile