mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-12-21 08:39:46 +08:00
f6e25b695e
re: https://github.com/Unidata/netcdf-c/issues/2117 re: https://github.com/Unidata/netcdf-c/issues/2119 * Modify libsrc to allow byte-range reading of netcdf-3 files in private S3 buckets; this required using the aws sdk. Also add a test case. * The aws sdk can sometimes cause problems if the Awd::ShutdownAPI function is not called. So at optional atexit() support to ensure it is called. This is disabled for Windows. * Add documentation to nczarr.md on how to build and use the aws sdk under windows. Currently it builds, but testing fails. * Switch testing from stratus to the Unidata bucket on S3. * Improve support for the s3: url protocol. * Add a s3 specific utility code file: ds3util.c * Modify NC_infermodel to attempt to read the magic number of byte-ranged files in S3. ## Misc. * Move and rename the core S3 SDK wrapper code (libnczarr/zs3sdk.cpp) to libdispatch since it now used in libsrc as well as libnczarr. * Add calls to nc_finalize in the utilities in case atexit is disabled. * Add header only json parser to the distribution rather than as a built source.
71 lines
1.2 KiB
CMake
71 lines
1.2 KiB
CMake
## This is a CMake file, part of Unidata's netCDF package.
|
|
# Copyright 2018, see the COPYRIGHT file for more information.
|
|
#
|
|
# This builds the libzarr dispatch layer.
|
|
#
|
|
# Dennis Heimbigner
|
|
|
|
#add_compile_options("/showincludes")
|
|
|
|
# The source files for the HDF5 dispatch layer.
|
|
SET(libnczarr_SOURCES
|
|
zarr.c
|
|
zattr.c
|
|
zxcache.c
|
|
zchunking.c
|
|
zclose.c
|
|
zcreate.c
|
|
zcvt.c
|
|
zdim.c
|
|
zdispatch.c
|
|
zfile.c
|
|
zfilter.c
|
|
zgrp.c
|
|
zinternal.c
|
|
zmap.c
|
|
zmap_file.c
|
|
zodom.c
|
|
zopen.c
|
|
zprov.c
|
|
zsync.c
|
|
ztype.c
|
|
zutil.c
|
|
zvar.c
|
|
zwalk.c
|
|
zdebug.c
|
|
zarr.h
|
|
zcache.h
|
|
zchunking.h
|
|
zdispatch.h
|
|
zincludes.h
|
|
zinternal.h
|
|
zmap.h
|
|
zodom.h
|
|
zprovenance.h
|
|
zfilter.h
|
|
zdebug.h
|
|
)
|
|
|
|
IF(ENABLE_NCZARR_ZIP)
|
|
SET(libnczarr_SOURCES ${libnczarr_SOURCES} zmap_zip.c)
|
|
ENDIF()
|
|
|
|
IF(ENABLE_S3_SDK)
|
|
SET(libnczarr_SOURCES ${libnczarr_SOURCES} zmap_s3sdk.c)
|
|
ENDIF()
|
|
|
|
# Build the Zarr dispatch layer as a library that will be included in
|
|
# the netCDF library.
|
|
|
|
add_library(nczarr OBJECT ${libnczarr_SOURCES})
|
|
|
|
TARGET_INCLUDE_DIRECTORIES(nczarr PUBLIC ../libncpoco)
|
|
|
|
IF(MPI_C_INCLUDE_PATH)
|
|
target_include_directories(nczarr PUBLIC ${MPI_C_INCLUDE_PATH})
|
|
ENDIF(MPI_C_INCLUDE_PATH)
|
|
|
|
# Remember to package this file for CMake builds.
|
|
ADD_EXTRA_DIST(${libnczarr_SOURCES} CMakeLists.txt)
|
|
|