Don't crash if with_minimal_bfd is the empty string.
[deliverable/binutils-gdb.git] / bfd / configure.in
1 # This file is a shell script that supplies the information necessary
2 # to tailor a template configure script into the configure script
3 # appropriate for this directory. For more information, check any
4 # existing configure script.
5
6 configdirs="doc"
7 srctrigger=libbfd.c
8 srcname="BFD"
9 target_dependent=true
10 host64=false
11 target64=false
12 want64=false
13
14 # per-host:
15
16 . ${srcdir}/configure.host
17
18 # Set up to make a link between the host's include file and "sysdep.h".
19 files="hosts/${my_host}.h"
20 links="sysdep.h"
21
22 if [ ! -f ${srcdir}/${files} ] ; then
23 files=../bfd/hosts/std-host.h
24 echo "[${srcname} has no specific support for host ${host} -- using std-host]"
25 fi
26
27 host_makefile_frag=
28 if [ -f ${srcdir}/config/${my_host}.mh ] ; then
29 host_makefile_frag=config/${my_host}.mh
30 fi
31
32 # per-target:
33
34 # WHEN ADDING ENTRIES TO THIS MATRIX:
35 # Make sure that the left side always has two dashes. Otherwise you
36 # can get spurious matches. Even for unambiguous cases, do this as a
37 # convention, else the table becomes a real mess to understand and maintain.
38
39 case "${target}" in
40 alpha-*-*) bfd_target=alphaosf ;;
41 a29k-*-ebmon) bfd_target=a29k-coff ;;
42 a29k-*-udi) bfd_target=a29k-coff ;;
43 a29k-*-aout) bfd_target=a29k-aout ;;
44 a29k-*-coff) bfd_target=a29k-coff ;;
45 a29k-*-sym1) bfd_target=a29k-coff ;;
46 h8300-*-*) bfd_target=h8300-coff ;;
47 h8500-*-*) bfd_target=h8500-coff ;;
48 sh-*-*) bfd_target=sh-coff ;;
49 hppa*-*-bsd*) bfd_target=hppabsd ;;
50 hppa*-*-hpux*) bfd_target=hppahpux ;;
51 hppa*-*-osf) bfd_target=hppa-elf ;;
52 i[34]86-*-sysv4*) bfd_target=i386-elf ;;
53 i[34]86-*-sysv*) bfd_target=i386-coff ;;
54 i[34]86-*-isc*) bfd_target=i386-sco ;; # gets core dump reading right
55 i[34]86-*-sco*) bfd_target=i386-sco ;;
56 i[34]86-*-bsd*) bfd_target=i386-bsd ;;
57 i[34]86-*-coff) bfd_target=i386-coff ;;
58 i[34]86-*-aix*) bfd_target=i386-coff ;;
59 i[34]86-*-elf) bfd_target=i386-elf ;;
60 i[34]86-*-linux*) bfd_target=i386-linux ;;
61 i[34]86-none-*) bfd_target=i386-coff ;;
62 i960-*-vxworks) bfd_target=i960-bout ;;
63 i960-*-aout) bfd_target=i960-bout ;;
64 i960-*-bout) bfd_target=i960-bout ;;
65 m68*-hp-bsd*) bfd_target=hp300bsd ;;
66 m68*-*-aout) bfd_target=m68k-aout ;;
67 m68*-*-coff) bfd_target=m68k-coff ;;
68 m68*-*-hpux*) bfd_target=hp300hpux ;;
69 m68*-*-os68k) bfd_target=m68k-aout ;;
70 m68*-*-sunos*) bfd_target=m68k-aout ;;
71 m68*-*-sysv*) bfd_target=m68k-coff ;;
72 m68*-*-vxworks*) bfd_target=m68k-aout ;;
73 m68*-ericsson-*) bfd_target=m68k-aout ;;
74 m68*-netx-*) bfd_target=m68k-aout ;;
75 m88k-*-*) bfd_target=m88k-coff ;;
76 mips-big-*) bfd_target=bigmips ;;
77 mips-dec-bsd*) bfd_target=mipsdecbsd ;;
78 mips-dec-*) bfd_target=decstation ;;
79 mips-*-ecoffl*) bfd_target=decstation ;;
80 mips-*-ecoff*) bfd_target=bigmips ;;
81 mips-sgi-*) bfd_target=bigmips ;;
82 mips-*-sysv*) bfd_target=riscos ;;
83 mips-*-riscos*) bfd_target=riscos ;;
84 mips-*-bsd*) bfd_target=noop ;;
85 rs6000-*-*) bfd_target=rs6000 ;;
86 sparc-*-solaris2*) bfd_target=sparc-elf ;;
87 sparc-*-sysv4*) bfd_target=sparc-elf ;;
88 sparc64-*-aout*) bfd_target=sparc-aout ; target64=true ;; # v9
89 sparc64-*-elf*) bfd_target=sparc64-elf ; target64=true ;; # v9
90 sparc*-*-*) bfd_target=sparc-aout ;;
91 tahoe-*-*) bfd_target=tahoe ;;
92 vax-*-vms) bfd_target=vax-vms ;;
93 vax-*-*) bfd_target=vax ;;
94 we32k-*-*) bfd_target=we32k ;;
95 z8k*-*-*) bfd_target=z8k-coff ;;
96
97 *-*-aout) bfd_target=${target_cpu}-aout ;;
98 *-*-bsd*) bfd_target=${target_cpu}-aout ;;
99 *-*-sysv4*) bfd_target=${target_cpu}-elf ;;
100 *-*-solaris2*) bfd_target=${target_cpu}-elf ;;
101 *-*-go32) bfd_target=${target_cpu}-aout ;;
102 *-*-sysv*) bfd_target=${target_cpu}-coff ;;
103
104 *-*-aout64) bfd_target=${target_cpu}-aout64 ; target64=true ;;
105 *-*-elf64) bfd_target=${target_cpu}-elf64 ; target64=true ;;
106
107 *-adobe-*) bfd_target=adobe ;;
108 *-sony-*) bfd_target=news ;;
109 *-intel-*) bfd_target=${target_cpu}-coff ;;
110 *-stratus-*) bfd_target=${target_cpu}-elf ;;
111 *-cbm-*) bfd_target=${target_cpu}-elf ;;
112 *-ncr-*) bfd_target=${target_cpu}-elf ;;
113 *-tandem-*) bfd_target=st2000 ;;
114 esac
115
116 if [ ! -f ${srcdir}/config/${bfd_target}.mt ] ; then
117 if [ -n "${bfd_target}" ] ; then
118 echo '***' No file ${srcdir}/config/${bfd_target}.mt 1>&2
119 fi
120 echo '***' BFD does not support target ${target} 1>&2
121 echo '***' Look in bfd/configure.in for supported targets 1>&2
122 exit 1
123 fi
124 target_makefile_frag=config/${bfd_target}.mt
125
126 # We don't do any links based on the target system, just very minor makefile
127 # config.
128
129 # post-target:
130
131 rm -f Makefile.tmp Makefile.2
132 mv Makefile Makefile.tmp
133
134 case ${with_minimal_bfd} in
135 yes) echo MINIMIZE=1 > Makefile.2 ;;
136 no | "") echo MINIMIZE=0 > Makefile.2 ;;
137 *)
138 echo "*** bad value \"${with_minimal_bfd}\" for minimal-bfd flag; ignored" 1>&2
139 with_minimal_bfd=no
140 echo MINIMIZE=0 > Makefile.2
141 ;;
142 esac
143
144 case ${with_64_bit_bfd} in
145 yes) want64=true ;;
146 no | "") want64=false ;;
147 *)
148 echo "*** bad value \"${with_64_bit_bfd}\" for 64-bit-bfd flag; ignored" 1>&2
149 ;;
150 esac
151
152 case ${host64}-${target64}-${want64} in
153 *true*)
154 echo WORDSIZE=64 >> Makefile.2
155 echo 'ALL_BACKENDS = $(BFD64_BACKENDS) $(BFD32_BACKENDS)' >> Makefile.2
156 ;;
157 false-false-false)
158 echo WORDSIZE=32 >> Makefile.2
159 echo 'ALL_BACKENDS = $(BFD32_BACKENDS)' >> Makefile.2
160 ;;
161 esac
162
163 if [ x${with_minimal_bfd} = xyes ] \
164 && grep -s TARGET_BACKENDS ${srcdir}/${target_makefile_frag} ; then
165 echo 'BFD_BACKENDS = $(TARGET_BACKENDS)' >> Makefile.2
166 else
167 echo 'BFD_BACKENDS = $(ALL_BACKENDS)' >> Makefile.2
168 fi
169
170 if [ x${with_minimal_bfd} = xyes ] \
171 && grep -s TARGET_CPUS ${srcdir}/${target_makefile_frag} ; then
172 echo 'BFD_MACHINES = $(TARGET_CPUS)' >> Makefile.2
173 else
174 echo 'BFD_MACHINES = $(ALL_MACHINES)' >> Makefile.2
175 fi
176
177 cat Makefile.tmp >> Makefile.2
178 rm -f Makefile.tmp
179 mv Makefile.2 Makefile
This page took 0.032765 seconds and 4 git commands to generate.