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_module_config(pw_status_CONFIG) 18 19pw_add_library(pw_status.config INTERFACE 20 HEADERS 21 public/pw_status/internal/config.h 22 PUBLIC_INCLUDES 23 public 24 PUBLIC_DEPS 25 ${pw_thread_CONFIG} 26) 27 28pw_add_library(pw_status STATIC 29 HEADERS 30 public/pw_status/status.h 31 public/pw_status/status_with_size.h 32 public/pw_status/try.h 33 PUBLIC_INCLUDES 34 public 35 PUBLIC_DEPS 36 pw_status.config 37 SOURCES 38 status.cc 39) 40 41# Use this for pw_status_CONFIG to require pw::Status objects to be used. 42pw_add_library(pw_status.check_if_used INTERFACE 43 PUBLIC_DEFINES 44 PW_STATUS_CFG_CHECK_IF_USED=1 45) 46 47pw_add_test(pw_status.status_test 48 SOURCES 49 status_test.cc 50 status_test_c.c 51 PRIVATE_DEPS 52 pw_status 53 GROUPS 54 modules 55 pw_status 56) 57 58pw_add_test(pw_status.status_with_size_test 59 SOURCES 60 status_with_size_test.cc 61 PRIVATE_DEPS 62 pw_status 63 GROUPS 64 modules 65 pw_status 66) 67 68pw_add_test(pw_status.try_test 69 SOURCES 70 try_test.cc 71 PRIVATE_DEPS 72 pw_status 73 GROUPS 74 modules 75 pw_status 76) 77