Beginning implementation of SessionDependencyFactory.
As we discussed in the email thread DevTools Bridge must not depend on libjingle_peerconnection_so.so
for several reasons. To aheive that we need implementation of SessionDependencyFactory
on top of libjingle's C++ API. This CL adds dummy SessionDependencyFactoryNative and
introduces additional test APK. Both testing APKs will coexist for a while. When
SessionDependencyFactoryNative be ready to replace Java API counterpart additional APK
also won't be needed.
BUG=383418
Review URL: https://codereview.chromium.org/704613003
Cr-Commit-Position: refs/heads/master@{#303421}
diff --git a/components/devtools_bridge.gyp b/components/devtools_bridge.gyp
index 0f8914be..a8d7de15 100644
--- a/components/devtools_bridge.gyp
+++ b/components/devtools_bridge.gyp
@@ -5,6 +5,32 @@
{
'targets': [
{
+ 'target_name': 'devtools_bridge_jni_headers',
+ 'type': 'none',
+ 'sources': [
+ 'devtools_bridge/android/java/src/org/chromium/components/devtools_bridge/SessionDependencyFactoryNative.java',
+ ],
+ 'variables': {
+ 'jni_gen_package': 'devtools_bridge',
+ },
+ 'includes': [ '../build/jni_generator.gypi' ],
+ },
+ {
+ 'target_name': 'devtools_bridge',
+ 'type': 'static_library',
+ 'sources': [
+ 'devtools_bridge/android/session_dependency_factory_native.h',
+ 'devtools_bridge/android/session_dependency_factory_native.cc',
+ ],
+ 'dependencies': [
+ '../base/base.gyp:base',
+ '../third_party/libjingle/libjingle.gyp:libjingle_webrtc',
+ '../third_party/libjingle/libjingle.gyp:libpeerconnection',
+ '../third_party/webrtc/base/base.gyp:webrtc_base',
+ 'devtools_bridge_jni_headers',
+ ],
+ },
+ {
'target_name': 'devtools_bridge_javalib',
'type': 'none',
'variables': {
@@ -14,6 +40,18 @@
'dependencies': [
'../third_party/android_tools/android_tools.gyp:android_gcm',
'../third_party/libjingle/libjingle.gyp:libjingle_peerconnection_javalib',
+ '../base/base.gyp:base_java',
+ ],
+ },
+ {
+ 'target_name': 'libdevtools_bridge_natives_so',
+ 'type': 'shared_library',
+ 'sources': [
+ 'devtools_bridge/test/android/javatests/jni/jni_onload.cc',
+ ],
+ 'dependencies': [
+ '../base/base.gyp:base',
+ 'devtools_bridge',
],
},
{
@@ -44,5 +82,21 @@
},
'includes': [ '../build/java_apk.gypi' ],
},
+ {
+ 'target_name': 'devtools_bridge_tests2_apk',
+ 'type': 'none',
+ 'dependencies': [
+ 'devtools_bridge_javalib',
+ 'libdevtools_bridge_natives_so',
+ ],
+ 'variables': {
+ 'apk_name': 'DevToolsBridgeTest2',
+ 'test_suite_name': 'devtools_bridge_tests',
+ 'java_in_dir': 'devtools_bridge/android/javatests2',
+ 'native_lib_target': 'libdevtools_bridge_natives_so',
+ 'is_test_apk': 1,
+ },
+ 'includes': [ '../build/java_apk.gypi' ],
+ },
],
}