| Index: build/toolchain/nacl_toolchain.gni
|
| diff --git a/build/toolchain/nacl_toolchain.gni b/build/toolchain/nacl_toolchain.gni
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..8c0c36db0d3b6e8e9ef9dc4fea88f172e712badd
|
| --- /dev/null
|
| +++ b/build/toolchain/nacl_toolchain.gni
|
| @@ -0,0 +1,52 @@
|
| +# Copyright (c) 2014 The Native Client 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/toolchain/gcc_toolchain.gni")
|
| +
|
| +# This template defines a NaCl toolchain.
|
| +#
|
| +# It requires the following variables specifying the executables to run:
|
| +# - cc
|
| +# - cxx
|
| +# - ar
|
| +# - ld
|
| +# and the following which is used in the toolchain_args
|
| +# - toolchain_cpu (What "current_cpu" should be set to when invoking a
|
| +# build using this toolchain.)
|
| +
|
| +template("nacl_toolchain") {
|
| + assert(defined(invoker.cc), "nacl_toolchain() must specify a \"cc\" value")
|
| + assert(defined(invoker.cxx), "nacl_toolchain() must specify a \"cxx\" value")
|
| + assert(defined(invoker.ar), "nacl_toolchain() must specify a \"ar\" value")
|
| + assert(defined(invoker.ld), "nacl_toolchain() must specify a \"ld\" value")
|
| + assert(defined(invoker.toolchain_cpu),
|
| + "nacl_toolchain() must specify a \"toolchain_cpu\"")
|
| + gcc_toolchain(target_name) {
|
| + toolchain_os = "nacl"
|
| +
|
| + if (defined(invoker.executable_extension)) {
|
| + executable_extension = invoker.executable_extension
|
| + } else {
|
| + executable_extension = ".nexe"
|
| + }
|
| +
|
| + forward_variables_from(invoker,
|
| + [
|
| + "ar",
|
| + "cc",
|
| + "cxx",
|
| + "deps",
|
| + "is_clang",
|
| + "ld",
|
| + "link_outputs",
|
| + "postlink",
|
| + "toolchain_cpu",
|
| + ])
|
| +
|
| + # We do not suport component builds or sanitizers with the NaCl toolchains.
|
| + is_component_build = false
|
| +
|
| + rebuild_define = "NACL_TC_REV=" + invoker.toolchain_revision
|
| + }
|
| +}
|
|
|