summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/bootstrap.sh47
1 files changed, 32 insertions, 15 deletions
diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh
index 2feaccfe208f..7a16cc1db925 100755
--- a/scripts/bootstrap.sh
+++ b/scripts/bootstrap.sh
@@ -1,7 +1,7 @@
#!/bin/bash
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/scripts/bootstrap.sh,v 1.68 2005/01/08 05:48:25 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/scripts/bootstrap.sh,v 1.69 2005/01/14 02:30:51 vapier Exp $
# people who were here:
# (drobbins, 06 Jun 2003)
@@ -17,6 +17,9 @@ if [ -e /etc/init.d/functions.sh ] ; then
esyslog() {
echo &> /dev/null
}
+else
+ eerror() { echo "!!! $*"; }
+ einfo() { echo "* $*"; }
fi
show_status() {
local num=$1
@@ -30,11 +33,16 @@ progressfile=/var/run/bootstrap-progress
[[ -e ${progressfile} ]] && source ${progressfile}
export BOOTSTRAP_STAGE="${BOOTSTRAP_STAGE:-1}"
set_bootstrap_stage() {
- [[ -z "${STRAP_RUN}" ]] && return 0
+ [[ -z ${STRAP_RUN} ]] && return 0
export BOOTSTRAP_STAGE=$1
echo "BOOTSTRAP_STAGE=$1" > ${progressfile}
}
+v_echo() {
+ einfo "Executing: $*"
+ env "$@"
+}
+
usage() {
echo -e "Usage: ${HILITE}${0##*/}${NORMAL} ${GOOD}[options]${NORMAL}"
echo -e " ${GOOD}--debug (-d)${NORMAL} Run with debug information turned on"
@@ -45,13 +53,14 @@ usage() {
echo -e " ${GOOD}--resume (-r)${NORMAL} Build/use binary packages"
}
-unset STRAP_EMERGE_OPTS
+unset STRAP_EMERGE_OPTS
STRAP_RUN=1
+V_ECHO=env
DEBUG=0
GENTOO_VERS=2004.3 # Mostly for fluff ;)
for opt in "$@" ; do
- case "${opt}" in
+ case ${opt} in
--fetchonly|-f)
echo "Running in fetch-only mode ..."
STRAP_EMERGE_OPTS="${STRAP_EMERGE_OPTS} -f"
@@ -64,9 +73,15 @@ for opt in "$@" ; do
--pretend|-p) STRAP_EMERGE_OPTS="${STRAP_EMERGE_OPTS} -p" ; unset STRAP_RUN ;;
--tree|-t) STRAP_EMERGE_OPTS="${STRAP_EMERGE_OPTS} -p -t"; unset STRAP_RUN ;;
--resume|-r) STRAP_EMERGE_OPTS="${STRAP_EMERGE_OPTS} --usepkg --buildpkg";;
- --verbose|-v) STRAP_EMERGE_OPTS="${STRAP_EMERGE_OPTS} -v";;
+ --verbose|-v) STRAP_EMERGE_OPTS="${STRAP_EMERGE_OPTS} -v"; V_ECHO=v_echo;;
+ --version)
+ cvsver="$Header: /var/cvsroot/gentoo-x86/scripts/bootstrap.sh,v 1.69 2005/01/14 02:30:51 vapier Exp $"
+ cvsver=${cvsver##*,v }
+ einfo "Gentoo ${GENTOO_VERS} bootstrap ${cvsver%%Exp*}"
+ exit 0
+ ;;
*)
- echo -e "Unknown option '${opt}'"
+ eerror "Unknown option '${opt}'"
usage
exit 1;;
esac
@@ -81,21 +96,23 @@ if [[ -n ${STRAP_RUN} ]] ; then
einfo "Press enter to continue or CTRL+C to abort ..."
read
set_bootstrap_stage 1
+ else
+ einfo "Resuming bootstrap at internal stage #${BOOTSTRAP_STAGE} ..."
fi
else
export BOOTSTRAP_STAGE=0
fi
-MYPROFILEDIR="$(readlink -f /etc/make.profile)"
+MYPROFILEDIR=$(readlink -f /etc/make.profile)
if [[ ! -d ${MYPROFILEDIR} ]] ; then
- echo "!!! Error: '${MYPROFILEDIR}' does not exist. Exiting."
+ eerror "Error: '${MYPROFILEDIR}' does not exist. Exiting."
exit 1
fi
[[ -e /etc/profile ]] && source /etc/profile
echo -e "\n${GOOD}Gentoo Linux ${GENTOO_VERS}; ${BRACKET}http://www.gentoo.org/${NORMAL}"
-echo -e "Copyright 1999-2004 Gentoo Foundation; Distributed under the GPLv2"
+echo -e "Copyright 1999-2005 Gentoo Foundation; Distributed under the GPLv2"
if [[ ${STRAP_EMERGE_OPTS:0:2} = "-f" ]] ; then
echo "Fetching all bootstrap-related archives ..."
elif [[ -n ${STRAP_RUN} ]] ; then
@@ -256,7 +273,7 @@ export FEATURES="${FEATURES} -collision-protect"
if [ ${BOOTSTRAP_STAGE} -le 1 ] ; then
show_status 2 Updating portage
- USE="-* build bootstrap ${STAGE1_USE}" emerge ${STRAP_EMERGE_OPTS} ${myPORTAGE} || cleanup 1
+ ${V_ECHO} USE="-* build bootstrap ${STAGE1_USE}" emerge ${STRAP_EMERGE_OPTS} ${myPORTAGE} || cleanup 1
echo -------------------------------------------------------------------------------
set_bootstrap_stage 2
fi
@@ -268,7 +285,7 @@ export USE="${ORIGUSE} bootstrap ${STAGE1_USE}"
if [ ${BOOTSTRAP_STAGE} -le 2 ] ; then
show_status 3 Emerging headers/binutils
#emerge ${STRAP_EMERGE_OPTS} -C virtual/os-headers || cleanup 1
- emerge ${STRAP_EMERGE_OPTS} ${myOS_HEADERS} ${myTEXINFO} ${myGETTEXT} ${myBINUTILS} || cleanup 1
+ ${V_ECHO} emerge ${STRAP_EMERGE_OPTS} ${myOS_HEADERS} ${myTEXINFO} ${myGETTEXT} ${myBINUTILS} || cleanup 1
echo -------------------------------------------------------------------------------
set_bootstrap_stage 3
fi
@@ -304,7 +321,7 @@ fi
if [ ${BOOTSTRAP_STAGE} -le 3 ] ; then
show_status 4 Emerging gcc
- emerge ${STRAP_EMERGE_OPTS} ${myGCC} || cleanup 1
+ ${V_ECHO} emerge ${STRAP_EMERGE_OPTS} ${myGCC} || cleanup 1
echo -------------------------------------------------------------------------------
set_bootstrap_stage 4
fi
@@ -322,7 +339,7 @@ fi
if [ ${BOOTSTRAP_STAGE} -le 4 ] ; then
show_status 5 Emerging libc/baselayout
- emerge ${STRAP_EMERGE_OPTS} ${myLIBC} ${myBASELAYOUT} ${myZLIB} || cleanup 1
+ ${V_ECHO} emerge ${STRAP_EMERGE_OPTS} ${myLIBC} ${myBASELAYOUT} ${myZLIB} || cleanup 1
echo -------------------------------------------------------------------------------
set_bootstrap_stage 5
fi
@@ -331,7 +348,7 @@ fi
export USE="${ORIGUSE}"
if [ ${BOOTSTRAP_STAGE} -le 5 ] ; then
show_status 6 Re-Emerging C++ apps
- emerge ${STRAP_EMERGE_OPTS} ${myNCURSES} || cleanup 1
+ ${V_ECHO} emerge ${STRAP_EMERGE_OPTS} ${myNCURSES} || cleanup 1
echo -------------------------------------------------------------------------------
set_bootstrap_stage 6
fi