Skip to content

Commit 2076a5d

Browse files
committed
brought up to date with 4.6.0
2 parents 9ef6fda + 7fe1bcd commit 2076a5d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

99 files changed

+16668
-3119
lines changed

CMakeLists.txt

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ set(PACKAGE "netCDF" CACHE STRING "")
2525
#####
2626

2727
SET(NC_VERSION_MAJOR 4)
28-
SET(NC_VERSION_MINOR 5)
28+
SET(NC_VERSION_MINOR 6)
2929
SET(NC_VERSION_PATCH 1)
3030
SET(NC_VERSION_NOTE "-development")
3131
SET(netCDF_VERSION ${NC_VERSION_MAJOR}.${NC_VERSION_MINOR}.${NC_VERSION_PATCH}${NC_VERSION_NOTE})
@@ -654,7 +654,7 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4)
654654
ENDIF(HDF5_C_LIBRARY AND HDF5_HL_LIBRARY AND HDF5_INCLUDE_DIR)
655655

656656
# There is a missing case in the above code so default it
657-
IF("${HDF5_C_LIBRARY_hdf5}" STREQUAL "" )
657+
IF(NOT HDF5_C_LIBRARY_HDF5 OR "${HDF5_C_LIBRARY_hdf5}" STREQUAL "" )
658658
SET(HDF5_C_LIBRARY_hdf5 "${HDF5_C_LIBRARY}")
659659
ENDIF()
660660

@@ -1106,9 +1106,14 @@ IF(ENABLE_PARALLEL_TESTS AND USE_PARALLEL)
11061106
ENDIF()
11071107

11081108
# Enable special filter test; experimental when using cmake.
1109-
OPTION(ENABLE_FILTER_TEST "Enable special filter test. Ignored if netCDF4 is not enabled" OFF)
1110-
IF(USE_NETCDF4)
1111-
SET(ENABLE_FILTER_TEST OFF CACHE BOOL "")
1109+
OPTION(ENABLE_FILTER_TESTING "Enable filter testing. Ignored if shared libraries or netCDF4 are not enabled" OFF)
1110+
IF(NOT ENABLE_NETCDF4)
1111+
MESSAGE(WARNING "ENABLE_FILTER_TESTING requires netCDF-4. Disabling.")
1112+
SET(ENABLE_FILTER_TESTING OFF CACHE BOOL "")
1113+
ENDIF()
1114+
IF(NOT BUILD_SHARED_LIBS)
1115+
MESSAGE(WARNING "ENABLE_FILTER_TESTING requires shared libraries. Disabling.")
1116+
SET(ENABLE_FILTER_TESTING OFF CACHE BOOL "")
11121117
ENDIF()
11131118

11141119
# Determine whether or not to generate documentation.
@@ -1921,6 +1926,7 @@ is_enabled(USE_MMAP HAS_MMAP)
19211926
is_enabled(JNA HAS_JNA)
19221927
is_enabled(STATUS_RELAX_COORD_BOUND RELAX_COORD_BOUND)
19231928
is_enabled(USE_CDF5 HAS_CDF5)
1929+
is_enabled(ENABLE_ERANGE_FILL HAS_ERANGE_FILL)
19241930

19251931
# Generate file from template.
19261932
CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/libnetcdf.settings.in"
@@ -1962,6 +1968,13 @@ SET(TOPSRCDIR "${CMAKE_SOURCE_DIR}")
19621968
SET(TOPBUILDDIR "${CMAKE_BINARY_DIR}")
19631969
configure_file(${CMAKE_SOURCE_DIR}/test_common.in ${CMAKE_BINARY_DIR}/test_common.sh @ONLY NEWLINE_STYLE LF)
19641970

1971+
#####
1972+
# Build nc_test4/findplugin.sh
1973+
#####
1974+
SET(ISCMAKE "1")
1975+
configure_file(${CMAKE_SOURCE_DIR}/nc_test4/findplugin.in ${CMAKE_BINARY_DIR}/nc_test4/findplugin.sh @ONLY NEWLINE_STYLE LF)
1976+
1977+
19651978
####
19661979
# Export files
19671980
####

RELEASE_NOTES.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,10 @@ Release Notes {#RELEASE_NOTES}
55

66
This file contains a high-level description of this package's evolution. Releases are in reverse chronological order (most recent first). Note that, as of netcdf 4.2, the `netcdf-c++` and `netcdf-fortran` libraries have been separated into their own libraries.
77

8-
## 4.6.0 - TBD
9-
* [Enhancement] Full support for using HDF5 dynamic filters, both for
10-
reading and writing. See the file docs/filters.md.
11-
12-
## 4.5.1 - TBD
8+
## 4.6.1 - TBD
139

10+
## 4.6.0 - January 24, 2018
11+
* [Enhancement] Full support for using HDF5 dynamic filters, both for reading and writing. See the file docs/filters.md.
1412
* [Enhancement] Added an option to enable strict null-byte padding for headers; this padding was specified in the spec but was not enforced. Enabling this option will allow you to check your files, as it will return an E_NULLPAD error. It is possible for these files to have been written by older versions of libnetcdf. There is no effective problem caused by this lack of null padding, so enabling these options is informational only. The options for `configure` and `cmake` are `--enable-strict-null-byte-header-padding` and `-DENABLE_STRICT_NULL_BYTE_HEADER_PADDING`, respectively. See [Github #657](https://github.com/Unidata/netcdf-c/issues/657) for more information.
1513
* [Enhancement] Reverted behavior/handling of out-of-range attribute values to pre-4.5.0 default. See [Github #512](https://github.com/Unidata/netcdf-c/issues/512) for more information.
1614
* [Bug] Fixed error in tst_parallel2.c. See [Github #545](https://github.com/Unidata/netcdf-c/issues/545) for more information.

cf

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ fi
2121

2222
CFLAGS=""
2323
#CFLAGS="-Wall -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unused-parameter -Wconversion ${CFLAGS}"
24-
CFLAGS="-Wall -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unused-parameter -Wno-char-subscripts -Wno-pointer-sign -Wno-format ${CFLAGS}"
24+
#CFLAGS="-Wall -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unused-parameter -Wno-char-subscripts -Wno-pointer-sign -Wno-format ${CFLAGS}"
25+
CFLAGS="-Wall -Wno-unused-parameter -Wno-char-subscripts -Wno-pointer-sign ${CFLAGS}"
2526
#CFLAGS="-Wall ${CFLAGS}"
2627
#CFLAGS="-Wconversion"
2728

@@ -93,14 +94,13 @@ CXXFLAGS="$CPPFLAGS $CXXFLAGS"
9394
FLAGS="--prefix ${PREFIX}"
9495
#FLAGS="$FLAGS --disable-f77 --disable-f90"
9596
#FLAGS="$FLAGS --disable-cxx"
96-
FLAGS="$FLAGS --disable-examples"
97+
#FLAGS="$FLAGS --disable-examples"
9798
#FLAGS="$FLAGS --disable-utilities"
9899
#FLAGS="$FLAGS --enable-cxx-4"
99100
#FLAGS="$FLAGS --enable-dap-long-tests"
100101
#FLAGS="$FLAGS --enable-ffio"
101102
#FLAGS="$FLAGS --enable-benchmarks"
102103
FLAGS="$FLAGS --enable-extreme-numbers"
103-
FLAGS="$FLAGS --enable-extra-tests"
104104
#FLAGS="$FLAGS --enable-large-file-tests"
105105
#FLAGS="$FLAGS --disable-testsets"
106106
#FLAGS="$FLAGS --disable-dap-remote-tests"
@@ -117,7 +117,7 @@ FLAGS="$FLAGS --enable-logging"
117117
#FLAGS="$FLAGS --disable-properties-attribute"
118118
#FLAGS="$FLAGS --disable-silent-rules"
119119
#FLAGS="$FLAGS --with-testservers=remotestserver.localhost:8083"
120-
#FLAGS="$FLAGS --enable-filter-test"
120+
#FLAGS="$FLAGS --disable-filter-testing"
121121

122122
if test "x$PAR4" != x1 ; then
123123
FLAGS="$FLAGS --disable-parallel4"
@@ -192,6 +192,7 @@ fi
192192
if test -z "$FAST" ; then
193193
if test -f Makefile ; then ${MAKE} distclean >/dev/null 2>&1 ; fi
194194
fi
195+
195196
sh $X ./configure ${FLAGS}
196197
for c in $cmds; do
197198
printenv LD_LIBRARY_PATH

cf.cmake

Lines changed: 20 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
11
# Visual Studio
22

3+
# Is netcdf-4 and/or DAP enabled?
4+
NC4=1
5+
#DAP=1
6+
#CDF5=1
7+
#HDF4=1
8+
39
case "$1" in
410
vs|VS) VS=1 ;;
5-
linux|nix) unset VS ;;
11+
linux|nix|l|x) unset VS ;;
612
*) echo "Must specify env: vs|linux"; exit 1; ;;
713
esac
814

@@ -22,29 +28,19 @@ else
2228
CFG="Release"
2329
fi
2430

25-
# Is netcdf-4 and/or DAP enabled?
26-
NC4=1
27-
DAP=1
28-
29-
if test "x$VS" != x ; then
31+
if test "x$VS" != x -a "x$INSTALL" != x ; then
3032
FLAGS="-DCMAKE_PREFIX_PATH=c:/tools/nccmake"
31-
else
32-
FLAGS="$FLAGS -DCMAKE_INSTALL_PREFIX=`pwd`/ignore"
3333
fi
34+
FLAGS="$FLAGS -DCMAKE_INSTALL_PREFIX=/tmp/netcdf"
3435

35-
if test "x$DAP" = x ; then
36-
FLAGS="$FLAGS -DENABLE_DAP=false"
37-
else
38-
FLAGS="$FLAGS -DENABLE_DAP=true"
39-
fi
40-
if test "x$NC4" = x ; then
41-
FLAGS="$FLAGS -DENABLE_NETCDF_4=false"
42-
fi
36+
if test "x$DAP" = x ; then FLAGS="$FLAGS -DENABLE_DAP=false"; fi
37+
if test "x$NC4" = x ; then FLAGS="$FLAGS -DENABLE_NETCDF_4=false"; fi
38+
if test "x$CDF5" != x ; then FLAGS="$FLAGS -DENABLE_CDF5=true"; fi
39+
if test "x$HDF4" != x ; then FLAGS="$FLAGS -DENABLE_HDF4=true"; fi
4340
FLAGS="$FLAGS -DENABLE_CONVERSION_WARNINGS=false"
4441
FLAGS="$FLAGS -DENABLE_DAP_REMOTE_TESTS=true"
4542
FLAGS="$FLAGS -DENABLE_TESTS=true"
4643
FLAGS="$FLAGS -DENABLE_EXAMPLES=false"
47-
#FLAGS="$FLAGS -DENABLE_HDF4=true"
4844
FLAGS="$FLAGS -DENABLE_DYNAMIC_LOADING=false"
4945
FLAGS="$FLAGS -DENABLE_WINSOCK2=false"
5046
#FLAGS="$FLAGS -DENABLE_LARGE_FILE_TESTS=true"
@@ -57,19 +53,20 @@ NCLIB=`pwd`
5753

5854
if test "x$VS" != x ; then
5955
# Visual Studio
60-
#CFG="RelWithDebInfo"
6156
CFG="Release"
62-
NCLIB="${NCLIB}/build/liblib/$CFG"
57+
NCLIB="${NCLIB}/liblib"
6358
export PATH="${NCLIB}:${PATH}"
64-
cmake $FLAGS ..
59+
#G=
60+
cmake "$G" -DCMAKE_BUILD_TYPE=${CFG} $FLAGS ..
6561
cmake --build . --config ${CFG}
6662
cmake --build . --config ${CFG} --target RUN_TESTS
6763
else
6864
# GCC
6965
NCLIB="${NCLIB}/build/liblib"
70-
G="-GUnix Makefiles"
66+
#G="-GUnix Makefiles"
67+
#T="--trace-expand"
7168
cmake "${G}" $FLAGS ..
72-
#make all
73-
#make test
69+
make all
70+
make test
7471
fi
7572
exit

configure.ac

Lines changed: 28 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ AC_REVISION([$Id: configure.ac,v 1.450 2010/05/28 19:42:47 dmh Exp $])
1616
AC_PREREQ([2.59])
1717

1818
# Initialize with name, version, and support email address.
19-
AC_INIT([netCDF], [4.5.1-development], [support-netcdf@unidata.ucar.edu])
19+
AC_INIT([netCDF], [4.6.1-development], [support-netcdf@unidata.ucar.edu])
2020

2121
##
2222
# Prefer an empty CFLAGS variable instead of the default -g -O2.
@@ -26,7 +26,7 @@ AC_INIT([netCDF], [4.5.1-development], [support-netcdf@unidata.ucar.edu])
2626
: ${CFLAGS=""}
2727

2828
AC_SUBST([NC_VERSION_MAJOR]) NC_VERSION_MAJOR=4
29-
AC_SUBST([NC_VERSION_MINOR]) NC_VERSION_MINOR=5
29+
AC_SUBST([NC_VERSION_MINOR]) NC_VERSION_MINOR=6
3030
AC_SUBST([NC_VERSION_PATCH]) NC_VERSION_PATCH=1
3131
AC_SUBST([NC_VERSION_NOTE]) NC_VERSION_NOTE="-development"
3232

@@ -75,7 +75,6 @@ AC_CONFIG_LINKS([nc_test4/ref_hdf5_compat3.nc:nc_test4/ref_hdf5_compat3.nc])
7575
AC_CONFIG_LINKS([nc_test4/ref_chunked.hdf4:nc_test4/ref_chunked.hdf4])
7676
AC_CONFIG_LINKS([nc_test4/ref_contiguous.hdf4:nc_test4/ref_contiguous.hdf4])
7777

78-
# This call is required by automake.
7978
AM_INIT_AUTOMAKE([foreign dist-zip subdir-objects])
8079

8180
# Check for the existence of this file before proceeding.
@@ -1335,20 +1334,24 @@ if test "x$enable_jna" = xyes ; then
13351334
AC_DEFINE([JNA], [1], [if true, include JNA bug fix])
13361335
fi
13371336

1338-
# Control filter test(s)
1339-
AC_MSG_CHECKING([If filter_test should be enabled (default is no)])
1340-
AC_ARG_ENABLE([filter-test],
1341-
[AS_HELP_STRING([--enable-filter-test],
1342-
[enable filter test])])
1343-
test "x$enable_filter_test" = xyes || enable_filter_test=no
1344-
AC_MSG_RESULT($enable_filter_test)
1337+
# Control filter test/example
1338+
AC_MSG_CHECKING([whether filter testing should be run])
1339+
AC_ARG_ENABLE([filter-testing],
1340+
[AS_HELP_STRING([--disable-filter-testing],
1341+
[Do not run filter test and example; requires shared libraries and netCDF-4])])
1342+
test "x$enable_filter_testing" = xno || enable_filter_testing=yes
1343+
AC_MSG_RESULT($enable_filter_testing)
1344+
13451345
if test "x$enable_netcdf_4" = xno ; then
1346-
AC_MSG_WARN([disabling --enable-filter-test; it requires netcdf-4])
1347-
enable_filter_test=no
1346+
AC_MSG_WARN([netCDF-4 disabled => --disable-filter-testing])
1347+
enable_filter_testing = no
1348+
fi
1349+
1350+
if test "x$enable_shared" = xno ; then
1351+
AC_MSG_WARN([Shared libraries are disabled => --disable-filter-testing])
1352+
enable_filter_testing = no
13481353
fi
1349-
# Define a Generic AM_CONDITIONAL to allow disabling
1350-
# of arbitrary parts of Makefile.am files
1351-
AM_CONDITIONAL(ENABLE_FILTER_TEST, [test x$enable_filter_test = xyes])
1354+
AM_CONDITIONAL(ENABLE_FILTER_TESTING, [test x$enable_filter_testing = xyes])
13521355

13531356
AC_SUBST(NC_LIBS,[$NC_LIBS])
13541357
AC_SUBST(HAS_DAP,[$enable_dap])
@@ -1368,6 +1371,7 @@ AC_SUBST(HAS_DISKLESS,[$enable_diskless])
13681371
AC_SUBST(HAS_MMAP,[$enable_mmap])
13691372
AC_SUBST(HAS_JNA,[$enable_jna])
13701373
AC_SUBST(RELAX_COORD_BOUND,[$enable_relax_coord_bound])
1374+
AC_SUBST(ENABLE_ERANGE_FILL,[$enable_erange_fill])
13711375

13721376
# Include some specifics for netcdf on windows.
13731377
#AH_VERBATIM([_WIN32_STRICMP],
@@ -1434,6 +1438,7 @@ AX_SET_META([NC_HAS_PNETCDF],[$enable_pnetcdf],[yes])
14341438
AX_SET_META([NC_HAS_PARALLEL],[$enable_parallel],[yes])
14351439
AX_SET_META([NC_HAS_PARALLEL4],[$enable_parallel4],[yes])
14361440
AX_SET_META([NC_HAS_CDF5],[$enable_cdf5],[yes])
1441+
AX_SET_META([NC_HAS_ERANGE_FILL], [$enable_erange_fill],[yes])
14371442

14381443
# Automake says that this is always run in top_builddir
14391444
# and that srcdir is defined (== top_srcdir)
@@ -1442,10 +1447,16 @@ cd $srcdir
14421447
abs_top_srcdir=`pwd`
14431448
cd $abs_top_builddir
14441449

1450+
# test_common.sh setup
14451451
AC_CONFIG_FILES(test_common.sh:test_common.in)
14461452
#rm -f ${abs_top_builddir}/test_common.sh
14471453
#sed -e "s|@TOPSRCDIR@|${abs_top_srcdir}|" -e "s|@TOPBUILDDIR@|${abs_top_builddir}|" <${abs_top_srcdir}/test_common.in >${abs_top_builddir}/test_common.sh
14481454

1455+
# nc_test4/findplugin.sh setup
1456+
AC_SUBST([ISCMAKE], [])
1457+
AC_SUBST([MSVC], [])
1458+
AC_CONFIG_FILES(nc_test4/findplugin.sh:nc_test4/findplugin.in)
1459+
14491460
#####
14501461
# End netcdf_meta.h definitions.
14511462
#####
@@ -1467,6 +1478,7 @@ AC_CONFIG_FILES([Makefile
14671478
ncgen/Makefile
14681479
examples/Makefile
14691480
examples/C/Makefile
1481+
examples/C/hdf5plugins/Makefile
14701482
examples/CDL/Makefile
14711483
oc2/Makefile
14721484
libdap2/Makefile
@@ -1479,7 +1491,7 @@ AC_CONFIG_FILES([Makefile
14791491
docs/images/Makefile
14801492
nctest/Makefile
14811493
nc_test4/Makefile
1482-
nc_test4/filter_test/Makefile
1494+
nc_test4/hdf5plugins/Makefile
14831495
nc_test/Makefile
14841496
ncdap_test/Makefile
14851497
ncdap_test/testdata3/Makefile

docs/Doxyfile.developer

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ PROJECT_NAME = netCDF-C
3838
# could be handy for archiving the generated documentation or if some version
3939
# control system is used.
4040

41-
PROJECT_NUMBER = 4.5.1-development
41+
PROJECT_NUMBER = 4.6.1-development
4242

4343
# Using the PROJECT_BRIEF tag one can provide an optional one line description
4444
# for a project that appears at the top of each page and should give viewer a

docs/Doxyfile.in

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -809,7 +809,8 @@ INPUT = \
809809
@abs_top_srcdir@/examples/C/simple_nc4_wr.c \
810810
@abs_top_srcdir@/examples/C/simple_nc4_rd.c \
811811
@abs_top_srcdir@/examples/C/simple_xy_nc4_wr.c \
812-
@abs_top_srcdir@/examples/C/simple_xy_nc4_rd.c
812+
@abs_top_srcdir@/examples/C/simple_xy_nc4_rd.c \
813+
@abs_top_srcdir@/examples/C/filter_example.c
813814

814815

815816
# This tag can be used to specify the character encoding of the source files
@@ -885,7 +886,7 @@ EXAMPLE_PATH = @abs_top_srcdir@/examples/C
885886
# *.h) to filter out the source-files in the directories. If left blank all
886887
# files are included.
887888

888-
EXAMPLE_PATTERNS =
889+
EXAMPLE_PATTERNS =
889890

890891
# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
891892
# searched for input files to be used with the \include or \dontinclude commands

0 commit comments

Comments
 (0)