|
|
1.1 root 1: #!/bin/sh
2: # Configuration script for GNU CC
1.1.1.2 root 3: # Copyright (C) 1988, 1990, 1991, 1992 Free Software Foundation, Inc.
1.1 root 4:
5: #This file is part of GNU CC.
6:
7: #GNU CC is free software; you can redistribute it and/or modify
8: #it under the terms of the GNU General Public License as published by
9: #the Free Software Foundation; either version 2, or (at your option)
10: #any later version.
11:
12: #GNU CC is distributed in the hope that it will be useful,
13: #but WITHOUT ANY WARRANTY; without even the implied warranty of
14: #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15: #GNU General Public License for more details.
16:
17: #You should have received a copy of the GNU General Public License
18: #along with GNU CC; see the file COPYING. If not, write to
19: #the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
20:
21: #
22: # Shell script to create proper links to machine-dependent files in
23: # preparation for compiling gcc.
24: #
25: # Usage: configure [--srcdir=DIR] [--host=HOST] [--gas] [--nfp] TARGET
26: #
27: # If configure succeeds, it leaves its status in config.status.
28: # If configure fails after disturbing the status quo,
29: # config.status is removed.
30: #
31:
32: progname=$0
33:
34: # Default --srcdir to the directory where the script is found,
35: # if a directory was specified.
1.1.1.3 ! root 36: # The second sed call is to convert `.//configure' to `./configure'.
! 37: srcdir=`echo $0 | sed 's|//|/|' | sed 's|/[^/]*$||'`
1.1 root 38: if [ x$srcdir = x$0 ]
39: then
40: srcdir=
41: fi
42:
1.1.1.3 ! root 43: host=
! 44:
1.1 root 45: remove=rm
46: hard_link=ln
47: symbolic_link='ln -s'
1.1.1.2 root 48: copy=cp
1.1 root 49:
50: # Record all the arguments, to write them in config.status.
51: arguments=$*
52:
53: #for Test
54: #remove="echo rm"
55: #hard_link="echo ln"
56: #symbolic_link="echo ln -s"
57:
58: for arg in $*;
59: do
60: # Handle -srcdir, etc, with space between it and argument.
61: if [ x$next_srcdir = xyes ]
62: then srcdir=$arg; next_srcdir=;
63: # Handle -host, etc, with space between it and argument.
64: else if [ x$next_host = xyes ]
65: then host=$arg; next_host=;
66: else if [ x$next_target = xyes ]
67: then target=$arg; next_target=;
68: else
69: case $arg in
70: -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=* | --s=*)
71: srcdir=`echo $arg | sed 's/-*s[a-z]*=//'`
72: ;;
73: -srcdir | --srcdir | --srcdi | --srcd | --src | --sr | --s)
74: next_srcdir=yes
75: ;;
76: -host | --host | --hos | --ho | --h)
77: next_host=yes
78: ;;
79: -host=* | --host=* | --hos=* | --ho=* | --h=*)
80: host=`echo $arg | sed 's/-*h[a-z]*=//'`
81: ;;
82: -target | --target | --targe | --targ | --tar | --ta | --t)
83: next_target=yes
84: ;;
85: -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
86: target=`echo $arg | sed 's/-*t[a-z]*=//'`
87: ;;
1.1.1.3 ! root 88: -with-gnu-ld | --with-gnu-ld | --with-gnu-l)
! 89: gnu_ld=yes
! 90: ;;
! 91: -gas | --gas | --ga | --g | -with-gnu-as | --with-gnu-as | -with-gnu-a)
1.1 root 92: gas=yes
93: ;;
94: -nfp | --nfp | --nf | --n)
95: nfp=yes
96: ;;
1.1.1.3 ! root 97: -with-* | --with-*) ;; #ignored
1.1.1.2 root 98: -x | --x) ;; # ignored
1.1.1.3 ! root 99: -*)
! 100: echo "Invalid option \`$arg'" 1>&2
! 101: exit 1
! 102: ;;
1.1 root 103: *)
104: # Allow configure HOST TARGET
105: if [ x$host = x ]
106: then
107: host=$target
108: fi
109: target=$arg
110: ;;
111: esac
1.1.1.2 root 112: fi; fi; fi
1.1 root 113: done
114:
115: # Find the source files, if location was not specified.
116: if [ x$srcdir = x ]
117: then
118: srcdirdefaulted=1
119: srcdir=.
120: if [ ! -r tree.c ]
121: then
122: srcdir=..
123: fi
124: fi
125:
126: if [ ! -r ${srcdir}/tree.c ]
127: then
128: if [ x$srcdirdefaulted = x ]
129: then
1.1.1.2 root 130: echo "$progname: Can't find compiler sources in \`${srcdir}'" 1>&2
1.1 root 131: else
1.1.1.2 root 132: echo "$progname: Can't find compiler sources in \`.' or \`..'" 1>&2
1.1 root 133: fi
134: exit 1
135: fi
136:
1.1.1.2 root 137: if [ -r ${srcdir}/config.status ] && [ x$srcdir != x. ]
138: then
139: echo "$progname: \`configure' has been run in \`${srcdir}'" 1>&2
140: exit 1
1.1 root 141: fi
142:
143: # Complain if an arg is missing
144: if [ x$target = x ]
145: then
1.1.1.2 root 146: echo "No target specified." 1>&2
147: echo "Usage: $progname [--srcdir=DIR] [--host=HOST] [--gas] [--nfp] TARGET" 1>&2
148: echo -n "Where HOST and TARGET are something like " 1>&2
149: echo "\`vax', \`sun3', \`encore', etc." 1>&2
1.1 root 150: if [ -r config.status ]
151: then
1.1.1.2 root 152: cat config.status 1>&2
1.1 root 153: fi
154: exit 1
155: fi
156:
157: # Default other arg
158: if [ x$host = x ]
159: then
160: host=$target
161: fi
162:
1.1.1.3 ! root 163: host_xm_file=
! 164: host_xmake_file=
! 165: host_broken_install=
! 166:
1.1 root 167: # Decode the host machine, then the target machine.
168: # For the host machine, we save the xm_file variable as host_xm_file;
169: # then we decode the target machine and forget everything else
170: # that came from the host machine.
171: for machine in $host $target; do
172:
173: # Validate the spec, and canonicalize it.
174: machine=`$srcdir/config.sub $machine` || exit 1
175:
176: cpu_type=
177: xm_file=
178: tm_file=
1.1.1.3 ! root 179: out_file=
1.1 root 180: xmake_file=
181: tmake_file=
1.1.1.3 ! root 182: header_files=
! 183: # Set this to force installation and use of collect2.
! 184: use_collect2=
! 185: # Set this to force use of install.sh.
! 186: broken_install=
1.1 root 187:
188: case $machine in
189: # Support site-specific machine types.
190: *local*)
191: cpu_type=$machine
192: xm_file=xm-$machine.h
193: tm_file=$machine.h
194: if [ -f $srcdir/config/x-$machine ] ; \
195: then xmake_file=x-$machine; \
196: else true; \
197: fi
198: if [ -f $srcdir/config/t-$machine ] ; \
199: then tmake_file=t-$machine; \
200: else true; \
201: fi
202: ;;
203: vax-*-bsd*) # vaxen running BSD
204: tm_file=vax.h
1.1.1.3 ! root 205: use_collect2=yes
1.1 root 206: ;;
207: vax-*-ultrix*) # vaxen running ultrix
208: tm_file=ultrix.h
1.1.1.3 ! root 209: use_collect2=yes
1.1 root 210: ;;
211: vax-*-vms*) # vaxen running VMS
212: xm_file=xm-vms.h
213: tm_file=vms.h
214: ;;
215: vax-*-sysv*) # vaxen running system V
216: xm_file=xm-vaxv.h
217: tm_file=vaxv.h
218: ;;
219: # This hasn't been upgraded to GCC 2.
220: # tahoe-harris-*) # Harris tahoe, using COFF.
221: # tm_file=harris.h
222: # ;;
223: # tahoe-*-bsd*) # tahoe running BSD
224: # xm_file=xm-tahoe.h
225: # tm_file=tahoe.h
226: # ;;
1.1.1.3 ! root 227: i386-*-osfrose*) # 386 using OSF/rose
1.1 root 228: tm_file=i386rose.h
229: xmake_file=x-i386rose
230: tmake_file=t-i386rose
1.1.1.3 ! root 231: use_collect2=yes
1.1 root 232: ;;
233: i386-sequent-bsd*) # 80386 from Sequent
234: xm_file=xm-i386.h
1.1.1.3 ! root 235: use_collect2=yes
1.1.1.2 root 236: if [ x$gas = xyes ]
237: then
238: tm_file=seq386gas.h
239: else
240: tm_file=seq386.h
241: fi
242: ;;
1.1.1.3 ! root 243: i386-*-bsd*)
1.1.1.2 root 244: xm_file=xm-i386.h
245: tm_file=i386bsd.h
246: tmake_file=t-libc-ok
1.1.1.3 ! root 247: use_collect2=yes
1.1 root 248: ;;
249: i386-*-mach*)
250: xm_file=xm-i386.h
251: tm_file=i386mach.h
252: tmake_file=t-libc-ok
1.1.1.3 ! root 253: use_collect2=yes
! 254: ;;
! 255: i386-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
! 256: xm_file=xm-i386sco.h
! 257: tm_file=i386sco4.h
! 258: xmake_file=x-i386sco
! 259: tmake_file=t-i386sco
1.1 root 260: ;;
261: i386-*-sco*) # 80386 running SCO system
1.1.1.2 root 262: xm_file=xm-i386sco.h
1.1 root 263: tm_file=i386sco.h
264: xmake_file=x-i386sco
265: tmake_file=t-i386sco
266: ;;
267: i386-*-isc*) # 80386 running ISC system
1.1.1.2 root 268: xm_file=xm-i386isc.h
1.1 root 269: tm_file=i386isc.h
270: xmake_file=x-i386isc
1.1.1.2 root 271: tmake_file=t-i386isc
1.1 root 272: ;;
273: i386-ibm-aix*) # IBM PS/2 running AIX
274: tm_file=aix386.h
275: xm_file=xm-aix386.h
276: xmake_file=x-aix386
1.1.1.3 ! root 277: broken_install=yes
1.1 root 278: ;;
279: i386-sun-sunos*) # Sun i386 roadrunner
1.1.1.3 ! root 280: xm_file=xm-sun386.h
1.1 root 281: tm_file=i386sun.h
1.1.1.3 ! root 282: use_collect2=yes
1.1 root 283: ;;
284: i386-*-sysv4*) # Intel 80386's running system V.4
285: xm_file=xm-i38v4.h
286: xmake_file=x-i386v4
287: tm_file=i386v4.h
288: tmake_file=t-svr4
289: ;;
290: i386-*-sysv*) # Intel 80386's running system V
291: xm_file=xm-i386v.h
292: xmake_file=x-i386v
293: tmake_file=t-svr3
294: if [ x$gas = xyes ]
295: then
296: tm_file=i386gas.h
297: else
298: tm_file=i386v.h
299: fi
300: ;;
1.1.1.3 ! root 301: i486-ncr-sysv4*) # NCR 3000 - i486 running system V.4
! 302: cpu_type=i386
! 303: xm_file=xm-i38v4.h
! 304: xmake_file=x-ncr3000
! 305: tm_file=i486v4.h
! 306: tmake_file=t-svr4
! 307: ;;
1.1 root 308: i486-*-sysv4*) # Intel 80486's running system V.4
309: cpu_type=i386
310: xm_file=xm-i38v4.h
311: xmake_file=x-i386v4
312: tm_file=i486v4.h
313: tmake_file=t-svr4
314: ;;
315: i860-*-sysv3*)
316: xm_file=xm-i86v3.h
317: xmake_file=x-i860v3
318: tm_file=i860v3.h
319: tmake_file=t-svr3
320: ;;
321: i860-*-sysv4*)
322: xm_file=xm-i86v4.h
323: xmake_file=x-i860v4
324: tm_file=i860v4.h
325: tmake_file=t-svr4
326: ;;
327: i860-alliant-*) # Alliant FX/2800
1.1.1.3 ! root 328: xm_file=xm-fx2800.h
! 329: xmake_file=x-fx2800
1.1 root 330: tm_file=fx2800.h
1.1.1.3 ! root 331: tmake_file=t-fx2800
1.1 root 332: ;;
333: i860-*-bsd*)
334: if [ x$gas = xyes ]
335: then
336: tm_file=i860bg.h
337: else
338: tm_file=i860b.h
339: fi
1.1.1.3 ! root 340: use_collect2=yes
1.1 root 341: ;;
1.1.1.2 root 342: sparc-tti-*)
1.1 root 343: tm_file=pbd.h
344: xm_file=xm-pbd.h
1.1.1.3 ! root 345: use_collect2=yes
1.1 root 346: ;;
347: sparc-*-sunos4*)
348: tm_file=sparc.h
1.1.1.3 ! root 349: use_collect2=yes
1.1 root 350: ;;
351: sparc-*-sunos3*)
352: tm_file=sun4o3.h
1.1.1.3 ! root 353: use_collect2=yes
1.1 root 354: ;;
355: sparc-*-sysv4*)
1.1.1.3 ! root 356: xm_file=xm-spcv4.h
1.1.1.2 root 357: tm_file=sparcv4.h
1.1 root 358: tmake_file=t-svr4
1.1.1.2 root 359: xmake_file=x-sparcv4
1.1 root 360: ;;
1.1.1.3 ! root 361: sparc-*-solaris2*)
! 362: xm_file=xm-spcv4.h
! 363: tm_file=spc-sol2.h
! 364: tmake_file=t-svr4
! 365: xmake_file=x-sparcv4
! 366: ;;
1.1 root 367: m68k-*-amix*) # Commodore variant of V.4.
368: tm_file=amix.h
369: xm_file=xm-amix.h
370: xmake_file=x-amix
371: tmake_file=t-svr4
1.1.1.3 ! root 372: header_files=math-68881.h
1.1 root 373: ;;
374: m68k-*-sysv4*) # Motorola m68k's running system V.4
375: tm_file=m68kv4.h
376: xm_file=xm-m68kv4.h
377: xmake_file=x-m68kv4
378: tmake_file=t-svr4
1.1.1.3 ! root 379: header_files=math-68881.h
! 380: ;;
! 381: m68k-bull-sysv*) # Bull DPX/2
! 382: if [ x$gas = xyes ]
! 383: then
! 384: tm_file=dpx2g.h
! 385: else
! 386: tm_file=dpx2.h
! 387: fi
! 388: xm_file=xm-m68kv.h
! 389: # is this cool ?
! 390: if [ -d /makesys/kernel/cf/ncl_mr ]; then
! 391: xmake_file=x-dpx2300
! 392: elif [ -d /makesys/kernel/cf/ncl_el ]; then
! 393: xmake_file=x-dpx2200
! 394: fi
! 395: xmake_file=${xmake_file:-x-dpx2300}
! 396: use_collect2=yes
! 397: header_files=math-68881.h
1.1 root 398: ;;
399: m68k-next-*)
400: tm_file=next.h
401: out_file=next.c
402: xm_file=xm-next.h
1.1.1.2 root 403: tmake_file=t-next
1.1.1.3 ! root 404: use_collect2=yes
! 405: header_files=math-68881.h
1.1 root 406: ;;
407: m68k-sun-sunos3*)
408: if [ x$nfp = xyes ]
409: then
410: tm_file=sun3n3.h
411: else
412: tm_file=sun3o3.h
413: fi
1.1.1.3 ! root 414: use_collect2=yes
! 415: header_files=math-68881.h
1.1 root 416: ;;
1.1.1.2 root 417: m68k-sun-sunos*) # For Sunos 4 (the default).
1.1 root 418: if [ x$nfp = xyes ]
419: then
420: tm_file=sun3n.h
421: else
422: tm_file=sun3.h
423: fi
1.1.1.3 ! root 424: use_collect2=yes
! 425: header_files=math-68881.h
1.1 root 426: ;;
1.1.1.2 root 427: m68k-sun-mach*)
428: tm_file=sun3mach.h
1.1.1.3 ! root 429: use_collect2=yes
! 430: header_files=math-68881.h
1.1.1.2 root 431: ;;
432: m68k-tti-*)
433: tm_file=pbb.h
434: xm_file=xm-m68kv.h
1.1.1.3 ! root 435: use_collect2=yes
! 436: header_files=math-68881.h
1.1.1.2 root 437: ;;
1.1 root 438: m68k-hp-hpux*) # HP 9000 series 300
439: xm_file=xm-hp320.h
440: if [ x$gas = xyes ]
441: then
442: xmake_file=x-hp320g
443: tm_file=hp320g.h
444: else
445: xmake_file=x-hp320
446: tm_file=hp320.h
447: fi
1.1.1.3 ! root 448: broken_install=yes
! 449: use_collect2=yes
! 450: header_files=math-68881.h
1.1 root 451: ;;
452: m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
453: tm_file=hp3bsd.h
1.1.1.3 ! root 454: use_collect2=yes
! 455: header_files=math-68881.h
1.1 root 456: ;;
457: m68k-isi-bsd*)
458: if [ x$nfp = xyes ]
459: then
460: tm_file=isi-nfp.h
461: else
462: tm_file=isi.h
463: fi
1.1.1.3 ! root 464: use_collect2=yes
! 465: header_files=math-68881.h
1.1 root 466: ;;
467: m68k-sony-bsd*)
468: xm_file=xm-m68k.h
469: if [ x$gas = xyes ]
470: then
471: tm_file=newsgas.h
472: else
473: tm_file=news.h
474: fi
1.1.1.3 ! root 475: use_collect2=yes
! 476: header_files=math-68881.h
1.1 root 477: ;;
478: m68k-altos-sysv*) # Altos 3068
479: if [ x$gas = xyes ]
480: then
481: xm_file=xm-altos3068.h
482: tm_file=altos3068.h
483: else
484: echo "The Altos is supported only with the GNU assembler" 1>&2
485: exit 1
486: fi
1.1.1.3 ! root 487: header_files=math-68881.h
1.1 root 488: ;;
489: m68k-motorola-sysv*)
490: tm_file=mot3300.h
491: xm_file=xm-mot3300.h
1.1.1.3 ! root 492: header_files=math-68881.h
1.1 root 493: ;;
1.1.1.3 ! root 494: m68k-crds-unos*)
1.1 root 495: xm_file=xm-crds.h
496: xmake_file=x-crds
497: tm_file=crds.h
1.1.1.3 ! root 498: broken_install=yes
! 499: use_collect2=yes
! 500: header_files=math-68881.h
1.1 root 501: ;;
502: m68k-apollo-*)
503: xmake_file=x-apollo68
504: tm_file=apollo68.h
1.1.1.3 ! root 505: use_collect2=yes
! 506: header_files=math-68881.h
1.1 root 507: ;;
508: m68k-ncr-sysv*) # NCR Tower 32 SVR3
509: tm_file=tower-as.h
510: xm_file=xm-tower.h
1.1.1.3 ! root 511: xmake_file=x-tower
! 512: tmake_file=t-svr3
! 513: header_files=math-68881.h
! 514: ;;
! 515: m68k-*-sysv3*) # Motorola m68k's running system V.3
! 516: tm_file=m68k.h
! 517: xm_file=xm-m68kv.h
! 518: xmake_file=x-m68kv
! 519: tmake_file=t-svr3
! 520: header_files=math-68881.h
1.1 root 521: ;;
522: m68000-sun-sunos3*)
523: cpu_type=m68k
524: tm_file=sun2.h
1.1.1.3 ! root 525: use_collect2=yes
! 526: header_files=math-68881.h
1.1 root 527: ;;
528: m68000-sun-sunos4*)
529: cpu_type=m68k
530: tm_file=sun2o4.h
1.1.1.3 ! root 531: use_collect2=yes
! 532: header_files=math-68881.h
1.1 root 533: ;;
534: m68000-hp-hpux*) # HP 9000 series 300
535: cpu_type=m68k
536: xm_file=xm-hp320.h
537: if [ x$gas = xyes ]
538: then
539: xmake_file=x-hp320g
540: tm_file=hp310g.h
541: else
542: xmake_file=x-hp320
543: tm_file=hp310.h
544: fi
1.1.1.3 ! root 545: broken_install=yes
! 546: use_collect2=yes
! 547: header_files=math-68881.h
1.1 root 548: ;;
549: m68000-hp-bsd*) # HP 9000/200 running BSD
550: cpu_type=m68k
551: tm_file=hp2bsd.h
552: xmake_file=x-hp2bsd
1.1.1.3 ! root 553: use_collect2=yes
! 554: header_files=math-68881.h
1.1 root 555: ;;
556: m68000-att-sysv*)
557: cpu_type=m68k
558: xm_file=xm-3b1.h
559: if [ x$gas = xyes ]
560: then
561: tm_file=3b1g.h
562: else
563: tm_file=3b1.h
564: fi
1.1.1.3 ! root 565: use_collect2=yes
! 566: header_files=math-68881.h
1.1 root 567: ;;
568: m68000-convergent-sysv*)
569: cpu_type=m68k
570: xm_file=xm-3b1.h
571: tm_file=ctix.h
1.1.1.3 ! root 572: use_collect2=yes
! 573: header_files=math-68881.h
1.1 root 574: ;;
575: ns32k-encore-osf*) # Encore with OSF/rose
576: tm_file=encrose.h
577: xmake_file=x-encrose
578: tmake_file=t-encrose
1.1.1.3 ! root 579: use_collect2=yes
1.1 root 580: ;;
581: ns32k-sequent-bsd*)
582: tm_file=sequent.h
1.1.1.3 ! root 583: use_collect2=yes
1.1 root 584: ;;
585: ns32k-encore-bsd*)
586: tm_file=encore.h
1.1.1.3 ! root 587: use_collect2=yes
1.1 root 588: ;;
1.1.1.3 ! root 589: # This has not been updated to GCC 2.
! 590: # ns32k-ns-genix*)
! 591: # xm_file=xm-genix.h
! 592: # xmake_file=x-genix
! 593: # tm_file=genix.h
! 594: # use_collect2=yes
! 595: # ;;
1.1 root 596: ns32k-merlin-*)
597: tm_file=merlin.h
1.1.1.3 ! root 598: use_collect2=yes
1.1 root 599: ;;
1.1.1.2 root 600: ns32k-pc532-mach*)
601: tm_file=pc532-mach.h
1.1.1.3 ! root 602: use_collect2=yes
1.1.1.2 root 603: ;;
604: ns32k-pc532-minix*)
605: tm_file=pc532-min.h
606: xm_file=xm-pc532-min.h
1.1.1.3 ! root 607: use_collect2=yes
1.1.1.2 root 608: ;;
1.1 root 609: m88k-*-luna*)
610: tm_file=m88kluna.h
611: tmake_file=t-m88kluna
612: ;;
613: m88k-dg-dgux*)
614: tm_file=m88kdgux.h
1.1.1.3 ! root 615: xmake_file=x-m88kdgux
1.1 root 616: ;;
617: m88k-*-sysv4*)
1.1.1.3 ! root 618: tm_file=m88kv4.h
1.1 root 619: xmake_file=x-m88kv4
620: tmake_file=t-m88kv4
621: ;;
1.1.1.2 root 622: m88k-dolphin-sysv3*)
623: tm_file=m88kdolph.h
624: xm_file=xm-m88kv3.h
625: xmake_file=x-m88kdolph
626: ;;
1.1 root 627: m88k-*-sysv3*)
628: tm_file=m88kv3.h
629: xm_file=xm-m88kv3.h
1.1.1.3 ! root 630: xmake_file=x-m88kv3
1.1 root 631: ;;
632: # This hasn't been upgraded to GCC 2.
633: # fx80-alliant-*) # Alliant FX/80
634: # tm_file=fx80.h
635: # ;;
636: arm-*-*) # Acorn RISC machine
637: tm_file=arm.h
638: ;;
639: c1-convex-*) # Convex C1
640: tm_file=convex1.h
641: cpu_type=convex
1.1.1.3 ! root 642: use_collect2=yes
1.1 root 643: ;;
644: c2-convex-*) # Convex C2
645: tm_file=convex2.h
646: cpu_type=convex
1.1.1.3 ! root 647: use_collect2=yes
1.1 root 648: ;;
649: c32-convex-*)
650: tm_file=convex32.h # Convex C32xx
651: cpu_type=convex
1.1.1.3 ! root 652: use_collect2=yes
1.1 root 653: ;;
654: c34-convex-*)
655: tm_file=convex34.h # Convex C34xx
656: cpu_type=convex
1.1.1.3 ! root 657: use_collect2=yes
1.1 root 658: ;;
659: c38-convex-*)
660: tm_file=convex38.h # Convex C38xx
661: cpu_type=convex
1.1.1.3 ! root 662: use_collect2=yes
1.1 root 663: ;;
664: mips-sgi-irix4*) # Mostly like a MIPS.
1.1.1.3 ! root 665: tm_file=iris4.h
1.1 root 666: xm_file=xm-irix4.h
1.1.1.3 ! root 667: broken_install=yes
1.1.1.2 root 668: xmake_file=x-iris
1.1.1.3 ! root 669: use_collect2=yes
1.1 root 670: ;;
1.1.1.3 ! root 671: mips-sgi-*) # Mostly like a MIPS.
1.1 root 672: tm_file=iris.h
673: xm_file=xm-iris.h
1.1.1.3 ! root 674: broken_install=yes
1.1.1.2 root 675: xmake_file=x-iris
1.1.1.3 ! root 676: use_collect2=yes
1.1 root 677: ;;
678: mips-dec-ultrix*) # Decstation.
679: tm_file=decstatn.h
680: tmake_file=t-decstatn
1.1.1.2 root 681: xmake_file=x-decstatn
1.1.1.3 ! root 682: use_collect2=yes
1.1 root 683: ;;
1.1.1.3 ! root 684: mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
1.1 root 685: tm_file=decrose.h
686: xmake_file=x-decrose
687: tmake_file=t-decrose
1.1.1.3 ! root 688: use_collect2=yes
! 689: ;;
! 690: mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
! 691: tm_file=dec-osf1.h
! 692: xmake_file=x-mips
! 693: tmake_file=t-decstatn
! 694: use_collect2=yes
1.1 root 695: ;;
1.1.1.2 root 696: mips-sony-bsd*) # Sony NEWS 3600 or risc/news.
1.1 root 697: tm_file=mips-news.h
1.1.1.3 ! root 698: xm_file=xm-mipsbsdn.h
! 699: use_collect2=yes
1.1 root 700: ;;
1.1.1.2 root 701: mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
702: # That is based on svr4.
703: # t-svr4 is not right because this system doesn't use ELF.
1.1.1.3 ! root 704: tm_file=mips-n5.h
1.1.1.2 root 705: xm_file=xm-mipsnews.h
1.1.1.3 ! root 706: use_collect2=yes
1.1.1.2 root 707: ;;
708: mips-*-bsd*) # BSD 4.3 variant of MIPS system.
1.1 root 709: tm_file=mips-bsd.h
1.1.1.3 ! root 710: use_collect2=yes
1.1 root 711: ;;
1.1.1.3 ! root 712: mips-*-sysv4*) # MIPS System V.4.
! 713: tm_file=mips-svr4.h
! 714: xm_file=xm-umips.h
! 715: xmake_file=x-mipsv
! 716: use_collect2=yes
! 717: ;;
! 718: mips-*-sysv*) # MIPS System V.
! 719: tm_file=mips-sysv.h
! 720: xm_file=xm-umips.h
! 721: xmake_file=x-mipsv
! 722: use_collect2=yes
! 723: ;;
! 724: mips-mips-*) # Default MIPS environment.
! 725: tm_file=mips.h
! 726: use_collect2=yes
! 727: ;;
! 728: pyramid-*-*)
! 729: cpu_type=pyr
! 730: tm_file=pyr.h
! 731: use_collect2=yes
! 732: ;;
1.1 root 733: # This hasn't been upgraded to GCC 2.
1.1.1.3 ! root 734: # tron-*-*)
1.1 root 735: # cpu_type=gmicro
736: # tm_file=gmicro.h
1.1.1.3 ! root 737: # use_collect2=yes
1.1 root 738: # ;;
739: a29k-*-bsd*)
740: tm_file=a29kunix.h
741: xm_file=xm-a29kunix.h
742: xmake_file=x-a29kunix
1.1.1.3 ! root 743: use_collect2=yes
! 744: ;;
! 745: a29k-*-*) # Default a29k environment.
! 746: use_collect2=yes
1.1 root 747: ;;
1.1.1.2 root 748: romp-*-aos*)
1.1 root 749: xm_file=xm-romp.h
750: tm_file=romp.h
1.1.1.3 ! root 751: use_collect2=yes
1.1 root 752: ;;
753: romp-*-mach*)
754: xm_file=xm-romp.h
755: tm_file=romp.h
756: xmake_file=x-romp-mach
1.1.1.3 ! root 757: use_collect2=yes
1.1 root 758: ;;
1.1.1.3 ! root 759: rs6000-*-mach*)
1.1 root 760: xm_file=xm-rs6k-m.h
761: tm_file=rs6000-mach.h
1.1.1.3 ! root 762: xmake_file=x-rs6k-mach
! 763: use_collect2=yes
1.1 root 764: ;;
765: rs6000-*)
766: xm_file=xm-rs6000.h
767: tm_file=rs6000.h
1.1.1.3 ! root 768: use_collect2=yes
! 769: ;;
! 770: hppa1.1-*-bsd*)
! 771: cpu_type=pa
! 772: xm_file=xm-pa.h
! 773: tm_file=pa1.h
! 774: use_collect2=yes
! 775: ;;
! 776: hppa1.0-*-bsd*)
! 777: cpu_type=pa
! 778: xm_file=xm-pa.h
! 779: tm_file=pa.h
! 780: use_collect2=yes
! 781: ;;
! 782: hppa1.1-*-hpux*)
! 783: cpu_type=pa
! 784: xm_file=xm-pa.h
! 785: xmake_file=x-pa-hpux
! 786: if [ x$gas = xyes ]
! 787: then
! 788: tm_file=pa1-ghpux.h
! 789: else
! 790: tm_file=pa1-hpux.h
! 791: fi
! 792: broken_install=yes
! 793: use_collect2=yes
1.1 root 794: ;;
1.1.1.3 ! root 795: hppa1.0-*-hpux*)
! 796: cpu_type=pa
! 797: xm_file=xm-pa.h
! 798: xmake_file=x-pa-hpux
! 799: if [ x$gas = xyes ]
! 800: then
! 801: tm_file=pa-ghpux.h
! 802: else
! 803: tm_file=pa-hpux.h
! 804: fi
! 805: broken_install=yes
! 806: use_collect2=yes
! 807: ;;
! 808: we32k-att-sysv*)
! 809: cpu_type=we32k
! 810: use_collect2=yes
! 811: ;;
! 812: i960-*-*) # Default i960 environment.
! 813: use_collect2=yes
1.1.1.2 root 814: ;;
815: *)
816: echo "Configuration $machine not recognized" 1>&2
817: exit 1
818: ;;
1.1 root 819: esac
820:
821: case $machine in
822: *-*-sysv4*)
823: xmake_try_sysv=x-sysv
824: ;;
825: *-*-sysv*)
1.1.1.3 ! root 826: broken_install=yes
! 827: ;;
! 828: esac
! 829:
! 830: # No need for collect2 if we have the GNU linker.
! 831: case x$gnu_ld in
! 832: xyes)
! 833: use_collect2=
1.1 root 834: ;;
835: esac
836:
837: # Default certain vars that apply to both host and target in turn.
838: if [ x$cpu_type = x ]
839: then cpu_type=`echo $machine | sed 's/-.*$//'`
840: fi
841:
842: # Save data on host machine in vars host_xm_file and host_xmake_file.
843: if [ x$pass1done = x ]
844: then
845: if [ x$xm_file = x ]; then host_xm_file=xm-$cpu_type.h
846: else host_xm_file=$xm_file
847: fi
848: if [ x$xmake_file = x ]
849: then xmake_file=x-$cpu_type
850: fi
851: host_xmake_file=$xmake_file
1.1.1.3 ! root 852: host_broken_install=$broken_install
1.1 root 853: pass1done=yes
854: fi
855: done
856:
857: # Default the target-machine variables that were not explicitly set.
858: if [ x$tm_file = x ]
1.1.1.3 ! root 859: then tm_file=$cpu_type.h; fi
! 860:
! 861: if [ x$header_files = x ]
! 862: then header_files=; fi
1.1 root 863:
864: if [ x$xm_file = x ]
865: then xm_file=xm-$cpu_type.h; fi
866:
867: md_file=${cpu_type}.md
868:
869: if [ x$out_file = x ]
870: then out_file=$cpu_type.c; fi
871:
872: if [ x$tmake_file = x ]
873: then tmake_file=t-$cpu_type
874: fi
875:
876:
877: # Set up the list of links to be made.
878: # $links is the list of link names, and $files is the list of names to link to.
879: files="$host_xm_file $tm_file $md_file $out_file $xm_file"
880: links="config.h tm.h md aux-output.c tconfig.h"
881:
882: # Make the links.
883: while [ -n "$files" ]
884: do
885: # set file to car of files, files to cdr of files
886: set $files; file=$1; shift; files=$*
887: set $links; link=$1; shift; links=$*
888:
889: if [ ! -r ${srcdir}/config/$file ]
890: then
891: echo "$progname: cannot create a link \`$link'," 1>&2
1.1.1.2 root 892: echo "since the file \`config/$file' does not exist" 1>&2
1.1 root 893: exit 1
894: fi
895:
896: $remove -f $link
897: rm -f config.status
898: # Make a symlink if possible, otherwise try a hard link
1.1.1.2 root 899: $symbolic_link ${srcdir}/config/$file $link 2>/dev/null || $hard_link ${srcdir}/config/$file $link || $copy ${srcdir}/config/$file $link
1.1 root 900:
901: if [ ! -r $link ]
902: then
1.1.1.2 root 903: echo "$progname: unable to link \`$link' to \`${srcdir}/config/$file'" 1>&2
1.1 root 904: exit 1
905: fi
1.1.1.2 root 906: echo "Linked \`$link' to \`${srcdir}/config/$file'"
1.1 root 907: done
908:
909: # Create Makefile.tem from Makefile.in.
910: # Make it set VPATH if necessary so that the sources are found.
911: # Also change its value of srcdir.
912: # Also create a .gdbinit file which runs the one in srcdir
913: # and tells GDB to look there for source files.
914: case $srcdir in
915: .)
916: rm -f Makefile.tem
917: cp Makefile.in Makefile.tem
918: chmod +w Makefile.tem
919: ;;
920: *)
921: rm -f Makefile.tem
922: echo "VPATH = ${srcdir}" \
923: | cat - ${srcdir}/Makefile.in \
924: | sed "s@^srcdir = \.@srcdir = ${srcdir}@" > Makefile.tem
925: rm -f .gdbinit
926: echo "dir ." > .gdbinit
927: echo "dir ${srcdir}" >> .gdbinit
928: echo "source ${srcdir}/.gdbinit" >> .gdbinit
929: ;;
930: esac
931:
932: # Conditionalize the makefile for this host machine.
933: if [ -f ${srcdir}/config/${host_xmake_file} ]
934: then
935: rm -f Makefile.xx
936: sed -e "/####/ r ${srcdir}/config/${host_xmake_file}" Makefile.tem > Makefile.xx
937: echo "Merged ${host_xmake_file}."
938: rm -f Makefile.tem
939: mv Makefile.xx Makefile.tem
940: else
941: # Say in the makefile that there is no host_xmake_file,
942: # by using a name which (when interpreted relative to $srcdir/config)
943: # will duplicate another dependency: $srcdir/Makefile.in.
944: host_xmake_file=../Makefile.in
945: fi
946:
947: # Add a definition for INSTALL if system wants one.
948: # This substitutes for lots of x-* files.
1.1.1.3 ! root 949: if [ x$host_broken_install = x ]
! 950: then true
! 951: else
! 952: rm -f Makefile.xx
! 953: sed 's|^INSTALL = .*|INSTALL = $(srcdir)/install.sh -c|' Makefile.tem > Makefile.xx
! 954: rm -f Makefile.tem
! 955: mv Makefile.xx Makefile.tem
! 956: fi
! 957:
! 958: # Set EXTRA_HEADERS according to header_files.
! 959: # This substitutes for lots of t-* files.
! 960: if [ x$header_files = x ]
! 961: then true
! 962: else
! 963: rm -f Makefile.xx
! 964: sed "s/^EXTRA_HEADERS =/EXTRA_HEADERS = $header_files/" Makefile.tem > Makefile.xx
! 965: rm -f Makefile.tem
! 966: mv Makefile.xx Makefile.tem
! 967: fi
! 968:
! 969: # Add a definition of USE_COLLECT2 if system wants one.
! 970: # Also tell toplev.c what to do.
! 971: # This substitutes for lots of t-* files.
! 972: if [ x$use_collect2 = x ]
1.1 root 973: then true
974: else
975: rm -f Makefile.xx
1.1.1.3 ! root 976: (echo "USE_COLLECT2 = ld"; echo "MAYBE_USE_COLLECT2 = -DUSE_COLLECT2")\
! 977: | cat - Makefile.tem > Makefile.xx
1.1 root 978: rm -f Makefile.tem
979: mv Makefile.xx Makefile.tem
980: fi
981:
982: # Conditionalize the makefile for this target machine.
983: if [ -f ${srcdir}/config/${tmake_file} ]
984: then
985: rm -f Makefile.xx
986: sed -e "/####/ r ${srcdir}/config/${tmake_file}" Makefile.tem > Makefile.xx
987: echo "Merged ${tmake_file}."
988: rm -f Makefile.tem
989: mv Makefile.xx Makefile.tem
990: else
991: # Say in the makefile that there is no tmake_file,
992: # by using a name which (when interpreted relative to $srcdir/config)
993: # will duplicate another dependency: $srcdir/Makefile.in.
994: tmake_file=../Makefile.in
995: fi
996:
997: # Remove all formfeeds, since some Makes get confused by them.
998: # Also arrange to give the variables `target' and `host_xmake_file'
999: # and `tmake_file' the same values in the Makefile
1000: # that they have in this script.
1001: rm -f Makefile.xx
1002: sed -e "s///" -e "s/^target=.*$/target=${target}/" \
1003: -e "s|^xmake_file=.*$|xmake_file=${host_xmake_file}|" \
1004: -e "s|^tmake_file=.*$|tmake_file=${tmake_file}|" \
1005: Makefile.tem > Makefile.xx
1006: rm -f Makefile.tem
1007: mv Makefile.xx Makefile.tem
1008:
1009: # Install Makefile for real, after making final changes.
1010: # Define macro CROSS_COMPILE in compilation if this is a cross-compiler.
1011: # Also use all.cross instead of all.internal, and add cross-make to Makefile.
1012: if [ x$host = x$target ]
1013: then
1014: rm -f Makefile
1015: mv Makefile.tem Makefile
1016: else
1017: rm -f Makefile
1018: echo "CROSS=-DCROSS_COMPILE" > Makefile
1019: sed -e "/####/ r ${srcdir}/cross-make" Makefile.tem >> Makefile
1020: rm -f Makefile.tem Makefile.xx
1021: fi
1022:
1023: echo "Created \`Makefile'."
1024:
1025: if [ xx${vint} != xx ]
1026: then
1027: vintmsg =" (vint)"
1028: fi
1029:
1030: # Describe the chosen configuration in config.status.
1031: # Make that file a shellscript which will reestablish the same configuration.
1032: echo "#!/bin/sh
1033: # GCC was configured as follows:
1034: ${srcdir}/configure" $arguments > config.status
1035: chmod a+x config.status
1036:
1037: if [ x$host = x$target ]
1038: then
1039: echo "Links are now set up for target $target."
1040: else
1041: echo "Links are now set up for host $host and target $target."
1042: fi
1043:
1044: exit 0
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.