diff options
author | tommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-22 14:22:04 +0000 |
---|---|---|
committer | tommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-22 14:22:04 +0000 |
commit | f620679c25288e38be065743dd8a6de84497d164 (patch) | |
tree | 3a5c2b776a373f214fcc5e417610c410cc4c1ac1 | |
parent | 8c3b4344c76faf83603e517ecf2c5c0f0647d7d3 (diff) | |
download | chromium_src-f620679c25288e38be065743dd8a6de84497d164.zip chromium_src-f620679c25288e38be065743dd8a6de84497d164.tar.gz chromium_src-f620679c25288e38be065743dd8a6de84497d164.tar.bz2 |
Revert 189802 "Refactor libjingle and libpeerconnection targets."
For some reason the "Linux Builder (dbg)(32)" bot is failing (and not other linux bots):
lib/libsync.so: undefined reference to `cricket::WebRtcVideoEngine::~WebRtcVideoEngine()'
lib/libsync.so: undefined reference to `cricket::WebRtcVideoEngine::GetVideoCapturer() const'
lib/libsync.so: undefined reference to `cricket::WebRtcVoiceEngine::RegisterProcessor(unsigned int, cricket::VoiceProcessor*, cricket::MediaProcessorDirection)'
lib/libsync.so: undefined reference to `cricket::WebRtcVideoEngine::SetOptions(int)'
lib/libsync.so: undefined reference to `cricket::WebRtcVideoEngine::Terminate()
...etc
> Refactor libjingle and libpeerconnection targets.
> I'm moving most of the source files back to the libjingle target since the current splitting doesn't work for all targets that currently rely on libjingle. The webrtc core libs are still only in the libpeerconnection target, and require the enable_webrtc gyp variable to be be set.
>
> I'm also adding a gyp variable to the libjingle target to support dependency injection as is supported for libpeerconnection.
>
> TBR=darin
>
> Review URL: https://codereview.chromium.org/12457027
TBR=tommi@chromium.org
Review URL: https://codereview.chromium.org/12662028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@189806 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/chrome_browser.gypi | 5 | ||||
-rw-r--r-- | content/content_tests.gypi | 1 | ||||
-rw-r--r-- | third_party/libjingle/libjingle.gyp | 164 |
3 files changed, 74 insertions, 96 deletions
diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index baa52c9..e6db024 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -2951,11 +2951,6 @@ ['exclude', '^browser/managed_mode/'], ] }], - ['enable_webrtc==1', { - 'dependencies': [ - '../third_party/libjingle/libjingle.gyp:libpeerconnection', - ], - }], ], 'target_conditions': [ # Need 'target_conditions' to override default filename_rules to include diff --git a/content/content_tests.gypi b/content/content_tests.gypi index d0fdc83..be81322 100644 --- a/content/content_tests.gypi +++ b/content/content_tests.gypi @@ -573,7 +573,6 @@ 'dependencies': [ '../third_party/libjingle/libjingle.gyp:libpeerconnection', '../third_party/webrtc/modules/modules.gyp:video_capture_module', - '../third_party/webrtc/voice_engine/voice_engine.gyp:voice_engine_core', ] }], # TODO(jrg): remove the OS=="android" section? diff --git a/third_party/libjingle/libjingle.gyp b/third_party/libjingle/libjingle.gyp index dc559b5..e6a900a 100644 --- a/third_party/libjingle/libjingle.gyp +++ b/third_party/libjingle/libjingle.gyp @@ -490,9 +490,8 @@ ], 'dependencies': [ '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp', + 'libjingle_p2p_constants', '<@(libjingle_additional_deps)', - 'libjingle_media_base_constants', - 'libjingle_p2p_base_constants', ], 'export_dependent_settings': [ '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp', @@ -567,12 +566,58 @@ '<(libjingle_source)/talk/base/opensslstreamadapter.cc', ], }], - ['enable_webrtc==1', { - 'dependencies': [ - '<(DEPTH)/third_party/libsrtp/libsrtp.gyp:libsrtp', - '<(DEPTH)/third_party/webrtc/modules/modules.gyp:media_file', - '<(DEPTH)/third_party/webrtc/modules/modules.gyp:video_capture_module', - ], + ], + }, # target libjingle + # This has to be is a separate project due to a bug in MSVS 2008 and the + # current toolset on android. The problem is that we have two files named + # "constants.cc" and MSVS/android doesn't handle this properly. + # GYP currently has guards to catch this, so if you want to remove it, + # run GYP and if GYP has removed the validation check, then we can assume + # that the toolchains have been fixed (we currently use VS2010 and later, + # so VS2008 isn't a concern anymore). + { + 'target_name': 'libjingle_p2p_constants', + 'type': 'static_library', + 'sources': [ + '<(libjingle_source)/talk/p2p/base/constants.cc', + '<(libjingle_source)/talk/p2p/base/constants.h', + ], + }, # target libjingle_p2p_constants + { + 'target_name': 'peerconnection_server', + 'type': 'executable', + 'sources': [ + '<(libjingle_source)/talk/examples/peerconnection/server/data_socket.cc', + '<(libjingle_source)/talk/examples/peerconnection/server/data_socket.h', + '<(libjingle_source)/talk/examples/peerconnection/server/main.cc', + '<(libjingle_source)/talk/examples/peerconnection/server/peer_channel.cc', + '<(libjingle_source)/talk/examples/peerconnection/server/peer_channel.h', + '<(libjingle_source)/talk/examples/peerconnection/server/utils.cc', + '<(libjingle_source)/talk/examples/peerconnection/server/utils.h', + ], + 'include_dirs': [ + '<(libjingle_source)', + ], + 'dependencies': [ + 'libjingle', + ], + # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. + 'msvs_disabled_warnings': [ 4309, ], + }, # target peerconnection_server + ], + 'conditions': [ + ['enable_webrtc==1', { + 'targets': [ + { + 'target_name': 'libpeerconnection', + 'type': '<(libpeer_target_type)', + 'all_dependent_settings': { + 'conditions': [ + ['"<(libpeer_target_type)"=="static_library"', { + 'defines': [ 'LIBPEERCONNECTION_LIB=1' ], + }], + ], + }, 'sources': [ '<(libjingle_source)/talk/app/webrtc/audiotrack.cc', '<(libjingle_source)/talk/app/webrtc/audiotrack.h', @@ -628,6 +673,8 @@ '<(libjingle_source)/talk/media/base/capturerenderadapter.h', '<(libjingle_source)/talk/media/base/codec.cc', '<(libjingle_source)/talk/media/base/codec.h', + '<(libjingle_source)/talk/media/base/constants.cc', + '<(libjingle_source)/talk/media/base/constants.h', '<(libjingle_source)/talk/media/base/cryptoparams.h', '<(libjingle_source)/talk/media/base/filemediaengine.cc', '<(libjingle_source)/talk/media/base/filemediaengine.h', @@ -656,10 +703,14 @@ '<(libjingle_source)/talk/media/webrtc/webrtcpassthroughrender.cc', '<(libjingle_source)/talk/media/webrtc/webrtcvideocapturer.cc', '<(libjingle_source)/talk/media/webrtc/webrtcvideocapturer.h', + '<(libjingle_source)/talk/media/webrtc/webrtcvideoengine.cc', + '<(libjingle_source)/talk/media/webrtc/webrtcvideoengine.h', '<(libjingle_source)/talk/media/webrtc/webrtcvideoframe.cc', '<(libjingle_source)/talk/media/webrtc/webrtcvideoframe.h', '<(libjingle_source)/talk/media/webrtc/webrtcvie.h', '<(libjingle_source)/talk/media/webrtc/webrtcvoe.h', + '<(libjingle_source)/talk/media/webrtc/webrtcvoiceengine.cc', + '<(libjingle_source)/talk/media/webrtc/webrtcvoiceengine.h', '<(libjingle_source)/talk/session/media/audiomonitor.cc', '<(libjingle_source)/talk/session/media/audiomonitor.h', '<(libjingle_source)/talk/session/media/call.cc', @@ -696,6 +747,19 @@ '<(libjingle_source)/talk/session/tunnel/tunnelsessionclient.h', ], 'conditions': [ + ['"<(libpeer_target_type)"=="shared_library"', { + # Used to control symbol export/import. + 'defines': [ 'LIBPEERCONNECTION_IMPLEMENTATION=1' ], + }], + ['OS=="win" and "<(libpeer_target_type)"=="shared_library"', { + 'link_settings': { + 'libraries': [ + '-lsecur32.lib', + '-lcrypt32.lib', + '-liphlpapi.lib', + ], + }, + }], ['enabled_libjingle_device_manager==1', { 'sources!': [ '<(libjingle_source)/talk/media/devices/dummydevicemanager.cc', @@ -770,89 +834,9 @@ ], }], ], - }], - ], - }, # target libjingle - # This has to be is a separate project due to a bug in MSVS 2008 and the - # current toolset on android. The problem is that we have two files named - # "constants.cc" and MSVS/android doesn't handle this properly. - # GYP currently has guards to catch this, so if you want to remove it, - # run GYP and if GYP has removed the validation check, then we can assume - # that the toolchains have been fixed (we currently use VS2010 and later, - # so VS2008 isn't a concern anymore). - { - 'target_name': 'libjingle_p2p_base_constants', - 'type': 'static_library', - 'sources': [ - '<(libjingle_source)/talk/p2p/base/constants.cc', - '<(libjingle_source)/talk/p2p/base/constants.h', - ], - }, # target libjingle_p2p_base_constants - { - 'target_name': 'libjingle_media_base_constants', - 'type': 'static_library', - 'sources': [ - '<(libjingle_source)/talk/media/base/constants.cc', - '<(libjingle_source)/talk/media/base/constants.h', - ], - }, # target libjingle_media_base_constants - { - 'target_name': 'peerconnection_server', - 'type': 'executable', - 'sources': [ - '<(libjingle_source)/talk/examples/peerconnection/server/data_socket.cc', - '<(libjingle_source)/talk/examples/peerconnection/server/data_socket.h', - '<(libjingle_source)/talk/examples/peerconnection/server/main.cc', - '<(libjingle_source)/talk/examples/peerconnection/server/peer_channel.cc', - '<(libjingle_source)/talk/examples/peerconnection/server/peer_channel.h', - '<(libjingle_source)/talk/examples/peerconnection/server/utils.cc', - '<(libjingle_source)/talk/examples/peerconnection/server/utils.h', - ], - 'include_dirs': [ - '<(libjingle_source)', - ], - 'dependencies': [ - 'libjingle', - ], - # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. - 'msvs_disabled_warnings': [ 4309, ], - }, # target peerconnection_server - ], - 'conditions': [ - ['enable_webrtc==1', { - 'targets': [ - { - 'target_name': 'libpeerconnection', - 'type': '<(libpeer_target_type)', - 'all_dependent_settings': { - 'conditions': [ - ['"<(libpeer_target_type)"=="static_library"', { - 'defines': [ 'LIBPEERCONNECTION_LIB=1' ], - }], - ], - }, - 'sources': [ - '<(libjingle_source)/talk/media/webrtc/webrtcvideoengine.cc', - '<(libjingle_source)/talk/media/webrtc/webrtcvideoengine.h', - '<(libjingle_source)/talk/media/webrtc/webrtcvoiceengine.cc', - '<(libjingle_source)/talk/media/webrtc/webrtcvoiceengine.h', - ], - 'conditions': [ - ['"<(libpeer_target_type)"=="shared_library"', { - # Used to control symbol export/import. - 'defines': [ 'LIBPEERCONNECTION_IMPLEMENTATION=1' ], - }], - ['OS=="win" and "<(libpeer_target_type)"=="shared_library"', { - 'link_settings': { - 'libraries': [ - '-lsecur32.lib', - '-lcrypt32.lib', - '-liphlpapi.lib', - ], - }, - }], - ], 'dependencies': [ + '<(DEPTH)/third_party/libsrtp/libsrtp.gyp:libsrtp', + '<(DEPTH)/third_party/webrtc/modules/modules.gyp:video_capture_module', '<(DEPTH)/third_party/webrtc/modules/modules.gyp:video_render_module', '<(DEPTH)/third_party/webrtc/system_wrappers/source/system_wrappers.gyp:system_wrappers', '<(DEPTH)/third_party/webrtc/video_engine/video_engine.gyp:video_engine_core', |