1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
|
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.12.1)dnl
AC_INIT(Makefile.in)
AC_PROG_CC
AC_PROG_INSTALL
AC_CHECK_TOOL(AR, ar)
AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
AC_CANONICAL_SYSTEM
AC_ARG_PROGRAM
AC_PROG_CC
AC_SUBST(CFLAGS)
AC_SUBST(HDEFINES)
AR=${AR-ar}
AC_SUBST(AR)
AC_PROG_RANLIB
# Put a plausible default for CC_FOR_BUILD in Makefile.
AC_C_CROSS
if test "x$cross_compiling" = "xno"; then
CC_FOR_BUILD='$(CC)'
else
CC_FOR_BUILD=gcc
fi
AC_SUBST(CC_FOR_BUILD)
# If a cpu ever has more than one simulator to choose from, use
# --enable-sim=... to choose.
AC_ARG_ENABLE(sim,
[ --enable-sim ],
[case "${enableval}" in
yes | no) ;;
*) AC_MSG_ERROR(bad value ${enableval} given for --enable-sim option) ;;
esac])
# Assume simulator can be built with cc.
# If the user passes --enable-sim built it regardless of $(CC).
only_if_gcc=no
only_if_enabled=no
extra_subdirs=common
# WHEN ADDING ENTRIES TO THIS MATRIX:
# Make sure that the left side always has two dashes. Otherwise you
# can get spurious matches. Even for unambiguous cases, do this as a
# convention, else the table becomes a real mess to understand and maintain.
case "${target}" in
arm*-*-*) sim_target=arm ;;
strongarm*-*-*) sim_target=arm ;;
thumb*-*-*) sim_target=arm ;;
d10v-*-*) sim_target=d10v ;;
d30v-*-*)
sim_target=d30v
only_if_gcc=yes
extra_subdirs="${extra_subdirs} igen"
;;
fr30-*-*) sim_target=fr30 ;;
h8300*-*-*) sim_target=h8300 ;;
h8500-*-*) sim_target=h8500 ;;
i960-*-*) sim_target=i960 ;;
m32r-*-*) sim_target=m32r ;;
mips*-*-*)
# The MIPS simulator can only be compiled by gcc.
sim_target=mips
only_if_gcc=yes
extra_subdirs="${extra_subdirs} igen"
;;
mn10300*-*-*)
# The mn10300 simulator can only be compiled by gcc.
sim_target=mn10300
only_if_gcc=yes
extra_subdirs="${extra_subdirs} igen"
;;
mn10200*-*-*)
sim_target=mn10200
;;
sh*-*-*) sim_target=sh ;;
powerpc*-*-eabi* | powerpc*-*-solaris* | powerpc*-*-sysv4* | powerpc*-*-elf* | powerpc*-*-linux* )
# The PowerPC simulator uses the GCC extension long long as well as
# ANSI prototypes, so don't enable it for random host compilers
# unless asked to.
sim_target=ppc
only_if_gcc=yes
#extra_subdirs="${extra_subdirs}"
;;
# start-sanitize-tic80
tic80-*-*)
sim_target=tic80
only_if_gcc=yes
extra_subdirs="${extra_subdirs} igen"
;;
# end-sanitize-tic80
v850-*-*)
# The V850 simulator can only be compiled by gcc.
sim_target=v850
extra_subdirs="${extra_subdirs} igen"
only_if_gcc=yes
;;
v850e-*-*)
# The V850 simulator can only be compiled by gcc.
sim_target=v850
extra_subdirs="${extra_subdirs} igen"
only_if_gcc=yes
;;
v850ea-*-*)
# The V850 simulator can only be compiled by gcc.
sim_target=v850
extra_subdirs="${extra_subdirs} igen"
only_if_gcc=yes
;;
w65-*-*)
sim_target=w65
# The w65 is suffering from gradual decay.
only_if_enabled=yes
;;
z8k*-*-*) sim_target=z8k ;;
sparc64-*-*)
only_if_gcc=yes
if test "x${with_cgen}" = xyes ; then
sim_target=sparc
extra_subdirs="${extra_subdirs} testsuite"
else
sim_target=none # Don't build erc32 if sparc64.
fi
;;
sparclite*-*-* | sparc86x*-*-*)
# The SPARC simulator can only be compiled by gcc.
only_if_gcc=yes
if test "x${with_cgen}" = xyes ; then
sim_target=sparc
extra_subdirs="${extra_subdirs} testsuite"
else
sim_target=erc32
fi
;;
sparc*-*-*)
# The SPARC simulator can only be compiled by gcc.
only_if_gcc=yes
if test "x${with_cgen}" = xyes ; then
sim_target=sparc
extra_subdirs="${extra_subdirs} testsuite"
else
# Unfortunately erc32 won't build on many hosts, so only enable
# it if the user really really wants it.
only_if_enabled=yes
sim_target=erc32
fi
;;
*) sim_target=none ;;
esac
# start-sanitize-gxsim
AC_ARG_ENABLE(sim-gx, [],
[case "${enableval}" in
yes)
if test -d ${srcdir}/${sim_target}-gx ; then
extra_subdirs="${sim_target}-gx"
else
AC_MSG_WARN(GX simulator not available for ${sim_target})
fi ;;
esac])dnl
# end-sanitize-gxsim
# Is there a testsuite directory for the target?
testdir=`echo ${target} | sed -e 's/-.*-/-/'`
if test -r ${srcdir}/testsuite/${testdir}/configure ; then
extra_subdirs="${extra_subdirs} testsuite"
fi
case "${enable_sim}" in
no) sim_target=none ;;
yes)
if test ${only_if_gcc} = yes ; then
if test "${GCC}" != yes ; then
echo "Can't enable simulator since not compiling with GCC."
sim_target=none
fi
fi
;;
*)
if test ${only_if_enabled} = yes ; then
sim_target=none
else
if test ${only_if_gcc} = yes ; then
if test "${GCC}" != yes ; then
sim_target=none
fi
fi
fi
;;
esac
if test x"${sim_target}" != xnone ; then
configdirs="${extra_subdirs} ${sim_target}"
AC_CONFIG_SUBDIRS($configdirs)
fi
AC_OUTPUT(Makefile)
exit 0
|