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