sim: cris: delete unused CONFIG_DEVICES
[deliverable/binutils-gdb.git] / sim / common / acinclude.m4
CommitLineData
9c082ca8
MF
1# This file contains common code used by all simulators.
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#
10# dnl Process this file with autoconf to produce a configure script.
11# AC_PREREQ(2.64)dnl
12# AC_INIT(Makefile.in)
13# sinclude(../common/aclocal.m4)
14#
15# SIM_AC_COMMON
16#
17# ... target specific stuff ...
18#
19# SIM_AC_OUTPUT
20
21# Include global overrides and fixes for Autoconf.
22m4_include(../../config/override.m4)
23sinclude([../../config/zlib.m4])
6bb11ab3
L
24m4_include([../../config/plugins.m4])
25m4_include([../../libtool.m4])
26m4_include([../../ltoptions.m4])
27m4_include([../../ltsugar.m4])
28m4_include([../../ltversion.m4])
29m4_include([../../lt~obsolete.m4])
db2e4d67 30sinclude([../../config/depstand.m4])
9c082ca8
MF
31
32AC_DEFUN([SIM_AC_COMMON],
33[
34AC_REQUIRE([AC_PROG_CC])
35# autoconf.info says this should be called right after AC_INIT.
36AC_CONFIG_HEADER(ifelse([$1],,config.h,[$1]):config.in)
37AC_CANONICAL_SYSTEM
2232061b 38AC_USE_SYSTEM_EXTENSIONS
9c082ca8
MF
39AC_ARG_PROGRAM
40AC_PROG_INSTALL
41
42# Put a plausible default for CC_FOR_BUILD in Makefile.
43if test "x$cross_compiling" = "xno"; then
44 CC_FOR_BUILD='$(CC)'
45else
46 CC_FOR_BUILD=gcc
47fi
48AC_SUBST(CC_FOR_BUILD)
49
50AC_SUBST(CFLAGS)
51AC_SUBST(HDEFINES)
52AR=${AR-ar}
53AC_SUBST(AR)
54AC_PROG_RANLIB
55
ae7d0cac
MF
56dnl Pull in the target configuration file directly.
57AH_BOTTOM([#include "tconfig.h"])
58
5f3ef9d0
JB
59# Some of the common include files depend on bfd.h, and bfd.h checks
60# that config.h is included first by testing that the PACKAGE macro
61# is defined.
62PACKAGE=sim
63AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package. ])
64AC_SUBST(PACKAGE)
65
db2e4d67
MF
66# Dependency checking.
67ZW_CREATE_DEPDIR
68ZW_PROG_COMPILER_DEPENDENCIES([CC])
69
70# Check for the 'make' the user wants to use.
71AC_CHECK_PROGS(MAKE, make)
72MAKE_IS_GNU=
73case "`$MAKE --version 2>&1 | sed 1q`" in
74 *GNU*)
75 MAKE_IS_GNU=yes
76 ;;
77esac
78AM_CONDITIONAL(GMAKE, test "$MAKE_IS_GNU" = yes)
79
9c082ca8
MF
80dnl We don't use gettext, but bfd does. So we do the appropriate checks
81dnl to see if there are intl libraries we should link against.
82ALL_LINGUAS=
83ZW_GNU_GETTEXT_SISTER_DIR(../../intl)
84
85# Check for common headers.
86# FIXME: Seems to me this can cause problems for i386-windows hosts.
87# At one point there were hardcoded AC_DEFINE's if ${host} = i386-*-windows*.
88AC_CHECK_HEADERS(stdlib.h string.h strings.h unistd.h time.h)
89AC_CHECK_HEADERS(sys/time.h sys/resource.h)
90AC_CHECK_HEADERS(fcntl.h fpu_control.h)
91AC_CHECK_HEADERS(dlfcn.h errno.h sys/stat.h)
92AC_CHECK_FUNCS(getrusage time sigaction __setfpucw)
93
94# Check for socket libraries
95AC_CHECK_LIB(socket, bind)
96AC_CHECK_LIB(nsl, gethostbyname)
97
98# BFD conditionally uses zlib, so we must link it in if libbfd does, by
99# using the same condition.
100AM_ZLIB
101
6bb11ab3
L
102# BFD uses libdl when when plugins enabled.
103AC_PLUGINS
104AM_CONDITIONAL(PLUGINS, test "$plugins" = yes)
105LT_INIT([dlopen])
106AC_SUBST(lt_cv_dlopen_libs)
107
9c082ca8
MF
108. ${srcdir}/../../bfd/configure.host
109
110dnl Standard (and optional) simulator options.
111dnl Eventually all simulators will support these.
112dnl Do not add any here that cannot be supported by all simulators.
113dnl Do not add similar but different options to a particular simulator,
114dnl all shall eventually behave the same way.
115
116
117dnl We don't use automake, but we still want to support
118dnl --enable-maintainer-mode.
31e6ad7d 119AM_MAINTAINER_MODE
9c082ca8
MF
120
121
122dnl This is a generic option to enable special byte swapping
123dnl insns on *any* cpu.
124AC_ARG_ENABLE(sim-bswap,
125[ --enable-sim-bswap Use Host specific BSWAP instruction.],
126[case "${enableval}" in
127 yes) sim_bswap="-DWITH_BSWAP=1 -DUSE_BSWAP=1";;
128 no) sim_bswap="-DWITH_BSWAP=0";;
129 *) AC_MSG_ERROR("--enable-sim-bswap does not take a value"); sim_bswap="";;
130esac
131if test x"$silent" != x"yes" && test x"$sim_bswap" != x""; then
132 echo "Setting bswap flags = $sim_bswap" 6>&1
133fi],[sim_bswap=""])dnl
134AC_SUBST(sim_bswap)
135
136
137AC_ARG_ENABLE(sim-cflags,
138[ --enable-sim-cflags=opts Extra CFLAGS for use in building simulator],
139[case "${enableval}" in
140 yes) sim_cflags="-O2 -fomit-frame-pointer";;
141 trace) AC_MSG_ERROR("Please use --enable-sim-debug instead."); sim_cflags="";;
142 no) sim_cflags="";;
143 *) sim_cflags=`echo "${enableval}" | sed -e "s/,/ /g"`;;
144esac
145if test x"$silent" != x"yes" && test x"$sim_cflags" != x""; then
146 echo "Setting sim cflags = $sim_cflags" 6>&1
147fi],[sim_cflags=""])dnl
148AC_SUBST(sim_cflags)
149
150
151dnl --enable-sim-debug is for developers of the simulator
152dnl the allowable values are work-in-progress
153AC_ARG_ENABLE(sim-debug,
154[ --enable-sim-debug=opts Enable debugging flags],
155[case "${enableval}" in
156 yes) sim_debug="-DDEBUG=7 -DWITH_DEBUG=7";;
157 no) sim_debug="-DDEBUG=0 -DWITH_DEBUG=0";;
158 *) sim_debug="-DDEBUG='(${enableval})' -DWITH_DEBUG='(${enableval})'";;
159esac
160if test x"$silent" != x"yes" && test x"$sim_debug" != x""; then
161 echo "Setting sim debug = $sim_debug" 6>&1
162fi],[sim_debug=""])dnl
163AC_SUBST(sim_debug)
164
165
166dnl --enable-sim-stdio is for users of the simulator
167dnl It determines if IO from the program is routed through STDIO (buffered)
168AC_ARG_ENABLE(sim-stdio,
169[ --enable-sim-stdio Specify whether to use stdio for console input/output.],
170[case "${enableval}" in
171 yes) sim_stdio="-DWITH_STDIO=DO_USE_STDIO";;
172 no) sim_stdio="-DWITH_STDIO=DONT_USE_STDIO";;
173 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-stdio"); sim_stdio="";;
174esac
175if test x"$silent" != x"yes" && test x"$sim_stdio" != x""; then
176 echo "Setting stdio flags = $sim_stdio" 6>&1
177fi],[sim_stdio=""])dnl
178AC_SUBST(sim_stdio)
179
180
181dnl --enable-sim-trace is for users of the simulator
182dnl The argument is either a bitmask of things to enable [exactly what is
183dnl up to the simulator], or is a comma separated list of names of tracing
184dnl elements to enable. The latter is only supported on simulators that
185dnl use WITH_TRACE.
186AC_ARG_ENABLE(sim-trace,
187[ --enable-sim-trace=opts Enable tracing flags],
188[case "${enableval}" in
189 yes) sim_trace="-DTRACE=1 -DWITH_TRACE=-1";;
190 no) sim_trace="-DTRACE=0 -DWITH_TRACE=0";;
191 [[-0-9]]*)
192 sim_trace="-DTRACE='(${enableval})' -DWITH_TRACE='(${enableval})'";;
509deab2 193 [[[:lower:]]]*)
9c082ca8
MF
194 sim_trace=""
195 for x in `echo "$enableval" | sed -e "s/,/ /g"`; do
196 if test x"$sim_trace" = x; then
197 sim_trace="-DWITH_TRACE='(TRACE_$x"
198 else
199 sim_trace="${sim_trace}|TRACE_$x"
200 fi
201 done
202 sim_trace="$sim_trace)'" ;;
203esac
204if test x"$silent" != x"yes" && test x"$sim_trace" != x""; then
205 echo "Setting sim trace = $sim_trace" 6>&1
206fi],[sim_trace=""])dnl
207AC_SUBST(sim_trace)
208
209
210dnl --enable-sim-profile
211dnl The argument is either a bitmask of things to enable [exactly what is
212dnl up to the simulator], or is a comma separated list of names of profiling
213dnl elements to enable. The latter is only supported on simulators that
214dnl use WITH_PROFILE.
215AC_ARG_ENABLE(sim-profile,
216[ --enable-sim-profile=opts Enable profiling flags],
217[case "${enableval}" in
218 yes) sim_profile="-DPROFILE=1 -DWITH_PROFILE=-1";;
219 no) sim_profile="-DPROFILE=0 -DWITH_PROFILE=0";;
220 [[-0-9]]*)
221 sim_profile="-DPROFILE='(${enableval})' -DWITH_PROFILE='(${enableval})'";;
222 [[a-z]]*)
223 sim_profile=""
224 for x in `echo "$enableval" | sed -e "s/,/ /g"`; do
225 if test x"$sim_profile" = x; then
226 sim_profile="-DWITH_PROFILE='(PROFILE_$x"
227 else
228 sim_profile="${sim_profile}|PROFILE_$x"
229 fi
230 done
231 sim_profile="$sim_profile)'" ;;
232esac
233if test x"$silent" != x"yes" && test x"$sim_profile" != x""; then
234 echo "Setting sim profile = $sim_profile" 6>&1
235fi],[sim_profile="-DPROFILE=1 -DWITH_PROFILE=-1"])dnl
236AC_SUBST(sim_profile)
237
238ACX_PKGVERSION([GDB])
239ACX_BUGURL([http://www.gnu.org/software/gdb/bugs/])
240AC_DEFINE_UNQUOTED([PKGVERSION], ["$PKGVERSION"], [Additional package description])
241AC_DEFINE_UNQUOTED([REPORT_BUGS_TO], ["$REPORT_BUGS_TO"], [Bug reporting address])
242
243dnl Types used by common code
244AC_TYPE_SIGNAL
245
246dnl Detect exe extension
247AC_EXEEXT
248
249dnl These are available to append to as desired.
250sim_link_files=
251sim_link_links=
252
9c082ca8
MF
253# targ-vals.def points to the libc macro description file.
254case "${target}" in
255*-*-*) TARG_VALS_DEF=../common/nltvals.def ;;
256esac
257sim_link_files="${sim_link_files} ${TARG_VALS_DEF}"
258sim_link_links="${sim_link_links} targ-vals.def"
259
260]) dnl End of SIM_AC_COMMON
261
262
263dnl Additional SIM options that can (optionally) be configured
264dnl For optional simulator options, a macro SIM_AC_OPTION_* is defined.
265dnl Simulators that wish to use the relevant option specify the macro
266dnl in the simulator specific configure.in file between the SIM_AC_COMMON
267dnl and SIM_AC_OUTPUT lines.
268
269
270dnl Specify the running environment.
271dnl If the simulator invokes this in its configure.in then without this option
272dnl the default is the user environment and all are runtime selectable.
273dnl If the simulator doesn't invoke this, only the user environment is
274dnl supported.
275dnl ??? Until there is demonstrable value in doing something more complicated,
276dnl let's not.
277AC_DEFUN([SIM_AC_OPTION_ENVIRONMENT],
278[
279AC_ARG_ENABLE(sim-environment,
280[ --enable-sim-environment=environment Specify mixed, user, virtual or operating environment.],
281[case "${enableval}" in
282 all | ALL) sim_environment="-DWITH_ENVIRONMENT=ALL_ENVIRONMENT";;
283 user | USER) sim_environment="-DWITH_ENVIRONMENT=USER_ENVIRONMENT";;
284 virtual | VIRTUAL) sim_environment="-DWITH_ENVIRONMENT=VIRTUAL_ENVIRONMENT";;
285 operating | OPERATING) sim_environment="-DWITH_ENVIRONMENT=OPERATING_ENVIRONMENT";;
286 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-environment");
287 sim_environment="";;
288esac
289if test x"$silent" != x"yes" && test x"$sim_environment" != x""; then
290 echo "Setting sim environment = $sim_environment" 6>&1
291fi],
292[sim_environment="-DWITH_ENVIRONMENT=ALL_ENVIRONMENT"])dnl
293])
294AC_SUBST(sim_environment)
295
296
297dnl Specify the alignment restrictions of the target architecture.
298dnl Without this option all possible alignment restrictions are accommodated.
299dnl arg[1] is hardwired target alignment
300dnl arg[2] is default target alignment
301AC_DEFUN([SIM_AC_OPTION_ALIGNMENT],
302wire_alignment="[$1]"
303default_alignment="[$2]"
304[
305AC_ARG_ENABLE(sim-alignment,
306[ --enable-sim-alignment=align Specify strict, nonstrict or forced alignment of memory accesses.],
307[case "${enableval}" in
308 strict | STRICT) sim_alignment="-DWITH_ALIGNMENT=STRICT_ALIGNMENT";;
309 nonstrict | NONSTRICT) sim_alignment="-DWITH_ALIGNMENT=NONSTRICT_ALIGNMENT";;
310 forced | FORCED) sim_alignment="-DWITH_ALIGNMENT=FORCED_ALIGNMENT";;
311 yes) if test x"$wire_alignment" != x; then
312 sim_alignment="-DWITH_ALIGNMENT=${wire_alignment}"
313 else
314 if test x"$default_alignment" != x; then
315 sim_alignment="-DWITH_ALIGNMENT=${default_alignment}"
316 else
317 echo "No hard-wired alignment for target $target" 1>&6
318 sim_alignment="-DWITH_ALIGNMENT=0"
319 fi
320 fi;;
321 no) if test x"$default_alignment" != x; then
322 sim_alignment="-DWITH_DEFAULT_ALIGNMENT=${default_alignment}"
323 else
324 if test x"$wire_alignment" != x; then
325 sim_alignment="-DWITH_DEFAULT_ALIGNMENT=${wire_alignment}"
326 else
327 echo "No default alignment for target $target" 1>&6
328 sim_alignment="-DWITH_DEFAULT_ALIGNMENT=0"
329 fi
330 fi;;
331 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-alignment"); sim_alignment="";;
332esac
333if test x"$silent" != x"yes" && test x"$sim_alignment" != x""; then
334 echo "Setting alignment flags = $sim_alignment" 6>&1
335fi],
336[if test x"$default_alignment" != x; then
337 sim_alignment="-DWITH_DEFAULT_ALIGNMENT=${default_alignment}"
338else
339 if test x"$wire_alignment" != x; then
340 sim_alignment="-DWITH_ALIGNMENT=${wire_alignment}"
341 else
342 sim_alignment=
343 fi
344fi])dnl
345])dnl
346AC_SUBST(sim_alignment)
347
348
349dnl Conditionally compile in assertion statements.
350AC_DEFUN([SIM_AC_OPTION_ASSERT],
351[
352AC_ARG_ENABLE(sim-assert,
353[ --enable-sim-assert Specify whether to perform random assertions.],
354[case "${enableval}" in
355 yes) sim_assert="-DWITH_ASSERT=1";;
356 no) sim_assert="-DWITH_ASSERT=0";;
357 *) AC_MSG_ERROR("--enable-sim-assert does not take a value"); sim_assert="";;
358esac
359if test x"$silent" != x"yes" && test x"$sim_assert" != x""; then
360 echo "Setting assert flags = $sim_assert" 6>&1
361fi],[sim_assert=""])dnl
362])
363AC_SUBST(sim_assert)
364
365
366
367dnl --enable-sim-bitsize is for developers of the simulator
368dnl It specifies the number of BITS in the target.
369dnl arg[1] is the number of bits in a word
370dnl arg[2] is the number assigned to the most significant bit
371dnl arg[3] is the number of bits in an address
372dnl arg[4] is the number of bits in an OpenFirmware cell.
373dnl FIXME: this information should be obtained from bfd/archure
374AC_DEFUN([SIM_AC_OPTION_BITSIZE],
375wire_word_bitsize="[$1]"
376wire_word_msb="[$2]"
377wire_address_bitsize="[$3]"
378wire_cell_bitsize="[$4]"
379[AC_ARG_ENABLE(sim-bitsize,
380[ --enable-sim-bitsize=N Specify target bitsize (32 or 64).],
381[sim_bitsize=
382case "${enableval}" in
383 64,63 | 64,63,* ) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=64 -DWITH_TARGET_WORD_MSB=63";;
384 32,31 | 32,31,* ) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=31";;
385 64,0 | 64,0,* ) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=0";;
386 32,0 | 64,0,* ) sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=0";;
387 32) if test x"$wire_word_msb" != x -a x"$wire_word_msb" != x0; then
388 sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=31"
389 else
390 sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=0"
391 fi ;;
392 64) if test x"$wire_word_msb" != x -a x"$wire_word_msb" != x0; then
393 sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=64 -DWITH_TARGET_WORD_MSB=63"
394 else
395 sim_bitsize="-DWITH_TARGET_WORD_BITSIZE=64 -DWITH_TARGET_WORD_MSB=0"
396 fi ;;
397 *) AC_MSG_ERROR("--enable-sim-bitsize was given $enableval. Expected 32 or 64") ;;
398esac
399# address bitsize
400tmp=`echo "${enableval}" | sed -e "s/^[[0-9]]*,*[[0-9]]*,*//"`
401case x"${tmp}" in
402 x ) ;;
403 x32 | x32,* ) sim_bitsize="${sim_bitsize} -DWITH_TARGET_ADDRESS_BITSIZE=32" ;;
404 x64 | x64,* ) sim_bitsize="${sim_bitsize} -DWITH_TARGET_ADDRESS_BITSIZE=64" ;;
405 * ) AC_MSG_ERROR("--enable-sim-bitsize was given address size $enableval. Expected 32 or 64") ;;
406esac
407# cell bitsize
408tmp=`echo "${enableval}" | sed -e "s/^[[0-9]]*,*[[0-9*]]*,*[[0-9]]*,*//"`
409case x"${tmp}" in
410 x ) ;;
411 x32 | x32,* ) sim_bitsize="${sim_bitsize} -DWITH_TARGET_CELL_BITSIZE=32" ;;
412 x64 | x64,* ) sim_bitsize="${sim_bitsize} -DWITH_TARGET_CELL_BITSIZE=64" ;;
413 * ) AC_MSG_ERROR("--enable-sim-bitsize was given cell size $enableval. Expected 32 or 64") ;;
414esac
415if test x"$silent" != x"yes" && test x"$sim_bitsize" != x""; then
416 echo "Setting bitsize flags = $sim_bitsize" 6>&1
417fi],
418[sim_bitsize=""
419if test x"$wire_word_bitsize" != x; then
420 sim_bitsize="$sim_bitsize -DWITH_TARGET_WORD_BITSIZE=$wire_word_bitsize"
421fi
422if test x"$wire_word_msb" != x; then
423 sim_bitsize="$sim_bitsize -DWITH_TARGET_WORD_MSB=$wire_word_msb"
424fi
425if test x"$wire_address_bitsize" != x; then
426 sim_bitsize="$sim_bitsize -DWITH_TARGET_ADDRESS_BITSIZE=$wire_address_bitsize"
427fi
428if test x"$wire_cell_bitsize" != x; then
429 sim_bitsize="$sim_bitsize -DWITH_TARGET_CELL_BITSIZE=$wire_cell_bitsize"
430fi])dnl
431])
432AC_SUBST(sim_bitsize)
433
434
435
436dnl --enable-sim-endian={yes,no,big,little} is for simulators
437dnl that support both big and little endian targets.
438dnl arg[1] is hardwired target endianness.
439dnl arg[2] is default target endianness.
440AC_DEFUN([SIM_AC_OPTION_ENDIAN],
441[
442wire_endian="[$1]"
443default_endian="[$2]"
444AC_ARG_ENABLE(sim-endian,
445[ --enable-sim-endian=endian Specify target byte endian orientation.],
446[case "${enableval}" in
447 b*|B*) sim_endian="-DWITH_TARGET_BYTE_ORDER=BIG_ENDIAN";;
448 l*|L*) sim_endian="-DWITH_TARGET_BYTE_ORDER=LITTLE_ENDIAN";;
449 yes) if test x"$wire_endian" != x; then
450 sim_endian="-DWITH_TARGET_BYTE_ORDER=${wire_endian}"
451 else
452 if test x"$default_endian" != x; then
453 sim_endian="-DWITH_TARGET_BYTE_ORDER=${default_endian}"
454 else
455 echo "No hard-wired endian for target $target" 1>&6
456 sim_endian="-DWITH_TARGET_BYTE_ORDER=0"
457 fi
458 fi;;
459 no) if test x"$default_endian" != x; then
460 sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=${default_endian}"
461 else
462 if test x"$wire_endian" != x; then
463 sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=${wire_endian}"
464 else
465 echo "No default endian for target $target" 1>&6
466 sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=0"
467 fi
468 fi;;
469 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-endian"); sim_endian="";;
470esac
471if test x"$silent" != x"yes" && test x"$sim_endian" != x""; then
472 echo "Setting endian flags = $sim_endian" 6>&1
473fi],
474[if test x"$default_endian" != x; then
475 sim_endian="-DWITH_DEFAULT_TARGET_BYTE_ORDER=${default_endian}"
476else
477 if test x"$wire_endian" != x; then
478 sim_endian="-DWITH_TARGET_BYTE_ORDER=${wire_endian}"
479 else
480 sim_endian=
481 fi
482fi])dnl
483])
484AC_SUBST(sim_endian)
485
486
487dnl --enable-sim-hostendian is for users of the simulator when
488dnl they find that AC_C_BIGENDIAN does not function correctly
489dnl (for instance in a canadian cross)
490AC_DEFUN([SIM_AC_OPTION_HOSTENDIAN],
491[
492AC_ARG_ENABLE(sim-hostendian,
493[ --enable-sim-hostendian=end Specify host byte endian orientation.],
494[case "${enableval}" in
495 no) sim_hostendian="-DWITH_HOST_BYTE_ORDER=0";;
496 b*|B*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=BIG_ENDIAN";;
497 l*|L*) sim_hostendian="-DWITH_HOST_BYTE_ORDER=LITTLE_ENDIAN";;
498 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-hostendian"); sim_hostendian="";;
499esac
500if test x"$silent" != x"yes" && test x"$sim_hostendian" != x""; then
501 echo "Setting hostendian flags = $sim_hostendian" 6>&1
502fi],[
503if test "x$cross_compiling" = "xno"; then
504 AC_C_BIGENDIAN
505 if test $ac_cv_c_bigendian = yes; then
506 sim_hostendian="-DWITH_HOST_BYTE_ORDER=BIG_ENDIAN"
507 else
508 sim_hostendian="-DWITH_HOST_BYTE_ORDER=LITTLE_ENDIAN"
509 fi
510else
511 sim_hostendian="-DWITH_HOST_BYTE_ORDER=0"
512fi])dnl
513])
514AC_SUBST(sim_hostendian)
515
516
517dnl --enable-sim-float is for developers of the simulator
518dnl It specifies the presence of hardware floating point
519dnl And optionally the bitsize of the floating point register.
520dnl arg[1] specifies the presence (or absence) of floating point hardware
521dnl arg[2] specifies the number of bits in a floating point register
522AC_DEFUN([SIM_AC_OPTION_FLOAT],
523[
524default_sim_float="[$1]"
525default_sim_float_bitsize="[$2]"
526AC_ARG_ENABLE(sim-float,
527[ --enable-sim-float Specify that the target processor has floating point hardware.],
528[case "${enableval}" in
529 yes | hard) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT";;
530 no | soft) sim_float="-DWITH_FLOATING_POINT=SOFT_FLOATING_POINT";;
531 32) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT -DWITH_TARGET_FLOATING_POINT_BITSIZE=32";;
532 64) sim_float="-DWITH_FLOATING_POINT=HARD_FLOATING_POINT -DWITH_TARGET_FLOATING_POINT_BITSIZE=64";;
533 *) AC_MSG_ERROR("Unknown value $enableval passed to --enable-sim-float"); sim_float="";;
534esac
535if test x"$silent" != x"yes" && test x"$sim_float" != x""; then
536 echo "Setting float flags = $sim_float" 6>&1
537fi],[
538sim_float=
539if test x"${default_sim_float}" != x""; then
540 sim_float="-DWITH_FLOATING_POINT=${default_sim_float}"
541fi
542if test x"${default_sim_float_bitsize}" != x""; then
543 sim_float="$sim_float -DWITH_TARGET_FLOATING_POINT_BITSIZE=${default_sim_float_bitsize}"
544fi
545])dnl
546])
547AC_SUBST(sim_float)
548
549
550dnl The argument is the default cache size if none is specified.
551AC_DEFUN([SIM_AC_OPTION_SCACHE],
552[
553default_sim_scache="ifelse([$1],,0,[$1])"
554AC_ARG_ENABLE(sim-scache,
555[ --enable-sim-scache=size Specify simulator execution cache size.],
556[case "${enableval}" in
557 yes) sim_scache="-DWITH_SCACHE=${default_sim_scache}";;
558 no) sim_scache="-DWITH_SCACHE=0" ;;
559 [[0-9]]*) sim_scache="-DWITH_SCACHE=${enableval}";;
560 *) AC_MSG_ERROR("Bad value $enableval passed to --enable-sim-scache");
561 sim_scache="";;
562esac
563if test x"$silent" != x"yes" && test x"$sim_scache" != x""; then
564 echo "Setting scache size = $sim_scache" 6>&1
565fi],[sim_scache="-DWITH_SCACHE=${default_sim_scache}"])
566])
567AC_SUBST(sim_scache)
568
569
570dnl The argument is the default model if none is specified.
571AC_DEFUN([SIM_AC_OPTION_DEFAULT_MODEL],
572[
573default_sim_default_model="ifelse([$1],,0,[$1])"
574AC_ARG_ENABLE(sim-default-model,
575[ --enable-sim-default-model=model Specify default model to simulate.],
576[case "${enableval}" in
577 yes|no) AC_MSG_ERROR("Missing argument to --enable-sim-default-model");;
578 *) sim_default_model="-DWITH_DEFAULT_MODEL='\"${enableval}\"'";;
579esac
580if test x"$silent" != x"yes" && test x"$sim_default_model" != x""; then
581 echo "Setting default model = $sim_default_model" 6>&1
582fi],[sim_default_model="-DWITH_DEFAULT_MODEL='\"${default_sim_default_model}\"'"])
583])
584AC_SUBST(sim_default_model)
585
586
587dnl --enable-sim-hardware is for users of the simulator
3fd38161 588dnl arg[1] Enable sim-hw by default? ("yes", "no", or "always")
9c082ca8
MF
589dnl arg[2] is a space separated list of devices that override the defaults
590dnl arg[3] is a space separated list of extra target specific devices.
591AC_DEFUN([SIM_AC_OPTION_HARDWARE],
592[
3fd38161 593if test x"[$1]" != x"no"; then
1517bd27 594 enable_sim_hardware=yes
9c082ca8 595else
1517bd27 596 enable_sim_hardware=no
9c082ca8 597fi
1517bd27 598
9c082ca8
MF
599if test "[$2]"; then
600 hardware="[$2]"
601else
602 hardware="cfi core pal glue"
603fi
604hardware="$hardware [$3]"
1517bd27 605
9c082ca8
MF
606sim_hw_cflags="-DWITH_HW=1"
607sim_hw="$hardware"
608sim_hw_objs="\$(SIM_COMMON_HW_OBJS) `echo $sim_hw | sed -e 's/\([[^ ]][[^ ]]*\)/dv-\1.o/g'`"
1517bd27 609
9c082ca8 610AC_ARG_ENABLE(sim-hardware,
1517bd27
MF
611 [AS_HELP_STRING([--enable-sim-hardware=LIST],
612 [Specify the hardware to be included in the build.])])
613case ${enable_sim_hardware} in
614 yes) sim_hw_p=yes;;
615 no) sim_hw_p=no;;
9c082ca8
MF
616 ,*) sim_hw_p=yes; hardware="${hardware} `echo ${enableval} | sed -e 's/,/ /'`";;
617 *,) sim_hw_p=yes; hardware="`echo ${enableval} | sed -e 's/,/ /'` ${hardware}";;
1517bd27 618 *) sim_hw_p=yes; hardware="`echo ${enableval} | sed -e 's/,/ /'`"'';;
9c082ca8 619esac
1517bd27 620
9c082ca8 621if test "$sim_hw_p" != yes; then
1517bd27
MF
622 if test "[$1]" = "always"; then
623 AC_MSG_ERROR([Sorry, but this simulator requires that hardware support
624be enabled. Please configure without --disable-hw-support.])
625 fi
9c082ca8
MF
626 sim_hw_objs=
627 sim_hw_cflags="-DWITH_HW=0"
628 sim_hw=
629else
630 sim_hw_cflags="-DWITH_HW=1"
631 # remove duplicates
632 sim_hw=""
633 sim_hw_objs="\$(SIM_COMMON_HW_OBJS)"
634 for i in $hardware ; do
635 case " $sim_hw " in
636 *" $i "*) ;;
637 *) sim_hw="$sim_hw $i" ; sim_hw_objs="$sim_hw_objs dv-$i.o";;
638 esac
639 done
3fd38161 640 # mingw does not support sockser
3fd38161
JS
641 case ${host} in
642 *mingw*) ;;
49cd1634
MF
643 *) # TODO: We don't add dv-sockser to sim_hw as it is not a "real" device
644 # that you instatiate. Instead, other code will call into it directly.
645 # At some point, we should convert it over.
646 sim_hw_objs="$sim_hw_objs dv-sockser.o"
3fd38161
JS
647 AC_DEFINE_UNQUOTED(
648 [HAVE_DV_SOCKSER], 1, [Define if dv-sockser is usable.])
649 ;;
650 esac
1517bd27
MF
651 if test x"$silent" != x"yes"; then
652 echo "Setting hardware to $sim_hw_cflags, $sim_hw, $sim_hw_objs"
3fd38161 653 fi
1517bd27
MF
654 dnl Some devices require extra libraries.
655 case " $hardware " in
656 *" cfi "*) AC_CHECK_LIB(m, log2);;
657 esac
9c082ca8 658fi
9c082ca8
MF
659])
660AC_SUBST(sim_hw_cflags)
661AC_SUBST(sim_hw_objs)
662AC_SUBST(sim_hw)
663
664
665dnl --enable-sim-inline is for users that wish to ramp up the simulator's
666dnl performance by inlining functions.
667dnl Guarantee that unconfigured simulators do not do any inlining
668sim_inline="-DDEFAULT_INLINE=0"
669AC_DEFUN([SIM_AC_OPTION_INLINE],
670[
671default_sim_inline="ifelse([$1],,,-DDEFAULT_INLINE=[$1])"
672AC_ARG_ENABLE(sim-inline,
673[ --enable-sim-inline=inlines Specify which functions should be inlined.],
674[sim_inline=""
675case "$enableval" in
676 no) sim_inline="-DDEFAULT_INLINE=0";;
677 0) sim_inline="-DDEFAULT_INLINE=0";;
678 yes | 2) sim_inline="-DDEFAULT_INLINE=ALL_C_INLINE";;
679 1) sim_inline="-DDEFAULT_INLINE=INLINE_LOCALS";;
680 *) for x in `echo "$enableval" | sed -e "s/,/ /g"`; do
681 new_flag=""
682 case "$x" in
683 *_INLINE=*) new_flag="-D$x";;
684 *=*) new_flag=`echo "$x" | sed -e "s/=/_INLINE=/" -e "s/^/-D/"`;;
685 *_INLINE) new_flag="-D$x=ALL_C_INLINE";;
686 *) new_flag="-D$x""_INLINE=ALL_C_INLINE";;
687 esac
688 if test x"$sim_inline" = x""; then
689 sim_inline="$new_flag"
690 else
691 sim_inline="$sim_inline $new_flag"
692 fi
693 done;;
694esac
695if test x"$silent" != x"yes" && test x"$sim_inline" != x""; then
696 echo "Setting inline flags = $sim_inline" 6>&1
697fi],[
698if test "x$cross_compiling" = "xno"; then
699 if test x"$GCC" != "x" -a x"${default_sim_inline}" != "x" ; then
700 sim_inline="${default_sim_inline}"
701 if test x"$silent" != x"yes"; then
702 echo "Setting inline flags = $sim_inline" 6>&1
703 fi
704 else
705 sim_inline=""
706 fi
707else
708 sim_inline="-DDEFAULT_INLINE=0"
709fi])dnl
710])
711AC_SUBST(sim_inline)
712
713
714AC_DEFUN([SIM_AC_OPTION_PACKAGES],
715[
716AC_ARG_ENABLE(sim-packages,
717[ --enable-sim-packages=list Specify the packages to be included in the build.],
718[packages=disklabel
719case "${enableval}" in
720 yes) ;;
721 no) AC_MSG_ERROR("List of packages must be specified for --enable-sim-packages"); packages="";;
722 ,*) packages="${packages}${enableval}";;
723 *,) packages="${enableval}${packages}";;
724 *) packages="${enableval}"'';;
725esac
726sim_pk_src=`echo $packages | sed -e 's/,/.c pk_/g' -e 's/^/pk_/' -e 's/$/.c/'`
727sim_pk_obj=`echo $sim_pk_src | sed -e 's/\.c/.o/g'`
728if test x"$silent" != x"yes" && test x"$packages" != x""; then
729 echo "Setting packages to $sim_pk_src, $sim_pk_obj"
730fi],[packages=disklabel
731sim_pk_src=`echo $packages | sed -e 's/,/.c pk_/g' -e 's/^/pk_/' -e 's/$/.c/'`
732sim_pk_obj=`echo $sim_pk_src | sed -e 's/\.c/.o/g'`
733if test x"$silent" != x"yes"; then
734 echo "Setting packages to $sim_pk_src, $sim_pk_obj"
735fi])dnl
736])
737AC_SUBST(sim_packages)
738
739
740AC_DEFUN([SIM_AC_OPTION_REGPARM],
741[
742AC_ARG_ENABLE(sim-regparm,
743[ --enable-sim-regparm=nr-parm Pass parameters in registers instead of on the stack - x86/GCC specific.],
744[case "${enableval}" in
745 0*|1*|2*|3*|4*|5*|6*|7*|8*|9*) sim_regparm="-DWITH_REGPARM=${enableval}";;
746 no) sim_regparm="" ;;
747 yes) sim_regparm="-DWITH_REGPARM=3";;
748 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-regparm"); sim_regparm="";;
749esac
750if test x"$silent" != x"yes" && test x"$sim_regparm" != x""; then
751 echo "Setting regparm flags = $sim_regparm" 6>&1
752fi],[sim_regparm=""])dnl
753])
754AC_SUBST(sim_regparm)
755
756
757AC_DEFUN([SIM_AC_OPTION_RESERVED_BITS],
758[
759default_sim_reserved_bits="ifelse([$1],,1,[$1])"
760AC_ARG_ENABLE(sim-reserved-bits,
761[ --enable-sim-reserved-bits Specify whether to check reserved bits in instruction.],
762[case "${enableval}" in
763 yes) sim_reserved_bits="-DWITH_RESERVED_BITS=1";;
764 no) sim_reserved_bits="-DWITH_RESERVED_BITS=0";;
765 *) AC_MSG_ERROR("--enable-sim-reserved-bits does not take a value"); sim_reserved_bits="";;
766esac
767if test x"$silent" != x"yes" && test x"$sim_reserved_bits" != x""; then
768 echo "Setting reserved flags = $sim_reserved_bits" 6>&1
769fi],[sim_reserved_bits="-DWITH_RESERVED_BITS=${default_sim_reserved_bits}"])dnl
770])
771AC_SUBST(sim_reserved_bits)
772
773
774AC_DEFUN([SIM_AC_OPTION_SMP],
775[
776default_sim_smp="ifelse([$1],,5,[$1])"
777AC_ARG_ENABLE(sim-smp,
778[ --enable-sim-smp=n Specify number of processors to configure for (default ${default_sim_smp}).],
779[case "${enableval}" in
780 yes) sim_smp="-DWITH_SMP=5" ; sim_igen_smp="-N 5";;
781 no) sim_smp="-DWITH_SMP=0" ; sim_igen_smp="-N 0";;
782 *) sim_smp="-DWITH_SMP=$enableval" ; sim_igen_smp="-N $enableval";;
783esac
784if test x"$silent" != x"yes" && test x"$sim_smp" != x""; then
785 echo "Setting smp flags = $sim_smp" 6>&1
786fi],[sim_smp="-DWITH_SMP=${default_sim_smp}" ; sim_igen_smp="-N ${default_sim_smp}"
787if test x"$silent" != x"yes"; then
788 echo "Setting smp flags = $sim_smp" 6>&1
789fi])dnl
790])
791AC_SUBST(sim_smp)
792
793
794AC_DEFUN([SIM_AC_OPTION_STDCALL],
795[
796AC_ARG_ENABLE(sim-stdcall,
797[ --enable-sim-stdcall=type Use an alternative function call/return mechanism - x86/GCC specific.],
798[case "${enableval}" in
799 no) sim_stdcall="" ;;
800 std*) sim_stdcall="-DWITH_STDCALL=1";;
801 yes) sim_stdcall="-DWITH_STDCALL=1";;
802 *) AC_MSG_ERROR("Unknown value $enableval for --enable-sim-stdcall"); sim_stdcall="";;
803esac
804if test x"$silent" != x"yes" && test x"$sim_stdcall" != x""; then
805 echo "Setting function call flags = $sim_stdcall" 6>&1
806fi],[sim_stdcall=""])dnl
807])
808AC_SUBST(sim_stdcall)
809
810
811AC_DEFUN([SIM_AC_OPTION_XOR_ENDIAN],
812[
813default_sim_xor_endian="ifelse([$1],,8,[$1])"
814AC_ARG_ENABLE(sim-xor-endian,
815[ --enable-sim-xor-endian=n Specify number bytes involved in XOR bi-endian mode (default ${default_sim_xor_endian}).],
816[case "${enableval}" in
817 yes) sim_xor_endian="-DWITH_XOR_ENDIAN=8";;
818 no) sim_xor_endian="-DWITH_XOR_ENDIAN=0";;
819 *) sim_xor_endian="-DWITH_XOR_ENDIAN=$enableval";;
820esac
821if test x"$silent" != x"yes" && test x"$sim_xor_endian" != x""; then
822 echo "Setting xor-endian flag = $sim_xor_endian" 6>&1
823fi],[sim_xor_endian="-DWITH_XOR_ENDIAN=${default_sim_xor_endian}"])dnl
824])
825AC_SUBST(sim_xor_endian)
826
827
828dnl --enable-build-warnings is for developers of the simulator.
829dnl it enables extra GCC specific warnings.
830AC_DEFUN([SIM_AC_OPTION_WARNINGS],
831[
ac0aacdf
MF
832AC_ARG_ENABLE(werror,
833 AS_HELP_STRING([--enable-werror], [treat compile warnings as errors]),
834 [case "${enableval}" in
835 yes | y) ERROR_ON_WARNING="yes" ;;
836 no | n) ERROR_ON_WARNING="no" ;;
837 *) AC_MSG_ERROR(bad value ${enableval} for --enable-werror) ;;
838 esac])
839
840# Enable -Werror by default when using gcc
841if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then
842 ERROR_ON_WARNING=yes
843fi
844
845WERROR_CFLAGS=""
846if test "${ERROR_ON_WARNING}" = yes ; then
847# NOTE: Disabled in the sim dir due to most sims generating warnings.
848# WERROR_CFLAGS="-Werror"
849 true
9c082ca8 850fi
ac0aacdf 851
ac0aacdf 852build_warnings="-Wall -Wdeclaration-after-statement -Wpointer-arith \
1a8a700e 853-Wpointer-sign \
ac0aacdf 854-Wno-unused -Wunused-value -Wunused-function \
1a8a700e
MF
855-Wno-switch -Wno-char-subscripts -Wmissing-prototypes
856-Wdeclaration-after-statement -Wempty-body -Wmissing-parameter-type \
857-Wold-style-declaration -Wold-style-definition"
ac0aacdf
MF
858
859# Enable -Wno-format by default when using gcc on mingw since many
860# GCC versions complain about %I64.
861case "${host}" in
862 *-*-mingw32*) build_warnings="$build_warnings -Wno-format" ;;
d3685d60 863 *) build_warnings="$build_warnings -Wformat-nonliteral" ;;
ac0aacdf
MF
864esac
865
9c082ca8 866AC_ARG_ENABLE(build-warnings,
ac0aacdf 867AS_HELP_STRING([--enable-build-warnings], [enable build-time compiler warnings if gcc is used]),
9c082ca8
MF
868[case "${enableval}" in
869 yes) ;;
870 no) build_warnings="-w";;
871 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
872 build_warnings="${build_warnings} ${t}";;
873 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
874 build_warnings="${t} ${build_warnings}";;
875 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
876esac
877if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
878 echo "Setting compiler warning flags = $build_warnings" 6>&1
879fi])dnl
880AC_ARG_ENABLE(sim-build-warnings,
ac0aacdf 881AS_HELP_STRING([--enable-sim-build-warnings], [enable SIM specific build-time compiler warnings if gcc is used]),
9c082ca8
MF
882[case "${enableval}" in
883 yes) ;;
884 no) build_warnings="-w";;
885 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
886 build_warnings="${build_warnings} ${t}";;
887 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
888 build_warnings="${t} ${build_warnings}";;
889 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
890esac
891if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
892 echo "Setting GDB specific compiler warning flags = $build_warnings" 6>&1
893fi])dnl
894WARN_CFLAGS=""
9c082ca8
MF
895if test "x${build_warnings}" != x -a "x$GCC" = xyes
896then
897 AC_MSG_CHECKING(compiler warning flags)
898 # Separate out the -Werror flag as some files just cannot be
899 # compiled with it enabled.
900 for w in ${build_warnings}; do
901 case $w in
902 -Werr*) WERROR_CFLAGS=-Werror ;;
903 *) # Check that GCC accepts it
904 saved_CFLAGS="$CFLAGS"
905 CFLAGS="$CFLAGS $w"
906 AC_TRY_COMPILE([],[],WARN_CFLAGS="${WARN_CFLAGS} $w",)
907 CFLAGS="$saved_CFLAGS"
908 esac
909 done
ac0aacdf 910 AC_MSG_RESULT(${WARN_CFLAGS} ${WERROR_CFLAGS})
9c082ca8
MF
911fi
912])
913AC_SUBST(WARN_CFLAGS)
914AC_SUBST(WERROR_CFLAGS)
915
916
917dnl Generate the Makefile in a target specific directory.
918dnl Substitutions aren't performed on the file in AC_SUBST_FILE,
919dnl so this is a cover macro to tuck the details away of how we cope.
920dnl We cope by having autoconf generate two files and then merge them into
921dnl one afterwards. The two pieces of the common fragment are inserted into
922dnl the target's fragment at the appropriate points.
923
924AC_DEFUN([SIM_AC_OUTPUT],
925[
926AC_LINK_FILES($sim_link_files, $sim_link_links)
927dnl Make @cgen_breaks@ non-null only if the sim uses CGEN.
928cgen_breaks=""
929if grep CGEN_MAINT $srcdir/Makefile.in >/dev/null; then
930cgen_breaks="break cgen_rtx_error";
931fi
932AC_SUBST(cgen_breaks)
933AC_CONFIG_FILES(Makefile.sim:Makefile.in)
934AC_CONFIG_FILES(Make-common.sim:../common/Make-common.in)
935AC_CONFIG_FILES(.gdbinit:../common/gdbinit.in)
936AC_CONFIG_COMMANDS([Makefile],
937[echo "Merging Makefile.sim+Make-common.sim into Makefile ..."
938 rm -f Makesim1.tmp Makesim2.tmp Makefile
939 sed -n -e '/^## COMMON_PRE_/,/^## End COMMON_PRE_/ p' <Make-common.sim >Makesim1.tmp
940 sed -n -e '/^## COMMON_POST_/,/^## End COMMON_POST_/ p' <Make-common.sim >Makesim2.tmp
941 sed -e '/^## COMMON_PRE_/ r Makesim1.tmp' \
942 -e '/^## COMMON_POST_/ r Makesim2.tmp' \
943 <Makefile.sim >Makefile
944 rm -f Makefile.sim Make-common.sim Makesim1.tmp Makesim2.tmp
945])
946AC_CONFIG_COMMANDS([stamp-h], [echo > stamp-h])
947AC_OUTPUT
948])
949
950sinclude(../../config/gettext-sister.m4)
951sinclude(../../config/acx.m4)
952
953dnl --enable-cgen-maint support
954AC_DEFUN([SIM_AC_OPTION_CGEN_MAINT],
955[
956cgen_maint=no
957dnl Default is to use one in build tree.
958cgen=guile
959cgendir='$(srcdir)/../../cgen'
960dnl Having --enable-maintainer-mode take arguments is another way to go.
961dnl ??? One can argue --with is more appropriate if one wants to specify
962dnl a directory name, but what we're doing here is an enable/disable kind
963dnl of thing and specifying both --enable and --with is klunky.
964dnl If you reeely want this to be --with, go ahead and change it.
965AC_ARG_ENABLE(cgen-maint,
966[ --enable-cgen-maint[=DIR] build cgen generated files],
967[case "${enableval}" in
968 yes) cgen_maint=yes ;;
969 no) cgen_maint=no ;;
970 *)
971 # argument is cgen install directory (not implemented yet).
972 # Having a `share' directory might be more appropriate for the .scm,
973 # .cpu, etc. files.
974 cgendir=${cgen_maint}/lib/cgen
975 cgen=guile
976 ;;
977esac])dnl
978dnl AM_CONDITIONAL(CGEN_MAINT, test x${cgen_maint} != xno)
979if test x${cgen_maint} != xno ; then
980 CGEN_MAINT=''
981else
982 CGEN_MAINT='#'
983fi
984AC_SUBST(CGEN_MAINT)
985AC_SUBST(cgendir)
986AC_SUBST(cgen)
987])
This page took 0.203231 seconds and 4 git commands to generate.