xref: /aosp_15_r20/external/pigweed/pw_digital_io_linux/CMakeLists.txt (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
15include($ENV{PW_ROOT}/pw_build/pigweed.cmake)
16
17# This target provides the backend for pw::digital_io
18pw_add_library(pw_digital_io_linux INTERFACE
19  HEADERS
20    public/pw_digital_io_linux/digital_io.h
21    public/pw_digital_io_linux/internal/owned_fd.h
22  PUBLIC_INCLUDES
23    public
24  SOURCES
25    digital_io.cc
26  PUBLIC_DEPS
27    pw_digital_io
28    pw_status
29)
30
31# TODO(b/328262654): Move this to a more appropriate module.
32pw_add_library(pw_digital_io_linux.mock_vfs STATIC
33  HEADERS
34    mock_vfs.h
35  SOURCES
36    mock_vfs.cc
37  PRIVATE_DEPS
38    pw_log
39
40pw_add_test(pw_digital_io_linux.digital_io_test
41  SOURCES
42    digital_io_test.cc
43  PRIVATE_DEPS
44    pw_digital_io
45    pw_digital_io_linux.mock_vfs
46  GROUPS
47    modules
48    pw_digital_io_linux
49)
50