Files
lammps/tools/offline/scripts/init_http_cache.sh
Richard Berger 85f683c1a0 Fix typo
2021-04-29 14:00:23 -04:00

107 lines
3.4 KiB
Bash
Executable File

#!/bin/bash
if [ -z "${HTTP_CACHE_DIR}" ]
then
echo "Must set HTTP_CACHE_DIR environment variable"
exit 1
fi
mkdir -p $HTTP_CACHE_DIR
mkdir -p $HTTP_CACHE_DIR/potentials
mkdir -p $HTTP_CACHE_DIR/thirdparty
cd $HTTP_CACHE_DIR
LAMMPS_DOWNLOADS_URL="https://download.lammps.org"
LAMMPS_POTENTIALS_URL="${LAMMPS_DOWNLOADS_URL}/potentials"
LAMMPS_THIRDPARTY_URL="${LAMMPS_DOWNLOADS_URL}/thirdparty"
###############################################################################
# potentials
POTENTIALS=(
C_10_10.mesocnt.028de73ec828b7830d762702eda571c1
TABTP_10_10.mesont.744a739da49ad5e78492c1fc9fd9f8c1
C_10_10.mesocnt
TABTP_10_10.mesont
)
echo "Dowloading potentials..."
for p in ${POTENTIALS[@]}
do
if [ ! -f $HTTP_CACHE_DIR/potentials/$p ]
then
wget -O $HTTP_CACHE_DIR/potentials/$p $LAMMPS_POTENTIALS_URL/$p
fi
done
###############################################################################
# thirdparty code
echo "Dowloading thirdparty tarballs..."
MPICH2_WIN64_DEVEL_URL="${LAMMPS_THIRDPARTY_URL}/mpich2-win64-devel.tar.gz"
MPICH2_WIN32_DEVEL_URL="${LAMMPS_THIRDPARTY_URL}/mpich2-win32-devel.tar.gz"
VORO_URL="${LAMMPS_THIRDPARTY_URL}/voro++-0.4.6.tar.gz"
OPENCL_LOADER_URL="${LAMMPS_THIRDPARTY_URL}/opencl-loader-2020.12.18.tar.gz"
SCAFACOS_FIX_URL="${LAMMPS_THIRDPARTY_URL}/scafacos-1.0.1-fix.diff"
GTEST_URL="https://github.com/google/googletest/archive/release-1.10.0.tar.gz"
YAML_URL="https://pyyaml.org/download/libyaml/yaml-0.2.5.tar.gz"
MATHJAX_URL="https://github.com/mathjax/MathJax/archive/3.1.2.tar.gz"
EIGEN3_URL="https://gitlab.com/libeigen/eigen/-/archive/3.3.7/eigen-3.3.7.tar.gz"
CUB_URL="https://github.com/NVlabs/cub/archive/1.12.0.tar.gz"
KOKKOS_URL="https://github.com/kokkos/kokkos/archive/3.3.01.tar.gz"
KIM_URL="https://s3.openkim.org/kim-api/kim-api-2.2.1.txz"
MSCG_URL="https://github.com/uchicago-voth/MSCG-release/archive/1.7.3.1.tar.gz"
PLUMED_URL="https://github.com/plumed/plumed2/releases/download/v2.7.0/plumed-src-2.7.0.tgz"
PACELIB_URL="https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2021.4.9.tar.gz"
LATTE_URL="https://github.com/lanl/LATTE/archive/v1.2.2.tar.gz"
SCAFACOS_URL="https://github.com/scafacos/scafacos/releases/download/v1.0.1/scafacos-1.0.1.tar.gz"
GTEST_FILENAME="gtest-1.10.0.tar.gz"
MATHJAX_FILENAME="mathjax-3.1.2.tar.gz"
CUB_FILENAME="cub-1.12.0.tar.gz"
KOKKOS_FILENAME="kokkos-3.3.01.tar.gz"
MSCG_FILENAME="mscg-1.7.3.1.tar.gz"
LATTE_FILENAME="latte-1.2.2.tar.gz"
PACELIB_FILENAME="pacelib-2021.4.9.tar.gz"
TARBALLS=(
MPICH2_WIN64_DEVEL_URL
MPICH2_WIN32_DEVEL_URL
VORO_URL
OPENCL_LOADER_URL
SCAFACOS_FIX_URL
GTEST_URL
YAML_URL
MATHJAX_URL
EIGEN3_URL
CUB_URL
KOKKOS_URL
KIM_URL
MSCG_URL
PLUMED_URL
PACELIB_URL
LATTE_URL
SCAFACOS_URL
)
###############################################################################
# generate proxy cmake file to trick CMake to download from local HTTP server
echo "# auto-generated proxy preset file" > $HTTP_CACHE_DIR/proxy.cmake
for t in ${TARBALLS[@]}
do
FILENAME_VAR=${t/_URL/_FILENAME}
if [ -z ${!FILENAME_VAR} ]
then
filename=$(basename ${!t})
else
filename=${!FILENAME_VAR}
fi
if [ ! -f $HTTP_CACHE_DIR/thirdparty/$filename ]
then
wget -O $HTTP_CACHE_DIR/thirdparty/$filename ${!t}
fi
echo "set(${t} \"\${LAMMPS_DOWNLOADS_URL}/thirdparty/$filename\" CACHE STRING \"\" FORCE)" >> $HTTP_CACHE_DIR/proxy.cmake
done