AC_PROG_CXX
AC_CHECK_TOOL([AR],[ar])
AC_CHECK_TOOL([RANLIB],[ranlib])
+AC_PATH_PROG([DTC],[dtc],[no])
+AS_IF([test x"$DTC" == xno],AC_MSG_ERROR([device-tree-compiler not found]))
+AC_DEFINE_UNQUOTED(DTC, ["$DTC"], [Path to the device-tree-compiler])
+
+AC_C_BIGENDIAN(AC_MSG_ERROR([Spike requires a little-endian host]))
#-------------------------------------------------------------------------
# MCPPBS specific program checks
AC_SUBST([CFLAGS], ["-Wall -Wno-unused -g -O2"])
AC_SUBST([CXXFLAGS],["-Wall -Wno-unused -g -O2 -std=c++11"])
+#-------------------------------------------------------------------------
+# Enable Simple-V
+#-------------------------------------------------------------------------
+
+simplev="no"
+
+AC_ARG_ENABLE([simplev],
+ [AC_HELP_STRING([--disable-simplev],[Support for SimpleV (default enabled)])],
+ [simplev=$enableval],
+ [simplev=yes]
+ )
+if test "x$simplev" = xyes; then
+ AC_DEFINE([SPIKE_SIMPLEV], [1], [Defined to 1 if SimpleV support is wanted])
+fi
+
#-------------------------------------------------------------------------
# MCPPBS subproject list
#-------------------------------------------------------------------------
# The '*' suffix indicates an optional subproject. The '**' suffix
# indicates an optional subproject which is also the name of a group.
-MCPPBS_SUBPROJECTS([ riscv, dummy_rocc, softfloat, spike_main ])
+MCPPBS_SUBPROJECTS([ riscv, dummy_rocc, softfloat, operators, spike_main ])
#-------------------------------------------------------------------------
# MCPPBS subproject groups
AC_CONFIG_FILES([riscv-spike.pc])
AC_CONFIG_FILES([riscv-riscv.pc])
AC_CONFIG_FILES([riscv-softfloat.pc])
+AC_CONFIG_FILES([riscv-operators.pc])
AC_CONFIG_FILES([riscv-dummy_rocc.pc])
AC_CONFIG_FILES([riscv-spike_main.pc])
AC_OUTPUT