Changeset 214288 in webkit


Ignore:
Timestamp:
Mar 22, 2017 5:57:27 PM (7 years ago)
Author:
achristensen@apple.com
Message:

Fix warnings in libwebrtc
https://bugs.webkit.org/show_bug.cgi?id=169973

Reviewed by Geoffrey Garen.

  • Configurations/boringssl.xcconfig:
  • Configurations/libsrtp.xcconfig:
  • Configurations/libwebrtc.xcconfig:
  • Configurations/libwebrtcpcrtc.xcconfig:
  • Configurations/libyuv.xcconfig:
  • Configurations/opus.xcconfig:
  • Configurations/usrsctp.xcconfig:

Build with more warnings.
opus still needs some incompatible pointer warnings disabled because it converts
const opus_int16 * to const opus_val16 * and opus_int32 * to opus_val32 *
and that's ok because its a codec and that's what codecs do.

  • Source/webrtc/base/logging.cc:
  • Source/webrtc/base/logging.h:
  • Source/webrtc/base/neverdestroyed.h: Added.

(webrtc::NeverDestroyed::NeverDestroyed):
(webrtc::NeverDestroyed::operator T&):
(webrtc::NeverDestroyed::get):
(webrtc::NeverDestroyed::operator&):
(webrtc::NeverDestroyed::asPtr):
Added webrtc::NeverDestroyed which may or may not be based on WTF::NeverDestroyed.
This allows us to avoid exit time destructors, which would slow down program termination for no reason.

  • Source/webrtc/base/virtualsocketserver.cc:
  • Source/webrtc/modules/audio_coding/codecs/builtin_audio_decoder_factory_internal.cc:

Adopt NeverDestroyed in function scope so we don't have global constructors or destructors.

  • Source/webrtc/modules/audio_processing/beamformer/array_util.h:

(webrtc::DegreesToRadians):
(webrtc::RadiansToDegrees):
Add constexpr so we can calculate values at compile time instead of launch time.

  • Source/webrtc/modules/rtp_rtcp/source/rtp_utility.cc:
  • Source/webrtc/system_wrappers/source/clock.cc:
  • libwebrtc.xcodeproj/project.pbxproj:

Don't compile ssl_test.cc. We don't need it.

Location:
trunk/Source/ThirdParty/libwebrtc
Files:
1 added
16 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/ThirdParty/libwebrtc/ChangeLog

    r213736 r214288  
     12017-03-22  Alex Christensen  <achristensen@webkit.org>
     2
     3        Fix warnings in libwebrtc
     4        https://bugs.webkit.org/show_bug.cgi?id=169973
     5
     6        Reviewed by Geoffrey Garen.
     7
     8        * Configurations/boringssl.xcconfig:
     9        * Configurations/libsrtp.xcconfig:
     10        * Configurations/libwebrtc.xcconfig:
     11        * Configurations/libwebrtcpcrtc.xcconfig:
     12        * Configurations/libyuv.xcconfig:
     13        * Configurations/opus.xcconfig:
     14        * Configurations/usrsctp.xcconfig:
     15        Build with more warnings.
     16        opus still needs some incompatible pointer warnings disabled because it converts
     17        const opus_int16 * to const opus_val16 * and opus_int32 * to opus_val32 *
     18        and that's ok because its a codec and that's what codecs do.
     19        * Source/webrtc/base/logging.cc:
     20        * Source/webrtc/base/logging.h:
     21        * Source/webrtc/base/neverdestroyed.h: Added.
     22        (webrtc::NeverDestroyed::NeverDestroyed):
     23        (webrtc::NeverDestroyed::operator T&):
     24        (webrtc::NeverDestroyed::get):
     25        (webrtc::NeverDestroyed::operator&):
     26        (webrtc::NeverDestroyed::asPtr):
     27        Added webrtc::NeverDestroyed which may or may not be based on WTF::NeverDestroyed.
     28        This allows us to avoid exit time destructors, which would slow down program termination for no reason.
     29        * Source/webrtc/base/virtualsocketserver.cc:
     30        * Source/webrtc/modules/audio_coding/codecs/builtin_audio_decoder_factory_internal.cc:
     31        Adopt NeverDestroyed in function scope so we don't have global constructors or destructors.
     32        * Source/webrtc/modules/audio_processing/beamformer/array_util.h:
     33        (webrtc::DegreesToRadians):
     34        (webrtc::RadiansToDegrees):
     35        Add constexpr so we can calculate values at compile time instead of launch time.
     36        * Source/webrtc/modules/rtp_rtcp/source/rtp_utility.cc:
     37        * Source/webrtc/system_wrappers/source/clock.cc:
     38        * libwebrtc.xcodeproj/project.pbxproj:
     39        Don't compile ssl_test.cc.  We don't need it.
     40
    1412017-03-10  Youenn Fablet  <youenn@apple.com>
    242
  • trunk/Source/ThirdParty/libwebrtc/Configurations/boringssl.xcconfig

    r211602 r214288  
    1111PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/libwebrtc;
    1212USE_HEADERMAP = NO;
    13 WARNING_CFLAGS = -Wno-exit-time-destructors;
    1413
    1514// FIXME: There's no assembly used in the boringssl build yet :(
  • trunk/Source/ThirdParty/libwebrtc/Configurations/libsrtp.xcconfig

    r211844 r214288  
    1212PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/libwebrtc;
    1313USE_HEADERMAP = NO;
    14 WARNING_CFLAGS = -Wno-exit-time-destructors -Wno-implicit-function-declaration -Wno-incompatible-pointer-types -Wno-deprecated-declarations;
     14WARNING_CFLAGS = -Wno-implicit-function-declaration -Wno-deprecated-declarations;
    1515GCC_PREPROCESSOR_DEFINITIONS = V8_DEPRECATION_WARNINGS ENABLE_NOTIFICATIONS ENABLE_PLUGINS=1 ENABLE_PDF=1 ENABLE_PRINTING=1 ENABLE_BASIC_PRINTING=1 ENABLE_PRINT_PREVIEW=1 ENABLE_SPELLCHECK=1 USE_BROWSER_SPELLCHECKER=1 NO_TCMALLOC USE_EXTERNAL_POPUP_MENU=1 ENABLE_WEBRTC=1 ENABLE_EXTENSIONS=1 ENABLE_TASK_MANAGER=1 ENABLE_THEMES=1 ENABLE_SESSION_SERVICE=1 ENABLE_SUPERVISED_USERS=1 FULL_SAFE_BROWSING SAFE_BROWSING_CSD SAFE_BROWSING_DB_LOCAL CHROMIUM_BUILD ENABLE_MEDIA_ROUTER=1 FIELDTRIAL_TESTING_ENABLED CR_CLANG_REVISION=284979-1 CR_XCODE_VERSION=0820 __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORE=0 _DEBUG DYNAMIC_ANNOTATIONS_ENABLED=1 WTF_USE_DYNAMIC_ANNOTATIONS=1 PACKAGE_STRING="\"libsrtp2 2.0.0-pre\"" PACKAGE_VERSION="\"2.0.0-pre\"" HAVE_CONFIG_H OPENSSL HAVE_STDLIB_H HAVE_STRING_H HAVE_STDINT_H HAVE_INTTYPES_H HAVE_INT16_T HAVE_INT32_T HAVE_INT8_T HAVE_UINT16_T HAVE_UINT32_T HAVE_UINT64_T HAVE_UINT8_T HAVE_ARPA_INET_H HAVE_NETINET_IN_H HAVE_SYS_TYPES_H HAVE_UNISTD_H;
  • trunk/Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig

    r213605 r214288  
    2525USE_HEADERMAP = NO;
    2626INSTALLHDRS_SCRIPT_PHASE = YES;
    27 WARNING_CFLAGS = -Wno-exit-time-destructors -Wno-objc-property-no-attribute -Wno-objc-missing-super-calls -Wno-deprecated-declarations;
     27WARNING_CFLAGS = -Wno-objc-property-no-attribute -Wno-objc-missing-super-calls -Wno-deprecated-declarations;
    2828
    2929GCC_PREPROCESSOR_DEFINITIONS = WEBRTC_POSIX WEBRTC_MAC SSL_USE_OPENSSL FEATURE_ENABLE_SSL HAVE_SRTP HAVE_OPENSSL_SSL_H SCTP_PROCESS_LEVEL_LOCKS SCTP_SIMPLE_ALLOCATOR SCTP_USE_OPENSSL_SHA1 __Userspace__ HAVE_SA_LEN HAVE_SCONN_LEN __APPLE_USE_RFC_2292 __Userspace_os_Darwin NON_WINDOWS_DEFINE HAVE_WEBRTC_VIDEO HAVE_WEBRTC_VOICE WEBRTC_INTELLIGIBILITY_ENHANCER=0 WEBRTC_APM_DEBUG_DUMP=0 WEBRTC_NS_FLOAT WEBRTC_CODEC_ILBC WEBRTC_CODEC_OPUS WEBRTC_CODEC_ISAC WEBRTC_CODEC_RED RTC_DISABLE_VP9 RTC_DISABLE_VP8 HAVE_STDINT_H HAVE_STDLIB_H HAVE_UINT64_T OPENSSL HAVE_CONFIG_H WEBRTC_WEBKIT_BUILD HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE  HAVE_SCTP WEBRTC_CODEC_G711 WEBRTC_CODEC_G722;
  • trunk/Source/ThirdParty/libwebrtc/Configurations/libwebrtcpcrtc.xcconfig

    r212397 r214288  
    1212PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/libwebrtc;
    1313USE_HEADERMAP = NO;
    14 WARNING_CFLAGS = -Wno-exit-time-destructors -Wno-objc-property-no-attribute -Wno-objc-missing-super-calls;
     14WARNING_CFLAGS = -Wno-objc-property-no-attribute -Wno-objc-missing-super-calls;
    1515
    1616GCC_PREPROCESSOR_DEFINITIONS = WEBRTC_POSIX WEBRTC_MAC SSL_USE_OPENSSL FEATURE_ENABLE_SSL HAVE_SRTP HAVE_OPENSSL_SSL_H SCTP_PROCESS_LEVEL_LOCKS SCTP_SIMPLE_ALLOCATOR SCTP_USE_OPENSSL_SHA1 __Userspace__ HAVE_SA_LEN HAVE_SCONN_LEN __APPLE_USE_RFC_2292 __Userspace_os_Darwin NON_WINDOWS_DEFINE HAVE_WEBRTC_VIDEO HAVE_WEBRTC_VOICE WEBRTC_INTELLIGIBILITY_ENHANCER=0 WEBRTC_APM_DEBUG_DUMP=0 WEBRTC_NS_FLOAT WEBRTC_CODEC_ILBC WEBRTC_CODEC_OPUS WEBRTC_CODEC_ISAC WEBRTC_CODEC_RED RTC_DISABLE_VP9 RTC_DISABLE_VP8 HAVE_STDINT_H HAVE_STDLIB_H HAVE_UINT64_T OPENSSL HAVE_CONFIG_H WEBRTC_WEBKIT_BUILD HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE  HAVE_SCTP;
  • trunk/Source/ThirdParty/libwebrtc/Configurations/libyuv.xcconfig

    r211844 r214288  
    1111PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/libwebrtc;
    1212USE_HEADERMAP = NO;
    13 WARNING_CFLAGS = -Wno-exit-time-destructors -Wno-implicit-function-declaration -Wno-incompatible-pointer-types -Wno-deprecated-declarations;
  • trunk/Source/ThirdParty/libwebrtc/Configurations/opus.xcconfig

    r211888 r214288  
    1111PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/libwebrtc;
    1212USE_HEADERMAP = NO;
    13 WARNING_CFLAGS = -Wno-exit-time-destructors -Wno-implicit-function-declaration -Wno-incompatible-pointer-types
     13WARNING_CFLAGS = -Wno-incompatible-pointer-types
    1414GCC_PREPROCESSOR_DEFINITIONS = VAR_ARRAYS OPUS_BUILD OPUS_EXPORT= HAVE_LRINT HAVE_LRINTF OPUS_X86_MAY_HAVE_SSE2;
    1515
  • trunk/Source/ThirdParty/libwebrtc/Configurations/usrsctp.xcconfig

    r211875 r214288  
    1111PUBLIC_HEADERS_FOLDER_PATH = /usr/local/include/libwebrtc;
    1212USE_HEADERMAP = NO;
    13 WARNING_CFLAGS = -Wno-exit-time-destructors -Wno-implicit-function-declaration -Wno-incompatible-pointer-types -Wno-deprecated-declarations;
     13WARNING_CFLAGS = -Wno-deprecated-declarations;
    1414GCC_PREPROCESSOR_DEFINITIONS = SCTP_PROCESS_LEVEL_LOCKS SCTP_SIMPLE_ALLOCATOR SCTP_USE_OPENSSL_SHA1 __Userspace__ HAVE_SA_LEN HAVE_SCONN_LEN __APPLE_USE_RFC_2292 __Userspace_os_Darwin;
    1515OTHER_CFLAGS = -UINET -UINET6 -U__APPLE__;
  • trunk/Source/ThirdParty/libwebrtc/Source/webrtc/base/logging.cc

    r213418 r214288  
    4242#include "webrtc/base/criticalsection.h"
    4343#include "webrtc/base/logging.h"
     44#include "webrtc/base/neverdestroyed.h"
    4445#include "webrtc/base/platform_thread.h"
    4546#include "webrtc/base/stringencode.h"
     
    104105
    105106namespace {
    106 // Global lock for log subsystem, only needed to serialize access to streams_.
    107 CriticalSection g_log_crit;
     107// Global lock for log subsystem, only needed to serialize access to streams.
     108const CriticalSection& g_log_crit()
     109{
     110    static webrtc::NeverDestroyed<CriticalSection> g_log_crit;
     111    return g_log_crit;
     112}
    108113}  // namespace
    109114
     
    112117// of destructors at program exit.  Let the person who sets the stream trigger
    113118// cleanup by setting to null, or let it leak (safe at program exit).
    114 LogMessage::StreamList LogMessage::streams_ GUARDED_BY(g_log_crit);
     119LogMessage::StreamList& LogMessage::streams()
     120{
     121    static webrtc::NeverDestroyed<LogMessage::StreamList> streams GUARDED_BY(g_log_crit);
     122    return streams;
     123}
    115124
    116125// Boolean options default to false (0)
     
    208217  }
    209218
    210   CritScope cs(&g_log_crit);
    211   for (auto& kv : streams_) {
     219  CritScope cs(&g_log_crit());
     220  for (auto& kv : streams()) {
    212221    if (severity_ >= kv.second) {
    213222      kv.first->OnLogMessage(str);
     
    236245void LogMessage::LogToDebug(LoggingSeverity min_sev) {
    237246  dbg_sev_ = min_sev;
    238   CritScope cs(&g_log_crit);
     247  CritScope cs(&g_log_crit());
    239248  UpdateMinLogSeverity();
    240249}
     
    245254
    246255int LogMessage::GetLogToStream(LogSink* stream) {
    247   CritScope cs(&g_log_crit);
     256  CritScope cs(&g_log_crit());
    248257  LoggingSeverity sev = LS_NONE;
    249   for (auto& kv : streams_) {
     258  for (auto& kv : streams()) {
    250259    if (!stream || stream == kv.first) {
    251260      sev = std::min(sev, kv.second);
     
    256265
    257266void LogMessage::AddLogToStream(LogSink* stream, LoggingSeverity min_sev) {
    258   CritScope cs(&g_log_crit);
    259   streams_.push_back(std::make_pair(stream, min_sev));
     267  CritScope cs(&g_log_crit());
     268  streams().push_back(std::make_pair(stream, min_sev));
    260269  UpdateMinLogSeverity();
    261270}
    262271
    263272void LogMessage::RemoveLogToStream(LogSink* stream) {
    264   CritScope cs(&g_log_crit);
    265   for (StreamList::iterator it = streams_.begin(); it != streams_.end(); ++it) {
     273  CritScope cs(&g_log_crit());
     274  for (StreamList::iterator it = streams().begin(); it != streams().end(); ++it) {
    266275    if (stream == it->first) {
    267       streams_.erase(it);
     276      streams().erase(it);
    268277      break;
    269278    }
     
    336345void LogMessage::UpdateMinLogSeverity() EXCLUSIVE_LOCKS_REQUIRED(g_log_crit) {
    337346  LoggingSeverity min_sev = dbg_sev_;
    338   for (auto& kv : streams_) {
     347  for (auto& kv : streams()) {
    339348    min_sev = std::min(dbg_sev_, kv.second);
    340349  }
  • trunk/Source/ThirdParty/libwebrtc/Source/webrtc/base/logging.h

    r213418 r214288  
    235235
    236236  // The output streams and their associated severities
    237   static StreamList streams_;
     237  static StreamList& streams();
    238238
    239239  // Flags for formatting options
  • trunk/Source/ThirdParty/libwebrtc/Source/webrtc/base/virtualsocketserver.cc

    r213418 r214288  
    10171017}
    10181018
    1019 static double PI = 4 * atan(1.0);
     1019static const double PI = 3.141592653589793238462643383279502884;
    10201020
    10211021static double Normal(double x, double mean, double stddev) {
  • trunk/Source/ThirdParty/libwebrtc/Source/webrtc/modules/audio_coding/codecs/builtin_audio_decoder_factory_internal.cc

    r213418 r214288  
    1616#include "webrtc/base/checks.h"
    1717#include "webrtc/base/optional.h"
     18#include "webrtc/base/neverdestroyed.h"
    1819#include "webrtc/common_types.h"
    1920#include "webrtc/modules/audio_coding/codecs/cng/webrtc_cng.h"
     
    5152// TODO(kwiberg): These factory functions should probably be moved to each
    5253// decoder.
    53 NamedDecoderConstructor decoder_constructors[] = {
     54static const std::vector<NamedDecoderConstructor>& decoder_constructors() {
     55 static NeverDestroyed<std::vector<NamedDecoderConstructor>> decoder_constructors = [] { return std::vector<NamedDecoderConstructor>({
    5456    {"pcmu",
    5557     [](const SdpAudioFormat& format, std::unique_ptr<AudioDecoder>* out) {
     
    171173     }},
    172174#endif
    173 };
     175  });}();
     176  return decoder_constructors.get();
     177}
    174178
    175179class BuiltinAudioDecoderFactory : public AudioDecoderFactory {
     
    178182    // Although this looks a bit strange, it means specs need only be
    179183    // initialized once, and that that initialization is thread-safe.
    180     static std::vector<AudioCodecSpec> specs = [] {
     184    static NeverDestroyed<std::vector<AudioCodecSpec>> specs = [] {
    181185      std::vector<AudioCodecSpec> specs;
    182186#ifdef WEBRTC_CODEC_OPUS
     
    211215
    212216  bool IsSupportedDecoder(const SdpAudioFormat& format) override {
    213     for (const auto& dc : decoder_constructors) {
     217    for (const auto& dc : decoder_constructors()) {
    214218      if (STR_CASE_CMP(format.name.c_str(), dc.name) == 0) {
    215219        return dc.constructor(format, nullptr);
     
    221225  std::unique_ptr<AudioDecoder> MakeAudioDecoder(
    222226      const SdpAudioFormat& format) override {
    223     for (const auto& dc : decoder_constructors) {
     227    for (const auto& dc : decoder_constructors()) {
    224228      if (STR_CASE_CMP(format.name.c_str(), dc.name) == 0) {
    225229        std::unique_ptr<AudioDecoder> decoder;
  • trunk/Source/ThirdParty/libwebrtc/Source/webrtc/modules/audio_processing/beamformer/array_util.h

    r210942 r214288  
    104104// Helper functions to transform degrees to radians and the inverse.
    105105template <typename T>
    106 T DegreesToRadians(T angle_degrees) {
     106constexpr T DegreesToRadians(T angle_degrees)
     107{
    107108  return M_PI * angle_degrees / 180;
    108109}
    109110
    110111template <typename T>
    111 T RadiansToDegrees(T angle_radians) {
     112constexpr T RadiansToDegrees(T angle_radians)
     113{
    112114  return 180 * angle_radians / M_PI;
    113115}
  • trunk/Source/ThirdParty/libwebrtc/Source/webrtc/modules/rtp_rtcp/source/rtp_utility.cc

    r213418 r214288  
    1414
    1515#include "webrtc/base/logging.h"
     16#include "webrtc/base/neverdestroyed.h"
    1617#include "webrtc/modules/rtp_rtcp/include/rtp_cvo.h"
    1718#include "webrtc/modules/rtp_rtcp/source/byte_io.h"
     
    2122
    2223RtpData* NullObjectRtpData() {
    23   static NullRtpData null_rtp_data;
     24  static NeverDestroyed<NullRtpData> null_rtp_data;
    2425  return &null_rtp_data;
    2526}
    2627
    2728RtpFeedback* NullObjectRtpFeedback() {
    28   static NullRtpFeedback null_rtp_feedback;
     29  static NeverDestroyed<NullRtpFeedback> null_rtp_feedback;
    2930  return &null_rtp_feedback;
    3031}
    3132
    3233ReceiveStatistics* NullObjectReceiveStatistics() {
    33   static NullReceiveStatistics null_receive_statistics;
     34  static NeverDestroyed<NullReceiveStatistics> null_receive_statistics;
    3435  return &null_receive_statistics;
    3536}
  • trunk/Source/ThirdParty/libwebrtc/Source/webrtc/system_wrappers/source/clock.cc

    r213418 r214288  
    2121
    2222#include "webrtc/base/criticalsection.h"
     23#include "webrtc/base/neverdestroyed.h"
    2324#include "webrtc/base/timeutils.h"
    2425#include "webrtc/system_wrappers/include/rw_lock_wrapper.h"
     
    224225  return g_shared_clock;
    225226#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
    226   static UnixRealTimeClock clock;
     227  static NeverDestroyed<UnixRealTimeClock> clock;
    227228  return &clock;
    228229#else
  • trunk/Source/ThirdParty/libwebrtc/libwebrtc.xcodeproj/project.pbxproj

    r213468 r214288  
    529529                5C4B483A1E42C06A002651C8 /* ssl_session.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C4B47F61E42C066002651C8 /* ssl_session.c */; };
    530530                5C4B483B1E42C06A002651C8 /* ssl_stat.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C4B47F71E42C066002651C8 /* ssl_stat.c */; };
    531                 5C4B483C1E42C06A002651C8 /* ssl_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 5C4B47F81E42C066002651C8 /* ssl_test.cc */; };
    532531                5C4B483D1E42C06A002651C8 /* t1_enc.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C4B47F91E42C066002651C8 /* t1_enc.c */; };
    533532                5C4B483E1E42C06A002651C8 /* t1_lib.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C4B47FA1E42C066002651C8 /* t1_lib.c */; };
     
    24902489                5CDD90821E43D15C00621E92 /* nonlinear_beamformer.cc in Sources */ = {isa = PBXBuildFile; fileRef = 5CDD90721E43D15C00621E92 /* nonlinear_beamformer.cc */; };
    24912490                5CDD90831E43D15C00621E92 /* nonlinear_beamformer.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CDD90731E43D15C00621E92 /* nonlinear_beamformer.h */; };
     2491                5CDEB3311E82110800209B14 /* neverdestroyed.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CDEB3301E82110800209B14 /* neverdestroyed.h */; };
    24922492                5CFD537C1E4BA4F500482908 /* audio_device_ios.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CFD53751E4BA4F500482908 /* audio_device_ios.h */; };
    24932493                5CFD53801E4BA4F500482908 /* audio_session_observer.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CFD53791E4BA4F500482908 /* audio_session_observer.h */; };
     
    52095209                5CDD90AC1E43D52900621E92 /* cipher.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cipher.c; path = cipher/cipher.c; sourceTree = "<group>"; };
    52105210                5CDD90AD1E43D52900621E92 /* null_cipher.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = null_cipher.c; path = cipher/null_cipher.c; sourceTree = "<group>"; };
     5211                5CDEB3301E82110800209B14 /* neverdestroyed.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = neverdestroyed.h; sourceTree = "<group>"; };
    52115212                5CFD53751E4BA4F500482908 /* audio_device_ios.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audio_device_ios.h; sourceTree = "<group>"; };
    52125213                5CFD53761E4BA4F500482908 /* audio_device_ios.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = audio_device_ios.mm; sourceTree = "<group>"; };
     
    66886689                        isa = PBXGroup;
    66896690                        children = (
     6691                                5CDEB3301E82110800209B14 /* neverdestroyed.h */,
    66906692                                5CD286421E6A7B420094FDC8 /* sha1.cc */,
    66916693                                5CD286431E6A7B420094FDC8 /* sha1.h */,
     
    1026110263                                5CDD84C21E43AF1300621E92 /* splitting_filter.h in Headers */,
    1026210264                                5CDD83601E43257200621E92 /* sps_parser.h in Headers */,
     10265                                5CDEB3311E82110800209B14 /* neverdestroyed.h in Headers */,
    1026310266                                5CDD83631E43257200621E92 /* sps_vui_rewriter.h in Headers */,
    1026410267                                5C63F88D1E416288002CA531 /* ssladapter.h in Headers */,
     
    1121211215                                5C4B483A1E42C06A002651C8 /* ssl_session.c in Sources */,
    1121311216                                5C4B483B1E42C06A002651C8 /* ssl_stat.c in Sources */,
    11214                                 5C4B483C1E42C06A002651C8 /* ssl_test.cc in Sources */,
    1121511217                                5C4B46A51E42AA42002651C8 /* stack.c in Sources */,
    1121611218                                5C4B483D1E42C06A002651C8 /* t1_enc.c in Sources */,
Note: See TracChangeset for help on using the changeset viewer.