| Index: archive_hwqual | 
| diff --git a/archive_hwqual b/archive_hwqual | 
| index 6ce823726b343e708c6e05bc1d70fe09c19cedd9..1bc91a839540ba42ebe642471739f8319e9035b0 100755 | 
| --- a/archive_hwqual | 
| +++ b/archive_hwqual | 
| @@ -6,9 +6,26 @@ | 
|  | 
| # Script to take an archived build result and prepare a hwqual release. | 
|  | 
| -# 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 --- | 
|  | 
| # Flags | 
| DEFINE_string from "" "Directory with build archive (zipname)" | 
| @@ -42,7 +59,7 @@ function main() { | 
| FLAGS_to="${FLAGS_from}" | 
| fi | 
|  | 
| -  local script_dir=$(dirname "$0") | 
| +  local script_dir=${SCRIPTS_DIR} | 
|  | 
| script_dir=$(readlink -f "${script_dir}") | 
| docgen_dir="autotest/utils/docgen" | 
|  |