update_chroot: store emerge flags in arrays

This commit is contained in:
David Michael 2017-03-21 18:36:43 -07:00
parent 6a4e78937d
commit 28f5d7f276

View File

@ -176,25 +176,25 @@ done
"${BUILD_LIBRARY_DIR}/set_lsb_release" --root /
EMERGE_FLAGS="-uNv --with-bdeps=y --select"
REBUILD_FLAGS=""
EMERGE_FLAGS=( -uNv --with-bdeps=y --select )
REBUILD_FLAGS=()
if [ "${FLAGS_usepkg}" -eq "${FLAGS_TRUE}" ]; then
EMERGE_FLAGS="${EMERGE_FLAGS} --usepkg"
EMERGE_FLAGS+=( --usepkg )
if [[ "${FLAGS_usepkgonly}" -eq "${FLAGS_TRUE}" ]]; then
EMERGE_FLAGS+=" --usepkgonly --rebuilt-binaries n"
EMERGE_FLAGS+=( --usepkgonly --rebuilt-binaries n )
fi
if [ "${FLAGS_getbinpkg}" -eq "${FLAGS_TRUE}" ]; then
EMERGE_FLAGS="${EMERGE_FLAGS} --getbinpkg"
EMERGE_FLAGS+=( --getbinpkg )
fi
# Only update toolchain when binpkgs are available.
EMERGE_FLAGS+=" $(get_binonly_args $(get_chost_list))"
REBUILD_FLAGS+=" $(get_binonly_args $(get_chost_list))"
EMERGE_FLAGS+=( $(get_binonly_args $(get_chost_list)) )
REBUILD_FLAGS+=( $(get_binonly_args $(get_chost_list)) )
fi
if [[ "${FLAGS_jobs}" -ne -1 ]]; then
EMERGE_FLAGS+=" --jobs=${FLAGS_jobs}"
REBUILD_FLAGS+=" --jobs=${FLAGS_jobs}"
EMERGE_FLAGS+=( "--jobs=${FLAGS_jobs}" )
REBUILD_FLAGS+=( "--jobs=${FLAGS_jobs}" )
fi
# Perform an update of coreos-devel/sdk-depends and world in the chroot.
@ -203,7 +203,7 @@ EMERGE_CMD="emerge"
# In first pass, update portage and toolchains. Lagged updates of both
# can cause serious issues later.
info "Updating basic system packages"
sudo -E ${EMERGE_CMD} --quiet ${EMERGE_FLAGS} \
sudo -E ${EMERGE_CMD} --quiet "${EMERGE_FLAGS[@]}" \
dev-util/ccache \
sys-apps/portage \
sys-devel/crossdev \
@ -221,7 +221,7 @@ if [[ "${FLAGS_skip_toolchain_update}" -eq "${FLAGS_FALSE}" && \
for cross_chost in "${CROSS_CHOSTS[@]}"; do
info "Updating cross ${cross_chost} toolchain"
install_cross_toolchain "${cross_chost}" --quiet ${EMERGE_FLAGS}
install_cross_toolchain "${cross_chost}" --quiet "${EMERGE_FLAGS[@]}"
done
fi
@ -229,14 +229,14 @@ fi
CHROMITE_BIN="${GCLIENT_ROOT}/chromite/bin"
if [ "${FLAGS_workon}" -eq "${FLAGS_TRUE}" ]; then
for pkg in $("${CHROMITE_BIN}/cros_list_modified_packages" --host); do
EMERGE_FLAGS+=" --reinstall-atoms=${pkg} --usepkg-exclude=${pkg}"
EMERGE_FLAGS+=( "--reinstall-atoms=${pkg}" "--usepkg-exclude=${pkg}" )
done
fi
# Second pass, update everything else.
EMERGE_FLAGS+=" --deep"
EMERGE_FLAGS+=( --deep )
info "Updating all SDK packages"
sudo -E ${EMERGE_CMD} ${EMERGE_FLAGS} \
sudo -E ${EMERGE_CMD} "${EMERGE_FLAGS[@]}" \
coreos-devel/sdk-depends world
info "Removing obsolete packages"
@ -244,7 +244,7 @@ sudo -E ${EMERGE_CMD} --quiet --depclean @unavailable
if portageq list_preserved_libs / >/dev/null; then
info "Rebuilding packages linked against old libraries"
sudo -E ${EMERGE_CMD} ${REBUILD_FLAGS} @preserved-rebuild
sudo -E ${EMERGE_CMD} "${REBUILD_FLAGS[@]}" @preserved-rebuild
fi
# Automatically discard all CONFIG_PROTECT'ed files. Those that are