]> Git Repo - binutils.git/blame - sim/common/aclocal.m4
* aclocal.m4: Check for headers time.h, sys/time.h, sys/resource.h.
[binutils.git] / sim / common / aclocal.m4
CommitLineData
80b7b3a5 1# This file contains common code used by all simulators.
8cd89e77
DE
2#
3# SIM_AC_COMMON invokes AC macros used by all simulators and by the common
4# directory. It is intended to be invoked before any target specific stuff.
5# SIM_AC_OUTPUT is a cover function to AC_OUTPUT to generate the Makefile.
6# It is intended to be invoked last.
7#
8# The simulator's configure.in should look like:
9#
f2de7dfd
AC
10# dnl Process this file with autoconf to produce a configure script.
11# sinclude(../common/aclocal.m4)
8cd89e77
DE
12# AC_PREREQ(2.5)dnl
13# AC_INIT(Makefile.in)
f2de7dfd 14#
8cd89e77
DE
15# SIM_AC_COMMON
16#
17# ... target specific stuff ...
18#
19# SIM_AC_OUTPUT
80b7b3a5
SG
20
21AC_DEFUN(SIM_AC_COMMON,
22[
23# autoconf.info says this should be called right after AC_INIT.
24AC_CONFIG_HEADER(config.h:config.in)
25
26AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/../..)
27AC_CANONICAL_SYSTEM
28AC_ARG_PROGRAM
29AC_PROG_CC
30AC_PROG_INSTALL
80b7b3a5
SG
31
32# Put a plausible default for CC_FOR_BUILD in Makefile.
80b7b3a5
SG
33if test "x$cross_compiling" = "xno"; then
34 CC_FOR_BUILD='$(CC)'
35else
36 CC_FOR_BUILD=gcc
37fi
38AC_SUBST(CC_FOR_BUILD)
39
40AC_SUBST(CFLAGS)
41AC_SUBST(HDEFINES)
42AR=${AR-ar}
43AC_SUBST(AR)
44AC_PROG_RANLIB
45
fbda74b1 46# Check for common headers.
63ddb6bd
DE
47# FIXME: Seems to me this can cause problems for i386-windows hosts.
48# At one point there were hardcoded AC_DEFINE's if ${host} = i386-*-windows*.
49AC_CHECK_HEADERS(stdlib.h string.h strings.h unistd.h time.h sys/time.h sys/resource.h)
50AC_CHECK_FUNCS(getrusage time)
fbda74b1 51
80b7b3a5
SG
52. ${srcdir}/../../bfd/configure.host
53
a77aa7ec 54dnl Standard (and optional) simulator options.
80b7b3a5
SG
55dnl Eventually all simulators will support these.
56dnl Do not add any here that cannot be supported by all simulators.
57dnl Do not add similar but different options to a particular simulator,
58dnl all shall eventually behave the same way.
59
f2de7dfd
AC
60
61dnl This is a generic option to enable special byte swapping
62dnl insns on *any* cpu.
63AC_ARG_ENABLE(sim-bswap,
64[ --enable-sim-bswap Use Host specific BSWAP instruction.],
65[case "${enableval}" in
a77aa7ec 66 yes) sim_bswap="-DWITH_BSWAP=1 -DUSE_BSWAP=1";;
f2de7dfd
AC
67 no) sim_bswap="-DWITH_BSWAP=0";;
68 *) AC_MSG_ERROR("--enable-sim-bswap does not take a value"); sim_bswap="";;
69esac
70if test x"$silent" != x"yes" && test x"$sim_bswap" != x""; then
71 echo "Setting bswap flags = $sim_bswap" 6>&1
72fi],[sim_bswap=""])dnl
73AC_SUBST(sim_bswap)
74
75
80b7b3a5
SG
76AC_ARG_ENABLE(sim-cflags,
77[ --enable-sim-cflags=opts Extra CFLAGS for use in building simulator],
78[case "${enableval}" in
79 yes) sim_cflags="-O2";;
80 trace) AC_MSG_ERROR("Please use --enable-sim-debug instead."); sim_cflags="";;
81 no) sim_cflags="";;
82 *) sim_cflags=`echo "${enableval}" | sed -e "s/,/ /g"`;;
83esac
84if test x"$silent" != x"yes" && test x"$sim_cflags" != x""; then
85 echo "Setting sim cflags = $sim_cflags" 6>&1
86fi],[sim_cflags=""])dnl
87AC_SUBST(sim_cflags)
88
f2de7dfd 89
80b7b3a5
SG
90dnl --enable-sim-debug is for developers of the simulator
91dnl the allowable values are work-in-progress
92AC_ARG_ENABLE(sim-debug,
93[ --enable-sim-debug=opts Enable debugging flags],
94[case "${enableval}" in
fbda74b1
DE
95 yes) sim_debug="-DDEBUG=7 -DWITH_DEBUG=7";;
96 no) sim_debug="-DDEBUG=0 -DWITH_DEBUG=0";;
97 *) sim_debug="-DDEBUG='(${enableval})' -DWITH_DEBUG='(${enableval})'";;
80b7b3a5
SG
98esac
99if test x"$silent" != x"yes" && test x"$sim_debug" != x""; then
100 echo "Setting sim debug = $sim_debug" 6>&1
101fi],[sim_debug=""])dnl
102AC_SUBST(sim_debug)
103
f2de7dfd 104
a35e91c3
AC
105dnl --enable-sim-stdio is for users of the simulator
106dnl It determines if IO from the program is routed through STDIO (buffered)
107AC_ARG_ENABLE(sim-stdio,
108[ --enable-sim-stdio Specify whether to use stdio for console input/output.],
109[case "${enableval}" in
110 yes) sim_stdio="-DWITH_STDIO=DO_USE_STDIO";;
111 no) sim_stdio="-DWITH_STDIO=DONT_USE_STDIO";;
112 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-stdio"); sim_stdio="";;
113esac
114if test x"$silent" != x"yes" && test x"$sim_stdio" != x""; then
115 echo "Setting stdio flags = $sim_stdio" 6>&1
116fi],[sim_stdio=""])dnl
117AC_SUBST(sim_stdio)
118
119
120dnl --enable-sim-trace is for users of the simulator
121dnl the allowable values are work-in-progress
122AC_ARG_ENABLE(sim-trace,
123[ --enable-sim-trace=opts Enable tracing flags],
124[case "${enableval}" in
125 yes) sim_trace="-DTRACE=1 -DWITH_TRACE=1";;
126 no) sim_trace="-DTRACE=0 -DWITH_TRACE=0";;
127 *) sim_trace="-DTRACE='(${enableval})' -DWITH_TRACE='(${enableval})'";;
128esac
129if test x"$silent" != x"yes" && test x"$sim_trace" != x""; then
130 echo "Setting sim trace = $sim_trace" 6>&1
131fi],[sim_trace=""])dnl
132AC_SUBST(sim_trace)
133
134
63ddb6bd
DE
135dnl Types used by common code
136AC_TYPE_SIGNAL
137
138
a35e91c3
AC
139dnl These are available to append to as desired.
140sim_link_files=
141sim_link_links=
142
143dnl Create tconfig.h either from simulator's tconfig.in or default one
144dnl in common.
145sim_link_links=tconfig.h
146if test -f ${srcdir}/tconfig.in
147then
148 sim_link_files=tconfig.in
149else
150 sim_link_files=../common/tconfig.in
151fi
152
153# targ-vals.def points to the libc macro description file.
154case "${target}" in
155*-*-*) TARG_VALS_DEF=../common/nltvals.def ;;
156esac
157sim_link_files="${sim_link_files} ${TARG_VALS_DEF}"
158sim_link_links="${sim_link_links} targ-vals.def"
159
160]) dnl End of SIM_AC_COMMON
161
162
163dnl Additional SIM options that can (optionally) be configured
164dnl For optional simulator options, a macro SIM_AC_OPTION_* is defined.
165dnl Simulators that wish to use the relevant option specify the macro
166dnl in the simulator specific configure.in file between the SIM_AC_COMMON
167dnl and SIM_AC_OUTPUT lines.
168
169
170dnl Specify the alignment restrictions of the target architecture.
171dnl Without this option all possible alignment restrictions are accomidated.
172AC_DEFUN(SIM_AC_OPTION_ALIGNMENT,
173[
174AC_ARG_ENABLE(sim-alignment,
175[ --enable-sim-alignment=align Specify strict or nonstrict alignment.],
176[case "${enableval}" in
177 yes | strict | STRICT) sim_alignment="-DWITH_ALIGNMENT=STRICT_ALIGNMENT";;
178 no | nonstrict | NONSTRICT) sim_alignment="-DWITH_ALIGNMENT=NONSTRICT_ALIGNMENT";;
179 0 | default | DEFAULT) sim_alignment="-DWITH_ALIGNMENT=0";;
180 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-alignment"); sim_alignment="";;
181esac
182if test x"$silent" != x"yes" && test x"$sim_alignment" != x""; then
183 echo "Setting alignment flags = $sim_alignment" 6>&1
184fi],[sim_alignment=""])dnl
185AC_SUBST(sim_alignment)
186])dnl
187
188
189dnl Conditionally compile in assertion statements.
190AC_DEFUN(SIM_AC_OPTION_ASSERT,
191[
192AC_ARG_ENABLE(sim-assert,
193[ --enable-sim-assert Specify whether to perform random assertions.],
194[case "${enableval}" in
195 yes) sim_assert="-DWITH_ASSERT=1";;
196 no) sim_assert="-DWITH_ASSERT=0";;
197 *) AC_MSG_ERROR("--enable-sim-assert does not take a value"); sim_assert="";;
198esac
199if test x"$silent" != x"yes" && test x"$sim_assert" != x""; then
200 echo "Setting assert flags = $sim_assert" 6>&1
201fi],[sim_assert=""])dnl
202AC_SUBST(sim_assert)
203])
204
205
f2de7dfd
AC
206dnl --enable-sim-endian={yes,no,big,little} is for simulators
207dnl that support both big and little endian targets.
208AC_DEFUN(SIM_AC_OPTION_ENDIAN,
8cd89e77 209[
f2de7dfd
AC
210default_sim_endian="ifelse([$1],,,-DWITH_TARGET_BYTE_ORDER=[$1])"
211AC_ARG_ENABLE(sim-endian,
212[ --enable-sim-endian=endian Specify target byte endian orientation.],
213[case "${enableval}" in
214 yes) case "$target" in
215 *powerpc-*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";;
216 *powerpcle-*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";;
217 *) echo "Unknown target $target" 1>&6; sim_endian="-DWITH_TARGET_BYTE_ORDER=0";;
218 esac;;
219 no) sim_endian="-DWITH_TARGET_BYTE_ORDER=0";;
220 b*|B*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";;
221 l*|L*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";;
222 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-endian"); sim_endian="";;
223esac
224if test x"$silent" != x"yes" && test x"$sim_endian" != x""; then
225 echo "Setting endian flags = $sim_endian" 6>&1
226fi],[sim_endian="${default_sim_endian}"])dnl
a77aa7ec 227AC_SUBST(sim_endian)
f2de7dfd 228])
8cd89e77 229
80b7b3a5 230
f2de7dfd
AC
231dnl --enable-sim-hostendian is for users of the simulator when
232dnl they find that AC_C_BIGENDIAN does not function correctly
233dnl (for instance in a canadian cross)
234AC_DEFUN(SIM_AC_OPTION_HOSTENDIAN,
235[
236AC_ARG_ENABLE(sim-hostendian,
237[ --enable-sim-hostendain=end Specify host byte endian orientation.],
238[case "${enableval}" in
239 no) sim_hostendian="-DWITH_HOST_BYTE_ORDER=0";;
240 b*|B*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=BIG_ENDIAN";;
241 l*|L*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=LITTLE_ENDIAN";;
242 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-hostendian"); sim_hostendian="";;
243esac
244if test x"$silent" != x"yes" && test x"$sim_hostendian" != x""; then
245 echo "Setting hostendian flags = $sim_hostendian" 6>&1
246fi],[
247if test "x$cross_compiling" = "xno"; then
248 AC_C_BIGENDIAN
249 if test $ac_cv_c_bigendian = yes; then
250 sim_hostendian="-DWITH_HOST_BYTE_ORDER=BIG_ENDIAN"
251 else
252 sim_hostendian="-DWITH_HOST_BYTE_ORDER=LITTLE_ENDIAN"
253 fi
254else
255 sim_hostendian="-DWITH_HOST_BYTE_ORDER=0"
256fi])dnl
a77aa7ec
AC
257AC_SUBST(sim_hostendian)
258])
259
260
261AC_DEFUN(SIM_AC_OPTION_FLOAT,
262[
a35e91c3 263default_sim_floating_point="ifelse([$1],,0,[$1])"
a77aa7ec 264AC_ARG_ENABLE(sim-float,
a35e91c3 265[ --enable-sim-float Specify that the target processor has floating point hardware.],
a77aa7ec
AC
266[case "${enableval}" in
267 yes | hard) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
268 no | soft) sim_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
269 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-float"); sim_float="";;
270esac
271if test x"$silent" != x"yes" && test x"$sim_float" != x""; then
272 echo "Setting float flags = $sim_float" 6>&1
a35e91c3 273fi],[sim_float="-DWITH_FLOATING_POINT=${default_sim_floating_point}"])dnl
a77aa7ec
AC
274AC_SUBST(sim_float)
275])
276
277
278AC_DEFUN(SIM_AC_OPTION_HARDWARE,
279[
280AC_ARG_ENABLE(sim-hardware,
281[ --enable-sim-hardware=list Specify the hardware to be included in the build.],
282[hardware="cpu,memory,nvram,iobus,htab,disk,trace,register,vm,init,core,pal,com,eeprom,opic,glue,phb,ide"
283case "${enableval}" in
284 yes) ;;
285 no) AC_MSG_ERROR("List of hardware must be specified for --enable-sim-hardware"); hardware="";;
286 ,*) hardware="${hardware}${enableval}";;
287 *,) hardware="${enableval}${hardware}";;
288 *) hardware="${enableval}"'';;
289esac
290sim_hw_src=`echo $hardware | sed -e 's/,/.c hw_/g' -e 's/^/hw_/' -e s'/$/.c/'`
291sim_hw_obj=`echo $sim_hw_src | sed -e 's/\.c/.o/g'`
292if test x"$silent" != x"yes" && test x"$hardware" != x""; then
293 echo "Setting hardware to $sim_hw_src, $sim_hw_obj"
294fi],[hardware="cpu,memory,nvram,iobus,htab,disk,trace,register,vm,init,core,pal,com,eeprom,opic,glue,phb,ide"
295sim_hw_src=`echo $hardware | sed -e 's/,/.c hw_/g' -e 's/^/hw_/' -e s'/$/.c/'`
296sim_hw_obj=`echo $sim_hw_src | sed -e 's/\.c/.o/g'`
297if test x"$silent" != x"yes"; then
298 echo "Setting hardware to $sim_hw_src, $sim_hw_obj"
299fi])dnl
300AC_SUBST(sim_hardware)
f2de7dfd
AC
301])
302
80b7b3a5 303
f2de7dfd
AC
304dnl --enable-sim-inline is for users that wish to ramp up the simulator's
305dnl performance by inlining functions.
306AC_DEFUN(SIM_AC_OPTION_INLINE,
307[
308default_sim_inline="ifelse([$1],,,-DDEFAULT_INLINE=[$1])"
309AC_ARG_ENABLE(sim-inline,
310[ --enable-sim-inline=inlines Specify which functions should be inlined.],
311[sim_inline=""
312case "$enableval" in
313 no) sim_inline="-DDEFAULT_INLINE=0";;
314 0) sim_inline="-DDEFAULT_INLINE=0";;
315 yes | 2) sim_inline="-DDEFAULT_INLINE=ALL_INLINE";;
316 1) sim_inline="-DDEFAULT_INLINE=INLINE_LOCALS";;
317 *) for x in `echo "$enableval" | sed -e "s/,/ /g"`; do
318 new_flag=""
319 case "$x" in
320 *_INLINE=*) new_flag="-D$x";;
321 *=*) new_flag=`echo "$x" | sed -e "s/=/_INLINE=/" -e "s/^/-D/"`;;
322 *_INLINE) new_flag="-D$x=ALL_INLINE";;
323 *) new_flag="-D$x""_INLINE=ALL_INLINE";;
324 esac
325 if test x"$sim_inline" = x""; then
326 sim_inline="$new_flag"
327 else
328 sim_inline="$sim_inline $new_flag"
329 fi
330 done;;
331esac
332if test x"$silent" != x"yes" && test x"$sim_inline" != x""; then
333 echo "Setting inline flags = $sim_inline" 6>&1
334fi],[if test x"$GCC" != "x" -a x"${default_sim_inline}" != "x" ; then
335 sim_inline="${default_sim_inline}"
336 if test x"$silent" != x"yes"; then
337 echo "Setting inline flags = $sim_inline" 6>&1
338 fi
339else
340 sim_inline=""
341fi])dnl
a77aa7ec
AC
342AC_SUBST(sim_inline)
343])
344
345
346AC_DEFUN(SIM_AC_OPTION_PACKAGES,
347[
348AC_ARG_ENABLE(sim-packages,
349[ --enable-sim-packages=list Specify the packages to be included in the build.],
350[packages=disklabel
351case "${enableval}" in
352 yes) ;;
353 no) AC_MSG_ERROR("List of packages must be specified for --enable-sim-packages"); packages="";;
354 ,*) packages="${packages}${enableval}";;
355 *,) packages="${enableval}${packages}";;
356 *) packages="${enableval}"'';;
357esac
358sim_pk_src=`echo $packages | sed -e 's/,/.c pk_/g' -e 's/^/pk_/' -e 's/$/.c/'`
359sim_pk_obj=`echo $sim_pk_src | sed -e 's/\.c/.o/g'`
360if test x"$silent" != x"yes" && test x"$packages" != x""; then
361 echo "Setting packages to $sim_pk_src, $sim_pk_obj"
362fi],[packages=disklabel
363sim_pk_src=`echo $packages | sed -e 's/,/.c pk_/g' -e 's/^/pk_/' -e 's/$/.c/'`
364sim_pk_obj=`echo $sim_pk_src | sed -e 's/\.c/.o/g'`
365if test x"$silent" != x"yes"; then
366 echo "Setting packages to $sim_pk_src, $sim_pk_obj"
367fi])dnl
368AC_SUBST(sim_packages)
369])
370
371
372AC_DEFUN(SIM_AC_OPTION_REGPARM,
373[
374AC_ARG_ENABLE(sim-regparm,
375[ --enable-sim-regparm=nr-parm Pass parameters in registers instead of on the stack - x86/GCC specific.],
376[case "${enableval}" in
377 0*|1*|2*|3*|4*|5*|6*|7*|8*|9*) sim_regparm="-DWITH_REGPARM=${enableval}";;
378 no) sim_regparm="" ;;
379 yes) sim_regparm="-DWITH_REGPARM=3";;
380 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-regparm"); sim_regparm="";;
381esac
382if test x"$silent" != x"yes" && test x"$sim_regparm" != x""; then
383 echo "Setting regparm flags = $sim_regparm" 6>&1
384fi],[sim_regparm=""])dnl
385AC_SUBST(sim_regparm)
386])
387
388
389AC_DEFUN(SIM_AC_OPTION_RESERVED_BITS,
390[
a35e91c3 391default_sim_reserved_bits="ifelse([$1],,1,[$1])"
a77aa7ec
AC
392AC_ARG_ENABLE(sim-reserved-bits,
393[ --enable-sim-reserved-bits Specify whether to check reserved bits in instruction.],
394[case "${enableval}" in
395 yes) sim_reserved_bits="-DWITH_RESERVED_BITS=1";;
396 no) sim_reserved_bits="-DWITH_RESERVED_BITS=0";;
397 *) AC_MSG_ERROR("--enable-sim-reserved-bits does not take a value"); sim_reserved_bits="";;
398esac
399if test x"$silent" != x"yes" && test x"$sim_reserved_bits" != x""; then
400 echo "Setting reserved flags = $sim_reserved_bits" 6>&1
a35e91c3 401fi],[sim_reserved_bits="-DWITH_RESERVED_BITS=${default_sim_reserved_bits}"])dnl
a77aa7ec
AC
402AC_SUBST(sim_reserved_bits)
403])
404
405
406AC_DEFUN(SIM_AC_OPTION_SMP,
407[
a35e91c3 408default_sim_smp="ifelse([$1],,5,[$1])"
a77aa7ec 409AC_ARG_ENABLE(sim-smp,
a35e91c3 410[ --enable-sim-smp=n Specify number of processors to configure for (default ${default_sim_smp}).],
a77aa7ec
AC
411[case "${enableval}" in
412 yes) sim_smp="-DWITH_SMP=5" ; sim_igen_smp="-N 5";;
413 no) sim_smp="-DWITH_SMP=0" ; sim_igen_smp="-N 0";;
414 *) sim_smp="-DWITH_SMP=$enableval" ; sim_igen_smp="-N $enableval";;
415esac
416if test x"$silent" != x"yes" && test x"$sim_smp" != x""; then
417 echo "Setting smp flags = $sim_smp" 6>&1
a35e91c3 418fi],[sim_smp="-DWITH_SMP=${default_sim_smp}" ; sim_igen_smp="-N ${default_sim_smp}"
a77aa7ec
AC
419if test x"$silent" != x"yes"; then
420 echo "Setting smp flags = $sim_smp" 6>&1
421fi])dnl
422AC_SUBST(sim_smp)
f2de7dfd 423])
80b7b3a5 424
80b7b3a5 425
a77aa7ec
AC
426AC_DEFUN(SIM_AC_OPTION_STDCALL,
427[
428AC_ARG_ENABLE(sim-stdcall,
429[ --enable-sim-stdcall=type Use an alternative function call/return mechanism - x86/GCC specific.],
430[case "${enableval}" in
431 no) sim_stdcall="" ;;
432 std*) sim_stdcall="-DWITH_STDCALL=1";;
433 yes) sim_stdcall="-DWITH_STDCALL=1";;
434 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-stdcall"); sim_stdcall="";;
435esac
436if test x"$silent" != x"yes" && test x"$sim_stdcall" != x""; then
437 echo "Setting function call flags = $sim_stdcall" 6>&1
438fi],[sim_stdcall=""])dnl
439AC_SUBST(sim_stdcall)
440])
441
442
a35e91c3
AC
443AC_DEFUN(SIM_AC_OPTION_XOR_ENDIAN,
444[
445default_sim_xor_endian="ifelse([$1],,8,[$1])"
446AC_ARG_ENABLE(sim-xor-endian,
447[ --enable-sim-xor-endian=n Specify number bytes involved in XOR bi-endian mode (default ${default_sim_xor_endian}).],
a77aa7ec 448[case "${enableval}" in
a35e91c3
AC
449 yes) sim_xor_endian="-DWITH_XOR_ENDIAN=8";;
450 no) sim_xor_endian="-DWITH_XOR_ENDIAN=0";;
451 *) sim_xor_endian="-DWITH_XOR_ENDIAN=$enableval";;
a77aa7ec 452esac
a35e91c3
AC
453if test x"$silent" != x"yes" && test x"$sim_xor_endian" != x""; then
454 echo "Setting xor-endian flag = $sim_xor_endian" 6>&1
455fi],[sim_xor_endian="-DWITH_XOR_ENDIAN=${default_sim_xor_endian}"])dnl
456AC_SUBST(sim_xor_endian)
457])
a77aa7ec
AC
458
459
f2de7dfd
AC
460dnl --enable-sim-warnings is for developers of the simulator.
461dnl it enables extra GCC specific warnings.
462AC_DEFUN(SIM_AC_OPTION_WARNINGS,
463[
464AC_ARG_ENABLE(sim-warnings,
465[ --enable-sim-warnings=opts Extra CFLAGS for turning on compiler warnings except for idecode.o, semantics.o and psim.o],
466[case "${enableval}" in
467 yes) sim_warnings="-Werror -Wall -Wpointer-arith -Wmissing-prototypes -Wmissing-declarations ";;
468 no) sim_warnings="-w";;
469 *) sim_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
470esac
471if test x"$silent" != x"yes" && test x"$sim_warnings" != x""; then
472 echo "Setting warning flags = $sim_warnings" 6>&1
473fi],[sim_warnings=""])dnl
a77aa7ec 474AC_SUBST(sim_warnings)
f2de7dfd 475])
80b7b3a5 476
80b7b3a5 477
f2de7dfd
AC
478dnl Generate the Makefile in a target specific directory.
479dnl Substitutions aren't performed on the file in AC_SUBST_FILE,
480dnl so this is a cover macro to tuck the details away of how we cope.
481dnl We cope by having autoconf generate two files and then merge them into
482dnl one afterwards. The two pieces of the common fragment are inserted into
483dnl the target's fragment at the appropriate points.
80b7b3a5 484
f2de7dfd
AC
485AC_DEFUN(SIM_AC_OUTPUT,
486[
80b7b3a5 487AC_LINK_FILES($sim_link_files, $sim_link_links)
f2de7dfd
AC
488AC_OUTPUT(Makefile.sim:Makefile.in Make-common.sim:../common/Make-common.in,
489[case "x$CONFIG_FILES" in xMakefile*)
490 echo "Merging Makefile.sim+Make-common.sim into Makefile ..."
491 rm -f Makesim1.tmp Makesim2.tmp Makefile
492 sed -n -e '/^## COMMON_PRE_/,/^## End COMMON_PRE_/ p' <Make-common.sim >Makesim1.tmp
493 sed -n -e '/^## COMMON_POST_/,/^## End COMMON_POST_/ p' <Make-common.sim >Makesim2.tmp
494 sed -e '/^## COMMON_PRE_/ r Makesim1.tmp' \
495 -e '/^## COMMON_POST_/ r Makesim2.tmp' \
496 <Makefile.sim >Makefile
497 rm -f Makefile.sim Make-common.sim Makesim1.tmp Makesim2.tmp
498 ;;
499 esac
80b7b3a5 500 case "x$CONFIG_HEADERS" in xconfig.h:config.in) echo > stamp-h ;; esac
f2de7dfd
AC
501])
502])
This page took 0.113464 seconds and 4 git commands to generate.