mirror of
https://github.com/dart-lang/sdk
synced 2024-11-02 12:24:24 +00:00
5f8c21f9e9
Previously, we didn't use a sysroot for the host toolchain used to create the host_tool used in dart_actions. The compile action then failed on the new goma backend causing long build times. Before (dart-sdk-linux-try/429, ~38 mins): finished=10627 cache_hit=7334 retry=3277 fail=3277 After (dart-sdk-linux-try/430, ~12 mins): finished=10625 cache_hit=7352 retry=0 fail=0 Change-Id: Iebf967be6eb67c3056f766839a3d58d18fc608f5 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150421 Reviewed-by: Ryan Macnak <rmacnak@google.com> Commit-Queue: Ryan Macnak <rmacnak@google.com> Auto-Submit: Alexander Thomas <athom@google.com>
47 lines
1.6 KiB
Text
47 lines
1.6 KiB
Text
# Copyright (c) 2013 The Chromium 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 header file defines the "sysroot" variable which is the absolute path
|
|
# of the sysroot. If no sysroot applies, the variable will be an empty string.
|
|
|
|
declare_args() {
|
|
# The absolute path of the sysroot that is applied when compiling using
|
|
# the target toolchain.
|
|
target_sysroot = ""
|
|
|
|
# Whether the Debian sysroot should be used.
|
|
dart_use_debian_sysroot = false
|
|
}
|
|
|
|
if (is_linux && dart_use_debian_sysroot) {
|
|
if (current_cpu == "x86") {
|
|
target_sysroot =
|
|
rebase_path("//build/linux/debian_jessie_i386-sysroot", root_build_dir)
|
|
} else if (current_cpu == "x64") {
|
|
target_sysroot =
|
|
rebase_path("//build/linux/debian_jessie_amd64-sysroot", root_build_dir)
|
|
} else if (current_cpu == "arm") {
|
|
target_sysroot =
|
|
rebase_path("//build/linux/debian_jessie_arm-sysroot", root_build_dir)
|
|
} else if (current_cpu == "arm64") {
|
|
target_sysroot =
|
|
rebase_path("//build/linux/debian_jessie_arm64-sysroot", root_build_dir)
|
|
} else {
|
|
print("There is no Debian sysroot present for $current_cpu")
|
|
assert(false)
|
|
}
|
|
}
|
|
|
|
if ((current_toolchain == host_toolchain ||
|
|
current_toolchain == default_toolchain) && target_sysroot != "") {
|
|
sysroot = target_sysroot
|
|
} else if (is_android) {
|
|
import("//build/config/android/config.gni")
|
|
sysroot = rebase_path("$android_ndk_root/sysroot")
|
|
} else if (is_mac) {
|
|
import("//build/config/mac/mac_sdk.gni")
|
|
sysroot = mac_sdk_path
|
|
} else {
|
|
sysroot = ""
|
|
}
|