Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 1 | #!/bin/sh |
Eric Biederman | 83b991a | 2003-10-11 06:20:25 +0000 | [diff] [blame] | 2 | PYTHON=python |
Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 3 | # Target build script |
| 4 | |
| 5 | if [ $# -lt 1 ]; then |
| 6 | echo "usage: buildtarget target [path-to-linuxbios]" |
| 7 | exit 1 |
| 8 | fi |
| 9 | |
| 10 | if [ $# -gt 1 ]; then |
| 11 | lbpath=$2 |
| 12 | else |
| 13 | lbpath=`pwd` |
| 14 | lbpath=`dirname $lbpath` |
| 15 | fi |
| 16 | |
| 17 | target_dir=$lbpath/targets |
Ronald G. Minnich | 08febd8 | 2003-10-01 05:42:31 +0000 | [diff] [blame] | 18 | config_lb=$1 |
Greg Watson | 5261d05 | 2003-07-23 21:30:29 +0000 | [diff] [blame] | 19 | config_dir=$lbpath/util/newconfig |
Eric Biederman | 83b991a | 2003-10-11 06:20:25 +0000 | [diff] [blame] | 20 | yapps2_py=$config_dir/yapps2.py |
| 21 | config_g=$config_dir/config.g |
Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 22 | |
| 23 | if [ ! -d $target_dir ]; then |
| 24 | echo "Target directory not found" |
| 25 | exit 1 |
| 26 | fi |
| 27 | |
| 28 | cd $target_dir |
| 29 | |
| 30 | if [ ! -f $config_lb ]; then |
Ronald G. Minnich | 08febd8 | 2003-10-01 05:42:31 +0000 | [diff] [blame] | 31 | config_lb=$1/Config.lb |
| 32 | fi |
Ronald G. Minnich | 08febd8 | 2003-10-01 05:42:31 +0000 | [diff] [blame] | 33 | if [ ! -f $config_lb ]; then |
Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 34 | echo "No target config file found" |
Ronald G. Minnich | 08febd8 | 2003-10-01 05:42:31 +0000 | [diff] [blame] | 35 | echo "Tried both $1 and $config_lb" |
Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 36 | exit 1 |
| 37 | fi |
| 38 | |
Eric Biederman | 34323b5 | 2003-10-14 03:05:04 +0000 | [diff] [blame] | 39 | build_dir=`dirname $config_lb`/`sed -n -e 's/^target \(.*\)$/\1/p' $config_lb` |
Eric Biederman | 5a71d1d | 2003-10-14 03:33:11 +0000 | [diff] [blame] | 40 | echo "build_dir=$build_dir" |
Eric Biederman | 34323b5 | 2003-10-14 03:05:04 +0000 | [diff] [blame] | 41 | config_py=$build_dir/config.py |
Eric Biederman | f3f7c9e | 2003-10-13 19:48:13 +0000 | [diff] [blame] | 42 | |
Eric Biederman | 5a71d1d | 2003-10-14 03:33:11 +0000 | [diff] [blame] | 43 | if [ ! -d $build_dir ] ; then |
| 44 | mkdir -p $build_dir |
Eric Biederman | f3f7c9e | 2003-10-13 19:48:13 +0000 | [diff] [blame] | 45 | fi |
Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 46 | if [ ! -f $config_py ]; then |
Stefan Reinauer | dad6048 | 2003-09-08 15:01:19 +0000 | [diff] [blame] | 47 | echo "No linuxbios config script found. Rebuilding it.." |
Eric Biederman | 83b991a | 2003-10-11 06:20:25 +0000 | [diff] [blame] | 48 | $PYTHON $yapps2_py $config_g $config_py |
Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 49 | fi |
| 50 | |
Greg Watson | 5261d05 | 2003-07-23 21:30:29 +0000 | [diff] [blame] | 51 | # make sure config.py is up-to-date |
| 52 | |
Eric Biederman | 83b991a | 2003-10-11 06:20:25 +0000 | [diff] [blame] | 53 | export PYTHONPATH=$config_dir |
| 54 | $PYTHON $config_py $config_lb $lbpath |
Greg Watson | a8d2240 | 2003-07-17 17:50:11 +0000 | [diff] [blame] | 55 | |
| 56 | exit $? |