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 163

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

powered by: WebSVN 2.1.0

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