build_image: Include a list of models in unified builds
When unified builds we want to include a list of models for display on the
login screen if enabled. Update the
BUG=chromium:698012
TEST=Manual:
USE=pcserial ./build_image --board=reef --noenable_rootfs_verification dev \
--enable_serial ttyS0 dev
Boot it on reef in dev mode and see that the message is displayed on the
login screen.
Change-Id: I4017dd30092eca406985034235ce23ddd0907f44
Reviewed-on: https://chromium-review.googlesource.com/450783
Commit-Ready: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
diff --git a/build_library/base_image_util.sh b/build_library/base_image_util.sh
index 2e44540..cff8155 100755
--- a/build_library/base_image_util.sh
+++ b/build_library/base_image_util.sh
@@ -4,6 +4,8 @@
. "${SRC_ROOT}/platform/dev/toolchain_utils.sh" || exit 1
+CHROMEOS_MASTER_CONFIG_FILE="${BOARD_ROOT}/usr/share/chromeos-config/config.dtb"
+
check_full_disk() {
local prev_ret=$?
@@ -253,9 +255,18 @@
builder_path="--builder_path=${FLAGS_builder_path}"
fi
+ # For unified builds, include a list of models, e.g. with --models "reef pyro"
+ local model_flags=()
+ if [[ -f "${CHROMEOS_MASTER_CONFIG_FILE}" ]]; then
+ models=$(fdtget "${CHROMEOS_MASTER_CONFIG_FILE}" -l /chromeos/models \
+ | tr '\n' ' ')
+ [[ -n "${models}" ]] && model_flags+=( --models "${models%% }" )
+ fi
+
"${GCLIENT_ROOT}/chromite/bin/cros_set_lsb_release" \
--sysroot="${root_fs_dir}" \
--board="${BOARD}" \
+ "${model_flags[@]}" \
${builder_path} \
--version_string="${CHROMEOS_VERSION_STRING}" \
--auserver="${CHROMEOS_VERSION_AUSERVER}" \