Skip to content

campreilly/netcdf-4.1.3-with-cmake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a project to create a Windows 7 compatible version of the
C++ interface to the netCDF 4.1.3 library.  The CMake utility will 
be used to create a platform independent build script that will support
both Windows and Unix.  If successful, the goal is to turn this back over
to Unidata as a possible replacement for their current Autoconf based 
system. The test platforms will be:

* Windows 7, 64-bit, Visual C++ 2010 Express Edition, IDE and NMAKe
* Unubtu 10.04 LTS, 32-bit, GNU C++ 4.4.3, make and Eclipse

We strongly recommend that inexperienced CMake people
use the "cmake-gui" utility to configure the project properly.
After using the "configure" option for the first time, netCDF
build settings can be modified by changing the variables in this
gui.  The changed values will remain until the CMake cache is cleared.

The Unidata network Common Data Form (netCDF) is an interface for
scientific data access and a freely-distributed software library that
provides an implementation of the interface.  But, the current
build does not support Windows because of several factors:

1) No configure script support on windows - the Unix build system uses a 
configure script to determine details of the build platform and allow 
the user to specify settings. Windows has no mechanism for this other 
than statically set properties. A Windows-only config.h file needs 
to be created for windows using Cygwin, then included with the distribution. 
Since this contains the version string, it must be updated "by hand" 
before each release. 

2) No m4 on windows - the Unix build uses the macro language 
m4 to generate some of the C code in the netCDF library (for example, 
libsrc/putget.c). M4 must be run under Cygwin to generate these files, 
and then they must be statically added to the windows distribution. 
Each new version of netCDF these files should be checked for changes. 
We are restricting new use of m4 for netCDF compiles, but that 
doesn't help with the existing files. 

3) No user options on Windows - since Windows does not support a 
configure step, all user options must be pre-set in the Visual Studio 
property lists. As a simplification, many options available to 
Unix users will be unavailable to builders on Windows, 
such as --disable-dap, --disable-netcdf-4, and --disable-shared. 

4) Large files (> 2 GB) have proved to be a problem area in 
past Windows builds. 

5) Previous Windows ports have not had to deal with the new OPeNDAP client. 

We believe that an approach based on CMake can address items 1, 2, and 3 
very well. Unfortunately for many people, we will not be including 
the netCDF FORTRAN in out initial effort.

For more information about netCDF, see the netCDF Web page at

    http://www.unidata.ucar.edu/software/netcdf/

For more information about CMake, see the netCDF Web page at

    http://www.cmake.org/


== TO-DO LIST ==

* Add rules to support FORTRAN API.
* Add rules to support man-page generation.
* Add rules to support m4 code generation on Unix platforms.
* Test on a broader variety of platforms.

About

Port latest version of netCDF to Windows 7 using cmake.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published