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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
# Copyright 2017 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")
_jni_sources = [
"java/src/org/chromium/components/crash/CrashKeys.java",
"java/src/org/chromium/components/crash/PureJavaExceptionHandler.java",
"java/src/org/chromium/components/crash/browser/ChildProcessCrashObserver.java",
"java/src/org/chromium/components/crash/browser/PackagePaths.java",
"java/src/org/chromium/components/crash/browser/ProcessExitReasonFromSystem.java",
]
generate_jni("jni_headers") {
sources = _jni_sources
}
java_cpp_enum("java_enums_srcjar") {
sources = [ "crash_keys_android.h" ]
}
android_library("java") {
deps = [
"//base:base_java",
"//base:jni_java",
"//build/android:build_java",
"//components/minidump_uploader:minidump_uploader_java",
"//components/version_info/android:version_constants_java",
"//content/public/android:content_main_dex_java",
"//third_party/androidx:androidx_annotation_annotation_java",
]
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
srcjar_deps = [ ":java_enums_srcjar" ]
sources = [
"java/src/org/chromium/components/crash/CustomAssertionHandler.java",
"java/src/org/chromium/components/crash/LogcatCrashExtractor.java",
"java/src/org/chromium/components/crash/MinidumpLogcatPrepender.java",
"java/src/org/chromium/components/crash/NativeAndJavaSmartExceptionReporter.java",
"java/src/org/chromium/components/crash/PureJavaExceptionReporter.java",
]
sources += _jni_sources
}
robolectric_library("junit") {
sources = [
"junit/src/org/chromium/components/crash/LogcatCrashExtractorTest.java",
"junit/src/org/chromium/components/crash/PureJavaExceptionReporterTest.java",
"junit/src/org/chromium/components/crash/anr/AnrCollectorTest.java",
]
deps = [
":anr_collector_java",
":anr_data_proto_java",
":java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
"//components/minidump_uploader:minidump_uploader_java_test_support",
"//content/public/test/android:content_java_test_support",
"//third_party/androidx:androidx_test_runner_java",
"//third_party/junit",
]
}
source_set("crash_android") {
sources = [
"crash_keys_android.cc",
"crash_keys_android.h",
"pure_java_exception_handler.cc",
"pure_java_exception_handler.h",
]
deps = [
":jni_headers",
"//base",
"//components/crash/core/common:crash_key",
]
}
source_set("unit_tests") {
testonly = true
sources = [ "crash_keys_android_unittest.cc" ]
deps = [
":crash_android",
"//components/crash/core/common:crash_key",
"//testing/gtest",
]
}
_java_handler_jni_sources =
[ "java/src/org/chromium/components/crash/browser/CrashpadMain.java" ]
generate_jni("java_handler_jni_headers") {
sources = _java_handler_jni_sources
}
android_library("handler_java") {
deps = [
"//base:jni_java",
"//build/android:build_java",
]
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
sources = _java_handler_jni_sources
}
static_library("crashpad_main") {
sources = [ "crashpad_main.cc" ]
deps = [
":java_handler_jni_headers",
"//base",
"//third_party/crashpad/crashpad/client",
"//third_party/crashpad/crashpad/handler",
]
}
source_set("anr_skipped_reason") {
sources = [ "anr_skipped_reason.h" ]
}
java_cpp_enum("anr_skipped_reason_enum") {
sources = [ "anr_skipped_reason.h" ]
}
proto_java_library("anr_data_proto_java") {
proto_path = "."
sources = [ "anr_data.proto" ]
}
android_library("anr_collector_java") {
deps = [
":anr_data_proto_java",
"//base:base_java",
"//third_party/androidx:androidx_annotation_annotation_java",
]
srcjar_deps = [ ":anr_skipped_reason_enum" ]
sources = [ "java/src/org/chromium/components/crash/anr/AnrCollector.java" ]
}
|