OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [binutils-2.20.1/] [gas/] [configure.in] - Blame information for rev 841

Go to most recent revision | Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.