sim: unify hardware settings
[binutils-gdb.git] / sim / configure.ac
index 35101a0d6729e755d90546034fd519aa01d590ab..042bfbfd1cd3590a736486c31fb576d412d281c9 100644 (file)
@@ -5,10 +5,21 @@ AC_INIT([sim], [0],
   [https://sourceware.org/bugzilla/enter_bug.cgi?product=gdb&component=sim],
   [], [https://sourceware.org/gdb/wiki/Sim/])
 
+dnl Probably should unify PKGVERSION with PACKAGE_* settings from AC_INIT.
+ACX_PKGVERSION([SIM])
+AC_DEFINE_UNQUOTED([PKGVERSION], ["$PKGVERSION"], [Additional package description])
+dnl PACKAGE_BUGREPORT is provided by AC_INIT.
+ACX_BUGURL([$PACKAGE_BUGREPORT])
+AC_DEFINE_UNQUOTED([REPORT_BUGS_TO], ["$REPORT_BUGS_TO"], [Bug reporting address])
+
+AC_CONFIG_HEADERS([config.h])
+
 SIM_AC_TOOLCHAIN
+SIM_AC_PLATFORM
 
 AM_MAINTAINER_MODE
 AM_INIT_AUTOMAKE
+AM_SILENT_RULES([yes])
 
 # If a cpu ever has more than one simulator to choose from, use
 # --enable-sim=... to choose.
@@ -19,6 +30,10 @@ yes | no) ;;
 *)     AC_MSG_ERROR(bad value ${enableval} given for --enable-sim option) ;;
 esac])
 
+AC_ARG_ENABLE([example-sims],
+             [AC_HELP_STRING([--enable-example-sims],
+                             [enable example GNU simulators])])
+
 AC_ARG_ENABLE(targets,
 [  --enable-targets        alternative target configurations],
 [case "${enableval}" in
@@ -33,13 +48,20 @@ dnl used when installing files to see if they need to be suffixed.
 SIM_PRIMARY_TARGET=
 AC_SUBST(SIM_PRIMARY_TARGET)
 
-m4_define([SIM_TARGET], [
+m4_define([SIM_BUILD_TARGET], [dnl
+  AC_CONFIG_SUBDIRS($1)
+  dnl Create the depdirs for ports until we can convert them to automake.
+  AC_CONFIG_COMMANDS([depdir-$1],
+                    [$SHELL $ac_aux_dir/mkinstalldirs $1/$DEPDIR],
+                    [ac_aux_dir=$ac_aux_dir DEPDIR=$DEPDIR])
+])
+m4_define([SIM_TARGET], [dnl
   case "${targ}" in
     all|$1)
       if test "${targ}" = "${target}"; then
         SIM_PRIMARY_TARGET=$2
       fi
-      AC_CONFIG_SUBDIRS($2)
+      SIM_BUILD_TARGET($2)
       $3
       ;;
   esac
@@ -85,8 +107,27 @@ if test "${enable_sim}" != no; then
     SIM_TARGET([ft32-*-*], [ft32])
     SIM_TARGET([v850*-*-*], [v850], [sim_igen=yes])
   done
+
+  if test "x${enable_example_sims}" = xyes; then
+    SIM_BUILD_TARGET([example-synacor])
+  fi
 fi
 AM_CONDITIONAL([SIM_ENABLE_IGEN], [test "$sim_igen" = "yes"])
 
-AC_CONFIG_FILES([Makefile])
+dnl Standard (and optional) simulator options.
+dnl Eventually all simulators will support these.
+SIM_AC_OPTION_ALIGNMENT
+SIM_AC_OPTION_ASSERT
+SIM_AC_OPTION_CGEN_MAINT
+SIM_AC_OPTION_DEBUG
+SIM_AC_OPTION_ENDIAN
+SIM_AC_OPTION_ENVIRONMENT
+SIM_AC_OPTION_HARDWARE
+SIM_AC_OPTION_INLINE
+SIM_AC_OPTION_PROFILE
+SIM_AC_OPTION_STDIO
+SIM_AC_OPTION_TRACE
+SIM_AC_OPTION_WARNINGS
+
+AC_CONFIG_FILES([arch-subdir.mk Makefile])
 AC_OUTPUT