-# This file is a shell script that supplies the information necessary
-# to tailor a template configure script into the configure script
-# appropriate for this directory. For more information, check any
-# existing configure script.
+dnl Process this file with autoconf to produce a configure script.
+AC_PREREQ(2.5)dnl
+AC_INIT(Makefile.in)
-configdirs="h8300 z8k h8500 sh"
-srctrigger=Makefile.in
-srcname="sim"
-target_dependent=true
+AC_PROG_CC
+AC_PROG_INSTALL
+AC_CHECK_TOOL(AR, ar)
+AC_CHECK_TOOL(RANLIB, ranlib, :)
-# per-host:
+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])
-# per-target:
+# 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
# convention, else the table becomes a real mess to understand and maintain.
case "${target}" in
- h8300-*-*) sim_target=h8300 ;;
+ arm*-*-*) sim_target=arm ;;
+ thumb*-*-*) sim_target=arm ;;
+ d10v-*-*) sim_target=d10v ;;
+ d30v-*-*)
+ sim_target=d30v
+ only_if_gcc=yes
+ extra_subdirs="${extra_subdirs} igen"
+ ;;
+ h8300*-*-*) sim_target=h8300 ;;
h8500-*-*) sim_target=h8500 ;;
- z8k*-*-*) sim_target=z8k ;;
+ 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
+ ;;
+# start-sanitize-v850e
+ 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
+ ;;
+# end-sanitize-v850e
+ w65-*-*)
+ sim_target=w65
+ # The w65 is suffering from gradual decay.
+ only_if_enabled=yes
+ ;;
+ z8k*-*-*) sim_target=z8k ;;
+ sparc64-*-*)
+ sim_target=none # Don't build erc32 if sparc64.
+ ;;
+ sparclite*-*-* | sparc86x*-*-*)
+ # The SPARC simulator can only be compiled by gcc.
+ sim_target=erc32
+ only_if_gcc=yes
+ ;;
+ sparc*-*-*)
+ # The SPARC simulator can only be compiled by gcc.
+ sim_target=erc32
+ only_if_gcc=yes
+ # 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=none ;;
esac
-configdirs=${sim_target}
-if [ ! -f ${srcdir}/${sim_target}/${sim_target}.mt ] ; then
-target_makefile_frag=
-else
-target_makefile_frag=${sim_target}/${sim_target}.mt
+# 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
-# post-target:
+
+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