build_packages: Add flag for deleting existing sysroot
The existing process for starting with a clean sysroot requires
either manually deleting it or running setup_board --force. The
extra step is unnecessary, especially since we want to move
developers away from setup_board.
BUG=None
TEST=./build_packages --cleanbuild --board=betty
Change-Id: I0cb1958ce3964cfa13b4905c7360fc16e6b14b2b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosutils/+/2153880
Tested-by: Alex Klein <saklein@chromium.org>
Commit-Queue: Chris McDonald <cjmcdonald@chromium.org>
Reviewed-by: Chris McDonald <cjmcdonald@chromium.org>
diff --git a/build_packages b/build_packages
index 11aad0f..3745f97 100755
--- a/build_packages
+++ b/build_packages
@@ -34,6 +34,8 @@
"Automatically set cpu governor to 'performance'."
DEFINE_boolean use_any_chrome "${FLAGS_TRUE}" \
"Use any Chrome prebuilt available, even if the prebuilt doesn't match exactly."
+DEFINE_boolean cleanbuild "${FLAGS_FALSE}" \
+ "Perform a clean build; delete sysroot if it exists before building."
# The --board_root flag specifies the environment variables ROOT and PKGDIR.
# This allows fetching and emerging of all packages to specified board_root.
@@ -175,6 +177,9 @@
if [[ -n ${FLAGS_board_root} ]]; then
UPDATE_ARGS+=( --board-root "${FLAGS_board_root}" )
fi
+if [ "${FLAGS_cleanbuild}" -eq "${FLAGS_TRUE}" ]; then
+ UPDATE_ARGS+=( --force )
+fi
setup_board --quiet --board=${FLAGS_board} "${UPDATE_ARGS[@]}"