blob: d1e9c5a2e67c5c319d77703fbc513a17308e9f3f [file] [log] [blame]
// 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",
],
}