123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435 |
- # 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/dcheck_always_on.gni")
- import("//build/config/ozone.gni")
- import("//build/config/sysroot.gni")
- import("//build/config/ui.gni")
- import("//build/toolchain/gcc_toolchain.gni")
- clang_toolchain("clang_ppc64") {
- enable_linker_map = true
- toolchain_args = {
- current_cpu = "ppc64"
- current_os = "linux"
- }
- }
- clang_toolchain("clang_arm") {
- toolchain_args = {
- current_cpu = "arm"
- current_os = "linux"
- }
- }
- clang_toolchain("clang_arm64") {
- toolchain_args = {
- current_cpu = "arm64"
- current_os = "linux"
- }
- }
- gcc_toolchain("arm64") {
- toolprefix = "aarch64-linux-gnu-"
- cc = "${toolprefix}gcc"
- cxx = "${toolprefix}g++"
- ar = "${toolprefix}ar"
- ld = cxx
- readelf = "${toolprefix}readelf"
- nm = "${toolprefix}nm"
- toolchain_args = {
- current_cpu = "arm64"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- gcc_toolchain("arm") {
- toolprefix = "arm-linux-gnueabihf-"
- cc = "${toolprefix}gcc"
- cxx = "${toolprefix}g++"
- ar = "${toolprefix}ar"
- ld = cxx
- readelf = "${toolprefix}readelf"
- nm = "${toolprefix}nm"
- toolchain_args = {
- current_cpu = "arm"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- clang_toolchain("clang_x86") {
- # Output linker map files for binary size analysis.
- enable_linker_map = true
- toolchain_args = {
- current_cpu = "x86"
- current_os = "linux"
- }
- }
- gcc_toolchain("x86") {
- cc = "gcc"
- cxx = "g++"
- readelf = "readelf"
- nm = "nm"
- ar = "ar"
- ld = cxx
- # Output linker map files for binary size analysis.
- enable_linker_map = true
- toolchain_args = {
- current_cpu = "x86"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- clang_toolchain("clang_x64") {
- # Output linker map files for binary size analysis.
- enable_linker_map = true
- toolchain_args = {
- current_cpu = "x64"
- current_os = "linux"
- }
- }
- template("clang_v8_toolchain") {
- clang_toolchain(target_name) {
- toolchain_args = {
- current_os = "linux"
- forward_variables_from(invoker.toolchain_args, "*")
- }
- }
- }
- clang_v8_toolchain("clang_x86_v8_arm") {
- toolchain_args = {
- current_cpu = "x86"
- v8_current_cpu = "arm"
- }
- }
- clang_v8_toolchain("clang_x86_v8_mipsel") {
- toolchain_args = {
- current_cpu = "x86"
- v8_current_cpu = "mipsel"
- }
- }
- clang_v8_toolchain("clang_x86_v8_mips") {
- toolchain_args = {
- current_cpu = "x86"
- v8_current_cpu = "mips"
- }
- }
- clang_v8_toolchain("clang_x64_v8_arm64") {
- toolchain_args = {
- current_cpu = "x64"
- v8_current_cpu = "arm64"
- }
- }
- clang_v8_toolchain("clang_x64_v8_mips64el") {
- toolchain_args = {
- current_cpu = "x64"
- v8_current_cpu = "mips64el"
- }
- }
- clang_v8_toolchain("clang_x64_v8_mips64") {
- toolchain_args = {
- current_cpu = "x64"
- v8_current_cpu = "mips64"
- }
- }
- clang_v8_toolchain("clang_x64_v8_riscv64") {
- toolchain_args = {
- current_cpu = "x64"
- v8_current_cpu = "riscv64"
- use_lld = false
- }
- }
- clang_v8_toolchain("clang_x64_v8_loong64") {
- toolchain_args = {
- current_cpu = "x64"
- v8_current_cpu = "loong64"
- }
- }
- # In a LaCrOS build, this toolchain is intended to be used as an alternate
- # toolchain to build Ash-Chrome in a subdirectory.
- clang_toolchain("ash_clang_x64") {
- toolchain_args = {
- # This turns the toolchain into the "Linux ChromeOS" build
- current_os = "chromeos"
- target_os = "chromeos"
- current_cpu = current_cpu
- # This turns off all of the LaCrOS-specific flags.
- also_build_ash_chrome = false
- chromeos_is_browser_only = false
- use_clang_coverage = false
- }
- }
- # In an ash build, this toolchain is intended to be used as an alternate
- # toolchain to build lacros-Chrome in a subdirectory.
- clang_toolchain("lacros_clang_x64") {
- toolchain_args = {
- # This turns the toolchain into the "Lacros" build
- current_os = "chromeos"
- target_os = "chromeos"
- current_cpu = current_cpu
- # This turns on the LaCrOS-specific flag.
- also_build_lacros_chrome = false
- chromeos_is_browser_only = true
- use_clang_coverage = false
- dcheck_always_on = false
- symbol_level = 1
- }
- }
- gcc_toolchain("x64") {
- cc = "gcc"
- cxx = "g++"
- readelf = "readelf"
- nm = "nm"
- ar = "ar"
- ld = cxx
- # Output linker map files for binary size analysis.
- enable_linker_map = true
- toolchain_args = {
- current_cpu = "x64"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- clang_toolchain("clang_mipsel") {
- toolchain_args = {
- current_cpu = "mipsel"
- current_os = "linux"
- }
- }
- clang_toolchain("clang_mips64el") {
- toolchain_args = {
- current_cpu = "mips64el"
- current_os = "linux"
- }
- }
- gcc_toolchain("mipsel") {
- toolprefix = "mipsel-linux-gnu-"
- cc = "${toolprefix}gcc"
- cxx = " ${toolprefix}g++"
- ar = "${toolprefix}ar"
- ld = cxx
- readelf = "${toolprefix}readelf"
- nm = "${toolprefix}nm"
- toolchain_args = {
- cc_wrapper = ""
- current_cpu = "mipsel"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- use_goma = false
- }
- }
- gcc_toolchain("mips64el") {
- toolprefix = "mips64el-linux-gnuabi64-"
- cc = "${toolprefix}gcc"
- cxx = "${toolprefix}g++"
- ar = "${toolprefix}ar"
- ld = cxx
- readelf = "${toolprefix}readelf"
- nm = "${toolprefix}nm"
- toolchain_args = {
- cc_wrapper = ""
- current_cpu = "mips64el"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- use_goma = false
- }
- }
- clang_toolchain("clang_riscv64") {
- enable_linker_map = true
- toolchain_args = {
- current_cpu = "riscv64"
- current_os = "linux"
- is_clang = true
- }
- }
- gcc_toolchain("riscv64") {
- toolprefix = "riscv64-linux-gnu"
- cc = "${toolprefix}-gcc"
- cxx = "${toolprefix}-g++"
- readelf = "${toolprefix}-readelf"
- nm = "${toolprefix}-nm"
- ar = "${toolprefix}-ar"
- ld = cxx
- toolchain_args = {
- current_cpu = "riscv64"
- current_os = "linux"
- is_clang = false
- }
- }
- clang_toolchain("clang_s390x") {
- toolchain_args = {
- current_cpu = "s390x"
- current_os = "linux"
- is_clang = true
- }
- }
- gcc_toolchain("s390x") {
- cc = "gcc"
- cxx = "g++"
- readelf = "readelf"
- nm = "nm"
- ar = "ar"
- ld = cxx
- toolchain_args = {
- current_cpu = "s390x"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- gcc_toolchain("ppc64") {
- cc = "gcc"
- cxx = "g++"
- readelf = "readelf"
- nm = "nm"
- ar = "ar"
- ld = cxx
- toolchain_args = {
- current_cpu = "ppc64"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- gcc_toolchain("mips") {
- toolprefix = "mips-linux-gnu-"
- cc = "${toolprefix}gcc"
- cxx = "${toolprefix}g++"
- readelf = "${toolprefix}readelf"
- nm = "${toolprefix}nm"
- ar = "${toolprefix}ar"
- ld = cxx
- toolchain_args = {
- current_cpu = "mips"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- gcc_toolchain("mips64") {
- toolprefix = "mips64-linux-gnuabi64-"
- cc = "${toolprefix}gcc"
- cxx = "${toolprefix}g++"
- readelf = "${toolprefix}readelf"
- nm = "${toolprefix}nm"
- ar = "${toolprefix}ar"
- ld = cxx
- toolchain_args = {
- current_cpu = "mips64"
- current_os = "linux"
- # reclient does not support gcc.
- use_remoteexec = false
- is_clang = false
- }
- }
- clang_toolchain("clang_loong64") {
- toolchain_args = {
- current_cpu = "loong64"
- current_os = "linux"
- }
- }
- gcc_toolchain("loong64") {
- toolprefix = "loongarch64-linux-gnu"
- cc = "${toolprefix}-gcc"
- cxx = "${toolprefix}-g++"
- readelf = "${toolprefix}-readelf"
- nm = "${toolprefix}-nm"
- ar = "${toolprefix}-ar"
- ld = cxx
- toolchain_args = {
- current_cpu = "loong64"
- current_os = "linux"
- is_clang = false
- }
- }
|