blob: 5e3566fcee6c23a36bb2bbbb5ef449df9203fc05 [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",
Steven Moreland99231b02018-02-20 10:10:29 -080017 cpp_std: "experimental",
Steven Moreland3ee43c82017-08-04 11:03:02 -070018 cflags: [
Steven Moreland3ee43c82017-08-04 11:03:02 -070019 "-Wall",
20 "-Werror",
21 ],
Evgenii Stepanov0432ce82018-09-24 14:41:41 -070022 target: {
23 host: {
24 cflags: ["-O0", "-g"],
25 }
26 }
Steven Moreland3ee43c82017-08-04 11:03:02 -070027}
Steven Moreland60818632017-02-04 00:33:42 -080028
Steven Morelandf9cf33b2017-05-18 13:58:54 -070029// This configuration is inherited by all hidl-gen-generated modules.
Steven Moreland6a3cdff2017-05-18 16:14:38 -070030cc_defaults {
31 name: "hidl-module-defaults",
Steven Morelandfa5b4042017-06-19 16:44:36 +000032 cflags: [
33 "-Wall",
34 "-Werror",
Steven Morelandcbcf9f72017-11-20 10:04:15 -080035 "-Wextra-semi",
Steven Morelandfa5b4042017-06-19 16:44:36 +000036 ],
Chih-Hung Hsieha99f99e2018-12-18 14:34:52 -080037 tidy_checks: [
Steven Moreland005757b2018-12-26 16:56:03 -080038 // _hidl_cb and addOnewayTask are stuck because of the legacy ABI
Chih-Hung Hsieha99f99e2018-12-18 14:34:52 -080039 "-performance-unnecessary-value-param",
40 ],
Steven Moreland6a3cdff2017-05-18 16:14:38 -070041 product_variables: {
Steven Morelandf9cf33b2017-05-18 13:58:54 -070042 debuggable: {
43 cflags: ["-D__ANDROID_DEBUGGABLE__"]
44 },
Steven Morelandf9cf33b2017-05-18 13:58:54 -070045 },
Steven Moreland6a3cdff2017-05-18 16:14:38 -070046}
47
Steven Moreland887b84c2017-10-09 18:40:58 -070048// This configuration is inherited by all hidl-gen-java modules
49java_defaults {
50 name: "hidl-java-module-defaults",
Steven Morelandc6d03ae2017-10-28 16:05:57 -070051 // TODO(b/68433855): allow HIDL java to build in the PDK
52 product_variables: {
53 pdk: {
54 enabled: false,
55 },
56 },
Steven Moreland887b84c2017-10-09 18:40:58 -070057}
58
Steven Moreland5bdfa702017-04-18 23:20:39 -070059cc_library_host_shared {
Dan Willemsene4376b82016-09-26 13:58:25 -070060 name: "libhidl-gen",
Steven Moreland3ee43c82017-08-04 11:03:02 -070061 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -070062 srcs: [
63 "Annotation.cpp",
64 "ArrayType.cpp",
65 "CompoundType.cpp",
66 "ConstantExpression.cpp",
Martijn Coenen115d4282016-12-19 05:14:04 +010067 "DeathRecipientType.cpp",
Steven Moreland073269e2018-05-17 15:45:26 -070068 "DocComment.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070069 "EnumType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070070 "HandleType.cpp",
Andreas Huber6755e9d2017-04-06 11:09:07 -070071 "HidlTypeAssertion.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070072 "Interface.cpp",
Timur Iskhakov0e7c2a92017-09-06 11:40:59 -070073 "Location.cpp",
Martijn Coenen99e6beb2016-12-01 15:48:42 +010074 "MemoryType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070075 "Method.cpp",
76 "NamedType.cpp",
Martijn Coenen99e6beb2016-12-01 15:48:42 +010077 "PointerType.cpp",
Hridya Valsarajua32bde82016-12-27 11:47:46 -080078 "FmqType.cpp",
Yifan Hongbf459bc2016-08-23 16:50:37 -070079 "RefType.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -070080 "ScalarType.cpp",
81 "Scope.cpp",
82 "StringType.cpp",
83 "Type.cpp",
84 "TypeDef.cpp",
85 "VectorType.cpp",
86 ],
87 shared_libs: [
88 "libbase",
89 "liblog",
Steven Moreland5bdfa702017-04-18 23:20:39 -070090 "libhidl-gen-hash",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -070091 "libhidl-gen-host-utils",
Dan Willemsene4376b82016-09-26 13:58:25 -070092 "libhidl-gen-utils",
93 ],
Steven Moreland53b9bfb2017-09-20 14:15:30 -070094 export_shared_lib_headers: [
95 "libbase",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -070096 "libhidl-gen-host-utils",
Steven Moreland53b9bfb2017-09-20 14:15:30 -070097 "libhidl-gen-utils",
98 ],
99 export_include_dirs: ["."], // for tests
Dan Willemsene4376b82016-09-26 13:58:25 -0700100}
101
Dan Willemsene4376b82016-09-26 13:58:25 -0700102cc_library_host_shared {
103 name: "libhidl-gen-ast",
Steven Moreland3ee43c82017-08-04 11:03:02 -0700104 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700105 srcs: [
106 "Coordinator.cpp",
107 "generateCpp.cpp",
Steven Moreland9a6da7a2017-09-15 16:21:24 -0700108 "generateCppAdapter.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -0700109 "generateCppImpl.cpp",
Yifan Honge4010112018-10-05 11:44:15 -0700110 "generateDependencies.cpp",
Dan Willemsene4376b82016-09-26 13:58:25 -0700111 "generateJava.cpp",
112 "generateVts.cpp",
113 "hidl-gen_y.yy",
114 "hidl-gen_l.ll",
115 "AST.cpp",
116 ],
Dan Willemsene4376b82016-09-26 13:58:25 -0700117 shared_libs: [
118 "libbase",
119 "liblog",
120 "libhidl-gen",
Steven Moreland5bdfa702017-04-18 23:20:39 -0700121 "libhidl-gen-hash",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -0700122 "libhidl-gen-host-utils",
Dan Willemsene4376b82016-09-26 13:58:25 -0700123 "libhidl-gen-utils",
124 ],
Steven Moreland53b9bfb2017-09-20 14:15:30 -0700125 export_shared_lib_headers: [
126 "libbase",
127 "libhidl-gen-utils",
128 ],
129 export_include_dirs: ["."], // for tests
Dan Willemsene4376b82016-09-26 13:58:25 -0700130}
131
Dan Willemsene4376b82016-09-26 13:58:25 -0700132cc_binary_host {
133 name: "hidl-gen",
Steven Moreland3ee43c82017-08-04 11:03:02 -0700134 defaults: ["hidl-gen-defaults"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700135 srcs: ["main.cpp"],
Dan Willemsene4376b82016-09-26 13:58:25 -0700136 shared_libs: [
137 "libbase",
138 "liblog",
139 "libhidl-gen",
140 "libhidl-gen-ast",
Steven Moreland5bdfa702017-04-18 23:20:39 -0700141 "libhidl-gen-hash",
Yifan Hong9fd2f4a2018-07-17 12:27:51 -0700142 "libhidl-gen-host-utils",
Dan Willemsene4376b82016-09-26 13:58:25 -0700143 "libhidl-gen-utils",
144 ],
Dan Willemsene4376b82016-09-26 13:58:25 -0700145}