aboutsummaryrefslogtreecommitdiff
path: root/lib/libc++/Makefile
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2025-12-09 09:38:16 +0000
committerDimitry Andric <dim@FreeBSD.org>2026-04-25 14:11:52 +0000
commit770cf0a5f02dc8983a89c6568d741fbc25baa999 (patch)
tree60ce14554e51e24e45894bc4d38ae2f2e463916f /lib/libc++/Makefile
parentbb722a7d0f1642bff6487f943ad0427799a6e5bf (diff)
Diffstat (limited to 'lib/libc++/Makefile')
-rw-r--r--lib/libc++/Makefile940
1 files changed, 917 insertions, 23 deletions
diff --git a/lib/libc++/Makefile b/lib/libc++/Makefile
index a5e45c4ca54f..b70bca4e5e63 100644
--- a/lib/libc++/Makefile
+++ b/lib/libc++/Makefile
@@ -41,7 +41,6 @@ SRCS+= hash.cpp
SRCS+= ios.cpp
SRCS+= ios.instantiations.cpp
SRCS+= iostream.cpp
-SRCS+= legacy_pointer_safety.cpp
SRCS+= locale.cpp
SRCS+= memory.cpp
SRCS+= memory_resource.cpp
@@ -105,6 +104,8 @@ CFLAGS+= -fno-semantic-interposition
CFLAGS+= -fvisibility-inlines-hidden
CFLAGS+= -fvisibility=hidden
+CFLAGS.charconv.cpp+= -isystem ${SRCTOP}/contrib/llvm-project/libc
+
.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 130000
# NOTE: gcc 12 cannot correctly compile all libc++'s C++23 code. To temporarily
# support gcc 12, compile libc++ in C++20 mode, but this will leave out any
@@ -126,11 +127,11 @@ STD_HEADERS+= __locale
STD_HEADERS+= __mbstate_t.h
STD_HEADERS+= __node_handle
STD_HEADERS+= __split_buffer
-STD_HEADERS+= __std_clang_module
STD_HEADERS+= __std_mbstate_t.h
STD_HEADERS+= __tree
STD_HEADERS+= __undef_macros
STD_HEADERS+= __verbose_abort
+STD_HEADERS+= __verbose_trap
STD_HEADERS+= algorithm
STD_HEADERS+= any
STD_HEADERS+= array
@@ -160,6 +161,7 @@ STD_HEADERS+= condition_variable
STD_HEADERS+= coroutine
STD_HEADERS+= csetjmp
STD_HEADERS+= csignal
+STD_HEADERS+= cstdalign
STD_HEADERS+= cstdarg
STD_HEADERS+= cstdbool
STD_HEADERS+= cstddef
@@ -180,6 +182,8 @@ STD_HEADERS+= execution
STD_HEADERS+= expected
STD_HEADERS+= fenv.h
STD_HEADERS+= filesystem
+STD_HEADERS+= flat_map
+STD_HEADERS+= flat_set
STD_HEADERS+= float.h
STD_HEADERS+= format
STD_HEADERS+= forward_list
@@ -198,13 +202,11 @@ STD_HEADERS+= latch
STD_HEADERS+= limits
STD_HEADERS+= list
STD_HEADERS+= locale
-STD_HEADERS+= locale.h
STD_HEADERS+= map
STD_HEADERS+= math.h
STD_HEADERS+= mdspan
STD_HEADERS+= memory
STD_HEADERS+= memory_resource
-STD_HEADERS+= module.modulemap
STD_HEADERS+= mutex
STD_HEADERS+= new
STD_HEADERS+= numbers
@@ -229,7 +231,6 @@ STD_HEADERS+= stdatomic.h
STD_HEADERS+= stdbool.h
STD_HEADERS+= stddef.h
STD_HEADERS+= stdexcept
-STD_HEADERS+= stdint.h
STD_HEADERS+= stdio.h
STD_HEADERS+= stdlib.h
STD_HEADERS+= stop_token
@@ -267,7 +268,10 @@ STD+= ${.CURDIR}/__assertion_handler
STD+= ${.CURDIR}/__config_site
# Generated by CMake as of libc++ 19.
-STD_HEADERS+= ${.CURDIR}/libcxx.imp
+STD+= ${.CURDIR}/libcxx.imp
+
+# Generated by CMake as of libc++ 21.
+STD+= ${.CURDIR}/module.modulemap
RT_HEADERS+= cxxabi.h
.for hdr in ${RT_HEADERS}
@@ -300,9 +304,9 @@ ALG_HEADERS+= find_first_of.h
ALG_HEADERS+= find_if.h
ALG_HEADERS+= find_if_not.h
ALG_HEADERS+= find_segment_if.h
-ALG_HEADERS+= fold.h
ALG_HEADERS+= for_each.h
ALG_HEADERS+= for_each_n.h
+ALG_HEADERS+= for_each_n_segment.h
ALG_HEADERS+= for_each_segment.h
ALG_HEADERS+= generate.h
ALG_HEADERS+= generate_n.h
@@ -342,6 +346,7 @@ ALG_HEADERS+= move_backward.h
ALG_HEADERS+= next_permutation.h
ALG_HEADERS+= none_of.h
ALG_HEADERS+= nth_element.h
+ALG_HEADERS+= out_value_result.h
ALG_HEADERS+= partial_sort.h
ALG_HEADERS+= partial_sort_copy.h
ALG_HEADERS+= partition.h
@@ -351,6 +356,7 @@ ALG_HEADERS+= pop_heap.h
ALG_HEADERS+= prev_permutation.h
ALG_HEADERS+= pstl.h
ALG_HEADERS+= push_heap.h
+ALG_HEADERS+= radix_sort.h
ALG_HEADERS+= ranges_adjacent_find.h
ALG_HEADERS+= ranges_all_of.h
ALG_HEADERS+= ranges_any_of.h
@@ -375,6 +381,7 @@ ALG_HEADERS+= ranges_find_first_of.h
ALG_HEADERS+= ranges_find_if.h
ALG_HEADERS+= ranges_find_if_not.h
ALG_HEADERS+= ranges_find_last.h
+ALG_HEADERS+= ranges_fold.h
ALG_HEADERS+= ranges_for_each.h
ALG_HEADERS+= ranges_for_each_n.h
ALG_HEADERS+= ranges_generate.h
@@ -487,7 +494,6 @@ INCSGROUPS+= ATM
ATMDIR= ${CXXINCLUDEDIR}/__atomic
ATM_HEADERS+= aliases.h
ATM_HEADERS+= atomic.h
-ATM_HEADERS+= atomic_base.h
ATM_HEADERS+= atomic_flag.h
ATM_HEADERS+= atomic_init.h
ATM_HEADERS+= atomic_lock_free.h
@@ -495,16 +501,24 @@ ATM_HEADERS+= atomic_ref.h
ATM_HEADERS+= atomic_sync.h
ATM_HEADERS+= check_memory_order.h
ATM_HEADERS+= contention_t.h
-ATM_HEADERS+= cxx_atomic_impl.h
ATM_HEADERS+= fence.h
ATM_HEADERS+= is_always_lock_free.h
ATM_HEADERS+= kill_dependency.h
ATM_HEADERS+= memory_order.h
+ATM_HEADERS+= support.h
ATM_HEADERS+= to_gcc_order.h
.for hdr in ${ATM_HEADERS}
ATM+= ${HDRDIR}/__atomic/${hdr}
.endfor
+INCSGROUPS+= ATS
+ATSDIR= ${CXXINCLUDEDIR}/__atomic/support
+ATS_HEADERS+= c11.h
+ATS_HEADERS+= gcc.h
+.for hdr in ${ATS_HEADERS}
+ATS+= ${HDRDIR}/__atomic/support/${hdr}
+.endfor
+
INCSGROUPS+= BIT
BITDIR= ${CXXINCLUDEDIR}/__bit
BIT_HEADERS+= bit_cast.h
@@ -528,6 +542,7 @@ BIT+= ${HDRDIR}/__bit/${hdr}
INCSGROUPS+= CHC
CHCDIR= ${CXXINCLUDEDIR}/__charconv
CHC_HEADERS+= chars_format.h
+CHC_HEADERS+= from_chars_floating_point.h
CHC_HEADERS+= from_chars_integral.h
CHC_HEADERS+= from_chars_result.h
CHC_HEADERS+= tables.h
@@ -552,6 +567,7 @@ CHR_HEADERS+= duration.h
CHR_HEADERS+= exception.h
CHR_HEADERS+= file_clock.h
CHR_HEADERS+= formatter.h
+CHR_HEADERS+= gps_clock.h
CHR_HEADERS+= hh_mm_ss.h
CHR_HEADERS+= high_resolution_clock.h
CHR_HEADERS+= leap_second.h
@@ -566,11 +582,13 @@ CHR_HEADERS+= statically_widen.h
CHR_HEADERS+= steady_clock.h
CHR_HEADERS+= sys_info.h
CHR_HEADERS+= system_clock.h
+CHR_HEADERS+= tai_clock.h
CHR_HEADERS+= time_point.h
CHR_HEADERS+= time_zone.h
CHR_HEADERS+= time_zone_link.h
CHR_HEADERS+= tzdb.h
CHR_HEADERS+= tzdb_list.h
+CHR_HEADERS+= utc_clock.h
CHR_HEADERS+= weekday.h
CHR_HEADERS+= year.h
CHR_HEADERS+= year_month.h
@@ -656,6 +674,780 @@ COR_HEADERS+= trivial_awaitables.h
COR+= ${HDRDIR}/__coroutine/${hdr}
.endfor
+INCSGROUPS+= CST
+CSTDIR= ${CXXINCLUDEDIR}/__cstddef
+CST_HEADERS+= byte.h
+CST_HEADERS+= max_align_t.h
+CST_HEADERS+= nullptr_t.h
+CST_HEADERS+= ptrdiff_t.h
+CST_HEADERS+= size_t.h
+.for hdr in ${CST_HEADERS}
+CST+= ${HDRDIR}/__cstddef/${hdr}
+.endfor
+
+INCSGROUPS+= C3
+C3DIR= ${CXXINCLUDEDIR}/__cxx03
+C3_HEADERS+= __assert
+C3_HEADERS+= __bit_reference
+C3_HEADERS+= __config
+C3_HEADERS+= __hash_table
+C3_HEADERS+= __locale
+C3_HEADERS+= __mbstate_t.h
+C3_HEADERS+= __split_buffer
+C3_HEADERS+= __std_clang_module
+C3_HEADERS+= __std_mbstate_t.h
+C3_HEADERS+= __tree
+C3_HEADERS+= __undef_macros
+C3_HEADERS+= __verbose_abort
+C3_HEADERS+= __verbose_trap
+C3_HEADERS+= algorithm
+C3_HEADERS+= array
+C3_HEADERS+= atomic
+C3_HEADERS+= bitset
+C3_HEADERS+= cassert
+C3_HEADERS+= ccomplex
+C3_HEADERS+= cctype
+C3_HEADERS+= cerrno
+C3_HEADERS+= cfenv
+C3_HEADERS+= cfloat
+C3_HEADERS+= chrono
+C3_HEADERS+= cinttypes
+C3_HEADERS+= ciso646
+C3_HEADERS+= climits
+C3_HEADERS+= clocale
+C3_HEADERS+= cmath
+C3_HEADERS+= codecvt
+C3_HEADERS+= complex
+C3_HEADERS+= complex.h
+C3_HEADERS+= condition_variable
+C3_HEADERS+= csetjmp
+C3_HEADERS+= csignal
+C3_HEADERS+= cstdarg
+C3_HEADERS+= cstdbool
+C3_HEADERS+= cstddef
+C3_HEADERS+= cstdint
+C3_HEADERS+= cstdio
+C3_HEADERS+= cstdlib
+C3_HEADERS+= cstring
+C3_HEADERS+= ctgmath
+C3_HEADERS+= ctime
+C3_HEADERS+= ctype.h
+C3_HEADERS+= cuchar
+C3_HEADERS+= cwchar
+C3_HEADERS+= cwctype
+C3_HEADERS+= deque
+C3_HEADERS+= errno.h
+C3_HEADERS+= exception
+C3_HEADERS+= fenv.h
+C3_HEADERS+= float.h
+C3_HEADERS+= forward_list
+C3_HEADERS+= fstream
+C3_HEADERS+= functional
+C3_HEADERS+= future
+C3_HEADERS+= inttypes.h
+C3_HEADERS+= iomanip
+C3_HEADERS+= ios
+C3_HEADERS+= iosfwd
+C3_HEADERS+= iostream
+C3_HEADERS+= istream
+C3_HEADERS+= iterator
+C3_HEADERS+= limits
+C3_HEADERS+= list
+C3_HEADERS+= locale
+C3_HEADERS+= locale.h
+C3_HEADERS+= map
+C3_HEADERS+= math.h
+C3_HEADERS+= memory
+C3_HEADERS+= module.modulemap
+C3_HEADERS+= mutex
+C3_HEADERS+= new
+C3_HEADERS+= numeric
+C3_HEADERS+= ostream
+C3_HEADERS+= queue
+C3_HEADERS+= random
+C3_HEADERS+= ratio
+C3_HEADERS+= regex
+C3_HEADERS+= set
+C3_HEADERS+= sstream
+C3_HEADERS+= stack
+C3_HEADERS+= stdatomic.h
+C3_HEADERS+= stdbool.h
+C3_HEADERS+= stddef.h
+C3_HEADERS+= stdexcept
+C3_HEADERS+= stdint.h
+C3_HEADERS+= stdio.h
+C3_HEADERS+= stdlib.h
+C3_HEADERS+= streambuf
+C3_HEADERS+= string
+C3_HEADERS+= string.h
+C3_HEADERS+= string_view
+C3_HEADERS+= strstream
+C3_HEADERS+= system_error
+C3_HEADERS+= tgmath.h
+C3_HEADERS+= thread
+C3_HEADERS+= type_traits
+C3_HEADERS+= typeindex
+C3_HEADERS+= typeinfo
+C3_HEADERS+= uchar.h
+C3_HEADERS+= unordered_map
+C3_HEADERS+= unordered_set
+C3_HEADERS+= utility
+C3_HEADERS+= valarray
+C3_HEADERS+= vector
+C3_HEADERS+= version
+C3_HEADERS+= wchar.h
+C3_HEADERS+= wctype.h
+.for hdr in ${C3_HEADERS}
+C3+= ${HDRDIR}/__cxx03/${hdr}
+.endfor
+
+INCSGROUPS+= C3ALG
+C3ALGDIR= ${CXXINCLUDEDIR}/__cxx03/__algorithm
+C3ALG_HEADERS+= adjacent_find.h
+C3ALG_HEADERS+= all_of.h
+C3ALG_HEADERS+= any_of.h
+C3ALG_HEADERS+= binary_search.h
+C3ALG_HEADERS+= comp.h
+C3ALG_HEADERS+= comp_ref_type.h
+C3ALG_HEADERS+= copy.h
+C3ALG_HEADERS+= copy_backward.h
+C3ALG_HEADERS+= copy_if.h
+C3ALG_HEADERS+= copy_move_common.h
+C3ALG_HEADERS+= copy_n.h
+C3ALG_HEADERS+= count.h
+C3ALG_HEADERS+= count_if.h
+C3ALG_HEADERS+= equal.h
+C3ALG_HEADERS+= equal_range.h
+C3ALG_HEADERS+= fill.h
+C3ALG_HEADERS+= fill_n.h
+C3ALG_HEADERS+= find.h
+C3ALG_HEADERS+= find_end.h
+C3ALG_HEADERS+= find_first_of.h
+C3ALG_HEADERS+= find_if.h
+C3ALG_HEADERS+= find_if_not.h
+C3ALG_HEADERS+= find_segment_if.h
+C3ALG_HEADERS+= for_each.h
+C3ALG_HEADERS+= for_each_segment.h
+C3ALG_HEADERS+= generate.h
+C3ALG_HEADERS+= generate_n.h
+C3ALG_HEADERS+= half_positive.h
+C3ALG_HEADERS+= includes.h
+C3ALG_HEADERS+= inplace_merge.h
+C3ALG_HEADERS+= is_heap.h
+C3ALG_HEADERS+= is_heap_until.h
+C3ALG_HEADERS+= is_partitioned.h
+C3ALG_HEADERS+= is_permutation.h
+C3ALG_HEADERS+= is_sorted.h
+C3ALG_HEADERS+= is_sorted_until.h
+C3ALG_HEADERS+= iter_swap.h
+C3ALG_HEADERS+= iterator_operations.h
+C3ALG_HEADERS+= lexicographical_compare.h
+C3ALG_HEADERS+= lower_bound.h
+C3ALG_HEADERS+= make_heap.h
+C3ALG_HEADERS+= make_projected.h
+C3ALG_HEADERS+= max.h
+C3ALG_HEADERS+= max_element.h
+C3ALG_HEADERS+= merge.h
+C3ALG_HEADERS+= min.h
+C3ALG_HEADERS+= min_element.h
+C3ALG_HEADERS+= minmax.h
+C3ALG_HEADERS+= minmax_element.h
+C3ALG_HEADERS+= mismatch.h
+C3ALG_HEADERS+= move.h
+C3ALG_HEADERS+= move_backward.h
+C3ALG_HEADERS+= next_permutation.h
+C3ALG_HEADERS+= none_of.h
+C3ALG_HEADERS+= nth_element.h
+C3ALG_HEADERS+= partial_sort.h
+C3ALG_HEADERS+= partial_sort_copy.h
+C3ALG_HEADERS+= partition.h
+C3ALG_HEADERS+= partition_copy.h
+C3ALG_HEADERS+= partition_point.h
+C3ALG_HEADERS+= pop_heap.h
+C3ALG_HEADERS+= prev_permutation.h
+C3ALG_HEADERS+= push_heap.h
+C3ALG_HEADERS+= remove.h
+C3ALG_HEADERS+= remove_copy.h
+C3ALG_HEADERS+= remove_copy_if.h
+C3ALG_HEADERS+= remove_if.h
+C3ALG_HEADERS+= replace.h
+C3ALG_HEADERS+= replace_copy.h
+C3ALG_HEADERS+= replace_copy_if.h
+C3ALG_HEADERS+= replace_if.h
+C3ALG_HEADERS+= reverse.h
+C3ALG_HEADERS+= reverse_copy.h
+C3ALG_HEADERS+= rotate.h
+C3ALG_HEADERS+= rotate_copy.h
+C3ALG_HEADERS+= search.h
+C3ALG_HEADERS+= search_n.h
+C3ALG_HEADERS+= set_difference.h
+C3ALG_HEADERS+= set_intersection.h
+C3ALG_HEADERS+= set_symmetric_difference.h
+C3ALG_HEADERS+= set_union.h
+C3ALG_HEADERS+= shuffle.h
+C3ALG_HEADERS+= sift_down.h
+C3ALG_HEADERS+= simd_utils.h
+C3ALG_HEADERS+= sort.h
+C3ALG_HEADERS+= sort_heap.h
+C3ALG_HEADERS+= stable_partition.h
+C3ALG_HEADERS+= stable_sort.h
+C3ALG_HEADERS+= swap_ranges.h
+C3ALG_HEADERS+= three_way_comp_ref_type.h
+C3ALG_HEADERS+= transform.h
+C3ALG_HEADERS+= uniform_random_bit_generator_adaptor.h
+C3ALG_HEADERS+= unique.h
+C3ALG_HEADERS+= unique_copy.h
+C3ALG_HEADERS+= unwrap_iter.h
+C3ALG_HEADERS+= unwrap_range.h
+C3ALG_HEADERS+= upper_bound.h
+.for hdr in ${C3ALG_HEADERS}
+C3ALG+= ${HDRDIR}/__cxx03/__algorithm/${hdr}
+.endfor
+
+INCSGROUPS+= C3ATM
+C3ATMDIR= ${CXXINCLUDEDIR}/__cxx03/__atomic
+C3ATM_HEADERS+= aliases.h
+C3ATM_HEADERS+= atomic.h
+C3ATM_HEADERS+= atomic_base.h
+C3ATM_HEADERS+= atomic_flag.h
+C3ATM_HEADERS+= atomic_init.h
+C3ATM_HEADERS+= atomic_lock_free.h
+C3ATM_HEADERS+= atomic_sync.h
+C3ATM_HEADERS+= check_memory_order.h
+C3ATM_HEADERS+= contention_t.h
+C3ATM_HEADERS+= cxx_atomic_impl.h
+C3ATM_HEADERS+= fence.h
+C3ATM_HEADERS+= is_always_lock_free.h
+C3ATM_HEADERS+= kill_dependency.h
+C3ATM_HEADERS+= memory_order.h
+C3ATM_HEADERS+= to_gcc_order.h
+.for hdr in ${C3ATM_HEADERS}
+C3ATM+= ${HDRDIR}/__cxx03/__atomic/${hdr}
+.endfor
+
+INCSGROUPS+= C3BIT
+C3BITDIR= ${CXXINCLUDEDIR}/__cxx03/__bit
+C3BIT_HEADERS+= blsr.h
+C3BIT_HEADERS+= countl.h
+C3BIT_HEADERS+= countr.h
+C3BIT_HEADERS+= invert_if.h
+C3BIT_HEADERS+= popcount.h
+C3BIT_HEADERS+= rotate.h
+.for hdr in ${C3BIT_HEADERS}
+C3BIT+= ${HDRDIR}/__cxx03/__bit/${hdr}
+.endfor
+
+INCSGROUPS+= C3CHR
+C3CHRDIR= ${CXXINCLUDEDIR}/__cxx03/__chrono
+C3CHR_HEADERS+= convert_to_timespec.h
+C3CHR_HEADERS+= duration.h
+C3CHR_HEADERS+= high_resolution_clock.h
+C3CHR_HEADERS+= steady_clock.h
+C3CHR_HEADERS+= system_clock.h
+C3CHR_HEADERS+= time_point.h
+.for hdr in ${C3CHR_HEADERS}
+C3CHR+= ${HDRDIR}/__cxx03/__chrono/${hdr}
+.endfor
+
+INCSGROUPS+= C3CND
+C3CNDDIR= ${CXXINCLUDEDIR}/__cxx03/__condition_variable
+C3CND_HEADERS+= condition_variable.h
+.for hdr in ${C3CND_HEADERS}
+C3CND+= ${HDRDIR}/__cxx03/__condition_variable/${hdr}
+.endfor
+
+INCSGROUPS+= C3CNF
+C3CNFDIR= ${CXXINCLUDEDIR}/__cxx03/__configuration
+C3CNF_HEADERS+= abi.h
+C3CNF_HEADERS+= availability.h
+C3CNF_HEADERS+= compiler.h
+C3CNF_HEADERS+= config_site_shim.h
+C3CNF_HEADERS+= language.h
+C3CNF_HEADERS+= platform.h
+.for hdr in ${C3CNF_HEADERS}
+C3CNF+= ${HDRDIR}/__cxx03/__configuration/${hdr}
+.endfor
+
+INCSGROUPS+= C3DBG
+C3DBGDIR= ${CXXINCLUDEDIR}/__cxx03/__debug_utils
+C3DBG_HEADERS+= randomize_range.h
+C3DBG_HEADERS+= sanitizers.h
+C3DBG_HEADERS+= strict_weak_ordering_check.h
+.for hdr in ${C3DBG_HEADERS}
+C3DBG+= ${HDRDIR}/__cxx03/__debug_utils/${hdr}
+.endfor
+
+INCSGROUPS+= C3EXC
+C3EXCDIR= ${CXXINCLUDEDIR}/__cxx03/__exception
+C3EXC_HEADERS+= exception.h
+C3EXC_HEADERS+= exception_ptr.h
+C3EXC_HEADERS+= nested_exception.h
+C3EXC_HEADERS+= operations.h
+C3EXC_HEADERS+= terminate.h
+.for hdr in ${C3EXC_HEADERS}
+C3EXC+= ${HDRDIR}/__cxx03/__exception/${hdr}
+.endfor
+
+INCSGROUPS+= C3FUN
+C3FUNDIR= ${CXXINCLUDEDIR}/__cxx03/__functional
+C3FUN_HEADERS+= binary_function.h
+C3FUN_HEADERS+= binary_negate.h
+C3FUN_HEADERS+= bind.h
+C3FUN_HEADERS+= binder1st.h
+C3FUN_HEADERS+= binder2nd.h
+C3FUN_HEADERS+= hash.h
+C3FUN_HEADERS+= identity.h
+C3FUN_HEADERS+= mem_fn.h
+C3FUN_HEADERS+= mem_fun_ref.h
+C3FUN_HEADERS+= operations.h
+C3FUN_HEADERS+= pointer_to_binary_function.h
+C3FUN_HEADERS+= pointer_to_unary_function.h
+C3FUN_HEADERS+= reference_wrapper.h
+C3FUN_HEADERS+= unary_function.h
+C3FUN_HEADERS+= unary_negate.h
+C3FUN_HEADERS+= weak_result_type.h
+.for hdr in ${C3FUN_HEADERS}
+C3FUN+= ${HDRDIR}/__cxx03/__functional/${hdr}
+.endfor
+
+INCSGROUPS+= C3FWD
+C3FWDDIR= ${CXXINCLUDEDIR}/__cxx03/__fwd
+C3FWD_HEADERS+= array.h
+C3FWD_HEADERS+= bit_reference.h
+C3FWD_HEADERS+= complex.h
+C3FWD_HEADERS+= deque.h
+C3FWD_HEADERS+= fstream.h
+C3FWD_HEADERS+= functional.h
+C3FWD_HEADERS+= ios.h
+C3FWD_HEADERS+= istream.h
+C3FWD_HEADERS+= memory.h
+C3FWD_HEADERS+= ostream.h
+C3FWD_HEADERS+= pair.h
+C3FWD_HEADERS+= queue.h
+C3FWD_HEADERS+= sstream.h
+C3FWD_HEADERS+= stack.h
+C3FWD_HEADERS+= streambuf.h
+C3FWD_HEADERS+= string.h
+C3FWD_HEADERS+= string_view.h
+C3FWD_HEADERS+= tuple.h
+C3FWD_HEADERS+= vector.h
+.for hdr in ${C3FWD_HEADERS}
+C3FWD+= ${HDRDIR}/__cxx03/__fwd/${hdr}
+.endfor
+
+INCSGROUPS+= C3IOS
+C3IOSDIR= ${CXXINCLUDEDIR}/__cxx03/__ios
+C3IOS_HEADERS+= fpos.h
+.for hdr in ${C3IOS_HEADERS}
+C3IOS+= ${HDRDIR}/__cxx03/__ios/${hdr}
+.endfor
+
+INCSGROUPS+= C3IT
+C3ITDIR= ${CXXINCLUDEDIR}/__cxx03/__iterator
+C3IT_HEADERS+= access.h
+C3IT_HEADERS+= advance.h
+C3IT_HEADERS+= aliasing_iterator.h
+C3IT_HEADERS+= back_insert_iterator.h
+C3IT_HEADERS+= bounded_iter.h
+C3IT_HEADERS+= distance.h
+C3IT_HEADERS+= erase_if_container.h
+C3IT_HEADERS+= front_insert_iterator.h
+C3IT_HEADERS+= insert_iterator.h
+C3IT_HEADERS+= istream_iterator.h
+C3IT_HEADERS+= istreambuf_iterator.h
+C3IT_HEADERS+= iterator.h
+C3IT_HEADERS+= iterator_traits.h
+C3IT_HEADERS+= move_iterator.h
+C3IT_HEADERS+= next.h
+C3IT_HEADERS+= ostream_iterator.h
+C3IT_HEADERS+= ostreambuf_iterator.h
+C3IT_HEADERS+= prev.h
+C3IT_HEADERS+= reverse_iterator.h
+C3IT_HEADERS+= segmented_iterator.h
+C3IT_HEADERS+= wrap_iter.h
+.for hdr in ${C3IT_HEADERS}
+C3IT+= ${HDRDIR}/__cxx03/__iterator/${hdr}
+.endfor
+
+INCSGROUPS+= C3LOC
+C3LOCDIR= ${CXXINCLUDEDIR}/__cxx03/__locale_dir
+C3LOC_HEADERS+= locale_base_api.h
+.for hdr in ${C3LOC_HEADERS}
+C3LOC+= ${HDRDIR}/__cxx03/__locale_dir/${hdr}
+.endfor
+
+INCSGROUPS+= C3LBA
+C3LBADIR= ${CXXINCLUDEDIR}/__cxx03/__locale_dir/locale_base_api
+C3LBA_HEADERS+= android.h
+C3LBA_HEADERS+= bsd_locale_defaults.h
+C3LBA_HEADERS+= bsd_locale_fallbacks.h
+C3LBA_HEADERS+= fuchsia.h
+C3LBA_HEADERS+= ibm.h
+C3LBA_HEADERS+= locale_guard.h
+C3LBA_HEADERS+= musl.h
+C3LBA_HEADERS+= newlib.h
+C3LBA_HEADERS+= openbsd.h
+C3LBA_HEADERS+= win32.h
+.for hdr in ${C3LBA_HEADERS}
+C3LBA+= ${HDRDIR}/__cxx03/__locale_dir/locale_base_api/${hdr}
+.endfor
+
+INCSGROUPS+= C3MAT
+C3MATDIR= ${CXXINCLUDEDIR}/__cxx03/__math
+C3MAT_HEADERS+= abs.h
+C3MAT_HEADERS+= copysign.h
+C3MAT_HEADERS+= error_functions.h
+C3MAT_HEADERS+= exponential_functions.h
+C3MAT_HEADERS+= fdim.h
+C3MAT_HEADERS+= fma.h
+C3MAT_HEADERS+= gamma.h
+C3MAT_HEADERS+= hyperbolic_functions.h
+C3MAT_HEADERS+= hypot.h
+C3MAT_HEADERS+= inverse_hyperbolic_functions.h
+C3MAT_HEADERS+= inverse_trigonometric_functions.h
+C3MAT_HEADERS+= logarithms.h
+C3MAT_HEADERS+= min_max.h
+C3MAT_HEADERS+= modulo.h
+C3MAT_HEADERS+= remainder.h
+C3MAT_HEADERS+= roots.h
+C3MAT_HEADERS+= rounding_functions.h
+C3MAT_HEADERS+= traits.h
+C3MAT_HEADERS+= trigonometric_functions.h
+.for hdr in ${C3MAT_HEADERS}
+C3MAT+= ${HDRDIR}/__cxx03/__math/${hdr}
+.endfor
+
+INCSGROUPS+= C3MEM
+C3MEMDIR= ${CXXINCLUDEDIR}/__cxx03/__memory
+C3MEM_HEADERS+= addressof.h
+C3MEM_HEADERS+= align.h
+C3MEM_HEADERS+= aligned_alloc.h
+C3MEM_HEADERS+= allocate_at_least.h
+C3MEM_HEADERS+= allocation_guard.h
+C3MEM_HEADERS+= allocator.h
+C3MEM_HEADERS+= allocator_arg_t.h
+C3MEM_HEADERS+= allocator_destructor.h
+C3MEM_HEADERS+= allocator_traits.h
+C3MEM_HEADERS+= assume_aligned.h
+C3MEM_HEADERS+= auto_ptr.h
+C3MEM_HEADERS+= builtin_new_allocator.h
+C3MEM_HEADERS+= compressed_pair.h
+C3MEM_HEADERS+= construct_at.h
+C3MEM_HEADERS+= destruct_n.h
+C3MEM_HEADERS+= pointer_traits.h
+C3MEM_HEADERS+= raw_storage_iterator.h
+C3MEM_HEADERS+= shared_ptr.h
+C3MEM_HEADERS+= swap_allocator.h
+C3MEM_HEADERS+= temp_value.h
+C3MEM_HEADERS+= temporary_buffer.h
+C3MEM_HEADERS+= uninitialized_algorithms.h
+C3MEM_HEADERS+= unique_ptr.h
+C3MEM_HEADERS+= uses_allocator.h
+C3MEM_HEADERS+= voidify.h
+.for hdr in ${C3MEM_HEADERS}
+C3MEM+= ${HDRDIR}/__cxx03/__memory/${hdr}
+.endfor
+
+INCSGROUPS+= C3MUT
+C3MUTDIR= ${CXXINCLUDEDIR}/__cxx03/__mutex
+C3MUT_HEADERS+= lock_guard.h
+C3MUT_HEADERS+= mutex.h
+C3MUT_HEADERS+= once_flag.h
+C3MUT_HEADERS+= tag_types.h
+C3MUT_HEADERS+= unique_lock.h
+.for hdr in ${C3MUT_HEADERS}
+C3MUT+= ${HDRDIR}/__cxx03/__mutex/${hdr}
+.endfor
+
+INCSGROUPS+= C3NUM
+C3NUMDIR= ${CXXINCLUDEDIR}/__cxx03/__numeric
+C3NUM_HEADERS+= accumulate.h
+C3NUM_HEADERS+= adjacent_difference.h
+C3NUM_HEADERS+= inner_product.h
+C3NUM_HEADERS+= iota.h
+C3NUM_HEADERS+= partial_sum.h
+.for hdr in ${C3NUM_HEADERS}
+C3NUM+= ${HDRDIR}/__cxx03/__numeric/${hdr}
+.endfor
+
+INCSGROUPS+= C3OST
+C3OSTDIR= ${CXXINCLUDEDIR}/__cxx03/__ostream
+C3OST_HEADERS+= basic_ostream.h
+.for hdr in ${C3OST_HEADERS}
+C3OST+= ${HDRDIR}/__cxx03/__ostream/${hdr}
+.endfor
+
+INCSGROUPS+= C3RND
+C3RNDDIR= ${CXXINCLUDEDIR}/__cxx03/__random
+C3RND_HEADERS+= bernoulli_distribution.h
+C3RND_HEADERS+= binomial_distribution.h
+C3RND_HEADERS+= cauchy_distribution.h
+C3RND_HEADERS+= chi_squared_distribution.h
+C3RND_HEADERS+= clamp_to_integral.h
+C3RND_HEADERS+= default_random_engine.h
+C3RND_HEADERS+= discard_block_engine.h
+C3RND_HEADERS+= discrete_distribution.h
+C3RND_HEADERS+= exponential_distribution.h
+C3RND_HEADERS+= extreme_value_distribution.h
+C3RND_HEADERS+= fisher_f_distribution.h
+C3RND_HEADERS+= gamma_distribution.h
+C3RND_HEADERS+= generate_canonical.h
+C3RND_HEADERS+= geometric_distribution.h
+C3RND_HEADERS+= independent_bits_engine.h
+C3RND_HEADERS+= is_seed_sequence.h
+C3RND_HEADERS+= is_valid.h
+C3RND_HEADERS+= knuth_b.h
+C3RND_HEADERS+= linear_congruential_engine.h
+C3RND_HEADERS+= log2.h
+C3RND_HEADERS+= lognormal_distribution.h
+C3RND_HEADERS+= mersenne_twister_engine.h
+C3RND_HEADERS+= negative_binomial_distribution.h
+C3RND_HEADERS+= normal_distribution.h
+C3RND_HEADERS+= piecewise_constant_distribution.h
+C3RND_HEADERS+= piecewise_linear_distribution.h
+C3RND_HEADERS+= poisson_distribution.h
+C3RND_HEADERS+= random_device.h
+C3RND_HEADERS+= ranlux.h
+C3RND_HEADERS+= seed_seq.h
+C3RND_HEADERS+= shuffle_order_engine.h
+C3RND_HEADERS+= student_t_distribution.h
+C3RND_HEADERS+= subtract_with_carry_engine.h
+C3RND_HEADERS+= uniform_int_distribution.h
+C3RND_HEADERS+= uniform_real_distribution.h
+C3RND_HEADERS+= weibull_distribution.h
+.for hdr in ${C3RND_HEADERS}
+C3RND+= ${HDRDIR}/__cxx03/__random/${hdr}
+.endfor
+
+INCSGROUPS+= C3ST
+C3STDIR= ${CXXINCLUDEDIR}/__cxx03/__string
+C3ST_HEADERS+= char_traits.h
+C3ST_HEADERS+= constexpr_c_functions.h
+C3ST_HEADERS+= extern_template_lists.h
+.for hdr in ${C3ST_HEADERS}
+C3ST+= ${HDRDIR}/__cxx03/__string/${hdr}
+.endfor
+
+INCSGROUPS+= C3SER
+C3SERDIR= ${CXXINCLUDEDIR}/__cxx03/__system_error
+C3SER_HEADERS+= errc.h
+C3SER_HEADERS+= error_category.h
+C3SER_HEADERS+= error_code.h
+C3SER_HEADERS+= error_condition.h
+C3SER_HEADERS+= system_error.h
+.for hdr in ${C3SER_HEADERS}
+C3SER+= ${HDRDIR}/__cxx03/__system_error/${hdr}
+.endfor
+
+INCSGROUPS+= C3THR
+C3THRDIR= ${CXXINCLUDEDIR}/__cxx03/__thread
+C3THR_HEADERS+= id.h
+C3THR_HEADERS+= poll_with_backoff.h
+C3THR_HEADERS+= support.h
+C3THR_HEADERS+= this_thread.h
+C3THR_HEADERS+= thread.h
+C3THR_HEADERS+= timed_backoff_policy.h
+.for hdr in ${C3THR_HEADERS}
+C3THR+= ${HDRDIR}/__cxx03/__thread/${hdr}
+.endfor
+
+INCSGROUPS+= C3THS
+C3THSDIR= ${CXXINCLUDEDIR}/__cxx03/__thread/support
+C3THS_HEADERS+= c11.h
+C3THS_HEADERS+= external.h
+C3THS_HEADERS+= pthread.h
+C3THS_HEADERS+= windows.h
+.for hdr in ${C3THS_HEADERS}
+C3THS+= ${HDRDIR}/__cxx03/__thread/support/${hdr}
+.endfor
+
+INCSGROUPS+= C3TUP
+C3TUPDIR= ${CXXINCLUDEDIR}/__cxx03/__tuple
+C3TUP_HEADERS+= find_index.h
+C3TUP_HEADERS+= make_tuple_types.h
+C3TUP_HEADERS+= sfinae_helpers.h
+C3TUP_HEADERS+= tuple_element.h
+C3TUP_HEADERS+= tuple_indices.h
+C3TUP_HEADERS+= tuple_like.h
+C3TUP_HEADERS+= tuple_like_ext.h
+C3TUP_HEADERS+= tuple_like_no_subrange.h
+C3TUP_HEADERS+= tuple_size.h
+C3TUP_HEADERS+= tuple_types.h
+.for hdr in ${C3TUP_HEADERS}
+C3TUP+= ${HDRDIR}/__cxx03/__tuple/${hdr}
+.endfor
+
+INCSGROUPS+= C3TTR
+C3TTRDIR= ${CXXINCLUDEDIR}/__cxx03/__type_traits
+C3TTR_HEADERS+= add_const.h
+C3TTR_HEADERS+= add_cv.h
+C3TTR_HEADERS+= add_lvalue_reference.h
+C3TTR_HEADERS+= add_pointer.h
+C3TTR_HEADERS+= add_rvalue_reference.h
+C3TTR_HEADERS+= add_volatile.h
+C3TTR_HEADERS+= aligned_storage.h
+C3TTR_HEADERS+= aligned_union.h
+C3TTR_HEADERS+= alignment_of.h
+C3TTR_HEADERS+= can_extract_key.h
+C3TTR_HEADERS+= common_type.h
+C3TTR_HEADERS+= conditional.h
+C3TTR_HEADERS+= conjunction.h
+C3TTR_HEADERS+= copy_cv.h
+C3TTR_HEADERS+= copy_cvref.h
+C3TTR_HEADERS+= datasizeof.h
+C3TTR_HEADERS+= decay.h
+C3TTR_HEADERS+= dependent_type.h
+C3TTR_HEADERS+= desugars_to.h
+C3TTR_HEADERS+= disjunction.h
+C3TTR_HEADERS+= enable_if.h
+C3TTR_HEADERS+= extent.h
+C3TTR_HEADERS+= has_virtual_destructor.h
+C3TTR_HEADERS+= integral_constant.h
+C3TTR_HEADERS+= invoke.h
+C3TTR_HEADERS+= is_abstract.h
+C3TTR_HEADERS+= is_allocator.h
+C3TTR_HEADERS+= is_always_bitcastable.h
+C3TTR_HEADERS+= is_arithmetic.h
+C3TTR_HEADERS+= is_array.h
+C3TTR_HEADERS+= is_assignable.h
+C3TTR_HEADERS+= is_base_of.h
+C3TTR_HEADERS+= is_bounded_array.h
+C3TTR_HEADERS+= is_callable.h
+C3TTR_HEADERS+= is_char_like_type.h
+C3TTR_HEADERS+= is_class.h
+C3TTR_HEADERS+= is_compound.h
+C3TTR_HEADERS+= is_const.h
+C3TTR_HEADERS+= is_constant_evaluated.h
+C3TTR_HEADERS+= is_constructible.h
+C3TTR_HEADERS+= is_convertible.h
+C3TTR_HEADERS+= is_core_convertible.h
+C3TTR_HEADERS+= is_destructible.h
+C3TTR_HEADERS+= is_empty.h
+C3TTR_HEADERS+= is_enum.h
+C3TTR_HEADERS+= is_equality_comparable.h
+C3TTR_HEADERS+= is_execution_policy.h
+C3TTR_HEADERS+= is_final.h
+C3TTR_HEADERS+= is_floating_point.h
+C3TTR_HEADERS+= is_function.h
+C3TTR_HEADERS+= is_fundamental.h
+C3TTR_HEADERS+= is_implicitly_default_constructible.h
+C3TTR_HEADERS+= is_integral.h
+C3TTR_HEADERS+= is_literal_type.h
+C3TTR_HEADERS+= is_member_pointer.h
+C3TTR_HEADERS+= is_nothrow_assignable.h
+C3TTR_HEADERS+= is_nothrow_constructible.h
+C3TTR_HEADERS+= is_nothrow_destructible.h
+C3TTR_HEADERS+= is_null_pointer.h
+C3TTR_HEADERS+= is_object.h
+C3TTR_HEADERS+= is_pod.h
+C3TTR_HEADERS+= is_pointer.h
+C3TTR_HEADERS+= is_polymorphic.h
+C3TTR_HEADERS+= is_primary_template.h
+C3TTR_HEADERS+= is_reference.h
+C3TTR_HEADERS+= is_reference_wrapper.h
+C3TTR_HEADERS+= is_referenceable.h
+C3TTR_HEADERS+= is_same.h
+C3TTR_HEADERS+= is_scalar.h
+C3TTR_HEADERS+= is_signed.h
+C3TTR_HEADERS+= is_signed_integer.h
+C3TTR_HEADERS+= is_specialization.h
+C3TTR_HEADERS+= is_standard_layout.h
+C3TTR_HEADERS+= is_swappable.h
+C3TTR_HEADERS+= is_trivial.h
+C3TTR_HEADERS+= is_trivially_assignable.h
+C3TTR_HEADERS+= is_trivially_constructible.h
+C3TTR_HEADERS+= is_trivially_copyable.h
+C3TTR_HEADERS+= is_trivially_destructible.h
+C3TTR_HEADERS+= is_trivially_lexicographically_comparable.h
+C3TTR_HEADERS+= is_trivially_relocatable.h
+C3TTR_HEADERS+= is_unbounded_array.h
+C3TTR_HEADERS+= is_union.h
+C3TTR_HEADERS+= is_unsigned.h
+C3TTR_HEADERS+= is_unsigned_integer.h
+C3TTR_HEADERS+= is_valid_expansion.h
+C3TTR_HEADERS+= is_void.h
+C3TTR_HEADERS+= is_volatile.h
+C3TTR_HEADERS+= lazy.h
+C3TTR_HEADERS+= make_32_64_or_128_bit.h
+C3TTR_HEADERS+= make_const_lvalue_ref.h
+C3TTR_HEADERS+= make_signed.h
+C3TTR_HEADERS+= make_unsigned.h
+C3TTR_HEADERS+= maybe_const.h
+C3TTR_HEADERS+= nat.h
+C3TTR_HEADERS+= negation.h
+C3TTR_HEADERS+= noexcept_move_assign_container.h
+C3TTR_HEADERS+= promote.h
+C3TTR_HEADERS+= rank.h
+C3TTR_HEADERS+= remove_all_extents.h
+C3TTR_HEADERS+= remove_const.h
+C3TTR_HEADERS+= remove_const_ref.h
+C3TTR_HEADERS+= remove_cv.h
+C3TTR_HEADERS+= remove_cvref.h
+C3TTR_HEADERS+= remove_extent.h
+C3TTR_HEADERS+= remove_pointer.h
+C3TTR_HEADERS+= remove_reference.h
+C3TTR_HEADERS+= remove_volatile.h
+C3TTR_HEADERS+= result_of.h
+C3TTR_HEADERS+= strip_signature.h
+C3TTR_HEADERS+= type_identity.h
+C3TTR_HEADERS+= type_list.h
+C3TTR_HEADERS+= underlying_type.h
+C3TTR_HEADERS+= unwrap_ref.h
+C3TTR_HEADERS+= void_t.h
+.for hdr in ${C3TTR_HEADERS}
+C3TTR+= ${HDRDIR}/__cxx03/__type_traits/${hdr}
+.endfor
+
+INCSGROUPS+= C3UTL
+C3UTLDIR= ${CXXINCLUDEDIR}/__cxx03/__utility
+C3UTL_HEADERS+= as_lvalue.h
+C3UTL_HEADERS+= auto_cast.h
+C3UTL_HEADERS+= convert_to_integral.h
+C3UTL_HEADERS+= declval.h
+C3UTL_HEADERS+= empty.h
+C3UTL_HEADERS+= exception_guard.h
+C3UTL_HEADERS+= forward.h
+C3UTL_HEADERS+= integer_sequence.h
+C3UTL_HEADERS+= is_pointer_in_range.h
+C3UTL_HEADERS+= is_valid_range.h
+C3UTL_HEADERS+= move.h
+C3UTL_HEADERS+= no_destroy.h
+C3UTL_HEADERS+= pair.h
+C3UTL_HEADERS+= piecewise_construct.h
+C3UTL_HEADERS+= priority_tag.h
+C3UTL_HEADERS+= private_constructor_tag.h
+C3UTL_HEADERS+= rel_ops.h
+C3UTL_HEADERS+= small_buffer.h
+C3UTL_HEADERS+= swap.h
+C3UTL_HEADERS+= unreachable.h
+.for hdr in ${C3UTL_HEADERS}
+C3UTL+= ${HDRDIR}/__cxx03/__utility/${hdr}
+.endfor
+
+INCSGROUPS+= C3VAR
+C3VARDIR= ${CXXINCLUDEDIR}/__cxx03/__variant
+C3VAR_HEADERS+= monostate.h
+.for hdr in ${C3VAR_HEADERS}
+C3VAR+= ${HDRDIR}/__cxx03/__variant/${hdr}
+.endfor
+
+INCSGROUPS+= C3EXP
+C3EXPDIR= ${CXXINCLUDEDIR}/__cxx03/experimental
+C3EXP_HEADERS+= __config
+C3EXP_HEADERS+= utility
+.for hdr in ${C3EXP_HEADERS}
+C3EXP+= ${HDRDIR}/__cxx03/experimental/${hdr}
+.endfor
+
+INCSGROUPS+= C3EXT
+C3EXTDIR= ${CXXINCLUDEDIR}/__cxx03/ext
+C3EXT_HEADERS+= __hash
+C3EXT_HEADERS+= hash_map
+C3EXT_HEADERS+= hash_set
+.for hdr in ${C3EXT_HEADERS}
+C3EXT+= ${HDRDIR}/__cxx03/ext/${hdr}
+.endfor
+
INCSGROUPS+= DBG
DBGDIR= ${CXXINCLUDEDIR}/__debug_utils
DBG_HEADERS+= randomize_range.h
@@ -708,6 +1500,28 @@ FS_HEADERS+= u8path.h
FS+= ${HDRDIR}/__filesystem/${hdr}
.endfor
+INCSGROUPS+= FLM
+FLMDIR= ${CXXINCLUDEDIR}/__flat_map
+FLM_HEADERS+= flat_map.h
+FLM_HEADERS+= flat_multimap.h
+FLM_HEADERS+= key_value_iterator.h
+FLM_HEADERS+= sorted_equivalent.h
+FLM_HEADERS+= sorted_unique.h
+FLM_HEADERS+= utils.h
+.for hdr in ${FLM_HEADERS}
+FLM+= ${HDRDIR}/__flat_map/${hdr}
+.endfor
+
+INCSGROUPS+= FLS
+FLSDIR= ${CXXINCLUDEDIR}/__flat_set
+FLS_HEADERS+= flat_multiset.h
+FLS_HEADERS+= flat_set.h
+FLS_HEADERS+= ra_iterator.h
+FLS_HEADERS+= utils.h
+.for hdr in ${FLS_HEADERS}
+FLS+= ${HDRDIR}/__flat_set/${hdr}
+.endfor
+
INCSGROUPS+= FMT
FMTDIR= ${CXXINCLUDEDIR}/__format
FMT_HEADERS+= buffer.h
@@ -783,19 +1597,23 @@ INCSGROUPS+= FWD
FWDDIR= ${CXXINCLUDEDIR}/__fwd
FWD_HEADERS+= array.h
FWD_HEADERS+= bit_reference.h
+FWD_HEADERS+= byte.h
FWD_HEADERS+= complex.h
FWD_HEADERS+= deque.h
FWD_HEADERS+= format.h
FWD_HEADERS+= fstream.h
FWD_HEADERS+= functional.h
+FWD_HEADERS+= get.h
FWD_HEADERS+= ios.h
FWD_HEADERS+= istream.h
+FWD_HEADERS+= map.h
FWD_HEADERS+= mdspan.h
FWD_HEADERS+= memory.h
FWD_HEADERS+= memory_resource.h
FWD_HEADERS+= ostream.h
FWD_HEADERS+= pair.h
FWD_HEADERS+= queue.h
+FWD_HEADERS+= set.h
FWD_HEADERS+= span.h
FWD_HEADERS+= sstream.h
FWD_HEADERS+= stack.h
@@ -804,6 +1622,7 @@ FWD_HEADERS+= string.h
FWD_HEADERS+= string_view.h
FWD_HEADERS+= subrange.h
FWD_HEADERS+= tuple.h
+FWD_HEADERS+= variant.h
FWD_HEADERS+= vector.h
.for hdr in ${FWD_HEADERS}
FWD+= ${HDRDIR}/__fwd/${hdr}
@@ -851,6 +1670,7 @@ IT_HEADERS+= ostream_iterator.h
IT_HEADERS+= ostreambuf_iterator.h
IT_HEADERS+= permutable.h
IT_HEADERS+= prev.h
+IT_HEADERS+= product_iterator.h
IT_HEADERS+= projected.h
IT_HEADERS+= ranges_iterator_traits.h
IT_HEADERS+= readable_traits.h
@@ -859,6 +1679,7 @@ IT_HEADERS+= reverse_iterator.h
IT_HEADERS+= segmented_iterator.h
IT_HEADERS+= size.h
IT_HEADERS+= sortable.h
+IT_HEADERS+= static_bounded_iter.h
IT_HEADERS+= unreachable_sentinel.h
IT_HEADERS+= wrap_iter.h
.for hdr in ${IT_HEADERS}
@@ -867,20 +1688,52 @@ IT+= ${HDRDIR}/__iterator/${hdr}
INCSGROUPS+= LOC
LOCDIR= ${CXXINCLUDEDIR}/__locale_dir
+LOC_HEADERS+= check_grouping.h
+LOC_HEADERS+= get_c_locale.h
LOC_HEADERS+= locale_base_api.h
+LOC_HEADERS+= messages.h
+LOC_HEADERS+= money.h
+LOC_HEADERS+= num.h
+LOC_HEADERS+= pad_and_output.h
+LOC_HEADERS+= scan_keyword.h
+LOC_HEADERS+= time.h
+LOC_HEADERS+= wbuffer_convert.h
+LOC_HEADERS+= wstring_convert.h
.for hdr in ${LOC_HEADERS}
LOC+= ${HDRDIR}/__locale_dir/${hdr}
.endfor
INCSGROUPS+= LBA
LBADIR= ${CXXINCLUDEDIR}/__locale_dir/locale_base_api
-LBA_HEADERS+= bsd_locale_defaults.h
+LBA_HEADERS+= android.h
LBA_HEADERS+= bsd_locale_fallbacks.h
-LBA_HEADERS+= locale_guard.h
+LBA_HEADERS+= ibm.h
+LBA_HEADERS+= musl.h
+LBA_HEADERS+= openbsd.h
.for hdr in ${LBA_HEADERS}
LBA+= ${HDRDIR}/__locale_dir/locale_base_api/${hdr}
.endfor
+INCSGROUPS+= LBS
+LBSDIR= ${CXXINCLUDEDIR}/__locale_dir/support
+LBS_HEADERS+= apple.h
+LBS_HEADERS+= bsd_like.h
+LBS_HEADERS+= freebsd.h
+LBS_HEADERS+= fuchsia.h
+LBS_HEADERS+= linux.h
+LBS_HEADERS+= windows.h
+.for hdr in ${LBS_HEADERS}
+LBS+= ${HDRDIR}/__locale_dir/support/${hdr}
+.endfor
+
+INCSGROUPS+= LBN
+LBNDIR= ${CXXINCLUDEDIR}/__locale_dir/support/no_locale
+LBN_HEADERS+= characters.h
+LBN_HEADERS+= strtonum.h
+.for hdr in ${LBN_HEADERS}
+LBN+= ${HDRDIR}/__locale_dir/support/no_locale/${hdr}
+.endfor
+
INCSGROUPS+= MAT
MATDIR= ${CXXINCLUDEDIR}/__math
MAT_HEADERS+= abs.h
@@ -909,6 +1762,7 @@ MAT+= ${HDRDIR}/__math/${hdr}
INCSGROUPS+= MDS
MDSDIR= ${CXXINCLUDEDIR}/__mdspan
+MDS_HEADERS+= aligned_accessor.h
MDS_HEADERS+= default_accessor.h
MDS_HEADERS+= extents.h
MDS_HEADERS+= layout_left.h
@@ -930,28 +1784,33 @@ MEM_HEADERS+= allocator.h
MEM_HEADERS+= allocator_arg_t.h
MEM_HEADERS+= allocator_destructor.h
MEM_HEADERS+= allocator_traits.h
+MEM_HEADERS+= array_cookie.h
MEM_HEADERS+= assume_aligned.h
MEM_HEADERS+= auto_ptr.h
-MEM_HEADERS+= builtin_new_allocator.h
MEM_HEADERS+= compressed_pair.h
MEM_HEADERS+= concepts.h
MEM_HEADERS+= construct_at.h
+MEM_HEADERS+= destroy.h
MEM_HEADERS+= destruct_n.h
MEM_HEADERS+= inout_ptr.h
+MEM_HEADERS+= is_sufficiently_aligned.h
+MEM_HEADERS+= noexcept_move_assign_container.h
MEM_HEADERS+= out_ptr.h
MEM_HEADERS+= pointer_traits.h
MEM_HEADERS+= ranges_construct_at.h
+MEM_HEADERS+= ranges_destroy.h
MEM_HEADERS+= ranges_uninitialized_algorithms.h
MEM_HEADERS+= raw_storage_iterator.h
+MEM_HEADERS+= shared_count.h
MEM_HEADERS+= shared_ptr.h
MEM_HEADERS+= swap_allocator.h
MEM_HEADERS+= temp_value.h
MEM_HEADERS+= temporary_buffer.h
MEM_HEADERS+= uninitialized_algorithms.h
MEM_HEADERS+= unique_ptr.h
+MEM_HEADERS+= unique_temporary_buffer.h
MEM_HEADERS+= uses_allocator.h
MEM_HEADERS+= uses_allocator_construction.h
-MEM_HEADERS+= voidify.h
.for hdr in ${MEM_HEADERS}
MEM+= ${HDRDIR}/__memory/${hdr}
.endfor
@@ -979,6 +1838,22 @@ MUT_HEADERS+= unique_lock.h
MUT+= ${HDRDIR}/__mutex/${hdr}
.endfor
+INCSGROUPS+= NEW
+NEWDIR= ${CXXINCLUDEDIR}/__new
+NEW_HEADERS+= align_val_t.h
+NEW_HEADERS+= allocate.h
+NEW_HEADERS+= destroying_delete_t.h
+NEW_HEADERS+= exceptions.h
+NEW_HEADERS+= global_new_delete.h
+NEW_HEADERS+= interference_size.h
+NEW_HEADERS+= launder.h
+NEW_HEADERS+= new_handler.h
+NEW_HEADERS+= nothrow_t.h
+NEW_HEADERS+= placement_new_delete.h
+.for hdr in ${NEW_HEADERS}
+NEW+= ${HDRDIR}/__new/${hdr}
+.endfor
+
INCSGROUPS+= NUM
NUMDIR= ${CXXINCLUDEDIR}/__numeric
NUM_HEADERS+= accumulate.h
@@ -991,6 +1866,7 @@ NUM_HEADERS+= iota.h
NUM_HEADERS+= midpoint.h
NUM_HEADERS+= partial_sum.h
NUM_HEADERS+= pstl.h
+NUM_HEADERS+= ranges_iota.h
NUM_HEADERS+= reduce.h
NUM_HEADERS+= saturation_arithmetic.h
NUM_HEADERS+= transform_exclusive_scan.h
@@ -1004,6 +1880,7 @@ INCSGROUPS+= OST
OSTDIR= ${CXXINCLUDEDIR}/__ostream
OST_HEADERS+= basic_ostream.h
OST_HEADERS+= print.h
+OST_HEADERS+= put_character_sequence.h
.for hdr in ${OST_HEADERS}
OST+= ${HDRDIR}/__ostream/${hdr}
.endfor
@@ -1110,6 +1987,7 @@ RNG_HEADERS+= from_range.h
RNG_HEADERS+= iota_view.h
RNG_HEADERS+= istream_view.h
RNG_HEADERS+= join_view.h
+RNG_HEADERS+= join_with_view.h
RNG_HEADERS+= lazy_split_view.h
RNG_HEADERS+= movable_box.h
RNG_HEADERS+= non_propagating_cache.h
@@ -1164,6 +2042,7 @@ SER_HEADERS+= error_category.h
SER_HEADERS+= error_code.h
SER_HEADERS+= error_condition.h
SER_HEADERS+= system_error.h
+SER_HEADERS+= throw_system_error.h
.for hdr in ${SER_HEADERS}
SER+= ${HDRDIR}/__system_error/${hdr}
.endfor
@@ -1211,12 +2090,9 @@ TUP+= ${HDRDIR}/__tuple/${hdr}
INCSGROUPS+= TTR
TTRDIR= ${CXXINCLUDEDIR}/__type_traits
-TTR_HEADERS+= add_const.h
-TTR_HEADERS+= add_cv.h
-TTR_HEADERS+= add_lvalue_reference.h
+TTR_HEADERS+= add_cv_quals.h
TTR_HEADERS+= add_pointer.h
-TTR_HEADERS+= add_rvalue_reference.h
-TTR_HEADERS+= add_volatile.h
+TTR_HEADERS+= add_reference.h
TTR_HEADERS+= aligned_storage.h
TTR_HEADERS+= aligned_union.h
TTR_HEADERS+= alignment_of.h
@@ -1225,17 +2101,20 @@ TTR_HEADERS+= common_reference.h
TTR_HEADERS+= common_type.h
TTR_HEADERS+= conditional.h
TTR_HEADERS+= conjunction.h
+TTR_HEADERS+= container_traits.h
TTR_HEADERS+= copy_cv.h
TTR_HEADERS+= copy_cvref.h
TTR_HEADERS+= datasizeof.h
TTR_HEADERS+= decay.h
TTR_HEADERS+= dependent_type.h
TTR_HEADERS+= desugars_to.h
+TTR_HEADERS+= detected_or.h
TTR_HEADERS+= disjunction.h
TTR_HEADERS+= enable_if.h
TTR_HEADERS+= extent.h
TTR_HEADERS+= has_unique_object_representation.h
TTR_HEADERS+= has_virtual_destructor.h
+TTR_HEADERS+= integer_traits.h
TTR_HEADERS+= integral_constant.h
TTR_HEADERS+= invoke.h
TTR_HEADERS+= is_abstract.h
@@ -1265,13 +2144,13 @@ TTR_HEADERS+= is_final.h
TTR_HEADERS+= is_floating_point.h
TTR_HEADERS+= is_function.h
TTR_HEADERS+= is_fundamental.h
+TTR_HEADERS+= is_implicit_lifetime.h
TTR_HEADERS+= is_implicitly_default_constructible.h
TTR_HEADERS+= is_integral.h
TTR_HEADERS+= is_literal_type.h
TTR_HEADERS+= is_member_pointer.h
TTR_HEADERS+= is_nothrow_assignable.h
TTR_HEADERS+= is_nothrow_constructible.h
-TTR_HEADERS+= is_nothrow_convertible.h
TTR_HEADERS+= is_nothrow_destructible.h
TTR_HEADERS+= is_null_pointer.h
TTR_HEADERS+= is_object.h
@@ -1282,10 +2161,10 @@ TTR_HEADERS+= is_primary_template.h
TTR_HEADERS+= is_reference.h
TTR_HEADERS+= is_reference_wrapper.h
TTR_HEADERS+= is_referenceable.h
+TTR_HEADERS+= is_replaceable.h
TTR_HEADERS+= is_same.h
TTR_HEADERS+= is_scalar.h
TTR_HEADERS+= is_signed.h
-TTR_HEADERS+= is_signed_integer.h
TTR_HEADERS+= is_specialization.h
TTR_HEADERS+= is_standard_layout.h
TTR_HEADERS+= is_swappable.h
@@ -1299,7 +2178,6 @@ TTR_HEADERS+= is_trivially_relocatable.h
TTR_HEADERS+= is_unbounded_array.h
TTR_HEADERS+= is_union.h
TTR_HEADERS+= is_unsigned.h
-TTR_HEADERS+= is_unsigned_integer.h
TTR_HEADERS+= is_valid_expansion.h
TTR_HEADERS+= is_void.h
TTR_HEADERS+= is_volatile.h
@@ -1311,9 +2189,10 @@ TTR_HEADERS+= make_unsigned.h
TTR_HEADERS+= maybe_const.h
TTR_HEADERS+= nat.h
TTR_HEADERS+= negation.h
-TTR_HEADERS+= noexcept_move_assign_container.h
TTR_HEADERS+= promote.h
TTR_HEADERS+= rank.h
+TTR_HEADERS+= reference_constructs_from_temporary.h
+TTR_HEADERS+= reference_converts_from_temporary.h
TTR_HEADERS+= remove_all_extents.h
TTR_HEADERS+= remove_const.h
TTR_HEADERS+= remove_const_ref.h
@@ -1342,6 +2221,7 @@ UTL_HEADERS+= auto_cast.h
UTL_HEADERS+= cmp.h
UTL_HEADERS+= convert_to_integral.h
UTL_HEADERS+= declval.h
+UTL_HEADERS+= element_count.h
UTL_HEADERS+= empty.h
UTL_HEADERS+= exception_guard.h
UTL_HEADERS+= exchange.h
@@ -1358,6 +2238,7 @@ UTL_HEADERS+= piecewise_construct.h
UTL_HEADERS+= priority_tag.h
UTL_HEADERS+= private_constructor_tag.h
UTL_HEADERS+= rel_ops.h
+UTL_HEADERS+= scope_guard.h
UTL_HEADERS+= small_buffer.h
UTL_HEADERS+= swap.h
UTL_HEADERS+= to_underlying.h
@@ -1373,9 +2254,22 @@ VAR_HEADERS+= monostate.h
VAR+= ${HDRDIR}/__variant/${hdr}
.endfor
+INCSGROUPS+= VEC
+VECDIR= ${CXXINCLUDEDIR}/__vector
+VEC_HEADERS+= comparison.h
+VEC_HEADERS+= container_traits.h
+VEC_HEADERS+= erase.h
+VEC_HEADERS+= pmr.h
+VEC_HEADERS+= swap.h
+VEC_HEADERS+= vector.h
+VEC_HEADERS+= vector_bool.h
+VEC_HEADERS+= vector_bool_formatter.h
+.for hdr in ${VEC_HEADERS}
+VEC+= ${HDRDIR}/__vector/${hdr}
+.endfor
+
INCSGROUPS+= EXP
EXPDIR= ${CXXINCLUDEDIR}/experimental
-EXP_HEADERS+= __config
EXP_HEADERS+= iterator
EXP_HEADERS+= memory
EXP_HEADERS+= propagate_const