Commit Graph

43 Commits

Author SHA1 Message Date
Dennis Heimbigner
735ae80928 merge master and fix conflicts 2018-12-12 11:47:54 -07:00
Ward Fisher
7fd7696940 ncgen directory updated 2018-12-06 15:40:43 -07:00
Dennis Heimbigner
1a7531392f Make the netcdf-c library compile with gcc -ansi.
Primary fixes to get -ansi to work.
1. Convert all '//' C++ style comments to /*...*/ or to use #if 0...#endif
2. It turns out that when -ansi is specified, then a number of
   functions no longer are defined in the header -- but they are still
   in the .so file.<br>
   The big example is strdup(). So, added code to include/ncconfig.h to define
   externs for those missing functions that occur in more than one place.
   These are enabled if !_WIN32 && __STDC__ == 1 (__STDC__ is supposed to
   be the equivalent compile time flag to -ansi). Note that this requires
   config.h (which references ncconfig.h) to be included in files where it is
   currently not included. Single uses will be only in the file that uses them.
3. Added mmap test for the MAP_ANONYMOUS flag to configure.ac. Apparently
   this is not always defined with -ansi.
4. fix some large integer constants in nc_test4/tst_atts3.c and nc_test4/tst_filterparser.c
   to avoid compiler complaints.
5. fix a double constant in nc_test4/tst_filterparser.c to avoid compiler complaints.

[Note I suspect #4 and #5 will be a problem on big-endian machines, but we have no way to test]

Misc. Changes:
1. convert more instances of _MSC_VER to _WIN32.
2. added some debugging code to include/nctestserver.h
3. added comment about libdispatch/drc.c always being compiled.
4. modify parser generation in ncgen to remove unneeded files.
2018-12-05 19:20:43 -07:00
Dennis Heimbigner
86fc8745dc merge master and resolve conflicts 2017-08-12 15:50:31 -06:00
Dennis Heimbigner
8f2f9b74e3 re: pull request https://github.com/Unidata/netcdf-c/pull/364
This is a follow-on in that the old utf8 code was still being
used in ncgen to convert utf8->utf16 when converting cdl to Java
(see genj.c).

The new code apparently has no utf16 support, but it does have
utf32 support. Converting utf32 -> utf16 can be approximated by
truncating the 32bits to 16 bits, unless the top 16 bits are
not zero. This latter condition is unlikely to be common because
it implies use of some rather obscure characters.

So solution is to convert to utf32 and truncate to 16 bits to
get utf16. An error is reported if the high-order truncated 16
bits are not zero. If we get complaints, then I will figure out
how to convert full utf32 to a utf16 pair.

Also removed the old code from ncgen.
2017-06-06 15:23:59 -06:00
Ward Fisher
cc496d0c6f Corrected a typo. 2017-05-24 14:33:55 -06:00
Ward Fisher
59ded4a82c Moving some tests around so that 'make check' works properly, in support of https://github.com/Unidata/netcdf-c/issues/339 2017-05-24 14:25:22 -06:00
Dennis Heimbigner
7d9a1107c9 Master merge to remove conflicts 2017-03-29 14:40:08 -06:00
Dennis Heimbigner
80390b94e5 keep up-to-date with master 2017-03-27 12:16:24 -06:00
Dennis Heimbigner
38bf48d2ca re: gihub issue https://github.com/Unidata/netcdf-c/issues/380
Re: esupport ticket support-netcdf : SKS-534087
Ncgen treats an integer with just a U/u suffix as uint64 instead of uint32.
Fix is in ncgen.l
2017-03-24 18:56:14 -06:00
Dennis Heimbigner
44e52e0515 More distcheck cleanup 2017-03-20 13:50:44 -06:00
Dennis Heimbigner
a763bb51d4 Add the intermediate file to be cleaned up 2017-03-18 18:47:19 -06:00
Dennis Heimbigner
cb473bf6ff Apparently we have no .cdl test cases that have
a global attribute whose type is an enum.

Turns out this case fails because of an
oversight in ncgen.

This pr fixes that problem (in semantics.c).
Also added test case .cdl file: tst_gattenum.cdl
2017-03-18 17:57:48 -06: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
d0fb4a472a 1. Added a restriction note on ncgen/Makefile.am.makeparser task.
2. invoked makeparser using bison 3.0.4 and flex 2.5.35
2017-02-22 15:56:29 -07:00
Ward Fisher
ecddeca4ec Added some files to distclean 2016-11-18 14:09:01 -07:00
Dennis Heimbigner
001598ddb6 support fixes for Github issue 323
Fixed issue 323 by properly adding padding
when generating the binary data for use
with nc_put_var/vara.
Also added second testcase.
2016-11-17 15:29:32 -07:00
Ward Fisher
bc6fc8ac14 Updating ncgen run_nc4_tests.sh script to ensure that results are tested in addition to whether or not ncgen exited successfully. 2016-11-16 11:09:14 -07:00
Ward Fisher
2fa4229bb6 Added a file to be cleaned up 2016-11-15 14:39:59 -07:00
Ward Fisher
da48bc61e8 Renamed file added in support of https://github.com/Unidata/netcdf-c/issues/323 2016-11-15 14:27:21 -07: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
dmh
47e10591b4 ckp 2015-11-19 13:44:55 -07:00
dmh
859f105005 merge-squash 2015-08-15 16:26:35 -06:00
dmh
3a559d3f1d Fix occurlflags bug 2014-12-28 15:54:02 -07:00
dmh
cc95bd3d47 1. [NCF-276]/XXI-796914
Columbia server does not serve up proper
   opendap DDS replies. The Dataset {...} name
   changes depending on if the request has certain
   kinds of constraints.
   Code for a hack was not being used, so restore it.
   The fix is to effectively ignore differences in
   Dataset node names if the code is coming from
   columbia.edu.

2. [NCF-278]
   The ncgen code is improperly typing int64 integer constants
   as uint64.

3. [NCF-279]
   Empty string constants were not being properly
   filled when their target array is length 1 or more.
2013-11-17 14:26:14 -07:00
Ward Fisher
f26a4a559a Merged latest from netcdf-cmake branch.
Addressed several cmake-related issues, in terms of
building on Windows.  Also added XGetopt.c to 
EXTRA_dist in Makefile.am files.
2013-03-19 22:40:15 +00:00
Dennis Heimbigner
c50b8c29e2 Fix Jira NCF-233.
Rename nciter.[ch] to nc_iter.[ch] to avoid
potential build issues.
2013-02-28 17:51:09 +00:00
Ward Fisher
ddf3c31bb0 Corrected a handful of syntax issues in CMake config files,
probably introduced more.  

Added CMake-related files to Makefile.am files for inclusion
when creating a distribution package.
2013-02-20 23:28:28 +00:00
Dennis Heimbigner
c0a7749cf5 1) fix out of date ncgentab/ncgenyy files 2)fix Jira-ncf213 bug and add test case 2013-01-03 20:45:34 +00:00
Dennis Heimbigner
d22134376c Fix bug NCF-199 2012-10-31 20:07:11 +00:00
Ward Fisher
d1b159bfa1 Modified Makefile.am scripts to run tests when working with
Windows DLLs.
2012-05-23 20:27:34 +00:00
Dennis Heimbigner
2349c62d18 close Jira NCF-154 2012-03-07 23:38:51 +00:00
Dennis Heimbigner
ea1af11655 Resolve Lynton's vlen problems (partially) re: jira NCF-145 2012-02-14 00:25:32 +00:00
Ed Hartnett
8d99e0b43a more changes for mingw/DLL builds 2011-05-11 19:51:11 +00:00
Ed Hartnett
30ed1c1710 re-added some link options that should not be needed, but are for cygwin and MPI builds 2011-03-22 19:38:55 +00:00
Ed Hartnett
d0d5e7c8c3 changes to make make check work on dll builds (by turning off shell tests for dll builds) 2011-03-21 20:31:56 +00:00
Dennis Heimbigner
9c9a385fbd disallow uppercase section keywords 2010-08-25 19:01:07 +00:00
Ed Hartnett
21f84d5c6c fixed some makefile include problems for ncgen/ncdump 2010-06-28 18:07:35 +00:00
Ed Hartnett
f0a72cbefb fixed broken classic-only build 2010-06-28 17:17:43 +00:00
Dennis Heimbigner
ac1287d00b 2010-06-24 17:32:29 +00:00
Ed Hartnett
bb0035c95d fixed Makefile.am includes to find new netcdf.h location 2010-06-07 15:40:31 +00:00
Ed Hartnett
92ccf1c5fa moved headers to include directory 2010-06-03 20:22:55 +00:00
Ed Hartnett
18f4bca367 moving to trunk subdir 2010-06-03 13:24:43 +00:00