mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 00:39:49 +00:00
f1c7a22c43
toolchain_prefix was not correctly propagated everywhere it needed to go. This CL also adds an error to build.py if someone tries to use --toolchain as it is not supported there. R=rmacnak@google.com Review-Url: https://codereview.chromium.org/2797303005 .
133 lines
2.7 KiB
Plaintext
133 lines
2.7 KiB
Plaintext
# Copyright 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.
|
|
|
|
import("//build/config/sysroot.gni")
|
|
import("//build/toolchain/ccache.gni")
|
|
import("//build/toolchain/clang.gni")
|
|
import("//build/toolchain/gcc_toolchain.gni")
|
|
import("//build/toolchain/goma.gni")
|
|
|
|
declare_args() {
|
|
toolchain_prefix = ""
|
|
}
|
|
|
|
if (use_goma) {
|
|
assert(!use_ccache, "Goma and ccache can't be used together.")
|
|
compiler_prefix = "$goma_dir/gomacc "
|
|
} else if (use_ccache) {
|
|
compiler_prefix = "ccache "
|
|
} else {
|
|
compiler_prefix = ""
|
|
}
|
|
|
|
gcc_toolchain("arm") {
|
|
prefix = "arm-linux-gnueabihf-"
|
|
if (toolchain_prefix != "") {
|
|
prefix = toolchain_prefix
|
|
}
|
|
|
|
cc = "${compiler_prefix}${prefix}gcc"
|
|
cxx = "${compiler_prefix}${prefix}g++"
|
|
|
|
ar = "${prefix}ar"
|
|
ld = cxx
|
|
readelf = "${prefix}readelf"
|
|
nm = "${prefix}nm"
|
|
|
|
toolchain_cpu = "arm"
|
|
toolchain_os = "linux"
|
|
is_clang = false
|
|
}
|
|
|
|
gcc_toolchain("arm64") {
|
|
prefix = "aarch64-linux-gnu-"
|
|
if (toolchain_prefix != "") {
|
|
prefix = toolchain_prefix
|
|
}
|
|
|
|
cc = "${compiler_prefix}${prefix}gcc"
|
|
cxx = "${compiler_prefix}${prefix}g++"
|
|
|
|
ar = "${prefix}ar"
|
|
ld = cxx
|
|
readelf = "${prefix}readelf"
|
|
nm = "${prefix}nm"
|
|
|
|
toolchain_cpu = "arm64"
|
|
toolchain_os = "linux"
|
|
is_clang = false
|
|
}
|
|
|
|
gcc_toolchain("clang_x86") {
|
|
prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin",
|
|
root_build_dir)
|
|
cc = "${compiler_prefix}$prefix/clang"
|
|
cxx = "${compiler_prefix}$prefix/clang++"
|
|
readelf = "readelf"
|
|
nm = "nm"
|
|
ar = "ar"
|
|
ld = cxx
|
|
|
|
toolchain_cpu = "x86"
|
|
toolchain_os = "linux"
|
|
is_clang = true
|
|
}
|
|
|
|
gcc_toolchain("x86") {
|
|
cc = "${compiler_prefix}gcc"
|
|
cxx = "${compiler_prefix}g++"
|
|
|
|
readelf = "readelf"
|
|
nm = "nm"
|
|
ar = "ar"
|
|
ld = cxx
|
|
|
|
toolchain_cpu = "x86"
|
|
toolchain_os = "linux"
|
|
is_clang = false
|
|
}
|
|
|
|
gcc_toolchain("clang_x64") {
|
|
prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin",
|
|
root_build_dir)
|
|
cc = "${compiler_prefix}$prefix/clang"
|
|
cxx = "${compiler_prefix}$prefix/clang++"
|
|
|
|
readelf = "readelf"
|
|
nm = "nm"
|
|
ar = "ar"
|
|
ld = cxx
|
|
|
|
toolchain_cpu = "x64"
|
|
toolchain_os = "linux"
|
|
is_clang = true
|
|
}
|
|
|
|
gcc_toolchain("x64") {
|
|
cc = "${compiler_prefix}gcc"
|
|
cxx = "${compiler_prefix}g++"
|
|
|
|
readelf = "readelf"
|
|
nm = "nm"
|
|
ar = "ar"
|
|
ld = cxx
|
|
|
|
toolchain_cpu = "x64"
|
|
toolchain_os = "linux"
|
|
is_clang = false
|
|
}
|
|
|
|
gcc_toolchain("mipsel") {
|
|
cc = "${compiler_prefix}${toolchain_prefix}gcc"
|
|
cxx = "${compiler_prefix}${toolchain_prefix}g++"
|
|
ar = "${toolchain_prefix}ar"
|
|
ld = cxx
|
|
readelf = "${toolchain_prefix}readelf"
|
|
nm = "${toolchain_prefix}nm"
|
|
|
|
toolchain_cpu = "${target_cpu}"
|
|
toolchain_os = "linux"
|
|
is_clang = is_clang
|
|
}
|