# Copyright (c) 2015, Google Inc. # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY # SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION # OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. vars = { 'chromium_git': 'https://chromium.googlesource.com', 'checkout_clang': False, 'checkout_fuzzer': False, 'checkout_sde': False, 'checkout_nasm': False, 'checkout_libcxx': False, 'vs_version': '2019', # Run the following command to see the latest builds in CIPD: # cipd describe PACKAGE_NAME -version latest # infra/3pp/tools/cmake/linux-amd64 'cmake_version': 'version:2@3.27.7.chromium.8', # infra/3pp/tools/go/linux-amd64 'go_version': 'version:2@1.21.2', # infra/3pp/tools/perl/windows-amd64 'perl_version': 'version:2@5.32.1.1', # Update the following from # https://chromium.googlesource.com/chromium/src/+/main/DEPS 'android_sdk_platform-tools_version': 'HWVsGs2HCKgSVv41FsOcsfJbNcB0UFiNrF6Tc4yRArYC', 'libfuzzer_revision': '758bd21f103a501b362b1ca46fa8fcb692eaa303', 'libcxx_revision': '8fc17971d629c19a17b006d0c4fc41e721cc2f7f', 'libcxxabi_revision': 'db9800c042df3ee2691031a58b5e37e89a7356a3', 'ninja_version': 'version:2@1.11.1.chromium.6', # The Android NDK cannot be updated on CI for two reasons: # # Until https://crbug.com/boringssl/454 is fixed, we rely on an older NDK to # test building without NEON instructions as the baseline. # # Until https://crbug.com/boringssl/653 is fixed, we cannot update past # Chromium's version:2@r25c.cr0 package. Chromium has since switched building # minimal CIPD packages which do not contain all the NDK files we need. We'll # probably need to make our own NDK package. 'android_ndk_revision': '310956bd122ec2b96049f8d7398de6b717f3452e', } deps = { 'boringssl/util/bot/android_ndk': { 'url': Var('chromium_git') + '/android_ndk.git' + '@' + Var('android_ndk_revision'), 'condition': 'checkout_android', }, 'boringssl/util/bot/android_sdk/public': { 'packages': [{ 'package': 'chromium/third_party/android_sdk/public/platform-tools', 'version': Var('android_sdk_platform-tools_version'), }], 'condition': 'checkout_android', 'dep_type': 'cipd', }, 'boringssl/util/bot/cmake': { 'packages': [{ 'package': 'infra/3pp/tools/cmake/${{platform}}', 'version': Var('cmake_version'), }], 'dep_type': 'cipd', }, 'boringssl/util/bot/golang': { 'packages': [{ 'package': 'infra/3pp/tools/go/${{platform}}', 'version': Var('go_version'), }], 'dep_type': 'cipd', }, 'boringssl/util/bot/perl-win32': { 'packages': [{ 'package': 'infra/3pp/tools/perl/${{platform}}', 'version': Var('perl_version'), }], 'condition': 'host_os == "win"', 'dep_type': 'cipd', }, 'boringssl/util/bot/libFuzzer': { 'url': Var('chromium_git') + '/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git' +'@' + Var('libfuzzer_revision'), 'condition': 'checkout_fuzzer', }, 'boringssl/util/bot/libcxx': { 'url': Var('chromium_git') + '/external/github.com/llvm/llvm-project/libcxx.git' + '@' + Var('libcxx_revision'), 'condition': 'checkout_libcxx', }, 'boringssl/util/bot/libcxxabi': { 'url': Var('chromium_git') + '/external/github.com/llvm/llvm-project/libcxxabi.git' + '@' + Var('libcxxabi_revision'), 'condition': 'checkout_libcxx', }, 'boringssl/util/bot/ninja': { 'packages': [{ 'package': 'infra/3pp/tools/ninja/${{platform}}', 'version': Var('ninja_version'), }], 'dep_type': 'cipd', } } recursedeps = [ # android_tools pulls in the NDK from a separate repository. 'boringssl/util/bot/android_tools', ] hooks = [ { 'name': 'nasm_win32', 'pattern': '.', 'condition': 'host_os == "win" and checkout_nasm', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=win32', '--no_auth', '--bucket', 'chromium-tools', '-s', 'boringssl/util/bot/nasm-win32.exe.sha1', ], }, { 'name': 'win_toolchain', 'pattern': '.', 'condition': 'host_os == "win"', 'action': [ 'python3', 'boringssl/util/bot/vs_toolchain.py', 'update', Var('vs_version'), ], }, { 'name': 'clang', 'pattern': '.', 'condition': 'checkout_clang', 'action': [ 'python3', 'boringssl/util/bot/update_clang.py', ], }, { 'name': 'sde_linux64', 'pattern': '.', 'condition': 'checkout_sde and host_os == "linux"', 'action': [ 'download_from_google_storage', '--no_resume', '--bucket', 'chrome-boringssl-sde', '-s', 'boringssl/util/bot/sde-linux64.tar.xz.sha1' ], }, { 'name': 'sde_linux64_extract', 'pattern': '.', 'condition': 'checkout_sde and host_os == "linux"', 'action': [ 'python3', 'boringssl/util/bot/extract.py', 'boringssl/util/bot/sde-linux64.tar.xz', 'boringssl/util/bot/sde-linux64/', ], }, { 'name': 'sde_win32', 'pattern': '.', 'condition': 'checkout_sde and host_os == "win"', 'action': [ 'download_from_google_storage', '--no_resume', '--bucket', 'chrome-boringssl-sde', '-s', 'boringssl/util/bot/sde-win32.tar.xz.sha1' ], }, { 'name': 'sde_win32_extract', 'pattern': '.', 'condition': 'checkout_sde and host_os == "win"', 'action': [ 'python3', 'boringssl/util/bot/extract.py', 'boringssl/util/bot/sde-win32.tar.xz', 'boringssl/util/bot/sde-win32/', ], }, ]