Skip to content
This repository was archived by the owner on Aug 28, 2024. It is now read-only.

Commit

Permalink
Improved the robustness of the dependency builder. New version of Zli…
Browse files Browse the repository at this point in the history
…b dropped today, breaking the script. Now all dependencies are pulled from tagged releases on github.com. HDF5 required some adjustments due to how the main folder from github version is named.
  • Loading branch information
daminton committed Aug 18, 2023
1 parent e0c699e commit ddbb4c5
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 7 deletions.
27 changes: 21 additions & 6 deletions buildscripts/build_dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ set -a
ARGS=$@
. ${SCRIPT_DIR}/_build_getopts.sh ${ARGS}

ZLIB_VER="1.2.13"
HDF5_VER="1.14.1-2"
ZLIB_VER="1.3"
HDF5_VER="1_14_2"
NC_VER="4.9.2"
NF_VER="4.6.1"

Expand All @@ -33,22 +33,36 @@ if [ -d ${DEPENDENCY_DIR}/zlib-${ZLIB_VER} ]; then
make distclean
cd ${DEPENDENCY_DIR}
else
wget -qO- https://www.zlib.net/zlib-${ZLIB_VER}.tar.gz | tar xvz
[ -d ${DEPENDENCY_DIR}/zlib-* ] && rm -rf ${DEPENDENCY_DIR}/zlib-*
wget -qO- https://github.com/madler/zlib/releases/download/v${ZLIB_VER}/zlib-${ZLIB_VER}.tar.gz | tar xvz
fi

if [ -d ${DEPENDENCY_DIR}/hdf5-${HDF5_VER} ]; then
cd ${DEPENDENCY_DIR}/hdf5-${HDF5_VER}
printf "Checking if HDF5 source exists\n"
if [[ (-d ${DEPENDENCY_DIR}/hdfsrc) && (-f ${DEPENDENCY_DIR}/hdfsrc/README.md) ]]; then
OLDVER=$(grep version ${DEPENDENCY_DIR}/hdfsrc/README.md | awk '{print $3}' | sed 's/\./_/g')
printf "Existing copy of HDF5 source detected\n"
printf "Existing version : ${OLDVER}\n"
printf "Requested version: ${HDF5_VER}\n"
if [ "$OLDVER" != "${HDF5_VER}" ]; then
printf "Existing version of HDF5 source doesn't match requested. Deleting\n"
rm -rf ${DEPENDENCY_DIR}/hdfsrc
fi
fi

if [ -d ${DEPENDENCY_DIR}/hdfsrc ]; then
cd ${DEPENDENCY_DIR}/hdfsrc
make distclean
cd ${DEPENDENCY_DIR}
else
wget -qO- https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.14/hdf5-1.14.1/src/hdf5-${HDF5_VER}.tar.gz | tar xvz
wget -qO- https://github.com/HDFGroup/hdf5/releases/download/hdf5-${HDF5_VER}/hdf5-${HDF5_VER}.tar.gz | tar xvz
fi

if [ -d ${DEPENDENCY_DIR}/netcdf-c-${NC_VER} ]; then
cd ${DEPENDENCY_DIR}/netcdf-c-${NC_VER}
make distclean
cd ${DEPENDENCY_DIR}
else
[ -d ${DEPENDENCY_DIR}/netcdf-c-* ] && rm -rf ${DEPENDENCY_DIR}/netcdf-c-*
wget -qO- https://github.com/Unidata/netcdf-c/archive/refs/tags/v${NC_VER}.tar.gz | tar xvz
fi

Expand All @@ -57,6 +71,7 @@ if [ -d ${DEPENDENCY_DIR}/netcdf-fortran-${NF_VER} ]; then
make distclean
cd ${DEPENDENCY_DIR}
else
[ -d ${DEPENDENCY_DIR}/netcdf-fortran-* ] && rm -rf ${DEPENDENCY_DIR}/netcdf-fortran-*
wget -qO- https://github.com/Unidata/netcdf-fortran/archive/refs/tags/v${NF_VER}.tar.gz | tar xvz
fi
cd $ROOT_DIR
Expand Down
2 changes: 1 addition & 1 deletion buildscripts/build_hdf5.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ printf "LD_LIBRARY_PATH: ${LD_LIBRARY_PATH}\n"
printf "LDFLAGS: ${LDFLAGS}\n"
printf "*********************************************************\n"

cd ${DEPENDENCY_DIR}/hdf5-*
cd ${DEPENDENCY_DIR}/hdfsrc
if [ $COMPILER = "GNU-Mac" ]; then
read -r OS ARCH < <($SCRIPT_DIR/get_platform.sh)
if [ $ARCH = "arm64" ]; then
Expand Down

0 comments on commit ddbb4c5

Please sign in to comment.