2013-12-28 10:49:32 +04:00
|
|
|
# Copyright 2013 The Chromium Authors. All rights reserved.
|
2013-11-21 02:21:03 +04:00
|
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
|
|
# found in the LICENSE file.
|
|
|
|
|
2014-01-22 15:41:53 +04:00
|
|
|
import("//build/config/sysroot.gni")
|
2014-11-27 02:24:16 +03:00
|
|
|
import("//build/toolchain/ccache.gni")
|
2014-02-03 16:11:38 +04:00
|
|
|
import("//build/toolchain/clang.gni")
|
|
|
|
import("//build/toolchain/gcc_toolchain.gni")
|
|
|
|
import("//build/toolchain/goma.gni")
|
2013-11-21 02:21:03 +04:00
|
|
|
|
2014-07-18 05:51:08 +04:00
|
|
|
if (use_goma) {
|
2014-11-27 02:24:16 +03:00
|
|
|
assert(!use_ccache, "Goma and ccache can't be used together.")
|
|
|
|
compiler_prefix = "$goma_dir/gomacc "
|
|
|
|
} else if (use_ccache) {
|
|
|
|
compiler_prefix = "ccache "
|
2014-07-18 05:51:08 +04:00
|
|
|
} else {
|
2014-11-27 02:24:16 +03:00
|
|
|
compiler_prefix = ""
|
2014-07-18 05:51:08 +04:00
|
|
|
}
|
|
|
|
|
2013-12-28 10:49:32 +04:00
|
|
|
gcc_toolchain("arm") {
|
2014-11-27 02:24:16 +03:00
|
|
|
cc = "${compiler_prefix}arm-linux-gnueabi-gcc"
|
|
|
|
cxx = "${compiler_prefix}arm-linux-gnueabi-g++"
|
2014-07-18 05:51:08 +04:00
|
|
|
|
2013-12-28 10:49:32 +04:00
|
|
|
ar = "arm-linux-gnueabi-ar"
|
|
|
|
ld = cxx
|
2015-05-15 00:38:47 +03:00
|
|
|
readelf = "arm-linux-gnueabi-readelf"
|
|
|
|
nm = "arm-linux-gnueabi-nm"
|
2013-11-23 03:30:28 +04:00
|
|
|
|
Roll GN binaries to #317120 for the cpu_arch changes
The newest version of GN replaces the 'cpu_arch' and 'os' variables with 'current_cpu', 'target_cpu', 'current_os', and 'target_os', and also replaces 'build_cpu' with 'host_cpu', and 'build_os' with 'host_os'.
The roll also picks up the change to add a new 'gn clean'
command, some absolute path handling fixes, a check_includes fix for action_foreach(), and some minor
internal fixes.
This patch also updates the build config files to accommodate the GN changes in a backwards-compatible manner, i.e., the configs now will set cpu_arch and os correctly in the right contexts. They will also allow the users to continue to set os= and cpu_arch= in an args file, so no user builds (or bots) will break.
Once all of the bots and all of the build files have been updated to refer to the new variables instead of the old ones, we can drop the backwards-compatible versions.
TBR=brettw@chromium.org
BUG=344767
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/936103003
Cr-Original-Commit-Position: refs/heads/master@{#317186}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7ee02bed35766535521c8e1f072b98cbf9eef53d
2015-02-20 03:16:17 +03:00
|
|
|
toolchain_cpu = "arm"
|
2013-12-28 10:49:32 +04:00
|
|
|
toolchain_os = "linux"
|
2014-07-12 00:27:10 +04:00
|
|
|
is_clang = false
|
2013-11-23 03:30:28 +04:00
|
|
|
}
|
|
|
|
|
2014-07-12 00:27:10 +04:00
|
|
|
gcc_toolchain("clang_x86") {
|
|
|
|
if (use_clang_type_profiler) {
|
|
|
|
prefix = rebase_path("//third_party/llvm-allocated-type/Linux_ia32/bin",
|
|
|
|
root_build_dir)
|
2014-02-03 16:11:38 +04:00
|
|
|
} else {
|
2014-07-12 00:27:10 +04:00
|
|
|
prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin",
|
|
|
|
root_build_dir)
|
2014-02-03 16:11:38 +04:00
|
|
|
}
|
2014-11-27 02:24:16 +03:00
|
|
|
cc = "${compiler_prefix}$prefix/clang"
|
|
|
|
cxx = "${compiler_prefix}$prefix/clang++"
|
2015-05-15 00:38:47 +03:00
|
|
|
readelf = "readelf"
|
|
|
|
nm = "nm"
|
2013-12-28 10:49:32 +04:00
|
|
|
ar = "ar"
|
|
|
|
ld = cxx
|
2013-11-21 02:21:03 +04:00
|
|
|
|
Roll GN binaries to #317120 for the cpu_arch changes
The newest version of GN replaces the 'cpu_arch' and 'os' variables with 'current_cpu', 'target_cpu', 'current_os', and 'target_os', and also replaces 'build_cpu' with 'host_cpu', and 'build_os' with 'host_os'.
The roll also picks up the change to add a new 'gn clean'
command, some absolute path handling fixes, a check_includes fix for action_foreach(), and some minor
internal fixes.
This patch also updates the build config files to accommodate the GN changes in a backwards-compatible manner, i.e., the configs now will set cpu_arch and os correctly in the right contexts. They will also allow the users to continue to set os= and cpu_arch= in an args file, so no user builds (or bots) will break.
Once all of the bots and all of the build files have been updated to refer to the new variables instead of the old ones, we can drop the backwards-compatible versions.
TBR=brettw@chromium.org
BUG=344767
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/936103003
Cr-Original-Commit-Position: refs/heads/master@{#317186}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7ee02bed35766535521c8e1f072b98cbf9eef53d
2015-02-20 03:16:17 +03:00
|
|
|
toolchain_cpu = "x86"
|
2013-12-28 10:49:32 +04:00
|
|
|
toolchain_os = "linux"
|
2014-07-12 00:27:10 +04:00
|
|
|
is_clang = true
|
2013-12-28 10:49:32 +04:00
|
|
|
}
|
2013-11-21 02:21:03 +04:00
|
|
|
|
2014-07-12 00:27:10 +04:00
|
|
|
gcc_toolchain("x86") {
|
2014-11-27 02:24:16 +03:00
|
|
|
cc = "${compiler_prefix}gcc"
|
|
|
|
cxx = "$compiler_prefix}g++"
|
2014-07-12 00:27:10 +04:00
|
|
|
|
2015-05-15 00:38:47 +03:00
|
|
|
readelf = "readelf"
|
|
|
|
nm = "nm"
|
2014-07-12 00:27:10 +04:00
|
|
|
ar = "ar"
|
|
|
|
ld = cxx
|
|
|
|
|
Roll GN binaries to #317120 for the cpu_arch changes
The newest version of GN replaces the 'cpu_arch' and 'os' variables with 'current_cpu', 'target_cpu', 'current_os', and 'target_os', and also replaces 'build_cpu' with 'host_cpu', and 'build_os' with 'host_os'.
The roll also picks up the change to add a new 'gn clean'
command, some absolute path handling fixes, a check_includes fix for action_foreach(), and some minor
internal fixes.
This patch also updates the build config files to accommodate the GN changes in a backwards-compatible manner, i.e., the configs now will set cpu_arch and os correctly in the right contexts. They will also allow the users to continue to set os= and cpu_arch= in an args file, so no user builds (or bots) will break.
Once all of the bots and all of the build files have been updated to refer to the new variables instead of the old ones, we can drop the backwards-compatible versions.
TBR=brettw@chromium.org
BUG=344767
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/936103003
Cr-Original-Commit-Position: refs/heads/master@{#317186}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7ee02bed35766535521c8e1f072b98cbf9eef53d
2015-02-20 03:16:17 +03:00
|
|
|
toolchain_cpu = "x86"
|
2014-07-12 00:27:10 +04:00
|
|
|
toolchain_os = "linux"
|
|
|
|
is_clang = false
|
|
|
|
}
|
|
|
|
|
|
|
|
gcc_toolchain("clang_x64") {
|
|
|
|
if (use_clang_type_profiler) {
|
|
|
|
prefix = rebase_path("//third_party/llvm-allocated-type/Linux_x64/bin",
|
|
|
|
root_build_dir)
|
2014-02-03 16:11:38 +04:00
|
|
|
} else {
|
2014-07-12 00:27:10 +04:00
|
|
|
prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin",
|
|
|
|
root_build_dir)
|
2014-02-03 16:11:38 +04:00
|
|
|
}
|
2014-11-27 02:24:16 +03:00
|
|
|
cc = "${compiler_prefix}$prefix/clang"
|
|
|
|
cxx = "${compiler_prefix}$prefix/clang++"
|
2014-07-12 00:27:10 +04:00
|
|
|
|
2015-05-15 00:38:47 +03:00
|
|
|
readelf = "readelf"
|
|
|
|
nm = "nm"
|
2014-07-12 00:27:10 +04:00
|
|
|
ar = "ar"
|
|
|
|
ld = cxx
|
|
|
|
|
Roll GN binaries to #317120 for the cpu_arch changes
The newest version of GN replaces the 'cpu_arch' and 'os' variables with 'current_cpu', 'target_cpu', 'current_os', and 'target_os', and also replaces 'build_cpu' with 'host_cpu', and 'build_os' with 'host_os'.
The roll also picks up the change to add a new 'gn clean'
command, some absolute path handling fixes, a check_includes fix for action_foreach(), and some minor
internal fixes.
This patch also updates the build config files to accommodate the GN changes in a backwards-compatible manner, i.e., the configs now will set cpu_arch and os correctly in the right contexts. They will also allow the users to continue to set os= and cpu_arch= in an args file, so no user builds (or bots) will break.
Once all of the bots and all of the build files have been updated to refer to the new variables instead of the old ones, we can drop the backwards-compatible versions.
TBR=brettw@chromium.org
BUG=344767
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/936103003
Cr-Original-Commit-Position: refs/heads/master@{#317186}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7ee02bed35766535521c8e1f072b98cbf9eef53d
2015-02-20 03:16:17 +03:00
|
|
|
toolchain_cpu = "x64"
|
2014-07-12 00:27:10 +04:00
|
|
|
toolchain_os = "linux"
|
|
|
|
is_clang = true
|
|
|
|
}
|
|
|
|
|
|
|
|
gcc_toolchain("x64") {
|
2014-11-27 02:24:16 +03:00
|
|
|
cc = "${compiler_prefix}gcc"
|
|
|
|
cxx = "${compiler_prefix}g++"
|
2014-02-03 16:11:38 +04:00
|
|
|
|
2015-05-15 00:38:47 +03:00
|
|
|
readelf = "readelf"
|
|
|
|
nm = "nm"
|
2013-12-28 10:49:32 +04:00
|
|
|
ar = "ar"
|
|
|
|
ld = cxx
|
|
|
|
|
Roll GN binaries to #317120 for the cpu_arch changes
The newest version of GN replaces the 'cpu_arch' and 'os' variables with 'current_cpu', 'target_cpu', 'current_os', and 'target_os', and also replaces 'build_cpu' with 'host_cpu', and 'build_os' with 'host_os'.
The roll also picks up the change to add a new 'gn clean'
command, some absolute path handling fixes, a check_includes fix for action_foreach(), and some minor
internal fixes.
This patch also updates the build config files to accommodate the GN changes in a backwards-compatible manner, i.e., the configs now will set cpu_arch and os correctly in the right contexts. They will also allow the users to continue to set os= and cpu_arch= in an args file, so no user builds (or bots) will break.
Once all of the bots and all of the build files have been updated to refer to the new variables instead of the old ones, we can drop the backwards-compatible versions.
TBR=brettw@chromium.org
BUG=344767
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/936103003
Cr-Original-Commit-Position: refs/heads/master@{#317186}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7ee02bed35766535521c8e1f072b98cbf9eef53d
2015-02-20 03:16:17 +03:00
|
|
|
toolchain_cpu = "x64"
|
2013-12-28 10:49:32 +04:00
|
|
|
toolchain_os = "linux"
|
2014-07-12 00:27:10 +04:00
|
|
|
is_clang = false
|
2013-11-21 02:21:03 +04:00
|
|
|
}
|
2014-01-16 10:34:56 +04:00
|
|
|
|
|
|
|
gcc_toolchain("mipsel") {
|
|
|
|
cc = "mipsel-linux-gnu-gcc"
|
|
|
|
cxx = "mipsel-linux-gnu-g++"
|
|
|
|
ar = "mipsel-linux-gnu-ar"
|
|
|
|
ld = cxx
|
2015-05-15 00:38:47 +03:00
|
|
|
readelf = "mipsel-linux-gnu-readelf"
|
|
|
|
nm = "mipsel-linux-gnu-nm"
|
2014-01-16 10:34:56 +04:00
|
|
|
|
Roll GN binaries to #317120 for the cpu_arch changes
The newest version of GN replaces the 'cpu_arch' and 'os' variables with 'current_cpu', 'target_cpu', 'current_os', and 'target_os', and also replaces 'build_cpu' with 'host_cpu', and 'build_os' with 'host_os'.
The roll also picks up the change to add a new 'gn clean'
command, some absolute path handling fixes, a check_includes fix for action_foreach(), and some minor
internal fixes.
This patch also updates the build config files to accommodate the GN changes in a backwards-compatible manner, i.e., the configs now will set cpu_arch and os correctly in the right contexts. They will also allow the users to continue to set os= and cpu_arch= in an args file, so no user builds (or bots) will break.
Once all of the bots and all of the build files have been updated to refer to the new variables instead of the old ones, we can drop the backwards-compatible versions.
TBR=brettw@chromium.org
BUG=344767
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/936103003
Cr-Original-Commit-Position: refs/heads/master@{#317186}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7ee02bed35766535521c8e1f072b98cbf9eef53d
2015-02-20 03:16:17 +03:00
|
|
|
toolchain_cpu = "mipsel"
|
2014-01-16 10:34:56 +04:00
|
|
|
toolchain_os = "linux"
|
2014-07-12 00:27:10 +04:00
|
|
|
is_clang = false
|
2014-01-16 10:34:56 +04:00
|
|
|
}
|