Various changes
[deliverable/binutils-gdb.git] / sim / ppc / configure.in
1 dnl Process this file with autoconf to produce a configure script.
2 AC_PREREQ(2.3)dnl
3 AC_INIT(Makefile.in)
4
5 AC_ARG_ENABLE(sim-cflags,
6 [ --enable-sim-cflags=opts Extra CFLAGS for use in building simulator],
7 [case "${enableval}" in
8 yes) sim_cflags="-O2 -fomit-frame-pointer";;
9 no) sim_cflags="";;
10 *) sim_cflags=`echo "${enableval}" | sed -e "s/,/ /g"`;;
11 esac
12 if test x"$silent" != x"yes" && test x"$sim_cflags" != x""; then
13 echo "Setting sim cflags = $sim_cflags" 6>&1
14 fi],[sim_cflags=""])dnl
15
16 AC_ARG_ENABLE(sim-warnings,
17 [ --enable-sim-warnings=opts Extra CFLAGS for turning on compiler warnings except for idecode.o, semantics.o and psim.o],
18 [case "${enableval}" in
19 yes) sim_warnings="-Wall -Wpointer-arith -Wbad-function-cast -Wmissing-prototypes -Wmissing-declarations";;
20 no) sim_warnings="-w";;
21 *) sim_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
22 esac
23 if test x"$silent" != x"yes" && test x"$sim_warnings" != x""; then
24 echo "Setting warning flags = $sim_warnings" 6>&1
25 fi],[sim_warnings=""])dnl
26
27 AC_ARG_ENABLE(sim-config,
28 [ --enable-sim-config=file Override default config file],
29 [case "${enableval}" in
30 yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-config=file");;
31 *) if test -f "${srcdir}/${enableval}"; then
32 sim_config="${enableval}";
33 elif test -f "${srcdir}/${enableval}-config.h"; then
34 sim_config="${enableval}-config.h"
35 else
36 AC_MSG_ERROR("Config file $enableval was not found");
37 sim_config=std-config.h
38 fi;;
39 esac
40 if test x"$silent" != x"yes" && test x"$sim_config" != x""; then
41 echo "Setting config flags = $sim_config" 6>&1
42 fi],[sim_config="std-config.h"
43 if test x"$silent" != x"yes"; then
44 echo "Setting config flags = $sim_config" 6>&1
45 fi])dnl
46
47 AC_ARG_ENABLE(sim-opcode,
48 [ --enable-sim-opcode=which Override default opcode lookup.],
49 [case "${enableval}" in
50 yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-opcode=file");;
51 *) if test -f "${srcdir}/${enableval}"; then
52 sim_opcode="${enableval}"
53 elif test -f "${srcdir}/ppc-opcode-${enableval}"; then
54 sim_opcode="ppc-opcode-${enableval}"
55 else
56 AC_MSG_ERROR("File $enableval is not an opcode rules file");
57 sim_opcode="ppc-opcode-complex"
58 fi;;
59 esac
60 if test x"$silent" != x"yes" && test x"$sim_opcode" != x""; then
61 echo "Setting opcode flags = $sim_opcode" 6>&1
62 fi],[sim_opcode="ppc-opcode-complex"
63 if test x"$silent" != x"yes"; then
64 echo "Setting opcode flags = $sim_opcode"
65 fi])dnl
66
67 AC_ARG_ENABLE(sim-switch,
68 [ --enable-sim-switch Use a switch instead of a table for instruction call.],
69 [case "${enableval}" in
70 yes) sim_switch="-s";;
71 no) sim_switch="";;
72 *) AC_MSG_ERROR("--enable-sim-switch does not take a value"); sim_switch="";;
73 esac
74 if test x"$silent" != x"yes" && test x"$sim_switch" != x""; then
75 echo "Setting switch flags = $sim_switch" 6>&1
76 fi],[sim_switch="-s";
77 if test x"$silent" != x"yes"; then
78 echo "Setting switch flags = $sim_switch" 6>&1
79 fi])dnl
80
81 AC_ARG_ENABLE(sim-duplicate,
82 [ --enable-sim-duplicate Expand (duplicate) semantic functions.],
83 [case "${enableval}" in
84 yes) sim_dup="-e";;
85 no) sim_dup="";;
86 *) AC_MSG_ERROR("--enable-sim-duplicate does not take a value"); sim_dup="";;
87 esac
88 if test x"$silent" != x"yes" && test x"$sim_dup" != x""; then
89 echo "Setting duplicate flags = $sim_dup" 6>&1
90 fi],[sim_dup="-e"
91 if test x"$silent" != x"yes"; then
92 echo "Setting duplicate flags = $sim_dup" 6>&1
93 fi])dnl
94
95 AC_ARG_ENABLE(sim-filter,
96 [ --enable-sim-filter=rule Specify filter rules.],
97 [case "${enableval}" in
98 yes) AC_MSG_ERROR("--enable-sim-filter must be specified with a rule to filter or no"); sim_filter="";;
99 no) sim_filter="";;
100 *) sim_filter="-f $enableval";;
101 esac
102 if test x"$silent" != x"yes" && test x"$sim_filter" != x""; then
103 echo "Setting filter flags = $sim_filter" 6>&1
104 fi],[sim_filter="-f 64"
105 if test x"$silent" != x"yes"; then
106 echo "Setting filter flags = $sim_filter" 6>&1
107 fi])dnl
108
109 AC_ARG_ENABLE(sim-icache,
110 [ --enable-sim-icache=size Specify instruction cache size.],
111 icache=""
112 [case "${enableval}" in
113 yes) sim_icache="-r 1024"; icache="1024";;
114 no) sim_icache="";;
115 *) sim_icache="-r ${enableval}"; icache="${enableval}";;
116 esac
117 if test x"$silent" != x"yes" && test x"$icache" != x""; then
118 echo "Setting instruction cache size to $icache"
119 fi],[sim_icache="-r 1024"
120 if test x"$silent" != x"yes"; then
121 echo "Setting instruction cache size to 1024"
122 fi])dnl
123
124 AC_ARG_ENABLE(sim-inline,
125 [ --enable-sim-inline=inlines Specify which functions should be inlined.],
126 [sim_inline=""
127 case "$enableval" in
128 no) sim_inline="";;
129 0) sim_inline="-DDEFAULT_INLINE=0";;
130 yes | 2) sim_inline="-DDEFAULT_INLINE=2";;
131 1) sim_inline="-DDEFAULT_INLINE=1";;
132 *) for x in `echo "$enableval" | sed -e "s/,/ /g"`; do
133 new_flag=""
134 case "$x" in
135 *_INLINE=*) new_flag="-D$x";;
136 *_INLINE) new_flag="-D$x=2";;
137 *=*) new_flag=`echo "$x" | sed -e "s/=/_INLINE=/" -e "s/^/-D/"`;;
138 *) new_flag="-D$x""_INLINE=2";;
139 esac
140 if test x"$sim_inline" = x""; then
141 sim_inline="$new_flag"
142 else
143 sim_inline="$sim_inline $new_flag"
144 fi
145 done;;
146 esac
147 if test x"$silent" != x"yes" && test x"$sim_inline" != x""; then
148 echo "Setting inline flags = $sim_inline" 6>&1
149 fi],[if test x"$GCC" != ""; then
150 sim_inline="-DDEFAULT_INLINE=1"
151 if test x"$silent" != x"yes"; then
152 echo "Setting inline flags = $sim_inline" 6>&1
153 fi
154 else
155 sim_inline=""
156 fi])dnl
157
158 AC_ARG_ENABLE(sim-bswap,
159 [ --enable-sim-bswap Use the BSWAP instruction on Intel 486s and Pentiums.],
160 [case "${enableval}" in
161 yes) sim_bswap="-DWITH_BSWAP=1";;
162 no) sim_bswap="-DWITH_BSWAP=0";;
163 *) AC_MSG_ERROR("--enable-sim-bswap does not take a value"); sim_bswap="";;
164 esac
165 if test x"$silent" != x"yes" && test x"$sim_bswap" != x""; then
166 echo "Setting bswap flags = $sim_bswap" 6>&1
167 fi],[sim_bswap=""])dnl
168
169 AC_ARG_ENABLE(sim-endian,
170 [ --enable-sim-endian=endian Specify target byte endian orientation.],
171 [case "${enableval}" in
172 yes) case "$target" in
173 *powerpc-*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";;
174 *powerpcle-*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";;
175 *) echo "Unknown target $target" 1>&6; sim_endian="-DWITH_TARGET_BYTE_ORDER=0";;
176 esac;;
177 no) sim_endian="-DWITH_TARGET_BYTE_ORDER=0";;
178 b*|B*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";;
179 l*|L*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";;
180 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-endian"); sim_endian="";;
181 esac
182 if test x"$silent" != x"yes" && test x"$sim_endian" != x""; then
183 echo "Setting endian flags = $sim_endian" 6>&1
184 fi],[sim_endian=""])dnl
185
186 AC_ARG_ENABLE(sim-hostendian,
187 [ --enable-sim-hostendain=end Specify host byte endian orientation.],
188 [case "${enableval}" in
189 no) sim_hostendian="-DWITH_HOST_BYTE_ORDER=0";;
190 b*|B*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=BIG_ENDIAN";;
191 l*|L*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=LITTLE_ENDIAN";;
192 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-hostendian"); sim_hostendian="";;
193 esac
194 if test x"$silent" != x"yes" && test x"$sim_hostendian" != x""; then
195 echo "Setting hostendian flags = $sim_hostendian" 6>&1
196 fi],[sim_hostendian=""])dnl
197
198 AC_ARG_ENABLE(sim-smp,
199 [ --enable-sim-smp=n Specify number of processors to configure for.],
200 [case "${enableval}" in
201 yes) sim_smp="-DWITH_SMP=2";;
202 no) sim_smp="-DWITH_SMP=0";;
203 *) sim_smp="-DWITH_SMP=$enableval";;
204 esac
205 if test x"$silent" != x"yes" && test x"$sim_smp" != x""; then
206 echo "Setting smp flags = $sim_smp" 6>&1
207 fi],[sim_smp="-DWITH_SMP=0"
208 if test x"$silent" != x"yes"; then
209 echo "Setting smp flags = $sim_smp" 6>&1
210 fi])dnl
211
212 AC_ARG_ENABLE(sim-bitsize,
213 [ --enable-sim-bitsize=n Specify target bitsize (32 or 64).],
214 [case "${enableval}" in
215 32|64) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=$enableval";;
216 *) AC_MSG_ERROR("--enable-sim-bitsize was given $enableval, expected 32 or 64"); sim_bitsize="";;
217 esac
218 if test x"$silent" != x"yes" && test x"$sim_bitsize" != x""; then
219 echo "Setting bitsize flags = $sim_bitsize" 6>&1
220 fi],[sim_bitsize=""])dnl
221
222 AC_ARG_ENABLE(sim-hostbitsize,
223 [ --enable-sim-hostbitsize=32|64 Specify host bitsize (32 or 64).],
224 [case "${enableval}" in
225 32|64) sim_hostbitsize="-DWITH_HOST_WORD_BITSIZE=$enableval";;
226 *) AC_MSG_ERROR("--enable-sim-hostbitsize was given $enableval, expected 32 or 64"); sim_hostbitsize="";;
227 esac
228 if test x"$silent" != x"yes" && test x"$sim_hostbitsize" != x""; then
229 echo "Setting hostbitsize flags = $sim_hostbitsize" 6>&1
230 fi],[sim_hostbitsize=""])dnl
231
232 AC_ARG_ENABLE(sim-env,
233 [ --enable-sim-env=env Specify target environment (operating, virtual, user).],
234 [case "${enableval}" in
235 operating | os | oea) sim_env="-DWITH_ENVIRONMENT=OPERATING_ENVIRONMENT";;
236 virtual | vea) sim_env="-DWITH_ENVIRONMENT=VIRTUAL_ENVIRONMENT";;
237 user | uea) sim_env="-DWITH_ENVIRONMENT=USER_ENVIRONMENT";;
238 no) sim_env="-DWITH_ENVIRONMENT=0";;
239 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-env"); sim_env="";;
240 esac
241 if test x"$silent" != x"yes" && test x"$sim_env" != x""; then
242 echo "Setting env flags = $sim_env" 6>&1
243 fi],[sim_env=""])dnl
244
245 AC_ARG_ENABLE(sim-timebase,
246 [ --enable-sim-timebase Specify whether the PPC timebase is supported.],
247 [case "${enableval}" in
248 yes) sim_timebase="-DWITH_TIME_BASE=1";;
249 no) sim_timebase="-DWITH_TIME_BASE=0";;
250 *) AC_MSG_ERROR("--enable-sim-timebase does not take a value"); sim_timebase="";;
251 esac
252 if test x"$silent" != x"yes" && test x"$sim_timebase" != x""; then
253 echo "Setting timebase flags = $sim_timebase" 6>&1
254 fi],[sim_timebase=""])dnl
255
256 AC_ARG_ENABLE(sim-alignment,
257 [ --enable-sim-alignment=align Specify strict or nonstrict alignment.],
258 [case "${enableval}" in
259 yes | strict | STRICT) sim_alignment="-DWITH_ALIGNMENT=STRICT_ALIGNMENT";;
260 no | nonstrict | NONSTRICT) sim_alignment="-DWITH_ALIGNMENT=NONSTRICT_ALIGNMENT";;
261 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-alignment"); sim_alignment="";;
262 esac
263 if test x"$silent" != x"yes" && test x"$sim_alignment" != x""; then
264 echo "Setting alignment flags = $sim_alignment" 6>&1
265 fi],[sim_alignment=""])dnl
266
267 AC_ARG_ENABLE(sim-trace,
268 [ --enable-sim-trace Specify whether tracing is supported.],
269 [case "${enableval}" in
270 yes) sim_trace="-DWITH_TRACE=1";;
271 no) sim_trace="-DWITH_TRACE=0";;
272 *) AC_MSG_ERROR("--enable-sim-trace does not take a value"); sim_trace="";;
273 esac
274 if test x"$silent" != x"yes" && test x"$sim_trace" != x""; then
275 echo "Setting trace flags = $sim_trace" 6>&1
276 fi],[sim_trace=""])dnl
277
278 AC_ARG_ENABLE(sim-assert,
279 [ --enable-sim-assert Specify whether to perform random assertions.],
280 [case "${enableval}" in
281 yes) sim_assert="-DWITH_ASSERT=1";;
282 no) sim_assert="-DWITH_ASSERT=0";;
283 *) AC_MSG_ERROR("--enable-sim-assert does not take a value"); sim_assert="";;
284 esac
285 if test x"$silent" != x"yes" && test x"$sim_assert" != x""; then
286 echo "Setting assert flags = $sim_assert" 6>&1
287 fi],[sim_assert=""])dnl
288
289 AC_ARG_ENABLE(sim-reserved-bits,
290 [ --enable-sim-reserved-bits Specify whether to check reserved bits in instruction.],
291 [case "${enableval}" in
292 yes) sim_reserved="-DWITH_RESERVED_BITS=1";;
293 no) sim_reserved="-DWITH_RESERVED_BITS=0";;
294 *) AC_MSG_ERROR("--enable-sim-reserved-bits does not take a value"); sim_reserved="";;
295 esac
296 if test x"$silent" != x"yes" && test x"$sim_reserved" != x""; then
297 echo "Setting reserved flags = $sim_reserved" 6>&1
298 fi],[sim_reserved=""])dnl
299
300 AC_ARG_ENABLE(sim-float,
301 [ --enable-sim-float Specify whether to use host floating point or simulate.],
302 [case "${enableval}" in
303 yes | hard) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
304 no | soft) sim_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
305 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-float"); sim_float="";;
306 esac
307 if test x"$silent" != x"yes" && test x"$sim_float" != x""; then
308 echo "Setting float flags = $sim_float" 6>&1
309 fi],[sim_float=""])dnl
310
311 AC_ARG_ENABLE(sim-monitor,
312 [ --enable-sim-monitor=mon Specify whether to enable monitoring events.],
313 [case "${enableval}" in
314 yes) sim_mon="-DWITH_MON='MONITOR_INSTRUCTION_ISSUE | MONITOR_LOAD_STORE_UNIT'";;
315 no) sim_mon="-DWITH_MON=0";;
316 instruction) sim_mon="-DWITH_MON=MONITOR_INSTRUCTION_ISSUE";;
317 memory) sim_mon="-DWITH_MON=MONITOR_LOAD_STORE_UNIT";;
318 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-mon"); sim_env="";;
319 esac
320 if test x"$silent" != x"yes" && test x"$sim_mon" != x""; then
321 echo "Setting monitor flags = $sim_mon" 6>&1
322 fi],[sim_mon=""])dnl
323
324 AC_ARG_ENABLE(sim-function-unit,
325 [ --enable-sim-function-unit Specify whether detailed functional unit support is built.],
326 [case "${enableval}" in
327 yes) sim_func="-DWITH_FUNCTION_UNIT=1";;
328 no) sim_func="-DWITH_FUNCTION_UNIT=0";;
329 *) AC_MSG_ERROR("--enable-sim-function-unit does not take a value"); sim_func="";;
330 esac
331 if test x"$silent" != x"yes" && test x"$sim_func" != x""; then
332 echo "Setting function-unit flags = $sim_func" 6>&1
333 fi],[sim_func=""])dnl
334
335 AC_ARG_ENABLE(sim-model,
336 [ --enable-sim-model=which Specify PowerPC to model.],
337 [case "${enableval}" in
338 yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-model=model");;
339 *) sim_model="-DWITH_MODEL=${enableval}";;
340 esac
341 if test x"$silent" != x"yes" && test x"$sim_model" != x""; then
342 echo "Setting model flags = $sim_model" 6>&1
343 fi],[sim_model=""])dnl
344
345 AC_ARG_ENABLE(sim-default-model,
346 [ --enable-sim-default-model=which Specify default PowerPC to model.],
347 [case "${enableval}" in
348 yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-default-model=model");;
349 *) sim_default_model="-DWITH_DEFAULT_MODEL=${enableval}";;
350 esac
351 if test x"$silent" != x"yes" && test x"$sim_default_model" != x""; then
352 echo "Setting default-model flags = $sim_default_model" 6>&1
353 fi],[sim_model=""])dnl
354
355 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/../..)
356 AC_CANONICAL_SYSTEM
357 AC_ARG_PROGRAM
358
359 . ${srcdir}/../../bfd/configure.host
360
361 AC_CONFIG_HEADER(config.h:config.in)
362
363 AC_PROG_CC
364 AC_SUBST(CFLAGS)
365 AC_SUBST(HDEFINES)
366 AR=${AR-ar}
367 AC_SUBST(AR)
368 AC_PROG_RANLIB
369 AC_SUBST(sim_cflags)
370 AC_SUBST(sim_warnings)
371 AC_SUBST(sim_config)
372 AC_SUBST(sim_opcode)
373 AC_SUBST(sim_switch)
374 AC_SUBST(sim_dup)
375 AC_SUBST(sim_filter)
376 AC_SUBST(sim_icache)
377 AC_SUBST(sim_inline)
378 AC_SUBST(sim_bswap)
379 AC_SUBST(sim_endian)
380 AC_SUBST(sim_hostendian)
381 AC_SUBST(sim_smp)
382 AC_SUBST(sim_bitsize)
383 AC_SUBST(sim_hostbitsize)
384 AC_SUBST(sim_env)
385 AC_SUBST(sim_timebase)
386 AC_SUBST(sim_alignment)
387 AC_SUBST(sim_float)
388 AC_SUBST(sim_trace)
389 AC_SUBST(sim_assert)
390 AC_SUBST(sim_reserved)
391 AC_SUBST(sim_monitor)
392 AC_SUBST(sim_func)
393 AC_SUBST(sim_model)
394 AC_SUBST(sim_default_model)
395
396 AC_CHECK_FUNCS(getrusage)
397
398 # Put a plausible default for CC_FOR_BUILD in Makefile.
399 AC_C_CROSS
400 if test "x$cross_compiling" = "xno"; then
401 CC_FOR_BUILD='$(CC)'
402 else
403 CC_FOR_BUILD=gcc
404 fi
405 AC_SUBST(CC_FOR_BUILD)
406
407 AC_CHECK_HEADERS(string.h strings.h stdlib.h time.h sys/times.h unistd.h sys/resource.h)
408
409 AC_OUTPUT(Makefile,
410 [case x$CONFIG_HEADERS in xconfig.h:config.in) echo > stamp-h ;; esac])
This page took 0.040932 seconds and 4 git commands to generate.