@@ -28,7 +28,6 @@ set(ABSL_INTERNAL_DLL_FILES
2828 "base/internal/low_level_scheduling.h"
2929 "base/internal/nullability_impl.h"
3030 "base/internal/per_thread_tls.h"
31- "base/internal/prefetch.h"
3231 "base/prefetch.h"
3332 "base/internal/pretty_function.h"
3433 "base/internal/raw_logging.cc"
@@ -44,7 +43,6 @@ set(ABSL_INTERNAL_DLL_FILES
4443 "base/internal/spinlock_wait.h"
4544 "base/internal/sysinfo.cc"
4645 "base/internal/sysinfo.h"
47- "base/internal/thread_annotations.h"
4846 "base/internal/thread_identity.cc"
4947 "base/internal/thread_identity.h"
5048 "base/internal/throw_delegate.cc"
@@ -57,6 +55,7 @@ set(ABSL_INTERNAL_DLL_FILES
5755 "base/log_severity.cc"
5856 "base/log_severity.h"
5957 "base/macros.h"
58+ "base/no_destructor.h"
6059 "base/nullability.h"
6160 "base/optimization.h"
6261 "base/options.h"
@@ -77,7 +76,6 @@ set(ABSL_INTERNAL_DLL_FILES
7776 "container/internal/common_policy_traits.h"
7877 "container/internal/compressed_tuple.h"
7978 "container/internal/container_memory.h"
80- "container/internal/counting_allocator.h"
8179 "container/internal/hash_function_defaults.h"
8280 "container/internal/hash_policy_traits.h"
8381 "container/internal/hashtable_debug.h"
@@ -109,7 +107,7 @@ set(ABSL_INTERNAL_DLL_FILES
109107 "crc/internal/crc_x86_arm_combined.cc"
110108 "crc/internal/crc_memcpy_fallback.cc"
111109 "crc/internal/crc_memcpy.h"
112- "crc/internal/crc_memcpy_x86_64 .cc"
110+ "crc/internal/crc_memcpy_x86_arm_combined .cc"
113111 "crc/internal/crc_non_temporal_memcpy.cc"
114112 "crc/internal/crc_x86_arm_combined.cc"
115113 "crc/internal/non_temporal_arm_intrinsics.h"
@@ -141,6 +139,7 @@ set(ABSL_INTERNAL_DLL_FILES
141139 "functional/function_ref.h"
142140 "functional/internal/any_invocable.h"
143141 "functional/internal/function_ref.h"
142+ "functional/overload.h"
144143 "hash/hash.h"
145144 "hash/internal/city.h"
146145 "hash/internal/city.cc"
@@ -151,6 +150,7 @@ set(ABSL_INTERNAL_DLL_FILES
151150 "hash/internal/low_level_hash.cc"
152151 "log/absl_check.h"
153152 "log/absl_log.h"
153+ "log/absl_vlog_is_on.h"
154154 "log/check.h"
155155 "log/die_if_null.cc"
156156 "log/die_if_null.h"
@@ -163,6 +163,8 @@ set(ABSL_INTERNAL_DLL_FILES
163163 "log/internal/conditions.cc"
164164 "log/internal/conditions.h"
165165 "log/internal/config.h"
166+ "log/internal/fnmatch.h"
167+ "log/internal/fnmatch.cc"
166168 "log/internal/globals.cc"
167169 "log/internal/globals.h"
168170 "log/internal/log_format.cc"
@@ -179,6 +181,8 @@ set(ABSL_INTERNAL_DLL_FILES
179181 "log/internal/proto.cc"
180182 "log/internal/strip.h"
181183 "log/internal/structured.h"
184+ "log/internal/vlog_config.cc"
185+ "log/internal/vlog_config.h"
182186 "log/internal/voidify.h"
183187 "log/initialize.cc"
184188 "log/initialize.h"
@@ -190,6 +194,7 @@ set(ABSL_INTERNAL_DLL_FILES
190194 "log/log_sink_registry.h"
191195 "log/log_streamer.h"
192196 "log/structured.h"
197+ "log/vlog_is_on.h"
193198 "memory/memory.h"
194199 "meta/type_traits.h"
195200 "numeric/bits.h"
@@ -250,6 +255,7 @@ set(ABSL_INTERNAL_DLL_FILES
250255 "random/uniform_real_distribution.h"
251256 "random/zipf_distribution.h"
252257 "status/internal/status_internal.h"
258+ "status/internal/status_internal.cc"
253259 "status/internal/statusor_internal.h"
254260 "status/status.h"
255261 "status/status.cc"
@@ -261,6 +267,7 @@ set(ABSL_INTERNAL_DLL_FILES
261267 "strings/ascii.h"
262268 "strings/charconv.cc"
263269 "strings/charconv.h"
270+ "strings/charset.h"
264271 "strings/cord.cc"
265272 "strings/cord.h"
266273 "strings/cord_analysis.cc"
@@ -287,9 +294,6 @@ set(ABSL_INTERNAL_DLL_FILES
287294 "strings/internal/cord_rep_consume.h"
288295 "strings/internal/cord_rep_consume.cc"
289296 "strings/internal/cord_rep_flat.h"
290- "strings/internal/cord_rep_ring.cc"
291- "strings/internal/cord_rep_ring.h"
292- "strings/internal/cord_rep_ring_reader.h"
293297 "strings/internal/cordz_functions.cc"
294298 "strings/internal/cordz_functions.h"
295299 "strings/internal/cordz_handle.cc"
@@ -308,6 +312,8 @@ set(ABSL_INTERNAL_DLL_FILES
308312 "strings/internal/stringify_sink.h"
309313 "strings/internal/stringify_sink.cc"
310314 "strings/internal/has_absl_stringify.h"
315+ "strings/has_absl_stringify.h"
316+ "strings/has_ostream_operator.h"
311317 "strings/match.cc"
312318 "strings/match.h"
313319 "strings/numbers.cc"
@@ -325,7 +331,6 @@ set(ABSL_INTERNAL_DLL_FILES
325331 "strings/strip.h"
326332 "strings/substitute.cc"
327333 "strings/substitute.h"
328- "strings/internal/char_map.h"
329334 "strings/internal/escaping.h"
330335 "strings/internal/escaping.cc"
331336 "strings/internal/memutil.cc"
@@ -421,11 +426,6 @@ set(ABSL_INTERNAL_DLL_FILES
421426 "types/bad_variant_access.cc"
422427 "types/bad_variant_access.h"
423428 "types/compare.h"
424- "types/internal/conformance_aliases.h"
425- "types/internal/conformance_archetype.h"
426- "types/internal/conformance_profile.h"
427- "types/internal/parentheses.h"
428- "types/internal/transform_args.h"
429429 "types/internal/variant.h"
430430 "types/optional.h"
431431 "types/internal/optional.h"
@@ -627,17 +627,32 @@ include(CheckCXXSourceCompiles)
627627check_cxx_source_compiles(
628628 [==[
629629#ifdef _MSC_VER
630- # if _MSVC_LANG < 201700L
630+ # if _MSVC_LANG < 201703L
631631# error "The compiler defaults or is configured for C++ < 17"
632632# endif
633- #elif __cplusplus < 201700L
633+ #elif __cplusplus < 201703L
634634# error "The compiler defaults or is configured for C++ < 17"
635635#endif
636636int main() { return 0; }
637637]==]
638638 ABSL_INTERNAL_AT_LEAST_CXX17)
639639
640- if (ABSL_INTERNAL_AT_LEAST_CXX17)
640+ check_cxx_source_compiles(
641+ [==[
642+ #ifdef _MSC_VER
643+ # if _MSVC_LANG < 202002L
644+ # error "The compiler defaults or is configured for C++ < 20"
645+ # endif
646+ #elif __cplusplus < 202002L
647+ # error "The compiler defaults or is configured for C++ < 20"
648+ #endif
649+ int main() { return 0; }
650+ ]==]
651+ ABSL_INTERNAL_AT_LEAST_CXX20)
652+
653+ if (ABSL_INTERNAL_AT_LEAST_CXX20)
654+ set (ABSL_INTERNAL_CXX_STD_FEATURE cxx_std_20)
655+ elseif (ABSL_INTERNAL_AT_LEAST_CXX17)
641656 set (ABSL_INTERNAL_CXX_STD_FEATURE cxx_std_17)
642657else ()
643658 set (ABSL_INTERNAL_CXX_STD_FEATURE cxx_std_14)
@@ -807,8 +822,8 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n")
807822
808823 if (ABSL_PROPAGATE_CXX_STD)
809824 # Abseil libraries require C++14 as the current minimum standard. When
810- # compiled with C++17 (either because it is the compiler's default or
811- # explicitly requested), then Abseil requires C++17 .
825+ # compiled with a higher minimum (either because it is the compiler's
826+ # default or explicitly requested), then Abseil requires that standard .
812827 target_compile_features (${_dll} PUBLIC ${ABSL_INTERNAL_CXX_STD_FEATURE} )
813828 endif ()
814829
0 commit comments