xref: /fuchsia/.gn (revision 89120bb9)
16aacd6c0SJames Robinson# Copyright 2016 The Fuchsia Authors. All rights reserved.
26aacd6c0SJames Robinson# Use of this source code is governed by a BSD-style license that can be
36aacd6c0SJames Robinson# found in the LICENSE file.
46aacd6c0SJames Robinson
5cc3f51f7SNathan Mulcahey# This file directs GN to all the other key files.
674842c17SRoland McGrath
76aacd6c0SJames Robinson# The location of the build configuration file.
86aacd6c0SJames Robinsonbuildconfig = "//build/config/BUILDCONFIG.gn"
96aacd6c0SJames Robinson
10e48851c5SPetr Hosek# The secondary source root is a parallel directory tree where
11e48851c5SPetr Hosek# GN build files are placed when they can not be placed directly
12e48851c5SPetr Hosek# in the source tree, e.g. for third party source trees.
13e48851c5SPetr Hoseksecondary_source = "//build/secondary/"
14e48851c5SPetr Hosek
156fcbe310SPetr Hosek# The executable used to execute scripts in action and exec_script.
16*89120bb9SJames Robinson# This is often an interpreter for projects that use a primary scripting
17*89120bb9SJames Robinson# language. In this project, we use several different kinds of programs
18*89120bb9SJames Robinson# including scripts in different languages and native binaries. An empty
19*89120bb9SJames Robinson# script_executable string tells GN to directly run the "script".
20*89120bb9SJames Robinsonscript_executable = ""
21e52f0c74SPetr Hosek
228ae11552SPetr Hosek# Require Ninja 1.10.0 to support multiple outputs from a rule with a depfile.
238ae11552SPetr Hosekninja_required_version = "1.10.0"
24f36f156fSPetr Hosek
256275db2aSJames Robinson# Enable checking for all source code we control.
26efc05d9fSShai Barackno_check_targets = [ "//third_party/*" ]
27efc05d9fSShai Barack
28efc05d9fSShai Barack# Use of `exec_script()` is discouraged for performance reasons.
29efc05d9fSShai Barack# https://fuchsia.dev/fuchsia-src/concepts/build_system/best_practices#exec-script
30efc05d9fSShai Barackexec_script_whitelist = [
31efc05d9fSShai Barack  "//build/config/clang/clang.gni",
32efc05d9fSShai Barack  "//build/config/mac/mac_sdk.gni",
33efc05d9fSShai Barack  "//build/config/sanitizers/BUILD.gn",
34efc05d9fSShai Barack  "//build/toolchain/concurrent_jobs.gni",
35efc05d9fSShai Barack  "//build/toolchain/zircon/zircon_toolchain.gni",
36e11a9890SDavid 'Digit' Turner  "//zircon/kernel/arch/x86/phys/BUILD.gn",
37b67929bcSP.Y. Laligand]
38ae32f02cSJames Robinson
39ae32f02cSJames Robinsoncheck_system_includes = true
40