mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-11-21 03:13:42 +08:00
469 lines
10 KiB
CMake
469 lines
10 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="@NETCDF_PLUGIN_INSTALL_DIR@"
|
|
pluginsearchpath="@NETCDF_PLUGIN_SEARCH_PATH@"
|
|
|
|
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="FALSE"
|
|
PRINTLIBS="FALSE"
|
|
|
|
has_dap2="@NETCDF_ENABLE_DAP2@"
|
|
if [ -z $has_dap2 -o "$has_dap2" = "OFF" ]; then
|
|
has_dap2="no"
|
|
else
|
|
has_dap2="yes"
|
|
fi
|
|
|
|
has_dap4="@NETCDF_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="@NETCDF_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="@NETCDF_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="@NETCDF_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="@HAVE_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
|
|
--libs-ac-syntax forces autotools-compatible syntax argument for libraries
|
|
--static library linking information for statically-compiled netcdf
|
|
--prefix Install prefix
|
|
--includedir Include directory
|
|
--libdir Library directory
|
|
--plugindir Plugin install directory
|
|
--plugin-searchpath Plugin search directory
|
|
--version Library version
|
|
--build-system Build System
|
|
|
|
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 " --plugin-searchpath -> $pluginsearchpath"
|
|
echo " --version -> $version"
|
|
echo " --build-system -> cmake"
|
|
echo
|
|
}
|
|
|
|
if test $# -eq 0; then
|
|
usage 1
|
|
fi
|
|
|
|
for i in "$@"; do
|
|
case $i in
|
|
--libs)
|
|
PRINTLIBS="TRUE"
|
|
;;
|
|
--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
|
|
;;
|
|
|
|
--build-system)
|
|
echo "cmake"
|
|
;;
|
|
|
|
--cc)
|
|
echo $cc
|
|
;;
|
|
|
|
--cflags)
|
|
echo $cflags
|
|
;;
|
|
|
|
--plugindir)
|
|
echo $plugindir
|
|
;;
|
|
|
|
--plugin-searchpath)
|
|
echo $pluginsearchpath
|
|
;;
|
|
|
|
--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 $LDFLAGS $libs $libsprivate
|
|
else
|
|
echo $libs
|
|
fi
|
|
;;
|
|
--libs-ac-syntax)
|
|
|
|
libs=$(echo $libs | sed 's/hdf5::hdf5_hl/hdf5_hl/g')
|
|
libs=$(echo $libs | sed 's/HDF5::HDF5/hdf5/g')
|
|
|
|
if [ "x$HAS_STATIC" = "xTRUE" ]; then
|
|
libsprivate=$(echo $libsprivate | sed 's/hdf5::hdf5_hl/hdf5_hl/g')
|
|
libsprivate=$(echo $libsprivate | sed 's/HDF5::HDF5/hdf5/g')
|
|
echo $libs $libsprivate
|
|
else
|
|
echo $libs
|
|
fi
|
|
|
|
;;
|
|
--static)
|
|
if [ "x$PRINTLIBS" != "xTRUE" ]; then
|
|
echo $LDFLAGS $libs $libsprivate
|
|
fi
|
|
;;
|
|
|
|
--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
|