blob: f96fab2e8e44f4f096153fb9010b761dc19d40bc [file] [log] [blame]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +01001import("//webrtc.gni")
2
Oleh Prypinfdc0ef12018-07-23 10:01:26 +02003if (is_android) {
4 rtc_android_apk("androidnativeapi") {
5 testonly = true
6 apk_name = "androidnativeapi"
7 android_manifest = "AndroidManifest.xml"
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +01008
Oleh Prypinfdc0ef12018-07-23 10:01:26 +02009 java_files = [
10 "java/org/webrtc/examples/androidnativeapi/MainActivity.java",
11 "java/org/webrtc/examples/androidnativeapi/CallClient.java",
12 ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010013
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020014 deps = [
15 ":resources",
16 "//modules/audio_device:audio_device_java",
17 "//sdk/android:camera_java",
18 "//sdk/android:surfaceviewrenderer_java",
19 "//sdk/android:video_api_java",
20 "//sdk/android:video_java",
21 ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010022
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020023 shared_libraries = [ ":examples_androidnativeapi_jni" ]
24 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010025
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020026 generate_jni("generated_jni") {
27 testonly = true
28 sources = [
29 "java/org/webrtc/examples/androidnativeapi/CallClient.java",
30 ]
31 jni_package = ""
32 namespace = "webrtc_examples"
33 jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
34 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010035
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020036 rtc_shared_library("examples_androidnativeapi_jni") {
37 testonly = true
38 sources = [
39 "jni/androidcallclient.cc",
40 "jni/androidcallclient.h",
41 "jni/onload.cc",
42 ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010043
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020044 suppressed_configs += [ "//build/config/android:hide_all_but_jni_onload" ]
45 configs += [ "//build/config/android:hide_all_but_jni" ]
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010046
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020047 deps = [
48 ":generated_jni",
49 "//api:libjingle_peerconnection_api",
50 "//api/audio_codecs:builtin_audio_decoder_factory",
51 "//api/audio_codecs:builtin_audio_encoder_factory",
52 "//logging:rtc_event_log_impl_base",
53 "//media:rtc_audio_video",
54 "//media:rtc_internal_video_codecs",
55 "//modules/audio_processing",
56 "//modules/utility:utility",
57 "//pc:libjingle_peerconnection",
58 "//rtc_base:rtc_base",
59 "//rtc_base:rtc_base_approved",
60 "//sdk/android:native_api_base",
61 "//sdk/android:native_api_jni",
62 "//sdk/android:native_api_video",
63 "//system_wrappers:field_trial_default",
64 "//system_wrappers:metrics_default",
65 "//system_wrappers:runtime_enabled_features_default",
66 "//third_party/abseil-cpp/absl/memory",
67 ]
68 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010069
Oleh Prypinfdc0ef12018-07-23 10:01:26 +020070 android_resources("resources") {
71 testonly = true
72 resource_dirs = [ "res" ]
73 custom_package = "org.webrtc.examples.androidnativeapi"
74 }
Sami Kalliomäki3e77afd2018-03-08 16:43:16 +010075}