Skip to content

Commit 40805e5

Browse files
authored
Merge branch 'master' into ejh_hdf4_dispatch_unidata2
2 parents 13fcc67 + 3f035d9 commit 40805e5

File tree

9 files changed

+29
-414
lines changed

9 files changed

+29
-414
lines changed

CMakeLists.txt

Lines changed: 11 additions & 143 deletions
Original file line numberDiff line numberDiff line change
@@ -86,16 +86,16 @@ SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules/"
8686
CACHE INTERNAL "Location of our custom CMake modules.")
8787

8888
# auto-configure style checks, other CMake modules.
89-
INCLUDE(${CMAKE_ROOT}/Modules/CheckLibraryExists.cmake)
90-
INCLUDE(${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)
91-
INCLUDE(${CMAKE_ROOT}/Modules/CheckIncludeFiles.cmake)
92-
INCLUDE(${CMAKE_ROOT}/Modules/CheckTypeSize.cmake)
93-
INCLUDE(${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake)
94-
INCLUDE(${CMAKE_ROOT}/Modules/CheckCXXSourceCompiles.cmake)
95-
INCLUDE(${CMAKE_ROOT}/Modules/CheckCSourceCompiles.cmake)
96-
INCLUDE(${CMAKE_ROOT}/Modules/TestBigEndian.cmake)
97-
INCLUDE(${CMAKE_ROOT}/Modules/CheckSymbolExists.cmake)
98-
INCLUDE(${CMAKE_ROOT}/Modules/GetPrerequisites.cmake)
89+
INCLUDE(CheckLibraryExists)
90+
INCLUDE(CheckIncludeFile)
91+
INCLUDE(CheckIncludeFiles)
92+
INCLUDE(CheckTypeSize)
93+
INCLUDE(CheckFunctionExists)
94+
INCLUDE(CheckCXXSourceCompiles)
95+
INCLUDE(CheckCSourceCompiles)
96+
INCLUDE(TestBigEndian)
97+
INCLUDE(CheckSymbolExists)
98+
INCLUDE(GetPrerequisites)
9999

100100
INCLUDE(CheckCCompilerFlag)
101101
FIND_PACKAGE(PkgConfig QUIET)
@@ -456,7 +456,6 @@ IF(ENABLE_HDF4)
456456
IF(NOT MFHDF_H_INCLUDE_DIR)
457457
MESSAGE(FATAL_ERROR "HDF4 Support specified, cannot find file mfhdf.h")
458458
ELSE()
459-
SET(HAVE_MFHDF_H ON CACHE BOOL "")
460459
INCLUDE_DIRECTORIES(${MFHDF_H_INCLUDE_DIR})
461460
ENDIF()
462461

@@ -709,7 +708,6 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4)
709708
ENDIF()
710709

711710
IF(HDF5_IS_PARALLEL_MPIO)
712-
SET(HAVE_H5PGET_FAPL_MPIO TRUE)
713711
SET(USE_PARALLEL_MPIO ON)
714712
ENDIF()
715713

@@ -719,25 +717,8 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4)
719717

720718
#Check to see if HDF5 library has collective metadata APIs, (HDF5 >= 1.10.0)
721719
CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Pset_all_coll_metadata_ops "" HDF5_HAS_COLL_METADATA_OPS)
722-
723-
OPTION(ENABLE_DYNAMIC_LOADING "Enable Dynamic Loading" ON)
724-
IF(ENABLE_DYNAMIC_LOADING)
725-
SET(USE_LIBDL ON CACHE BOOL "")
726-
ENDIF()
727720
ENDIF(NOT MSVC)
728721

729-
#//////////////////////////
730-
#HDF5 can be optionally linked with the SZIP library (Science Data Lossless Compression Program) and ZLIB
731-
#Symbol to detect in ZLIB can be only H5Z_DEFLATE, a structure only defined in H5Zdeflate.c if the filter is enabled
732-
#For SZIP the structure can be only H5Z_SZIP, defined in H5Zszip.c if the filter is enabled
733-
#check_library_exists() tries to link a temporary program with these symbols
734-
#On MSVC for this detection to work, the HDF5 library MUST HAVE as additional dependencies the ZLIB and SZIP libraries,
735-
#which is not a requirement for the library to build successfully
736-
#//////////////////////////
737-
738-
# Make sure the user has built the library with zlib support.
739-
CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Z_DEFLATE "" HAVE_H5PSET_DEFLATE)
740-
741722
#Check to see if H5Z_SZIP exists in HDF5_Libraries. If so, we must use szip.
742723
CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Z_SZIP "" USE_SZIP)
743724
IF(USE_SZIP)
@@ -751,53 +732,20 @@ IF(USE_HDF5 OR ENABLE_NETCDF_4)
751732
ENDIF()
752733
ENDIF()
753734

754-
CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5free_memory "" HDF5_HAS_H5FREE)
755-
IF(HDF5_HAS_H5FREE)
756-
SET(HAVE_H5FREE_MEMORY TRUE)
757-
ENDIF(HDF5_HAS_H5FREE)
758735
CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Pset_libver_bounds "" HDF5_HAS_LIBVER_BOUNDS)
759736

760-
IF(HDF5_HAS_LIBVER_BOUNDS)
761-
SET(HAVE_H5PSET_LIBVER_BOUNDS TRUE)
762-
ENDIF(HDF5_HAS_LIBVER_BOUNDS)
763-
764737
IF(HDF5_PARALLEL)
765738
SET(HDF5_CC h5pcc)
766739
ELSE()
767740
SET(HDF5_CC h5cc)
768741
ENDIF()
769742

770-
# Starting with hdf5 1.8.11, dynamic loading is an option.
771-
# In case hdf5 has a dependency on libdl, the user must specify
772-
# -DENABLE_DYNAMIC_LOADING=ON when configuring netcdf.
773-
IF(USE_LIBDL)
774-
FIND_LIBRARY(LIBDL NAMES dl dld)
775-
FIND_PATH(LIBDL_INCLUDE_DIR dlfcn.h)
776-
IF(NOT LIBDL)
777-
MESSAGE(ERROR "Cannot find libdl, but dynamic loading was specified.")
778-
ENDIF()
779-
IF(NOT LIBDL_INCLUDE_DIR)
780-
MESSAGE(ERROR "Cannot find dlfcn.h, but dynamic loading was specified.")
781-
ENDIF()
782-
MESSAGE(STATUS "Found libdl: ${LIBDL}")
783-
SET(HAVE_LIBDL ON)
784-
INCLUDE_DIRECTORIES(${LIBDL_INCLUDE_DIR})
785-
ENDIF()
786-
787743
SET(H5_USE_16_API 1)
788744
OPTION(NC_ENABLE_HDF_16_API "Enable HDF5 1.6.x Compatibility(Required)" ON)
789745
IF(NOT NC_ENABLE_HDF_16_API)
790746
SET(H5_USE_16_API 0)
791747
ENDIF()
792748

793-
# Check for ZLib, but only if using HDF5.
794-
FIND_PACKAGE(ZLIB)
795-
IF(NOT ZLIB_LIBRARY)
796-
MESSAGE(FATAL_ERROR "HDF5 Support specified, cannot find ZLib.")
797-
ENDIF()
798-
SET(USE_ZLIB ON)
799-
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIRS})
800-
801749
FIND_PATH(HAVE_HDF5_H hdf5.h)
802750
IF(NOT HAVE_HDF5_H)
803751
MESSAGE(FATAL_ERROR "Compiling a test with hdf5 failed. Either hdf5.h cannot be found, or the log messages should be checked for another reason.")
@@ -862,12 +810,6 @@ IF(ENABLE_DAP)
862810
#include <curl/curl.h>
863811
int main() {int x = CURLINFO_RESPONSE_CODE;}" HAVE_CURLINFO_RESPONSE_CODE)
864812

865-
# Check to see if CURLOPT_CHUNK_BGN_FUNCTION is defined.
866-
# It showed up in curl 7.21.0.
867-
CHECK_C_SOURCE_COMPILES("
868-
#include <curl/curl.h>
869-
int main() {int x = CURLOPT_CHUNK_BGN_FUNCTION;}" HAVE_CURLOPT_CHUNK_BGN_FUNCTION)
870-
871813
# Check to see if CURLINFO_HTTP_CONNECTCODE is defined.
872814
# It showed up in curl 7.10.7.
873815
CHECK_C_SOURCE_COMPILES("
@@ -1249,20 +1191,6 @@ MARK_AS_ADVANCED(ENABLE_SHARED_LIBRARY_VERSION)
12491191
# Option checks
12501192
################################
12511193

1252-
####
1253-
# Check to see if char is signed or unsigned.
1254-
####
1255-
1256-
SET(SIGNED_TEST_SOURCE "\n
1257-
#include <stdlib.h>\n
1258-
int main(void) {\n
1259-
char error_if_char_is_signed[((char)-1) < 0 ? -1 : 1];\n
1260-
error_if_char_is_signed[0] = 0;
1261-
return -;\n
1262-
}\n")
1263-
1264-
CHECK_C_SOURCE_COMPILES("${SIGNED_TEST_SOURCE}" __CHAR_UNSIGNED__)
1265-
12661194
# Library include checks
12671195
CHECK_INCLUDE_FILE("math.h" HAVE_MATH_H)
12681196
CHECK_INCLUDE_FILE("unistd.h" HAVE_UNISTD_H)
@@ -1274,13 +1202,8 @@ ENDIF()
12741202

12751203
CHECK_INCLUDE_FILE("alloca.h" HAVE_ALLOCA_H)
12761204
CHECK_INCLUDE_FILE("malloc.h" HAVE_MALLOC_H)
1277-
CHECK_INCLUDE_FILE("ctype.h" HAVE_CTYPE_H)
1278-
CHECK_INCLUDE_FILE("dirent.h" HAVE_DIRENT_H)
1279-
CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H)
1280-
CHECK_INCLUDE_FILE("errno.h" HAVE_ERRNO_H)
12811205
CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H)
12821206
CHECK_INCLUDE_FILE("getopt.h" HAVE_GETOPT_H)
1283-
CHECK_INCLUDE_FILE("stdbool.h" HAVE_STDBOOL_H)
12841207
CHECK_INCLUDE_FILE("locale.h" HAVE_LOCALE_H)
12851208
CHECK_INCLUDE_FILE("stdint.h" HAVE_STDINT_H)
12861209
CHECK_INCLUDE_FILE("stdio.h" HAVE_STDIO_H)
@@ -1291,51 +1214,30 @@ CHECK_INCLUDE_FILE("stdlib.h" HAVE_STDLIB_H)
12911214
CHECK_INCLUDE_FILE("stdarg.h" HAVE_STDARG_H)
12921215
CHECK_INCLUDE_FILE("strings.h" HAVE_STRINGS_H)
12931216
CHECK_INCLUDE_FILE("signal.h" HAVE_SIGNAL_H)
1294-
CHECK_INCLUDE_FILE("sys/dir.h" HAVE_SYS_DIR_H)
1295-
CHECK_INCLUDE_FILE("sys/ndir.h" HAVE_SYS_NDIR_H)
12961217
CHECK_INCLUDE_FILE("sys/param.h" HAVE_SYS_PARAM_H)
12971218
CHECK_INCLUDE_FILE("sys/stat.h" HAVE_SYS_STAT_H)
12981219
CHECK_INCLUDE_FILE("sys/time.h" HAVE_SYS_TIME_H)
12991220
CHECK_INCLUDE_FILE("sys/types.h" HAVE_SYS_TYPES_H)
1300-
CHECK_INCLUDE_FILE("sys/wait.h" HAVE_SYS_WAIT_H)
13011221
CHECK_INCLUDE_FILE("sys/mman.h" HAVE_SYS_MMAN_H)
13021222
CHECK_INCLUDE_FILE("sys/resource.h" HAVE_SYS_RESOURCE_H)
1303-
CHECK_INCLUDE_FILE("sys/cdefs.h" HAVE_SYS_CDEFS_H)
13041223
CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H)
13051224
CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H)
13061225
CHECK_INCLUDE_FILE("pstdint.h" HAVE_PSTDINT_H)
13071226
CHECK_INCLUDE_FILE("endian.h" HAVE_ENDIAN_H)
13081227
CHECK_INCLUDE_FILE("BaseTsd.h" HAVE_BASETSD_H)
13091228
CHECK_INCLUDE_FILE("stddef.h" HAVE_STDDEF_H)
1310-
CHECK_INCLUDE_FILE("memory.h" HAVE_MEMORY_H)
13111229
CHECK_INCLUDE_FILE("string.h" HAVE_STRING_H)
13121230
CHECK_INCLUDE_FILE("winsock2.h" HAVE_WINSOCK2_H)
13131231
CHECK_INCLUDE_FILE("ftw.h" HAVE_FTW_H)
13141232
CHECK_INCLUDE_FILE("libgen.h" HAVE_LIBGEN_H)
13151233

1316-
CHECK_INCLUDE_FILES("time.h;sys/time.h" TIME_WITH_SYS_TIME)
1317-
1318-
IF(NOT HAVE_STDLIB_H)
1319-
SET(NO_STDLIB_H TRUE)
1320-
ENDIF(NOT HAVE_STDLIB_H)
1321-
1322-
IF(NOT HAVE_SYS_TYPES_H)
1323-
SET(NO_SYS_TYPES_H TRUE)
1324-
ENDIF(NOT HAVE_SYS_TYPES_H)
1325-
1326-
13271234
# Symbol Exists
13281235
CHECK_SYMBOL_EXISTS(isfinite "math.h" HAVE_DECL_ISFINITE)
13291236
CHECK_SYMBOL_EXISTS(isnan "math.h" HAVE_DECL_ISNAN)
13301237
CHECK_SYMBOL_EXISTS(isinf "math.h" HAVE_DECL_ISINF)
1331-
CHECK_SYMBOL_EXISTS(signbit "math.h" HAVE_DECL_SIGNBIT)
13321238
CHECK_SYMBOL_EXISTS(st_blksize "sys/stat.h" HAVE_STRUCT_STAT_ST_BLKSIZE)
13331239
CHECK_SYMBOL_EXISTS(alloca "alloca.h" HAVE_ALLOCA)
13341240
CHECK_SYMBOL_EXISTS(snprintf "stdio.h" HAVE_SNPRINTF)
1335-
CHECK_SYMBOL_EXISTS(vprintf "stdio.h" HAVE_VPRINTF)
1336-
1337-
# For historic purposes...
1338-
SET(HAVE_ST_BLKSIZE ${HAVE_STRUCT_STAT_ST_BLKSIZE})
13391241

13401242
# Type checks
13411243
# Aliases for automake consistency
@@ -1362,9 +1264,6 @@ IF(SIZEOF_LONG_LONG)
13621264
ENDIF(SIZEOF_LONG_LONG)
13631265

13641266
CHECK_TYPE_SIZE("unsigned long long" SIZEOF_UNSIGNED_LONG_LONG)
1365-
IF(SIZEOF_UNSIGNED_LONG_LONG)
1366-
SET(HAVE_UNSIGNED_LONG_LONG_INT TRUE)
1367-
ENDIF(SIZEOF_UNSIGNED_LONG_LONG)
13681267

13691268
CHECK_TYPE_SIZE("off_t" SIZEOF_OFF_T)
13701269
CHECK_TYPE_SIZE("off64_t" SIZEOF_OFF64_T)
@@ -1375,20 +1274,10 @@ IF(SIZEOF_USHORT)
13751274
ENDIF(SIZEOF_USHORT)
13761275

13771276
CHECK_TYPE_SIZE("_Bool" SIZEOF__BOOL)
1378-
IF(SIZEOF__BOOL)
1379-
SET(HAVE__BOOL TRUE)
1380-
ENDIF(SIZEOF__BOOL)
13811277

13821278
CHECK_TYPE_SIZE("size_t" SIZEOF_SIZE_T)
1383-
IF(SIZEOF_SIZE_T)
1384-
SET(HAVE_SIZE_T TRUE)
1385-
ENDIF(SIZEOF_SIZE_T)
13861279

1387-
CHECK_TYPE_SIZE("ssize_t" SIZEOF_SSIZE_T)
1388-
CHECK_TYPE_SIZE("ptrdiff_t" SIZEOF_PTRDIFF_T)
1389-
IF(SIZEOF_PTRDIFF_T)
1390-
SET(HAVE_PTRDIFF_T TRUE)
1391-
ENDIF(SIZEOF_PTRDIFF_T)
1280+
CHECK_TYPE_SIZE("ssize_t" HAVE_SSIZE_T)
13921281

13931282
# __int64 is used on Windows for large file support.
13941283
CHECK_TYPE_SIZE("__int64" SIZEOF___INT_64)
@@ -1407,52 +1296,31 @@ IF(MSVC AND SIZEOF___INT_64)
14071296
SET(SIZEOF_OFF_T ${SIZEOF___INT_64})
14081297
ENDIF()
14091298

1410-
IF(SIZEOF_SSIZE_T)
1411-
SET(HAVE_SSIZE_T 1)
1412-
ELSE()
1413-
CHECK_TYPE_SIZE("SSIZE_T" SIZEOF_SSIZE_T)
1414-
IF(SIZEOF_SSIZE_T)
1415-
SET(HAVE_SSIZE_T 1)
1416-
ENDIF()
1417-
ENDIF()
1418-
14191299
# Check for various functions.
14201300
CHECK_FUNCTION_EXISTS(fsync HAVE_FSYNC)
14211301
CHECK_FUNCTION_EXISTS(strlcat HAVE_STRLCAT)
1422-
CHECK_FUNCTION_EXISTS(strerror HAVE_STRERROR)
1423-
CHECK_FUNCTION_EXISTS(strchr HAVE_STRCHR)
1424-
CHECK_FUNCTION_EXISTS(strrchr HAVE_STRRCHR)
1425-
CHECK_FUNCTION_EXISTS(strcat HAVE_STRCAT)
1426-
CHECK_FUNCTION_EXISTS(strcpy HAVE_STRCPY)
14271302
CHECK_FUNCTION_EXISTS(strdup HAVE_STRDUP)
14281303
CHECK_FUNCTION_EXISTS(strndup HAVE_STRNDUP)
1429-
CHECK_FUNCTION_EXISTS(strcasecmp HAVE_STRCASECMP)
1430-
CHECK_FUNCTION_EXISTS(strtod HAVE_STRTOD)
14311304
CHECK_FUNCTION_EXISTS(strtoll HAVE_STRTOLL)
14321305
CHECK_FUNCTION_EXISTS(strtoull HAVE_STRTOULL)
1433-
CHECK_FUNCTION_EXISTS(strstr HAVE_STRSTR)
14341306
CHECK_FUNCTION_EXISTS(mkstemp HAVE_MKSTEMP)
14351307
CHECK_FUNCTION_EXISTS(mktemp HAVE_MKTEMP)
1436-
CHECK_FUNCTION_EXISTS(rand HAVE_RAND)
14371308
CHECK_FUNCTION_EXISTS(random HAVE_RANDOM)
14381309
CHECK_FUNCTION_EXISTS(gettimeofday HAVE_GETTIMEOFDAY)
14391310
CHECK_FUNCTION_EXISTS(fsync HAVE_FSYNC)
14401311
CHECK_FUNCTION_EXISTS(MPI_Comm_f2c HAVE_MPI_COMM_F2C)
14411312
CHECK_FUNCTION_EXISTS(memmove HAVE_MEMMOVE)
1442-
CHECK_FUNCTION_EXISTS(memcmp HAVE_MEMCMP)
14431313
CHECK_FUNCTION_EXISTS(getpagesize HAVE_GETPAGESIZE)
14441314
CHECK_FUNCTION_EXISTS(sysconf HAVE_SYSCONF)
14451315
CHECK_FUNCTION_EXISTS(getrlimit HAVE_GETRLIMIT)
14461316
CHECK_FUNCTION_EXISTS(_filelengthi64 HAVE_FILE_LENGTH_I64)
1447-
CHECK_FUNCTION_EXISTS(mmap HAVE_MMAP)
14481317
CHECK_FUNCTION_EXISTS(mremap HAVE_MREMAP)
14491318

14501319
IF(ENABLE_MMAP)
14511320
IF(NOT HAVE_MREMAP)
14521321
MESSAGE(WARNING "mremap not found: disabling MMAP support.")
14531322
SET(ENABLE_MMAP OFF)
14541323
ELSE(NOT HAVE_MREMAP)
1455-
SET(HAVE_MMAP ON)
14561324
SET(BUILD_MMAP ON)
14571325
SET(USE_MMAP ON)
14581326
ENDIF(NOT HAVE_MREMAP)

0 commit comments

Comments
 (0)