Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=e7b1405763ac874fd0ab5975aa1037e9cdea3ddb

commit e7b1405763ac874fd0ab5975aa1037e9cdea3ddb
Author: Michel Hermier <[email protected]>
Date:   Sun Dec 2 12:24:50 2012 +0100

scripts/makepkg

* Fixing CCACHE_BASEDIR abuse at makepkg.conf load.

diff --git a/scripts/makepkg b/scripts/makepkg
index 88ae53f..f09e28f 100755
--- a/scripts/makepkg
+++ b/scripts/makepkg
@@ -2361,7 +2361,6 @@ makepkg_chroot_lock() {
consumed=1
case "$1" in
-h|--help)              makepkg_lock_usage; return 0 ;;
-               --chroot_basedir)       CHROOT_BASEDIR="$2"; consumed=2 ;;
# special options
--)                     shift; break ;; # End of options
--*|-?)                 makepkg_lock_usage; return 1 ;;
@@ -2419,7 +2418,6 @@ makepkg_chroot_unlock() {
consumed=1
case "$1" in
-h|--help)              makepkg_unlock_usage; return 0 ;;
-               --chroot_basedir)       CHROOT_BASEDIR="$2"; consumed=2 ;;
# special options
--)                     shift; break ;; # End of options
--*|-?)                 makepkg_unlock_usage; return 1 ;;
@@ -2803,12 +2801,35 @@ _makepkg_loadconfig() {
local variable

# makepkg configuration
-       [ -f /etc/makepkg.conf ] && source /etc/makepkg.conf
+       if [ -f /etc/makepkg.conf ] && source /etc/makepkg.conf; then
+               # FIXME: makepkg.conf should only define defaults values.
+               # FIXME: Make BUILDSCRIPT a makepkg.conf variable
+               BUILDSCRIPT="FrugalBuild"

-       # FIXME: Make BUILDSCRIPT a makepkg.conf variable
-       BUILDSCRIPT="FrugalBuild"
+               # CCACHE_BASEDIR is abused in makepkg.config
+               #   ccache use it as a source path resolve reference
+               #   to increase cache hit if build root is moved
+               if [ ! -v CCACHE_DIR ]; then
+                       export CCACHE_DIR="${CCACHE_BASEDIR:-/var/cache/ccache}"
+                       unset CCACHE_BASEDIR
+               fi
+
+               CHROOT_BASEDIR="$CHROOTDIR"
+               unset
+       fi
+
+       declare -gr \
+               BUILDSCRIPT_DEFAULT="$BUILDSCRIPT" \
+               CCACHE_DIR_DEFAULT="$CCACHE_DIR" \
+               CHROOT_BASEDIR_DEFAULT="$CHROOT_BASEDIR" \
+               PKG_COMP_DEFAULT="$PKG_COMP"
+
+       BUILDSCRIPT="${BUILDSCRIPT:-"$BUILDSCRIPT_DEFAULT"}"
+       CCACHE_DIR="${CCACHE_DIR:-"$CCACHE_DIR_DEFAULT"}"
+       CHROOT_BASEDIR="${CHROOT_BASEDIR:-"$CHROOT_BASEDIR_DEFAULT"}"
+       PKG_COMP="${PKG_COMP:-"$PKG_COMP_DEFAULT"}"

-       for variable in CHROOTDIR FTPAGENT PACKAGER PKG_COMP PKG_EXT; do
+       for variable in BUILDSCRIPT CCACHE_DIR CHROOT_BASEDIR FTPAGENT PACKAGER 
PKG_COMP PKG_EXT; do
if [ ! -v "$variable" ]; then
error "The $variable variable is not defined, check your /etc/makepkg.conf!"
exit 1
@@ -2821,25 +2842,10 @@ _makepkg_loadconfig() {
exit 1
fi

-       if [ -z "$CCACHE_BASEDIR" ]; then
-               export CCACHE_BASEDIR=/var/cache/ccache
-       fi
-
-       CHROOT_BASEDIR="$CHROOTDIR"
-
if [ "$USE_AUTO_MAKEFLAGS" != "n" ]; then
export MAKEFLAGS="-j`grep -c ^processor /proc/cpuinfo`"
fi

-       declare -gr \
-               BUILDSCRIPT_DEFAULT="$BUILDSCRIPT" \
-               CHROOT_BASEDIR_DEFAULT="$CHROOT_BASEDIR" \
-               PKG_COMP_DEFAULT="$PKG_COMP"
-
-       BUILDSCRIPT="$BUILDSCRIPT_DEFAULT"
-       CHROOT_BASEDIR="$CHROOT_BASEDIR_DEFAULT"
-       PKG_COMP="$PKG_COMP_DEFAULT"
-
return 0
}
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to