SRC      := dsbench.c
TARGETS  := dsbench dsbench-c dsbench-static dsbench-static-c
FILE_BIN := dsbench dsbench-c dsbench-static dsbench-static-c
FILE_LIB := *.ndb
FILE_DOC := dsbench.xls



include ../Makefile.var
include ../Makefile.rule



DEP_STATIC  += ../lib/libdatastr.a   ../../libshmem/lib/libshmem.a  ../../libnode/lib/libnode.a  ../../liblog/lib/liblog.a  
DEP_DYNAMIC += ../lib/libdatastr.so  ../../libshmem/lib/libshmem.so ../../libnode/lib/libnode.so ../../liblog/lib/liblog.so
INCLUDE     += -I . -I ../include -I ../../liblog/include        -I ../../libnode/include     -I ../../libshmem/include
LIBDIR      += -L . -L ../lib     -L ../../liblog/lib            -L ../../libnode/lib         -L ../../libshmem/lib
LIB_STATIC  += ../lib/libdatastr.a   ../../libshmem/lib/libshmem.a  ../../libnode/lib/libnode.a  ../../liblog/lib/liblog.a  -ldl
LIB_DYNAMIC += -ldatastr -lshmem -lnode -llog -ldl
CFLAGS      += -rdynamic

ifdef _LIBVER_SUPPORT
	DEP_STATIC  += ../../libver/ver.h ../../libver/libver.a
	DEP_DYNAMIC += ../../libver/ver.h ../../libver/libver.so
	INCLUDE     += -I ../../libver/lib
	LIBDIR      += -L ../../libver/lib

        ifeq ($(OSTYPE),linux-gnu)
                LIB_STATIC  += ../../libver/lib/libver.a
                LIB_DYNAMIC += -lver
        else
                LIB_STATIC  += ../../libver/lib/libver.a
                LIB_DYNAMIC += -lver
        endif

        CFLAGS              += -D_LIBVER_SUPPORT
endif

ND_CHECK_FLAGS   = -DND_MODE=0
ND_NOCHECK_FLAGS = -DND_MODE=1



dsbench: dsbench.c $(DEP_DYNAMIC)
	$(CC) -o $@ $(CFLAGS)  $(ND_NOCHECK_FLAGS) $(INCLUDE) $(LIBDIR) $(LIB_DYNAMIC) $<

dsbench-c: dsbench.c $(DEP_DYNAMIC)
	$(CC) -o $@ $(CFLAGS)  $(ND_CHECK_FLAGS)   $(INCLUDE) $(LIBDIR) $(LIB_DYNAMIC) $<

dsbench-static: dsbench.c $(DEP_STATIC)
	$(CC) -o $@ $(CFLAGS)  $(ND_NOCHECK_FLAGS) $(INCLUDE) $< $(LIB_STATIC)

dsbench-static-c: dsbench.c $(DEP_STATIC)
	$(CC) -o $@ $(CFLAGS)  $(ND_CHECK_FLAGS)   $(INCLUDE) $< $(LIB_STATIC)