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