| Index: build_image | 
| diff --git a/build_image b/build_image | 
| index c53793d9ad5b7a669c109ae38d6be7d2dbc864ec..2dc7c7887bc20feeaadd4dc89f2f4e80a059cf66 100755 | 
| --- a/build_image | 
| +++ b/build_image | 
| @@ -9,15 +9,39 @@ | 
| # the given target's root with binary packages turned on. This script will | 
| # build the Chrome OS image using only pre-built binary packages. | 
|  | 
| -# Load common constants.  This should be the first executable line. | 
| -# The path to common.sh should be relative to your script's location. | 
| -. "$(dirname "$0")/common.sh" | 
| +# --- BEGIN COMMON.SH BOILERPLATE --- | 
| +# Load common CrOS utilities.  Inside the chroot this file is installed in | 
| +# /usr/lib/crosutils.  Outside the chroot we find it relative to the script's | 
| +# location. | 
| +find_common_sh() { | 
| +  local common_paths=(/usr/lib/crosutils $(dirname "$(readlink -f "$0")")) | 
| +  local path | 
| + | 
| +  SCRIPT_ROOT= | 
| +  for path in "${common_paths[@]}"; do | 
| +    if [ -r "${path}/common.sh" ]; then | 
| +      SCRIPT_ROOT=${path} | 
| +      break | 
| +    fi | 
| +  done | 
| +} | 
| + | 
| +find_common_sh | 
| +. "${SCRIPT_ROOT}/common.sh" || (echo "Unable to load common.sh" && exit 1) | 
| +# --- END COMMON.SH BOILERPLATE --- | 
| + | 
| +# Load functions and constants for chromeos-install | 
| +[ -f /usr/lib/installer/chromeos-common.sh ] && \ | 
| +  INSTALLER_ROOT=/usr/lib/installer || \ | 
| +  INSTALLER_ROOT=$(dirname "$(readlink -f "$0")") | 
| + | 
| +. "${INSTALLER_ROOT}/chromeos-common.sh" || \ | 
| +  die "Unable to load chromeos-common.sh" | 
|  | 
| -. "$(dirname "$0")/chromeos-common.sh"  # for partoffset | 
| locate_gpt | 
|  | 
| # Script must be run inside the chroot. | 
| -restart_in_chroot_if_needed $* | 
| +restart_in_chroot_if_needed "$@" | 
|  | 
| get_default_board | 
|  | 
|  |