summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser_tests.isolate15
-rw-r--r--chrome/chrome.isolate4
-rw-r--r--chrome/interactive_ui_tests.isolate3
-rw-r--r--chrome/sync_integration_tests.isolate2
-rw-r--r--chrome/unit_tests.isolate3
-rw-r--r--content/content_browsertests.isolate5
-rw-r--r--content/content_unittests.isolate3
-rw-r--r--third_party/libjingle/libjingle.gyp15
-rw-r--r--third_party/libjingle/overrides/init_webrtc.cc19
9 files changed, 55 insertions, 14 deletions
diff --git a/chrome/browser_tests.isolate b/chrome/browser_tests.isolate
index a7eb600..1fff561 100644
--- a/chrome/browser_tests.isolate
+++ b/chrome/browser_tests.isolate
@@ -14,15 +14,16 @@
],
'isolate_dependency_tracked': [
'../testing/xvfb.py',
- '<(PRODUCT_DIR)/DumpRenderTree<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/chrome.pak',
'<(PRODUCT_DIR)/chrome<(EXECUTABLE_SUFFIX)',
+ '<(PRODUCT_DIR)/DumpRenderTree<(EXECUTABLE_SUFFIX)',
+ '<(PRODUCT_DIR)/lib/libpeerconnection.so',
'<(PRODUCT_DIR)/libclearkeycdm.so',
'<(PRODUCT_DIR)/libclearkeycdmadapter.so',
'<(PRODUCT_DIR)/libffmpegsumo.so',
'<(PRODUCT_DIR)/libosmesa.so',
- '<(PRODUCT_DIR)/libppGoogleNaClPluginChrome.so',
'<(PRODUCT_DIR)/libppapi_tests.so',
+ '<(PRODUCT_DIR)/libppGoogleNaClPluginChrome.so',
'<(PRODUCT_DIR)/nacl_helper<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/nacl_helper_bootstrap<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/xdisplaycheck<(EXECUTABLE_SUFFIX)',
@@ -100,10 +101,11 @@
'variables': {
'isolate_dependency_tracked': [
'<(PRODUCT_DIR)/ffmpegsumo.so',
- '<(PRODUCT_DIR)/plugins/TestNetscapePlugIn.plugin/Contents/Info.plist',
- '<(PRODUCT_DIR)/plugins/TestNetscapePlugIn.plugin/Contents/MacOS/TestNetscapePlugIn',
+ '<(PRODUCT_DIR)/libpeerconnection.so',
'<(PRODUCT_DIR)/plugins/npapi_test_plugin.plugin/Contents/Info.plist',
'<(PRODUCT_DIR)/plugins/npapi_test_plugin.plugin/Contents/MacOS/npapi_test_plugin',
+ '<(PRODUCT_DIR)/plugins/TestNetscapePlugIn.plugin/Contents/Info.plist',
+ '<(PRODUCT_DIR)/plugins/TestNetscapePlugIn.plugin/Contents/MacOS/TestNetscapePlugIn',
'<(PRODUCT_DIR)/ppapi_nacl_tests_pnacl_newlib_x32.nexe',
'<(PRODUCT_DIR)/ppapi_tests.plugin/Contents/MacOS/ppapi_tests',
],
@@ -129,18 +131,19 @@
'../native_client/build/build_nexe.py',
'../third_party/cygwin/bin/bash.exe',
'../third_party/cygwin/setup_mount.bat',
- '<(PRODUCT_DIR)/D3DCompiler_43.dll',
'<(PRODUCT_DIR)/clearkeycdm.dll',
'<(PRODUCT_DIR)/clearkeycdmadapter.dll',
+ '<(PRODUCT_DIR)/D3DCompiler_43.dll',
'<(PRODUCT_DIR)/d3dcompiler_46.dll',
'<(PRODUCT_DIR)/ffmpegsumo.dll',
'<(PRODUCT_DIR)/icudt.dll',
'<(PRODUCT_DIR)/libEGL.dll',
'<(PRODUCT_DIR)/libGLESv2.dll',
+ '<(PRODUCT_DIR)/libpeerconnection.dll',
'<(PRODUCT_DIR)/nacl64<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/osmesa.dll',
- '<(PRODUCT_DIR)/ppGoogleNaClPluginChrome.dll',
'<(PRODUCT_DIR)/ppapi_tests.dll',
+ '<(PRODUCT_DIR)/ppGoogleNaClPluginChrome.dll',
'<(PRODUCT_DIR)/security_tests.dll',
'tools/build/repack_locales.py',
],
diff --git a/chrome/chrome.isolate b/chrome/chrome.isolate
index 86233c4..d115c8e 100644
--- a/chrome/chrome.isolate
+++ b/chrome/chrome.isolate
@@ -7,6 +7,7 @@
'variables': {
'isolate_dependency_tracked': [
'<(PRODUCT_DIR)/chrome.pak',
+ '<(PRODUCT_DIR)/lib/libpeerconnection.so',
'<(PRODUCT_DIR)/libclearkeycdm.so',
'<(PRODUCT_DIR)/libclearkeycdmadapter.so',
'<(PRODUCT_DIR)/libffmpegsumo.so',
@@ -51,15 +52,16 @@
['OS=="win"', {
'variables': {
'isolate_dependency_tracked': [
- '<(PRODUCT_DIR)/D3DCompiler_43.dll',
'<(PRODUCT_DIR)/chrome.dll',
'<(PRODUCT_DIR)/clearkeycdm.dll',
'<(PRODUCT_DIR)/clearkeycdmadapter.dll',
+ '<(PRODUCT_DIR)/D3DCompiler_43.dll',
'<(PRODUCT_DIR)/d3dcompiler_46.dll',
'<(PRODUCT_DIR)/ffmpegsumo.dll',
'<(PRODUCT_DIR)/icudt.dll',
'<(PRODUCT_DIR)/libEGL.dll',
'<(PRODUCT_DIR)/libGLESv2.dll',
+ '<(PRODUCT_DIR)/libpeerconnection.dll',
'<(PRODUCT_DIR)/nacl64<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/osmesa.dll',
'<(PRODUCT_DIR)/ppGoogleNaClPluginChrome.dll',
diff --git a/chrome/interactive_ui_tests.isolate b/chrome/interactive_ui_tests.isolate
index ca57765..cf3b315 100644
--- a/chrome/interactive_ui_tests.isolate
+++ b/chrome/interactive_ui_tests.isolate
@@ -15,6 +15,7 @@
'isolate_dependency_tracked': [
'../testing/xvfb.py',
'<(PRODUCT_DIR)/chrome.pak',
+ '<(PRODUCT_DIR)/lib/libpeerconnection.so',
'<(PRODUCT_DIR)/libffmpegsumo.so',
'<(PRODUCT_DIR)/locales/fr.pak',
'<(PRODUCT_DIR)/pyproto/google/__init__.py',
@@ -62,6 +63,7 @@
'variables': {
'isolate_dependency_tracked': [
'<(PRODUCT_DIR)/ffmpegsumo.so',
+ '<(PRODUCT_DIR)/libpeerconnection.so',
],
'isolate_dependency_untracked': [
'<(PRODUCT_DIR)/Chromium Framework.framework/',
@@ -89,6 +91,7 @@
'<(PRODUCT_DIR)/icudt.dll',
'<(PRODUCT_DIR)/libEGL.dll',
'<(PRODUCT_DIR)/libGLESv2.dll',
+ '<(PRODUCT_DIR)/libpeerconnection.dll',
'<(PRODUCT_DIR)/ppGoogleNaClPluginChrome.dll',
],
'isolate_dependency_untracked': [
diff --git a/chrome/sync_integration_tests.isolate b/chrome/sync_integration_tests.isolate
index 76cf74e..84a6186 100644
--- a/chrome/sync_integration_tests.isolate
+++ b/chrome/sync_integration_tests.isolate
@@ -16,6 +16,7 @@
'../testing/xvfb.py',
'<(PRODUCT_DIR)/chrome.pak',
'<(PRODUCT_DIR)/chrome_100_percent.pak',
+ '<(PRODUCT_DIR)/lib/libpeerconnection.so',
'<(PRODUCT_DIR)/libffmpegsumo.so',
'<(PRODUCT_DIR)/libppGoogleNaClPluginChrome.so',
'<(PRODUCT_DIR)/locales/en-US.pak',
@@ -57,6 +58,7 @@
'<(PRODUCT_DIR)/sync_integration_tests<(EXECUTABLE_SUFFIX)',
],
'isolate_dependency_tracked': [
+ '<(PRODUCT_DIR)/libpeerconnection.so',
'<(PRODUCT_DIR)/ffmpegsumo.so',
],
'isolate_dependency_untracked': [
diff --git a/chrome/unit_tests.isolate b/chrome/unit_tests.isolate
index 7bf9a51..6679932 100644
--- a/chrome/unit_tests.isolate
+++ b/chrome/unit_tests.isolate
@@ -14,6 +14,7 @@
'isolate_dependency_tracked': [
'../testing/xvfb.py',
'<(PRODUCT_DIR)/chrome.pak',
+ '<(PRODUCT_DIR)/lib/libpeerconnection.so',
'<(PRODUCT_DIR)/libffmpegsumo.so',
'<(PRODUCT_DIR)/locales/fr.pak',
'<(PRODUCT_DIR)/xdisplaycheck<(EXECUTABLE_SUFFIX)',
@@ -64,6 +65,7 @@
'variables': {
'isolate_dependency_tracked': [
'<(PRODUCT_DIR)/ffmpegsumo.so',
+ '<(PRODUCT_DIR)/libpeerconnection.so',
],
'isolate_dependency_untracked': [
'<(PRODUCT_DIR)/Chromium Framework.framework/',
@@ -89,6 +91,7 @@
'isolate_dependency_tracked': [
'<(PRODUCT_DIR)/ffmpegsumo.dll',
'<(PRODUCT_DIR)/icudt.dll',
+ '<(PRODUCT_DIR)/libpeerconnection.dll',
],
'isolate_dependency_untracked': [
'../ppapi/lib/gl/include/KHR/',
diff --git a/content/content_browsertests.isolate b/content/content_browsertests.isolate
index 2ed7523..ec5134b 100644
--- a/content/content_browsertests.isolate
+++ b/content/content_browsertests.isolate
@@ -29,6 +29,7 @@
'isolate_dependency_tracked': [
'<(PRODUCT_DIR)/content_shell.pak',
'<(PRODUCT_DIR)/fonts.conf',
+ '<(PRODUCT_DIR)/lib/libpeerconnection.so',
'<(PRODUCT_DIR)/libclearkeycdm.so',
'<(PRODUCT_DIR)/libclearkeycdmadapter.so',
'<(PRODUCT_DIR)/libffmpegsumo.so',
@@ -50,9 +51,10 @@
'variables': {
'isolate_dependency_untracked': [
'<(PRODUCT_DIR)/clearkeycdmadapter.plugin',
- '<(PRODUCT_DIR)/content_resources.pak',
'<(PRODUCT_DIR)/Content Shell.app/',
+ '<(PRODUCT_DIR)/content_resources.pak',
'<(PRODUCT_DIR)/ffmpegsumo.so',
+ '<(PRODUCT_DIR)/libpeerconnection.so',
'<(PRODUCT_DIR)/plugins/npapi_test_plugin.plugin',
'<(PRODUCT_DIR)/plugins/TestNestscapePlugin.plugin',
],
@@ -62,6 +64,7 @@
'variables': {
'isolate_dependency_tracked': [
'<(PRODUCT_DIR)/ffmpegsumo.dll',
+ '<(PRODUCT_DIR)/libpeerconnection.dll',
],
'isolate_dependency_untracked': [
# The two directories below are only needed for
diff --git a/content/content_unittests.isolate b/content/content_unittests.isolate
index efcd163..71a3870 100644
--- a/content/content_unittests.isolate
+++ b/content/content_unittests.isolate
@@ -12,6 +12,7 @@
'<(PRODUCT_DIR)/content_unittests<(EXECUTABLE_SUFFIX)',
],
'isolate_dependency_untracked': [
+ '<(PRODUCT_DIR)/lib/libpeerconnection.so',
'<(PRODUCT_DIR)/libffmpegsumo.so',
'<(PRODUCT_DIR)/test_data/',
],
@@ -37,6 +38,7 @@
'isolate_dependency_untracked': [
'<(PRODUCT_DIR)/content_resources.pak',
'<(PRODUCT_DIR)/ffmpegsumo.so',
+ '<(PRODUCT_DIR)/libpeerconnection.so',
],
},
}],
@@ -54,6 +56,7 @@
'isolate_dependency_untracked': [
'<(PRODUCT_DIR)/ffmpegsumo.dll',
'<(PRODUCT_DIR)/icudt.dll',
+ '<(PRODUCT_DIR)/libpeerconnection.dll',
],
},
}],
diff --git a/third_party/libjingle/libjingle.gyp b/third_party/libjingle/libjingle.gyp
index 3ef926b..b086923 100644
--- a/third_party/libjingle/libjingle.gyp
+++ b/third_party/libjingle/libjingle.gyp
@@ -11,8 +11,13 @@
'libjingle_additional_deps%': [],
'libjingle_peerconnection_additional_deps%': [],
'libjingle_source%': "source",
- 'libpeer_target_type%': 'static_library',
- 'libpeer_allocator_shim%': 0,
+ 'conditions': [
+ ['OS=="win"', { # TODO(tommi): Enable for mac and linux.
+ 'libpeer_target_type%': 'loadable_module',
+ }, {
+ 'libpeer_target_type%': 'static_library',
+ }],
+ ],
},
'target_defaults': {
'defines': [
@@ -762,8 +767,7 @@
'<(libjingle_source)/talk/session/tunnel/tunnelsessionclient.h',
],
'conditions': [
- ['libpeer_allocator_shim==1 and '
- 'libpeer_target_type!="static_library" and OS!="mac"', {
+ ['libpeer_target_type!="static_library" and OS!="mac"', {
'sources': [
'overrides/allocator_shim/allocator_stub.cc',
'overrides/allocator_shim/allocator_stub.h',
@@ -868,8 +872,7 @@
'libjingle_webrtc',
],
'conditions': [
- ['libpeer_allocator_shim==1 and '
- 'libpeer_target_type!="static_library"', {
+ ['libpeer_target_type!="static_library"', {
'sources': [
'overrides/initialize_module.cc',
],
diff --git a/third_party/libjingle/overrides/init_webrtc.cc b/third_party/libjingle/overrides/init_webrtc.cc
index c73b270..1376546 100644
--- a/third_party/libjingle/overrides/init_webrtc.cc
+++ b/third_party/libjingle/overrides/init_webrtc.cc
@@ -51,6 +51,21 @@ static base::FilePath GetLibPeerConnectionPath() {
return path;
}
+#if !defined(OS_WIN)
+// On platforms other than Windows (i.e. mac and linux based ones),
+// the location of the .so in the installed layout will be different relative
+// to the loading module than it is in the build directory.
+// GetLibPeerConnectionPath returns the path as it will be in the installed
+// layout, but to support isolated tests, we need to also support loading the
+// so in the build layout, which we do here.
+// On Windows, these layouts are the same.
+static base::FilePath GetLibPeerConnectionPathForTests() {
+ base::FilePath path;
+ CHECK(PathService::Get(base::DIR_MODULE, &path));
+ return path.Append(FILE_PATH_LITERAL("libpeerconnection.so"));
+}
+#endif
+
bool InitializeWebRtcModule() {
if (g_create_webrtc_media_engine)
return true; // InitializeWebRtcModule has already been called.
@@ -61,6 +76,10 @@ bool InitializeWebRtcModule() {
std::string error;
static base::NativeLibrary lib =
base::LoadNativeLibrary(path, &error);
+#if !defined(OS_WIN)
+ if (!lib)
+ lib = base::LoadNativeLibrary(GetLibPeerConnectionPathForTests(), &error);
+#endif
CHECK(lib);
InitializeModuleFunction initialize_module =