File: BUILD.gn

package info (click to toggle)
chromium 138.0.7204.183-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 6,071,908 kB
  • sloc: cpp: 34,937,088; ansic: 7,176,967; javascript: 4,110,704; python: 1,419,953; asm: 946,768; xml: 739,971; pascal: 187,324; sh: 89,623; perl: 88,663; objc: 79,944; sql: 50,304; cs: 41,786; fortran: 24,137; makefile: 21,806; php: 13,980; tcl: 13,166; yacc: 8,925; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (66 lines) | stat: -rw-r--r-- 1,937 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# Copyright 2016 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/android/rules.gni")
import("//third_party/jni_zero/jni_zero.gni")

testonly = true

generate_jni("sample_jni") {
  sources = [ "java/src/org/jni_zero/sample/Sample.java" ]
}

android_library("sample_java") {
  srcjar_deps = [ ":sample_jni" ]
  sources = [
    "java/src/org/jni_zero/sample/Sample.java",
    "java/src/org/jni_zero/sample/SampleActivity.java",
  ]

  deps = [ "//third_party/jni_zero:jni_zero_java" ]
}

source_set("sample_native_side") {
  deps = [ ":sample_jni" ]
  sources = [ "sample.cc" ]
}

shared_library_with_jni("libjni_zero_sample") {
  _linker_script = "sample_lib_version_script.txt"
  sources = [ "sample_entry_point.cc" ]

  deps = [
    ":sample_native_side",
    "//third_party/jni_zero",
  ]
  inputs = [ _linker_script ]
  ldflags =
      [ "-Wl,--version-script=" + rebase_path(_linker_script, root_build_dir) ]
  java_targets = [ ":jni_zero_sample_apk" ]
  remove_uncalled_jni = true
}

android_apk("jni_zero_sample_apk") {
  apk_name = "JniZeroSample"
  android_manifest = "AndroidManifest.xml"
  deps = [ ":sample_java" ]
  shared_libraries = [ ":libjni_zero_sample" ]
  srcjar_deps = [ ":libjni_zero_sample__jni_registration" ]
}

instrumentation_test_apk("jni_zero_sample_apk_test") {
  apk_name = "JniZeroSampleTest"
  apk_under_test = ":jni_zero_sample_apk"
  android_manifest = "javatests/AndroidManifest.xml"
  sources = [ "javatests/src/org/jni_zero/test_sample/JniZeroSampleTest.java" ]
  deps = [
    ":sample_java",
    "//third_party/androidx:androidx_test_core_java",
    "//third_party/androidx:androidx_test_ext_junit_java",
    "//third_party/androidx:androidx_test_rules_java",
    "//third_party/androidx:androidx_test_runner_java",
    "//third_party/google-truth:google_truth_java",
    "//third_party/junit",
  ]
}