OSDN Git Service

add myself to the MAINTAINERS file
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / configure.host
index 48397fd..de48517 100644 (file)
@@ -39,6 +39,9 @@
 #   atomic_word_dir        location of atomic_word.h
 #                          defaults to generic.
 #
+#   cpu_defines_dir        location of cpu_defines.h
+#                          defaults to generic.
+#
 # It possibly modifies the following variables:
 #
 #   OPT_LDFLAGS            extra flags to pass when linking the library, of
@@ -64,6 +67,7 @@
 c_model=c_std
 c_compatibility=no
 atomic_word_dir=cpu/generic
+cpu_defines_dir=cpu/generic
 
 # HOST-SPECIFIC OVERRIDES
 # Set any CPU-dependent bits.
@@ -123,6 +127,14 @@ case "${host_cpu}" in
     ;;
 esac
 
+# Set specific CPU overrides for cpu_defines_dir. Most can just use generic.
+# THIS TABLE IS SORTED.  KEEP IT THAT WAY.
+case "${host_cpu}" in
+  powerpc* | rs6000)
+    cpu_defines_dir=cpu/powerpc
+    ;;
+esac
+
 # Now look for the file(s) usually tied to a CPU model, and make
 # default choices for those if they haven't been explicitly set
 # already.  
@@ -155,11 +167,13 @@ case "${host_os}" in
     # explicitly duplicate the directory for 4.[<3].
     os_include_dir="os/aix"
     atomicity_dir="os/aix"
+    atomic_word_dir="os/aix"
     OPT_LDFLAGS="-Wl,-G"
     ;;
   aix4.*)
     os_include_dir="os/generic"
     atomicity_dir="os/aix"
+    atomic_word_dir="os/aix"
     ;;
   aix*)
     os_include_dir="os/generic"
@@ -172,6 +186,19 @@ case "${host_os}" in
   cygwin*)
     os_include_dir="os/newlib"
     ;;
+  darwin | darwin[1-7] | darwin[1-7].*)
+    # On Darwin, performance is improved if libstdc++ is single-module.
+    # Up to at least 10.3.7, -flat_namespace is required for proper
+    # treatment of coalesced symbols.
+    OPT_LDFLAGS="${OPT_LDFLAGS} -Wl,-single_module -Wl,-flat_namespace"
+    os_include_dir="os/bsd/darwin"
+    ;;
+  darwin[89] | darwin[89].* | darwin[1-9][0-9]* )
+    # On Darwin, performance is improved if libstdc++ is single-module,
+    # and on 8+ compatibility is better if not -flat_namespace.
+    OPT_LDFLAGS="${OPT_LDFLAGS} -Wl,-single_module"
+    os_include_dir="os/bsd/darwin"
+    ;;
   *djgpp*)      # leading * picks up "msdosdjgpp"
     os_include_dir="os/djgpp"
     ;;
@@ -255,6 +282,12 @@ case "${host}" in
     abi_baseline_pair="mips-linux-gnu"
     cpu_include_dir="cpu/mips"
     ;;
+  powerpc*-*-darwin*)
+    port_specific_symbol_files="\$(srcdir)/../config/os/bsd/darwin/ppc-extra.ver"
+    ;;
+  powerpc64-*-linux*)
+    abi_baseline_pair="powerpc64-linux-gnu"
+    ;;
   s390-*-linux*)
     abi_baseline_pair="s390-linux-gnu"
     ;;