Commit | Line | Data |
---|---|---|
e881afb8 ILT |
1 | dnl Process this file with autoconf to produce a configure script. |
2 | dnl | |
dbbfec07 | 3 | AC_PREREQ(2.5) |
8c693660 KR |
4 | AC_INIT(libbfd.c) |
5 | ||
6 | AC_ARG_ENABLE(64-bit-bfd, | |
e818c22e | 7 | [ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)], |
a52a3ce8 | 8 | [case "${enableval}" in |
8c693660 KR |
9 | yes) want64=true ;; |
10 | no) want64=false ;; | |
11 | *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;; | |
12 | esac],[want64=false])dnl | |
13 | AC_ARG_ENABLE(targets, | |
e818c22e | 14 | [ --enable-targets alternative target configurations], |
8c693660 KR |
15 | [case "${enableval}" in |
16 | yes | "") AC_ERROR(enable-targets option must specify target names or 'all') | |
17 | ;; | |
18 | no) enable_targets= ;; | |
19 | *) enable_targets=$enableval ;; | |
20 | esac])dnl | |
44f795f7 ILT |
21 | AC_ARG_ENABLE(shared, |
22 | [ --enable-shared build shared BFD library], | |
23 | [case "${enableval}" in | |
24 | yes) shared=true ;; | |
25 | no) shared=false ;; | |
d1bf45aa ILT |
26 | *bfd*) shared=true ;; |
27 | *) shared=false ;; | |
44f795f7 ILT |
28 | esac])dnl |
29 | AC_ARG_ENABLE(commonbfdlib, | |
30 | [ --enable-commonbfdlib build shared BFD/opcodes/libiberty library], | |
31 | [case "${enableval}" in | |
32 | yes) commonbfdlib=true ;; | |
33 | no) commonbfdlib=false ;; | |
34 | *) AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;; | |
35 | esac])dnl | |
36 | AC_ARG_WITH(mmap, | |
37 | [ --with-mmap try using mmap for BFD input files if available], | |
38 | [case "${withval}" in | |
39 | yes) want_mmap=true ;; | |
40 | no) want_mmap=false ;; | |
41 | *) AC_MSG_ERROR(bad value ${withval} for BFD with-mmap option) ;; | |
42 | esac],[want_mmap=false])dnl | |
8c693660 | 43 | |
936b870c | 44 | AC_CONFIG_HEADER(config.h:config.in) |
b7577823 | 45 | |
8c693660 KR |
46 | AC_CONFIG_AUX_DIR(`cd $srcdir/..;pwd`) |
47 | AC_CANONICAL_SYSTEM | |
48 | if test -z "$target" ; then | |
49 | AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) | |
50 | fi | |
51 | AC_ARG_PROGRAM | |
52 | ||
b32ae8e2 JK |
53 | host64=false |
54 | target64=false | |
21c9f626 | 55 | |
8c693660 | 56 | # host stuff: |
21c9f626 | 57 | |
44f795f7 ILT |
58 | ALLLIBS='$(TARGETLIB)' |
59 | PICFLAG= | |
986cf3b8 ILT |
60 | SHLIB=unused-shlib |
61 | SHLINK=unused-shlink | |
44f795f7 ILT |
62 | if test "${shared}" = "true"; then |
63 | PICFLAG=-fpic | |
64 | if test "${commonbfdlib}" = "true"; then | |
65 | ALLLIBS='$(TARGETLIB)' | |
66 | else | |
67 | ALLLIBS='$(TARGETLIB) $(SHLIB) $(SHLINK)' | |
68 | changequote(,)dnl | |
69 | SHLIB=libbfd.so.`sed -e 's/[^0-9]*\([0-9.]*\).*/\1/' ${srcdir}/VERSION` | |
70 | changequote([,])dnl | |
71 | SHLINK=libbfd.so | |
72 | fi | |
73 | fi | |
74 | ||
55626bf0 ILT |
75 | AC_PROG_CC |
76 | ||
50bd50d4 MH |
77 | AC_ISC_POSIX |
78 | ||
f515fb2f | 79 | # Permit host specific settings. |
5a5fa368 | 80 | . ${srcdir}/configure.host |
4dfe09da | 81 | |
f515fb2f | 82 | AC_SUBST(HDEFINES) |
986cf3b8 ILT |
83 | AC_CHECK_TOOL(AR, ar) |
84 | AC_CHECK_TOOL(RANLIB, ranlib, :) | |
f515fb2f ILT |
85 | AC_PROG_INSTALL |
86 | ||
44f795f7 ILT |
87 | if test "${shared}" = "true"; then |
88 | if test "${GCC}" != "yes" && test "${shared_non_gcc}" != "yes"; then | |
89 | AC_MSG_WARN([BFD --enable-shared only supported when using gcc]) | |
90 | shared=false | |
986cf3b8 | 91 | ALLLIBS='$(TARGETLIB)' |
44f795f7 | 92 | PICFLAG= |
986cf3b8 | 93 | SHLIB=unused-shlib |
44f795f7 ILT |
94 | fi |
95 | fi | |
96 | ||
97 | AC_SUBST(ALLLIBS) | |
98 | AC_SUBST(PICFLAG) | |
99 | AC_SUBST(SHLIB) | |
100 | AC_SUBST(SHLIB_CC) | |
101 | AC_SUBST(SHLIB_CFLAGS) | |
418d5b05 | 102 | AC_SUBST(SHLIB_LIBS) |
44f795f7 ILT |
103 | if test "${commonbfdlib}" = "true"; then |
104 | COMMON_SHLIB=yes | |
105 | PICLIST=piclist | |
106 | else | |
107 | COMMON_SHLIB= | |
108 | PICLIST= | |
109 | fi | |
110 | AC_SUBST(COMMON_SHLIB) | |
111 | AC_SUBST(PICLIST) | |
112 | AC_SUBST(SHLINK) | |
ab659fd6 | 113 | AC_SUBST(INSTALL_SHLIB) |
44f795f7 | 114 | |
f4e14cb9 ILT |
115 | VERSION=`cat ${srcdir}/VERSION` |
116 | AC_SUBST(VERSION) | |
117 | ||
118 | BFD_HOST_64BIT_LONG=0 | |
119 | BFD_HOST_64_BIT_DEFINED=0 | |
120 | BFD_HOST_64_BIT= | |
121 | BFD_HOST_U_64_BIT= | |
b7577823 | 122 | if test "x${HOST_64BIT_TYPE}" = "xlong"; then |
f4e14cb9 ILT |
123 | BFD_HOST_64BIT_LONG=1 |
124 | elif test "x${HOST_64BIT_TYPE}" != "x"; then | |
125 | BFD_HOST_64_BIT_DEFINED=1 | |
126 | BFD_HOST_64_BIT=${HOST_64BIT_TYPE} | |
127 | BFD_HOST_U_64_BIT=${HOST_U_64BIT_TYPE} | |
f515fb2f | 128 | fi |
f4e14cb9 ILT |
129 | AC_SUBST(BFD_HOST_64BIT_LONG) |
130 | AC_SUBST(BFD_HOST_64_BIT_DEFINED) | |
131 | AC_SUBST(BFD_HOST_64_BIT) | |
132 | AC_SUBST(BFD_HOST_U_64_BIT) | |
b7577823 ILT |
133 | |
134 | BFD_CC_FOR_BUILD | |
8c693660 | 135 | |
b7577823 | 136 | AC_CHECK_HEADERS(stddef.h string.h strings.h stdlib.h time.h unistd.h) |
ab1aa5cd FF |
137 | AC_CHECK_HEADERS(fcntl.h sys/file.h sys/time.h) |
138 | AC_HEADER_TIME | |
60f1ad85 | 139 | AC_CHECK_FUNCS(fcntl getpagesize setitimer sysconf fdopen) |
5b2765bf | 140 | |
b7577823 ILT |
141 | BFD_BINARY_FOPEN |
142 | ||
f7954d86 | 143 | BFD_NEED_DECLARATION(strstr) |
44f795f7 | 144 | BFD_NEED_DECLARATION(malloc) |
f7954d86 | 145 | BFD_NEED_DECLARATION(realloc) |
44f795f7 | 146 | BFD_NEED_DECLARATION(free) |
cd6213ff | 147 | BFD_NEED_DECLARATION(getenv) |
8c693660 | 148 | |
a52a3ce8 ILT |
149 | # If we are configured native, pick a core file support file. |
150 | COREFILE= | |
151 | COREFLAG= | |
152 | if test "${target}" = "${host}"; then | |
153 | case "${host}" in | |
999cc186 ILT |
154 | alpha*-*-linux*) |
155 | COREFILE=trad-core.o | |
156 | AC_DEFINE(TRAD_HEADER,"hosts/alphalinux.h") | |
157 | ;; | |
158 | alpha*-*-*) COREFILE=osf-core.o ;; | |
a52a3ce8 ILT |
159 | arm-*-riscix) COREFILE=trad-core.o ;; |
160 | hppa*-*-hpux*) COREFILE=hpux-core.o ;; | |
161 | hppa*-*-hiux*) COREFILE=hpux-core.o ;; | |
162 | hppa*-*-bsd*) COREFILE="hpux-core.o hppabsd-core.o" | |
163 | COREFLAG="-DHPUX_CORE -DHPPABSD_CORE" ;; | |
2cb159a5 | 164 | changequote(,)dnl |
f7954d86 | 165 | i[3456]86-sequent-bsd*) |
b7577823 ILT |
166 | changequote([,])dnl |
167 | COREFILE=trad-core.o; | |
168 | AC_DEFINE(TRAD_HEADER,"hosts/symmetry.h") | |
169 | ;; | |
170 | changequote(,)dnl | |
f7954d86 MM |
171 | i[3456]86-sequent-sysv4*) ;; |
172 | i[3456]86-sequent-sysv*) | |
b7577823 ILT |
173 | changequote([,])dnl |
174 | COREFILE=trad-core.o | |
175 | AC_DEFINE(TRAD_HEADER,"hosts/symmetry.h") | |
176 | ;; | |
177 | changequote(,)dnl | |
f7954d86 | 178 | i[3456]86-*-bsd* | i[3456]86-*-freebsd*) |
b7577823 ILT |
179 | changequote([,])dnl |
180 | COREFILE=trad-core.o | |
181 | AC_DEFINE(TRAD_HEADER,"hosts/i386bsd.h") | |
182 | ;; | |
69a374c0 | 183 | changequote(,)dnl |
3b1b0308 | 184 | i[3456]86-*-netbsd* | i[3456]86-*-openbsd*) |
69a374c0 | 185 | changequote([,])dnl |
55626bf0 | 186 | COREFILE=netbsd-core.o |
69a374c0 | 187 | ;; |
b7577823 | 188 | changequote(,)dnl |
f7954d86 | 189 | i[3456]86-esix-sysv3*) |
b7577823 ILT |
190 | changequote([,])dnl |
191 | COREFILE=trad-core.o | |
192 | AC_DEFINE(TRAD_HEADER,"hosts/esix.h") | |
193 | ;; | |
194 | changequote(,)dnl | |
f7954d86 | 195 | i[3456]86-*-sco* | i[3456]86-*-isc*) |
b7577823 ILT |
196 | changequote([,])dnl |
197 | COREFILE=trad-core.o | |
198 | AC_DEFINE(TRAD_HEADER,"hosts/i386sco.h") | |
199 | ;; | |
200 | changequote(,)dnl | |
f7954d86 | 201 | i[3456]86-*-mach3*) |
b7577823 ILT |
202 | changequote([,])dnl |
203 | COREFILE=trad-core.o | |
204 | AC_DEFINE(TRAD_HEADER,"hosts/i386mach3.h") | |
205 | ;; | |
206 | changequote(,)dnl | |
f7954d86 | 207 | i[3456]86-*-linux*) |
b7577823 ILT |
208 | changequote([,])dnl |
209 | COREFILE=trad-core.o | |
210 | AC_DEFINE(TRAD_HEADER,"hosts/i386linux.h") | |
211 | ;; | |
212 | changequote(,)dnl | |
f7954d86 MM |
213 | i[3456]86-*-isc*) COREFILE=trad-core.o ;; |
214 | i[3456]86-*-aix*) COREFILE=aix386-core.o ;; | |
2cb159a5 | 215 | changequote([,])dnl |
cf587de8 ILT |
216 | i860-*-mach3* | i860-*-osf1*) |
217 | COREFILE=trad-core.o | |
218 | AC_DEFINE(TRAD_HEADER,"hosts/i860mach3.h") | |
219 | ;; | |
b7577823 ILT |
220 | mips-dec-bsd*) |
221 | COREFILE=trad-core.o | |
222 | AC_DEFINE(TRAD_HEADER,"hosts/mipsbsd.h") | |
223 | ;; | |
224 | mips-dec-mach3*) | |
225 | COREFILE=trad-core.o | |
226 | AC_DEFINE(TRAD_HEADER,"hosts/mipsmach3.h") | |
227 | ;; | |
3b1b0308 | 228 | mips-*-netbsd* | mips*-*-openbsd*) |
55626bf0 | 229 | COREFILE=netbsd-core.o |
69a374c0 | 230 | ;; |
b7577823 ILT |
231 | mips-dec-*) |
232 | COREFILE=trad-core.o | |
233 | AC_DEFINE(TRAD_HEADER,"hosts/decstation.h") | |
234 | ;; | |
a52a3ce8 ILT |
235 | mips-sgi-irix4*) COREFILE=irix-core.o ;; |
236 | mips-sgi-irix5*) COREFILE=irix-core.o ;; | |
cd6213ff | 237 | mips-sgi-irix6*) COREFILE=irix-core.o ;; |
b7577823 ILT |
238 | mips-*-mach3*) |
239 | COREFILE=trad-core.o | |
240 | AC_DEFINE(TRAD_HEADER,"hosts/mipsmach3.h") | |
241 | ;; | |
a52a3ce8 | 242 | mips-*-sysv4*) ;; |
b7577823 ILT |
243 | mips-*-sysv* | mips-*-riscos*) |
244 | COREFILE=trad-core.o | |
245 | AC_DEFINE(TRAD_HEADER,"hosts/riscos.h") | |
246 | ;; | |
247 | mips-sony-bsd*) | |
248 | COREFILE=trad-core.o | |
ab1aa5cd | 249 | AC_DEFINE(TRAD_HEADER,"hosts/news-mips.h") |
b7577823 ILT |
250 | ;; |
251 | m68*-bull*-sysv*) | |
252 | COREFILE=trad-core.o | |
253 | AC_DEFINE(TRAD_HEADER,"hosts/dpx2.h") | |
254 | ;; | |
a52a3ce8 | 255 | m68*-hp-hpux*) COREFILE=hpux-core.o ;; |
b7577823 ILT |
256 | m68*-hp-bsd*) |
257 | COREFILE=trad-core.o | |
258 | AC_DEFINE(TRAD_HEADER,"hosts/hp300bsd.h") | |
259 | ;; | |
55626bf0 ILT |
260 | m68*-*-linux*) |
261 | COREFILE=trad-core.o | |
262 | AC_DEFINE(TRAD_HEADER,"hosts/m68klinux.h") | |
263 | ;; | |
4c8b9746 | 264 | m68*-motorola-sysv*) |
7f82c7e1 ILT |
265 | COREFILE=trad-core.o |
266 | AC_DEFINE(TRAD_HEADER, "hosts/delta68.h") | |
267 | ;; | |
b7577823 ILT |
268 | m68*-sony-*) |
269 | COREFILE=trad-core.o | |
270 | AC_DEFINE(TRAD_HEADER,"hosts/news.h") | |
271 | ;; | |
3b1b0308 | 272 | m68*-*-netbsd* | m68*-*-openbsd*) |
55626bf0 | 273 | COREFILE=netbsd-core.o |
69a374c0 | 274 | ;; |
44f795f7 ILT |
275 | m68*-apple-aux*) |
276 | COREFILE=trad-core.o | |
277 | AC_DEFINE(TRAD_HEADER,"hosts/m68kaux.h") | |
278 | ;; | |
a52a3ce8 | 279 | m88*-*-sysv4*) ;; |
7f82c7e1 | 280 | m88*-motorola-sysv*) COREFILE=ptrace-core.o ;; |
b7577823 ILT |
281 | m88*-*-mach3*) |
282 | COREFILE=trad-core.o | |
283 | AC_DEFINE(TRAD_HEADER,"hosts/m88kmach3.h") | |
284 | ;; | |
285 | ns32k-pc532-mach) | |
286 | COREFILE=trad-core.o | |
287 | AC_DEFINE(TRAD_HEADER,"hosts/pc532mach.h") | |
288 | ;; | |
3b1b0308 | 289 | ns32k-*-netbsd* | ns32k-*-openbsd*) |
55626bf0 | 290 | COREFILE=netbsd-core.o |
69a374c0 | 291 | ;; |
a52a3ce8 | 292 | rs6000-*-lynx*) COREFILE=lynx-core.o ;; |
aadf04f7 | 293 | rs6000-*-aix4*) COREFILE=rs6000-core.o ;; |
a52a3ce8 | 294 | rs6000-*-*) COREFILE=rs6000-core.o ;; |
3b1b0308 | 295 | powerpc-*-*bsd*) COREFILE=netbsd-core.o ;; |
aadf04f7 | 296 | powerpc-*-aix4*) COREFILE=rs6000-core.o ;; |
a52a3ce8 | 297 | powerpc-*-aix*) COREFILE=rs6000-core.o ;; |
ac388f2a | 298 | powerpc-*-beos*) ;; |
3b1b0308 | 299 | sparc-*-netbsd* | sparc-*-openbsd*) |
55626bf0 | 300 | COREFILE=netbsd-core.o |
69a374c0 | 301 | ;; |
b7577823 ILT |
302 | tahoe-*-*) |
303 | COREFILE=trad-core.o | |
304 | AC_DEFINE(TRAD_HEADER,"hosts/tahoe.h") | |
305 | ;; | |
306 | vax-*-ultrix2*) | |
307 | COREFILE=trad-core.o | |
308 | AC_DEFINE(TRAD_HEADER,"hosts/vaxult2.h") | |
309 | ;; | |
310 | vax-*-ultrix*) | |
311 | COREFILE=trad-core.o | |
312 | AC_DEFINE(TRAD_HEADER,"hosts/vaxult2.h") | |
313 | ;; | |
314 | vax-*-*) | |
315 | COREFILE=trad-core.o | |
316 | AC_DEFINE(TRAD_HEADER,"hosts/vaxbsd.h") | |
317 | ;; | |
a52a3ce8 ILT |
318 | esac |
319 | ||
320 | case "$COREFILE" in | |
321 | aix386-core.o) COREFLAG=-DAIX386_CORE ;; | |
322 | hppabsd-core.o) COREFLAG=-DHPPABSD_CORE ;; | |
323 | hpux-core.o) COREFLAG=-DHPUX_CORE ;; | |
324 | irix-core.o) COREFLAG=-DIRIX_CORE ;; | |
325 | lynx-core.o) COREFLAG=-DLYNX_CORE ;; | |
326 | osf-core.o) COREFLAG=-DOSF_CORE ;; | |
327 | ptrace-core.o) COREFLAG=-DPTRACE_CORE ;; | |
328 | rs6000-core.o) COREFLAG="$COREFLAG -DAIX_CORE" ;; | |
b7577823 | 329 | trad-core.o) COREFLAG="$COREFLAG -DTRAD_CORE" ;; |
a52a3ce8 | 330 | esac |
1dff7902 ILT |
331 | |
332 | # The ELF code uses the native <sys/procfs.h> to handle core files. | |
333 | # Define HAVE_SYS_PROCFS_H if the file exists and defines | |
334 | # prstatus_t. | |
335 | AC_MSG_CHECKING([for sys/procfs.h]) | |
336 | AC_CACHE_VAL(bfd_cv_header_sys_procfs_h, | |
337 | [AC_TRY_COMPILE([#include <sys/procfs.h>], | |
338 | [prstatus_t t;], | |
339 | bfd_cv_header_sys_procfs_h=yes, bfd_cv_header_sys_procfs_h=no)]) | |
340 | AC_MSG_RESULT($bfd_cv_header_sys_procfs_h) | |
341 | if test $bfd_cv_header_sys_procfs_h = yes; then | |
342 | AC_DEFINE(HAVE_SYS_PROCFS_H) | |
343 | fi | |
344 | ||
a52a3ce8 ILT |
345 | fi |
346 | AC_SUBST(COREFILE) | |
347 | AC_SUBST(COREFLAG) | |
348 | ||
8c693660 | 349 | # target stuff: |
21c9f626 | 350 | |
180acef5 | 351 | # Canonicalize the secondary target names. |
8c693660 | 352 | if test -n "$enable_targets" ; then |
318b02b6 | 353 | for targ in `echo $enable_targets | sed 's/,/ /g'` |
180acef5 | 354 | do |
60f1ad85 | 355 | result=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $targ 2>/dev/null` |
8c693660 | 356 | if test -n "$result" ; then |
180acef5 DM |
357 | canon_targets="$canon_targets $result" |
358 | else | |
359 | # Allow targets that config.sub doesn't recognize, like "all". | |
360 | canon_targets="$canon_targets $targ" | |
361 | fi | |
362 | done | |
363 | fi | |
5f9a2245 DM |
364 | |
365 | all_targets=false | |
2b79a104 ILT |
366 | defvec= |
367 | selvecs= | |
368 | selarchs= | |
369 | TDEFINES= | |
180acef5 | 370 | for targ in $target $canon_targets |
5f9a2245 | 371 | do |
2b79a104 | 372 | if test "x$targ" = "xall"; then |
5f9a2245 DM |
373 | all_targets=true |
374 | else | |
2b79a104 ILT |
375 | . $srcdir/config.bfd |
376 | if test "x$targ" = "x$target"; then | |
377 | defvec=$targ_defvec | |
5f9a2245 | 378 | fi |
2b79a104 ILT |
379 | selvecs="$selvecs $targ_defvec $targ_selvecs" |
380 | selarchs="$selarchs $targ_archs" | |
381 | TDEFINES="$TDEFINES $targ_cflags" | |
5f9a2245 DM |
382 | fi |
383 | done | |
2b79a104 | 384 | AC_SUBST(TDEFINES) |
b32ae8e2 | 385 | |
ffe26398 KR |
386 | # This processing still needs to be done if we're to decide properly whether |
387 | # 64-bit support needs to be compiled in. Currently, it will be included if | |
388 | # the default or any other explicitly requested target requires it; it | |
389 | # will not be included on a 32-bit host if no 64-bit target is requested, and | |
390 | # no "--with-64-bit-bfd" option is given, even if "--with-targets=all" is | |
391 | # used. | |
392 | ||
2b79a104 | 393 | # uniq the default and selected vectors in all the configured targets. |
ffe26398 | 394 | f="" |
2b79a104 | 395 | for i in $selvecs ; do |
ffe26398 KR |
396 | case " $f " in |
397 | *" $i "*) ;; | |
398 | *) f="$f $i" ;; | |
399 | esac | |
400 | done | |
2b79a104 | 401 | selvecs="$f" |
ffe26398 | 402 | |
2b79a104 | 403 | # uniq the architectures in all the configured targets. |
ffe26398 | 404 | f="" |
2b79a104 | 405 | for i in $selarchs ; do |
ffe26398 KR |
406 | case " $f " in |
407 | *" $i "*) ;; | |
408 | *) f="$f $i" ;; | |
409 | esac | |
410 | done | |
2b79a104 | 411 | selarchs="$f" |
5f9a2245 | 412 | |
ffe26398 KR |
413 | # Target backend .o files. |
414 | tb= | |
415 | ||
a52a3ce8 ILT |
416 | elf="elf.o elflink.o" |
417 | ||
2b79a104 | 418 | for vec in $selvecs |
ffe26398 KR |
419 | do |
420 | case "$vec" in | |
421 | # This list is alphabetized to make it easy to compare | |
422 | # with the two vector lists in targets.c. | |
69645d10 | 423 | a29kcoff_big_vec) tb="$tb coff-a29k.o cofflink.o" ;; |
986cf3b8 | 424 | a_out_adobe_vec) tb="$tb aout-adobe.o aout32.o" ;; |
a11e10fe DE |
425 | armcoff_little_vec) tb="$tb coff-arm.o cofflink.o " ;; |
426 | armcoff_big_vec) tb="$tb coff-arm.o cofflink.o " ;; | |
a52a3ce8 ILT |
427 | armpe_little_vec) tb="$tb pe-arm.o cofflink.o " ;; |
428 | armpe_big_vec) tb="$tb pe-arm.o cofflink.o " ;; | |
429 | armpei_little_vec) tb="$tb pei-arm.o cofflink.o " ;; | |
430 | armpei_big_vec) tb="$tb pei-arm.o cofflink.o " ;; | |
986cf3b8 ILT |
431 | aout0_big_vec) tb="$tb aout0.o aout32.o" ;; |
432 | aout_arm_big_vec) tb="$tb aout-arm.o aout32.o" ;; | |
433 | aout_arm_little_vec) tb="$tb aout-arm.o aout32.o" ;; | |
434 | aout_mips_big_vec) tb="$tb mipsbsd.o aout32.o" ;; | |
435 | aout_mips_little_vec) tb="$tb mipsbsd.o aout32.o" ;; | |
2487f88f | 436 | apollocoff_vec) tb="$tb coff-apollo.o" ;; |
986cf3b8 ILT |
437 | b_out_vec_big_host) tb="$tb bout.o aout32.o" ;; |
438 | b_out_vec_little_host) tb="$tb bout.o aout32.o" ;; | |
dbbfec07 JM |
439 | bfd_elf64_alpha_vec) tb="$tb elf64-alpha.o elf64.o $elf" |
440 | target64=true ;; | |
c7b44b04 | 441 | # start-sanitize-arc |
a52a3ce8 ILT |
442 | bfd_elf32_littlearc_vec) tb="$tb elf32-arc.o elf32.o $elf" ;; |
443 | bfd_elf32_bigarc_vec) tb="$tb elf32-arc.o elf32.o $elf" ;; | |
c7b44b04 | 444 | # end-sanitize-arc |
a52a3ce8 ILT |
445 | bfd_elf32_big_generic_vec) tb="$tb elf32-gen.o elf32.o $elf" ;; |
446 | bfd_elf32_bigmips_vec) tb="$tb elf32-mips.o elf32.o $elf ecofflink.o" ;; | |
d1bf45aa ILT |
447 | bfd_elf64_bigmips_vec) tb="$tb elf64-mips.o elf64.o elf32-mips.o elf32.o $elf ecofflink.o" |
448 | target64=true ;; | |
50bd50d4 | 449 | bfd_elf32_d10v_vec) tb="$tb elf32-d10v.o elf32.o $elf" ;; |
fd8d7c31 MH |
450 | # start-sanitize-d30v |
451 | bfd_elf32_d30v_vec) tb="$tb elf32-d30v.o elf32.o $elf" ;; | |
452 | # end-sanitize-d30v | |
a52a3ce8 ILT |
453 | bfd_elf32_hppa_vec) tb="$tb elf32-hppa.o elf32.o $elf" ;; |
454 | bfd_elf32_i386_vec) tb="$tb elf32-i386.o elf32.o $elf" ;; | |
455 | bfd_elf32_i860_vec) tb="$tb elf32-i860.o elf32.o $elf" ;; | |
456 | bfd_elf32_little_generic_vec) tb="$tb elf32-gen.o elf32.o $elf" ;; | |
457 | bfd_elf32_littlemips_vec) tb="$tb elf32-mips.o elf32.o $elf ecofflink.o" ;; | |
d1bf45aa ILT |
458 | bfd_elf64_littlemips_vec) tb="$tb elf64-mips.o elf64.o elf32-mips.o elf32.o $elf ecofflink.o" |
459 | target64=true ;; | |
efc2b064 | 460 | bfd_elf32_m32r_vec) tb="$tb elf32-m32r.o elf32.o $elf" ;; |
a52a3ce8 ILT |
461 | bfd_elf32_m68k_vec) tb="$tb elf32-m68k.o elf32.o $elf" ;; |
462 | bfd_elf32_m88k_vec) tb="$tb elf32-m88k.o elf32.o $elf" ;; | |
b872076e ILT |
463 | bfd_elf32_mn10200_vec) tb="$tb elf-m10200.o elf32.o $elf" ;; |
464 | bfd_elf32_mn10300_vec) tb="$tb elf-m10300.o elf32.o $elf" ;; | |
a52a3ce8 ILT |
465 | bfd_elf32_powerpc_vec) tb="$tb elf32-ppc.o elf32.o $elf" ;; |
466 | bfd_elf32_powerpcle_vec) tb="$tb elf32-ppc.o elf32.o $elf" ;; | |
efc2b064 JL |
467 | bfd_elf32_sh_vec) tb="$tb elf32-sh.o elf32.o $elf coff-sh.o" ;; |
468 | bfd_elf32_shl_vec) tb="$tb elf32-sh.o elf32.o $elf coff-sh.o" ;; | |
a52a3ce8 | 469 | bfd_elf32_sparc_vec) tb="$tb elf32-sparc.o elf32.o $elf" ;; |
f7954d86 MM |
470 | # start-sanitize-v850 |
471 | bfd_elf32_v850_vec) tb="$tb elf32-v850.o elf32.o $elf" ;; | |
472 | # end-sanitize-v850 | |
a52a3ce8 | 473 | bfd_elf64_big_generic_vec) tb="$tb elf64-gen.o elf64.o $elf" |
7adbe989 | 474 | target64=true ;; |
a52a3ce8 | 475 | bfd_elf64_little_generic_vec) tb="$tb elf64-gen.o elf64.o $elf" |
7adbe989 | 476 | target64=true ;; |
a52a3ce8 | 477 | bfd_elf64_sparc_vec) tb="$tb elf64-sparc.o elf64.o $elf" |
7adbe989 | 478 | target64=true ;; |
4f9617ca | 479 | cisco_core_vec) tb="$tb cisco-core.o" ;; |
986cf3b8 | 480 | demo_64_vec) tb="$tb demo64.o aout64.o" |
7adbe989 | 481 | target64=true ;; |
318b02b6 KR |
482 | ecoff_big_vec) tb="$tb coff-mips.o ecoff.o ecofflink.o" ;; |
483 | ecoff_little_vec) tb="$tb coff-mips.o ecoff.o ecofflink.o" ;; | |
ac388f2a | 484 | ecoff_biglittle_vec) tb="$tb coff-mips.o ecoff.o ecofflink.o" ;; |
318b02b6 | 485 | ecoffalpha_little_vec) tb="$tb coff-alpha.o ecoff.o ecofflink.o" |
5dac2dd5 | 486 | target64=true ;; |
179ce6e1 ILT |
487 | go32coff_vec) tb="$tb coff-go32.o cofflink.o" ;; |
488 | go32stubbedcoff_vec) tb="$tb coff-stubgo32.o cofflink.o" ;; | |
dbbfec07 JM |
489 | evax_alpha_vec) tb="$tb evax-alpha.o evax-emh.o evax-egsd.o evax-etir.o evax-misc.o" |
490 | target64=true ;; | |
ffe26398 KR |
491 | h8300coff_vec) tb="$tb coff-h8300.o reloc16.o" ;; |
492 | h8500coff_vec) tb="$tb coff-h8500.o reloc16.o" ;; | |
986cf3b8 ILT |
493 | host_aout_vec) tb="$tb host-aout.o aout32.o" ;; |
494 | hp300bsd_vec) tb="$tb hp300bsd.o aout32.o" ;; | |
495 | hp300hpux_vec) tb="$tb hp300hpux.o aout32.o" ;; | |
496 | i386aout_vec) tb="$tb i386aout.o aout32.o" ;; | |
497 | i386bsd_vec) tb="$tb i386bsd.o aout32.o" ;; | |
bd23b552 | 498 | i386coff_vec) tb="$tb coff-i386.o cofflink.o" ;; |
986cf3b8 ILT |
499 | i386dynix_vec) tb="$tb i386dynix.o aout32.o" ;; |
500 | i386freebsd_vec) tb="$tb i386freebsd.o aout32.o" ;; | |
c7b44b04 | 501 | i386msdos_vec) tb="$tb i386msdos.o" ;; |
8c693660 KR |
502 | i386pe_vec) tb="$tb pe-i386.o cofflink.o " ;; |
503 | i386pei_vec) tb="$tb pei-i386.o cofflink.o" ;; | |
986cf3b8 ILT |
504 | i386linux_vec) tb="$tb i386linux.o aout32.o" ;; |
505 | i386lynx_aout_vec) tb="$tb i386lynx.o lynx-core.o aout32.o" ;; | |
506 | i386lynx_coff_vec) tb="$tb cf-i386lynx.o cofflink.o lynx-core.o" ;; | |
507 | i386mach3_vec) tb="$tb i386mach3.o aout32.o" ;; | |
508 | i386netbsd_vec) tb="$tb i386netbsd.o aout32.o" ;; | |
509 | i386os9k_vec) tb="$tb i386os9k.o aout32.o" ;; | |
cf587de8 | 510 | i860coff_vec) tb="$tb coff-i860.o cofflink.o" ;; |
a208a70f ILT |
511 | icoff_big_vec) tb="$tb coff-i960.o cofflink.o" ;; |
512 | icoff_little_vec) tb="$tb coff-i960.o cofflink.o" ;; | |
ffe26398 | 513 | ieee_vec) tb="$tb ieee.o" ;; |
bd23b552 ILT |
514 | m68kcoff_vec) tb="$tb coff-m68k.o cofflink.o" ;; |
515 | m68kcoffun_vec) tb="$tb coff-u68k.o coff-m68k.o cofflink.o" ;; | |
986cf3b8 ILT |
516 | m68klinux_vec) tb="$tb m68klinux.o aout32.o" ;; |
517 | m68klynx_aout_vec) tb="$tb m68klynx.o lynx-core.o aout32.o" ;; | |
518 | m68klynx_coff_vec) tb="$tb cf-m68klynx.o coff-m68k.o cofflink.o lynx-core.o" ;; | |
519 | m68knetbsd_vec) tb="$tb m68knetbsd.o aout32.o" ;; | |
520 | m68k4knetbsd_vec) tb="$tb m68k4knetbsd.o aout32.o" ;; | |
44f795f7 | 521 | m68kaux_coff_vec) tb="$tb coff-aux.o coff-m68k.o cofflink.o" ;; |
ac388f2a | 522 | m68ksysvcoff_vec) tb="$tb coff-svm68k.o cofflink.o" ;; |
ffe26398 | 523 | m88kbcs_vec) tb="$tb coff-m88k.o" ;; |
986cf3b8 | 524 | newsos3_vec) tb="$tb newsos3.o aout32.o" ;; |
ffe26398 | 525 | nlm32_i386_vec) tb="$tb nlm32-i386.o nlm32.o nlm.o" ;; |
5dac2dd5 | 526 | nlm32_sparc_vec) tb="$tb nlm32-sparc.o nlm32.o nlm.o" ;; |
85cc33c7 | 527 | nlm32_alpha_vec) tb="$tb nlm32-alpha.o nlm32.o nlm.o" |
7adbe989 | 528 | target64=true ;; |
986cf3b8 | 529 | riscix_vec) tb="$tb aout32.o riscix.o" ;; |
4f9617ca | 530 | nlm32_powerpc_vec) tb="$tb nlm32-ppc.o nlm32.o nlm.o" ;; |
986cf3b8 ILT |
531 | pc532netbsd_vec) tb="$tb ns32knetbsd.o aout-ns32k.o" ;; |
532 | pc532machaout_vec) tb="$tb pc532-mach.o aout-ns32k.o" ;; | |
aadf04f7 SS |
533 | pmac_xcoff_vec) tb="$tb coff-pmac.o xcofflink.o" ;; |
534 | rs6000coff_vec) tb="$tb coff-rs6000.o xcofflink.o" ;; | |
e0c10737 KK |
535 | bfd_powerpc_pe_vec) tb="$tb pe-ppc.o cofflink.o" ;; |
536 | bfd_powerpcle_pe_vec) tb="$tb pe-ppc.o cofflink.o" ;; | |
537 | bfd_powerpc_pei_vec) tb="$tb pei-ppc.o cofflink.o" ;; | |
538 | bfd_powerpcle_pei_vec) tb="$tb pei-ppc.o cofflink.o" ;; | |
d1bf45aa | 539 | ppcboot_vec) tb="$tb ppcboot.o" ;; |
ec35a1c2 | 540 | shcoff_vec) tb="$tb coff-sh.o cofflink.o" ;; |
7a1d4567 | 541 | shlcoff_vec) tb="$tb coff-sh.o cofflink.o" ;; |
318b02b6 | 542 | som_vec) tb="$tb som.o" ;; |
efc2b064 | 543 | sparcle_aout_vec) tb="$tb aout-sparcle.o aout32.o" ;; |
b872076e | 544 | sparclinux_vec) tb="$tb sparclinux.o aout32.o stab-syms.o" ;; |
986cf3b8 ILT |
545 | sparclynx_aout_vec) tb="$tb sparclynx.o lynx-core.o aout32.o" ;; |
546 | sparclynx_coff_vec) tb="$tb cf-sparclynx.o lynx-core.o" ;; | |
547 | sparcnetbsd_vec) tb="$tb sparcnetbsd.o aout32.o" ;; | |
6a6676fb | 548 | sparccoff_vec) tb="$tb coff-sparc.o" ;; |
318b02b6 | 549 | srec_vec) tb="$tb srec.o" ;; |
986cf3b8 | 550 | sunos_big_vec) tb="$tb sunos.o aout32.o" ;; |
318b02b6 | 551 | symbolsrec_vec) tb="$tb srec.o" ;; |
ffe26398 | 552 | tekhex_vec) tb="$tb tekhex.o" ;; |
cd6213ff | 553 | # start-sanitize-tic80 |
60b26712 | 554 | tic80coff_vec) tb="$tb coff-tic80.o cofflink.o" ;; |
cd6213ff | 555 | # end-sanitize-tic80 |
ffe26398 KR |
556 | we32kcoff_vec) tb="$tb coff-we32k.o" ;; |
557 | z8kcoff_vec) tb="$tb coff-z8k.o reloc16.o" ;; | |
c7b44b04 | 558 | w65_vec) tb="$tb coff-w65.o reloc16.o" ;; |
8c693660 | 559 | versados_vec) tb="$tb versados.o" ;; |
ffe26398 | 560 | |
ffe26398 | 561 | "") ;; |
8c693660 | 562 | *) AC_MSG_ERROR(*** unknown target vector $vec) ;; |
ffe26398 KR |
563 | esac |
564 | done | |
5f9a2245 | 565 | |
ffe26398 | 566 | # Target architecture .o files. |
b872076e ILT |
567 | # A couple of CPUs use shorter file names to avoid problems on DOS |
568 | # filesystems. | |
569 | ta=`echo $selarchs | sed -e s/bfd_/cpu-/g -e s/_arch/.o/g -e s/mn10200/m10200/ -e s/mn10300/m10300/` | |
5f9a2245 | 570 | |
ffe26398 KR |
571 | # Weed out duplicate .o files. |
572 | f="" | |
573 | for i in $tb ; do | |
574 | case " $f " in | |
575 | *" $i "*) ;; | |
576 | *) f="$f $i" ;; | |
577 | esac | |
578 | done | |
579 | tb="$f" | |
580 | ||
581 | f="" | |
582 | for i in $ta ; do | |
583 | case " $f " in | |
584 | *" $i "*) ;; | |
585 | *) f="$f $i" ;; | |
586 | esac | |
587 | done | |
588 | ta="$f" | |
5f9a2245 | 589 | |
ffe26398 KR |
590 | bfd_backends="$tb" |
591 | bfd_machines="$ta" | |
5f9a2245 | 592 | |
8c693660 | 593 | if test x${all_targets} = xtrue ; then |
ffe26398 KR |
594 | bfd_backends="${bfd_backends}"' $(ALL_BACKENDS)' |
595 | bfd_machines="${bfd_machines}"' $(ALL_MACHINES)' | |
2b79a104 | 596 | selvecs= |
cd6213ff | 597 | havevecs= |
2b79a104 | 598 | selarchs= |
cede9731 PS |
599 | else # all_targets is true |
600 | # Only set these if they will be nonempty, for the clever echo. | |
cd6213ff FF |
601 | havevecs= |
602 | test -n "$selvecs" && | |
603 | havevecs=`echo $selvecs | sed -e 's/^/-DHAVE_/' -e 's/ \(.\)/ -DHAVE_\1/g'` | |
2b79a104 ILT |
604 | test -n "$selvecs" && |
605 | selvecs=`echo $selvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` | |
606 | test -n "$selarchs" && | |
2ffbb79a | 607 | selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` |
5f9a2245 DM |
608 | fi # all_targets is true |
609 | ||
7adbe989 KR |
610 | case ${host64}-${target64}-${want64} in |
611 | *true*) | |
612 | wordsize=64 | |
613 | all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)' | |
194141a9 | 614 | if test -z "$GCC" && test "$BFD_HOST_64BIT_LONG" = "0" && test "$BFD_HOST_64_BIT_DEFINED" = "0"; then |
dbbfec07 JM |
615 | AC_MSG_WARN([You have requested a 64 bit BFD configuration, but]) |
616 | AC_MSG_WARN([your compiler may not have a 64 bit integral type]) | |
617 | fi | |
7adbe989 KR |
618 | ;; |
619 | false-false-false) | |
620 | wordsize=32 | |
621 | all_backends='$(BFD32_BACKENDS)' | |
622 | ;; | |
623 | esac | |
624 | ||
8c693660 KR |
625 | AC_SUBST(wordsize) |
626 | AC_SUBST(all_backends) | |
627 | AC_SUBST(bfd_backends) | |
628 | AC_SUBST(bfd_machines) | |
7adbe989 | 629 | |
8c693660 | 630 | tdefaults="" |
c7b44b04 MM |
631 | test -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}" |
632 | test -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'" | |
633 | test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'" | |
cd6213ff | 634 | test -n "${havevecs}" && tdefaults="${tdefaults} ${havevecs}" |
8c693660 | 635 | AC_SUBST(tdefaults) |
c812942f | 636 | |
4fe6d901 KR |
637 | dnl AC_CHECK_HEADERS(sys/mman.h) |
638 | AC_FUNC_MMAP | |
639 | AC_CHECK_FUNCS(madvise mprotect) | |
fd8d7c31 | 640 | case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in |
44f795f7 ILT |
641 | true+yes ) AC_DEFINE(USE_MMAP) ;; |
642 | esac | |
4fe6d901 | 643 | |
8c693660 | 644 | rm -f doc/config.status |
f4e14cb9 | 645 | AC_OUTPUT(Makefile doc/Makefile bfd-in3.h:bfd-in2.h, |
a7873a6c | 646 | [case x$CONFIG_HEADERS in xconfig.h:config.in) echo > stamp-h ;; esac]) |