blob: 3897a3300da2bdbbed4e71418fbfa5fdff990569 [file] [log] [blame]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +01001import("//webrtc.gni")
2
3rtc_android_apk("androidnativeapi") {
4 testonly = true
5 apk_name = "androidnativeapi"
6 android_manifest = "AndroidManifest.xml"
7
8 java_files = [
9 "java/org/webrtc/examples/androidnativeapi/MainActivity.java",
10 "java/org/webrtc/examples/androidnativeapi/CallClient.java",
11 ]
12
13 deps = [
14 ":resources",
Sami Kalliomäkic475ac12018-05-16 15:49:18 +020015 "//modules/audio_device:audio_device_java",
16 "//sdk/android:camera_java",
Sami Kalliomäki1641ca32018-04-04 15:59:31 +020017 "//sdk/android:surfaceviewrenderer_java",
18 "//sdk/android:video_api_java",
Sami Kalliomäkic475ac12018-05-16 15:49:18 +020019 "//sdk/android:video_java",
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010020 ]
21
22 shared_libraries = [ ":examples_androidnativeapi_jni" ]
23}
24
25generate_jni("generated_jni") {
26 testonly = true
27 sources = [
28 "java/org/webrtc/examples/androidnativeapi/CallClient.java",
29 ]
30 jni_package = ""
Magnus Jedvertc7da2662018-05-18 12:13:56 +020031 namespace = "webrtc_examples"
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010032 jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
33}
34
35rtc_shared_library("examples_androidnativeapi_jni") {
36 testonly = true
37 sources = [
38 "jni/androidcallclient.cc",
39 "jni/androidcallclient.h",
40 "jni/onload.cc",
41 ]
42
43 suppressed_configs += [ "//build/config/android:hide_all_but_jni_onload" ]
44 configs += [ "//build/config/android:hide_all_but_jni" ]
45
46 if (is_clang) {
47 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
48 suppressed_configs += [
49 "//build/config/clang:extra_warnings",
50 "//build/config/clang:find_bad_constructs",
51 ]
52 }
53
54 deps = [
55 ":generated_jni",
56 "//api:libjingle_peerconnection_api",
57 "//api/audio_codecs:builtin_audio_decoder_factory",
58 "//api/audio_codecs:builtin_audio_encoder_factory",
59 "//logging:rtc_event_log_impl_base",
60 "//media:rtc_audio_video",
61 "//media:rtc_internal_video_codecs",
62 "//modules/audio_processing",
63 "//modules/utility:utility",
64 "//pc:libjingle_peerconnection",
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010065 "//rtc_base:rtc_base",
66 "//rtc_base:rtc_base_approved",
67 "//sdk/android:native_api_base",
68 "//sdk/android:native_api_jni",
69 "//sdk/android:native_api_video",
70 "//system_wrappers:field_trial_default",
71 "//system_wrappers:metrics_default",
72 "//system_wrappers:runtime_enabled_features_default",
73 ]
74}
75
76android_resources("resources") {
77 testonly = true
78 resource_dirs = [ "res" ]
79 custom_package = "org.webrtc.examples.androidnativeapi"
80}