// 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", 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", ], }