summaryrefslogtreecommitdiff
path: root/util/abuild
diff options
context:
space:
mode:
authorEric Biederman <ebiederm@xmission.com>2004-11-04 11:04:33 +0000
committerEric Biederman <ebiederm@xmission.com>2004-11-04 11:04:33 +0000
commit018d8dd60f2cc0c82faac0ee2657daa163dd43e7 (patch)
tree528de120d262a9df05ce8b6119f593c85fa6b809 /util/abuild
parent4403f6082372d069e3cabe0918d9af5f9c1dccf6 (diff)
- Update abuild.sh so it will rebuild successfull builds
- Move pci_set_method out of hardwaremain.c - Re-add debugging name field but only include the CONFIG_CHIP_NAME is enabled. All instances are now wrapped in CHIP_NAME - Many minor cleanups so most ports build. git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1737 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'util/abuild')
-rw-r--r--util/abuild/abuild.sh43
1 files changed, 32 insertions, 11 deletions
diff --git a/util/abuild/abuild.sh b/util/abuild/abuild.sh
index 237b41e1f6..3378b06805 100644
--- a/util/abuild/abuild.sh
+++ b/util/abuild/abuild.sh
@@ -11,15 +11,19 @@
# archive for more details.
#
+LBROOT=$1
# /path/to/freebios2/
-LBROOT=$( cd ../..; pwd )
+if [ -z "$LBROOT" ] ; then
+ LBROOT=$( cd ../..; pwd )
+fi
+
# Where shall we place all the build trees?
TARGET=$( pwd )/linuxbios-builds
# path to payload. Should be more generic
-PAYLOAD=$HOME/tg3--ide_disk.zelf
+PAYLOAD=/dev/null
# Lines of error context to be printed in FAILURE case
CONTEXT=5
@@ -46,7 +50,7 @@ function mainboards
VENDOR=$1
- ls -1 $LBROOT/src/mainboard/$VENDOR | grep -v CVS
+ ls -1 $LBROOT/src/mainboard/$VENDOR | grep -v CVS
}
function architecture
@@ -71,14 +75,14 @@ mainboard VENDOR/MAINBOARD
romimage "normal"
option USE_FALLBACK_IMAGE=0
- option ROM_IMAGE_SIZE=0x10000
+ option ROM_IMAGE_SIZE=0x13000
option LINUXBIOS_EXTRA_VERSION=".0-normal"
payload PAYLOAD
end
romimage "fallback"
option USE_FALLBACK_IMAGE=1
- option ROM_IMAGE_SIZE=0x10000
+ option ROM_IMAGE_SIZE=0x13000
option LINUXBIOS_EXTRA_VERSION=".0-fallback"
payload PAYLOAD
end
@@ -148,8 +152,10 @@ function compile_target
cd $TARGET/${VENDOR}_${MAINBOARD}
eval $MAKE &> make.log
if [ $? -eq 0 ]; then
+ echo "ok" > compile.status
echo "ok."
cd $CURR
+ return 0
else
echo "FAILED! Log excerpt:"
tail -n $CONTEXT make.log
@@ -158,25 +164,40 @@ function compile_target
fi
}
+function built_successfully
+{
+ CURR=`pwd`
+ cd $TARGET/${VENDOR}_${MAINBOARD}
+ status="fail"
+ if [ -r compile.status ] ; then
+ status=`cat compile.status`
+ fi
+ cd $CURR
+ [ "$status" == "ok" ]
+}
function build_target
{
VENDOR=$1
MAINBOARD=$2
TARCH=$( architecture $VENDOR $MAINBOARD )
- echo -n "Processing mainboard $VENDOR $MAINBOARD"
+ echo -n "Processing mainboard/$VENDOR/$MAINBOARD"
if [ "$ARCH" == "$TARCH" ]; then
echo " ($TARCH: ok)"
- create_buildenv $VENDOR $MAINBOARD
- if [ $? -eq 0 ]; then
- compile_target $VENDOR $MAINBOARD
+ if ! built_successfully $VENDOR $MAINBOARD ; then
+ create_buildenv $VENDOR $MAINBOARD
+ if [ $? -eq 0 ]; then
+ compile_target $VENDOR $MAINBOARD
+ fi
+ else
+ echo " ( mainboard/$VENDOR/$MAINBOARD previously ok )"
fi
- echo
+
else
# cross compiling not supported yet.
echo " ($TARCH: skipped, we're $ARCH)"
- echo
fi
+ echo
}
for VENDOR in $( vendors ); do