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

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [gas/] [configure.in] - Blame information for rev 159

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

Line No. Rev Author Line
1 147 khays
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
ACX_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* | mips64*-freebsd* | mips64*-kfreebsd*-gnu)
254
            mips_default_abi=N32_ABI
255
            ;;
256
          mips*-linux* | mips*-freebsd* | mips*-kfreebsd*-gnu)
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 | openrisc)
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
      rx)
357
        echo ${extra_objects} | grep -s "rx-parse.o"
358
        if test $? -ne 0 ; then
359
          extra_objects="$extra_objects rx-parse.o"
360
        fi
361
        ;;
362
 
363
      xstormy16)
364
        using_cgen=yes
365
        ;;
366
 
367
      xc16x)
368
        using_cgen=yes
369
        ;;
370
 
371
      xtensa)
372
        echo ${extra_objects} | grep -s "xtensa-relax.o"
373
        if test $? -ne 0 ; then
374
          extra_objects="$extra_objects xtensa-relax.o"
375
        fi
376
        ;;
377
 
378
      *)
379
        ;;
380
    esac
381
 
382
    if test $using_cgen = yes ; then
383
        case "x${extra_objects}" in
384
        *cgen.o*) ;;
385
        *) extra_objects="$extra_objects cgen.o" ;;
386
        esac
387
    fi
388
 
389
# See if we really can support this configuration with the emulation code.
390
 
391
    if test $this_target = $target ; then
392
      obj_format=$fmt
393
      te_file=$em
394
    fi
395
 
396
   case ${te_file} in
397
      vms) extra_objects="$extra_objects te-vms.o" ;;
398
   esac
399
 
400
# From target name and format, produce a list of supported emulations.
401
 
402
    case ${generic_target}-${fmt} in
403
      mips-*-irix5*-*)  emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
404
      mips*-*-linux*-* | mips*-*-freebsd* | mips*-*-kfreebsd*-gnu)
405
                        case "$endian" in
406
                        big)    emulation="mipsbelf mipslelf mipself" ;;
407
                        *)      emulation="mipslelf mipsbelf mipself" ;;
408
                        esac ;;
409
      mips-*-lnews*-ecoff) ;;
410
      mips-*-*-ecoff)   case "$endian" in
411
                        big)    emulation="mipsbecoff mipslecoff mipsecoff" ;;
412
                        *)      emulation="mipslecoff mipsbecoff mipsecoff" ;;
413
                        esac ;;
414
      mips-*-*-elf)     case "$endian" in
415
                        big)    emulation="mipsbelf mipslelf mipself" ;;
416
                        *)      emulation="mipslelf mipsbelf mipself" ;;
417
                        esac ;;
418
      mips-*-sysv4*MP*-*) emulation="mipsbelf mipslelf mipself mipsbecoff mipslecoff mipsecoff" ;;
419
      # i386-pc-pe-coff != i386-pc-coff.
420
      i386-*-pe-coff)   ;;
421
      # Uncommenting the next line will turn on support for i386 AOUT
422
      # for the default linux configuration
423
      # i386-*-linux*-elf) emulation="i386elf i386aout" ;;
424
      #
425
      i386-*-aout)      emulation="i386aout" ;;
426
      i386-*-coff)      emulation="i386coff" ;;
427
      i386-*-elf)       emulation="i386elf" ;;
428
 
429
      # Always all formats.  The first stated emulation becomes the default.
430
      cris-*-*aout*)    emulation="crisaout criself" ;;
431
      cris-*-*)         emulation="criself crisaout" ;;
432
    esac
433
 
434
    emulations="$emulations $emulation"
435
 
436
done
437
 
438
# Turn on all targets if possible
439
if test ${all_targets} = "yes"; then
440
  case ${target_cpu_type} in
441
  i386)
442
    case ${obj_format} in
443
    aout)
444
      emulations="$emulations i386coff i386elf"
445
      ;;
446
    coff)
447
      emulations="$emulations i386aout i386elf"
448
    ;;
449
    elf)
450
      emulations="$emulations i386aout i386coff"
451
      ;;
452
    esac
453
  ;;
454
  x86_64)
455
    case ${obj_format} in
456
    aout)
457
      emulations="$emulations i386coff i386elf"
458
      ;;
459
    coff)
460
      emulations="$emulations i386aout i386elf"
461
    ;;
462
    elf)
463
      emulations="$emulations i386aout i386coff"
464
      ;;
465
    esac
466
  ;;
467
  esac
468
fi
469
 
470
# PE code has way too many macros tweaking behaviour
471
case ${te_file} in
472
  pe*) emulations="" ;;
473
esac
474
 
475
# Assign floating point type.  Most processors with FP support
476
# IEEE FP.  On those that don't support FP at all, usually IEEE
477
# is emulated.
478
case ${target_cpu} in
479
  vax | pdp11 ) atof=vax ;;
480
  *)            atof=ieee ;;
481
esac
482
 
483
case "${obj_format}" in
484
  "") AC_MSG_ERROR(GAS does not know what format to use for target ${target}) ;;
485
esac
486
 
487
# Unfortunately the cpu in cpu-opc.h file isn't always $(TARGET_CPU).
488
cgen_cpu_prefix=""
489
if test $using_cgen = yes ; then
490
  case ${target_cpu} in
491
    *) cgen_cpu_prefix=${target_cpu} ;;
492
  esac
493
  AC_SUBST(cgen_cpu_prefix)
494
  AC_DEFINE(USING_CGEN, 1, [Using cgen code?])
495
fi
496
 
497
dnl
498
dnl Make sure the desired support files exist.
499
dnl
500
 
501
if test ! -r ${srcdir}/config/tc-${target_cpu_type}.c; then
502
  AC_MSG_ERROR(GAS does not support target CPU ${target_cpu_type})
503
fi
504
 
505
if test ! -r ${srcdir}/config/obj-${obj_format}.c; then
506
  AC_MSG_ERROR(GAS does not have support for object file format ${obj_format})
507
fi
508
 
509
# Some COFF configurations want these random other flags set.
510
case ${obj_format} in
511
  coff)
512
    case ${target_cpu_type} in
513
      i386) AC_DEFINE(I386COFF, 1, [Using i386 COFF?]) ;;
514
      m68k) AC_DEFINE(M68KCOFF, 1, [Using m68k COFF?]) ;;
515
      m88k) AC_DEFINE(M88KCOFF, 1, [Using m88k COFF?]) ;;
516
      x86_64) AC_DEFINE(I386COFF, 1, [Using i386 COFF?]) ;;
517
    esac
518
    ;;
519
esac
520
 
521
# Getting this done right is going to be a bitch.  Each configuration specified
522
# with --enable-targets=... should be checked for environment, format, cpu
523
# setting.
524
#
525
# For each configuration, the necessary object file support code must be linked
526
# in.  This might be only one, it might be up to four.  The necessary emulation
527
# code needs to be provided, too.
528
#
529
# And then there's "--enable-targets=all"....
530
#
531
# For now, just always do it for MIPS ELF or ECOFF configurations.  Sigh.
532
 
533
formats="${obj_format}"
534
emfiles=""
535
EMULATIONS=""
536
GAS_UNIQ(emulations)
537
for em in . $emulations ; do
538
  case $em in
539
    .)  continue ;;
540
    mipsbelf | mipslelf | mipself)
541
        fmt=elf   file=mipself ;;
542
    mipsbecoff | mipslecoff | mipsecoff)
543
        fmt=ecoff file=mipsecoff ;;
544
    *coff)
545
        fmt=coff  file=$em ;;
546
    *aout)
547
        fmt=aout file=$em ;;
548
    *elf)
549
        fmt=elf file=$em ;;
550
  esac
551
  formats="$formats $fmt"
552
  emfiles="$emfiles e-$file.o"
553
  EMULATIONS="$EMULATIONS &$em,"
554
done
555
GAS_UNIQ(formats)
556
GAS_UNIQ(emfiles)
557
if test `set . $formats ; shift ; echo $#` -gt 1 ; then
558
  for fmt in $formats ; do
559
    case $fmt in
560
      aout)     AC_DEFINE(OBJ_MAYBE_AOUT, 1,    [a.out support?])   ;;
561
      bout)     AC_DEFINE(OBJ_MAYBE_BOUT, 1,    [b.out support?])   ;;
562
      coff)     AC_DEFINE(OBJ_MAYBE_COFF, 1,    [COFF support?])    ;;
563
      ecoff)    AC_DEFINE(OBJ_MAYBE_ECOFF, 1,   [ECOFF support?])   ;;
564
      elf)      AC_DEFINE(OBJ_MAYBE_ELF, 1,     [ELF support?])     ;;
565
      generic)  AC_DEFINE(OBJ_MAYBE_GENERIC, 1, [generic support?]) ;;
566
      som)      AC_DEFINE(OBJ_MAYBE_SOM, 1,     [SOM support?])     ;;
567
    esac
568
    extra_objects="$extra_objects obj-$fmt.o"
569
  done
570
  obj_format=multi
571
fi
572
if test `set . $emfiles ; shift ; echo $#` -gt 0 ; then
573
  DEFAULT_EMULATION=`set . $emulations ; echo $2`
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*)
579
      extra_objects="$extra_objects $emfiles"
580
      AC_DEFINE(USE_EMULATIONS, 1, [Use emulation support?]) ;;
581
  esac
582
fi
583
AC_SUBST(extra_objects)
584
AC_DEFINE_UNQUOTED(EMULATIONS, $EMULATIONS, [Supported emulations.])
585
AC_DEFINE_UNQUOTED(DEFAULT_EMULATION, "$DEFAULT_EMULATION",
586
                   [Default emulation.])
587
 
588
reject_dev_configs=yes
589
 
590
case ${reject_dev_configs}-${dev} in
591
  yes-yes) # Oops.
592
    AC_MSG_ERROR(GAS does not support the ${generic_target} configuration.)
593
    ;;
594
esac
595
 
596
AC_SUBST(target_cpu_type)
597
AC_SUBST(obj_format)
598
AC_SUBST(te_file)
599
AC_SUBST(install_tooldir)
600
AC_SUBST(atof)
601
dnl AC_SUBST(emulation)
602
 
603
# do we need the opcodes library?
604
case "${need_opcodes}" in
605
yes)
606
  OPCODES_LIB=../opcodes/libopcodes.la
607
  ;;
608
esac
609
 
610
AC_SUBST(OPCODES_LIB)
611
 
612
AC_DEFINE_UNQUOTED(TARGET_ALIAS,        "${target_alias}", [Target alias.])
613
AC_DEFINE_UNQUOTED(TARGET_CANONICAL,    "${target}",       [Canonical target.])
614
AC_DEFINE_UNQUOTED(TARGET_CPU,          "${target_cpu}",   [Target CPU.])
615
AC_DEFINE_UNQUOTED(TARGET_VENDOR,       "${target_vendor}", [Target vendor.])
616
AC_DEFINE_UNQUOTED(TARGET_OS,           "${target_os}",    [Target OS.])
617
 
618
AC_PROG_YACC
619
AM_PROG_LEX
620
 
621
ALL_LINGUAS="fr tr es rw id ru fi"
622
ZW_GNU_GETTEXT_SISTER_DIR
623
AM_PO_SUBDIRS
624
 
625
AM_MAINTAINER_MODE
626
AM_CONDITIONAL(GENINSRC_NEVER, false)
627
AC_EXEEXT
628
 
629
AC_CHECK_HEADERS(string.h stdlib.h memory.h strings.h unistd.h errno.h sys/types.h limits.h time.h sys/stat.h)
630
 
631
# Put this here so that autoconf's "cross-compiling" message doesn't confuse
632
# people who are not cross-compiling but are compiling cross-assemblers.
633
AC_MSG_CHECKING(whether compiling a cross-assembler)
634
if test "${host}" = "${target}"; then
635
  cross_gas=no
636
else
637
  cross_gas=yes
638
  AC_DEFINE(CROSS_COMPILE, 1, [Compiling cross-assembler?])
639
fi
640
AC_MSG_RESULT($cross_gas)
641
 
642
dnl ansidecl.h will deal with const
643
dnl AC_C_CONST
644
AC_FUNC_ALLOCA
645
AC_C_INLINE
646
 
647
# VMS doesn't have unlink.
648
AC_CHECK_FUNCS(unlink remove, break)
649
 
650
# Some systems don't have sbrk().
651
AC_CHECK_FUNCS(sbrk)
652
 
653
# do we need the math library?
654
case "${need_libm}" in
655
yes)
656
  LT_LIB_M
657
  AC_SUBST(LIBM)
658
  ;;
659
esac
660
 
661
# Some non-ANSI preprocessors botch requoting inside strings.  That's bad
662
# enough, but on some of those systems, the assert macro relies on requoting
663
# working properly!
664
GAS_WORKING_ASSERT
665
 
666
# On some systems, the system header files may not declare malloc, realloc,
667
# and free.  There are places where gas needs these functions to have been
668
# declared -- such as when taking their addresses.
669
gas_test_headers="
670
#ifdef HAVE_MEMORY_H
671
#include 
672
#endif
673
#ifdef HAVE_STRING_H
674
#include 
675
#else
676
#ifdef HAVE_STRINGS_H
677
#include 
678
#endif
679
#endif
680
#ifdef HAVE_STDLIB_H
681
#include 
682
#endif
683
#ifdef HAVE_UNISTD_H
684
#include 
685
#endif
686
"
687
 
688
# Does errno.h declare errno, or do we have to add a separate declaration
689
# for it?
690
GAS_CHECK_DECL_NEEDED(errno, f, int f, [
691
#ifdef HAVE_ERRNO_H
692
#include 
693
#endif
694
])
695
 
696
AC_MSG_CHECKING(for a known getopt prototype in unistd.h)
697
AC_CACHE_VAL(gas_cv_decl_getopt_unistd_h,
698
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include ], [extern int getopt (int, char *const*, const char *);])],
699
gas_cv_decl_getopt_unistd_h=yes, gas_cv_decl_getopt_unistd_h=no)])
700
AC_MSG_RESULT($gas_cv_decl_getopt_unistd_h)
701
if test $gas_cv_decl_getopt_unistd_h = yes; then
702
  AC_DEFINE([HAVE_DECL_GETOPT], 1,
703
            [Is the prototype for getopt in  in the expected format?])
704
fi
705
 
706
GAS_CHECK_DECL_NEEDED(environ, f, char **f, $gas_test_headers)
707
GAS_CHECK_DECL_NEEDED(ffs, f, int (*f)(int), $gas_test_headers)
708
GAS_CHECK_DECL_NEEDED(free, f, void (*f)(), $gas_test_headers)
709
GAS_CHECK_DECL_NEEDED(malloc, f, char *(*f)(), $gas_test_headers)
710
GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers)
711
GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers)
712
 
713
AC_CHECK_DECLS([mempcpy])
714
AC_CHECK_DECLS([vsnprintf])
715
 
716
BFD_BINARY_FOPEN
717
 
718
# Link in zlib if we can.  This allows us to write compressed debug sections.
719
AM_ZLIB
720
 
721
# Support for VMS timestamps via cross compile
722
 
723
if test "$ac_cv_header_time_h" = yes; then
724
  GAS_HAVE_TIME_TYPE_MEMBER(struct tm, tm_gmtoff)
725
fi
726
 
727
if test "$ac_cv_header_sys_stat_h" = yes; then
728
    GAS_HAVE_SYS_STAT_TYPE_MEMBER(struct stat, st_mtim, tv_sec)
729
    GAS_HAVE_SYS_STAT_TYPE_MEMBER(struct stat, st_mtim, tv_nsec)
730
fi
731
 
732
 
733
dnl Required for html, pdf, install-pdf and install-html targets.
734
AC_SUBST(datarootdir)
735
AC_SUBST(docdir)
736
AC_SUBST(htmldir)
737
AC_SUBST(pdfdir)
738
 
739
dnl This must come last.
740
 
741
dnl We used to make symlinks to files in the source directory, but now
742
dnl we just use the right name for .c files, and create .h files in
743
dnl the build directory which include the right .h file.  Make sure
744
dnl the old symlinks don't exist, so that a reconfigure in an existing
745
dnl directory behaves reasonably.
746
 
747
AC_CONFIG_FILES(Makefile doc/Makefile po/Makefile.in:po/Make-in)
748
AC_CONFIG_COMMANDS([default],
749
[rm -f targ-cpu.c targ-cpu.h obj-format.h obj-format.c targ-env.h atof-targ.c itbl-cpu.h
750
 echo '#include "tc-'"${target_cpu_type}"'.h"' > targ-cpu.h
751
 echo '#include "obj-'"${obj_format}"'.h"' > obj-format.h
752
 echo '#include "te-'"${te_file}"'.h"' > targ-env.h
753
 echo '#include "itbl-'"${target_cpu_type}"'.h"' > itbl-cpu.h
754
 if test "x$cgen_cpu_prefix" != x ; then
755
   echo '#include "opcodes/'"${cgen_cpu_prefix}"'-desc.h"' > cgen-desc.h
756
 fi],
757
[target_cpu_type=${target_cpu_type}
758
 cgen_cpu_prefix=${cgen_cpu_prefix}
759
 obj_format=${obj_format}
760
 te_file=${te_file}])
761
 
762
AC_OUTPUT

powered by: WebSVN 2.1.0

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