1# Copyright 2013 The Chromium Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5# Defines the configuration of Goma. 6 7import("//build/toolchain/siso.gni") 8 9declare_args() { 10 # Set to true to enable distributed compilation using Goma. 11 use_goma = false 12 13 # Absolute directory containing the gomacc binary. 14 goma_dir = "" 15} 16 17if (use_goma && goma_dir == "") { 18 goma_dir = exec_script("get_goma_dir.py", [], "string") 19} 20 21assert(!is_win || !use_goma || is_clang, 22 "cl.exe does not work on goma, use clang") 23 24if (use_goma && current_toolchain == default_toolchain) { 25 if (host_os == "win") { 26 print("The gn arg use_goma=true will be deprecated by EOY 2023. " + 27 "Please use `use_remoteexec=true` instead. See " + 28 "https://chromium.googlesource.com/chromium/src/+/main/docs/" + 29 "windows_build_instructions.md#use-reclient " + 30 "for setup instructions.") 31 } else if (host_os == "mac") { 32 print("The gn arg use_goma=true will be deprecated by EOY 2023. " + 33 "Please use `use_remoteexec=true` instead. " + 34 "If you are a googler see http://go/building-chrome-mac" + 35 "#using-remote-execution for setup instructions.") 36 } else { 37 print("The gn arg use_goma=true will be deprecated by EOY 2023. " + 38 "Please use `use_remoteexec=true` instead. See " + 39 "https://chromium.googlesource.com/chromium/src/+/main/docs/" + 40 "linux/build_instructions.md#use-reclient for setup instructions.") 41 } 42 assert(!use_siso, 43 "Siso does not support Goma. Use use_remoteexec=true instead.") 44} 45