xref: /aosp_15_r20/external/pigweed/pw_digital_io_linux/Android.bp (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1// Copyright 2024 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
15package {
16    default_applicable_licenses: ["external_pigweed_license"],
17}
18
19cc_library_static {
20    name: "pw_digital_io_linux",
21    cpp_std: "c++20",
22    export_include_dirs: ["public"],
23    vendor_available: true,
24    defaults: [
25        "pw_android_common_backends",
26        "pw_thread",
27    ],
28    whole_static_libs: [
29        // pw_digital_io needs to use whole_static_libs to ensure symbols
30        // unused by pw_digital_io_linux are available for consumers to avoid
31        // link errors.
32        "pw_digital_io",
33        "pw_result",
34        "pw_status",
35    ],
36    export_static_lib_headers: [
37        "pw_digital_io",
38        "pw_result",
39        "pw_status",
40    ],
41    header_libs: [
42        "pw_log",
43        "pw_sync",
44    ],
45    export_header_lib_headers: [
46        "pw_sync",
47    ],
48    srcs: [
49        "digital_io.cc",
50        "notifier.cc",
51    ],
52}
53
54cc_binary {
55    name: "pw_digital_io_linux_cli",
56    cpp_std: "c++20",
57    vendor_available: true,
58    defaults: [
59        "pw_android_common_backends",
60    ],
61    srcs: [
62        "digital_io_cli.cc",
63    ],
64    static_libs: [
65        "pw_digital_io_linux",
66        "pw_status",
67    ],
68    whole_static_libs: [
69        // Force logs to stderr rather than logd.
70        // NOTE: Only use this on cc_binary() targets.
71        "pw_log_android_stderr",
72    ],
73}
74