OSDN Git Service

2007-09-11 Johannes Singler <singler@ira.uka.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / include / Makefile.in
index 9f5c7fb..80a7c24 100644 (file)
@@ -71,6 +71,7 @@ AMTAR = @AMTAR@
 AR = @AR@
 AS = @AS@
 ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_FLAGS = @ATOMIC_FLAGS@
 ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
 AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
@@ -108,6 +109,8 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ENABLE_PARALLEL_FALSE = @ENABLE_PARALLEL_FALSE@
+ENABLE_PARALLEL_TRUE = @ENABLE_PARALLEL_TRUE@
 ENABLE_SYMVERS_DARWIN_FALSE = @ENABLE_SYMVERS_DARWIN_FALSE@
 ENABLE_SYMVERS_DARWIN_TRUE = @ENABLE_SYMVERS_DARWIN_TRUE@
 ENABLE_SYMVERS_FALSE = @ENABLE_SYMVERS_FALSE@
@@ -118,6 +121,7 @@ ENABLE_SYMVERS_GNU_TRUE = @ENABLE_SYMVERS_GNU_TRUE@
 ENABLE_SYMVERS_TRUE = @ENABLE_SYMVERS_TRUE@
 ENABLE_VISIBILITY_FALSE = @ENABLE_VISIBILITY_FALSE@
 ENABLE_VISIBILITY_TRUE = @ENABLE_VISIBILITY_TRUE@
+ERROR_CONSTANTS_SRCDIR = @ERROR_CONSTANTS_SRCDIR@
 EXEEXT = @EXEEXT@
 EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@
 FGREP = @FGREP@
@@ -303,6 +307,7 @@ std_headers = \
        ${std_srcdir}/stdexcept \
        ${std_srcdir}/streambuf \
        ${std_srcdir}/string \
+       ${std_srcdir}/system_error \
        ${std_srcdir}/tuple \
        ${std_srcdir}/type_traits \
        ${std_srcdir}/unordered_map \
@@ -314,6 +319,7 @@ std_headers = \
 bits_srcdir = ${glibcxx_srcdir}/include/bits
 bits_builddir = ./bits
 bits_headers = \
+        ${bits_srcdir}/algorithmfwd.h \
        ${bits_srcdir}/allocator.h \
        ${bits_srcdir}/basic_ios.h \
        ${bits_srcdir}/basic_ios.tcc \
@@ -615,7 +621,7 @@ pb_headers4 = \
        ${pb_srcdir}/detail/list_update_policy/counter_lu_policy_imp.hpp \
        ${pb_srcdir}/detail/list_update_policy/mtf_lu_policy_imp.hpp \
        ${pb_srcdir}/detail/list_update_policy/sample_update_policy.hpp \
-       ${pb_srcdir}/detail/map_debug_base.hpp \
+       ${pb_srcdir}/detail/debug_map_base.hpp \
        ${pb_srcdir}/detail/ov_tree_map_/cond_dtor.hpp \
        ${pb_srcdir}/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp \
        ${pb_srcdir}/detail/ov_tree_map_/debug_fn_imps.hpp \
@@ -963,6 +969,58 @@ debug_headers = \
        ${debug_srcdir}/string \
        ${debug_srcdir}/vector
 
+
+# Parallel mode headers
+parallel_srcdir = ${glibcxx_srcdir}/include/parallel
+parallel_builddir = ./parallel
+parallel_headers = \
+        ${parallel_srcdir}/algorithm \
+        ${parallel_srcdir}/algobase.h \
+        ${parallel_srcdir}/algo.h \
+        ${parallel_srcdir}/algorithm \
+        ${parallel_srcdir}/algorithmfwd.h \
+        ${parallel_srcdir}/balanced_quicksort.h \
+        ${parallel_srcdir}/base.h \
+        ${parallel_srcdir}/basic_iterator.h \
+        ${parallel_srcdir}/checkers.h \
+        ${parallel_srcdir}/compatibility.h \
+        ${parallel_srcdir}/compiletime_settings.h \
+        ${parallel_srcdir}/equally_split.h \
+        ${parallel_srcdir}/features.h \
+        ${parallel_srcdir}/find.h \
+        ${parallel_srcdir}/find_selectors.h \
+        ${parallel_srcdir}/for_each.h \
+        ${parallel_srcdir}/for_each_selectors.h \
+        ${parallel_srcdir}/iterator.h \
+        ${parallel_srcdir}/list_partition.h \
+        ${parallel_srcdir}/losertree.h \
+        ${parallel_srcdir}/merge.h \
+        ${parallel_srcdir}/multiseq_selection.h \
+        ${parallel_srcdir}/multiway_merge.h \
+        ${parallel_srcdir}/multiway_mergesort.h \
+        ${parallel_srcdir}/numeric \
+        ${parallel_srcdir}/numericfwd.h \
+        ${parallel_srcdir}/omp_loop.h \
+        ${parallel_srcdir}/omp_loop_static.h \
+        ${parallel_srcdir}/parallel.h \
+        ${parallel_srcdir}/par_loop.h \
+        ${parallel_srcdir}/partial_sum.h \
+        ${parallel_srcdir}/partition.h \
+        ${parallel_srcdir}/queue.h \
+        ${parallel_srcdir}/quicksort.h \
+        ${parallel_srcdir}/random_number.h \
+        ${parallel_srcdir}/random_shuffle.h \
+        ${parallel_srcdir}/search.h \
+        ${parallel_srcdir}/set_operations.h \
+        ${parallel_srcdir}/settings.h \
+        ${parallel_srcdir}/sort.h \
+        ${parallel_srcdir}/tags.h \
+        ${parallel_srcdir}/timing.h \
+        ${parallel_srcdir}/tree.h \
+        ${parallel_srcdir}/types.h \
+        ${parallel_srcdir}/unique_copy.h \
+        ${parallel_srcdir}/workstealing.h 
+
 @GLIBCXX_C_HEADERS_EXTRA_FALSE@c_base_headers_extra = 
 
 # Some of the different "C" header models need extra files.
@@ -981,7 +1039,11 @@ host_headers = \
        ${host_srcdir}/os_defines.h \
        ${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h \
        ${glibcxx_srcdir}/$(ABI_TWEAKS_SRCDIR)/cxxabi_tweaks.h \
-       ${glibcxx_srcdir}/$(CPU_DEFINES_SRCDIR)/cpu_defines.h   
+       ${glibcxx_srcdir}/$(CPU_DEFINES_SRCDIR)/cpu_defines.h \
+       ${glibcxx_srcdir}/$(ERROR_CONSTANTS_SRCDIR)/error_constants.h \
+       ${glibcxx_srcdir}/include/precompiled/stdc++.h \
+       ${glibcxx_srcdir}/include/precompiled/stdtr1c++.h \
+       ${glibcxx_srcdir}/include/precompiled/extc++.h 
 
 
 # Non-installed host_header files.
@@ -1014,7 +1076,8 @@ pch1_output_anchor = ${host_builddir}/stdc++.h
 pch1_output_installdir = ${host_installdir}/stdc++.h.gch
 pch1a_output = ${pch1_output_builddir}/O0g.gch
 pch1b_output = ${pch1_output_builddir}/O2g.gch
-pch1_output = ${pch1a_output} ${pch1b_output}
+pch1c_output = ${pch1_output_builddir}/O2gp.gch
+pch1_output = ${pch1a_output} ${pch1b_output} ${pch1c_output}
 pch2_source = ${glibcxx_srcdir}/include/precompiled/stdtr1c++.h
 pch2_output_builddir = ${host_builddir}/stdtr1c++.h.gch
 pch2_output_anchor = ${host_builddir}/stdtr1c++.h
@@ -1035,15 +1098,13 @@ pch_output_anchors = \
 PCHFLAGS = -Winvalid-pch -Wno-deprecated -x c++-header $(CXXFLAGS)
 @GLIBCXX_BUILD_PCH_FALSE@pch_build = 
 @GLIBCXX_BUILD_PCH_TRUE@pch_build = ${pch_output}
-@GLIBCXX_BUILD_PCH_FALSE@pch_install = 
-@GLIBCXX_BUILD_PCH_TRUE@pch_install = install-pch
 
 # List of all timestamp files.  By keeping only one copy of this list, both
 # CLEANFILES and all-local are kept up-to-date.
 allstamped = \
        stamp-std stamp-bits stamp-c_base stamp-c_base_extra \
        stamp-c_compatibility  stamp-backward stamp-ext stamp-pb \
-       stamp-tr1 stamp-tr1-impl stamp-debug stamp-host
+       stamp-tr1 stamp-tr1-impl stamp-debug stamp-parallel stamp-host
 
 
 # List of all files that are created by explicit building, editing, or
@@ -1370,6 +1431,15 @@ stamp-debug: ${debug_headers}
        fi ;\
        $(STAMP) stamp-debug
 
+stamp-parallel: ${parallel_headers}
+       @if [ ! -d "${parallel_builddir}" ]; then \
+         mkdir -p ${parallel_builddir} ;\
+       fi ;\
+       if [ ! -f stamp-parallel ]; then \
+         (cd ${parallel_builddir} && @LN_S@ $? . || true) ;\
+       fi ;\
+       $(STAMP) stamp-parallel
+
 stamp-${host_alias}:
        @if [ ! -d ${host_builddir} ]; then \
          mkdir -p ${host_builddir} ;\
@@ -1472,7 +1542,7 @@ ${host_builddir}/gthr-default.h: ${toplevel_srcdir}/gcc/${glibcxx_thread_h} \
            -e 's,^#include "\(.*\)",#include <bits/\1>,g' \
            < ${toplevel_srcdir}/gcc/${glibcxx_thread_h} > $@
 
-# Build two precompiled C++ includes, stdc++.h.gch/*.gch
+# Build three precompiled C++ includes, stdc++.h.gch/*.gch
 ${pch1a_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
        if [ ! -d "${pch1_output_builddir}" ]; then \
          mkdir -p ${pch1_output_builddir}; \
@@ -1487,6 +1557,14 @@ ${pch1b_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
        $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch1_source} -o $@
        touch ${pch1_output_anchor}
 
+${pch1c_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
+       if [ ! -d "${pch1_output_builddir}" ]; then \
+         mkdir -p ${pch1_output_builddir}; \
+       fi; \
+       CXX_PARALLEL_FLAGS="-fgomp -march=native";
+       $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g $(CXX_PARALLEL_FLAGS) ${pch1_source} -o $@
+       touch ${pch1_output_anchor}
+
 # Build a precompiled TR1 include, stdtr1c++.h.gch/O2.gch
 ${pch2_output}: ${pch2_source} ${pch1_output}
        if [ ! -d "${pch2_output_builddir}" ]; then \
@@ -1512,7 +1590,7 @@ ${pch3_output}: ${pch3_source} ${pch2_output}
 # host_headers_extra are taken out of the build tree staging area;
 # the rest are taken from the original source tree.
 
-@GLIBCXX_HOSTED_TRUE@install-data-local: install-headers ${pch_install}
+@GLIBCXX_HOSTED_TRUE@install-data-local: install-headers 
 @GLIBCXX_HOSTED_FALSE@install-data-local: install-freestanding-headers
 
 # This is a subset of the full install-headers rule.  We only need <cstddef>,
@@ -1595,21 +1673,14 @@ install-headers:
        $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${debug_builddir}
        for file in ${debug_headers}; do \
          $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${debug_builddir}; done
+       $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${parallel_builddir}
+       for file in ${parallel_headers}; do \
+         $(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${parallel_builddir}; done
        $(mkinstalldirs) $(DESTDIR)${host_installdir}
        for file in ${host_headers} ${host_headers_extra} \
         ${thread_host_headers}; do \
          $(INSTALL_DATA) $${file} $(DESTDIR)${host_installdir}; done
 
-install-pch:
-       $(mkinstalldirs) $(DESTDIR)${pch1_output_installdir}
-       for file in ${pch1_output_builddir}/*; do \
-         $(INSTALL_DATA) $$file $(DESTDIR)${pch1_output_installdir}; done
-       $(mkinstalldirs) $(DESTDIR)${pch2_output_installdir}
-       for file in ${pch2_output_builddir}/*; do \
-         $(INSTALL_DATA) $$file $(DESTDIR)${pch2_output_installdir}; done
-       $(INSTALL_DATA) ${pch1_output_anchor} $(DESTDIR)${host_installdir}
-       $(INSTALL_DATA) ${pch2_output_anchor} $(DESTDIR)${host_installdir}
-
 # To remove directories.
 clean-local:
        rm -rf ${pch_output_dirs}