Commit | Line | Data |
---|---|---|
1ffd292b | 1 | dnl Process this file with autoconf to produce a configure script. |
78c09e4a | 2 | AC_PREREQ(2.5)dnl |
1ffd292b | 3 | AC_INIT(Makefile.in) |
b0c9f026 | 4 | |
ed086b0a | 5 | AC_PROG_CC |
78c09e4a | 6 | AC_PROG_INSTALL |
ed086b0a FF |
7 | AC_CHECK_TOOL(AR, ar) |
8 | AC_CHECK_TOOL(RANLIB, ranlib, :) | |
9 | ||
1ffd292b C |
10 | AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..) |
11 | AC_CANONICAL_SYSTEM | |
12 | AC_ARG_PROGRAM | |
6f07ee29 MM |
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) | |
b0c9f026 | 28 | |
6cc77b01 DE |
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 ], | |
f50dc105 | 33 | [case "${enableval}" in |
6cc77b01 DE |
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 | |
247fccde | 41 | only_if_enabled=no |
1fe4ec07 | 42 | extra_subdirs=common |
f50dc105 | 43 | |
b0c9f026 SC |
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 | |
d32033ad | 50 | arm*-*-*) sim_target=arm ;; |
89b993af | 51 | thumb*-*-*) sim_target=arm ;; |
745a0437 | 52 | d10v-*-*) sim_target=d10v ;; |
1fe4ec07 AC |
53 | # start-sanitize-d30v |
54 | d30v-*-*) | |
55 | sim_target=d30v | |
56 | only_if_gcc=yes | |
52352d38 | 57 | extra_subdirs="${extra_subdirs} igen" |
1fe4ec07 AC |
58 | ;; |
59 | # end-sanitize-d30v | |
1ffd292b | 60 | h8300*-*-*) sim_target=h8300 ;; |
47dba87a | 61 | h8500-*-*) sim_target=h8500 ;; |
aafb68ad | 62 | m32r-*-*) sim_target=m32r ;; |
68867afb | 63 | mips*-*-*) |
6cc77b01 DE |
64 | # The MIPS simulator can only be compiled by gcc. |
65 | sim_target=mips | |
66 | only_if_gcc=yes | |
2875c6c6 | 67 | extra_subdirs="${extra_subdirs} igen" |
6cc77b01 | 68 | ;; |
05ccbdfd JL |
69 | mn10300*-*-*) |
70 | # The mn10300 simulator can only be compiled by gcc. | |
71 | sim_target=mn10300 | |
72 | only_if_gcc=yes | |
9bd4b461 | 73 | extra_subdirs="${extra_subdirs} igen" |
05ccbdfd | 74 | ;; |
3788a2b1 JL |
75 | mn10200*-*-*) |
76 | sim_target=mn10200 | |
77 | ;; | |
126d9d0a | 78 | sh*-*-*) sim_target=sh ;; |
cf1e294c | 79 | powerpc*-*-eabi* | powerpc*-*-solaris* | powerpc*-*-sysv4* | powerpc*-*-elf* | powerpc*-*-linux* ) |
6cc77b01 DE |
80 | # The PowerPC simulator uses the GCC extension long long as well as |
81 | # ANSI prototypes, so don't enable it for random host compilers | |
82 | # unless asked to. | |
83 | sim_target=ppc | |
84 | only_if_gcc=yes | |
1fe4ec07 | 85 | #extra_subdirs="${extra_subdirs}" |
6cc77b01 | 86 | ;; |
15c16493 AC |
87 | # start-sanitize-tic80 |
88 | tic80-*-*) | |
89 | sim_target=tic80 | |
90 | only_if_gcc=yes | |
91 | extra_subdirs="${extra_subdirs} igen" | |
92 | ;; | |
93 | # end-sanitize-tic80 | |
aee4f36a | 94 | v850-*-*) |
6cc77b01 DE |
95 | # The V850 simulator can only be compiled by gcc. |
96 | sim_target=v850 | |
04258dee | 97 | extra_subdirs="${extra_subdirs} igen" |
6cc77b01 DE |
98 | only_if_gcc=yes |
99 | ;; | |
6ba5294a NC |
100 | # start-sanitize-v850e |
101 | v850e-*-*) | |
102 | # The V850 simulator can only be compiled by gcc. | |
103 | sim_target=v850 | |
04258dee | 104 | extra_subdirs="${extra_subdirs} igen" |
6ba5294a NC |
105 | only_if_gcc=yes |
106 | ;; | |
61c550e0 | 107 | v850ea-*-*) |
6ba5294a NC |
108 | # The V850 simulator can only be compiled by gcc. |
109 | sim_target=v850 | |
944deab6 | 110 | extra_subdirs="${extra_subdirs} igen" |
6ba5294a NC |
111 | only_if_gcc=yes |
112 | ;; | |
f13f11b4 | 113 | # end-sanitize-v850e |
3f1a33d6 AC |
114 | w65-*-*) |
115 | sim_target=w65 | |
116 | # The w65 is suffering from gradual decay. | |
117 | only_if_enabled=yes | |
118 | ;; | |
1ffd292b | 119 | z8k*-*-*) sim_target=z8k ;; |
2a2eda4d | 120 | sparc64-*-*) |
4234ffa2 DE |
121 | sim_target=none # Don't build erc32 if sparc64. |
122 | ;; | |
6cc77b01 DE |
123 | sparc*-*-*) |
124 | # The SPARC simulator can only be compiled by gcc. | |
125 | sim_target=erc32 | |
126 | only_if_gcc=yes | |
247fccde AC |
127 | # Unfortunately erc32 won't build on many hosts, so only enable |
128 | # it if the user really really wants it. | |
129 | only_if_enabled=yes | |
6cc77b01 | 130 | ;; |
47dba87a | 131 | *) sim_target=none ;; |
b0c9f026 SC |
132 | esac |
133 | ||
52352d38 AC |
134 | |
135 | # Is there a testsuite directory for the target? | |
136 | testdir=`echo ${target} | sed -e 's/-.*-/-/'` | |
137 | if test -r ${srcdir}/testsuite/${testdir}/configure ; then | |
138 | extra_subdirs="${extra_subdirs} testsuite" | |
139 | fi | |
140 | ||
141 | ||
6cc77b01 DE |
142 | case "${enable_sim}" in |
143 | no) sim_target=none ;; | |
144 | yes) | |
145 | if test ${only_if_gcc} = yes ; then | |
146 | if test "${GCC}" != yes ; then | |
147 | echo "Can't enable simulator since not compiling with GCC." | |
148 | sim_target=none | |
149 | fi | |
150 | fi | |
151 | ;; | |
152 | *) | |
247fccde AC |
153 | if test ${only_if_enabled} = yes ; then |
154 | sim_target=none | |
155 | else | |
156 | if test ${only_if_gcc} = yes ; then | |
157 | if test "${GCC}" != yes ; then | |
158 | sim_target=none | |
159 | fi | |
6cc77b01 DE |
160 | fi |
161 | fi | |
162 | ;; | |
163 | esac | |
164 | ||
4234ffa2 | 165 | if test x"${sim_target}" != xnone ; then |
1fe4ec07 | 166 | configdirs="${extra_subdirs} ${sim_target}" |
2a2eda4d DE |
167 | AC_CONFIG_SUBDIRS($configdirs) |
168 | fi | |
b0c9f026 | 169 | |
1ffd292b | 170 | AC_OUTPUT(Makefile) |
23de525f PS |
171 | |
172 | exit 0 |