blob: 61b24ec676d32a1ddf96f5465c27cb80e93bcb7f [file] [log] [blame]
Colin Cross4c609952017-10-18 13:00:01 -07001// Copyright (C) 2011 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15java_library_static {
16 name: "dexmaker",
17
18 // Include all the java files.
19 srcs: ["dexmaker/src/main/java/**/*.java"],
20
21 static_libs: [
22 "dexmaker-dx-target",
23 "dexmaker-dex-target",
24 ],
25
26 sdk_version: "10",
27}
28
29// Build Dexmaker's MockMaker, a plugin to Mockito
30java_library_static {
31 name: "dexmaker-mockmaker",
32 sdk_version: "10",
33 srcs: ["dexmaker-mockito/src/main/java/**/*.java"],
34 java_resource_dirs: ["dexmaker-mockito/src/main/resources"],
35 libs: [
36 "dexmaker",
37 "mockito-api",
38 ],
39}
40
Philip P. Moltmann43b4c622017-11-20 09:38:54 -080041// Build dispatcher for Dexmaker's inline MockMaker
42java_library_static {
43 name: "dexmaker-inline-mockmaker-dispatcher",
Philip P. Moltmannd4a20562018-03-13 13:11:07 -070044 sdk_version: "current",
Philip P. Moltmann43b4c622017-11-20 09:38:54 -080045 srcs: ["dexmaker-mockito-inline-dispatcher/src/main/java/**/*.java"],
46}
47
Andreas Gampea884f902018-01-18 21:29:41 -080048// Defaults for agent code.
49cc_defaults {
50 name: "dexmaker_agent_defaults",
51
52 // Compile with the NDK, so that the agent can be used in apps.
53 sdk_version: "current",
54 stl: "libc++_static",
Philip P. Moltmann43b4c622017-11-20 09:38:54 -080055
56 host_supported: false,
57 device_supported: true,
58
59 rtti: true,
60
61 cflags: [
62 "-std=c++11",
63 "-Wall",
64 "-Werror",
65 "-Wno-unused-parameter",
66 "-Wno-shift-count-overflow",
67 "-Wno-error=non-virtual-dtor",
68 "-Wno-sign-compare",
69 "-Wno-switch",
70 "-Wno-missing-braces",
71 ],
72
73 static_libs: [
Andreas Gampea884f902018-01-18 21:29:41 -080074 "slicer_ndk",
Philip P. Moltmann43b4c622017-11-20 09:38:54 -080075 ],
76
77 shared_libs: [
78 "libz",
79 ],
80
Andreas Gampea884f902018-01-18 21:29:41 -080081 // As an NDK-based library we cannot depend on libopenjdkjvmti_headers.
82 include_dirs: [
83 "art/openjdkjvmti/include",
Alex Lightf95bed42018-02-15 13:25:14 -080084 // TODO Remove once upstream has updated to new slicer.
85 "tools/dexter/slicer/export/slicer",
Philip P. Moltmann43b4c622017-11-20 09:38:54 -080086 ],
87}
88
Andreas Gampea884f902018-01-18 21:29:41 -080089// Build agent for Dexmaker's inline MockMaker
90cc_library_shared {
91 name: "libdexmakerjvmtiagent",
92 defaults: [
93 "dexmaker_agent_defaults",
94 ],
95 srcs: ["dexmaker-mockito-inline/src/main/jni/**/*.cc"],
96}
97
Philip P. Moltmann43b4c622017-11-20 09:38:54 -080098// Build agent for Dexmaker's inline tests
99cc_library_shared {
100 name: "libmultiplejvmtiagentsinterferenceagent",
Andreas Gampea884f902018-01-18 21:29:41 -0800101 defaults: [
102 "dexmaker_agent_defaults",
103 ],
Philip P. Moltmann43b4c622017-11-20 09:38:54 -0800104 srcs: ["dexmaker-mockito-inline-tests/src/main/jni/**/*.cc"],
Philip P. Moltmann43b4c622017-11-20 09:38:54 -0800105}
106
107// Build Dexmaker's inline MockMaker, a plugin to Mockito
108java_library_static {
109 name: "dexmaker-inline-mockmaker",
Philip P. Moltmannd4a20562018-03-13 13:11:07 -0700110 sdk_version: "current",
Philip P. Moltmann43b4c622017-11-20 09:38:54 -0800111 srcs: ["dexmaker-mockito-inline/src/main/java/**/*.java"],
112 java_resource_dirs: ["dexmaker-mockito-inline/src/main/resources"],
113 libs: [
114 "dexmaker",
115 "mockito-api",
116 ],
117 required: ["libdexmakerjvmtiagent"],
Philip P. Moltmannd4a20562018-03-13 13:11:07 -0700118
119 errorprone: {
120 javacflags: [
121 "-Xep:CollectionIncompatibleType:WARN"
122 ],
123 }
Philip P. Moltmann43b4c622017-11-20 09:38:54 -0800124}
125
Colin Cross4c609952017-10-18 13:00:01 -0700126java_import {
127 name: "dexmaker-dx-target",
128 jars: ["lib/dalvik-dx-1.jar"],
129}
130
131java_import {
132 name: "dexmaker-dex-target",
133 jars: ["lib/libcore-dex-2.jar"],
134}