| #!/usr/bin/env bash |
| # Copyright 2018 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # Installs or updates prebuilt tools. |
| |
| set -o errexit |
| set -o pipefail |
| |
| script_root="$(cd "$(dirname "${BASH_SOURCE[0]}" )" && pwd)" |
| |
| "${script_root}/cipd.py" ensure \ |
| -ensure-file "${script_root}/cipd.ensure" \ |
| -root "${script_root}" \ |
| -log-level warning |
| |
| # Write vpython3 wrapper. The gLinux version of Python 3.8 is broken, so we need |
| # to make sure that vpython uses the custom Chromium version of Python from |
| # CIPD. |
| # TODO(crbug.com/1176014): Assuming gLinux Python 3.9 doesn't have the same |
| # issues as 3.8, this will likely no longer be necessary once vpython supports |
| # Python 3.9. At that point we can delete this shim and go back to running |
| # vpython3 directly. |
| echo '#!/usr/bin/env bash |
| |
| tools_dir="$(dirname "$0")" |
| exec "${tools_dir}/vpython_upstream/vpython3" -vpython-interpreter "${tools_dir}/python3/bin/python3" "$@" |
| ' > "${script_root}/tools/vpython3" |
| |
| # Write vpython wrapper. This is only necessary because vpython and vpython3 are |
| # in the same CIPD package, so if we nest vpython3 in a subdirectory of "tools" |
| # then we need to do the same for vpython. |
| echo '#!/usr/bin/env bash |
| |
| tools_dir="$(dirname "$0")" |
| exec "${tools_dir}/vpython_upstream/vpython" "$@" |
| ' > "${script_root}/tools/vpython" |
| |
| chmod +x "${script_root}/tools/vpython" |
| chmod +x "${script_root}/tools/vpython3" |