xref: /freebsd/lib/libc++/Makefile (revision 19ff93c921a9d31770bcfc194c078e7a42a5f14f)
15e6a2d6eSDimitry AndricSHLIBDIR?=	/lib
25e6a2d6eSDimitry Andric
3aa7703beSBaptiste Daroussin.include <src.opts.mk>
4aa7703beSBaptiste Daroussin
5c389411cSGlen BarberPACKAGE=	clibs
63f910b91SDimitry Andric_LIBCXXRTDIR=	${SRCTOP}/contrib/libcxxrt
70b57cec5SDimitry AndricHDRDIR=		${SRCTOP}/contrib/llvm-project/libcxx/include
80b57cec5SDimitry AndricSRCDIR=		${SRCTOP}/contrib/llvm-project/libcxx/src
97a984708SDavid ChisnallCXXINCLUDEDIR=	${INCLUDEDIR}/c++/v${SHLIB_MAJOR}
107a984708SDavid Chisnall
117a984708SDavid Chisnall.PATH: ${SRCDIR}
127a984708SDavid Chisnall
137a984708SDavid ChisnallLIB=		c++
147a984708SDavid ChisnallSHLIB_MAJOR=	1
15e669ff37SDimitry AndricSHLIB_LDSCRIPT=	libc++.ldscript
167a984708SDavid Chisnall
173f910b91SDimitry AndricSRCS+=		algorithm.cpp
183f910b91SDimitry AndricSRCS+=		any.cpp
19c37f312dSDimitry AndricSRCS+=		atomic.cpp
20c37f312dSDimitry AndricSRCS+=		barrier.cpp
213f910b91SDimitry AndricSRCS+=		bind.cpp
225f757f3fSDimitry AndricSRCS+=		call_once.cpp
23488aa40aSDimitry AndricSRCS+=		charconv.cpp
243f910b91SDimitry AndricSRCS+=		chrono.cpp
253f910b91SDimitry AndricSRCS+=		condition_variable.cpp
26b0d4288fSDimitry AndricSRCS+=		condition_variable_destructor.cpp
275f757f3fSDimitry AndricSRCS+=		error_category.cpp
283f910b91SDimitry AndricSRCS+=		exception.cpp
290fca6ea1SDimitry AndricSRCS+=		expected.cpp
3006c3fb27SDimitry AndricSRCS+=		filesystem/directory_entry.cpp
31b0d4288fSDimitry AndricSRCS+=		filesystem/directory_iterator.cpp
3206c3fb27SDimitry AndricSRCS+=		filesystem/filesystem_clock.cpp
3306c3fb27SDimitry AndricSRCS+=		filesystem/filesystem_error.cpp
34b0d4288fSDimitry AndricSRCS+=		filesystem/int128_builtins.cpp
35b0d4288fSDimitry AndricSRCS+=		filesystem/operations.cpp
3606c3fb27SDimitry AndricSRCS+=		filesystem/path.cpp
370fca6ea1SDimitry AndricSRCS+=		fstream.cpp
38540d2a8bSDimitry AndricSRCS+=		functional.cpp
393f910b91SDimitry AndricSRCS+=		future.cpp
403f910b91SDimitry AndricSRCS+=		hash.cpp
413f910b91SDimitry AndricSRCS+=		ios.cpp
42d409305fSDimitry AndricSRCS+=		ios.instantiations.cpp
433f910b91SDimitry AndricSRCS+=		iostream.cpp
443f910b91SDimitry AndricSRCS+=		locale.cpp
453f910b91SDimitry AndricSRCS+=		memory.cpp
46bdd1243dSDimitry AndricSRCS+=		memory_resource.cpp
473f910b91SDimitry AndricSRCS+=		mutex.cpp
48b0d4288fSDimitry AndricSRCS+=		mutex_destructor.cpp
493f910b91SDimitry AndricSRCS+=		new.cpp
5006c3fb27SDimitry AndricSRCS+=		new_handler.cpp
5106c3fb27SDimitry AndricSRCS+=		new_helpers.cpp
523f910b91SDimitry AndricSRCS+=		optional.cpp
53cb14a3feSDimitry AndricSRCS+=		ostream.cpp
5406c3fb27SDimitry AndricSRCS+=		print.cpp
553f910b91SDimitry AndricSRCS+=		random.cpp
56c37f312dSDimitry AndricSRCS+=		random_shuffle.cpp
573f910b91SDimitry AndricSRCS+=		regex.cpp
5804eeddc0SDimitry AndricSRCS+=		ryu/d2fixed.cpp
5904eeddc0SDimitry AndricSRCS+=		ryu/d2s.cpp
6004eeddc0SDimitry AndricSRCS+=		ryu/f2s.cpp
613f910b91SDimitry AndricSRCS+=		shared_mutex.cpp
623f910b91SDimitry AndricSRCS+=		stdexcept.cpp
633f910b91SDimitry AndricSRCS+=		string.cpp
643f910b91SDimitry AndricSRCS+=		strstream.cpp
653f910b91SDimitry AndricSRCS+=		system_error.cpp
663f910b91SDimitry AndricSRCS+=		thread.cpp
673f910b91SDimitry AndricSRCS+=		typeinfo.cpp
683f910b91SDimitry AndricSRCS+=		valarray.cpp
695d77776cSDimitry AndricSRCS+=		variant.cpp
7024d58133SDimitry AndricSRCS+=		vector.cpp
7161cfbce3SDimitry AndricSRCS+=		verbose_abort.cpp
727a984708SDavid Chisnall
733f910b91SDimitry AndricCXXRT_SRCS+=	auxhelper.cc
743f910b91SDimitry AndricCXXRT_SRCS+=	dynamic_cast.cc
753f910b91SDimitry AndricCXXRT_SRCS+=	exception.cc
763f910b91SDimitry AndricCXXRT_SRCS+=	guard.cc
773f910b91SDimitry AndricCXXRT_SRCS+=	libelftc_dem_gnu3.c
783f910b91SDimitry AndricCXXRT_SRCS+=	memory.cc
793f910b91SDimitry AndricCXXRT_SRCS+=	stdexcept.cc
803f910b91SDimitry AndricCXXRT_SRCS+=	terminate.cc
813f910b91SDimitry AndricCXXRT_SRCS+=	typeinfo.cc
8215e154dfSDimitry Andric
8315e154dfSDimitry Andric.for _S in ${CXXRT_SRCS}
847533aa15SBryan DreweryCLEANFILES+=	cxxrt_${_S}
8515e154dfSDimitry AndricSTATICOBJS+=	cxxrt_${_S:R}.o
863c89d6b0SBryan Drewerycxxrt_${_S}: ${_LIBCXXRTDIR}/${_S} .NOMETA
87b791fbe6SBryan Drewery	ln -sf ${.ALLSRC} ${.TARGET}
8815e154dfSDimitry Andric.endfor
8915e154dfSDimitry Andric
90ecebb3ccSKyle EvansWARNS?=		0
917a6dacacSDimitry AndricCFLAGS+=	-isystem ${SRCDIR}
926e75b2fbSDimitry AndricCFLAGS+=	-isystem ${.CURDIR}
93302affcbSDimitry AndricCFLAGS+=	-isystem ${HDRDIR}
94302affcbSDimitry AndricCFLAGS+=	-isystem ${_LIBCXXRTDIR}
95302affcbSDimitry AndricCFLAGS+=	-nostdinc++
96302affcbSDimitry AndricCFLAGS+=	-nostdlib
97302affcbSDimitry AndricCFLAGS+=	-D_LIBCPP_BUILDING_LIBRARY
987a6dacacSDimitry AndricCFLAGS+=	-D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
997a6dacacSDimitry AndricCFLAGS+=	-D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES
100302affcbSDimitry AndricCFLAGS+=	-DLIBCXXRT
10197e6bc16SDimitry AndricCFLAGS+=	-fdata-sections
1027a6dacacSDimitry AndricCFLAGS+=	-ffunction-sections
1037a6dacacSDimitry AndricCFLAGS+=	-fno-semantic-interposition
1047a6dacacSDimitry AndricCFLAGS+=	-fvisibility-inlines-hidden
1057a6dacacSDimitry AndricCFLAGS+=	-fvisibility=hidden
106bc9e19dcSDimitry Andric
107770cf0a5SDimitry AndricCFLAGS.charconv.cpp+=	-isystem ${SRCTOP}/contrib/llvm-project/libc
108770cf0a5SDimitry Andric
109bc9e19dcSDimitry Andric.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 130000
110bc9e19dcSDimitry Andric# NOTE: gcc 12 cannot correctly compile all libc++'s C++23 code. To temporarily
111bc9e19dcSDimitry Andric# support gcc 12, compile libc++ in C++20 mode, but this will leave out any
112bc9e19dcSDimitry Andric# C++23 features.
113bc9e19dcSDimitry AndricCXXSTD?=	c++20
114bc9e19dcSDimitry Andric.else
1150fca6ea1SDimitry AndricCXXSTD?=	c++23
116bc9e19dcSDimitry Andric.endif
1177a984708SDavid Chisnall
1186b129086SBaptiste DaroussinLIBADD+=	cxxrt
1197a984708SDavid Chisnall
1206e75b2fbSDimitry AndricINCSGROUPS+=	STD
1216e75b2fbSDimitry AndricSTDDIR=		${CXXINCLUDEDIR}
12281ad6265SDimitry AndricSTD_HEADERS+=	__assert
1233f910b91SDimitry AndricSTD_HEADERS+=	__bit_reference
1246e75b2fbSDimitry AndricSTD_HEADERS+=	__config
1253f910b91SDimitry AndricSTD_HEADERS+=	__hash_table
1263f910b91SDimitry AndricSTD_HEADERS+=	__locale
127*e64bea71SDimitry AndricSTD_HEADERS+=	__log_hardening_failure
1285e801ac6SDimitry AndricSTD_HEADERS+=	__mbstate_t.h
129488aa40aSDimitry AndricSTD_HEADERS+=	__node_handle
1303f910b91SDimitry AndricSTD_HEADERS+=	__split_buffer
13106c3fb27SDimitry AndricSTD_HEADERS+=	__std_mbstate_t.h
1323f910b91SDimitry AndricSTD_HEADERS+=	__tree
133f9448bf3SDimitry AndricSTD_HEADERS+=	__undef_macros
13461cfbce3SDimitry AndricSTD_HEADERS+=	__verbose_abort
135770cf0a5SDimitry AndricSTD_HEADERS+=	__verbose_trap
1363f910b91SDimitry AndricSTD_HEADERS+=	algorithm
1373f910b91SDimitry AndricSTD_HEADERS+=	any
1383f910b91SDimitry AndricSTD_HEADERS+=	array
1393f910b91SDimitry AndricSTD_HEADERS+=	atomic
14095aa617eSDimitry AndricSTD_HEADERS+=	barrier
14158a7b5d6SDimitry AndricSTD_HEADERS+=	bit
1423f910b91SDimitry AndricSTD_HEADERS+=	bitset
1433f910b91SDimitry AndricSTD_HEADERS+=	cassert
1443f910b91SDimitry AndricSTD_HEADERS+=	ccomplex
1453f910b91SDimitry AndricSTD_HEADERS+=	cctype
1463f910b91SDimitry AndricSTD_HEADERS+=	cerrno
1473f910b91SDimitry AndricSTD_HEADERS+=	cfenv
1483f910b91SDimitry AndricSTD_HEADERS+=	cfloat
149488aa40aSDimitry AndricSTD_HEADERS+=	charconv
1503f910b91SDimitry AndricSTD_HEADERS+=	chrono
1513f910b91SDimitry AndricSTD_HEADERS+=	cinttypes
1523f910b91SDimitry AndricSTD_HEADERS+=	ciso646
1533f910b91SDimitry AndricSTD_HEADERS+=	climits
1543f910b91SDimitry AndricSTD_HEADERS+=	clocale
1553f910b91SDimitry AndricSTD_HEADERS+=	cmath
1563f910b91SDimitry AndricSTD_HEADERS+=	codecvt
157488aa40aSDimitry AndricSTD_HEADERS+=	compare
1583f910b91SDimitry AndricSTD_HEADERS+=	complex
1593f910b91SDimitry AndricSTD_HEADERS+=	complex.h
16095aa617eSDimitry AndricSTD_HEADERS+=	concepts
1613f910b91SDimitry AndricSTD_HEADERS+=	condition_variable
1625e801ac6SDimitry AndricSTD_HEADERS+=	coroutine
1633f910b91SDimitry AndricSTD_HEADERS+=	csetjmp
1643f910b91SDimitry AndricSTD_HEADERS+=	csignal
165770cf0a5SDimitry AndricSTD_HEADERS+=	cstdalign
1663f910b91SDimitry AndricSTD_HEADERS+=	cstdarg
1673f910b91SDimitry AndricSTD_HEADERS+=	cstdbool
1683f910b91SDimitry AndricSTD_HEADERS+=	cstddef
1693f910b91SDimitry AndricSTD_HEADERS+=	cstdint
1703f910b91SDimitry AndricSTD_HEADERS+=	cstdio
1713f910b91SDimitry AndricSTD_HEADERS+=	cstdlib
1723f910b91SDimitry AndricSTD_HEADERS+=	cstring
1733f910b91SDimitry AndricSTD_HEADERS+=	ctgmath
1743f910b91SDimitry AndricSTD_HEADERS+=	ctime
1753f910b91SDimitry AndricSTD_HEADERS+=	ctype.h
17681ad6265SDimitry AndricSTD_HEADERS+=	cuchar
1773f910b91SDimitry AndricSTD_HEADERS+=	cwchar
1783f910b91SDimitry AndricSTD_HEADERS+=	cwctype
1793f910b91SDimitry AndricSTD_HEADERS+=	deque
1803f910b91SDimitry AndricSTD_HEADERS+=	errno.h
1813f910b91SDimitry AndricSTD_HEADERS+=	exception
18295aa617eSDimitry AndricSTD_HEADERS+=	execution
183bdd1243dSDimitry AndricSTD_HEADERS+=	expected
184b0d4288fSDimitry AndricSTD_HEADERS+=	fenv.h
185488aa40aSDimitry AndricSTD_HEADERS+=	filesystem
186770cf0a5SDimitry AndricSTD_HEADERS+=	flat_map
187770cf0a5SDimitry AndricSTD_HEADERS+=	flat_set
1883f910b91SDimitry AndricSTD_HEADERS+=	float.h
1896e75b2fbSDimitry AndricSTD_HEADERS+=	format
1903f910b91SDimitry AndricSTD_HEADERS+=	forward_list
1913f910b91SDimitry AndricSTD_HEADERS+=	fstream
1923f910b91SDimitry AndricSTD_HEADERS+=	functional
1933f910b91SDimitry AndricSTD_HEADERS+=	future
1943f910b91SDimitry AndricSTD_HEADERS+=	initializer_list
1953f910b91SDimitry AndricSTD_HEADERS+=	inttypes.h
1963f910b91SDimitry AndricSTD_HEADERS+=	iomanip
1973f910b91SDimitry AndricSTD_HEADERS+=	ios
1983f910b91SDimitry AndricSTD_HEADERS+=	iosfwd
1993f910b91SDimitry AndricSTD_HEADERS+=	iostream
2003f910b91SDimitry AndricSTD_HEADERS+=	istream
2013f910b91SDimitry AndricSTD_HEADERS+=	iterator
20295aa617eSDimitry AndricSTD_HEADERS+=	latch
2033f910b91SDimitry AndricSTD_HEADERS+=	limits
2043f910b91SDimitry AndricSTD_HEADERS+=	list
2053f910b91SDimitry AndricSTD_HEADERS+=	locale
2063f910b91SDimitry AndricSTD_HEADERS+=	map
2073f910b91SDimitry AndricSTD_HEADERS+=	math.h
20806c3fb27SDimitry AndricSTD_HEADERS+=	mdspan
2093f910b91SDimitry AndricSTD_HEADERS+=	memory
210bdd1243dSDimitry AndricSTD_HEADERS+=	memory_resource
2113f910b91SDimitry AndricSTD_HEADERS+=	mutex
2123f910b91SDimitry AndricSTD_HEADERS+=	new
21395aa617eSDimitry AndricSTD_HEADERS+=	numbers
2143f910b91SDimitry AndricSTD_HEADERS+=	numeric
2153f910b91SDimitry AndricSTD_HEADERS+=	optional
2163f910b91SDimitry AndricSTD_HEADERS+=	ostream
21706c3fb27SDimitry AndricSTD_HEADERS+=	print
2183f910b91SDimitry AndricSTD_HEADERS+=	queue
2193f910b91SDimitry AndricSTD_HEADERS+=	random
2206e75b2fbSDimitry AndricSTD_HEADERS+=	ranges
2213f910b91SDimitry AndricSTD_HEADERS+=	ratio
2223f910b91SDimitry AndricSTD_HEADERS+=	regex
2233f910b91SDimitry AndricSTD_HEADERS+=	scoped_allocator
22495aa617eSDimitry AndricSTD_HEADERS+=	semaphore
2253f910b91SDimitry AndricSTD_HEADERS+=	set
2263f910b91SDimitry AndricSTD_HEADERS+=	shared_mutex
227bdd1243dSDimitry AndricSTD_HEADERS+=	source_location
228488aa40aSDimitry AndricSTD_HEADERS+=	span
2293f910b91SDimitry AndricSTD_HEADERS+=	sstream
2303f910b91SDimitry AndricSTD_HEADERS+=	stack
23181ad6265SDimitry AndricSTD_HEADERS+=	stdatomic.h
2323f910b91SDimitry AndricSTD_HEADERS+=	stdbool.h
2333f910b91SDimitry AndricSTD_HEADERS+=	stddef.h
2343f910b91SDimitry AndricSTD_HEADERS+=	stdexcept
2353f910b91SDimitry AndricSTD_HEADERS+=	stdio.h
2363f910b91SDimitry AndricSTD_HEADERS+=	stdlib.h
23706c3fb27SDimitry AndricSTD_HEADERS+=	stop_token
2383f910b91SDimitry AndricSTD_HEADERS+=	streambuf
2393f910b91SDimitry AndricSTD_HEADERS+=	string
2403f910b91SDimitry AndricSTD_HEADERS+=	string.h
2413f910b91SDimitry AndricSTD_HEADERS+=	string_view
2423f910b91SDimitry AndricSTD_HEADERS+=	strstream
2435f757f3fSDimitry AndricSTD_HEADERS+=	syncstream
2443f910b91SDimitry AndricSTD_HEADERS+=	system_error
2453f910b91SDimitry AndricSTD_HEADERS+=	tgmath.h
2463f910b91SDimitry AndricSTD_HEADERS+=	thread
2473f910b91SDimitry AndricSTD_HEADERS+=	tuple
2483f910b91SDimitry AndricSTD_HEADERS+=	type_traits
2493f910b91SDimitry AndricSTD_HEADERS+=	typeindex
2503f910b91SDimitry AndricSTD_HEADERS+=	typeinfo
25181ad6265SDimitry AndricSTD_HEADERS+=	uchar.h
2523f910b91SDimitry AndricSTD_HEADERS+=	unordered_map
2533f910b91SDimitry AndricSTD_HEADERS+=	unordered_set
2543f910b91SDimitry AndricSTD_HEADERS+=	utility
2553f910b91SDimitry AndricSTD_HEADERS+=	valarray
2563f910b91SDimitry AndricSTD_HEADERS+=	variant
2573f910b91SDimitry AndricSTD_HEADERS+=	vector
258488aa40aSDimitry AndricSTD_HEADERS+=	version
2593f910b91SDimitry AndricSTD_HEADERS+=	wchar.h
2603f910b91SDimitry AndricSTD_HEADERS+=	wctype.h
2616e75b2fbSDimitry Andric.for hdr in ${STD_HEADERS}
2626e75b2fbSDimitry AndricSTD+=		${HDRDIR}/${hdr}
2636e75b2fbSDimitry Andric.endfor
2646e75b2fbSDimitry Andric
2650fca6ea1SDimitry Andric# Generated by CMake as of libc++ 18.
2667a6dacacSDimitry AndricSTD+=		${.CURDIR}/__assertion_handler
2677a6dacacSDimitry Andric
2680fca6ea1SDimitry Andric# Generated by CMake as of libc++ 13.
2696e75b2fbSDimitry AndricSTD+=		${.CURDIR}/__config_site
2703f910b91SDimitry Andric
2710fca6ea1SDimitry Andric# Generated by CMake as of libc++ 19.
272770cf0a5SDimitry AndricSTD+=		${.CURDIR}/libcxx.imp
273770cf0a5SDimitry Andric
274770cf0a5SDimitry Andric# Generated by CMake as of libc++ 21.
275770cf0a5SDimitry AndricSTD+=		${.CURDIR}/module.modulemap
2760fca6ea1SDimitry Andric
2773f910b91SDimitry AndricRT_HEADERS+=	cxxabi.h
278cd38c408SDimitry Andric.for hdr in ${RT_HEADERS}
2793c89d6b0SBryan DrewerySTD+=		${_LIBCXXRTDIR}/${hdr}
280cd38c408SDimitry Andric.endfor
2817a984708SDavid Chisnall
2826e75b2fbSDimitry AndricINCSGROUPS+=	ALG
2836e75b2fbSDimitry AndricALGDIR=		${CXXINCLUDEDIR}/__algorithm
2846e75b2fbSDimitry AndricALG_HEADERS+=	adjacent_find.h
2856e75b2fbSDimitry AndricALG_HEADERS+=	all_of.h
2866e75b2fbSDimitry AndricALG_HEADERS+=	any_of.h
2876e75b2fbSDimitry AndricALG_HEADERS+=	binary_search.h
2886e75b2fbSDimitry AndricALG_HEADERS+=	clamp.h
2896e75b2fbSDimitry AndricALG_HEADERS+=	comp.h
2906e75b2fbSDimitry AndricALG_HEADERS+=	comp_ref_type.h
2916e75b2fbSDimitry AndricALG_HEADERS+=	copy.h
2926e75b2fbSDimitry AndricALG_HEADERS+=	copy_backward.h
2936e75b2fbSDimitry AndricALG_HEADERS+=	copy_if.h
294bdd1243dSDimitry AndricALG_HEADERS+=	copy_move_common.h
2956e75b2fbSDimitry AndricALG_HEADERS+=	copy_n.h
2966e75b2fbSDimitry AndricALG_HEADERS+=	count.h
2976e75b2fbSDimitry AndricALG_HEADERS+=	count_if.h
2986e75b2fbSDimitry AndricALG_HEADERS+=	equal.h
2996e75b2fbSDimitry AndricALG_HEADERS+=	equal_range.h
3006e75b2fbSDimitry AndricALG_HEADERS+=	fill.h
3016e75b2fbSDimitry AndricALG_HEADERS+=	fill_n.h
3026e75b2fbSDimitry AndricALG_HEADERS+=	find.h
3036e75b2fbSDimitry AndricALG_HEADERS+=	find_end.h
3046e75b2fbSDimitry AndricALG_HEADERS+=	find_first_of.h
3056e75b2fbSDimitry AndricALG_HEADERS+=	find_if.h
3066e75b2fbSDimitry AndricALG_HEADERS+=	find_if_not.h
3075f757f3fSDimitry AndricALG_HEADERS+=	find_segment_if.h
3086e75b2fbSDimitry AndricALG_HEADERS+=	for_each.h
3096e75b2fbSDimitry AndricALG_HEADERS+=	for_each_n.h
310770cf0a5SDimitry AndricALG_HEADERS+=	for_each_n_segment.h
31106c3fb27SDimitry AndricALG_HEADERS+=	for_each_segment.h
3126e75b2fbSDimitry AndricALG_HEADERS+=	generate.h
3136e75b2fbSDimitry AndricALG_HEADERS+=	generate_n.h
3146e75b2fbSDimitry AndricALG_HEADERS+=	half_positive.h
31581ad6265SDimitry AndricALG_HEADERS+=	in_found_result.h
31681ad6265SDimitry AndricALG_HEADERS+=	in_fun_result.h
3171fd87a68SDimitry AndricALG_HEADERS+=	in_in_out_result.h
31804eeddc0SDimitry AndricALG_HEADERS+=	in_in_result.h
31981ad6265SDimitry AndricALG_HEADERS+=	in_out_out_result.h
32004eeddc0SDimitry AndricALG_HEADERS+=	in_out_result.h
3216e75b2fbSDimitry AndricALG_HEADERS+=	includes.h
3226e75b2fbSDimitry AndricALG_HEADERS+=	inplace_merge.h
3236e75b2fbSDimitry AndricALG_HEADERS+=	is_heap.h
3246e75b2fbSDimitry AndricALG_HEADERS+=	is_heap_until.h
3256e75b2fbSDimitry AndricALG_HEADERS+=	is_partitioned.h
3266e75b2fbSDimitry AndricALG_HEADERS+=	is_permutation.h
3276e75b2fbSDimitry AndricALG_HEADERS+=	is_sorted.h
3286e75b2fbSDimitry AndricALG_HEADERS+=	is_sorted_until.h
3296e75b2fbSDimitry AndricALG_HEADERS+=	iter_swap.h
33081ad6265SDimitry AndricALG_HEADERS+=	iterator_operations.h
3316e75b2fbSDimitry AndricALG_HEADERS+=	lexicographical_compare.h
33206c3fb27SDimitry AndricALG_HEADERS+=	lexicographical_compare_three_way.h
3336e75b2fbSDimitry AndricALG_HEADERS+=	lower_bound.h
3346e75b2fbSDimitry AndricALG_HEADERS+=	make_heap.h
33581ad6265SDimitry AndricALG_HEADERS+=	make_projected.h
3366e75b2fbSDimitry AndricALG_HEADERS+=	max.h
3376e75b2fbSDimitry AndricALG_HEADERS+=	max_element.h
3386e75b2fbSDimitry AndricALG_HEADERS+=	merge.h
3396e75b2fbSDimitry AndricALG_HEADERS+=	min.h
3406e75b2fbSDimitry AndricALG_HEADERS+=	min_element.h
34181ad6265SDimitry AndricALG_HEADERS+=	min_max_result.h
3426e75b2fbSDimitry AndricALG_HEADERS+=	minmax.h
3436e75b2fbSDimitry AndricALG_HEADERS+=	minmax_element.h
3446e75b2fbSDimitry AndricALG_HEADERS+=	mismatch.h
3456e75b2fbSDimitry AndricALG_HEADERS+=	move.h
3466e75b2fbSDimitry AndricALG_HEADERS+=	move_backward.h
3476e75b2fbSDimitry AndricALG_HEADERS+=	next_permutation.h
3486e75b2fbSDimitry AndricALG_HEADERS+=	none_of.h
3496e75b2fbSDimitry AndricALG_HEADERS+=	nth_element.h
350770cf0a5SDimitry AndricALG_HEADERS+=	out_value_result.h
3516e75b2fbSDimitry AndricALG_HEADERS+=	partial_sort.h
3526e75b2fbSDimitry AndricALG_HEADERS+=	partial_sort_copy.h
3536e75b2fbSDimitry AndricALG_HEADERS+=	partition.h
3546e75b2fbSDimitry AndricALG_HEADERS+=	partition_copy.h
3556e75b2fbSDimitry AndricALG_HEADERS+=	partition_point.h
3566e75b2fbSDimitry AndricALG_HEADERS+=	pop_heap.h
3576e75b2fbSDimitry AndricALG_HEADERS+=	prev_permutation.h
3580fca6ea1SDimitry AndricALG_HEADERS+=	pstl.h
3596e75b2fbSDimitry AndricALG_HEADERS+=	push_heap.h
360770cf0a5SDimitry AndricALG_HEADERS+=	radix_sort.h
36181ad6265SDimitry AndricALG_HEADERS+=	ranges_adjacent_find.h
36281ad6265SDimitry AndricALG_HEADERS+=	ranges_all_of.h
36381ad6265SDimitry AndricALG_HEADERS+=	ranges_any_of.h
36481ad6265SDimitry AndricALG_HEADERS+=	ranges_binary_search.h
36561cfbce3SDimitry AndricALG_HEADERS+=	ranges_clamp.h
366cb14a3feSDimitry AndricALG_HEADERS+=	ranges_contains.h
3670fca6ea1SDimitry AndricALG_HEADERS+=	ranges_contains_subrange.h
36881ad6265SDimitry AndricALG_HEADERS+=	ranges_copy.h
36981ad6265SDimitry AndricALG_HEADERS+=	ranges_copy_backward.h
37081ad6265SDimitry AndricALG_HEADERS+=	ranges_copy_if.h
37181ad6265SDimitry AndricALG_HEADERS+=	ranges_copy_n.h
37281ad6265SDimitry AndricALG_HEADERS+=	ranges_count.h
37381ad6265SDimitry AndricALG_HEADERS+=	ranges_count_if.h
3745f757f3fSDimitry AndricALG_HEADERS+=	ranges_ends_with.h
37581ad6265SDimitry AndricALG_HEADERS+=	ranges_equal.h
376753f127fSDimitry AndricALG_HEADERS+=	ranges_equal_range.h
37781ad6265SDimitry AndricALG_HEADERS+=	ranges_fill.h
37881ad6265SDimitry AndricALG_HEADERS+=	ranges_fill_n.h
37981ad6265SDimitry AndricALG_HEADERS+=	ranges_find.h
380753f127fSDimitry AndricALG_HEADERS+=	ranges_find_end.h
38181ad6265SDimitry AndricALG_HEADERS+=	ranges_find_first_of.h
38281ad6265SDimitry AndricALG_HEADERS+=	ranges_find_if.h
38381ad6265SDimitry AndricALG_HEADERS+=	ranges_find_if_not.h
3840fca6ea1SDimitry AndricALG_HEADERS+=	ranges_find_last.h
385770cf0a5SDimitry AndricALG_HEADERS+=	ranges_fold.h
38681ad6265SDimitry AndricALG_HEADERS+=	ranges_for_each.h
38781ad6265SDimitry AndricALG_HEADERS+=	ranges_for_each_n.h
388753f127fSDimitry AndricALG_HEADERS+=	ranges_generate.h
389753f127fSDimitry AndricALG_HEADERS+=	ranges_generate_n.h
390753f127fSDimitry AndricALG_HEADERS+=	ranges_includes.h
391753f127fSDimitry AndricALG_HEADERS+=	ranges_inplace_merge.h
392753f127fSDimitry AndricALG_HEADERS+=	ranges_is_heap.h
393753f127fSDimitry AndricALG_HEADERS+=	ranges_is_heap_until.h
39481ad6265SDimitry AndricALG_HEADERS+=	ranges_is_partitioned.h
39561cfbce3SDimitry AndricALG_HEADERS+=	ranges_is_permutation.h
39681ad6265SDimitry AndricALG_HEADERS+=	ranges_is_sorted.h
39781ad6265SDimitry AndricALG_HEADERS+=	ranges_is_sorted_until.h
398fcaf7f86SDimitry AndricALG_HEADERS+=	ranges_iterator_concept.h
39981ad6265SDimitry AndricALG_HEADERS+=	ranges_lexicographical_compare.h
40081ad6265SDimitry AndricALG_HEADERS+=	ranges_lower_bound.h
401753f127fSDimitry AndricALG_HEADERS+=	ranges_make_heap.h
40281ad6265SDimitry AndricALG_HEADERS+=	ranges_max.h
40381ad6265SDimitry AndricALG_HEADERS+=	ranges_max_element.h
404753f127fSDimitry AndricALG_HEADERS+=	ranges_merge.h
40581ad6265SDimitry AndricALG_HEADERS+=	ranges_min.h
40681ad6265SDimitry AndricALG_HEADERS+=	ranges_min_element.h
40781ad6265SDimitry AndricALG_HEADERS+=	ranges_minmax.h
40881ad6265SDimitry AndricALG_HEADERS+=	ranges_minmax_element.h
40981ad6265SDimitry AndricALG_HEADERS+=	ranges_mismatch.h
41081ad6265SDimitry AndricALG_HEADERS+=	ranges_move.h
41181ad6265SDimitry AndricALG_HEADERS+=	ranges_move_backward.h
41261cfbce3SDimitry AndricALG_HEADERS+=	ranges_next_permutation.h
41381ad6265SDimitry AndricALG_HEADERS+=	ranges_none_of.h
414753f127fSDimitry AndricALG_HEADERS+=	ranges_nth_element.h
415fcaf7f86SDimitry AndricALG_HEADERS+=	ranges_partial_sort.h
416753f127fSDimitry AndricALG_HEADERS+=	ranges_partial_sort_copy.h
417753f127fSDimitry AndricALG_HEADERS+=	ranges_partition.h
418753f127fSDimitry AndricALG_HEADERS+=	ranges_partition_copy.h
419753f127fSDimitry AndricALG_HEADERS+=	ranges_partition_point.h
420753f127fSDimitry AndricALG_HEADERS+=	ranges_pop_heap.h
42161cfbce3SDimitry AndricALG_HEADERS+=	ranges_prev_permutation.h
422753f127fSDimitry AndricALG_HEADERS+=	ranges_push_heap.h
423753f127fSDimitry AndricALG_HEADERS+=	ranges_remove.h
424753f127fSDimitry AndricALG_HEADERS+=	ranges_remove_copy.h
425753f127fSDimitry AndricALG_HEADERS+=	ranges_remove_copy_if.h
426753f127fSDimitry AndricALG_HEADERS+=	ranges_remove_if.h
42781ad6265SDimitry AndricALG_HEADERS+=	ranges_replace.h
428753f127fSDimitry AndricALG_HEADERS+=	ranges_replace_copy.h
429753f127fSDimitry AndricALG_HEADERS+=	ranges_replace_copy_if.h
43081ad6265SDimitry AndricALG_HEADERS+=	ranges_replace_if.h
43181ad6265SDimitry AndricALG_HEADERS+=	ranges_reverse.h
432753f127fSDimitry AndricALG_HEADERS+=	ranges_reverse_copy.h
43361cfbce3SDimitry AndricALG_HEADERS+=	ranges_rotate.h
434753f127fSDimitry AndricALG_HEADERS+=	ranges_rotate_copy.h
43561cfbce3SDimitry AndricALG_HEADERS+=	ranges_sample.h
436753f127fSDimitry AndricALG_HEADERS+=	ranges_search.h
437753f127fSDimitry AndricALG_HEADERS+=	ranges_search_n.h
438753f127fSDimitry AndricALG_HEADERS+=	ranges_set_difference.h
439753f127fSDimitry AndricALG_HEADERS+=	ranges_set_intersection.h
440753f127fSDimitry AndricALG_HEADERS+=	ranges_set_symmetric_difference.h
441753f127fSDimitry AndricALG_HEADERS+=	ranges_set_union.h
442753f127fSDimitry AndricALG_HEADERS+=	ranges_shuffle.h
44381ad6265SDimitry AndricALG_HEADERS+=	ranges_sort.h
444753f127fSDimitry AndricALG_HEADERS+=	ranges_sort_heap.h
445753f127fSDimitry AndricALG_HEADERS+=	ranges_stable_partition.h
44681ad6265SDimitry AndricALG_HEADERS+=	ranges_stable_sort.h
44706c3fb27SDimitry AndricALG_HEADERS+=	ranges_starts_with.h
44881ad6265SDimitry AndricALG_HEADERS+=	ranges_swap_ranges.h
44981ad6265SDimitry AndricALG_HEADERS+=	ranges_transform.h
450753f127fSDimitry AndricALG_HEADERS+=	ranges_unique.h
451753f127fSDimitry AndricALG_HEADERS+=	ranges_unique_copy.h
45281ad6265SDimitry AndricALG_HEADERS+=	ranges_upper_bound.h
4536e75b2fbSDimitry AndricALG_HEADERS+=	remove.h
4546e75b2fbSDimitry AndricALG_HEADERS+=	remove_copy.h
4556e75b2fbSDimitry AndricALG_HEADERS+=	remove_copy_if.h
4566e75b2fbSDimitry AndricALG_HEADERS+=	remove_if.h
4576e75b2fbSDimitry AndricALG_HEADERS+=	replace.h
4586e75b2fbSDimitry AndricALG_HEADERS+=	replace_copy.h
4596e75b2fbSDimitry AndricALG_HEADERS+=	replace_copy_if.h
4606e75b2fbSDimitry AndricALG_HEADERS+=	replace_if.h
4616e75b2fbSDimitry AndricALG_HEADERS+=	reverse.h
4626e75b2fbSDimitry AndricALG_HEADERS+=	reverse_copy.h
4636e75b2fbSDimitry AndricALG_HEADERS+=	rotate.h
4646e75b2fbSDimitry AndricALG_HEADERS+=	rotate_copy.h
4656e75b2fbSDimitry AndricALG_HEADERS+=	sample.h
4666e75b2fbSDimitry AndricALG_HEADERS+=	search.h
4676e75b2fbSDimitry AndricALG_HEADERS+=	search_n.h
4686e75b2fbSDimitry AndricALG_HEADERS+=	set_difference.h
4696e75b2fbSDimitry AndricALG_HEADERS+=	set_intersection.h
4706e75b2fbSDimitry AndricALG_HEADERS+=	set_symmetric_difference.h
4716e75b2fbSDimitry AndricALG_HEADERS+=	set_union.h
4726e75b2fbSDimitry AndricALG_HEADERS+=	shift_left.h
4736e75b2fbSDimitry AndricALG_HEADERS+=	shift_right.h
4746e75b2fbSDimitry AndricALG_HEADERS+=	shuffle.h
4756e75b2fbSDimitry AndricALG_HEADERS+=	sift_down.h
4760fca6ea1SDimitry AndricALG_HEADERS+=	simd_utils.h
4776e75b2fbSDimitry AndricALG_HEADERS+=	sort.h
4786e75b2fbSDimitry AndricALG_HEADERS+=	sort_heap.h
4796e75b2fbSDimitry AndricALG_HEADERS+=	stable_partition.h
4806e75b2fbSDimitry AndricALG_HEADERS+=	stable_sort.h
4816e75b2fbSDimitry AndricALG_HEADERS+=	swap_ranges.h
48206c3fb27SDimitry AndricALG_HEADERS+=	three_way_comp_ref_type.h
4836e75b2fbSDimitry AndricALG_HEADERS+=	transform.h
48461cfbce3SDimitry AndricALG_HEADERS+=	uniform_random_bit_generator_adaptor.h
4856e75b2fbSDimitry AndricALG_HEADERS+=	unique.h
4866e75b2fbSDimitry AndricALG_HEADERS+=	unique_copy.h
4876e75b2fbSDimitry AndricALG_HEADERS+=	unwrap_iter.h
48861cfbce3SDimitry AndricALG_HEADERS+=	unwrap_range.h
4896e75b2fbSDimitry AndricALG_HEADERS+=	upper_bound.h
4906e75b2fbSDimitry Andric.for hdr in ${ALG_HEADERS}
4916e75b2fbSDimitry AndricALG+=		${HDRDIR}/__algorithm/${hdr}
4926e75b2fbSDimitry Andric.endfor
493d409305fSDimitry Andric
49406c3fb27SDimitry AndricINCSGROUPS+=	ATM
49506c3fb27SDimitry AndricATMDIR=		${CXXINCLUDEDIR}/__atomic
49606c3fb27SDimitry AndricATM_HEADERS+=	aliases.h
49706c3fb27SDimitry AndricATM_HEADERS+=	atomic.h
49806c3fb27SDimitry AndricATM_HEADERS+=	atomic_flag.h
49906c3fb27SDimitry AndricATM_HEADERS+=	atomic_init.h
50006c3fb27SDimitry AndricATM_HEADERS+=	atomic_lock_free.h
5010fca6ea1SDimitry AndricATM_HEADERS+=	atomic_ref.h
50206c3fb27SDimitry AndricATM_HEADERS+=	atomic_sync.h
50306c3fb27SDimitry AndricATM_HEADERS+=	check_memory_order.h
50406c3fb27SDimitry AndricATM_HEADERS+=	contention_t.h
50506c3fb27SDimitry AndricATM_HEADERS+=	fence.h
50606c3fb27SDimitry AndricATM_HEADERS+=	is_always_lock_free.h
50706c3fb27SDimitry AndricATM_HEADERS+=	kill_dependency.h
50806c3fb27SDimitry AndricATM_HEADERS+=	memory_order.h
509770cf0a5SDimitry AndricATM_HEADERS+=	support.h
5100fca6ea1SDimitry AndricATM_HEADERS+=	to_gcc_order.h
51106c3fb27SDimitry Andric.for hdr in ${ATM_HEADERS}
51206c3fb27SDimitry AndricATM+=		${HDRDIR}/__atomic/${hdr}
51306c3fb27SDimitry Andric.endfor
51406c3fb27SDimitry Andric
515770cf0a5SDimitry AndricINCSGROUPS+=	ATS
516770cf0a5SDimitry AndricATSDIR=		${CXXINCLUDEDIR}/__atomic/support
517770cf0a5SDimitry AndricATS_HEADERS+=	c11.h
518770cf0a5SDimitry AndricATS_HEADERS+=	gcc.h
519770cf0a5SDimitry Andric.for hdr in ${ATS_HEADERS}
520770cf0a5SDimitry AndricATS+=		${HDRDIR}/__atomic/support/${hdr}
521770cf0a5SDimitry Andric.endfor
522770cf0a5SDimitry Andric
5235e801ac6SDimitry AndricINCSGROUPS+=	BIT
5245e801ac6SDimitry AndricBITDIR=		${CXXINCLUDEDIR}/__bit
5255e801ac6SDimitry AndricBIT_HEADERS+=	bit_cast.h
526bdd1243dSDimitry AndricBIT_HEADERS+=	bit_ceil.h
527bdd1243dSDimitry AndricBIT_HEADERS+=	bit_floor.h
528bdd1243dSDimitry AndricBIT_HEADERS+=	bit_log2.h
529bdd1243dSDimitry AndricBIT_HEADERS+=	bit_width.h
530bdd1243dSDimitry AndricBIT_HEADERS+=	blsr.h
5314824e7fdSDimitry AndricBIT_HEADERS+=	byteswap.h
532bdd1243dSDimitry AndricBIT_HEADERS+=	countl.h
533bdd1243dSDimitry AndricBIT_HEADERS+=	countr.h
534bdd1243dSDimitry AndricBIT_HEADERS+=	endian.h
535bdd1243dSDimitry AndricBIT_HEADERS+=	has_single_bit.h
5365f757f3fSDimitry AndricBIT_HEADERS+=	invert_if.h
537bdd1243dSDimitry AndricBIT_HEADERS+=	popcount.h
538bdd1243dSDimitry AndricBIT_HEADERS+=	rotate.h
5395e801ac6SDimitry Andric.for hdr in ${BIT_HEADERS}
5405e801ac6SDimitry AndricBIT+=		${HDRDIR}/__bit/${hdr}
5415e801ac6SDimitry Andric.endfor
5425e801ac6SDimitry Andric
5435e801ac6SDimitry AndricINCSGROUPS+=	CHC
5445e801ac6SDimitry AndricCHCDIR=		${CXXINCLUDEDIR}/__charconv
5455e801ac6SDimitry AndricCHC_HEADERS+=	chars_format.h
546770cf0a5SDimitry AndricCHC_HEADERS+=	from_chars_floating_point.h
54706c3fb27SDimitry AndricCHC_HEADERS+=	from_chars_integral.h
5485e801ac6SDimitry AndricCHC_HEADERS+=	from_chars_result.h
54981ad6265SDimitry AndricCHC_HEADERS+=	tables.h
55006c3fb27SDimitry AndricCHC_HEADERS+=	to_chars.h
55181ad6265SDimitry AndricCHC_HEADERS+=	to_chars_base_10.h
55206c3fb27SDimitry AndricCHC_HEADERS+=	to_chars_floating_point.h
55306c3fb27SDimitry AndricCHC_HEADERS+=	to_chars_integral.h
5545e801ac6SDimitry AndricCHC_HEADERS+=	to_chars_result.h
55506c3fb27SDimitry AndricCHC_HEADERS+=	traits.h
5565e801ac6SDimitry Andric.for hdr in ${CHC_HEADERS}
5575e801ac6SDimitry AndricCHC+=		${HDRDIR}/__charconv/${hdr}
5585e801ac6SDimitry Andric.endfor
5595e801ac6SDimitry Andric
56004eeddc0SDimitry AndricINCSGROUPS+=	CHR
56104eeddc0SDimitry AndricCHRDIR=		${CXXINCLUDEDIR}/__chrono
56204eeddc0SDimitry AndricCHR_HEADERS+=	calendar.h
56306c3fb27SDimitry AndricCHR_HEADERS+=	concepts.h
56404eeddc0SDimitry AndricCHR_HEADERS+=	convert_to_timespec.h
565bdd1243dSDimitry AndricCHR_HEADERS+=	convert_to_tm.h
56681ad6265SDimitry AndricCHR_HEADERS+=	day.h
56704eeddc0SDimitry AndricCHR_HEADERS+=	duration.h
5680fca6ea1SDimitry AndricCHR_HEADERS+=	exception.h
56904eeddc0SDimitry AndricCHR_HEADERS+=	file_clock.h
570bdd1243dSDimitry AndricCHR_HEADERS+=	formatter.h
571770cf0a5SDimitry AndricCHR_HEADERS+=	gps_clock.h
57281ad6265SDimitry AndricCHR_HEADERS+=	hh_mm_ss.h
57304eeddc0SDimitry AndricCHR_HEADERS+=	high_resolution_clock.h
5740fca6ea1SDimitry AndricCHR_HEADERS+=	leap_second.h
57581ad6265SDimitry AndricCHR_HEADERS+=	literals.h
5760fca6ea1SDimitry AndricCHR_HEADERS+=	local_info.h
57781ad6265SDimitry AndricCHR_HEADERS+=	month.h
57881ad6265SDimitry AndricCHR_HEADERS+=	month_weekday.h
57981ad6265SDimitry AndricCHR_HEADERS+=	monthday.h
580bdd1243dSDimitry AndricCHR_HEADERS+=	ostream.h
581bdd1243dSDimitry AndricCHR_HEADERS+=	parser_std_format_spec.h
582bdd1243dSDimitry AndricCHR_HEADERS+=	statically_widen.h
58304eeddc0SDimitry AndricCHR_HEADERS+=	steady_clock.h
5840fca6ea1SDimitry AndricCHR_HEADERS+=	sys_info.h
58504eeddc0SDimitry AndricCHR_HEADERS+=	system_clock.h
586770cf0a5SDimitry AndricCHR_HEADERS+=	tai_clock.h
58704eeddc0SDimitry AndricCHR_HEADERS+=	time_point.h
5880fca6ea1SDimitry AndricCHR_HEADERS+=	time_zone.h
5890fca6ea1SDimitry AndricCHR_HEADERS+=	time_zone_link.h
5905f757f3fSDimitry AndricCHR_HEADERS+=	tzdb.h
5915f757f3fSDimitry AndricCHR_HEADERS+=	tzdb_list.h
592770cf0a5SDimitry AndricCHR_HEADERS+=	utc_clock.h
59381ad6265SDimitry AndricCHR_HEADERS+=	weekday.h
59481ad6265SDimitry AndricCHR_HEADERS+=	year.h
59581ad6265SDimitry AndricCHR_HEADERS+=	year_month.h
59681ad6265SDimitry AndricCHR_HEADERS+=	year_month_day.h
59781ad6265SDimitry AndricCHR_HEADERS+=	year_month_weekday.h
5980fca6ea1SDimitry AndricCHR_HEADERS+=	zoned_time.h
59904eeddc0SDimitry Andric.for hdr in ${CHR_HEADERS}
60004eeddc0SDimitry AndricCHR+=		${HDRDIR}/__chrono/${hdr}
60104eeddc0SDimitry Andric.endfor
60204eeddc0SDimitry Andric
6035e801ac6SDimitry AndricINCSGROUPS+=	CMP
6045e801ac6SDimitry AndricCMPDIR=		${CXXINCLUDEDIR}/__compare
6055e801ac6SDimitry AndricCMP_HEADERS+=	common_comparison_category.h
6061fd87a68SDimitry AndricCMP_HEADERS+=	compare_partial_order_fallback.h
6071fd87a68SDimitry AndricCMP_HEADERS+=	compare_strong_order_fallback.h
6085e801ac6SDimitry AndricCMP_HEADERS+=	compare_three_way.h
6095e801ac6SDimitry AndricCMP_HEADERS+=	compare_three_way_result.h
6101fd87a68SDimitry AndricCMP_HEADERS+=	compare_weak_order_fallback.h
6115e801ac6SDimitry AndricCMP_HEADERS+=	is_eq.h
6125e801ac6SDimitry AndricCMP_HEADERS+=	ordering.h
6134824e7fdSDimitry AndricCMP_HEADERS+=	partial_order.h
6144824e7fdSDimitry AndricCMP_HEADERS+=	strong_order.h
6155e801ac6SDimitry AndricCMP_HEADERS+=	synth_three_way.h
6165e801ac6SDimitry AndricCMP_HEADERS+=	three_way_comparable.h
6174824e7fdSDimitry AndricCMP_HEADERS+=	weak_order.h
6185e801ac6SDimitry Andric.for hdr in ${CMP_HEADERS}
6195e801ac6SDimitry AndricCMP+=		${HDRDIR}/__compare/${hdr}
6205e801ac6SDimitry Andric.endfor
6215e801ac6SDimitry Andric
6225e801ac6SDimitry AndricINCSGROUPS+=	CON
6235e801ac6SDimitry AndricCONDIR=		${CXXINCLUDEDIR}/__concepts
6245e801ac6SDimitry AndricCON_HEADERS+=	arithmetic.h
6255e801ac6SDimitry AndricCON_HEADERS+=	assignable.h
6265e801ac6SDimitry AndricCON_HEADERS+=	boolean_testable.h
6275e801ac6SDimitry AndricCON_HEADERS+=	class_or_enum.h
6285e801ac6SDimitry AndricCON_HEADERS+=	common_reference_with.h
6295e801ac6SDimitry AndricCON_HEADERS+=	common_with.h
6305e801ac6SDimitry AndricCON_HEADERS+=	constructible.h
6315e801ac6SDimitry AndricCON_HEADERS+=	convertible_to.h
6325e801ac6SDimitry AndricCON_HEADERS+=	copyable.h
6335e801ac6SDimitry AndricCON_HEADERS+=	derived_from.h
6345e801ac6SDimitry AndricCON_HEADERS+=	destructible.h
6355e801ac6SDimitry AndricCON_HEADERS+=	different_from.h
6365e801ac6SDimitry AndricCON_HEADERS+=	equality_comparable.h
6375e801ac6SDimitry AndricCON_HEADERS+=	invocable.h
6385e801ac6SDimitry AndricCON_HEADERS+=	movable.h
6395e801ac6SDimitry AndricCON_HEADERS+=	predicate.h
6405e801ac6SDimitry AndricCON_HEADERS+=	regular.h
6415e801ac6SDimitry AndricCON_HEADERS+=	relation.h
6425e801ac6SDimitry AndricCON_HEADERS+=	same_as.h
6435e801ac6SDimitry AndricCON_HEADERS+=	semiregular.h
6445e801ac6SDimitry AndricCON_HEADERS+=	swappable.h
6455e801ac6SDimitry AndricCON_HEADERS+=	totally_ordered.h
6465e801ac6SDimitry Andric.for hdr in ${CON_HEADERS}
6475e801ac6SDimitry AndricCON+=		${HDRDIR}/__concepts/${hdr}
6485e801ac6SDimitry Andric.endfor
6495e801ac6SDimitry Andric
65006c3fb27SDimitry AndricINCSGROUPS+=	CND
65106c3fb27SDimitry AndricCNDDIR=		${CXXINCLUDEDIR}/__condition_variable
65206c3fb27SDimitry AndricCND_HEADERS+=	condition_variable.h
65306c3fb27SDimitry Andric.for hdr in ${CND_HEADERS}
65406c3fb27SDimitry AndricCND+=		${HDRDIR}/__condition_variable/${hdr}
65506c3fb27SDimitry Andric.endfor
65606c3fb27SDimitry Andric
6570fca6ea1SDimitry AndricINCSGROUPS+=	CNF
6580fca6ea1SDimitry AndricCNFDIR=		${CXXINCLUDEDIR}/__configuration
6590fca6ea1SDimitry AndricCNF_HEADERS+=	abi.h
6600fca6ea1SDimitry AndricCNF_HEADERS+=	availability.h
6610fca6ea1SDimitry AndricCNF_HEADERS+=	compiler.h
6620fca6ea1SDimitry AndricCNF_HEADERS+=	language.h
6630fca6ea1SDimitry AndricCNF_HEADERS+=	platform.h
6640fca6ea1SDimitry Andric.for hdr in ${CNF_HEADERS}
6650fca6ea1SDimitry AndricCNF+=		${HDRDIR}/__configuration/${hdr}
6660fca6ea1SDimitry Andric.endfor
6670fca6ea1SDimitry Andric
6685e801ac6SDimitry AndricINCSGROUPS+=	COR
6695e801ac6SDimitry AndricCORDIR=		${CXXINCLUDEDIR}/__coroutine
6705e801ac6SDimitry AndricCOR_HEADERS+=	coroutine_handle.h
6715e801ac6SDimitry AndricCOR_HEADERS+=	coroutine_traits.h
6725e801ac6SDimitry AndricCOR_HEADERS+=	noop_coroutine_handle.h
6735e801ac6SDimitry AndricCOR_HEADERS+=	trivial_awaitables.h
6745e801ac6SDimitry Andric.for hdr in ${COR_HEADERS}
6755e801ac6SDimitry AndricCOR+=		${HDRDIR}/__coroutine/${hdr}
6765e801ac6SDimitry Andric.endfor
6775e801ac6SDimitry Andric
678770cf0a5SDimitry AndricINCSGROUPS+=	CST
679770cf0a5SDimitry AndricCSTDIR=		${CXXINCLUDEDIR}/__cstddef
680770cf0a5SDimitry AndricCST_HEADERS+=	byte.h
681770cf0a5SDimitry AndricCST_HEADERS+=	max_align_t.h
682770cf0a5SDimitry AndricCST_HEADERS+=	nullptr_t.h
683770cf0a5SDimitry AndricCST_HEADERS+=	ptrdiff_t.h
684770cf0a5SDimitry AndricCST_HEADERS+=	size_t.h
685770cf0a5SDimitry Andric.for hdr in ${CST_HEADERS}
686770cf0a5SDimitry AndricCST+=		${HDRDIR}/__cstddef/${hdr}
687770cf0a5SDimitry Andric.endfor
688770cf0a5SDimitry Andric
689770cf0a5SDimitry AndricINCSGROUPS+=	C3
690770cf0a5SDimitry AndricC3DIR=		${CXXINCLUDEDIR}/__cxx03
691770cf0a5SDimitry AndricC3_HEADERS+=	__assert
692770cf0a5SDimitry AndricC3_HEADERS+=	__bit_reference
693770cf0a5SDimitry AndricC3_HEADERS+=	__config
694770cf0a5SDimitry AndricC3_HEADERS+=	__hash_table
695770cf0a5SDimitry AndricC3_HEADERS+=	__locale
696770cf0a5SDimitry AndricC3_HEADERS+=	__mbstate_t.h
697770cf0a5SDimitry AndricC3_HEADERS+=	__split_buffer
698770cf0a5SDimitry AndricC3_HEADERS+=	__std_clang_module
699770cf0a5SDimitry AndricC3_HEADERS+=	__std_mbstate_t.h
700770cf0a5SDimitry AndricC3_HEADERS+=	__tree
701770cf0a5SDimitry AndricC3_HEADERS+=	__undef_macros
702770cf0a5SDimitry AndricC3_HEADERS+=	__verbose_abort
703770cf0a5SDimitry AndricC3_HEADERS+=	__verbose_trap
704770cf0a5SDimitry AndricC3_HEADERS+=	algorithm
705770cf0a5SDimitry AndricC3_HEADERS+=	array
706770cf0a5SDimitry AndricC3_HEADERS+=	atomic
707770cf0a5SDimitry AndricC3_HEADERS+=	bitset
708770cf0a5SDimitry AndricC3_HEADERS+=	cassert
709770cf0a5SDimitry AndricC3_HEADERS+=	ccomplex
710770cf0a5SDimitry AndricC3_HEADERS+=	cctype
711770cf0a5SDimitry AndricC3_HEADERS+=	cerrno
712770cf0a5SDimitry AndricC3_HEADERS+=	cfenv
713770cf0a5SDimitry AndricC3_HEADERS+=	cfloat
714770cf0a5SDimitry AndricC3_HEADERS+=	chrono
715770cf0a5SDimitry AndricC3_HEADERS+=	cinttypes
716770cf0a5SDimitry AndricC3_HEADERS+=	ciso646
717770cf0a5SDimitry AndricC3_HEADERS+=	climits
718770cf0a5SDimitry AndricC3_HEADERS+=	clocale
719770cf0a5SDimitry AndricC3_HEADERS+=	cmath
720770cf0a5SDimitry AndricC3_HEADERS+=	codecvt
721770cf0a5SDimitry AndricC3_HEADERS+=	complex
722770cf0a5SDimitry AndricC3_HEADERS+=	complex.h
723770cf0a5SDimitry AndricC3_HEADERS+=	condition_variable
724770cf0a5SDimitry AndricC3_HEADERS+=	csetjmp
725770cf0a5SDimitry AndricC3_HEADERS+=	csignal
726770cf0a5SDimitry AndricC3_HEADERS+=	cstdarg
727770cf0a5SDimitry AndricC3_HEADERS+=	cstdbool
728770cf0a5SDimitry AndricC3_HEADERS+=	cstddef
729770cf0a5SDimitry AndricC3_HEADERS+=	cstdint
730770cf0a5SDimitry AndricC3_HEADERS+=	cstdio
731770cf0a5SDimitry AndricC3_HEADERS+=	cstdlib
732770cf0a5SDimitry AndricC3_HEADERS+=	cstring
733770cf0a5SDimitry AndricC3_HEADERS+=	ctgmath
734770cf0a5SDimitry AndricC3_HEADERS+=	ctime
735770cf0a5SDimitry AndricC3_HEADERS+=	ctype.h
736770cf0a5SDimitry AndricC3_HEADERS+=	cuchar
737770cf0a5SDimitry AndricC3_HEADERS+=	cwchar
738770cf0a5SDimitry AndricC3_HEADERS+=	cwctype
739770cf0a5SDimitry AndricC3_HEADERS+=	deque
740770cf0a5SDimitry AndricC3_HEADERS+=	errno.h
741770cf0a5SDimitry AndricC3_HEADERS+=	exception
742770cf0a5SDimitry AndricC3_HEADERS+=	fenv.h
743770cf0a5SDimitry AndricC3_HEADERS+=	float.h
744770cf0a5SDimitry AndricC3_HEADERS+=	forward_list
745770cf0a5SDimitry AndricC3_HEADERS+=	fstream
746770cf0a5SDimitry AndricC3_HEADERS+=	functional
747770cf0a5SDimitry AndricC3_HEADERS+=	future
748770cf0a5SDimitry AndricC3_HEADERS+=	inttypes.h
749770cf0a5SDimitry AndricC3_HEADERS+=	iomanip
750770cf0a5SDimitry AndricC3_HEADERS+=	ios
751770cf0a5SDimitry AndricC3_HEADERS+=	iosfwd
752770cf0a5SDimitry AndricC3_HEADERS+=	iostream
753770cf0a5SDimitry AndricC3_HEADERS+=	istream
754770cf0a5SDimitry AndricC3_HEADERS+=	iterator
755770cf0a5SDimitry AndricC3_HEADERS+=	limits
756770cf0a5SDimitry AndricC3_HEADERS+=	list
757770cf0a5SDimitry AndricC3_HEADERS+=	locale
758770cf0a5SDimitry AndricC3_HEADERS+=	locale.h
759770cf0a5SDimitry AndricC3_HEADERS+=	map
760770cf0a5SDimitry AndricC3_HEADERS+=	math.h
761770cf0a5SDimitry AndricC3_HEADERS+=	memory
762770cf0a5SDimitry AndricC3_HEADERS+=	module.modulemap
763770cf0a5SDimitry AndricC3_HEADERS+=	mutex
764770cf0a5SDimitry AndricC3_HEADERS+=	new
765770cf0a5SDimitry AndricC3_HEADERS+=	numeric
766770cf0a5SDimitry AndricC3_HEADERS+=	ostream
767770cf0a5SDimitry AndricC3_HEADERS+=	queue
768770cf0a5SDimitry AndricC3_HEADERS+=	random
769770cf0a5SDimitry AndricC3_HEADERS+=	ratio
770770cf0a5SDimitry AndricC3_HEADERS+=	regex
771770cf0a5SDimitry AndricC3_HEADERS+=	set
772770cf0a5SDimitry AndricC3_HEADERS+=	sstream
773770cf0a5SDimitry AndricC3_HEADERS+=	stack
774770cf0a5SDimitry AndricC3_HEADERS+=	stdatomic.h
775770cf0a5SDimitry AndricC3_HEADERS+=	stdbool.h
776770cf0a5SDimitry AndricC3_HEADERS+=	stddef.h
777770cf0a5SDimitry AndricC3_HEADERS+=	stdexcept
778770cf0a5SDimitry AndricC3_HEADERS+=	stdint.h
779770cf0a5SDimitry AndricC3_HEADERS+=	stdio.h
780770cf0a5SDimitry AndricC3_HEADERS+=	stdlib.h
781770cf0a5SDimitry AndricC3_HEADERS+=	streambuf
782770cf0a5SDimitry AndricC3_HEADERS+=	string
783770cf0a5SDimitry AndricC3_HEADERS+=	string.h
784770cf0a5SDimitry AndricC3_HEADERS+=	string_view
785770cf0a5SDimitry AndricC3_HEADERS+=	strstream
786770cf0a5SDimitry AndricC3_HEADERS+=	system_error
787770cf0a5SDimitry AndricC3_HEADERS+=	tgmath.h
788770cf0a5SDimitry AndricC3_HEADERS+=	thread
789770cf0a5SDimitry AndricC3_HEADERS+=	type_traits
790770cf0a5SDimitry AndricC3_HEADERS+=	typeindex
791770cf0a5SDimitry AndricC3_HEADERS+=	typeinfo
792770cf0a5SDimitry AndricC3_HEADERS+=	uchar.h
793770cf0a5SDimitry AndricC3_HEADERS+=	unordered_map
794770cf0a5SDimitry AndricC3_HEADERS+=	unordered_set
795770cf0a5SDimitry AndricC3_HEADERS+=	utility
796770cf0a5SDimitry AndricC3_HEADERS+=	valarray
797770cf0a5SDimitry AndricC3_HEADERS+=	vector
798770cf0a5SDimitry AndricC3_HEADERS+=	version
799770cf0a5SDimitry AndricC3_HEADERS+=	wchar.h
800770cf0a5SDimitry AndricC3_HEADERS+=	wctype.h
801770cf0a5SDimitry Andric.for hdr in ${C3_HEADERS}
802770cf0a5SDimitry AndricC3+=		${HDRDIR}/__cxx03/${hdr}
803770cf0a5SDimitry Andric.endfor
804770cf0a5SDimitry Andric
805770cf0a5SDimitry AndricINCSGROUPS+=	C3ALG
806770cf0a5SDimitry AndricC3ALGDIR=	${CXXINCLUDEDIR}/__cxx03/__algorithm
807770cf0a5SDimitry AndricC3ALG_HEADERS+=	adjacent_find.h
808770cf0a5SDimitry AndricC3ALG_HEADERS+=	all_of.h
809770cf0a5SDimitry AndricC3ALG_HEADERS+=	any_of.h
810770cf0a5SDimitry AndricC3ALG_HEADERS+=	binary_search.h
811770cf0a5SDimitry AndricC3ALG_HEADERS+=	comp.h
812770cf0a5SDimitry AndricC3ALG_HEADERS+=	comp_ref_type.h
813770cf0a5SDimitry AndricC3ALG_HEADERS+=	copy.h
814770cf0a5SDimitry AndricC3ALG_HEADERS+=	copy_backward.h
815770cf0a5SDimitry AndricC3ALG_HEADERS+=	copy_if.h
816770cf0a5SDimitry AndricC3ALG_HEADERS+=	copy_move_common.h
817770cf0a5SDimitry AndricC3ALG_HEADERS+=	copy_n.h
818770cf0a5SDimitry AndricC3ALG_HEADERS+=	count.h
819770cf0a5SDimitry AndricC3ALG_HEADERS+=	count_if.h
820770cf0a5SDimitry AndricC3ALG_HEADERS+=	equal.h
821770cf0a5SDimitry AndricC3ALG_HEADERS+=	equal_range.h
822770cf0a5SDimitry AndricC3ALG_HEADERS+=	fill.h
823770cf0a5SDimitry AndricC3ALG_HEADERS+=	fill_n.h
824770cf0a5SDimitry AndricC3ALG_HEADERS+=	find.h
825770cf0a5SDimitry AndricC3ALG_HEADERS+=	find_end.h
826770cf0a5SDimitry AndricC3ALG_HEADERS+=	find_first_of.h
827770cf0a5SDimitry AndricC3ALG_HEADERS+=	find_if.h
828770cf0a5SDimitry AndricC3ALG_HEADERS+=	find_if_not.h
829770cf0a5SDimitry AndricC3ALG_HEADERS+=	find_segment_if.h
830770cf0a5SDimitry AndricC3ALG_HEADERS+=	for_each.h
831770cf0a5SDimitry AndricC3ALG_HEADERS+=	for_each_segment.h
832770cf0a5SDimitry AndricC3ALG_HEADERS+=	generate.h
833770cf0a5SDimitry AndricC3ALG_HEADERS+=	generate_n.h
834770cf0a5SDimitry AndricC3ALG_HEADERS+=	half_positive.h
835770cf0a5SDimitry AndricC3ALG_HEADERS+=	includes.h
836770cf0a5SDimitry AndricC3ALG_HEADERS+=	inplace_merge.h
837770cf0a5SDimitry AndricC3ALG_HEADERS+=	is_heap.h
838770cf0a5SDimitry AndricC3ALG_HEADERS+=	is_heap_until.h
839770cf0a5SDimitry AndricC3ALG_HEADERS+=	is_partitioned.h
840770cf0a5SDimitry AndricC3ALG_HEADERS+=	is_permutation.h
841770cf0a5SDimitry AndricC3ALG_HEADERS+=	is_sorted.h
842770cf0a5SDimitry AndricC3ALG_HEADERS+=	is_sorted_until.h
843770cf0a5SDimitry AndricC3ALG_HEADERS+=	iter_swap.h
844770cf0a5SDimitry AndricC3ALG_HEADERS+=	iterator_operations.h
845770cf0a5SDimitry AndricC3ALG_HEADERS+=	lexicographical_compare.h
846770cf0a5SDimitry AndricC3ALG_HEADERS+=	lower_bound.h
847770cf0a5SDimitry AndricC3ALG_HEADERS+=	make_heap.h
848770cf0a5SDimitry AndricC3ALG_HEADERS+=	make_projected.h
849770cf0a5SDimitry AndricC3ALG_HEADERS+=	max.h
850770cf0a5SDimitry AndricC3ALG_HEADERS+=	max_element.h
851770cf0a5SDimitry AndricC3ALG_HEADERS+=	merge.h
852770cf0a5SDimitry AndricC3ALG_HEADERS+=	min.h
853770cf0a5SDimitry AndricC3ALG_HEADERS+=	min_element.h
854770cf0a5SDimitry AndricC3ALG_HEADERS+=	minmax.h
855770cf0a5SDimitry AndricC3ALG_HEADERS+=	minmax_element.h
856770cf0a5SDimitry AndricC3ALG_HEADERS+=	mismatch.h
857770cf0a5SDimitry AndricC3ALG_HEADERS+=	move.h
858770cf0a5SDimitry AndricC3ALG_HEADERS+=	move_backward.h
859770cf0a5SDimitry AndricC3ALG_HEADERS+=	next_permutation.h
860770cf0a5SDimitry AndricC3ALG_HEADERS+=	none_of.h
861770cf0a5SDimitry AndricC3ALG_HEADERS+=	nth_element.h
862770cf0a5SDimitry AndricC3ALG_HEADERS+=	partial_sort.h
863770cf0a5SDimitry AndricC3ALG_HEADERS+=	partial_sort_copy.h
864770cf0a5SDimitry AndricC3ALG_HEADERS+=	partition.h
865770cf0a5SDimitry AndricC3ALG_HEADERS+=	partition_copy.h
866770cf0a5SDimitry AndricC3ALG_HEADERS+=	partition_point.h
867770cf0a5SDimitry AndricC3ALG_HEADERS+=	pop_heap.h
868770cf0a5SDimitry AndricC3ALG_HEADERS+=	prev_permutation.h
869770cf0a5SDimitry AndricC3ALG_HEADERS+=	push_heap.h
870770cf0a5SDimitry AndricC3ALG_HEADERS+=	remove.h
871770cf0a5SDimitry AndricC3ALG_HEADERS+=	remove_copy.h
872770cf0a5SDimitry AndricC3ALG_HEADERS+=	remove_copy_if.h
873770cf0a5SDimitry AndricC3ALG_HEADERS+=	remove_if.h
874770cf0a5SDimitry AndricC3ALG_HEADERS+=	replace.h
875770cf0a5SDimitry AndricC3ALG_HEADERS+=	replace_copy.h
876770cf0a5SDimitry AndricC3ALG_HEADERS+=	replace_copy_if.h
877770cf0a5SDimitry AndricC3ALG_HEADERS+=	replace_if.h
878770cf0a5SDimitry AndricC3ALG_HEADERS+=	reverse.h
879770cf0a5SDimitry AndricC3ALG_HEADERS+=	reverse_copy.h
880770cf0a5SDimitry AndricC3ALG_HEADERS+=	rotate.h
881770cf0a5SDimitry AndricC3ALG_HEADERS+=	rotate_copy.h
882770cf0a5SDimitry AndricC3ALG_HEADERS+=	search.h
883770cf0a5SDimitry AndricC3ALG_HEADERS+=	search_n.h
884770cf0a5SDimitry AndricC3ALG_HEADERS+=	set_difference.h
885770cf0a5SDimitry AndricC3ALG_HEADERS+=	set_intersection.h
886770cf0a5SDimitry AndricC3ALG_HEADERS+=	set_symmetric_difference.h
887770cf0a5SDimitry AndricC3ALG_HEADERS+=	set_union.h
888770cf0a5SDimitry AndricC3ALG_HEADERS+=	shuffle.h
889770cf0a5SDimitry AndricC3ALG_HEADERS+=	sift_down.h
890770cf0a5SDimitry AndricC3ALG_HEADERS+=	simd_utils.h
891770cf0a5SDimitry AndricC3ALG_HEADERS+=	sort.h
892770cf0a5SDimitry AndricC3ALG_HEADERS+=	sort_heap.h
893770cf0a5SDimitry AndricC3ALG_HEADERS+=	stable_partition.h
894770cf0a5SDimitry AndricC3ALG_HEADERS+=	stable_sort.h
895770cf0a5SDimitry AndricC3ALG_HEADERS+=	swap_ranges.h
896770cf0a5SDimitry AndricC3ALG_HEADERS+=	three_way_comp_ref_type.h
897770cf0a5SDimitry AndricC3ALG_HEADERS+=	transform.h
898770cf0a5SDimitry AndricC3ALG_HEADERS+=	uniform_random_bit_generator_adaptor.h
899770cf0a5SDimitry AndricC3ALG_HEADERS+=	unique.h
900770cf0a5SDimitry AndricC3ALG_HEADERS+=	unique_copy.h
901770cf0a5SDimitry AndricC3ALG_HEADERS+=	unwrap_iter.h
902770cf0a5SDimitry AndricC3ALG_HEADERS+=	unwrap_range.h
903770cf0a5SDimitry AndricC3ALG_HEADERS+=	upper_bound.h
904770cf0a5SDimitry Andric.for hdr in ${C3ALG_HEADERS}
905770cf0a5SDimitry AndricC3ALG+=		${HDRDIR}/__cxx03/__algorithm/${hdr}
906770cf0a5SDimitry Andric.endfor
907770cf0a5SDimitry Andric
908770cf0a5SDimitry AndricINCSGROUPS+=	C3ATM
909770cf0a5SDimitry AndricC3ATMDIR=	${CXXINCLUDEDIR}/__cxx03/__atomic
910770cf0a5SDimitry AndricC3ATM_HEADERS+=	aliases.h
911770cf0a5SDimitry AndricC3ATM_HEADERS+=	atomic.h
912770cf0a5SDimitry AndricC3ATM_HEADERS+=	atomic_base.h
913770cf0a5SDimitry AndricC3ATM_HEADERS+=	atomic_flag.h
914770cf0a5SDimitry AndricC3ATM_HEADERS+=	atomic_init.h
915770cf0a5SDimitry AndricC3ATM_HEADERS+=	atomic_lock_free.h
916770cf0a5SDimitry AndricC3ATM_HEADERS+=	atomic_sync.h
917770cf0a5SDimitry AndricC3ATM_HEADERS+=	check_memory_order.h
918770cf0a5SDimitry AndricC3ATM_HEADERS+=	contention_t.h
919770cf0a5SDimitry AndricC3ATM_HEADERS+=	cxx_atomic_impl.h
920770cf0a5SDimitry AndricC3ATM_HEADERS+=	fence.h
921770cf0a5SDimitry AndricC3ATM_HEADERS+=	is_always_lock_free.h
922770cf0a5SDimitry AndricC3ATM_HEADERS+=	kill_dependency.h
923770cf0a5SDimitry AndricC3ATM_HEADERS+=	memory_order.h
924770cf0a5SDimitry AndricC3ATM_HEADERS+=	to_gcc_order.h
925770cf0a5SDimitry Andric.for hdr in ${C3ATM_HEADERS}
926770cf0a5SDimitry AndricC3ATM+=		${HDRDIR}/__cxx03/__atomic/${hdr}
927770cf0a5SDimitry Andric.endfor
928770cf0a5SDimitry Andric
929770cf0a5SDimitry AndricINCSGROUPS+=	C3BIT
930770cf0a5SDimitry AndricC3BITDIR=	${CXXINCLUDEDIR}/__cxx03/__bit
931770cf0a5SDimitry AndricC3BIT_HEADERS+=	blsr.h
932770cf0a5SDimitry AndricC3BIT_HEADERS+=	countl.h
933770cf0a5SDimitry AndricC3BIT_HEADERS+=	countr.h
934770cf0a5SDimitry AndricC3BIT_HEADERS+=	invert_if.h
935770cf0a5SDimitry AndricC3BIT_HEADERS+=	popcount.h
936770cf0a5SDimitry AndricC3BIT_HEADERS+=	rotate.h
937770cf0a5SDimitry Andric.for hdr in ${C3BIT_HEADERS}
938770cf0a5SDimitry AndricC3BIT+=		${HDRDIR}/__cxx03/__bit/${hdr}
939770cf0a5SDimitry Andric.endfor
940770cf0a5SDimitry Andric
941770cf0a5SDimitry AndricINCSGROUPS+=	C3CHR
942770cf0a5SDimitry AndricC3CHRDIR=	${CXXINCLUDEDIR}/__cxx03/__chrono
943770cf0a5SDimitry AndricC3CHR_HEADERS+=	convert_to_timespec.h
944770cf0a5SDimitry AndricC3CHR_HEADERS+=	duration.h
945770cf0a5SDimitry AndricC3CHR_HEADERS+=	high_resolution_clock.h
946770cf0a5SDimitry AndricC3CHR_HEADERS+=	steady_clock.h
947770cf0a5SDimitry AndricC3CHR_HEADERS+=	system_clock.h
948770cf0a5SDimitry AndricC3CHR_HEADERS+=	time_point.h
949770cf0a5SDimitry Andric.for hdr in ${C3CHR_HEADERS}
950770cf0a5SDimitry AndricC3CHR+=		${HDRDIR}/__cxx03/__chrono/${hdr}
951770cf0a5SDimitry Andric.endfor
952770cf0a5SDimitry Andric
953770cf0a5SDimitry AndricINCSGROUPS+=	C3CND
954770cf0a5SDimitry AndricC3CNDDIR=	${CXXINCLUDEDIR}/__cxx03/__condition_variable
955770cf0a5SDimitry AndricC3CND_HEADERS+=	condition_variable.h
956770cf0a5SDimitry Andric.for hdr in ${C3CND_HEADERS}
957770cf0a5SDimitry AndricC3CND+=		${HDRDIR}/__cxx03/__condition_variable/${hdr}
958770cf0a5SDimitry Andric.endfor
959770cf0a5SDimitry Andric
960770cf0a5SDimitry AndricINCSGROUPS+=	C3CNF
961770cf0a5SDimitry AndricC3CNFDIR=	${CXXINCLUDEDIR}/__cxx03/__configuration
962770cf0a5SDimitry AndricC3CNF_HEADERS+=	abi.h
963770cf0a5SDimitry AndricC3CNF_HEADERS+=	availability.h
964770cf0a5SDimitry AndricC3CNF_HEADERS+=	compiler.h
965770cf0a5SDimitry AndricC3CNF_HEADERS+=	config_site_shim.h
966770cf0a5SDimitry AndricC3CNF_HEADERS+=	language.h
967770cf0a5SDimitry AndricC3CNF_HEADERS+=	platform.h
968770cf0a5SDimitry Andric.for hdr in ${C3CNF_HEADERS}
969770cf0a5SDimitry AndricC3CNF+=		${HDRDIR}/__cxx03/__configuration/${hdr}
970770cf0a5SDimitry Andric.endfor
971770cf0a5SDimitry Andric
972770cf0a5SDimitry AndricINCSGROUPS+=	C3DBG
973770cf0a5SDimitry AndricC3DBGDIR=	${CXXINCLUDEDIR}/__cxx03/__debug_utils
974770cf0a5SDimitry AndricC3DBG_HEADERS+=	randomize_range.h
975770cf0a5SDimitry AndricC3DBG_HEADERS+=	sanitizers.h
976770cf0a5SDimitry AndricC3DBG_HEADERS+=	strict_weak_ordering_check.h
977770cf0a5SDimitry Andric.for hdr in ${C3DBG_HEADERS}
978770cf0a5SDimitry AndricC3DBG+=		${HDRDIR}/__cxx03/__debug_utils/${hdr}
979770cf0a5SDimitry Andric.endfor
980770cf0a5SDimitry Andric
981770cf0a5SDimitry AndricINCSGROUPS+=	C3EXC
982770cf0a5SDimitry AndricC3EXCDIR=	${CXXINCLUDEDIR}/__cxx03/__exception
983770cf0a5SDimitry AndricC3EXC_HEADERS+=	exception.h
984770cf0a5SDimitry AndricC3EXC_HEADERS+=	exception_ptr.h
985770cf0a5SDimitry AndricC3EXC_HEADERS+=	nested_exception.h
986770cf0a5SDimitry AndricC3EXC_HEADERS+=	operations.h
987770cf0a5SDimitry AndricC3EXC_HEADERS+=	terminate.h
988770cf0a5SDimitry Andric.for hdr in ${C3EXC_HEADERS}
989770cf0a5SDimitry AndricC3EXC+=		${HDRDIR}/__cxx03/__exception/${hdr}
990770cf0a5SDimitry Andric.endfor
991770cf0a5SDimitry Andric
992770cf0a5SDimitry AndricINCSGROUPS+=	C3FUN
993770cf0a5SDimitry AndricC3FUNDIR=	${CXXINCLUDEDIR}/__cxx03/__functional
994770cf0a5SDimitry AndricC3FUN_HEADERS+=	binary_function.h
995770cf0a5SDimitry AndricC3FUN_HEADERS+=	binary_negate.h
996770cf0a5SDimitry AndricC3FUN_HEADERS+=	bind.h
997770cf0a5SDimitry AndricC3FUN_HEADERS+=	binder1st.h
998770cf0a5SDimitry AndricC3FUN_HEADERS+=	binder2nd.h
999770cf0a5SDimitry AndricC3FUN_HEADERS+=	hash.h
1000770cf0a5SDimitry AndricC3FUN_HEADERS+=	identity.h
1001770cf0a5SDimitry AndricC3FUN_HEADERS+=	mem_fn.h
1002770cf0a5SDimitry AndricC3FUN_HEADERS+=	mem_fun_ref.h
1003770cf0a5SDimitry AndricC3FUN_HEADERS+=	operations.h
1004770cf0a5SDimitry AndricC3FUN_HEADERS+=	pointer_to_binary_function.h
1005770cf0a5SDimitry AndricC3FUN_HEADERS+=	pointer_to_unary_function.h
1006770cf0a5SDimitry AndricC3FUN_HEADERS+=	reference_wrapper.h
1007770cf0a5SDimitry AndricC3FUN_HEADERS+=	unary_function.h
1008770cf0a5SDimitry AndricC3FUN_HEADERS+=	unary_negate.h
1009770cf0a5SDimitry AndricC3FUN_HEADERS+=	weak_result_type.h
1010770cf0a5SDimitry Andric.for hdr in ${C3FUN_HEADERS}
1011770cf0a5SDimitry AndricC3FUN+=		${HDRDIR}/__cxx03/__functional/${hdr}
1012770cf0a5SDimitry Andric.endfor
1013770cf0a5SDimitry Andric
1014770cf0a5SDimitry AndricINCSGROUPS+=	C3FWD
1015770cf0a5SDimitry AndricC3FWDDIR=	${CXXINCLUDEDIR}/__cxx03/__fwd
1016770cf0a5SDimitry AndricC3FWD_HEADERS+=	array.h
1017770cf0a5SDimitry AndricC3FWD_HEADERS+=	bit_reference.h
1018770cf0a5SDimitry AndricC3FWD_HEADERS+=	complex.h
1019770cf0a5SDimitry AndricC3FWD_HEADERS+=	deque.h
1020770cf0a5SDimitry AndricC3FWD_HEADERS+=	fstream.h
1021770cf0a5SDimitry AndricC3FWD_HEADERS+=	functional.h
1022770cf0a5SDimitry AndricC3FWD_HEADERS+=	ios.h
1023770cf0a5SDimitry AndricC3FWD_HEADERS+=	istream.h
1024770cf0a5SDimitry AndricC3FWD_HEADERS+=	memory.h
1025770cf0a5SDimitry AndricC3FWD_HEADERS+=	ostream.h
1026770cf0a5SDimitry AndricC3FWD_HEADERS+=	pair.h
1027770cf0a5SDimitry AndricC3FWD_HEADERS+=	queue.h
1028770cf0a5SDimitry AndricC3FWD_HEADERS+=	sstream.h
1029770cf0a5SDimitry AndricC3FWD_HEADERS+=	stack.h
1030770cf0a5SDimitry AndricC3FWD_HEADERS+=	streambuf.h
1031770cf0a5SDimitry AndricC3FWD_HEADERS+=	string.h
1032770cf0a5SDimitry AndricC3FWD_HEADERS+=	string_view.h
1033770cf0a5SDimitry AndricC3FWD_HEADERS+=	tuple.h
1034770cf0a5SDimitry AndricC3FWD_HEADERS+=	vector.h
1035770cf0a5SDimitry Andric.for hdr in ${C3FWD_HEADERS}
1036770cf0a5SDimitry AndricC3FWD+=		${HDRDIR}/__cxx03/__fwd/${hdr}
1037770cf0a5SDimitry Andric.endfor
1038770cf0a5SDimitry Andric
1039770cf0a5SDimitry AndricINCSGROUPS+=	C3IOS
1040770cf0a5SDimitry AndricC3IOSDIR=	${CXXINCLUDEDIR}/__cxx03/__ios
1041770cf0a5SDimitry AndricC3IOS_HEADERS+=	fpos.h
1042770cf0a5SDimitry Andric.for hdr in ${C3IOS_HEADERS}
1043770cf0a5SDimitry AndricC3IOS+=		${HDRDIR}/__cxx03/__ios/${hdr}
1044770cf0a5SDimitry Andric.endfor
1045770cf0a5SDimitry Andric
1046770cf0a5SDimitry AndricINCSGROUPS+=	C3IT
1047770cf0a5SDimitry AndricC3ITDIR=	${CXXINCLUDEDIR}/__cxx03/__iterator
1048770cf0a5SDimitry AndricC3IT_HEADERS+=	access.h
1049770cf0a5SDimitry AndricC3IT_HEADERS+=	advance.h
1050770cf0a5SDimitry AndricC3IT_HEADERS+=	aliasing_iterator.h
1051770cf0a5SDimitry AndricC3IT_HEADERS+=	back_insert_iterator.h
1052770cf0a5SDimitry AndricC3IT_HEADERS+=	bounded_iter.h
1053770cf0a5SDimitry AndricC3IT_HEADERS+=	distance.h
1054770cf0a5SDimitry AndricC3IT_HEADERS+=	erase_if_container.h
1055770cf0a5SDimitry AndricC3IT_HEADERS+=	front_insert_iterator.h
1056770cf0a5SDimitry AndricC3IT_HEADERS+=	insert_iterator.h
1057770cf0a5SDimitry AndricC3IT_HEADERS+=	istream_iterator.h
1058770cf0a5SDimitry AndricC3IT_HEADERS+=	istreambuf_iterator.h
1059770cf0a5SDimitry AndricC3IT_HEADERS+=	iterator.h
1060770cf0a5SDimitry AndricC3IT_HEADERS+=	iterator_traits.h
1061770cf0a5SDimitry AndricC3IT_HEADERS+=	move_iterator.h
1062770cf0a5SDimitry AndricC3IT_HEADERS+=	next.h
1063770cf0a5SDimitry AndricC3IT_HEADERS+=	ostream_iterator.h
1064770cf0a5SDimitry AndricC3IT_HEADERS+=	ostreambuf_iterator.h
1065770cf0a5SDimitry AndricC3IT_HEADERS+=	prev.h
1066770cf0a5SDimitry AndricC3IT_HEADERS+=	reverse_iterator.h
1067770cf0a5SDimitry AndricC3IT_HEADERS+=	segmented_iterator.h
1068770cf0a5SDimitry AndricC3IT_HEADERS+=	wrap_iter.h
1069770cf0a5SDimitry Andric.for hdr in ${C3IT_HEADERS}
1070770cf0a5SDimitry AndricC3IT+=		${HDRDIR}/__cxx03/__iterator/${hdr}
1071770cf0a5SDimitry Andric.endfor
1072770cf0a5SDimitry Andric
1073770cf0a5SDimitry AndricINCSGROUPS+=	C3LOC
1074770cf0a5SDimitry AndricC3LOCDIR=	${CXXINCLUDEDIR}/__cxx03/__locale_dir
1075770cf0a5SDimitry AndricC3LOC_HEADERS+=	locale_base_api.h
1076770cf0a5SDimitry Andric.for hdr in ${C3LOC_HEADERS}
1077770cf0a5SDimitry AndricC3LOC+=		${HDRDIR}/__cxx03/__locale_dir/${hdr}
1078770cf0a5SDimitry Andric.endfor
1079770cf0a5SDimitry Andric
1080770cf0a5SDimitry AndricINCSGROUPS+=	C3LBA
1081770cf0a5SDimitry AndricC3LBADIR=	${CXXINCLUDEDIR}/__cxx03/__locale_dir/locale_base_api
1082770cf0a5SDimitry AndricC3LBA_HEADERS+=	android.h
1083770cf0a5SDimitry AndricC3LBA_HEADERS+=	bsd_locale_defaults.h
1084770cf0a5SDimitry AndricC3LBA_HEADERS+=	bsd_locale_fallbacks.h
1085770cf0a5SDimitry AndricC3LBA_HEADERS+=	fuchsia.h
1086770cf0a5SDimitry AndricC3LBA_HEADERS+=	ibm.h
1087770cf0a5SDimitry AndricC3LBA_HEADERS+=	locale_guard.h
1088770cf0a5SDimitry AndricC3LBA_HEADERS+=	musl.h
1089770cf0a5SDimitry AndricC3LBA_HEADERS+=	newlib.h
1090770cf0a5SDimitry AndricC3LBA_HEADERS+=	openbsd.h
1091770cf0a5SDimitry AndricC3LBA_HEADERS+=	win32.h
1092770cf0a5SDimitry Andric.for hdr in ${C3LBA_HEADERS}
1093770cf0a5SDimitry AndricC3LBA+=		${HDRDIR}/__cxx03/__locale_dir/locale_base_api/${hdr}
1094770cf0a5SDimitry Andric.endfor
1095770cf0a5SDimitry Andric
1096770cf0a5SDimitry AndricINCSGROUPS+=	C3MAT
1097770cf0a5SDimitry AndricC3MATDIR=	${CXXINCLUDEDIR}/__cxx03/__math
1098770cf0a5SDimitry AndricC3MAT_HEADERS+=	abs.h
1099770cf0a5SDimitry AndricC3MAT_HEADERS+=	copysign.h
1100770cf0a5SDimitry AndricC3MAT_HEADERS+=	error_functions.h
1101770cf0a5SDimitry AndricC3MAT_HEADERS+=	exponential_functions.h
1102770cf0a5SDimitry AndricC3MAT_HEADERS+=	fdim.h
1103770cf0a5SDimitry AndricC3MAT_HEADERS+=	fma.h
1104770cf0a5SDimitry AndricC3MAT_HEADERS+=	gamma.h
1105770cf0a5SDimitry AndricC3MAT_HEADERS+=	hyperbolic_functions.h
1106770cf0a5SDimitry AndricC3MAT_HEADERS+=	hypot.h
1107770cf0a5SDimitry AndricC3MAT_HEADERS+=	inverse_hyperbolic_functions.h
1108770cf0a5SDimitry AndricC3MAT_HEADERS+=	inverse_trigonometric_functions.h
1109770cf0a5SDimitry AndricC3MAT_HEADERS+=	logarithms.h
1110770cf0a5SDimitry AndricC3MAT_HEADERS+=	min_max.h
1111770cf0a5SDimitry AndricC3MAT_HEADERS+=	modulo.h
1112770cf0a5SDimitry AndricC3MAT_HEADERS+=	remainder.h
1113770cf0a5SDimitry AndricC3MAT_HEADERS+=	roots.h
1114770cf0a5SDimitry AndricC3MAT_HEADERS+=	rounding_functions.h
1115770cf0a5SDimitry AndricC3MAT_HEADERS+=	traits.h
1116770cf0a5SDimitry AndricC3MAT_HEADERS+=	trigonometric_functions.h
1117770cf0a5SDimitry Andric.for hdr in ${C3MAT_HEADERS}
1118770cf0a5SDimitry AndricC3MAT+=		${HDRDIR}/__cxx03/__math/${hdr}
1119770cf0a5SDimitry Andric.endfor
1120770cf0a5SDimitry Andric
1121770cf0a5SDimitry AndricINCSGROUPS+=	C3MEM
1122770cf0a5SDimitry AndricC3MEMDIR=	${CXXINCLUDEDIR}/__cxx03/__memory
1123770cf0a5SDimitry AndricC3MEM_HEADERS+=	addressof.h
1124770cf0a5SDimitry AndricC3MEM_HEADERS+=	align.h
1125770cf0a5SDimitry AndricC3MEM_HEADERS+=	aligned_alloc.h
1126770cf0a5SDimitry AndricC3MEM_HEADERS+=	allocate_at_least.h
1127770cf0a5SDimitry AndricC3MEM_HEADERS+=	allocation_guard.h
1128770cf0a5SDimitry AndricC3MEM_HEADERS+=	allocator.h
1129770cf0a5SDimitry AndricC3MEM_HEADERS+=	allocator_arg_t.h
1130770cf0a5SDimitry AndricC3MEM_HEADERS+=	allocator_destructor.h
1131770cf0a5SDimitry AndricC3MEM_HEADERS+=	allocator_traits.h
1132770cf0a5SDimitry AndricC3MEM_HEADERS+=	assume_aligned.h
1133770cf0a5SDimitry AndricC3MEM_HEADERS+=	auto_ptr.h
1134770cf0a5SDimitry AndricC3MEM_HEADERS+=	builtin_new_allocator.h
1135770cf0a5SDimitry AndricC3MEM_HEADERS+=	compressed_pair.h
1136770cf0a5SDimitry AndricC3MEM_HEADERS+=	construct_at.h
1137770cf0a5SDimitry AndricC3MEM_HEADERS+=	destruct_n.h
1138770cf0a5SDimitry AndricC3MEM_HEADERS+=	pointer_traits.h
1139770cf0a5SDimitry AndricC3MEM_HEADERS+=	raw_storage_iterator.h
1140770cf0a5SDimitry AndricC3MEM_HEADERS+=	shared_ptr.h
1141770cf0a5SDimitry AndricC3MEM_HEADERS+=	swap_allocator.h
1142770cf0a5SDimitry AndricC3MEM_HEADERS+=	temp_value.h
1143770cf0a5SDimitry AndricC3MEM_HEADERS+=	temporary_buffer.h
1144770cf0a5SDimitry AndricC3MEM_HEADERS+=	uninitialized_algorithms.h
1145770cf0a5SDimitry AndricC3MEM_HEADERS+=	unique_ptr.h
1146770cf0a5SDimitry AndricC3MEM_HEADERS+=	uses_allocator.h
1147770cf0a5SDimitry AndricC3MEM_HEADERS+=	voidify.h
1148770cf0a5SDimitry Andric.for hdr in ${C3MEM_HEADERS}
1149770cf0a5SDimitry AndricC3MEM+=		${HDRDIR}/__cxx03/__memory/${hdr}
1150770cf0a5SDimitry Andric.endfor
1151770cf0a5SDimitry Andric
1152770cf0a5SDimitry AndricINCSGROUPS+=	C3MUT
1153770cf0a5SDimitry AndricC3MUTDIR=	${CXXINCLUDEDIR}/__cxx03/__mutex
1154770cf0a5SDimitry AndricC3MUT_HEADERS+=	lock_guard.h
1155770cf0a5SDimitry AndricC3MUT_HEADERS+=	mutex.h
1156770cf0a5SDimitry AndricC3MUT_HEADERS+=	once_flag.h
1157770cf0a5SDimitry AndricC3MUT_HEADERS+=	tag_types.h
1158770cf0a5SDimitry AndricC3MUT_HEADERS+=	unique_lock.h
1159770cf0a5SDimitry Andric.for hdr in ${C3MUT_HEADERS}
1160770cf0a5SDimitry AndricC3MUT+=		${HDRDIR}/__cxx03/__mutex/${hdr}
1161770cf0a5SDimitry Andric.endfor
1162770cf0a5SDimitry Andric
1163770cf0a5SDimitry AndricINCSGROUPS+=	C3NUM
1164770cf0a5SDimitry AndricC3NUMDIR=	${CXXINCLUDEDIR}/__cxx03/__numeric
1165770cf0a5SDimitry AndricC3NUM_HEADERS+=	accumulate.h
1166770cf0a5SDimitry AndricC3NUM_HEADERS+=	adjacent_difference.h
1167770cf0a5SDimitry AndricC3NUM_HEADERS+=	inner_product.h
1168770cf0a5SDimitry AndricC3NUM_HEADERS+=	iota.h
1169770cf0a5SDimitry AndricC3NUM_HEADERS+=	partial_sum.h
1170770cf0a5SDimitry Andric.for hdr in ${C3NUM_HEADERS}
1171770cf0a5SDimitry AndricC3NUM+=		${HDRDIR}/__cxx03/__numeric/${hdr}
1172770cf0a5SDimitry Andric.endfor
1173770cf0a5SDimitry Andric
1174770cf0a5SDimitry AndricINCSGROUPS+=	C3OST
1175770cf0a5SDimitry AndricC3OSTDIR=	${CXXINCLUDEDIR}/__cxx03/__ostream
1176770cf0a5SDimitry AndricC3OST_HEADERS+=	basic_ostream.h
1177770cf0a5SDimitry Andric.for hdr in ${C3OST_HEADERS}
1178770cf0a5SDimitry AndricC3OST+=		${HDRDIR}/__cxx03/__ostream/${hdr}
1179770cf0a5SDimitry Andric.endfor
1180770cf0a5SDimitry Andric
1181770cf0a5SDimitry AndricINCSGROUPS+=	C3RND
1182770cf0a5SDimitry AndricC3RNDDIR=	${CXXINCLUDEDIR}/__cxx03/__random
1183770cf0a5SDimitry AndricC3RND_HEADERS+=	bernoulli_distribution.h
1184770cf0a5SDimitry AndricC3RND_HEADERS+=	binomial_distribution.h
1185770cf0a5SDimitry AndricC3RND_HEADERS+=	cauchy_distribution.h
1186770cf0a5SDimitry AndricC3RND_HEADERS+=	chi_squared_distribution.h
1187770cf0a5SDimitry AndricC3RND_HEADERS+=	clamp_to_integral.h
1188770cf0a5SDimitry AndricC3RND_HEADERS+=	default_random_engine.h
1189770cf0a5SDimitry AndricC3RND_HEADERS+=	discard_block_engine.h
1190770cf0a5SDimitry AndricC3RND_HEADERS+=	discrete_distribution.h
1191770cf0a5SDimitry AndricC3RND_HEADERS+=	exponential_distribution.h
1192770cf0a5SDimitry AndricC3RND_HEADERS+=	extreme_value_distribution.h
1193770cf0a5SDimitry AndricC3RND_HEADERS+=	fisher_f_distribution.h
1194770cf0a5SDimitry AndricC3RND_HEADERS+=	gamma_distribution.h
1195770cf0a5SDimitry AndricC3RND_HEADERS+=	generate_canonical.h
1196770cf0a5SDimitry AndricC3RND_HEADERS+=	geometric_distribution.h
1197770cf0a5SDimitry AndricC3RND_HEADERS+=	independent_bits_engine.h
1198770cf0a5SDimitry AndricC3RND_HEADERS+=	is_seed_sequence.h
1199770cf0a5SDimitry AndricC3RND_HEADERS+=	is_valid.h
1200770cf0a5SDimitry AndricC3RND_HEADERS+=	knuth_b.h
1201770cf0a5SDimitry AndricC3RND_HEADERS+=	linear_congruential_engine.h
1202770cf0a5SDimitry AndricC3RND_HEADERS+=	log2.h
1203770cf0a5SDimitry AndricC3RND_HEADERS+=	lognormal_distribution.h
1204770cf0a5SDimitry AndricC3RND_HEADERS+=	mersenne_twister_engine.h
1205770cf0a5SDimitry AndricC3RND_HEADERS+=	negative_binomial_distribution.h
1206770cf0a5SDimitry AndricC3RND_HEADERS+=	normal_distribution.h
1207770cf0a5SDimitry AndricC3RND_HEADERS+=	piecewise_constant_distribution.h
1208770cf0a5SDimitry AndricC3RND_HEADERS+=	piecewise_linear_distribution.h
1209770cf0a5SDimitry AndricC3RND_HEADERS+=	poisson_distribution.h
1210770cf0a5SDimitry AndricC3RND_HEADERS+=	random_device.h
1211770cf0a5SDimitry AndricC3RND_HEADERS+=	ranlux.h
1212770cf0a5SDimitry AndricC3RND_HEADERS+=	seed_seq.h
1213770cf0a5SDimitry AndricC3RND_HEADERS+=	shuffle_order_engine.h
1214770cf0a5SDimitry AndricC3RND_HEADERS+=	student_t_distribution.h
1215770cf0a5SDimitry AndricC3RND_HEADERS+=	subtract_with_carry_engine.h
1216770cf0a5SDimitry AndricC3RND_HEADERS+=	uniform_int_distribution.h
1217770cf0a5SDimitry AndricC3RND_HEADERS+=	uniform_real_distribution.h
1218770cf0a5SDimitry AndricC3RND_HEADERS+=	weibull_distribution.h
1219770cf0a5SDimitry Andric.for hdr in ${C3RND_HEADERS}
1220770cf0a5SDimitry AndricC3RND+=		${HDRDIR}/__cxx03/__random/${hdr}
1221770cf0a5SDimitry Andric.endfor
1222770cf0a5SDimitry Andric
1223770cf0a5SDimitry AndricINCSGROUPS+=	C3ST
1224770cf0a5SDimitry AndricC3STDIR=	${CXXINCLUDEDIR}/__cxx03/__string
1225770cf0a5SDimitry AndricC3ST_HEADERS+=	char_traits.h
1226770cf0a5SDimitry AndricC3ST_HEADERS+=	constexpr_c_functions.h
1227770cf0a5SDimitry AndricC3ST_HEADERS+=	extern_template_lists.h
1228770cf0a5SDimitry Andric.for hdr in ${C3ST_HEADERS}
1229770cf0a5SDimitry AndricC3ST+=		${HDRDIR}/__cxx03/__string/${hdr}
1230770cf0a5SDimitry Andric.endfor
1231770cf0a5SDimitry Andric
1232770cf0a5SDimitry AndricINCSGROUPS+=	C3SER
1233770cf0a5SDimitry AndricC3SERDIR=	${CXXINCLUDEDIR}/__cxx03/__system_error
1234770cf0a5SDimitry AndricC3SER_HEADERS+=	errc.h
1235770cf0a5SDimitry AndricC3SER_HEADERS+=	error_category.h
1236770cf0a5SDimitry AndricC3SER_HEADERS+=	error_code.h
1237770cf0a5SDimitry AndricC3SER_HEADERS+=	error_condition.h
1238770cf0a5SDimitry AndricC3SER_HEADERS+=	system_error.h
1239770cf0a5SDimitry Andric.for hdr in ${C3SER_HEADERS}
1240770cf0a5SDimitry AndricC3SER+=		${HDRDIR}/__cxx03/__system_error/${hdr}
1241770cf0a5SDimitry Andric.endfor
1242770cf0a5SDimitry Andric
1243770cf0a5SDimitry AndricINCSGROUPS+=	C3THR
1244770cf0a5SDimitry AndricC3THRDIR=	${CXXINCLUDEDIR}/__cxx03/__thread
1245770cf0a5SDimitry AndricC3THR_HEADERS+=	id.h
1246770cf0a5SDimitry AndricC3THR_HEADERS+=	poll_with_backoff.h
1247770cf0a5SDimitry AndricC3THR_HEADERS+=	support.h
1248770cf0a5SDimitry AndricC3THR_HEADERS+=	this_thread.h
1249770cf0a5SDimitry AndricC3THR_HEADERS+=	thread.h
1250770cf0a5SDimitry AndricC3THR_HEADERS+=	timed_backoff_policy.h
1251770cf0a5SDimitry Andric.for hdr in ${C3THR_HEADERS}
1252770cf0a5SDimitry AndricC3THR+=		${HDRDIR}/__cxx03/__thread/${hdr}
1253770cf0a5SDimitry Andric.endfor
1254770cf0a5SDimitry Andric
1255770cf0a5SDimitry AndricINCSGROUPS+=	C3THS
1256770cf0a5SDimitry AndricC3THSDIR=	${CXXINCLUDEDIR}/__cxx03/__thread/support
1257770cf0a5SDimitry AndricC3THS_HEADERS+=	c11.h
1258770cf0a5SDimitry AndricC3THS_HEADERS+=	external.h
1259770cf0a5SDimitry AndricC3THS_HEADERS+=	pthread.h
1260770cf0a5SDimitry AndricC3THS_HEADERS+=	windows.h
1261770cf0a5SDimitry Andric.for hdr in ${C3THS_HEADERS}
1262770cf0a5SDimitry AndricC3THS+=		${HDRDIR}/__cxx03/__thread/support/${hdr}
1263770cf0a5SDimitry Andric.endfor
1264770cf0a5SDimitry Andric
1265770cf0a5SDimitry AndricINCSGROUPS+=	C3TUP
1266770cf0a5SDimitry AndricC3TUPDIR=	${CXXINCLUDEDIR}/__cxx03/__tuple
1267770cf0a5SDimitry AndricC3TUP_HEADERS+=	find_index.h
1268770cf0a5SDimitry AndricC3TUP_HEADERS+=	make_tuple_types.h
1269770cf0a5SDimitry AndricC3TUP_HEADERS+=	sfinae_helpers.h
1270770cf0a5SDimitry AndricC3TUP_HEADERS+=	tuple_element.h
1271770cf0a5SDimitry AndricC3TUP_HEADERS+=	tuple_indices.h
1272770cf0a5SDimitry AndricC3TUP_HEADERS+=	tuple_like.h
1273770cf0a5SDimitry AndricC3TUP_HEADERS+=	tuple_like_ext.h
1274770cf0a5SDimitry AndricC3TUP_HEADERS+=	tuple_like_no_subrange.h
1275770cf0a5SDimitry AndricC3TUP_HEADERS+=	tuple_size.h
1276770cf0a5SDimitry AndricC3TUP_HEADERS+=	tuple_types.h
1277770cf0a5SDimitry Andric.for hdr in ${C3TUP_HEADERS}
1278770cf0a5SDimitry AndricC3TUP+=		${HDRDIR}/__cxx03/__tuple/${hdr}
1279770cf0a5SDimitry Andric.endfor
1280770cf0a5SDimitry Andric
1281770cf0a5SDimitry AndricINCSGROUPS+=	C3TTR
1282770cf0a5SDimitry AndricC3TTRDIR=	${CXXINCLUDEDIR}/__cxx03/__type_traits
1283770cf0a5SDimitry AndricC3TTR_HEADERS+=	add_const.h
1284770cf0a5SDimitry AndricC3TTR_HEADERS+=	add_cv.h
1285770cf0a5SDimitry AndricC3TTR_HEADERS+=	add_lvalue_reference.h
1286770cf0a5SDimitry AndricC3TTR_HEADERS+=	add_pointer.h
1287770cf0a5SDimitry AndricC3TTR_HEADERS+=	add_rvalue_reference.h
1288770cf0a5SDimitry AndricC3TTR_HEADERS+=	add_volatile.h
1289770cf0a5SDimitry AndricC3TTR_HEADERS+=	aligned_storage.h
1290770cf0a5SDimitry AndricC3TTR_HEADERS+=	aligned_union.h
1291770cf0a5SDimitry AndricC3TTR_HEADERS+=	alignment_of.h
1292770cf0a5SDimitry AndricC3TTR_HEADERS+=	can_extract_key.h
1293770cf0a5SDimitry AndricC3TTR_HEADERS+=	common_type.h
1294770cf0a5SDimitry AndricC3TTR_HEADERS+=	conditional.h
1295770cf0a5SDimitry AndricC3TTR_HEADERS+=	conjunction.h
1296770cf0a5SDimitry AndricC3TTR_HEADERS+=	copy_cv.h
1297770cf0a5SDimitry AndricC3TTR_HEADERS+=	copy_cvref.h
1298770cf0a5SDimitry AndricC3TTR_HEADERS+=	datasizeof.h
1299770cf0a5SDimitry AndricC3TTR_HEADERS+=	decay.h
1300770cf0a5SDimitry AndricC3TTR_HEADERS+=	dependent_type.h
1301770cf0a5SDimitry AndricC3TTR_HEADERS+=	desugars_to.h
1302770cf0a5SDimitry AndricC3TTR_HEADERS+=	disjunction.h
1303770cf0a5SDimitry AndricC3TTR_HEADERS+=	enable_if.h
1304770cf0a5SDimitry AndricC3TTR_HEADERS+=	extent.h
1305770cf0a5SDimitry AndricC3TTR_HEADERS+=	has_virtual_destructor.h
1306770cf0a5SDimitry AndricC3TTR_HEADERS+=	integral_constant.h
1307770cf0a5SDimitry AndricC3TTR_HEADERS+=	invoke.h
1308770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_abstract.h
1309770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_allocator.h
1310770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_always_bitcastable.h
1311770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_arithmetic.h
1312770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_array.h
1313770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_assignable.h
1314770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_base_of.h
1315770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_bounded_array.h
1316770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_callable.h
1317770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_char_like_type.h
1318770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_class.h
1319770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_compound.h
1320770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_const.h
1321770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_constant_evaluated.h
1322770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_constructible.h
1323770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_convertible.h
1324770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_core_convertible.h
1325770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_destructible.h
1326770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_empty.h
1327770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_enum.h
1328770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_equality_comparable.h
1329770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_execution_policy.h
1330770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_final.h
1331770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_floating_point.h
1332770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_function.h
1333770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_fundamental.h
1334770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_implicitly_default_constructible.h
1335770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_integral.h
1336770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_literal_type.h
1337770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_member_pointer.h
1338770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_nothrow_assignable.h
1339770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_nothrow_constructible.h
1340770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_nothrow_destructible.h
1341770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_null_pointer.h
1342770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_object.h
1343770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_pod.h
1344770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_pointer.h
1345770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_polymorphic.h
1346770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_primary_template.h
1347770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_reference.h
1348770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_reference_wrapper.h
1349770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_referenceable.h
1350770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_same.h
1351770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_scalar.h
1352770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_signed.h
1353770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_signed_integer.h
1354770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_specialization.h
1355770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_standard_layout.h
1356770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_swappable.h
1357770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_trivial.h
1358770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_trivially_assignable.h
1359770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_trivially_constructible.h
1360770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_trivially_copyable.h
1361770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_trivially_destructible.h
1362770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_trivially_lexicographically_comparable.h
1363770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_trivially_relocatable.h
1364770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_unbounded_array.h
1365770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_union.h
1366770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_unsigned.h
1367770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_unsigned_integer.h
1368770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_valid_expansion.h
1369770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_void.h
1370770cf0a5SDimitry AndricC3TTR_HEADERS+=	is_volatile.h
1371770cf0a5SDimitry AndricC3TTR_HEADERS+=	lazy.h
1372770cf0a5SDimitry AndricC3TTR_HEADERS+=	make_32_64_or_128_bit.h
1373770cf0a5SDimitry AndricC3TTR_HEADERS+=	make_const_lvalue_ref.h
1374770cf0a5SDimitry AndricC3TTR_HEADERS+=	make_signed.h
1375770cf0a5SDimitry AndricC3TTR_HEADERS+=	make_unsigned.h
1376770cf0a5SDimitry AndricC3TTR_HEADERS+=	maybe_const.h
1377770cf0a5SDimitry AndricC3TTR_HEADERS+=	nat.h
1378770cf0a5SDimitry AndricC3TTR_HEADERS+=	negation.h
1379770cf0a5SDimitry AndricC3TTR_HEADERS+=	noexcept_move_assign_container.h
1380770cf0a5SDimitry AndricC3TTR_HEADERS+=	promote.h
1381770cf0a5SDimitry AndricC3TTR_HEADERS+=	rank.h
1382770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_all_extents.h
1383770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_const.h
1384770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_const_ref.h
1385770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_cv.h
1386770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_cvref.h
1387770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_extent.h
1388770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_pointer.h
1389770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_reference.h
1390770cf0a5SDimitry AndricC3TTR_HEADERS+=	remove_volatile.h
1391770cf0a5SDimitry AndricC3TTR_HEADERS+=	result_of.h
1392770cf0a5SDimitry AndricC3TTR_HEADERS+=	strip_signature.h
1393770cf0a5SDimitry AndricC3TTR_HEADERS+=	type_identity.h
1394770cf0a5SDimitry AndricC3TTR_HEADERS+=	type_list.h
1395770cf0a5SDimitry AndricC3TTR_HEADERS+=	underlying_type.h
1396770cf0a5SDimitry AndricC3TTR_HEADERS+=	unwrap_ref.h
1397770cf0a5SDimitry AndricC3TTR_HEADERS+=	void_t.h
1398770cf0a5SDimitry Andric.for hdr in ${C3TTR_HEADERS}
1399770cf0a5SDimitry AndricC3TTR+=		${HDRDIR}/__cxx03/__type_traits/${hdr}
1400770cf0a5SDimitry Andric.endfor
1401770cf0a5SDimitry Andric
1402770cf0a5SDimitry AndricINCSGROUPS+=	C3UTL
1403770cf0a5SDimitry AndricC3UTLDIR=	${CXXINCLUDEDIR}/__cxx03/__utility
1404770cf0a5SDimitry AndricC3UTL_HEADERS+=	as_lvalue.h
1405770cf0a5SDimitry AndricC3UTL_HEADERS+=	auto_cast.h
1406770cf0a5SDimitry AndricC3UTL_HEADERS+=	convert_to_integral.h
1407770cf0a5SDimitry AndricC3UTL_HEADERS+=	declval.h
1408770cf0a5SDimitry AndricC3UTL_HEADERS+=	empty.h
1409770cf0a5SDimitry AndricC3UTL_HEADERS+=	exception_guard.h
1410770cf0a5SDimitry AndricC3UTL_HEADERS+=	forward.h
1411770cf0a5SDimitry AndricC3UTL_HEADERS+=	integer_sequence.h
1412770cf0a5SDimitry AndricC3UTL_HEADERS+=	is_pointer_in_range.h
1413770cf0a5SDimitry AndricC3UTL_HEADERS+=	is_valid_range.h
1414770cf0a5SDimitry AndricC3UTL_HEADERS+=	move.h
1415770cf0a5SDimitry AndricC3UTL_HEADERS+=	no_destroy.h
1416770cf0a5SDimitry AndricC3UTL_HEADERS+=	pair.h
1417770cf0a5SDimitry AndricC3UTL_HEADERS+=	piecewise_construct.h
1418770cf0a5SDimitry AndricC3UTL_HEADERS+=	priority_tag.h
1419770cf0a5SDimitry AndricC3UTL_HEADERS+=	private_constructor_tag.h
1420770cf0a5SDimitry AndricC3UTL_HEADERS+=	rel_ops.h
1421770cf0a5SDimitry AndricC3UTL_HEADERS+=	small_buffer.h
1422770cf0a5SDimitry AndricC3UTL_HEADERS+=	swap.h
1423770cf0a5SDimitry AndricC3UTL_HEADERS+=	unreachable.h
1424770cf0a5SDimitry Andric.for hdr in ${C3UTL_HEADERS}
1425770cf0a5SDimitry AndricC3UTL+=		${HDRDIR}/__cxx03/__utility/${hdr}
1426770cf0a5SDimitry Andric.endfor
1427770cf0a5SDimitry Andric
1428770cf0a5SDimitry AndricINCSGROUPS+=	C3VAR
1429770cf0a5SDimitry AndricC3VARDIR=	${CXXINCLUDEDIR}/__cxx03/__variant
1430770cf0a5SDimitry AndricC3VAR_HEADERS+=	monostate.h
1431770cf0a5SDimitry Andric.for hdr in ${C3VAR_HEADERS}
1432770cf0a5SDimitry AndricC3VAR+=		${HDRDIR}/__cxx03/__variant/${hdr}
1433770cf0a5SDimitry Andric.endfor
1434770cf0a5SDimitry Andric
1435770cf0a5SDimitry AndricINCSGROUPS+=	C3EXP
1436770cf0a5SDimitry AndricC3EXPDIR=	${CXXINCLUDEDIR}/__cxx03/experimental
1437770cf0a5SDimitry AndricC3EXP_HEADERS+=	__config
1438770cf0a5SDimitry AndricC3EXP_HEADERS+=	utility
1439770cf0a5SDimitry Andric.for hdr in ${C3EXP_HEADERS}
1440770cf0a5SDimitry AndricC3EXP+=		${HDRDIR}/__cxx03/experimental/${hdr}
1441770cf0a5SDimitry Andric.endfor
1442770cf0a5SDimitry Andric
1443770cf0a5SDimitry AndricINCSGROUPS+=	C3EXT
1444770cf0a5SDimitry AndricC3EXTDIR=	${CXXINCLUDEDIR}/__cxx03/ext
1445770cf0a5SDimitry AndricC3EXT_HEADERS+=	__hash
1446770cf0a5SDimitry AndricC3EXT_HEADERS+=	hash_map
1447770cf0a5SDimitry AndricC3EXT_HEADERS+=	hash_set
1448770cf0a5SDimitry Andric.for hdr in ${C3EXT_HEADERS}
1449770cf0a5SDimitry AndricC3EXT+=		${HDRDIR}/__cxx03/ext/${hdr}
1450770cf0a5SDimitry Andric.endfor
1451770cf0a5SDimitry Andric
1452753f127fSDimitry AndricINCSGROUPS+=	DBG
1453753f127fSDimitry AndricDBGDIR=		${CXXINCLUDEDIR}/__debug_utils
1454753f127fSDimitry AndricDBG_HEADERS+=	randomize_range.h
14550fca6ea1SDimitry AndricDBG_HEADERS+=	sanitizers.h
145606c3fb27SDimitry AndricDBG_HEADERS+=	strict_weak_ordering_check.h
1457753f127fSDimitry Andric.for hdr in ${DBG_HEADERS}
1458753f127fSDimitry AndricDBG+=		${HDRDIR}/__debug_utils/${hdr}
1459753f127fSDimitry Andric.endfor
1460753f127fSDimitry Andric
1461bdd1243dSDimitry AndricINCSGROUPS+=	EXC
146206c3fb27SDimitry AndricEXCDIR=		${CXXINCLUDEDIR}/__exception
146306c3fb27SDimitry AndricEXC_HEADERS+=	exception.h
146406c3fb27SDimitry AndricEXC_HEADERS+=	exception_ptr.h
146506c3fb27SDimitry AndricEXC_HEADERS+=	nested_exception.h
146606c3fb27SDimitry AndricEXC_HEADERS+=	operations.h
146706c3fb27SDimitry AndricEXC_HEADERS+=	terminate.h
1468bdd1243dSDimitry Andric.for hdr in ${EXC_HEADERS}
146906c3fb27SDimitry AndricEXC+=		${HDRDIR}/__exception/${hdr}
147006c3fb27SDimitry Andric.endfor
147106c3fb27SDimitry Andric
147206c3fb27SDimitry AndricINCSGROUPS+=	EXD
147306c3fb27SDimitry AndricEXDDIR=		${CXXINCLUDEDIR}/__expected
147406c3fb27SDimitry AndricEXD_HEADERS+=	bad_expected_access.h
147506c3fb27SDimitry AndricEXD_HEADERS+=	expected.h
147606c3fb27SDimitry AndricEXD_HEADERS+=	unexpect.h
147706c3fb27SDimitry AndricEXD_HEADERS+=	unexpected.h
147806c3fb27SDimitry Andric.for hdr in ${EXD_HEADERS}
147906c3fb27SDimitry AndricEXD+=		${HDRDIR}/__expected/${hdr}
1480bdd1243dSDimitry Andric.endfor
1481bdd1243dSDimitry Andric
148204eeddc0SDimitry AndricINCSGROUPS+=	FS
148304eeddc0SDimitry AndricFSDIR=		${CXXINCLUDEDIR}/__filesystem
148404eeddc0SDimitry AndricFS_HEADERS+=	copy_options.h
148504eeddc0SDimitry AndricFS_HEADERS+=	directory_entry.h
148604eeddc0SDimitry AndricFS_HEADERS+=	directory_iterator.h
148704eeddc0SDimitry AndricFS_HEADERS+=	directory_options.h
148804eeddc0SDimitry AndricFS_HEADERS+=	file_status.h
148904eeddc0SDimitry AndricFS_HEADERS+=	file_time_type.h
149004eeddc0SDimitry AndricFS_HEADERS+=	file_type.h
149104eeddc0SDimitry AndricFS_HEADERS+=	filesystem_error.h
149204eeddc0SDimitry AndricFS_HEADERS+=	operations.h
149304eeddc0SDimitry AndricFS_HEADERS+=	path.h
149404eeddc0SDimitry AndricFS_HEADERS+=	path_iterator.h
149504eeddc0SDimitry AndricFS_HEADERS+=	perm_options.h
149604eeddc0SDimitry AndricFS_HEADERS+=	perms.h
149704eeddc0SDimitry AndricFS_HEADERS+=	recursive_directory_iterator.h
149804eeddc0SDimitry AndricFS_HEADERS+=	space_info.h
149904eeddc0SDimitry AndricFS_HEADERS+=	u8path.h
150004eeddc0SDimitry Andric.for hdr in ${FS_HEADERS}
150104eeddc0SDimitry AndricFS+=		${HDRDIR}/__filesystem/${hdr}
150204eeddc0SDimitry Andric.endfor
150304eeddc0SDimitry Andric
1504770cf0a5SDimitry AndricINCSGROUPS+=	FLM
1505770cf0a5SDimitry AndricFLMDIR=		${CXXINCLUDEDIR}/__flat_map
1506770cf0a5SDimitry AndricFLM_HEADERS+=	flat_map.h
1507770cf0a5SDimitry AndricFLM_HEADERS+=	flat_multimap.h
1508770cf0a5SDimitry AndricFLM_HEADERS+=	key_value_iterator.h
1509770cf0a5SDimitry AndricFLM_HEADERS+=	sorted_equivalent.h
1510770cf0a5SDimitry AndricFLM_HEADERS+=	sorted_unique.h
1511770cf0a5SDimitry AndricFLM_HEADERS+=	utils.h
1512770cf0a5SDimitry Andric.for hdr in ${FLM_HEADERS}
1513770cf0a5SDimitry AndricFLM+=		${HDRDIR}/__flat_map/${hdr}
1514770cf0a5SDimitry Andric.endfor
1515770cf0a5SDimitry Andric
1516770cf0a5SDimitry AndricINCSGROUPS+=	FLS
1517770cf0a5SDimitry AndricFLSDIR=		${CXXINCLUDEDIR}/__flat_set
1518770cf0a5SDimitry AndricFLS_HEADERS+=	flat_multiset.h
1519770cf0a5SDimitry AndricFLS_HEADERS+=	flat_set.h
1520770cf0a5SDimitry AndricFLS_HEADERS+=	ra_iterator.h
1521770cf0a5SDimitry AndricFLS_HEADERS+=	utils.h
1522770cf0a5SDimitry Andric.for hdr in ${FLS_HEADERS}
1523770cf0a5SDimitry AndricFLS+=		${HDRDIR}/__flat_set/${hdr}
1524770cf0a5SDimitry Andric.endfor
1525770cf0a5SDimitry Andric
15266e75b2fbSDimitry AndricINCSGROUPS+=	FMT
15276e75b2fbSDimitry AndricFMTDIR=		${CXXINCLUDEDIR}/__format
152881ad6265SDimitry AndricFMT_HEADERS+=	buffer.h
152981ad6265SDimitry AndricFMT_HEADERS+=	concepts.h
1530bdd1243dSDimitry AndricFMT_HEADERS+=	container_adaptor.h
153181ad6265SDimitry AndricFMT_HEADERS+=	enable_insertable.h
1532bdd1243dSDimitry AndricFMT_HEADERS+=	escaped_output_table.h
1533fcaf7f86SDimitry AndricFMT_HEADERS+=	extended_grapheme_cluster_table.h
15345e801ac6SDimitry AndricFMT_HEADERS+=	format_arg.h
153581ad6265SDimitry AndricFMT_HEADERS+=	format_arg_store.h
15365e801ac6SDimitry AndricFMT_HEADERS+=	format_args.h
15375e801ac6SDimitry AndricFMT_HEADERS+=	format_context.h
15386e75b2fbSDimitry AndricFMT_HEADERS+=	format_error.h
1539bdd1243dSDimitry AndricFMT_HEADERS+=	format_functions.h
15406e75b2fbSDimitry AndricFMT_HEADERS+=	format_parse_context.h
15415e801ac6SDimitry AndricFMT_HEADERS+=	format_string.h
15425e801ac6SDimitry AndricFMT_HEADERS+=	format_to_n_result.h
15435e801ac6SDimitry AndricFMT_HEADERS+=	formatter.h
15445e801ac6SDimitry AndricFMT_HEADERS+=	formatter_bool.h
15455e801ac6SDimitry AndricFMT_HEADERS+=	formatter_char.h
154604eeddc0SDimitry AndricFMT_HEADERS+=	formatter_floating_point.h
15475e801ac6SDimitry AndricFMT_HEADERS+=	formatter_integer.h
15485e801ac6SDimitry AndricFMT_HEADERS+=	formatter_integral.h
154981ad6265SDimitry AndricFMT_HEADERS+=	formatter_output.h
155004eeddc0SDimitry AndricFMT_HEADERS+=	formatter_pointer.h
15515e801ac6SDimitry AndricFMT_HEADERS+=	formatter_string.h
1552bdd1243dSDimitry AndricFMT_HEADERS+=	formatter_tuple.h
15530fca6ea1SDimitry AndricFMT_HEADERS+=	indic_conjunct_break_table.h
15545e801ac6SDimitry AndricFMT_HEADERS+=	parser_std_format_spec.h
1555bdd1243dSDimitry AndricFMT_HEADERS+=	range_default_formatter.h
1556bdd1243dSDimitry AndricFMT_HEADERS+=	range_formatter.h
1557fcaf7f86SDimitry AndricFMT_HEADERS+=	unicode.h
155806c3fb27SDimitry AndricFMT_HEADERS+=	width_estimation_table.h
155906c3fb27SDimitry AndricFMT_HEADERS+=	write_escaped.h
15606e75b2fbSDimitry Andric.for hdr in ${FMT_HEADERS}
15616e75b2fbSDimitry AndricFMT+=		${HDRDIR}/__format/${hdr}
15626e75b2fbSDimitry Andric.endfor
1563d409305fSDimitry Andric
15646e75b2fbSDimitry AndricINCSGROUPS+=	FUN
15656e75b2fbSDimitry AndricFUNDIR=		${CXXINCLUDEDIR}/__functional
15666e75b2fbSDimitry AndricFUN_HEADERS+=	binary_function.h
15676e75b2fbSDimitry AndricFUN_HEADERS+=	binary_negate.h
15686e75b2fbSDimitry AndricFUN_HEADERS+=	bind.h
15695e801ac6SDimitry AndricFUN_HEADERS+=	bind_back.h
15706e75b2fbSDimitry AndricFUN_HEADERS+=	bind_front.h
15716e75b2fbSDimitry AndricFUN_HEADERS+=	binder1st.h
15726e75b2fbSDimitry AndricFUN_HEADERS+=	binder2nd.h
157381ad6265SDimitry AndricFUN_HEADERS+=	boyer_moore_searcher.h
15745e801ac6SDimitry AndricFUN_HEADERS+=	compose.h
15756e75b2fbSDimitry AndricFUN_HEADERS+=	default_searcher.h
15766e75b2fbSDimitry AndricFUN_HEADERS+=	function.h
15776e75b2fbSDimitry AndricFUN_HEADERS+=	hash.h
15786e75b2fbSDimitry AndricFUN_HEADERS+=	identity.h
15796e75b2fbSDimitry AndricFUN_HEADERS+=	invoke.h
15806e75b2fbSDimitry AndricFUN_HEADERS+=	is_transparent.h
15816e75b2fbSDimitry AndricFUN_HEADERS+=	mem_fn.h
15826e75b2fbSDimitry AndricFUN_HEADERS+=	mem_fun_ref.h
15836e75b2fbSDimitry AndricFUN_HEADERS+=	not_fn.h
15846e75b2fbSDimitry AndricFUN_HEADERS+=	operations.h
15856e75b2fbSDimitry AndricFUN_HEADERS+=	perfect_forward.h
15866e75b2fbSDimitry AndricFUN_HEADERS+=	pointer_to_binary_function.h
15876e75b2fbSDimitry AndricFUN_HEADERS+=	pointer_to_unary_function.h
15886e75b2fbSDimitry AndricFUN_HEADERS+=	ranges_operations.h
15896e75b2fbSDimitry AndricFUN_HEADERS+=	reference_wrapper.h
15906e75b2fbSDimitry AndricFUN_HEADERS+=	unary_function.h
15916e75b2fbSDimitry AndricFUN_HEADERS+=	unary_negate.h
15926e75b2fbSDimitry AndricFUN_HEADERS+=	weak_result_type.h
15936e75b2fbSDimitry Andric.for hdr in ${FUN_HEADERS}
15946e75b2fbSDimitry AndricFUN+=		${HDRDIR}/__functional/${hdr}
15956e75b2fbSDimitry Andric.endfor
15966e75b2fbSDimitry Andric
159781ad6265SDimitry AndricINCSGROUPS+=	FWD
159881ad6265SDimitry AndricFWDDIR=		${CXXINCLUDEDIR}/__fwd
1599bdd1243dSDimitry AndricFWD_HEADERS+=	array.h
16005f757f3fSDimitry AndricFWD_HEADERS+=	bit_reference.h
1601770cf0a5SDimitry AndricFWD_HEADERS+=	byte.h
16020fca6ea1SDimitry AndricFWD_HEADERS+=	complex.h
16030fca6ea1SDimitry AndricFWD_HEADERS+=	deque.h
16040fca6ea1SDimitry AndricFWD_HEADERS+=	format.h
160506c3fb27SDimitry AndricFWD_HEADERS+=	fstream.h
16060fca6ea1SDimitry AndricFWD_HEADERS+=	functional.h
1607770cf0a5SDimitry AndricFWD_HEADERS+=	get.h
160806c3fb27SDimitry AndricFWD_HEADERS+=	ios.h
160906c3fb27SDimitry AndricFWD_HEADERS+=	istream.h
1610770cf0a5SDimitry AndricFWD_HEADERS+=	map.h
161106c3fb27SDimitry AndricFWD_HEADERS+=	mdspan.h
16120fca6ea1SDimitry AndricFWD_HEADERS+=	memory.h
1613bdd1243dSDimitry AndricFWD_HEADERS+=	memory_resource.h
161406c3fb27SDimitry AndricFWD_HEADERS+=	ostream.h
1615bdd1243dSDimitry AndricFWD_HEADERS+=	pair.h
16160fca6ea1SDimitry AndricFWD_HEADERS+=	queue.h
1617770cf0a5SDimitry AndricFWD_HEADERS+=	set.h
161881ad6265SDimitry AndricFWD_HEADERS+=	span.h
161906c3fb27SDimitry AndricFWD_HEADERS+=	sstream.h
16200fca6ea1SDimitry AndricFWD_HEADERS+=	stack.h
162106c3fb27SDimitry AndricFWD_HEADERS+=	streambuf.h
1622bdd1243dSDimitry AndricFWD_HEADERS+=	string.h
162381ad6265SDimitry AndricFWD_HEADERS+=	string_view.h
1624bdd1243dSDimitry AndricFWD_HEADERS+=	subrange.h
1625bdd1243dSDimitry AndricFWD_HEADERS+=	tuple.h
1626770cf0a5SDimitry AndricFWD_HEADERS+=	variant.h
16270fca6ea1SDimitry AndricFWD_HEADERS+=	vector.h
162881ad6265SDimitry Andric.for hdr in ${FWD_HEADERS}
162981ad6265SDimitry AndricFWD+=		${HDRDIR}/__fwd/${hdr}
163081ad6265SDimitry Andric.endfor
163181ad6265SDimitry Andric
163281ad6265SDimitry AndricINCSGROUPS+=	IOS
163381ad6265SDimitry AndricIOSDIR=		${CXXINCLUDEDIR}/__ios
163481ad6265SDimitry AndricIOS_HEADERS+=	fpos.h
163581ad6265SDimitry Andric.for hdr in ${IOS_HEADERS}
163681ad6265SDimitry AndricIOS+=		${HDRDIR}/__ios/${hdr}
163781ad6265SDimitry Andric.endfor
163881ad6265SDimitry Andric
16396e75b2fbSDimitry AndricINCSGROUPS+=	IT
16406e75b2fbSDimitry AndricITDIR=		${CXXINCLUDEDIR}/__iterator
16416e75b2fbSDimitry AndricIT_HEADERS+=	access.h
16426e75b2fbSDimitry AndricIT_HEADERS+=	advance.h
16430fca6ea1SDimitry AndricIT_HEADERS+=	aliasing_iterator.h
16446e75b2fbSDimitry AndricIT_HEADERS+=	back_insert_iterator.h
164581ad6265SDimitry AndricIT_HEADERS+=	bounded_iter.h
16466e75b2fbSDimitry AndricIT_HEADERS+=	common_iterator.h
16476e75b2fbSDimitry AndricIT_HEADERS+=	concepts.h
16486e75b2fbSDimitry AndricIT_HEADERS+=	counted_iterator.h
164906c3fb27SDimitry AndricIT_HEADERS+=	cpp17_iterator_concepts.h
16506e75b2fbSDimitry AndricIT_HEADERS+=	data.h
16516e75b2fbSDimitry AndricIT_HEADERS+=	default_sentinel.h
16526e75b2fbSDimitry AndricIT_HEADERS+=	distance.h
16536e75b2fbSDimitry AndricIT_HEADERS+=	empty.h
16546e75b2fbSDimitry AndricIT_HEADERS+=	erase_if_container.h
16556e75b2fbSDimitry AndricIT_HEADERS+=	front_insert_iterator.h
16566e75b2fbSDimitry AndricIT_HEADERS+=	incrementable_traits.h
165704eeddc0SDimitry AndricIT_HEADERS+=	indirectly_comparable.h
16586e75b2fbSDimitry AndricIT_HEADERS+=	insert_iterator.h
16596e75b2fbSDimitry AndricIT_HEADERS+=	istream_iterator.h
16606e75b2fbSDimitry AndricIT_HEADERS+=	istreambuf_iterator.h
16616e75b2fbSDimitry AndricIT_HEADERS+=	iter_move.h
16626e75b2fbSDimitry AndricIT_HEADERS+=	iter_swap.h
16636e75b2fbSDimitry AndricIT_HEADERS+=	iterator.h
16646e75b2fbSDimitry AndricIT_HEADERS+=	iterator_traits.h
1665bdd1243dSDimitry AndricIT_HEADERS+=	iterator_with_data.h
166681ad6265SDimitry AndricIT_HEADERS+=	mergeable.h
16676e75b2fbSDimitry AndricIT_HEADERS+=	move_iterator.h
166881ad6265SDimitry AndricIT_HEADERS+=	move_sentinel.h
16696e75b2fbSDimitry AndricIT_HEADERS+=	next.h
16706e75b2fbSDimitry AndricIT_HEADERS+=	ostream_iterator.h
16716e75b2fbSDimitry AndricIT_HEADERS+=	ostreambuf_iterator.h
167281ad6265SDimitry AndricIT_HEADERS+=	permutable.h
16736e75b2fbSDimitry AndricIT_HEADERS+=	prev.h
1674770cf0a5SDimitry AndricIT_HEADERS+=	product_iterator.h
16756e75b2fbSDimitry AndricIT_HEADERS+=	projected.h
167606c3fb27SDimitry AndricIT_HEADERS+=	ranges_iterator_traits.h
16776e75b2fbSDimitry AndricIT_HEADERS+=	readable_traits.h
16786e75b2fbSDimitry AndricIT_HEADERS+=	reverse_access.h
16796e75b2fbSDimitry AndricIT_HEADERS+=	reverse_iterator.h
1680bdd1243dSDimitry AndricIT_HEADERS+=	segmented_iterator.h
16816e75b2fbSDimitry AndricIT_HEADERS+=	size.h
168281ad6265SDimitry AndricIT_HEADERS+=	sortable.h
1683770cf0a5SDimitry AndricIT_HEADERS+=	static_bounded_iter.h
16845e801ac6SDimitry AndricIT_HEADERS+=	unreachable_sentinel.h
16856e75b2fbSDimitry AndricIT_HEADERS+=	wrap_iter.h
16866e75b2fbSDimitry Andric.for hdr in ${IT_HEADERS}
16876e75b2fbSDimitry AndricIT+=		${HDRDIR}/__iterator/${hdr}
16886e75b2fbSDimitry Andric.endfor
16896e75b2fbSDimitry Andric
16900fca6ea1SDimitry AndricINCSGROUPS+=	LOC
16910fca6ea1SDimitry AndricLOCDIR=		${CXXINCLUDEDIR}/__locale_dir
1692770cf0a5SDimitry AndricLOC_HEADERS+=	check_grouping.h
1693770cf0a5SDimitry AndricLOC_HEADERS+=	get_c_locale.h
16940fca6ea1SDimitry AndricLOC_HEADERS+=	locale_base_api.h
1695770cf0a5SDimitry AndricLOC_HEADERS+=	messages.h
1696770cf0a5SDimitry AndricLOC_HEADERS+=	money.h
1697770cf0a5SDimitry AndricLOC_HEADERS+=	num.h
1698770cf0a5SDimitry AndricLOC_HEADERS+=	pad_and_output.h
1699770cf0a5SDimitry AndricLOC_HEADERS+=	scan_keyword.h
1700770cf0a5SDimitry AndricLOC_HEADERS+=	time.h
1701770cf0a5SDimitry AndricLOC_HEADERS+=	wbuffer_convert.h
1702770cf0a5SDimitry AndricLOC_HEADERS+=	wstring_convert.h
17030fca6ea1SDimitry Andric.for hdr in ${LOC_HEADERS}
17040fca6ea1SDimitry AndricLOC+=		${HDRDIR}/__locale_dir/${hdr}
17050fca6ea1SDimitry Andric.endfor
17060fca6ea1SDimitry Andric
170706c3fb27SDimitry AndricINCSGROUPS+=	LBA
170806c3fb27SDimitry AndricLBADIR=		${CXXINCLUDEDIR}/__locale_dir/locale_base_api
1709770cf0a5SDimitry AndricLBA_HEADERS+=	android.h
171006c3fb27SDimitry AndricLBA_HEADERS+=	bsd_locale_fallbacks.h
1711770cf0a5SDimitry AndricLBA_HEADERS+=	ibm.h
1712770cf0a5SDimitry AndricLBA_HEADERS+=	musl.h
1713770cf0a5SDimitry AndricLBA_HEADERS+=	openbsd.h
171406c3fb27SDimitry Andric.for hdr in ${LBA_HEADERS}
171506c3fb27SDimitry AndricLBA+=		${HDRDIR}/__locale_dir/locale_base_api/${hdr}
171606c3fb27SDimitry Andric.endfor
171706c3fb27SDimitry Andric
1718770cf0a5SDimitry AndricINCSGROUPS+=	LBS
1719770cf0a5SDimitry AndricLBSDIR=		${CXXINCLUDEDIR}/__locale_dir/support
1720770cf0a5SDimitry AndricLBS_HEADERS+=	apple.h
1721770cf0a5SDimitry AndricLBS_HEADERS+=	bsd_like.h
1722770cf0a5SDimitry AndricLBS_HEADERS+=	freebsd.h
1723770cf0a5SDimitry AndricLBS_HEADERS+=	fuchsia.h
1724770cf0a5SDimitry AndricLBS_HEADERS+=	linux.h
1725770cf0a5SDimitry AndricLBS_HEADERS+=	windows.h
1726770cf0a5SDimitry Andric.for hdr in ${LBS_HEADERS}
1727770cf0a5SDimitry AndricLBS+=		${HDRDIR}/__locale_dir/support/${hdr}
1728770cf0a5SDimitry Andric.endfor
1729770cf0a5SDimitry Andric
1730770cf0a5SDimitry AndricINCSGROUPS+=	LBN
1731770cf0a5SDimitry AndricLBNDIR=		${CXXINCLUDEDIR}/__locale_dir/support/no_locale
1732770cf0a5SDimitry AndricLBN_HEADERS+=	characters.h
1733770cf0a5SDimitry AndricLBN_HEADERS+=	strtonum.h
1734770cf0a5SDimitry Andric.for hdr in ${LBN_HEADERS}
1735770cf0a5SDimitry AndricLBN+=		${HDRDIR}/__locale_dir/support/no_locale/${hdr}
1736770cf0a5SDimitry Andric.endfor
1737770cf0a5SDimitry Andric
17385f757f3fSDimitry AndricINCSGROUPS+=	MAT
17395f757f3fSDimitry AndricMATDIR=		${CXXINCLUDEDIR}/__math
17405f757f3fSDimitry AndricMAT_HEADERS+=	abs.h
17415f757f3fSDimitry AndricMAT_HEADERS+=	copysign.h
17425f757f3fSDimitry AndricMAT_HEADERS+=	error_functions.h
17435f757f3fSDimitry AndricMAT_HEADERS+=	exponential_functions.h
17445f757f3fSDimitry AndricMAT_HEADERS+=	fdim.h
17455f757f3fSDimitry AndricMAT_HEADERS+=	fma.h
17465f757f3fSDimitry AndricMAT_HEADERS+=	gamma.h
17475f757f3fSDimitry AndricMAT_HEADERS+=	hyperbolic_functions.h
17485f757f3fSDimitry AndricMAT_HEADERS+=	hypot.h
17495f757f3fSDimitry AndricMAT_HEADERS+=	inverse_hyperbolic_functions.h
17505f757f3fSDimitry AndricMAT_HEADERS+=	inverse_trigonometric_functions.h
17515f757f3fSDimitry AndricMAT_HEADERS+=	logarithms.h
17525f757f3fSDimitry AndricMAT_HEADERS+=	min_max.h
17535f757f3fSDimitry AndricMAT_HEADERS+=	modulo.h
17545f757f3fSDimitry AndricMAT_HEADERS+=	remainder.h
17555f757f3fSDimitry AndricMAT_HEADERS+=	roots.h
17565f757f3fSDimitry AndricMAT_HEADERS+=	rounding_functions.h
17570fca6ea1SDimitry AndricMAT_HEADERS+=	special_functions.h
17585f757f3fSDimitry AndricMAT_HEADERS+=	traits.h
17595f757f3fSDimitry AndricMAT_HEADERS+=	trigonometric_functions.h
17605f757f3fSDimitry Andric.for hdr in ${MAT_HEADERS}
17615f757f3fSDimitry AndricMAT+=		${HDRDIR}/__math/${hdr}
17625f757f3fSDimitry Andric.endfor
17635f757f3fSDimitry Andric
176406c3fb27SDimitry AndricINCSGROUPS+=	MDS
176506c3fb27SDimitry AndricMDSDIR=		${CXXINCLUDEDIR}/__mdspan
1766770cf0a5SDimitry AndricMDS_HEADERS+=	aligned_accessor.h
176706c3fb27SDimitry AndricMDS_HEADERS+=	default_accessor.h
176806c3fb27SDimitry AndricMDS_HEADERS+=	extents.h
176906c3fb27SDimitry AndricMDS_HEADERS+=	layout_left.h
177006c3fb27SDimitry AndricMDS_HEADERS+=	layout_right.h
17715f757f3fSDimitry AndricMDS_HEADERS+=	layout_stride.h
177287eea35eSDimitry AndricMDS_HEADERS+=	mdspan.h
177306c3fb27SDimitry Andric.for hdr in ${MDS_HEADERS}
177406c3fb27SDimitry AndricMDS+=		${HDRDIR}/__mdspan/${hdr}
177506c3fb27SDimitry Andric.endfor
177606c3fb27SDimitry Andric
17776e75b2fbSDimitry AndricINCSGROUPS+=	MEM
17786e75b2fbSDimitry AndricMEMDIR=		${CXXINCLUDEDIR}/__memory
17796e75b2fbSDimitry AndricMEM_HEADERS+=	addressof.h
1780bdd1243dSDimitry AndricMEM_HEADERS+=	align.h
178106c3fb27SDimitry AndricMEM_HEADERS+=	aligned_alloc.h
178281ad6265SDimitry AndricMEM_HEADERS+=	allocate_at_least.h
17836e75b2fbSDimitry AndricMEM_HEADERS+=	allocation_guard.h
17846e75b2fbSDimitry AndricMEM_HEADERS+=	allocator.h
17856e75b2fbSDimitry AndricMEM_HEADERS+=	allocator_arg_t.h
1786bdd1243dSDimitry AndricMEM_HEADERS+=	allocator_destructor.h
1787d409305fSDimitry AndricMEM_HEADERS+=	allocator_traits.h
1788770cf0a5SDimitry AndricMEM_HEADERS+=	array_cookie.h
178981ad6265SDimitry AndricMEM_HEADERS+=	assume_aligned.h
17906e75b2fbSDimitry AndricMEM_HEADERS+=	auto_ptr.h
17916e75b2fbSDimitry AndricMEM_HEADERS+=	compressed_pair.h
179204eeddc0SDimitry AndricMEM_HEADERS+=	concepts.h
17936e75b2fbSDimitry AndricMEM_HEADERS+=	construct_at.h
1794770cf0a5SDimitry AndricMEM_HEADERS+=	destroy.h
1795bdd1243dSDimitry AndricMEM_HEADERS+=	destruct_n.h
17960fca6ea1SDimitry AndricMEM_HEADERS+=	inout_ptr.h
1797770cf0a5SDimitry AndricMEM_HEADERS+=	is_sufficiently_aligned.h
1798770cf0a5SDimitry AndricMEM_HEADERS+=	noexcept_move_assign_container.h
17990fca6ea1SDimitry AndricMEM_HEADERS+=	out_ptr.h
1800d409305fSDimitry AndricMEM_HEADERS+=	pointer_traits.h
180104eeddc0SDimitry AndricMEM_HEADERS+=	ranges_construct_at.h
1802770cf0a5SDimitry AndricMEM_HEADERS+=	ranges_destroy.h
180304eeddc0SDimitry AndricMEM_HEADERS+=	ranges_uninitialized_algorithms.h
18046e75b2fbSDimitry AndricMEM_HEADERS+=	raw_storage_iterator.h
1805770cf0a5SDimitry AndricMEM_HEADERS+=	shared_count.h
18066e75b2fbSDimitry AndricMEM_HEADERS+=	shared_ptr.h
1807972a253aSDimitry AndricMEM_HEADERS+=	swap_allocator.h
1808bdd1243dSDimitry AndricMEM_HEADERS+=	temp_value.h
18096e75b2fbSDimitry AndricMEM_HEADERS+=	temporary_buffer.h
18106e75b2fbSDimitry AndricMEM_HEADERS+=	uninitialized_algorithms.h
18116e75b2fbSDimitry AndricMEM_HEADERS+=	unique_ptr.h
1812770cf0a5SDimitry AndricMEM_HEADERS+=	unique_temporary_buffer.h
18136e75b2fbSDimitry AndricMEM_HEADERS+=	uses_allocator.h
1814bdd1243dSDimitry AndricMEM_HEADERS+=	uses_allocator_construction.h
1815d409305fSDimitry Andric.for hdr in ${MEM_HEADERS}
1816d409305fSDimitry AndricMEM+=		${HDRDIR}/__memory/${hdr}
1817d409305fSDimitry Andric.endfor
1818d409305fSDimitry Andric
1819bdd1243dSDimitry AndricINCSGROUPS+=	MER
1820bdd1243dSDimitry AndricMERDIR=		${CXXINCLUDEDIR}/__memory_resource
1821bdd1243dSDimitry AndricMER_HEADERS+=	memory_resource.h
1822bdd1243dSDimitry AndricMER_HEADERS+=	monotonic_buffer_resource.h
1823bdd1243dSDimitry AndricMER_HEADERS+=	polymorphic_allocator.h
1824bdd1243dSDimitry AndricMER_HEADERS+=	pool_options.h
1825bdd1243dSDimitry AndricMER_HEADERS+=	synchronized_pool_resource.h
1826bdd1243dSDimitry AndricMER_HEADERS+=	unsynchronized_pool_resource.h
1827bdd1243dSDimitry Andric.for hdr in ${MER_HEADERS}
1828bdd1243dSDimitry AndricMER+=		${HDRDIR}/__memory_resource/${hdr}
1829bdd1243dSDimitry Andric.endfor
1830bdd1243dSDimitry Andric
183106c3fb27SDimitry AndricINCSGROUPS+=	MUT
183206c3fb27SDimitry AndricMUTDIR=		${CXXINCLUDEDIR}/__mutex
183306c3fb27SDimitry AndricMUT_HEADERS+=	lock_guard.h
183406c3fb27SDimitry AndricMUT_HEADERS+=	mutex.h
18355f757f3fSDimitry AndricMUT_HEADERS+=	once_flag.h
183606c3fb27SDimitry AndricMUT_HEADERS+=	tag_types.h
183706c3fb27SDimitry AndricMUT_HEADERS+=	unique_lock.h
183806c3fb27SDimitry Andric.for hdr in ${MUT_HEADERS}
183906c3fb27SDimitry AndricMUT+=		${HDRDIR}/__mutex/${hdr}
184006c3fb27SDimitry Andric.endfor
184106c3fb27SDimitry Andric
1842770cf0a5SDimitry AndricINCSGROUPS+=	NEW
1843770cf0a5SDimitry AndricNEWDIR=		${CXXINCLUDEDIR}/__new
1844770cf0a5SDimitry AndricNEW_HEADERS+=	align_val_t.h
1845770cf0a5SDimitry AndricNEW_HEADERS+=	allocate.h
1846770cf0a5SDimitry AndricNEW_HEADERS+=	destroying_delete_t.h
1847770cf0a5SDimitry AndricNEW_HEADERS+=	exceptions.h
1848770cf0a5SDimitry AndricNEW_HEADERS+=	global_new_delete.h
1849770cf0a5SDimitry AndricNEW_HEADERS+=	interference_size.h
1850770cf0a5SDimitry AndricNEW_HEADERS+=	launder.h
1851770cf0a5SDimitry AndricNEW_HEADERS+=	new_handler.h
1852770cf0a5SDimitry AndricNEW_HEADERS+=	nothrow_t.h
1853770cf0a5SDimitry AndricNEW_HEADERS+=	placement_new_delete.h
1854770cf0a5SDimitry Andric.for hdr in ${NEW_HEADERS}
1855770cf0a5SDimitry AndricNEW+=		${HDRDIR}/__new/${hdr}
1856770cf0a5SDimitry Andric.endfor
1857770cf0a5SDimitry Andric
18584824e7fdSDimitry AndricINCSGROUPS+=	NUM
18594824e7fdSDimitry AndricNUMDIR=		${CXXINCLUDEDIR}/__numeric
18604824e7fdSDimitry AndricNUM_HEADERS+=	accumulate.h
18614824e7fdSDimitry AndricNUM_HEADERS+=	adjacent_difference.h
18624824e7fdSDimitry AndricNUM_HEADERS+=	exclusive_scan.h
18634824e7fdSDimitry AndricNUM_HEADERS+=	gcd_lcm.h
18644824e7fdSDimitry AndricNUM_HEADERS+=	inclusive_scan.h
18654824e7fdSDimitry AndricNUM_HEADERS+=	inner_product.h
18664824e7fdSDimitry AndricNUM_HEADERS+=	iota.h
18674824e7fdSDimitry AndricNUM_HEADERS+=	midpoint.h
18684824e7fdSDimitry AndricNUM_HEADERS+=	partial_sum.h
18690fca6ea1SDimitry AndricNUM_HEADERS+=	pstl.h
1870770cf0a5SDimitry AndricNUM_HEADERS+=	ranges_iota.h
18714824e7fdSDimitry AndricNUM_HEADERS+=	reduce.h
18727a6dacacSDimitry AndricNUM_HEADERS+=	saturation_arithmetic.h
18734824e7fdSDimitry AndricNUM_HEADERS+=	transform_exclusive_scan.h
18744824e7fdSDimitry AndricNUM_HEADERS+=	transform_inclusive_scan.h
18754824e7fdSDimitry AndricNUM_HEADERS+=	transform_reduce.h
18764824e7fdSDimitry Andric.for hdr in ${NUM_HEADERS}
18774824e7fdSDimitry AndricNUM+=		${HDRDIR}/__numeric/${hdr}
18784824e7fdSDimitry Andric.endfor
18794824e7fdSDimitry Andric
18800fca6ea1SDimitry AndricINCSGROUPS+=	OST
18810fca6ea1SDimitry AndricOSTDIR=		${CXXINCLUDEDIR}/__ostream
18820fca6ea1SDimitry AndricOST_HEADERS+=	basic_ostream.h
18830fca6ea1SDimitry AndricOST_HEADERS+=	print.h
1884770cf0a5SDimitry AndricOST_HEADERS+=	put_character_sequence.h
18850fca6ea1SDimitry Andric.for hdr in ${OST_HEADERS}
18860fca6ea1SDimitry AndricOST+=		${HDRDIR}/__ostream/${hdr}
18870fca6ea1SDimitry Andric.endfor
18880fca6ea1SDimitry Andric
18890fca6ea1SDimitry AndricINCSGROUPS+=	PST
18900fca6ea1SDimitry AndricPSTDIR=		${CXXINCLUDEDIR}/__pstl
18910fca6ea1SDimitry AndricPST_HEADERS+=	backend.h
18920fca6ea1SDimitry AndricPST_HEADERS+=	backend_fwd.h
18930fca6ea1SDimitry AndricPST_HEADERS+=	dispatch.h
18940fca6ea1SDimitry AndricPST_HEADERS+=	handle_exception.h
18950fca6ea1SDimitry Andric.for hdr in ${PST_HEADERS}
18960fca6ea1SDimitry AndricPST+=		${HDRDIR}/__pstl/${hdr}
18970fca6ea1SDimitry Andric.endfor
18980fca6ea1SDimitry Andric
18990fca6ea1SDimitry AndricINCSGROUPS+=	PSB
19000fca6ea1SDimitry AndricPSBDIR=		${CXXINCLUDEDIR}/__pstl/backends
19010fca6ea1SDimitry AndricPSB_HEADERS+=	default.h
19020fca6ea1SDimitry AndricPSB_HEADERS+=	libdispatch.h
19030fca6ea1SDimitry AndricPSB_HEADERS+=	serial.h
19040fca6ea1SDimitry AndricPSB_HEADERS+=	std_thread.h
19050fca6ea1SDimitry Andric.for hdr in ${PSB_HEADERS}
19060fca6ea1SDimitry AndricPSB+=		${HDRDIR}/__pstl/backends/${hdr}
19070fca6ea1SDimitry Andric.endfor
19080fca6ea1SDimitry Andric
19090fca6ea1SDimitry AndricINCSGROUPS+=	PSC
19100fca6ea1SDimitry AndricPSCDIR=		${CXXINCLUDEDIR}/__pstl/cpu_algos
19110fca6ea1SDimitry AndricPSC_HEADERS+=	any_of.h
19120fca6ea1SDimitry AndricPSC_HEADERS+=	cpu_traits.h
19130fca6ea1SDimitry AndricPSC_HEADERS+=	fill.h
19140fca6ea1SDimitry AndricPSC_HEADERS+=	find_if.h
19150fca6ea1SDimitry AndricPSC_HEADERS+=	for_each.h
19160fca6ea1SDimitry AndricPSC_HEADERS+=	merge.h
19170fca6ea1SDimitry AndricPSC_HEADERS+=	stable_sort.h
19180fca6ea1SDimitry AndricPSC_HEADERS+=	transform.h
19190fca6ea1SDimitry AndricPSC_HEADERS+=	transform_reduce.h
19200fca6ea1SDimitry Andric.for hdr in ${PSC_HEADERS}
19210fca6ea1SDimitry AndricPSC+=		${HDRDIR}/__pstl/cpu_algos/${hdr}
19220fca6ea1SDimitry Andric.endfor
19230fca6ea1SDimitry Andric
19246e75b2fbSDimitry AndricINCSGROUPS+=	RND
19256e75b2fbSDimitry AndricRNDDIR=		${CXXINCLUDEDIR}/__random
19264824e7fdSDimitry AndricRND_HEADERS+=	bernoulli_distribution.h
19274824e7fdSDimitry AndricRND_HEADERS+=	binomial_distribution.h
19284824e7fdSDimitry AndricRND_HEADERS+=	cauchy_distribution.h
19294824e7fdSDimitry AndricRND_HEADERS+=	chi_squared_distribution.h
193004eeddc0SDimitry AndricRND_HEADERS+=	clamp_to_integral.h
19314824e7fdSDimitry AndricRND_HEADERS+=	default_random_engine.h
19324824e7fdSDimitry AndricRND_HEADERS+=	discard_block_engine.h
19334824e7fdSDimitry AndricRND_HEADERS+=	discrete_distribution.h
19344824e7fdSDimitry AndricRND_HEADERS+=	exponential_distribution.h
19354824e7fdSDimitry AndricRND_HEADERS+=	extreme_value_distribution.h
19364824e7fdSDimitry AndricRND_HEADERS+=	fisher_f_distribution.h
19374824e7fdSDimitry AndricRND_HEADERS+=	gamma_distribution.h
19384824e7fdSDimitry AndricRND_HEADERS+=	generate_canonical.h
19394824e7fdSDimitry AndricRND_HEADERS+=	geometric_distribution.h
19404824e7fdSDimitry AndricRND_HEADERS+=	independent_bits_engine.h
19414824e7fdSDimitry AndricRND_HEADERS+=	is_seed_sequence.h
194281ad6265SDimitry AndricRND_HEADERS+=	is_valid.h
19434824e7fdSDimitry AndricRND_HEADERS+=	knuth_b.h
19444824e7fdSDimitry AndricRND_HEADERS+=	linear_congruential_engine.h
19454824e7fdSDimitry AndricRND_HEADERS+=	log2.h
19464824e7fdSDimitry AndricRND_HEADERS+=	lognormal_distribution.h
19474824e7fdSDimitry AndricRND_HEADERS+=	mersenne_twister_engine.h
19484824e7fdSDimitry AndricRND_HEADERS+=	negative_binomial_distribution.h
19494824e7fdSDimitry AndricRND_HEADERS+=	normal_distribution.h
19504824e7fdSDimitry AndricRND_HEADERS+=	piecewise_constant_distribution.h
19514824e7fdSDimitry AndricRND_HEADERS+=	piecewise_linear_distribution.h
19524824e7fdSDimitry AndricRND_HEADERS+=	poisson_distribution.h
19534824e7fdSDimitry AndricRND_HEADERS+=	random_device.h
19544824e7fdSDimitry AndricRND_HEADERS+=	ranlux.h
19554824e7fdSDimitry AndricRND_HEADERS+=	seed_seq.h
19564824e7fdSDimitry AndricRND_HEADERS+=	shuffle_order_engine.h
19574824e7fdSDimitry AndricRND_HEADERS+=	student_t_distribution.h
19584824e7fdSDimitry AndricRND_HEADERS+=	subtract_with_carry_engine.h
19596e75b2fbSDimitry AndricRND_HEADERS+=	uniform_int_distribution.h
19604824e7fdSDimitry AndricRND_HEADERS+=	uniform_random_bit_generator.h
19614824e7fdSDimitry AndricRND_HEADERS+=	uniform_real_distribution.h
19624824e7fdSDimitry AndricRND_HEADERS+=	weibull_distribution.h
19636e75b2fbSDimitry Andric.for hdr in ${RND_HEADERS}
19646e75b2fbSDimitry AndricRND+=		${HDRDIR}/__random/${hdr}
19656e75b2fbSDimitry Andric.endfor
19666e75b2fbSDimitry Andric
19676e75b2fbSDimitry AndricINCSGROUPS+=	RNG
19686e75b2fbSDimitry AndricRNGDIR=		${CXXINCLUDEDIR}/__ranges
19696e75b2fbSDimitry AndricRNG_HEADERS+=	access.h
19706e75b2fbSDimitry AndricRNG_HEADERS+=	all.h
1971bdd1243dSDimitry AndricRNG_HEADERS+=	as_rvalue_view.h
19725f757f3fSDimitry AndricRNG_HEADERS+=	chunk_by_view.h
19736e75b2fbSDimitry AndricRNG_HEADERS+=	common_view.h
19746e75b2fbSDimitry AndricRNG_HEADERS+=	concepts.h
197506c3fb27SDimitry AndricRNG_HEADERS+=	container_compatible_range.h
19765e801ac6SDimitry AndricRNG_HEADERS+=	counted.h
19776e75b2fbSDimitry AndricRNG_HEADERS+=	dangling.h
19786e75b2fbSDimitry AndricRNG_HEADERS+=	data.h
19796e75b2fbSDimitry AndricRNG_HEADERS+=	drop_view.h
1980bdd1243dSDimitry AndricRNG_HEADERS+=	drop_while_view.h
1981bdd1243dSDimitry AndricRNG_HEADERS+=	elements_view.h
19826e75b2fbSDimitry AndricRNG_HEADERS+=	empty.h
19836e75b2fbSDimitry AndricRNG_HEADERS+=	empty_view.h
19846e75b2fbSDimitry AndricRNG_HEADERS+=	enable_borrowed_range.h
19856e75b2fbSDimitry AndricRNG_HEADERS+=	enable_view.h
198681ad6265SDimitry AndricRNG_HEADERS+=	filter_view.h
198706c3fb27SDimitry AndricRNG_HEADERS+=	from_range.h
19885e801ac6SDimitry AndricRNG_HEADERS+=	iota_view.h
1989bdd1243dSDimitry AndricRNG_HEADERS+=	istream_view.h
19905e801ac6SDimitry AndricRNG_HEADERS+=	join_view.h
1991770cf0a5SDimitry AndricRNG_HEADERS+=	join_with_view.h
199281ad6265SDimitry AndricRNG_HEADERS+=	lazy_split_view.h
199306c3fb27SDimitry AndricRNG_HEADERS+=	movable_box.h
19946e75b2fbSDimitry AndricRNG_HEADERS+=	non_propagating_cache.h
199504eeddc0SDimitry AndricRNG_HEADERS+=	owning_view.h
19965e801ac6SDimitry AndricRNG_HEADERS+=	range_adaptor.h
199781ad6265SDimitry AndricRNG_HEADERS+=	rbegin.h
19986e75b2fbSDimitry AndricRNG_HEADERS+=	ref_view.h
199981ad6265SDimitry AndricRNG_HEADERS+=	rend.h
200006c3fb27SDimitry AndricRNG_HEADERS+=	repeat_view.h
20015e801ac6SDimitry AndricRNG_HEADERS+=	reverse_view.h
20025e801ac6SDimitry AndricRNG_HEADERS+=	single_view.h
20036e75b2fbSDimitry AndricRNG_HEADERS+=	size.h
2004bdd1243dSDimitry AndricRNG_HEADERS+=	split_view.h
20056e75b2fbSDimitry AndricRNG_HEADERS+=	subrange.h
20065e801ac6SDimitry AndricRNG_HEADERS+=	take_view.h
2007bdd1243dSDimitry AndricRNG_HEADERS+=	take_while_view.h
200806c3fb27SDimitry AndricRNG_HEADERS+=	to.h
20096e75b2fbSDimitry AndricRNG_HEADERS+=	transform_view.h
20106e75b2fbSDimitry AndricRNG_HEADERS+=	view_interface.h
201153683b95SDimitry AndricRNG_HEADERS+=	views.h
201281ad6265SDimitry AndricRNG_HEADERS+=	zip_view.h
20136e75b2fbSDimitry Andric.for hdr in ${RNG_HEADERS}
20146e75b2fbSDimitry AndricRNG+=		${HDRDIR}/__ranges/${hdr}
20156e75b2fbSDimitry Andric.endfor
20166e75b2fbSDimitry Andric
201706c3fb27SDimitry AndricINCSGROUPS+=	STT
201806c3fb27SDimitry AndricSTTDIR=		${CXXINCLUDEDIR}/__stop_token
201906c3fb27SDimitry AndricSTT_HEADERS+=	atomic_unique_lock.h
202006c3fb27SDimitry AndricSTT_HEADERS+=	intrusive_list_view.h
202106c3fb27SDimitry AndricSTT_HEADERS+=	intrusive_shared_ptr.h
202206c3fb27SDimitry AndricSTT_HEADERS+=	stop_callback.h
202306c3fb27SDimitry AndricSTT_HEADERS+=	stop_source.h
202406c3fb27SDimitry AndricSTT_HEADERS+=	stop_state.h
202506c3fb27SDimitry AndricSTT_HEADERS+=	stop_token.h
202606c3fb27SDimitry Andric.for hdr in ${STT_HEADERS}
202706c3fb27SDimitry AndricSTT+=		${HDRDIR}/__stop_token/${hdr}
202806c3fb27SDimitry Andric.endfor
202906c3fb27SDimitry Andric
203081ad6265SDimitry AndricINCSGROUPS+=	STR
203181ad6265SDimitry AndricSTRDIR=		${CXXINCLUDEDIR}/__string
203281ad6265SDimitry AndricSTR_HEADERS+=	char_traits.h
203306c3fb27SDimitry AndricSTR_HEADERS+=	constexpr_c_functions.h
203481ad6265SDimitry AndricSTR_HEADERS+=	extern_template_lists.h
203581ad6265SDimitry Andric.for hdr in ${STR_HEADERS}
203681ad6265SDimitry AndricSTR+=		${HDRDIR}/__string/${hdr}
203781ad6265SDimitry Andric.endfor
203881ad6265SDimitry Andric
203906c3fb27SDimitry AndricINCSGROUPS+=	SER
204006c3fb27SDimitry AndricSERDIR=		${CXXINCLUDEDIR}/__system_error
204106c3fb27SDimitry AndricSER_HEADERS+=	errc.h
204206c3fb27SDimitry AndricSER_HEADERS+=	error_category.h
204306c3fb27SDimitry AndricSER_HEADERS+=	error_code.h
204406c3fb27SDimitry AndricSER_HEADERS+=	error_condition.h
204506c3fb27SDimitry AndricSER_HEADERS+=	system_error.h
2046770cf0a5SDimitry AndricSER_HEADERS+=	throw_system_error.h
204706c3fb27SDimitry Andric.for hdr in ${SER_HEADERS}
204806c3fb27SDimitry AndricSER+=		${HDRDIR}/__system_error/${hdr}
204906c3fb27SDimitry Andric.endfor
205006c3fb27SDimitry Andric
20515e801ac6SDimitry AndricINCSGROUPS+=	THR
20525e801ac6SDimitry AndricTHRDIR=		${CXXINCLUDEDIR}/__thread
205306c3fb27SDimitry AndricTHR_HEADERS+=	formatter.h
205406c3fb27SDimitry AndricTHR_HEADERS+=	id.h
20555f757f3fSDimitry AndricTHR_HEADERS+=	jthread.h
20565e801ac6SDimitry AndricTHR_HEADERS+=	poll_with_backoff.h
20570fca6ea1SDimitry AndricTHR_HEADERS+=	support.h
205806c3fb27SDimitry AndricTHR_HEADERS+=	this_thread.h
205906c3fb27SDimitry AndricTHR_HEADERS+=	thread.h
206004eeddc0SDimitry AndricTHR_HEADERS+=	timed_backoff_policy.h
20615e801ac6SDimitry Andric.for hdr in ${THR_HEADERS}
20625e801ac6SDimitry AndricTHR+=		${HDRDIR}/__thread/${hdr}
20635e801ac6SDimitry Andric.endfor
20645e801ac6SDimitry Andric
20650fca6ea1SDimitry AndricINCSGROUPS+=	THS
20660fca6ea1SDimitry AndricTHSDIR=		${CXXINCLUDEDIR}/__thread/support
20670fca6ea1SDimitry AndricTHS_HEADERS+=	c11.h
20680fca6ea1SDimitry AndricTHS_HEADERS+=	external.h
20690fca6ea1SDimitry AndricTHS_HEADERS+=	pthread.h
20700fca6ea1SDimitry AndricTHS_HEADERS+=	windows.h
20710fca6ea1SDimitry Andric.for hdr in ${THS_HEADERS}
20720fca6ea1SDimitry AndricTHS+=		${HDRDIR}/__thread/support/${hdr}
20730fca6ea1SDimitry Andric.endfor
20740fca6ea1SDimitry Andric
2075bdd1243dSDimitry AndricINCSGROUPS+=	TUP
207606c3fb27SDimitry AndricTUPDIR=		${CXXINCLUDEDIR}/__tuple
20770fca6ea1SDimitry AndricTUP_HEADERS+=	find_index.h
20780fca6ea1SDimitry AndricTUP_HEADERS+=	ignore.h
2079bdd1243dSDimitry AndricTUP_HEADERS+=	make_tuple_types.h
2080bdd1243dSDimitry AndricTUP_HEADERS+=	sfinae_helpers.h
2081bdd1243dSDimitry AndricTUP_HEADERS+=	tuple_element.h
2082bdd1243dSDimitry AndricTUP_HEADERS+=	tuple_indices.h
2083bdd1243dSDimitry AndricTUP_HEADERS+=	tuple_like.h
2084bdd1243dSDimitry AndricTUP_HEADERS+=	tuple_like_ext.h
20850fca6ea1SDimitry AndricTUP_HEADERS+=	tuple_like_no_subrange.h
2086bdd1243dSDimitry AndricTUP_HEADERS+=	tuple_size.h
2087bdd1243dSDimitry AndricTUP_HEADERS+=	tuple_types.h
2088bdd1243dSDimitry Andric.for hdr in ${TUP_HEADERS}
208906c3fb27SDimitry AndricTUP+=		${HDRDIR}/__tuple/${hdr}
2090bdd1243dSDimitry Andric.endfor
2091bdd1243dSDimitry Andric
209281ad6265SDimitry AndricINCSGROUPS+=	TTR
209381ad6265SDimitry AndricTTRDIR=		${CXXINCLUDEDIR}/__type_traits
2094770cf0a5SDimitry AndricTTR_HEADERS+=	add_cv_quals.h
209581ad6265SDimitry AndricTTR_HEADERS+=	add_pointer.h
2096770cf0a5SDimitry AndricTTR_HEADERS+=	add_reference.h
2097972a253aSDimitry AndricTTR_HEADERS+=	aligned_storage.h
2098972a253aSDimitry AndricTTR_HEADERS+=	aligned_union.h
209981ad6265SDimitry AndricTTR_HEADERS+=	alignment_of.h
2100bdd1243dSDimitry AndricTTR_HEADERS+=	can_extract_key.h
2101972a253aSDimitry AndricTTR_HEADERS+=	common_reference.h
2102972a253aSDimitry AndricTTR_HEADERS+=	common_type.h
210381ad6265SDimitry AndricTTR_HEADERS+=	conditional.h
210481ad6265SDimitry AndricTTR_HEADERS+=	conjunction.h
2105770cf0a5SDimitry AndricTTR_HEADERS+=	container_traits.h
2106972a253aSDimitry AndricTTR_HEADERS+=	copy_cv.h
2107972a253aSDimitry AndricTTR_HEADERS+=	copy_cvref.h
210806c3fb27SDimitry AndricTTR_HEADERS+=	datasizeof.h
210981ad6265SDimitry AndricTTR_HEADERS+=	decay.h
2110bdd1243dSDimitry AndricTTR_HEADERS+=	dependent_type.h
21110fca6ea1SDimitry AndricTTR_HEADERS+=	desugars_to.h
2112770cf0a5SDimitry AndricTTR_HEADERS+=	detected_or.h
211381ad6265SDimitry AndricTTR_HEADERS+=	disjunction.h
211481ad6265SDimitry AndricTTR_HEADERS+=	enable_if.h
211581ad6265SDimitry AndricTTR_HEADERS+=	extent.h
211681ad6265SDimitry AndricTTR_HEADERS+=	has_unique_object_representation.h
211781ad6265SDimitry AndricTTR_HEADERS+=	has_virtual_destructor.h
2118770cf0a5SDimitry AndricTTR_HEADERS+=	integer_traits.h
211981ad6265SDimitry AndricTTR_HEADERS+=	integral_constant.h
212006c3fb27SDimitry AndricTTR_HEADERS+=	invoke.h
212181ad6265SDimitry AndricTTR_HEADERS+=	is_abstract.h
212281ad6265SDimitry AndricTTR_HEADERS+=	is_aggregate.h
2123bdd1243dSDimitry AndricTTR_HEADERS+=	is_allocator.h
2124bdd1243dSDimitry AndricTTR_HEADERS+=	is_always_bitcastable.h
212581ad6265SDimitry AndricTTR_HEADERS+=	is_arithmetic.h
212681ad6265SDimitry AndricTTR_HEADERS+=	is_array.h
212781ad6265SDimitry AndricTTR_HEADERS+=	is_assignable.h
212881ad6265SDimitry AndricTTR_HEADERS+=	is_base_of.h
212981ad6265SDimitry AndricTTR_HEADERS+=	is_bounded_array.h
213081ad6265SDimitry AndricTTR_HEADERS+=	is_callable.h
2131bdd1243dSDimitry AndricTTR_HEADERS+=	is_char_like_type.h
213281ad6265SDimitry AndricTTR_HEADERS+=	is_class.h
213381ad6265SDimitry AndricTTR_HEADERS+=	is_compound.h
213481ad6265SDimitry AndricTTR_HEADERS+=	is_const.h
213581ad6265SDimitry AndricTTR_HEADERS+=	is_constant_evaluated.h
213681ad6265SDimitry AndricTTR_HEADERS+=	is_constructible.h
213781ad6265SDimitry AndricTTR_HEADERS+=	is_convertible.h
213881ad6265SDimitry AndricTTR_HEADERS+=	is_core_convertible.h
213981ad6265SDimitry AndricTTR_HEADERS+=	is_destructible.h
214081ad6265SDimitry AndricTTR_HEADERS+=	is_empty.h
214181ad6265SDimitry AndricTTR_HEADERS+=	is_enum.h
214206c3fb27SDimitry AndricTTR_HEADERS+=	is_equality_comparable.h
214306c3fb27SDimitry AndricTTR_HEADERS+=	is_execution_policy.h
214481ad6265SDimitry AndricTTR_HEADERS+=	is_final.h
214581ad6265SDimitry AndricTTR_HEADERS+=	is_floating_point.h
214681ad6265SDimitry AndricTTR_HEADERS+=	is_function.h
214781ad6265SDimitry AndricTTR_HEADERS+=	is_fundamental.h
2148770cf0a5SDimitry AndricTTR_HEADERS+=	is_implicit_lifetime.h
2149bdd1243dSDimitry AndricTTR_HEADERS+=	is_implicitly_default_constructible.h
215081ad6265SDimitry AndricTTR_HEADERS+=	is_integral.h
215181ad6265SDimitry AndricTTR_HEADERS+=	is_literal_type.h
215281ad6265SDimitry AndricTTR_HEADERS+=	is_member_pointer.h
215381ad6265SDimitry AndricTTR_HEADERS+=	is_nothrow_assignable.h
215481ad6265SDimitry AndricTTR_HEADERS+=	is_nothrow_constructible.h
215581ad6265SDimitry AndricTTR_HEADERS+=	is_nothrow_destructible.h
215681ad6265SDimitry AndricTTR_HEADERS+=	is_null_pointer.h
215781ad6265SDimitry AndricTTR_HEADERS+=	is_object.h
215881ad6265SDimitry AndricTTR_HEADERS+=	is_pod.h
215981ad6265SDimitry AndricTTR_HEADERS+=	is_pointer.h
216081ad6265SDimitry AndricTTR_HEADERS+=	is_polymorphic.h
2161972a253aSDimitry AndricTTR_HEADERS+=	is_primary_template.h
216281ad6265SDimitry AndricTTR_HEADERS+=	is_reference.h
216381ad6265SDimitry AndricTTR_HEADERS+=	is_reference_wrapper.h
216481ad6265SDimitry AndricTTR_HEADERS+=	is_referenceable.h
2165770cf0a5SDimitry AndricTTR_HEADERS+=	is_replaceable.h
216681ad6265SDimitry AndricTTR_HEADERS+=	is_same.h
216781ad6265SDimitry AndricTTR_HEADERS+=	is_scalar.h
216881ad6265SDimitry AndricTTR_HEADERS+=	is_signed.h
2169bdd1243dSDimitry AndricTTR_HEADERS+=	is_specialization.h
217081ad6265SDimitry AndricTTR_HEADERS+=	is_standard_layout.h
2171bdd1243dSDimitry AndricTTR_HEADERS+=	is_swappable.h
217281ad6265SDimitry AndricTTR_HEADERS+=	is_trivial.h
217381ad6265SDimitry AndricTTR_HEADERS+=	is_trivially_assignable.h
217481ad6265SDimitry AndricTTR_HEADERS+=	is_trivially_constructible.h
217581ad6265SDimitry AndricTTR_HEADERS+=	is_trivially_copyable.h
217681ad6265SDimitry AndricTTR_HEADERS+=	is_trivially_destructible.h
217706c3fb27SDimitry AndricTTR_HEADERS+=	is_trivially_lexicographically_comparable.h
21780fca6ea1SDimitry AndricTTR_HEADERS+=	is_trivially_relocatable.h
217981ad6265SDimitry AndricTTR_HEADERS+=	is_unbounded_array.h
218081ad6265SDimitry AndricTTR_HEADERS+=	is_union.h
2181*e64bea71SDimitry AndricTTR_HEADERS+=	is_unqualified.h
218281ad6265SDimitry AndricTTR_HEADERS+=	is_unsigned.h
2183972a253aSDimitry AndricTTR_HEADERS+=	is_valid_expansion.h
218481ad6265SDimitry AndricTTR_HEADERS+=	is_void.h
218581ad6265SDimitry AndricTTR_HEADERS+=	is_volatile.h
2186972a253aSDimitry AndricTTR_HEADERS+=	lazy.h
2187972a253aSDimitry AndricTTR_HEADERS+=	make_32_64_or_128_bit.h
2188bdd1243dSDimitry AndricTTR_HEADERS+=	make_const_lvalue_ref.h
2189972a253aSDimitry AndricTTR_HEADERS+=	make_signed.h
2190972a253aSDimitry AndricTTR_HEADERS+=	make_unsigned.h
2191bdd1243dSDimitry AndricTTR_HEADERS+=	maybe_const.h
2192972a253aSDimitry AndricTTR_HEADERS+=	nat.h
219381ad6265SDimitry AndricTTR_HEADERS+=	negation.h
2194972a253aSDimitry AndricTTR_HEADERS+=	promote.h
219581ad6265SDimitry AndricTTR_HEADERS+=	rank.h
2196770cf0a5SDimitry AndricTTR_HEADERS+=	reference_constructs_from_temporary.h
2197770cf0a5SDimitry AndricTTR_HEADERS+=	reference_converts_from_temporary.h
219881ad6265SDimitry AndricTTR_HEADERS+=	remove_all_extents.h
219981ad6265SDimitry AndricTTR_HEADERS+=	remove_const.h
2200bdd1243dSDimitry AndricTTR_HEADERS+=	remove_const_ref.h
220181ad6265SDimitry AndricTTR_HEADERS+=	remove_cv.h
2202972a253aSDimitry AndricTTR_HEADERS+=	remove_cvref.h
220381ad6265SDimitry AndricTTR_HEADERS+=	remove_extent.h
220481ad6265SDimitry AndricTTR_HEADERS+=	remove_pointer.h
220581ad6265SDimitry AndricTTR_HEADERS+=	remove_reference.h
220681ad6265SDimitry AndricTTR_HEADERS+=	remove_volatile.h
2207bdd1243dSDimitry AndricTTR_HEADERS+=	result_of.h
2208bdd1243dSDimitry AndricTTR_HEADERS+=	strip_signature.h
220981ad6265SDimitry AndricTTR_HEADERS+=	type_identity.h
2210972a253aSDimitry AndricTTR_HEADERS+=	type_list.h
221181ad6265SDimitry AndricTTR_HEADERS+=	underlying_type.h
221206c3fb27SDimitry AndricTTR_HEADERS+=	unwrap_ref.h
221381ad6265SDimitry AndricTTR_HEADERS+=	void_t.h
221481ad6265SDimitry Andric.for hdr in ${TTR_HEADERS}
221581ad6265SDimitry AndricTTR+=		${HDRDIR}/__type_traits/${hdr}
221681ad6265SDimitry Andric.endfor
221781ad6265SDimitry Andric
22186e75b2fbSDimitry AndricINCSGROUPS+=	UTL
22196e75b2fbSDimitry AndricUTLDIR=		${CXXINCLUDEDIR}/__utility
22206e75b2fbSDimitry AndricUTL_HEADERS+=	as_const.h
22215f757f3fSDimitry AndricUTL_HEADERS+=	as_lvalue.h
222204eeddc0SDimitry AndricUTL_HEADERS+=	auto_cast.h
22236e75b2fbSDimitry AndricUTL_HEADERS+=	cmp.h
2224bdd1243dSDimitry AndricUTL_HEADERS+=	convert_to_integral.h
22256e75b2fbSDimitry AndricUTL_HEADERS+=	declval.h
2226770cf0a5SDimitry AndricUTL_HEADERS+=	element_count.h
22275f757f3fSDimitry AndricUTL_HEADERS+=	empty.h
2228bdd1243dSDimitry AndricUTL_HEADERS+=	exception_guard.h
22296e75b2fbSDimitry AndricUTL_HEADERS+=	exchange.h
22306e75b2fbSDimitry AndricUTL_HEADERS+=	forward.h
2231bdd1243dSDimitry AndricUTL_HEADERS+=	forward_like.h
22326e75b2fbSDimitry AndricUTL_HEADERS+=	in_place.h
22336e75b2fbSDimitry AndricUTL_HEADERS+=	integer_sequence.h
223406c3fb27SDimitry AndricUTL_HEADERS+=	is_pointer_in_range.h
22350fca6ea1SDimitry AndricUTL_HEADERS+=	is_valid_range.h
22366e75b2fbSDimitry AndricUTL_HEADERS+=	move.h
22375f757f3fSDimitry AndricUTL_HEADERS+=	no_destroy.h
22386e75b2fbSDimitry AndricUTL_HEADERS+=	pair.h
22396e75b2fbSDimitry AndricUTL_HEADERS+=	piecewise_construct.h
22404824e7fdSDimitry AndricUTL_HEADERS+=	priority_tag.h
22410fca6ea1SDimitry AndricUTL_HEADERS+=	private_constructor_tag.h
22426e75b2fbSDimitry AndricUTL_HEADERS+=	rel_ops.h
2243770cf0a5SDimitry AndricUTL_HEADERS+=	scope_guard.h
22445f757f3fSDimitry AndricUTL_HEADERS+=	small_buffer.h
22456e75b2fbSDimitry AndricUTL_HEADERS+=	swap.h
22466e75b2fbSDimitry AndricUTL_HEADERS+=	to_underlying.h
224781ad6265SDimitry AndricUTL_HEADERS+=	unreachable.h
22486e75b2fbSDimitry Andric.for hdr in ${UTL_HEADERS}
22496e75b2fbSDimitry AndricUTL+=		${HDRDIR}/__utility/${hdr}
22506e75b2fbSDimitry Andric.endfor
22516e75b2fbSDimitry Andric
22526e75b2fbSDimitry AndricINCSGROUPS+=	VAR
22536e75b2fbSDimitry AndricVARDIR=	${CXXINCLUDEDIR}/__variant
22544824e7fdSDimitry AndricVAR_HEADERS+=	monostate.h
22556e75b2fbSDimitry Andric.for hdr in ${VAR_HEADERS}
22566e75b2fbSDimitry AndricVAR+=		${HDRDIR}/__variant/${hdr}
22576e75b2fbSDimitry Andric.endfor
22586e75b2fbSDimitry Andric
2259770cf0a5SDimitry AndricINCSGROUPS+=	VEC
2260770cf0a5SDimitry AndricVECDIR=		${CXXINCLUDEDIR}/__vector
2261770cf0a5SDimitry AndricVEC_HEADERS+=	comparison.h
2262770cf0a5SDimitry AndricVEC_HEADERS+=	container_traits.h
2263770cf0a5SDimitry AndricVEC_HEADERS+=	erase.h
2264770cf0a5SDimitry AndricVEC_HEADERS+=	pmr.h
2265770cf0a5SDimitry AndricVEC_HEADERS+=	swap.h
2266770cf0a5SDimitry AndricVEC_HEADERS+=	vector.h
2267770cf0a5SDimitry AndricVEC_HEADERS+=	vector_bool.h
2268770cf0a5SDimitry AndricVEC_HEADERS+=	vector_bool_formatter.h
2269770cf0a5SDimitry Andric.for hdr in ${VEC_HEADERS}
2270770cf0a5SDimitry AndricVEC+=		${HDRDIR}/__vector/${hdr}
2271770cf0a5SDimitry Andric.endfor
2272770cf0a5SDimitry Andric
22736e75b2fbSDimitry AndricINCSGROUPS+=	EXP
22746e75b2fbSDimitry AndricEXPDIR=		${CXXINCLUDEDIR}/experimental
22753f910b91SDimitry AndricEXP_HEADERS+=	iterator
22765f757f3fSDimitry AndricEXP_HEADERS+=	memory
22773f910b91SDimitry AndricEXP_HEADERS+=	propagate_const
2278488aa40aSDimitry AndricEXP_HEADERS+=	simd
22793f910b91SDimitry AndricEXP_HEADERS+=	type_traits
22803f910b91SDimitry AndricEXP_HEADERS+=	utility
22814f7ab58eSDimitry Andric.for hdr in ${EXP_HEADERS}
22824f7ab58eSDimitry AndricEXP+=		${HDRDIR}/experimental/${hdr}
22834f7ab58eSDimitry Andric.endfor
22844f7ab58eSDimitry Andric
22855f757f3fSDimitry AndricINCSGROUPS+=	EXS
22865f757f3fSDimitry AndricEXSDIR=		${CXXINCLUDEDIR}/experimental/__simd
22875f757f3fSDimitry AndricEXS_HEADERS+=	aligned_tag.h
22885f757f3fSDimitry AndricEXS_HEADERS+=	declaration.h
22895f757f3fSDimitry AndricEXS_HEADERS+=	reference.h
22905f757f3fSDimitry AndricEXS_HEADERS+=	scalar.h
22915f757f3fSDimitry AndricEXS_HEADERS+=	simd.h
22925f757f3fSDimitry AndricEXS_HEADERS+=	simd_mask.h
22935f757f3fSDimitry AndricEXS_HEADERS+=	traits.h
22945f757f3fSDimitry AndricEXS_HEADERS+=	utility.h
22955f757f3fSDimitry AndricEXS_HEADERS+=	vec_ext.h
22965f757f3fSDimitry Andric.for hdr in ${EXS_HEADERS}
22975f757f3fSDimitry AndricEXS+=		${HDRDIR}/experimental/__simd/${hdr}
22985f757f3fSDimitry Andric.endfor
22995f757f3fSDimitry Andric
23006e75b2fbSDimitry AndricINCSGROUPS+=	EXT
23016e75b2fbSDimitry AndricEXTDIR=		${CXXINCLUDEDIR}/ext
23023f910b91SDimitry AndricEXT_HEADERS+=	__hash
23033f910b91SDimitry AndricEXT_HEADERS+=	hash_map
23043f910b91SDimitry AndricEXT_HEADERS+=	hash_set
23057a984708SDavid Chisnall.for hdr in ${EXT_HEADERS}
23067a984708SDavid ChisnallEXT+=		${HDRDIR}/ext/${hdr}
23077a984708SDavid Chisnall.endfor
23087a984708SDavid Chisnall
23097a984708SDavid Chisnall.include <bsd.lib.mk>
2310