1#ifndef CONFIG_H 2#define CONFIG_H 3 4#ifdef _MSC_VER 5 6/* Prevent an issue where there is a circular inclusion 7 of winsock.h/windows.h. This weird state occurs with 8 libdap4 and hdf4 support. The solution comes from the 9 following URL, found after a bit of research. 10 11 Added in support of the 4.5.0-rc1. Hello, future generations. 12 13 * https://stackoverflow.com/questions/1372480/c-redefinition-header-files-winsock2-h 14 15 */ 16 17/* #cmakedefine HAVE_WINSOCK2_H 18 19#ifdef HAVE_WINSOCK2_H 20 #define _WINSOCKAPI_ 21#endif 22*/ 23 #if _MSC_VER>=1900 24 #define STDC99 25 #endif 26/* Define O_BINARY so that the appropriate flags 27are set when opening a binary file on Windows. */ 28 29/* Disable a few warnings under Visual Studio, for the 30 time being. */ 31 #include <io.h> 32 #pragma warning( disable: 4018 4996 4244 4305 ) 33 #define unlink _unlink 34 #define open _open 35 #define close _close 36 #define read _read 37 #define lseek _lseeki64 38 39 #define fstat _fstat64 40 41 #define off_t __int64 42 #define _off_t __int64 43 44 #ifndef _OFF_T_DEFINED 45 #define _OFF_T_DEFINED 46 #endif 47 48 #ifdef _WIN32 49 #ifndef strcasecmp 50 #define strcasecmp _stricmp 51 #endif 52 53 #ifndef snprintf 54 #if _MSC_VER<1900 55 #define snprintf _snprintf 56 #endif 57 #endif 58 #endif 59 60 61 #define strdup _strdup 62 #define fdopen _fdopen 63 #define write _write 64 #define strtoll _strtoi64 65#endif /*_MSC_VER */ 66 67#cmakedefine const 68 69#ifndef _FILE_OFFSET_BITS 70#cmakedefine _FILE_OFFSET_BITS ${_FILE_OFFSET_BITS} 71#cmakedefine _LARGEFILE64_SOURCE 72#cmakedefine _LARGEFILE_SOURCE 73#endif 74 75/* Define if building universal (internal helper macro) */ 76#cmakedefine AC_APPLE_UNIVERSAL_BUILD 1 77 78/* If true, will attempt to download and build netcdf-fortran. */ 79#cmakedefine BUILD_FORTRAN 1 80 81/* default file chunk cache nelems. */ 82#cmakedefine CHUNK_CACHE_NELEMS ${CHUNK_CACHE_NELEMS} 83 84/* default file chunk cache preemption policy. */ 85#cmakedefine CHUNK_CACHE_PREEMPTION ${CHUNK_CACHE_PREEMPTION} 86 87/* default file chunk cache size in bytes. */ 88#cmakedefine CHUNK_CACHE_SIZE ${CHUNK_CACHE_SIZE} 89 90/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP 91 systems. This function is required for `alloca.c' support on those systems. 92 */ 93#cmakedefine CRAY_STACKSEG_END 94 95/* Define to 1 if using `alloca.c'. */ 96#cmakedefine C_ALLOCA 1 97 98/* num chunks in default per-var chunk cache. */ 99#cmakedefine DEFAULT_CHUNKS_IN_CACHE ${DEFAULT_CHUNKS_IN_CACHE} 100 101/* default chunk size in bytes */ 102#cmakedefine DEFAULT_CHUNK_SIZE ${DEFAULT_CHUNK_SIZE} 103 104/* set this only when building a DLL under MinGW */ 105#cmakedefine DLL_EXPORT 1 106 107/* set this only when building a DLL under MinGW */ 108#cmakedefine DLL_NETCDF 1 109 110/* if true, enable CDF5 Support */ 111#cmakedefine ENABLE_CDF5 1 112 113/* if true, enable strict null byte header padding. */ 114#cmakedefine USE_STRICT_NULL_BYTE_HEADER_PADDING 1 115 116/* if true, build DAP2 and DAP4 Client */ 117#cmakedefine ENABLE_DAP 1 118 119/* if true, build DAP4 Client */ 120#cmakedefine ENABLE_DAP4 1 121 122/* if true, build DAP4 Client */ 123#cmakedefine ENABLE_DAP4 1 124 125/* if true, enable DAP group names */ 126#cmakedefine ENABLE_DAP_GROUPS 1 127 128/* if true, do remote tests */ 129#cmakedefine ENABLE_DAP_REMOTE_TESTS 1 130 131/* define the possible sources for remote test servers */ 132#cmakedefine REMOTETESTSERVERS "${REMOTETESTSERVERS}" 133 134/* if true, run extra tests which may not work yet */ 135#cmakedefine EXTRA_TESTS 1 136 137/* use HDF5 1.6 API */ 138#cmakedefine H5_USE_16_API 1 139 140/* Define to 1 if you have `alloca', as a function or macro. */ 141#cmakedefine HAVE_ALLOCA 1 142 143/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix). 144 */ 145#cmakedefine HAVE_ALLOCA_H 1 146 147/* Define to 1 if you have hdf5_coll_metadata_ops */ 148#cmakedefine HDF5_HAS_COLL_METADATA_OPS 1 149 150/* Is CURLINFO_RESPONSE_CODE defined */ 151#cmakedefine HAVE_CURLINFO_RESPONSE_CODE 1 152 153/* Is CURLINFO_HTTP_CODE defined */ 154#cmakedefine HAVE_CURLINFO_HTTP_CONNECTCODE 1 155 156/* Is CURLOPT_BUFFERSIZE defined */ 157#cmakedefine HAVE_CURLOPT_BUFFERSIZE 1 158 159/* Is CURLOPT_TCP_KEEPALIVE defined */ 160#cmakedefine HAVE_CURLOPT_KEEPALIVE 1 161 162/* Is CURLOPT_KEYPASSWD defined */ 163#cmakedefine HAVE_CURLOPT_KEYPASSWD 1 164 165/* Is CURLOPT_PASSWORD defined */ 166#cmakedefine HAVE_CURLOPT_PASSWORD 1 167 168/* Is CURLOPT_USERNAME defined */ 169#cmakedefine HAVE_CURLOPT_USERNAME 1 170 171/* Define to 1 if you have the declaration of `isfinite', and to 0 if you 172 don't. */ 173#cmakedefine HAVE_DECL_ISFINITE 1 174 175/* Define to 1 if you have the declaration of `isinf', and to 0 if you don't. 176 */ 177#cmakedefine HAVE_DECL_ISINF 1 178 179/* Define to 1 if you have the declaration of `isnan', and to 0 if you don't. 180 */ 181#cmakedefine HAVE_DECL_ISNAN 1 182 183/* Define to 1 if you have the <fcntl.h> header file. */ 184#cmakedefine HAVE_FCNTL_H 1 185 186/* Define to 1 if you have the BaseTsd.h header file. */ 187#cmakedefine HAVE_BASETSD_H @HAVE_BASETSD_H@ 188 189/* Define if we have filelengthi64. */ 190#cmakedefine HAVE_FILE_LENGTH_I64 @HAVE_FILE_LENGTH_I64@ 191 192 193/* Define to 1 if you have the `fsync' function. */ 194#cmakedefine HAVE_FSYNC 1 195 196/* Define to 1 if you have the <getopt.h> header file. */ 197#cmakedefine HAVE_GETOPT_H 1 198 199/* Define to 1 if you have the `getpagesize' function. */ 200#cmakedefine HAVE_GETPAGESIZE 1 201 202/* Define to 1 if you have the `getrlimit' function. */ 203#cmakedefine HAVE_GETRLIMIT 1 204 205/* Define to 1 if you have the `gettimeofday' function. */ 206#cmakedefine HAVE_GETTIMEOFDAY 1 207 208/* if true, netcdf4 file properties will be set using H5Pset_libver_bounds */ 209#cmakedefine HDF5_HAS_LIBVER_BOUNDS 1 210 211/* Define to 1 if you have the `H5Z_SZIP' function. */ 212#cmakedefine HAVE_H5Z_SZIP 1 213 214/* Define to 1 if you have the <hdf5.h> header file. */ 215#cmakedefine HAVE_HDF5_H 1 216 217/* Define to 1 if you have the <hdf5.h> header file. */ 218#cmakedefine HAVE_HDF5_HL_H 1 219 220/* Define to 1 if the system has the type `int64'. */ 221#cmakedefine HAVE_INT64 1 222 223/* Define to 1 if you have the <inttypes.h> header file. */ 224#cmakedefine HAVE_INTTYPES_H 1 225 226/* Define to 1 if you have the `dl' library (-ldl). */ 227#cmakedefine HAVE_LIBDL 1 228 229/* Define to 1 if you have the `jpeg' library (-ljpeg). */ 230#cmakedefine HAVE_LIBJPEG 1 231 232/* Define to 1 if you have the `m' library (-lm). */ 233#cmakedefine HAVE_LIBM 1 234 235/* Define to 1 if you have the `mfhdf' library (-lmfhdf). */ 236#cmakedefine HAVE_LIBMFHDF 1 237 238/* Define to 1 if you have the `pnetcdf' library (-lpnetcdf). */ 239#cmakedefine HAVE_LIBPNETCDF 1 240 241/* Define to 1 if you have the <locale.h> header file. */ 242#cmakedefine HAVE_LOCALE_H 1 243 244/* Define to 1 if the system has the type `longlong'. */ 245#cmakedefine HAVE_LONGLONG 1 246 247/* Define to 1 if the system has the type 'long long int'. */ 248#cmakedefine HAVE_LONG_LONG_INT 1 249 250/* Define to 1 if you have the <malloc.h> header file. */ 251#cmakedefine HAVE_MALLOC_H 1 252 253/* Define to 1 if you have the `memmove' function. */ 254#cmakedefine HAVE_MEMMOVE 1 255 256/* Define to 1 if you have the `mkstemp' function. */ 257#cmakedefine HAVE_MKSTEMP 1 258 259/* Define to 1 if you have the `mktemp' function. */ 260#cmakedefine HAVE_MKTEMP 1 261 262/* Define to 1 if you have the `MPI_Comm_f2c' function. */ 263#cmakedefine HAVE_MPI_COMM_F2C 1 264 265/* Define to 1 if you have the `mremap' function. */ 266#cmakedefine HAVE_MREMAP 1 267 268/* Define to 1 if you have the `random' function. */ 269#cmakedefine HAVE_RANDOM 1 270 271/* Define to 1 if you have the `snprintf' function. */ 272#cmakedefine HAVE_SNPRINTF 1 273 274/* Define to 1 if the system has the type `ssize_t'. */ 275#cmakedefine HAVE_SSIZE_T 1 276 277/* Define to 1 if you have the <stdarg.h> header file. */ 278#cmakedefine HAVE_STDARG_H 1 279 280/* Define to 1 if you have the <stdint.h> header file. */ 281#cmakedefine HAVE_STDINT_H 1 282 283/* Define to 1 if you have the <stdio.h> header file. */ 284#cmakedefine HAVE_STDIO_H 1 285 286/* Define to 1 if you have the <stdlib.h> header file. */ 287#cmakedefine HAVE_STDLIB_H 1 288 289/* Define to 1 if you have the `strdup' function. */ 290#cmakedefine HAVE_STRDUP 1 291 292/* Define to 1 if you have the `strndup` function. */ 293#cmakedefine HAVE_STRNDUP 294 295/* Define to 1 if you have the <strings.h> header file. */ 296#cmakedefine HAVE_STRINGS_H 1 297 298/* Define to 1 if you have the <signal.h> header file. */ 299#cmakedefine HAVE_SIGNAL_H 1 300 301/* Define to 1 if you have the <string.h> header file. */ 302#cmakedefine HAVE_STRING_H 1 303 304/* Define to 1 if you have the <ftw.h> header file. */ 305#cmakedefine HAVE_FTW_H 1 306 307/* Define to 1 if you have the <libgen.h> header file. */ 308#cmakedefine HAVE_LIBGEN_H 1 309 310/* Define to 1 if you have the `strlcat' function. */ 311#cmakedefine HAVE_STRLCAT 1 312 313/* Define to 1 if you have the `strtoll' function. */ 314#cmakedefine HAVE_STRTOLL 1 315 316/* Define to 1 if you have the `strtoull' function. */ 317#cmakedefine HAVE_STRTOULL 1 318 319/* Define to 1 if you have the `stroull' function. */ 320#cmakedefine HAVE_STROULL 1 321 322/* Define to 1 if `st_blksize' is a member of `struct stat'. */ 323#cmakedefine HAVE_STRUCT_STAT_ST_BLKSIZE 1 324 325/* Define to 1 if you have the `sysconf' function. */ 326#cmakedefine HAVE_SYSCONF 1 327 328/* Define to 1 if you have the <sys/param.h> header file. */ 329#cmakedefine HAVE_SYS_PARAM_H 1 330 331/* Define to 1 if you have the <sys/resource.h> header file. */ 332#cmakedefine HAVE_SYS_RESOURCE_H 1 333 334/* Define to 1 if you have the <sys/stat.h> header file. */ 335#cmakedefine HAVE_SYS_STAT_H 1 336 337/* Define to 1 if you have the <sys/time.h> header file. */ 338#cmakedefine HAVE_SYS_TIME_H 1 339 340/* Define to 1 if you have the <sys/types.h> header file. */ 341#cmakedefine HAVE_SYS_TYPES_H 1 342 343/* Define to 1 if the system has the type `uchar'. */ 344#cmakedefine HAVE_UCHAR 1 345 346/* Define to 1 if the system has the type `uint'. */ 347#cmakedefine HAVE_UINT 1 348 349/* Define to 1 if the system has the type `uint64'. */ 350#cmakedefine HAVE_UINT64 1 351 352/* Define to 1 if you have the <unistd.h> header file. */ 353#cmakedefine HAVE_UNISTD_H 1 354#cmakedefine YY_NO_UNISTD_H 1 355 356/* Define to 1 if the system has the type `ushort'. */ 357#cmakedefine HAVE_USHORT 1 358 359/* if true, H5free_memory() will be used to free hdf5-allocated memory in 360 nc4file. */ 361#cmakedefine HDF5_HAS_H5FREE 1 362 363/* if true, hdf5 has parallelism enabled */ 364#cmakedefine HDF5_PARALLEL 1 365 366/* if true, include JNA bug fix */ 367#cmakedefine JNA 1 368 369/* do large file tests */ 370#cmakedefine LARGE_FILE_TESTS 1 371 372/* If true, turn on logging. */ 373#cmakedefine LOGGING 1 374 375/* If true, define nc_set_log_level. */ 376#cmakedefine ENABLE_SET_LOG_LEVEL 1 377 378/* max size of the default per-var chunk cache. */ 379#cmakedefine MAX_DEFAULT_CACHE_SIZE ${MAX_DEFAULT_CACHE_SIZE} 380 381/* min blocksize for posixio. */ 382#cmakedefine NCIO_MINBLOCKSIZE ${NCIO_MINBLOCKSIZE} 383 384/* Add extra properties to _NCProperties attribute */ 385#cmakedefine NCPROPERTIES_EXTRA ${NCPROPERTIES_EXTRA} 386 387/* no IEEE float on this platform */ 388#cmakedefine NO_IEEE_FLOAT 1 389 390#cmakedefine BUILD_V2 1 391#cmakedefine ENABLE_DOXYGEN 1 392#cmakedefine ENABLE_INTERNAL_DOCS 1 393#cmakedefine VALGRIND_TESTS 1 394#cmakedefine ENABLE_CDMREMOTE 1 395#cmakedefine USE_HDF5 1 396#cmakedefine ENABLE_FILEINFO 1 397#cmakedefine TEST_PARALLEL ${TEST_PARALLEL} 398#cmakedefine BUILD_RPC 1 399#cmakedefine USE_X_GETOPT 1 400#cmakedefine ENABLE_EXTREME_NUMBERS 1 401 402/* do not build the netCDF version 2 API */ 403#cmakedefine NO_NETCDF_2 1 404 405/* Name of package */ 406#define PACKAGE "netcdf" 407 408/* Define to the address where bug reports for this package should be sent. */ 409#define PACKAGE_BUGREPORT "support-netcdf@unidata.ucar.edu" 410 411/* Define to the full name of this package. */ 412#define PACKAGE_NAME "netCDF" 413 414/* Define to the full name and version of this package. */ 415#define PACKAGE_STRING "netCDF ${netCDF_VERSION}" 416 417/* Define to the one symbol short name of this package. */ 418#define PACKAGE_TARNAME "netcdf" 419 420/* Define to the home page for this package. */ 421#define PACKAGE_URL "" 422 423/* Define to the version of this package. */ 424#cmakedefine PACKAGE_VERSION "${netCDF_VERSION}" 425 426/* The size of `ulonglong` as computed by sizeof. */ 427#cmakedefine SIZEOF_ULONGLONG @SIZEOF_ULONGLONG@ 428 429/* The size of `longlong` as computed by sizeof. */ 430#cmakedefine SIZEOF_LONGLONG @SIZEOF_LONGLONG@ 431 432/* The size of `char` as computed by sizeof. */ 433#cmakedefine SIZEOF_CHAR @SIZEOF_CHAR@ 434 435/* The size of `uchar` as computed by sizeof. */ 436#cmakedefine SIZEOF_UCHAR @SIZEOF_UCHAR@ 437 438/* The size of `__int64` found on Windows systems. */ 439#cmakedefine SIZEOF___INT64 ${SIZEOF___INT64} 440 441/* The size of `void*` as computed by sizeof. */ 442#cmakedefine SIZEOF_VOIDSTAR ${SIZEOF_VOIDSTAR} 443 444/* The size of `short` as computed by sizeof. */ 445#cmakedefine SIZEOF_OFF64_T ${SIZEOF_OFF64_T} 446 447/* The size of `double', as computed by sizeof. */ 448#cmakedefine SIZEOF_DOUBLE ${SIZEOF_DOUBLE} 449 450/* The size of `float', as computed by sizeof. */ 451#cmakedefine SIZEOF_FLOAT ${SIZEOF_FLOAT} 452 453/* The size of `int', as computed by sizeof. */ 454#cmakedefine SIZEOF_INT ${SIZEOF_INT} 455 456/* The size of `long', as computed by sizeof. */ 457#cmakedefine SIZEOF_LONG ${SIZEOF_LONG} 458 459/* The size of `long long', as computed by sizeof. */ 460#cmakedefine SIZEOF_LONG_LONG ${SIZEOF_LONG_LONG} 461 462/* The size of `off_t', as computed by sizeof. */ 463#cmakedefine SIZEOF_OFF_T ${SIZEOF_OFF_T} 464 465/* The size of `short', as computed by sizeof. */ 466#cmakedefine SIZEOF_SHORT ${SIZEOF_SHORT} 467 468/* The size of `size_t', as computed by sizeof. */ 469#cmakedefine SIZEOF_SIZE_T ${SIZEOF_SIZE_T} 470 471/* The size of `uint', as computed by sizeof. */ 472#cmakedefine SIZEOF_UINT ${SIZEOF_UINT} 473 474/* The size of `unsigned int', as computed by sizeof. */ 475#cmakedefine SIZEOF_UNSIGNED_INT ${SIZEOF_UNSIGNED_INT} 476 477/* The size of `unsigned long long', as computed by sizeof. */ 478#cmakedefine SIZEOF_UNSIGNED_LONG_LONG ${SIZEOF_UNSIGNED_LONG_LONG} 479 480/* The size of `unsigned short int', as computed by sizeof. */ 481#cmakedefine SIZEOF_UNSIGNED_SHORT_INT ${SIZEOF_UNSIGNED_SHORT_INT} 482 483/* The size of `ushort', as computed by sizeof. */ 484#cmakedefine SIZEOF_USHORT ${SIZEOF_USHORT} 485 486/* The size of `void*', as computed by sizeof. */ 487#cmakedefine SIZEOF_VOIDP ${SIZEOF_VOIDP} 488 489/* Place to put very large netCDF test files. */ 490#cmakedefine TEMP_LARGE "${TEMP_LARGE}" 491 492/* if true, build DAP Client */ 493#cmakedefine USE_DAP 1 494 495/* if true, include NC_DISKLESS code */ 496#cmakedefine USE_DISKLESS 1 497 498/* set this to use extreme numbers in tests */ 499#cmakedefine USE_EXTREME_NUMBERS 1 500 501/* if true, use ffio instead of posixio */ 502#cmakedefine USE_FFIO 1 503 504/* if true, include experimental fsync code */ 505#cmakedefine USE_FSYNC 1 506 507/* if true, use HDF4 too */ 508#cmakedefine USE_HDF4 1 509 510/* If true, use use wget to fetch some sample HDF4 data, and then test against 511 it. */ 512//#cmakedefine USE_HDF4_FILE_TESTS 1 513 514/* if true, use mmap for in-memory files */ 515#cmakedefine USE_MMAP 1 516 517/* if true, build netCDF-4 */ 518#cmakedefine USE_NETCDF4 1 519 520/* build the netCDF version 2 API */ 521#cmakedefine USE_NETCDF_2 1 522 523/* if true, pnetcdf or parallel netcdf-4 is in use */ 524#cmakedefine USE_PARALLEL 1 525 526/* if true, parallel netcdf-4 is in use */ 527#cmakedefine USE_PARALLEL4 1 528 529/* if true, parallel netCDF is used */ 530#cmakedefine USE_PNETCDF 1 531 532/* if true, use stdio instead of posixio */ 533#cmakedefine USE_STDIO 1 534 535/* if true, compile in szip compression in netCDF-4 variables */ 536#cmakedefine USE_SZIP 1 537 538/* Version number of package */ 539#cmakedefine VERSION "${netCDF_VERSION}" 540 541/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most 542 significant byte first (like Motorola and SPARC, unlike Intel). */ 543#if defined AC_APPLE_UNIVERSAL_BUILD 544# if defined __BIG_ENDIAN__ 545# define WORDS_BIGENDIAN 1 546# endif 547#else 548# ifndef WORDS_BIGENDIAN 549#cmakedefine WORDS_BIGENDIAN 550# endif 551#endif 552 553/* Enable large inode numbers on Mac OS X 10.5. */ 554#ifndef _DARWIN_USE_64_BIT_INODE 555# define _DARWIN_USE_64_BIT_INODE 1 556#endif 557 558/* Define for large files, on AIX-style hosts. */ 559#cmakedefine _LARGE_FILES ${_LARGE_FILES} 560 561/* Define to `long int' if <sys/types.h> does not define. */ 562#cmakedefine off_t long int 563 564/* Define to `unsigned int' if <sys/types.h> does not define. */ 565#cmakedefine size_t unsigned int 566 567/* Define to `int' if <sys/types.h> does not define. */ 568#cmakedefine ssize_t int 569 570/* Define to `unsigned long if <sys/types.h> does not define. */ 571#cmakedefine uintptr_t unsigned long 572 573/* Define strcasecmp, snprintf on Win32 systems. */ 574#ifdef _WIN32 575 #ifndef HAVE_STRCASECMP 576 #define strcasecmp _stricmp 577 #endif 578 579 #ifndef HAVE_SNPRINTF 580 #define snprintf _snprintf 581 #endif 582#endif 583 584#cmakedefine WORDS_BIGENDIAN 585 586#include "ncconfigure.h" 587 588#endif 589