netcdf-c/nc-config.cmake.in
Dennis Heimbigner cdbf04956b Provide a single option to disable all network access and testing.
Add the option "--disable-network-access" (automake)
or "-DENABLE_NETWORK_ACCESS=OFF" (cmake).
When disabled, this option transitively disables all
network access capabilities and testing.
If set, this option implies the following:
* --disable-dap
* --disable-byterange
* --disable-s3

This PR answers a request for a feature from Ed Hartnett.

## Misc. Other changes
* Take the opportunity to clean up some old, unused options;
e.g. --enable-multifilters.
* Fix bug in using S3 urls.
2023-06-10 14:08:04 -06:00

436 lines
8.8 KiB
CMake

#! /bin/sh
#
# This forms the basis for the nc-config utility, which tells you
# various things about the netCDF installation. This code was
# contributed by netCDF user Arlindo DaSilva. Thanks Arlindo!
prefix="@CMAKE_INSTALL_PREFIX@"
exec_prefix="@CMAKE_INSTALL_PREFIX@"
libdir="@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@"
includedir="@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@"
plugindir="@PLUGIN_INSTALL_DIR@"
cc="@CMAKE_C_COMPILER@"
cflags="-I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@"
libs="-L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ @NC_LIBS@"
libsprivate="@LIBS@"
HAS_STATIC=""
has_dap2="@ENABLE_DAP2@"
if [ -z $has_dap2 -o "$has_dap2" = "OFF" ]; then
has_dap2="no"
else
has_dap2="yes"
fi
has_dap4="@ENABLE_DAP4@"
if [ -z $has_dap4 -o "$has_dap4" = "OFF" ]; then
has_dap4="no"
else
has_dap4="yes"
fi
has_nc2="@BUILD_V2@"
if [ -z "$has_nc2" -o "$has_nc2" = "OFF" ]; then
has_nc2="no"
else
has_nc2="yes"
fi
has_nc4="@USE_NETCDF4@"
if [ -z "$has_nc4" -o "$has_nc4" = "OFF" ]; then
has_nc4="no"
else
has_nc4="yes"
fi
has_logging="@ENABLE_LOGGING@"
if [ -z "$has_logging" -o "$has_logging" = "OFF" ]; then
has_logging="no"
else
has_logging="yes"
fi
has_hdf4="@USE_HDF4@"
if [ -z "$has_hdf4" -o "$has_hdf4" = "OFF" ]; then
has_hdf4="no"
else
has_hdf4="yes"
fi
has_pnetcdf="@USE_PNETCDF@"
if [ -z "$has_pnetcdf" -o "$has_pnetcdf" = "OFF" ]; then
has_pnetcdf="no"
else
has_pnetcdf="yes"
fi
has_hdf5="@USE_HDF5@"
if [ -z "$has_hdf5" -o "$has_hdf5" = "OFF" ]; then
has_hdf5="no"
else
has_hdf5="yes"
fi
has_szlib="@USE_SZIP@"
if [ -z "$has_szlib" -o "$has_szlib" = "OFF" ]; then
has_szlib="no"
else
has_szlib="yes"
fi
has_cdf5="@ENABLE_CDF5@"
if [ -z "$has_cdf5" -o "$has_cdf5" = "OFF" -o "$has_cdf5" = "FALSE" ]; then
has_cdf5="no"
else
has_cdf5="yes"
fi
has_parallel4="@USE_PARALLEL4@"
if [ -z $has_parallel4 ]; then
has_parallel4="no"
else
has_parallel4="yes"
fi
has_parallel="@USE_PARALLEL@"
if [ -z $has_parallel ]; then
has_parallel="no"
else
has_parallel="yes"
fi
has_nczarr="@ENABLE_NCZARR@"
if [ -z "$has_nczarr" -o "$has_nczarr" = "OFF" -o "$has_nczarr" = "FALSE" ]; then
has_nczarr="no"
else
has_nczarr="yes"
fi
has_benchmarks="@HAS_BENCHMARKS@"
if [ -z "$has_benchmarks" -o "$has_benchmarks" = "OFF" -o "$has_benchmarks" = "FALSE" ]; then
has_benchmarks="no"
else
has_benchmarks="yes"
fi
has_multifilters="yes"
has_zstd="@HAS_ZSTD"
if [ -z "$has_zstd" -o "$has_zstd" = "OFF" -o "$has_zstd" = "FALSE" ]; then
has_zstd="no"
else
has_zstd="yes"
fi
has_quantize="@HAS_QUANTIZE@"
if [ -z "$has_quantize" -o "$has_quantize" = "OFF" -o "$has_quantize" = "FALSE" ]; then
has_quantize="no"
else
has_quantize="yes"
fi
version="@PACKAGE@ @VERSION@"
usage()
{
cat <<EOF
Usage: nc-config [OPTION]
Available values for OPTION include:
--help display this help message and exit
--all display all options
--cc C compiler
--cflags pre-processor and compiler flags
--has-dap2 whether OPeNDAP (DAP2) is enabled in this build
--has-dap4 whether DAP4 is enabled in this build
--has-dap same as --has-dap2 (Deprecated)
--has-nc2 whether NetCDF-2 API is enabled
--has-nc4 whether NetCDF-4/HDF-5 is enabled in this build
--has-hdf5 whether HDF5 is used in build (always the same as --has-nc4)
--has-hdf4 whether HDF4 was used in build
--has-logging whether logging is enabled with --enable-logging.
--has-pnetcdf whether PnetCDF was used in build
--has-szlib whether szlib is included in build
--has-cdf5 whether cdf5 support is included in build
--has-parallel4 whether has parallel IO support via HDF5
--has-parallel whether has parallel IO support via HDF5 or PnetCDF
--has-nczarr whether nczarr enabled
--has-zstd whether zstandard compression enabled
--has-multifilters whether multifilter support is enabled
--has-quanitze whether quantize support is enabled
--has-stdfilters lists the standard filters enabled
--has-benchmarks whether benchmarks enabled
--libs library linking information for netcdf
--static library linking information for statically-compiled netcdf
--prefix Install prefix
--includedir Include directory
--libdir Library directory
--plugindir Plugin directory
--version Library version
EOF
exit $1
}
all()
{
echo
echo "This $version has been built with the following features: "
echo
echo " --cc -> $cc"
echo " --cflags -> $cflags"
echo " --libs -> $libs"
echo " --static -> $libsprivate"
echo
echo
echo " --has-dap -> $has_dap2"
echo " --has-dap2 -> $has_dap2"
echo " --has-dap4 -> $has_dap4"
echo " --has-nc2 -> $has_nc2"
echo " --has-nc4 -> $has_nc4"
echo " --has-hdf5 -> $has_hdf5"
echo " --has-hdf4 -> $has_hdf4"
echo " --has-logging -> $has_logging"
echo " --has-pnetcdf -> $has_pnetcdf"
echo " --has-szlib -> $has_szlib"
echo " --has-cdf5 -> $has_cdf5"
echo " --has-parallel4 -> $has_parallel4"
echo " --has-parallel -> $has_parallel"
echo " --has-nczarr -> $has_nczarr"
echo " --has-zstd -> $has_zstd"
echo " --has-benchmarks -> $has_benchmarks"
echo " --has-multifilters -> $has_multifilters"
echo " --has-stdfilters -> @STD_FILTERS@"
echo " --has-quantize -> $has_quantize"
echo
echo " --prefix -> $prefix"
echo " --includedir -> $includedir"
echo " --libdir -> $libdir"
echo " --plugindir -> $plugindir"
echo " --version -> $version"
echo
}
if test $# -eq 0; then
usage 1
fi
for i in "$@"; do
case $i in
--static)
HAS_STATIC="TRUE"
;;
*)
;;
esac
done
while test $# -gt 0; do
case "$1" in
# this deals with options in the style
# --option=value and extracts the value part
# [not currently used]
-*=*) value=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
*) value= ;;
esac
case "$1" in
--help)
usage 0
;;
--all)
all
;;
--cc)
echo $cc
;;
--cflags)
echo $cflags
;;
--plugindir)
echo $plugindir
;;
--has-dap)
echo $has_dap2
;;
--has-dap2)
echo $has_dap2
;;
--has-dap4)
echo $has_dap4
;;
--has-nc2)
echo $has_nc2
;;
--has-nc4)
echo $has_nc4
;;
--has-hdf5)
echo $has_hdf5
;;
--has-hdf4)
echo $has_hdf4
;;
--has-logging)
echo $has_logging
;;
--has-pnetcdf)
echo $has_pnetcdf
;;
--has-szlib)
echo $has_szlib
;;
--has-cdf5)
echo $has_cdf5
;;
--has-parallel4)
echo $has_parallel4
;;
--has-parallel)
echo $has_parallel
;;
--has-nczarr)
echo $has_nczarr
;;
--has-zstd)
echo $has_zstd
;;
--has-benchmarks)
echo $has_benchmarks
;;
--has-multifilters)
echo $has_multifilters
;;
--has-stdfilters)
echo @STD_FILTERS@
;;
--has-quantize)
echo $has_quantize
;;
--libs)
if [ "x$HAS_STATIC" = "xTRUE" ]; then
echo $libs $libsprivate
else
echo $libs
fi
;;
--static)
;;
--prefix)
echo "${prefix}"
;;
--includedir)
echo "${includedir}"
;;
--libdir)
echo "${libdir}"
;;
--version)
echo $version
;;
--has-c++)
echo $has_cxx
;;
--cxx)
echo $cxx
;;
--cxxflags)
echo $cxxflags
;;
--cxxlibs)
echo $cxxlibs
;;
--has-c++4)
echo $has_cxx4
;;
--cxx4)
echo $cxx4
;;
--cxx4flags)
echo $cxx4flags
;;
--cxx4libs)
echo $cxx4libs
;;
--has-fortran)
echo $has_fortran
;;
--fc)
echo $fc
;;
--fflags)
echo $fflags
;;
--flibs)
echo $flibs
;;
--has-f90)
echo $has_f90
;;
--has-f03)
echo $has_f03
;;
*)
echo "unknown option: $1"
usage 1
;;
esac
shift
done
exit 0