blob: 5e3c6ca9aff260bc8fb5d763a77a61de24e27d4d [file] [log] [blame]
Henrik Kjellander41177752015-04-09 15:36:28 +02001# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
kjellanderad6f6462016-11-29 06:35:14 -08009import("//build/dotfile_settings.gni")
10
Henrik Kjellander41177752015-04-09 15:36:28 +020011# The location of the build configuration file.
12buildconfig = "//build/config/BUILDCONFIG.gn"
13
14# The secondary source root is a parallel directory tree where
15# GN build files are placed when they can not be placed directly
16# in the source tree, e.g. for third party source trees.
17secondary_source = "//build/secondary/"
18
19# These are the targets to check headers for by default. The files in targets
20# matching these patterns (see "gn help label_pattern" for format) will have
21# their includes checked for proper dependencies when you run either
22# "gn check" or "gn gen --check".
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020023check_targets = [
Patrik Höglund3e113432017-12-15 14:40:10 +010024 ":webrtc_common",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020025 "//api/*",
26 "//audio/*",
27 "//backup/*",
28 "//call/*",
29 "//common_audio/*",
30 "//common_video/*",
31 "//examples/*",
32 "//logging/*",
33 "//media/*",
34 "//modules/*",
35 "//ortc/*",
36 "//p2p/*",
37 "//pc/*",
38 "//rtc_base/*",
39 "//rtc_tools/*",
40 "//sdk/*",
41 "//stats/*",
42 "//system_wrappers/*",
43 "//test/*",
44 "//video/*",
45 "//voice_engine/*",
Mirko Bonadei65432062017-12-11 09:32:13 +010046 "//third_party/libyuv/*",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020047]
Henrik Kjellander41177752015-04-09 15:36:28 +020048
49# These are the list of GN files that run exec_script. This whitelist exists
50# to force additional review for new uses of exec_script, which is strongly
51# discouraged except for gypi_to_gn calls.
oprypin370c6d52017-09-11 11:38:48 -070052exec_script_whitelist = build_dotfile_settings.exec_script_whitelist +
53 [ "//build_overrides/build.gni" ]
mbonadei96606272017-03-03 19:41:59 -080054
55default_args = {
56 # Webrtc does not support component builds because we are not using the
57 # template "component" but we rely directly on "rtc_static_library" and
58 # "rtc_shared_library". This means that we cannot use the chromium default
59 # value for this argument.
60 # This also means that the user can override this value using --args or
61 # the args.gn file but this setting will be ignored because we don't support
62 # component builds.
63 is_component_build = false
erikchen0ff78002017-07-13 09:03:13 -070064
kjellanderec2c93e2017-09-08 10:52:17 -070065 mac_sdk_min = "10.12"
oprypin28104eb2017-08-02 01:26:18 -070066
Oleh Prypinceec4d02017-11-28 18:47:21 +010067 # http://bugs.webrtc.org/8570
68 ios_deployment_target = "9.0"
69
oprypin28104eb2017-08-02 01:26:18 -070070 # WebRTC does not want to switch to C++14 yet.
71 use_cxx11 = true
charujain474acce2017-08-25 06:21:52 -070072
73 # WebRTC relies on Chromium's Android test infrastructure.
74 use_cxx11_on_android = false
oprypinfbbba3f2017-09-25 08:34:41 -070075
76 # WebRTC does not provide the gflags dependency. Because libyuv uses it only
77 # for unittests, it can be disabled (see third_party/libyuv/BUILD.gn)
78 libyuv_use_gflags = false
mbonadei96606272017-03-03 19:41:59 -080079}