blob: 2ea489442b89adf06fd84c72067e2477972f389d [file] [log] [blame]
Dan Albert2a8d9c22016-09-23 15:55:49 -07001// Copyright (C) 2016 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
Colin Crossd8e02252017-10-02 17:14:22 -070015// Build ext.jar
16// ============================================================
17java_library {
18 name: "ext",
19 no_framework_libs: true,
20 static_libs: [
21 "libphonenumber-platform",
22 "nist-sip",
23 "tagsoup",
24 ],
25 dxflags: ["--core-library"],
26}
27
Colin Crossaa0d4352017-05-02 14:14:56 -070028// ==== c++ proto device library ==============================
29cc_library {
30 name: "libplatformprotos",
31 host_supported: true,
Colin Crossaa0d4352017-05-02 14:14:56 -070032 proto: {
33 export_proto_headers: true,
34 include_dirs: ["external/protobuf/src"],
35 },
36
Chih-Hung Hsiehc7edf072017-10-03 09:57:55 -070037 cflags: [
38 "-Wall",
39 "-Werror",
40 "-Wno-unused-parameter",
41 ],
Colin Crossaa0d4352017-05-02 14:14:56 -070042 target: {
43 host: {
44 proto: {
45 type: "full",
46 },
John Reck915883b2017-05-03 10:27:20 -070047 srcs: [
48 "core/proto/**/*.proto",
49 "libs/incident/**/*.proto",
Yi Jin04625ad2017-10-17 18:29:33 -070050 "tools/streaming_proto/stream.proto",
John Reck915883b2017-05-03 10:27:20 -070051 ],
Colin Crossaa0d4352017-05-02 14:14:56 -070052 },
53 android: {
54 proto: {
55 type: "lite",
56 },
John Reck915883b2017-05-03 10:27:20 -070057 // We only build the protos that are optimized for the lite
58 // runtime, as well as the only protos that are actually
59 // needed by the device.
60 srcs: [
Yi Jin0eb22342017-11-06 17:17:27 -080061 "core/proto/android/os/cpufreq.proto",
Yi Jine2f7f792017-11-01 17:08:27 -070062 "core/proto/android/os/cpuinfo.proto",
Yi Jin0a3406f2017-06-22 19:23:11 -070063 "core/proto/android/os/kernelwake.proto",
Yi Jin810b14f2017-09-11 19:01:08 -070064 "core/proto/android/os/pagetypeinfo.proto",
Yi Jinb44f7d42017-07-21 12:12:59 -070065 "core/proto/android/os/procrank.proto",
Yi Jin0dfa7522017-11-06 17:43:47 -080066 "core/proto/android/os/system_properties.proto",
John Reck915883b2017-05-03 10:27:20 -070067 "core/proto/android/service/graphicsstats.proto",
Yi Jin04625ad2017-10-17 18:29:33 -070068 "tools/streaming_proto/stream.proto",
John Reck915883b2017-05-03 10:27:20 -070069 ],
Colin Crossaa0d4352017-05-02 14:14:56 -070070 shared: {
Colin Crossaa0d4352017-05-02 14:14:56 -070071 enabled: false,
72 },
73 },
74 },
Colin Crossaa0d4352017-05-02 14:14:56 -070075}
76
Yi Jin04625ad2017-10-17 18:29:33 -070077gensrcs {
78 name: "gen-platform-proto-constants",
79 depfile: true,
80
81 tools: [
82 "aprotoc",
83 "protoc-gen-cppstream",
84 ],
85
86 srcs: [
Yi Jin0eb22342017-11-06 17:17:27 -080087 "core/proto/android/os/cpufreq.proto",
Yi Jine2f7f792017-11-01 17:08:27 -070088 "core/proto/android/os/cpuinfo.proto",
Yi Jin04625ad2017-10-17 18:29:33 -070089 "core/proto/android/os/kernelwake.proto",
90 "core/proto/android/os/pagetypeinfo.proto",
91 "core/proto/android/os/procrank.proto",
Yi Jin0dfa7522017-11-06 17:43:47 -080092 "core/proto/android/os/system_properties.proto",
Yi Jin04625ad2017-10-17 18:29:33 -070093 ],
94
95 // Append protoc-gen-cppstream tool's PATH otherwise aprotoc can't find the plugin tool
96 cmd: "PATH=$$PATH:$$(dirname $(location protoc-gen-cppstream)) $(location aprotoc) --plugin=protoc-gen-cpp-stream=$(location protoc-gen-cppstream) --dependency_out=$(depfile) --cppstream_out=$(genDir)/ -Iexternal/protobuf/src -I . $(in)",
97
98 output_extension = "proto.h",
99}
100
Dan Albert2a8d9c22016-09-23 15:55:49 -0700101subdirs = [
Yi Jin0a3406f2017-06-22 19:23:11 -0700102 "cmds/*",
Jeff Sharkey0c686e72017-10-23 16:04:31 -0600103 "core/*",
Colin Cross4f8d9e62016-12-01 15:55:00 -0800104 "libs/*",
Colin Cross76de4f62017-05-15 18:10:40 -0700105 "media/*",
Colin Cross747e7c12017-10-24 16:21:22 -0700106 "proto",
Fabien Sanglard19160202017-01-12 14:24:31 -0500107 "tools/*",
Dan Albert2a8d9c22016-09-23 15:55:49 -0700108 "native/android",
Dan Albert7ce8df32016-09-23 16:43:49 -0700109 "native/graphics/jni",
Dan Albert2a8d9c22016-09-23 15:55:49 -0700110]
Svetoslav Ganov74c99832016-12-05 20:07:20 -0800111
112optional_subdirs = [
113 "core/tests/utiltests/jni",
114]
Steven Morelandeddafe92017-10-02 16:58:41 -0700115
116java_library {
117 name: "hwbinder",
118 no_framework_libs: true,
119
120 srcs: [
121 "core/java/android/os/HidlSupport.java",
122 "core/java/android/annotation/NonNull.java",
123 "core/java/android/os/HwBinder.java",
124 "core/java/android/os/HwBlob.java",
125 "core/java/android/os/HwParcel.java",
126 "core/java/android/os/IHwBinder.java",
127 "core/java/android/os/IHwInterface.java",
128 "core/java/android/os/DeadObjectException.java",
129 "core/java/android/os/DeadSystemException.java",
130 "core/java/android/os/RemoteException.java",
131 "core/java/android/util/AndroidException.java",
132 ],
133
134 dxflags: ["--core-library"],
135 installable: false,
136}
Nan Zhang2db709d2017-11-08 20:48:46 -0800137
138python_defaults {
139 name: "base_default",
140 version: {
141 py2: {
142 enabled: true,
143 embedded_launcher: true,
144 },
145 py3: {
146 enabled: false,
147 embedded_launcher: false,
148 },
149 },
150}
151
152python_binary_host {
153 name: "fontchain_linter",
154 defaults: ["base_default"],
155 main: "tools/fonts/fontchain_linter.py",
156 srcs: [
157 "tools/fonts/fontchain_linter.py",
158 ],
159 libs: [
160 "fontTools",
161 ],
162}