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