blob: 42301874ae60b2ad4d0ebddecd190cd3485d25ef [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: [
Steven Moreland3ee43c82017-08-04 11:03:02 -070018 "-Wall",
19 "-Werror",
Steven Moreland78ab7532019-01-10 13:04:23 -080020
21 // See also CompileToggles.h
Steven Moreland3ee43c82017-08-04 11:03:02 -070022 ],
Evgenii Stepanov0432ce82018-09-24 14:41:41 -070023 target: {
24 host: {
25 cflags: ["-O0", "-g"],
26 }
27 }
Steven Moreland3ee43c82017-08-04 11:03:02 -070028}
Steven Moreland60818632017-02-04 00:33:42 -080029
Steven Morelandf9cf33b2017-05-18 13:58:54 -070030// This configuration is inherited by all hidl-gen-generated modules.
Steven Moreland6a3cdff2017-05-18 16:14:38 -070031cc_defaults {
32 name: "hidl-module-defaults",
Steven Morelandfa5b4042017-06-19 16:44:36 +000033 cflags: [
34 "-Wall",
35 "-Werror",
Steven Morelandcbcf9f72017-11-20 10:04:15 -080036 "-Wextra-semi",
Steven Morelandfa5b4042017-06-19 16:44:36 +000037 ],
Chih-Hung Hsieha99f99e2018-12-18 14:34:52 -080038 tidy_checks: [
Steven Moreland005757b2018-12-26 16:56:03 -080039 // _hidl_cb and addOnewayTask are stuck because of the legacy ABI
Chih-Hung Hsieha99f99e2018-12-18 14:34:52 -080040 "-performance-unnecessary-value-param",
41 ],
Steven Moreland6a3cdff2017-05-18 16:14:38 -070042 product_variables: {
Steven Morelandf9cf33b2017-05-18 13:58:54 -070043 debuggable: {
44 cflags: ["-D__ANDROID_DEBUGGABLE__"]
45 },
Steven Morelandf9cf33b2017-05-18 13:58:54 -070046 },
Steven Moreland6a3cdff2017-05-18 16:14:38 -070047}
48
Steven Moreland887b84c2017-10-09 18:40:58 -070049// This configuration is inherited by all hidl-gen-java modules
50java_defaults {
51 name: "hidl-java-module-defaults",
Steven Morelandc6d03ae2017-10-28 16:05:57 -070052 // TODO(b/68433855): allow HIDL java to build in the PDK
53 product_variables: {
54 pdk: {
55 enabled: false,
56 },
57 },
Steven Moreland887b84c2017-10-09 18:40:58 -070058}
59
Steven Moreland5bdfa702017-04-18 23:20:39 -070060cc_library_host_shared {
Dan Willemsene4376b82016-09-26 13:58:25 -070061 name: "libhidl-gen",
Steven Moreland3ee43c82017-08-04 11:03:02 -070062 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -070063 srcs: [
64 "Annotation.cpp",
65 "ArrayType.cpp",
66 "CompoundType.cpp",
67 "ConstantExpression.cpp",
Martijn Coenen115d4282016-12-19 05:14:04 +010068 "DeathRecipientType.cpp",
Steven Moreland073269e2018-05-17 15:45:26 -070069 "DocComment.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070070 "EnumType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070071 "HandleType.cpp",
Andreas Huber6755e9d2017-04-06 11:09:07 -070072 "HidlTypeAssertion.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070073 "Interface.cpp",
Timur Iskhakov0e7c2a92017-09-06 11:40:59 -070074 "Location.cpp",
Martijn Coenen99e6beb2016-12-01 15:48:42 +010075 "MemoryType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070076 "Method.cpp",
77 "NamedType.cpp",
Martijn Coenen99e6beb2016-12-01 15:48:42 +010078 "PointerType.cpp",
Hridya Valsarajua32bde82016-12-27 11:47:46 -080079 "FmqType.cpp",
Yifan Hongbf459bc2016-08-23 16:50:37 -070080 "RefType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070081 "ScalarType.cpp",
82 "Scope.cpp",
83 "StringType.cpp",
84 "Type.cpp",
85 "TypeDef.cpp",
86 "VectorType.cpp",
87 ],
88 shared_libs: [
89 "libbase",
90 "liblog",
Steven Moreland5bdfa702017-04-18 23:20:39 -070091 "libhidl-gen-hash",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -070092 "libhidl-gen-host-utils",
Dan Willemsene4376b82016-09-26 13:58:25 -070093 "libhidl-gen-utils",
94 ],
Steven Moreland53b9bfb2017-09-20 14:15:30 -070095 export_shared_lib_headers: [
96 "libbase",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -070097 "libhidl-gen-host-utils",
Steven Moreland53b9bfb2017-09-20 14:15:30 -070098 "libhidl-gen-utils",
99 ],
100 export_include_dirs: ["."], // for tests
Dan Willemsene4376b82016-09-26 13:58:25 -0700101}
102
Dan Willemsene4376b82016-09-26 13:58:25 -0700103cc_library_host_shared {
104 name: "libhidl-gen-ast",
Steven Moreland3ee43c82017-08-04 11:03:02 -0700105 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700106 srcs: [
107 "Coordinator.cpp",
108 "generateCpp.cpp",
Steven Moreland9a6da7a2017-09-15 16:21:24 -0700109 "generateCppAdapter.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -0700110 "generateCppImpl.cpp",
Yifan Honge4010112018-10-05 11:44:15 -0700111 "generateDependencies.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -0700112 "generateJava.cpp",
113 "generateVts.cpp",
114 "hidl-gen_y.yy",
115 "hidl-gen_l.ll",
116 "AST.cpp",
117 ],
Dan Willemsene4376b82016-09-26 13:58:25 -0700118 shared_libs: [
119 "libbase",
120 "liblog",
121 "libhidl-gen",
Steven Moreland5bdfa702017-04-18 23:20:39 -0700122 "libhidl-gen-hash",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -0700123 "libhidl-gen-host-utils",
Dan Willemsene4376b82016-09-26 13:58:25 -0700124 "libhidl-gen-utils",
125 ],
Steven Moreland53b9bfb2017-09-20 14:15:30 -0700126 export_shared_lib_headers: [
127 "libbase",
128 "libhidl-gen-utils",
129 ],
130 export_include_dirs: ["."], // for tests
Dan Willemsene4376b82016-09-26 13:58:25 -0700131}
132
Dan Willemsene4376b82016-09-26 13:58:25 -0700133cc_binary_host {
134 name: "hidl-gen",
Steven Moreland3ee43c82017-08-04 11:03:02 -0700135 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700136 srcs: ["main.cpp"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700137 shared_libs: [
138 "libbase",
139 "liblog",
140 "libhidl-gen",
141 "libhidl-gen-ast",
Steven Moreland5bdfa702017-04-18 23:20:39 -0700142 "libhidl-gen-hash",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -0700143 "libhidl-gen-host-utils",
Dan Willemsene4376b82016-09-26 13:58:25 -0700144 "libhidl-gen-utils",
145 ],
Dan Willemsene4376b82016-09-26 13:58:25 -0700146}