2010-06-03 21:24:43 +08:00
|
|
|
## This is a automake file, part of Unidata's netCDF package.
|
|
|
|
# Copyright 2005, see the COPYRIGHT file for more information.
|
|
|
|
|
|
|
|
# This file builds and runs the nc_test program, which tests the
|
|
|
|
# netCDF-3 API for all formats.
|
|
|
|
|
2011-05-18 03:14:35 +08:00
|
|
|
# Put together AM_CPPFLAGS and AM_LDFLAGS.
|
|
|
|
include $(top_srcdir)/lib_flags.am
|
2010-06-03 21:24:43 +08:00
|
|
|
|
|
|
|
# These files are created by the tests.
|
|
|
|
CLEANFILES = nc_test_classic.nc nc_test_64bit.nc nc_test_netcdf4.nc \
|
2012-04-09 06:47:38 +08:00
|
|
|
tst_*.nc t_nc.nc large_files.nc quick_large_files.nc \
|
|
|
|
tst_diskless.nc tst_diskless2.nc \
|
|
|
|
tst_diskless3.nc tst_diskless3_file.cdl tst_diskless3_memory.cdl \
|
|
|
|
tst_diskless4.cdl tst_diskless4.nc
|
2010-06-03 21:24:43 +08:00
|
|
|
|
|
|
|
# These are the tests which are always run.
|
2011-08-23 23:07:24 +08:00
|
|
|
TESTPROGRAMS = t_nc tst_small nc_test tst_misc tst_norm tst_names \
|
2012-05-29 23:50:15 +08:00
|
|
|
tst_nofill tst_nofill2 tst_nofill3 tst_atts3
|
2011-04-26 01:09:14 +08:00
|
|
|
|
2010-12-17 02:13:52 +08:00
|
|
|
if USE_NETCDF4
|
|
|
|
TESTPROGRAMS += tst_atts
|
|
|
|
endif
|
2010-06-03 21:24:43 +08:00
|
|
|
|
2012-05-29 23:50:15 +08:00
|
|
|
# if EXTRA_TESTS
|
|
|
|
# TESTPROGRAMS +=
|
|
|
|
# endif # EXTRA_TESTS
|
2012-05-25 00:29:22 +08:00
|
|
|
|
2010-06-03 21:24:43 +08:00
|
|
|
# These are the source files for the main workhorse test program,
|
|
|
|
# nc_test. If you pass nc_test, you are doing well.
|
2011-09-21 04:39:04 +08:00
|
|
|
nc_test_SOURCES = nc_test.c error.c test_get.c test_put.c \
|
2010-06-03 21:24:43 +08:00
|
|
|
test_read.c test_write.c util.c error.h tests.h
|
|
|
|
|
2011-05-18 03:14:35 +08:00
|
|
|
LDADD = ${top_builddir}/liblib/libnetcdf.la
|
2010-06-03 21:24:43 +08:00
|
|
|
AM_CPPFLAGS += -I$(top_builddir)/liblib
|
|
|
|
|
|
|
|
# If the user asked for large file tests, then add them.
|
|
|
|
if LARGE_FILE_TESTS
|
2010-06-11 05:10:50 +08:00
|
|
|
TESTPROGRAMS += quick_large_files tst_big_var6 tst_big_var2 \
|
|
|
|
tst_big_rvar tst_big_var tst_large large_files
|
2010-06-03 21:24:43 +08:00
|
|
|
endif # LARGE_FILE_TESTS
|
|
|
|
|
2012-02-04 05:30:43 +08:00
|
|
|
if BUILD_BENCHMARKS
|
2012-01-20 04:17:40 +08:00
|
|
|
TESTPROGRAMS += testnc3perf
|
|
|
|
testnc3perf_SOURCES = testnc3perf.c
|
2012-01-24 03:25:47 +08:00
|
|
|
CLEANFILES += benchmark.nc
|
2012-02-04 05:30:43 +08:00
|
|
|
endif
|
2012-01-20 04:17:40 +08:00
|
|
|
|
|
|
|
|
2010-06-03 21:24:43 +08:00
|
|
|
# Set up the tests.
|
2012-05-16 01:48:27 +08:00
|
|
|
check_PROGRAMS = $(TESTPROGRAMS)
|
|
|
|
|
|
|
|
# Build Diskless test helpers
|
|
|
|
if BUILD_DISKLESS
|
|
|
|
check_PROGRAMS += tst_diskless tst_diskless3 tst_diskless4
|
2012-03-26 09:34:32 +08:00
|
|
|
if USE_NETCDF4
|
|
|
|
check_PROGRAMS += tst_diskless2
|
|
|
|
endif
|
2012-05-16 01:48:27 +08:00
|
|
|
endif
|
2012-03-26 09:34:32 +08:00
|
|
|
|
2012-04-10 06:03:02 +08:00
|
|
|
TESTS = $(TESTPROGRAMS)
|
|
|
|
|
2012-05-16 01:48:27 +08:00
|
|
|
if BUILD_DISKLESS
|
2012-04-10 06:03:02 +08:00
|
|
|
TESTS += run_diskless.sh
|
2012-06-24 03:25:49 +08:00
|
|
|
if BUILD_MMAP
|
|
|
|
TESTS += run_mmap.sh
|
|
|
|
endif
|
2012-04-10 06:43:30 +08:00
|
|
|
if LARGE_FILE_TESTS
|
2012-04-10 06:03:02 +08:00
|
|
|
TESTS += run_diskless2.sh
|
2012-04-10 06:43:30 +08:00
|
|
|
endif
|
2012-05-16 01:48:27 +08:00
|
|
|
endif
|
2010-06-03 21:24:43 +08:00
|
|
|
|
2010-10-14 06:53:25 +08:00
|
|
|
# This will run a bunch of the test programs with valgrind, the memory
|
|
|
|
# checking tool. (Valgrind must be present for this to work.)
|
|
|
|
if USE_VALGRIND_TESTS
|
2010-12-18 07:54:09 +08:00
|
|
|
if USE_NETCDF4
|
|
|
|
TESTS_ENVIRONMENT=USE_NETCDF4=1
|
|
|
|
else
|
|
|
|
TESTS_ENVIRONMENT=USE_NETCDF4=0
|
|
|
|
endif
|
2010-10-14 06:53:25 +08:00
|
|
|
TESTS += run_valgrind_tests.sh
|
|
|
|
endif # USE_VALGRIND_TESTS
|
|
|
|
|
2010-06-03 21:24:43 +08:00
|
|
|
# Distribute the .c files so that m4 isn't required on the users
|
|
|
|
# machine.
|
2012-04-10 06:03:02 +08:00
|
|
|
EXTRA_DIST = test_get.m4 test_put.m4 run_valgrind_tests.sh \
|
2012-06-24 03:25:49 +08:00
|
|
|
run_diskless.sh run_diskless2.sh run_mmap.sh
|
2012-03-26 09:34:32 +08:00
|
|
|
|
|
|
|
# ref_tst_diskless2.cdl is for diff comparison and to produce tst_diskless2.c
|
|
|
|
EXTRA_DIST += ref_tst_diskless2.cdl
|
2010-06-03 21:24:43 +08:00
|
|
|
|
|
|
|
# Only clean these on mainatiner-clean, because they require m4 to
|
|
|
|
# regenerate.
|
|
|
|
MAINTAINERCLEANFILES = test_get.c test_put.c
|
|
|
|
|
|
|
|
# This rule tells make how to turn our .m4 files into .c files.
|
|
|
|
.m4.c:
|
|
|
|
m4 $(AM_M4FLAGS) $(M4FLAGS) $< >$@
|
|
|
|
|