]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - lib/libc++/Makefile
exit.3: add the comma after an empty space
[FreeBSD/FreeBSD.git] / lib / libc++ / Makefile
1
2 SHLIBDIR?=      /lib
3
4 .include <src.opts.mk>
5
6 PACKAGE=        clibs
7 _LIBCXXRTDIR=   ${SRCTOP}/contrib/libcxxrt
8 HDRDIR=         ${SRCTOP}/contrib/llvm-project/libcxx/include
9 SRCDIR=         ${SRCTOP}/contrib/llvm-project/libcxx/src
10 CXXINCLUDEDIR=  ${INCLUDEDIR}/c++/v${SHLIB_MAJOR}
11
12 .PATH: ${SRCDIR}
13
14 LIB=            c++
15 SHLIB_MAJOR=    1
16 SHLIB_LDSCRIPT= libc++.ldscript
17
18 SRCS+=          algorithm.cpp
19 SRCS+=          any.cpp
20 SRCS+=          atomic.cpp
21 SRCS+=          barrier.cpp
22 SRCS+=          bind.cpp
23 SRCS+=          call_once.cpp
24 SRCS+=          charconv.cpp
25 SRCS+=          chrono.cpp
26 SRCS+=          condition_variable.cpp
27 SRCS+=          condition_variable_destructor.cpp
28 SRCS+=          error_category.cpp
29 SRCS+=          exception.cpp
30 SRCS+=          filesystem/directory_entry.cpp
31 SRCS+=          filesystem/directory_iterator.cpp
32 SRCS+=          filesystem/filesystem_clock.cpp
33 SRCS+=          filesystem/filesystem_error.cpp
34 SRCS+=          filesystem/int128_builtins.cpp
35 SRCS+=          filesystem/operations.cpp
36 SRCS+=          filesystem/path.cpp
37 SRCS+=          functional.cpp
38 SRCS+=          future.cpp
39 SRCS+=          hash.cpp
40 SRCS+=          ios.cpp
41 SRCS+=          ios.instantiations.cpp
42 SRCS+=          iostream.cpp
43 SRCS+=          legacy_pointer_safety.cpp
44 SRCS+=          locale.cpp
45 SRCS+=          memory.cpp
46 SRCS+=          memory_resource.cpp
47 SRCS+=          mutex.cpp
48 SRCS+=          mutex_destructor.cpp
49 SRCS+=          new.cpp
50 SRCS+=          new_handler.cpp
51 SRCS+=          new_helpers.cpp
52 SRCS+=          optional.cpp
53 SRCS+=          ostream.cpp
54 SRCS+=          print.cpp
55 SRCS+=          random.cpp
56 SRCS+=          random_shuffle.cpp
57 SRCS+=          regex.cpp
58 SRCS+=          ryu/d2fixed.cpp
59 SRCS+=          ryu/d2s.cpp
60 SRCS+=          ryu/f2s.cpp
61 SRCS+=          shared_mutex.cpp
62 SRCS+=          stdexcept.cpp
63 SRCS+=          string.cpp
64 SRCS+=          strstream.cpp
65 SRCS+=          system_error.cpp
66 SRCS+=          thread.cpp
67 SRCS+=          typeinfo.cpp
68 SRCS+=          valarray.cpp
69 SRCS+=          variant.cpp
70 SRCS+=          vector.cpp
71 SRCS+=          verbose_abort.cpp
72
73 CXXRT_SRCS+=    auxhelper.cc
74 CXXRT_SRCS+=    dynamic_cast.cc
75 CXXRT_SRCS+=    exception.cc
76 CXXRT_SRCS+=    guard.cc
77 CXXRT_SRCS+=    libelftc_dem_gnu3.c
78 CXXRT_SRCS+=    memory.cc
79 CXXRT_SRCS+=    stdexcept.cc
80 CXXRT_SRCS+=    terminate.cc
81 CXXRT_SRCS+=    typeinfo.cc
82
83 .for _S in ${CXXRT_SRCS}
84 CLEANFILES+=    cxxrt_${_S}
85 STATICOBJS+=    cxxrt_${_S:R}.o
86 cxxrt_${_S}: ${_LIBCXXRTDIR}/${_S} .NOMETA
87         ln -sf ${.ALLSRC} ${.TARGET}
88 .endfor
89
90 WARNS?=         0
91 CFLAGS+=        -isystem ${SRCDIR}
92 CFLAGS+=        -isystem ${.CURDIR}
93 CFLAGS+=        -isystem ${HDRDIR}
94 CFLAGS+=        -isystem ${_LIBCXXRTDIR}
95 CFLAGS+=        -nostdinc++
96 CFLAGS+=        -nostdlib
97 CFLAGS+=        -D_LIBCPP_BUILDING_LIBRARY
98 CFLAGS+=        -D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
99 CFLAGS+=        -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES
100 CFLAGS+=        -DLIBCXXRT
101 CFLAGS+=        -fdata-sections
102 CFLAGS+=        -ffunction-sections
103 CFLAGS+=        -fno-semantic-interposition
104 CFLAGS+=        -fvisibility-inlines-hidden
105 CFLAGS+=        -fvisibility=hidden
106 CXXSTD?=        c++20
107
108 LIBADD+=        cxxrt
109
110 INCSGROUPS+=    STD
111 STDDIR=         ${CXXINCLUDEDIR}
112 STD_HEADERS+=   __assert
113 STD_HEADERS+=   __availability
114 STD_HEADERS+=   __bit_reference
115 STD_HEADERS+=   __config
116 STD_HEADERS+=   __hash_table
117 STD_HEADERS+=   __locale
118 STD_HEADERS+=   __mbstate_t.h
119 STD_HEADERS+=   __node_handle
120 STD_HEADERS+=   __split_buffer
121 STD_HEADERS+=   __std_clang_module
122 STD_HEADERS+=   __std_mbstate_t.h
123 STD_HEADERS+=   __threading_support
124 STD_HEADERS+=   __tree
125 STD_HEADERS+=   __undef_macros
126 STD_HEADERS+=   __verbose_abort
127 STD_HEADERS+=   algorithm
128 STD_HEADERS+=   any
129 STD_HEADERS+=   array
130 STD_HEADERS+=   atomic
131 STD_HEADERS+=   barrier
132 STD_HEADERS+=   bit
133 STD_HEADERS+=   bitset
134 STD_HEADERS+=   cassert
135 STD_HEADERS+=   ccomplex
136 STD_HEADERS+=   cctype
137 STD_HEADERS+=   cerrno
138 STD_HEADERS+=   cfenv
139 STD_HEADERS+=   cfloat
140 STD_HEADERS+=   charconv
141 STD_HEADERS+=   chrono
142 STD_HEADERS+=   cinttypes
143 STD_HEADERS+=   ciso646
144 STD_HEADERS+=   climits
145 STD_HEADERS+=   clocale
146 STD_HEADERS+=   cmath
147 STD_HEADERS+=   codecvt
148 STD_HEADERS+=   compare
149 STD_HEADERS+=   complex
150 STD_HEADERS+=   complex.h
151 STD_HEADERS+=   concepts
152 STD_HEADERS+=   condition_variable
153 STD_HEADERS+=   coroutine
154 STD_HEADERS+=   csetjmp
155 STD_HEADERS+=   csignal
156 STD_HEADERS+=   cstdarg
157 STD_HEADERS+=   cstdbool
158 STD_HEADERS+=   cstddef
159 STD_HEADERS+=   cstdint
160 STD_HEADERS+=   cstdio
161 STD_HEADERS+=   cstdlib
162 STD_HEADERS+=   cstring
163 STD_HEADERS+=   ctgmath
164 STD_HEADERS+=   ctime
165 STD_HEADERS+=   ctype.h
166 STD_HEADERS+=   cuchar
167 STD_HEADERS+=   cwchar
168 STD_HEADERS+=   cwctype
169 STD_HEADERS+=   deque
170 STD_HEADERS+=   errno.h
171 STD_HEADERS+=   exception
172 STD_HEADERS+=   execution
173 STD_HEADERS+=   expected
174 STD_HEADERS+=   fenv.h
175 STD_HEADERS+=   filesystem
176 STD_HEADERS+=   float.h
177 STD_HEADERS+=   format
178 STD_HEADERS+=   forward_list
179 STD_HEADERS+=   fstream
180 STD_HEADERS+=   functional
181 STD_HEADERS+=   future
182 STD_HEADERS+=   initializer_list
183 STD_HEADERS+=   inttypes.h
184 STD_HEADERS+=   iomanip
185 STD_HEADERS+=   ios
186 STD_HEADERS+=   iosfwd
187 STD_HEADERS+=   iostream
188 STD_HEADERS+=   istream
189 STD_HEADERS+=   iterator
190 STD_HEADERS+=   latch
191 STD_HEADERS+=   libcxx.imp
192 STD_HEADERS+=   limits
193 STD_HEADERS+=   list
194 STD_HEADERS+=   locale
195 STD_HEADERS+=   locale.h
196 STD_HEADERS+=   map
197 STD_HEADERS+=   math.h
198 STD_HEADERS+=   mdspan
199 STD_HEADERS+=   memory
200 STD_HEADERS+=   memory_resource
201 STD_HEADERS+=   mutex
202 STD_HEADERS+=   new
203 STD_HEADERS+=   numbers
204 STD_HEADERS+=   numeric
205 STD_HEADERS+=   optional
206 STD_HEADERS+=   ostream
207 STD_HEADERS+=   print
208 STD_HEADERS+=   queue
209 STD_HEADERS+=   random
210 STD_HEADERS+=   ranges
211 STD_HEADERS+=   ratio
212 STD_HEADERS+=   regex
213 STD_HEADERS+=   scoped_allocator
214 STD_HEADERS+=   semaphore
215 STD_HEADERS+=   set
216 STD_HEADERS+=   shared_mutex
217 STD_HEADERS+=   source_location
218 STD_HEADERS+=   span
219 STD_HEADERS+=   sstream
220 STD_HEADERS+=   stack
221 STD_HEADERS+=   stdatomic.h
222 STD_HEADERS+=   stdbool.h
223 STD_HEADERS+=   stddef.h
224 STD_HEADERS+=   stdexcept
225 STD_HEADERS+=   stdint.h
226 STD_HEADERS+=   stdio.h
227 STD_HEADERS+=   stdlib.h
228 STD_HEADERS+=   stop_token
229 STD_HEADERS+=   streambuf
230 STD_HEADERS+=   string
231 STD_HEADERS+=   string.h
232 STD_HEADERS+=   string_view
233 STD_HEADERS+=   strstream
234 STD_HEADERS+=   syncstream
235 STD_HEADERS+=   system_error
236 STD_HEADERS+=   tgmath.h
237 STD_HEADERS+=   thread
238 STD_HEADERS+=   tuple
239 STD_HEADERS+=   type_traits
240 STD_HEADERS+=   typeindex
241 STD_HEADERS+=   typeinfo
242 STD_HEADERS+=   uchar.h
243 STD_HEADERS+=   unordered_map
244 STD_HEADERS+=   unordered_set
245 STD_HEADERS+=   utility
246 STD_HEADERS+=   valarray
247 STD_HEADERS+=   variant
248 STD_HEADERS+=   vector
249 STD_HEADERS+=   version
250 STD_HEADERS+=   wchar.h
251 STD_HEADERS+=   wctype.h
252 .for hdr in ${STD_HEADERS}
253 STD+=           ${HDRDIR}/${hdr}
254 .endfor
255
256 # Special case for __assertion_handler, which as of libc++ 18.0.0 is generated
257 # by CMake.
258 STD+=           ${.CURDIR}/__assertion_handler
259
260 # Special case for __config_site, which as of libc++ 12.0.0 is generated by
261 # CMake, and as of 13.0.0 installed side-by-side with__config.
262 STD+=           ${.CURDIR}/__config_site
263
264 # Special case for module.modulemap, which as of libc++ 15.0.0 is generated by
265 # CMake.
266 STD+=           ${.CURDIR}/module.modulemap
267
268 RT_HEADERS+=    cxxabi.h
269 .for hdr in ${RT_HEADERS}
270 STD+=           ${_LIBCXXRTDIR}/${hdr}
271 .endfor
272
273 INCSGROUPS+=    ALG
274 ALGDIR=         ${CXXINCLUDEDIR}/__algorithm
275 ALG_HEADERS+=   adjacent_find.h
276 ALG_HEADERS+=   all_of.h
277 ALG_HEADERS+=   any_of.h
278 ALG_HEADERS+=   binary_search.h
279 ALG_HEADERS+=   clamp.h
280 ALG_HEADERS+=   comp.h
281 ALG_HEADERS+=   comp_ref_type.h
282 ALG_HEADERS+=   copy.h
283 ALG_HEADERS+=   copy_backward.h
284 ALG_HEADERS+=   copy_if.h
285 ALG_HEADERS+=   copy_move_common.h
286 ALG_HEADERS+=   copy_n.h
287 ALG_HEADERS+=   count.h
288 ALG_HEADERS+=   count_if.h
289 ALG_HEADERS+=   equal.h
290 ALG_HEADERS+=   equal_range.h
291 ALG_HEADERS+=   fill.h
292 ALG_HEADERS+=   fill_n.h
293 ALG_HEADERS+=   find.h
294 ALG_HEADERS+=   find_end.h
295 ALG_HEADERS+=   find_first_of.h
296 ALG_HEADERS+=   find_if.h
297 ALG_HEADERS+=   find_if_not.h
298 ALG_HEADERS+=   find_segment_if.h
299 ALG_HEADERS+=   fold.h
300 ALG_HEADERS+=   for_each.h
301 ALG_HEADERS+=   for_each_n.h
302 ALG_HEADERS+=   for_each_segment.h
303 ALG_HEADERS+=   generate.h
304 ALG_HEADERS+=   generate_n.h
305 ALG_HEADERS+=   half_positive.h
306 ALG_HEADERS+=   in_found_result.h
307 ALG_HEADERS+=   in_fun_result.h
308 ALG_HEADERS+=   in_in_out_result.h
309 ALG_HEADERS+=   in_in_result.h
310 ALG_HEADERS+=   in_out_out_result.h
311 ALG_HEADERS+=   in_out_result.h
312 ALG_HEADERS+=   includes.h
313 ALG_HEADERS+=   inplace_merge.h
314 ALG_HEADERS+=   is_heap.h
315 ALG_HEADERS+=   is_heap_until.h
316 ALG_HEADERS+=   is_partitioned.h
317 ALG_HEADERS+=   is_permutation.h
318 ALG_HEADERS+=   is_sorted.h
319 ALG_HEADERS+=   is_sorted_until.h
320 ALG_HEADERS+=   iter_swap.h
321 ALG_HEADERS+=   iterator_operations.h
322 ALG_HEADERS+=   lexicographical_compare.h
323 ALG_HEADERS+=   lexicographical_compare_three_way.h
324 ALG_HEADERS+=   lower_bound.h
325 ALG_HEADERS+=   make_heap.h
326 ALG_HEADERS+=   make_projected.h
327 ALG_HEADERS+=   max.h
328 ALG_HEADERS+=   max_element.h
329 ALG_HEADERS+=   merge.h
330 ALG_HEADERS+=   min.h
331 ALG_HEADERS+=   min_element.h
332 ALG_HEADERS+=   min_max_result.h
333 ALG_HEADERS+=   minmax.h
334 ALG_HEADERS+=   minmax_element.h
335 ALG_HEADERS+=   mismatch.h
336 ALG_HEADERS+=   move.h
337 ALG_HEADERS+=   move_backward.h
338 ALG_HEADERS+=   next_permutation.h
339 ALG_HEADERS+=   none_of.h
340 ALG_HEADERS+=   nth_element.h
341 ALG_HEADERS+=   partial_sort.h
342 ALG_HEADERS+=   partial_sort_copy.h
343 ALG_HEADERS+=   partition.h
344 ALG_HEADERS+=   partition_copy.h
345 ALG_HEADERS+=   partition_point.h
346 ALG_HEADERS+=   pop_heap.h
347 ALG_HEADERS+=   prev_permutation.h
348 ALG_HEADERS+=   pstl_any_all_none_of.h
349 ALG_HEADERS+=   pstl_backend.h
350 ALG_HEADERS+=   pstl_copy.h
351 ALG_HEADERS+=   pstl_count.h
352 ALG_HEADERS+=   pstl_equal.h
353 ALG_HEADERS+=   pstl_fill.h
354 ALG_HEADERS+=   pstl_find.h
355 ALG_HEADERS+=   pstl_for_each.h
356 ALG_HEADERS+=   pstl_frontend_dispatch.h
357 ALG_HEADERS+=   pstl_generate.h
358 ALG_HEADERS+=   pstl_is_partitioned.h
359 ALG_HEADERS+=   pstl_merge.h
360 ALG_HEADERS+=   pstl_move.h
361 ALG_HEADERS+=   pstl_replace.h
362 ALG_HEADERS+=   pstl_rotate_copy.h
363 ALG_HEADERS+=   pstl_sort.h
364 ALG_HEADERS+=   pstl_stable_sort.h
365 ALG_HEADERS+=   pstl_transform.h
366 ALG_HEADERS+=   push_heap.h
367 ALG_HEADERS+=   ranges_adjacent_find.h
368 ALG_HEADERS+=   ranges_all_of.h
369 ALG_HEADERS+=   ranges_any_of.h
370 ALG_HEADERS+=   ranges_binary_search.h
371 ALG_HEADERS+=   ranges_clamp.h
372 ALG_HEADERS+=   ranges_contains.h
373 ALG_HEADERS+=   ranges_copy.h
374 ALG_HEADERS+=   ranges_copy_backward.h
375 ALG_HEADERS+=   ranges_copy_if.h
376 ALG_HEADERS+=   ranges_copy_n.h
377 ALG_HEADERS+=   ranges_count.h
378 ALG_HEADERS+=   ranges_count_if.h
379 ALG_HEADERS+=   ranges_ends_with.h
380 ALG_HEADERS+=   ranges_equal.h
381 ALG_HEADERS+=   ranges_equal_range.h
382 ALG_HEADERS+=   ranges_fill.h
383 ALG_HEADERS+=   ranges_fill_n.h
384 ALG_HEADERS+=   ranges_find.h
385 ALG_HEADERS+=   ranges_find_end.h
386 ALG_HEADERS+=   ranges_find_first_of.h
387 ALG_HEADERS+=   ranges_find_if.h
388 ALG_HEADERS+=   ranges_find_if_not.h
389 ALG_HEADERS+=   ranges_for_each.h
390 ALG_HEADERS+=   ranges_for_each_n.h
391 ALG_HEADERS+=   ranges_generate.h
392 ALG_HEADERS+=   ranges_generate_n.h
393 ALG_HEADERS+=   ranges_includes.h
394 ALG_HEADERS+=   ranges_inplace_merge.h
395 ALG_HEADERS+=   ranges_is_heap.h
396 ALG_HEADERS+=   ranges_is_heap_until.h
397 ALG_HEADERS+=   ranges_is_partitioned.h
398 ALG_HEADERS+=   ranges_is_permutation.h
399 ALG_HEADERS+=   ranges_is_sorted.h
400 ALG_HEADERS+=   ranges_is_sorted_until.h
401 ALG_HEADERS+=   ranges_iterator_concept.h
402 ALG_HEADERS+=   ranges_lexicographical_compare.h
403 ALG_HEADERS+=   ranges_lower_bound.h
404 ALG_HEADERS+=   ranges_make_heap.h
405 ALG_HEADERS+=   ranges_max.h
406 ALG_HEADERS+=   ranges_max_element.h
407 ALG_HEADERS+=   ranges_merge.h
408 ALG_HEADERS+=   ranges_min.h
409 ALG_HEADERS+=   ranges_min_element.h
410 ALG_HEADERS+=   ranges_minmax.h
411 ALG_HEADERS+=   ranges_minmax_element.h
412 ALG_HEADERS+=   ranges_mismatch.h
413 ALG_HEADERS+=   ranges_move.h
414 ALG_HEADERS+=   ranges_move_backward.h
415 ALG_HEADERS+=   ranges_next_permutation.h
416 ALG_HEADERS+=   ranges_none_of.h
417 ALG_HEADERS+=   ranges_nth_element.h
418 ALG_HEADERS+=   ranges_partial_sort.h
419 ALG_HEADERS+=   ranges_partial_sort_copy.h
420 ALG_HEADERS+=   ranges_partition.h
421 ALG_HEADERS+=   ranges_partition_copy.h
422 ALG_HEADERS+=   ranges_partition_point.h
423 ALG_HEADERS+=   ranges_pop_heap.h
424 ALG_HEADERS+=   ranges_prev_permutation.h
425 ALG_HEADERS+=   ranges_push_heap.h
426 ALG_HEADERS+=   ranges_remove.h
427 ALG_HEADERS+=   ranges_remove_copy.h
428 ALG_HEADERS+=   ranges_remove_copy_if.h
429 ALG_HEADERS+=   ranges_remove_if.h
430 ALG_HEADERS+=   ranges_replace.h
431 ALG_HEADERS+=   ranges_replace_copy.h
432 ALG_HEADERS+=   ranges_replace_copy_if.h
433 ALG_HEADERS+=   ranges_replace_if.h
434 ALG_HEADERS+=   ranges_reverse.h
435 ALG_HEADERS+=   ranges_reverse_copy.h
436 ALG_HEADERS+=   ranges_rotate.h
437 ALG_HEADERS+=   ranges_rotate_copy.h
438 ALG_HEADERS+=   ranges_sample.h
439 ALG_HEADERS+=   ranges_search.h
440 ALG_HEADERS+=   ranges_search_n.h
441 ALG_HEADERS+=   ranges_set_difference.h
442 ALG_HEADERS+=   ranges_set_intersection.h
443 ALG_HEADERS+=   ranges_set_symmetric_difference.h
444 ALG_HEADERS+=   ranges_set_union.h
445 ALG_HEADERS+=   ranges_shuffle.h
446 ALG_HEADERS+=   ranges_sort.h
447 ALG_HEADERS+=   ranges_sort_heap.h
448 ALG_HEADERS+=   ranges_stable_partition.h
449 ALG_HEADERS+=   ranges_stable_sort.h
450 ALG_HEADERS+=   ranges_starts_with.h
451 ALG_HEADERS+=   ranges_swap_ranges.h
452 ALG_HEADERS+=   ranges_transform.h
453 ALG_HEADERS+=   ranges_unique.h
454 ALG_HEADERS+=   ranges_unique_copy.h
455 ALG_HEADERS+=   ranges_upper_bound.h
456 ALG_HEADERS+=   remove.h
457 ALG_HEADERS+=   remove_copy.h
458 ALG_HEADERS+=   remove_copy_if.h
459 ALG_HEADERS+=   remove_if.h
460 ALG_HEADERS+=   replace.h
461 ALG_HEADERS+=   replace_copy.h
462 ALG_HEADERS+=   replace_copy_if.h
463 ALG_HEADERS+=   replace_if.h
464 ALG_HEADERS+=   reverse.h
465 ALG_HEADERS+=   reverse_copy.h
466 ALG_HEADERS+=   rotate.h
467 ALG_HEADERS+=   rotate_copy.h
468 ALG_HEADERS+=   sample.h
469 ALG_HEADERS+=   search.h
470 ALG_HEADERS+=   search_n.h
471 ALG_HEADERS+=   set_difference.h
472 ALG_HEADERS+=   set_intersection.h
473 ALG_HEADERS+=   set_symmetric_difference.h
474 ALG_HEADERS+=   set_union.h
475 ALG_HEADERS+=   shift_left.h
476 ALG_HEADERS+=   shift_right.h
477 ALG_HEADERS+=   shuffle.h
478 ALG_HEADERS+=   sift_down.h
479 ALG_HEADERS+=   sort.h
480 ALG_HEADERS+=   sort_heap.h
481 ALG_HEADERS+=   stable_partition.h
482 ALG_HEADERS+=   stable_sort.h
483 ALG_HEADERS+=   swap_ranges.h
484 ALG_HEADERS+=   three_way_comp_ref_type.h
485 ALG_HEADERS+=   transform.h
486 ALG_HEADERS+=   uniform_random_bit_generator_adaptor.h
487 ALG_HEADERS+=   unique.h
488 ALG_HEADERS+=   unique_copy.h
489 ALG_HEADERS+=   unwrap_iter.h
490 ALG_HEADERS+=   unwrap_range.h
491 ALG_HEADERS+=   upper_bound.h
492 .for hdr in ${ALG_HEADERS}
493 ALG+=           ${HDRDIR}/__algorithm/${hdr}
494 .endfor
495
496 INCSGROUPS+=    PSB
497 PSBDIR=         ${CXXINCLUDEDIR}/__algorithm/pstl_backends
498 PSB_HEADERS+=   cpu_backend.h
499 .for hdr in ${PSB_HEADERS}
500 PSB+=           ${HDRDIR}/__algorithm/pstl_backends/${hdr}
501 .endfor
502
503 INCSGROUPS+=    PCB
504 PCBDIR=         ${CXXINCLUDEDIR}/__algorithm/pstl_backends/cpu_backends
505 PCB_HEADERS+=   any_of.h
506 PCB_HEADERS+=   backend.h
507 PCB_HEADERS+=   fill.h
508 PCB_HEADERS+=   find_if.h
509 PCB_HEADERS+=   for_each.h
510 PCB_HEADERS+=   libdispatch.h
511 PCB_HEADERS+=   merge.h
512 PCB_HEADERS+=   serial.h
513 PCB_HEADERS+=   stable_sort.h
514 PCB_HEADERS+=   thread.h
515 PCB_HEADERS+=   transform.h
516 PCB_HEADERS+=   transform_reduce.h
517 .for hdr in ${PCB_HEADERS}
518 PCB+=           ${HDRDIR}/__algorithm/pstl_backends/cpu_backends/${hdr}
519 .endfor
520
521 INCSGROUPS+=    ATM
522 ATMDIR=         ${CXXINCLUDEDIR}/__atomic
523 ATM_HEADERS+=   aliases.h
524 ATM_HEADERS+=   atomic.h
525 ATM_HEADERS+=   atomic_base.h
526 ATM_HEADERS+=   atomic_flag.h
527 ATM_HEADERS+=   atomic_init.h
528 ATM_HEADERS+=   atomic_lock_free.h
529 ATM_HEADERS+=   atomic_sync.h
530 ATM_HEADERS+=   check_memory_order.h
531 ATM_HEADERS+=   contention_t.h
532 ATM_HEADERS+=   cxx_atomic_impl.h
533 ATM_HEADERS+=   fence.h
534 ATM_HEADERS+=   is_always_lock_free.h
535 ATM_HEADERS+=   kill_dependency.h
536 ATM_HEADERS+=   memory_order.h
537 .for hdr in ${ATM_HEADERS}
538 ATM+=           ${HDRDIR}/__atomic/${hdr}
539 .endfor
540
541 INCSGROUPS+=    BIT
542 BITDIR=         ${CXXINCLUDEDIR}/__bit
543 BIT_HEADERS+=   bit_cast.h
544 BIT_HEADERS+=   bit_ceil.h
545 BIT_HEADERS+=   bit_floor.h
546 BIT_HEADERS+=   bit_log2.h
547 BIT_HEADERS+=   bit_width.h
548 BIT_HEADERS+=   blsr.h
549 BIT_HEADERS+=   byteswap.h
550 BIT_HEADERS+=   countl.h
551 BIT_HEADERS+=   countr.h
552 BIT_HEADERS+=   endian.h
553 BIT_HEADERS+=   has_single_bit.h
554 BIT_HEADERS+=   invert_if.h
555 BIT_HEADERS+=   popcount.h
556 BIT_HEADERS+=   rotate.h
557 .for hdr in ${BIT_HEADERS}
558 BIT+=           ${HDRDIR}/__bit/${hdr}
559 .endfor
560
561 INCSGROUPS+=    CHC
562 CHCDIR=         ${CXXINCLUDEDIR}/__charconv
563 CHC_HEADERS+=   chars_format.h
564 CHC_HEADERS+=   from_chars_integral.h
565 CHC_HEADERS+=   from_chars_result.h
566 CHC_HEADERS+=   tables.h
567 CHC_HEADERS+=   to_chars.h
568 CHC_HEADERS+=   to_chars_base_10.h
569 CHC_HEADERS+=   to_chars_floating_point.h
570 CHC_HEADERS+=   to_chars_integral.h
571 CHC_HEADERS+=   to_chars_result.h
572 CHC_HEADERS+=   traits.h
573 .for hdr in ${CHC_HEADERS}
574 CHC+=           ${HDRDIR}/__charconv/${hdr}
575 .endfor
576
577 INCSGROUPS+=    CHR
578 CHRDIR=         ${CXXINCLUDEDIR}/__chrono
579 CHR_HEADERS+=   calendar.h
580 CHR_HEADERS+=   concepts.h
581 CHR_HEADERS+=   convert_to_timespec.h
582 CHR_HEADERS+=   convert_to_tm.h
583 CHR_HEADERS+=   day.h
584 CHR_HEADERS+=   duration.h
585 CHR_HEADERS+=   file_clock.h
586 CHR_HEADERS+=   formatter.h
587 CHR_HEADERS+=   hh_mm_ss.h
588 CHR_HEADERS+=   high_resolution_clock.h
589 CHR_HEADERS+=   literals.h
590 CHR_HEADERS+=   month.h
591 CHR_HEADERS+=   month_weekday.h
592 CHR_HEADERS+=   monthday.h
593 CHR_HEADERS+=   ostream.h
594 CHR_HEADERS+=   parser_std_format_spec.h
595 CHR_HEADERS+=   statically_widen.h
596 CHR_HEADERS+=   steady_clock.h
597 CHR_HEADERS+=   system_clock.h
598 CHR_HEADERS+=   time_point.h
599 CHR_HEADERS+=   tzdb.h
600 CHR_HEADERS+=   tzdb_list.h
601 CHR_HEADERS+=   weekday.h
602 CHR_HEADERS+=   year.h
603 CHR_HEADERS+=   year_month.h
604 CHR_HEADERS+=   year_month_day.h
605 CHR_HEADERS+=   year_month_weekday.h
606 .for hdr in ${CHR_HEADERS}
607 CHR+=           ${HDRDIR}/__chrono/${hdr}
608 .endfor
609
610 INCSGROUPS+=    CMP
611 CMPDIR=         ${CXXINCLUDEDIR}/__compare
612 CMP_HEADERS+=   common_comparison_category.h
613 CMP_HEADERS+=   compare_partial_order_fallback.h
614 CMP_HEADERS+=   compare_strong_order_fallback.h
615 CMP_HEADERS+=   compare_three_way.h
616 CMP_HEADERS+=   compare_three_way_result.h
617 CMP_HEADERS+=   compare_weak_order_fallback.h
618 CMP_HEADERS+=   is_eq.h
619 CMP_HEADERS+=   ordering.h
620 CMP_HEADERS+=   partial_order.h
621 CMP_HEADERS+=   strong_order.h
622 CMP_HEADERS+=   synth_three_way.h
623 CMP_HEADERS+=   three_way_comparable.h
624 CMP_HEADERS+=   weak_order.h
625 .for hdr in ${CMP_HEADERS}
626 CMP+=           ${HDRDIR}/__compare/${hdr}
627 .endfor
628
629 INCSGROUPS+=    CON
630 CONDIR=         ${CXXINCLUDEDIR}/__concepts
631 CON_HEADERS+=   arithmetic.h
632 CON_HEADERS+=   assignable.h
633 CON_HEADERS+=   boolean_testable.h
634 CON_HEADERS+=   class_or_enum.h
635 CON_HEADERS+=   common_reference_with.h
636 CON_HEADERS+=   common_with.h
637 CON_HEADERS+=   constructible.h
638 CON_HEADERS+=   convertible_to.h
639 CON_HEADERS+=   copyable.h
640 CON_HEADERS+=   derived_from.h
641 CON_HEADERS+=   destructible.h
642 CON_HEADERS+=   different_from.h
643 CON_HEADERS+=   equality_comparable.h
644 CON_HEADERS+=   invocable.h
645 CON_HEADERS+=   movable.h
646 CON_HEADERS+=   predicate.h
647 CON_HEADERS+=   regular.h
648 CON_HEADERS+=   relation.h
649 CON_HEADERS+=   same_as.h
650 CON_HEADERS+=   semiregular.h
651 CON_HEADERS+=   swappable.h
652 CON_HEADERS+=   totally_ordered.h
653 .for hdr in ${CON_HEADERS}
654 CON+=           ${HDRDIR}/__concepts/${hdr}
655 .endfor
656
657 INCSGROUPS+=    CND
658 CNDDIR=         ${CXXINCLUDEDIR}/__condition_variable
659 CND_HEADERS+=   condition_variable.h
660 .for hdr in ${CND_HEADERS}
661 CND+=           ${HDRDIR}/__condition_variable/${hdr}
662 .endfor
663
664 INCSGROUPS+=    COR
665 CORDIR=         ${CXXINCLUDEDIR}/__coroutine
666 COR_HEADERS+=   coroutine_handle.h
667 COR_HEADERS+=   coroutine_traits.h
668 COR_HEADERS+=   noop_coroutine_handle.h
669 COR_HEADERS+=   trivial_awaitables.h
670 .for hdr in ${COR_HEADERS}
671 COR+=           ${HDRDIR}/__coroutine/${hdr}
672 .endfor
673
674 INCSGROUPS+=    DBG
675 DBGDIR=         ${CXXINCLUDEDIR}/__debug_utils
676 DBG_HEADERS+=   randomize_range.h
677 DBG_HEADERS+=   strict_weak_ordering_check.h
678 .for hdr in ${DBG_HEADERS}
679 DBG+=           ${HDRDIR}/__debug_utils/${hdr}
680 .endfor
681
682 INCSGROUPS+=    EXC
683 EXCDIR=         ${CXXINCLUDEDIR}/__exception
684 EXC_HEADERS+=   exception.h
685 EXC_HEADERS+=   exception_ptr.h
686 EXC_HEADERS+=   nested_exception.h
687 EXC_HEADERS+=   operations.h
688 EXC_HEADERS+=   terminate.h
689 .for hdr in ${EXC_HEADERS}
690 EXC+=           ${HDRDIR}/__exception/${hdr}
691 .endfor
692
693 INCSGROUPS+=    EXD
694 EXDDIR=         ${CXXINCLUDEDIR}/__expected
695 EXD_HEADERS+=   bad_expected_access.h
696 EXD_HEADERS+=   expected.h
697 EXD_HEADERS+=   unexpect.h
698 EXD_HEADERS+=   unexpected.h
699 .for hdr in ${EXD_HEADERS}
700 EXD+=           ${HDRDIR}/__expected/${hdr}
701 .endfor
702
703 INCSGROUPS+=    FS
704 FSDIR=          ${CXXINCLUDEDIR}/__filesystem
705 FS_HEADERS+=    copy_options.h
706 FS_HEADERS+=    directory_entry.h
707 FS_HEADERS+=    directory_iterator.h
708 FS_HEADERS+=    directory_options.h
709 FS_HEADERS+=    file_status.h
710 FS_HEADERS+=    file_time_type.h
711 FS_HEADERS+=    file_type.h
712 FS_HEADERS+=    filesystem_error.h
713 FS_HEADERS+=    operations.h
714 FS_HEADERS+=    path.h
715 FS_HEADERS+=    path_iterator.h
716 FS_HEADERS+=    perm_options.h
717 FS_HEADERS+=    perms.h
718 FS_HEADERS+=    recursive_directory_iterator.h
719 FS_HEADERS+=    space_info.h
720 FS_HEADERS+=    u8path.h
721 .for hdr in ${FS_HEADERS}
722 FS+=            ${HDRDIR}/__filesystem/${hdr}
723 .endfor
724
725 INCSGROUPS+=    FMT
726 FMTDIR=         ${CXXINCLUDEDIR}/__format
727 FMT_HEADERS+=   buffer.h
728 FMT_HEADERS+=   concepts.h
729 FMT_HEADERS+=   container_adaptor.h
730 FMT_HEADERS+=   enable_insertable.h
731 FMT_HEADERS+=   escaped_output_table.h
732 FMT_HEADERS+=   extended_grapheme_cluster_table.h
733 FMT_HEADERS+=   format_arg.h
734 FMT_HEADERS+=   format_arg_store.h
735 FMT_HEADERS+=   format_args.h
736 FMT_HEADERS+=   format_context.h
737 FMT_HEADERS+=   format_error.h
738 FMT_HEADERS+=   format_functions.h
739 FMT_HEADERS+=   format_fwd.h
740 FMT_HEADERS+=   format_parse_context.h
741 FMT_HEADERS+=   format_string.h
742 FMT_HEADERS+=   format_to_n_result.h
743 FMT_HEADERS+=   formatter.h
744 FMT_HEADERS+=   formatter_bool.h
745 FMT_HEADERS+=   formatter_char.h
746 FMT_HEADERS+=   formatter_floating_point.h
747 FMT_HEADERS+=   formatter_integer.h
748 FMT_HEADERS+=   formatter_integral.h
749 FMT_HEADERS+=   formatter_output.h
750 FMT_HEADERS+=   formatter_pointer.h
751 FMT_HEADERS+=   formatter_string.h
752 FMT_HEADERS+=   formatter_tuple.h
753 FMT_HEADERS+=   parser_std_format_spec.h
754 FMT_HEADERS+=   range_default_formatter.h
755 FMT_HEADERS+=   range_formatter.h
756 FMT_HEADERS+=   unicode.h
757 FMT_HEADERS+=   width_estimation_table.h
758 FMT_HEADERS+=   write_escaped.h
759 .for hdr in ${FMT_HEADERS}
760 FMT+=           ${HDRDIR}/__format/${hdr}
761 .endfor
762
763 INCSGROUPS+=    FUN
764 FUNDIR=         ${CXXINCLUDEDIR}/__functional
765 FUN_HEADERS+=   binary_function.h
766 FUN_HEADERS+=   binary_negate.h
767 FUN_HEADERS+=   bind.h
768 FUN_HEADERS+=   bind_back.h
769 FUN_HEADERS+=   bind_front.h
770 FUN_HEADERS+=   binder1st.h
771 FUN_HEADERS+=   binder2nd.h
772 FUN_HEADERS+=   boyer_moore_searcher.h
773 FUN_HEADERS+=   compose.h
774 FUN_HEADERS+=   default_searcher.h
775 FUN_HEADERS+=   function.h
776 FUN_HEADERS+=   hash.h
777 FUN_HEADERS+=   identity.h
778 FUN_HEADERS+=   invoke.h
779 FUN_HEADERS+=   is_transparent.h
780 FUN_HEADERS+=   mem_fn.h
781 FUN_HEADERS+=   mem_fun_ref.h
782 FUN_HEADERS+=   not_fn.h
783 FUN_HEADERS+=   operations.h
784 FUN_HEADERS+=   perfect_forward.h
785 FUN_HEADERS+=   pointer_to_binary_function.h
786 FUN_HEADERS+=   pointer_to_unary_function.h
787 FUN_HEADERS+=   ranges_operations.h
788 FUN_HEADERS+=   reference_wrapper.h
789 FUN_HEADERS+=   unary_function.h
790 FUN_HEADERS+=   unary_negate.h
791 FUN_HEADERS+=   weak_result_type.h
792 .for hdr in ${FUN_HEADERS}
793 FUN+=           ${HDRDIR}/__functional/${hdr}
794 .endfor
795
796 INCSGROUPS+=    FWD
797 FWDDIR=         ${CXXINCLUDEDIR}/__fwd
798 FWD_HEADERS+=   array.h
799 FWD_HEADERS+=   bit_reference.h
800 FWD_HEADERS+=   fstream.h
801 FWD_HEADERS+=   get.h
802 FWD_HEADERS+=   hash.h
803 FWD_HEADERS+=   ios.h
804 FWD_HEADERS+=   istream.h
805 FWD_HEADERS+=   mdspan.h
806 FWD_HEADERS+=   memory_resource.h
807 FWD_HEADERS+=   ostream.h
808 FWD_HEADERS+=   pair.h
809 FWD_HEADERS+=   span.h
810 FWD_HEADERS+=   sstream.h
811 FWD_HEADERS+=   streambuf.h
812 FWD_HEADERS+=   string.h
813 FWD_HEADERS+=   string_view.h
814 FWD_HEADERS+=   subrange.h
815 FWD_HEADERS+=   tuple.h
816 .for hdr in ${FWD_HEADERS}
817 FWD+=           ${HDRDIR}/__fwd/${hdr}
818 .endfor
819
820 INCSGROUPS+=    IOS
821 IOSDIR=         ${CXXINCLUDEDIR}/__ios
822 IOS_HEADERS+=   fpos.h
823 .for hdr in ${IOS_HEADERS}
824 IOS+=           ${HDRDIR}/__ios/${hdr}
825 .endfor
826
827 INCSGROUPS+=    IT
828 ITDIR=          ${CXXINCLUDEDIR}/__iterator
829 IT_HEADERS+=    access.h
830 IT_HEADERS+=    advance.h
831 IT_HEADERS+=    back_insert_iterator.h
832 IT_HEADERS+=    bounded_iter.h
833 IT_HEADERS+=    common_iterator.h
834 IT_HEADERS+=    concepts.h
835 IT_HEADERS+=    counted_iterator.h
836 IT_HEADERS+=    cpp17_iterator_concepts.h
837 IT_HEADERS+=    data.h
838 IT_HEADERS+=    default_sentinel.h
839 IT_HEADERS+=    distance.h
840 IT_HEADERS+=    empty.h
841 IT_HEADERS+=    erase_if_container.h
842 IT_HEADERS+=    front_insert_iterator.h
843 IT_HEADERS+=    incrementable_traits.h
844 IT_HEADERS+=    indirectly_comparable.h
845 IT_HEADERS+=    insert_iterator.h
846 IT_HEADERS+=    istream_iterator.h
847 IT_HEADERS+=    istreambuf_iterator.h
848 IT_HEADERS+=    iter_move.h
849 IT_HEADERS+=    iter_swap.h
850 IT_HEADERS+=    iterator.h
851 IT_HEADERS+=    iterator_traits.h
852 IT_HEADERS+=    iterator_with_data.h
853 IT_HEADERS+=    mergeable.h
854 IT_HEADERS+=    move_iterator.h
855 IT_HEADERS+=    move_sentinel.h
856 IT_HEADERS+=    next.h
857 IT_HEADERS+=    ostream_iterator.h
858 IT_HEADERS+=    ostreambuf_iterator.h
859 IT_HEADERS+=    permutable.h
860 IT_HEADERS+=    prev.h
861 IT_HEADERS+=    projected.h
862 IT_HEADERS+=    ranges_iterator_traits.h
863 IT_HEADERS+=    readable_traits.h
864 IT_HEADERS+=    reverse_access.h
865 IT_HEADERS+=    reverse_iterator.h
866 IT_HEADERS+=    segmented_iterator.h
867 IT_HEADERS+=    size.h
868 IT_HEADERS+=    sortable.h
869 IT_HEADERS+=    unreachable_sentinel.h
870 IT_HEADERS+=    wrap_iter.h
871 .for hdr in ${IT_HEADERS}
872 IT+=            ${HDRDIR}/__iterator/${hdr}
873 .endfor
874
875 INCSGROUPS+=    LBA
876 LBADIR=         ${CXXINCLUDEDIR}/__locale_dir/locale_base_api
877 LBA_HEADERS+=   bsd_locale_defaults.h
878 LBA_HEADERS+=   bsd_locale_fallbacks.h
879 LBA_HEADERS+=   locale_guard.h
880 .for hdr in ${LBA_HEADERS}
881 LBA+=           ${HDRDIR}/__locale_dir/locale_base_api/${hdr}
882 .endfor
883
884 INCSGROUPS+=    MAT
885 MATDIR=         ${CXXINCLUDEDIR}/__math
886 MAT_HEADERS+=   abs.h
887 MAT_HEADERS+=   copysign.h
888 MAT_HEADERS+=   error_functions.h
889 MAT_HEADERS+=   exponential_functions.h
890 MAT_HEADERS+=   fdim.h
891 MAT_HEADERS+=   fma.h
892 MAT_HEADERS+=   gamma.h
893 MAT_HEADERS+=   hyperbolic_functions.h
894 MAT_HEADERS+=   hypot.h
895 MAT_HEADERS+=   inverse_hyperbolic_functions.h
896 MAT_HEADERS+=   inverse_trigonometric_functions.h
897 MAT_HEADERS+=   logarithms.h
898 MAT_HEADERS+=   min_max.h
899 MAT_HEADERS+=   modulo.h
900 MAT_HEADERS+=   remainder.h
901 MAT_HEADERS+=   roots.h
902 MAT_HEADERS+=   rounding_functions.h
903 MAT_HEADERS+=   traits.h
904 MAT_HEADERS+=   trigonometric_functions.h
905 .for hdr in ${MAT_HEADERS}
906 MAT+=           ${HDRDIR}/__math/${hdr}
907 .endfor
908
909 INCSGROUPS+=    MDS
910 MDSDIR=         ${CXXINCLUDEDIR}/__mdspan
911 MDS_HEADERS+=   default_accessor.h
912 MDS_HEADERS+=   extents.h
913 MDS_HEADERS+=   layout_left.h
914 MDS_HEADERS+=   layout_right.h
915 MDS_HEADERS+=   layout_stride.h
916 MDS_HEADERS+=   mdspan.h
917 .for hdr in ${MDS_HEADERS}
918 MDS+=           ${HDRDIR}/__mdspan/${hdr}
919 .endfor
920
921 INCSGROUPS+=    MEM
922 MEMDIR=         ${CXXINCLUDEDIR}/__memory
923 MEM_HEADERS+=   addressof.h
924 MEM_HEADERS+=   align.h
925 MEM_HEADERS+=   aligned_alloc.h
926 MEM_HEADERS+=   allocate_at_least.h
927 MEM_HEADERS+=   allocation_guard.h
928 MEM_HEADERS+=   allocator.h
929 MEM_HEADERS+=   allocator_arg_t.h
930 MEM_HEADERS+=   allocator_destructor.h
931 MEM_HEADERS+=   allocator_traits.h
932 MEM_HEADERS+=   assume_aligned.h
933 MEM_HEADERS+=   auto_ptr.h
934 MEM_HEADERS+=   builtin_new_allocator.h
935 MEM_HEADERS+=   compressed_pair.h
936 MEM_HEADERS+=   concepts.h
937 MEM_HEADERS+=   construct_at.h
938 MEM_HEADERS+=   destruct_n.h
939 MEM_HEADERS+=   pointer_traits.h
940 MEM_HEADERS+=   ranges_construct_at.h
941 MEM_HEADERS+=   ranges_uninitialized_algorithms.h
942 MEM_HEADERS+=   raw_storage_iterator.h
943 MEM_HEADERS+=   shared_ptr.h
944 MEM_HEADERS+=   swap_allocator.h
945 MEM_HEADERS+=   temp_value.h
946 MEM_HEADERS+=   temporary_buffer.h
947 MEM_HEADERS+=   uninitialized_algorithms.h
948 MEM_HEADERS+=   unique_ptr.h
949 MEM_HEADERS+=   uses_allocator.h
950 MEM_HEADERS+=   uses_allocator_construction.h
951 MEM_HEADERS+=   voidify.h
952 .for hdr in ${MEM_HEADERS}
953 MEM+=           ${HDRDIR}/__memory/${hdr}
954 .endfor
955
956 INCSGROUPS+=    MER
957 MERDIR=         ${CXXINCLUDEDIR}/__memory_resource
958 MER_HEADERS+=   memory_resource.h
959 MER_HEADERS+=   monotonic_buffer_resource.h
960 MER_HEADERS+=   polymorphic_allocator.h
961 MER_HEADERS+=   pool_options.h
962 MER_HEADERS+=   synchronized_pool_resource.h
963 MER_HEADERS+=   unsynchronized_pool_resource.h
964 .for hdr in ${MER_HEADERS}
965 MER+=           ${HDRDIR}/__memory_resource/${hdr}
966 .endfor
967
968 INCSGROUPS+=    MUT
969 MUTDIR=         ${CXXINCLUDEDIR}/__mutex
970 MUT_HEADERS+=   lock_guard.h
971 MUT_HEADERS+=   mutex.h
972 MUT_HEADERS+=   once_flag.h
973 MUT_HEADERS+=   tag_types.h
974 MUT_HEADERS+=   unique_lock.h
975 .for hdr in ${MUT_HEADERS}
976 MUT+=           ${HDRDIR}/__mutex/${hdr}
977 .endfor
978
979 INCSGROUPS+=    NUM
980 NUMDIR=         ${CXXINCLUDEDIR}/__numeric
981 NUM_HEADERS+=   accumulate.h
982 NUM_HEADERS+=   adjacent_difference.h
983 NUM_HEADERS+=   exclusive_scan.h
984 NUM_HEADERS+=   gcd_lcm.h
985 NUM_HEADERS+=   inclusive_scan.h
986 NUM_HEADERS+=   inner_product.h
987 NUM_HEADERS+=   iota.h
988 NUM_HEADERS+=   midpoint.h
989 NUM_HEADERS+=   partial_sum.h
990 NUM_HEADERS+=   pstl_reduce.h
991 NUM_HEADERS+=   pstl_transform_reduce.h
992 NUM_HEADERS+=   reduce.h
993 NUM_HEADERS+=   saturation_arithmetic.h
994 NUM_HEADERS+=   transform_exclusive_scan.h
995 NUM_HEADERS+=   transform_inclusive_scan.h
996 NUM_HEADERS+=   transform_reduce.h
997 .for hdr in ${NUM_HEADERS}
998 NUM+=           ${HDRDIR}/__numeric/${hdr}
999 .endfor
1000
1001 INCSGROUPS+=    RND
1002 RNDDIR=         ${CXXINCLUDEDIR}/__random
1003 RND_HEADERS+=   bernoulli_distribution.h
1004 RND_HEADERS+=   binomial_distribution.h
1005 RND_HEADERS+=   cauchy_distribution.h
1006 RND_HEADERS+=   chi_squared_distribution.h
1007 RND_HEADERS+=   clamp_to_integral.h
1008 RND_HEADERS+=   default_random_engine.h
1009 RND_HEADERS+=   discard_block_engine.h
1010 RND_HEADERS+=   discrete_distribution.h
1011 RND_HEADERS+=   exponential_distribution.h
1012 RND_HEADERS+=   extreme_value_distribution.h
1013 RND_HEADERS+=   fisher_f_distribution.h
1014 RND_HEADERS+=   gamma_distribution.h
1015 RND_HEADERS+=   generate_canonical.h
1016 RND_HEADERS+=   geometric_distribution.h
1017 RND_HEADERS+=   independent_bits_engine.h
1018 RND_HEADERS+=   is_seed_sequence.h
1019 RND_HEADERS+=   is_valid.h
1020 RND_HEADERS+=   knuth_b.h
1021 RND_HEADERS+=   linear_congruential_engine.h
1022 RND_HEADERS+=   log2.h
1023 RND_HEADERS+=   lognormal_distribution.h
1024 RND_HEADERS+=   mersenne_twister_engine.h
1025 RND_HEADERS+=   negative_binomial_distribution.h
1026 RND_HEADERS+=   normal_distribution.h
1027 RND_HEADERS+=   piecewise_constant_distribution.h
1028 RND_HEADERS+=   piecewise_linear_distribution.h
1029 RND_HEADERS+=   poisson_distribution.h
1030 RND_HEADERS+=   random_device.h
1031 RND_HEADERS+=   ranlux.h
1032 RND_HEADERS+=   seed_seq.h
1033 RND_HEADERS+=   shuffle_order_engine.h
1034 RND_HEADERS+=   student_t_distribution.h
1035 RND_HEADERS+=   subtract_with_carry_engine.h
1036 RND_HEADERS+=   uniform_int_distribution.h
1037 RND_HEADERS+=   uniform_random_bit_generator.h
1038 RND_HEADERS+=   uniform_real_distribution.h
1039 RND_HEADERS+=   weibull_distribution.h
1040 .for hdr in ${RND_HEADERS}
1041 RND+=           ${HDRDIR}/__random/${hdr}
1042 .endfor
1043
1044 INCSGROUPS+=    RNG
1045 RNGDIR=         ${CXXINCLUDEDIR}/__ranges
1046 RNG_HEADERS+=   access.h
1047 RNG_HEADERS+=   all.h
1048 RNG_HEADERS+=   as_rvalue_view.h
1049 RNG_HEADERS+=   chunk_by_view.h
1050 RNG_HEADERS+=   common_view.h
1051 RNG_HEADERS+=   concepts.h
1052 RNG_HEADERS+=   container_compatible_range.h
1053 RNG_HEADERS+=   counted.h
1054 RNG_HEADERS+=   dangling.h
1055 RNG_HEADERS+=   data.h
1056 RNG_HEADERS+=   drop_view.h
1057 RNG_HEADERS+=   drop_while_view.h
1058 RNG_HEADERS+=   elements_view.h
1059 RNG_HEADERS+=   empty.h
1060 RNG_HEADERS+=   empty_view.h
1061 RNG_HEADERS+=   enable_borrowed_range.h
1062 RNG_HEADERS+=   enable_view.h
1063 RNG_HEADERS+=   filter_view.h
1064 RNG_HEADERS+=   from_range.h
1065 RNG_HEADERS+=   iota_view.h
1066 RNG_HEADERS+=   istream_view.h
1067 RNG_HEADERS+=   join_view.h
1068 RNG_HEADERS+=   lazy_split_view.h
1069 RNG_HEADERS+=   movable_box.h
1070 RNG_HEADERS+=   non_propagating_cache.h
1071 RNG_HEADERS+=   owning_view.h
1072 RNG_HEADERS+=   range_adaptor.h
1073 RNG_HEADERS+=   rbegin.h
1074 RNG_HEADERS+=   ref_view.h
1075 RNG_HEADERS+=   rend.h
1076 RNG_HEADERS+=   repeat_view.h
1077 RNG_HEADERS+=   reverse_view.h
1078 RNG_HEADERS+=   single_view.h
1079 RNG_HEADERS+=   size.h
1080 RNG_HEADERS+=   split_view.h
1081 RNG_HEADERS+=   subrange.h
1082 RNG_HEADERS+=   take_view.h
1083 RNG_HEADERS+=   take_while_view.h
1084 RNG_HEADERS+=   to.h
1085 RNG_HEADERS+=   transform_view.h
1086 RNG_HEADERS+=   view_interface.h
1087 RNG_HEADERS+=   views.h
1088 RNG_HEADERS+=   zip_view.h
1089 .for hdr in ${RNG_HEADERS}
1090 RNG+=           ${HDRDIR}/__ranges/${hdr}
1091 .endfor
1092
1093 INCSGROUPS+=    STT
1094 STTDIR=         ${CXXINCLUDEDIR}/__stop_token
1095 STT_HEADERS+=   atomic_unique_lock.h
1096 STT_HEADERS+=   intrusive_list_view.h
1097 STT_HEADERS+=   intrusive_shared_ptr.h
1098 STT_HEADERS+=   stop_callback.h
1099 STT_HEADERS+=   stop_source.h
1100 STT_HEADERS+=   stop_state.h
1101 STT_HEADERS+=   stop_token.h
1102 .for hdr in ${STT_HEADERS}
1103 STT+=           ${HDRDIR}/__stop_token/${hdr}
1104 .endfor
1105
1106 INCSGROUPS+=    STR
1107 STRDIR=         ${CXXINCLUDEDIR}/__string
1108 STR_HEADERS+=   char_traits.h
1109 STR_HEADERS+=   constexpr_c_functions.h
1110 STR_HEADERS+=   extern_template_lists.h
1111 .for hdr in ${STR_HEADERS}
1112 STR+=           ${HDRDIR}/__string/${hdr}
1113 .endfor
1114
1115 INCSGROUPS+=    SER
1116 SERDIR=         ${CXXINCLUDEDIR}/__system_error
1117 SER_HEADERS+=   errc.h
1118 SER_HEADERS+=   error_category.h
1119 SER_HEADERS+=   error_code.h
1120 SER_HEADERS+=   error_condition.h
1121 SER_HEADERS+=   system_error.h
1122 .for hdr in ${SER_HEADERS}
1123 SER+=           ${HDRDIR}/__system_error/${hdr}
1124 .endfor
1125
1126 INCSGROUPS+=    THR
1127 THRDIR=         ${CXXINCLUDEDIR}/__thread
1128 THR_HEADERS+=   formatter.h
1129 THR_HEADERS+=   id.h
1130 THR_HEADERS+=   jthread.h
1131 THR_HEADERS+=   poll_with_backoff.h
1132 THR_HEADERS+=   this_thread.h
1133 THR_HEADERS+=   thread.h
1134 THR_HEADERS+=   timed_backoff_policy.h
1135 .for hdr in ${THR_HEADERS}
1136 THR+=           ${HDRDIR}/__thread/${hdr}
1137 .endfor
1138
1139 INCSGROUPS+=    TUP
1140 TUPDIR=         ${CXXINCLUDEDIR}/__tuple
1141 TUP_HEADERS+=   make_tuple_types.h
1142 TUP_HEADERS+=   pair_like.h
1143 TUP_HEADERS+=   sfinae_helpers.h
1144 TUP_HEADERS+=   tuple_element.h
1145 TUP_HEADERS+=   tuple_indices.h
1146 TUP_HEADERS+=   tuple_like.h
1147 TUP_HEADERS+=   tuple_like_ext.h
1148 TUP_HEADERS+=   tuple_size.h
1149 TUP_HEADERS+=   tuple_types.h
1150 .for hdr in ${TUP_HEADERS}
1151 TUP+=           ${HDRDIR}/__tuple/${hdr}
1152 .endfor
1153
1154 INCSGROUPS+=    TTR
1155 TTRDIR=         ${CXXINCLUDEDIR}/__type_traits
1156 TTR_HEADERS+=   add_const.h
1157 TTR_HEADERS+=   add_cv.h
1158 TTR_HEADERS+=   add_lvalue_reference.h
1159 TTR_HEADERS+=   add_pointer.h
1160 TTR_HEADERS+=   add_rvalue_reference.h
1161 TTR_HEADERS+=   add_volatile.h
1162 TTR_HEADERS+=   aligned_storage.h
1163 TTR_HEADERS+=   aligned_union.h
1164 TTR_HEADERS+=   alignment_of.h
1165 TTR_HEADERS+=   apply_cv.h
1166 TTR_HEADERS+=   can_extract_key.h
1167 TTR_HEADERS+=   common_reference.h
1168 TTR_HEADERS+=   common_type.h
1169 TTR_HEADERS+=   conditional.h
1170 TTR_HEADERS+=   conjunction.h
1171 TTR_HEADERS+=   copy_cv.h
1172 TTR_HEADERS+=   copy_cvref.h
1173 TTR_HEADERS+=   datasizeof.h
1174 TTR_HEADERS+=   decay.h
1175 TTR_HEADERS+=   dependent_type.h
1176 TTR_HEADERS+=   disjunction.h
1177 TTR_HEADERS+=   enable_if.h
1178 TTR_HEADERS+=   extent.h
1179 TTR_HEADERS+=   has_unique_object_representation.h
1180 TTR_HEADERS+=   has_virtual_destructor.h
1181 TTR_HEADERS+=   integral_constant.h
1182 TTR_HEADERS+=   invoke.h
1183 TTR_HEADERS+=   is_abstract.h
1184 TTR_HEADERS+=   is_aggregate.h
1185 TTR_HEADERS+=   is_allocator.h
1186 TTR_HEADERS+=   is_always_bitcastable.h
1187 TTR_HEADERS+=   is_arithmetic.h
1188 TTR_HEADERS+=   is_array.h
1189 TTR_HEADERS+=   is_assignable.h
1190 TTR_HEADERS+=   is_base_of.h
1191 TTR_HEADERS+=   is_bounded_array.h
1192 TTR_HEADERS+=   is_callable.h
1193 TTR_HEADERS+=   is_char_like_type.h
1194 TTR_HEADERS+=   is_class.h
1195 TTR_HEADERS+=   is_compound.h
1196 TTR_HEADERS+=   is_const.h
1197 TTR_HEADERS+=   is_constant_evaluated.h
1198 TTR_HEADERS+=   is_constructible.h
1199 TTR_HEADERS+=   is_convertible.h
1200 TTR_HEADERS+=   is_copy_assignable.h
1201 TTR_HEADERS+=   is_copy_constructible.h
1202 TTR_HEADERS+=   is_core_convertible.h
1203 TTR_HEADERS+=   is_default_constructible.h
1204 TTR_HEADERS+=   is_destructible.h
1205 TTR_HEADERS+=   is_empty.h
1206 TTR_HEADERS+=   is_enum.h
1207 TTR_HEADERS+=   is_equality_comparable.h
1208 TTR_HEADERS+=   is_execution_policy.h
1209 TTR_HEADERS+=   is_final.h
1210 TTR_HEADERS+=   is_floating_point.h
1211 TTR_HEADERS+=   is_function.h
1212 TTR_HEADERS+=   is_fundamental.h
1213 TTR_HEADERS+=   is_implicitly_default_constructible.h
1214 TTR_HEADERS+=   is_integral.h
1215 TTR_HEADERS+=   is_literal_type.h
1216 TTR_HEADERS+=   is_member_function_pointer.h
1217 TTR_HEADERS+=   is_member_object_pointer.h
1218 TTR_HEADERS+=   is_member_pointer.h
1219 TTR_HEADERS+=   is_move_assignable.h
1220 TTR_HEADERS+=   is_move_constructible.h
1221 TTR_HEADERS+=   is_nothrow_assignable.h
1222 TTR_HEADERS+=   is_nothrow_constructible.h
1223 TTR_HEADERS+=   is_nothrow_convertible.h
1224 TTR_HEADERS+=   is_nothrow_copy_assignable.h
1225 TTR_HEADERS+=   is_nothrow_copy_constructible.h
1226 TTR_HEADERS+=   is_nothrow_default_constructible.h
1227 TTR_HEADERS+=   is_nothrow_destructible.h
1228 TTR_HEADERS+=   is_nothrow_move_assignable.h
1229 TTR_HEADERS+=   is_nothrow_move_constructible.h
1230 TTR_HEADERS+=   is_null_pointer.h
1231 TTR_HEADERS+=   is_object.h
1232 TTR_HEADERS+=   is_pod.h
1233 TTR_HEADERS+=   is_pointer.h
1234 TTR_HEADERS+=   is_polymorphic.h
1235 TTR_HEADERS+=   is_primary_template.h
1236 TTR_HEADERS+=   is_reference.h
1237 TTR_HEADERS+=   is_reference_wrapper.h
1238 TTR_HEADERS+=   is_referenceable.h
1239 TTR_HEADERS+=   is_same.h
1240 TTR_HEADERS+=   is_scalar.h
1241 TTR_HEADERS+=   is_scoped_enum.h
1242 TTR_HEADERS+=   is_signed.h
1243 TTR_HEADERS+=   is_signed_integer.h
1244 TTR_HEADERS+=   is_specialization.h
1245 TTR_HEADERS+=   is_standard_layout.h
1246 TTR_HEADERS+=   is_swappable.h
1247 TTR_HEADERS+=   is_trivial.h
1248 TTR_HEADERS+=   is_trivially_assignable.h
1249 TTR_HEADERS+=   is_trivially_constructible.h
1250 TTR_HEADERS+=   is_trivially_copy_assignable.h
1251 TTR_HEADERS+=   is_trivially_copy_constructible.h
1252 TTR_HEADERS+=   is_trivially_copyable.h
1253 TTR_HEADERS+=   is_trivially_default_constructible.h
1254 TTR_HEADERS+=   is_trivially_destructible.h
1255 TTR_HEADERS+=   is_trivially_lexicographically_comparable.h
1256 TTR_HEADERS+=   is_trivially_move_assignable.h
1257 TTR_HEADERS+=   is_trivially_move_constructible.h
1258 TTR_HEADERS+=   is_unbounded_array.h
1259 TTR_HEADERS+=   is_union.h
1260 TTR_HEADERS+=   is_unsigned.h
1261 TTR_HEADERS+=   is_unsigned_integer.h
1262 TTR_HEADERS+=   is_valid_expansion.h
1263 TTR_HEADERS+=   is_void.h
1264 TTR_HEADERS+=   is_volatile.h
1265 TTR_HEADERS+=   lazy.h
1266 TTR_HEADERS+=   make_32_64_or_128_bit.h
1267 TTR_HEADERS+=   make_const_lvalue_ref.h
1268 TTR_HEADERS+=   make_signed.h
1269 TTR_HEADERS+=   make_unsigned.h
1270 TTR_HEADERS+=   maybe_const.h
1271 TTR_HEADERS+=   nat.h
1272 TTR_HEADERS+=   negation.h
1273 TTR_HEADERS+=   noexcept_move_assign_container.h
1274 TTR_HEADERS+=   operation_traits.h
1275 TTR_HEADERS+=   promote.h
1276 TTR_HEADERS+=   rank.h
1277 TTR_HEADERS+=   remove_all_extents.h
1278 TTR_HEADERS+=   remove_const.h
1279 TTR_HEADERS+=   remove_const_ref.h
1280 TTR_HEADERS+=   remove_cv.h
1281 TTR_HEADERS+=   remove_cvref.h
1282 TTR_HEADERS+=   remove_extent.h
1283 TTR_HEADERS+=   remove_pointer.h
1284 TTR_HEADERS+=   remove_reference.h
1285 TTR_HEADERS+=   remove_volatile.h
1286 TTR_HEADERS+=   result_of.h
1287 TTR_HEADERS+=   strip_signature.h
1288 TTR_HEADERS+=   type_identity.h
1289 TTR_HEADERS+=   type_list.h
1290 TTR_HEADERS+=   underlying_type.h
1291 TTR_HEADERS+=   unwrap_ref.h
1292 TTR_HEADERS+=   void_t.h
1293 .for hdr in ${TTR_HEADERS}
1294 TTR+=           ${HDRDIR}/__type_traits/${hdr}
1295 .endfor
1296
1297 INCSGROUPS+=    UTL
1298 UTLDIR=         ${CXXINCLUDEDIR}/__utility
1299 UTL_HEADERS+=   as_const.h
1300 UTL_HEADERS+=   as_lvalue.h
1301 UTL_HEADERS+=   auto_cast.h
1302 UTL_HEADERS+=   cmp.h
1303 UTL_HEADERS+=   convert_to_integral.h
1304 UTL_HEADERS+=   declval.h
1305 UTL_HEADERS+=   empty.h
1306 UTL_HEADERS+=   exception_guard.h
1307 UTL_HEADERS+=   exchange.h
1308 UTL_HEADERS+=   forward.h
1309 UTL_HEADERS+=   forward_like.h
1310 UTL_HEADERS+=   in_place.h
1311 UTL_HEADERS+=   integer_sequence.h
1312 UTL_HEADERS+=   is_pointer_in_range.h
1313 UTL_HEADERS+=   move.h
1314 UTL_HEADERS+=   no_destroy.h
1315 UTL_HEADERS+=   pair.h
1316 UTL_HEADERS+=   piecewise_construct.h
1317 UTL_HEADERS+=   priority_tag.h
1318 UTL_HEADERS+=   rel_ops.h
1319 UTL_HEADERS+=   small_buffer.h
1320 UTL_HEADERS+=   swap.h
1321 UTL_HEADERS+=   to_underlying.h
1322 UTL_HEADERS+=   unreachable.h
1323 .for hdr in ${UTL_HEADERS}
1324 UTL+=           ${HDRDIR}/__utility/${hdr}
1325 .endfor
1326
1327 INCSGROUPS+=    VAR
1328 VARDIR= ${CXXINCLUDEDIR}/__variant
1329 VAR_HEADERS+=   monostate.h
1330 .for hdr in ${VAR_HEADERS}
1331 VAR+=           ${HDRDIR}/__variant/${hdr}
1332 .endfor
1333
1334 INCSGROUPS+=    EXP
1335 EXPDIR=         ${CXXINCLUDEDIR}/experimental
1336 EXP_HEADERS+=   __config
1337 EXP_HEADERS+=   __memory
1338 EXP_HEADERS+=   iterator
1339 EXP_HEADERS+=   memory
1340 EXP_HEADERS+=   propagate_const
1341 EXP_HEADERS+=   simd
1342 EXP_HEADERS+=   type_traits
1343 EXP_HEADERS+=   utility
1344 .for hdr in ${EXP_HEADERS}
1345 EXP+=           ${HDRDIR}/experimental/${hdr}
1346 .endfor
1347
1348 INCSGROUPS+=    EXS
1349 EXSDIR=         ${CXXINCLUDEDIR}/experimental/__simd
1350 EXS_HEADERS+=   aligned_tag.h
1351 EXS_HEADERS+=   declaration.h
1352 EXS_HEADERS+=   reference.h
1353 EXS_HEADERS+=   scalar.h
1354 EXS_HEADERS+=   simd.h
1355 EXS_HEADERS+=   simd_mask.h
1356 EXS_HEADERS+=   traits.h
1357 EXS_HEADERS+=   utility.h
1358 EXS_HEADERS+=   vec_ext.h
1359 .for hdr in ${EXS_HEADERS}
1360 EXS+=           ${HDRDIR}/experimental/__simd/${hdr}
1361 .endfor
1362
1363 INCSGROUPS+=    EXT
1364 EXTDIR=         ${CXXINCLUDEDIR}/ext
1365 EXT_HEADERS+=   __hash
1366 EXT_HEADERS+=   hash_map
1367 EXT_HEADERS+=   hash_set
1368 .for hdr in ${EXT_HEADERS}
1369 EXT+=           ${HDRDIR}/ext/${hdr}
1370 .endfor
1371
1372 .include <bsd.lib.mk>