-
Notifications
You must be signed in to change notification settings - Fork 61
/
Makefile.win
120 lines (75 loc) · 3.56 KB
/
Makefile.win
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
!if "$(arch)" == ""
arch = x64
!endif
!if "$(config)" == ""
config = Debug-v140
!endif
output_root = .\\
!if "$(config)" == "Debug-v140"
outdir = $(output_root)$(arch)\debug-v140
CFLAGS = $(CFLAGS) /Zi /Od /MTd
!endif
!if "$(config)" == "Debug-v141"
outdir = $(output_root)$(arch)\debug-v141
CFLAGS = $(CFLAGS) /Zi /Od /MTd
!endif
!if "$(config)" == "Release-v140"
outdir = $(output_root)$(arch)\release-v140
CFLAGS = $(CFLAGS) /O2 /MT
!endif
!if "$(config)" == "Release-v141"
outdir = $(output_root)$(arch)\release-v141
CFLAGS = $(CFLAGS) /O2 /MT
!endif
basedeps = common\shared.c common\jsmn.c common\windows\getopt.c \
common\windows\osd.c
includes = /Iinclude /Iinclude\windows /I..\libfabric\include /FIft_osd.h \
/Iinclude\windows\getopt
defines = /DGETOPT_STATIC
libs = ..\libfabric\$(arch)\$(config)\libfabric.lib Ws2_32.lib
CFLAGS = $(CFLAGS) $(includes) $(defines)
#all: complex functional
all: benchmarks functional unit
{benchmarks}.c{$(outdir)}.exe:
if not exist $(@D) mkdir $(@D)
$(CC) /Fe$@ $** $(baseincludes) $(CFLAGS) $(libs)
{functional}.c{$(outdir)}.exe:
if not exist $(@D) mkdir $(@D)
$(CC) /Fe$@ $** $(baseincludes) $(CFLAGS) $(libs)
{unit}.c{$(outdir)}.exe:
if not exist $(@D) mkdir $(@D)
$(CC) /Fe$@ $** $(baseincludes) $(CFLAGS) $(libs)
benchmarks: $(outdir)\msg_pingpong.exe $(outdir)\rdm_cntr_pingpong.exe \
$(outdir)\rdm_pingpong.exe $(outdir)\rdm_tagged_pingpong.exe
functional: $(outdir)\cq_data.exe $(outdir)\dgram.exe $(outdir)\dgram_waitset.exe $(outdir)\msg.exe \
$(outdir)\msg_epoll.exe $(outdir)\msg_sockets.exe \
$(outdir)\poll.exe $(outdir)\rdm.exe $(outdir)\rdm_rma_simple.exe $(outdir)\rdm_rma_trigger.exe \
$(outdir)\rdm_tagged_peek.exe $(outdir)\scalable_ep.exe $(outdir)\inj_complete.exe
unit: $(outdir)\av_test.exe $(outdir)\dom_test.exe $(outdir)\eq_test.exe
complex: $(outdir)\complex.exe
clean:
if exist $(outdir) rmdir /s /q $(outdir)
del *.obj
$(outdir)\msg_pingpong.exe: {benchmarks}msg_pingpong.c $(basedeps) {benchmarks}benchmark_shared.c
$(outdir)\rdm_cntr_pingpong.exe: {benchmarks}rdm_cntr_pingpong.c $(basedeps) {benchmarks}benchmark_shared.c
$(outdir)\rdm_pingpong.exe: {benchmarks}rdm_pingpong.c $(basedeps) {benchmarks}benchmark_shared.c
$(outdir)\rdm_tagged_pingpong.exe: {benchmarks}rdm_tagged_pingpong.c $(basedeps) {benchmarks}benchmark_shared.c
$(outdir)\cq_data.exe: {functional}cq_data.c $(basedeps)
$(outdir)\dgram.exe: {functional}dgram.c $(basedeps)
$(outdir)\dgram_waitset.exe: {functional}dgram_waitset.c $(basedeps)
$(outdir)\msg.exe: {functional}msg.c $(basedeps)
$(outdir)\msg_epoll.exe: {functional}msg_epoll.c $(basedeps)
$(outdir)\msg_sockets.exe: {functional}msg_sockets.c $(basedeps)
$(outdir)\poll.exe: {functional}poll.c $(basedeps)
$(outdir)\rdm.exe: {functional}rdm.c $(basedeps)
$(outdir)\rdm_rma_simple.exe: {functional}rdm_rma_simple.c $(basedeps)
$(outdir)\rdm_rma_trigger.exe: {functional}rdm_rma_trigger.c $(basedeps)
$(outdir)\rdm_tagged_peek.exe: {functional}rdm_tagged_peek.c $(basedeps)
$(outdir)\scalable_ep.exe: {functional}scalable_ep.c $(basedeps)
$(outdir)\inj_complete.exe: {functional}inj_complete.c $(basedeps)
$(outdir)\av_test.exe: {unit}av_test.c $(basedeps) {unit}common.c
$(outdir)\dom_test.exe: {unit}dom_test.c $(basedeps) {unit}common.c
$(outdir)\eq_test.exe: {unit}eq_test.c $(basedeps) {unit}common.c
$(outdir)\complex.exe: {complex}ft_comm.c {complex}ft_comp.c {complex}ft_config.c {complex}ft_domain.c {complex}ft_endpoint.c {complex}ft_main.c {complex}ft_msg.c {complex}ft_test.c $(basedeps)
if not exist $(@D) mkdir $(@D)
$(CC) /Fe$@ $** $(baseincludes) $(CFLAGS) $(libs)