Files
lammps/tools/offline/scripts/update_downloads.sh
2021-10-27 16:33:21 -04:00

56 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
#helper script to update URLs from CMake folder
CMAKE_FOLDER=../../../cmake
function extract_setting()
{
export $1=$(grep -Rh "set($1" ../../../cmake/ | cut -d\" -f2)
}
function update_setting()
{
echo Setting $1 to $2
sed -i "/^$1=/c$1=\"$2\"" init_http_cache.sh
}
DETECTED_URLS=$(grep -PoRh "\w+_URL" ../../../cmake/ | sort | uniq | grep -v ^LAMMPS)
KNOWN_URLS=$(grep -Rh "_URL=" init_http_cache.sh | grep -v ^LAMMPS | grep -v SCAFACOS_FIX | cut -d= -f1)
# check if init_http_cache.sh contains all URLs
for URL in $DETECTED_URLS
do
grep -q ^$URL= init_http_cache.sh
if [ $? -ne 0 ]
then
FILENAME_VAR="${URL/_URL/_FILENAME}"
echo $URL is not known. Please update 'init_http_cache.sh' as follows:
echo
echo 1. add the following line:
echo
echo $URL=""
echo
echo 2. Define a new $FILENAME_VAR if necessary
echo
echo $FILENAME_VAR="pkgname-0.0.0.tar.gz"
echo
echo 3. extend TARBALLS with $URL
echo
echo TARBALLS=\(
echo " ..."
echo " $URL"
echo \)
echo
echo 4. Rerun this script
echo
exit 1
fi
done
# update URLs by grabbing the latest ones from cmake files
for URL in $KNOWN_URLS
do
extract_setting "$URL"
update_setting "$URL" ${!URL}
done