6ef7afe1fe1186aaceec8f8c0fe8d92ee77dd771
[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 [case "${enableval}" in
112 yes) sim_icache="-r 1024";;
113 no) sim_icache="";;
114 *) sim_icache="-r ${enableval}";;
115 esac],[sim_icache="-r 1024"])dnl
116
117 AC_ARG_ENABLE(sim-inline,
118 [ --enable-sim-inline=inlines Specify which functions should be inlined.],
119 [sim_inline=""
120 case "$enableval" in
121 no) sim_inline="";;
122 0) sim_inline="-DDEFAULT_INLINE=0";;
123 yes | 2) sim_inline="-DDEFAULT_INLINE=2";;
124 1) sim_inline="-DDEFAULT_INLINE=1";;
125 *) for x in `echo "$enableval" | sed -e "s/,/ /g"`; do
126 new_flag=""
127 case "$x" in
128 *_INLINE=*) new_flag="-D$x";;
129 *_INLINE) new_flag="-D$x=2";;
130 *=*) new_flag=`sed -e "s/=/_INLINE=/" -e "s/^/-D/"`;;
131 *) new_flag="-D$x""_INLINE=2";;
132 esac
133 if x"$sim_inline" = x""; then
134 sim_inline="$new_flag"
135 else
136 sim_inline="$flags $new_flag"
137 fi
138 done;;
139 esac
140 if test x"$silent" != x"yes" && test x"$sim_inline" != x""; then
141 echo "Setting inline flags = $sim_inline" 6>&1
142 fi],[if test x"$GCC" != ""; then
143 sim_inline="-DDEFAULT_INLINE=1"
144 if test x"$silent" != x"yes"; then
145 echo "Setting inline flags = $sim_inline" 6>&1
146 fi
147 else
148 sim_inline=""
149 fi])dnl
150
151 AC_ARG_ENABLE(sim-bswap,
152 [ --enable-sim-bswap Use the BSWAP instruction on Intel 486s and Pentiums.],
153 [case "${enableval}" in
154 yes) sim_bswap="-DWITH_BSWAP=1";;
155 no) sim_bswap="-DWITH_BSWAP=0";;
156 *) AC_MSG_ERROR("--enable-sim-bswap does not take a value"); sim_bswap="";;
157 esac
158 if test x"$silent" != x"yes" && test x"$sim_bswap" != x""; then
159 echo "Setting bswap flags = $sim_bswap" 6>&1
160 fi],[sim_bswap=""])dnl
161
162 AC_ARG_ENABLE(sim-endian,
163 [ --enable-sim-endian=endian Specify target byte endian orientation.],
164 [case "${enableval}" in
165 yes) case "$target" in
166 *powerpc-*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";;
167 *powerpcle-*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";;
168 *) echo "Unknown target $target" 1>&6; sim_endian="-DWITH_TARGET_BYTE_ORDER=0";;
169 esac;;
170 no) sim_endian="-DWITH_TARGET_BYTE_ORDER=0";;
171 b*|B*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";;
172 l*|L*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";;
173 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-endian"); sim_endian="";;
174 esac
175 if test x"$silent" != x"yes" && test x"$sim_endian" != x""; then
176 echo "Setting endian flags = $sim_endian" 6>&1
177 fi],[sim_endian=""])dnl
178
179 AC_ARG_ENABLE(sim-hostendian,
180 [ --enable-sim-hostendain=end Specify host byte endian orientation.],
181 [case "${enableval}" in
182 no) sim_hostendian="-DWITH_HOST_BYTE_ORDER=0";;
183 b*|B*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=BIG_ENDIAN";;
184 l*|L*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=LITTLE_ENDIAN";;
185 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-hostendian"); sim_hostendian="";;
186 esac
187 if test x"$silent" != x"yes" && test x"$sim_hostendian" != x""; then
188 echo "Setting hostendian flags = $sim_hostendian" 6>&1
189 fi],[sim_hostendian=""])dnl
190
191 AC_ARG_ENABLE(sim-smp,
192 [ --enable-sim-smp=n Specify number of processors to configure for.],
193 [case "${enableval}" in
194 yes) sim_smp="-DWITH_SMP=2";;
195 no) sim_smp="-DWITH_SMP=0";;
196 *) sim_smp="-DWITH_SMP=$enableval";;
197 esac
198 if test x"$silent" != x"yes" && test x"$sim_smp" != x""; then
199 echo "Setting smp flags = $sim_smp" 6>&1
200 fi],[sim_smp="-DWITH_SMP=0"
201 if test x"$silent" != x"yes"; then
202 echo "Setting smp flags = $sim_smp" 6>&1
203 fi])dnl
204
205 AC_ARG_ENABLE(sim-bitsize,
206 [ --enable-sim-bitsize=n Specify target bitsize (32 or 64).],
207 [case "${enableval}" in
208 32|64) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=$enableval";;
209 *) AC_MSG_ERROR("--enable-sim-bitsize was given $enableval, expected 32 or 64"); sim_bitsize="";;
210 esac
211 if test x"$silent" != x"yes" && test x"$sim_bitsize" != x""; then
212 echo "Setting bitsize flags = $sim_bitsize" 6>&1
213 fi],[sim_bitsize=""])dnl
214
215 AC_ARG_ENABLE(sim-hostbitsize,
216 [ --enable-sim-hostbitsize=32|64 Specify host bitsize (32 or 64).],
217 [case "${enableval}" in
218 32|64) sim_hostbitsize="-DWITH_HOST_WORD_BITSIZE=$enableval";;
219 *) AC_MSG_ERROR("--enable-sim-hostbitsize was given $enableval, expected 32 or 64"); sim_hostbitsize="";;
220 esac
221 if test x"$silent" != x"yes" && test x"$sim_hostbitsize" != x""; then
222 echo "Setting hostbitsize flags = $sim_hostbitsize" 6>&1
223 fi],[sim_hostbitsize=""])dnl
224
225 AC_ARG_ENABLE(sim-env,
226 [ --enable-sim-env=env Specify target environment (operating, virtual, user).],
227 [case "${enableval}" in
228 operating | os | oea) sim_env="-DWITH_ENVIRONMENT=OPERATING_ENVIRONMENT";;
229 virtual | vea) sim_env="-DWITH_ENVIRONMENT=VIRTUAL_ENVIRONMENT";;
230 user | uea) sim_env="-DWITH_ENVIRONMENT=USER_ENVIRONMENT";;
231 no) sim_env="-DWITH_ENVIRONMENT=0";;
232 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-env"); sim_env="";;
233 esac
234 if test x"$silent" != x"yes" && test x"$sim_env" != x""; then
235 echo "Setting env flags = $sim_env" 6>&1
236 fi],[sim_env=""])dnl
237
238 AC_ARG_ENABLE(sim-timebase,
239 [ --enable-sim-timebase Specify whether the PPC timebase is supported.],
240 [case "${enableval}" in
241 yes) sim_timebase="-DWITH_TIME_BASE=1";;
242 no) sim_timebase="-DWITH_TIME_BASE=0";;
243 *) AC_MSG_ERROR("--enable-sim-timebase does not take a value"); sim_timebase="";;
244 esac
245 if test x"$silent" != x"yes" && test x"$sim_timebase" != x""; then
246 echo "Setting timebase flags = $sim_timebase" 6>&1
247 fi],[sim_timebase=""])dnl
248
249 AC_ARG_ENABLE(sim-alignment,
250 [ --enable-sim-alignment=align Specify strict or nonstrict alignment.],
251 [case "${enableval}" in
252 yes | strict | STRICT) sim_alignment="-DWITH_ALIGNMENT=STRICT_ALIGNMENT";;
253 no | nonstrict | NONSTRICT) sim_alignment="-DWITH_ALIGNMENT=NONSTRICT_ALIGNMENT";;
254 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-alignment"); sim_alignment="";;
255 esac
256 if test x"$silent" != x"yes" && test x"$sim_alignment" != x""; then
257 echo "Setting alignment flags = $sim_alignment" 6>&1
258 fi],[sim_alignment=""])dnl
259
260 AC_ARG_ENABLE(sim-trace,
261 [ --enable-sim-trace Specify whether tracing is supported.],
262 [case "${enableval}" in
263 yes) sim_trace="-DWITH_TRACE=1";;
264 no) sim_trace="-DWITH_TRACE=0";;
265 *) AC_MSG_ERROR("--enable-sim-trace does not take a value"); sim_trace="";;
266 esac
267 if test x"$silent" != x"yes" && test x"$sim_trace" != x""; then
268 echo "Setting trace flags = $sim_trace" 6>&1
269 fi],[sim_trace=""])dnl
270
271 AC_ARG_ENABLE(sim-assert,
272 [ --enable-sim-assert Specify whether to perform random assertions.],
273 [case "${enableval}" in
274 yes) sim_assert="-DWITH_ASSERT=1";;
275 no) sim_assert="-DWITH_ASSERT=0";;
276 *) AC_MSG_ERROR("--enable-sim-assert does not take a value"); sim_assert="";;
277 esac
278 if test x"$silent" != x"yes" && test x"$sim_assert" != x""; then
279 echo "Setting assert flags = $sim_assert" 6>&1
280 fi],[sim_assert=""])dnl
281
282 AC_ARG_ENABLE(sim-reserved-bits,
283 [ --enable-sim-reserved-bits Specify whether to check reserved bits in instruction.],
284 [case "${enableval}" in
285 yes) sim_reserved="-DWITH_RESERVED_BITS=1";;
286 no) sim_reserved="-DWITH_RESERVED_BITS=0";;
287 *) AC_MSG_ERROR("--enable-sim-reserved-bits does not take a value"); sim_reserved="";;
288 esac
289 if test x"$silent" != x"yes" && test x"$sim_reserved" != x""; then
290 echo "Setting reserved flags = $sim_reserved" 6>&1
291 fi],[sim_reserved=""])dnl
292
293 AC_ARG_ENABLE(sim-float,
294 [ --enable-sim-float Specify whether to use host floating point or simulate.],
295 [case "${enableval}" in
296 yes | hard) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
297 no | soft) sim_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
298 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-float"); sim_float="";;
299 esac
300 if test x"$silent" != x"yes" && test x"$sim_float" != x""; then
301 echo "Setting float flags = $sim_float" 6>&1
302 fi],[sim_float=""])dnl
303
304 AC_ARG_ENABLE(sim-monitor,
305 [ --enable-sim-monitor=mon Specify whether to enable monitoring events.],
306 [case "${enableval}" in
307 yes) sim_mon="-DWITH_MON='MONITOR_INSTRUCTION_ISSUE | MONITOR_LOAD_STORE_UNIT'";;
308 no) sim_mon="-DWITH_MON=0";;
309 instruction) sim_mon="-DWITH_MON=MONITOR_INSTRUCTION_ISSUE";;
310 memory) sim_mon="-DWITH_MON=MONITOR_LOAD_STORE_UNIT";;
311 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-mon"); sim_env="";;
312 esac
313 if test x"$silent" != x"yes" && test x"$sim_mon" != x""; then
314 echo "Setting monitor flags = $sim_mon" 6>&1
315 fi],[sim_mon=""])dnl
316
317 AC_ARG_ENABLE(sim-function-unit,
318 [ --enable-sim-function-unit Specify whether detailed functional unit support is built.],
319 [case "${enableval}" in
320 yes) sim_func="-DWITH_FUNCTION_UNIT=1";;
321 no) sim_func="-DWITH_FUNCTION_UNIT=0";;
322 *) AC_MSG_ERROR("--enable-sim-function-unit does not take a value"); sim_func="";;
323 esac
324 if test x"$silent" != x"yes" && test x"$sim_func" != x""; then
325 echo "Setting function-unit flags = $sim_func" 6>&1
326 fi],[sim_func=""])dnl
327
328 AC_ARG_ENABLE(sim-model,
329 [ --enable-sim-model=which Specify PowerPC to model.],
330 [case "${enableval}" in
331 yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-model=model");;
332 *) sim_model="-DWITH_MODEL=${enableval}";;
333 esac
334 if test x"$silent" != x"yes" && test x"$sim_model" != x""; then
335 echo "Setting model flags = $sim_model" 6>&1
336 fi],[sim_model=""])dnl
337
338 AC_ARG_ENABLE(sim-default-model,
339 [ --enable-sim-default-model=which Specify default PowerPC to model.],
340 [case "${enableval}" in
341 yes|no) AC_MSG_ERROR("No value supplied for --enable-sim-default-model=model");;
342 *) sim_default_model="-DWITH_DEFAULT_MODEL=${enableval}";;
343 esac
344 if test x"$silent" != x"yes" && test x"$sim_default_model" != x""; then
345 echo "Setting default-model flags = $sim_default_model" 6>&1
346 fi],[sim_model=""])dnl
347
348 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/../..)
349 AC_CANONICAL_SYSTEM
350 AC_ARG_PROGRAM
351
352 . ${srcdir}/../../bfd/configure.host
353
354 AC_CONFIG_HEADER(config.h:config.in)
355
356 AC_PROG_CC
357 AC_SUBST(CFLAGS)
358 AC_SUBST(HDEFINES)
359 AR=${AR-ar}
360 AC_SUBST(AR)
361 AC_PROG_RANLIB
362 AC_SUBST(sim_cflags)
363 AC_SUBST(sim_warnings)
364 AC_SUBST(sim_config)
365 AC_SUBST(sim_opcode)
366 AC_SUBST(sim_switch)
367 AC_SUBST(sim_dup)
368 AC_SUBST(sim_filter)
369 AC_SUBST(sim_icache)
370 AC_SUBST(sim_inline)
371 AC_SUBST(sim_bswap)
372 AC_SUBST(sim_endian)
373 AC_SUBST(sim_hostendian)
374 AC_SUBST(sim_smp)
375 AC_SUBST(sim_bitsize)
376 AC_SUBST(sim_hostbitsize)
377 AC_SUBST(sim_env)
378 AC_SUBST(sim_timebase)
379 AC_SUBST(sim_alignment)
380 AC_SUBST(sim_float)
381 AC_SUBST(sim_trace)
382 AC_SUBST(sim_assert)
383 AC_SUBST(sim_reserved)
384 AC_SUBST(sim_monitor)
385 AC_SUBST(sim_func)
386 AC_SUBST(sim_model)
387 AC_SUBST(sim_default_model)
388
389 AC_CHECK_FUNCS(getrusage)
390
391 # Put a plausible default for CC_FOR_BUILD in Makefile.
392 AC_C_CROSS
393 if test "x$cross_compiling" = "xno"; then
394 CC_FOR_BUILD='$(CC)'
395 else
396 CC_FOR_BUILD=gcc
397 fi
398 AC_SUBST(CC_FOR_BUILD)
399
400 AC_CHECK_HEADERS(string.h strings.h stdlib.h time.h sys/times.h unistd.h sys/resource.h)
401
402 AC_OUTPUT(Makefile,
403 [case x$CONFIG_HEADERS in xconfig.h:config.in) echo > stamp-h ;; esac])
This page took 0.057871 seconds and 3 git commands to generate.