1 dnl Process this file with autoconf to produce a configure script.
3 dnl And be careful when changing it! If you must add tests with square
4 dnl brackets, be sure changequote invocations surround it.
7 dnl v2.5 needed for --bindir et al
13 AM_INIT_AUTOMAKE(gas, 2.9.5)
18 AC_ARG_ENABLE(bfd-assembler,
19 [ --enable-bfd-assembler use BFD back end for writing object files],
20 [case "${enableval}" in
21 yes) need_bfd=yes user_bfd_gas=yes ;;
22 no) user_bfd_gas=no ;;
23 *) AC_MSG_ERROR(bad value ${enableval} given for bfd-assembler option) ;;
25 AC_ARG_ENABLE(targets,
26 [ targets alternative target configurations besides the primary],
27 [case "${enableval}" in
28 yes | "") AC_ERROR(enable-targets option must specify target names or 'all')
30 no) enable_targets= ;;
31 *) enable_targets=$enableval ;;
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]) ;;
43 # Generate a header file
44 AM_CONFIG_HEADER(config.h:config.in)
48 # Makefile target for installing gas in $(tooldir)/bin.
49 install_tooldir=install-exec-tooldir
52 if test -n "$enable_targets" ; then
53 for t in `echo $enable_targets | sed 's/,/ /g'`; do
54 result=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $t 2>/dev/null`
55 if test -n "$result" ; then
56 canon_targets="$canon_targets $result"
58 # # Permit "all", etc. We don't support it yet though.
59 # canon_targets="$canon_targets $t"
62 GAS_UNIQ(canon_targets)
67 for this_target in $target $canon_targets ; do
70 eval `echo $this_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/cpu=\1 vendor=\2 os=\3/'`
73 # check for architecture variants
77 alpha*) cpu_type=alpha ;;
78 armeb) cpu_type=arm endian=big ;;
79 arm*) cpu_type=arm endian=little ;;
80 armb*) cpu_type=arm endian=little ;;
81 armv*l) cpu_type=arm endian=little ;;
82 armv*b) cpu_type=arm endian=big ;;
83 strongarm*) cpu_type=arm endian=little ;;
84 thumb*) cpu_type=arm endian=little ;;
85 hppa*) cpu_type=hppa ;;
87 i[456]86) cpu_type=i386 ;;
88 m680[012346]0) cpu_type=m68k ;;
90 m68008) cpu_type=m68k ;;
91 m683??) cpu_type=m68k ;;
92 m5200) cpu_type=m68k ;;
94 mips*el) cpu_type=mips endian=little ;;
95 mips*) cpu_type=mips endian=big ;;
96 powerpcle*) cpu_type=ppc endian=little ;;
97 powerpc*) cpu_type=ppc endian=big ;;
98 rs6000*) cpu_type=ppc ;;
99 sparclite*) cpu_type=sparc arch=sparclite ;;
100 sparclet*) cpu_type=sparc arch=sparclet ;;
101 sparc64*) cpu_type=sparc arch=v9-64 ;;
102 sparc86x*) cpu_type=sparc arch=sparc86x ;;
103 sparc*) cpu_type=sparc arch=sparclite ;; # ??? See tc-sparc.c.
104 v850*) cpu_type=v850 ;;
105 *) cpu_type=${cpu} ;;
108 if test ${this_target} = $target ; then
109 target_cpu_type=${cpu_type}
110 elif test ${target_cpu_type} != ${cpu_type} ; then
114 generic_target=${cpu_type}-$vendor-$os
119 # assign object format
120 case ${generic_target} in
121 a29k-*-coff) fmt=coff ;;
122 a29k-amd-udi) fmt=coff ;;
123 a29k-amd-ebmon) fmt=coff ;;
124 a29k-nyu-sym1) fmt=coff ;;
125 a29k-*-vxworks*) fmt=coff ;;
127 alpha*-*-*vms*) fmt=evax ;;
128 alpha*-*-netware*) fmt=ecoff ;;
129 alpha*-*-openbsd*) fmt=ecoff ;;
130 alpha*-*-osf*) fmt=ecoff ;;
131 alpha*-*-linuxecoff*) fmt=ecoff ;;
132 alpha*-*-linux-gnu*) fmt=elf em=linux ;;
133 alpha*-*-netbsd*) fmt=elf em=nbsd ;;
135 arc-*-elf*) fmt=elf bfd_gas=yes ;;
137 arm-*-aout) fmt=aout ;;
138 arm-*-coff | thumb-*-coff) fmt=coff ;;
139 arm-*-elf | thumb-*-elf) fmt=elf ;;
140 arm-*-linux*aout*) fmt=aout em=linux ;;
141 arm-*-linux* | armv*-*-linux-gnu) fmt=elf em=linux ;;
142 arm-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;;
143 arm-*-oabi | thumb-*-oabi) fmt=elf ;;
144 arm-epoc-pe | thumb-epoc-pe) fmt=coff em=epoc-pe ;;
145 arm-*-pe | thumb-*-pe) fmt=coff em=pe ;;
146 arm-*-riscix*) fmt=aout em=riscix ;;
148 d10v-*-*) fmt=elf bfd_gas=yes ;;
149 d30v-*-*) fmt=elf bfd_gas=yes ;;
152 fr30-*-*) fmt=elf bfd_gas=yes ;;
154 hppa-*-*elf*) fmt=elf em=hppa ;;
155 hppa-*-linux-gnu*) fmt=elf em=hppa ;;
156 hppa-*-lites*) fmt=elf em=hppa ;;
157 hppa-*-osf*) fmt=som em=hppa ;;
158 hppa-*-rtems*) fmt=elf em=hppa ;;
159 hppa-*-hpux*) fmt=som em=hppa ;;
160 hppa-*-mpeix*) fmt=som em=hppa ;;
161 hppa-*-bsd*) fmt=som em=hppa ;;
162 hppa-*-hiux*) fmt=som em=hppa ;;
164 h8300-*-coff) fmt=coff ;;
166 i386-ibm-aix*) fmt=coff em=i386aix ;;
167 i386-sequent-bsd*) fmt=aout em=dynix bfd_gas=yes ;;
168 i386-*-beospe*) fmt=coff em=pe bfd_gas=yes ;;
169 i386-*-beoself* | i386-*-beos*) fmt=elf bfd_gas=yes ;;
170 i386-*-bsd*) fmt=aout em=386bsd ;;
171 i386-*-netbsd0.8) fmt=aout em=386bsd ;;
172 i386-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes;;
173 i386-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes;;
174 i386-*-linux*aout* | i386-*-linuxoldld) fmt=aout em=linux ;;
175 i386-*-linux*coff*) fmt=coff em=linux ;;
176 i386-*-linux-gnu*) fmt=elf em=linux bfd_gas=yes ;;
177 i386-*-lynxos*) fmt=coff em=lynx ;;
178 i386-*-sysv4* | i386-*-solaris* | i386-*-elf)
179 fmt=elf bfd_gas=yes ;;
180 i386-*-freebsdaout* | i386-*-freebsd[12].* | i386-*-freebsd[12])
181 fmt=aout em=386bsd ;;
182 i386-*-freebsd*) fmt=elf bfd_gas=yes ;;
183 i386-*-coff | i386-*-sysv* | i386-*-sco3.2v5*coff | i386-*-isc*)
185 i386-*-sco3.2v5*) fmt=elf
186 if test ${this_target} = $target; then
187 AC_DEFINE(SCO_ELF, 1,
188 [Define if defaulting to ELF on SCO 5.])
191 i386-*-sco3.2*) fmt=coff ;;
192 i386-*-vsta) fmt=aout ;;
193 i386-*-msdosdjgpp* | i386-*-go32* | i386-go32-rtems*)
195 i386-*-rtemself*) fmt=elf ;;
196 i386-*-rtems*) fmt=coff ;;
197 i386-*-gnu*) fmt=elf ;;
199 fmt=aout em=mach bfd_gas=yes ;;
200 i386-*-msdos*) fmt=aout ;;
201 i386-*-moss*) fmt=elf ;;
202 i386-*-pe) fmt=coff em=pe ;;
203 i386-*-cygwin*) fmt=coff em=pe bfd_gas=yes ;;
204 i386-*-mingw32*) fmt=coff em=pe bfd_gas=yes ;;
205 i386-*-*nt*) fmt=coff em=pe ;;
206 i386-*-vxworks*) fmt=aout ;;
207 i960-*-bout) fmt=bout ;;
208 i960-*-coff) fmt=coff em=ic960 ;;
209 i960-*-rtems*) fmt=coff em=ic960 ;;
210 i960-*-nindy*) fmt=bout ;;
211 i960-*-vxworks4*) fmt=bout ;;
212 i960-*-vxworks5.0) fmt=bout ;;
213 i960-*-vxworks5.*) fmt=coff em=ic960 ;;
214 i960-*-vxworks*) fmt=bout ;;
215 i960-*-elf*) fmt=elf ;;
217 m32r-*-*) fmt=elf bfd_gas=yes ;;
219 m68k-*-vxworks* | m68k-ericsson-ose | m68k-*-sunos*)
221 m68k-motorola-sysv*) fmt=coff em=delta ;;
222 m68k-bull-sysv3*) fmt=coff em=dpx2 ;;
223 m68k-apollo-*) fmt=coff em=apollo ;;
224 m68k-*-sysv4*) # must be before -sysv*
226 m68k-*-elf*) fmt=elf ;;
227 m68k-*-coff | m68k-*-sysv* | m68k-*-rtems*)
229 m68k-*-hpux*) fmt=hp300 em=hp300 ;;
230 m68k-*-linux*aout*) fmt=aout em=linux ;;
231 m68k-*-linux-gnu*) fmt=elf em=linux ;;
232 m68k-*-gnu*) fmt=elf ;;
233 m68k-*-lynxos*) fmt=coff em=lynx ;;
234 m68k-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;;
235 m68k-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes ;;
236 m68k-apple-aux*) fmt=coff em=aux ;;
237 m68k-*-psos*) fmt=elf em=psos;;
239 m88k-motorola-sysv3*) fmt=coff em=delt88 ;;
240 m88k-*-coff*) fmt=coff ;;
242 mcore-*-elf) fmt=elf bfd_gas=yes ;;
243 mcore-*-pe) fmt=coff em=pe bfd_gas=yes ;;
245 # don't change em like *-*-bsd does
246 mips-dec-netbsd*) fmt=elf endian=little ;;
247 mips-dec-openbsd*) fmt=elf endian=little ;;
248 mips-dec-bsd*) fmt=aout endian=little ;;
249 mips-sony-bsd*) fmt=ecoff ;;
250 mips-*-bsd*) AC_MSG_ERROR(Unknown vendor for mips-bsd configuration.) ;;
251 mips-*-ultrix*) fmt=ecoff endian=little ;;
252 mips-*-osf*) fmt=ecoff endian=little ;;
253 mips-*-ecoff*) fmt=ecoff ;;
254 mips-*-ecoff*) fmt=ecoff ;;
255 mips-*-irix6*) fmt=elf ;;
256 mips-*-irix5*) fmt=elf ;;
257 mips-*-irix*) fmt=ecoff ;;
258 mips-*-lnews*) fmt=ecoff em=lnews ;;
259 mips-*-riscos*) fmt=ecoff ;;
260 mips-*-sysv*) fmt=ecoff ;;
261 mips-*-elf* | mips-*-rtems* | mips-*-linux-gnu* | mips-*-gnu* | mips-*-openbsd*)
263 mips-*-vxworks*) fmt=elf
264 AC_DEFINE(MIPS_STABS_ELF, 1,
265 [Use ELF stabs for MIPS, not ECOFF stabs])
267 mn10200-*-*) fmt=elf bfd_gas=yes ;;
268 mn10300-*-*) fmt=elf bfd_gas=yes ;;
269 ppc-*-pe | ppc-*-cygwin* | ppc-*-winnt*)
271 ppc-*-aix*) fmt=coff ;;
272 ppc-*-beos*) fmt=coff ;;
273 ppc-*-*bsd* | ppc-*-elf* | ppc-*-eabi* | ppc-*-sysv4*)
275 ppc-*-linux-gnu*) fmt=elf
278 *) AC_MSG_ERROR(GNU/Linux must be configured big endian) ;;
281 ppc-*-solaris*) fmt=elf
282 if test ${this_target} = $target; then
283 AC_DEFINE(TARGET_SOLARIS_COMMENT, 1,
284 [Define if default target is PowerPC Solaris.])
286 if test x${endian} = xbig; then
287 AC_MSG_ERROR(Solaris must be configured little endian)
290 ppc-*-rtems*) fmt=elf ;;
291 ppc-*-macos* | ppc-*-mpw*)
293 ppc-*-netware*) fmt=elf em=ppcnw ;;
294 ppc-*-vxworks*) fmt=elf ;;
296 sh-*-elf*) fmt=elf ;;
297 sh-*-coff*) fmt=coff ;;
298 sh-*-rtemself*) fmt=elf ;;
299 sh-*-rtems*) fmt=coff ;;
301 ns32k-pc532-mach* | ns32k-pc532-ux*) fmt=aout em=pc532mach ;;
302 ns32k-pc532-netbsd* | ns32k-pc532-lites*) fmt=aout em=nbsd532 ;;
303 ns32k-pc532-openbsd*) fmt=aout em=nbsd532 ;;
305 sparc-*-rtems*) fmt=aout ;;
306 sparc-*-sunos4*) fmt=aout em=sun3 ;;
307 sparc-*-aout | sparc*-*-vxworks*)
308 fmt=aout em=sparcaout ;;
309 sparc-*-coff) fmt=coff ;;
310 sparc-*-linux*aout*) fmt=aout em=linux ;;
311 sparc-*-linux-gnu*) fmt=elf em=linux ;;
312 sparc-*-lynxos*) fmt=coff em=lynx ;;
313 sparc-fujitsu-none) fmt=aout ;;
314 sparc-*-elf | sparc-*-sysv4* | sparc-*-solaris*)
316 sparc-*-netbsd*) fmt=aout em=nbsd ;;
317 sparc-*-openbsd*) fmt=aout em=nbsd ;;
319 strongarm-*-coff) fmt=coff ;;
320 strongarm-*-elf) fmt=elf ;;
322 tic30-*-*aout*) fmt=aout bfd_gas=yes ;;
323 tic30-*-*coff*) fmt=coff bfd_gas=yes ;;
324 tic80-*-*) fmt=coff ;;
326 v850-*-*) fmt=elf bfd_gas=yes ;;
327 v850e-*-*) fmt=elf bfd_gas=yes ;;
328 v850ea-*-*) fmt=elf bfd_gas=yes ;;
330 vax-*-bsd* | vax-*-ultrix*)
332 vax-*-vms) fmt=vms ;;
335 z8k-*-coff | z8k-*-sim)
340 *-*-aout | *-*-scout)
346 *-*-generic) fmt=generic ;;
347 *-*-xray | *-*-hms) fmt=coff ;;
349 *-*-elf | *-*-sysv4* | *-*-solaris*)
350 AC_MSG_WARN(GAS support for ${generic_target} is incomplete.)
352 *-*-vxworks) fmt=aout ;;
353 *-*-netware) fmt=elf ;;
356 if test ${this_target} = $target ; then
358 if test x${endian} = xbig; then
360 elif test x${endian} = xlittle; then
363 if test x${endian_def} != x; then
364 AC_DEFINE_UNQUOTED(TARGET_BYTES_BIG_ENDIAN, $endian_def,
365 [Define as 1 if big endian.])
369 case ${cpu_type}-${fmt} in
370 alpha*-*) bfd_gas=yes ;;
371 arm-*) bfd_gas=yes ;;
373 # i386-aout) bfd_gas=preferred ;;
374 mips-*) bfd_gas=yes ;;
375 ns32k-*) bfd_gas=yes ;;
376 ppc-*) bfd_gas=yes ;;
377 sparc-*) bfd_gas=yes ;;
378 strongarm-*) bfd_gas=yes ;;
379 *-elf) bfd_gas=yes ;;
380 *-ecoff) bfd_gas=yes ;;
381 *-som) bfd_gas=yes ;;
385 # Other random stuff.
387 # Do we need the opcodes library?
395 case "${enable_shared}" in
396 yes) shared_opcodes=true ;;
397 *opcodes*) shared_opcodes=true ;;
398 *) shared_opcodes=false ;;
400 if test "${shared_opcodes}" = "true"; then
401 # A shared libopcodes must be linked against libbfd.
407 # Any other special object files needed ?
414 case ${extra_objects} in
416 *) extra_objects="$extra_objects m68k-parse.o" ;;
421 echo ${extra_objects} | grep -s "itbl-parse.o"
422 if test $? -ne 0 ; then
423 extra_objects="$extra_objects itbl-parse.o"
426 echo ${extra_objects} | grep -s "itbl-lex.o"
427 if test $? -ne 0 ; then
428 extra_objects="$extra_objects itbl-lex.o"
431 echo ${extra_objects} | grep -s "itbl-ops.o"
432 if test $? -ne 0 ; then
433 extra_objects="$extra_objects itbl-ops.o"
438 if test $this_target = $target ; then
439 AC_DEFINE_UNQUOTED(DEFAULT_ARCH, "${arch}", [Default architecture.])
446 if test $using_cgen = yes ; then
447 case "x${extra_objects}" in
449 *) extra_objects="$extra_objects cgen.o" ;;
453 # See if we really can support this configuration with the emulation code.
455 if test $this_target = $target ; then
456 primary_bfd_gas=$bfd_gas
460 if test $bfd_gas = no ; then
461 # Can't support other configurations this way.
464 elif test $bfd_gas = no ; then
465 # Can't support this configuration.
469 # From target name and format, produce a list of supported emulations.
471 case ${generic_target}-${fmt} in
472 mips-*-irix5*-*) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
473 mips-*-linux-gnu*-*) case "$endian" in
474 big) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
475 *) emulation="mipslelf mipsbelf mipself mipslecoff mipsbecoff mipsecoff" ;;
477 mips-*-lnews*-ecoff) ;;
478 mips-*-*-ecoff) case "$endian" in
479 big) emulation="mipsbecoff mipslecoff mipsecoff" ;;
480 *) emulation="mipslecoff mipsbecoff mipsecoff" ;;
482 mips-*-*-elf) case "$endian" in
483 big) emulation="mipsbelf mipslelf mipself" ;;
484 *) emulation="mipslelf mipsbelf mipself" ;;
485 # Uncommenting the next line will turn on support for i386 COFF
486 # in any i386 ELF configuration. This probably doesn't work
488 # i386-*-*-elf) emulation="i386coff i386elf" ;;
492 emulations="$emulations $emulation"
496 # Assign floating point type. Most processors with FP support
497 # IEEE FP. On those that don't support FP at all, usually IEEE
499 case ${target_cpu} in
500 vax | tahoe ) atof=${target_cpu} ;;
504 case "${obj_format}" in
505 "") AC_MSG_ERROR(GAS does not know what format to use for target ${target}) ;;
508 # Unfortunately the cpu in cpu-opc.h file isn't always $(TARGET_CPU).
510 if test $using_cgen = yes ; then
511 case ${target_cpu} in
512 *) cgen_cpu_prefix=${target_cpu} ;;
514 AC_SUBST(cgen_cpu_prefix)
515 AC_DEFINE(USING_CGEN, 1, [Using cgen code?])
519 dnl Make sure the desired support files exist.
522 if test ! -r ${srcdir}/config/tc-${target_cpu_type}.c; then
523 AC_MSG_ERROR(GAS does not support target CPU ${target_cpu_type})
526 if test ! -r ${srcdir}/config/obj-${obj_format}.c; then
527 AC_MSG_ERROR(GAS does not have support for object file format ${obj_format})
530 case ${user_bfd_gas}-${primary_bfd_gas} in
532 # We didn't override user's choice.
535 AC_MSG_WARN(Use of BFD is required for ${target}; overriding config options.)
547 # User specified nothing.
551 # Some COFF configurations want these random other flags set.
552 case ${obj_format} in
554 case ${target_cpu_type} in
555 i386) AC_DEFINE(I386COFF, 1, [Using i386 COFF?]) ;;
556 m68k) AC_DEFINE(M68KCOFF, 1, [Using m68k COFF?]) ;;
557 m88k) AC_DEFINE(M88KCOFF, 1, [Using m88k COFF?]) ;;
562 # Getting this done right is going to be a bitch. Each configuration specified
563 # with --enable-targets=... should be checked for environment, format, cpu, and
566 # For each configuration, the necessary object file support code must be linked
567 # in. This might be only one, it might be up to four. The necessary emulation
568 # code needs to be provided, too.
570 # And then there's "--enable-targets=all"....
572 # For now, just always do it for MIPS ELF or ECOFF configurations. Sigh.
574 formats="${obj_format}"
578 for em in . $emulations ; do
582 fmt=elf file=mipself ;;
583 mipsbecoff | mipslecoff)
584 fmt=ecoff file=mipsecoff ;;
586 fmt=coff file=i386coff ;;
588 fmt=elf file=i386elf ;;
590 formats="$formats $fmt"
591 emfiles="$emfiles e-$file.o"
592 EMULATIONS="$EMULATIONS &$em,"
596 if test `set . $formats ; shift ; echo $#` -gt 1 ; then
597 for fmt in $formats ; do
599 aout) AC_DEFINE(OBJ_MAYBE_AOUT, 1, [a.out support?]) ;;
600 bout) AC_DEFINE(OBJ_MAYBE_BOUT, 1, [b.out support?]) ;;
601 coff) AC_DEFINE(OBJ_MAYBE_COFF, 1, [COFF support?]) ;;
602 ecoff) AC_DEFINE(OBJ_MAYBE_ECOFF, 1, [ECOFF support?]) ;;
603 elf) AC_DEFINE(OBJ_MAYBE_ELF, 1, [ELF support?]) ;;
604 generic) AC_DEFINE(OBJ_MAYBE_GENERIC, 1, [generic support?]) ;;
605 hp300) AC_DEFINE(OBJ_MAYBE_HP300, 1, [HP300 support?]) ;;
606 ieee) AC_DEFINE(OBJ_MAYBE_IEEE, 1, [IEEE support?]) ;;
607 som) AC_DEFINE(OBJ_MAYBE_SOM, 1, [SOM support?]) ;;
608 vms) AC_DEFINE(OBJ_MAYBE_VMS, 1, [VMS support?]) ;;
610 extra_objects="$extra_objects obj-$fmt.o"
614 if test `set . $emfiles ; shift ; echo $#` -gt 0 ; then
616 extra_objects="$extra_objects $emfiles"
617 DEFAULT_EMULATION=`set . $emulations ; echo $2`
618 AC_DEFINE(USE_EMULATIONS, 1, [Use emulation support?])
620 AC_SUBST(extra_objects)
621 AC_DEFINE_UNQUOTED(EMULATIONS, $EMULATIONS, [Supported emulations.])
622 AC_DEFINE_UNQUOTED(DEFAULT_EMULATION, "$DEFAULT_EMULATION",
623 [Default emulation.])
625 case ${primary_bfd_gas}-${target_cpu_type}-${obj_format} in
626 yes-*-coff) need_bfd=yes ;;
627 no-*-coff) need_bfd=yes
628 AC_DEFINE(MANY_SEGMENTS, 1, [old COFF support?]) ;;
631 reject_dev_configs=yes
633 case ${reject_dev_configs}-${dev} in
635 AC_MSG_ERROR(GAS does not support the ${generic_target} configuration.)
639 AC_SUBST(target_cpu_type)
642 AC_SUBST(install_tooldir)
644 dnl AC_SUBST(emulation)
646 case "${primary_bfd_gas}" in
647 yes) AC_DEFINE(BFD_ASSEMBLER, 1, [Use BFD interface?])
651 # do we need the opcodes library?
652 case "${need_opcodes}" in
654 OPCODES_LIB=../opcodes/libopcodes.la
658 case "${need_bfd}" in
660 BFDLIB=../bfd/libbfd.la
661 ALL_OBJ_DEPS="$ALL_OBJ_DEPS ../bfd/bfd.h"
666 AC_SUBST(OPCODES_LIB)
668 AC_SUBST(ALL_OBJ_DEPS)
670 AC_DEFINE_UNQUOTED(TARGET_ALIAS, "${target_alias}", [Target alias.])
671 AC_DEFINE_UNQUOTED(TARGET_CANONICAL, "${target}", [Canonical target.])
672 AC_DEFINE_UNQUOTED(TARGET_CPU, "${target_cpu}", [Target CPU.])
673 AC_DEFINE_UNQUOTED(TARGET_VENDOR, "${target_vendor}", [Target vendor.])
674 AC_DEFINE_UNQUOTED(TARGET_OS, "${target_os}", [Target OS.])
687 AC_CHECK_HEADERS(string.h stdlib.h memory.h strings.h unistd.h stdarg.h varargs.h errno.h sys/types.h)
689 # Put this here so that autoconf's "cross-compiling" message doesn't confuse
690 # people who are not cross-compiling but are compiling cross-assemblers.
691 AC_MSG_CHECKING(whether compiling a cross-assembler)
692 if test "${host}" = "${target}"; then
696 AC_DEFINE(CROSS_COMPILE, 1, [Compiling cross-assembler?])
698 AC_MSG_RESULT($cross_gas)
700 dnl ansidecl.h will deal with const
705 # VMS doesn't have unlink.
706 AC_CHECK_FUNCS(unlink remove, break)
708 # Some systems don't have sbrk().
711 # Some non-ANSI preprocessors botch requoting inside strings. That's bad
712 # enough, but on some of those systems, the assert macro relies on requoting
716 # On some systems, the system header files may not declare malloc, realloc,
717 # and free. There are places where gas needs these functions to have been
718 # declared -- such as when taking their addresses.
726 #ifdef HAVE_STRINGS_H
737 GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers)
738 GAS_CHECK_DECL_NEEDED(malloc, f, char *(*f)(), $gas_test_headers)
739 GAS_CHECK_DECL_NEEDED(free, f, void (*f)(), $gas_test_headers)
740 GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers)
741 GAS_CHECK_DECL_NEEDED(environ, f, char **f, $gas_test_headers)
743 # Does errno.h declare errno, or do we have to add a separate declaration
745 GAS_CHECK_DECL_NEEDED(errno, f, int f, [
751 dnl This must come last.
753 dnl We used to make symlinks to files in the source directory, but now
754 dnl we just use the right name for .c files, and create .h files in
755 dnl the build directory which include the right .h file. Make sure
756 dnl the old symlinks don't exist, so that a reconfigure in an existing
757 dnl directory behaves reasonably.
759 AC_OUTPUT(Makefile doc/Makefile .gdbinit:gdbinit.in po/Makefile.in:po/Make-in,
760 [rm -f targ-cpu.c targ-cpu.h obj-format.h obj-format.c targ-env.h atof-targ.c itbl-cpu.h
761 echo '#include "tc-'"${target_cpu_type}"'.h"' > targ-cpu.h
762 echo '#include "obj-'"${obj_format}"'.h"' > obj-format.h
763 echo '#include "te-'"${te_file}"'.h"' > targ-env.h
764 echo '#include "itbl-'"${target_cpu_type}"'.h"' > itbl-cpu.h
765 if test "x$cgen_cpu_prefix" != x ; then
766 echo '#include "opcodes/'"${cgen_cpu_prefix}"'-desc.h"' > cgen-desc.h
769 sed -e '/POTFILES =/r po/POTFILES' po/Makefile.in > po/Makefile],
770 [target_cpu_type=${target_cpu_type}
771 cgen_cpu_prefix=${cgen_cpu_prefix}
772 obj_format=${obj_format}