Commit Graph

36 Commits

Author SHA1 Message Date
Ward Fisher
16c27ca13f
Revert "Fix nczarr-experimental: improve build support, disengage hdf5 vs netcdf4 flags, and find AWS libraries" 2020-08-17 15:51:01 -06:00
Dennis Heimbigner
d538cf38c2 Fix nczarr-experimental to better support CMake and find AWS libraries
The primary fix is to improve CMake build support.
Specific changes include:
* CMake: Provide a better soln to locating the AWS SDK
  libraries; the new way is the preferred method as described in
  the aws-cpp-sdk documentation.
* CMake (and Automake): allow -DENABLE_S3_SDK (default off) to suppress
  looking for AWS libraries.
* CMake: add the complete set of nczarr tests
* CMake: add EXTERNL as needed to various .h files.
* Improve support for windows drive letters in paths.
* Add nczarr and s3 flags to nc-config
* For VisualStudio X nczarr, cleanup the NAN+INFINITY handling
* Convert _MSC_VER -> _WIN32 and vice versa as needed
* NCZarr - support multiple platform paths including windows, cygwin.
  mingw, etc.
* NCZarr - sort the test outputs because different platforms
  produce directory contents in different orders.

One big change concerns netcdf-c/CMakeLists.txt and netcdf-c/configure.ac.
In the current versions, it was the case that --disable-hdf5
disabled netcdf-4 (libsrc4). With nczarr, this can no longer
be the case because nczarr requires libsrc4 even if libhdf5
is disabled. So, I modified the above files to move the
format options (HDF5, NCZarr, HDF4, etc) to a single place
near the front of the files. Now it is the case that:
* Enabling any of the formats that require libsrc4
  also does an implicit --enable-netcdf4.
* --disable-netcdf4 | --disable-netcdf-4 now becomes
  and alias for --disable-hdf5.

There are probably some bugs in this change in terms of
dependencies between format options.

Problems:
* CMake S3 support is still not working for Visual Studio
* A recent issue points out that there is work to do on handling
  UTF8 filenames, but that will be addressed in a separate fix.

Notes:
* Consider converting all of our includes/.h files to use EXTERNL
2020-07-12 12:21:56 -06:00
Ward Fisher
8421dccbf0 Fixed line return issue. 2019-04-08 15:05:26 -06:00
Ward Fisher
3ec310829a Updating template files for nc-config in support of https://github.com/Unidata/netcdf-c/issues/1360. Still have a linebreak to deal with to bring this into line with the behavior of pkgconfig, currently nc-config --libs --static will print two separate lines. 2019-04-08 14:46:08 -06:00
Ward Fisher
f940969fdc Fix typo, exploring solution to https://github.com/Unidata/netcdf-c/issues/1324 2019-02-27 14:14:53 -07:00
Wei-keng Liao
cfcf93eda3 add missing option --has_parallel4 2018-10-02 01:58:21 -05:00
Wei-keng Liao
48da78e133 Use PnetCDF instead of parallel-netcdf to avoid confusion with
parallel netcdf4. Also, update PnetCDF web page.
2018-09-17 17:18:48 -05:00
Ward Fisher
b52f3dd0d5 Corrected issue with nc-config generatred by autotools. 2017-10-16 10:30:47 -06:00
Ward Fisher
d432dc4083 Correcting typos. 2017-10-16 09:55:47 -06:00
Ward Fisher
bd510c33a8 Added help messages to nc-config for the new --has-parallel flag. 2017-10-16 09:40:59 -06:00
Ward Fisher
1e0c260234 Merge branch 'patch-3' of https://github.com/gsjaardema/netcdf-c into has-parallel 2017-10-16 09:36:52 -06:00
Ward Fisher
a5a9e483ff Corrected an issue with --has-szlib 2017-09-18 14:40:51 -06:00
Ward Fisher
1f07874421 Added --has-cdf5 to nc-config generated by autotools. 2017-09-18 14:32:20 -06:00
Peter Hill
2fec785794 Fix method of finding ncxx[4]-config for non-bash shells
`type -p` is a bashism, and might not work with other shells
2017-05-30 11:13:27 +01: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
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
Ward Fisher
a5b595e974 Removed stray info lines in nc-config templates. 2016-11-01 10:47:17 -06:00
Peter Hill
d455718f40 Usage function called wrong in nc-config
`usage` needs to be called with an exit value. Incorrect options won't
set the exit value, so are trickier to detect
2016-08-18 16:48:30 +01:00
Peter Hill
6c028fbf5c Get C++ flags from ncxx{4}-config 2016-08-17 14:45:40 +01:00
Peter Hill
ce15b1cc2d Add couple of missing flags to nc-config
- Add --has-fortran, in addition to the specific --has-f90, --has-f03
- Add --libdir to print just the libdir
- Also 'which nf-config' will spit out errors if nf-config is not found.
  Silence these errors
2016-08-17 14:45:05 +01:00
Peter Hill
a49816ad43 Use libs variable instead of pkg-config
pkg-config isn't used in the cmake version of nc-config, so probably
shouldn't be used in autotools version either?
2016-08-17 14:03:38 +01:00
Peter Hill
86c7575f97 Use correct autotools variables in nc-config
This was fixed in a previous commit for nc-config.cmake.in, but not for
the autotools version
2016-08-17 14:01:25 +01:00
Ward Fisher
792322dc4b Got nc-config to properly parse nf-config in support of https://github.com/Unidata/netcdf-c/issues/296 2016-07-27 14:05:47 -06:00
Ward Fisher
2206527ba5 Wired logging status into nc-config generated by cmake. 2016-02-29 11:32:26 -07:00
Ward Fisher
6f06fb71da 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:24:46 -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
Russ Rew
7a44b66300 Make nc-config work even if user doesn't set PKG_CONFIG_PATH 2015-06-12 14:00:38 -06:00
posophe
a6b6ea54da Use pkgconfig for libs 2015-04-18 13:12:13 +02:00
Russ Rew
c34a4e674b - Deleted --has-szlib option for nc-config, since that is controlled
by an HDF5 configure option, not a netCDF-4 configure option.
 - Fixed bug in HDF5 strings test code.
 - Minor fixes to nccopy man page documentation.
 - Minor fixes to Fortran-90 texinfo docs, since we don't have doxygen
   docs for Fortran yet: just using "Fortran" instead of "fortran" or
   "FORTRAN".
2012-10-31 21:31:07 +00:00
Russ Rew
23898afed1 Minor doc updates for 4.2.1.
Fix nc-config to report information from nf-config, ncxx-config, and
ncxx4-config for backward compatibility (NCF-179).
2012-06-14 18:29:09 +00:00
Russ Rew
df361a2891 Fix nc-config.in so --all option works with or without nf-config installed. Add -r and -w options to nccopy for diskless speedups. 2012-04-12 17:18:06 +00:00
Russ Rew
83675ef257 Fix nc-config.in so nf-config is called for Fortran info, for backward compatibility with use of nc-config in current Makefiles, fixes NCF-165 2012-03-29 12:38:46 +00:00
Ed Hartnett
818b27af54 changed nc-config to no longer rely upon EXTERN_LDFLAGS and EXTERN_CPPFLAGS 2011-05-18 12:06:00 +00:00
Russ Rew
7fb25a2a5a Jeff Whitaker's nc-config change. Cosmetic change to benchmark output. 2010-11-16 23:08:42 +00:00
Ed Hartnett
57d743dddb fixed build problems for libcf/gridspec, pnetcdf, and hdf4 2010-06-10 17:18:48 +00:00
Ed Hartnett
18f4bca367 moving to trunk subdir 2010-06-03 13:24:43 +00:00