]>
Commit | Line | Data |
---|---|---|
953ff289 DN |
1 | # This is the target specific configuration file. This is invoked by the |
2 | # autoconf generated configure script. Putting it in a separate shell file | |
3 | # lets us skip running autoconf when modifying target specific information. | |
4 | ||
5 | # This file switches on the shell variable ${target}, and sets the | |
6 | # following shell variables: | |
7 | # config_path An ordered list of directories to search for | |
8 | # sources and headers. This is relative to the | |
9 | # config subdirectory of the source tree. | |
10 | # XCFLAGS Add extra compile flags to use. | |
11 | # XLDFLAGS Add extra link flags to use. | |
47ddb895 DE |
12 | # tmake_file A list of machine-description-specific |
13 | # makefile fragments. | |
953ff289 DN |
14 | |
15 | # Optimize TLS usage by avoiding the overhead of dynamic allocation. | |
0f3e711e | 16 | if test $gcc_cv_have_tls = yes ; then |
a9690009 EB |
17 | case "${target}" in |
18 | ||
48df3acb TS |
19 | *-*-k*bsd*-gnu*) |
20 | ;; | |
21 | ||
00484365 SN |
22 | *-*-musl*) |
23 | ;; | |
24 | ||
48df3acb | 25 | *-*-linux* | *-*-gnu*) |
28567c40 | 26 | XCFLAGS="${XCFLAGS} -ftls-model=initial-exec -DUSING_INITIAL_EXEC_TLS" |
a9690009 | 27 | ;; |
cd93945d SH |
28 | |
29 | *-*-rtems*) | |
30 | XCFLAGS="${XCFLAGS} -ftls-model=local-exec" | |
31 | ;; | |
a9690009 | 32 | esac |
953ff289 DN |
33 | fi |
34 | ||
47ddb895 | 35 | tmake_file= |
953ff289 DN |
36 | # Since we require POSIX threads, assume a POSIX system by default. |
37 | config_path="posix" | |
38 | ||
39 | # Check for futex enabled all at once. | |
41dbbb37 | 40 | if test x$enable_linux_futex = xyes; then |
953ff289 DN |
41 | case "${target}" in |
42 | ||
c1f37c00 IB |
43 | aarch64*-*-linux*) |
44 | config_path="linux posix" | |
45 | ;; | |
46 | ||
953ff289 DN |
47 | alpha*-*-linux*) |
48 | config_path="linux/alpha linux posix" | |
49 | ;; | |
50 | ||
d213e92e | 51 | arm*-*-linux*) |
b9264b5f | 52 | config_path="linux posix" |
d213e92e MS |
53 | ;; |
54 | ||
167798a4 JDA |
55 | hppa*-*-linux*) |
56 | config_path="linux posix" | |
57 | ;; | |
58 | ||
953ff289 DN |
59 | ia64*-*-linux*) |
60 | config_path="linux/ia64 linux posix" | |
61 | ;; | |
62 | ||
34024b71 | 63 | loongarch*-*-linux*) |
64 | config_path="linux posix" | |
65 | ;; | |
66 | ||
318e8c3f IG |
67 | mips*-*-linux*) |
68 | config_path="linux/mips linux posix" | |
69 | ;; | |
70 | ||
953ff289 DN |
71 | powerpc*-*-linux*) |
72 | config_path="linux/powerpc linux posix" | |
73 | ;; | |
74 | ||
b8c3f519 AS |
75 | riscv64*-*-linux*) |
76 | config_path="linux posix" | |
77 | ;; | |
78 | ||
953ff289 DN |
79 | s390*-*-linux*) |
80 | config_path="linux/s390 linux posix" | |
81 | ;; | |
82 | ||
dd552284 WL |
83 | tile*-*-linux*) |
84 | config_path="linux/tile linux posix" | |
85 | ;; | |
86 | ||
953ff289 | 87 | # Note that bare i386 is not included here. We need cmpxchg. |
0411ae7f | 88 | i[456]86-*-linux* | x86_64-*-linux*) |
953ff289 | 89 | config_path="linux/x86 linux posix" |
0411ae7f JJ |
90 | cat > conftestx.c <<EOF |
91 | #ifndef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 | |
92 | #error need -march=i486 | |
93 | #endif | |
94 | EOF | |
95 | if ${CC} ${CFLAGS} -E conftestx.c > /dev/null 2>&1; then | |
96 | : | |
97 | else | |
98 | if test "${target_cpu}" = x86_64; then | |
68bc9270 | 99 | XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic" |
0411ae7f JJ |
100 | else |
101 | XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}" | |
102 | fi | |
103 | fi | |
104 | rm -f conftestx.c | |
953ff289 DN |
105 | ;; |
106 | ||
107 | # Note that sparcv7 and sparcv8 is not included here. We need cas. | |
108 | sparcv9-*-linux* | sparc64-*-linux*) | |
109 | echo "int i;" > conftestx.c | |
110 | if ${CC} ${CFLAGS} -c -o conftestx.o conftestx.c > /dev/null 2>&1; then | |
111 | config_path="linux/sparc linux posix" | |
112 | case "`/usr/bin/file conftestx.o`" in | |
113 | *32-bit*) | |
114 | case " ${CC} ${CFLAGS}" in | |
115 | *" -mcpu=ultrasparc"*) | |
116 | ;; | |
117 | *) | |
118 | XCFLAGS="${XCFLAGS} -mcpu=v9" | |
119 | ;; | |
120 | esac | |
121 | ;; | |
122 | esac | |
123 | fi | |
124 | rm -f conftestx.c conftestx.o | |
125 | ;; | |
126 | esac | |
127 | fi | |
128 | ||
129 | # Other system configury | |
130 | case "${target}" in | |
131 | ||
6684eb28 | 132 | *-*-hpux*) |
b5f7a6ca | 133 | config_path="hpux posix" |
6684eb28 SE |
134 | case "${target}" in |
135 | *-*-hpux11*) | |
136 | # HPUX v11.x requires -lrt to resolve sem_init in libgomp.la | |
137 | XLDFLAGS="${XLDFLAGS} -lrt" | |
138 | ;; | |
139 | esac | |
140 | case "${target}" in | |
141 | hppa[12]*-*-hpux*) | |
142 | # PA 32 HP-UX needs -frandom-seed for bootstrap compare. | |
143 | XCFLAGS="${XCFLAGS} -frandom-seed=fixed-seed" | |
144 | ;; | |
145 | esac | |
5142e08b RS |
146 | ;; |
147 | ||
33815e0c FXC |
148 | *-*-mingw32*) |
149 | config_path="mingw32 posix" | |
150 | ;; | |
151 | ||
e2b34106 | 152 | *-*-darwin*) |
b5f7a6ca | 153 | config_path="bsd darwin posix" |
e2b34106 JJ |
154 | ;; |
155 | ||
f1d4ab26 GP |
156 | *-*-freebsd*) |
157 | # Need to link with -lpthread so libgomp.so is self-contained. | |
158 | XLDFLAGS="${XLDFLAGS} -lpthread" | |
159 | ;; | |
160 | ||
b5f7a6ca | 161 | *-*-aix*) |
02d3e45e DE |
162 | config_path="posix" |
163 | # Need to link with -lpthread so libgomp.so is self-contained. | |
164 | XLDFLAGS="${XLDFLAGS} -lpthread" | |
f49215b1 JJ |
165 | # AIX needs -frandom-seed for bootstrap compare. |
166 | XCFLAGS="${XCFLAGS} -frandom-seed=\$@" | |
47ddb895 DE |
167 | # Create AIX-style "FAT" libraries. |
168 | tmake_file="t-aix" | |
b5f7a6ca JH |
169 | ;; |
170 | ||
44a7d18d | 171 | nvptx*-*-*) |
b3d14b3a | 172 | config_path="nvptx accel" |
97875f4a | 173 | ;; |
13c41b2e SH |
174 | |
175 | *-*-rtems*) | |
176 | # Use self-contained synchronization objects if provided by Newlib | |
177 | if test "x$ac_cv_type_struct__Mutex_Control" = xyes ; then | |
178 | config_path="rtems posix" | |
179 | fi | |
44a7d18d TS |
180 | ;; |
181 | ||
fa499995 AS |
182 | amdgcn*-*-*) |
183 | config_path="gcn accel" | |
81683386 TS |
184 | |
185 | #TODO PR101484 | |
186 | XCFLAGS="$XCFLAGS -Wno-error=array-bounds" | |
fa499995 AS |
187 | ;; |
188 | ||
953ff289 DN |
189 | *) |
190 | ;; | |
191 | ||
192 | esac |