| OLD | NEW |
| (Empty) |
| 1 # Copyright (c) 2012 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 | |
| 9 # This file contains common settings for building WebRTC components. | |
| 10 | |
| 11 { | |
| 12 # Nesting is required in order to use variables for setting other variables. | |
| 13 'variables': { | |
| 14 'variables': { | |
| 15 'variables': { | |
| 16 'variables': { | |
| 17 # This will already be set to zero by supplement.gypi | |
| 18 'build_with_chromium%': 1, | |
| 19 | |
| 20 # Enable to use the Mozilla internal settings. | |
| 21 'build_with_mozilla%': 0, | |
| 22 }, | |
| 23 'build_with_chromium%': '<(build_with_chromium)', | |
| 24 'build_with_mozilla%': '<(build_with_mozilla%)', | |
| 25 'include_opus%': 1, | |
| 26 | |
| 27 'conditions': [ | |
| 28 # Include the iLBC audio codec? | |
| 29 ['build_with_chromium==1 or build_with_mozilla==1', { | |
| 30 'include_ilbc%': 0, | |
| 31 }, { | |
| 32 'include_ilbc%': 1, | |
| 33 }], | |
| 34 | |
| 35 ['build_with_chromium==1', { | |
| 36 'webrtc_root%': '<(DEPTH)/third_party/webrtc', | |
| 37 }, { | |
| 38 'webrtc_root%': '<(DEPTH)/webrtc', | |
| 39 }], | |
| 40 | |
| 41 # Controls whether we use libevent on posix platforms. | |
| 42 # TODO(phoglund): should arguably be controlled by platform #ifdefs | |
| 43 # in the code instead. | |
| 44 ['OS=="win" or OS=="mac" or OS=="ios"', { | |
| 45 'build_libevent%': 0, | |
| 46 'enable_libevent%': 0, | |
| 47 }, { | |
| 48 'build_libevent%': 1, | |
| 49 'enable_libevent%': 1, | |
| 50 }], | |
| 51 ], | |
| 52 }, | |
| 53 'build_with_chromium%': '<(build_with_chromium)', | |
| 54 'build_with_mozilla%': '<(build_with_mozilla)', | |
| 55 'build_libevent%': '<(build_libevent)', | |
| 56 'enable_libevent%': '<(enable_libevent)', | |
| 57 'webrtc_root%': '<(webrtc_root)', | |
| 58 'webrtc_vp8_dir%': '<(webrtc_root)/modules/video_coding/codecs/vp8', | |
| 59 'webrtc_vp9_dir%': '<(webrtc_root)/modules/video_coding/codecs/vp9', | |
| 60 'include_ilbc%': '<(include_ilbc)', | |
| 61 'include_opus%': '<(include_opus)', | |
| 62 'opus_dir%': '<(DEPTH)/third_party/opus', | |
| 63 }, | |
| 64 'build_with_chromium%': '<(build_with_chromium)', | |
| 65 'build_with_mozilla%': '<(build_with_mozilla)', | |
| 66 'build_libevent%': '<(build_libevent)', | |
| 67 'enable_libevent%': '<(enable_libevent)', | |
| 68 'webrtc_root%': '<(webrtc_root)', | |
| 69 'test_runner_path': '<(DEPTH)/webrtc/build/android/test_runner.py', | |
| 70 'webrtc_vp8_dir%': '<(webrtc_vp8_dir)', | |
| 71 'webrtc_vp9_dir%': '<(webrtc_vp9_dir)', | |
| 72 'include_ilbc%': '<(include_ilbc)', | |
| 73 'include_opus%': '<(include_opus)', | |
| 74 'rtc_relative_path%': 1, | |
| 75 'external_libraries%': '0', | |
| 76 'json_root%': '<(DEPTH)/third_party/jsoncpp/source/include/', | |
| 77 # openssl needs to be defined or gyp will complain. Is is only used when | |
| 78 # when providing external libraries so just use current directory as a | |
| 79 # placeholder. | |
| 80 'ssl_root%': '.', | |
| 81 | |
| 82 # The Chromium common.gypi we use treats all gyp files without | |
| 83 # chromium_code==1 as third party code. This disables many of the | |
| 84 # preferred warning settings. | |
| 85 # | |
| 86 # We can set this here to have WebRTC code treated as Chromium code. Our | |
| 87 # third party code will still have the reduced warning settings. | |
| 88 'chromium_code': 1, | |
| 89 | |
| 90 # Targets are by default not NaCl untrusted code. Use this variable exclude | |
| 91 # code that uses libraries that aren't available in the NaCl sandbox. | |
| 92 'nacl_untrusted_build%': 0, | |
| 93 | |
| 94 # Set to 1 to enable code coverage on Linux using the gcov library. | |
| 95 'coverage%': 0, | |
| 96 | |
| 97 # Set to "func", "block", "edge" for coverage generation. | |
| 98 # At unit test runtime set UBSAN_OPTIONS="coverage=1". | |
| 99 # It is recommend to set include_examples=0. | |
| 100 # Use llvm's sancov -html-report for human readable reports. | |
| 101 # See http://clang.llvm.org/docs/SanitizerCoverage.html . | |
| 102 'webrtc_sanitize_coverage%': "", | |
| 103 | |
| 104 # Remote bitrate estimator logging/plotting. | |
| 105 'enable_bwe_test_logging%': 0, | |
| 106 | |
| 107 # Selects fixed-point code where possible. | |
| 108 'prefer_fixed_point%': 0, | |
| 109 | |
| 110 # Enables the use of protocol buffers for debug recordings. | |
| 111 'enable_protobuf%': 1, | |
| 112 | |
| 113 # Disable the code for the intelligibility enhancer by default. | |
| 114 'enable_intelligibility_enhancer%': 0, | |
| 115 | |
| 116 # Selects whether debug dumps for the audio processing module | |
| 117 # should be generated. | |
| 118 'apm_debug_dump%': 0, | |
| 119 | |
| 120 # Disable these to not build components which can be externally provided. | |
| 121 'build_expat%': 1, | |
| 122 'build_json%': 1, | |
| 123 'build_libsrtp%': 1, | |
| 124 'build_libvpx%': 1, | |
| 125 'libvpx_build_vp9%': 1, | |
| 126 'build_libyuv%': 1, | |
| 127 'build_openmax_dl%': 1, | |
| 128 'build_opus%': 1, | |
| 129 'build_protobuf%': 1, | |
| 130 'build_ssl%': 1, | |
| 131 'build_usrsctp%': 1, | |
| 132 | |
| 133 # Disable by default | |
| 134 'have_dbus_glib%': 0, | |
| 135 | |
| 136 # Make it possible to provide custom locations for some libraries. | |
| 137 'libvpx_dir%': '<(DEPTH)/third_party/libvpx', | |
| 138 'libyuv_dir%': '<(DEPTH)/third_party/libyuv', | |
| 139 'opus_dir%': '<(opus_dir)', | |
| 140 | |
| 141 # Use Java based audio layer as default for Android. | |
| 142 # Change this setting to 1 to use Open SL audio instead. | |
| 143 # TODO(henrika): add support for Open SL ES. | |
| 144 'enable_android_opensl%': 0, | |
| 145 | |
| 146 # Link-Time Optimizations | |
| 147 # Executes code generation at link-time instead of compile-time | |
| 148 # https://gcc.gnu.org/wiki/LinkTimeOptimization | |
| 149 'use_lto%': 0, | |
| 150 | |
| 151 # Defer ssl perference to that specified through sslconfig.h instead of | |
| 152 # choosing openssl or nss directly. In practice, this can be used to | |
| 153 # enable schannel on windows. | |
| 154 'use_legacy_ssl_defaults%': 0, | |
| 155 | |
| 156 # Determines whether NEON code will be built. | |
| 157 'build_with_neon%': 0, | |
| 158 | |
| 159 # Disable this to skip building source requiring GTK. | |
| 160 'use_gtk%': 1, | |
| 161 | |
| 162 # Enable this to prevent extern symbols from being hidden on iOS builds. | |
| 163 # The chromium settings we inherit hide symbols by default on Release | |
| 164 # builds. We want our symbols to be visible when distributing WebRTC via | |
| 165 # static libraries to avoid linker warnings. | |
| 166 'ios_override_visibility%': 0, | |
| 167 | |
| 168 # Determines whether QUIC code will be built. | |
| 169 'use_quic%': 0, | |
| 170 | |
| 171 # By default, use normal platform audio support or dummy audio, but don't | |
| 172 # use file-based audio playout and record. | |
| 173 'use_dummy_audio_file_devices%': 0, | |
| 174 | |
| 175 'conditions': [ | |
| 176 # Enable this to build OpenH264 encoder/FFmpeg decoder. This is supported | |
| 177 # on all platforms except Android and iOS. Because FFmpeg can be built | |
| 178 # with/without H.264 support, |ffmpeg_branding| has to separately be set | |
| 179 # to a value that includes H.264, for example "Chrome". If FFmpeg is built | |
| 180 # without H.264, compilation succeeds but |H264DecoderImpl| fails to | |
| 181 # initialize. See also: |rtc_initialize_ffmpeg|. | |
| 182 # CHECK THE OPENH264, FFMPEG AND H.264 LICENSES/PATENTS BEFORE BUILDING. | |
| 183 # http://www.openh264.org, https://www.ffmpeg.org/ | |
| 184 ['proprietary_codecs==1 and OS!="android" and OS!="ios"', { | |
| 185 'rtc_use_h264%': 1, | |
| 186 }, { | |
| 187 'rtc_use_h264%': 0, | |
| 188 }], | |
| 189 | |
| 190 # FFmpeg must be initialized for |H264DecoderImpl| to work. This can be | |
| 191 # done by WebRTC during |H264DecoderImpl::InitDecode| or externally. | |
| 192 # FFmpeg must only be initialized once. Projects that initialize FFmpeg | |
| 193 # externally, such as Chromium, must turn this flag off so that WebRTC | |
| 194 # does not also initialize. | |
| 195 ['build_with_chromium==0', { | |
| 196 'rtc_initialize_ffmpeg%': 1, | |
| 197 }, { | |
| 198 'rtc_initialize_ffmpeg%': 0, | |
| 199 }], | |
| 200 | |
| 201 ['build_with_chromium==1', { | |
| 202 # Build sources requiring GTK. NOTICE: This is not present in Chrome OS | |
| 203 # build environments, even if available for Chromium builds. | |
| 204 'use_gtk%': 0, | |
| 205 # Exclude pulse audio on Chromium since its prerequisites don't require | |
| 206 # pulse audio. | |
| 207 'include_pulse_audio%': 0, | |
| 208 | |
| 209 # Exclude internal ADM since Chromium uses its own IO handling. | |
| 210 'include_internal_audio_device%': 0, | |
| 211 | |
| 212 # Remove tests for Chromium to avoid slowing down GYP generation. | |
| 213 'include_tests%': 0, | |
| 214 'restrict_webrtc_logging%': 1, | |
| 215 }, { # Settings for the standalone (not-in-Chromium) build. | |
| 216 'use_gtk%': 1, | |
| 217 # TODO(andrew): For now, disable the Chrome plugins, which causes a | |
| 218 # flood of chromium-style warnings. Investigate enabling them: | |
| 219 # http://code.google.com/p/webrtc/issues/detail?id=163 | |
| 220 'clang_use_chrome_plugins%': 0, | |
| 221 | |
| 222 'include_pulse_audio%': 1, | |
| 223 'include_internal_audio_device%': 1, | |
| 224 'include_tests%': 1, | |
| 225 'restrict_webrtc_logging%': 0, | |
| 226 }], | |
| 227 ['target_arch=="arm" or target_arch=="arm64" or target_arch=="mipsel"', { | |
| 228 'prefer_fixed_point%': 1, | |
| 229 }], | |
| 230 ['(target_arch=="arm" and arm_neon==1) or target_arch=="arm64"', { | |
| 231 'build_with_neon%': 1, | |
| 232 }], | |
| 233 ['OS!="ios" and (target_arch!="arm" or arm_version>=7) and target_arch!="m
ips64el"', { | |
| 234 'rtc_use_openmax_dl%': 1, | |
| 235 }, { | |
| 236 'rtc_use_openmax_dl%': 0, | |
| 237 }], | |
| 238 ], # conditions | |
| 239 }, | |
| 240 'target_defaults': { | |
| 241 'conditions': [ | |
| 242 ['restrict_webrtc_logging==1', { | |
| 243 'defines': ['WEBRTC_RESTRICT_LOGGING',], | |
| 244 }], | |
| 245 ['build_with_mozilla==1', { | |
| 246 'defines': [ | |
| 247 # Changes settings for Mozilla build. | |
| 248 'WEBRTC_MOZILLA_BUILD', | |
| 249 ], | |
| 250 }], | |
| 251 ['have_dbus_glib==1', { | |
| 252 'defines': [ | |
| 253 'HAVE_DBUS_GLIB', | |
| 254 ], | |
| 255 'cflags': [ | |
| 256 '<!@(pkg-config --cflags dbus-glib-1)', | |
| 257 ], | |
| 258 }], | |
| 259 ['rtc_relative_path==1', { | |
| 260 'defines': ['EXPAT_RELATIVE_PATH',], | |
| 261 }], | |
| 262 ['os_posix==1', { | |
| 263 'configurations': { | |
| 264 'Debug_Base': { | |
| 265 'defines': [ | |
| 266 # Chromium's build/common.gypi defines _DEBUG for all posix | |
| 267 # _except_ for ios & mac. The size of data types such as | |
| 268 # pthread_mutex_t varies between release and debug builds | |
| 269 # and is controlled via this flag. Since we now share code | |
| 270 # between base/base.gyp and build/common.gypi (this file), | |
| 271 # both gyp(i) files, must consistently set this flag uniformly | |
| 272 # or else we'll run in to hard-to-figure-out problems where | |
| 273 # one compilation unit uses code from another but expects | |
| 274 # differently laid out types. | |
| 275 # For WebRTC, we want it there as well, because ASSERT and | |
| 276 # friends trigger off of it. | |
| 277 '_DEBUG', | |
| 278 ], | |
| 279 }, | |
| 280 }, | |
| 281 }], | |
| 282 ['build_with_chromium==1', { | |
| 283 'defines': [ | |
| 284 # Changes settings for Chromium build. | |
| 285 # TODO(kjellander): Cleanup unused ones and move defines closer to the | |
| 286 # source when webrtc:4256 is completed. | |
| 287 'ENABLE_EXTERNAL_AUTH', | |
| 288 'FEATURE_ENABLE_SSL', | |
| 289 'HAVE_OPENSSL_SSL_H', | |
| 290 'HAVE_SCTP', | |
| 291 'HAVE_SRTP', | |
| 292 'HAVE_WEBRTC_VIDEO', | |
| 293 'HAVE_WEBRTC_VOICE', | |
| 294 'LOGGING_INSIDE_WEBRTC', | |
| 295 'NO_MAIN_THREAD_WRAPPING', | |
| 296 'NO_SOUND_SYSTEM', | |
| 297 'SSL_USE_OPENSSL', | |
| 298 'USE_WEBRTC_DEV_BRANCH', | |
| 299 'WEBRTC_CHROMIUM_BUILD', | |
| 300 ], | |
| 301 'include_dirs': [ | |
| 302 # Include the top-level directory when building in Chrome, so we can | |
| 303 # use full paths (e.g. headers inside testing/ or third_party/). | |
| 304 '<(DEPTH)', | |
| 305 # The overrides must be included before the WebRTC root as that's the | |
| 306 # mechanism for selecting the override headers in Chromium. | |
| 307 '../../webrtc_overrides', | |
| 308 # The WebRTC root is needed to allow includes in the WebRTC code base | |
| 309 # to be prefixed with webrtc/. | |
| 310 '../..', | |
| 311 ], | |
| 312 }, { | |
| 313 'includes': [ | |
| 314 # Rules for excluding e.g. foo_win.cc from the build on non-Windows. | |
| 315 'filename_rules.gypi', | |
| 316 ], | |
| 317 # Include the top-level dir so the WebRTC code can use full paths. | |
| 318 'include_dirs': [ | |
| 319 '../..', | |
| 320 ], | |
| 321 'conditions': [ | |
| 322 ['os_posix==1', { | |
| 323 # Enable more warnings: -Wextra is currently disabled in Chromium. | |
| 324 'cflags': [ | |
| 325 '-Wextra', | |
| 326 # Repeat some flags that get overridden by -Wextra. | |
| 327 '-Wno-unused-parameter', | |
| 328 '-Wno-missing-field-initializers', | |
| 329 '-Wno-strict-overflow', | |
| 330 ], | |
| 331 'cflags_cc': [ | |
| 332 '-Wnon-virtual-dtor', | |
| 333 # This is enabled for clang; enable for gcc as well. | |
| 334 '-Woverloaded-virtual', | |
| 335 ], | |
| 336 }], | |
| 337 ['clang==1', { | |
| 338 'cflags': [ | |
| 339 '-Wimplicit-fallthrough', | |
| 340 '-Wthread-safety', | |
| 341 '-Winconsistent-missing-override', | |
| 342 ], | |
| 343 }], | |
| 344 ], | |
| 345 }], | |
| 346 ['target_arch=="arm64"', { | |
| 347 'defines': [ | |
| 348 'WEBRTC_ARCH_ARM64', | |
| 349 'WEBRTC_HAS_NEON', | |
| 350 ], | |
| 351 }], | |
| 352 ['target_arch=="arm"', { | |
| 353 'defines': [ | |
| 354 'WEBRTC_ARCH_ARM', | |
| 355 ], | |
| 356 'conditions': [ | |
| 357 ['arm_version>=7', { | |
| 358 'defines': ['WEBRTC_ARCH_ARM_V7',], | |
| 359 'conditions': [ | |
| 360 ['arm_neon==1', { | |
| 361 'defines': ['WEBRTC_HAS_NEON',], | |
| 362 }], | |
| 363 ], | |
| 364 }], | |
| 365 ], | |
| 366 }], | |
| 367 ['target_arch=="mipsel" and mips_arch_variant!="r6"', { | |
| 368 'defines': [ | |
| 369 'MIPS32_LE', | |
| 370 ], | |
| 371 'conditions': [ | |
| 372 ['mips_float_abi=="hard"', { | |
| 373 'defines': [ | |
| 374 'MIPS_FPU_LE', | |
| 375 ], | |
| 376 }], | |
| 377 ['mips_arch_variant=="r2"', { | |
| 378 'defines': [ | |
| 379 'MIPS32_R2_LE', | |
| 380 ], | |
| 381 }], | |
| 382 ['mips_dsp_rev==1', { | |
| 383 'defines': [ | |
| 384 'MIPS_DSP_R1_LE', | |
| 385 ], | |
| 386 }], | |
| 387 ['mips_dsp_rev==2', { | |
| 388 'defines': [ | |
| 389 'MIPS_DSP_R1_LE', | |
| 390 'MIPS_DSP_R2_LE', | |
| 391 ], | |
| 392 }], | |
| 393 ], | |
| 394 }], | |
| 395 ['coverage==1 and OS=="linux"', { | |
| 396 'cflags': [ '-ftest-coverage', | |
| 397 '-fprofile-arcs' ], | |
| 398 'ldflags': [ '--coverage' ], | |
| 399 'link_settings': { 'libraries': [ '-lgcov' ] }, | |
| 400 }], | |
| 401 ['webrtc_sanitize_coverage!=""', { | |
| 402 'cflags': [ '-fsanitize-coverage=<(webrtc_sanitize_coverage)' ], | |
| 403 'ldflags': [ '-fsanitize-coverage=<(webrtc_sanitize_coverage)' ], | |
| 404 }], | |
| 405 ['webrtc_sanitize_coverage!="" and OS=="mac"', { | |
| 406 'xcode_settings': { | |
| 407 'OTHER_CFLAGS': [ | |
| 408 '-fsanitize-coverage=func', | |
| 409 ], | |
| 410 }, | |
| 411 }], | |
| 412 ['os_posix==1', { | |
| 413 # For access to standard POSIXish features, use WEBRTC_POSIX instead of | |
| 414 # a more specific macro. | |
| 415 'defines': [ | |
| 416 'WEBRTC_POSIX', | |
| 417 ], | |
| 418 }], | |
| 419 ['OS=="ios"', { | |
| 420 'defines': [ | |
| 421 'WEBRTC_MAC', | |
| 422 'WEBRTC_IOS', | |
| 423 ], | |
| 424 }], | |
| 425 ['OS=="ios" and ios_override_visibility==1', { | |
| 426 'xcode_settings': { | |
| 427 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'NO', | |
| 428 'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO', | |
| 429 } | |
| 430 }], | |
| 431 ['OS=="linux"', { | |
| 432 'defines': [ | |
| 433 'WEBRTC_LINUX', | |
| 434 ], | |
| 435 }], | |
| 436 ['OS=="mac"', { | |
| 437 'defines': [ | |
| 438 'WEBRTC_MAC', | |
| 439 ], | |
| 440 }], | |
| 441 ['OS=="win"', { | |
| 442 'defines': [ | |
| 443 'WEBRTC_WIN', | |
| 444 ], | |
| 445 # TODO(andrew): enable all warnings when possible. | |
| 446 # TODO(phoglund): get rid of 4373 supression when | |
| 447 # http://code.google.com/p/webrtc/issues/detail?id=261 is solved. | |
| 448 'msvs_disabled_warnings': [ | |
| 449 4373, # legacy warning for ignoring const / volatile in signatures. | |
| 450 4389, # Signed/unsigned mismatch. | |
| 451 ], | |
| 452 # Re-enable some warnings that Chromium disables. | |
| 453 'msvs_disabled_warnings!': [4189,], | |
| 454 }], | |
| 455 ['OS=="android"', { | |
| 456 'defines': [ | |
| 457 'WEBRTC_LINUX', | |
| 458 'WEBRTC_ANDROID', | |
| 459 ], | |
| 460 'conditions': [ | |
| 461 ['clang==0', { | |
| 462 # The Android NDK doesn't provide optimized versions of these | |
| 463 # functions. Ensure they are disabled for all compilers. | |
| 464 'cflags': [ | |
| 465 '-fno-builtin-cos', | |
| 466 '-fno-builtin-sin', | |
| 467 '-fno-builtin-cosf', | |
| 468 '-fno-builtin-sinf', | |
| 469 ], | |
| 470 }], | |
| 471 ], | |
| 472 }], | |
| 473 ['chromeos==1', { | |
| 474 'defines': [ | |
| 475 'CHROMEOS', | |
| 476 ], | |
| 477 }], | |
| 478 ['os_bsd==1', { | |
| 479 'defines': [ | |
| 480 'BSD', | |
| 481 ], | |
| 482 }], | |
| 483 ['OS=="openbsd"', { | |
| 484 'defines': [ | |
| 485 'OPENBSD', | |
| 486 ], | |
| 487 }], | |
| 488 ['OS=="freebsd"', { | |
| 489 'defines': [ | |
| 490 'FREEBSD', | |
| 491 ], | |
| 492 }], | |
| 493 ['include_internal_audio_device==1', { | |
| 494 'defines': [ | |
| 495 'WEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE', | |
| 496 ], | |
| 497 }], | |
| 498 ['libvpx_build_vp9==0', { | |
| 499 'defines': [ | |
| 500 'RTC_DISABLE_VP9', | |
| 501 ], | |
| 502 }], | |
| 503 ], # conditions | |
| 504 'direct_dependent_settings': { | |
| 505 'conditions': [ | |
| 506 ['build_with_mozilla==1', { | |
| 507 'defines': [ | |
| 508 # Changes settings for Mozilla build. | |
| 509 'WEBRTC_MOZILLA_BUILD', | |
| 510 ], | |
| 511 }], | |
| 512 ['build_with_chromium==1', { | |
| 513 'defines': [ | |
| 514 # Changes settings for Chromium build. | |
| 515 # TODO(kjellander): Cleanup unused ones and move defines closer to | |
| 516 # the source when webrtc:4256 is completed. | |
| 517 'FEATURE_ENABLE_SSL', | |
| 518 'FEATURE_ENABLE_VOICEMAIL', | |
| 519 'EXPAT_RELATIVE_PATH', | |
| 520 'GTEST_RELATIVE_PATH', | |
| 521 'NO_MAIN_THREAD_WRAPPING', | |
| 522 'NO_SOUND_SYSTEM', | |
| 523 'WEBRTC_CHROMIUM_BUILD', | |
| 524 ], | |
| 525 'include_dirs': [ | |
| 526 # The overrides must be included first as that is the mechanism for | |
| 527 # selecting the override headers in Chromium. | |
| 528 '../../webrtc_overrides', | |
| 529 '../..', | |
| 530 ], | |
| 531 }, { | |
| 532 'include_dirs': [ | |
| 533 '../..', | |
| 534 ], | |
| 535 }], | |
| 536 ['OS=="mac"', { | |
| 537 'defines': [ | |
| 538 'WEBRTC_MAC', | |
| 539 ], | |
| 540 }], | |
| 541 ['OS=="ios"', { | |
| 542 'defines': [ | |
| 543 'WEBRTC_MAC', | |
| 544 'WEBRTC_IOS', | |
| 545 ], | |
| 546 }], | |
| 547 ['OS=="win"', { | |
| 548 'defines': [ | |
| 549 'WEBRTC_WIN', | |
| 550 '_CRT_SECURE_NO_WARNINGS', # Suppress warnings about _vsnprinf | |
| 551 ], | |
| 552 }], | |
| 553 ['OS=="linux"', { | |
| 554 'defines': [ | |
| 555 'WEBRTC_LINUX', | |
| 556 ], | |
| 557 }], | |
| 558 ['OS=="android"', { | |
| 559 'defines': [ | |
| 560 'WEBRTC_LINUX', | |
| 561 'WEBRTC_ANDROID', | |
| 562 ], | |
| 563 }], | |
| 564 ['os_posix==1', { | |
| 565 # For access to standard POSIXish features, use WEBRTC_POSIX instead | |
| 566 # of a more specific macro. | |
| 567 'defines': [ | |
| 568 'WEBRTC_POSIX', | |
| 569 ], | |
| 570 }], | |
| 571 ['chromeos==1', { | |
| 572 'defines': [ | |
| 573 'CHROMEOS', | |
| 574 ], | |
| 575 }], | |
| 576 ['os_bsd==1', { | |
| 577 'defines': [ | |
| 578 'BSD', | |
| 579 ], | |
| 580 }], | |
| 581 ['OS=="openbsd"', { | |
| 582 'defines': [ | |
| 583 'OPENBSD', | |
| 584 ], | |
| 585 }], | |
| 586 ['OS=="freebsd"', { | |
| 587 'defines': [ | |
| 588 'FREEBSD', | |
| 589 ], | |
| 590 }], | |
| 591 ], | |
| 592 }, | |
| 593 }, # target_defaults | |
| 594 } | |
| OLD | NEW |