Home | History | Annotate | Download | only in nacl
      1 # 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 
      5 import("//build/config/features.gni")
      6 
      7 declare_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 
     14 is_nacl_irt = false
     15 is_nacl_nonsfi = false
     16 
     17 if (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 }
     53