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 120 121 122 123 124 125 126 127 128 129 130 131
|
!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)" == "Debug-v142"
outdir = $(output_root)$(arch)\debug-v142
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
!if "$(config)" == "Release-v142"
outdir = $(output_root)$(arch)\release-v142
CFLAGS = $(CFLAGS) /O2 /MT
!endif
basedeps = common\hmem.c common\shared.c common\jsmn.c \
common\windows\getopt.c common\windows\osd.c \
common\hmem_cuda.c common\hmem_rocr.c common\hmem_ze.c
includes = /Iinclude /Iinclude\windows /I..\include /FIft_osd.h \
/Iinclude\windows\getopt
defines = /DGETOPT_STATIC
libs = ..\$(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_event.exe $(outdir)\rdm_rma_trigger.exe \
$(outdir)\rdm_tagged_peek.exe $(outdir)\scalable_ep.exe $(outdir)\inj_complete.exe $(outdir)\bw.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_event.exe: {functional}rdm_rma_event.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)\bw.exe: {functional}bw.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)
|