blob: 1c7a4202368e1f0084b0568f903f95613f4d0ce0 [file] [log] [blame]
// Copyright (C) 2017 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.
subdirs = [
"test"
]
cc_defaults {
name: "libvintf-defaults",
cflags: [
"-Wall",
"-Werror",
],
}
cc_library_static {
name: "libvintf_common",
defaults: ["libvintf-defaults"],
host_supported: true,
srcs: [
"parse_string.cpp",
"parse_xml.cpp",
"CompatibilityMatrix.cpp",
"HalManifest.cpp",
"HalInterface.cpp",
"KernelConfigTypedValue.cpp",
"KernelConfigParser.cpp",
"RuntimeInfo.cpp",
"ManifestHal.cpp",
"MatrixHal.cpp",
"MatrixKernel.cpp",
"SystemSdk.cpp",
"TransportArch.cpp",
"VintfObject.cpp",
"XmlFile.cpp",
"utils-common.cpp",
],
shared_libs: [
"libbase",
"liblog",
"libselinux",
"libtinyxml2",
"libz",
],
export_include_dirs: ["include", "."],
local_include_dirs: ["include/vintf"],
target: {
host: {
srcs: [
"RuntimeInfo-host.cpp",
],
},
android: {
srcs: [
"RuntimeInfo-target.cpp",
],
cflags: ["-DLIBVINTF_TARGET"],
},
}
}
// libvintf_common + utils.cpp
cc_library {
name: "libvintf",
host_supported: true,
defaults: ["libvintf-defaults"],
shared_libs: [
"libbase",
"liblog",
"libselinux",
"libtinyxml2",
"libz",
],
export_include_dirs: ["include"],
local_include_dirs: ["include/vintf"],
srcs: [
"utils.cpp",
],
whole_static_libs: ["libvintf_common"],
}
cc_binary {
name: "vintf",
defaults: ["libvintf-defaults"],
shared_libs: [
"libbase",
"libvintf",
],
srcs: [
"main.cpp"
],
}
cc_binary_host {
name: "checkvintf",
defaults: ["libvintf-defaults"],
static_libs: [
"libvintf_common",
"libutils",
"libtinyxml2",
],
shared_libs: [
"libbase",
],
srcs: [
"check_vintf.cpp",
],
}
cc_library_static {
name: "libassemblevintf",
host_supported: true,
defaults: ["libvintf-defaults"],
shared_libs: [
"libvintf",
"libbase",
],
srcs: [
"AssembleVintf.cpp",
],
export_include_dirs: ["include-test"],
}
cc_binary_host {
name: "assemble_vintf",
defaults: ["libvintf-defaults"],
shared_libs: [
"libvintf",
"libbase",
],
static_libs: [
"libassemblevintf",
],
srcs: [
"assemble_vintf_main.cpp"
],
}