Index: src/scripts/build_tests.sh |
diff --git a/src/scripts/build_tests.sh b/src/scripts/build_tests.sh |
index a057b60e673060a3c96fb370a1bf92004a9574f2..895c5e572f8d8242eba3dd9c52781b17d5c5e1a6 100755 |
--- a/src/scripts/build_tests.sh |
+++ b/src/scripts/build_tests.sh |
@@ -12,6 +12,9 @@ assert_inside_chroot |
assert_not_root_user |
# Flags |
+DEFINE_string build_root "$DEFAULT_BUILD_ROOT" \ |
+ "Root of build output" |
+DEFINE_string board "" "Target board for which tests are to be built" |
# Parse command line |
FLAGS "$@" || exit 1 |
@@ -20,16 +23,23 @@ eval set -- "${FLAGS_ARGV}" |
# Die on error; print commands |
set -e |
-PLATFORM_DIR="$SRC_ROOT/platform" |
-PLATFORM_DIRS="pam_google window_manager cryptohome" |
- |
-# Build tests |
-for i in $PLATFORM_DIRS |
-do |
- echo "building $PLATFORM_DIR/$i" |
- cd "$PLATFORM_DIR/$i" |
- ./make_tests.sh |
- cd - |
-done |
- |
-echo "All tests built." |
+TEST_DIRS="pam_google window_manager cryptohome" |
+ |
+if [ -n "$FLAGS_board" ] |
+then |
+ sudo TEST_DIRS="${TEST_DIRS}" \ |
+ emerge-${FLAGS_board} chromeos-base/chromeos-unittests |
+else |
+ PLATFORM_DIR="$SRC_ROOT/platform" |
+ |
+ # Build tests |
+ for i in ${TEST_DIRS} |
+ do |
+ echo "building $PLATFORM_DIR/$i" |
+ cd "$PLATFORM_DIR/$i" |
+ OUT_DIR="${FLAGS_build_root}/x86/tests" ./make_tests.sh |
+ cd - |
+ done |
+ |
+ echo "All tests built." |
+fi |