Since Cross-Version ABI Check is introduced, the flags could be different when diffing with previous or current dumps. The structure and format of the newly proposed config are changed so users can configure flags for different diff targets. This CL changes the config format from .ini to .json with the same features the format of the json is described in go/cross-version-abi-diff-configuration. Test: preform abi diff with config.json Bug: 239792343 Change-Id: I731bafbfdacd2a780c5f7a27997893cecb2eb1f3
214 lines
4.6 KiB
Plaintext
214 lines
4.6 KiB
Plaintext
//
|
|
// 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: ["Android-Apache-2.0"],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "header-checker-defaults",
|
|
|
|
defaults: [
|
|
"llvm-build-host-tools-defaults",
|
|
],
|
|
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
"-Wno-unused-parameter",
|
|
"-DGOOGLE_PROTOBUF_NO_RTTI",
|
|
"-UNDEBUG",
|
|
],
|
|
|
|
cppflags: [
|
|
"-fno-exceptions",
|
|
"-fno-rtti",
|
|
"-std=c++14",
|
|
],
|
|
|
|
target: {
|
|
windows: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
|
|
local_include_dirs: [
|
|
"src",
|
|
],
|
|
|
|
compile_multilib: "64",
|
|
stl: "none",
|
|
}
|
|
|
|
cc_binary_host {
|
|
name: "header-abi-dumper",
|
|
|
|
defaults: [
|
|
"header-checker-defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"src/dumper/abi_wrappers.cpp",
|
|
"src/dumper/ast_processing.cpp",
|
|
"src/dumper/fixed_argv.cpp",
|
|
"src/dumper/frontend_action.cpp",
|
|
"src/dumper/frontend_action_factory.cpp",
|
|
"src/dumper/header_checker.cpp",
|
|
],
|
|
|
|
static_libs: [
|
|
"libheader-checker",
|
|
"libheader-checker-proto",
|
|
"libjsoncpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libprotobuf-cpp-full",
|
|
"libclang-cpp_host",
|
|
"libc++_host",
|
|
],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "header-abi-linker-defaults",
|
|
|
|
defaults: ["header-checker-defaults"],
|
|
|
|
static_libs: [
|
|
"libheader-checker",
|
|
"libheader-checker-proto",
|
|
"libjsoncpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libprotobuf-cpp-full",
|
|
"libclang-cpp_host",
|
|
"libc++_host",
|
|
],
|
|
}
|
|
|
|
cc_binary_host {
|
|
name: "header-abi-linker",
|
|
|
|
defaults: [
|
|
"header-checker-defaults",
|
|
"header-abi-linker-defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"src/linker/header_abi_linker.cpp",
|
|
"src/linker/module_merger.cpp",
|
|
],
|
|
}
|
|
|
|
cc_binary_host {
|
|
name: "header-abi-diff",
|
|
|
|
defaults: [
|
|
"header-checker-defaults",
|
|
"header-abi-linker-defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"src/diff/abi_diff.cpp",
|
|
"src/diff/abi_diff_wrappers.cpp",
|
|
"src/diff/header_abi_diff.cpp",
|
|
],
|
|
|
|
static_libs: [
|
|
"libjsoncpp",
|
|
],
|
|
}
|
|
|
|
cc_library_host_static {
|
|
name: "libheader-checker",
|
|
|
|
defaults: [
|
|
"header-checker-defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"src/repr/abi_diff_helpers.cpp",
|
|
"src/repr/ir_diff_dumper.cpp",
|
|
"src/repr/ir_dumper.cpp",
|
|
"src/repr/ir_reader.cpp",
|
|
"src/repr/ir_representation.cpp",
|
|
"src/repr/json/converter.cpp",
|
|
"src/repr/json/ir_dumper.cpp",
|
|
"src/repr/json/ir_reader.cpp",
|
|
"src/repr/protobuf/converter.cpp",
|
|
"src/repr/protobuf/ir_diff_dumper.cpp",
|
|
"src/repr/protobuf/ir_dumper.cpp",
|
|
"src/repr/protobuf/ir_reader.cpp",
|
|
"src/repr/symbol/exported_symbol_set.cpp",
|
|
"src/repr/symbol/so_file_parser.cpp",
|
|
"src/repr/symbol/version_script_parser.cpp",
|
|
"src/utils/api_level.cpp",
|
|
"src/utils/command_line_utils.cpp",
|
|
"src/utils/config_file.cpp",
|
|
"src/utils/source_path_utils.cpp",
|
|
"src/utils/string_utils.cpp",
|
|
],
|
|
|
|
static_libs: [
|
|
"libheader-checker-proto",
|
|
"libjsoncpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libclang-cpp_host",
|
|
"libc++_host",
|
|
"libprotobuf-cpp-full",
|
|
],
|
|
|
|
cflags: [
|
|
"-Wcast-qual",
|
|
"-Wno-long-long",
|
|
"-Wno-unused-parameter",
|
|
],
|
|
}
|
|
|
|
cc_test_host {
|
|
name: "header-checker-unittests",
|
|
|
|
defaults: [
|
|
"header-checker-defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"src/repr/symbol/exported_symbol_set_test.cpp",
|
|
"src/repr/symbol/version_script_parser_test.cpp",
|
|
"src/utils/api_level_test.cpp",
|
|
"src/utils/config_file_test.cpp",
|
|
"src/utils/source_path_utils_test.cpp",
|
|
"src/utils/string_utils_test.cpp",
|
|
],
|
|
|
|
static_libs: [
|
|
"libgtest",
|
|
"libgtest_main",
|
|
"libheader-checker",
|
|
"libjsoncpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libclang-cpp_host",
|
|
"libc++_host",
|
|
],
|
|
|
|
test_suites: ["general-tests"],
|
|
}
|