*** empty log message ***
[external/binutils.git] / gas / configure.in
1 dnl Process this file with autoconf to produce a configure script.
2 dnl
3 dnl And be careful when changing it!  If you must add tests with square
4 dnl brackets, be sure changequote invocations surround it.
5 dnl
6 dnl
7 dnl v2.5 needed for --bindir et al
8 AC_PREREQ(2.57)
9 AC_INIT(as.h)
10
11 dnl Autoconf 2.57 will find the aux dir without this.  However, unless
12 dnl we specify this explicitly, automake-1.7 will assume that ylwrap is in
13 dnl gas/ instead of gas/../.
14 AC_CONFIG_AUX_DIR(..)
15 AC_CANONICAL_SYSTEM
16 AC_ISC_POSIX
17
18 changequote(,)dnl
19 BFD_VERSION=`sed -n -e 's/^.._INIT_AUTOMAKE.*,[         ]*\([^  ]*\)[   ]*).*/\1/p' < ${srcdir}/../bfd/configure.in`
20 changequote([,])dnl
21 AM_INIT_AUTOMAKE(gas, ${BFD_VERSION})
22
23 AM_PROG_LIBTOOL
24
25 AC_ARG_ENABLE(targets,
26 [  --enable-targets        alternative target configurations besides the primary],
27 [case "${enableval}" in
28   yes | "") AC_ERROR(enable-targets option must specify target names or 'all')
29             ;;
30   no)       enable_targets= ;;
31   *)        enable_targets=$enableval ;;
32 esac])dnl
33 AC_ARG_ENABLE(commonbfdlib,
34 [  --enable-commonbfdlib   build shared BFD/opcodes/libiberty library],
35 [case "${enableval}" in
36   yes) commonbfdlib=true ;;
37   no)  commonbfdlib=false ;;
38   *)   AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;;
39 esac])dnl
40
41 using_cgen=no
42
43 AM_BINUTILS_WARNINGS
44
45 # Generate a header file
46 AM_CONFIG_HEADER(config.h:config.in)
47
48 # If we are on a DOS filesystem, we must use gdb.ini rather than
49 # .gdbinit.
50 case "${host}" in
51   *-*-msdos* | *-*-go32* | *-*-mingw32* | *-*-windows*)
52     GDBINIT="gdb.ini"
53     AC_CONFIG_FILES(gdb.ini:gdbinit.in)
54     ;;
55   *)
56     GDBINIT=".gdbinit"
57     AC_CONFIG_FILES(.gdbinit:gdbinit.in)
58     ;;
59 esac
60 AC_SUBST(GDBINIT)
61
62 #We need this for the host.  BOUT header is in host order.
63 AC_C_BIGENDIAN
64
65 te_file=generic
66
67 # Makefile target for installing gas in $(tooldir)/bin.
68 install_tooldir=install-exec-tooldir
69
70 canon_targets=""
71 all_targets=no
72 if test -n "$enable_targets" ; then
73   for t in `echo $enable_targets | sed 's/,/ /g'`; do
74     if test $t = "all"; then
75       all_targets=yes
76       continue
77     fi
78     result=`$ac_config_sub $t 2>/dev/null`
79     if test -n "$result" ; then
80       canon_targets="$canon_targets $result"
81 #    else
82 #      # Permit "all", etc.  We don't support it yet though.
83 #      canon_targets="$canon_targets $t"
84     fi
85   done
86   GAS_UNIQ(canon_targets)
87 fi
88
89 emulations=""
90
91 for this_target in $target $canon_targets ; do
92
93     targ=${this_target}
94     . ${srcdir}/configure.tgt
95
96     case ${target_cpu} in
97       crisv32)
98         AC_DEFINE_UNQUOTED(DEFAULT_CRIS_ARCH, $arch,
99                            [Default CRIS architecture.])
100         ;;
101     esac
102
103     if test ${this_target} = $target ; then
104       target_cpu_type=${cpu_type}
105     elif test ${target_cpu_type} != ${cpu_type} ; then
106       continue
107     fi
108
109     generic_target=${cpu_type}-${target_vendor}-${target_os}
110     case ${generic_target} in
111       i386-*-sco3.2v5*)
112         if test ${this_target} = $target; then
113           AC_DEFINE(SCO_ELF, 1, [Define if defaulting to ELF on SCO 5.])
114         fi
115         ;;
116
117       i386-*-msdosdjgpp* \
118       | i386-*-go32* \
119       | i386-go32-rtems*)
120         AC_DEFINE(STRICTCOFF, 1, [Using strict COFF?])
121         ;;
122
123       i860-*-*)
124         AC_MSG_WARN(GAS support for ${generic_target} is preliminary and a work in progress)
125         ;;
126
127       mips-sony-bsd*)
128         ;;
129       mips-*-bsd*)
130         AC_MSG_ERROR(Unknown vendor for mips-bsd configuration.)
131         ;;
132
133       ppc-*-aix5.*)
134         AC_DEFINE(AIX_WEAK_SUPPORT, 1,
135                   [Define if using AIX 5.2 value for C_WEAKEXT.])
136         ;;
137       ppc-*-linux-*)
138         case "$endian" in
139           big)  ;;
140           *)    AC_MSG_ERROR(GNU/Linux must be configured big endian) ;;
141         esac
142         ;;
143       ppc-*-solaris*)
144         if test ${this_target} = $target; then
145           AC_DEFINE(TARGET_SOLARIS_COMMENT, 1,
146                     [Define if default target is PowerPC Solaris.])
147         fi
148         if test x${endian} = xbig; then
149           AC_MSG_ERROR(Solaris must be configured little endian)
150         fi
151         ;;
152
153       sh*-*-symbianelf*)
154         AC_DEFINE(TARGET_SYMBIAN, 1, [Define if target is Symbian OS.])
155         ;;
156     esac
157
158     if test ${this_target} = $target ; then
159       endian_def=
160       if test x${endian} = xbig; then
161         endian_def=1
162       elif test x${endian} = xlittle; then
163         endian_def=0
164       fi
165       if test x${endian_def} != x; then
166         AC_DEFINE_UNQUOTED(TARGET_BYTES_BIG_ENDIAN, $endian_def,
167                            [Define as 1 if big endian.])
168       fi
169     fi
170
171 # Other random stuff.
172
173     case ${cpu_type} in
174       mips)
175         # Set mips_cpu to the name of the default CPU.
176         case ${target_cpu} in
177           mips | mipsbe | mipseb | mipsle | mipsel | mips64 | mips64el)
178             mips_cpu=from-abi
179             ;;
180           mipsisa32 | mipsisa32el)
181             mips_cpu=mips32
182             ;;
183           mipsisa32r2 | mipsisa32r2el)
184             mips_cpu=mips32r2
185             ;;
186           mipsisa64 | mipsisa64el)
187             mips_cpu=mips64
188             ;;
189           mipsisa64r2 | mipsisa64r2el)
190             mips_cpu=mips64r2
191             ;;
192           mipstx39 | mipstx39el)
193             mips_cpu=r3900
194             ;;
195           mips64vr | mips64vrel)
196             mips_cpu=vr4100
197             ;;
198           mipsisa32r2* | mipsisa64r2*)
199 changequote(,)dnl
200             mips_cpu=`echo $target_cpu | sed -e 's/[a-z]*..r2//' -e 's/el$//'`
201 changequote([,])dnl
202             ;;
203           mips64* | mipsisa64* | mipsisa32*)
204 changequote(,)dnl
205             mips_cpu=`echo $target_cpu | sed -e 's/[a-z]*..//' -e 's/el$//'`
206 changequote([,])dnl
207             ;;
208           *)
209             AC_ERROR($target_cpu isn't a supported MIPS CPU name)
210             ;;
211         esac
212         # See whether it's appropriate to set E_MIPS_ABI_O32 for o32
213         # binaries.  It's a GNU extension that some OSes don't understand.
214         # The value only matters on ELF targets.
215         case ${target} in
216           *-*-irix*)
217             use_e_mips_abi_o32=0
218             ;;
219           *)
220             use_e_mips_abi_o32=1
221             ;;
222         esac
223         # Decide whether to generate 32-bit or 64-bit code by default.
224         # Used to resolve -march=from-abi when an embedded ABI is selected.
225         case ${target} in
226           mips64*-*-* | mipsisa64*-*-*)
227             mips_default_64bit=1
228             ;;
229           *)
230             mips_default_64bit=0
231             ;;
232         esac
233         # Decide which ABI to target by default.
234         case ${target} in
235           mips64*-linux* | mips-sgi-irix6*)
236             mips_default_abi=N32_ABI
237             ;;
238           mips*-linux*)
239             mips_default_abi=O32_ABI
240             ;;
241           mips64*-openbsd*)
242             mips_default_abi=N64_ABI
243             ;;
244           *)
245             mips_default_abi=NO_ABI
246             ;;
247         esac
248         AC_DEFINE_UNQUOTED(MIPS_CPU_STRING_DEFAULT, "$mips_cpu",
249                            [Default CPU for MIPS targets. ])
250         AC_DEFINE_UNQUOTED(USE_E_MIPS_ABI_O32, $use_e_mips_abi_o32,
251                            [Allow use of E_MIPS_ABI_O32 on MIPS targets. ])
252         AC_DEFINE_UNQUOTED(MIPS_DEFAULT_64BIT, $mips_default_64bit,
253                            [Generate 64-bit code by default on MIPS targets. ])
254         AC_DEFINE_UNQUOTED(MIPS_DEFAULT_ABI, $mips_default_abi,
255                            [Choose a default ABI for MIPS targets. ])
256         ;;
257     esac
258
259     # Do we need the opcodes library?
260     case ${cpu_type} in
261       vax | i386 | tic30)
262         ;;
263
264       *)
265         need_opcodes=yes
266
267         case "${enable_shared}" in
268         yes) shared_opcodes=true ;;
269         *opcodes*) shared_opcodes=true ;;
270         *) shared_opcodes=false ;;
271         esac
272         ;;
273     esac
274
275     # Any other special object files needed ?
276     case ${cpu_type} in
277
278       bfin)
279         echo ${extra_objects} | grep -s "bfin-parse.o"
280         if test $? -ne 0 ; then
281           extra_objects="$extra_objects bfin-parse.o"
282         fi
283
284         echo ${extra_objects} | grep -s "bfin-lex.o"
285         if test $? -ne 0 ; then
286           extra_objects="$extra_objects bfin-lex.o"
287         fi
288         ;;
289
290       fr30 | ip2k | iq2000 | m32r | openrisc)
291         using_cgen=yes
292         ;;
293
294       m32c)
295         using_cgen=yes
296         ;;
297       frv)
298         using_cgen=yes
299         ;;
300       m68k)
301         case ${extra_objects} in
302         *m68k-parse.o*) ;;
303         *) extra_objects="$extra_objects m68k-parse.o" ;;
304         esac
305         ;;
306
307       mips)
308         echo ${extra_objects} | grep -s "itbl-parse.o" 
309         if test $? -ne 0 ; then
310           extra_objects="$extra_objects itbl-parse.o"
311         fi
312
313         echo ${extra_objects} | grep -s "itbl-lex.o" 
314         if test $? -ne 0 ; then
315           extra_objects="$extra_objects itbl-lex.o"
316         fi
317
318         echo ${extra_objects} | grep -s "itbl-ops.o" 
319         if test $? -ne 0 ; then
320           extra_objects="$extra_objects itbl-ops.o"
321         fi
322         ;;
323
324       mt)
325         using_cgen=yes
326         ;;
327
328       i386 | s390 | sparc)
329         if test $this_target = $target ; then
330           AC_DEFINE_UNQUOTED(DEFAULT_ARCH, "${arch}", [Default architecture.])
331         fi
332         ;;
333
334       xstormy16)
335         using_cgen=yes
336         ;;
337
338       xc16x)
339         using_cgen=yes
340         ;;
341
342       xtensa)
343         echo ${extra_objects} | grep -s "xtensa-relax.o"
344         if test $? -ne 0 ; then
345           extra_objects="$extra_objects xtensa-relax.o"
346         fi
347         ;;
348
349       *)
350         ;;
351     esac
352
353     if test $using_cgen = yes ; then
354         case "x${extra_objects}" in
355         *cgen.o*) ;;
356         *) extra_objects="$extra_objects cgen.o" ;;
357         esac
358     fi
359
360 # See if we really can support this configuration with the emulation code.
361
362     if test $this_target = $target ; then
363       obj_format=$fmt
364       te_file=$em
365     fi
366
367 # From target name and format, produce a list of supported emulations.
368
369     case ${generic_target}-${fmt} in
370       mips-*-irix5*-*)  emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
371       mips*-*-linux*-*) case "$endian" in
372                         big)    emulation="mipsbelf mipslelf mipself" ;;
373                         *)      emulation="mipslelf mipsbelf mipself" ;;
374                         esac ;;
375       mips-*-lnews*-ecoff) ;;
376       mips-*-*-ecoff)   case "$endian" in
377                         big)    emulation="mipsbecoff mipslecoff mipsecoff" ;;
378                         *)      emulation="mipslecoff mipsbecoff mipsecoff" ;;
379                         esac ;;
380       mips-*-*-elf)     case "$endian" in
381                         big)    emulation="mipsbelf mipslelf mipself" ;;
382                         *)      emulation="mipslelf mipsbelf mipself" ;;
383                         esac ;;
384       mips-*-sysv4*MP*-*) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
385       # i386-pc-pe-coff != i386-pc-coff.
386       i386-*-pe-coff)   ;;
387       # Uncommenting the next line will turn on support for i386 AOUT
388       # for the default linux configuration
389       # i386-*-linux*-elf) emulation="i386elf i386aout" ;;
390       #
391       i386-*-aout)      emulation="i386aout" ;;
392       i386-*-coff)      emulation="i386coff" ;;
393       i386-*-elf)       emulation="i386elf" ;;
394
395       # Always all formats.  The first stated emulation becomes the default.
396       cris-*-*aout*)    emulation="crisaout criself" ;;
397       cris-*-*)         emulation="criself crisaout" ;;
398     esac
399
400     emulations="$emulations $emulation"
401
402 done
403
404 # Turn on all targets if possible
405 if test ${all_targets} = "yes"; then
406   case ${target_cpu_type} in
407   i386)
408     case ${obj_format} in
409     aout)
410       emulations="$emulations i386coff i386elf"
411       ;;
412     coff)
413       emulations="$emulations i386aout i386elf"
414     ;;
415     elf)
416       emulations="$emulations i386aout i386coff"
417       ;;
418     esac
419   ;;
420   esac
421 fi
422
423 # Assign floating point type.  Most processors with FP support
424 # IEEE FP.  On those that don't support FP at all, usually IEEE
425 # is emulated.
426 case ${target_cpu} in
427   vax | tahoe ) atof=${target_cpu} ;;
428   pdp11)        atof=vax ;;
429   *)            atof=ieee ;;
430 esac
431
432 case "${obj_format}" in
433   "") AC_MSG_ERROR(GAS does not know what format to use for target ${target}) ;;
434 esac
435
436 # Unfortunately the cpu in cpu-opc.h file isn't always $(TARGET_CPU).
437 cgen_cpu_prefix=""
438 if test $using_cgen = yes ; then
439   case ${target_cpu} in
440     *) cgen_cpu_prefix=${target_cpu} ;;
441   esac
442   AC_SUBST(cgen_cpu_prefix)
443   AC_DEFINE(USING_CGEN, 1, [Using cgen code?])
444 fi
445
446 dnl
447 dnl Make sure the desired support files exist.
448 dnl
449
450 if test ! -r ${srcdir}/config/tc-${target_cpu_type}.c; then
451   AC_MSG_ERROR(GAS does not support target CPU ${target_cpu_type})
452 fi
453
454 if test ! -r ${srcdir}/config/obj-${obj_format}.c; then
455   AC_MSG_ERROR(GAS does not have support for object file format ${obj_format})
456 fi
457
458 # Some COFF configurations want these random other flags set.
459 case ${obj_format} in
460   coff)
461     case ${target_cpu_type} in
462       i386) AC_DEFINE(I386COFF, 1, [Using i386 COFF?]) ;;
463       m68k) AC_DEFINE(M68KCOFF, 1, [Using m68k COFF?]) ;;
464       m88k) AC_DEFINE(M88KCOFF, 1, [Using m88k COFF?]) ;;
465     esac
466     ;;
467 esac
468
469 # Getting this done right is going to be a bitch.  Each configuration specified
470 # with --enable-targets=... should be checked for environment, format, cpu
471 # setting.
472 #
473 # For each configuration, the necessary object file support code must be linked
474 # in.  This might be only one, it might be up to four.  The necessary emulation
475 # code needs to be provided, too.
476 #
477 # And then there's "--enable-targets=all"....
478 #
479 # For now, just always do it for MIPS ELF or ECOFF configurations.  Sigh.
480
481 formats="${obj_format}"
482 emfiles=""
483 EMULATIONS=""
484 GAS_UNIQ(emulations)
485 for em in . $emulations ; do
486   case $em in
487     .)  continue ;;
488     mipsbelf | mipslelf | mipself)
489         fmt=elf   file=mipself ;;
490     mipsbecoff | mipslecoff | mipsecoff)
491         fmt=ecoff file=mipsecoff ;;
492     *coff)
493         fmt=coff  file=$em ;;
494     *aout)
495         fmt=aout file=$em ;;
496     *elf)
497         fmt=elf file=$em ;;
498   esac
499   formats="$formats $fmt"
500   emfiles="$emfiles e-$file.o"
501   EMULATIONS="$EMULATIONS &$em,"
502 done
503 GAS_UNIQ(formats)
504 GAS_UNIQ(emfiles)
505 if test `set . $formats ; shift ; echo $#` -gt 1 ; then
506   for fmt in $formats ; do
507     case $fmt in
508       aout)     AC_DEFINE(OBJ_MAYBE_AOUT, 1,    [a.out support?])   ;;
509       bout)     AC_DEFINE(OBJ_MAYBE_BOUT, 1,    [b.out support?])   ;;
510       coff)     AC_DEFINE(OBJ_MAYBE_COFF, 1,    [COFF support?])    ;;
511       ecoff)    AC_DEFINE(OBJ_MAYBE_ECOFF, 1,   [ECOFF support?])   ;;
512       elf)      AC_DEFINE(OBJ_MAYBE_ELF, 1,     [ELF support?])     ;;
513       generic)  AC_DEFINE(OBJ_MAYBE_GENERIC, 1, [generic support?]) ;;
514       ieee)     AC_DEFINE(OBJ_MAYBE_IEEE, 1,    [IEEE support?])    ;;
515       som)      AC_DEFINE(OBJ_MAYBE_SOM, 1,     [SOM support?])     ;;
516     esac
517     extra_objects="$extra_objects obj-$fmt.o"
518   done
519   obj_format=multi
520 fi
521 if test `set . $emfiles ; shift ; echo $#` -gt 0 ; then
522   DEFAULT_EMULATION=`set . $emulations ; echo $2`
523   # e-mips* has more than one emulation per file, e-i386* has just one at the
524   # moment.  If only one emulation is specified, then don't define
525   # USE_EMULATIONS or include any of the e-files as they will only be bloat.
526   case "${obj_format}${emfiles}" in
527     multi* | *mips*)
528       extra_objects="$extra_objects $emfiles"
529       AC_DEFINE(USE_EMULATIONS, 1, [Use emulation support?]) ;;
530   esac
531 fi
532 AC_SUBST(extra_objects)
533 AC_DEFINE_UNQUOTED(EMULATIONS, $EMULATIONS, [Supported emulations.])
534 AC_DEFINE_UNQUOTED(DEFAULT_EMULATION, "$DEFAULT_EMULATION",
535                    [Default emulation.])
536
537 reject_dev_configs=yes
538
539 case ${reject_dev_configs}-${dev} in
540   yes-yes) # Oops.
541     AC_MSG_ERROR(GAS does not support the ${generic_target} configuration.)
542     ;;
543 esac
544
545 AC_SUBST(target_cpu_type)
546 AC_SUBST(obj_format)
547 AC_SUBST(te_file)
548 AC_SUBST(install_tooldir)
549 AC_SUBST(atof)
550 dnl AC_SUBST(emulation)
551
552 # do we need the opcodes library?
553 case "${need_opcodes}" in
554 yes)
555   OPCODES_LIB=../opcodes/libopcodes.la
556   ;;
557 esac
558
559 BFDLIB=../bfd/libbfd.la
560 BFDVER_H=../bfd/bfdver.h
561 ALL_OBJ_DEPS="$ALL_OBJ_DEPS"' ../bfd/bfd.h $(INCDIR)/symcat.h'
562
563 AC_SUBST(BFDLIB)
564 AC_SUBST(OPCODES_LIB)
565
566 AC_SUBST(BFDVER_H)
567 AC_SUBST(ALL_OBJ_DEPS)
568
569 AC_DEFINE_UNQUOTED(TARGET_ALIAS,        "${target_alias}", [Target alias.])
570 AC_DEFINE_UNQUOTED(TARGET_CANONICAL,    "${target}",       [Canonical target.])
571 AC_DEFINE_UNQUOTED(TARGET_CPU,          "${target_cpu}",   [Target CPU.])
572 AC_DEFINE_UNQUOTED(TARGET_VENDOR,       "${target_vendor}", [Target vendor.])
573 AC_DEFINE_UNQUOTED(TARGET_OS,           "${target_os}",    [Target OS.])
574
575 AC_PROG_CC
576
577 AC_PROG_YACC
578 AM_PROG_LEX
579
580 ALL_LINGUAS="fr tr es rw"
581 CY_GNU_GETTEXT
582
583 AM_MAINTAINER_MODE
584 AC_EXEEXT
585
586 AC_CHECK_HEADERS(string.h stdlib.h memory.h strings.h unistd.h stdarg.h varargs.h errno.h sys/types.h)
587
588 # Put this here so that autoconf's "cross-compiling" message doesn't confuse
589 # people who are not cross-compiling but are compiling cross-assemblers.
590 AC_MSG_CHECKING(whether compiling a cross-assembler)
591 if test "${host}" = "${target}"; then
592   cross_gas=no
593 else
594   cross_gas=yes
595   AC_DEFINE(CROSS_COMPILE, 1, [Compiling cross-assembler?])
596 fi
597 AC_MSG_RESULT($cross_gas)
598
599 dnl ansidecl.h will deal with const
600 dnl AC_CONST
601 AC_FUNC_ALLOCA
602 AC_C_INLINE
603
604 # VMS doesn't have unlink.
605 AC_CHECK_FUNCS(unlink remove, break)
606
607 # Some systems don't have sbrk().
608 AC_CHECK_FUNCS(sbrk)
609
610 # do we need the math library?
611 case "${need_libm}" in
612 yes) 
613   AC_CHECK_LIBM
614   AC_SUBST(LIBM)
615   ;;
616 esac
617
618 # Some non-ANSI preprocessors botch requoting inside strings.  That's bad
619 # enough, but on some of those systems, the assert macro relies on requoting
620 # working properly!
621 GAS_WORKING_ASSERT
622
623 # On some systems, the system header files may not declare malloc, realloc,
624 # and free.  There are places where gas needs these functions to have been
625 # declared -- such as when taking their addresses.
626 gas_test_headers="
627 #ifdef HAVE_MEMORY_H
628 #include <memory.h>
629 #endif
630 #ifdef HAVE_STRING_H
631 #include <string.h>
632 #else
633 #ifdef HAVE_STRINGS_H
634 #include <strings.h>
635 #endif
636 #endif
637 #ifdef HAVE_STDLIB_H
638 #include <stdlib.h>
639 #endif
640 #ifdef HAVE_UNISTD_H
641 #include <unistd.h>
642 #endif
643 "
644
645 # Does errno.h declare errno, or do we have to add a separate declaration
646 # for it?
647 GAS_CHECK_DECL_NEEDED(errno, f, int f, [
648 #ifdef HAVE_ERRNO_H
649 #include <errno.h>
650 #endif
651 ])
652
653 AC_MSG_CHECKING(for a known getopt prototype in unistd.h)
654 AC_CACHE_VAL(gas_cv_decl_getopt_unistd_h,
655 [AC_TRY_COMPILE([#include <unistd.h>], [extern int getopt (int, char *const*, const char *);],
656 gas_cv_decl_getopt_unistd_h=yes, gas_cv_decl_getopt_unistd_h=no)])
657 AC_MSG_RESULT($gas_cv_decl_getopt_unistd_h)
658 if test $gas_cv_decl_getopt_unistd_h = yes; then
659   AC_DEFINE([HAVE_DECL_GETOPT], 1,
660             [Is the prototype for getopt in <unistd.h> in the expected format?])
661 fi
662
663 GAS_CHECK_DECL_NEEDED(environ, f, char **f, $gas_test_headers)
664 GAS_CHECK_DECL_NEEDED(ffs, f, int (*f)(int), $gas_test_headers)
665 GAS_CHECK_DECL_NEEDED(free, f, void (*f)(), $gas_test_headers)
666 GAS_CHECK_DECL_NEEDED(malloc, f, char *(*f)(), $gas_test_headers)
667 GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers)
668 GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers)
669
670 AC_CHECK_DECLS([vsnprintf])
671
672 dnl Required for html and install-html targets.
673 AC_SUBST(datarootdir)
674 AC_SUBST(docdir)
675 AC_SUBST(htmldir)
676
677 dnl This must come last.
678
679 dnl We used to make symlinks to files in the source directory, but now
680 dnl we just use the right name for .c files, and create .h files in
681 dnl the build directory which include the right .h file.  Make sure
682 dnl the old symlinks don't exist, so that a reconfigure in an existing
683 dnl directory behaves reasonably.
684
685 AC_CONFIG_FILES(Makefile doc/Makefile po/Makefile.in:po/Make-in)
686 AC_CONFIG_COMMANDS([default],
687 [rm -f targ-cpu.c targ-cpu.h obj-format.h obj-format.c targ-env.h atof-targ.c itbl-cpu.h
688  echo '#include "tc-'"${target_cpu_type}"'.h"' > targ-cpu.h
689  echo '#include "obj-'"${obj_format}"'.h"' > obj-format.h
690  echo '#include "te-'"${te_file}"'.h"' > targ-env.h
691  echo '#include "itbl-'"${target_cpu_type}"'.h"' > itbl-cpu.h
692  if test "x$cgen_cpu_prefix" != x ; then
693    echo '#include "opcodes/'"${cgen_cpu_prefix}"'-desc.h"' > cgen-desc.h
694  fi
695
696  sed -e '/POTFILES =/r po/POTFILES' po/Makefile.in > po/Makefile],
697 [target_cpu_type=${target_cpu_type}
698  cgen_cpu_prefix=${cgen_cpu_prefix}
699  obj_format=${obj_format}
700  te_file=${te_file}])
701
702 AC_OUTPUT