• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2020 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
17pw_add_library(pw_stream STATIC
18  HEADERS
19    public/pw_stream/memory_stream.h
20    public/pw_stream/null_stream.h
21    public/pw_stream/seek.h
22    public/pw_stream/stream.h
23  PUBLIC_INCLUDES
24    public
25  SOURCES
26    memory_stream.cc
27  PUBLIC_DEPS
28    pw_assert
29    pw_bytes
30    pw_polyfill
31    pw_result
32    pw_span
33    pw_status
34)
35if(Zephyr_FOUND AND CONFIG_PIGWEED_STREAM)
36  zephyr_link_libraries(pw_stream)
37endif()
38
39pw_add_library(pw_stream.socket_stream STATIC
40  HEADERS
41    public/pw_stream/socket_stream.h
42  PUBLIC_INCLUDES
43    public
44  PUBLIC_DEPS
45    pw_stream
46  SOURCES
47    socket_stream.cc
48  PRIVATE_DEPS
49    pw_log
50    pw_string
51)
52
53pw_add_library(pw_stream.sys_io_stream INTERFACE
54  HEADERS
55    public/pw_stream/sys_io_stream.h
56  PUBLIC_INCLUDES
57    public
58  PUBLIC_DEPS
59    pw_stream
60    pw_sys_io
61)
62
63pw_add_library(pw_stream.std_file_stream STATIC
64  HEADERS
65    public/pw_stream/std_file_stream.h
66  PUBLIC_INCLUDES
67    public
68  PUBLIC_DEPS
69    pw_stream
70  SOURCES
71    std_file_stream.cc
72)
73
74pw_add_library(pw_stream.interval_reader STATIC
75  HEADERS
76    public/pw_stream/interval_reader.h
77  PUBLIC_INCLUDES
78    public
79  PUBLIC_DEPS
80    pw_assert
81    pw_status
82    pw_stream
83  SOURCES
84    interval_reader.cc
85)
86
87pw_add_test(pw_stream.memory_stream_test
88  SOURCES
89    memory_stream_test.cc
90  PRIVATE_DEPS
91    pw_stream
92  GROUPS
93    modules
94    pw_stream
95)
96
97pw_add_test(pw_stream.null_stream_test
98  SOURCES
99    null_stream_test.cc
100  PRIVATE_DEPS
101    pw_stream
102  GROUPS
103    modules
104    pw_stream
105)
106
107pw_add_test(pw_stream.seek_test
108  SOURCES
109    seek_test.cc
110  PRIVATE_DEPS
111    pw_stream
112  GROUPS
113    modules
114    pw_stream
115)
116
117pw_add_test(pw_stream.stream_test
118  SOURCES
119    stream_test.cc
120  PRIVATE_DEPS
121    pw_stream
122  GROUPS
123    modules
124    pw_stream
125)
126
127pw_add_test(pw_stream.interval_reader_test
128  SOURCES
129    interval_reader_test.cc
130  PRIVATE_DEPS
131    pw_stream.interval_reader
132  GROUPS
133    modules
134    pw_stream
135)
136