• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2023 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//build/ohos.gni")
15import("./configure_copts.gni")
16
17action("abseil_cpp_action") {
18  if (host_os == "mac") {
19    script = "//third_party/abseil-cpp/install_for_mac.sh"
20  } else {
21    script = "//third_party/abseil-cpp/install.sh"
22  }
23  inputs = [
24    "//third_party/abseil-cpp/abseil-cpp-20250127.0.tar.gz",
25  ]
26  outputs = [
27    "${target_gen_dir}/abseil-cpp",
28    "${target_gen_dir}/abseil-cpp/absl",
29    "${target_gen_dir}/abseil-cpp/ci",
30    "${target_gen_dir}/abseil-cpp/CMake",
31    "${target_gen_dir}/abseil-cpp/absl/base/internal/cycleclock.cc",
32    "${target_gen_dir}/abseil-cpp/absl/base/internal/low_level_alloc.cc",
33    "${target_gen_dir}/abseil-cpp/absl/base/internal/raw_logging.cc",
34    "${target_gen_dir}/abseil-cpp/absl/base/internal/spinlock.cc",
35    "${target_gen_dir}/abseil-cpp/absl/base/internal/strerror.cc",
36    "${target_gen_dir}/abseil-cpp/absl/base/internal/sysinfo.cc",
37    "${target_gen_dir}/abseil-cpp/absl/base/internal/thread_identity.cc",
38    "${target_gen_dir}/abseil-cpp/absl/base/internal/throw_delegate.cc",
39    "${target_gen_dir}/abseil-cpp/absl/base/internal/tracing.cc",
40    "${target_gen_dir}/abseil-cpp/absl/base/internal/unscaledcycleclock.cc",
41    "${target_gen_dir}/abseil-cpp/absl/base/internal/poison.cc",
42    "${target_gen_dir}/abseil-cpp/absl/base/internal/scoped_set_env.cc",
43    "${target_gen_dir}/abseil-cpp/absl/base/internal/spinlock_wait.cc",
44    "${target_gen_dir}/abseil-cpp/absl/base/log_severity.cc",
45    "${target_gen_dir}/abseil-cpp/absl/container/internal/hashtablez_sampler.cc",
46    "${target_gen_dir}/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc",
47    "${target_gen_dir}/abseil-cpp/absl/container/internal/raw_hash_set.cc",
48    "${target_gen_dir}/abseil-cpp/absl/crc/crc32c.cc",
49    "${target_gen_dir}/abseil-cpp/absl/crc/internal/cpu_detect.cc",
50    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc.cc",
51    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc_cord_state.cc",
52    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc",
53    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc",
54    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc",
55    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc",
56    "${target_gen_dir}/abseil-cpp/absl/debugging/failure_signal_handler.cc",
57    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/address_is_readable.cc",
58    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc",
59    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/demangle.cc",
60    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/demangle_rust.cc",
61    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/elf_mem_image.cc",
62    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/examine_stack.cc",
63    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stack_consumption.cc",
64    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/utf8_for_code_point.cc",
65    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/vdso_support.cc",
66    "${target_gen_dir}/abseil-cpp/absl/debugging/leak_check.cc",
67    "${target_gen_dir}/abseil-cpp/absl/debugging/stacktrace.cc",
68    "${target_gen_dir}/abseil-cpp/absl/debugging/symbolize.cc",
69    "${target_gen_dir}/abseil-cpp/absl/hash/internal/city.cc",
70    "${target_gen_dir}/abseil-cpp/absl/hash/internal/hash.cc",
71    "${target_gen_dir}/abseil-cpp/absl/hash/internal/low_level_hash.cc",
72    "${target_gen_dir}/abseil-cpp/absl/log/die_if_null.cc",
73    "${target_gen_dir}/abseil-cpp/absl/log/globals.cc",
74    "${target_gen_dir}/abseil-cpp/absl/log/initialize.cc",
75    "${target_gen_dir}/abseil-cpp/absl/log/internal/check_op.cc",
76    "${target_gen_dir}/abseil-cpp/absl/log/internal/conditions.cc",
77    "${target_gen_dir}/abseil-cpp/absl/log/internal/fnmatch.cc",
78    "${target_gen_dir}/abseil-cpp/absl/log/internal/globals.cc",
79    "${target_gen_dir}/abseil-cpp/absl/log/internal/log_format.cc",
80    "${target_gen_dir}/abseil-cpp/absl/log/internal/log_message.cc",
81    "${target_gen_dir}/abseil-cpp/absl/log/internal/log_sink_set.cc",
82    "${target_gen_dir}/abseil-cpp/absl/log/internal/nullguard.cc",
83    "${target_gen_dir}/abseil-cpp/absl/log/internal/proto.cc",
84    "${target_gen_dir}/abseil-cpp/absl/log/internal/structured_proto.cc",
85    "${target_gen_dir}/abseil-cpp/absl/log/internal/vlog_config.cc",
86    "${target_gen_dir}/abseil-cpp/absl/log/log_entry.cc",
87    "${target_gen_dir}/abseil-cpp/absl/log/log_sink.cc",
88    "${target_gen_dir}/abseil-cpp/absl/numeric/int128.cc",
89    "${target_gen_dir}/abseil-cpp/absl/profiling/internal/exponential_biased.cc",
90    "${target_gen_dir}/abseil-cpp/absl/profiling/internal/periodic_sampler.cc",
91    "${target_gen_dir}/abseil-cpp/absl/random/discrete_distribution.cc",
92    "${target_gen_dir}/abseil-cpp/absl/random/gaussian_distribution.cc",
93    "${target_gen_dir}/abseil-cpp/absl/random/internal/pool_urbg.cc",
94    "${target_gen_dir}/abseil-cpp/absl/random/internal/randen.cc",
95    "${target_gen_dir}/abseil-cpp/absl/random/internal/randen_detect.cc",
96    "${target_gen_dir}/abseil-cpp/absl/random/internal/randen_hwaes.cc",
97    "${target_gen_dir}/abseil-cpp/absl/random/internal/randen_round_keys.cc",
98    "${target_gen_dir}/abseil-cpp/absl/random/internal/randen_slow.cc",
99    "${target_gen_dir}/abseil-cpp/absl/random/internal/seed_material.cc",
100    "${target_gen_dir}/abseil-cpp/absl/random/seed_gen_exception.cc",
101    "${target_gen_dir}/abseil-cpp/absl/random/seed_sequences.cc",
102    "${target_gen_dir}/abseil-cpp/absl/status/internal/status_internal.cc",
103    "${target_gen_dir}/abseil-cpp/absl/status/status.cc",
104    "${target_gen_dir}/abseil-cpp/absl/status/status_payload_printer.cc",
105    "${target_gen_dir}/abseil-cpp/absl/status/statusor.cc",
106    "${target_gen_dir}/abseil-cpp/absl/strings/ascii.cc",
107    "${target_gen_dir}/abseil-cpp/absl/strings/charconv.cc",
108    "${target_gen_dir}/abseil-cpp/absl/strings/cord.cc",
109    "${target_gen_dir}/abseil-cpp/absl/strings/cord_analysis.cc",
110    "${target_gen_dir}/abseil-cpp/absl/strings/cord_buffer.cc",
111    "${target_gen_dir}/abseil-cpp/absl/strings/escaping.cc",
112    "${target_gen_dir}/abseil-cpp/absl/strings/internal/charconv_bigint.cc",
113    "${target_gen_dir}/abseil-cpp/absl/strings/internal/charconv_parse.cc",
114    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cord_internal.cc",
115    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cord_rep_btree.cc",
116    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc",
117    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc",
118    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cord_rep_consume.cc",
119    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cord_rep_crc.cc",
120    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cordz_functions.cc",
121    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cordz_handle.cc",
122    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cordz_info.cc",
123    "${target_gen_dir}/abseil-cpp/absl/strings/internal/cordz_sample_token.cc",
124    "${target_gen_dir}/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc",
125    "${target_gen_dir}/abseil-cpp/absl/strings/internal/escaping.cc",
126    "${target_gen_dir}/abseil-cpp/absl/strings/internal/memutil.cc",
127    "${target_gen_dir}/abseil-cpp/absl/strings/internal/ostringstream.cc",
128    "${target_gen_dir}/abseil-cpp/absl/strings/internal/pow10_helper.cc",
129    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_format/arg.cc",
130    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_format/bind.cc",
131    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_format/extension.cc",
132    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc",
133    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_format/output.cc",
134    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_format/parser.cc",
135    "${target_gen_dir}/abseil-cpp/absl/strings/internal/stringify_sink.cc",
136    "${target_gen_dir}/abseil-cpp/absl/strings/internal/utf8.cc",
137    "${target_gen_dir}/abseil-cpp/absl/strings/match.cc",
138    "${target_gen_dir}/abseil-cpp/absl/strings/numbers.cc",
139    "${target_gen_dir}/abseil-cpp/absl/strings/str_cat.cc",
140    "${target_gen_dir}/abseil-cpp/absl/strings/str_replace.cc",
141    "${target_gen_dir}/abseil-cpp/absl/strings/str_split.cc",
142    "${target_gen_dir}/abseil-cpp/absl/strings/string_view.cc",
143    "${target_gen_dir}/abseil-cpp/absl/strings/substitute.cc",
144    "${target_gen_dir}/abseil-cpp/absl/synchronization/barrier.cc",
145    "${target_gen_dir}/abseil-cpp/absl/synchronization/blocking_counter.cc",
146    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc",
147    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/futex_waiter.cc",
148    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/graphcycles.cc",
149    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/kernel_timeout.cc",
150    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc",
151    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/pthread_waiter.cc",
152    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/sem_waiter.cc",
153    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.cc",
154    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/waiter_base.cc",
155    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/win32_waiter.cc",
156    "${target_gen_dir}/abseil-cpp/absl/synchronization/mutex.cc",
157    "${target_gen_dir}/abseil-cpp/absl/synchronization/notification.cc",
158    "${target_gen_dir}/abseil-cpp/absl/time/civil_time.cc",
159    "${target_gen_dir}/abseil-cpp/absl/time/clock.cc",
160    "${target_gen_dir}/abseil-cpp/absl/time/duration.cc",
161    "${target_gen_dir}/abseil-cpp/absl/time/format.cc",
162    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/civil_time_detail.cc",
163    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc",
164    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc",
165    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc",
166    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc",
167    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc",
168    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc",
169    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc",
170    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.cc",
171    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc",
172    "${target_gen_dir}/abseil-cpp/absl/time/time.cc",
173    "${target_gen_dir}/abseil-cpp/absl/types/bad_any_cast.cc",
174    "${target_gen_dir}/abseil-cpp/absl/types/bad_optional_access.cc",
175    "${target_gen_dir}/abseil-cpp/absl/types/bad_variant_access.cc",
176    "${target_gen_dir}/abseil-cpp/absl/log/absl_check.h",
177    "${target_gen_dir}/abseil-cpp/absl/log/internal/nullguard.h",
178    "${target_gen_dir}/abseil-cpp/absl/base/internal/spinlock_akaros.inc",
179    "${target_gen_dir}/abseil-cpp/absl/base/internal/spinlock_linux.inc",
180    "${target_gen_dir}/abseil-cpp/absl/base/internal/spinlock_posix.inc",
181    "${target_gen_dir}/abseil-cpp/absl/base/internal/spinlock_win32.inc",
182    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/address_is_readable.h",
183    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/examine_stack.h",
184    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc",
185    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc",
186    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_config.h",
187    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc",
188    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc",
189    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc",
190    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc",
191    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc",
192    "${target_gen_dir}/abseil-cpp/absl/debugging/stacktrace.h",
193    "${target_gen_dir}/abseil-cpp/absl/debugging/internal/symbolize.h",
194    "${target_gen_dir}/abseil-cpp/absl/debugging/symbolize.h",
195    "${target_gen_dir}/abseil-cpp/absl/debugging/symbolize_darwin.inc",
196    "${target_gen_dir}/abseil-cpp/absl/debugging/symbolize_elf.inc",
197    "${target_gen_dir}/abseil-cpp/absl/debugging/symbolize_unimplemented.inc",
198    "${target_gen_dir}/abseil-cpp/absl/debugging/symbolize_win32.inc",
199    "${target_gen_dir}/abseil-cpp/absl/hash/internal/city.h",
200    "${target_gen_dir}/abseil-cpp/absl/hash/internal/hash.h",
201    "${target_gen_dir}/abseil-cpp/absl/hash/internal/low_level_hash.h",
202    "${target_gen_dir}/abseil-cpp/absl/hash/internal/print_hash_of.cc",
203    "${target_gen_dir}/abseil-cpp/absl/hash/internal/spy_hash_state.h",
204    "${target_gen_dir}/abseil-cpp/absl/numeric/int128_have_intrinsic.inc",
205    "${target_gen_dir}/abseil-cpp/absl/numeric/int128_no_intrinsic.inc",
206    "${target_gen_dir}/abseil-cpp/absl/strings/internal/charconv_bigint.h",
207    "${target_gen_dir}/abseil-cpp/absl/strings/internal/charconv_parse.h",
208    "${target_gen_dir}/abseil-cpp/absl/strings/internal/memutil.h",
209    "${target_gen_dir}/abseil-cpp/absl/strings/internal/stl_type_traits.h",
210    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_join_internal.h",
211    "${target_gen_dir}/abseil-cpp/absl/strings/internal/str_split_internal.h",
212    "${target_gen_dir}/abseil-cpp/absl/strings/str_cat.h",
213    "${target_gen_dir}/abseil-cpp/absl/crc/crc32c.h",
214    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc32c.h",
215    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc32c_inline.h",
216    "${target_gen_dir}/abseil-cpp/absl/crc/internal/crc_memcpy.h",
217    "${target_gen_dir}/abseil-cpp/absl/synchronization/barrier.h",
218    "${target_gen_dir}/abseil-cpp/absl/synchronization/blocking_counter.h",
219    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/create_thread_identity.h",
220    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/futex.h",
221    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/futex_waiter.h",
222    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/graphcycles.h",
223    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/kernel_timeout.h",
224    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/per_thread_sem.h",
225    "${target_gen_dir}/abseil-cpp/absl/synchronization/internal/waiter_base.h",
226    "${target_gen_dir}/abseil-cpp/absl/synchronization/mutex.h",
227    "${target_gen_dir}/abseil-cpp/absl/synchronization/notification.h",
228    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.h",
229    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h",
230    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h",
231    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h",
232    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h",
233    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h",
234    "${target_gen_dir}/abseil-cpp/absl/time/internal/cctz/src/tzfile.h",
235    "${target_gen_dir}/abseil-cpp/absl/time/internal/get_current_time_chrono.inc",
236    "${target_gen_dir}/abseil-cpp/absl/time/internal/get_current_time_posix.inc",
237    "${target_gen_dir}/abseil-cpp/absl/flags/commandlineflag.cc",
238    "${target_gen_dir}/abseil-cpp/absl/flags/commandlineflag.h",
239    "${target_gen_dir}/abseil-cpp/absl/flags/internal/commandlineflag.cc",
240    "${target_gen_dir}/abseil-cpp/absl/flags/internal/commandlineflag.h",
241    "${target_gen_dir}/abseil-cpp/absl/flags/internal/flag.cc",
242    "${target_gen_dir}/abseil-cpp/absl/flags/internal/flag.h",
243    "${target_gen_dir}/abseil-cpp/absl/flags/internal/private_handle_accessor.cc",
244    "${target_gen_dir}/abseil-cpp/absl/flags/internal/private_handle_accessor.h",
245    "${target_gen_dir}/abseil-cpp/absl/flags/internal/program_name.cc",
246    "${target_gen_dir}/abseil-cpp/absl/flags/internal/program_name.h",
247    "${target_gen_dir}/abseil-cpp/absl/flags/marshalling.cc",
248    "${target_gen_dir}/abseil-cpp/absl/flags/marshalling.h",
249    "${target_gen_dir}/abseil-cpp/absl/flags/reflection.cc",
250    "${target_gen_dir}/abseil-cpp/absl/flags/reflection.h",
251    "${target_gen_dir}/abseil-cpp/absl/flags/usage_config.cc",
252    "${target_gen_dir}/abseil-cpp/absl/flags/usage_config.h",
253    "${target_gen_dir}/abseil-cpp/absl/random/internal/randen.h",
254    "${target_gen_dir}/abseil-cpp/absl/random/internal/randen_slow.h",
255  ]
256  abseil_cpp_src_path = rebase_path("//third_party/abseil-cpp")
257  abseil_cpp_gen_path = rebase_path("${target_gen_dir}", root_build_dir)
258  args = ["$abseil_cpp_gen_path", "$abseil_cpp_src_path"]
259}
260
261ABSEIL_DIR = rebase_path("${target_gen_dir}/abseil-cpp")
262
263config("absl_public_config") {
264  include_dirs = [ "${ABSEIL_DIR}/" ]
265}
266
267ohos_shared_library("absl_base") {
268  sources = [
269    "${ABSEIL_DIR}/absl/base/internal/cycleclock.cc",
270    "${ABSEIL_DIR}/absl/base/internal/low_level_alloc.cc",
271    "${ABSEIL_DIR}/absl/base/internal/raw_logging.cc",
272    "${ABSEIL_DIR}/absl/base/internal/spinlock.cc",
273    "${ABSEIL_DIR}/absl/base/internal/strerror.cc",
274    "${ABSEIL_DIR}/absl/base/internal/sysinfo.cc",
275    "${ABSEIL_DIR}/absl/base/internal/thread_identity.cc",
276    "${ABSEIL_DIR}/absl/base/internal/throw_delegate.cc",
277    "${ABSEIL_DIR}/absl/base/internal/tracing.cc",
278    "${ABSEIL_DIR}/absl/base/internal/unscaledcycleclock.cc",
279  ]
280
281  include_dirs = [ "${ABSEIL_DIR}/" ]
282
283  cflags = ABSL_DEFAULT_COPTS
284  public_configs = [ ":absl_public_config" ]
285  deps = [
286    ":absl_log_severity",
287    ":absl_raw_logging_internal",
288    ":absl_spinlock_wait",
289    ":abseil_cpp_action",
290  ]
291  install_enable = true
292  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
293  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
294}
295
296ohos_static_library("absl_base_static") {
297  sources = [
298    "${ABSEIL_DIR}/absl/base/internal/cycleclock.cc",
299    "${ABSEIL_DIR}/absl/base/internal/low_level_alloc.cc",
300    "${ABSEIL_DIR}/absl/base/internal/poison.cc",
301    "${ABSEIL_DIR}/absl/base/internal/raw_logging.cc",
302    "${ABSEIL_DIR}/absl/base/internal/scoped_set_env.cc",
303    "${ABSEIL_DIR}/absl/base/internal/spinlock.cc",
304    "${ABSEIL_DIR}/absl/base/internal/spinlock_wait.cc",
305    "${ABSEIL_DIR}/absl/base/internal/strerror.cc",
306    "${ABSEIL_DIR}/absl/base/internal/sysinfo.cc",
307    "${ABSEIL_DIR}/absl/base/internal/thread_identity.cc",
308    "${ABSEIL_DIR}/absl/base/internal/throw_delegate.cc",
309    "${ABSEIL_DIR}/absl/base/internal/tracing.cc",
310    "${ABSEIL_DIR}/absl/base/internal/unscaledcycleclock.cc",
311    "${ABSEIL_DIR}/absl/base/log_severity.cc",
312    "${ABSEIL_DIR}/absl/container/internal/hashtablez_sampler.cc",
313    "${ABSEIL_DIR}/absl/container/internal/hashtablez_sampler_force_weak_definition.cc",
314    "${ABSEIL_DIR}/absl/container/internal/raw_hash_set.cc",
315    "${ABSEIL_DIR}/absl/crc/crc32c.cc",
316    "${ABSEIL_DIR}/absl/crc/internal/cpu_detect.cc",
317    "${ABSEIL_DIR}/absl/crc/internal/crc.cc",
318    "${ABSEIL_DIR}/absl/crc/internal/crc_cord_state.cc",
319    "${ABSEIL_DIR}/absl/crc/internal/crc_memcpy_fallback.cc",
320    "${ABSEIL_DIR}/absl/crc/internal/crc_memcpy_x86_arm_combined.cc",
321    "${ABSEIL_DIR}/absl/crc/internal/crc_non_temporal_memcpy.cc",
322    "${ABSEIL_DIR}/absl/crc/internal/crc_x86_arm_combined.cc",
323    "${ABSEIL_DIR}/absl/debugging/failure_signal_handler.cc",
324    "${ABSEIL_DIR}/absl/debugging/internal/address_is_readable.cc",
325    "${ABSEIL_DIR}/absl/debugging/internal/decode_rust_punycode.cc",
326    "${ABSEIL_DIR}/absl/debugging/internal/demangle.cc",
327    "${ABSEIL_DIR}/absl/debugging/internal/demangle_rust.cc",
328    "${ABSEIL_DIR}/absl/debugging/internal/elf_mem_image.cc",
329    "${ABSEIL_DIR}/absl/debugging/internal/examine_stack.cc",
330    "${ABSEIL_DIR}/absl/debugging/internal/stack_consumption.cc",
331    "${ABSEIL_DIR}/absl/debugging/internal/utf8_for_code_point.cc",
332    "${ABSEIL_DIR}/absl/debugging/internal/vdso_support.cc",
333    "${ABSEIL_DIR}/absl/debugging/leak_check.cc",
334    "${ABSEIL_DIR}/absl/debugging/stacktrace.cc",
335    "${ABSEIL_DIR}/absl/debugging/symbolize.cc",
336    "${ABSEIL_DIR}/absl/hash/internal/city.cc",
337    "${ABSEIL_DIR}/absl/hash/internal/hash.cc",
338    "${ABSEIL_DIR}/absl/hash/internal/low_level_hash.cc",
339    "${ABSEIL_DIR}/absl/log/die_if_null.cc",
340    "${ABSEIL_DIR}/absl/log/globals.cc",
341    "${ABSEIL_DIR}/absl/log/initialize.cc",
342    "${ABSEIL_DIR}/absl/log/internal/check_op.cc",
343    "${ABSEIL_DIR}/absl/log/internal/conditions.cc",
344    "${ABSEIL_DIR}/absl/log/internal/fnmatch.cc",
345    "${ABSEIL_DIR}/absl/log/internal/globals.cc",
346    "${ABSEIL_DIR}/absl/log/internal/log_format.cc",
347    "${ABSEIL_DIR}/absl/log/internal/log_message.cc",
348    "${ABSEIL_DIR}/absl/log/internal/log_sink_set.cc",
349    "${ABSEIL_DIR}/absl/log/internal/nullguard.cc",
350    "${ABSEIL_DIR}/absl/log/internal/proto.cc",
351    "${ABSEIL_DIR}/absl/log/internal/structured_proto.cc",
352    "${ABSEIL_DIR}/absl/log/internal/vlog_config.cc",
353    "${ABSEIL_DIR}/absl/log/log_entry.cc",
354    "${ABSEIL_DIR}/absl/log/log_sink.cc",
355    "${ABSEIL_DIR}/absl/numeric/int128.cc",
356    "${ABSEIL_DIR}/absl/profiling/internal/exponential_biased.cc",
357    "${ABSEIL_DIR}/absl/profiling/internal/periodic_sampler.cc",
358    "${ABSEIL_DIR}/absl/random/discrete_distribution.cc",
359    "${ABSEIL_DIR}/absl/random/gaussian_distribution.cc",
360    "${ABSEIL_DIR}/absl/random/internal/pool_urbg.cc",
361    "${ABSEIL_DIR}/absl/random/internal/randen.cc",
362    "${ABSEIL_DIR}/absl/random/internal/randen_detect.cc",
363    "${ABSEIL_DIR}/absl/random/internal/randen_hwaes.cc",
364    "${ABSEIL_DIR}/absl/random/internal/randen_round_keys.cc",
365    "${ABSEIL_DIR}/absl/random/internal/randen_slow.cc",
366    "${ABSEIL_DIR}/absl/random/internal/seed_material.cc",
367    "${ABSEIL_DIR}/absl/random/seed_gen_exception.cc",
368    "${ABSEIL_DIR}/absl/random/seed_sequences.cc",
369    "${ABSEIL_DIR}/absl/status/internal/status_internal.cc",
370    "${ABSEIL_DIR}/absl/status/status.cc",
371    "${ABSEIL_DIR}/absl/status/status_payload_printer.cc",
372    "${ABSEIL_DIR}/absl/status/statusor.cc",
373    "${ABSEIL_DIR}/absl/strings/ascii.cc",
374    "${ABSEIL_DIR}/absl/strings/charconv.cc",
375    "${ABSEIL_DIR}/absl/strings/cord.cc",
376    "${ABSEIL_DIR}/absl/strings/cord_analysis.cc",
377    "${ABSEIL_DIR}/absl/strings/cord_buffer.cc",
378    "${ABSEIL_DIR}/absl/strings/escaping.cc",
379    "${ABSEIL_DIR}/absl/strings/internal/charconv_bigint.cc",
380    "${ABSEIL_DIR}/absl/strings/internal/charconv_parse.cc",
381    "${ABSEIL_DIR}/absl/strings/internal/cord_internal.cc",
382    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_btree.cc",
383    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_btree_navigator.cc",
384    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_btree_reader.cc",
385    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_consume.cc",
386    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_crc.cc",
387    "${ABSEIL_DIR}/absl/strings/internal/cordz_functions.cc",
388    "${ABSEIL_DIR}/absl/strings/internal/cordz_handle.cc",
389    "${ABSEIL_DIR}/absl/strings/internal/cordz_info.cc",
390    "${ABSEIL_DIR}/absl/strings/internal/cordz_sample_token.cc",
391    "${ABSEIL_DIR}/absl/strings/internal/damerau_levenshtein_distance.cc",
392    "${ABSEIL_DIR}/absl/strings/internal/escaping.cc",
393    "${ABSEIL_DIR}/absl/strings/internal/memutil.cc",
394    "${ABSEIL_DIR}/absl/strings/internal/ostringstream.cc",
395    "${ABSEIL_DIR}/absl/strings/internal/pow10_helper.cc",
396    "${ABSEIL_DIR}/absl/strings/internal/str_format/arg.cc",
397    "${ABSEIL_DIR}/absl/strings/internal/str_format/bind.cc",
398    "${ABSEIL_DIR}/absl/strings/internal/str_format/extension.cc",
399    "${ABSEIL_DIR}/absl/strings/internal/str_format/float_conversion.cc",
400    "${ABSEIL_DIR}/absl/strings/internal/str_format/output.cc",
401    "${ABSEIL_DIR}/absl/strings/internal/str_format/parser.cc",
402    "${ABSEIL_DIR}/absl/strings/internal/stringify_sink.cc",
403    "${ABSEIL_DIR}/absl/strings/internal/utf8.cc",
404    "${ABSEIL_DIR}/absl/strings/match.cc",
405    "${ABSEIL_DIR}/absl/strings/numbers.cc",
406    "${ABSEIL_DIR}/absl/strings/str_cat.cc",
407    "${ABSEIL_DIR}/absl/strings/str_replace.cc",
408    "${ABSEIL_DIR}/absl/strings/str_split.cc",
409    "${ABSEIL_DIR}/absl/strings/string_view.cc",
410    "${ABSEIL_DIR}/absl/strings/substitute.cc",
411    "${ABSEIL_DIR}/absl/synchronization/barrier.cc",
412    "${ABSEIL_DIR}/absl/synchronization/blocking_counter.cc",
413    "${ABSEIL_DIR}/absl/synchronization/internal/create_thread_identity.cc",
414    "${ABSEIL_DIR}/absl/synchronization/internal/futex_waiter.cc",
415    "${ABSEIL_DIR}/absl/synchronization/internal/graphcycles.cc",
416    "${ABSEIL_DIR}/absl/synchronization/internal/kernel_timeout.cc",
417    "${ABSEIL_DIR}/absl/synchronization/internal/per_thread_sem.cc",
418    "${ABSEIL_DIR}/absl/synchronization/internal/pthread_waiter.cc",
419    "${ABSEIL_DIR}/absl/synchronization/internal/sem_waiter.cc",
420    "${ABSEIL_DIR}/absl/synchronization/internal/stdcpp_waiter.cc",
421    "${ABSEIL_DIR}/absl/synchronization/internal/waiter_base.cc",
422    "${ABSEIL_DIR}/absl/synchronization/internal/win32_waiter.cc",
423    "${ABSEIL_DIR}/absl/synchronization/mutex.cc",
424    "${ABSEIL_DIR}/absl/synchronization/notification.cc",
425    "${ABSEIL_DIR}/absl/time/civil_time.cc",
426    "${ABSEIL_DIR}/absl/time/clock.cc",
427    "${ABSEIL_DIR}/absl/time/duration.cc",
428    "${ABSEIL_DIR}/absl/time/format.cc",
429    "${ABSEIL_DIR}/absl/time/internal/cctz/src/civil_time_detail.cc",
430    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_fixed.cc",
431    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_format.cc",
432    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_if.cc",
433    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_impl.cc",
434    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_info.cc",
435    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_libc.cc",
436    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_lookup.cc",
437    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_posix.cc",
438    "${ABSEIL_DIR}/absl/time/internal/cctz/src/zone_info_source.cc",
439    "${ABSEIL_DIR}/absl/time/time.cc",
440    "${ABSEIL_DIR}/absl/types/bad_any_cast.cc",
441    "${ABSEIL_DIR}/absl/types/bad_optional_access.cc",
442    "${ABSEIL_DIR}/absl/types/bad_variant_access.cc",
443  ]
444  include_dirs = [ "${ABSEIL_DIR}/" ]
445  cflags = ABSL_DEFAULT_COPTS
446  public_configs = [ ":absl_public_config" ]
447  deps = [":abseil_cpp_action",]
448  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
449  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
450}
451
452ohos_shared_library("absl_raw_logging_internal") {
453  branch_protector_ret = "pac_ret"
454  sources = [ "${ABSEIL_DIR}/absl/base/internal/raw_logging.cc" ]
455  include_dirs = [ "${ABSEIL_DIR}/" ]
456  cflags = ABSL_DEFAULT_COPTS
457  public_configs = [ ":absl_public_config" ]
458  deps = [
459    ":absl_log_severity",
460    ":abseil_cpp_action",
461  ]
462  install_enable = true
463  innerapi_tags = [ "platformsdk_indirect" ]
464  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
465  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
466}
467
468ohos_shared_library("absl_log") {
469  branch_protector_ret = "pac_ret"
470  sources = [
471    "${ABSEIL_DIR}/absl/debugging/leak_check.cc",
472    "${ABSEIL_DIR}/absl/log/absl_check.h",
473    "${ABSEIL_DIR}/absl/log/die_if_null.cc",
474    "${ABSEIL_DIR}/absl/log/globals.cc",
475    "${ABSEIL_DIR}/absl/log/initialize.cc",
476    "${ABSEIL_DIR}/absl/log/internal/check_op.cc",
477    "${ABSEIL_DIR}/absl/log/internal/conditions.cc",
478    "${ABSEIL_DIR}/absl/log/internal/fnmatch.cc",
479    "${ABSEIL_DIR}/absl/log/internal/globals.cc",
480    "${ABSEIL_DIR}/absl/log/internal/log_format.cc",
481    "${ABSEIL_DIR}/absl/log/internal/log_message.cc",
482    "${ABSEIL_DIR}/absl/log/internal/log_sink_set.cc",
483    "${ABSEIL_DIR}/absl/log/internal/nullguard.cc",
484    "${ABSEIL_DIR}/absl/log/internal/nullguard.h",
485    "${ABSEIL_DIR}/absl/log/internal/proto.cc",
486    "${ABSEIL_DIR}/absl/log/internal/structured_proto.cc",
487    "${ABSEIL_DIR}/absl/log/internal/vlog_config.cc",
488    "${ABSEIL_DIR}/absl/log/log_sink.cc",
489  ]
490  include_dirs = [ "${ABSEIL_DIR}/" ]
491  cflags = ABSL_DEFAULT_COPTS
492  public_configs = [ ":absl_public_config" ]
493  deps = [
494    ":absl_base",
495    ":absl_hash",
496    ":absl_raw_logging_internal",
497    ":absl_spinlock_wait",
498    ":absl_stacktrace",
499    ":absl_str_format_internal",
500    ":absl_strings",
501    ":absl_sync",
502    ":absl_time",
503    ":absl_time_zone",
504    ":abseil_cpp_action",
505  ]
506  install_enable = true
507  innerapi_tags = [ "platformsdk_indirect" ]
508  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
509  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
510}
511
512ohos_shared_library("absl_log_severity") {
513  sources = [ "${ABSEIL_DIR}/absl/base/log_severity.cc" ]
514  include_dirs = [ "${ABSEIL_DIR}/" ]
515  cflags = ABSL_DEFAULT_COPTS
516  install_enable = true
517  deps = [":abseil_cpp_action",]
518  public_configs = [ ":absl_public_config" ]
519  innerapi_tags = [ "platformsdk_indirect" ]
520  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
521  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
522}
523
524ohos_shared_library("absl_spinlock_wait") {
525  sources = [
526    "${ABSEIL_DIR}/absl/base/internal/spinlock_akaros.inc",
527    "${ABSEIL_DIR}/absl/base/internal/spinlock_linux.inc",
528    "${ABSEIL_DIR}/absl/base/internal/spinlock_posix.inc",
529    "${ABSEIL_DIR}/absl/base/internal/spinlock_wait.cc",
530    "${ABSEIL_DIR}/absl/base/internal/spinlock_win32.inc",
531  ]
532  public_configs = [ ":absl_public_config" ]
533  include_dirs = [ "${ABSEIL_DIR}/" ]
534  cflags = ABSL_DEFAULT_COPTS
535  install_enable = true
536  deps = [":abseil_cpp_action",]
537  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
538  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
539}
540
541ohos_shared_library("absl_throw_delegate") {
542  sources = [ "${ABSEIL_DIR}/absl/base/internal/throw_delegate.cc" ]
543
544  include_dirs = [ "${ABSEIL_DIR}/" ]
545
546  cflags = ABSL_DEFAULT_COPTS
547  deps = [
548    ":absl_raw_logging_internal",
549    ":abseil_cpp_action",
550  ]
551  public_configs = [ ":absl_public_config" ]
552  install_enable = true
553  innerapi_tags = [ "platformsdk_indirect" ]
554  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
555  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
556}
557
558ohos_shared_library("absl_stacktrace") {
559  sources = [
560    "${ABSEIL_DIR}/absl/debugging/internal/address_is_readable.cc",
561    "${ABSEIL_DIR}/absl/debugging/internal/address_is_readable.h",
562    "${ABSEIL_DIR}/absl/debugging/internal/elf_mem_image.cc",
563    "${ABSEIL_DIR}/absl/debugging/internal/examine_stack.cc",
564    "${ABSEIL_DIR}/absl/debugging/internal/examine_stack.h",
565    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_aarch64-inl.inc",
566    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_arm-inl.inc",
567    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_config.h",
568    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_generic-inl.inc",
569    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_powerpc-inl.inc",
570    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_unimplemented-inl.inc",
571    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_win32-inl.inc",
572    "${ABSEIL_DIR}/absl/debugging/internal/stacktrace_x86-inl.inc",
573    "${ABSEIL_DIR}/absl/debugging/internal/vdso_support.cc",
574    "${ABSEIL_DIR}/absl/debugging/stacktrace.cc",
575    "${ABSEIL_DIR}/absl/debugging/stacktrace.h",
576  ]
577  include_dirs = [ "${ABSEIL_DIR}/" ]
578  cflags = ABSL_DEFAULT_COPTS
579  deps = [
580    ":absl_base",
581    ":absl_raw_logging_internal",
582    ":absl_symbolize",
583    ":abseil_cpp_action",
584  ]
585  public_configs = [ ":absl_public_config" ]
586  install_enable = true
587  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
588  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
589}
590
591ohos_shared_library("absl_symbolize") {
592  sources = [
593    "${ABSEIL_DIR}/absl/debugging/internal/decode_rust_punycode.cc",
594    "${ABSEIL_DIR}/absl/debugging/internal/demangle.cc",
595    "${ABSEIL_DIR}/absl/debugging/internal/demangle_rust.cc",
596    "${ABSEIL_DIR}/absl/debugging/internal/elf_mem_image.cc",
597    "${ABSEIL_DIR}/absl/debugging/internal/symbolize.h",
598    "${ABSEIL_DIR}/absl/debugging/internal/utf8_for_code_point.cc",
599    "${ABSEIL_DIR}/absl/debugging/internal/vdso_support.cc",
600    "${ABSEIL_DIR}/absl/debugging/symbolize.cc",
601    "${ABSEIL_DIR}/absl/debugging/symbolize.h",
602    "${ABSEIL_DIR}/absl/debugging/symbolize_darwin.inc",
603    "${ABSEIL_DIR}/absl/debugging/symbolize_elf.inc",
604    "${ABSEIL_DIR}/absl/debugging/symbolize_unimplemented.inc",
605    "${ABSEIL_DIR}/absl/debugging/symbolize_win32.inc",
606  ]
607  include_dirs = [ "${ABSEIL_DIR}/" ]
608  cflags = ABSL_DEFAULT_COPTS
609  deps = [
610    ":absl_base",
611    ":absl_raw_logging_internal",
612    ":abseil_cpp_action",
613  ]
614  public_configs = [ ":absl_public_config" ]
615  install_enable = true
616  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
617  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
618}
619
620ohos_shared_library("absl_hash") {
621  sources = [
622    "${ABSEIL_DIR}/absl/hash/internal/city.cc",
623    "${ABSEIL_DIR}/absl/hash/internal/city.h",
624    "${ABSEIL_DIR}/absl/hash/internal/hash.cc",
625    "${ABSEIL_DIR}/absl/hash/internal/hash.h",
626    "${ABSEIL_DIR}/absl/hash/internal/low_level_hash.cc",
627    "${ABSEIL_DIR}/absl/hash/internal/low_level_hash.h",
628    "${ABSEIL_DIR}/absl/hash/internal/print_hash_of.cc",
629    "${ABSEIL_DIR}/absl/hash/internal/spy_hash_state.h",
630  ]
631  include_dirs = [ "${ABSEIL_DIR}/" ]
632  cflags = ABSL_DEFAULT_COPTS
633  deps = [
634    ":absl_base",
635    ":absl_stacktrace",
636    ":absl_symbolize",
637    ":absl_time",
638    ":abseil_cpp_action",
639  ]
640  public_configs = [ ":absl_public_config" ]
641  install_enable = true
642  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
643  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
644}
645
646ohos_shared_library("absl_int128") {
647  sources = [
648    "${ABSEIL_DIR}/absl/numeric/int128.cc",
649    "${ABSEIL_DIR}/absl/numeric/int128_have_intrinsic.inc",
650    "${ABSEIL_DIR}/absl/numeric/int128_no_intrinsic.inc",
651  ]
652  include_dirs = [ "${ABSEIL_DIR}/" ]
653  cflags = ABSL_DEFAULT_COPTS
654  install_enable = true
655  deps = [ ":abseil_cpp_action", ]
656  public_configs = [ ":absl_public_config" ]
657  innerapi_tags = [ "platformsdk_indirect" ]
658  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
659  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
660}
661
662ohos_shared_library("absl_status") {
663  sources = [
664    "${ABSEIL_DIR}/absl/base/internal/strerror.cc",
665    "${ABSEIL_DIR}/absl/debugging/leak_check.cc",
666    "${ABSEIL_DIR}/absl/status/internal/status_internal.cc",
667    "${ABSEIL_DIR}/absl/status/status.cc",
668    "${ABSEIL_DIR}/absl/status/status_payload_printer.cc",
669    "${ABSEIL_DIR}/absl/status/statusor.cc",
670  ]
671
672  include_dirs = [ "${ABSEIL_DIR}/" ]
673
674  cflags = ABSL_DEFAULT_COPTS
675  public_configs = [ ":absl_public_config" ]
676
677  #deps = [ "${ABSEIL_DIR}/absl/base:absl_raw_logging_internal" ]
678  deps = [
679    ":absl_cord",
680    ":absl_raw_logging_internal",
681    ":absl_spinlock_wait",
682    ":absl_strings",
683    ":abseil_cpp_action",
684  ]
685
686  install_enable = true
687
688  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
689  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
690}
691
692ohos_shared_library("absl_statusor") {
693  sources = [ "${ABSEIL_DIR}/absl/status/statusor.cc" ]
694
695  include_dirs = [ "${ABSEIL_DIR}/" ]
696
697  cflags = ABSL_DEFAULT_COPTS
698
699  deps = [
700    ":absl_cord",
701    ":absl_raw_logging_internal",
702    ":absl_spinlock_wait",
703    ":absl_status",
704    ":absl_strings",
705    ":abseil_cpp_action",
706  ]
707  public_configs = [ ":absl_public_config" ]
708  install_enable = true
709
710  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
711  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
712}
713
714config("cflags_config") {
715  cflags = [
716    "-Wall",
717    "-Wextra",
718    "-Weverything",
719    "-Wno-c++98-compat-pedantic",
720    "-Wno-conversion",
721    "-Wno-covered-switch-default",
722    "-Wno-deprecated",
723    "-Wno-disabled-macro-expansion",
724    "-Wno-double-promotion",
725    "-Wno-comma",
726    "-Wno-extra-semi",
727    "-Wno-extra-semi-stmt",
728    "-Wno-packed",
729    "-Wno-padded",
730    "-Wno-sign-compare",
731    "-Wno-float-conversion",
732    "-Wno-float-equal",
733    "-Wno-format-nonliteral",
734    "-Wno-gcc-compat",
735    "-Wno-global-constructors",
736    "-Wno-exit-time-destructors",
737    "-Wno-non-modular-include-in-module",
738    "-Wno-old-style-cast",
739    "-Wno-range-loop-analysis",
740    "-Wno-reserved-id-macro",
741    "-Wno-shorten-64-to-32",
742    "-Wno-switch-enum",
743    "-Wno-thread-safety-negative",
744    "-Wno-unknown-warning-option",
745    "-Wno-unreachable-code",
746    "-Wno-unused-macros",
747    "-Wno-weak-vtables",
748    "-Wno-zero-as-null-pointer-constant",
749    "-Wbitfield-enum-conversion",
750    "-Wbool-conversion",
751    "-Wconstant-conversion",
752    "-Wenum-conversion",
753    "-Wint-conversion",
754    "-Wliteral-conversion",
755    "-Wnon-literal-null-conversion",
756    "-Wnull-conversion",
757    "-Wobjc-literal-conversion",
758    "-Wno-sign-conversion",
759    "-Wstring-conversion",
760    "-DNOMINMAX",
761    "-Wno-reserved-identifier",
762    "-Wno-unused-template",
763    "-Wno-unknown-pragmas",
764    "-Wno-c++17-attribute-extensions",
765    "-Wno-cast-function-type",
766    "-Wno-atomic-implicit-seq-cst",
767    "-Wno-used-but-marked-unused",
768    "-Wno-shadow",
769  ]
770
771  # Adapating DEBUG version, FIX ME
772  # https://gitee.com/openharmony/build/pulls/1206/files
773  defines = [ "NDEBUG" ]
774}
775
776ohos_shared_library("absl_strings") {
777  branch_protector_ret = "pac_ret"
778  sources = [
779    "${ABSEIL_DIR}/absl/strings/ascii.cc",
780    "${ABSEIL_DIR}/absl/strings/charconv.cc",
781    "${ABSEIL_DIR}/absl/strings/escaping.cc",
782    "${ABSEIL_DIR}/absl/strings/internal/charconv_bigint.cc",
783    "${ABSEIL_DIR}/absl/strings/internal/charconv_bigint.h",
784    "${ABSEIL_DIR}/absl/strings/internal/charconv_parse.cc",
785    "${ABSEIL_DIR}/absl/strings/internal/charconv_parse.h",
786    "${ABSEIL_DIR}/absl/strings/internal/escaping.cc",
787    "${ABSEIL_DIR}/absl/strings/internal/memutil.cc",
788    "${ABSEIL_DIR}/absl/strings/internal/memutil.h",
789    "${ABSEIL_DIR}/absl/strings/internal/stl_type_traits.h",
790    "${ABSEIL_DIR}/absl/strings/internal/str_join_internal.h",
791    "${ABSEIL_DIR}/absl/strings/internal/str_split_internal.h",
792    "${ABSEIL_DIR}/absl/strings/match.cc",
793    "${ABSEIL_DIR}/absl/strings/numbers.cc",
794    "${ABSEIL_DIR}/absl/strings/str_cat.cc",
795    "${ABSEIL_DIR}/absl/strings/str_cat.h",
796    "${ABSEIL_DIR}/absl/strings/str_replace.cc",
797    "${ABSEIL_DIR}/absl/strings/str_split.cc",
798    "${ABSEIL_DIR}/absl/strings/string_view.cc",
799    "${ABSEIL_DIR}/absl/strings/substitute.cc",
800  ]
801
802  include_dirs = [ "${ABSEIL_DIR}/" ]
803  configs = [ ":cflags_config" ]
804  deps = [
805    ":absl_int128",
806    ":absl_raw_logging_internal",
807    ":absl_strings_internal",
808    ":abseil_cpp_action",
809  ]
810  public_configs = [ ":absl_public_config" ]
811  install_enable = true
812  innerapi_tags = [ "platformsdk_indirect" ]
813  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
814  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
815}
816
817ohos_shared_library("absl_strings_internal") {
818  branch_protector_ret = "pac_ret"
819  sources = [
820    "${ABSEIL_DIR}/absl/strings/internal/ostringstream.cc",
821    "${ABSEIL_DIR}/absl/strings/internal/utf8.cc",
822  ]
823  include_dirs = [ "${ABSEIL_DIR}/" ]
824
825  configs = [ ":cflags_config" ]
826
827  deps = [
828    ":absl_raw_logging_internal",
829    ":absl_throw_delegate",
830    ":abseil_cpp_action",
831  ]
832  install_enable = true
833  innerapi_tags = [ "platformsdk_indirect" ]
834  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
835  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
836}
837
838ohos_shared_library("absl_cord") {
839  sources = [
840    "${ABSEIL_DIR}/absl/crc/crc32c.cc",
841    "${ABSEIL_DIR}/absl/crc/crc32c.h",
842    "${ABSEIL_DIR}/absl/crc/internal/crc.cc",
843    "${ABSEIL_DIR}/absl/crc/internal/crc32c.h",
844    "${ABSEIL_DIR}/absl/crc/internal/crc32c_inline.h",
845    "${ABSEIL_DIR}/absl/crc/internal/crc_cord_state.cc",
846    "${ABSEIL_DIR}/absl/crc/internal/crc_memcpy.h",
847    "${ABSEIL_DIR}/absl/crc/internal/crc_memcpy_fallback.cc",
848    "${ABSEIL_DIR}/absl/crc/internal/crc_non_temporal_memcpy.cc",
849    "${ABSEIL_DIR}/absl/crc/internal/crc_x86_arm_combined.cc",
850    "${ABSEIL_DIR}/absl/debugging/stacktrace.cc",
851    "${ABSEIL_DIR}/absl/profiling/internal/exponential_biased.cc",
852    "${ABSEIL_DIR}/absl/strings/cord.cc",
853    "${ABSEIL_DIR}/absl/strings/cord_analysis.cc",
854    "${ABSEIL_DIR}/absl/strings/internal/cord_internal.cc",
855    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_btree.cc",
856    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_btree_navigator.cc",
857    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_btree_reader.cc",
858    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_consume.cc",
859    "${ABSEIL_DIR}/absl/strings/internal/cord_rep_crc.cc",
860    "${ABSEIL_DIR}/absl/strings/internal/cordz_functions.cc",
861    "${ABSEIL_DIR}/absl/strings/internal/cordz_handle.cc",
862    "${ABSEIL_DIR}/absl/strings/internal/cordz_info.cc",
863    "${ABSEIL_DIR}/absl/strings/internal/stringify_sink.cc",
864    "${ABSEIL_DIR}/absl/synchronization/mutex.cc",
865  ]
866  include_dirs = [ "${ABSEIL_DIR}/" ]
867
868  configs = [ ":cflags_config" ]
869
870  deps = [
871    ":absl_base",
872    ":absl_raw_logging_internal",
873    ":absl_spinlock_wait",
874    ":absl_stacktrace",
875    ":absl_strings",
876    ":absl_symbolize",
877    ":absl_sync",
878    ":absl_throw_delegate",
879    ":absl_time",
880    ":abseil_cpp_action",
881  ]
882  public_configs = [ ":absl_public_config" ]
883  install_enable = true
884  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
885  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
886}
887
888ohos_shared_library("absl_str_format_internal") {
889  sources = [
890    "${ABSEIL_DIR}/absl/strings/internal/str_format/arg.cc",
891    "${ABSEIL_DIR}/absl/strings/internal/str_format/bind.cc",
892    "${ABSEIL_DIR}/absl/strings/internal/str_format/extension.cc",
893    "${ABSEIL_DIR}/absl/strings/internal/str_format/float_conversion.cc",
894    "${ABSEIL_DIR}/absl/strings/internal/str_format/output.cc",
895    "${ABSEIL_DIR}/absl/strings/internal/str_format/parser.cc",
896  ]
897  include_dirs = [ "${ABSEIL_DIR}/" ]
898
899  configs = [ ":cflags_config" ]
900
901  deps = [
902    ":absl_int128",
903    ":absl_strings",
904    ":abseil_cpp_action",
905  ]
906  install_enable = true
907  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
908  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
909}
910
911ohos_shared_library("absl_sync") {
912  sources = [
913    "${ABSEIL_DIR}/absl/synchronization/barrier.cc",
914    "${ABSEIL_DIR}/absl/synchronization/barrier.h",
915    "${ABSEIL_DIR}/absl/synchronization/blocking_counter.cc",
916    "${ABSEIL_DIR}/absl/synchronization/blocking_counter.h",
917    "${ABSEIL_DIR}/absl/synchronization/internal/create_thread_identity.cc",
918    "${ABSEIL_DIR}/absl/synchronization/internal/create_thread_identity.h",
919    "${ABSEIL_DIR}/absl/synchronization/internal/futex.h",
920    "${ABSEIL_DIR}/absl/synchronization/internal/futex_waiter.cc",
921    "${ABSEIL_DIR}/absl/synchronization/internal/futex_waiter.h",
922    "${ABSEIL_DIR}/absl/synchronization/internal/graphcycles.cc",
923    "${ABSEIL_DIR}/absl/synchronization/internal/graphcycles.h",
924    "${ABSEIL_DIR}/absl/synchronization/internal/kernel_timeout.cc",
925    "${ABSEIL_DIR}/absl/synchronization/internal/kernel_timeout.h",
926    "${ABSEIL_DIR}/absl/synchronization/internal/per_thread_sem.cc",
927    "${ABSEIL_DIR}/absl/synchronization/internal/per_thread_sem.h",
928    "${ABSEIL_DIR}/absl/synchronization/internal/waiter_base.cc",
929    "${ABSEIL_DIR}/absl/synchronization/internal/waiter_base.h",
930    "${ABSEIL_DIR}/absl/synchronization/mutex.cc",
931    "${ABSEIL_DIR}/absl/synchronization/mutex.h",
932    "${ABSEIL_DIR}/absl/synchronization/notification.cc",
933    "${ABSEIL_DIR}/absl/synchronization/notification.h",
934  ]
935  include_dirs = [ "${ABSEIL_DIR}/" ]
936  cflags = ABSL_DEFAULT_COPTS
937  deps = [
938    ":absl_base",
939    ":absl_raw_logging_internal",
940    ":absl_spinlock_wait",
941    ":absl_stacktrace",
942    ":absl_symbolize",
943    ":absl_time",
944    ":abseil_cpp_action",
945  ]
946  public_configs = [ ":absl_public_config" ]
947  install_enable = true
948  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
949  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
950}
951
952ohos_shared_library("absl_civil_time") {
953  sources = [ "${ABSEIL_DIR}/absl/time/internal/cctz/src/civil_time_detail.cc" ]
954  include_dirs = [ "${ABSEIL_DIR}/" ]
955  install_enable = true
956  cflags = ABSL_DEFAULT_COPTS
957  deps = [ ":abseil_cpp_action", ]
958  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
959  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
960}
961
962ohos_shared_library("absl_container") {
963  sources = [ "${ABSEIL_DIR}/absl/container/internal/raw_hash_set.cc" ]
964  include_dirs = [ "${ABSEIL_DIR}/" ]
965  cflags = ABSL_DEFAULT_COPTS
966  deps = [
967    ":absl_base",
968    ":absl_hash",
969    ":abseil_cpp_action",
970  ]
971
972  install_enable = true
973  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
974  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
975}
976
977ohos_shared_library("absl_time_zone") {
978  sources = [
979    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_fixed.cc",
980    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_fixed.h",
981    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_format.cc",
982    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_if.cc",
983    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_if.h",
984    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_impl.cc",
985    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_impl.h",
986    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_info.cc",
987    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_info.h",
988    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_libc.cc",
989    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_libc.h",
990    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_lookup.cc",
991    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_posix.cc",
992    "${ABSEIL_DIR}/absl/time/internal/cctz/src/time_zone_posix.h",
993    "${ABSEIL_DIR}/absl/time/internal/cctz/src/tzfile.h",
994    "${ABSEIL_DIR}/absl/time/internal/cctz/src/zone_info_source.cc",
995  ]
996  cflags = ABSL_DEFAULT_COPTS
997  include_dirs = [ "${ABSEIL_DIR}/" ]
998  deps = [
999    ":absl_civil_time",
1000    ":abseil_cpp_action",
1001  ]
1002  public_configs = [ ":absl_public_config" ]
1003  install_enable = true
1004  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
1005  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
1006}
1007
1008ohos_shared_library("absl_time") {
1009  sources = [
1010    "${ABSEIL_DIR}/absl/time/civil_time.cc",
1011    "${ABSEIL_DIR}/absl/time/clock.cc",
1012    "${ABSEIL_DIR}/absl/time/duration.cc",
1013    "${ABSEIL_DIR}/absl/time/format.cc",
1014    "${ABSEIL_DIR}/absl/time/internal/get_current_time_chrono.inc",
1015    "${ABSEIL_DIR}/absl/time/internal/get_current_time_posix.inc",
1016    "${ABSEIL_DIR}/absl/time/time.cc",
1017  ]
1018  include_dirs = [ "${ABSEIL_DIR}/" ]
1019  cflags = ABSL_DEFAULT_COPTS
1020  deps = [
1021    ":absl_base",
1022    ":absl_civil_time",
1023    ":absl_int128",
1024    ":absl_raw_logging_internal",
1025    ":absl_strings",
1026    ":absl_time_zone",
1027    ":abseil_cpp_action",
1028  ]
1029  public_configs = [ ":absl_public_config" ]
1030  install_enable = true
1031  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
1032  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
1033}
1034
1035ohos_shared_library("absl_flags") {
1036  sources = [
1037    "${ABSEIL_DIR}/absl/flags/commandlineflag.cc",
1038    "${ABSEIL_DIR}/absl/flags/commandlineflag.h",
1039    "${ABSEIL_DIR}/absl/flags/internal/commandlineflag.cc",
1040    "${ABSEIL_DIR}/absl/flags/internal/commandlineflag.h",
1041    "${ABSEIL_DIR}/absl/flags/internal/flag.cc",
1042    "${ABSEIL_DIR}/absl/flags/internal/flag.h",
1043    "${ABSEIL_DIR}/absl/flags/internal/private_handle_accessor.cc",
1044    "${ABSEIL_DIR}/absl/flags/internal/private_handle_accessor.h",
1045    "${ABSEIL_DIR}/absl/flags/internal/program_name.cc",
1046    "${ABSEIL_DIR}/absl/flags/internal/program_name.h",
1047    "${ABSEIL_DIR}/absl/flags/marshalling.cc",
1048    "${ABSEIL_DIR}/absl/flags/marshalling.h",
1049    "${ABSEIL_DIR}/absl/flags/reflection.cc",
1050    "${ABSEIL_DIR}/absl/flags/reflection.h",
1051    "${ABSEIL_DIR}/absl/flags/usage_config.cc",
1052    "${ABSEIL_DIR}/absl/flags/usage_config.h",
1053  ]
1054  include_dirs = [ "${ABSEIL_DIR}/" ]
1055  deps = [
1056    ":absl_base",
1057    ":absl_container",
1058    ":absl_hash",
1059    ":absl_int128",
1060    ":absl_raw_logging_internal",
1061    ":absl_spinlock_wait",
1062    ":absl_str_format_internal",
1063    ":absl_strings",
1064    ":absl_sync",
1065    ":abseil_cpp_action",
1066  ]
1067  cflags = ABSL_DEFAULT_COPTS
1068  public_configs = [ ":absl_public_config" ]
1069  install_enable = true
1070  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
1071  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
1072}
1073
1074ohos_shared_library("absl_random") {
1075  sources = [
1076    "${ABSEIL_DIR}/absl/random/internal/pool_urbg.cc",
1077    "${ABSEIL_DIR}/absl/random/internal/randen.cc",
1078    "${ABSEIL_DIR}/absl/random/internal/randen.h",
1079    "${ABSEIL_DIR}/absl/random/internal/randen_detect.cc",
1080    "${ABSEIL_DIR}/absl/random/internal/randen_hwaes.cc",
1081    "${ABSEIL_DIR}/absl/random/internal/randen_round_keys.cc",
1082    "${ABSEIL_DIR}/absl/random/internal/randen_slow.cc",
1083    "${ABSEIL_DIR}/absl/random/internal/randen_slow.h",
1084    "${ABSEIL_DIR}/absl/random/internal/seed_material.cc",
1085    "${ABSEIL_DIR}/absl/random/seed_gen_exception.cc",
1086  ]
1087  include_dirs = [ "${ABSEIL_DIR}/" ]
1088  deps = [
1089    ":absl_base",
1090    ":absl_container",
1091    ":absl_hash",
1092    ":absl_int128",
1093    ":absl_raw_logging_internal",
1094    ":absl_spinlock_wait",
1095    ":absl_str_format_internal",
1096    ":absl_strings",
1097    ":absl_sync",
1098    ":abseil_cpp_action",
1099  ]
1100  cflags = ABSL_DEFAULT_COPTS
1101  public_configs = [ ":absl_public_config" ]
1102  install_enable = true
1103  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
1104  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
1105}
1106
1107ohos_shared_library("absl_bad_optional_access") {
1108  sources = [ "${ABSEIL_DIR}/absl/types/bad_optional_access.cc" ]
1109  include_dirs = [ "${ABSEIL_DIR}/" ]
1110  cflags = ABSL_DEFAULT_COPTS
1111  deps = [
1112    ":absl_raw_logging_internal",
1113    ":abseil_cpp_action",
1114  ]
1115  install_enable = true
1116  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
1117  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
1118}
1119
1120ohos_shared_library("absl_bad_variant_access") {
1121  sources = [ "${ABSEIL_DIR}/absl/types/bad_variant_access.cc" ]
1122  include_dirs = [ "${ABSEIL_DIR}/" ]
1123  cflags = ABSL_DEFAULT_COPTS
1124  deps = [
1125    ":absl_raw_logging_internal",
1126    ":abseil_cpp_action",
1127  ]
1128  install_enable = true
1129  subsystem_name = "${THIRDPARTY_ABSEIL_SUBSYS_NAME}"
1130  part_name = "${THIRDPARTY_ABSEIL_PART_NAME}"
1131}
1132