xref: /netbsd-src/external/gpl3/gcc/dist/libstdc++-v3/include/Makefile.in (revision 8feb0f0b7eaff0608f8350bbfa3098827b4bb91b)
1# Makefile.in generated by automake 1.15.1 from Makefile.am.
2# @configure_input@
3
4# Copyright (C) 1994-2017 Free Software Foundation, Inc.
5
6# This Makefile.in is free software; the Free Software Foundation
7# gives unlimited permission to copy and/or distribute it,
8# with or without modifications, as long as this notice is preserved.
9
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
12# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13# PARTICULAR PURPOSE.
14
15@SET_MAKE@
16VPATH = @srcdir@
17am__is_gnu_make = { \
18  if test -z '$(MAKELEVEL)'; then \
19    false; \
20  elif test -n '$(MAKE_HOST)'; then \
21    true; \
22  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
23    true; \
24  else \
25    false; \
26  fi; \
27}
28am__make_running_with_option = \
29  case $${target_option-} in \
30      ?) ;; \
31      *) echo "am__make_running_with_option: internal error: invalid" \
32              "target option '$${target_option-}' specified" >&2; \
33         exit 1;; \
34  esac; \
35  has_opt=no; \
36  sane_makeflags=$$MAKEFLAGS; \
37  if $(am__is_gnu_make); then \
38    sane_makeflags=$$MFLAGS; \
39  else \
40    case $$MAKEFLAGS in \
41      *\\[\ \	]*) \
42        bs=\\; \
43        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
44          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
45    esac; \
46  fi; \
47  skip_next=no; \
48  strip_trailopt () \
49  { \
50    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
51  }; \
52  for flg in $$sane_makeflags; do \
53    test $$skip_next = yes && { skip_next=no; continue; }; \
54    case $$flg in \
55      *=*|--*) continue;; \
56        -*I) strip_trailopt 'I'; skip_next=yes;; \
57      -*I?*) strip_trailopt 'I';; \
58        -*O) strip_trailopt 'O'; skip_next=yes;; \
59      -*O?*) strip_trailopt 'O';; \
60        -*l) strip_trailopt 'l'; skip_next=yes;; \
61      -*l?*) strip_trailopt 'l';; \
62      -[dEDm]) skip_next=yes;; \
63      -[JT]) skip_next=yes;; \
64    esac; \
65    case $$flg in \
66      *$$target_option*) has_opt=yes; break;; \
67    esac; \
68  done; \
69  test $$has_opt = yes
70am__make_dryrun = (target_option=n; $(am__make_running_with_option))
71am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
72pkgdatadir = $(datadir)/@PACKAGE@
73pkgincludedir = $(includedir)/@PACKAGE@
74pkglibdir = $(libdir)/@PACKAGE@
75pkglibexecdir = $(libexecdir)/@PACKAGE@
76am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
77install_sh_DATA = $(install_sh) -c -m 644
78install_sh_PROGRAM = $(install_sh) -c
79install_sh_SCRIPT = $(install_sh) -c
80INSTALL_HEADER = $(INSTALL_DATA)
81transform = $(program_transform_name)
82NORMAL_INSTALL = :
83PRE_INSTALL = :
84POST_INSTALL = :
85NORMAL_UNINSTALL = :
86PRE_UNINSTALL = :
87POST_UNINSTALL = :
88build_triplet = @build@
89host_triplet = @host@
90target_triplet = @target@
91subdir = include
92ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
93am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
94	$(top_srcdir)/../config/enable.m4 \
95	$(top_srcdir)/../config/futex.m4 \
96	$(top_srcdir)/../config/hwcaps.m4 \
97	$(top_srcdir)/../config/iconv.m4 \
98	$(top_srcdir)/../config/lead-dot.m4 \
99	$(top_srcdir)/../config/lib-ld.m4 \
100	$(top_srcdir)/../config/lib-link.m4 \
101	$(top_srcdir)/../config/lib-prefix.m4 \
102	$(top_srcdir)/../config/lthostflags.m4 \
103	$(top_srcdir)/../config/multi.m4 \
104	$(top_srcdir)/../config/no-executables.m4 \
105	$(top_srcdir)/../config/override.m4 \
106	$(top_srcdir)/../config/stdint.m4 \
107	$(top_srcdir)/../config/toolexeclibdir.m4 \
108	$(top_srcdir)/../config/unwind_ipinfo.m4 \
109	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
110	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
111	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/crossconfig.m4 \
112	$(top_srcdir)/linkage.m4 $(top_srcdir)/acinclude.m4 \
113	$(top_srcdir)/../config/gc++filt.m4 \
114	$(top_srcdir)/../config/tls.m4 $(top_srcdir)/../config/gthr.m4 \
115	$(top_srcdir)/../config/cet.m4 $(top_srcdir)/configure.ac
116am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
117	$(ACLOCAL_M4)
118DIST_COMMON = $(srcdir)/Makefile.am
119CONFIG_HEADER = $(top_builddir)/config.h
120CONFIG_CLEAN_FILES =
121CONFIG_CLEAN_VPATH_FILES =
122AM_V_P = $(am__v_P_@AM_V@)
123am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
124am__v_P_0 = false
125am__v_P_1 = :
126AM_V_GEN = $(am__v_GEN_@AM_V@)
127am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
128am__v_GEN_0 = @echo "  GEN     " $@;
129am__v_GEN_1 =
130AM_V_at = $(am__v_at_@AM_V@)
131am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
132am__v_at_0 = @
133am__v_at_1 =
134depcomp =
135am__depfiles_maybe =
136SOURCES =
137am__can_run_installinfo = \
138  case $$AM_UPDATE_INFO_DIR in \
139    n|no|NO) false;; \
140    *) (install-info --version) >/dev/null 2>&1;; \
141  esac
142am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
143ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@
144ACLOCAL = @ACLOCAL@
145ALLOCATOR_H = @ALLOCATOR_H@
146ALLOCATOR_NAME = @ALLOCATOR_NAME@
147AMTAR = @AMTAR@
148AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
149AR = @AR@
150AS = @AS@
151ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
152ATOMIC_FLAGS = @ATOMIC_FLAGS@
153ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
154AUTOCONF = @AUTOCONF@
155AUTOHEADER = @AUTOHEADER@
156AUTOMAKE = @AUTOMAKE@
157AWK = @AWK@
158BASIC_FILE_CC = @BASIC_FILE_CC@
159BASIC_FILE_H = @BASIC_FILE_H@
160CC = @CC@
161CCODECVT_CC = @CCODECVT_CC@
162CCOLLATE_CC = @CCOLLATE_CC@
163CCTYPE_CC = @CCTYPE_CC@
164CFLAGS = @CFLAGS@
165CLOCALE_CC = @CLOCALE_CC@
166CLOCALE_H = @CLOCALE_H@
167CLOCALE_INTERNAL_H = @CLOCALE_INTERNAL_H@
168CMESSAGES_CC = @CMESSAGES_CC@
169CMESSAGES_H = @CMESSAGES_H@
170CMONEY_CC = @CMONEY_CC@
171CNUMERIC_CC = @CNUMERIC_CC@
172CPP = @CPP@
173CPPFLAGS = @CPPFLAGS@
174CPU_DEFINES_SRCDIR = @CPU_DEFINES_SRCDIR@
175CPU_OPT_BITS_RANDOM = @CPU_OPT_BITS_RANDOM@
176CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM@
177CSTDIO_H = @CSTDIO_H@
178CTIME_CC = @CTIME_CC@
179CTIME_H = @CTIME_H@
180CXX = @CXX@
181CXXCPP = @CXXCPP@
182CXXFILT = @CXXFILT@
183CXXFLAGS = @CXXFLAGS@
184CYGPATH_W = @CYGPATH_W@
185C_INCLUDE_DIR = @C_INCLUDE_DIR@
186DBLATEX = @DBLATEX@
187DEBUG_FLAGS = @DEBUG_FLAGS@
188DEFS = @DEFS@
189DOT = @DOT@
190DOXYGEN = @DOXYGEN@
191DSYMUTIL = @DSYMUTIL@
192DUMPBIN = @DUMPBIN@
193ECHO_C = @ECHO_C@
194ECHO_N = @ECHO_N@
195ECHO_T = @ECHO_T@
196EGREP = @EGREP@
197ERROR_CONSTANTS_SRCDIR = @ERROR_CONSTANTS_SRCDIR@
198EXEEXT = @EXEEXT@
199EXTRA_CFLAGS = @EXTRA_CFLAGS@
200EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@
201FGREP = @FGREP@
202GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
203GLIBCXX_LIBS = @GLIBCXX_LIBS@
204GREP = @GREP@
205HWCAP_CFLAGS = @HWCAP_CFLAGS@
206INSTALL = @INSTALL@
207INSTALL_DATA = @INSTALL_DATA@
208INSTALL_PROGRAM = @INSTALL_PROGRAM@
209INSTALL_SCRIPT = @INSTALL_SCRIPT@
210INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
211LD = @LD@
212LDFLAGS = @LDFLAGS@
213LIBICONV = @LIBICONV@
214LIBOBJS = @LIBOBJS@
215LIBS = @LIBS@
216LIBTOOL = @LIBTOOL@
217LIPO = @LIPO@
218LN_S = @LN_S@
219LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
220LTLIBICONV = @LTLIBICONV@
221LTLIBOBJS = @LTLIBOBJS@
222MAINT = @MAINT@
223MAKEINFO = @MAKEINFO@
224MKDIR_P = @MKDIR_P@
225NM = @NM@
226NMEDIT = @NMEDIT@
227OBJDUMP = @OBJDUMP@
228OBJEXT = @OBJEXT@
229OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@
230OPT_LDFLAGS = @OPT_LDFLAGS@
231OS_INC_SRCDIR = @OS_INC_SRCDIR@
232OTOOL = @OTOOL@
233OTOOL64 = @OTOOL64@
234PACKAGE = @PACKAGE@
235PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
236PACKAGE_NAME = @PACKAGE_NAME@
237PACKAGE_STRING = @PACKAGE_STRING@
238PACKAGE_TARNAME = @PACKAGE_TARNAME@
239PACKAGE_URL = @PACKAGE_URL@
240PACKAGE_VERSION = @PACKAGE_VERSION@
241PATH_SEPARATOR = @PATH_SEPARATOR@
242PDFLATEX = @PDFLATEX@
243RANLIB = @RANLIB@
244SECTION_FLAGS = @SECTION_FLAGS@
245SECTION_LDFLAGS = @SECTION_LDFLAGS@
246SED = @SED@
247SET_MAKE = @SET_MAKE@
248SHELL = @SHELL@
249STRIP = @STRIP@
250SYMVER_FILE = @SYMVER_FILE@
251TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@
252USE_NLS = @USE_NLS@
253VERSION = @VERSION@
254VTV_CXXFLAGS = @VTV_CXXFLAGS@
255VTV_CXXLINKFLAGS = @VTV_CXXLINKFLAGS@
256VTV_PCH_CXXFLAGS = @VTV_PCH_CXXFLAGS@
257WARN_FLAGS = @WARN_FLAGS@
258XMLCATALOG = @XMLCATALOG@
259XMLLINT = @XMLLINT@
260XSLTPROC = @XSLTPROC@
261XSL_STYLE_DIR = @XSL_STYLE_DIR@
262abs_builddir = @abs_builddir@
263abs_srcdir = @abs_srcdir@
264abs_top_builddir = @abs_top_builddir@
265abs_top_srcdir = @abs_top_srcdir@
266ac_ct_CC = @ac_ct_CC@
267ac_ct_CXX = @ac_ct_CXX@
268ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
269am__leading_dot = @am__leading_dot@
270am__tar = @am__tar@
271am__untar = @am__untar@
272baseline_dir = @baseline_dir@
273baseline_subdir_switch = @baseline_subdir_switch@
274bindir = @bindir@
275build = @build@
276build_alias = @build_alias@
277build_cpu = @build_cpu@
278build_os = @build_os@
279build_vendor = @build_vendor@
280builddir = @builddir@
281check_msgfmt = @check_msgfmt@
282datadir = @datadir@
283datarootdir = @datarootdir@
284docdir = @docdir@
285dvidir = @dvidir@
286enable_shared = @enable_shared@
287enable_static = @enable_static@
288exec_prefix = @exec_prefix@
289get_gcc_base_ver = @get_gcc_base_ver@
290glibcxx_MOFILES = @glibcxx_MOFILES@
291glibcxx_PCHFLAGS = @glibcxx_PCHFLAGS@
292glibcxx_POFILES = @glibcxx_POFILES@
293glibcxx_builddir = @glibcxx_builddir@
294glibcxx_compiler_pic_flag = @glibcxx_compiler_pic_flag@
295glibcxx_compiler_shared_flag = @glibcxx_compiler_shared_flag@
296glibcxx_cxx98_abi = @glibcxx_cxx98_abi@
297glibcxx_localedir = @glibcxx_localedir@
298glibcxx_lt_pic_flag = @glibcxx_lt_pic_flag@
299glibcxx_prefixdir = @glibcxx_prefixdir@
300glibcxx_srcdir = @glibcxx_srcdir@
301glibcxx_toolexecdir = @glibcxx_toolexecdir@
302glibcxx_toolexeclibdir = @glibcxx_toolexeclibdir@
303gxx_include_dir = @gxx_include_dir@
304host = @host@
305host_alias = @host_alias@
306host_cpu = @host_cpu@
307host_os = @host_os@
308host_vendor = @host_vendor@
309htmldir = @htmldir@
310includedir = @includedir@
311infodir = @infodir@
312install_sh = @install_sh@
313libdir = @libdir@
314libexecdir = @libexecdir@
315libtool_VERSION = @libtool_VERSION@
316localedir = @localedir@
317localstatedir = @localstatedir@
318lt_host_flags = @lt_host_flags@
319mandir = @mandir@
320mkdir_p = @mkdir_p@
321multi_basedir = @multi_basedir@
322oldincludedir = @oldincludedir@
323pdfdir = @pdfdir@
324port_specific_symbol_files = @port_specific_symbol_files@
325prefix = @prefix@
326program_transform_name = @program_transform_name@
327psdir = @psdir@
328python_mod_dir = @python_mod_dir@
329sbindir = @sbindir@
330sharedstatedir = @sharedstatedir@
331srcdir = @srcdir@
332sysconfdir = @sysconfdir@
333target = @target@
334target_alias = @target_alias@
335target_cpu = @target_cpu@
336target_os = @target_os@
337target_vendor = @target_vendor@
338thread_header = @thread_header@
339top_build_prefix = @top_build_prefix@
340top_builddir = @top_builddir@
341top_srcdir = @top_srcdir@
342toplevel_builddir = @toplevel_builddir@
343toplevel_srcdir = @toplevel_srcdir@
344
345# May be used by various substitution variables.
346gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER)
347MAINT_CHARSET = latin1
348mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
349PWD_COMMAND = $${PWDCMD-pwd}
350STAMP = echo timestamp >
351toolexecdir = $(glibcxx_toolexecdir)
352toolexeclibdir = $(glibcxx_toolexeclibdir)
353@ENABLE_WERROR_FALSE@WERROR_FLAG =
354@ENABLE_WERROR_TRUE@WERROR_FLAG = -Werror
355@ENABLE_EXTERN_TEMPLATE_FALSE@XTEMPLATE_FLAGS =
356@ENABLE_EXTERN_TEMPLATE_TRUE@XTEMPLATE_FLAGS = -fno-implicit-templates
357
358# These bits are all figured out from configure.  Look in acinclude.m4
359# or configure.ac to see how they are set.  See GLIBCXX_EXPORT_FLAGS.
360CONFIG_CXXFLAGS = \
361	$(SECTION_FLAGS) $(HWCAP_CFLAGS) -frandom-seed=$@
362
363WARN_CXXFLAGS = \
364	$(WARN_FLAGS) $(WERROR_FLAG) -fdiagnostics-show-location=once
365
366
367# -I/-D flags to pass when compiling.
368AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS)
369
370# Standard C++ includes.
371std_srcdir = ${glibcxx_srcdir}/include/std
372std_builddir = .
373std_headers = \
374	${std_srcdir}/algorithm \
375	${std_srcdir}/any \
376	${std_srcdir}/array \
377	${std_srcdir}/atomic \
378	${std_srcdir}/bit \
379	${std_srcdir}/bitset \
380	${std_srcdir}/charconv \
381	${std_srcdir}/chrono \
382	${std_srcdir}/codecvt \
383	${std_srcdir}/complex \
384	${std_srcdir}/concepts \
385	${std_srcdir}/condition_variable \
386	${std_srcdir}/coroutine \
387	${std_srcdir}/deque \
388	${std_srcdir}/execution \
389	${std_srcdir}/filesystem \
390	${std_srcdir}/forward_list \
391	${std_srcdir}/fstream \
392	${std_srcdir}/functional \
393	${std_srcdir}/future \
394	${std_srcdir}/iomanip \
395	${std_srcdir}/ios \
396	${std_srcdir}/iosfwd \
397	${std_srcdir}/iostream \
398	${std_srcdir}/istream \
399	${std_srcdir}/iterator \
400	${std_srcdir}/limits \
401	${std_srcdir}/list \
402	${std_srcdir}/locale \
403	${std_srcdir}/map \
404	${std_srcdir}/memory \
405	${std_srcdir}/memory_resource \
406	${std_srcdir}/mutex \
407	${std_srcdir}/numbers \
408	${std_srcdir}/numeric \
409	${std_srcdir}/optional \
410	${std_srcdir}/ostream \
411	${std_srcdir}/queue \
412	${std_srcdir}/random \
413	${std_srcdir}/ranges \
414	${std_srcdir}/ratio \
415	${std_srcdir}/regex \
416	${std_srcdir}/scoped_allocator \
417	${std_srcdir}/set \
418	${std_srcdir}/shared_mutex \
419	${std_srcdir}/span \
420	${std_srcdir}/sstream \
421	${std_srcdir}/stack \
422	${std_srcdir}/stdexcept \
423	${std_srcdir}/stop_token \
424	${std_srcdir}/streambuf \
425	${std_srcdir}/string \
426	${std_srcdir}/string_view \
427	${std_srcdir}/system_error \
428	${std_srcdir}/thread \
429	${std_srcdir}/tuple \
430	${std_srcdir}/typeindex \
431	${std_srcdir}/type_traits \
432	${std_srcdir}/unordered_map \
433	${std_srcdir}/unordered_set \
434	${std_srcdir}/utility \
435	${std_srcdir}/valarray \
436	${std_srcdir}/variant \
437	${std_srcdir}/vector \
438	${std_srcdir}/version
439
440bits_srcdir = ${glibcxx_srcdir}/include/bits
441bits_builddir = ./bits
442bits_headers = \
443	${bits_srcdir}/algorithmfwd.h \
444	${bits_srcdir}/alloc_traits.h \
445	${bits_srcdir}/allocated_ptr.h \
446	${bits_srcdir}/allocator.h \
447	${bits_srcdir}/atomic_base.h \
448	${bits_srcdir}/atomic_futex.h \
449	${bits_srcdir}/basic_ios.h \
450	${bits_srcdir}/basic_ios.tcc \
451	${bits_srcdir}/basic_string.h \
452	${bits_srcdir}/basic_string.tcc \
453	${bits_srcdir}/boost_concept_check.h \
454	${bits_srcdir}/c++0x_warning.h \
455	${bits_srcdir}/char_traits.h \
456	${bits_srcdir}/charconv.h \
457	${bits_srcdir}/codecvt.h \
458	${bits_srcdir}/concept_check.h \
459	${bits_srcdir}/cpp_type_traits.h \
460	${bits_srcdir}/deque.tcc \
461	${bits_srcdir}/enable_special_members.h \
462	${bits_srcdir}/erase_if.h \
463	${bits_srcdir}/forward_list.h \
464	${bits_srcdir}/forward_list.tcc \
465	${bits_srcdir}/fs_dir.h \
466	${bits_srcdir}/fs_fwd.h \
467	${bits_srcdir}/fs_ops.h \
468	${bits_srcdir}/fs_path.h \
469	${bits_srcdir}/fstream.tcc \
470	${bits_srcdir}/functexcept.h \
471	${bits_srcdir}/functional_hash.h \
472	${bits_srcdir}/gslice.h \
473	${bits_srcdir}/gslice_array.h \
474	${bits_srcdir}/hashtable.h \
475	${bits_srcdir}/hashtable_policy.h \
476	${bits_srcdir}/indirect_array.h \
477	${bits_srcdir}/invoke.h \
478	${bits_srcdir}/ios_base.h \
479	${bits_srcdir}/istream.tcc \
480	${bits_srcdir}/iterator_concepts.h \
481	${bits_srcdir}/list.tcc \
482	${bits_srcdir}/locale_classes.h \
483	${bits_srcdir}/locale_classes.tcc \
484	${bits_srcdir}/locale_conv.h \
485	${bits_srcdir}/locale_facets.h \
486	${bits_srcdir}/locale_facets.tcc \
487	${bits_srcdir}/locale_facets_nonio.h \
488	${bits_srcdir}/locale_facets_nonio.tcc \
489	${bits_srcdir}/localefwd.h \
490	${bits_srcdir}/mask_array.h \
491	${bits_srcdir}/memoryfwd.h \
492	${bits_srcdir}/move.h \
493	${bits_srcdir}/node_handle.h \
494	${bits_srcdir}/ostream.tcc \
495	${bits_srcdir}/ostream_insert.h \
496	${bits_srcdir}/parse_numbers.h \
497	${bits_srcdir}/postypes.h \
498	${bits_srcdir}/predefined_ops.h \
499	${bits_srcdir}/ptr_traits.h \
500	${bits_srcdir}/quoted_string.h \
501	${bits_srcdir}/random.h \
502	${bits_srcdir}/random.tcc \
503	${bits_srcdir}/range_access.h \
504	${bits_srcdir}/range_cmp.h \
505	${bits_srcdir}/ranges_algobase.h \
506	${bits_srcdir}/ranges_algo.h \
507	${bits_srcdir}/ranges_uninitialized.h \
508	${bits_srcdir}/refwrap.h \
509	${bits_srcdir}/regex.h \
510	${bits_srcdir}/regex.tcc \
511	${bits_srcdir}/regex_constants.h \
512	${bits_srcdir}/regex_error.h \
513	${bits_srcdir}/regex_scanner.h \
514	${bits_srcdir}/regex_scanner.tcc \
515	${bits_srcdir}/regex_automaton.h \
516	${bits_srcdir}/regex_automaton.tcc \
517	${bits_srcdir}/regex_compiler.h \
518	${bits_srcdir}/regex_compiler.tcc \
519	${bits_srcdir}/regex_executor.h \
520	${bits_srcdir}/regex_executor.tcc \
521	${bits_srcdir}/shared_ptr.h \
522	${bits_srcdir}/shared_ptr_atomic.h \
523	${bits_srcdir}/shared_ptr_base.h \
524	${bits_srcdir}/slice_array.h \
525	${bits_srcdir}/specfun.h \
526	${bits_srcdir}/sstream.tcc \
527	${bits_srcdir}/std_abs.h \
528	${bits_srcdir}/std_function.h \
529	${bits_srcdir}/std_mutex.h \
530	${bits_srcdir}/stl_algo.h \
531	${bits_srcdir}/stl_algobase.h \
532	${bits_srcdir}/stl_bvector.h \
533	${bits_srcdir}/stl_construct.h \
534	${bits_srcdir}/stl_deque.h \
535	${bits_srcdir}/stl_function.h \
536	${bits_srcdir}/stl_heap.h \
537	${bits_srcdir}/stl_iterator.h \
538	${bits_srcdir}/stl_iterator_base_funcs.h \
539	${bits_srcdir}/stl_iterator_base_types.h \
540	${bits_srcdir}/stl_list.h \
541	${bits_srcdir}/stl_map.h \
542	${bits_srcdir}/stl_multimap.h \
543	${bits_srcdir}/stl_multiset.h \
544	${bits_srcdir}/stl_numeric.h \
545	${bits_srcdir}/stl_pair.h \
546	${bits_srcdir}/stl_queue.h \
547	${bits_srcdir}/stl_raw_storage_iter.h \
548	${bits_srcdir}/stl_relops.h \
549	${bits_srcdir}/stl_set.h \
550	${bits_srcdir}/stl_stack.h \
551	${bits_srcdir}/stl_tempbuf.h \
552	${bits_srcdir}/stl_tree.h \
553	${bits_srcdir}/stl_uninitialized.h \
554	${bits_srcdir}/stl_vector.h \
555	${bits_srcdir}/stream_iterator.h \
556	${bits_srcdir}/streambuf_iterator.h \
557	${bits_srcdir}/streambuf.tcc \
558	${bits_srcdir}/stringfwd.h \
559	${bits_srcdir}/string_view.tcc \
560	${bits_srcdir}/uniform_int_dist.h \
561	${bits_srcdir}/unique_lock.h \
562	${bits_srcdir}/unique_ptr.h \
563	${bits_srcdir}/unordered_map.h \
564	${bits_srcdir}/unordered_set.h \
565	${bits_srcdir}/uses_allocator.h \
566	${bits_srcdir}/valarray_array.h \
567	${bits_srcdir}/valarray_array.tcc \
568	${bits_srcdir}/valarray_before.h \
569	${bits_srcdir}/valarray_after.h \
570	${bits_srcdir}/vector.tcc
571
572bits_host_headers = \
573	${glibcxx_srcdir}/${CPU_OPT_BITS_RANDOM}
574
575bits_sup_srcdir = ${glibcxx_srcdir}/libsupc++
576bits_sup_headers = \
577	${bits_sup_srcdir}/atomic_lockfree_defines.h \
578	${bits_sup_srcdir}/cxxabi_forced.h \
579	${bits_sup_srcdir}/cxxabi_init_exception.h \
580	${bits_sup_srcdir}/exception.h \
581	${bits_sup_srcdir}/exception_defines.h \
582	${bits_sup_srcdir}/exception_ptr.h \
583	${bits_sup_srcdir}/hash_bytes.h \
584	${bits_sup_srcdir}/nested_exception.h
585
586
587# C++17 Parallel Algorithm Includes.
588pstl_srcdir = ${glibcxx_srcdir}/include/pstl
589pstl_builddir = ./pstl
590pstl_headers = \
591	${pstl_srcdir}/algorithm_fwd.h \
592	${pstl_srcdir}/algorithm_impl.h \
593	${pstl_srcdir}/execution_defs.h \
594	${pstl_srcdir}/execution_impl.h \
595	${pstl_srcdir}/glue_algorithm_defs.h \
596	${pstl_srcdir}/glue_algorithm_impl.h \
597	${pstl_srcdir}/glue_execution_defs.h \
598	${pstl_srcdir}/glue_memory_defs.h \
599	${pstl_srcdir}/glue_memory_impl.h \
600	${pstl_srcdir}/glue_numeric_defs.h \
601	${pstl_srcdir}/glue_numeric_impl.h \
602	${pstl_srcdir}/memory_impl.h \
603	${pstl_srcdir}/numeric_fwd.h \
604	${pstl_srcdir}/numeric_impl.h \
605	${pstl_srcdir}/parallel_backend.h \
606	${pstl_srcdir}/parallel_backend_tbb.h \
607	${pstl_srcdir}/parallel_backend_serial.h \
608	${pstl_srcdir}/parallel_backend_utils.h \
609	${pstl_srcdir}/parallel_impl.h \
610	${pstl_srcdir}/pstl_config.h \
611	${pstl_srcdir}/unseq_backend_simd.h \
612	${pstl_srcdir}/utils.h
613
614backward_srcdir = ${glibcxx_srcdir}/include/backward
615backward_builddir = ./backward
616backward_headers = \
617	${backward_srcdir}/auto_ptr.h \
618	${backward_srcdir}/backward_warning.h \
619	${backward_srcdir}/binders.h \
620	${backward_srcdir}/hash_map \
621	${backward_srcdir}/hash_set \
622	${backward_srcdir}/hash_fun.h \
623	${backward_srcdir}/hashtable.h \
624	${backward_srcdir}/strstream
625
626pb_srcdir = ${glibcxx_srcdir}/include/ext/pb_ds
627pb_builddir = ./ext/pb_ds
628pb_subdirs = \
629	${pb_builddir}/detail \
630	${pb_builddir}/detail/pairing_heap_ \
631	${pb_builddir}/detail/splay_tree_ \
632	${pb_builddir}/detail/list_update_map_ \
633	${pb_builddir}/detail/branch_policy \
634	${pb_builddir}/detail/trie_policy \
635	${pb_builddir}/detail/gp_hash_table_map_ \
636	${pb_builddir}/detail/tree_policy \
637	${pb_builddir}/detail/binomial_heap_base_ \
638	${pb_builddir}/detail/resize_policy \
639	${pb_builddir}/detail/bin_search_tree_ \
640	${pb_builddir}/detail/binomial_heap_ \
641	${pb_builddir}/detail/thin_heap_ \
642	${pb_builddir}/detail/pat_trie_ \
643	${pb_builddir}/detail/cc_hash_table_map_ \
644	${pb_builddir}/detail/rc_binomial_heap_ \
645	${pb_builddir}/detail/left_child_next_sibling_heap_ \
646	${pb_builddir}/detail/unordered_iterator \
647	${pb_builddir}/detail/binary_heap_ \
648	${pb_builddir}/detail/ov_tree_map_ \
649	${pb_builddir}/detail/hash_fn \
650	${pb_builddir}/detail/eq_fn \
651	${pb_builddir}/detail/rb_tree_map_ \
652	${pb_builddir}/detail/list_update_policy
653
654
655# The ability for make and the underlying host to deal with this
656# unwieldy list as one entire entity is not a sure thing, and may
657# cause build errors. Thus, split one list into many smaller
658# mini-lists, with the maximum size per mini-list of no more than 42.
659pb_headers1 = \
660	${pb_srcdir}/assoc_container.hpp \
661	${pb_srcdir}/exception.hpp \
662	${pb_srcdir}/hash_policy.hpp \
663	${pb_srcdir}/list_update_policy.hpp \
664	${pb_srcdir}/priority_queue.hpp \
665	${pb_srcdir}/tag_and_trait.hpp \
666	${pb_srcdir}/tree_policy.hpp \
667	${pb_srcdir}/trie_policy.hpp \
668	${pb_srcdir}/detail/branch_policy/branch_policy.hpp \
669	${pb_srcdir}/detail/branch_policy/null_node_metadata.hpp \
670	${pb_srcdir}/detail/branch_policy/traits.hpp \
671	${pb_srcdir}/detail/binary_heap_/binary_heap_.hpp \
672	${pb_srcdir}/detail/binary_heap_/const_iterator.hpp \
673	${pb_srcdir}/detail/binary_heap_/point_const_iterator.hpp \
674	${pb_srcdir}/detail/binary_heap_/constructors_destructor_fn_imps.hpp \
675	${pb_srcdir}/detail/binary_heap_/debug_fn_imps.hpp \
676	${pb_srcdir}/detail/binary_heap_/entry_cmp.hpp \
677	${pb_srcdir}/detail/binary_heap_/entry_pred.hpp \
678	${pb_srcdir}/detail/binary_heap_/erase_fn_imps.hpp \
679	${pb_srcdir}/detail/binary_heap_/find_fn_imps.hpp \
680	${pb_srcdir}/detail/binary_heap_/info_fn_imps.hpp \
681	${pb_srcdir}/detail/binary_heap_/insert_fn_imps.hpp \
682	${pb_srcdir}/detail/binary_heap_/iterators_fn_imps.hpp \
683	${pb_srcdir}/detail/binary_heap_/policy_access_fn_imps.hpp \
684	${pb_srcdir}/detail/binary_heap_/resize_policy.hpp \
685	${pb_srcdir}/detail/binary_heap_/split_join_fn_imps.hpp \
686	${pb_srcdir}/detail/binary_heap_/trace_fn_imps.hpp \
687	${pb_srcdir}/detail/binomial_heap_base_/binomial_heap_base_.hpp \
688	${pb_srcdir}/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp \
689	${pb_srcdir}/detail/binomial_heap_base_/debug_fn_imps.hpp \
690	${pb_srcdir}/detail/binomial_heap_base_/erase_fn_imps.hpp \
691	${pb_srcdir}/detail/binomial_heap_base_/find_fn_imps.hpp \
692	${pb_srcdir}/detail/binomial_heap_base_/insert_fn_imps.hpp \
693	${pb_srcdir}/detail/binomial_heap_base_/split_join_fn_imps.hpp \
694	${pb_srcdir}/detail/binomial_heap_/binomial_heap_.hpp \
695	${pb_srcdir}/detail/binomial_heap_/constructors_destructor_fn_imps.hpp \
696	${pb_srcdir}/detail/binomial_heap_/debug_fn_imps.hpp \
697	${pb_srcdir}/detail/bin_search_tree_/bin_search_tree_.hpp
698
699pb_headers2 = \
700	${pb_srcdir}/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp \
701	${pb_srcdir}/detail/bin_search_tree_/debug_fn_imps.hpp \
702	${pb_srcdir}/detail/bin_search_tree_/erase_fn_imps.hpp \
703	${pb_srcdir}/detail/bin_search_tree_/find_fn_imps.hpp \
704	${pb_srcdir}/detail/bin_search_tree_/info_fn_imps.hpp \
705	${pb_srcdir}/detail/bin_search_tree_/insert_fn_imps.hpp \
706	${pb_srcdir}/detail/bin_search_tree_/iterators_fn_imps.hpp \
707	${pb_srcdir}/detail/bin_search_tree_/node_iterators.hpp \
708	${pb_srcdir}/detail/bin_search_tree_/point_iterators.hpp \
709	${pb_srcdir}/detail/bin_search_tree_/policy_access_fn_imps.hpp \
710	${pb_srcdir}/detail/bin_search_tree_/r_erase_fn_imps.hpp \
711	${pb_srcdir}/detail/bin_search_tree_/rotate_fn_imps.hpp \
712	${pb_srcdir}/detail/bin_search_tree_/split_join_fn_imps.hpp \
713	${pb_srcdir}/detail/bin_search_tree_/traits.hpp \
714	${pb_srcdir}/detail/cc_hash_table_map_/cc_ht_map_.hpp \
715	${pb_srcdir}/detail/cc_hash_table_map_/cmp_fn_imps.hpp \
716	${pb_srcdir}/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp \
717	${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp \
718	${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp \
719	${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp \
720	${pb_srcdir}/detail/cc_hash_table_map_/debug_fn_imps.hpp \
721	${pb_srcdir}/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp \
722	${pb_srcdir}/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp \
723	${pb_srcdir}/detail/cc_hash_table_map_/entry_list_fn_imps.hpp \
724	${pb_srcdir}/detail/cc_hash_table_map_/erase_fn_imps.hpp \
725	${pb_srcdir}/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp \
726	${pb_srcdir}/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp \
727	${pb_srcdir}/detail/cc_hash_table_map_/find_fn_imps.hpp \
728	${pb_srcdir}/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp \
729	${pb_srcdir}/detail/cc_hash_table_map_/info_fn_imps.hpp \
730	${pb_srcdir}/detail/cc_hash_table_map_/insert_fn_imps.hpp \
731	${pb_srcdir}/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp \
732	${pb_srcdir}/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp \
733	${pb_srcdir}/detail/cc_hash_table_map_/iterators_fn_imps.hpp \
734	${pb_srcdir}/detail/cc_hash_table_map_/policy_access_fn_imps.hpp \
735	${pb_srcdir}/detail/cc_hash_table_map_/resize_fn_imps.hpp \
736	${pb_srcdir}/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp \
737	${pb_srcdir}/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp \
738	${pb_srcdir}/detail/cc_hash_table_map_/size_fn_imps.hpp
739
740pb_headers3 = \
741	${pb_srcdir}/detail/cc_hash_table_map_/trace_fn_imps.hpp \
742	${pb_srcdir}/detail/cond_dealtor.hpp \
743	${pb_srcdir}/detail/container_base_dispatch.hpp \
744	${pb_srcdir}/detail/eq_fn/eq_by_less.hpp \
745	${pb_srcdir}/detail/eq_fn/hash_eq_fn.hpp \
746	${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp \
747	${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp \
748	${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp \
749	${pb_srcdir}/detail/gp_hash_table_map_/debug_fn_imps.hpp \
750	${pb_srcdir}/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp \
751	${pb_srcdir}/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp \
752	${pb_srcdir}/detail/gp_hash_table_map_/erase_fn_imps.hpp \
753	${pb_srcdir}/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp \
754	${pb_srcdir}/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp \
755	${pb_srcdir}/detail/gp_hash_table_map_/find_fn_imps.hpp \
756	${pb_srcdir}/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp \
757	${pb_srcdir}/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp \
758	${pb_srcdir}/detail/gp_hash_table_map_/gp_ht_map_.hpp \
759	${pb_srcdir}/detail/gp_hash_table_map_/info_fn_imps.hpp \
760	${pb_srcdir}/detail/gp_hash_table_map_/insert_fn_imps.hpp \
761	${pb_srcdir}/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp \
762	${pb_srcdir}/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp \
763	${pb_srcdir}/detail/gp_hash_table_map_/iterator_fn_imps.hpp \
764	${pb_srcdir}/detail/gp_hash_table_map_/policy_access_fn_imps.hpp \
765	${pb_srcdir}/detail/gp_hash_table_map_/resize_fn_imps.hpp \
766	${pb_srcdir}/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp \
767	${pb_srcdir}/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp \
768	${pb_srcdir}/detail/gp_hash_table_map_/trace_fn_imps.hpp \
769	${pb_srcdir}/detail/hash_fn/direct_mask_range_hashing_imp.hpp \
770	${pb_srcdir}/detail/hash_fn/direct_mod_range_hashing_imp.hpp \
771	${pb_srcdir}/detail/hash_fn/linear_probe_fn_imp.hpp \
772	${pb_srcdir}/detail/hash_fn/mask_based_range_hashing.hpp \
773	${pb_srcdir}/detail/hash_fn/mod_based_range_hashing.hpp \
774	${pb_srcdir}/detail/hash_fn/probe_fn_base.hpp \
775	${pb_srcdir}/detail/hash_fn/quadratic_probe_fn_imp.hpp \
776	${pb_srcdir}/detail/hash_fn/ranged_hash_fn.hpp \
777	${pb_srcdir}/detail/hash_fn/ranged_probe_fn.hpp
778
779pb_headers4 = \
780	${pb_srcdir}/detail/hash_fn/sample_probe_fn.hpp \
781	${pb_srcdir}/detail/hash_fn/sample_ranged_hash_fn.hpp \
782	${pb_srcdir}/detail/hash_fn/sample_ranged_probe_fn.hpp \
783	${pb_srcdir}/detail/hash_fn/sample_range_hashing.hpp \
784	${pb_srcdir}/detail/left_child_next_sibling_heap_/const_iterator.hpp \
785	${pb_srcdir}/detail/left_child_next_sibling_heap_/point_const_iterator.hpp \
786	${pb_srcdir}/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp \
787	${pb_srcdir}/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp \
788	${pb_srcdir}/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp \
789	${pb_srcdir}/detail/left_child_next_sibling_heap_/info_fn_imps.hpp \
790	${pb_srcdir}/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp \
791	${pb_srcdir}/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp \
792	${pb_srcdir}/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp \
793	${pb_srcdir}/detail/left_child_next_sibling_heap_/node.hpp \
794	${pb_srcdir}/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp \
795	${pb_srcdir}/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp \
796	${pb_srcdir}/detail/list_update_map_/constructor_destructor_fn_imps.hpp \
797	${pb_srcdir}/detail/list_update_map_/debug_fn_imps.hpp \
798	${pb_srcdir}/detail/list_update_map_/entry_metadata_base.hpp \
799	${pb_srcdir}/detail/list_update_map_/erase_fn_imps.hpp \
800	${pb_srcdir}/detail/list_update_map_/find_fn_imps.hpp \
801	${pb_srcdir}/detail/list_update_map_/info_fn_imps.hpp \
802	${pb_srcdir}/detail/list_update_map_/insert_fn_imps.hpp \
803	${pb_srcdir}/detail/list_update_map_/iterators_fn_imps.hpp \
804	${pb_srcdir}/detail/list_update_map_/lu_map_.hpp \
805	${pb_srcdir}/detail/list_update_map_/trace_fn_imps.hpp \
806	${pb_srcdir}/detail/list_update_policy/lu_counter_metadata.hpp \
807	${pb_srcdir}/detail/list_update_policy/sample_update_policy.hpp \
808	${pb_srcdir}/detail/debug_map_base.hpp \
809	${pb_srcdir}/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp \
810	${pb_srcdir}/detail/ov_tree_map_/debug_fn_imps.hpp \
811	${pb_srcdir}/detail/ov_tree_map_/erase_fn_imps.hpp \
812	${pb_srcdir}/detail/ov_tree_map_/info_fn_imps.hpp \
813	${pb_srcdir}/detail/ov_tree_map_/insert_fn_imps.hpp \
814	${pb_srcdir}/detail/ov_tree_map_/iterators_fn_imps.hpp \
815	${pb_srcdir}/detail/ov_tree_map_/node_iterators.hpp \
816	${pb_srcdir}/detail/ov_tree_map_/ov_tree_map_.hpp
817
818pb_headers5 = \
819	${pb_srcdir}/detail/ov_tree_map_/policy_access_fn_imps.hpp \
820	${pb_srcdir}/detail/ov_tree_map_/split_join_fn_imps.hpp \
821	${pb_srcdir}/detail/ov_tree_map_/traits.hpp \
822	${pb_srcdir}/detail/pairing_heap_/constructors_destructor_fn_imps.hpp \
823	${pb_srcdir}/detail/pairing_heap_/debug_fn_imps.hpp \
824	${pb_srcdir}/detail/pairing_heap_/erase_fn_imps.hpp \
825	${pb_srcdir}/detail/pairing_heap_/find_fn_imps.hpp \
826	${pb_srcdir}/detail/pairing_heap_/insert_fn_imps.hpp \
827	${pb_srcdir}/detail/pairing_heap_/pairing_heap_.hpp \
828	${pb_srcdir}/detail/pairing_heap_/split_join_fn_imps.hpp \
829	${pb_srcdir}/detail/pat_trie_/constructors_destructor_fn_imps.hpp \
830	${pb_srcdir}/detail/pat_trie_/debug_fn_imps.hpp \
831	${pb_srcdir}/detail/pat_trie_/erase_fn_imps.hpp \
832	${pb_srcdir}/detail/pat_trie_/find_fn_imps.hpp \
833	${pb_srcdir}/detail/pat_trie_/info_fn_imps.hpp \
834	${pb_srcdir}/detail/pat_trie_/insert_join_fn_imps.hpp \
835	${pb_srcdir}/detail/pat_trie_/iterators_fn_imps.hpp \
836	${pb_srcdir}/detail/pat_trie_/pat_trie_.hpp \
837	${pb_srcdir}/detail/pat_trie_/pat_trie_base.hpp \
838	${pb_srcdir}/detail/pat_trie_/policy_access_fn_imps.hpp \
839	${pb_srcdir}/detail/pat_trie_/r_erase_fn_imps.hpp \
840	${pb_srcdir}/detail/pat_trie_/rotate_fn_imps.hpp \
841	${pb_srcdir}/detail/pat_trie_/split_fn_imps.hpp \
842	${pb_srcdir}/detail/pat_trie_/synth_access_traits.hpp \
843	${pb_srcdir}/detail/pat_trie_/trace_fn_imps.hpp \
844	${pb_srcdir}/detail/pat_trie_/traits.hpp \
845	${pb_srcdir}/detail/pat_trie_/update_fn_imps.hpp \
846	${pb_srcdir}/detail/priority_queue_base_dispatch.hpp \
847	${pb_srcdir}/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp \
848	${pb_srcdir}/detail/rb_tree_map_/debug_fn_imps.hpp
849
850pb_headers6 = \
851	${pb_srcdir}/detail/rb_tree_map_/erase_fn_imps.hpp \
852	${pb_srcdir}/detail/rb_tree_map_/find_fn_imps.hpp \
853	${pb_srcdir}/detail/rb_tree_map_/info_fn_imps.hpp \
854	${pb_srcdir}/detail/rb_tree_map_/insert_fn_imps.hpp \
855	${pb_srcdir}/detail/rb_tree_map_/node.hpp \
856	${pb_srcdir}/detail/rb_tree_map_/rb_tree_.hpp \
857	${pb_srcdir}/detail/rb_tree_map_/split_join_fn_imps.hpp \
858	${pb_srcdir}/detail/rb_tree_map_/traits.hpp \
859	${pb_srcdir}/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp \
860	${pb_srcdir}/detail/rc_binomial_heap_/debug_fn_imps.hpp \
861	${pb_srcdir}/detail/rc_binomial_heap_/erase_fn_imps.hpp \
862	${pb_srcdir}/detail/rc_binomial_heap_/insert_fn_imps.hpp \
863	${pb_srcdir}/detail/rc_binomial_heap_/rc_binomial_heap_.hpp \
864	${pb_srcdir}/detail/rc_binomial_heap_/rc.hpp \
865	${pb_srcdir}/detail/rc_binomial_heap_/split_join_fn_imps.hpp \
866	${pb_srcdir}/detail/rc_binomial_heap_/trace_fn_imps.hpp \
867	${pb_srcdir}/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp \
868	${pb_srcdir}/detail/resize_policy/hash_exponential_size_policy_imp.hpp \
869	${pb_srcdir}/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp \
870	${pb_srcdir}/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp \
871	${pb_srcdir}/detail/resize_policy/hash_prime_size_policy_imp.hpp \
872	${pb_srcdir}/detail/resize_policy/hash_standard_resize_policy_imp.hpp \
873	${pb_srcdir}/detail/resize_policy/sample_resize_policy.hpp \
874	${pb_srcdir}/detail/resize_policy/sample_resize_trigger.hpp \
875	${pb_srcdir}/detail/resize_policy/sample_size_policy.hpp \
876	${pb_srcdir}/detail/splay_tree_/constructors_destructor_fn_imps.hpp \
877	${pb_srcdir}/detail/splay_tree_/debug_fn_imps.hpp \
878	${pb_srcdir}/detail/splay_tree_/erase_fn_imps.hpp \
879	${pb_srcdir}/detail/splay_tree_/find_fn_imps.hpp \
880	${pb_srcdir}/detail/splay_tree_/info_fn_imps.hpp \
881	${pb_srcdir}/detail/splay_tree_/insert_fn_imps.hpp \
882	${pb_srcdir}/detail/splay_tree_/node.hpp \
883	${pb_srcdir}/detail/splay_tree_/splay_fn_imps.hpp \
884	${pb_srcdir}/detail/splay_tree_/splay_tree_.hpp \
885	${pb_srcdir}/detail/splay_tree_/split_join_fn_imps.hpp \
886	${pb_srcdir}/detail/splay_tree_/traits.hpp \
887	${pb_srcdir}/detail/standard_policies.hpp \
888	${pb_srcdir}/detail/thin_heap_/constructors_destructor_fn_imps.hpp \
889	${pb_srcdir}/detail/thin_heap_/debug_fn_imps.hpp \
890	${pb_srcdir}/detail/thin_heap_/erase_fn_imps.hpp
891
892pb_headers7 = \
893	${pb_srcdir}/detail/thin_heap_/find_fn_imps.hpp \
894	${pb_srcdir}/detail/thin_heap_/insert_fn_imps.hpp \
895	${pb_srcdir}/detail/thin_heap_/split_join_fn_imps.hpp \
896	${pb_srcdir}/detail/thin_heap_/thin_heap_.hpp \
897	${pb_srcdir}/detail/thin_heap_/trace_fn_imps.hpp \
898	${pb_srcdir}/detail/tree_policy/node_metadata_selector.hpp \
899	${pb_srcdir}/detail/tree_policy/order_statistics_imp.hpp \
900	${pb_srcdir}/detail/tree_policy/sample_tree_node_update.hpp \
901	${pb_srcdir}/detail/tree_trace_base.hpp \
902	${pb_srcdir}/detail/trie_policy/node_metadata_selector.hpp \
903	${pb_srcdir}/detail/trie_policy/order_statistics_imp.hpp \
904	${pb_srcdir}/detail/trie_policy/prefix_search_node_update_imp.hpp \
905	${pb_srcdir}/detail/trie_policy/sample_trie_access_traits.hpp \
906	${pb_srcdir}/detail/trie_policy/sample_trie_node_update.hpp \
907	${pb_srcdir}/detail/trie_policy/trie_string_access_traits_imp.hpp \
908	${pb_srcdir}/detail/trie_policy/trie_policy_base.hpp \
909	${pb_srcdir}/detail/types_traits.hpp \
910	${pb_srcdir}/detail/type_utils.hpp \
911	${pb_srcdir}/detail/unordered_iterator/const_iterator.hpp \
912	${pb_srcdir}/detail/unordered_iterator/point_const_iterator.hpp \
913	${pb_srcdir}/detail/unordered_iterator/iterator.hpp \
914	${pb_srcdir}/detail/unordered_iterator/point_iterator.hpp
915
916ext_srcdir = ${glibcxx_srcdir}/include/ext
917ext_builddir = ./ext
918ext_headers = \
919	${ext_srcdir}/algorithm \
920	${ext_srcdir}/aligned_buffer.h \
921	${ext_srcdir}/alloc_traits.h \
922	${ext_srcdir}/atomicity.h \
923	${ext_srcdir}/bitmap_allocator.h \
924	${ext_srcdir}/cast.h \
925	${ext_srcdir}/cmath \
926	${ext_srcdir}/codecvt_specializations.h \
927	${ext_srcdir}/concurrence.h \
928	${ext_srcdir}/debug_allocator.h \
929	${ext_srcdir}/enc_filebuf.h \
930	${ext_srcdir}/extptr_allocator.h \
931	${ext_srcdir}/stdio_filebuf.h \
932	${ext_srcdir}/stdio_sync_filebuf.h \
933	${ext_srcdir}/functional \
934	${ext_srcdir}/iterator \
935	${ext_srcdir}/malloc_allocator.h \
936	${ext_srcdir}/memory \
937	${ext_srcdir}/mt_allocator.h \
938	${ext_srcdir}/new_allocator.h \
939	${ext_srcdir}/numeric \
940	${ext_srcdir}/numeric_traits.h \
941	${ext_srcdir}/pod_char_traits.h \
942	${ext_srcdir}/pointer.h \
943	${ext_srcdir}/pool_allocator.h \
944	${ext_srcdir}/rb_tree \
945	${ext_srcdir}/random \
946	${ext_srcdir}/random.tcc \
947	${ext_srcdir}/rope \
948	${ext_srcdir}/ropeimpl.h \
949	${ext_srcdir}/slist \
950	${ext_srcdir}/string_conversions.h \
951	${ext_srcdir}/throw_allocator.h \
952	${ext_srcdir}/typelist.h \
953	${ext_srcdir}/type_traits.h \
954	${ext_srcdir}/rc_string_base.h \
955	${ext_srcdir}/sso_string_base.h \
956	${ext_srcdir}/vstring.h \
957	${ext_srcdir}/vstring.tcc \
958	${ext_srcdir}/vstring_fwd.h \
959	${ext_srcdir}/vstring_util.h \
960	${ext_compat_headers}
961
962ext_compat_headers = \
963	${backward_srcdir}/hash_set \
964	${backward_srcdir}/hash_map
965
966ext_host_headers = \
967	${glibcxx_srcdir}/${CPU_OPT_EXT_RANDOM}
968
969tr1_srcdir = ${glibcxx_srcdir}/include/tr1
970tr1_builddir = ./tr1
971tr1_headers = \
972	${tr1_srcdir}/array \
973	${tr1_srcdir}/bessel_function.tcc \
974	${tr1_srcdir}/beta_function.tcc \
975	${tr1_srcdir}/ccomplex \
976	${tr1_srcdir}/cctype \
977	${tr1_srcdir}/cfenv \
978	${tr1_srcdir}/cfloat \
979	${tr1_srcdir}/cinttypes \
980	${tr1_srcdir}/climits \
981	${tr1_srcdir}/cmath \
982	${tr1_srcdir}/complex \
983	${tr1_srcdir}/complex.h \
984	${tr1_srcdir}/cstdarg \
985	${tr1_srcdir}/cstdbool \
986	${tr1_srcdir}/cstdint \
987	${tr1_srcdir}/cstdio \
988	${tr1_srcdir}/cstdlib \
989	${tr1_srcdir}/ctgmath \
990	${tr1_srcdir}/ctime \
991	${tr1_srcdir}/ctype.h \
992	${tr1_srcdir}/cwchar \
993	${tr1_srcdir}/cwctype \
994	${tr1_srcdir}/ell_integral.tcc \
995	${tr1_srcdir}/exp_integral.tcc \
996	${tr1_srcdir}/fenv.h \
997	${tr1_srcdir}/float.h \
998	${tr1_srcdir}/functional \
999	${tr1_srcdir}/functional_hash.h \
1000	${tr1_srcdir}/gamma.tcc \
1001	${tr1_srcdir}/hypergeometric.tcc \
1002	${tr1_srcdir}/hashtable.h \
1003	${tr1_srcdir}/hashtable_policy.h \
1004	${tr1_srcdir}/inttypes.h \
1005	${tr1_srcdir}/limits.h \
1006	${tr1_srcdir}/math.h \
1007	${tr1_srcdir}/memory \
1008	${tr1_srcdir}/modified_bessel_func.tcc \
1009	${tr1_srcdir}/poly_hermite.tcc \
1010	${tr1_srcdir}/poly_laguerre.tcc \
1011	${tr1_srcdir}/legendre_function.tcc \
1012	${tr1_srcdir}/random \
1013	${tr1_srcdir}/random.h \
1014	${tr1_srcdir}/random.tcc \
1015	${tr1_srcdir}/regex \
1016	${tr1_srcdir}/riemann_zeta.tcc \
1017	${tr1_srcdir}/shared_ptr.h \
1018	${tr1_srcdir}/special_function_util.h \
1019	${tr1_srcdir}/stdarg.h \
1020	${tr1_srcdir}/stdbool.h \
1021	${tr1_srcdir}/stdint.h \
1022	${tr1_srcdir}/stdio.h \
1023	${tr1_srcdir}/stdlib.h \
1024	${tr1_srcdir}/tgmath.h \
1025	${tr1_srcdir}/tuple \
1026	${tr1_srcdir}/type_traits \
1027	${tr1_srcdir}/unordered_map \
1028	${tr1_srcdir}/unordered_map.h \
1029	${tr1_srcdir}/unordered_set \
1030	${tr1_srcdir}/unordered_set.h \
1031	${tr1_srcdir}/utility \
1032	${tr1_srcdir}/wchar.h \
1033	${tr1_srcdir}/wctype.h
1034
1035tr2_srcdir = ${glibcxx_srcdir}/include/tr2
1036tr2_builddir = ./tr2
1037tr2_headers = \
1038	${tr2_srcdir}/bool_set \
1039	${tr2_srcdir}/bool_set.tcc \
1040	${tr2_srcdir}/dynamic_bitset \
1041	${tr2_srcdir}/dynamic_bitset.tcc \
1042	${tr2_srcdir}/ratio \
1043	${tr2_srcdir}/type_traits
1044
1045decimal_srcdir = ${glibcxx_srcdir}/include/decimal
1046decimal_builddir = ./decimal
1047decimal_headers = \
1048	${decimal_srcdir}/decimal \
1049	${decimal_srcdir}/decimal.h
1050
1051
1052# Post-C++11 TS's
1053experimental_srcdir = ${glibcxx_srcdir}/include/experimental
1054experimental_builddir = ./experimental
1055experimental_headers = \
1056	${experimental_srcdir}/algorithm \
1057	${experimental_srcdir}/any \
1058	${experimental_srcdir}/array \
1059	${experimental_srcdir}/buffer \
1060	${experimental_srcdir}/chrono \
1061	${experimental_srcdir}/deque \
1062	${experimental_srcdir}/executor \
1063	${experimental_srcdir}/forward_list \
1064	${experimental_srcdir}/functional \
1065	${experimental_srcdir}/internet \
1066	${experimental_srcdir}/io_context \
1067	${experimental_srcdir}/iterator \
1068	${experimental_srcdir}/list \
1069	${experimental_srcdir}/map \
1070	${experimental_srcdir}/memory \
1071	${experimental_srcdir}/memory_resource \
1072	${experimental_srcdir}/net \
1073	${experimental_srcdir}/netfwd \
1074	${experimental_srcdir}/numeric \
1075	${experimental_srcdir}/optional \
1076	${experimental_srcdir}/propagate_const \
1077	${experimental_srcdir}/random \
1078	${experimental_srcdir}/ratio \
1079	${experimental_srcdir}/regex \
1080	${experimental_srcdir}/set \
1081	${experimental_srcdir}/socket \
1082	${experimental_srcdir}/source_location \
1083	${experimental_srcdir}/string \
1084	${experimental_srcdir}/string_view \
1085	${experimental_srcdir}/system_error \
1086	${experimental_srcdir}/timer \
1087	${experimental_srcdir}/tuple \
1088	${experimental_srcdir}/type_traits \
1089	${experimental_srcdir}/unordered_map \
1090	${experimental_srcdir}/unordered_set \
1091	${experimental_srcdir}/utility \
1092	${experimental_srcdir}/vector \
1093	${experimental_filesystem_headers}
1094
1095experimental_bits_srcdir = ${glibcxx_srcdir}/include/experimental/bits
1096experimental_bits_builddir = ./experimental/bits
1097experimental_bits_headers = \
1098	${experimental_bits_srcdir}/lfts_config.h \
1099	${experimental_bits_srcdir}/net.h \
1100	${experimental_bits_srcdir}/shared_ptr.h \
1101	${experimental_bits_srcdir}/string_view.tcc \
1102	${experimental_bits_filesystem_headers}
1103
1104@ENABLE_FILESYSTEM_TS_FALSE@experimental_filesystem_headers =
1105@ENABLE_FILESYSTEM_TS_TRUE@experimental_filesystem_headers = \
1106@ENABLE_FILESYSTEM_TS_TRUE@	${experimental_srcdir}/filesystem
1107
1108@ENABLE_FILESYSTEM_TS_FALSE@experimental_bits_filesystem_headers =
1109@ENABLE_FILESYSTEM_TS_TRUE@experimental_bits_filesystem_headers = \
1110@ENABLE_FILESYSTEM_TS_TRUE@	${experimental_bits_srcdir}/fs_dir.h \
1111@ENABLE_FILESYSTEM_TS_TRUE@	${experimental_bits_srcdir}/fs_fwd.h \
1112@ENABLE_FILESYSTEM_TS_TRUE@	${experimental_bits_srcdir}/fs_ops.h \
1113@ENABLE_FILESYSTEM_TS_TRUE@	${experimental_bits_srcdir}/fs_path.h
1114
1115
1116# This is the common subset of C++ files that all three "C" header models use.
1117c_base_srcdir = $(C_INCLUDE_DIR)
1118c_base_builddir = .
1119c_base_headers = \
1120	${c_base_srcdir}/cassert \
1121	${c_base_srcdir}/ccomplex \
1122	${c_base_srcdir}/cctype \
1123	${c_base_srcdir}/cerrno \
1124	${c_base_srcdir}/cfenv \
1125	${c_base_srcdir}/cfloat \
1126	${c_base_srcdir}/cinttypes \
1127	${c_base_srcdir}/ciso646 \
1128	${c_base_srcdir}/climits \
1129	${c_base_srcdir}/clocale \
1130	${c_base_srcdir}/cmath \
1131	${c_base_srcdir}/csetjmp \
1132	${c_base_srcdir}/csignal \
1133	${c_base_srcdir}/cstdalign \
1134	${c_base_srcdir}/cstdarg \
1135	${c_base_srcdir}/cstdbool \
1136	${c_base_srcdir}/cstddef \
1137	${c_base_srcdir}/cstdint \
1138	${c_base_srcdir}/cstdio \
1139	${c_base_srcdir}/cstdlib \
1140	${c_base_srcdir}/cstring \
1141	${c_base_srcdir}/ctgmath \
1142	${c_base_srcdir}/ctime \
1143	${c_base_srcdir}/cuchar \
1144	${c_base_srcdir}/cwchar \
1145	${c_base_srcdir}/cwctype
1146
1147
1148# "C" compatibility headers.
1149c_compatibility_srcdir = ${glibcxx_srcdir}/include/c_compatibility
1150c_compatibility_builddir = .
1151@GLIBCXX_C_HEADERS_C_GLOBAL_TRUE@c_compatibility_headers = \
1152@GLIBCXX_C_HEADERS_C_GLOBAL_TRUE@	${c_compatibility_srcdir}/complex.h \
1153@GLIBCXX_C_HEADERS_C_GLOBAL_TRUE@	${c_compatibility_srcdir}/fenv.h \
1154@GLIBCXX_C_HEADERS_C_GLOBAL_TRUE@	${c_compatibility_srcdir}/tgmath.h \
1155@GLIBCXX_C_HEADERS_C_GLOBAL_TRUE@	${c_compatibility_srcdir}/math.h \
1156@GLIBCXX_C_HEADERS_C_GLOBAL_TRUE@	${c_compatibility_srcdir}/stdlib.h
1157
1158@GLIBCXX_C_HEADERS_C_STD_TRUE@c_compatibility_headers =
1159@GLIBCXX_C_HEADERS_C_TRUE@c_compatibility_headers = \
1160@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/assert.h \
1161@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/complex.h \
1162@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/ctype.h \
1163@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/errno.h \
1164@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/fenv.h \
1165@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/float.h \
1166@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/inttypes.h \
1167@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/iso646.h \
1168@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/limits.h \
1169@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/locale.h \
1170@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/math.h \
1171@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/setjmp.h \
1172@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/signal.h \
1173@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/stdarg.h \
1174@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/stdbool.h \
1175@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/stddef.h \
1176@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/stdint.h \
1177@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/stdio.h \
1178@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/stdlib.h \
1179@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/string.h \
1180@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/tgmath.h \
1181@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/time.h \
1182@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/uchar.h \
1183@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/wchar.h \
1184@GLIBCXX_C_HEADERS_C_TRUE@	${c_compatibility_srcdir}/wctype.h
1185
1186
1187# Debug mode headers
1188debug_srcdir = ${glibcxx_srcdir}/include/debug
1189debug_builddir = ./debug
1190debug_headers = \
1191	${debug_srcdir}/array \
1192	${debug_srcdir}/assertions.h \
1193	${debug_srcdir}/bitset \
1194	${debug_srcdir}/debug.h \
1195	${debug_srcdir}/deque \
1196	${debug_srcdir}/formatter.h \
1197	${debug_srcdir}/forward_list \
1198	${debug_srcdir}/functions.h \
1199	${debug_srcdir}/helper_functions.h \
1200	${debug_srcdir}/list \
1201	${debug_srcdir}/map \
1202	${debug_srcdir}/macros.h \
1203	${debug_srcdir}/map.h \
1204	${debug_srcdir}/multimap.h \
1205	${debug_srcdir}/multiset.h \
1206	${debug_srcdir}/safe_base.h \
1207	${debug_srcdir}/safe_container.h \
1208	${debug_srcdir}/safe_iterator.h \
1209	${debug_srcdir}/safe_iterator.tcc \
1210	${debug_srcdir}/safe_local_iterator.h \
1211	${debug_srcdir}/safe_local_iterator.tcc \
1212	${debug_srcdir}/safe_sequence.h \
1213	${debug_srcdir}/safe_sequence.tcc \
1214	${debug_srcdir}/safe_unordered_base.h \
1215	${debug_srcdir}/safe_unordered_container.h \
1216	${debug_srcdir}/safe_unordered_container.tcc \
1217	${debug_srcdir}/set \
1218	${debug_srcdir}/set.h \
1219	${debug_srcdir}/stl_iterator.h \
1220	${debug_srcdir}/string \
1221	${debug_srcdir}/unordered_map \
1222	${debug_srcdir}/unordered_set \
1223	${debug_srcdir}/vector
1224
1225
1226# Parallel mode headers
1227parallel_srcdir = ${glibcxx_srcdir}/include/parallel
1228parallel_builddir = ./parallel
1229parallel_headers = \
1230	${parallel_srcdir}/algo.h \
1231	${parallel_srcdir}/algobase.h \
1232	${parallel_srcdir}/algorithm \
1233	${parallel_srcdir}/algorithmfwd.h \
1234	${parallel_srcdir}/balanced_quicksort.h \
1235	${parallel_srcdir}/base.h \
1236	${parallel_srcdir}/basic_iterator.h \
1237	${parallel_srcdir}/checkers.h \
1238	${parallel_srcdir}/compatibility.h \
1239	${parallel_srcdir}/compiletime_settings.h \
1240	${parallel_srcdir}/equally_split.h \
1241	${parallel_srcdir}/features.h \
1242	${parallel_srcdir}/find.h \
1243	${parallel_srcdir}/find_selectors.h \
1244	${parallel_srcdir}/for_each.h \
1245	${parallel_srcdir}/for_each_selectors.h \
1246	${parallel_srcdir}/iterator.h \
1247	${parallel_srcdir}/list_partition.h \
1248	${parallel_srcdir}/losertree.h \
1249	${parallel_srcdir}/merge.h \
1250	${parallel_srcdir}/multiseq_selection.h \
1251	${parallel_srcdir}/multiway_merge.h \
1252	${parallel_srcdir}/multiway_mergesort.h \
1253	${parallel_srcdir}/numeric \
1254	${parallel_srcdir}/numericfwd.h \
1255	${parallel_srcdir}/omp_loop.h \
1256	${parallel_srcdir}/omp_loop_static.h \
1257	${parallel_srcdir}/par_loop.h \
1258	${parallel_srcdir}/parallel.h \
1259	${parallel_srcdir}/partial_sum.h \
1260	${parallel_srcdir}/partition.h \
1261	${parallel_srcdir}/queue.h \
1262	${parallel_srcdir}/quicksort.h \
1263	${parallel_srcdir}/random_number.h \
1264	${parallel_srcdir}/random_shuffle.h \
1265	${parallel_srcdir}/search.h \
1266	${parallel_srcdir}/set_operations.h \
1267	${parallel_srcdir}/settings.h \
1268	${parallel_srcdir}/sort.h \
1269	${parallel_srcdir}/tags.h \
1270	${parallel_srcdir}/types.h \
1271	${parallel_srcdir}/unique_copy.h \
1272	${parallel_srcdir}/workstealing.h
1273
1274@GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE@c_compatibility_headers_extra =
1275
1276# Some "C" header schemes require the "C" compatibility headers.
1277# For --enable-cheaders=c_std
1278@GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE@c_compatibility_headers_extra = ${c_compatibility_headers}
1279host_srcdir = ${glibcxx_srcdir}/$(OS_INC_SRCDIR)
1280host_builddir = ./${host_alias}/bits
1281host_installdir = ${gxx_include_dir}/${host_alias}$(MULTISUBDIR)/bits
1282host_headers = \
1283	${host_srcdir}/ctype_base.h \
1284	${host_srcdir}/ctype_inline.h \
1285	${host_srcdir}/os_defines.h \
1286	${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h \
1287	${glibcxx_srcdir}/$(ABI_TWEAKS_SRCDIR)/cxxabi_tweaks.h \
1288	${glibcxx_srcdir}/$(CPU_DEFINES_SRCDIR)/cpu_defines.h \
1289	${glibcxx_srcdir}/$(ERROR_CONSTANTS_SRCDIR)/error_constants.h \
1290	${glibcxx_srcdir}/include/precompiled/stdc++.h \
1291	${glibcxx_srcdir}/include/precompiled/stdtr1c++.h \
1292	${glibcxx_srcdir}/include/precompiled/extc++.h
1293
1294
1295# Non-installed host_header files.
1296COMPATIBILITY_H = config/abi/compatibility.h
1297host_headers_noinst = \
1298	${glibcxx_srcdir}/$(CLOCALE_INTERNAL_H) \
1299	${glibcxx_srcdir}/$(COMPATIBILITY_H)
1300
1301
1302# These host_headers_extra files are all built with ad hoc naming rules.
1303host_headers_extra = \
1304	${host_builddir}/basic_file.h \
1305	${host_builddir}/c++config.h \
1306	${host_builddir}/c++allocator.h \
1307	${host_builddir}/c++io.h \
1308	${host_builddir}/c++locale.h \
1309	${host_builddir}/messages_members.h \
1310	${host_builddir}/time_members.h
1311
1312thread_host_headers = \
1313	${host_builddir}/gthr.h \
1314	${host_builddir}/gthr-single.h \
1315	${host_builddir}/gthr-posix.h \
1316	${host_builddir}/gthr-default.h
1317
1318pch1_source = ${glibcxx_srcdir}/include/precompiled/stdc++.h
1319pch1_output_builddir = ${host_builddir}/stdc++.h.gch
1320pch1_output_anchor = ${host_builddir}/stdc++.h
1321pch1_output_installdir = ${host_installdir}/stdc++.h.gch
1322pch1a_output = ${pch1_output_builddir}/O2ggnu++0x.gch
1323pch1b_output = ${pch1_output_builddir}/O2g.gch
1324pch1_output = ${pch1a_output} ${pch1b_output}
1325pch2_source = ${glibcxx_srcdir}/include/precompiled/stdtr1c++.h
1326pch2_output_builddir = ${host_builddir}/stdtr1c++.h.gch
1327pch2_output_anchor = ${host_builddir}/stdtr1c++.h
1328pch2_output_installdir = ${host_installdir}/stdtr1c++.h.gch
1329pch2_output = ${pch2_output_builddir}/O2g.gch
1330pch3_source = ${glibcxx_srcdir}/include/precompiled/extc++.h
1331pch3_output_builddir = ${host_builddir}/extc++.h.gch
1332pch3_output_anchor = ${host_builddir}/extc++.h
1333pch3_output_installdir = ${host_installdir}/extc++.h.gch
1334pch3_output = ${pch3_output_builddir}/O2g.gch
1335pch_output = ${pch1_output} ${pch2_output} ${pch3_output}
1336pch_output_dirs = \
1337	${pch1_output_builddir} ${pch2_output_builddir} ${pch3_output_builddir}
1338
1339pch_output_anchors = \
1340	${pch1_output_anchor} ${pch2_output_anchor} ${pch3_output_anchor}
1341
1342PCHFLAGS = -x c++-header -nostdinc++ $(CXXFLAGS) $(VTV_PCH_CXXFLAGS)
1343@GLIBCXX_BUILD_PCH_FALSE@pch_build =
1344@GLIBCXX_BUILD_PCH_TRUE@pch_build = ${pch_output}
1345
1346# List of all timestamp files.  By keeping only one copy of this list, both
1347# CLEANFILES and all-local are kept up-to-date.
1348allstamped = \
1349	stamp-std stamp-bits stamp-bits-sup stamp-pstl stamp-c_base stamp-c_compatibility \
1350	stamp-backward stamp-ext stamp-pb stamp-tr1 stamp-tr2 stamp-decimal \
1351	stamp-experimental stamp-experimental-bits stamp-debug stamp-parallel \
1352	stamp-host
1353
1354
1355# List of all files that are created by explicit building, editing, or
1356# catenation.
1357allcreated = \
1358	${host_builddir}/c++config.h \
1359	${host_builddir}/largefile-config.h \
1360	${thread_host_headers} \
1361	${pch_build}
1362
1363
1364# Host includes for threads
1365uppercase = [ABCDEFGHIJKLMNOPQRSTUVWXYZ_]
1366# By adding these files here, automake will remove them for 'make clean'
1367CLEANFILES = ${pch_output} ${pch_output_anchors} stamp-host
1368all: all-am
1369
1370.SUFFIXES:
1371$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/fragment.am $(am__configure_deps)
1372	@for dep in $?; do \
1373	  case '$(am__configure_deps)' in \
1374	    *$$dep*) \
1375	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
1376	        && { if test -f $@; then exit 0; else break; fi; }; \
1377	      exit 1;; \
1378	  esac; \
1379	done; \
1380	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign --ignore-deps include/Makefile'; \
1381	$(am__cd) $(top_srcdir) && \
1382	  $(AUTOMAKE) --foreign --ignore-deps include/Makefile
1383Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
1384	@case '$?' in \
1385	  *config.status*) \
1386	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
1387	  *) \
1388	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
1389	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
1390	esac;
1391$(top_srcdir)/fragment.am $(am__empty):
1392
1393$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
1394	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
1395
1396$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
1397	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
1398$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
1399	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
1400$(am__aclocal_m4_deps):
1401
1402mostlyclean-libtool:
1403	-rm -f *.lo
1404
1405clean-libtool:
1406	-rm -rf .libs _libs
1407tags TAGS:
1408
1409ctags CTAGS:
1410
1411cscope cscopelist:
1412
1413check-am: all-am
1414check: check-am
1415all-am: Makefile all-local
1416installdirs:
1417install: install-am
1418install-exec: install-exec-am
1419install-data: install-data-am
1420uninstall: uninstall-am
1421
1422install-am: all-am
1423	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
1424
1425installcheck: installcheck-am
1426install-strip:
1427	if test -z '$(STRIP)'; then \
1428	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
1429	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
1430	      install; \
1431	else \
1432	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
1433	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
1434	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
1435	fi
1436mostlyclean-generic:
1437
1438clean-generic:
1439	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
1440
1441distclean-generic:
1442	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
1443	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
1444
1445maintainer-clean-generic:
1446	@echo "This command is intended for maintainers to use"
1447	@echo "it deletes files that may require special tools to rebuild."
1448clean: clean-am
1449
1450clean-am: clean-generic clean-libtool clean-local mostlyclean-am
1451
1452distclean: distclean-am
1453	-rm -f Makefile
1454distclean-am: clean-am distclean-generic
1455
1456dvi: dvi-am
1457
1458dvi-am:
1459
1460html: html-am
1461
1462html-am:
1463
1464info: info-am
1465
1466info-am:
1467
1468install-data-am: install-data-local
1469
1470install-dvi: install-dvi-am
1471
1472install-dvi-am:
1473
1474install-exec-am:
1475
1476install-html: install-html-am
1477
1478install-html-am:
1479
1480install-info: install-info-am
1481
1482install-info-am:
1483
1484install-man:
1485
1486install-pdf: install-pdf-am
1487
1488install-pdf-am:
1489
1490install-ps: install-ps-am
1491
1492install-ps-am:
1493
1494installcheck-am:
1495
1496maintainer-clean: maintainer-clean-am
1497	-rm -f Makefile
1498maintainer-clean-am: distclean-am maintainer-clean-generic
1499
1500mostlyclean: mostlyclean-am
1501
1502mostlyclean-am: mostlyclean-generic mostlyclean-libtool
1503
1504pdf: pdf-am
1505
1506pdf-am:
1507
1508ps: ps-am
1509
1510ps-am:
1511
1512uninstall-am:
1513
1514.MAKE: install-am install-strip
1515
1516.PHONY: all all-am all-local check check-am clean clean-generic \
1517	clean-libtool clean-local cscopelist-am ctags-am distclean \
1518	distclean-generic distclean-libtool dvi dvi-am html html-am \
1519	info info-am install install-am install-data install-data-am \
1520	install-data-local install-dvi install-dvi-am install-exec \
1521	install-exec-am install-html install-html-am install-info \
1522	install-info-am install-man install-pdf install-pdf-am \
1523	install-ps install-ps-am install-strip installcheck \
1524	installcheck-am installdirs maintainer-clean \
1525	maintainer-clean-generic mostlyclean mostlyclean-generic \
1526	mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
1527	uninstall-am
1528
1529.PRECIOUS: Makefile
1530
1531
1532# Here are the rules for building the headers
1533all-local: ${allstamped} ${allcreated}
1534
1535# Ignore errors from 'mkdir -p' to avoid parallel make failure on
1536# systems with broken mkdir.  Call mkdir unconditionally because
1537# it is just as cheap to avoid going through the shell.
1538# Ignore errors from $(LN_S) because the links may already exist.
1539stamp-std: ${std_headers}
1540	@-mkdir -p ${std_builddir}
1541	@-cd ${std_builddir} && $(LN_S) $? . 2>/dev/null
1542	@$(STAMP) stamp-std
1543
1544stamp-bits: ${bits_headers}
1545	@-mkdir -p ${bits_builddir}
1546	@-cd ${bits_builddir} && $(LN_S) $? . 2>/dev/null
1547	@$(STAMP) stamp-bits
1548
1549stamp-bits-sup: stamp-bits ${bits_sup_headers}
1550	@-cd ${bits_builddir} && $(LN_S) ${bits_sup_headers} . 2>/dev/null
1551	@$(STAMP) stamp-bits-sup
1552
1553stamp-pstl: ${pstl_headers}
1554	@-mkdir -p ${pstl_builddir}
1555	@-cd ${pstl_builddir} && $(LN_S) $? . 2>/dev/null
1556	@$(STAMP) stamp-pstl
1557
1558stamp-c_base: ${c_base_headers}
1559	@-mkdir -p ${c_base_builddir}
1560	@-cd ${c_base_builddir} && $(LN_S) $? . 2>/dev/null
1561	@$(STAMP) stamp-c_base
1562
1563stamp-c_base_extra: ${c_base_headers_extra}
1564	@-mkdir -p ${bits_builddir}
1565	@-cd ${bits_builddir} && $(LN_S) $? . 2>/dev/null
1566	@$(STAMP) stamp-c_base_extra
1567
1568stamp-c_compatibility: ${c_compatibility_headers_extra}
1569	@-mkdir -p ${c_compatibility_builddir}
1570	@-if [ ! -z "${c_compatibility_headers_extra}" ]; then \
1571	  cd ${c_compatibility_builddir} && $(LN_S) $? . 2>/dev/null ;\
1572	fi
1573	@$(STAMP) stamp-c_compatibility
1574
1575stamp-backward: ${backward_headers}
1576	@-mkdir -p ${backward_builddir}
1577	@-cd ${backward_builddir} && $(LN_S) $? . 2>/dev/null
1578	@$(STAMP) stamp-backward
1579
1580stamp-ext: ${ext_headers}
1581	@-mkdir -p ${ext_builddir}
1582	@-cd ${ext_builddir} && $(LN_S) $? . 2>/dev/null
1583	@$(STAMP) stamp-ext
1584
1585# Have to deal with nested include directories, gah! Strip off source
1586# directory before making the link.
1587# XXX check  ${pb_headers}
1588stamp-pb:
1589	@if [ ! -d "${pb_builddir}" ]; then \
1590	    mkdir -p ${pb_subdirs} ;\
1591	fi
1592	@if [ ! -f stamp-pb ]; then \
1593	    cd ${pb_builddir} && for h in ${pb_headers1}; do \
1594		build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\
1595		$(LN_S) $$h $${build_name} || true ;\
1596	      done ;\
1597	fi
1598	@if [ ! -f stamp-pb ]; then \
1599	    cd ${pb_builddir} && for h in ${pb_headers2}; do \
1600		build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\
1601		$(LN_S) $$h $${build_name} || true ;\
1602	      done ;\
1603	fi
1604	@if [ ! -f stamp-pb ]; then \
1605	    cd ${pb_builddir} && for h in ${pb_headers3}; do \
1606		build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\
1607		$(LN_S) $$h $${build_name} || true ;\
1608	      done ;\
1609	fi
1610	@if [ ! -f stamp-pb ]; then \
1611	    cd ${pb_builddir} && for h in ${pb_headers4}; do \
1612		build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\
1613		$(LN_S) $$h $${build_name} || true ;\
1614	      done ;\
1615	fi
1616	@if [ ! -f stamp-pb ]; then \
1617	    cd ${pb_builddir} && for h in ${pb_headers5}; do \
1618		build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\
1619		$(LN_S) $$h $${build_name} || true ;\
1620	      done ;\
1621	fi
1622	@if [ ! -f stamp-pb ]; then \
1623	    cd ${pb_builddir} && for h in ${pb_headers6}; do \
1624		build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\
1625		$(LN_S) $$h $${build_name} || true ;\
1626	      done ;\
1627	fi
1628	@if [ ! -f stamp-pb ]; then \
1629	    cd ${pb_builddir} && for h in ${pb_headers7}; do \
1630		build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\
1631		$(LN_S) $$h $${build_name} || true ;\
1632	      done ;\
1633	fi
1634	$(STAMP) stamp-pb
1635
1636stamp-tr1: ${tr1_headers}
1637	@-mkdir -p ${tr1_builddir}
1638	@-cd ${tr1_builddir} && $(LN_S) $? . 2>/dev/null
1639	@$(STAMP) stamp-tr1
1640
1641stamp-tr2: ${tr2_headers}
1642	@-mkdir -p ${tr2_builddir}
1643	@-cd ${tr2_builddir} && $(LN_S) $? . 2>/dev/null
1644	@$(STAMP) stamp-tr2
1645
1646stamp-decimal: ${decimal_headers}
1647	@-mkdir -p ${decimal_builddir}
1648	@-cd ${decimal_builddir} && $(LN_S) $? . 2>/dev/null
1649	@$(STAMP) stamp-decimal
1650
1651stamp-experimental: ${experimental_headers}
1652	@-mkdir -p ${experimental_builddir}
1653	@-cd ${experimental_builddir} && $(LN_S) $? . 2>/dev/null
1654	@$(STAMP) stamp-experimental
1655
1656stamp-experimental-bits: ${experimental_bits_headers}
1657	@-mkdir -p ${experimental_bits_builddir}
1658	@-cd ${experimental_bits_builddir} && $(LN_S) $? . 2>/dev/null
1659	@$(STAMP) stamp-experimental-bits
1660
1661stamp-debug: ${debug_headers}
1662	@-mkdir -p ${debug_builddir}
1663	@-cd ${debug_builddir} && $(LN_S) $? . 2>/dev/null
1664	@$(STAMP) stamp-debug
1665
1666stamp-parallel: ${parallel_headers}
1667	@-mkdir -p ${parallel_builddir}
1668	@-cd ${parallel_builddir} && $(LN_S) $? . 2>/dev/null
1669	@$(STAMP) stamp-parallel
1670
1671stamp-${host_alias}:
1672	@-mkdir -p ${host_builddir}
1673	@-mkdir -p ${host_builddir}/../ext
1674	@$(STAMP) stamp-${host_alias}
1675
1676# Host includes static.
1677# XXX Missing dependency info for {host_headers_extra}
1678stamp-host: ${host_headers} ${bits_host_headers} ${ext_host_headers} ${host_headers_noinst} stamp-${host_alias}
1679	@cd ${host_builddir} && {\
1680	  $(LN_S) ${host_headers} ${bits_host_headers} . || true ;\
1681	  $(LN_S) ${glibcxx_srcdir}/$(BASIC_FILE_H) basic_file.h || true ;\
1682	  $(LN_S) ${glibcxx_srcdir}/$(ALLOCATOR_H) c++allocator.h || true ;\
1683	  $(LN_S) ${glibcxx_srcdir}/$(CSTDIO_H) c++io.h || true ;\
1684	  $(LN_S) ${glibcxx_srcdir}/$(CLOCALE_H) c++locale.h || true ;\
1685	  $(LN_S) ${glibcxx_srcdir}/$(CLOCALE_INTERNAL_H) . || true ;\
1686	  $(LN_S) ${glibcxx_srcdir}/$(COMPATIBILITY_H) . || true ;\
1687	  $(LN_S) ${glibcxx_srcdir}/$(CMESSAGES_H) messages_members.h || true ;\
1688	  $(LN_S) ${glibcxx_srcdir}/$(CTIME_H) time_members.h || true;\
1689	} 2>/dev/null
1690	@cd ${host_builddir}/../ext && {\
1691	  $(LN_S) ${ext_host_headers} . || true ;\
1692	} 2>/dev/null
1693	$(STAMP) stamp-host
1694
1695# Host includes dynamic.
1696@ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@stamp-namespace-version:
1697@ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@	echo 1 > stamp-namespace-version
1698@ENABLE_SYMVERS_GNU_NAMESPACE_FALSE@stamp-namespace-version:
1699@ENABLE_SYMVERS_GNU_NAMESPACE_FALSE@	echo 0 > stamp-namespace-version
1700
1701@ENABLE_EXTERN_TEMPLATE_TRUE@stamp-extern-template:
1702@ENABLE_EXTERN_TEMPLATE_TRUE@	echo 1 > stamp-extern-template
1703@ENABLE_EXTERN_TEMPLATE_FALSE@stamp-extern-template:
1704@ENABLE_EXTERN_TEMPLATE_FALSE@	echo 0 > stamp-extern-template
1705
1706@ENABLE_VISIBILITY_TRUE@stamp-visibility:
1707@ENABLE_VISIBILITY_TRUE@	echo 1 > stamp-visibility
1708@ENABLE_VISIBILITY_FALSE@stamp-visibility:
1709@ENABLE_VISIBILITY_FALSE@	echo 0 > stamp-visibility
1710
1711@ENABLE_DUAL_ABI_TRUE@stamp-dual-abi:
1712@ENABLE_DUAL_ABI_TRUE@	echo 1 > stamp-dual-abi
1713@ENABLE_DUAL_ABI_FALSE@stamp-dual-abi:
1714@ENABLE_DUAL_ABI_FALSE@	echo 0 > stamp-dual-abi
1715
1716@ENABLE_CXX11_ABI_TRUE@stamp-cxx11-abi:
1717@ENABLE_CXX11_ABI_TRUE@	echo 1 > stamp-cxx11-abi
1718@ENABLE_CXX11_ABI_FALSE@stamp-cxx11-abi:
1719@ENABLE_CXX11_ABI_FALSE@	echo 0 > stamp-cxx11-abi
1720
1721@ENABLE_ALLOCATOR_NEW_TRUE@stamp-allocator-new:
1722@ENABLE_ALLOCATOR_NEW_TRUE@	echo 1 > stamp-allocator-new
1723@ENABLE_ALLOCATOR_NEW_FALSE@stamp-allocator-new:
1724@ENABLE_ALLOCATOR_NEW_FALSE@	echo 0 > stamp-allocator-new
1725
1726@ENABLE_FLOAT128_TRUE@stamp-float128:
1727@ENABLE_FLOAT128_TRUE@	echo 'define _GLIBCXX_USE_FLOAT128 1' > stamp-float128
1728@ENABLE_FLOAT128_FALSE@stamp-float128:
1729@ENABLE_FLOAT128_FALSE@	echo 'undef _GLIBCXX_USE_FLOAT128' > stamp-float128
1730
1731# This header is not installed, it's only used to build libstdc++ itself.
1732${host_builddir}/largefile-config.h: ${CONFIG_HEADER}
1733	@rm -f $@.tmp
1734	@-grep 'define _DARWIN_USE_64_BIT_INODE' ${CONFIG_HEADER} >> $@.tmp
1735	@-grep 'define _FILE_OFFSET_BITS' ${CONFIG_HEADER} >> $@.tmp
1736	@-grep 'define _LARGE_FILES' ${CONFIG_HEADER} >> $@.tmp
1737	@mv $@.tmp $@
1738
1739# NB: The non-empty default ldbl_compat works around an AIX sed
1740# oddity, see libstdc++/31957 for details.
1741${host_builddir}/c++config.h: ${CONFIG_HEADER} \
1742			      ${glibcxx_srcdir}/include/bits/c++config \
1743			      ${host_builddir}/largefile-config.h \
1744			      stamp-${host_alias} \
1745			      ${toplevel_srcdir}/gcc/DATESTAMP \
1746			      stamp-namespace-version \
1747			      stamp-visibility \
1748			      stamp-extern-template \
1749			      stamp-dual-abi \
1750			      stamp-cxx11-abi \
1751			      stamp-allocator-new \
1752			      stamp-float128
1753	@date=`cat ${toplevel_srcdir}/gcc/DATESTAMP` ;\
1754	release=`sed 's/^\([0-9]*\).*$$/\1/' ${toplevel_srcdir}/gcc/BASE-VER` ;\
1755	ns_version=`cat stamp-namespace-version` ;\
1756	visibility=`cat stamp-visibility` ;\
1757	externtemplate=`cat stamp-extern-template` ;\
1758	dualabi=`cat stamp-dual-abi` ;\
1759	cxx11abi=`cat stamp-cxx11-abi` ;\
1760	allocatornew=`cat stamp-allocator-new` ;\
1761	float128=`cat stamp-float128` ;\
1762	ldbl_compat='s,g,g,' ;\
1763	grep "^[	 ]*#[	 ]*define[	 ][	 ]*_GLIBCXX_LONG_DOUBLE_COMPAT[	 ][	 ]*1[	 ]*$$" \
1764	${CONFIG_HEADER} > /dev/null 2>&1 \
1765	&& ldbl_compat='s,^#undef _GLIBCXX_LONG_DOUBLE_COMPAT$$,#define _GLIBCXX_LONG_DOUBLE_COMPAT 1,' ;\
1766	sed -e "s,define __GLIBCXX__,define __GLIBCXX__ $$date," \
1767	-e "s,define _GLIBCXX_RELEASE,define _GLIBCXX_RELEASE $$release," \
1768	-e "s,define _GLIBCXX_INLINE_VERSION, define _GLIBCXX_INLINE_VERSION $$ns_version," \
1769	-e "s,define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY, define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY $$visibility," \
1770	-e "s,define _GLIBCXX_EXTERN_TEMPLATE$$, define _GLIBCXX_EXTERN_TEMPLATE $$externtemplate," \
1771	-e "s,define _GLIBCXX_USE_DUAL_ABI, define _GLIBCXX_USE_DUAL_ABI $$dualabi," \
1772	-e "s,define _GLIBCXX_USE_CXX11_ABI, define _GLIBCXX_USE_CXX11_ABI $$cxx11abi," \
1773	-e "s,define _GLIBCXX_USE_ALLOCATOR_NEW, define _GLIBCXX_USE_ALLOCATOR_NEW $$allocatornew," \
1774	-e "s,define _GLIBCXX_USE_FLOAT128,$$float128," \
1775	-e "$$ldbl_compat" \
1776	    < ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
1777	sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
1778	    -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
1779	    -e 's/VERSION/_GLIBCXX_VERSION/g' \
1780	    -e 's/WORDS_/_GLIBCXX_WORDS_/g' \
1781	    -e 's/LT_OBJDIR/_GLIBCXX_LT_OBJDIR/g' \
1782	    -e 's/STDC_HEADERS/_GLIBCXX_STDC_HEADERS/g' \
1783	    -e 's/_DARWIN_USE_64_BIT_INODE/_GLIBCXX_DARWIN_USE_64_BIT_INODE/g' \
1784	    -e 's/_FILE_OFFSET_BITS/_GLIBCXX_FILE_OFFSET_BITS/g' \
1785	    -e 's/_LARGE_FILES/_GLIBCXX_LARGE_FILES/g' \
1786	    -e 's/ICONV_CONST/_GLIBCXX_ICONV_CONST/g' \
1787	    -e '/[	 ]_GLIBCXX_LONG_DOUBLE_COMPAT[	 ]/d' \
1788	    < ${CONFIG_HEADER} >> $@ ;\
1789	echo "" >> $@ ;\
1790	echo "#endif // _GLIBCXX_CXX_CONFIG_H" >> $@
1791
1792${host_builddir}/gthr.h: ${toplevel_srcdir}/libgcc/gthr.h stamp-${host_alias}
1793	sed -e '/^#pragma/b' \
1794	    -e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
1795	    -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
1796	    -e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
1797	    -e 's,^#include "\(.*\)",#include <bits/\1>,g' \
1798	    < $< > $@
1799
1800${host_builddir}/gthr-single.h: ${toplevel_srcdir}/libgcc/gthr-single.h \
1801				  stamp-${host_alias}
1802	sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
1803	    -e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \
1804	    < $< > $@
1805
1806${host_builddir}/gthr-posix.h: ${toplevel_srcdir}/libgcc/gthr-posix.h \
1807				   stamp-${host_alias}
1808	sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
1809	    -e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \
1810	    -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \
1811	    -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \
1812	    < $< > $@
1813
1814${host_builddir}/gthr-default.h: ${toplevel_srcdir}/libgcc/${thread_header} \
1815				   stamp-${host_alias}
1816	sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
1817	    -e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \
1818	    -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \
1819	    -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \
1820	    -e 's,^#include "\(.*\)",#include <bits/\1>,g' \
1821	    < $< > $@
1822
1823# Build two precompiled C++ includes, stdc++.h.gch/*.gch
1824${pch1a_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
1825	-mkdir -p ${pch1_output_builddir}
1826	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g -std=gnu++0x ${pch1_source} \
1827	-o $@
1828
1829${pch1b_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
1830	-mkdir -p ${pch1_output_builddir}
1831	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch1_source} -o $@
1832
1833# Build a precompiled TR1 include, stdtr1c++.h.gch/O2.gch
1834${pch2_output}: ${pch2_source} ${pch1_output}
1835	-mkdir -p ${pch2_output_builddir}
1836	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch2_source} -o $@
1837
1838# Build a precompiled extension include, extc++.h.gch/O2.gch
1839${pch3_output}: ${pch3_source} ${pch2_output}
1840	-mkdir -p ${pch3_output_builddir}
1841	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch3_source} -o $@
1842
1843# For robustness sake (in light of junk files or in-source
1844# configuration), copy from the build or source tree to the install
1845# tree using only the human-maintained file lists and directory
1846# components.  Yes, with minor differences, this is sheer duplication
1847# of the staging rules above using $(INSTALL_DATA) instead of LN_S and
1848# `$(mkinstalldirs)' instead of `mkdir -p'.  In particular,
1849# host_headers_extra are taken out of the build tree staging area;
1850# the rest are taken from the original source tree.
1851
1852@GLIBCXX_HOSTED_TRUE@install-data-local: install-headers
1853@GLIBCXX_HOSTED_FALSE@install-data-local: install-freestanding-headers
1854
1855# This is a subset of the full install-headers rule.  We only need <ciso646>,
1856# <cstddef>, <cfloat>, <limits>, <climits>, <version>, <cstdint>, <cstdlib>,
1857# <new>, <typeinfo>, <exception>, <initializer_list>, <cstdalign>, <cstdarg>,
1858# <concepts>, <cstdbool>, <type_traits>, <bit>, <atomic>,
1859# and any files which they include (and which we provide).
1860# <new>, <typeinfo>, <exception>, <initializer_list> and <compare>
1861# are installed by libsupc++, so only the others and the sub-includes
1862# are copied here.
1863install-freestanding-headers:
1864	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/bits
1865	for file in c++0x_warning.h atomic_base.h concept_check.h move.h; do \
1866	  $(INSTALL_DATA) ${glibcxx_srcdir}/include/bits/$${file} $(DESTDIR)${gxx_include_dir}/bits; done
1867	$(mkinstalldirs) $(DESTDIR)${host_installdir}
1868	for file in ${host_srcdir}/os_defines.h ${host_builddir}/c++config.h \
1869	  ${glibcxx_srcdir}/$(ABI_TWEAKS_SRCDIR)/cxxabi_tweaks.h \
1870	  ${glibcxx_srcdir}/$(CPU_DEFINES_SRCDIR)/cpu_defines.h; do \
1871	  $(INSTALL_DATA) $${file} $(DESTDIR)${host_installdir}; done
1872	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${std_builddir}
1873	for file in limits type_traits atomic bit concepts version; do \
1874	  $(INSTALL_DATA) ${std_builddir}/$${file} $(DESTDIR)${gxx_include_dir}/${std_builddir}; done
1875	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${c_base_builddir}
1876	for file in ciso646 cstddef cfloat climits cstdint cstdlib \
1877	  cstdalign cstdarg cstdbool; do \
1878	  $(INSTALL_DATA) ${c_base_builddir}/$${file} $(DESTDIR)${gxx_include_dir}/${c_base_builddir}; done
1879
1880# The real deal.
1881install-headers:
1882	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}
1883	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${bits_builddir}
1884	for file in ${bits_headers}; do \
1885	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${bits_builddir}; done
1886	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${backward_builddir}
1887	for file in ${backward_headers}; do \
1888	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${backward_builddir}; done
1889	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${ext_builddir}
1890	for file in ${ext_headers}; do \
1891	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${ext_builddir}; done
1892	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${pb_builddir}
1893	for dir in ${pb_subdirs}; do \
1894	  $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/$${dir} ; done
1895	for file in ${pb_headers1}; do \
1896	  install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \
1897	  relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\
1898	  $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done
1899	for file in ${pb_headers2}; do \
1900	  install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \
1901	  relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\
1902	  $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done
1903	for file in ${pb_headers3}; do \
1904	  install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \
1905	  relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\
1906	  $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done
1907	for file in ${pb_headers4}; do \
1908	  install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \
1909	  relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\
1910	  $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done
1911	for file in ${pb_headers5}; do \
1912	  install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \
1913	  relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\
1914	  $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done
1915	for file in ${pb_headers6}; do \
1916	  install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \
1917	  relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\
1918	  $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done
1919	for file in ${pb_headers7}; do \
1920	  install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \
1921	  relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\
1922	  $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done
1923	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${tr1_builddir}
1924	for file in ${tr1_headers}; do \
1925	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${tr1_builddir}; done
1926	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${tr2_builddir}
1927	for file in ${tr2_headers}; do \
1928	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${tr2_builddir}; done
1929	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${decimal_builddir}
1930	for file in ${decimal_headers}; do \
1931	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${decimal_builddir}; done
1932	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${experimental_builddir}
1933	for file in ${experimental_headers}; do \
1934	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${experimental_builddir}; done
1935	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${experimental_bits_builddir}
1936	for file in ${experimental_bits_headers}; do \
1937	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${experimental_bits_builddir}; done
1938	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${c_base_builddir}
1939	for file in ${c_base_headers}; do \
1940	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${c_base_builddir}; done
1941	c_base_headers_extra_install='$(c_base_headers_extra)';\
1942	for file in $$c_base_headers_extra_install; do \
1943	  $(INSTALL_DATA) $$file $(DESTDIR)${gxx_include_dir}/${bits_builddir}; done
1944	c_compatibility_headers_install='$(c_compatibility_headers_extra)';\
1945	for file in $$c_compatibility_headers_install; do \
1946	  $(INSTALL_DATA) $$file $(DESTDIR)${gxx_include_dir}; done
1947	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${std_builddir}
1948	for file in ${std_headers}; do \
1949	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${std_builddir}; done
1950	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${debug_builddir}
1951	for file in ${debug_headers}; do \
1952	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${debug_builddir}; done
1953	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${parallel_builddir}
1954	for file in ${parallel_headers}; do \
1955	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${parallel_builddir}; done
1956	$(mkinstalldirs) $(DESTDIR)${host_installdir}
1957	for file in ${host_headers} ${bits_host_headers} ${host_headers_extra} \
1958	 ${thread_host_headers}; do \
1959	  $(INSTALL_DATA) $${file} $(DESTDIR)${host_installdir}; done
1960	$(mkinstalldirs) $(DESTDIR)${host_installdir}/../ext
1961	for file in ${ext_host_headers}; do \
1962	  $(INSTALL_DATA) $${file} $(DESTDIR)${host_installdir}/../ext; done
1963	$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${pstl_builddir}
1964	for file in ${pstl_headers}; do \
1965	  $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${pstl_builddir}; done
1966
1967# To remove directories.
1968clean-local:
1969	rm -rf ${pch_output_dirs}
1970
1971# Stop implicit '.o' make rules from ever stomping on extensionless
1972# headers, in the improbable case where some foolish, crack-addled
1973# developer tries to create them via make in the include build
1974# directory. (This is more of an example of how this kind of rule can
1975# be made.)
1976.PRECIOUS: $(std_headers) $(c_base_headers) $(tr1_headers) $(tr2_headers)
1977	   $(decimal_headers) $(ext_headers) $(experimental_headers)
1978	   $(experimental_bits_headers)
1979$(std_headers): ; @:
1980$(c_base_headers): ; @:
1981$(tr1_headers): ; @:
1982$(decimal_headers): ; @:
1983$(ext_headers): ; @:
1984$(experimental_headers): ; @:
1985$(experimental_bits_headers): ; @:
1986
1987# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
1988@INCLUDE_DIR_NOTPARALLEL_TRUE@.NOTPARALLEL:
1989
1990# Tell versions [3.59,3.63) of GNU make to not export all variables.
1991# Otherwise a system limit (for SysV at least) may be exceeded.
1992.NOEXPORT:
1993