blob: d3acd419d37519a7795c7f751b935310d26c4d34 [file] [log] [blame]
Dan Willemsene4376b82016-09-26 13:58:25 -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
Steven Moreland3ee43c82017-08-04 11:03:02 -070015cc_defaults {
16 name: "hidl-gen-defaults",
17 cflags: [
18 "-O0",
19 "-g",
20 "-Wall",
21 "-Werror",
22 ],
23}
Steven Moreland60818632017-02-04 00:33:42 -080024
Steven Morelandf9cf33b2017-05-18 13:58:54 -070025// This configuration is inherited by all hidl-gen-generated modules.
Steven Moreland6a3cdff2017-05-18 16:14:38 -070026cc_defaults {
27 name: "hidl-module-defaults",
Steven Morelandfa5b4042017-06-19 16:44:36 +000028 cflags: [
29 "-Wall",
30 "-Werror",
Steven Morelandcbcf9f72017-11-20 10:04:15 -080031 "-Wextra-semi",
Steven Morelandfa5b4042017-06-19 16:44:36 +000032 ],
Steven Moreland6a3cdff2017-05-18 16:14:38 -070033 product_variables: {
Steven Morelandf9cf33b2017-05-18 13:58:54 -070034 debuggable: {
35 cflags: ["-D__ANDROID_DEBUGGABLE__"]
36 },
Steven Morelandf9cf33b2017-05-18 13:58:54 -070037 },
Steven Moreland6a3cdff2017-05-18 16:14:38 -070038}
39
Steven Moreland887b84c2017-10-09 18:40:58 -070040// This configuration is inherited by all hidl-gen-java modules
41java_defaults {
42 name: "hidl-java-module-defaults",
Steven Morelandc6d03ae2017-10-28 16:05:57 -070043 // TODO(b/68433855): allow HIDL java to build in the PDK
44 product_variables: {
45 pdk: {
46 enabled: false,
47 },
48 },
Steven Moreland887b84c2017-10-09 18:40:58 -070049}
50
Dan Willemsene4376b82016-09-26 13:58:25 -070051//
Steven Moreland5bdfa702017-04-18 23:20:39 -070052// libhidl-gen-hash
53//
Tri Vo7089aa42017-07-28 12:58:17 -070054cc_library {
Steven Moreland5bdfa702017-04-18 23:20:39 -070055 name: "libhidl-gen-hash",
Steven Moreland8cf3ac32017-04-20 15:00:25 -070056 host_supported: true,
Steven Moreland3ee43c82017-08-04 11:03:02 -070057 defaults: ["hidl-gen-defaults"],
Steven Moreland5bdfa702017-04-18 23:20:39 -070058 srcs: ["Hash.cpp"],
59 local_include_dirs: ["include_hash/hidl-hash"],
60 export_include_dirs: ["include_hash"],
61 shared_libs: [
62 "libbase",
63 "libcrypto",
64 "libssl",
65 ],
66}
67
68//
Dan Willemsene4376b82016-09-26 13:58:25 -070069// libhidl-gen
70//
Steven Moreland5bdfa702017-04-18 23:20:39 -070071cc_library_host_shared {
Dan Willemsene4376b82016-09-26 13:58:25 -070072 name: "libhidl-gen",
Steven Moreland3ee43c82017-08-04 11:03:02 -070073 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -070074 srcs: [
75 "Annotation.cpp",
76 "ArrayType.cpp",
77 "CompoundType.cpp",
78 "ConstantExpression.cpp",
Martijn Coenen115d4282016-12-19 05:14:04 +010079 "DeathRecipientType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070080 "EnumType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070081 "HandleType.cpp",
Andreas Huber6755e9d2017-04-06 11:09:07 -070082 "HidlTypeAssertion.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070083 "Interface.cpp",
Timur Iskhakov0e7c2a92017-09-06 11:40:59 -070084 "Location.cpp",
Martijn Coenen99e6beb2016-12-01 15:48:42 +010085 "MemoryType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070086 "Method.cpp",
87 "NamedType.cpp",
Martijn Coenen99e6beb2016-12-01 15:48:42 +010088 "PointerType.cpp",
Hridya Valsarajua32bde82016-12-27 11:47:46 -080089 "FmqType.cpp",
Yifan Hongbf459bc2016-08-23 16:50:37 -070090 "RefType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070091 "ScalarType.cpp",
92 "Scope.cpp",
93 "StringType.cpp",
94 "Type.cpp",
95 "TypeDef.cpp",
96 "VectorType.cpp",
97 ],
98 shared_libs: [
99 "libbase",
100 "liblog",
Steven Moreland5bdfa702017-04-18 23:20:39 -0700101 "libhidl-gen-hash",
Dan Willemsene4376b82016-09-26 13:58:25 -0700102 "libhidl-gen-utils",
103 ],
Steven Moreland53b9bfb2017-09-20 14:15:30 -0700104 export_shared_lib_headers: [
105 "libbase",
106 "libhidl-gen-utils",
107 ],
108 export_include_dirs: ["."], // for tests
Dan Willemsene4376b82016-09-26 13:58:25 -0700109}
110
111//
112// libhidl-gen-ast
113//
114
115cc_library_host_shared {
116 name: "libhidl-gen-ast",
Steven Moreland3ee43c82017-08-04 11:03:02 -0700117 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700118 srcs: [
119 "Coordinator.cpp",
120 "generateCpp.cpp",
Steven Moreland9a6da7a2017-09-15 16:21:24 -0700121 "generateCppAdapter.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -0700122 "generateCppImpl.cpp",
123 "generateJava.cpp",
124 "generateVts.cpp",
125 "hidl-gen_y.yy",
126 "hidl-gen_l.ll",
127 "AST.cpp",
128 ],
Dan Willemsene4376b82016-09-26 13:58:25 -0700129 shared_libs: [
130 "libbase",
131 "liblog",
132 "libhidl-gen",
Steven Moreland5bdfa702017-04-18 23:20:39 -0700133 "libhidl-gen-hash",
Dan Willemsene4376b82016-09-26 13:58:25 -0700134 "libhidl-gen-utils",
135 ],
Steven Moreland53b9bfb2017-09-20 14:15:30 -0700136 export_shared_lib_headers: [
137 "libbase",
138 "libhidl-gen-utils",
139 ],
140 export_include_dirs: ["."], // for tests
Dan Willemsene4376b82016-09-26 13:58:25 -0700141}
142
143//
144// hidl-gen
145//
146cc_binary_host {
147 name: "hidl-gen",
Steven Moreland3ee43c82017-08-04 11:03:02 -0700148 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700149 srcs: ["main.cpp"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700150 shared_libs: [
151 "libbase",
152 "liblog",
153 "libhidl-gen",
154 "libhidl-gen-ast",
Steven Moreland5bdfa702017-04-18 23:20:39 -0700155 "libhidl-gen-hash",
Dan Willemsene4376b82016-09-26 13:58:25 -0700156 "libhidl-gen-utils",
157 ],
Dan Willemsene4376b82016-09-26 13:58:25 -0700158}