diff --git a/xbps-src/shutils/chroot.sh.in b/xbps-src/shutils/chroot.sh.in index 8250d2117b..79ced14f89 100644 --- a/xbps-src/shutils/chroot.sh.in +++ b/xbps-src/shutils/chroot.sh.in @@ -89,7 +89,9 @@ _EOF if [ -n "$XBPS_HOSTDIR" ]; then echo "XBPS_HOSTDIR=/host" >> $XBPSSRC_CF fi - + if [ -n "$XBPS_CCACHE" ]; then + echo "XBPS_CCACHE=$XBPS_CCACHE" >> $XBPSSRC_CF + fi echo "# End of configuration file." >> $XBPSSRC_CF if [ -d $XBPS_MASTERDIR/tmp ]; then diff --git a/xbps-src/xbps-src.sh.in b/xbps-src/xbps-src.sh.in index ea96cc25a0..0e91a57632 100644 --- a/xbps-src/xbps-src.sh.in +++ b/xbps-src/xbps-src.sh.in @@ -314,6 +314,15 @@ if [ -z "$IN_CHROOT" ]; then else if [ -n "$XBPS_CCACHE" ]; then CCACHEPATH="/usr/lib/ccache/bin" + if [ -n "$XBPS_HOSTDIR" ]; then + [ ! -d "$XBPS_HOSTDIR/ccache" ] && \ + mkdir -p $XBPS_HOSTDIR/ccache + export CCACHE_DIR="$XBPS_HOSTDIR/ccache" + else + [ ! -d "$XBPS_MASTERDIR/host/ccache" ] && \ + mkdir -p $XBPS_MASTERDIR/host/ccache + export CCACHE_DIR="$XBPS_MASTERDIR/host/ccache" + fi fi # In chroot always prefer tools from bootstrap. MYPATH="$CCACHEPATH:/tools/bin:/usr/local/sbin:/bin:/usr/bin"