Commit | Line | Data |
---|---|---|
252b5132 RH |
1 | dnl Process this file with autoconf to produce a configure script. |
2 | dnl | |
3 | ||
4 | AC_PREREQ(2.13) | |
5 | AC_INIT(z8k-dis.c) | |
6 | ||
7 | AC_CANONICAL_SYSTEM | |
8 | AC_ISC_POSIX | |
9 | ||
10 | # We currently only use the version number for the name of any shared | |
11 | # library. For user convenience, we always use the same version | |
12 | # number that BFD is using. | |
13 | changequote(,)dnl | |
14 | BFD_VERSION=`grep INIT_AUTOMAKE ${srcdir}/../bfd/configure.in | sed -n -e 's/[ ]//g' -e 's/^.*,\(.*\)).*$/\1/p'` | |
15 | changequote([,])dnl | |
16 | ||
17 | AM_INIT_AUTOMAKE(opcodes, ${BFD_VERSION}) | |
18 | ||
19 | dnl These must be called before AM_PROG_LIBTOOL, because it may want | |
20 | dnl to call AC_CHECK_PROG. | |
21 | AC_CHECK_TOOL(AR, ar) | |
22 | AC_CHECK_TOOL(RANLIB, ranlib, :) | |
23 | ||
24 | dnl Default to a non shared library. This may be overridden by the | |
25 | dnl configure option --enable-shared. | |
26 | AM_DISABLE_SHARED | |
27 | ||
28 | AM_PROG_LIBTOOL | |
29 | ||
30 | AC_ARG_ENABLE(targets, | |
31 | [ --enable-targets alternative target configurations], | |
32 | [case "${enableval}" in | |
33 | yes | "") AC_ERROR(enable-targets option must specify target names or 'all') | |
34 | ;; | |
35 | no) enable_targets= ;; | |
36 | *) enable_targets=$enableval ;; | |
37 | esac])dnl | |
38 | AC_ARG_ENABLE(commonbfdlib, | |
39 | [ --enable-commonbfdlib build shared BFD/opcodes/libiberty library], | |
40 | [case "${enableval}" in | |
41 | yes) commonbfdlib=true ;; | |
42 | no) commonbfdlib=false ;; | |
43 | *) AC_MSG_ERROR([bad value ${enableval} for opcodes commonbfdlib option]) ;; | |
44 | esac])dnl | |
45 | ||
46 | AM_CONFIG_HEADER(config.h:config.in) | |
47 | ||
48 | if test -z "$target" ; then | |
49 | AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) | |
50 | fi | |
51 | AC_ARG_PROGRAM | |
52 | ||
53 | AM_MAINTAINER_MODE | |
54 | AC_EXEEXT | |
55 | ||
56 | # host-specific stuff: | |
57 | ||
58 | AC_PROG_CC | |
59 | ||
60 | ALL_LINGUAS= | |
61 | CY_GNU_GETTEXT | |
62 | ||
63 | . ${srcdir}/../bfd/configure.host | |
64 | ||
65 | AC_SUBST(HDEFINES) | |
66 | AC_PROG_INSTALL | |
67 | ||
68 | AC_CHECK_HEADERS(string.h strings.h stdlib.h) | |
69 | ||
70 | ||
71 | using_cgen=no | |
72 | ||
73 | # Horrible hacks to build DLLs on Windows. | |
74 | WIN32LDFLAGS= | |
75 | WIN32LIBADD= | |
76 | case "${host}" in | |
77 | *-*-cygwin*) | |
78 | if test "$enable_shared" = "yes"; then | |
79 | WIN32LDFLAGS="-no-undefined" | |
80 | WIN32LIBADD="-L`pwd`/../bfd -lbfd -L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin" | |
81 | fi | |
82 | ;; | |
83 | esac | |
84 | AC_SUBST(WIN32LDFLAGS) | |
85 | AC_SUBST(WIN32LIBADD) | |
86 | ||
87 | # target-specific stuff: | |
88 | ||
89 | # Canonicalize the secondary target names. | |
90 | if test -n "$enable_targets" ; then | |
91 | for targ in `echo $enable_targets | sed 's/,/ /g'` | |
92 | do | |
6d83c84b | 93 | result=`$ac_config_sub $targ 2>/dev/null` |
252b5132 RH |
94 | if test -n "$result" ; then |
95 | canon_targets="$canon_targets $result" | |
96 | else | |
97 | # Allow targets that config.sub doesn't recognize, like "all". | |
98 | canon_targets="$canon_targets $targ" | |
99 | fi | |
100 | done | |
101 | fi | |
102 | ||
103 | all_targets=false | |
104 | selarchs= | |
105 | for targ in $target $canon_targets | |
106 | do | |
107 | if test "x$targ" = "xall" ; then | |
108 | all_targets=true | |
109 | else | |
110 | . $srcdir/../bfd/config.bfd | |
111 | selarchs="$selarchs $targ_archs" | |
112 | fi | |
113 | done | |
114 | ||
115 | # Utility var, documents generic cgen support files. | |
116 | ||
117 | cgen_files="cgen-opc.lo cgen-asm.lo cgen-dis.lo" | |
118 | ||
119 | # We don't do any links based on the target system, just makefile config. | |
120 | ||
121 | if test x${all_targets} = xfalse ; then | |
122 | ||
123 | # Target architecture .o files. | |
124 | ta= | |
125 | ||
126 | for arch in $selarchs | |
127 | do | |
128 | ad=`echo $arch | sed -e s/bfd_//g -e s/_arch//g` | |
129 | archdefs="$archdefs -DARCH_$ad" | |
130 | case "$arch" in | |
131 | bfd_a29k_arch) ta="$ta a29k-dis.lo" ;; | |
132 | bfd_alliant_arch) ;; | |
133 | bfd_alpha_arch) ta="$ta alpha-dis.lo alpha-opc.lo" ;; | |
134 | bfd_arc_arch) ta="$ta arc-dis.lo arc-opc.lo" ;; | |
135 | bfd_arm_arch) ta="$ta arm-dis.lo" ;; | |
adde6300 | 136 | bfd_avr_arch) ta="$ta avr-dis.lo" ;; |
252b5132 RH |
137 | bfd_convex_arch) ;; |
138 | bfd_d10v_arch) ta="$ta d10v-dis.lo d10v-opc.lo" ;; | |
139 | bfd_d30v_arch) ta="$ta d30v-dis.lo d30v-opc.lo" ;; | |
140 | bfd_fr30_arch) ta="$ta fr30-asm.lo fr30-desc.lo fr30-dis.lo fr30-ibld.lo fr30-opc.lo" using_cgen=yes ;; | |
141 | bfd_h8300_arch) ta="$ta h8300-dis.lo" ;; | |
142 | bfd_h8500_arch) ta="$ta h8500-dis.lo" ;; | |
143 | bfd_hppa_arch) ta="$ta hppa-dis.lo" ;; | |
5b93d8bb | 144 | bfd_i370_arch) ta="$ta i370-dis.lo i370-opc.lo" ;; |
252b5132 RH |
145 | bfd_i386_arch) ta="$ta i386-dis.lo" ;; |
146 | bfd_i860_arch) ;; | |
147 | bfd_i960_arch) ta="$ta i960-dis.lo" ;; | |
148 | bfd_m32r_arch) ta="$ta m32r-asm.lo m32r-desc.lo m32r-dis.lo m32r-ibld.lo m32r-opc.lo m32r-opinst.lo" using_cgen=yes ;; | |
149 | bfd_m68k_arch) ta="$ta m68k-dis.lo m68k-opc.lo" ;; | |
150 | bfd_m88k_arch) ta="$ta m88k-dis.lo" ;; | |
151 | bfd_mcore_arch) ta="$ta mcore-dis.lo" ;; | |
152 | bfd_mips_arch) ta="$ta mips-dis.lo mips-opc.lo mips16-opc.lo" ;; | |
153 | bfd_mn10200_arch) ta="$ta m10200-dis.lo m10200-opc.lo" ;; | |
154 | bfd_mn10300_arch) ta="$ta m10300-dis.lo m10300-opc.lo" ;; | |
155 | bfd_ns32k_arch) ta="$ta ns32k-dis.lo" ;; | |
1e608f98 | 156 | bfd_pj_arch) ta="$ta pj-dis.lo pj-opc.lo" ;; |
252b5132 RH |
157 | bfd_powerpc_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;; |
158 | bfd_pyramid_arch) ;; | |
159 | bfd_romp_arch) ;; | |
160 | bfd_rs6000_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;; | |
161 | bfd_sh_arch) ta="$ta sh-dis.lo" ;; | |
162 | bfd_sparc_arch) ta="$ta sparc-dis.lo sparc-opc.lo" ;; | |
163 | bfd_tahoe_arch) ;; | |
164 | bfd_tic30_arch) ta="$ta tic30-dis.lo" ;; | |
165 | bfd_tic80_arch) ta="$ta tic80-dis.lo tic80-opc.lo" ;; | |
166 | bfd_v850_arch) ta="$ta v850-opc.lo v850-dis.lo" ;; | |
167 | bfd_v850e_arch) ta="$ta v850-opc.lo v850-dis.lo" ;; | |
168 | bfd_v850ea_arch) ta="$ta v850-opc.lo v850-dis.lo" ;; | |
169 | bfd_vax_arch) ta="$ta vax-dis.lo" ;; | |
170 | bfd_w65_arch) ta="$ta w65-dis.lo" ;; | |
171 | bfd_we32k_arch) ;; | |
172 | bfd_z8k_arch) ta="$ta z8k-dis.lo" ;; | |
173 | ||
174 | "") ;; | |
175 | *) AC_MSG_ERROR(*** unknown target architecture $arch) ;; | |
176 | esac | |
177 | done | |
178 | ||
179 | if test $using_cgen = yes ; then | |
180 | ta="$ta $cgen_files" | |
181 | fi | |
182 | ||
183 | # Weed out duplicate .o files. | |
184 | f="" | |
185 | for i in $ta ; do | |
186 | case " $f " in | |
187 | *" $i "*) ;; | |
188 | *) f="$f $i" ;; | |
189 | esac | |
190 | done | |
191 | ta="$f" | |
192 | ||
193 | # And duplicate -D flags. | |
194 | f="" | |
195 | for i in $archdefs ; do | |
196 | case " $f " in | |
197 | *" $i "*) ;; | |
198 | *) f="$f $i" ;; | |
199 | esac | |
200 | done | |
201 | archdefs="$f" | |
202 | ||
203 | BFD_MACHINES="$ta" | |
204 | ||
205 | else # all_targets is true | |
206 | archdefs=-DARCH_all | |
207 | BFD_MACHINES='$(ALL_MACHINES)' | |
208 | fi | |
209 | ||
210 | AC_SUBST(archdefs) | |
211 | AC_SUBST(BFD_MACHINES) | |
212 | ||
213 | AC_OUTPUT(Makefile po/Makefile.in:po/Make-in, | |
214 | [sed -e '/POTFILES =/r po/POTFILES' po/Makefile.in > po/Makefile]) |