3 # This shell script handles all target based configuration for libstdc++.
4 # It sets various shell variables based on the the target and the
5 # configuration options. You can modify this shell script without
6 # needing to rerun autoconf.
8 # This shell script should be invoked as
10 # If it encounters an error, it will exit with a message.
12 # It uses the following shell variables:
13 # target The configuration target
14 # target_cpu The configuration target CPU
15 # target_os The configuration target OS
17 # It possibly modifies the following shell variables:
18 # cpu_include_dir CPU-specific include directory, relative to srcdir
19 # os_include_dir OS-specific include directory, relative to srcdir
22 # Set any CPU dependent compiler flags.
23 # THIS TABLE IS SORTED. KEEP IT THAT WAY.
24 case "${target_cpu}" in
26 cpu_include_dir="config/cpu/alpha"
29 cpu_include_dir="config/cpu/arm"
32 cpu_include_dir="config/cpu/cris"
35 cpu_include_dir="config/cpu/ia64"
38 cpu_include_dir="config/cpu/i386"
40 i486 | i586 | i686 | i786)
41 cpu_include_dir="config/cpu/i486"
44 cpu_include_dir="config/cpu/m68k"
47 cpu_include_dir="config/cpu/powerpc"
50 cpu_include_dir="config/cpu/s390"
53 cpu_include_dir="config/cpu/sparc/sparc64"
56 cpu_include_dir="config/cpu/sparc/sparc32"
59 cpu_include_dir="config/cpu/x86-64"
62 cpu_include_dir="config/cpu/generic"
67 # Set any OS dependent compiler flags.
68 # THIS TABLE IS SORTED. KEEP IT THAT WAY.
69 case "${target_os}" in
70 aix4.[3456789]* | aix[56789]*)
71 os_include_dir="config/os/aix"
75 os_include_dir="config/os/bsd/freebsd"
78 os_include_dir="config/os/newlib"
81 os_include_dir="config/os/djgpp"
84 os_include_dir="config/os/gnu-linux"
86 irix[1-6] | irix[1-5].* | irix6.[0-4])
87 # This is known to work on at least IRIX 5.2 and 6.3.
88 os_include_dir="config/os/irix/irix5.2"
91 os_include_dir="config/os/irix/irix6.5"
94 os_include_dir="config/os/mingw32"
97 os_include_dir="config/os/bsd/netbsd"
100 os_include_dir="config/os/solaris/solaris2.5"
103 os_include_dir="config/os/solaris/solaris2.6"
105 solaris2.7* | solaris2.8*)
106 os_include_dir="config/os/solaris/solaris2.7"
109 os_include_dir="config/os/hpux"
112 os_include_dir="config/os/windiss"
115 os_include_dir="config/os/generic"
120 # Set any flags dependent on the full target triplet.
121 # THIS TABLE IS SORTED. KEEP IT THAT WAY.
124 # We set os_include_dir to config/os/aix only on AIX 4.3 and
125 # newer, but config/os/aix/bits/atomicity.h works on earlier
126 # versions of AIX 4.*, so we explicitly duplicate the directory
127 # here, because os_include_dir.
128 ATOMICITYH=config/os/aix
131 ATOMICITYH=config/cpu/generic
134 ATOMICITYH=$os_include_dir
137 ATOMICITYH=$cpu_include_dir
141 # Set CPULIMITSH to the directory where the configuration-dependent
142 # cpu_limits.h can be found.
143 # THIS TABLE IS SORTED. KEEP IT THAT WAY.
146 CPULIMITSH=config/os/hpux
149 CPULIMITSH=config/os/osf/osf5.0
152 CPULIMITSH=config/cpu/alpha
155 CPULIMITSH=config/cpu/cris
158 CPULIMITSH=config/cpu/ia64
161 CPULIMITSH=config/cpu/i386
163 m68k-*-* | m680[246]0-*-*)
164 CPULIMITSH=config/cpu/m68k
167 CPULIMITSH=config/cpu/mmix
170 CPULIMITSH=config/cpu/powerpc
172 s390-*-* | s390x-*-*)
173 CPULIMITSH=config/cpu/s390
176 CPULIMITSH=config/cpu/x86-64
179 CPULIMITSH=config/cpu/generic