| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | |
| // | |
| // Copyright 2021 Google LLC | |
| // | |
| // Licensed under the Apache License v2.0 with LLVM Exceptions (the | |
| // "License"); you may not use this file except in compliance with the | |
| // License. You may obtain a copy of the License at | |
| // | |
| // https://llvm.org/LICENSE.txt | |
| // | |
| // 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. | |
| // | |
| // Author: Giuliano Procida | |
| package { | |
| default_applicable_licenses: ["llvm_license"], | |
| } | |
| // http://go/android-license-faq | |
| license { | |
| name: "llvm_license", | |
| visibility: [":__subpackages__"], | |
| license_kinds: [ | |
| "SPDX-license-identifier-Apache-2.0", | |
| ], | |
| license_text: [ | |
| "LICENSE", | |
| ], | |
| } | |
| cc_defaults { | |
| name: "defaults", | |
| defaults: ["elfutils_transitive_defaults"], | |
| visibility: [ | |
| "//visibility:private", | |
| ], | |
| cpp_std: "c++20", | |
| cflags: [ | |
| "-fexceptions", | |
| "-Wno-error=unused-parameter", | |
| ], | |
| static_libs: [ | |
| "libbpf", | |
| "libdw", | |
| "libelf", | |
| "libicuuc", | |
| "libicuuc_stubdata", | |
| "libjemalloc5", | |
| "libprotobuf-cpp-full", | |
| "libxml2", | |
| ], | |
| compile_multilib: "64", | |
| target: { | |
| darwin: { | |
| enabled: false, | |
| }, | |
| }, | |
| // TODO(b/324274771): figure out a better solution | |
| native_coverage: false, | |
| } | |
| cc_library_host_static { | |
| name: "libstg", | |
| defaults: ["defaults"], | |
| srcs: [ | |
| "abigail_reader.cc", | |
| "btf_reader.cc", | |
| "comparison.cc", | |
| "deduplication.cc", | |
| "dwarf_processor.cc", | |
| "dwarf_wrappers.cc", | |
| "elf_dwarf_handle.cc", | |
| "elf_loader.cc", | |
| "elf_reader.cc", | |
| "fidelity.cc", | |
| "file_descriptor.cc", | |
| "filter.cc", | |
| "fingerprint.cc", | |
| "graph.cc", | |
| "input.cc", | |
| "naming.cc", | |
| "number.cc", | |
| "post_processing.cc", | |
| "proto_reader.cc", | |
| "proto_writer.cc", | |
| "reporting.cc", | |
| "runtime.cc", | |
| "stable_hash.cc", | |
| "stg.proto", | |
| "type_normalisation.cc", | |
| "type_resolution.cc", | |
| "unification.cc", | |
| ], | |
| proto: { | |
| export_proto_headers: true, | |
| }, | |
| } | |
| cc_binary_host { | |
| name: "stg", | |
| defaults: ["defaults"], | |
| srcs: [ | |
| "stg.cc", | |
| ], | |
| static_libs: ["libstg"], | |
| } | |
| cc_binary_host { | |
| name: "stgdiff", | |
| defaults: ["defaults"], | |
| srcs: [ | |
| "stgdiff.cc", | |
| ], | |
| static_libs: ["libstg"], | |
| } |