set(files
__algorithm/adjacent_find.h
__algorithm/all_of.h
__algorithm/any_of.h
__algorithm/binary_search.h
__algorithm/clamp.h
__algorithm/comp.h
__algorithm/comp_ref_type.h
__algorithm/copy.h
__algorithm/copy_backward.h
__algorithm/copy_if.h
__algorithm/copy_move_common.h
__algorithm/copy_n.h
__algorithm/count.h
__algorithm/count_if.h
__algorithm/equal.h
__algorithm/equal_range.h
__algorithm/fill.h
__algorithm/fill_n.h
__algorithm/find.h
__algorithm/find_end.h
__algorithm/find_first_of.h
__algorithm/find_if.h
__algorithm/find_if_not.h
__algorithm/find_segment_if.h
__algorithm/for_each.h
__algorithm/for_each_n.h
__algorithm/for_each_segment.h
__algorithm/generate.h
__algorithm/generate_n.h
__algorithm/half_positive.h
__algorithm/in_found_result.h
__algorithm/in_fun_result.h
__algorithm/in_in_out_result.h
__algorithm/in_in_result.h
__algorithm/in_out_out_result.h
__algorithm/in_out_result.h
__algorithm/includes.h
__algorithm/inplace_merge.h
__algorithm/is_heap.h
__algorithm/is_heap_until.h
__algorithm/is_partitioned.h
__algorithm/is_permutation.h
__algorithm/is_sorted.h
__algorithm/is_sorted_until.h
__algorithm/iter_swap.h
__algorithm/iterator_operations.h
__algorithm/lexicographical_compare.h
__algorithm/lexicographical_compare_three_way.h
__algorithm/lower_bound.h
__algorithm/make_heap.h
__algorithm/make_projected.h
__algorithm/max.h
__algorithm/max_element.h
__algorithm/merge.h
__algorithm/min.h
__algorithm/min_element.h
__algorithm/min_max_result.h
__algorithm/minmax.h
__algorithm/minmax_element.h
__algorithm/mismatch.h
__algorithm/move.h
__algorithm/move_backward.h
__algorithm/next_permutation.h
__algorithm/none_of.h
__algorithm/nth_element.h
__algorithm/partial_sort.h
__algorithm/partial_sort_copy.h
__algorithm/partition.h
__algorithm/partition_copy.h
__algorithm/partition_point.h
__algorithm/pop_heap.h
__algorithm/prev_permutation.h
__algorithm/pstl.h
__algorithm/push_heap.h
__algorithm/ranges_adjacent_find.h
__algorithm/ranges_all_of.h
__algorithm/ranges_any_of.h
__algorithm/ranges_binary_search.h
__algorithm/ranges_clamp.h
__algorithm/ranges_contains.h
__algorithm/ranges_contains_subrange.h
__algorithm/ranges_copy.h
__algorithm/ranges_copy_backward.h
__algorithm/ranges_copy_if.h
__algorithm/ranges_copy_n.h
__algorithm/ranges_count.h
__algorithm/ranges_count_if.h
__algorithm/ranges_ends_with.h
__algorithm/ranges_equal.h
__algorithm/ranges_equal_range.h
__algorithm/ranges_fill.h
__algorithm/ranges_fill_n.h
__algorithm/ranges_find.h
__algorithm/ranges_find_end.h
__algorithm/ranges_find_first_of.h
__algorithm/ranges_find_if.h
__algorithm/ranges_find_if_not.h
__algorithm/ranges_find_last.h
__algorithm/ranges_fold.h
__algorithm/ranges_for_each.h
__algorithm/ranges_for_each_n.h
__algorithm/ranges_generate.h
__algorithm/ranges_generate_n.h
__algorithm/ranges_includes.h
__algorithm/ranges_inplace_merge.h
__algorithm/ranges_is_heap.h
__algorithm/ranges_is_heap_until.h
__algorithm/ranges_is_partitioned.h
__algorithm/ranges_is_permutation.h
__algorithm/ranges_is_sorted.h
__algorithm/ranges_is_sorted_until.h
__algorithm/ranges_iterator_concept.h
__algorithm/ranges_lexicographical_compare.h
__algorithm/ranges_lower_bound.h
__algorithm/ranges_make_heap.h
__algorithm/ranges_max.h
__algorithm/ranges_max_element.h
__algorithm/ranges_merge.h
__algorithm/ranges_min.h
__algorithm/ranges_min_element.h
__algorithm/ranges_minmax.h
__algorithm/ranges_minmax_element.h
__algorithm/ranges_mismatch.h
__algorithm/ranges_move.h
__algorithm/ranges_move_backward.h
__algorithm/ranges_next_permutation.h
__algorithm/ranges_none_of.h
__algorithm/ranges_nth_element.h
__algorithm/ranges_partial_sort.h
__algorithm/ranges_partial_sort_copy.h
__algorithm/ranges_partition.h
__algorithm/ranges_partition_copy.h
__algorithm/ranges_partition_point.h
__algorithm/ranges_pop_heap.h
__algorithm/ranges_prev_permutation.h
__algorithm/ranges_push_heap.h
__algorithm/ranges_remove.h
__algorithm/ranges_remove_copy.h
__algorithm/ranges_remove_copy_if.h
__algorithm/ranges_remove_if.h
__algorithm/ranges_replace.h
__algorithm/ranges_replace_copy.h
__algorithm/ranges_replace_copy_if.h
__algorithm/ranges_replace_if.h
__algorithm/ranges_reverse.h
__algorithm/ranges_reverse_copy.h
__algorithm/ranges_rotate.h
__algorithm/ranges_rotate_copy.h
__algorithm/ranges_sample.h
__algorithm/ranges_search.h
__algorithm/ranges_search_n.h
__algorithm/ranges_set_difference.h
__algorithm/ranges_set_intersection.h
__algorithm/ranges_set_symmetric_difference.h
__algorithm/ranges_set_union.h
__algorithm/ranges_shuffle.h
__algorithm/ranges_sort.h
__algorithm/ranges_sort_heap.h
__algorithm/ranges_stable_partition.h
__algorithm/ranges_stable_sort.h
__algorithm/ranges_starts_with.h
__algorithm/ranges_swap_ranges.h
__algorithm/ranges_transform.h
__algorithm/ranges_unique.h
__algorithm/ranges_unique_copy.h
__algorithm/ranges_upper_bound.h
__algorithm/remove.h
__algorithm/remove_copy.h
__algorithm/remove_copy_if.h
__algorithm/remove_if.h
__algorithm/replace.h
__algorithm/replace_copy.h
__algorithm/replace_copy_if.h
__algorithm/replace_if.h
__algorithm/reverse.h
__algorithm/reverse_copy.h
__algorithm/rotate.h
__algorithm/rotate_copy.h
__algorithm/sample.h
__algorithm/search.h
__algorithm/search_n.h
__algorithm/set_difference.h
__algorithm/set_intersection.h
__algorithm/set_symmetric_difference.h
__algorithm/set_union.h
__algorithm/shift_left.h
__algorithm/shift_right.h
__algorithm/shuffle.h
__algorithm/sift_down.h
__algorithm/simd_utils.h
__algorithm/sort.h
__algorithm/sort_heap.h
__algorithm/stable_partition.h
__algorithm/stable_sort.h
__algorithm/swap_ranges.h
__algorithm/three_way_comp_ref_type.h
__algorithm/transform.h
__algorithm/uniform_random_bit_generator_adaptor.h
__algorithm/unique.h
__algorithm/unique_copy.h
__algorithm/unwrap_iter.h
__algorithm/unwrap_range.h
__algorithm/upper_bound.h
__assert
__atomic/aliases.h
__atomic/atomic.h
__atomic/atomic_base.h
__atomic/atomic_flag.h
__atomic/atomic_init.h
__atomic/atomic_lock_free.h
__atomic/atomic_ref.h
__atomic/atomic_sync.h
__atomic/check_memory_order.h
__atomic/contention_t.h
__atomic/cxx_atomic_impl.h
__atomic/fence.h
__atomic/is_always_lock_free.h
__atomic/kill_dependency.h
__atomic/memory_order.h
__atomic/to_gcc_order.h
__bit/bit_cast.h
__bit/bit_ceil.h
__bit/bit_floor.h
__bit/bit_log2.h
__bit/bit_width.h
__bit/blsr.h
__bit/byteswap.h
__bit/countl.h
__bit/countr.h
__bit/endian.h
__bit/has_single_bit.h
__bit/invert_if.h
__bit/popcount.h
__bit/rotate.h
__bit_reference
__charconv/chars_format.h
__charconv/from_chars_integral.h
__charconv/from_chars_result.h
__charconv/tables.h
__charconv/to_chars.h
__charconv/to_chars_base_10.h
__charconv/to_chars_floating_point.h
__charconv/to_chars_integral.h
__charconv/to_chars_result.h
__charconv/traits.h
__chrono/calendar.h
__chrono/concepts.h
__chrono/convert_to_timespec.h
__chrono/convert_to_tm.h
__chrono/day.h
__chrono/duration.h
__chrono/exception.h
__chrono/file_clock.h
__chrono/formatter.h
__chrono/hh_mm_ss.h
__chrono/high_resolution_clock.h
__chrono/leap_second.h
__chrono/literals.h
__chrono/local_info.h
__chrono/month.h
__chrono/month_weekday.h
__chrono/monthday.h
__chrono/ostream.h
__chrono/parser_std_format_spec.h
__chrono/statically_widen.h
__chrono/steady_clock.h
__chrono/sys_info.h
__chrono/system_clock.h
__chrono/time_point.h
__chrono/time_zone.h
__chrono/time_zone_link.h
__chrono/tzdb.h
__chrono/tzdb_list.h
__chrono/weekday.h
__chrono/year.h
__chrono/year_month.h
__chrono/year_month_day.h
__chrono/year_month_weekday.h
__chrono/zoned_time.h
__compare/common_comparison_category.h
__compare/compare_partial_order_fallback.h
__compare/compare_strong_order_fallback.h
__compare/compare_three_way.h
__compare/compare_three_way_result.h
__compare/compare_weak_order_fallback.h
__compare/is_eq.h
__compare/ordering.h
__compare/partial_order.h
__compare/strong_order.h
__compare/synth_three_way.h
__compare/three_way_comparable.h
__compare/weak_order.h
__concepts/arithmetic.h
__concepts/assignable.h
__concepts/boolean_testable.h
__concepts/class_or_enum.h
__concepts/common_reference_with.h
__concepts/common_with.h
__concepts/constructible.h
__concepts/convertible_to.h
__concepts/copyable.h
__concepts/derived_from.h
__concepts/destructible.h
__concepts/different_from.h
__concepts/equality_comparable.h
__concepts/invocable.h
__concepts/movable.h
__concepts/predicate.h
__concepts/regular.h
__concepts/relation.h
__concepts/same_as.h
__concepts/semiregular.h
__concepts/swappable.h
__concepts/totally_ordered.h
__condition_variable/condition_variable.h
__config
__configuration/abi.h
__configuration/availability.h
__configuration/compiler.h
__configuration/language.h
__configuration/platform.h
__coroutine/coroutine_handle.h
__coroutine/coroutine_traits.h
__coroutine/noop_coroutine_handle.h
__coroutine/trivial_awaitables.h
__cstddef/byte.h
__cstddef/max_align_t.h
__cstddef/nullptr_t.h
__cstddef/ptrdiff_t.h
__cstddef/size_t.h
__debug_utils/randomize_range.h
__debug_utils/sanitizers.h
__debug_utils/strict_weak_ordering_check.h
__exception/exception.h
__exception/exception_ptr.h
__exception/nested_exception.h
__exception/operations.h
__exception/terminate.h
__expected/bad_expected_access.h
__expected/expected.h
__expected/unexpect.h
__expected/unexpected.h
__filesystem/copy_options.h
__filesystem/directory_entry.h
__filesystem/directory_iterator.h
__filesystem/directory_options.h
__filesystem/file_status.h
__filesystem/file_time_type.h
__filesystem/file_type.h
__filesystem/filesystem_error.h
__filesystem/operations.h
__filesystem/path.h
__filesystem/path_iterator.h
__filesystem/perm_options.h
__filesystem/perms.h
__filesystem/recursive_directory_iterator.h
__filesystem/space_info.h
__filesystem/u8path.h
__format/buffer.h
__format/concepts.h
__format/container_adaptor.h
__format/enable_insertable.h
__format/escaped_output_table.h
__format/extended_grapheme_cluster_table.h
__format/format_arg.h
__format/format_arg_store.h
__format/format_args.h
__format/format_context.h
__format/format_error.h
__format/format_functions.h
__format/format_parse_context.h
__format/format_string.h
__format/format_to_n_result.h
__format/formatter.h
__format/formatter_bool.h
__format/formatter_char.h
__format/formatter_floating_point.h
__format/formatter_integer.h
__format/formatter_integral.h
__format/formatter_output.h
__format/formatter_pointer.h
__format/formatter_string.h
__format/formatter_tuple.h
__format/indic_conjunct_break_table.h
__format/parser_std_format_spec.h
__format/range_default_formatter.h
__format/range_formatter.h
__format/unicode.h
__format/width_estimation_table.h
__format/write_escaped.h
__functional/binary_function.h
__functional/binary_negate.h
__functional/bind.h
__functional/bind_back.h
__functional/bind_front.h
__functional/binder1st.h
__functional/binder2nd.h
__functional/boyer_moore_searcher.h
__functional/compose.h
__functional/default_searcher.h
__functional/function.h
__functional/hash.h
__functional/identity.h
__functional/invoke.h
__functional/is_transparent.h
__functional/mem_fn.h
__functional/mem_fun_ref.h
__functional/not_fn.h
__functional/operations.h
__functional/perfect_forward.h
__functional/pointer_to_binary_function.h
__functional/pointer_to_unary_function.h
__functional/ranges_operations.h
__functional/reference_wrapper.h
__functional/unary_function.h
__functional/unary_negate.h
__functional/weak_result_type.h
__fwd/array.h
__fwd/bit_reference.h
__fwd/byte.h
__fwd/complex.h
__fwd/deque.h
__fwd/format.h
__fwd/fstream.h
__fwd/functional.h
__fwd/get.h
__fwd/ios.h
__fwd/istream.h
__fwd/mdspan.h
__fwd/memory.h
__fwd/memory_resource.h
__fwd/ostream.h
__fwd/pair.h
__fwd/queue.h
__fwd/span.h
__fwd/sstream.h
__fwd/stack.h
__fwd/streambuf.h
__fwd/string.h
__fwd/string_view.h
__fwd/subrange.h
__fwd/tuple.h
__fwd/variant.h
__fwd/vector.h
__hash_table
__ios/fpos.h
__iterator/access.h
__iterator/advance.h
__iterator/aliasing_iterator.h
__iterator/back_insert_iterator.h
__iterator/bounded_iter.h
__iterator/common_iterator.h
__iterator/concepts.h
__iterator/counted_iterator.h
__iterator/cpp17_iterator_concepts.h
__iterator/data.h
__iterator/default_sentinel.h
__iterator/distance.h
__iterator/empty.h
__iterator/erase_if_container.h
__iterator/front_insert_iterator.h
__iterator/incrementable_traits.h
__iterator/indirectly_comparable.h
__iterator/insert_iterator.h
__iterator/istream_iterator.h
__iterator/istreambuf_iterator.h
__iterator/iter_move.h
__iterator/iter_swap.h
__iterator/iterator.h
__iterator/iterator_traits.h
__iterator/iterator_with_data.h
__iterator/mergeable.h
__iterator/move_iterator.h
__iterator/move_sentinel.h
__iterator/next.h
__iterator/ostream_iterator.h
__iterator/ostreambuf_iterator.h
__iterator/permutable.h
__iterator/prev.h
__iterator/projected.h
__iterator/ranges_iterator_traits.h
__iterator/readable_traits.h
__iterator/reverse_access.h
__iterator/reverse_iterator.h
__iterator/segmented_iterator.h
__iterator/size.h
__iterator/sortable.h
__iterator/unreachable_sentinel.h
__iterator/wrap_iter.h
__locale
__locale_dir/locale_base_api.h
__locale_dir/locale_base_api/android.h
__locale_dir/locale_base_api/bsd_locale_defaults.h
__locale_dir/locale_base_api/bsd_locale_fallbacks.h
__locale_dir/locale_base_api/fuchsia.h
__locale_dir/locale_base_api/ibm.h
__locale_dir/locale_base_api/locale_guard.h
__locale_dir/locale_base_api/musl.h
__locale_dir/locale_base_api/newlib.h
__locale_dir/locale_base_api/openbsd.h
__locale_dir/locale_base_api/win32.h
__math/abs.h
__math/copysign.h
__math/error_functions.h
__math/exponential_functions.h
__math/fdim.h
__math/fma.h
__math/gamma.h
__math/hyperbolic_functions.h
__math/hypot.h
__math/inverse_hyperbolic_functions.h
__math/inverse_trigonometric_functions.h
__math/logarithms.h
__math/min_max.h
__math/modulo.h
__math/remainder.h
__math/roots.h
__math/rounding_functions.h
__math/special_functions.h
__math/traits.h
__math/trigonometric_functions.h
__mbstate_t.h
__mdspan/default_accessor.h
__mdspan/extents.h
__mdspan/layout_left.h
__mdspan/layout_right.h
__mdspan/layout_stride.h
__mdspan/mdspan.h
__memory/addressof.h
__memory/align.h
__memory/aligned_alloc.h
__memory/allocate_at_least.h
__memory/allocation_guard.h
__memory/allocator.h
__memory/allocator_arg_t.h
__memory/allocator_destructor.h
__memory/allocator_traits.h
__memory/array_cookie.h
__memory/assume_aligned.h
__memory/auto_ptr.h
__memory/builtin_new_allocator.h
__memory/compressed_pair.h
__memory/concepts.h
__memory/construct_at.h
__memory/destruct_n.h
__memory/inout_ptr.h
__memory/noexcept_move_assign_container.h
__memory/out_ptr.h
__memory/pointer_traits.h
__memory/ranges_construct_at.h
__memory/ranges_uninitialized_algorithms.h
__memory/raw_storage_iterator.h
__memory/shared_ptr.h
__memory/swap_allocator.h
__memory/temp_value.h
__memory/temporary_buffer.h
__memory/uninitialized_algorithms.h
__memory/unique_ptr.h
__memory/unique_temporary_buffer.h
__memory/uses_allocator.h
__memory/uses_allocator_construction.h
__memory/voidify.h
__memory_resource/memory_resource.h
__memory_resource/monotonic_buffer_resource.h
__memory_resource/polymorphic_allocator.h
__memory_resource/pool_options.h
__memory_resource/synchronized_pool_resource.h
__memory_resource/unsynchronized_pool_resource.h
__mutex/lock_guard.h
__mutex/mutex.h
__mutex/once_flag.h
__mutex/tag_types.h
__mutex/unique_lock.h
__node_handle
__numeric/accumulate.h
__numeric/adjacent_difference.h
__numeric/exclusive_scan.h
__numeric/gcd_lcm.h
__numeric/inclusive_scan.h
__numeric/inner_product.h
__numeric/iota.h
__numeric/midpoint.h
__numeric/partial_sum.h
__numeric/pstl.h
__numeric/reduce.h
__numeric/saturation_arithmetic.h
__numeric/transform_exclusive_scan.h
__numeric/transform_inclusive_scan.h
__numeric/transform_reduce.h
__ostream/basic_ostream.h
__ostream/print.h
__pstl/backend.h
__pstl/backend_fwd.h
__pstl/backends/default.h
__pstl/backends/libdispatch.h
__pstl/backends/serial.h
__pstl/backends/std_thread.h
__pstl/cpu_algos/any_of.h
__pstl/cpu_algos/cpu_traits.h
__pstl/cpu_algos/fill.h
__pstl/cpu_algos/find_if.h
__pstl/cpu_algos/for_each.h
__pstl/cpu_algos/merge.h
__pstl/cpu_algos/stable_sort.h
__pstl/cpu_algos/transform.h
__pstl/cpu_algos/transform_reduce.h
__pstl/dispatch.h
__pstl/handle_exception.h
__random/bernoulli_distribution.h
__random/binomial_distribution.h
__random/cauchy_distribution.h
__random/chi_squared_distribution.h
__random/clamp_to_integral.h
__random/default_random_engine.h
__random/discard_block_engine.h
__random/discrete_distribution.h
__random/exponential_distribution.h
__random/extreme_value_distribution.h
__random/fisher_f_distribution.h
__random/gamma_distribution.h
__random/generate_canonical.h
__random/geometric_distribution.h
__random/independent_bits_engine.h
__random/is_seed_sequence.h
__random/is_valid.h
__random/knuth_b.h
__random/linear_congruential_engine.h
__random/log2.h
__random/lognormal_distribution.h
__random/mersenne_twister_engine.h
__random/negative_binomial_distribution.h
__random/normal_distribution.h
__random/piecewise_constant_distribution.h
__random/piecewise_linear_distribution.h
__random/poisson_distribution.h
__random/random_device.h
__random/ranlux.h
__random/seed_seq.h
__random/shuffle_order_engine.h
__random/student_t_distribution.h
__random/subtract_with_carry_engine.h
__random/uniform_int_distribution.h
__random/uniform_random_bit_generator.h
__random/uniform_real_distribution.h
__random/weibull_distribution.h
__ranges/access.h
__ranges/all.h
__ranges/as_rvalue_view.h
__ranges/chunk_by_view.h
__ranges/common_view.h
__ranges/concepts.h
__ranges/container_compatible_range.h
__ranges/counted.h
__ranges/dangling.h
__ranges/data.h
__ranges/drop_view.h
__ranges/drop_while_view.h
__ranges/elements_view.h
__ranges/empty.h
__ranges/empty_view.h
__ranges/enable_borrowed_range.h
__ranges/enable_view.h
__ranges/filter_view.h
__ranges/from_range.h
__ranges/iota_view.h
__ranges/istream_view.h
__ranges/join_view.h
__ranges/lazy_split_view.h
__ranges/movable_box.h
__ranges/non_propagating_cache.h
__ranges/owning_view.h
__ranges/range_adaptor.h
__ranges/rbegin.h
__ranges/ref_view.h
__ranges/rend.h
__ranges/repeat_view.h
__ranges/reverse_view.h
__ranges/single_view.h
__ranges/size.h
__ranges/split_view.h
__ranges/subrange.h
__ranges/take_view.h
__ranges/take_while_view.h
__ranges/to.h
__ranges/transform_view.h
__ranges/view_interface.h
__ranges/views.h
__ranges/zip_view.h
__split_buffer
__std_mbstate_t.h
__stop_token/atomic_unique_lock.h
__stop_token/intrusive_list_view.h
__stop_token/intrusive_shared_ptr.h
__stop_token/stop_callback.h
__stop_token/stop_source.h
__stop_token/stop_state.h
__stop_token/stop_token.h
__string/char_traits.h
__string/constexpr_c_functions.h
__string/extern_template_lists.h
__support/ibm/gettod_zos.h
__support/ibm/locale_mgmt_zos.h
__support/ibm/nanosleep.h
__support/xlocale/__nop_locale_mgmt.h
__support/xlocale/__posix_l_fallback.h
__support/xlocale/__strtonum_fallback.h
__system_error/errc.h
__system_error/error_category.h
__system_error/error_code.h
__system_error/error_condition.h
__system_error/system_error.h
__thread/formatter.h
__thread/id.h
__thread/jthread.h
__thread/poll_with_backoff.h
__thread/support.h
__thread/support/c11.h
__thread/support/external.h
__thread/support/pthread.h
__thread/support/windows.h
__thread/this_thread.h
__thread/thread.h
__thread/timed_backoff_policy.h
__tree
__tuple/find_index.h
__tuple/ignore.h
__tuple/make_tuple_types.h
__tuple/sfinae_helpers.h
__tuple/tuple_element.h
__tuple/tuple_indices.h
__tuple/tuple_like.h
__tuple/tuple_like_ext.h
__tuple/tuple_like_no_subrange.h
__tuple/tuple_size.h
__tuple/tuple_types.h
__type_traits/add_const.h
__type_traits/add_cv.h
__type_traits/add_lvalue_reference.h
__type_traits/add_pointer.h
__type_traits/add_rvalue_reference.h
__type_traits/add_volatile.h
__type_traits/aligned_storage.h
__type_traits/aligned_union.h
__type_traits/alignment_of.h
__type_traits/can_extract_key.h
__type_traits/common_reference.h
__type_traits/common_type.h
__type_traits/conditional.h
__type_traits/conjunction.h
__type_traits/copy_cv.h
__type_traits/copy_cvref.h
__type_traits/datasizeof.h
__type_traits/decay.h
__type_traits/dependent_type.h
__type_traits/desugars_to.h
__type_traits/disjunction.h
__type_traits/enable_if.h
__type_traits/extent.h
__type_traits/has_unique_object_representation.h
__type_traits/has_virtual_destructor.h
__type_traits/integral_constant.h
__type_traits/invoke.h
__type_traits/is_abstract.h
__type_traits/is_aggregate.h
__type_traits/is_allocator.h
__type_traits/is_always_bitcastable.h
__type_traits/is_arithmetic.h
__type_traits/is_array.h
__type_traits/is_assignable.h
__type_traits/is_base_of.h
__type_traits/is_bounded_array.h
__type_traits/is_callable.h
__type_traits/is_char_like_type.h
__type_traits/is_class.h
__type_traits/is_compound.h
__type_traits/is_const.h
__type_traits/is_constant_evaluated.h
__type_traits/is_constructible.h
__type_traits/is_convertible.h
__type_traits/is_core_convertible.h
__type_traits/is_destructible.h
__type_traits/is_empty.h
__type_traits/is_enum.h
__type_traits/is_equality_comparable.h
__type_traits/is_execution_policy.h
__type_traits/is_final.h
__type_traits/is_floating_point.h
__type_traits/is_function.h
__type_traits/is_fundamental.h
__type_traits/is_implicitly_default_constructible.h
__type_traits/is_integral.h
__type_traits/is_literal_type.h
__type_traits/is_member_pointer.h
__type_traits/is_nothrow_assignable.h
__type_traits/is_nothrow_constructible.h
__type_traits/is_nothrow_convertible.h
__type_traits/is_nothrow_destructible.h
__type_traits/is_null_pointer.h
__type_traits/is_object.h
__type_traits/is_pod.h
__type_traits/is_pointer.h
__type_traits/is_polymorphic.h
__type_traits/is_primary_template.h
__type_traits/is_reference.h
__type_traits/is_reference_wrapper.h
__type_traits/is_referenceable.h
__type_traits/is_same.h
__type_traits/is_scalar.h
__type_traits/is_signed.h
__type_traits/is_signed_integer.h
__type_traits/is_specialization.h
__type_traits/is_standard_layout.h
__type_traits/is_swappable.h
__type_traits/is_trivial.h
__type_traits/is_trivially_assignable.h
__type_traits/is_trivially_constructible.h
__type_traits/is_trivially_copyable.h
__type_traits/is_trivially_destructible.h
__type_traits/is_trivially_lexicographically_comparable.h
__type_traits/is_trivially_relocatable.h
__type_traits/is_unbounded_array.h
__type_traits/is_union.h
__type_traits/is_unsigned.h
__type_traits/is_unsigned_integer.h
__type_traits/is_valid_expansion.h
__type_traits/is_void.h
__type_traits/is_volatile.h
__type_traits/lazy.h
__type_traits/make_32_64_or_128_bit.h
__type_traits/make_const_lvalue_ref.h
__type_traits/make_signed.h
__type_traits/make_unsigned.h
__type_traits/maybe_const.h
__type_traits/nat.h
__type_traits/negation.h
__type_traits/promote.h
__type_traits/rank.h
__type_traits/remove_all_extents.h
__type_traits/remove_const.h
__type_traits/remove_const_ref.h
__type_traits/remove_cv.h
__type_traits/remove_cvref.h
__type_traits/remove_extent.h
__type_traits/remove_pointer.h
__type_traits/remove_reference.h
__type_traits/remove_volatile.h
__type_traits/result_of.h
__type_traits/strip_signature.h
__type_traits/type_identity.h
__type_traits/type_list.h
__type_traits/underlying_type.h
__type_traits/unwrap_ref.h
__type_traits/void_t.h
__undef_macros
__utility/as_const.h
__utility/as_lvalue.h
__utility/auto_cast.h
__utility/cmp.h
__utility/convert_to_integral.h
__utility/declval.h
__utility/empty.h
__utility/exception_guard.h
__utility/exchange.h
__utility/forward.h
__utility/forward_like.h
__utility/in_place.h
__utility/integer_sequence.h
__utility/is_pointer_in_range.h
__utility/is_valid_range.h
__utility/move.h
__utility/no_destroy.h
__utility/pair.h
__utility/piecewise_construct.h
__utility/priority_tag.h
__utility/private_constructor_tag.h
__utility/rel_ops.h
__utility/small_buffer.h
__utility/swap.h
__utility/to_underlying.h
__utility/unreachable.h
__variant/monostate.h
__verbose_abort
algorithm
any
array
atomic
barrier
bit
bitset
cassert
ccomplex
cctype
cerrno
cfenv
cfloat
charconv
chrono
cinttypes
ciso646
climits
clocale
cmath
codecvt
compare
complex
complex.h
concepts
condition_variable
coroutine
csetjmp
csignal
cstdarg
cstdbool
cstddef
cstdint
cstdio
cstdlib
cstring
ctgmath
ctime
ctype.h
cuchar
cwchar
cwctype
deque
errno.h
exception
execution
expected
experimental/__simd/aligned_tag.h
experimental/__simd/declaration.h
experimental/__simd/reference.h
experimental/__simd/scalar.h
experimental/__simd/simd.h
experimental/__simd/simd_mask.h
experimental/__simd/traits.h
experimental/__simd/utility.h
experimental/__simd/vec_ext.h
experimental/iterator
experimental/memory
experimental/propagate_const
experimental/simd
experimental/type_traits
experimental/utility
ext/__hash
ext/hash_map
ext/hash_set
fenv.h
filesystem
float.h
format
forward_list
fstream
functional
future
initializer_list
inttypes.h
iomanip
ios
iosfwd
iostream
istream
iterator
latch
limits
list
locale
locale.h
map
math.h
mdspan
memory
memory_resource
module.modulemap
mutex
new
numbers
numeric
optional
ostream
print
queue
random
ranges
ratio
regex
scoped_allocator
semaphore
set
shared_mutex
source_location
span
sstream
stack
stdatomic.h
stdbool.h
stddef.h
stdexcept
stdint.h
stdio.h
stdlib.h
stop_token
streambuf
string
string.h
string_view
strstream
syncstream
system_error
tgmath.h
thread
tuple
type_traits
typeindex
typeinfo
uchar.h
unordered_map
unordered_set
utility
valarray
variant
vector
version
wchar.h
wctype.h
)
configure_file("__config_site.in" "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site" @ONLY)
configure_file("${LIBCXX_ASSERTION_HANDLER_FILE}" "${LIBCXX_GENERATED_INCLUDE_DIR}/__assertion_handler" COPYONLY)
set(_all_includes "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site"
"${LIBCXX_GENERATED_INCLUDE_DIR}/__assertion_handler")
foreach(f ${files})
set(src "${CMAKE_CURRENT_SOURCE_DIR}/${f}")
set(dst "${LIBCXX_GENERATED_INCLUDE_DIR}/${f}")
add_custom_command(OUTPUT ${dst}
DEPENDS ${src}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
COMMENT "Copying CXX header ${f}")
list(APPEND _all_includes "${dst}")
endforeach()
# Generate the IWYU mapping. This depends on all header files but it's also considered as an
# "include" for dependency tracking.
add_custom_command(OUTPUT "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp"
COMMAND "${Python3_EXECUTABLE}" "${LIBCXX_SOURCE_DIR}/utils/generate_iwyu_mapping.py" "-o" "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp"
DEPENDS ${_all_includes}
COMMENT "Generate the mapping file for include-what-you-use"
)
list(APPEND _all_includes "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp")
add_custom_target(generate-cxx-headers ALL DEPENDS ${_all_includes})
add_library(cxx-headers INTERFACE)
target_link_libraries(cxx-headers INTERFACE libcxx-libc-headers libcxx-abi-headers)
add_dependencies(cxx-headers generate-cxx-headers)
# It's important that the arch directory be included first so that its header files
# which interpose on the default include dir be included instead of the default ones.
target_include_directories(cxx-headers INTERFACE ${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}
${LIBCXX_GENERATED_INCLUDE_DIR})
if (LIBCXX_INSTALL_HEADERS)
foreach(file ${files})
get_filename_component(dir ${file} DIRECTORY)
install(FILES ${file}
DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}/${dir}"
COMPONENT cxx-headers
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
)
endforeach()
# Install the generated __config_site file to the per-target include dir.
install(FILES "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site"
DESTINATION "${LIBCXX_INSTALL_INCLUDE_TARGET_DIR}"
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
COMPONENT cxx-headers)
# Install the generated __assertion_handler file to the generic include dir.
install(FILES "${LIBCXX_GENERATED_INCLUDE_DIR}/__assertion_handler"
DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}"
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
COMPONENT cxx-headers)
# Install the generated IWYU file to the generic include dir.
install(FILES "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp"
DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}"
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
COMPONENT cxx-headers)
if (NOT CMAKE_CONFIGURATION_TYPES)
add_custom_target(install-cxx-headers
DEPENDS cxx-headers
COMMAND "${CMAKE_COMMAND}"
-DCMAKE_INSTALL_COMPONENT=cxx-headers
-P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
# Stripping is a no-op for headers
add_custom_target(install-cxx-headers-stripped DEPENDS install-cxx-headers)
endif()
endif()