blob: cbb1de47d27d6bee26e0e8e88a5e4189059ac928 [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 = ""
31 jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
32}
33
34rtc_shared_library("examples_androidnativeapi_jni") {
35 testonly = true
36 sources = [
37 "jni/androidcallclient.cc",
38 "jni/androidcallclient.h",
39 "jni/onload.cc",
40 ]
41
42 suppressed_configs += [ "//build/config/android:hide_all_but_jni_onload" ]
43 configs += [ "//build/config/android:hide_all_but_jni" ]
44
45 if (is_clang) {
46 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
47 suppressed_configs += [
48 "//build/config/clang:extra_warnings",
49 "//build/config/clang:find_bad_constructs",
50 ]
51 }
52
53 deps = [
54 ":generated_jni",
55 "//api:libjingle_peerconnection_api",
56 "//api/audio_codecs:builtin_audio_decoder_factory",
57 "//api/audio_codecs:builtin_audio_encoder_factory",
58 "//logging:rtc_event_log_impl_base",
59 "//media:rtc_audio_video",
60 "//media:rtc_internal_video_codecs",
61 "//modules/audio_processing",
62 "//modules/utility:utility",
63 "//pc:libjingle_peerconnection",
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010064 "//rtc_base:rtc_base",
65 "//rtc_base:rtc_base_approved",
66 "//sdk/android:native_api_base",
67 "//sdk/android:native_api_jni",
68 "//sdk/android:native_api_video",
69 "//system_wrappers:field_trial_default",
70 "//system_wrappers:metrics_default",
71 "//system_wrappers:runtime_enabled_features_default",
72 ]
73}
74
75android_resources("resources") {
76 testonly = true
77 resource_dirs = [ "res" ]
78 custom_package = "org.webrtc.examples.androidnativeapi"
79}