197403Sobrien## Makefile for the include subdirectory of the GNU C++ Standard library. 297403Sobrien## 3169691Skan## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 4169691Skan## Free Software Foundation, Inc. 597403Sobrien## 697403Sobrien## This file is part of the libstdc++ version 3 distribution. 797403Sobrien## Process this file with automake to produce Makefile.in. 897403Sobrien 997403Sobrien## This file is part of the GNU ISO C++ Library. This library is free 1097403Sobrien## software; you can redistribute it and/or modify it under the 1197403Sobrien## terms of the GNU General Public License as published by the 1297403Sobrien## Free Software Foundation; either version 2, or (at your option) 1397403Sobrien## any later version. 1497403Sobrien 1597403Sobrien## This library is distributed in the hope that it will be useful, 1697403Sobrien## but WITHOUT ANY WARRANTY; without even the implied warranty of 1797403Sobrien## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1897403Sobrien## GNU General Public License for more details. 1997403Sobrien 2097403Sobrien## You should have received a copy of the GNU General Public License along 2197403Sobrien## with this library; see the file COPYING. If not, write to the Free 22169691Skan## Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 2397403Sobrien## USA. 2497403Sobrien 25132720Skaninclude $(top_srcdir)/fragment.am 2697403Sobrien 27117397Skan# Standard C++ includes. 28132720Skanstd_srcdir = ${glibcxx_srcdir}/include/std 29117397Skanstd_builddir = . 30117397Skanstd_headers = \ 31117397Skan ${std_srcdir}/std_algorithm.h \ 32117397Skan ${std_srcdir}/std_bitset.h \ 33117397Skan ${std_srcdir}/std_complex.h \ 34117397Skan ${std_srcdir}/std_deque.h \ 35117397Skan ${std_srcdir}/std_fstream.h \ 36117397Skan ${std_srcdir}/std_functional.h \ 37117397Skan ${std_srcdir}/std_iomanip.h \ 38117397Skan ${std_srcdir}/std_ios.h \ 39117397Skan ${std_srcdir}/std_iosfwd.h \ 40117397Skan ${std_srcdir}/std_iostream.h \ 41117397Skan ${std_srcdir}/std_istream.h \ 42117397Skan ${std_srcdir}/std_iterator.h \ 43117397Skan ${std_srcdir}/std_limits.h \ 44117397Skan ${std_srcdir}/std_list.h \ 45117397Skan ${std_srcdir}/std_locale.h \ 46117397Skan ${std_srcdir}/std_map.h \ 47117397Skan ${std_srcdir}/std_memory.h \ 48117397Skan ${std_srcdir}/std_numeric.h \ 49117397Skan ${std_srcdir}/std_ostream.h \ 50117397Skan ${std_srcdir}/std_queue.h \ 51117397Skan ${std_srcdir}/std_set.h \ 52117397Skan ${std_srcdir}/std_sstream.h \ 53117397Skan ${std_srcdir}/std_stack.h \ 54117397Skan ${std_srcdir}/std_stdexcept.h \ 55117397Skan ${std_srcdir}/std_streambuf.h \ 56117397Skan ${std_srcdir}/std_string.h \ 57117397Skan ${std_srcdir}/std_utility.h \ 58117397Skan ${std_srcdir}/std_valarray.h \ 59117397Skan ${std_srcdir}/std_vector.h 60132720Skan# Renamed at build time. 61117397Skanstd_headers_rename = \ 62117397Skan algorithm \ 63117397Skan bitset \ 64117397Skan complex \ 65117397Skan deque \ 66117397Skan fstream \ 67117397Skan functional \ 68117397Skan iomanip \ 69117397Skan ios \ 70117397Skan iosfwd \ 71117397Skan iostream \ 72117397Skan istream \ 73117397Skan iterator \ 74117397Skan limits \ 75117397Skan list \ 76117397Skan locale \ 77117397Skan map \ 78117397Skan memory \ 79117397Skan numeric \ 80117397Skan ostream \ 81117397Skan queue \ 82117397Skan set \ 83117397Skan sstream \ 84117397Skan stack \ 85117397Skan stdexcept \ 86117397Skan streambuf \ 87117397Skan string \ 88117397Skan utility \ 89117397Skan valarray \ 90117397Skan vector 91117397Skan 92132720Skanbits_srcdir = ${glibcxx_srcdir}/include/bits 9397403Sobrienbits_builddir = ./bits 9497403Sobrienbits_headers = \ 95132720Skan ${bits_srcdir}/allocator.h \ 9697403Sobrien ${bits_srcdir}/basic_ios.h \ 9797403Sobrien ${bits_srcdir}/basic_ios.tcc \ 9897403Sobrien ${bits_srcdir}/basic_string.h \ 9997403Sobrien ${bits_srcdir}/basic_string.tcc \ 10097403Sobrien ${bits_srcdir}/boost_concept_check.h \ 10197403Sobrien ${bits_srcdir}/char_traits.h \ 10297403Sobrien ${bits_srcdir}/codecvt.h \ 10397403Sobrien ${bits_srcdir}/concept_check.h \ 10497403Sobrien ${bits_srcdir}/cpp_type_traits.h \ 105117397Skan ${bits_srcdir}/deque.tcc \ 10697403Sobrien ${bits_srcdir}/fstream.tcc \ 10797403Sobrien ${bits_srcdir}/functexcept.h \ 10897403Sobrien ${bits_srcdir}/gslice.h \ 10997403Sobrien ${bits_srcdir}/gslice_array.h \ 11097403Sobrien ${bits_srcdir}/indirect_array.h \ 11197403Sobrien ${bits_srcdir}/ios_base.h \ 11297403Sobrien ${bits_srcdir}/istream.tcc \ 113117397Skan ${bits_srcdir}/list.tcc \ 114117397Skan ${bits_srcdir}/locale_classes.h \ 11597403Sobrien ${bits_srcdir}/locale_facets.h \ 11697403Sobrien ${bits_srcdir}/locale_facets.tcc \ 11797403Sobrien ${bits_srcdir}/localefwd.h \ 11897403Sobrien ${bits_srcdir}/mask_array.h \ 11997403Sobrien ${bits_srcdir}/ostream.tcc \ 120169691Skan ${bits_srcdir}/ostream_insert.h \ 121132720Skan ${bits_srcdir}/postypes.h \ 12297403Sobrien ${bits_srcdir}/stream_iterator.h \ 12397403Sobrien ${bits_srcdir}/streambuf_iterator.h \ 12497403Sobrien ${bits_srcdir}/slice_array.h \ 12597403Sobrien ${bits_srcdir}/sstream.tcc \ 12697403Sobrien ${bits_srcdir}/stl_algo.h \ 12797403Sobrien ${bits_srcdir}/stl_algobase.h \ 12897403Sobrien ${bits_srcdir}/stl_bvector.h \ 12997403Sobrien ${bits_srcdir}/stl_construct.h \ 13097403Sobrien ${bits_srcdir}/stl_deque.h \ 13197403Sobrien ${bits_srcdir}/stl_function.h \ 13297403Sobrien ${bits_srcdir}/stl_heap.h \ 13397403Sobrien ${bits_srcdir}/stl_iterator.h \ 13497403Sobrien ${bits_srcdir}/stl_iterator_base_funcs.h \ 13597403Sobrien ${bits_srcdir}/stl_iterator_base_types.h \ 13697403Sobrien ${bits_srcdir}/stl_list.h \ 13797403Sobrien ${bits_srcdir}/stl_map.h \ 13897403Sobrien ${bits_srcdir}/stl_multimap.h \ 13997403Sobrien ${bits_srcdir}/stl_multiset.h \ 14097403Sobrien ${bits_srcdir}/stl_numeric.h \ 14197403Sobrien ${bits_srcdir}/stl_pair.h \ 14297403Sobrien ${bits_srcdir}/stl_queue.h \ 14397403Sobrien ${bits_srcdir}/stl_raw_storage_iter.h \ 14497403Sobrien ${bits_srcdir}/stl_relops.h \ 14597403Sobrien ${bits_srcdir}/stl_set.h \ 14697403Sobrien ${bits_srcdir}/stl_stack.h \ 14797403Sobrien ${bits_srcdir}/stl_tempbuf.h \ 14897403Sobrien ${bits_srcdir}/stl_tree.h \ 14997403Sobrien ${bits_srcdir}/stl_uninitialized.h \ 15097403Sobrien ${bits_srcdir}/stl_vector.h \ 15197403Sobrien ${bits_srcdir}/streambuf.tcc \ 15297403Sobrien ${bits_srcdir}/stringfwd.h \ 15397403Sobrien ${bits_srcdir}/valarray_array.h \ 15497403Sobrien ${bits_srcdir}/valarray_array.tcc \ 155132720Skan ${bits_srcdir}/valarray_before.h \ 156132720Skan ${bits_srcdir}/valarray_after.h \ 157117397Skan ${bits_srcdir}/vector.tcc 15897403Sobrien 159132720Skanbackward_srcdir = ${glibcxx_srcdir}/include/backward 16097403Sobrienbackward_builddir = ./backward 16197403Sobrienbackward_headers = \ 16297403Sobrien ${backward_srcdir}/complex.h \ 16397403Sobrien ${backward_srcdir}/iomanip.h \ 16497403Sobrien ${backward_srcdir}/istream.h \ 16597403Sobrien ${backward_srcdir}/ostream.h \ 16697403Sobrien ${backward_srcdir}/stream.h \ 16797403Sobrien ${backward_srcdir}/streambuf.h \ 16897403Sobrien ${backward_srcdir}/algo.h \ 16997403Sobrien ${backward_srcdir}/algobase.h \ 17097403Sobrien ${backward_srcdir}/alloc.h \ 17197403Sobrien ${backward_srcdir}/bvector.h \ 17297403Sobrien ${backward_srcdir}/defalloc.h \ 17397403Sobrien ${backward_srcdir}/deque.h \ 17497403Sobrien ${backward_srcdir}/function.h \ 17597403Sobrien ${backward_srcdir}/hash_map.h \ 17697403Sobrien ${backward_srcdir}/hash_set.h \ 17797403Sobrien ${backward_srcdir}/hashtable.h \ 17897403Sobrien ${backward_srcdir}/heap.h \ 17997403Sobrien ${backward_srcdir}/iostream.h \ 18097403Sobrien ${backward_srcdir}/iterator.h \ 18197403Sobrien ${backward_srcdir}/list.h \ 18297403Sobrien ${backward_srcdir}/map.h \ 18397403Sobrien ${backward_srcdir}/multimap.h \ 18497403Sobrien ${backward_srcdir}/new.h \ 18597403Sobrien ${backward_srcdir}/multiset.h \ 18697403Sobrien ${backward_srcdir}/pair.h \ 18797403Sobrien ${backward_srcdir}/queue.h \ 18897403Sobrien ${backward_srcdir}/rope.h \ 18997403Sobrien ${backward_srcdir}/set.h \ 19097403Sobrien ${backward_srcdir}/slist.h \ 19197403Sobrien ${backward_srcdir}/stack.h \ 19297403Sobrien ${backward_srcdir}/tempbuf.h \ 19397403Sobrien ${backward_srcdir}/tree.h \ 19497403Sobrien ${backward_srcdir}/vector.h \ 19597403Sobrien ${backward_srcdir}/fstream.h \ 19697403Sobrien ${backward_srcdir}/strstream \ 19797403Sobrien ${backward_srcdir}/backward_warning.h 19897403Sobrien 199169691Skan 200169691Skanpb_srcdir = ${glibcxx_srcdir}/include/ext/pb_ds 201169691Skanpb_builddir = ./ext/pb_ds 202169691Skan 203169691Skanpb_subdirs = \ 204169691Skan ${pb_builddir}/detail \ 205169691Skan ${pb_builddir}/detail/pairing_heap_ \ 206169691Skan ${pb_builddir}/detail/splay_tree_ \ 207169691Skan ${pb_builddir}/detail/list_update_map_ \ 208169691Skan ${pb_builddir}/detail/basic_tree_policy \ 209169691Skan ${pb_builddir}/detail/trie_policy \ 210169691Skan ${pb_builddir}/detail/gp_hash_table_map_ \ 211169691Skan ${pb_builddir}/detail/tree_policy \ 212169691Skan ${pb_builddir}/detail/binomial_heap_base_ \ 213169691Skan ${pb_builddir}/detail/resize_policy \ 214169691Skan ${pb_builddir}/detail/bin_search_tree_ \ 215169691Skan ${pb_builddir}/detail/binomial_heap_ \ 216169691Skan ${pb_builddir}/detail/thin_heap_ \ 217169691Skan ${pb_builddir}/detail/pat_trie_ \ 218169691Skan ${pb_builddir}/detail/cc_hash_table_map_ \ 219169691Skan ${pb_builddir}/detail/rc_binomial_heap_ \ 220169691Skan ${pb_builddir}/detail/left_child_next_sibling_heap_ \ 221169691Skan ${pb_builddir}/detail/unordered_iterator \ 222169691Skan ${pb_builddir}/detail/binary_heap_ \ 223169691Skan ${pb_builddir}/detail/ov_tree_map_ \ 224169691Skan ${pb_builddir}/detail/hash_fn \ 225169691Skan ${pb_builddir}/detail/eq_fn \ 226169691Skan ${pb_builddir}/detail/rb_tree_map_ \ 227169691Skan ${pb_builddir}/detail/list_update_policy 228169691Skan 229169691Skan# The ability for make and the underlying host to deal with this 230169691Skan# unweildy list as one entire entity is not a sure thing, and may 231169691Skan# cause build errors. Thus, split one list into many smaller 232169691Skan# mini-lists, with the maximum size per mini-list of no more than 42. 233169691Skan 234169691Skanpb_headers1 = \ 235169691Skan ${pb_srcdir}/assoc_container.hpp \ 236169691Skan ${pb_srcdir}/exception.hpp \ 237169691Skan ${pb_srcdir}/hash_policy.hpp \ 238169691Skan ${pb_srcdir}/list_update_policy.hpp \ 239169691Skan ${pb_srcdir}/priority_queue.hpp \ 240169691Skan ${pb_srcdir}/tag_and_trait.hpp \ 241169691Skan ${pb_srcdir}/tree_policy.hpp \ 242169691Skan ${pb_srcdir}/trie_policy.hpp \ 243169691Skan ${pb_srcdir}/detail/basic_tree_policy/basic_tree_policy_base.hpp \ 244169691Skan ${pb_srcdir}/detail/basic_tree_policy/null_node_metadata.hpp \ 245169691Skan ${pb_srcdir}/detail/basic_tree_policy/traits.hpp \ 246169691Skan ${pb_srcdir}/detail/basic_types.hpp \ 247169691Skan ${pb_srcdir}/detail/binary_heap_/binary_heap_.hpp \ 248169691Skan ${pb_srcdir}/detail/binary_heap_/const_iterator.hpp \ 249169691Skan ${pb_srcdir}/detail/binary_heap_/const_point_iterator.hpp \ 250169691Skan ${pb_srcdir}/detail/binary_heap_/constructors_destructor_fn_imps.hpp \ 251169691Skan ${pb_srcdir}/detail/binary_heap_/debug_fn_imps.hpp \ 252169691Skan ${pb_srcdir}/detail/binary_heap_/entry_cmp.hpp \ 253169691Skan ${pb_srcdir}/detail/binary_heap_/entry_pred.hpp \ 254169691Skan ${pb_srcdir}/detail/binary_heap_/erase_fn_imps.hpp \ 255169691Skan ${pb_srcdir}/detail/binary_heap_/find_fn_imps.hpp \ 256169691Skan ${pb_srcdir}/detail/binary_heap_/info_fn_imps.hpp \ 257169691Skan ${pb_srcdir}/detail/binary_heap_/insert_fn_imps.hpp \ 258169691Skan ${pb_srcdir}/detail/binary_heap_/iterators_fn_imps.hpp \ 259169691Skan ${pb_srcdir}/detail/binary_heap_/policy_access_fn_imps.hpp \ 260169691Skan ${pb_srcdir}/detail/binary_heap_/resize_policy.hpp \ 261169691Skan ${pb_srcdir}/detail/binary_heap_/split_join_fn_imps.hpp \ 262169691Skan ${pb_srcdir}/detail/binary_heap_/trace_fn_imps.hpp \ 263169691Skan ${pb_srcdir}/detail/binomial_heap_base_/binomial_heap_base_.hpp \ 264169691Skan ${pb_srcdir}/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp \ 265169691Skan ${pb_srcdir}/detail/binomial_heap_base_/debug_fn_imps.hpp \ 266169691Skan ${pb_srcdir}/detail/binomial_heap_base_/erase_fn_imps.hpp \ 267169691Skan ${pb_srcdir}/detail/binomial_heap_base_/find_fn_imps.hpp \ 268169691Skan ${pb_srcdir}/detail/binomial_heap_base_/insert_fn_imps.hpp \ 269169691Skan ${pb_srcdir}/detail/binomial_heap_base_/split_join_fn_imps.hpp \ 270169691Skan ${pb_srcdir}/detail/binomial_heap_/binomial_heap_.hpp \ 271169691Skan ${pb_srcdir}/detail/binomial_heap_/constructors_destructor_fn_imps.hpp \ 272169691Skan ${pb_srcdir}/detail/binomial_heap_/debug_fn_imps.hpp \ 273169691Skan ${pb_srcdir}/detail/bin_search_tree_/bin_search_tree_.hpp \ 274169691Skan ${pb_srcdir}/detail/bin_search_tree_/cond_dtor_entry_dealtor.hpp \ 275169691Skan ${pb_srcdir}/detail/bin_search_tree_/cond_key_dtor_entry_dealtor.hpp 276169691Skan 277169691Skanpb_headers2 = \ 278169691Skan ${pb_srcdir}/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp \ 279169691Skan ${pb_srcdir}/detail/bin_search_tree_/debug_fn_imps.hpp \ 280169691Skan ${pb_srcdir}/detail/bin_search_tree_/erase_fn_imps.hpp \ 281169691Skan ${pb_srcdir}/detail/bin_search_tree_/find_fn_imps.hpp \ 282169691Skan ${pb_srcdir}/detail/bin_search_tree_/info_fn_imps.hpp \ 283169691Skan ${pb_srcdir}/detail/bin_search_tree_/insert_fn_imps.hpp \ 284169691Skan ${pb_srcdir}/detail/bin_search_tree_/iterators_fn_imps.hpp \ 285169691Skan ${pb_srcdir}/detail/bin_search_tree_/node_iterators.hpp \ 286169691Skan ${pb_srcdir}/detail/bin_search_tree_/point_iterators.hpp \ 287169691Skan ${pb_srcdir}/detail/bin_search_tree_/policy_access_fn_imps.hpp \ 288169691Skan ${pb_srcdir}/detail/bin_search_tree_/r_erase_fn_imps.hpp \ 289169691Skan ${pb_srcdir}/detail/bin_search_tree_/rotate_fn_imps.hpp \ 290169691Skan ${pb_srcdir}/detail/bin_search_tree_/split_join_fn_imps.hpp \ 291169691Skan ${pb_srcdir}/detail/bin_search_tree_/traits.hpp \ 292169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/cc_ht_map_.hpp \ 293169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/cmp_fn_imps.hpp \ 294169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp \ 295169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp \ 296169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp \ 297169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp \ 298169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/debug_fn_imps.hpp \ 299169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp \ 300169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp \ 301169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/entry_list_fn_imps.hpp \ 302169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/erase_fn_imps.hpp \ 303169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp \ 304169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp \ 305169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/find_fn_imps.hpp \ 306169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp \ 307169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/info_fn_imps.hpp \ 308169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/insert_fn_imps.hpp \ 309169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp \ 310169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp \ 311169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/iterators_fn_imps.hpp \ 312169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/policy_access_fn_imps.hpp \ 313169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/resize_fn_imps.hpp \ 314169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp \ 315169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp \ 316169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/size_fn_imps.hpp \ 317169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/standard_policies.hpp 318169691Skan 319169691Skanpb_headers3 = \ 320169691Skan ${pb_srcdir}/detail/cc_hash_table_map_/trace_fn_imps.hpp \ 321169691Skan ${pb_srcdir}/detail/cond_dealtor.hpp \ 322169691Skan ${pb_srcdir}/detail/constructors_destructor_fn_imps.hpp \ 323169691Skan ${pb_srcdir}/detail/container_base_dispatch.hpp \ 324169691Skan ${pb_srcdir}/detail/eq_fn/eq_by_less.hpp \ 325169691Skan ${pb_srcdir}/detail/eq_fn/hash_eq_fn.hpp \ 326169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp \ 327169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp \ 328169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp \ 329169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/debug_fn_imps.hpp \ 330169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp \ 331169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp \ 332169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/erase_fn_imps.hpp \ 333169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp \ 334169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp \ 335169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/find_fn_imps.hpp \ 336169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp \ 337169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp \ 338169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/gp_ht_map_.hpp \ 339169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/info_fn_imps.hpp \ 340169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/insert_fn_imps.hpp \ 341169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp \ 342169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp \ 343169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/iterator_fn_imps.hpp \ 344169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/policy_access_fn_imps.hpp \ 345169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/resize_fn_imps.hpp \ 346169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp \ 347169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp \ 348169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/standard_policies.hpp \ 349169691Skan ${pb_srcdir}/detail/gp_hash_table_map_/trace_fn_imps.hpp \ 350169691Skan ${pb_srcdir}/detail/hash_fn/direct_mask_range_hashing_imp.hpp \ 351169691Skan ${pb_srcdir}/detail/hash_fn/direct_mod_range_hashing_imp.hpp \ 352169691Skan ${pb_srcdir}/detail/hash_fn/linear_probe_fn_imp.hpp \ 353169691Skan ${pb_srcdir}/detail/hash_fn/mask_based_range_hashing.hpp \ 354169691Skan ${pb_srcdir}/detail/hash_fn/mod_based_range_hashing.hpp \ 355169691Skan ${pb_srcdir}/detail/hash_fn/probe_fn_base.hpp \ 356169691Skan ${pb_srcdir}/detail/hash_fn/quadratic_probe_fn_imp.hpp \ 357169691Skan ${pb_srcdir}/detail/hash_fn/ranged_hash_fn.hpp \ 358169691Skan ${pb_srcdir}/detail/hash_fn/ranged_probe_fn.hpp 359169691Skan 360169691Skanpb_headers4 = \ 361169691Skan ${pb_srcdir}/detail/hash_fn/sample_probe_fn.hpp \ 362169691Skan ${pb_srcdir}/detail/hash_fn/sample_ranged_hash_fn.hpp \ 363169691Skan ${pb_srcdir}/detail/hash_fn/sample_ranged_probe_fn.hpp \ 364169691Skan ${pb_srcdir}/detail/hash_fn/sample_range_hashing.hpp \ 365169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/const_iterator.hpp \ 366169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/const_point_iterator.hpp \ 367169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp \ 368169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp \ 369169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp \ 370169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/info_fn_imps.hpp \ 371169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp \ 372169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp \ 373169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp \ 374169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/node.hpp \ 375169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/null_metadata.hpp \ 376169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp \ 377169691Skan ${pb_srcdir}/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp \ 378169691Skan ${pb_srcdir}/detail/list_update_map_/constructor_destructor_fn_imps.hpp \ 379169691Skan ${pb_srcdir}/detail/list_update_map_/debug_fn_imps.hpp \ 380169691Skan ${pb_srcdir}/detail/list_update_map_/entry_metadata_base.hpp \ 381169691Skan ${pb_srcdir}/detail/list_update_map_/erase_fn_imps.hpp \ 382169691Skan ${pb_srcdir}/detail/list_update_map_/find_fn_imps.hpp \ 383169691Skan ${pb_srcdir}/detail/list_update_map_/info_fn_imps.hpp \ 384169691Skan ${pb_srcdir}/detail/list_update_map_/insert_fn_imps.hpp \ 385169691Skan ${pb_srcdir}/detail/list_update_map_/iterators_fn_imps.hpp \ 386169691Skan ${pb_srcdir}/detail/list_update_map_/lu_map_.hpp \ 387169691Skan ${pb_srcdir}/detail/list_update_map_/trace_fn_imps.hpp \ 388169691Skan ${pb_srcdir}/detail/list_update_policy/counter_lu_metadata.hpp \ 389169691Skan ${pb_srcdir}/detail/list_update_policy/counter_lu_policy_imp.hpp \ 390169691Skan ${pb_srcdir}/detail/list_update_policy/mtf_lu_policy_imp.hpp \ 391169691Skan ${pb_srcdir}/detail/list_update_policy/sample_update_policy.hpp \ 392169691Skan ${pb_srcdir}/detail/map_debug_base.hpp \ 393169691Skan ${pb_srcdir}/detail/ov_tree_map_/cond_dtor.hpp \ 394169691Skan ${pb_srcdir}/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp \ 395169691Skan ${pb_srcdir}/detail/ov_tree_map_/debug_fn_imps.hpp \ 396169691Skan ${pb_srcdir}/detail/ov_tree_map_/erase_fn_imps.hpp \ 397169691Skan ${pb_srcdir}/detail/ov_tree_map_/info_fn_imps.hpp \ 398169691Skan ${pb_srcdir}/detail/ov_tree_map_/insert_fn_imps.hpp \ 399169691Skan ${pb_srcdir}/detail/ov_tree_map_/iterators_fn_imps.hpp \ 400169691Skan ${pb_srcdir}/detail/ov_tree_map_/node_iterators.hpp \ 401169691Skan ${pb_srcdir}/detail/ov_tree_map_/ov_tree_map_.hpp 402169691Skan 403169691Skanpb_headers5 = \ 404169691Skan ${pb_srcdir}/detail/ov_tree_map_/policy_access_fn_imps.hpp \ 405169691Skan ${pb_srcdir}/detail/ov_tree_map_/split_join_fn_imps.hpp \ 406169691Skan ${pb_srcdir}/detail/ov_tree_map_/traits.hpp \ 407169691Skan ${pb_srcdir}/detail/pairing_heap_/constructors_destructor_fn_imps.hpp \ 408169691Skan ${pb_srcdir}/detail/pairing_heap_/debug_fn_imps.hpp \ 409169691Skan ${pb_srcdir}/detail/pairing_heap_/erase_fn_imps.hpp \ 410169691Skan ${pb_srcdir}/detail/pairing_heap_/find_fn_imps.hpp \ 411169691Skan ${pb_srcdir}/detail/pairing_heap_/insert_fn_imps.hpp \ 412169691Skan ${pb_srcdir}/detail/pairing_heap_/pairing_heap_.hpp \ 413169691Skan ${pb_srcdir}/detail/pairing_heap_/split_join_fn_imps.hpp \ 414169691Skan ${pb_srcdir}/detail/pat_trie_/child_iterator.hpp \ 415169691Skan ${pb_srcdir}/detail/pat_trie_/cond_dtor_entry_dealtor.hpp \ 416169691Skan ${pb_srcdir}/detail/pat_trie_/const_child_iterator.hpp \ 417169691Skan ${pb_srcdir}/detail/pat_trie_/constructors_destructor_fn_imps.hpp \ 418169691Skan ${pb_srcdir}/detail/pat_trie_/debug_fn_imps.hpp \ 419169691Skan ${pb_srcdir}/detail/pat_trie_/erase_fn_imps.hpp \ 420169691Skan ${pb_srcdir}/detail/pat_trie_/find_fn_imps.hpp \ 421169691Skan ${pb_srcdir}/detail/pat_trie_/head.hpp \ 422169691Skan ${pb_srcdir}/detail/pat_trie_/info_fn_imps.hpp \ 423169691Skan ${pb_srcdir}/detail/pat_trie_/insert_join_fn_imps.hpp \ 424169691Skan ${pb_srcdir}/detail/pat_trie_/internal_node.hpp \ 425169691Skan ${pb_srcdir}/detail/pat_trie_/iterators_fn_imps.hpp \ 426169691Skan ${pb_srcdir}/detail/pat_trie_/leaf.hpp \ 427169691Skan ${pb_srcdir}/detail/pat_trie_/node_base.hpp \ 428169691Skan ${pb_srcdir}/detail/pat_trie_/node_iterators.hpp \ 429169691Skan ${pb_srcdir}/detail/pat_trie_/node_metadata_base.hpp \ 430169691Skan ${pb_srcdir}/detail/pat_trie_/pat_trie_.hpp \ 431169691Skan ${pb_srcdir}/detail/pat_trie_/point_iterators.hpp \ 432169691Skan ${pb_srcdir}/detail/pat_trie_/policy_access_fn_imps.hpp \ 433169691Skan ${pb_srcdir}/detail/pat_trie_/r_erase_fn_imps.hpp \ 434169691Skan ${pb_srcdir}/detail/pat_trie_/rotate_fn_imps.hpp \ 435169691Skan ${pb_srcdir}/detail/pat_trie_/split_fn_imps.hpp \ 436169691Skan ${pb_srcdir}/detail/pat_trie_/split_join_branch_bag.hpp \ 437169691Skan ${pb_srcdir}/detail/pat_trie_/synth_e_access_traits.hpp \ 438169691Skan ${pb_srcdir}/detail/pat_trie_/trace_fn_imps.hpp \ 439169691Skan ${pb_srcdir}/detail/pat_trie_/traits.hpp \ 440169691Skan ${pb_srcdir}/detail/pat_trie_/update_fn_imps.hpp \ 441169691Skan ${pb_srcdir}/detail/priority_queue_base_dispatch.hpp \ 442169691Skan ${pb_srcdir}/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp \ 443169691Skan ${pb_srcdir}/detail/rb_tree_map_/debug_fn_imps.hpp 444169691Skan 445169691Skanpb_headers6 = \ 446169691Skan ${pb_srcdir}/detail/rb_tree_map_/erase_fn_imps.hpp \ 447169691Skan ${pb_srcdir}/detail/rb_tree_map_/find_fn_imps.hpp \ 448169691Skan ${pb_srcdir}/detail/rb_tree_map_/info_fn_imps.hpp \ 449169691Skan ${pb_srcdir}/detail/rb_tree_map_/insert_fn_imps.hpp \ 450169691Skan ${pb_srcdir}/detail/rb_tree_map_/node.hpp \ 451169691Skan ${pb_srcdir}/detail/rb_tree_map_/rb_tree_.hpp \ 452169691Skan ${pb_srcdir}/detail/rb_tree_map_/split_join_fn_imps.hpp \ 453169691Skan ${pb_srcdir}/detail/rb_tree_map_/traits.hpp \ 454169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp \ 455169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/debug_fn_imps.hpp \ 456169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/erase_fn_imps.hpp \ 457169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/insert_fn_imps.hpp \ 458169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/rc_binomial_heap_.hpp \ 459169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/rc.hpp \ 460169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/split_join_fn_imps.hpp \ 461169691Skan ${pb_srcdir}/detail/rc_binomial_heap_/trace_fn_imps.hpp \ 462169691Skan ${pb_srcdir}/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp \ 463169691Skan ${pb_srcdir}/detail/resize_policy/hash_exponential_size_policy_imp.hpp \ 464169691Skan ${pb_srcdir}/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp \ 465169691Skan ${pb_srcdir}/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp \ 466169691Skan ${pb_srcdir}/detail/resize_policy/hash_prime_size_policy_imp.hpp \ 467169691Skan ${pb_srcdir}/detail/resize_policy/hash_standard_resize_policy_imp.hpp \ 468169691Skan ${pb_srcdir}/detail/resize_policy/sample_resize_policy.hpp \ 469169691Skan ${pb_srcdir}/detail/resize_policy/sample_resize_trigger.hpp \ 470169691Skan ${pb_srcdir}/detail/resize_policy/sample_size_policy.hpp \ 471169691Skan ${pb_srcdir}/detail/splay_tree_/constructors_destructor_fn_imps.hpp \ 472169691Skan ${pb_srcdir}/detail/splay_tree_/debug_fn_imps.hpp \ 473169691Skan ${pb_srcdir}/detail/splay_tree_/erase_fn_imps.hpp \ 474169691Skan ${pb_srcdir}/detail/splay_tree_/find_fn_imps.hpp \ 475169691Skan ${pb_srcdir}/detail/splay_tree_/info_fn_imps.hpp \ 476169691Skan ${pb_srcdir}/detail/splay_tree_/insert_fn_imps.hpp \ 477169691Skan ${pb_srcdir}/detail/splay_tree_/node.hpp \ 478169691Skan ${pb_srcdir}/detail/splay_tree_/splay_fn_imps.hpp \ 479169691Skan ${pb_srcdir}/detail/splay_tree_/splay_tree_.hpp \ 480169691Skan ${pb_srcdir}/detail/splay_tree_/split_join_fn_imps.hpp \ 481169691Skan ${pb_srcdir}/detail/splay_tree_/traits.hpp \ 482169691Skan ${pb_srcdir}/detail/standard_policies.hpp \ 483169691Skan ${pb_srcdir}/detail/thin_heap_/constructors_destructor_fn_imps.hpp \ 484169691Skan ${pb_srcdir}/detail/thin_heap_/debug_fn_imps.hpp \ 485169691Skan ${pb_srcdir}/detail/thin_heap_/erase_fn_imps.hpp 486169691Skan 487169691Skanpb_headers7 = \ 488169691Skan ${pb_srcdir}/detail/thin_heap_/find_fn_imps.hpp \ 489169691Skan ${pb_srcdir}/detail/thin_heap_/insert_fn_imps.hpp \ 490169691Skan ${pb_srcdir}/detail/thin_heap_/split_join_fn_imps.hpp \ 491169691Skan ${pb_srcdir}/detail/thin_heap_/thin_heap_.hpp \ 492169691Skan ${pb_srcdir}/detail/thin_heap_/trace_fn_imps.hpp \ 493169691Skan ${pb_srcdir}/detail/tree_policy/node_metadata_selector.hpp \ 494169691Skan ${pb_srcdir}/detail/tree_policy/null_node_update_imp.hpp \ 495169691Skan ${pb_srcdir}/detail/tree_policy/order_statistics_imp.hpp \ 496169691Skan ${pb_srcdir}/detail/tree_policy/sample_tree_node_update.hpp \ 497169691Skan ${pb_srcdir}/detail/tree_trace_base.hpp \ 498169691Skan ${pb_srcdir}/detail/trie_policy/node_metadata_selector.hpp \ 499169691Skan ${pb_srcdir}/detail/trie_policy/null_node_update_imp.hpp \ 500169691Skan ${pb_srcdir}/detail/trie_policy/order_statistics_imp.hpp \ 501169691Skan ${pb_srcdir}/detail/trie_policy/prefix_search_node_update_imp.hpp \ 502169691Skan ${pb_srcdir}/detail/trie_policy/sample_trie_e_access_traits.hpp \ 503169691Skan ${pb_srcdir}/detail/trie_policy/sample_trie_node_update.hpp \ 504169691Skan ${pb_srcdir}/detail/trie_policy/string_trie_e_access_traits_imp.hpp \ 505169691Skan ${pb_srcdir}/detail/trie_policy/trie_policy_base.hpp \ 506169691Skan ${pb_srcdir}/detail/types_traits.hpp \ 507169691Skan ${pb_srcdir}/detail/type_utils.hpp \ 508169691Skan ${pb_srcdir}/detail/unordered_iterator/const_iterator.hpp \ 509169691Skan ${pb_srcdir}/detail/unordered_iterator/const_point_iterator.hpp \ 510169691Skan ${pb_srcdir}/detail/unordered_iterator/iterator.hpp \ 511169691Skan ${pb_srcdir}/detail/unordered_iterator/point_iterator.hpp 512169691Skan 513169691Skan 514169691Skan 515132720Skanext_srcdir = ${glibcxx_srcdir}/include/ext 516169691Skanext_builddir = ./ext 51797403Sobrienext_headers = \ 51897403Sobrien ${ext_srcdir}/algorithm \ 519169691Skan ${ext_srcdir}/atomicity.h \ 520169691Skan ${ext_srcdir}/array_allocator.h \ 521132720Skan ${ext_srcdir}/bitmap_allocator.h \ 522169691Skan ${ext_srcdir}/codecvt_specializations.h \ 523169691Skan ${ext_srcdir}/concurrence.h \ 524132720Skan ${ext_srcdir}/debug_allocator.h \ 52597403Sobrien ${ext_srcdir}/stdio_filebuf.h \ 526132720Skan ${ext_srcdir}/stdio_sync_filebuf.h \ 52797403Sobrien ${ext_srcdir}/functional \ 52897403Sobrien ${ext_srcdir}/hash_map \ 52997403Sobrien ${ext_srcdir}/hash_set \ 530169691Skan ${ext_srcdir}/hash_fun.h \ 531169691Skan ${ext_srcdir}/hashtable.h \ 53297403Sobrien ${ext_srcdir}/iterator \ 533132720Skan ${ext_srcdir}/malloc_allocator.h \ 53497403Sobrien ${ext_srcdir}/memory \ 535132720Skan ${ext_srcdir}/mt_allocator.h \ 536132720Skan ${ext_srcdir}/new_allocator.h \ 53797403Sobrien ${ext_srcdir}/numeric \ 538169691Skan ${ext_srcdir}/numeric_traits.h \ 539132720Skan ${ext_srcdir}/pod_char_traits.h \ 540132720Skan ${ext_srcdir}/pool_allocator.h \ 54197403Sobrien ${ext_srcdir}/rb_tree \ 54297403Sobrien ${ext_srcdir}/rope \ 54397403Sobrien ${ext_srcdir}/ropeimpl.h \ 54497403Sobrien ${ext_srcdir}/slist \ 545169691Skan ${ext_srcdir}/throw_allocator.h \ 546169691Skan ${ext_srcdir}/typelist.h \ 547169691Skan ${ext_srcdir}/type_traits.h \ 548169691Skan ${ext_srcdir}/rc_string_base.h \ 549169691Skan ${ext_srcdir}/sso_string_base.h \ 550169691Skan ${ext_srcdir}/vstring.h \ 551169691Skan ${ext_srcdir}/vstring.tcc \ 552169691Skan ${ext_srcdir}/vstring_fwd.h \ 553169691Skan ${ext_srcdir}/vstring_util.h 55497403Sobrien 555169691Skan 556169691Skantr1_srcdir = ${glibcxx_srcdir}/include/tr1 557169691Skantr1_builddir = ./tr1 558169691Skantr1_headers = \ 559169691Skan ${tr1_srcdir}/array \ 560169691Skan ${tr1_srcdir}/bind_repeat.h \ 561169691Skan ${tr1_srcdir}/bind_iterate.h \ 562169691Skan ${tr1_srcdir}/boost_shared_ptr.h \ 563169691Skan ${tr1_srcdir}/cctype \ 564169691Skan ${tr1_srcdir}/cfenv \ 565169691Skan ${tr1_srcdir}/cfloat \ 566169691Skan ${tr1_srcdir}/cinttypes \ 567169691Skan ${tr1_srcdir}/climits \ 568169691Skan ${tr1_srcdir}/cmath \ 569169691Skan ${tr1_srcdir}/common.h \ 570169691Skan ${tr1_srcdir}/complex \ 571169691Skan ${tr1_srcdir}/cstdarg \ 572169691Skan ${tr1_srcdir}/cstdbool \ 573169691Skan ${tr1_srcdir}/cstdint \ 574169691Skan ${tr1_srcdir}/cstdio \ 575169691Skan ${tr1_srcdir}/cstdlib \ 576169691Skan ${tr1_srcdir}/ctgmath \ 577169691Skan ${tr1_srcdir}/ctime \ 578169691Skan ${tr1_srcdir}/ctype.h \ 579169691Skan ${tr1_srcdir}/cwchar \ 580169691Skan ${tr1_srcdir}/cwctype \ 581169691Skan ${tr1_srcdir}/fenv.h \ 582169691Skan ${tr1_srcdir}/float.h \ 583169691Skan ${tr1_srcdir}/functional \ 584169691Skan ${tr1_srcdir}/functional_hash.h \ 585169691Skan ${tr1_srcdir}/functional_iterate.h \ 586169691Skan ${tr1_srcdir}/hashtable \ 587169691Skan ${tr1_srcdir}/hashtable_policy.h \ 588169691Skan ${tr1_srcdir}/inttypes.h \ 589169691Skan ${tr1_srcdir}/limits.h \ 590169691Skan ${tr1_srcdir}/math.h \ 591169691Skan ${tr1_srcdir}/memory \ 592169691Skan ${tr1_srcdir}/mu_iterate.h \ 593169691Skan ${tr1_srcdir}/random \ 594169691Skan ${tr1_srcdir}/random.tcc \ 595169691Skan ${tr1_srcdir}/ref_fwd.h \ 596169691Skan ${tr1_srcdir}/ref_wrap_iterate.h \ 597169691Skan ${tr1_srcdir}/repeat.h \ 598169691Skan ${tr1_srcdir}/stdarg.h \ 599169691Skan ${tr1_srcdir}/stdbool.h \ 600169691Skan ${tr1_srcdir}/stdint.h \ 601169691Skan ${tr1_srcdir}/stdio.h \ 602169691Skan ${tr1_srcdir}/stdlib.h \ 603169691Skan ${tr1_srcdir}/tgmath.h \ 604169691Skan ${tr1_srcdir}/tuple \ 605169691Skan ${tr1_srcdir}/tuple_defs.h \ 606169691Skan ${tr1_srcdir}/tuple_iterate.h \ 607169691Skan ${tr1_srcdir}/type_traits \ 608169691Skan ${tr1_srcdir}/type_traits_fwd.h \ 609169691Skan ${tr1_srcdir}/unordered_set \ 610169691Skan ${tr1_srcdir}/unordered_map \ 611169691Skan ${tr1_srcdir}/utility \ 612169691Skan ${tr1_srcdir}/wchar.h \ 613169691Skan ${tr1_srcdir}/wctype.h 614169691Skan 615169691Skan 61697403Sobrien# This is the common subset of files that all three "C" header models use. 617132720Skanc_base_srcdir = $(C_INCLUDE_DIR) 61897403Sobrienc_base_builddir = . 61997403Sobrienc_base_headers = \ 62097403Sobrien ${c_base_srcdir}/std_cassert.h \ 62197403Sobrien ${c_base_srcdir}/std_cctype.h \ 62297403Sobrien ${c_base_srcdir}/std_cerrno.h \ 62397403Sobrien ${c_base_srcdir}/std_cfloat.h \ 62497403Sobrien ${c_base_srcdir}/std_ciso646.h \ 62597403Sobrien ${c_base_srcdir}/std_climits.h \ 62697403Sobrien ${c_base_srcdir}/std_clocale.h \ 62797403Sobrien ${c_base_srcdir}/std_cmath.h \ 62897403Sobrien ${c_base_srcdir}/std_csetjmp.h \ 62997403Sobrien ${c_base_srcdir}/std_csignal.h \ 63097403Sobrien ${c_base_srcdir}/std_cstdarg.h \ 63197403Sobrien ${c_base_srcdir}/std_cstddef.h \ 63297403Sobrien ${c_base_srcdir}/std_cstdio.h \ 63397403Sobrien ${c_base_srcdir}/std_cstdlib.h \ 63497403Sobrien ${c_base_srcdir}/std_cstring.h \ 63597403Sobrien ${c_base_srcdir}/std_ctime.h \ 63697403Sobrien ${c_base_srcdir}/std_cwchar.h \ 637132720Skan ${c_base_srcdir}/std_cwctype.h 63897403Sobrienc_base_headers_rename = \ 63997403Sobrien cassert \ 64097403Sobrien cctype \ 64197403Sobrien cerrno \ 64297403Sobrien cfloat \ 64397403Sobrien ciso646 \ 64497403Sobrien climits \ 64597403Sobrien clocale \ 64697403Sobrien cmath \ 64797403Sobrien csetjmp \ 64897403Sobrien csignal \ 64997403Sobrien cstdarg \ 65097403Sobrien cstddef \ 65197403Sobrien cstdio \ 65297403Sobrien cstdlib \ 65397403Sobrien cstring \ 65497403Sobrien ctime \ 65597403Sobrien cwchar \ 656132720Skan cwctype 65797403Sobrien 658102782Skan# "C" compatibility headers. 659132720Skanc_compatibility_srcdir = ${glibcxx_srcdir}/include/c_compatibility 660102782Skanc_compatibility_builddir = . 661102782Skanc_compatibility_headers = \ 662102782Skan ${c_compatibility_srcdir}/assert.h \ 663102782Skan ${c_compatibility_srcdir}/ctype.h \ 664102782Skan ${c_compatibility_srcdir}/errno.h \ 665102782Skan ${c_compatibility_srcdir}/float.h \ 666102782Skan ${c_compatibility_srcdir}/iso646.h \ 667102782Skan ${c_compatibility_srcdir}/limits.h \ 668102782Skan ${c_compatibility_srcdir}/locale.h \ 669102782Skan ${c_compatibility_srcdir}/math.h \ 670102782Skan ${c_compatibility_srcdir}/setjmp.h \ 671102782Skan ${c_compatibility_srcdir}/signal.h \ 672102782Skan ${c_compatibility_srcdir}/stdarg.h \ 673102782Skan ${c_compatibility_srcdir}/stddef.h \ 674102782Skan ${c_compatibility_srcdir}/stdio.h \ 675102782Skan ${c_compatibility_srcdir}/stdlib.h \ 676102782Skan ${c_compatibility_srcdir}/string.h \ 677102782Skan ${c_compatibility_srcdir}/time.h \ 678102782Skan ${c_compatibility_srcdir}/wchar.h \ 679132720Skan ${c_compatibility_srcdir}/wctype.h 680102782Skan 681132720Skan# Debug mode headers 682132720Skandebug_srcdir = ${glibcxx_srcdir}/include/debug 683132720Skandebug_builddir = ./debug 684132720Skandebug_headers = \ 685132720Skan ${debug_srcdir}/bitset \ 686132720Skan ${debug_srcdir}/debug.h \ 687132720Skan ${debug_srcdir}/deque \ 688132720Skan ${debug_srcdir}/formatter.h \ 689169691Skan ${debug_srcdir}/functions.h \ 690132720Skan ${debug_srcdir}/hash_map \ 691132720Skan ${debug_srcdir}/hash_map.h \ 692132720Skan ${debug_srcdir}/hash_multimap.h \ 693132720Skan ${debug_srcdir}/hash_multiset.h \ 694132720Skan ${debug_srcdir}/hash_set \ 695132720Skan ${debug_srcdir}/hash_set.h \ 696132720Skan ${debug_srcdir}/list \ 697132720Skan ${debug_srcdir}/map \ 698169691Skan ${debug_srcdir}/macros.h \ 699132720Skan ${debug_srcdir}/map.h \ 700132720Skan ${debug_srcdir}/multimap.h \ 701132720Skan ${debug_srcdir}/multiset.h \ 702132720Skan ${debug_srcdir}/safe_base.h \ 703132720Skan ${debug_srcdir}/safe_iterator.h \ 704132720Skan ${debug_srcdir}/safe_iterator.tcc \ 705132720Skan ${debug_srcdir}/safe_sequence.h \ 706132720Skan ${debug_srcdir}/set \ 707132720Skan ${debug_srcdir}/set.h \ 708132720Skan ${debug_srcdir}/string \ 709132720Skan ${debug_srcdir}/vector 710132720Skan 71197403Sobrien# Some of the different "C" header models need extra files. 712102782Skan# Some "C" header schemes require the "C" compatibility headers. 71397403Sobrien# For --enable-cheaders=c_std 714132720Skanif GLIBCXX_C_HEADERS_C_STD 715132720Skanc_base_headers_extra = ${c_base_srcdir}/cmath.tcc 71697403Sobrienelse 717132720Skanc_base_headers_extra = 71897403Sobrienendif 71997403Sobrien 720132720Skanif GLIBCXX_C_HEADERS_COMPATIBILITY 721102782Skanc_compatibility_headers_extra = ${c_compatibility_headers} 722102782Skanelse 723132720Skanc_compatibility_headers_extra = 724102782Skanendif 725102782Skan 726132720Skanhost_srcdir = ${glibcxx_srcdir}/$(OS_INC_SRCDIR) 727132720Skanhost_builddir = ./${host_alias}/bits 728169691Skanhost_installdir = ${gxx_include_dir}/${host_alias}$(MULTISUBDIR)/bits 729132720Skanhost_headers = \ 730132720Skan ${host_srcdir}/ctype_base.h \ 731132720Skan ${host_srcdir}/ctype_inline.h \ 732132720Skan ${host_srcdir}/ctype_noninline.h \ 733132720Skan ${host_srcdir}/os_defines.h \ 734169691Skan ${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h \ 735169691Skan ${glibcxx_srcdir}/$(ABI_TWEAKS_SRCDIR)/cxxabi_tweaks.h \ 736169691Skan ${glibcxx_srcdir}/$(CPU_DEFINES_SRCDIR)/cpu_defines.h 737117397Skan 738132720Skan# Non-installed host_header files. 739169691SkanCOMPATIBILITY_H = config/abi/compatibility.h 740132720Skanhost_headers_noinst = \ 741169691Skan ${glibcxx_srcdir}/$(CLOCALE_INTERNAL_H) \ 742169691Skan ${glibcxx_srcdir}/$(COMPATIBILITY_H) 743117397Skan 744132720Skan# These host_headers_extra files are all built with ad hoc naming rules. 745132720Skanhost_headers_extra = \ 746132720Skan ${host_builddir}/basic_file.h \ 747132720Skan ${host_builddir}/c++config.h \ 748132720Skan ${host_builddir}/c++allocator.h \ 749132720Skan ${host_builddir}/c++io.h \ 750132720Skan ${host_builddir}/c++locale.h \ 751132720Skan ${host_builddir}/messages_members.h \ 752169691Skan ${host_builddir}/time_members.h 75397403Sobrien 754132720Skanthread_host_headers = \ 755132720Skan ${host_builddir}/gthr.h \ 756132720Skan ${host_builddir}/gthr-single.h \ 757132720Skan ${host_builddir}/gthr-posix.h \ 758169691Skan ${host_builddir}/gthr-tpf.h \ 759132720Skan ${host_builddir}/gthr-default.h 76097403Sobrien 761169691Skan 762169691Skanpch1_source = ${glibcxx_srcdir}/include/precompiled/stdc++.h 763169691Skanpch1_output_builddir = ${host_builddir}/stdc++.h.gch 764169691Skanpch1_output_anchor = ${host_builddir}/stdc++.h 765169691Skanpch1_output_installdir = ${host_installdir}/stdc++.h.gch 766169691Skanpch1a_output = ${pch1_output_builddir}/O0g.gch 767169691Skanpch1b_output = ${pch1_output_builddir}/O2g.gch 768169691Skanpch1_output = ${pch1a_output} ${pch1b_output} 769169691Skan 770169691Skanpch2_source = ${glibcxx_srcdir}/include/precompiled/stdtr1c++.h 771169691Skanpch2_output_builddir = ${host_builddir}/stdtr1c++.h.gch 772169691Skanpch2_output_anchor = ${host_builddir}/stdtr1c++.h 773169691Skanpch2_output_installdir = ${host_installdir}/stdtr1c++.h.gch 774169691Skanpch2_output = ${pch2_output_builddir}/O2g.gch 775169691Skan 776169691Skanpch3_source = ${glibcxx_srcdir}/include/precompiled/extc++.h 777169691Skanpch3_output_builddir = ${host_builddir}/extc++.h.gch 778169691Skanpch3_output_anchor = ${host_builddir}/extc++.h 779169691Skanpch3_output_installdir = ${host_installdir}/extc++.h.gch 780169691Skanpch3_output = ${pch3_output_builddir}/O2g.gch 781169691Skan 782169691Skan 783169691Skanpch_output = ${pch1_output} ${pch2_output} ${pch3_output} 784169691Skanpch_output_dirs = \ 785169691Skan ${pch1_output_builddir} ${pch2_output_builddir} ${pch3_output_builddir} 786169691Skanpch_output_anchors = \ 787169691Skan ${pch1_output_anchor} ${pch2_output_anchor} ${pch3_output_anchor} 788132720SkanPCHFLAGS=-Winvalid-pch -Wno-deprecated -x c++-header $(CXXFLAGS) 789132720Skanif GLIBCXX_BUILD_PCH 790169691Skanpch_build = ${pch_output} 791132720Skanpch_install = install-pch 792132720Skanelse 793132720Skanpch_build = 794132720Skanpch_install = 795132720Skanendif 796132720Skan 79797403Sobrien# List of all timestamp files. By keeping only one copy of this list, both 79897403Sobrien# CLEANFILES and all-local are kept up-to-date. 799132720Skanallstamped = \ 800102782Skan stamp-std stamp-bits stamp-c_base stamp-c_compatibility \ 801169691Skan stamp-backward stamp-ext stamp-pb stamp-tr1 stamp-debug stamp-host 80297403Sobrien 803132720Skan# List of all files that are created by explicit building, editing, or 804132720Skan# catenation. 805132720Skanallcreated = \ 806132720Skan ${host_builddir}/c++config.h \ 807132720Skan ${thread_host_headers} \ 808132720Skan ${pch_build} 809132720Skan 81097403Sobrien# Here are the rules for building the headers 811132720Skanall-local: ${allstamped} ${allcreated} 81297403Sobrien 81397403Sobrien# This rule is slightly different, in that we must change the name of the 81497403Sobrien# local file from std_foo.h to foo. 81597403Sobrienstamp-std: ${std_headers} 81697403Sobrien @if [ ! -d "${std_builddir}" ]; then \ 81797403Sobrien mkdir -p ${std_builddir} ;\ 81897403Sobrien fi ;\ 819132720Skan if [ ! -f stamp-std ]; then \ 820132720Skan (cd ${std_builddir} && for h in $?; do \ 821169691Skan build_name=`echo $$h | sed -e 's,.*/std_,,' -e 's,\.h$$,,'` ;\ 822169691Skan $(LN_S) $$h ./$${build_name} || true ;\ 823132720Skan done) ;\ 824132720Skan fi ;\ 825132720Skan $(STAMP) stamp-std 82697403Sobrien 82797403Sobrienstamp-bits: ${bits_headers} 82897403Sobrien @if [ ! -d "${bits_builddir}" ]; then \ 82997403Sobrien mkdir -p ${bits_builddir} ;\ 83097403Sobrien fi ;\ 831132720Skan if [ ! -f stamp-bits ]; then \ 832132720Skan (cd ${bits_builddir} && $(LN_S) $? . || true) ;\ 833132720Skan fi ;\ 834132720Skan $(STAMP) stamp-bits 83597403Sobrien 836132720Skanstamp-c_base: stamp-bits ${c_base_headers} ${c_base_headers_extra} 83797403Sobrien @if [ ! -d "${c_base_builddir}" ]; then \ 83897403Sobrien mkdir -p ${c_base_builddir} ;\ 83997403Sobrien fi ;\ 840132720Skan if [ ! -f stamp-c_base ]; then \ 841132720Skan (cd ${c_base_builddir} && for h in ${c_base_headers}; do \ 842169691Skan build_name=`echo $$h | sed -e 's,.*/std_,,' -e 's,\.h$$,,'` ;\ 843169691Skan $(LN_S) $$h ./$${build_name} || true ;\ 844132720Skan done) ;\ 845132720Skan if [ ! -z "${c_base_headers_extra}" ]; then \ 846132720Skan (cd ${bits_builddir} && $(LN_S) ${c_base_headers_extra} . || true) ;\ 847132720Skan fi ;\ 84897403Sobrien fi ;\ 849132720Skan $(STAMP) stamp-c_base 85097403Sobrien 851102782Skanstamp-c_compatibility: ${c_compatibility_headers_extra} 852102782Skan @if [ ! -d "${c_compatibility_builddir}" ]; then \ 853102782Skan mkdir -p ${c_compatibility_builddir} ;\ 854102782Skan fi ;\ 855132720Skan if [ ! -f stamp-c_compatibility ]; then \ 856132720Skan if [ ! -z "${c_compatibility_headers_extra}" ]; then \ 857132720Skan (cd ${c_compatibility_builddir} && $(LN_S) $? . || true) ;\ 858132720Skan fi ;\ 859102782Skan fi ;\ 860132720Skan $(STAMP) stamp-c_compatibility 861102782Skan 86297403Sobrienstamp-backward: ${backward_headers} 86397403Sobrien @if [ ! -d "${backward_builddir}" ]; then \ 86497403Sobrien mkdir -p ${backward_builddir} ;\ 86597403Sobrien fi ;\ 866132720Skan if [ ! -f stamp-backward ]; then \ 867132720Skan (cd ${backward_builddir} && $(LN_S) $? . || true) ;\ 868132720Skan fi ;\ 869132720Skan $(STAMP) stamp-backward 87097403Sobrien 87197403Sobrienstamp-ext: ${ext_headers} 87297403Sobrien @if [ ! -d "${ext_builddir}" ]; then \ 873132720Skan mkdir -p ${ext_builddir} ;\ 87497403Sobrien fi ;\ 875132720Skan if [ ! -f stamp-ext ]; then \ 876132720Skan (cd ${ext_builddir} && $(LN_S) $? . || true) ;\ 877132720Skan fi ;\ 878132720Skan $(STAMP) stamp-ext 87997403Sobrien 880169691Skan# Have to deal with nested include directories, gah! Strip off source 881169691Skan# directory before making the link. 882169691Skan# XXX check ${pb_headers} 883169691Skanstamp-pb: 884169691Skan @if [ ! -d "${pb_builddir}" ]; then \ 885169691Skan mkdir -p ${pb_subdirs} ;\ 886169691Skan fi 887169691Skan @if [ ! -f stamp-pb ]; then \ 888169691Skan cd ${pb_builddir} && for h in ${pb_headers1}; do \ 889169691Skan build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\ 890169691Skan $(LN_S) $$h $${build_name} || true ;\ 891169691Skan done ;\ 892169691Skan fi 893169691Skan @if [ ! -f stamp-pb ]; then \ 894169691Skan cd ${pb_builddir} && for h in ${pb_headers2}; do \ 895169691Skan build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\ 896169691Skan $(LN_S) $$h $${build_name} || true ;\ 897169691Skan done ;\ 898169691Skan fi 899169691Skan @if [ ! -f stamp-pb ]; then \ 900169691Skan cd ${pb_builddir} && for h in ${pb_headers3}; do \ 901169691Skan build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\ 902169691Skan $(LN_S) $$h $${build_name} || true ;\ 903169691Skan done ;\ 904169691Skan fi 905169691Skan @if [ ! -f stamp-pb ]; then \ 906169691Skan cd ${pb_builddir} && for h in ${pb_headers4}; do \ 907169691Skan build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\ 908169691Skan $(LN_S) $$h $${build_name} || true ;\ 909169691Skan done ;\ 910169691Skan fi 911169691Skan @if [ ! -f stamp-pb ]; then \ 912169691Skan cd ${pb_builddir} && for h in ${pb_headers5}; do \ 913169691Skan build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\ 914169691Skan $(LN_S) $$h $${build_name} || true ;\ 915169691Skan done ;\ 916169691Skan fi 917169691Skan @if [ ! -f stamp-pb ]; then \ 918169691Skan cd ${pb_builddir} && for h in ${pb_headers6}; do \ 919169691Skan build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\ 920169691Skan $(LN_S) $$h $${build_name} || true ;\ 921169691Skan done ;\ 922169691Skan fi 923169691Skan @if [ ! -f stamp-pb ]; then \ 924169691Skan cd ${pb_builddir} && for h in ${pb_headers7}; do \ 925169691Skan build_name=`echo $$h | sed -e "s|${pb_srcdir}|.|g"` ;\ 926169691Skan $(LN_S) $$h $${build_name} || true ;\ 927169691Skan done ;\ 928169691Skan fi 929169691Skan $(STAMP) stamp-pb 930169691Skan 931169691Skanstamp-tr1: ${tr1_headers} 932169691Skan @if [ ! -d "${tr1_builddir}" ]; then \ 933169691Skan mkdir -p ${tr1_builddir} ;\ 934169691Skan fi ;\ 935169691Skan if [ ! -f stamp-tr1 ]; then \ 936169691Skan (cd ${tr1_builddir} && $(LN_S) $? . || true) ;\ 937169691Skan fi ;\ 938169691Skan $(STAMP) stamp-tr1 939169691Skan 940132720Skanstamp-debug: ${debug_headers} 941132720Skan @if [ ! -d "${debug_builddir}" ]; then \ 942132720Skan mkdir -p ${debug_builddir} ;\ 943132720Skan fi ;\ 944132720Skan if [ ! -f stamp-debug ]; then \ 945132720Skan (cd ${debug_builddir} && @LN_S@ $? . || true) ;\ 946132720Skan fi ;\ 947132720Skan $(STAMP) stamp-debug 94897403Sobrien 949132720Skanstamp-${host_alias}: 950132720Skan @if [ ! -d ${host_builddir} ]; then \ 951132720Skan mkdir -p ${host_builddir} ;\ 952132720Skan fi ;\ 953132720Skan $(STAMP) stamp-${host_alias} 95497403Sobrien 955132720Skan# Host includes static. 956132720Skan# XXX Missing dependency info for {host_headers_extra} 957132720Skanstamp-host: ${host_headers} ${host_headers_noinst} stamp-${host_alias} 958132720Skan @if [ ! -f stamp-host ]; then \ 959132720Skan (cd ${host_builddir} ;\ 960132720Skan $(LN_S) ${host_headers} . || true ;\ 961132720Skan $(LN_S) ${glibcxx_srcdir}/$(BASIC_FILE_H) basic_file.h || true ;\ 962132720Skan $(LN_S) ${glibcxx_srcdir}/$(ALLOCATOR_H) c++allocator.h || true ;\ 963132720Skan $(LN_S) ${glibcxx_srcdir}/$(CSTDIO_H) c++io.h || true ;\ 964132720Skan $(LN_S) ${glibcxx_srcdir}/$(CLOCALE_H) c++locale.h || true ;\ 965132720Skan $(LN_S) ${glibcxx_srcdir}/$(CLOCALE_INTERNAL_H) . || true ;\ 966169691Skan $(LN_S) ${glibcxx_srcdir}/$(COMPATIBILITY_H) . || true ;\ 967132720Skan $(LN_S) ${glibcxx_srcdir}/$(CMESSAGES_H) messages_members.h || true ;\ 968169691Skan $(LN_S) ${glibcxx_srcdir}/$(CTIME_H) time_members.h || true);\ 969132720Skan fi ;\ 970132720Skan $(STAMP) stamp-host 971132720Skan 972132720Skan# Host includes dynamic. 973169691Skanif ENABLE_SYMVERS_GNU_NAMESPACE 974169691Skanstamp-namespace-version: 975169691Skan echo 1 > stamp-namespace-version 976169691Skanelse 977169691Skanstamp-namespace-version: 978169691Skan echo 0 > stamp-namespace-version 979169691Skanendif 980169691Skan 981169691Skanif ENABLE_VISIBILITY 982169691Skanstamp-visibility: 983169691Skan echo 1 > stamp-visibility 984169691Skanelse 985169691Skanstamp-visibility: 986169691Skan echo 0 > stamp-visibility 987169691Skanendif 988169691Skan 989171827Skan# NB: The non-empty default ldbl_compat works around an AIX sed 990171827Skan# oddity, see libstdc++/31957 for details. 991169691Skan${host_builddir}/c++config.h: ${CONFIG_HEADER} \ 992169691Skan ${glibcxx_srcdir}/include/bits/c++config \ 993169691Skan stamp-${host_alias} \ 994169691Skan ${toplevel_srcdir}/gcc/DATESTAMP \ 995169691Skan stamp-namespace-version \ 996169691Skan stamp-visibility 997169691Skan @date=`cat ${toplevel_srcdir}/gcc/DATESTAMP` ;\ 998169691Skan nsa_version=`cat stamp-namespace-version` ;\ 999169691Skan visibility=`cat stamp-visibility` ;\ 1000171827Skan ldbl_compat='s,g,g,' ;\ 1001169691Skan grep "^[ ]*#[ ]*define[ ][ ]*_GLIBCXX_LONG_DOUBLE_COMPAT[ ][ ]*1[ ]*$$" \ 1002169691Skan ${CONFIG_HEADER} > /dev/null 2>&1 \ 1003169691Skan && ldbl_compat='s,^#undef _GLIBCXX_LONG_DOUBLE_COMPAT$$,#define _GLIBCXX_LONG_DOUBLE_COMPAT 1,' ;\ 1004169691Skan sed -e "s,define __GLIBCXX__,define __GLIBCXX__ $$date," \ 1005169691Skan -e "s,define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION, define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION $$nsa_version," \ 1006169691Skan -e "s,define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY, define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY $$visibility," \ 1007169691Skan -e "$$ldbl_compat" \ 1008169691Skan < ${glibcxx_srcdir}/include/bits/c++config > $@ ;\ 1009132720Skan sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \ 1010132720Skan -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \ 1011132720Skan -e 's/VERSION/_GLIBCXX_VERSION/g' \ 1012132720Skan -e 's/WORDS_/_GLIBCXX_WORDS_/g' \ 1013169691Skan -e '/[ ]_GLIBCXX_LONG_DOUBLE_COMPAT[ ]/d' \ 101497403Sobrien < ${CONFIG_HEADER} >> $@ ;\ 1015169691Skan echo "" >> $@ ;\ 1016169691Skan echo "#endif // _CXXCONFIG_" >> $@ 101797403Sobrien 1018132720Skan# Host includes for threads 101997403Sobrienuppercase = [ABCDEFGHIJKLMNOPQRSTUVWXYZ_] 102097403Sobrien 1021132720Skan${host_builddir}/gthr.h: ${toplevel_srcdir}/gcc/gthr.h stamp-${host_alias} 1022169691Skan sed -e '/^#pragma/b' \ 1023169691Skan -e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \ 1024132720Skan -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \ 102597403Sobrien -e 's,^#include "\(.*\)",#include <bits/\1>,g' \ 102697403Sobrien < ${toplevel_srcdir}/gcc/gthr.h > $@ 102797403Sobrien 1028132720Skan${host_builddir}/gthr-single.h: ${toplevel_srcdir}/gcc/gthr-single.h \ 1029132720Skan stamp-${host_alias} 1030132720Skan sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ 1031132720Skan -e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \ 103297403Sobrien < ${toplevel_srcdir}/gcc/gthr-single.h > $@ 103397403Sobrien 1034132720Skan${host_builddir}/gthr-posix.h: ${toplevel_srcdir}/gcc/gthr-posix.h \ 1035132720Skan stamp-${host_alias} 1036132720Skan sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ 1037132720Skan -e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \ 1038132720Skan -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \ 1039132720Skan -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \ 104097403Sobrien < ${toplevel_srcdir}/gcc/gthr-posix.h > $@ 104197403Sobrien 1042169691Skan${host_builddir}/gthr-tpf.h: ${toplevel_srcdir}/gcc/gthr-tpf.h \ 1043169691Skan stamp-${host_alias} 1044169691Skan sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ 1045169691Skan -e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \ 1046169691Skan -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \ 1047169691Skan -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \ 1048169691Skan < ${toplevel_srcdir}/gcc/gthr-tpf.h > $@ 1049169691Skan 1050132720Skan${host_builddir}/gthr-default.h: ${toplevel_srcdir}/gcc/${glibcxx_thread_h} \ 1051132720Skan stamp-${host_alias} 1052132720Skan sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ 1053132720Skan -e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \ 1054132720Skan -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \ 1055132720Skan -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \ 105697403Sobrien -e 's,^#include "\(.*\)",#include <bits/\1>,g' \ 1057132720Skan < ${toplevel_srcdir}/gcc/${glibcxx_thread_h} > $@ 105897403Sobrien 1059169691Skan# Build two precompiled C++ includes, stdc++.h.gch/*.gch 1060169691Skan${pch1a_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source} 1061169691Skan if [ ! -d "${pch1_output_builddir}" ]; then \ 1062169691Skan mkdir -p ${pch1_output_builddir}; \ 1063132720Skan fi; \ 1064169691Skan $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O0 -g ${pch1_source} -o $@ 1065169691Skan touch ${pch1_output_anchor} 1066132720Skan 1067169691Skan${pch1b_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source} 1068169691Skan if [ ! -d "${pch1_output_builddir}" ]; then \ 1069169691Skan mkdir -p ${pch1_output_builddir}; \ 1070169691Skan fi; \ 1071169691Skan $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch1_source} -o $@ 1072169691Skan touch ${pch1_output_anchor} 1073169691Skan 1074169691Skan# Build a precompiled TR1 include, stdtr1c++.h.gch/O2.gch 1075169691Skan${pch2_output}: ${pch2_source} ${pch1_output} 1076169691Skan if [ ! -d "${pch2_output_builddir}" ]; then \ 1077169691Skan mkdir -p ${pch2_output_builddir}; \ 1078169691Skan fi; \ 1079169691Skan $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch2_source} -o $@ 1080169691Skan touch ${pch2_output_anchor} 1081169691Skan 1082169691Skan# Build a precompiled extension include, extc++.h.gch/O2.gch 1083169691Skan${pch3_output}: ${pch3_source} ${pch2_output} 1084169691Skan if [ ! -d "${pch3_output_builddir}" ]; then \ 1085169691Skan mkdir -p ${pch3_output_builddir}; \ 1086169691Skan fi; \ 1087169691Skan $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch3_source} -o $@ 1088169691Skan touch ${pch3_output_anchor} 1089169691Skan 109097403Sobrien# For robustness sake (in light of junk files or in-source 109197403Sobrien# configuration), copy from the build or source tree to the install 109297403Sobrien# tree using only the human-maintained file lists and directory 109397403Sobrien# components. Yes, with minor differences, this is sheer duplication 109497403Sobrien# of the staging rules above using $(INSTALL_DATA) instead of LN_S and 109597403Sobrien# `$(mkinstalldirs)' instead of `mkdir -p'. In particular, 1096132720Skan# host_headers_extra are taken out of the build tree staging area; 109797403Sobrien# the rest are taken from the original source tree. 1098132720Skan 1099132720Skanif GLIBCXX_HOSTED 1100132720Skaninstall-data-local: install-headers ${pch_install} 1101132720Skanelse 1102132720Skaninstall-data-local: install-freestanding-headers 1103132720Skanendif 1104132720Skan 1105132720Skan# This is a subset of the full install-headers rule. We only need <cstddef>, 1106132720Skan# <limits>, <cstdlib>, <cstdarg>, <new>, <typeinfo>, <exception>, and any 1107132720Skan# files which they include (and which we provide). The last three headers 1108132720Skan# are installed by libsupc++, so only the first four and the sub-includes 1109132720Skan# are copied here. 1110132720Skaninstall-freestanding-headers: 1111110614Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir} 1112169691Skan $(mkinstalldirs) $(DESTDIR)${host_installdir} 1113132720Skan for file in ${host_srcdir}/os_defines.h ${host_builddir}/c++config.h; do \ 1114169691Skan $(INSTALL_DATA) $${file} $(DESTDIR)${host_installdir}; done 1115132720Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${std_builddir} 1116132720Skan $(INSTALL_DATA) ${std_builddir}/limits $(DESTDIR)${gxx_include_dir}/${std_builddir} 1117132720Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${c_base_builddir} 1118132720Skan for file in cstddef cstdlib cstdarg; do \ 1119132720Skan $(INSTALL_DATA) ${c_base_builddir}/$${file} $(DESTDIR)${gxx_include_dir}/${c_base_builddir}; done 1120132720Skan 1121132720Skan# The real deal. 1122132720Skaninstall-headers: 1123132720Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir} 1124110614Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${bits_builddir} 112597403Sobrien for file in ${bits_headers}; do \ 1126110614Skan $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${bits_builddir}; done 1127110614Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${backward_builddir} 112897403Sobrien for file in ${backward_headers}; do \ 1129110614Skan $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${backward_builddir}; done 1130110614Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${ext_builddir} 113197403Sobrien for file in ${ext_headers}; do \ 1132110614Skan $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${ext_builddir}; done 1133169691Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${pb_builddir} 1134169691Skan for dir in ${pb_subdirs}; do \ 1135169691Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/$${dir} ; done 1136169691Skan for file in ${pb_headers1}; do \ 1137169691Skan install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \ 1138169691Skan relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\ 1139169691Skan $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done 1140169691Skan for file in ${pb_headers2}; do \ 1141169691Skan install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \ 1142169691Skan relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\ 1143169691Skan $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done 1144169691Skan for file in ${pb_headers3}; do \ 1145169691Skan install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \ 1146169691Skan relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\ 1147169691Skan $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done 1148169691Skan for file in ${pb_headers4}; do \ 1149169691Skan install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \ 1150169691Skan relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\ 1151169691Skan $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done 1152169691Skan for file in ${pb_headers5}; do \ 1153169691Skan install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \ 1154169691Skan relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\ 1155169691Skan $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done 1156169691Skan for file in ${pb_headers6}; do \ 1157169691Skan install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \ 1158169691Skan relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\ 1159169691Skan $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done 1160169691Skan for file in ${pb_headers7}; do \ 1161169691Skan install_base=$(DESTDIR)${gxx_include_dir}/${pb_builddir} ; \ 1162169691Skan relative_name=`echo $$file | sed -e "s|${pb_srcdir}|.|g"` ;\ 1163169691Skan $(INSTALL_DATA) $${file} $${install_base}/$${relative_name} ; done 1164169691Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${tr1_builddir} 1165169691Skan for file in ${tr1_headers}; do \ 1166169691Skan $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${tr1_builddir}; done 1167110614Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${c_base_builddir} 116897403Sobrien for file in ${c_base_headers_rename}; do \ 1169110614Skan $(INSTALL_DATA) ${c_base_builddir}/$${file} $(DESTDIR)${gxx_include_dir}/${c_base_builddir}; done 1170102782Skan c_base_headers_extra_install='$(c_base_headers_extra)';\ 117197403Sobrien for file in $$c_base_headers_extra_install; do \ 1172110614Skan $(INSTALL_DATA) $$file $(DESTDIR)${gxx_include_dir}/${bits_builddir}; done 1173102782Skan c_compatibility_headers_install='$(c_compatibility_headers_extra)';\ 1174102782Skan for file in $$c_compatibility_headers_install; do \ 1175110614Skan $(INSTALL_DATA) $$file $(DESTDIR)${gxx_include_dir}; done 1176110614Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${std_builddir} 117797403Sobrien for file in ${std_headers_rename}; do \ 1178110614Skan $(INSTALL_DATA) ${std_builddir}/$${file} $(DESTDIR)${gxx_include_dir}/${std_builddir}; done 1179132720Skan $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${debug_builddir} 1180132720Skan for file in ${debug_headers}; do \ 1181132720Skan $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${debug_builddir}; done 1182169691Skan $(mkinstalldirs) $(DESTDIR)${host_installdir} 1183132720Skan for file in ${host_headers} ${host_headers_extra} \ 1184132720Skan ${thread_host_headers}; do \ 1185169691Skan $(INSTALL_DATA) $${file} $(DESTDIR)${host_installdir}; done 118697403Sobrien 1187132720Skaninstall-pch: 1188169691Skan $(mkinstalldirs) $(DESTDIR)${pch1_output_installdir} 1189169691Skan for file in ${pch1_output_builddir}/*; do \ 1190169691Skan $(INSTALL_DATA) $$file $(DESTDIR)${pch1_output_installdir}; done 1191169691Skan $(mkinstalldirs) $(DESTDIR)${pch2_output_installdir} 1192169691Skan for file in ${pch2_output_builddir}/*; do \ 1193169691Skan $(INSTALL_DATA) $$file $(DESTDIR)${pch2_output_installdir}; done 1194169691Skan $(INSTALL_DATA) ${pch1_output_anchor} $(DESTDIR)${host_installdir} 1195169691Skan $(INSTALL_DATA) ${pch2_output_anchor} $(DESTDIR)${host_installdir} 1196132720Skan 119797403Sobrien# By adding these files here, automake will remove them for 'make clean' 1198169691SkanCLEANFILES = ${pch_output} ${pch_output_anchors} 119997403Sobrien 1200169691Skan# To remove directories. 1201169691Skanclean-local: 1202169691Skan rm -rf ${pch_output_dirs} 1203169691Skan 120497403Sobrien# Stop implicit '.o' make rules from ever stomping on extensionless 120597403Sobrien# headers, in the improbable case where some foolish, crack-addled 120697403Sobrien# developer tries to create them via make in the include build 120797403Sobrien# directory. (This is more of an example of how this kind of rule can 120897403Sobrien# be made.) 120997403Sobrien.PRECIOUS: $(std_headers_rename) $(c_base_headers_rename) 121097403Sobrien$(std_headers_rename): ; @: 121197403Sobrien$(c_base_headers_rename): ; @: 1212