blob: d8027c1315ec6805776545400e0433dbe52e7f4a [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 Jinbdf58942017-11-14 17:58:19 -080068 "libs/incident/proto/android/privacy.proto",
Yi Jin04625ad2017-10-17 18:29:33 -070069 "tools/streaming_proto/stream.proto",
John Reck915883b2017-05-03 10:27:20 -070070 ],
Colin Crossaa0d4352017-05-02 14:14:56 -070071 shared: {
Colin Crossaa0d4352017-05-02 14:14:56 -070072 enabled: false,
73 },
74 },
75 },
Colin Crossaa0d4352017-05-02 14:14:56 -070076}
77
Yi Jin04625ad2017-10-17 18:29:33 -070078gensrcs {
79 name: "gen-platform-proto-constants",
80 depfile: true,
81
82 tools: [
83 "aprotoc",
84 "protoc-gen-cppstream",
85 ],
86
87 srcs: [
Yi Jin0eb22342017-11-06 17:17:27 -080088 "core/proto/android/os/cpufreq.proto",
Yi Jine2f7f792017-11-01 17:08:27 -070089 "core/proto/android/os/cpuinfo.proto",
Yi Jin04625ad2017-10-17 18:29:33 -070090 "core/proto/android/os/kernelwake.proto",
91 "core/proto/android/os/pagetypeinfo.proto",
92 "core/proto/android/os/procrank.proto",
Yi Jin0dfa7522017-11-06 17:43:47 -080093 "core/proto/android/os/system_properties.proto",
Yi Jin04625ad2017-10-17 18:29:33 -070094 ],
95
96 // Append protoc-gen-cppstream tool's PATH otherwise aprotoc can't find the plugin tool
97 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)",
98
99 output_extension = "proto.h",
100}
101
Dan Albert2a8d9c22016-09-23 15:55:49 -0700102subdirs = [
Yi Jin0a3406f2017-06-22 19:23:11 -0700103 "cmds/*",
Jeff Sharkey0c686e72017-10-23 16:04:31 -0600104 "core/*",
Colin Cross4f8d9e62016-12-01 15:55:00 -0800105 "libs/*",
Colin Cross76de4f62017-05-15 18:10:40 -0700106 "media/*",
Colin Cross747e7c12017-10-24 16:21:22 -0700107 "proto",
Fabien Sanglard19160202017-01-12 14:24:31 -0500108 "tools/*",
Dan Albert2a8d9c22016-09-23 15:55:49 -0700109 "native/android",
Dan Albert7ce8df32016-09-23 16:43:49 -0700110 "native/graphics/jni",
Dan Albert2a8d9c22016-09-23 15:55:49 -0700111]
Svetoslav Ganov74c99832016-12-05 20:07:20 -0800112
113optional_subdirs = [
114 "core/tests/utiltests/jni",
115]
Steven Morelandeddafe92017-10-02 16:58:41 -0700116
117java_library {
118 name: "hwbinder",
119 no_framework_libs: true,
120
121 srcs: [
122 "core/java/android/os/HidlSupport.java",
123 "core/java/android/annotation/NonNull.java",
124 "core/java/android/os/HwBinder.java",
125 "core/java/android/os/HwBlob.java",
126 "core/java/android/os/HwParcel.java",
127 "core/java/android/os/IHwBinder.java",
128 "core/java/android/os/IHwInterface.java",
129 "core/java/android/os/DeadObjectException.java",
130 "core/java/android/os/DeadSystemException.java",
131 "core/java/android/os/RemoteException.java",
132 "core/java/android/util/AndroidException.java",
133 ],
134
135 dxflags: ["--core-library"],
136 installable: false,
137}
Nan Zhang2db709d2017-11-08 20:48:46 -0800138
139python_defaults {
140 name: "base_default",
141 version: {
142 py2: {
143 enabled: true,
144 embedded_launcher: true,
145 },
146 py3: {
147 enabled: false,
148 embedded_launcher: false,
149 },
150 },
151}
152
153python_binary_host {
154 name: "fontchain_linter",
155 defaults: ["base_default"],
156 main: "tools/fonts/fontchain_linter.py",
157 srcs: [
158 "tools/fonts/fontchain_linter.py",
159 ],
160 libs: [
161 "fontTools",
162 ],
163}