# Test c output
T=test_parse
#ARGS=../dap4_test/testfiles/test_atomic_types.nc.dmr
#ARGS=./tat.nc.dmr
ARGS=./tat.dmr

#G=gdb --args
#c:/path/to/my/app args to my app
V=drmemory.exe --

#V=valgrind --leak-check=full

CFLAGS=-Wall -g -O0 -I.. -I../include -I../libdap4

SHELL=/bin/bash

CC=gcc
LDFLAGS=../liblib/.libs/libnetcdf.a -L/usr/local/lib -lhdf5_hl -lhdf5 -lz  -ldl -lm -lcurl

LLP=/usr/local/lib:${LD_LIBRARY_PATH}

all:: t.exe
	sh ./test_parse.sh

g::
	export LD_LIBRARY_PATH=${LLP}; export CFLAGS; export LDFLAGS; \
	${G} ./t ${ARGS}

v::
	export LD_LIBRARY_PATH=${LLP}; export CFLAGS; export LDFLAGS; \
	${V} ./t ${ARGS}

diff:: t.exe
	rm -fr ./j
	./t ${ARGS} >& ./j

t.exe: ${T}.c ../liblib/.libs/libnetcdf.a
	${CC} -o t ${CFLAGS} ${T}.c ${SRC} ${LDFLAGS}

#	export LD_LIBRARY_PATH=${LLP}; export CFLAGS; export LDFLAGS;

clean::
	rm -fr t.exe ${T}.o

cpp::
	${CC} -E ${CFLAGS} ${T}.c > ${T}.txt

tmp.sh::
	rm -f tmp.sh
	echo 'P=d:/git/thredds/dap4/d4tests/src/test/data/resources/TestCDMClient/testinput' >>tmp.sh
	echo 'F="test_atomic_array.nc test_atomic_array.nc test_atomic_types.nc test_enum.nc test_enum_2.nc test_enum_array.nc test_fill.nc test_groups1.nc test_one_var.nc test_one_vararray.nc test_opaque.nc test_opaque_array.nc test_struct_type.nc test_utf8.nc"' >>tmp.sh
	echo 'for f in $$F ; do' >>tmp.sh
	echo 'R="$${P}/$$f" ; L="./testfiles/$$f"' >>tmp.sh
	echo 'rm $${L}.dap ; cp $${R}.raw $${L}.dap' >>tmp.sh
	echo 'done' >>tmp.sh
	echo 'cp $${P}/test_sequence_1.syn.raw ./testfiles/test_sequence_1.nc.dap' >>tmp.sh
	echo 'cp $${P}/test_sequence_2.syn.raw ./testfiles/test_sequence_2.nc.dap' >>tmp.sh

testfiles:: tmp.sh
	sh -x ./tmp.sh

#U=test_ncuri.c ${LDFLAGS}
U=test_ncuri.c ../libdispatch/ncuri.c ../libdispatch/nclist.c ../libdispatch/ncbytes.c

x:
	pushd .. ; ${MAKE} ; popd

uri::
	${CC} -o test_ncuri ${CFLAGS} ${U}
	gdb --args ./test_ncuri
