blob: 479b112c48905f34f4d64740e3c8c687c587eee3 [file] [log] [blame]
# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This script rebuilds and installs compiler wrappers
if [[ ! -e /etc/cros_chroot_version ]]; then
echo "Please run this script inside chroot"
exit 1
set -e
cd "$(dirname "$(readlink -m "$0")")"
echo "Updated files:"
# Update the host wrapper
./ --use_ccache=false --use_llvm_next=false --output_file=./clang_host_wrapper
sudo mv ./clang_host_wrapper /usr/bin/clang_host_wrapper
echo "/usr/bin/clang_host_wrapper"
sudo cp ../binary_search_tool/ /usr/bin
echo "/usr/bin/clang_host_wrapper/"
# Update the target wrappers
for GCC in cross-x86_64-cros-linux-gnu/gcc cross-armv7a-cros-linux-gnueabihf/gcc cross-aarch64-cros-linux-gnu/gcc; do
if ! FILES="$(equery f ${GCC})"; then
if [[ $(equery l "${GCC}" 2>&1 | wc -c) -eq 0 ]]; then
echo "no ${GCC} package found; skipping" >&2
# Something went wrong, and the equery above probably complained about it.
exit 1
./ --config=cros.hardened --use_ccache=false --use_llvm_next=false --output_file=./sysroot_wrapper.hardened.noccache
sudo mv ./sysroot_wrapper.hardened.noccache "$(grep sysroot_wrapper.hardened.noccache <<< "${FILES}")"
grep sysroot_wrapper.hardened.noccache <<< "${FILES}"
./ --config=cros.hardened --use_ccache=true --use_llvm_next=false --output_file=./sysroot_wrapper.hardened.ccache
sudo mv ./sysroot_wrapper.hardened.ccache "$(grep sysroot_wrapper.hardened.ccache <<< "${FILES}")"
grep sysroot_wrapper.hardened.ccache <<< "${FILES}"
sudo cp ../binary_search_tool/ "$(grep <<< "${FILES}")"
grep <<< "${FILES}"