| // Copyright (C) 2016 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| cc_defaults { |
| name: "hidl-gen-defaults", |
| cpp_std: "experimental", |
| cflags: [ |
| "-O0", |
| "-g", |
| "-Wall", |
| "-Werror", |
| ], |
| } |
| |
| // This configuration is inherited by all hidl-gen-generated modules. |
| cc_defaults { |
| name: "hidl-module-defaults", |
| cflags: [ |
| "-Wall", |
| "-Werror", |
| "-Wextra-semi", |
| ], |
| product_variables: { |
| debuggable: { |
| cflags: ["-D__ANDROID_DEBUGGABLE__"] |
| }, |
| }, |
| } |
| |
| // This configuration is inherited by all hidl-gen-java modules |
| java_defaults { |
| name: "hidl-java-module-defaults", |
| // TODO(b/68433855): allow HIDL java to build in the PDK |
| product_variables: { |
| pdk: { |
| enabled: false, |
| }, |
| }, |
| } |
| |
| // |
| // libhidl-gen-hash |
| // |
| cc_library { |
| name: "libhidl-gen-hash", |
| host_supported: true, |
| defaults: ["hidl-gen-defaults"], |
| srcs: ["Hash.cpp"], |
| local_include_dirs: ["include_hash/hidl-hash"], |
| export_include_dirs: ["include_hash"], |
| shared_libs: [ |
| "libbase", |
| "libcrypto", |
| "libssl", |
| ], |
| } |
| |
| // |
| // libhidl-gen |
| // |
| cc_library_host_shared { |
| name: "libhidl-gen", |
| defaults: ["hidl-gen-defaults"], |
| srcs: [ |
| "Annotation.cpp", |
| "ArrayType.cpp", |
| "CompoundType.cpp", |
| "ConstantExpression.cpp", |
| "DeathRecipientType.cpp", |
| "EnumType.cpp", |
| "HandleType.cpp", |
| "HidlTypeAssertion.cpp", |
| "Interface.cpp", |
| "Location.cpp", |
| "MemoryType.cpp", |
| "Method.cpp", |
| "NamedType.cpp", |
| "PointerType.cpp", |
| "FmqType.cpp", |
| "RefType.cpp", |
| "ScalarType.cpp", |
| "Scope.cpp", |
| "StringType.cpp", |
| "Type.cpp", |
| "TypeDef.cpp", |
| "VectorType.cpp", |
| ], |
| shared_libs: [ |
| "libbase", |
| "liblog", |
| "libhidl-gen-hash", |
| "libhidl-gen-utils", |
| ], |
| export_shared_lib_headers: [ |
| "libbase", |
| "libhidl-gen-utils", |
| ], |
| export_include_dirs: ["."], // for tests |
| } |
| |
| // |
| // libhidl-gen-ast |
| // |
| |
| cc_library_host_shared { |
| name: "libhidl-gen-ast", |
| defaults: ["hidl-gen-defaults"], |
| srcs: [ |
| "Coordinator.cpp", |
| "generateCpp.cpp", |
| "generateCppAdapter.cpp", |
| "generateCppImpl.cpp", |
| "generateJava.cpp", |
| "generateVts.cpp", |
| "hidl-gen_y.yy", |
| "hidl-gen_l.ll", |
| "AST.cpp", |
| ], |
| shared_libs: [ |
| "libbase", |
| "liblog", |
| "libhidl-gen", |
| "libhidl-gen-hash", |
| "libhidl-gen-utils", |
| ], |
| export_shared_lib_headers: [ |
| "libbase", |
| "libhidl-gen-utils", |
| ], |
| export_include_dirs: ["."], // for tests |
| } |
| |
| // |
| // hidl-gen |
| // |
| cc_binary_host { |
| name: "hidl-gen", |
| defaults: ["hidl-gen-defaults"], |
| srcs: ["main.cpp"], |
| shared_libs: [ |
| "libbase", |
| "liblog", |
| "libhidl-gen", |
| "libhidl-gen-ast", |
| "libhidl-gen-hash", |
| "libhidl-gen-utils", |
| ], |
| } |