6274b87bc32e9490f4e2ed72a1ae144680d16dbf
[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 d10v-*-*) sim_target=d10v ;;
52 # start-sanitize-d30v
53 d30v-*-*)
54 sim_target=d30v
55 only_if_gcc=yes
56 extra_subdirs="${extra_subdirs} igen testsuite"
57 ;;
58 # end-sanitize-d30v
59 h8300*-*-*) sim_target=h8300 ;;
60 h8500-*-*) sim_target=h8500 ;;
61 m32r-*-*) sim_target=m32r ;;
62 mips*-*-*)
63 # The MIPS simulator can only be compiled by gcc.
64 sim_target=mips
65 only_if_gcc=yes
66 ;;
67 mn10300*-*-*)
68 # The mn10300 simulator can only be compiled by gcc.
69 sim_target=mn10300
70 only_if_gcc=yes
71 ;;
72 mn10200*-*-*)
73 sim_target=mn10200
74 ;;
75 sh*-*-*) sim_target=sh ;;
76 powerpc*-*-eabi* | powerpc*-*-solaris* | powerpc*-*-sysv4* | powerpc*-*-elf* | powerpc*-*-linux* )
77 # The PowerPC simulator uses the GCC extension long long as well as
78 # ANSI prototypes, so don't enable it for random host compilers
79 # unless asked to.
80 sim_target=ppc
81 only_if_gcc=yes
82 #extra_subdirs="${extra_subdirs}"
83 ;;
84 # start-sanitize-tic80
85 tic80-*-*)
86 sim_target=tic80
87 only_if_gcc=yes
88 extra_subdirs="${extra_subdirs} igen"
89 ;;
90 # end-sanitize-tic80
91 # start-sanitize-v850
92 v850-*-*)
93 # The V850 simulator can only be compiled by gcc.
94 sim_target=v850
95 only_if_gcc=yes
96 ;;
97 # end-sanitize-v850
98 # start-sanitize-v850e
99 v850e-*-*)
100 # The V850 simulator can only be compiled by gcc.
101 sim_target=v850
102 only_if_gcc=yes
103 ;;
104 # end-sanitize-v850e
105 # start-sanitize-v850eq
106 v850eq-*-*)
107 # The V850 simulator can only be compiled by gcc.
108 sim_target=v850
109 only_if_gcc=yes
110 ;;
111 # end-sanitize-v850eq
112 w65-*-*) sim_target=w65 ;;
113 z8k*-*-*) sim_target=z8k ;;
114 sparc64-*-*)
115 sim_target=none # Don't build erc32 if sparc64.
116 ;;
117 sparc*-*-*)
118 # The SPARC simulator can only be compiled by gcc.
119 sim_target=erc32
120 only_if_gcc=yes
121 # Unfortunately erc32 won't build on many hosts, so only enable
122 # it if the user really really wants it.
123 only_if_enabled=yes
124 ;;
125 *) sim_target=none ;;
126 esac
127
128 case "${enable_sim}" in
129 no) sim_target=none ;;
130 yes)
131 if test ${only_if_gcc} = yes ; then
132 if test "${GCC}" != yes ; then
133 echo "Can't enable simulator since not compiling with GCC."
134 sim_target=none
135 fi
136 fi
137 ;;
138 *)
139 if test ${only_if_enabled} = yes ; then
140 sim_target=none
141 else
142 if test ${only_if_gcc} = yes ; then
143 if test "${GCC}" != yes ; then
144 sim_target=none
145 fi
146 fi
147 fi
148 ;;
149 esac
150
151 if test x"${sim_target}" != xnone ; then
152 configdirs="${extra_subdirs} ${sim_target}"
153 AC_CONFIG_SUBDIRS($configdirs)
154 fi
155
156 AC_OUTPUT(Makefile)
157
158 exit 0