xref: /aosp_15_r20/external/pigweed/pw_bloat/BUILD.bazel (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1# Copyright 2019 The Pigweed Authors
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4# use this file except in compliance with the License. You may obtain a copy of
5# the License at
6#
7#     https://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations under
13# the License.
14
15load("//pw_build:compatibility.bzl", "incompatible_with_mcu")
16load("//pw_build:pw_cc_binary.bzl", "pw_cc_binary")
17
18package(default_visibility = ["//visibility:public"])
19
20licenses(["notice"])
21
22# Library which uses standard C/C++ functions such as memcpy to prevent them
23# from showing up within bloat diff reports.
24cc_library(
25    name = "bloat_this_binary",
26    srcs = ["bloat_this_binary.cc"],
27    hdrs = ["public/pw_bloat/bloat_this_binary.h"],
28    strip_include_prefix = "public",
29    target_compatible_with = incompatible_with_mcu(),
30    deps = [
31        "//pw_assert",
32        "//pw_log",
33    ],
34)
35
36# Standard minimal base binary for bloat reports.
37pw_cc_binary(
38    name = "bloat_base",
39    srcs = ["base_main.cc"],
40    target_compatible_with = incompatible_with_mcu(),
41    deps = [":bloat_this_binary"],
42)
43