You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

182 lines
4.4 KiB

// 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.
package {
default_applicable_licenses: ["system_tools_hidl_license"],
}
// Added automatically by a large-scale-change
// See: http://go/android-license-faq
license {
name: "system_tools_hidl_license",
visibility: [":__subpackages__"],
license_kinds: [
"SPDX-license-identifier-Apache-2.0",
],
license_text: [
"NOTICE",
],
}
cc_defaults {
name: "hidl-gen-defaults",
cflags: [
"-Wall",
"-Werror",
],
target: {
host: {
cflags: [
"-O0",
"-g",
],
},
},
}
// This configuration is inherited by all hidl-gen-generated modules.
cc_defaults {
name: "hidl-module-defaults",
cflags: [
"-Wall",
"-Werror",
"-Wextra-semi",
],
tidy_checks: [
// _hidl_cb and addOnewayTask are stuck because of the legacy ABI
"-performance-unnecessary-value-param",
],
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,
},
},
}
cc_library_host_static {
name: "libhidl-gen",
defaults: ["hidl-gen-defaults"],
srcs: [
"Annotation.cpp",
"ArrayType.cpp",
"CompoundType.cpp",
"ConstantExpression.cpp",
"DeathRecipientType.cpp",
"DocComment.cpp",
"EnumType.cpp",
"FmqType.cpp",
"HandleType.cpp",
"HidlTypeAssertion.cpp",
"Interface.cpp",
"Location.cpp",
"MemoryType.cpp",
"Method.cpp",
"NamedType.cpp",
"PointerType.cpp",
"ScalarType.cpp",
"Scope.cpp",
"StringType.cpp",
"Type.cpp",
"TypeDef.cpp",
"VectorType.cpp",
],
header_libs: ["libhwbinder_headers"], // for constants
shared_libs: [
"libbase",
"liblog",
],
static_libs: [
"libcrypto",
"libhidl-gen-hash",
"libhidl-gen-host-utils",
"libhidl-gen-utils",
],
export_shared_lib_headers: ["libbase"],
export_static_lib_headers: [
"libhidl-gen-hash",
"libhidl-gen-host-utils",
"libhidl-gen-utils",
],
export_include_dirs: ["."], // for tests
}
cc_library_host_static {
name: "libhidl-gen-ast",
defaults: ["hidl-gen-defaults"],
srcs: [
"AST.cpp",
"Coordinator.cpp",
"generateCpp.cpp",
"generateCppAdapter.cpp",
"generateCppImpl.cpp",
"generateDependencies.cpp",
"generateFormattedHidl.cpp",
"generateInheritanceHierarchy.cpp",
"generateJava.cpp",
"generateJavaImpl.cpp",
"generateVts.cpp",
"hidl-gen_l.ll",
"hidl-gen_y.yy",
],
shared_libs: [
"libbase",
"libjsoncpp",
],
static_libs: [
"libcrypto",
"libhidl-gen",
"libhidl-gen-hash",
"libhidl-gen-host-utils",
"libhidl-gen-utils",
],
export_shared_lib_headers: ["libbase"],
export_static_lib_headers: [
"libhidl-gen-hash",
"libhidl-gen-utils",
],
export_include_dirs: ["."], // for tests
yacc: {
gen_location_hh: true,
gen_position_hh: true,
},
}
cc_binary_host {
name: "hidl-gen",
defaults: ["hidl-gen-defaults"],
srcs: ["main.cpp"],
static_libs: [
"libbase",
"libcrypto",
"libhidl-gen",
"libhidl-gen-ast",
"libhidl-gen-hash",
"libhidl-gen-host-utils",
"libhidl-gen-utils",
"libjsoncpp",
"liblog",
],
}