OLD | NEW |
1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | 1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. |
2 # | 2 # |
3 # Use of this source code is governed by a BSD-style license | 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 | 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 | 5 # tree. An additional intellectual property rights grant can be found |
6 # in the file PATENTS. All contributing project authors may | 6 # in the file PATENTS. All contributing project authors may |
7 # be found in the AUTHORS file in the root of the source tree. | 7 # be found in the AUTHORS file in the root of the source tree. |
8 | 8 |
9 import("//build/config/arm.gni") | 9 import("//build/config/arm.gni") |
10 import("//build/config/mips.gni") | 10 import("//build/config/mips.gni") |
| 11 import("//build_overrides/webrtc.gni") |
11 | 12 |
12 declare_args() { | 13 declare_args() { |
13 # Assume Chromium build for now, since that's the priority case for getting GN | |
14 # up and running with WebRTC. | |
15 build_with_chromium = true | |
16 build_with_libjingle = true | 14 build_with_libjingle = true |
17 | 15 |
18 # Disable this to avoid building the Opus audio codec. | 16 # Disable this to avoid building the Opus audio codec. |
19 rtc_include_opus = true | 17 rtc_include_opus = true |
20 | 18 |
21 # Used to specify an external Jsoncpp include path when not compiling the | 19 # Used to specify an external Jsoncpp include path when not compiling the |
22 # library that comes with WebRTC (i.e. rtc_build_json == 0). | 20 # library that comes with WebRTC (i.e. rtc_build_json == 0). |
23 rtc_jsoncpp_root = "//third_party/jsoncpp/source/include" | 21 rtc_jsoncpp_root = "//third_party/jsoncpp/source/include" |
24 | 22 |
25 # Used to specify an external OpenSSL include path when not compiling the | 23 # Used to specify an external OpenSSL include path when not compiling the |
(...skipping 28 matching lines...) Expand all Loading... |
54 # Enable to use the Mozilla internal settings. | 52 # Enable to use the Mozilla internal settings. |
55 build_with_mozilla = false | 53 build_with_mozilla = false |
56 | 54 |
57 rtc_enable_android_opensl = false | 55 rtc_enable_android_opensl = false |
58 | 56 |
59 # Link-Time Optimizations. | 57 # Link-Time Optimizations. |
60 # Executes code generation at link-time instead of compile-time. | 58 # Executes code generation at link-time instead of compile-time. |
61 # https://gcc.gnu.org/wiki/LinkTimeOptimization | 59 # https://gcc.gnu.org/wiki/LinkTimeOptimization |
62 rtc_use_lto = false | 60 rtc_use_lto = false |
63 | 61 |
64 if (build_with_chromium) { | |
65 # Exclude pulse audio on Chromium since its prerequisites don't require | |
66 # pulse audio. | |
67 rtc_include_pulse_audio = false | |
68 | |
69 # Exclude internal ADM since Chromium uses its own IO handling. | |
70 rtc_include_internal_audio_device = false | |
71 } else { | |
72 # Settings for the standalone (not-in-Chromium) build. | |
73 | |
74 # TODO(andrew): For now, disable the Chrome plugins, which causes a | |
75 # flood of chromium-style warnings. Investigate enabling them: | |
76 # http://code.google.com/p/webrtc/issues/detail?id=163 | |
77 clang_use_chrome_plugins = false | |
78 | |
79 rtc_include_pulse_audio = true | |
80 rtc_include_internal_audio_device = true | |
81 } | |
82 | |
83 if (build_with_libjingle) { | 62 if (build_with_libjingle) { |
84 rtc_include_tests = false | 63 rtc_include_tests = false |
85 rtc_restrict_logging = true | 64 rtc_restrict_logging = true |
86 } else { | 65 } else { |
87 rtc_include_tests = true | 66 rtc_include_tests = true |
88 rtc_restrict_logging = false | 67 rtc_restrict_logging = false |
89 } | 68 } |
90 | 69 |
91 if (is_ios) { | 70 if (is_ios) { |
92 rtc_build_libjpeg = false | 71 rtc_build_libjpeg = false |
(...skipping 20 matching lines...) Expand all Loading... |
113 # Enable this to use HW H.264 encoder/decoder on iOS PeerConnections. | 92 # Enable this to use HW H.264 encoder/decoder on iOS PeerConnections. |
114 # Enabling this may break interop with Android clients that support H264. | 93 # Enabling this may break interop with Android clients that support H264. |
115 rtc_use_objc_h264 = false | 94 rtc_use_objc_h264 = false |
116 } | 95 } |
117 | 96 |
118 # Make it possible to provide custom locations for some libraries (move these | 97 # Make it possible to provide custom locations for some libraries (move these |
119 # up into declare_args should we need to actually use them for the GN build). | 98 # up into declare_args should we need to actually use them for the GN build). |
120 rtc_libvpx_dir = "//third_party/libvpx_new" | 99 rtc_libvpx_dir = "//third_party/libvpx_new" |
121 rtc_libyuv_dir = "//third_party/libyuv" | 100 rtc_libyuv_dir = "//third_party/libyuv" |
122 rtc_opus_dir = "//third_party/opus" | 101 rtc_opus_dir = "//third_party/opus" |
OLD | NEW |