1*8617a60dSAndroid Build Coastguard Worker#!/bin/sh 2*8617a60dSAndroid Build Coastguard Worker# Copyright 2014 The ChromiumOS Authors 3*8617a60dSAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 4*8617a60dSAndroid Build Coastguard Worker# found in the LICENSE file. 5*8617a60dSAndroid Build Coastguard Worker 6*8617a60dSAndroid Build Coastguard Worker# Tests emerging all the ebuilds that use vboot_reference either as an 7*8617a60dSAndroid Build Coastguard Worker# ebuild dependency or by checking out the code and compiling it in a 8*8617a60dSAndroid Build Coastguard Worker# different ebuild. This is meant to be run from the chroot as part of testing 9*8617a60dSAndroid Build Coastguard Worker# a new change in vboot_reference. 10*8617a60dSAndroid Build Coastguard Worker 11*8617a60dSAndroid Build Coastguard Worker# Required ebuilds: 12*8617a60dSAndroid Build Coastguard WorkerTEST_EBUILDS=" 13*8617a60dSAndroid Build Coastguard Worker sys-boot/chromeos-bootimage 14*8617a60dSAndroid Build Coastguard Worker sys-boot/chromeos-u-boot 15*8617a60dSAndroid Build Coastguard Worker sys-boot/coreboot 16*8617a60dSAndroid Build Coastguard Worker sys-boot/depthcharge 17*8617a60dSAndroid Build Coastguard Worker chromeos-base/chromeos-cryptohome 18*8617a60dSAndroid Build Coastguard Worker chromeos-base/chromeos-ec 19*8617a60dSAndroid Build Coastguard Worker chromeos-base/chromeos-installer 20*8617a60dSAndroid Build Coastguard Worker chromeos-base/chromeos-initramfs 21*8617a60dSAndroid Build Coastguard Worker chromeos-base/chromeos-login 22*8617a60dSAndroid Build Coastguard Worker chromeos-base/update_engine 23*8617a60dSAndroid Build Coastguard Worker chromeos-base/vboot_reference 24*8617a60dSAndroid Build Coastguard Worker chromeos-base/verity 25*8617a60dSAndroid Build Coastguard Worker" 26*8617a60dSAndroid Build Coastguard Worker 27*8617a60dSAndroid Build Coastguard Workerset -e 28*8617a60dSAndroid Build Coastguard Worker 29*8617a60dSAndroid Build Coastguard Worker# Check running inside the chroot. 30*8617a60dSAndroid Build Coastguard Workerif [ ! -e /etc/cros_chroot_version ]; then 31*8617a60dSAndroid Build Coastguard Worker echo "You must run this inside the chroot." >&2 32*8617a60dSAndroid Build Coastguard Worker exit 1 33*8617a60dSAndroid Build Coastguard Workerfi 34*8617a60dSAndroid Build Coastguard Worker 35*8617a60dSAndroid Build Coastguard Worker# Detect the target board. 36*8617a60dSAndroid Build Coastguard Workerif [ "x${BOARD}" == "x" ]; then 37*8617a60dSAndroid Build Coastguard Worker if [ -e ~/trunk/src/scripts/.default_board ]; then 38*8617a60dSAndroid Build Coastguard Worker BOARD="`cat ~/trunk/src/scripts/.default_board`" 39*8617a60dSAndroid Build Coastguard Worker else 40*8617a60dSAndroid Build Coastguard Worker echo "You must pass BOARD environment variable or set a default board." >&2 41*8617a60dSAndroid Build Coastguard Worker exit 1 42*8617a60dSAndroid Build Coastguard Worker fi 43*8617a60dSAndroid Build Coastguard Workerfi 44*8617a60dSAndroid Build Coastguard Worker 45*8617a60dSAndroid Build Coastguard WorkerVBOOT_REF_DIR="$(dirname "$0")" 46*8617a60dSAndroid Build Coastguard Workerecho "Running tests for board '${BOARD}' from ${VBOOT_REF_DIR}" 47*8617a60dSAndroid Build Coastguard Worker 48*8617a60dSAndroid Build Coastguard Workercd "${VBOOT_REF_DIR}" 49*8617a60dSAndroid Build Coastguard Worker 50*8617a60dSAndroid Build Coastguard Workerecho "Running make runtests..." 51*8617a60dSAndroid Build Coastguard Workermake runtests -j32 52*8617a60dSAndroid Build Coastguard Worker 53*8617a60dSAndroid Build Coastguard Workerecho "Removing build artifacts." 54*8617a60dSAndroid Build Coastguard Workerrm -rf build build-main 55*8617a60dSAndroid Build Coastguard Worker 56*8617a60dSAndroid Build Coastguard Workerecho "Running emerge tests (runs cros_workon start)." 57*8617a60dSAndroid Build Coastguard Worker# Ignore errors about already working on those repos. 58*8617a60dSAndroid Build Coastguard Workercros_workon-${BOARD} start ${TEST_EBUILDS} || true 59*8617a60dSAndroid Build Coastguard Worker 60*8617a60dSAndroid Build Coastguard Workeremerge-${BOARD} ${TEST_EBUILDS} 61