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/generic"
117 # Set any flags dependent on the full target triplet.
118 # THIS TABLE IS SORTED. KEEP IT THAT WAY.
121 # We set os_include_dir to config/os/aix only on AIX 4.3 and
122 # newer, but config/os/aix/bits/atomicity.h works on earlier
123 # versions of AIX 4.*, so we explicitly duplicate the directory
124 # here, because os_include_dir.
125 ATOMICITYH=config/os/aix
128 ATOMICITYH=config/cpu/generic
131 ATOMICITYH=$os_include_dir
134 ATOMICITYH=$cpu_include_dir
138 # Set CPULIMITSH to the directory where the configuration-dependent
139 # cpu_limits.h can be found.
140 # THIS TABLE IS SORTED. KEEP IT THAT WAY.
143 CPULIMITSH=config/os/hpux
146 CPULIMITSH=config/os/osf/osf5.0
149 CPULIMITSH=config/cpu/alpha
152 CPULIMITSH=config/cpu/cris
155 CPULIMITSH=config/cpu/ia64
158 CPULIMITSH=config/cpu/i386
160 m68k-*-* | m680[246]0-*-*)
161 CPULIMITSH=config/cpu/m68k
164 CPULIMITSH=config/cpu/powerpc
166 s390-*-* | s390x-*-*)
167 CPULIMITSH=config/cpu/s390
170 CPULIMITSH=config/cpu/x86-64
173 CPULIMITSH=config/cpu/generic