blob: ad8936ed9859e01b39bddb811e6583d22488d9c6 [file] [log] [blame]
Ben Murdoch097c5b22016-05-18 11:27:45 +01001# Copyright 2015 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5import("//build/config/features.gni")
6
7declare_args() {
8 # Native Client supports both Newlib and Glibc C libraries where Newlib
9 # is assumed to be the default one; use this to determine whether Glibc
10 # is being used instead.
11 is_nacl_glibc = false
12}
13
14is_nacl_irt = false
15is_nacl_nonsfi = false
16
17if (enable_nacl) {
18 nacl_toolchain_dir = "//native_client/toolchain/${host_os}_x86"
19
20 if (is_nacl_glibc) {
21 if (current_cpu == "x86" || current_cpu == "x64") {
22 nacl_toolchain_package = "nacl_x86_glibc"
23 } else if (current_cpu == "arm") {
24 nacl_toolchain_package = "nacl_arm_glibc"
25 }
26 } else {
27 nacl_toolchain_package = "pnacl_newlib"
28 }
29
30 if (current_cpu == "pnacl") {
31 _nacl_tuple = "pnacl"
32 } else if (current_cpu == "x86" || current_cpu == "x64") {
33 _nacl_tuple = "x86_64-nacl"
34 } else if (current_cpu == "arm") {
35 _nacl_tuple = "arm-nacl"
36 } else if (current_cpu == "mipsel") {
37 _nacl_tuple = "mipsel-nacl"
38 }
39
40 nacl_toolchain_bindir = "${nacl_toolchain_dir}/${nacl_toolchain_package}/bin"
41 nacl_toolchain_tooldir =
42 "${nacl_toolchain_dir}/${nacl_toolchain_package}/${_nacl_tuple}"
43 nacl_toolprefix = "${nacl_toolchain_bindir}/${_nacl_tuple}-"
44
45 nacl_irt_toolchain = "//build/toolchain/nacl:irt_" + target_cpu
46 is_nacl_irt = current_toolchain == nacl_irt_toolchain
47
48 # Non-SFI mode is a lightweight sandbox used by Chrome OS for running ARC
49 # applications.
50 nacl_nonsfi_toolchain = "//build/toolchain/nacl:newlib_pnacl_nonsfi"
51 is_nacl_nonsfi = current_toolchain == nacl_nonsfi_toolchain
52}