Index: common/common-functions
===================================================================
--- common/common-functions	(revision 01b6d524695faea03225bb4f6299412f73692d34)
+++ common/common-functions	(revision 50fb0114c46175289db2a01d1f36501391e48167)
@@ -30,49 +30,13 @@
 
 
-
-#----------------------------------#
-wrt_target() {                     # Create target and initialize log file
-#----------------------------------#
-  local i=$1
-  local PREV=$2
-  case $i in
-    iteration* ) local LOGFILE=$this_script.log ;;
-             * ) local LOGFILE=$this_script ;;
-  esac
-(
-cat << EOF
-
-$i:  $PREV
-	@\$(call echo_message, Building)
-	@./progress_bar.sh \$@ &
-	@echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=${SCRIPT_ROOT} \$(MOUNT_PT)\`\n" >logs/$LOGFILE
-EOF
-) >> $MKFILE.tmp
-}
-
-
-#----------------------------------#
-wrt_target_boot() {                # Create target and initialize log file
-#----------------------------------#
-  local i=$1
-  local PREV=$2
-  case $i in
-    iteration* ) local LOGFILE=$this_script.log ;;
-             * ) local LOGFILE=$this_script ;;
-  esac
-(
-cat << EOF
-
-$i:  $PREV
-	@\$(call echo_message, Building)
-	@./progress_bar.sh \$@ &
-	@echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=${SCRIPT_ROOT}\`\n" >logs/$LOGFILE
-EOF
-) >> $MKFILE.tmp
-}
-
-#----------------------------#
-get_package_tarball_name() { #
-#----------------------------#
+#------------------------------------------------------#
+#        NEW Makefile scripting functions              #
+#------------------------------------------------------#
+
+
+unset get_package_tarball_name
+#----------------------------------#
+get_package_tarball_name() {       #
+#----------------------------------#
   local script_name=$1
 
@@ -89,202 +53,5 @@
 
 
-#----------------------------------#
-wrt_test_log() {                   # Initialize testsuite log file
-#----------------------------------#
-  local TESTLOGFILE=$1
-(
-cat  << EOF
-	@echo "export TEST_LOG=$TESTLOGDIR/$TESTLOGFILE" >> envars && \\
-	su - \$(LUSER) -c "echo -e '\n\`date\`\n' >$TESTLOGDIR/$TESTLOGFILE"
-EOF
-) >> $MKFILE.tmp
-}
-
-#----------------------------------#
-wrt_test_log2() {                  #
-#----------------------------------#
-  local TESTLOGFILE=$1
-(
-cat  << EOF
-	@echo "export TEST_LOG=/$SCRIPT_ROOT/test-logs/$TESTLOGFILE" >> envars && \\
-	echo -e "\n\`date\`\n" >test-logs/$TESTLOGFILE
-EOF
-) >> $MKFILE.tmp
-}
-
-#----------------------------------#
-wrt_target_vars() {                # Target vars for hlfs (cross-build method)
-#----------------------------------#
-(
-cat  << EOF
-	@echo "export target=$(uname -m)-${TARGET}" >> envars && \\
-	echo "export ldso=/lib/${LOADER}" >> envars
-EOF
-) >> $MKFILE.tmp
-
-}
-
-
-#----------------------------------#
-wrt_copy_fstab() {                 #
-#----------------------------------#
-  local i=$1
-(
-    cat << EOF
-	@cp -v $FSTAB \$(MOUNT_PT)/etc/fstab >>logs/$i 2>&1
-EOF
-) >> $MKFILE.tmp
-}
-
-
-#----------------------------------#
-wrt_copy_fstab2() {                #
-#----------------------------------#
-  local i=$1
-(
-    cat << EOF
-	@cp -v /sources/fstab /etc/fstab >>logs/$i 2>&1
-EOF
-) >> $MKFILE.tmp
-}
-
-
-#----------------------------------#
-wrt_report() {                     #
-#----------------------------------#
-(
-cat << EOF
-
-create-sbu_du-report:  $PREV
-	@\$(call echo_message, Building)
-	@./create-sbu_du-report.sh logs $VERSION
-	@\$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report)
-	@touch  \$@
-EOF
-) >> $MKFILE.tmp
-
-chapter789="$chapter789 create-sbu_du-report"
-}
-
-unset wrt_unpack
-#----------------------------------#
-wrt_unpack() {                     # Unpack and set 'ROOT' var
-#----------------------------------#
-  local FILE=$1
-  local optSAVE_PREVIOUS=$2
-
-  if [[ "${optSAVE_PREVIOUS}" != "1" ]]; then
-(
-cat << EOF
-	@\$(call remove_existing_dirs,$FILE)
-EOF
-) >> $MKFILE.tmp
-  fi
-
-(
-cat << EOF
-	@\$(call unpack,$FILE)
-	@\$(call get_pkg_root)
-EOF
-) >> $MKFILE.tmp
-
-}
-
-unset wrt_unpack2
-#----------------------------------#
-wrt_unpack2() {                    #
-#----------------------------------#
-  local FILE=$1
-  local optSAVE_PREVIOUS=$2
-
-  if [ "${optSAVE_PREVIOUS}" != "1" ]; then
-(
-cat << EOF
-	@\$(call remove_existing_dirs,$FILE)
-EOF
-) >> $MKFILE.tmp
-  fi
-(
-cat  << EOF
-	@\$(call unpack2,$FILE)
-	@\$(call get_pkg_root,nouser)
-EOF
-) >> $MKFILE.tmp
-}
-
-#----------------------------------#
-wrt_unpack3() {                    #
-#----------------------------------#
-  local FILE=$1
-  local optSAVE_PREVIOUS=$2
-
-  if [ "${optSAVE_PREVIOUS}" != "1" ]; then
-(
-cat << EOF
-	@\$(call remove_existing_dirs2,$FILE)
-EOF
-) >> $MKFILE.tmp
-  fi
-(
-cat  << EOF
-	@\$(call unpack3,$FILE)
-	@\$(call get_pkg_root2)
-EOF
-) >> $MKFILE.tmp
-}
-
-
-unset wrt_remove_build_dirs
-#----------------------------------#
-wrt_remove_build_dirs() {          #
-#----------------------------------#
-  local name=$1
-(
-cat << EOF
-	@\$(call remove_build_dirs,$name)
-EOF
-) >> $MKFILE.tmp
-}
-
-#----------------------------------#
-wrt_remove_build_dirs2() {         #
-#----------------------------------#
-  local name=$1
-(
-cat << EOF
-	@\$(call remove_build_dirs2,$name)
-EOF
-) >> $MKFILE.tmp
-}
-
-
-
-unset wrt_touch
-#----------------------------------#
-wrt_touch() {                      #
-#----------------------------------#
-(
-cat << EOF
-	@\$(call housekeeping)
-EOF
-) >> $MKFILE.tmp
-}
-
-unset wrt_RunAsUser
-#----------------------------------#
-wrt_RunAsUser() {                  # Execute script inside time { }, footer to log file
-#----------------------------------#
-  local this_script=$1
-  local file=$2
-
-(
-cat << EOF
-	@( time { \$(SU_LUSER) "source \$(LUSER_HOME)/.bashrc && \$(CMDSDIR)/`dirname $file`/\$@" >> logs/\$@ 2>&1; } ) 2>> logs/\$@ && \\
-	\$(PRT_DU) >> logs/\$@
-EOF
-) >> $MKFILE.tmp
-}
-
-
+unset wrt_RunaAsRoot
 #----------------------------------#
 wrt_RunAsRoot() {                  # Some scripts must be run as root..
@@ -302,5 +69,5 @@
     *) echo "undefined progname $PROGNAME"; exit 1
   esac
-
+  
 (
 cat << EOF
@@ -311,66 +78,4 @@
 }
 
-#----------------------------------#
-wrt_run_as_root2() {               #
-#----------------------------------#
-  local this_script=$1
-  local file=$2
-(
-cat << EOF
-	@( time { source envars && ${PROGNAME}-commands/`dirname $file`/\$@ >>logs/\$@ 2>&1 ; } ) 2>>logs/\$@ && \\
-	echo -e "\nKB: \`du -skx --exclude=${SCRIPT_ROOT} \`\n" >>logs/\$@
-EOF
-) >> $MKFILE.tmp
-}
-
-
-unset wrt_run_as_chroot1
-#----------------------------------#
-wrt_run_as_chroot1() {             #
-#----------------------------------#
-  local this_script=$1
-  local file=$2
-(
-cat << EOF
-	@( time { \$(CHROOT1) 'cd \$(SCRIPT_ROOT) && source envars && \$(crCMDSDIR)/$file >>logs/${this_script} 2>&1' ; } ) 2>>logs/${this_script} && \\
-	\$(PRT_DU_CR) >> logs/${this_script}
-EOF
-) >> $MKFILE.tmp
-}
-
-unset wrt_run_as_chroot2
-#----------------------------------#
-wrt_run_as_chroot2() {             #
-#----------------------------------#
-  local this_script=$1
-  local file=$2
-(
-cat << EOF
-	@( time { \$(CHROOT2) 'cd \$(SCRIPT_ROOT) && source envars && \$(crCMDSDIR)/`dirname $file`/\$@ >>logs/\$@ 2>&1' ; } ) 2>>logs/\$@ && \\
-	\$(PRT_DU_CR) >> logs/\$@
-EOF
-) >> $MKFILE.tmp
-}
-
-unset wrt_target
-#----------------------------------#
-wrt_target() {                     # Create target and initialize log file
-#----------------------------------#
-  local i=$1
-  local PREV=$2
-  case $i in
-    iteration* ) local LOGFILE="\$@.log" ;;
-             * ) local LOGFILE="\$@"     ;;
-  esac
-(
-cat << EOF
-
-$i:  $PREV
-	@\$(call echo_message, Building)
-	@./progress_bar.sh \$@ &
-	@echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=${SCRIPT_ROOT} \$(MOUNT_PT)\`\n" >logs/$LOGFILE
-EOF
-) >> $MKFILE.tmp
-}
 
 #----------------------------------#
@@ -393,4 +98,210 @@
 ) >> $MKFILE.tmp
 }
+
+
+#------------------------------------------------------#
+#------------------------------------------------------#
+
+
+#----------------------------------#
+LUSER_wrt_target() {               # Create target and initialize log file
+#----------------------------------#
+  local i=$1
+  local PREV=$2
+(
+cat << EOF
+
+$i:  $PREV
+	@\$(call echo_message, Building)
+	@./progress_bar.sh \$@ \$\$PPID &
+	@echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=\$(SCRIPT_ROOT) \$(MOUNT_PT)\`\n" >logs/\$@
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+LUSER_wrt_RunAsUser() {            # Execute script inside time { }, footer to log file
+#----------------------------------#
+  local file=$1
+
+(
+cat << EOF
+	@( time { source ~/.bashrc && \$(CMDSDIR)/`dirname $file`/\$@ >> logs/\$@ 2>&1; } ) 2>> logs/\$@ && \\
+	\$(PRT_DU) >> logs/\$@
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+LUSER_wrt_unpack() {               # Unpack and set 'ROOT' var
+#----------------------------------#
+  local FILE=$1
+  local optSAVE_PREVIOUS=$2
+
+  if [[ "${optSAVE_PREVIOUS}" != "1" ]]; then
+(
+cat << EOF
+	@\$(call remove_existing_dirs,$FILE)
+EOF
+) >> $MKFILE.tmp
+  fi
+
+(
+cat << EOF
+	@\$(call unpack,$FILE)
+	@\$(call get_pkg_root_LUSER)
+EOF
+) >> $MKFILE.tmp
+
+}
+
+
+#----------------------------------#
+LUSER_wrt_CopyFstab() {            #
+#----------------------------------#
+(
+cat << EOF
+	@( time { cp -v \$(MOUNT_PT)/sources/fstab \$(MOUNT_PT)/etc/fstab >>logs/\$@ 2>&1 ; } ) 2>>logs/\$@
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+LUSER_wrt_test_log() {             # Initialize testsuite log file
+#----------------------------------#
+  local TESTLOGFILE=$1
+(
+cat  << EOF
+	@echo "export  TEST_LOG=$TESTLOGDIR/$TESTLOGFILE" >> envars && \\
+	echo -e '\n\`date\`\n' >$TESTLOGDIR/$TESTLOGFILE
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+LUSER_RemoveBuildDirs() {          #
+#----------------------------------#
+  local name=$1
+(
+cat << EOF
+	@\$(call remove_build_dirs,$name)
+EOF
+) >> $MKFILE.tmp
+}
+
+#-----------------------------------------------------------------#
+#-----------------------------------------------------------------#
+
+#----------------------------------#
+CHROOT_wrt_target() {              # Create target and initialize log file
+#----------------------------------#
+  local i=$1
+  local PREV=$2
+  case $i in
+    iteration* ) local LOGFILE="${this_script}.log" ;;
+             * ) local LOGFILE="${this_script}"      ;;
+  esac
+(
+cat << EOF
+
+$i:  $PREV
+	@\$(call echo_message, Building)
+	@./progress_bar.sh \$@ \$\$PPID &
+	@echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=\$(SCRIPT_ROOT) / \`\n" >logs/$LOGFILE
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+CHROOT_Unpack() {                  #
+#----------------------------------#
+  local FILE=$1
+  local optSAVE_PREVIOUS=$2
+
+  if [ "${optSAVE_PREVIOUS}" != "1" ]; then
+(
+cat << EOF
+	@\$(call remove_existing_dirs2,$FILE)
+EOF
+) >> $MKFILE.tmp
+  fi
+(
+cat  << EOF
+	@\$(call unpack3,$FILE)
+	@\$(call get_pkg_root2)
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+CHROOT_wrt_test_log() {            #
+#----------------------------------#
+  local TESTLOGFILE=$1
+(
+cat  << EOF
+	@echo "export TEST_LOG=/\$(SCRIPT_ROOT)/test-logs/$TESTLOGFILE" >> envars && \\
+	echo -e "\n\`date\`\n" >test-logs/$TESTLOGFILE
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+CHROOT_wrt_RunAsRoot() {           #
+#----------------------------------#
+  local file=$1
+(
+cat << EOF
+	@( time { source envars && \$(crCMDSDIR)/$file >>logs/$this_script 2>&1 ; } ) 2>>logs/$this_script && \\
+	\$(PRT_DU_CR) >>logs/$this_script
+EOF
+) >> $MKFILE.tmp
+
+}
+
+
+#----------------------------------#
+CHROOT_wrt_CopyFstab() {           #
+#----------------------------------#
+(
+cat << EOF
+	@( time { cp -v /sources/fstab /etc/fstab >>logs/${this_script} 2>&1 ; } ) 2>>logs/${this_script}
+EOF
+) >> $MKFILE.tmp
+}
+
+
+#----------------------------------#
+CHROOT_wrt_RemoveBuildDirs() {     #
+#----------------------------------#
+  local name=$1
+(
+cat << EOF
+	@\$(call remove_build_dirs2,$name)
+EOF
+) >> $MKFILE.tmp
+}
+
+
+unset wrt_touch
+#----------------------------------#
+wrt_touch() {                      #
+#----------------------------------#
+(
+cat << EOF
+	@\$(call housekeeping)
+EOF
+) >> $MKFILE.tmp
+}
+
+#------------------------------------------------------#
+#        END Makefile scripting functions              #
+#------------------------------------------------------#
 
 
@@ -590,4 +501,5 @@
   # Done. Moving on...
   get_sources
+
 }
 
@@ -801,6 +713,7 @@
 
   if [[ "${BLFS_TOOL}" = "y" ]]; then
-    add_blfs_deps_urls
-  fi
+    add_blfs_deps_urls 
+  fi
+
 }
 
Index: common/func_compare.sh
===================================================================
--- common/func_compare.sh	(revision 01b6d524695faea03225bb4f6299412f73692d34)
+++ common/func_compare.sh	(revision 50fb0114c46175289db2a01d1f36501391e48167)
@@ -12,5 +12,5 @@
     fi
     this_script=$ITERATION
-    wrt_target "$ITERATION" "$PREV"
+    CHROOT_wrt_target "$ITERATION" "$PREV"
     wrt_compare_work "$ITERATION" "$PREV_IT"
     wrt_logs "$N"
Index: common/makefile-functions
===================================================================
--- common/makefile-functions	(revision 01b6d524695faea03225bb4f6299412f73692d34)
+++ common/makefile-functions	(revision 50fb0114c46175289db2a01d1f36501391e48167)
@@ -2,16 +2,43 @@
 # $Id$
 
-BOLD= "[0;1m"
-RED= "[1;31m"
-GREEN= "[0;32m"
-ORANGE= "[0;33m"
-BLUE= "[1;34m"
-WHITE= "[00m"
+BOLD    = "[0;1m"
+RED     = "[1;31m"
+GREEN   = "[0;32m"
+ORANGE  = "[0;33m"
+BLUE    = "[1;34m"
+WHITE   = "[00m"
+YELLOW  = "[1;33m"
+
+OFF     = "[0m"
+BOLD    = "[1m"
+REVERSE = "[7m"
+
+
+define echo_SU_request
+  @echo $(BOLD)--------------------------------------------------------------------------------
+  @echo $(BLUE)$@
+  @echo $(WHITE)ROOT privilege is required to perform a number commands
+  @echo sudo will request a password to all high privelege cmds to execut correctly
+endef
+
+define echo_SULUSER_request
+  @clear
+  @echo $(BOLD)--------------------------------------------------------------------------------
+  @echo $(BOLD)$(BLUE)$@
+  @echo $(WHITE)You are going to log into the user account $(BOLD)$(YELLOW)$(LUSER)$(OFF)
+  @echo su requires a password 
+endef
+
+define echo_CHROOT_request
+  @clear
+  @echo $(BOLD)--------------------------------------------------------------------------------
+  @echo $(BOLD)$(BLUE)$@
+  @echo $(WHITE)You are going to CHROOT into $(MOUNT_PT) $(BOLD)$(YELLOW)$(LUSER)$(OFF)
+  @echo a password is required
+endef
 
 define echo_message
-  @echo $(BOLD)
-  @echo --------------------------------------------------------------------------------
-  @echo $(BOLD)$(1) target $(BLUE)$@$(BOLD)
-  @echo $(WHITE)
+  @echo $(BOLD)--------------------------------------------------------------------------------
+  @echo $(BOLD)$(1) target $(BLUE)$@$(BOLD)$(WHITE)
 endef
 
@@ -24,5 +51,5 @@
 
 define remove_existing_dirs2
-  @PKG_PATH=\`ls -t $(SRC)/$(1) | head -n1\` && \
+  @PKG_PATH=`ls -t $(SRC)/$(1) | head -n1` && \
   ROOT=`tar -tf $$PKG_PATH | head -n1 | sed -e 's@^./@@;s@/.*@@'` && \
   rm -rf $(SRC)/$$ROOT && \
@@ -45,5 +72,5 @@
   @touch  $@ && \
   sleep .25 && \
-  echo -e "\n\n "$(BOLD)Target $(BLUE)$@ $(BOLD)OK && \
+  echo  -e "\n" $(BOLD)Target $(BLUE)$@ $(WHITE)$(BOLD)OK && \
   echo --------------------------------------------------------------------------------$(WHITE)
 
@@ -63,4 +90,9 @@
   @ROOT=`head -n1 $(SRC)/$(PKG_LST) | sed 's@^./@@;s@/.*@@'` && \
   echo "export PKGDIR=$(SRC)/$$ROOT" > envars
+endef
+
+define get_pkg_root_LUSER
+  @ROOT=`head -n1 $(SRCSDIR)/$(PKG_LST) | sed 's@^./@@;s@/.*@@'` && \
+  echo "export PKGDIR=$(SRCSDIR)/$$ROOT" > envars
 endef
 
Index: common/progress_bar.sh
===================================================================
--- common/progress_bar.sh	(revision 01b6d524695faea03225bb4f6299412f73692d34)
+++ common/progress_bar.sh	(revision 50fb0114c46175289db2a01d1f36501391e48167)
@@ -8,4 +8,5 @@
 [[ -z $1 ]] && exit
 TARGET=$1  # Remember the target build we are looking for
+MAKE_PPID=$2
 
 declare -r  CSI=$'\e['  # DEC terminology, Control Sequence Introducer
@@ -22,10 +23,7 @@
 declare -i  PREV_SEC=0
 
-makePID=$(fuser -v . 2>&1 | grep make)
-makePID=$(echo $makePID | cut -d" " -f2)
-
 write_or_exit() {
     # make has been killed or failed or run to completion, leave
-  [[ ! -e /proc/$makePID ]] && echo -n "${CURSOR_ON}" && exit
+  [[ ! -e /proc/${MAKE_PPID} ]] && echo -n "${CURSOR_ON}" && exit
 
     # Target build complete, leave.
