| # Copyright 2015 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. |
| |
| declare_args() { |
| # Native Client supports both Newlib and Glibc C libraries where Newlib |
| # is assumed to be the default one; use this to determine whether Glibc |
| # is being used instead. |
| is_nacl_glibc = false |
| } |
| |
| is_nacl_irt = false |
| is_nacl_nonsfi = false |
| |
| nacl_toolchain_dir = "//native_client/toolchain/${host_os}_x86" |
| |
| if (is_nacl_glibc) { |
| if (current_cpu == "x86" || current_cpu == "x64") { |
| nacl_toolchain_package = "nacl_x86_glibc" |
| } else if (current_cpu == "arm") { |
| nacl_toolchain_package = "nacl_arm_glibc" |
| } |
| } else { |
| nacl_toolchain_package = "pnacl_newlib" |
| } |
| |
| if (current_cpu == "pnacl") { |
| _nacl_tuple = "pnacl" |
| } else if (current_cpu == "x86" || current_cpu == "x64") { |
| _nacl_tuple = "x86_64-nacl" |
| } else if (current_cpu == "arm") { |
| _nacl_tuple = "arm-nacl" |
| } else if (current_cpu == "mipsel") { |
| _nacl_tuple = "mipsel-nacl" |
| } else { |
| # In order to allow this file to be included unconditionally |
| # from build files that can't depend on //components/nacl/features.gni |
| # we provide a dummy value that should be harmless if nacl isn't needed. |
| # If nacl *is* needed this will result in a real error, indicating that |
| # people need to set the toolchain path correctly. |
| _nacl_tuple = "unknown" |
| } |
| |
| nacl_toolchain_bindir = "${nacl_toolchain_dir}/${nacl_toolchain_package}/bin" |
| nacl_toolchain_tooldir = |
| "${nacl_toolchain_dir}/${nacl_toolchain_package}/${_nacl_tuple}" |
| nacl_toolprefix = "${nacl_toolchain_bindir}/${_nacl_tuple}-" |
| |
| nacl_irt_toolchain = "//build/toolchain/nacl:irt_" + target_cpu |
| is_nacl_irt = current_toolchain == nacl_irt_toolchain |
| |
| # Non-SFI mode is a lightweight sandbox used by Chrome OS for running ARC |
| # applications. |
| nacl_nonsfi_toolchain = "//build/toolchain/nacl:newlib_pnacl_nonsfi" |
| is_nacl_nonsfi = current_toolchain == nacl_nonsfi_toolchain |