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