# Defines the configuration of Remote Build Execution (RBE). declare_args() { # The directory where the re-client tooling binaries are. rbe_bin_dir = rebase_path("//buildtools/reclient", root_build_dir) # Execution root - this should be the root of the source tree. # This is defined here instead of in the config file because # this will vary depending on where the user has placed the # chromium source on their system. rbe_exec_root = rebase_path("//") # Set to true to enable remote compilation using reclient. use_remoteexec = false # Set to true to enable remote linking using reclient. use_remoteexec_links = false # The directory where the re-client configuration files are. rbe_cfg_dir = "//buildtools/reclient_cfgs" } declare_args() { # Set to the path of the RBE reclient configuration files. # Configuration file selection based on operating system. if (host_os == "linux") { rbe_py_cfg_file = rebase_path(rbe_cfg_dir, root_build_dir) + "/python/rewrapper_linux.cfg" rbe_cc_cfg_file = rebase_path(rbe_cfg_dir, root_build_dir) + "/chromium-browser-clang/rewrapper_linux.cfg" rbe_link_cfg_file = rebase_path(rbe_cfg_dir, root_build_dir) + "/chromium-browser-clang/rewrapper_linux_link.cfg" } else if (host_os == "win") { rbe_py_cfg_file = rebase_path(rbe_cfg_dir, root_build_dir) + "/python/rewrapper_windows.cfg" rbe_cc_cfg_file = rebase_path(rbe_cfg_dir, root_build_dir) + "/chromium-browser-clang/rewrapper_windows.cfg" rbe_link_cfg_file = "" } else if (host_os == "mac") { rbe_py_cfg_file = rebase_path(rbe_cfg_dir, root_build_dir) + "/python/rewrapper_mac.cfg" rbe_cc_cfg_file = rebase_path(rbe_cfg_dir, root_build_dir) + "/chromium-browser-clang/rewrapper_mac.cfg" rbe_link_cfg_file = "" } else { rbe_linkcfg_file = "" rbe_py_cfg_file = "" rbe_cc_cfg_file = "" } # Set to the path of the RBE recleint wrapper for ChromeOS. rbe_cros_cc_wrapper = "${rbe_bin_dir}/rewrapper" } if (use_remoteexec && current_toolchain == default_toolchain) { # Check existence of reclient configs and show user friendly error message if # it doesn't. exec_script(rebase_path("//build/toolchain/check_rewrapper_cfg.py"), [ rbe_cc_cfg_file ], "", [ rebase_path(rbe_cc_cfg_file, ".", root_build_dir) ]) } if (is_win) { if (use_remoteexec_links) { print("For now, remote linking is not available for Windows.") use_remoteexec_links = false } } if (is_mac || is_ios) { if (use_remoteexec_links) { print("For now, remote linking is not available on Macs.") use_remoteexec_links = false } }