xref: /aosp_15_r20/external/abseil-cpp/absl/status/CMakeLists.txt (revision 9356374a3709195abf420251b3e825997ff56c0f)
1#
2# Copyright 2020 The Abseil Authors.
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      https://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16absl_cc_library(
17  NAME
18    status
19  HDRS
20    "status.h"
21  SRCS
22    "internal/status_internal.h"
23    "internal/status_internal.cc"
24    "status.cc"
25    "status_payload_printer.h"
26    "status_payload_printer.cc"
27  COPTS
28    ${ABSL_DEFAULT_COPTS}
29  DEFINES
30    "$<$<PLATFORM_ID:AIX>:_LINUX_SOURCE_COMPAT>"
31  DEPS
32    absl::atomic_hook
33    absl::config
34    absl::cord
35    absl::core_headers
36    absl::function_ref
37    absl::inlined_vector
38    absl::memory
39    absl::no_destructor
40    absl::nullability
41    absl::optional
42    absl::raw_logging_internal
43    absl::span
44    absl::stacktrace
45    absl::strerror
46    absl::str_format
47    absl::strings
48    absl::symbolize
49  PUBLIC
50)
51
52absl_cc_test(
53  NAME
54    status_test
55  SRCS
56   "status_test.cc"
57  COPTS
58    ${ABSL_TEST_COPTS}
59  DEPS
60    absl::status
61    absl::str_format
62    absl::strings
63    GTest::gmock_main
64)
65
66absl_cc_library(
67  NAME
68    statusor
69  HDRS
70    "statusor.h"
71  SRCS
72    "statusor.cc"
73    "internal/statusor_internal.h"
74  COPTS
75    ${ABSL_DEFAULT_COPTS}
76  DEPS
77    absl::base
78    absl::config
79    absl::core_headers
80    absl::has_ostream_operator
81    absl::nullability
82    absl::raw_logging_internal
83    absl::status
84    absl::str_format
85    absl::strings
86    absl::type_traits
87    absl::utility
88    absl::variant
89  PUBLIC
90)
91
92absl_cc_test(
93  NAME
94    statusor_test
95  SRCS
96   "statusor_test.cc"
97  COPTS
98    ${ABSL_TEST_COPTS}
99  DEPS
100    absl::status
101    absl::status_matchers
102    absl::statusor
103    absl::strings
104    GTest::gmock_main
105)
106
107absl_cc_library(
108  NAME
109    status_matchers
110  HDRS
111    "status_matchers.h"
112  SRCS
113    "internal/status_matchers.h"
114    "internal/status_matchers.cc"
115  COPTS
116    ${ABSL_DEFAULT_COPTS}
117  LINKOPTS
118    ${ABSL_DEFAULT_LINKOPTS}
119  DEPS
120    absl::base
121    absl::status
122    absl::statusor
123    absl::strings
124    GTest::gmock
125    GTest::gtest
126  PUBLIC
127  TESTONLY
128)
129
130absl_cc_test(
131  NAME
132    status_matchers_test
133  SRCS
134   "status_matchers_test.cc"
135  COPTS
136    ${ABSL_TEST_COPTS}
137  DEPS
138    absl::status
139    absl::statusor
140    absl::status_matchers
141    GTest::gmock_main
142)
143