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 AC_PREREQ(2.5)dnl v2.5 needed for --bindir et al
11 AC_ARG_ENABLE(bfd-assembler,
12 [ --enable-bfd-assembler use BFD back end for writing object files],
13 [case "${enableval}" in
14 yes) need_bfd=yes user_bfd_gas=yes ;;
15 no) user_bfd_gas=no ;;
16 *) AC_MSG_ERROR(bad value ${enableval} given for bfd-assembler option) ;;
18 AC_ARG_ENABLE(targets,
19 [ targets alternative target configurations besides the primary],
20 [case "${enableval}" in
21 yes | "") AC_ERROR(enable-targets option must specify target names or 'all')
23 no) enable_targets= ;;
24 *) enable_targets=$enableval ;;
27 [ --enable-shared build shared BFD library],
28 [case "${enableval}" in
29 yes) shared=true shared_bfd=true shared_opcodes=true ;;
31 *bfd*opcodes*) shared=true shared_bfd=true shared_opcodes=true ;;
32 *opcodes*bfd*) shared=true shared_bfd=true shared_opcodes=true ;;
33 *bfd*) shared=true shared_bfd=true ;;
34 *opcodes*) shared=true shared_opcodes=true ;;
37 AC_ARG_ENABLE(commonbfdlib,
38 [ --enable-commonbfdlib build shared BFD/opcodes/libiberty library],
39 [case "${enableval}" in
40 yes) commonbfdlib=true ;;
41 no) commonbfdlib=false ;;
42 *) AC_MSG_ERROR([bad value ${enableval} for BFD commonbfdlib option]) ;;
45 # Generate a header file -- gets more post-processing by Makefile later.
46 AC_CONFIG_HEADER(conf)
48 dnl For recursion to work right, this must be an absolute pathname.
49 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
56 if test -n "$enable_targets" ; then
57 for t in `echo $enable_targets | sed 's/,/ /g'`; do
58 result=`$ac_config_sub $t 2>/dev/null`
59 if test -n "$result" ; then
60 canon_targets="$canon_targets $result"
62 # # Permit "all", etc. We don't support it yet though.
63 # canon_targets="$canon_targets $t"
66 GAS_UNIQ(canon_targets)
71 for this_target in $target $canon_targets ; do
74 eval `echo $this_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/cpu=\1 vendor=\2 os=\3/'`
77 # check for architecture variants
79 armeb) cpu_type=arm endian=big ;;
80 arm*) cpu_type=arm endian=little ;;
81 hppa*) cpu_type=hppa ;;
83 i[456]86) cpu_type=i386 ;;
84 m680[012346]0) cpu_type=m68k ;;
85 m68008) cpu_type=m68k ;;
86 m683??) cpu_type=m68k ;;
89 mips*el) cpu_type=mips endian=little ;;
90 mips*) cpu_type=mips endian=big ;;
91 powerpcle*) cpu_type=ppc endian=little ;;
92 powerpc*) cpu_type=ppc endian=big ;;
93 rs6000*) cpu_type=ppc ;;
94 sparc64) cpu_type=sparc want_sparc_v9=true ;;
95 sparc*) cpu_type=sparc ;;
99 if test ${this_target} = $target ; then
100 target_cpu_type=${cpu_type}
101 elif test ${target_cpu_type} != ${cpu_type} ; then
106 generic_target=${cpu_type}-$vendor-$os
111 # assign object format
112 case ${generic_target} in
113 a29k-*-coff) fmt=coff targ=ebmon29k ;;
114 a29k-amd-udi) fmt=coff targ=ebmon29k ;;
115 a29k-amd-ebmon) fmt=coff targ=ebmon29k ;;
116 a29k-nyu-sym1) fmt=coff targ=ebmon29k ;;
117 a29k-*-vxworks*) fmt=coff ;;
119 alpha-*-*vms*) fmt=evax ;;
120 alpha-*-netware*) fmt=ecoff ;;
121 alpha-*-osf*) fmt=ecoff ;;
122 alpha-*-linuxecoff*) fmt=ecoff ;;
123 alpha-*-linux*) fmt=elf em=linux ;;
126 arc-*-elf*) fmt=elf bfd_gas=yes ;;
129 arm-*-riscix*) fmt=aout targ=arm-lit em=riscix ;;
136 arm-*-coff) fmt=coff ;;
137 arm-*-riscix*) fmt=aout ;;
138 arm-*-pe) fmt=coff targ=armcoff em=pe ;;
140 d10v-*-*) fmt=elf bfd_gas=yes ;;
141 # start-sanitize-d30v
142 d30v-*-*) fmt=elf bfd_gas=yes ;;
145 hppa-*-*elf*) fmt=elf em=hppa ;;
146 hppa-*-lites*) fmt=elf em=hppa ;;
147 hppa-*-osf*) fmt=som em=hppa ;;
148 hppa-*-rtems*) fmt=elf em=hppa ;;
149 hppa-*-hpux*) fmt=som em=hppa ;;
150 hppa-*-bsd*) fmt=som em=hppa ;;
151 hppa-*-hiux*) fmt=som em=hppa ;;
153 h8300-*-coff) fmt=coff ;;
155 i386-ibm-aix*) fmt=coff targ=i386coff
157 i386-sequent-bsd*) fmt=aout em=dynix bfd_gas=yes ;;
158 i386-*-bsd*) fmt=aout em=386bsd ;;
159 i386-*-netbsd0.8) fmt=aout em=386bsd ;;
160 i386-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes;;
161 i386-*-linux*aout* | i386-*-linuxoldld) fmt=aout em=linux ;;
162 i386-*-linux*coff*) fmt=coff em=linux
164 i386-*-linux*) fmt=elf em=linux ;;
165 i386-*-lynxos*) fmt=coff targ=i386coff
167 i386-*-sysv4* | i386-*-solaris* | i386-*-elf | i386-*-freebsdelf*)
169 i386-*-sco*elf*) fmt=elf targ=sco5 ;;
170 i386-*-coff | i386-*-sysv* | i386-*-sco* | i386-*-isc*)
171 fmt=coff targ=i386coff ;;
172 i386-*-vsta) fmt=aout ;;
173 i386-*-go32) fmt=coff targ=i386coff ;;
174 i386-*-rtems*) fmt=coff targ=i386coff ;;
175 i386-*-gnu*) fmt=elf ;;
177 fmt=aout em=mach bfd_gas=yes ;;
178 i386-*-msdos*) fmt=aout ;;
179 i386-*-moss*) fmt=elf ;;
180 i386-*-pe) fmt=coff targ=i386coff em=pe ;;
181 i386-*-cygwin32) fmt=coff targ=i386coff em=pe ;;
182 i386-*-*nt) fmt=coff targ=i386coff em=pe ;;
183 i960-*-bout) fmt=bout ;;
184 i960-*-coff) fmt=coff em=ic960 targ=ic960coff ;;
185 i960-*-rtems*) fmt=coff em=ic960 targ=ic960coff ;;
186 i960-*-nindy*) fmt=bout ;;
187 i960-*-vxworks4*) fmt=bout ;;
188 i960-*-vxworks5.0) fmt=bout ;;
189 i960-*-vxworks5.*) fmt=coff em=ic960 targ=ic960coff ;;
190 i960-*-vxworks*) fmt=bout ;;
192 m32r-*-*) fmt=elf bfd_gas=yes ;;
194 m68k-*-vxworks* | m68k-ericsson-ose | m68k-*-sunos*)
196 m68k-motorola-sysv*) fmt=coff targ=m68kcoff em=delta ;;
197 m68k-bull-sysv3*) fmt=coff targ=m68kcoff em=dpx2 ;;
198 m68k-apollo-*) fmt=coff targ=apollo em=apollo ;;
199 m68k-*-sysv4*) # must be before -sysv*
201 m68k-*-elf*) fmt=elf ;;
202 m68k-*-coff | m68k-*-sysv* | m68k-*-rtems*)
203 fmt=coff targ=m68kcoff ;;
204 m68k-*-hpux*) fmt=hp300 em=hp300 ;;
205 m68k-*-linux*aout*) fmt=aout em=linux ;;
206 m68k-*-linux*) fmt=elf em=linux ;;
207 m68k-*-lynxos*) fmt=coff targ=m68kcoff
209 m68k-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;;
210 m68k-apple-aux*) fmt=coff targ=m68kcoff em=aux ;;
211 m68k-*-psos*) fmt=elf em=psos;;
213 m88k-motorola-sysv3*) fmt=coff targ=m88kcoff em=delt88 ;;
214 m88k-*-coff*) fmt=coff targ=m88kcoff ;;
216 # don't change em like *-*-bsd does
217 mips-dec-netbsd*) fmt=elf targ=mips-lit endian=little ;;
218 mips-dec-bsd*) fmt=aout targ=mips-lit ;;
219 mips-sony-bsd*) fmt=ecoff targ=mips-big ;;
220 mips-*-bsd*) AC_MSG_ERROR(Unknown vendor for mips-bsd configuration.) ;;
221 mips-*-ultrix*) fmt=ecoff targ=mips-lit endian=little ;;
222 mips-*-osf*) fmt=ecoff targ=mips-lit endian=little ;;
223 mips-*-ecoff*) fmt=ecoff
225 big) targ=mips-big ;;
229 mips-*-ecoff*) fmt=ecoff targ=mips-big ;;
230 mips-*-irix6*) fmt=elf targ=mips-big ;;
231 mips-*-irix5*) fmt=elf targ=mips-big ;;
232 mips-*-irix*) fmt=ecoff targ=mips-big ;;
233 mips-*-lnews*) fmt=ecoff targ=mips-lit em=lnews ;;
234 mips-*-riscos*) fmt=ecoff targ=mips-big ;;
235 mips-*-sysv*) fmt=ecoff targ=mips-big ;;
236 mips-*-elf* | mips-*-rtems* | mips-*-linux* | mips-*-gnu*)
239 big) targ=mips-big ;;
243 mn10200-*-*) fmt=elf bfd_gas=yes ;;
244 mn10300-*-*) fmt=elf bfd_gas=yes ;;
245 ppc-*-pe | ppc-*-cygwin32 | ppc-*-winnt*)
252 ppc-*-aix*) fmt=coff ;;
253 ppc-*-beos*) fmt=coff ;;
254 ppc-*-elf* | ppc-*-eabi* | ppc-*-sysv4*)
261 ppc-*-linux*) fmt=elf
264 *) AC_MSG_ERROR(Linux must be configured big endian) ;;
267 ppc-*-solaris*) fmt=elf
269 big) AC_MSG_ERROR(Solaris must be configured little endian) ;;
280 ppc-*-macos* | ppc-*-mpw*)
282 ppc-*-netware*) fmt=elf em=ppcnw ;;
284 sh-*-elf*) fmt=elf ;;
285 sh-*-coff*) fmt=coff ;;
287 ns32k-pc532-mach* | ns32k-pc532-ux*) fmt=aout em=pc532mach ;;
288 ns32k-pc532-netbsd* | ns32k-pc532-lites*) fmt=aout em=nbsd532 ;;
290 sparc-*-rtems*) fmt=aout ;;
291 sparc-*-sunos4*) fmt=aout em=sun3 ;;
292 sparc-*-aout | sparc*-*-vxworks*)
293 fmt=aout em=sparcaout ;;
294 sparc-*-coff) fmt=coff ;;
295 sparc-*-linux*aout*) fmt=aout em=linux ;;
296 sparc-*-linux*) fmt=elf em=linux ;;
297 sparc-*-lynxos*) fmt=coff em=lynx ;;
298 sparc-fujitsu-none) fmt=aout ;;
299 sparc-*-elf | sparc-*-sysv4* | sparc-*-solaris*)
301 sparc-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;;
303 # start-sanitize-tic80
304 tic80-*-*) fmt=coff targ=tic80coff;;
306 v850-*-*) fmt=elf bfd_gas=yes ;;
308 vax-*-bsd* | vax-*-ultrix*)
310 vax-*-vms) fmt=vms ;;
312 z8k-*-coff | z8k-*-sim)
317 *-*-aout | *-*-scout)
323 *-*-generic) fmt=generic ;;
324 *-*-xray | *-*-hms) fmt=coff ;;
326 *-*-elf | *-*-sysv4* | *-*-solaris*)
327 AC_MSG_WARN(GAS support for ${generic_target} is incomplete.)
329 *-*-vxworks) fmt=aout ;;
330 *-*-netware) fmt=elf ;;
333 case ${cpu_type}-${fmt} in
334 alpha-*) bfd_gas=yes ;;
335 arm-*) bfd_gas=yes ;;
337 # i386-aout) bfd_gas=preferred ;;
338 mips-*) bfd_gas=yes ;;
339 ns32k-*) bfd_gas=yes ;;
340 ppc-*) bfd_gas=yes ;;
341 sparc-*) bfd_gas=yes ;;
342 *-elf) bfd_gas=yes ;;
343 *-ecoff) bfd_gas=yes ;;
344 *-som) bfd_gas=yes ;;
348 # Other random stuff.
350 # do we need the opcodes library?
356 if test "${shared_opcodes}" = "true"; then
357 # A shared libopcodes must be linked against libbfd.
363 test -n "$want_sparc_v9" && AC_DEFINE(SPARC_V9)
365 case ${cpu}-${vendor}-${os} in
366 sparc64-*-elf*) AC_DEFINE(SPARC_ARCH64) ;;
371 case ${extra_objects} in
373 *) extra_objects="$extra_objects cgen.o"
374 AC_DEFINE(USING_CGEN)
380 case ${extra_objects} in
382 *) extra_objects="$extra_objects m68k-parse.o" ;;
387 echo ${extra_objects} | grep -s "itbl-parse.o"
388 if test $? -ne 0 ; then
389 extra_objects="$extra_objects itbl-parse.o"
392 echo ${extra_objects} | grep -s "itbl-lex.o"
393 if test $? -ne 0 ; then
394 extra_objects="$extra_objects itbl-lex.o"
397 echo ${extra_objects} | grep -s "itbl-ops.o"
398 if test $? -ne 0 ; then
399 extra_objects="$extra_objects itbl-ops.o"
407 # See if we really can support this configuration with the emulation code.
409 if test $this_target = $target ; then
410 primary_bfd_gas=$bfd_gas
415 if test $bfd_gas = no ; then
416 # Can't support other configurations this way.
419 elif test $bfd_gas = no ; then
420 # Can't support this configuration.
424 # From target name and format, produce a list of supported emulations.
426 case ${generic_target}-${fmt} in
427 mips-*-irix5*-*) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
428 mips-*-linux*-*) case "$endian" in
429 big) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
430 *) emulation="mipslelf mipsbelf mipself mipslecoff mipsbecoff mipsecoff" ;;
432 mips-*-lnews*-ecoff) ;;
433 mips-*-*-ecoff) case "$endian" in
434 big) emulation="mipsbecoff mipslecoff mipsecoff" ;;
435 *) emulation="mipslecoff mipsbecoff mipsecoff" ;;
437 mips-*-*-elf) case "$endian" in
438 big) emulation="mipsbelf mipslelf mipself" ;;
439 *) emulation="mipslelf mipsbelf mipself" ;;
440 # Uncommenting the next line will turn on support for i386 COFF
441 # in any i386 ELF configuration. This probably doesn't work
443 # i386-*-*-elf) emulation="i386coff i386elf" ;;
447 emulations="$emulations $emulation"
451 # Assign floating point type. Most processors with FP support
452 # IEEE FP. On those that don't support FP at all, usually IEEE
454 case ${target_cpu} in
455 vax | tahoe ) atof=${target_cpu} ;;
459 case "${obj_format}" in
460 "") AC_MSG_ERROR(GAS does not know what format to use for target ${target}) ;;
464 dnl Make sure the desired support files exist.
467 if test ! -r ${srcdir}/config/tc-${target_cpu_type}.c; then
468 AC_MSG_ERROR(GAS does not support target CPU ${target_cpu_type})
471 if test ! -r ${srcdir}/config/obj-${obj_format}.c; then
472 AC_MSG_ERROR(GAS does not have support for object file format ${obj_format})
475 # and target makefile frag
477 target_frag=${srcdir}/config/${gas_target}.mt
478 if test ! -r ${target_frag}; then
479 target_frag=/dev/null # ick! but subst_file can't be conditionalized
481 AC_SUBST_FILE(target_frag)
483 case ${user_bfd_gas}-${primary_bfd_gas} in
485 # We didn't override user's choice.
488 AC_MSG_WARN(Use of BFD is required for ${target}; overriding config options.)
500 # User specified nothing.
504 # Some COFF configurations want these random other flags set.
505 case ${obj_format} in
507 case ${target_cpu_type} in
508 i386) AC_DEFINE(I386COFF) ;;
509 m68k) AC_DEFINE(M68KCOFF) ;;
510 m88k) AC_DEFINE(M88KCOFF) ;;
515 # Getting this done right is going to be a bitch. Each configuration specified
516 # with --enable-targets=... should be checked for environment, format, cpu, and
519 # For each configuration, the necessary object file support code must be linked
520 # in. This might be only one, it might be up to four. The necessary emulation
521 # code needs to be provided, too.
523 # And then there's "--enable-targets=all"....
525 # For now, just always do it for MIPS ELF or ECOFF configurations. Sigh.
527 formats="${obj_format}"
531 for em in . $emulations ; do
535 fmt=elf file=mipself ;;
536 mipsbecoff | mipslecoff)
537 fmt=ecoff file=mipsecoff ;;
539 fmt=coff file=i386coff ;;
541 fmt=elf file=i386elf ;;
543 formats="$formats $fmt"
544 emfiles="$emfiles e-$file.o"
545 EMULATIONS="$EMULATIONS &$em,"
549 if test `set . $formats ; shift ; echo $#` -gt 1 ; then
550 for fmt in $formats ; do
552 aout) AC_DEFINE(OBJ_MAYBE_AOUT) ;;
553 bout) AC_DEFINE(OBJ_MAYBE_BOUT) ;;
554 coff) AC_DEFINE(OBJ_MAYBE_COFF) ;;
555 ecoff) AC_DEFINE(OBJ_MAYBE_ECOFF) ;;
556 elf) AC_DEFINE(OBJ_MAYBE_ELF) ;;
557 generic) AC_DEFINE(OBJ_MAYBE_GENERIC) ;;
558 hp300) AC_DEFINE(OBJ_MAYBE_HP300) ;;
559 ieee) AC_DEFINE(OBJ_MAYBE_IEEE) ;;
560 som) AC_DEFINE(OBJ_MAYBE_SOM) ;;
561 vms) AC_DEFINE(OBJ_MAYBE_VMS) ;;
563 extra_objects="$extra_objects obj-$fmt.o"
567 if test `set . $emfiles ; shift ; echo $#` -gt 0 ; then
569 extra_objects="$extra_objects $emfiles"
570 DEFAULT_EMULATION=`set . $emulations ; echo $2`
571 AC_DEFINE(USE_EMULATIONS)
573 AC_SUBST(extra_objects)
574 AC_DEFINE_UNQUOTED(EMULATIONS, $EMULATIONS)
575 AC_DEFINE_UNQUOTED(DEFAULT_EMULATION, "$DEFAULT_EMULATION")
577 case ${primary_bfd_gas}-${target_cpu_type}-${obj_format} in
578 yes-*-coff) need_bfd=yes ;;
579 no-*-coff) need_bfd=yes
580 AC_DEFINE(MANY_SEGMENTS) ;;
583 reject_dev_configs=yes
585 case ${reject_dev_configs}-${dev} in
587 AC_MSG_ERROR(GAS does not support the ${generic_target} configuration.)
591 AC_SUBST(target_cpu_type)
595 dnl AC_SUBST(emulation)
597 case "${primary_bfd_gas}" in
598 yes) AC_DEFINE(BFD_ASSEMBLER)
602 # do we need the opcodes library?
603 case "${need_opcodes}" in
605 OPCODES_DEP=../opcodes/libopcodes.a
606 OPCODES_LIB='-L../opcodes -lopcodes'
608 # We need to handle some special cases for shared libraries.
611 # On SunOS, we must link against the name we are going to install,
612 # not -lbfd, since SunOS does not support SONAME.
613 if test "${shared_opcodes}" = "true"; then
614 OPCODES_LIB='-L../opcodes -l`echo opcodes | sed '"'"'$(program_transform_name)'"'"'`'
618 # On Alpha OSF/1, the native linker searches all the -L
619 # directories for any LIB.so files, and only then searches for any
620 # LIB.a files. That means that if there is an installed
621 # libbfd.so, but this build is not done with --enable-shared, the
622 # link will wind up being against the install libbfd.so rather
623 # than the newly built libbfd. To avoid this, we must explicitly
624 # link against libbfd.a when --enable-shared is not used.
625 if test "${shared_opcodes}" != "true"; then
626 OPCODES_LIB='../opcodes/libopcodes.a'
633 case "${need_bfd}" in
635 BFDDEP=../bfd/libbfd.a
636 BFDLIB='-L../bfd -lbfd'
637 ALL_OBJ_DEPS="$ALL_OBJ_DEPS ../bfd/bfd.h"
639 # We need to handle some special cases for shared libraries
642 # On SunOS, we must link against the name we are going to install,
643 # not -lbfd, since SunOS does not support SONAME.
644 if test "${shared_bfd}" = "true"; then
645 BFDLIB='-L../bfd -l`echo bfd | sed '"'"'$(program_transform_name)'"'"'`'
649 # On Alpha OSF/1, the native linker searches all the -L
650 # directories for any LIB.so files, and only then searches for any
651 # LIB.a files. That means that if there is an installed
652 # libbfd.so, but this build is not done with --enable-shared, the
653 # link will wind up being against the install libbfd.so rather
654 # than the newly built libbfd. To avoid this, we must explicitly
655 # link against libbfd.a when --enable-shared is not used.
656 if test "${shared_bfd}" != "true"; then
657 BFDLIB='../bfd/libbfd.a'
662 if test "${commonbfdlib}" = "true"; then
663 # when a shared libbfd is built with --enable-commonbfdlib,
664 # all of libopcodes is available in libbfd.so
672 AC_SUBST(OPCODES_DEP)
673 AC_SUBST(OPCODES_LIB)
675 AC_SUBST(ALL_OBJ_DEPS)
677 AC_DEFINE_UNQUOTED(TARGET_ALIAS, "${target_alias}")
678 AC_DEFINE_UNQUOTED(TARGET_CANONICAL, "${target}")
679 AC_DEFINE_UNQUOTED(TARGET_CPU, "${target_cpu}")
680 AC_DEFINE_UNQUOTED(TARGET_VENDOR, "${target_vendor}")
681 AC_DEFINE_UNQUOTED(TARGET_OS, "${target_os}")
686 AC_CHECK_HEADERS(string.h stdlib.h memory.h strings.h unistd.h stdarg.h varargs.h errno.h sys/types.h)
688 # Put this here so that autoconf's "cross-compiling" message doesn't confuse
689 # people who are not cross-compiling but are compiling cross-assemblers.
690 AC_MSG_CHECKING(whether compiling a cross-assembler)
691 if test "${host}" = "${target}"; then
695 AC_DEFINE(CROSS_COMPILE)
697 AC_MSG_RESULT($cross_gas)
699 dnl ansidecl.h will deal with const
704 # VMS doesn't have unlink.
705 AC_CHECK_FUNCS(unlink remove, break)
707 # Some systems don't have sbrk().
710 # Some non-ANSI preprocessors botch requoting inside strings. That's bad
711 # enough, but on some of those systems, the assert macro relies on requoting
715 # On some systems, the system header files may not declare malloc, realloc,
716 # and free. There are places where gas needs these functions to have been
717 # declared -- such as when taking their addresses.
725 #ifdef HAVE_STRINGS_H
736 GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers)
737 GAS_CHECK_DECL_NEEDED(malloc, f, char *(*f)(), $gas_test_headers)
738 GAS_CHECK_DECL_NEEDED(free, f, void (*f)(), $gas_test_headers)
739 GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers)
741 # Does errno.h declare errno, or do we have to add a separate declaration
743 GAS_CHECK_DECL_NEEDED(errno, f, int f, [
751 RPATH_ENVVAR=LD_LIBRARY_PATH
752 # If we have shared libraries, try to set rpath reasonably.
753 if test "${shared}" = "true"; then
756 HLDFLAGS='-Wl,+s,+b,$(libdir)'
757 RPATH_ENVVAR=SHLIB_PATH
759 *-*-irix5* | *-*-irix6*)
760 HLDFLAGS='-Wl,-rpath,$(libdir)'
765 HLDFLAGS='-Wl,-rpath,$(libdir)'
768 HLDFLAGS='-R $(libdir)'
771 HLDENV='if test -z "$${LD_RUN_PATH}"; then LD_RUN_PATH=$(libdir); else LD_RUN_PATH=$${LD_RUN_PATH}:$(libdir); fi; export LD_RUN_PATH;'
776 # On SunOS, if the linker supports the -rpath option, use it to
777 # prevent ../bfd and ../opcodes from being included in the run time
781 echo 'main () { }' > conftest.c
782 ${CC} -o conftest -Wl,-rpath= conftest.c >/dev/null 2>conftest.t
783 if grep 'unrecognized' conftest.t >/dev/null 2>&1; then
785 elif grep 'No such file' conftest.t >/dev/null 2>&1; then
787 elif grep 'do not mix' conftest.t >/dev/null 2>&1; then
789 elif test "${shared}" = "true"; then
790 HLDFLAGS='-Wl,-rpath=$(libdir)'
792 HLDFLAGS='-Wl,-rpath='
794 rm -f conftest.t conftest.c conftest
799 AC_SUBST(RPATH_ENVVAR)
801 dnl This must come last.
803 dnl We used to make symlinks to files in the source directory, but now
804 dnl we just use the right name for .c files, and create .h files in
805 dnl the build directory which include the right .h file. Make sure
806 dnl the old symlinks don't exist, so that a reconfigure in an existing
807 dnl directory behaves reasonably.
809 AC_OUTPUT(Makefile doc/Makefile .gdbinit:gdbinit.in,
810 [rm -f targ-cpu.c targ-cpu.h obj-format.h obj-format.c targ-env.h atof-targ.c itbl-cpu.h
811 echo '#include "tc-'"${target_cpu_type}"'.h"' > targ-cpu.h
812 echo '#include "obj-'"${obj_format}"'.h"' > obj-format.h
813 echo '#include "te-'"${te_file}"'.h"' > targ-env.h
814 echo '#include "itbl-'"${target_cpu_type}"'.h"' > itbl-cpu.h
815 case ${target_cpu_type} in
816 m32r) echo '#include "opcodes/'"${target_cpu_type}"'-opc.h"' > cgen-opc.h ;;
818 [target_cpu_type=${target_cpu_type}
819 obj_format=${obj_format}