| 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/features.gni") | 10 import("//build/config/features.gni") |
| 11 import("//build/config/mips.gni") | 11 import("//build/config/mips.gni") |
| 12 import("//build_overrides/webrtc.gni") | 12 import("//build_overrides/webrtc.gni") |
| 13 | 13 |
| 14 declare_args() { | 14 declare_args() { |
| 15 # Disable this to avoid building the Opus audio codec. | 15 # Disable this to avoid building the Opus audio codec. |
| 16 rtc_include_opus = true | 16 rtc_include_opus = true |
| 17 | 17 |
| 18 # Disable to use absolute header paths for some libraries. | |
| 19 rtc_relative_path = true | |
| 20 | |
| 21 # Used to specify an external Jsoncpp include path when not compiling the | 18 # Used to specify an external Jsoncpp include path when not compiling the |
| 22 # library that comes with WebRTC (i.e. rtc_build_json == 0). | 19 # library that comes with WebRTC (i.e. rtc_build_json == 0). |
| 23 rtc_jsoncpp_root = "//third_party/jsoncpp/source/include" | 20 rtc_jsoncpp_root = "//third_party/jsoncpp/source/include" |
| 24 | 21 |
| 25 # Used to specify an external OpenSSL include path when not compiling the | 22 # Used to specify an external OpenSSL include path when not compiling the |
| 26 # library that comes with WebRTC (i.e. rtc_build_ssl == 0). | 23 # library that comes with WebRTC (i.e. rtc_build_ssl == 0). |
| 27 rtc_ssl_root = "" | 24 rtc_ssl_root = "" |
| 28 | 25 |
| 29 # Selects fixed-point code where possible. | 26 # Selects fixed-point code where possible. |
| 30 rtc_prefer_fixed_point = false | 27 rtc_prefer_fixed_point = false |
| 31 | 28 |
| 32 # Enable data logging. Produces text files with data logged within engines | 29 # Enable data logging. Produces text files with data logged within engines |
| 33 # which can be easily parsed for offline processing. | 30 # which can be easily parsed for offline processing. |
| 34 rtc_enable_data_logging = false | 31 rtc_enable_data_logging = false |
| 35 | 32 |
| 36 # Enables the use of protocol buffers for debug recordings. | 33 # Enables the use of protocol buffers for debug recordings. |
| 37 rtc_enable_protobuf = true | 34 rtc_enable_protobuf = true |
| 38 | 35 |
| 39 # Disable these to not build components which can be externally provided. | 36 # Disable these to not build components which can be externally provided. |
| 40 rtc_build_expat = true | 37 rtc_build_expat = true |
| 41 rtc_build_json = true | 38 rtc_build_json = true |
| 42 rtc_build_libjpeg = true | 39 rtc_build_libjpeg = true |
| 43 rtc_build_libsrtp = true | |
| 44 rtc_build_libvpx = true | 40 rtc_build_libvpx = true |
| 45 rtc_build_libyuv = true | 41 rtc_build_libyuv = true |
| 46 rtc_build_openmax_dl = true | 42 rtc_build_openmax_dl = true |
| 47 rtc_build_opus = true | 43 rtc_build_opus = true |
| 48 rtc_build_ssl = true | 44 rtc_build_ssl = true |
| 49 rtc_build_usrsctp = true | |
| 50 | 45 |
| 51 # Disable by default. | 46 # Disable by default. |
| 52 rtc_have_dbus_glib = false | 47 rtc_have_dbus_glib = false |
| 53 | 48 |
| 54 # Enable to use the Mozilla internal settings. | 49 # Enable to use the Mozilla internal settings. |
| 55 build_with_mozilla = false | 50 build_with_mozilla = false |
| 56 | 51 |
| 57 rtc_enable_android_opensl = false | 52 rtc_enable_android_opensl = false |
| 58 | 53 |
| 59 # Link-Time Optimizations. | 54 # Link-Time Optimizations. |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 # Enable this to build OpenH264 encoder/FFmpeg decoder. This is supported on | 88 # Enable this to build OpenH264 encoder/FFmpeg decoder. This is supported on |
| 94 # all platforms except Android and iOS. Because FFmpeg can be built | 89 # all platforms except Android and iOS. Because FFmpeg can be built |
| 95 # with/without H.264 support, |ffmpeg_branding| has to separately be set to a | 90 # with/without H.264 support, |ffmpeg_branding| has to separately be set to a |
| 96 # value that includes H.264, for example "Chrome". If FFmpeg is built without | 91 # value that includes H.264, for example "Chrome". If FFmpeg is built without |
| 97 # H.264, compilation succeeds but |H264DecoderImpl| fails to initialize. See | 92 # H.264, compilation succeeds but |H264DecoderImpl| fails to initialize. See |
| 98 # also: |rtc_initialize_ffmpeg|. | 93 # also: |rtc_initialize_ffmpeg|. |
| 99 # CHECK THE OPENH264, FFMPEG AND H.264 LICENSES/PATENTS BEFORE BUILDING. | 94 # CHECK THE OPENH264, FFMPEG AND H.264 LICENSES/PATENTS BEFORE BUILDING. |
| 100 # http://www.openh264.org, https://www.ffmpeg.org/ | 95 # http://www.openh264.org, https://www.ffmpeg.org/ |
| 101 rtc_use_h264 = proprietary_codecs && !is_android && !is_ios | 96 rtc_use_h264 = proprietary_codecs && !is_android && !is_ios |
| 102 | 97 |
| 103 # Determines whether QUIC code will be built. | |
| 104 rtc_use_quic = false | |
| 105 | |
| 106 # FFmpeg must be initialized for |H264DecoderImpl| to work. This can be done | 98 # FFmpeg must be initialized for |H264DecoderImpl| to work. This can be done |
| 107 # by WebRTC during |H264DecoderImpl::InitDecode| or externally. FFmpeg must | 99 # by WebRTC during |H264DecoderImpl::InitDecode| or externally. FFmpeg must |
| 108 # only be initialized once. Projects that initialize FFmpeg externally, such | 100 # only be initialized once. Projects that initialize FFmpeg externally, such |
| 109 # as Chromium, must turn this flag off so that WebRTC does not also | 101 # as Chromium, must turn this flag off so that WebRTC does not also |
| 110 # initialize. | 102 # initialize. |
| 111 rtc_initialize_ffmpeg = !build_with_chromium | 103 rtc_initialize_ffmpeg = !build_with_chromium |
| 112 | |
| 113 # Build sources requiring GTK. NOTICE: This is not present in Chrome OS | |
| 114 # build environments, even if available for Chromium builds. | |
| 115 rtc_use_gtk = !build_with_chromium | |
| 116 } | 104 } |
| 117 | 105 |
| 118 # A second declare_args block, so that declarations within it can | 106 # A second declare_args block, so that declarations within it can |
| 119 # depend on the possibly overridden variables in the first | 107 # depend on the possibly overridden variables in the first |
| 120 # declare_args block. | 108 # declare_args block. |
| 121 declare_args() { | 109 declare_args() { |
| 122 # Include the iLBC audio codec? | 110 # Include the iLBC audio codec? |
| 123 rtc_include_ilbc = !(build_with_chromium || build_with_mozilla) | 111 rtc_include_ilbc = !(build_with_chromium || build_with_mozilla) |
| 124 } | 112 } |
| 125 | 113 |
| 126 # Make it possible to provide custom locations for some libraries (move these | 114 # Make it possible to provide custom locations for some libraries (move these |
| 127 # up into declare_args should we need to actually use them for the GN build). | 115 # up into declare_args should we need to actually use them for the GN build). |
| 128 rtc_libvpx_dir = "//third_party/libvpx" | 116 rtc_libvpx_dir = "//third_party/libvpx" |
| 129 rtc_libyuv_dir = "//third_party/libyuv" | 117 rtc_libyuv_dir = "//third_party/libyuv" |
| 130 rtc_opus_dir = "//third_party/opus" | 118 rtc_opus_dir = "//third_party/opus" |
| OLD | NEW |