# 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("//buildtools/toolchain/clang+llvm-x86_64-linux/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("//buildtools/toolchain/clang+llvm-x86_64-linux/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 }