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 17# Provides pw::span in "pw_span/span.h". 18pw_add_library(pw_span INTERFACE 19 HEADERS 20 public/pw_span/span.h 21 public/pw_span/internal/span_impl.h 22 PUBLIC_INCLUDES 23 public 24 PUBLIC_DEPS 25 pw_assert 26 pw_polyfill._standard_library 27 PRIVATE_DEPS 28 pw_span.private_config 29) 30 31pw_add_library(pw_span.cast INTERFACE 32 HEADERS 33 public/pw_span/cast.h 34 PUBLIC_INCLUDES 35 public 36 PUBLIC_DEPS 37 pw_bytes.alignment 38 pw_span 39 PRIVATE_DEPS 40 pw_span.private_config 41) 42 43pw_add_library(pw_span.private_config INTERFACE 44 HEADERS 45 public/pw_span/internal/config.h 46 PUBLIC_INCLUDES 47 public 48 PUBLIC_DEPS 49 pw_assert 50) 51 52pw_add_test(pw_span.pw_span_test 53 SOURCES 54 span_test.cc 55 PRIVATE_DEPS 56 pw_polyfill 57 pw_span 58 GROUPS 59 modules 60 pw_span 61) 62 63pw_add_test(pw_span.cast_test 64 SOURCES 65 cast_test.cc 66 PRIVATE_DEPS 67 pw_span 68 pw_span.cast 69 GROUPS 70 modules 71 pw_span 72) 73