## DOC:
set -e
+cachedir="${CRAN2DEB_CACHE:-/var/cache/cran2deb}/results/"
+pbuildercache="${CRAN2DEB_PBUILDER_CACHE:-/var/cache/pbuilder/}"
umask 002
root=$1
shift
sys=$(cran2deb which_system)
-mkdir -p /var/cache/cran2deb/results/$sys
+mkdir -p "${cachedir}"/"$sys"
#update_period=10800
update_period=108
-if [ ! $1 = full -o !-e /var/cache/cran2deb/cache.rda ]; then
+cache_rda="${cachedir}/cache.rda"
+if [ ! $1 = full ] || [ ! -e "${cache_rda}" ]; then
delta=$(($update_period+1))
echo Forcing cache update
else
- delta=$(awk 'END{print '^`{date +%s}^-^`{stat -c '%Y' /var/cache/cran2deb/cache.rda}^'}' < /dev/null)
+ seconds_time=$(date +%s)
+ seconds_file=$(stat -c '%Y' "${cache_rda}")
+ delta=$(($seconds_time-$seconds_file))
echo Cache is $delta seconds out of date, auto-update after $update_period seconds.
fi
-if [ ! -e /var/cache/cran2deb/cache.rda ] || [ $delta -gt $update_period ]; then
- mode=create
- if [ -e /var/cache/pbuilder/base-cran2deb-$sys.tgz ]; then
- mode=update
- ]
- echo C: sudo pbuilder $mode --override-config --configfile /etc/cran2deb/sys/$sys/pbuilderrc
- echo "Executing sudo pbuilder $mode --override-config --configfile /etc/cran2deb/sys/$sys/pbuilderrc"
- sudo pbuilder $mode --override-config --configfile /etc/cran2deb/sys/$sys/pbuilderrc
+if [ ! -e "${cache_rda}" ] || [ $delta -gt $update_period ]; then
+ if [ "${CRAN2DEB_BUILD}" == "yes" ]; then
+ mode=create
+ if [ -e "${pbuilder_cache}"/base-cran2deb-$sys.tgz ]; then
+ mode=update
+ fi
+ echo C: sudo pbuilder $mode --override-config --configfile "${CRAN2DEB_CONFDIR:-/etc/cran2deb}"/sys/"$sys"/pbuilderrc
+ echo "Executing sudo pbuilder $mode --override-config --configfile ${CRAN2DEB_CONFDIR:-/etc/cran2deb}/sys/$sys/pbuilderrc"
+ sudo pbuilder $mode --override-config --configfile "${CRAN2DEB_CONFDIR:-/etc/cran2deb}"/sys/"$sys"/pbuilderrc
+ fi;
echo "Executing $root/exec/update_cache $root"
$root/exec/update_cache $root
-}
+fi