Commit Graph

346 Commits

Author SHA1 Message Date
Ward Fisher
a5a9e483ff Corrected an issue with --has-szlib 2017-09-18 14:40:51 -06:00
Wei-keng Liao
f7ee463119 disable CDF5 tests when size_t is less than 8 bytes 2017-09-16 17:35:52 -05:00
Ward Fisher
62d80a3f8f Corrected problem in configure.ac 2017-09-15 16:11:57 -06:00
Ward Fisher
035ec80fb2 Wiring in CDF5 configure-time option. 2017-09-13 15:25:40 -06:00
Dennis Heimbigner
a2e0f069ec This pr should probably be delayed until after Version 4.5.
Primary change is to cleanup code and remove duplicated code.

1. Unify the rc file reading into libdispatch/drc.c. Eventually extend
   if we need rc file for netcdf itself as opposed to the dap code.
2. Unify the extraction from the rc file of DAP authorization info.
3. Misc. other small unifications: make temp file, read file.
4. Avoid use of libcurl when reading file:// because
   there is some kind of problem with the Visual Studio version.
   Might be related to the winpath problem.
   In any case, do direct read instead.
5. Add new error code NC_ERCFILE for errors in reading RC file.
6. Complete documentation cleanup as indicated in this comment
   https://github.com/Unidata/netcdf-c/pull/472#issuecomment-325926426
7. Convert some occurrences of #ifdef _WIN32 to #ifdef _MSC_VER
2017-09-02 18:09:36 -06:00
Dennis Heimbigner
d8d4ed627a master merge 2017-08-29 18:05:46 -06:00
Wei-keng Liao
8b6d131cbe Because ncx.c and putget.c are to be released with the package in case users do not have m4, the generation of the two C files cannot depend on the configure option of --enable-erange-fill. This commit fixes this problem by replacing m4 conditional define with C conditional preprocess. 2017-08-20 14:32:57 -05:00
Dennis Heimbigner
86fc8745dc merge master and resolve conflicts 2017-08-12 15:50:31 -06:00
Ward Fisher
05d3d7e9f5 Merge remote-tracking branch 'origin/d4tempfile.dmh' into v4.5.0-release-branch 2017-08-07 10:12:36 -06:00
Dennis Heimbigner
4d8fbbf501 If DAP (2 or 4) is enabled, but diskless is disabled, then the
dap code will create a real temporary file in which to store the
converted metadata for the DAP .dds or .dmr.

It was assumed that the nc_close code would reclaim the
temporary file. For DAP2, reclamation occurs in the ncio
code. For DAP4, it was assumed that the libsrc4 code would do
the reclamation, but for whatever reason, this is not happening.
Thus, in this situation, a temporary file is left in the file
system. Aside from being irritating to users, this screws up
'make distcheck'.

So the DAP4 code is fixed to ensure that the temporary file is
properly reclaimed independent of the libsrc4 code.
2017-08-05 22:41:31 -06:00
Dennis Heimbigner
9719fbfbad re: hithub issue https://github.com/Unidata/netcdf-c/issues/435
Some temporary files are being left in a tempdir (e.g. /tmp
under *nix*).

The situation is described tersely in
netcdf-c/docs/auth.html#REDIR Basically, when a url is used that
requires redirection, a physical cookiejar file is required
to exist in the file system in order for this to work.

Since it was difficult to figure out when redirection was
being used (it was internal to libcurl) I needed to be prepared for that
eventuality. The result was that I always created a cookiejar file if one
was not specified in the rc file. This actually occurs in two places:
one inside oc2 and one inside libdap4.

The solution was two-fold:
1. do not use a cookiejar directory -- create cookiejar file directly
2. ensure that all cookiejar related files are reclaimed by nc_close().
Note that if nc_close (or nc_abort) is not called for whatever reason,
then reclamation will not occur.
2017-07-05 10:03:48 -06:00
Wei-keng Liao
6b85d54d94 typedef schar to signed char 2017-06-08 23:55:25 -05:00
Ward Fisher
b73c81697c Removed a line in configure.ac that is potentially redundant and throws an error on some systems. In support of https://github.com/Unidata/netcdf-c/issues/413 2017-06-08 12:38:43 -06:00
Ward Fisher
3a0b0d5339 Replaced sed with configure_ac_files, since sed may not be available. 2017-06-07 13:21:07 -06:00
Ward Fisher
bad0058410 Corrected a missed string. 2017-06-01 13:40:04 -06:00
Ward Fisher
ec33411c6c Bumped revision information to next version. 2017-06-01 13:35:39 -06:00
Ward Fisher
a077289464 Refactored hdf4 chunking test a little bit. 2017-06-01 09:11:52 -06:00
Ward Fisher
08f7d06eb6 Refactoring hdf4 chunking test in similar fashion to hdf5 compatibility test. Files are linked via AC_CONFIG_LINKS instead of shuffling things around in a shell script. 2017-06-01 09:02:31 -06:00
Ward Fisher
df872ac1bc Continued refactoring. 2017-05-31 16:34:46 -06:00
Ward Fisher
ebd1fca32a Working on reformulating test_common.sh 2017-05-31 15:42:59 -06:00
Ward Fisher
02a6585eae Corrected some typos. 2017-05-24 15:49:18 -06:00
Dennis Heimbigner
d37ac215e2 Add new capabilities to filter code:
1. Allow nccopy to apply filters, especially on the output file.
   This provides a third way to do this other than using ncgen or
   programatically
2. Make sure that even if the filter code is not available, it is
   possible to see the filter id and parameters for variables using
   e.g ncdump -hs.
3. Fix bug in nccopy so that the input file does
   not necessarily have to be netcdf-4.
4. At last minute decided to change to using a
   single "_Filter" attribute for ncgen
5. Added a test to tst_filter.sh to generate C code using ncgen.
2017-05-14 18:10:02 -06:00
Dennis Heimbigner
c834d4af12 merge from master 2017-05-10 12:33:03 -06:00
Dennis Heimbigner
7c3164577e Finalize the compression support.
This relies on the HDF5 capability to
dynamically load compression filters.
Note that a compression filter is just
a subcase of filters.

The primary user-visible changes are as follows:
1. Add a standard header "netcdf_filter.h" that defines
   the necessary API extensions
2. Modify ncgen to support two new special attributes
   "_Filter_ID" and "_Filter_Parameters" so that compression
   can be turned on when creating a file using ncgen.
4. Add a detailed description of filtering support
   to the user's guide; see the file filters.md
5. Add a test case directory for this: nc_test4/filter_test.
   It is fragile and a ./configure flags (-enable-filter-test)
   is defined (default disabled) to shut this off this test
   to avoid spurious 'make check' failures.

Note that the HDF5 documentation is not up-to-date, so
much of what is encoded here comes from examining the
actual code in the file H5PL.c in the HDF5 source code.
2017-04-27 13:01:59 -06:00
Ward Fisher
8dddd222a3 Merged master, DAP4 support into branch. 2017-04-19 09:29:35 -06:00
Ward Fisher
a0bee2e80f Updated open name for relaxed coordinate bounds. 2017-04-06 16:59:21 -06:00
Ward Fisher
908f787b64 Modified enable erange fill option to be disabled by default. 2017-04-05 17:09:39 -06:00
Dennis Heimbigner
6d8809100f Fix pull request https://github.com/Unidata/netcdf-c/pull/374 (dap4.dmh)
1. When running under windows (as opposed to cygwin)
   we need to make sure to not user /cygdrive/ file paths.
   This was ocurring in libdap4/d4read.c, but may occur
   elsewhere.
2. Shell scripts in the git repo are not being checked-out
   with the executable mode set. Had core.filemode set to false.
   Was a major hassle to fix.
2017-04-03 21:39:44 -06:00
Dennis Heimbigner
3432d4f950 Enable dap4 by default; disable dap4 remote tests 2017-03-30 15:25:20 -06:00
Ward Fisher
8e3790f7ce Merged master. 2017-03-09 12:53:28 -07:00
Dennis Heimbigner
3db4f013bf Primary change: add dap4 support
Specific changes:
1. Add dap4 code: libdap4 and dap4_test.
   Note that until the d4ts server problem is solved, dap4 is turned off.
2. Modify various files to support dap4 flags:
	configure.ac, Makefile.am, CMakeLists.txt, etc.
3. Add nc_test/test_common.sh. This centralizes
   the handling of the locations of various
   things in the build tree: e.g. where is
   ncgen.exe located. See nc_test/test_common.sh
   for details.
4. Modify .sh files to use test_common.sh
5. Obsolete separate oc2 by moving it to be part of
   netcdf-c. This means replacing code with netcdf-c
   equivalents.
5. Add --with-testserver to configure.ac to allow
   override of the servers to be used for --enable-dap-remote-tests.
6. There were multiple versions of nctypealignment code. Try to
   centralize in libdispatch/doffset.c and include/ncoffsets.h
7. Add a unit test for the ncuri code because of its complexity.
8. Move the findserver code out of libdispatch and into
   a separate, self contained program in ncdap_test and dap4_test.
9. Move the dispatch header files (nc{3,4}dispatch.h) to
   .../include because they are now shared by modules.
10. Revamp the handling of TOPSRCDIR and TOPBUILDDIR for shell scripts.
11. Make use of MREMAP if available
12. Misc. minor changes e.g.
	- #include <config.h> -> #include "config.h"
	- Add some no-install headers to /include
	- extern -> EXTERNL and vice versa as needed
	- misc header cleanup
	- clean up checking for misc. unix vs microsoft functions
13. Change copyright decls in some files to point to LICENSE file.
14. Add notes to RELEASENOTES.md
2017-03-08 17:01:10 -07:00
Dennis Heimbigner
ee2916f60a Originally, libdap2 was also going to provide
a dap2->netcdf-4 translation. That is now
superceded by dap4. But there is some cruft
in the dap2 code around this that should be removed.
2017-02-21 15:13:37 -07:00
Ward Fisher
3e5124996e Merged https://github.com/Unidata/netcdf-c/pull/319 to resolve some recently arisen conflicts, in preparation for larger merge. 2017-02-01 13:27:29 -07:00
Ward Fisher
0d2727d9da Merging pull request from gsjaardema, see https://github.com/Unidata/netcdf-c/pull/335 for more information. 2017-01-30 12:45:50 -07:00
Ward Fisher
209c31d3f3 Bringing config.h as generagted by cmake in line with config.h as generated by autotools. 2017-01-27 17:41:03 -07:00
Ward Fisher
77b6fbd90b Corrected a typo. 2016-12-05 13:07:09 -07:00
Greg Sjaardema
9491ea2c5b Add hdf5 collective metadata api detection to configure-based build 2016-12-01 13:35:24 -07:00
Wei-keng Liao
154b805dc4 check PnetCDF setting on erange-fill and adjust 2016-11-14 10:41:10 -06:00
Wei-keng Liao
2081ae7099 add configure option --enable-relax-coord-bound for issue #243 2016-11-12 23:58:09 -06:00
Wei-keng Liao
5137be27d1 add configure/cmake option to disable erange_fill 2016-11-03 15:14:14 -05:00
Wei-keng Liao
7572e1cbbf add sizeof checks for unsigned data types 2016-10-28 18:16:49 -05:00
Ward Fisher
b2e4b74e3a Restricted tests from running when they require the utilities but the utilities were not built, in autoconf-based tests. See https://github.com/Unidata/netcdf-c/issues/313 for more information. 2016-08-31 15:38:59 -06:00
Dennis Heimbigner
0cf1e2c49f re: Github issue netcdf-c 300
Modified provenance code to allocate the minimal space
needed for _NCProperties attribute in file.  Basically
required using malloc in the provenance code and in ncdump.
Otherwise should cause no externally visible effects.
Also removed the ENABLE_FILEINFO from configure.ac since
the provenance code is no longer optional.
2016-08-08 09:24:19 -06:00
Ward Fisher
6b79ffaa16 While I'm at it, fixed an incorrect development version. 2016-06-30 12:20:50 -06:00
Ward Fisher
6aa3763622 Bumped version humber in autotools file. 2016-06-28 13:26:02 -06:00
dmh
5bfdf54263 The name hash for hdf4 variables was
not being computed. Fix in nc4file.c.
Not sure how this ever worked for any variable.
What is also weird is that the dim hash is
apparently being computed.
2016-06-01 15:20:36 -06:00
Dennis Heimbigner
8c1f8f57ee re: https://github.com/Unidata/netcdf-c/issues/269
The hash field for phony dimensions was not being set
(in nc4hdf.c). Also added test case (nc_test4/?).
Note that I searched for other similar failures and
did not find any, but I may have missed them.
2016-05-24 19:37:21 -06:00
Ward Fisher
d88ad0e0d9 Corrected an issue with autoconf config date using source_date_epoch even when SOURCE_DATE_EPOCH was not defined. 2016-05-23 15:31:40 -06:00
Ward Fisher
527dcb484f Corrected/correcting a stray '@' symbol, noticed by czender in https://github.com/Unidata/netcdf-c/issues/265 2016-05-23 15:24:32 -06:00
Bas Couwenberg
aa8f23c5bb Use SOURCE_DATE_EPOCH instead of current date.
The environment variable is used to support Reproducible Builds.

https://reproducible-builds.org/specs/source-date-epoch/
2016-05-15 17:20:18 +02:00
Dennis Heimbigner
11a259ad86 Add provenance info for netcdf-4 files.
This consists of a persistent attribute named
_NCProperties plus two computed attributes
_IsNetcdf4 and _SuperblockVersion.
See the 'Provenance Attributes' section
of docs/attribute_conventions.md for details.
2016-05-07 14:32:07 -06:00
Ward Fisher
9136afdcbe Modified configure to assume an empty CFLAGS, which can/must then be overridden by any downstream developers. 2016-05-02 22:07:14 +00:00
Ward Fisher
9d91a9684a Merge branch 'gh252' 2016-04-12 10:03:40 -06:00
Ward Fisher
3f773258bd Corrected an issue with hashmap and missing random() function on Windows using Visual Studio 2013 2016-04-11 16:07:27 -06:00
Ward Fisher
038b7350c5 Wired in fix for out-of-source build for hdf5 file compatibility check. https://github.com/Unidata/netcdf-c/issues/252 2016-04-11 13:42:14 -06:00
Ward Fisher
b69cba26b6 Added libver_bounds check to configure.ac. 2016-04-08 21:37:37 +00:00
Ward Fisher
2206527ba5 Wired logging status into nc-config generated by cmake. 2016-02-29 11:32:26 -07:00
Ward Fisher
e4ee2add6b Modified nc-config to reflect value of --has-f03 when netcdf-fortran is found, and also added '--enable-logging' to determine if netcdf-c was built with logging enabled. 2016-02-29 11:22:10 -07:00
Ward Fisher
1a42d4ff99 Corrected version string to reflect development branch is 4.4.1 in support of correcting https://github.com/Unidata/netcdf-c/issues/214. 2016-02-08 17:36:04 -07:00
Ward Fisher
cf9a477daa Modified spacing in configure.ac. 2016-01-26 10:09:14 -07:00
Ward Fisher
60644f3c4c Bumped next development version. 2016-01-13 10:01:34 -07:00
Dennis Heimbigner
d15f277252 The max dimension sizes do not take CDF-5 format into account.
NetCDF-c Github issue #185

The code in libsrc/dim.c has not been upgraded to support
CDF-5 format.

Rule we are implementing sets the max dimension sizes as follows:

Classic:	CDF-1	NC_MAX_INT - 3    = 2147483647 - 3
64 bit Offset:	CDF-2	NC_MAX_UINT - 3	  =  4294967295 - 3
64 bit Data:	CDF-5	NC_MAX_UINT64 - 3 = 18446744073709551615 - 3

The -3 is to handle rounding.
2016-01-05 21:26:25 -07:00
Dennis Heimbigner
8fc2cd2df5 Merge branch 'master' into github156 2015-11-24 13:16:27 -07:00
Ward Fisher
9b9fb791d4 Added a fix for how autodist was checking for szip with libhdf5 [158] 2015-11-20 21:58:28 +00:00
dmh
47e10591b4 ckp 2015-11-19 13:44:55 -07:00
Ward Fisher
05034bfd57 More cleaning up of configuration status messages. 2015-11-17 17:14:22 -07:00
dmh
413e49d758 1. There were several bugs in ncdump/dumplib.c
that were not taking the CDF-5 format into account.

2. Had to update ncgen.1 man page to define the new
   k-flag rules to deal with cdf-5.

3. Had to fix some tests that use 'cmp' for comparison;
   this really should be deprecated.

3. There was a bug in configure.ac with respect
   to using the enable-netcdf-4 flag vs
   using disable-netcdf-4.
2015-11-06 17:03:28 -07:00
Ward Fisher
612b35a84c Merge branch 'master' into cdf-5, in preparation for merging the CDF-5 functionality into the master branch. This will be the key new feature for netcdf 4.4.0. 2015-11-05 13:40:35 -07:00
Ward Fisher
da44a0bf25 Fixed a typo. 2015-11-03 10:37:42 -07:00
Ward Fisher
3c0a487674 Applying a patch for cygwin submitted by Marco Atzeri. 2015-11-02 16:26:50 -07:00
dmh
39ccdc5ee3 conflicts 2015-10-11 13:43:19 -06:00
dmh
ed57a337ec add ptrdiff_t checks 2015-10-11 13:35:44 -06:00
Ward Fisher
77d06c276a Added PARALLEL4 flag to CMakeLists. 2015-10-09 14:13:50 -06:00
Dennis Heimbigner
554034b712 1. Added temporary work-around for cygwin where
AC_CHECK_SIZEOF is not working because anti-virus
   will not allow very rapid creation/deletion of a
   file with same name.
2. modified some test baselines to attempt to fix
   Ward's issue
2015-10-09 10:33:40 -06:00
dmh
8fc86035b2 merge-squash 2015-10-09 10:22:00 -06:00
Dennis Heimbigner
dccbc87d24 1. Added temporary work-around for cygwin where
AC_CHECK_SIZEOF is not working because anti-virus
   will not allow very rapid creation/deletion of a
   file with same name.
2. modified some test baselines to attempt to fix
   Ward's issue
2015-10-09 10:14:45 -06:00
dmh
49597a64af merge-squash 2015-10-09 10:12:11 -06:00
Ward Fisher
ffa0a63a72 There were a few changes that needed to be made, and we needed to disable extra tests by default or 'make distcheck' fails, for now. Will investigate in more depth later. 2015-10-08 11:02:31 -06:00
Ward Fisher
885da233ae Refined Dennis's patch for mitigating a cygwin issue with sleep statements in configure.ac so that only cygwin builds are affected. 2015-09-23 12:49:08 -06:00
dmh
6da2c4969b There is a problem under cygwin on windows 7.
The command ./configure fails on
calls to AC_CHECK_SIZEOF.
A temporary fix is to prefix all such calls
with 'sleep 5' to slow things down.
2015-09-22 15:19:07 -06:00
dmh
765dd83592 Merge branch 'master' of http://github.com/Unidata/netcdf-c 2015-08-19 17:46:50 -06:00
dmh
b8f0522c91 add experimental stdio based ncio module 2015-08-19 17:14:13 -06:00
Ward Fisher
32d788fc7d Merge branch 'header_mod' 2015-08-17 16:00:42 -06:00
Ward Fisher
b5af8f287b Wired new doxygen options in to autoconf based builds. 2015-08-17 12:19:51 -06:00
dmh
fab66699d1 Moved libsrc5 to libsrcp
because pnetcdf is used for
more than CDF-5 files.
2015-08-14 20:39:56 -06:00
Ward Fisher
32100c77b1 Turned extra tests on by default. 2015-07-07 13:49:39 -06:00
Ward Fisher
267d422810 Bumped version number to proper revision in configure.ac. 2015-06-19 12:50:55 -06:00
Ward Fisher
dbd2be12ae Changed version to include 'development' signifier. This will be removed/changed when preparing releases. This way, there will never be a question about what is being worked on. 2015-06-19 12:29:15 -06:00
dmh
7bb344982e Undo commit 6f753dacd1.
Apparently not needed after all.
2015-06-17 15:31:52 -06:00
dmh
6f753dacd1 1. fix a missing socklen_t problem. 2015-06-17 14:06:51 -06:00
Ward Fisher
cf8d7c47b8 Fixed a typo reported by Carl Ponder. 2015-05-29 13:08:09 -06:00
Ward Fisher
0ee68b1b6d Cleaned up some dangling doxygen-related options which were being defined by cmake but not by automake. 2015-05-26 14:29:28 -06:00
Ward Fisher
292c8002a9 Corrected an issue with autotools-based builds. 2015-05-08 14:27:19 -06:00
Ward Fisher
08b5f2d66e Added a check for H5free_memory in configure.ac. 2015-04-21 15:25:05 -06:00
Ward Fisher
9fccf5de56 Bumped version number in preparation for the next release, 4.3.3.1 2015-02-25 10:48:12 -07:00
Ward Fisher
4b9230b4a9 Preparing for 4.3.3 release. 2015-02-12 13:16:54 -07:00
Ward Fisher
ee352cd622 Prepared documentation for upcoming release candidate. 2015-01-14 13:01:13 -07:00
Ward Fisher
e338db5ef2 Corrected typo 2015-01-13 09:56:37 -07:00
Ward Fisher
77619e5c06 Added failure states if m4 utility is not detected. 2015-01-12 10:36:11 -07:00
Ward Fisher
3aa6c969e2 Added an explicit check for CURLOPT_CHUNK_BGN_FUNCTION, otherwise we break the build on systems with libcurl older than version 7.21.0 2014-12-27 22:59:06 -08:00