xref: /aosp_15_r20/external/abseil-cpp/absl/numeric/CMakeLists.txt (revision 9356374a3709195abf420251b3e825997ff56c0f)
1#
2# Copyright 2017 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#
16
17absl_cc_library(
18  NAME
19    bits
20  HDRS
21    "bits.h"
22    "internal/bits.h"
23  COPTS
24    ${ABSL_DEFAULT_COPTS}
25  DEPS
26    absl::core_headers
27  PUBLIC
28)
29
30absl_cc_test(
31  NAME
32    bits_test
33  SRCS
34    "bits_test.cc"
35  COPTS
36    ${ABSL_TEST_COPTS}
37  DEPS
38    absl::bits
39    absl::core_headers
40    absl::random_random
41    GTest::gmock_main
42)
43
44absl_cc_library(
45  NAME
46    int128
47  HDRS
48    "int128.h"
49  SRCS
50    "int128.cc"
51    "int128_have_intrinsic.inc"
52    "int128_no_intrinsic.inc"
53  COPTS
54    ${ABSL_DEFAULT_COPTS}
55  DEPS
56    absl::compare
57    absl::config
58    absl::core_headers
59    absl::bits
60  PUBLIC
61)
62
63absl_cc_test(
64  NAME
65    int128_test
66  SRCS
67    "int128_stream_test.cc"
68    "int128_test.cc"
69  COPTS
70    ${ABSL_TEST_COPTS}
71  DEPS
72    absl::int128
73    absl::base
74    absl::compare
75    absl::hash_testing
76    absl::type_traits
77    absl::strings
78    GTest::gmock_main
79)
80
81# component target
82absl_cc_library(
83  NAME
84    numeric
85  COPTS
86    ${ABSL_DEFAULT_COPTS}
87  DEPS
88    absl::int128
89  PUBLIC
90)
91
92absl_cc_library(
93  NAME
94    numeric_representation
95  HDRS
96    "internal/representation.h"
97  COPTS
98    ${ABSL_DEFAULT_COPTS}
99  DEPS
100    absl::config
101  PUBLIC
102)
103