2021-06-14  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call AM_SILENT_RULES.
	* Makefile.in, configure: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_platform.m4: Delete sys/select.h.
	* config.h.in, configure: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call SIM_AC_OPTION_ALIGNMENT.
	* m4/sim_ac_option_alignment.m4: Delete wire and default alignment.
	* aclocal.m4, config.h.in, configure, Makefile.in: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Define PKGVERSION & REPORT_BUGS_TO.
	* m4/sim_ac_common.m4: Delete calls to ACX_PKGVERSION & ACX_BUGURL.
	* aclocal.m4, config.h.in, configure, Makefile.in: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call SIM_AC_OPTION_DEBUG, SIM_AC_OPTION_STDIO,
	SIM_AC_OPTION_TRACE, and SIM_AC_OPTION_PROFILE.
	* m4/sim_ac_common.m4: Delete calls to SIM_AC_OPTION_DEBUG,
	SIM_AC_OPTION_STDIO, SIM_AC_OPTION_TRACE, and SIM_AC_OPTION_PROFILE.
	* aclocal.m4, config.h.in, configure, Makefile.in: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4: Replace --enable-sim-debug, --enable-sim-stdio,
	--enable-sim-trace, and --enable-sim-profile with calls to
	SIM_AC_OPTION_DEBUG, SIM_AC_OPTION_STDIO, SIM_AC_OPTION_TRACE, and
	SIM_AC_OPTION_PROFILE.
	* m4/sim_ac_option_debug.m4: New file.
	* m4/sim_ac_option_profile.m4: New file.
	* m4/sim_ac_option_stdio.m4: New file.
	* m4/sim_ac_option_trace.m4: New file.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_platform.m4: Check more headers, funcs, structs, and
	types.
	* config.h.in, configure: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call SIM_AC_OPTION_ENVIRONMENT.
	* m4/sim_ac_common.m4: Delete call to SIM_AC_OPTION_ENVIRONMENT.
	* aclocal.m4, config.h.in, configure, Makefile.in: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call SIM_AC_OPTION_ASSERT.
	* m4/sim_ac_common.m4: Delete call to SIM_AC_OPTION_ASSERT.
	* aclocal.m4, config.h.in, configure, Makefile.in: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call AC_CONFIG_HEADERS and SIM_AC_PLATFORM.
	* m4/sim_ac_common.m4: Delete calls to AC_CHECK_HEADERS_ONCE,
	AC_CHECK_FUNCS_ONCE, AC_CHECK_MEMBERS, AC_CHECK_TYPES, and
	AC_TYPE_SIGNAL.
	* aclocal.m4, configure, Makefile.in: Regenerate.
	* config.h.in: New file.
	* m4/sim_ac_platform.m4: New file.

2021-06-05  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.am: Include common/local.mk.
	(SIM_ALL_RECURSIVE_DEPS): Define.
	(all-recursive): New rule.
	* Makefile.in: Regenerated.

2021-05-16  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.am (pkginclude_HEADERS): Define.
	* Makefile.in: Regenerated.

2021-05-15  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4: Check for __int128 type.

2021-05-14  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Update callback.h path.

2021-05-12  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Delete mention of SIM_AC_OPTION_ENVIRONMENT.

2021-05-12  Luis Machado  <luis.machado@linaro.org>

	* d10v/interp.c (sim_create_inferior): Fix memset call.

2021-05-07  Dimitar Dimitrov  <dimitar@dinux.eu>

	* Makefile.in: Rebuild.

2021-05-04  Tom Tromey  <tromey@adacore.com>

	* Makefile.in: Rebuild.
	* Makefile.am (AM_CPPFLAGS): New variable.

2021-05-04  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_toolchain.m4 (SIM_AC_TOOLCHAIN): Define AR_FOR_BUILD and
	RANLIB_FOR_BUILD.
	* configure, Makefile.in: Regenerate.

2021-05-01  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4 (AC_CHECK_FUNCS_ONCE): Add strsignal.

2021-04-26  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING (nltvals.def): Update to gennltvals.py.

2021-04-26  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_output.m4 (SIM_AC_OUTPUT): Require SIM_AC_OPTION_HARDWARE.

2021-04-23  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING (SIM_AC_OPTION_HARDWARE): Delete first two args.
	* m4/sim_ac_option_hardware.m4 (SIM_AC_OPTION_HARDWARE): Replace [$1]
	with yes.  Delete test [$2].  Change [$3] to [$1].  Update comments.

2021-04-22  Tom Tromey  <tom@tromey.com>

	* m4/sim_ac_common.m4 (SIM_AC_COMMON): Don't check for sys/time.h
	or sys/times.h.

2021-04-22  Tom Tromey  <tom@tromey.com>

	* m4/sim_ac_common.m4 (SIM_AC_COMMON): Don't check for make.

2021-04-21  Simon Marchi  <simon.marchi@polymtl.ca>

	* m4/sim_ac_option_warnings.m4 (SIM_AC_OPTION_WARNINGS): Use
	-Werror when probing for supported warning flags.

2021-04-18  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4: Change AC_CHECK_HEADERS to
	AC_CHECK_HEADERS_ONCE, merge calls, and sort args.

2021-04-18  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4: Change AC_CHECK_FUNCS to AC_CHECK_FUNCS_ONCE,
	merge calls, and sort args.

2021-04-03  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Add --example-sims option.
	* configure: Regenerate.

2021-04-03  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.am (check_PROGRAMS, CLEANFILES, DISTCLEANFILES): Define.
	* Makefile.in: Regenerated.

2021-04-03  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.am (SIM_PRIMARY_TARGET, AM_MAKEFLAGS): Define.
	* configure.ac: Add --enable-targets option.  Define SIM_PRIMARY_TARGET
	and SIM_TARGET.  Rewrite case statement with SIM_TARGET calls.
	* Makefile.in, configure: Regenerate.

2021-04-02  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.am [SIM_ENABLE_IGEN]: Include igen/local.mk.
	* configure.ac: Delete AC_CONFIG_SUBDIRS(igen) call.
	(SIM_ENABLE_IGEN): Define.
	* configure, Makefile.in: Regenerate.

2021-04-02  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.am (ACLOCAL_AMFLAGS): Add -Im4.
	(COMPILE_FOR_BUILD, LINK_FOR_BUILD): Define.
	* configure.ac: Replace toolchain calls with SIM_AC_TOOLCHAIN.
	* m4/sim_ac_common.m4 (SIM_AC_COMMON): Replace toolchain calls
	with SIM_AC_TOOLCHAIN.
	* m4/sim_ac_toolchain.m4: New file.
	* aclocal.m4, configure, Makefile.in: Regenerate.

2021-03-08  Tom Tromey  <tromey@adacore.com>

	* aclocal.m4, configure, Makefile.in: Rebuild.
	* configure.ac: Use AM_MAINTAINER_MODE.

2021-03-07  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (AC_CONFIG_FILES): Delete testsuite/Makefile.
	* Makefile.am: Include testsuite/local.mk.
	(AUTOMAKE_OPTIONS): Add dejagnu.
	* configure, Makefile.in: Regenerated.

2021-03-07  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.am: New file.
	* configure.ac: Update AC_INIT call.  Move AC_CANONICAL_SYSTEM after
	it.  Call AM_INIT_AUTOMAKE.  Delete AC_CONFIG_MACRO_DIRS.
	* aclocal.m4, configure, Makefile.in: Regenerated.

2021-02-28  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4 (SIM_AC_COMMON): Delete CC_FOR_BUILD test.
	Change CC_FOR_BUILD assignment.  Define CFLAGS_FOR_BUILD.

2021-02-28  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4 (SIM_AC_COMMON): Replace AR assignment and
	AC_SUBST(AR) with call to AC_CHECK_TOOL(AR, ar).

2021-02-28  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4 (SIM_AC_COMMON): Require AC_PROG_CPP.

2021-02-28  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Delete SIM_EXTRA_LIBDEPS.

2021-02-27  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Delete SIM_EXTRA_ALL.

2021-02-21  Mike Frysinger  <vapier@gentoo.org>

	* m4/sim_ac_common.m4, m4/sim_ac_option_alignment.m4,
	m4/sim_ac_option_assert.m4, m4/sim_ac_option_bitsize.m4,
	m4/sim_ac_option_cgen_maint.m4, m4/sim_ac_option_default_model.m4,
	m4/sim_ac_option_endian.m4, m4/sim_ac_option_environment.m4,
	m4/sim_ac_option_float.m4, m4/sim_ac_option_hardware.m4,
	m4/sim_ac_option_inline.m4, m4/sim_ac_option_reserved_bits.m4,
	m4/sim_ac_option_scache.m4, m4/sim_ac_option_smp.m4,
	m4/sim_ac_option_warnings.m4, m4/sim_ac_option_xor_endian.m4,
	m4/sim_ac_output.m4: New files.

2021-02-20  Mike Frysinger  <vapier@gentoo.org>

	* configure.tgt: Move arch list ...
	* configure.ac: ... here.
	* configure: Regenerate.

2021-02-19  Nelson Chu  <nelson.chu@sifive.com>

	PR 27158
	* riscv/sim-main.c (execute_i): Updated encoding macros.

2021-02-13  Mike Frysinger  <vapier@gentoo.org>

	* configure.tgt: Delete call to AC_SUBST(sim_arch).
	* configure: Regenerate.

2021-02-13  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Replace sinclude with AC_CONFIG_MACRO_DIRS in
	configure.ac skeleton.

2021-02-06  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Replace STATE_WATCHPOINTS with CPU_PC_FETCH.

2021-02-06  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (HDEFINES): Delete AC_SUBST call.
	* configure: Regenerate.

2021-02-04  Mike Frysinger  <vapier@gentoo.org>

	* configure.tgt (sim_arch): Add entry for riscv*-*-*.
	* configure: Regenerate.

2021-01-30  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (nltvals): Change to gennltvals.py.

2021-01-30  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Delete reference to sizeof_pc.

2021-01-29  Mike Frysinger  <vapier@gentoo.org>

	* MAINTAINERS (Global Maintainers): Move myself back.

2021-01-18  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call AC_PROG_CPP.
	* configure: Regenerate.
	* Makefile.in (abs_srcdir, srcroot, CPP): Define.
	(nltvals): New target.
	* README-HACKING: Change headers to nltvals.

2021-01-18  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (headers): Change args to gennltvals.sh.
	* gennltvals.sh: Rewrite from scratch.
	* gentvals.sh: Delete.
	* nltvals.def: Regen.

2021-01-15  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Delete AC_CONFIG_SUBDIRS(testsuite) call.
	Add AC_CONFIG_FILES([Makefile testsuite/Makefile]) call.
	Drop argument to AC_OUTPUT.
	* configure: Regenerate.

2021-01-12  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING (SIM_RUN_OBJS): Delete.

2021-01-09  Mike Frysinger  <vapier@gentoo.org>

	* MAINTAINERS (sh64): Move to past maintainers.
	* configure: Regenerate.
	* configure.tgt (sh64*-*-*): Delete.
	* sh64/: Delete.

2021-01-09  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING (AC_PREREQ): Delete.

2021-01-08  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING (C Language Assumptions): Require C11 compiler.

2020-09-03  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* configure.ac: Do not configure sim/testsuite nor sim/igen if the
	primary target doesn't have a simulator.
	* configure: Regenerate.

2020-08-04  Jose E. Marchesi  <jose.marchesi@oracle.com>
	    David Faust <david.faust@oracle.com>

	* configure.tgt (sim_arch): Add entry for bpf-*-*.
	* configure: Regenerate.
	* MAINTAINERS: Add maintainer for the BPF simulator.

2019-12-19  Tom Tromey  <tromey@adacore.com>

	PR build/24572:
	* Makefile.in (install-strip): New target.

2019-09-23  Dimitar Dimitrov  <dimitar@dinux.eu>

	* MAINTAINERS: Add myself as PRU maintainer.
	* configure: Regenerated.
	* configure.tgt: Add PRU.

2019-09-18  Alan Modra  <amodra@gmail.com>

	* common/sim-load.c, * common/sim-utils.c, * cris/sim-if.c,
	* erc32/func.c, * lm32/sim-if.c, * m32c/load.c, * m32c/trace.c,
	* m68hc11/interp.c, * ppc/hw_htab.c, * ppc/hw_init.c,
	* rl78/load.c, * rl78/trace.c, * rx/gdb-if.c, * rx/load.c,
	* rx/trace.c: Update throughout for bfd section macro changes.

2019-02-28  Joel Brobecker  <brobecker@adacore.com>

	* MAINTAINERS: Move Mike Frysinger to past maintainers' section.

2019-02-13  Simon Marchi  <simon.marchi@ericsson.com>

	* MAINTAINERS: Add Andrew Burgess as global maintainer.

2019-01-03  Pavel I. Kryukov  <kryukov@frtk.ru>

	* sim-base.h: Add 'extern C' if header is compiled with C++.

2018-12-06  Andrew Burgess  <andrew.burgess@embecosm.com>

	* common/acinclude.m4 (enable-cgen-maint): Support passing path to
	cgen source tree.
	* cris/configure: Regenerate.
	* frv/configure: Regenerate.
	* iq2000/configure: Regenerate.
	* lm32/configure: Regenerate.
	* m32r/configure: Regenerate.
	* or1k/configure: Regenerate.
	* sh64/configure: Regenerate.

2018-07-20  Maciej W. Rozycki  <macro@mips.com>

	* MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
	ISA maintenance.

2018-07-19  DJ Delorie  <dj@redhat.com>

	* MAINTAINERS (rl78, m32c, rx, v850): Remove myself as maintainer.

2018-07-14  Stafford Horne  <shorne@gmail.com>

	* MAINTAINERS (or1k): Add myself as or1k maintainer.

2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>

	* All configure.ac: Remove AC_PREREQ.
	* All configure: Re-generate.

2018-01-22  Maciej W. Rozycki  <macro@mips.com>

	* MAINTAINERS: Update my company e-mail address.

2017-12-12  Stafford Horne  <shorne@gmail.com>
	    Peter Gavin  <pgavin@gmail.com>

	* configure: Regenerated.

2017-12-12  Stafford Horne  <shorne@gmail.com>
	    Peter Gavin  <pgavin@gmail.com>

	* configure.tgt: Add or1k sim.

2017-10-12  James Bowman  <james.bowman@ftdichip.com>

	* MAINTAINERS (ft32): Add myself.

2017-10-03  Jim Wilson  <wilson@tuliptree.org>

	* MAINTAINERS (aarch64): Update my email address.

2017-09-06  John Baldwin  <jhb@FreeBSD.org>

	* configure.ac: Honor existing CC_FOR_BUILD in environment.
	* configure: Regenerate.

2017-02-14  Jim Wilson  <jim.wilson@linaro.org>

	* MAINTAINTERS (aarch64): Add myself.

2016-12-14  Maciej W. Rozycki  <macro@imgtec.com>

	* MAINTAINERS (Maintainers for particular sims): Add myself as
	a MIPS maintainer.

2016-02-03  Maciej W. Rozycki  <macro@linux-mips.org>

	* MAINTAINERS (Past sim maintainers): Add Thiemo Seufer.

2016-01-09  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Delete sim_common check and the
	AC_CONFIG_SUBDIRS(common) call.
	* configure: Regenerate.
	* configure.tgt (sim_common): Delete the variable.

2016-01-09  Mike Frysinger  <vapier@gentoo.org>

	* .gitignore: Delete /common/cconfig.h entry.

2016-01-05  Nick Clifton  <nickc@redhat.com>

	* MAINTAINERS: Add myself as AArch64 sim maintainer.

2015-12-09  Tristan Gingold  <gingold@adacore.com>

	* aarch64/simulator.c: Remove syscall.h include.

2015-12-26  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Delete mention of tconfig.h.

2015-11-24  Nick Clifton  <nickc@redhat.com>

	* configure.tgt: Add aarch64 entry.
	* configure: Regenerate.

2015-06-23  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (AC_ARG_ENABLE(sim)): Call AS_HELP_STRING.
	* configure: Regenerate.

2015-06-12  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Change configure.in to configure.ac.

2015-04-02  H.J. Lu  <hongjiu.lu@intel.com>

	* arm/configure: Regenerated.
	* avr/configure: Likewise.
	* bfin/configure: Likewise.
	* common/configure: Likewise.
	* cr16/configure: Likewise.
	* cris/configure: Likewise.
	* d10v/configure: Likewise.
	* erc32/configure: Likewise.
	* frv/configure: Likewise.
	* ft32/configure: Likewise.
	* h8300/configure: Likewise.
	* igen/configure: Likewise.
	* iq2000/configure: Likewise.
	* lm32/configure: Likewise.
	* m32c/configure: Likewise.
	* m32r/configure: Likewise.
	* m68hc11/configure: Likewise.
	* mcore/configure: Likewise.
	* microblaze/configure: Likewise.
	* mips/configure: Likewise.
	* mn10300/configure: Likewise.
	* moxie/configure: Likewise.
	* msp430/configure: Likewise.
	* ppc/configure: Likewise.
	* rl78/configure: Likewise.
	* rx/configure: Likewise.
	* sh/configure: Likewise.
	* sh64/configure: Likewise.
	* v850/configure: Likewise.

2015-04-01  H.J. Lu  <hongjiu.lu@intel.com>

	* common/Make-common.in (CSEARCH): Remove $(ZLIBINC).
	(BFD_LIB): Remove $(ZLIB).
	(CONFIG_LIBS): Add $(ZLIB).
	* ppc/Makefile.in (ZLIBINC): Removed.
	(INCLUDES): Remove $(ZLIBINC).
	(BFD_LIB): Remove $(ZLIB).

2015-04-01  H.J. Lu  <hongjiu.lu@intel.com>

	* arm/configure: Regenerated.
	* avr/configure: Likewise.
	* bfin/configure: Likewise.
	* common/configure: Likewise.
	* cr16/configure: Likewise.
	* cris/configure: Likewise.
	* d10v/configure: Likewise.
	* erc32/configure: Likewise.
	* frv/configure: Likewise.
	* ft32/configure: Likewise.
	* h8300/configure: Likewise.
	* igen/configure: Likewise.
	* iq2000/configure: Likewise.
	* lm32/configure: Likewise.
	* m32c/configure: Likewise.
	* m32r/configure: Likewise.
	* m68hc11/configure: Likewise.
	* mcore/configure: Likewise.
	* microblaze/configure: Likewise.
	* mips/configure: Likewise.
	* mn10300/configure: Likewise.
	* moxie/configure: Likewise.
	* msp430/configure: Likewise.
	* ppc/configure: Likewise.
	* rl78/configure: Likewise.
	* rx/configure: Likewise.
	* sh/configure: Likewise.
	* sh64/configure: Likewise.
	* v850/configure: Likewise.

2015-03-29  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.
	* configure.ac: Delete sim_testsuite check and config in testsuite.
	* configure.tgt (sim_testsuite): Delete everywhere.

2015-03-28  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.
	* configure.tgt (avr*-*-*): Set sim_testsuite=yes.

2015-03-28  James Bowman  <james.bowman@ftdichip.com>

	* configure.tgt: Add FT32 entry.
	* configure: Regenerate.

2015-03-16  Mike Frysinger  <vapier@gentoo.org>

	* .gitignore: Delete tconfig.h.
	* README-HACKING: Change tconfig.in to tconfig.h.

2014-03-12  Nick Clifton  <nickc@redhat.com>

	* MAINTAINERS: Add myself as the maintainer for the MSP430.

2014-03-10  Mike Frysinger  <vapier@gentoo.org>

	* configure.tgt (msp430*-*-*): Set sim_testsuite to yes.
	* configure: Regenerate.

2014-01-06  Tom Tromey  <tromey@redhat.com>

	* common/cgen-trace.c: Don't use old VA_* macros.
	* common/sim-load.c (xprintf): Likewise.
	* common/sim-trace.c (trace_printf, debug_printf): Likewise.

2014-01-06  Tom Tromey  <tromey@redhat.com>

	* README-HACKING: Don't use PARAMS.
	* arm/wrapper.c: Don't use PARAMS.
	* bfin/sim-main.h: Don't use PARAMS.
	* common/callback.c: Don't use PARAMS.
	* common/cgen-trace.c: Don't use PARAMS.
	* common/run-sim.h: Don't use PARAMS.
	* common/run.c: Don't use PARAMS.
	* common/sim-base.h: Don't use PARAMS.
	* common/sim-load.c: Don't use PARAMS.
	* common/sim-options.h: Don't use PARAMS.
	* common/sim-trace.c: Don't use PARAMS.
	* common/sim-trace.h: Don't use PARAMS.
	* common/sim-utils.h: Don't use PARAMS.
	* cr16/cr16_sim.h: Don't use PARAMS.
	* cr16/gencode.c: Don't use PARAMS.
	* cr16/interp.c: Don't use PARAMS.
	* cr16/simops.c: Don't use PARAMS.
	* d10v/d10v_sim.h: Don't use PARAMS.
	* d10v/gencode.c: Don't use PARAMS.
	* d10v/interp.c: Don't use PARAMS.
	* d10v/simops.c: Don't use PARAMS.
	* erc32/erc32.c: Don't use PARAMS.
	* erc32/exec.c: Don't use PARAMS.
	* erc32/float.c: Don't use PARAMS.
	* erc32/func.c: Don't use PARAMS.
	* erc32/sis.c: Don't use PARAMS.
	* erc32/sis.h: Don't use PARAMS.
	* mips/interp.c: Don't use PARAMS.
	* mips/sim-main.h: Don't use PARAMS.
	* sh/interp.c: Don't use PARAMS.
	* v850/sim-main.h: Don't use PARAMS.
	* v850/v850_sim.h: Don't use PARAMS.

2013-11-07  Will Newton  <will.newton@linaro.org>

	PR gdb/15508
	* arm/wrapper.c (sim_create_inferior): Call init before
	accessing STATE.

2013-11-07  Will Newton  <will.newton@linaro.org>

	PR gdb/8989
	* arm/wrapper.c (sim_create_inferior): Avoid calling
	bfd_get_mach with a NULL bfd.

2013-06-21  Nick Clifton  <nickc@redhat.com>

	* msp430: New Directory.
	* configure.tgt: Add it.
	* configure: Regenerate.

2013-03-15  Steve Ellcey  <sellcey@mips.com>

	* arm/wrapper.c (sim_complete_command): Make char arguments const.
	* avr/interp.c (sim_complete_command): Ditto.
	* common/sim-options.c (sim_complete_command): Ditto.
	* cr16/interp.c (sim_complete_command): Ditto.
	* erc32/interf.c (sim_complete_command): Ditto.
	* m32c/gdb-if.c (sim_complete_command): Ditto.
	* microblaze/interp.c (sim_complete_command): Ditto.
	* ppc/sim_calls.c (sim_complete_command): Ditto.
	* rl78/gdb-if.c (sim_complete_command): Ditto.
	* rx/gdb-if.c (sim_complete_command): Ditto.
	* sh/interp.c (sim_complete_command): Ditto.

2013-01-01  Joel Brobecker  <brobecker@adacore.com>

	Update year range in copyright notice of all files.

2012-12-19  Joel Brobecker  <brobecker@adacore.com>

	Update old contact info in GPL license notices.

2012-12-19  Joel Brobecker  <brobecker@adacore.com>

	Update the non-FSF-copyrighted files in sim to GPLv3 or later.

2012-11-20  Pavel Chupin  <pavel.v.chupin@intel.com>

	* common/Make-common.in: Use lt_cv_dlopen_libs under PLUGINS
	condition.
	* common/acinclude.m4: Define lt_cv_dlopen_libs.
	* arm/configure: Regenerate.
	* avr/configure: Regenerate.
	* bfin/configure: Regenerate.
	* common/configure: Regenerate.
	* cr16/configure: Regenerate.
	* cris/configure: Regenerate.
	* d10v/configure: Regenerate.
	* erc32/configure: Regenerate.
	* frv/configure: Regenerate.
	* h8300/configure: Regenerate.
	* igen/configure: Regenerate.
	* iq2000/configure: Regenerate.
	* lm32/configure: Regenerate.
	* m32c/configure: Regenerate.
	* m32r/configure: Regenerate.
	* m68hc11/configure: Regenerate.
	* mcore/configure: Regenerate.
	* microblaze/configure: Regenerate.
	* mips/configure: Regenerate.
	* mn10300/configure: Regenerate.
	* moxie/configure: Regenerate.
	* ppc/configure: Regenerate.
	* rl78/configure: Regenerate.
	* rx/configure: Regenerate.
	* sh/configure: Regenerate.
	* sh64/configure: Regenerate.
	* testsuite/configure: Regenerate.
	* v850/configure: Regenerate.

2012-11-05  Stephane Carrez  <Stephane.Carrez@gmail.com>

	* MAINTAINERS: Update my email address.

2012-09-24  Steve Ellcey  <sellcey@mips.com>

	* mips/basic.exp: Add mips*-mti-elf* target.
	* configure.ac: Add mips*-mti-elf* target.
	* configure: Regenerate.

2012-06-15  Joel Brobecker  <brobecker@adacore.com>

	* configure: Regenerate.

2012-06-06  Michael Eager  <eager@eagercon.com>

	* microblaze/interp.c (config.h): Add #include.

2011-11-29  Joel Brobecker  <brobecker@adacore.com>

	* MAINTAINERS (Global Maintainers): New section.  Add Mike
	Frysinger.

2011-11-28  DJ Delorie  <dj@redhat.com>

	* configure.tgt: Add rl78 support.
	* configure: Regenerate.
	* rl78: New directory.
	* MAINTAINERS: Add myself as RL78 maintainer.

2011-07-08  Hans-Peter Nilsson  <hp@axis.com>

	* MAINTAINERS: Remove Thiemo Seufer.

2011-06-04  Mike Frysinger  <vapier@gentoo.org>

	* configure.tgt (bfin-*-*): Add sim_testsuite=yes.
	* configure: Regenerate.

2011-05-04  Joseph Myers  <joseph@codesourcery.com>

	* configure.tgt (thumb*-*-* | strongarm*-*-* | xscale-*-*): Don't
	handle targets.
	* configure: Regenerate.

2011-03-05  Mike Frysinger  <vapier@gentoo.org>

	* MAINTAINERS: Add bfin entry.
	* configure.tgt (bfin-*-*): Handle bfin targets.
	* configure: Regenerate.

2011-01-05  Mike Frysinger  <vapier@gentoo.org>

	* .gitignore: Add /*/hw-config.h.

2010-12-23  Mike Frysinger  <vapier@gentoo.org>

	* .gitignore: New file.

2010-07-28  DJ Delorie  <dj@redhat.com>

	* MAINTAINERS: Add self as RX maintainer.  Sort list.

2010-06-08  Nick Clifton  <nickc@redhat.com>

	* reg.c (set_oszc): Use unsigned int for the mask.
	(set_szc, set_osz, set_sz): Likewise.

2010-04-26  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Target logic moved out to and included from ...
	* configure.tgt: ... this new file.
	* configure: Regenerated.

2010-04-12  Mike Frysinger  <vapier@gentoo.org>

	* README-HACKING: Add more sections.

2010-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* avr/configure: Regenerate.
	* cris/configure: Regenerate.
	* microblaze/configure: Regenerate.

2009-11-24  Joel Brobecker  <brobecker@adacore.com>

	* common/aclocal.m4: Add include of ../../config/zlib.m4.
	* common/common.m4: Use AM_ZLIB to check for zlib support.
	* ppc/configure.ac: Likewise.
	* arm/configure, avr/configure, common/configure, cr16/configure,
	cris/configure, d10v/configure, erc32/configure, frv/configure,
	h8300/configure, iq2000/configure, lm32/configure, m32c/configure,
	m32r/configure, m68hc11/configure, mcore/configure,
	microblaze/configure, mips/configure, mn10300/configure,
	moxie/configure, ppc/configure, sh/configure, sh64/configure,
	v850/configure: Regenerate.

2009-11-24  DJ Delorie  <dj@redhat.com>

	* rx: New directory.
	* configure.ac: Add entry for Renesas RX.
	* configure: Regenerate.

2009-10-16  Doug Evans  <dje@sebabeach.org>

	* MAINTAINERS: Add myself as m32r maintainer.

2009-10-15  Michael Egaer  <eager@eagercon.com>

	* MAINTAINERS: Add self as MicroBlaze maintainer.

2009-10-14  Ben Elliston  <bje@gnu.org>

	* MAINTAINERS (common): Move myself to "past maintainers" section.

2009-10-06  Michael Eager  <eager@eagercon.com>

	* microblaze/interp.c: Add include microblaze-dis.h.

2009-09-23  Michael Eager  <eager@eagercon.com>

	* configure: Add microblaze-*.* (not regenerated).
	* configure.ac: Likewise.
	* microblaze/config.in: New.
	* microblaze/configure: Generate.
	* microblaze/configure.ac: New.
	* microblaze/interp.c: New.
	* microblaze/Makefile.in: New.
	* microblaze/microblaze.h: New.
	* microblaze/microblaze.isa: New.
	* microblaze/sim-main.h: New.
	* microblaze/sysdep.h: New.

2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* avr/config.in: Regenerate.
	* avr/configure: Likewise.
	* configure: Likewise.
	* cris/config.in: Likewise.
	* cris/configure: Likewise.

	* configure.ac: m4_include toplevel config/override.m4.
	* configure: Regenerate.
	* avr/configure: Regenerate.
	* cris/configure: Regenerate.

2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* Makefile.in (datarootdir): New variable.

2009-05-18  Jon Beniston <jon@beniston.com>

	* MAINTAINERS: Add Jon Beniston as maintainer of lm32 sim.
	* configure.ac: Add lm32 target.
	* lm32: New directory.

2009-05-11  Andrew Cagney  <cagney@gnu.org>

	* MAINTAINERS: Orphan ppc.

2009-04-30  Anthony Green  <green@moxielogic.com>

	* MAINTAINERS: Add myself for the moxie port.
	* moxie: New directory.
	* configure.ac: Add entry for moxie.
	* configure: Regenerate.

2009-04-27  Tristan Gingold  <gingold@adacore.com>

	* avr: New directory.
	* configure.ac: Add avr.
	* configure: Regenerated.

2009-04-17  Carlos O'Donell  <carlos@codesourcery.com>

	* Makefile.in: Add dummy install-pdf, html, and
	install-html targets.

2008-07-29  Nick Clifton  <nickc@redhat.com>

	* common/genmloop.sh: Add new parameter: -shell to specify the
	command interpreter to use to run the input file.  This is
	necessary because otherwise SHELL is taken from the user's
	environment, and not from the makefile that invoked this script
	and the user might not be running an sh-like shell.
	* cris/Makefile.in: Pass -shell parameter to genmloop.sh.
	* fr30/Makefile.in: Likewise.
	* frv/Makefile.in: Likewise.
	* i960/Makefile.in: Likewise.
	* iq2000/Makefile.in: Likewise.
	* m32r/Makefile.in: Likewise.

	* frv/mloop.in: Add missing start of line comment marker.

2008-05-09  Olivier Hainque  <hainque@adacore.com>

	* ppc/altivec.igen (vperm): Latch inputs into temporaries.

2008-03-25  M R Swami Reddy <MR.Swami.Reddy@nsc.com>

	* MAINTAINERS: Add myself as maintainer of cr16 port.

2008-02-12  M Ranga Swami Reddy <MR.Swami.Reddy@nsc.com>

	Add simulator for National cr16 processor.
	* cr16: New directory.
	* configure.ac: Add entry for National cr16.
	* configure: Regenerate.

2008-02-05  DJ Delorie  <dj@redhat.com>

	* configure.ac (v850): V850 now has a testsuite.
	* configure (v850): Likewise.

2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>

	Updated copyright notices for most files.

2007-12-19  DJ Delorie  <dj@redhat.com>

	* frv/frv.c (frvbf_cut): Only look at the six LSBs of
	cut_point.

2007-08-24  Joel Brobecker  <brobecker@adacore.com>

	Switch the license of all files explicitly copyright the FSF
	to GPLv3.

2007-03-27  Brooks Moses  <brooks.moses@codesourcery.com>

	* Makefile.in: Add dummy "pdf" target.

2007-02-16  Thiemo Seufer  <ths@mips.com>

	* Makefile.in (FLAGS_TO_PASS, TARGET_FLAGS_TO_PASS): Add RUNTEST.

2007-01-28  Manuel Lauss  <slauss@resi.at>

	* configure.ac (sh64-*-*): Change to sh64*-*-*.
	(sh-*-*): Change to sh*-*-*.
	* configure: Regenerated.

2007-01-09  Daniel Jacobowitz  <dan@codesourcery.com>

	Updated copyright notices for most files.

2006-12-20  Hans-Peter Nilsson  <hp@axis.com>

	* Makefile.in (autoconf-common autoheader-common): Only run
	autoheader on subdirs with a file config.in.

	* configure.ac (common): Make the default "yes" for all targets
	with sim subdirs.
	* configure: Regenerate.

	* Makefile.in (autoconf-common autoheader-common): In documented
	usage, say SHELL=/bin/sh.
	(.PHONY): Add autoheader-common.

	* MAINTAINERS: Add self as authorized committer for *.

2006-09-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* MAINTAINERS: Add Dave Brolley for sh64.

2006-08-08  Joel Sherrill <joel.sherrill@oarcorp.com>

	* configure.ac (sparc-*-rtems*|sparc-*-elf*): Enable erc32 simulator.
	* Makefile.in (FLAGS_TO_PASS): Include libdir.
	* configure: Regenerated.

2006-05-05  Andreas Schwab  <schwab@suse.de>

	* configure.ac (CFLAGS_FOR_BUILD): Set and substitute.
	* configure: Regenerate.

	* Makefile.in (CFLAGS_FOR_BUILD): Define.
	(CC_FOR_BUILD): Don't override.
	(FLAGS_TO_PASS): Pass CFLAGS_FOR_BUILD.

2006-05-04  Daniel Jacobowitz  <dan@codesourcery.com>

	* MAINTAINERS: Add an "Authorized committers" section, and list
	DJ Delorie for v850.

2006-03-13  DJ Delorie  <dj@redhat.com>

	* MAINTAINERS: Add self as m32c sim maintainer.

2006-01-23  Jim Blandy  <jimb@redhat.com>

	Add simulator for Renesas M32C and M16C.

	* m32c: New directory.
	* configure.ac: Add entry for Renesas M32C.
	* configure: Regenerate.

2005-05-26  Chris Demetriou  <cgd@netbsd.org>

	* MAINTAINERS: Update my mail address, move myself to the
	"Past maintainers" section.

2005-05-17  Corinna Vinschen  <vinschen@redhat.com>

	* configure.ac: Add igen to v850 build.
	* configure: Regenerate.

2005-04-29  Paul Brook  <paul@codesourcery.com>

	* common/callback.c (PIPE_BUF): Provide default definition.
	(os_lstat): Use stat if lstat is not available on the host.
	(os_ftruncate): Return EINVAL if not available on the host.
	(os_truncate): Ditto.
	* common/configure.ac: Check for lstat, truncate and ftruncate.
	* common/configure: Regenerate.
	* common/config.in: Regenerate.

2005-04-27  Paul Brook  <paul@codesourcery.com>

	* common/Make-common.in: Add $(EXEEXT) to "run".

2005-04-15  Corinna Vinschen  <vinschen@redhat.com>

	* configure.ac: Add explicit sh64 case.
	* configure: Regenerate.

2005-03-30  Paul Brook  <paul@codesourcery.com>

	* arm/wrapper.c: Provide SIGTRAP and SIGBUS.

2005-02-28  Jim Blandy  <jimb@redhat.com>

	* d10v/configure.ac, igen/configure.ac, m68hc11/configure.ac,
	mips/configure.ac, mn10300/configure.ac, v850/configure.ac:
	Regenerated, after change to common/aclocal.m4.

2005-02-18  Corinna Vinschen  <vinschen@redhat.com>

	* iq2000: New target subdirectory.
	* configure.ac: Add iq2000 target.
	* configure: Regenerate.

2005-01-29  Hans-Peter Nilsson  <hp@axis.com>

	* Makefile.in (all, clean mostlyclean, distclean maintainer-clean)
	(realclean, install): Fail if subdir make failed.

2005-01-28  Hans-Peter Nilsson  <hp@axis.com>

	* cris: New directory, simulator for Axis Communications CRIS
	including CRIS v32, CGEN-based.
	* configure.ac: Add corresponding configury.
	* configure: Regenerate.

2005-01-17  Andrew Cagney  <cagney@gnu.org>

	* configure.ac: For mips*-*-* and mn10300*-*-* configure the
	common directory.  Remove sparc*-*-* from list.

2005-01-11  Andrew Cagney  <cagney@gnu.org>

	* Makefile.in (autoconf-common autoheader-common): Add --force to
	autoconf and autoheader.
	(autoconf-common autoheader-common)
	(autoconf-install autoheader-install): Check for configure.ac, not
	configure.in.
	* configure.ac: Delete AC_CONFIG_AUX_DIR.
	* configure: Re-generate.

2005-01-07  Andrew Cagney  <cagney@gnu.org>

	* configure.ac: Replace configure.in.  Requires autoconf 2.59 and
	correctly calls AC_CONFIG_SUBDIRS.
	* configure: Re-generate.

2004-12-01  Andrew Cagney  <cagney@gnu.org>

	* i960, h8500: Delete directory.

2004-11-12  Andrew Cagney  <cagney@gnu.org>

	* d30v, fr30, mn10200, z8k: Delete directory.

2004-03-10  Ben Elliston  <bje@gnu.org>

	* MAINTAINERS: Update my mail address.

2004-01-26  Chris Demetriou  <cgd@broadcom.com>

	* configure.in (mips*-*-*): Configure in testsuite.
	* configure: Regenerate.

2003-10-08  Dave Brolley  <brolley@redhat.com>

	* configure.in: Move frv handling to alphabetically correct placement.

2003-09-03  Andreas Schwab  <schwab@suse.de>

	* Makefile.in (FLAGS_TO_PASS): Pass down $(bindir) and $(mandir).

2003-08-29  Dave Brolley  <brolley@redhat.com>

	* MAINTAINERS: Add myself as maintainer of the FRV port.

2003-08-20  Michael Snyder  <msnyder@redhat.com>
	    Dave Brolley  <brolley@redhat.com>

	* frv/: New directory, simulator for the Fujitsu FRV.
	* configure.in: Add frv configury.
	* configure: Regenerate.

2003-08-10  Ben Elliston  <bje@wasabisystems.com>

	* MAINTAINERS: Update my mail address.

2003-08-09  Andrew Cagney  <cagney@redhat.com>

	* MAINTAINERS: Andrew Cagney (mips) and Geoff Keating (ppc) drop
	maintenance.  List igen and sh maintainers.  Mention that target
	and global maintainers pick up the slack.

2003-07-09  Michael Snyder  <msnyder@redhat.com>

	* configure.in: Add testsuite to extra_subdirs for sh.
	* configure: Regenerate.

2003-01-23  Nick Clifton  <nickc@redhat.com>

	* Add sh2e support:

2002-04-02  Alexandre Oliva  <aoliva@redhat.com>

	* sh/gencode.c: Replace sh3e with sh2e except in fsqrt.

2002-08-24  Geoffrey Keating  <geoffk@redhat.com>

	* MAINTAINERS: Update my email address.

2002-07-17  Andrew Cagney  <ac131313@redhat.com>

	* w65/: Delete directory.

2002-07-16  Andrew Cagney  <ac131313@redhat.com>

	* configure.in (extra_subdirs): Mark fr30-*-* as obsolete.
	* configure: Re-generate.

2002-07-13  Andrew Cagney  <ac131313@redhat.com>

	* configure.in (extra_subdirs): Mark d30v-*-* as obsolete.
	* configure: Re-generate.

2002-06-16  Andrew Cagney  <ac131313@redhat.com>

	* Makefile.in (autoconf-changelog autoheader-changelog): Let name,
	id, date and host to be overriden by NAME, ID, DATE and HOST
	respectfully.  Use ISO dates.

Thu Jun  6 12:34:13 2002  Andrew Cagney  <cagney@redhat.com>

	* Makefile.in (ChangeLog): New makefile variable.
	* README-HACKING: Mention the ChangeLog makefile variable.

2002-06-01  Andrew Cagney  <ac131313@redhat.com>

	* tic80/: Delete directory.

2002-05-16  Stephane Carrez  <stcarrez@nerim.fr>

	* MAINTAINERS: Update my email address.

2002-03-06  Stephane Carrez  <Stephane.Carrez@worldnet.fr>

	* MAINTAINERS: Record self as maintainer of m68hc11 simulator.

2002-03-01  Frank Ch. Eigler  <fche@redhat.com>

	* MAINTAINERS: Record self as a co-maintainer of just common/.

2002-02-07  Nick Clifton  <nickc@cambridge.redhat.com>

	* MAINTAINERS: Point to GDB files describing overall maintaince
	and check-in procedures.

2002-01-10  Nick Clifton  <nickc@cambridge.redhat.com>

	* MAINTAINERS: Add myself for ARM portions.

2001-10-19  Andrew Cagney  <ac131313@redhat.com>

	* configure.in: When Linux or NetBSD, enable PowerPC simulator.
	* configure: Re-generate.

2001-02-16  Ben Elliston  <bje@redhat.com>

	* MAINTAINERS: Add myself for common portions.

2001-01-15  Chris Demetriou  <cgd@broadcom.com>

	* MAINTAINERS: Added self and Andrew for the mips sim.

2000-10-25  Geoff Keating  <geoffk@cygnus.com>

	* MAINTAINERS: Added self and Andrew for the ppc sim.

Thu Jul 27 21:26:26 2000  Andrew Cagney  <cagney@b1.cygnus.com>

	From Stephane Carrez <Stephane.Carrez@worldnet.fr>:
	* m68hc11: New directory.
	* configure.in: Add.
	* configure: Regenerate.

Tue Jul  4 13:43:54 2000  Andrew Cagney  <cagney@b1.cygnus.com>

	* tic80: New directory.
	* configure.in: Add configury.
	* configure: Regenerate.

2000-04-20  Nick Clifton  <nickc@cygnus.com>

	* configure.in (extra_subdirs): Add testsuite to strongarm
	directories.
	* configure: Regenerate.

Sat Mar  4 16:48:54 2000  Andrew Cagney  <cagney@b1.cygnus.com>

	* MAINTAINERS: New file.  Blank.

1999-11-18  Ben Elliston  <bje@cygnus.com>

	* configure.in: Require autoconf 2.13 and remove obsolete
	invocation of AC_C_CROSS.
	* configure: Regenerate.

1999-09-29  Doug Evans  <devans@casey.cygnus.com>

	* configure.in: Configure the testsuite directory for thumb.
	* configure: Regenerate.

1999-07-16  Ben Elliston  <bje@cygnus.com>

	* configure.in: Configure the testsuite directory for arm.
	* configure: Regenerate.

1999-04-08  Nick Clifton  <nickc@cygnus.com>

	* configure.in: Add support for MCore target.
	* configure: Regenerate.

1999-03-14  Stan Shebs  <shebs@andros.cygnus.com>

	* Makefile.in (FLAGS_TO_PASS, TARGET_FLAGS_TO_PASS): Remove
 	RUNTEST instead of commenting out, fixes portability problem.

1999-02-08  Nick Clifton  <nickc@cygnus.com>

	* configure.in: Add support for StrongARM target.
	* configure: Regenerate.

1999-01-04  Jason Molenda  (jsm@bugshack.cygnus.com)

	* configure.in: Require autoconf 2.12.1 or higher.

1998-12-08  James E Wilson  <wilson@wilson-pc.cygnus.com>

	* configure.in (i960-*-*): Add.
	* configure: Rebuild.

Wed Nov  4 19:11:43 1998  Dave Brolley  <brolley@cygnus.com>

	* configure.in: Added case for fr30-*-*.
	* configure: Regenerated.

Fri Sep 25 10:12:19 1998  Christopher Faylor <cgf@cygnus.com>

	* ppc/Makefile.in: Add EXEEXT to installed powerpc-eabi-run program
	to allow successful operation on Windows.

Thu May 28 14:59:46 1998 Jillian Ye <jillian@cygnus.com>

	* Makefile.in: Take RUNTEST out of FLAGS_TO_PASS so that make
	check can be invoked recursively.

Wed Apr 29 12:38:53 1998  Mark Alexander  <marka@cygnus.com>

	* configure.in: Build simulator on sparclite and sparc86x targets.
	* configure: Regenerate.

Sun Apr 26 15:21:01 1998  Tom Tromey  <tromey@cygnus.com>

	* Makefile.in (autoconf-common autoheader-common): Don't pass -l
	to autoconf and autoheader.

Fri Apr 24 11:14:13 1998  Tom Tromey  <tromey@cygnus.com>

	* Makefile.in (autoconf-common autoheader-common): Pass `-l
	../common' to autoconf and autoheader.  Unconditionally run
	autoconf in every subdir.
	(autoconf-changelog autoheader-changelog): Unconditionally run
	commands in every subdir.
	(autoconf-install autoheader-install): Likewise.

Tue Mar 24 17:12:43 1998  Stu Grossman  <grossman@bhuna.cygnus.co.uk>

	* Makefile.in:  Get SHELL from configure.
	* (FLAGS_TO_PASS):  Pass down SHELL.
	* configure:  Regenerate with autoconf 2.12.1 to fix shell issues for
	NT native builds.

Tue Mar 24 11::18:00 1998  Joyce Janczyn  <janczyn@cygnus.com>

	* configure.in (extra_subdirs): Enable igen for mn10300.
	* configure: Re-generate.

Tue Dec  2 10:10:42 1997  Nick Clifton  <nickc@cygnus.com>

	* configure.in (extra_subdirs): Add support for thumb target.

	* configure (extra_subdirs): Add support for thumb target.

Wed Oct  8 12:38:48 1997  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure.in (extra_subdirs): Add IGEN directory when MIPS
 	target.
	* configure: Regenerate.

Fri Sep 12 13:10:31 1997  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure.in (extra_subdirs): v850ea needs igen.
	* configure: Re-generate.

Mon Sep  1 16:48:23 1997  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure.in (testdir): When a testsuite directory, add that to
 	the list of confdirs.

Tue Aug 19 11:17:46 1997  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure.in (extra_subdirs): Enable igen ready for V850.

Tue Aug 26 15:14:48 1997  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure.in (w65-*-*, only_if_enabled): Set.
	* configure: Re-generate.

Mon Aug 25 16:26:53 1997  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure.in (sparc*-*-*, only_if_enabled): Set
 	only_if_enabled=yes.  Check only_if_enabled before enabling a
 	simulator.
	* configure: Regenerate.

Mon Aug 18 10:56:59 1997  Nick Clifton  <nickc@cygnus.com>

	* configure.in (extra_subdirs): Add v850e target.

Mon Aug 18 10:56:59 1997  Nick Clifton  <nickc@cygnus.com>

	* configure.in (extra_subdirs): Add v850ea target.

Fri Jul 25 11:40:47 1997  Doug Evans  <dje@canuck.cygnus.com>

	* configure.in (sparc*-*-*): Don't build erc32.
	* configure: Regenerate.

Thu Apr 24 00:47:20 1997  Doug Evans  <dje@canuck.cygnus.com>

	* configure.in (m32r-*-*): New target.
	* configure: Regenerate.

	* Makefile.in (autoconf-common, autoconf-changelog): Change $* to $@.

Mon Apr 21 22:57:55 1997  Andrew Cagney  <cagney@b1.cygnus.com>

	* Makefile.in (.NOEXPORT, MAKEOVERRIDES): Moved to end, BSD make
 	thought that .NOEXPORT was the default target.

Fri Apr 11 17:18:07 1997  Ian Lance Taylor  <ian@cygnus.com>

	* Makefile.in (clean mostlyclean): Restore targets accidentally
	deleted in earlier change.

Thu Apr  3 12:20:32 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>

	* Makefile.in (autoheader-common, autoheader-changelog,
 	autoheader-install): Perform autoheader in addition to autoconf.

Wed Apr  2 15:09:05 1997  Doug Evans  <dje@canuck.cygnus.com>

	* Makefile.in (autoconf-install): New target.
	(autoconf-changelog): Try different way to obtain user name.

Wed Apr  2 14:25:52 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>

	* Makefile.in (autoconf-changelog): New target, update
 	ChangeLog for all subdirectories - normally used after
 	autoconf-common target.

Wed Mar 19 14:26:21 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>

	* configure.in (extra_subdirs): Include testsuite for d30v.
	* configure: Regenerate.

	* Makefile.in (RUNTEST, RUNTESTFLAGS): Borrow test rules from
 	../gdb/Makefile.in
	(check): New rules - drive the testsuite.

Mon Mar  3 13:01:00 1997  Jeffrey A Law  (law@cygnus.com)

	* configure.in: Add mn10200 configure lines accidentally
	removed.
	* configure: Regenerated.

Wed Feb 19 10:34:20 1997  Andrew Cagney  <cagney@critters.cygnus.com>

	* configure.in (extra_subdirs): Generalize common sub directory
 	into a list.
	(extra_subdirs): For d30v add igen to the list to be built.

Sun Feb 16 16:37:47 1997  Andrew Cagney  <cagney@critters.cygnus.com>

	* configure.in (d30v): New target.
	* configure: Regenerated.

Wed Feb 19 23:17:13 1997  Jeffrey A Law  (law@cygnus.com)

	* configure.in: Don't require GCC to build the mn10200
	simulator anymore.
	* configure: Rebuilt.

Wed Feb  5 13:28:13 1997  Doug Evans  <dje@canuck.cygnus.com>

	* configure.in: Don't configure any subdirs if no simulator
	is being built.  Don't use erc32 for sparc64.
	* configure: Regenerated.

Tue Feb  4 13:19:39 1997  Doug Evans  <dje@canuck.cygnus.com>

	* Makefile.in (autoconf-common): New target.
	* configure.in: Do configure common.
	* configure: Regenerated.

Thu Jan 23 13:59:52 1997  Stu Grossman  (grossman@critters.cygnus.com)

	* configure configure.in:  Don't configure common anymore.  Files
	from common are now built in the individual simualtor directories.
	This fixes problems with the WinGDB build procedure.

Mon Jan 13 13:16:42 1997  Jeffrey A Law  (law@cygnus.com)

	* configure: Enable the mn10200 simulator.

Wed Nov 20 01:00:36 1996  Doug Evans  <dje@canuck.cygnus.com>

	* configure.in (configdirs): Add common.
	* configure: Regenerated.

Fri Nov  1 08:03:30 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* configure.in (powerpc*-*-linux*): Treat like the other powerpc
	system V based targets.
	* configure: Regenerate.

Thu Oct 17 12:50:08 1996  Doug Evans  <dje@canuck.cygnus.com>

	* configure.in (--enable-sim-powerpc): Delete.
	(--enable-sim): Add.
	* configure: Regenerated.

Fri Oct 11 21:13:43 1996  Jeffrey A Law  (law@cygnus.com)

	* configure.in: Only build the V850 simulator if
	we are using gcc.
	* configure: Rebuild.

Sun Sep  8 17:22:50 1996  Ian Lance Taylor  <ian@cygnus.com>

	* configure.in: Do build erc32 for DOS and Windows hosts.
	* configure: Rebuild.

Wed Sep  4 18:11:27 1996  Stu Grossman  (grossman@critters.cygnus.com)

	* Makefile.in erc32/Makefile.in:  Don't set srcroot.  This should
	be inherited from the parent.  Remove INSTALL_XFORM and
	INSTALL_XFORM1.  Make INSTALL be set from configure.

Wed Sep  4 15:49:16 1996  Ian Lance Taylor  <ian@cygnus.com>

	* configure.in: Only build the MIPS simulator if we are using
	gcc.
	* configure: Rebuild.

Wed Aug 28 19:05:23 1996  Jeffrey A Law  (law@cygnus.com)

	* configure.in (v850-*-*): Added V850 simulator.

Thu Aug  1 17:08:41 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>

	* configure.in (d10v-*-*): Added D10V simulator.

Wed Jun 26 12:33:57 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)

	* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
	INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
	(docdir): Removed.
	* configure.in (AC_PREREQ): autoconf 2.5 or higher.
	(AC_PROG_INSTALL): Added.
	* configure: Rebuilt.

Mon Jun 24 14:18:26 1996  Ian Lance Taylor  <ian@cygnus.com>

	* configure.in: Only configure erc32 if using gcc.
	* configure: Rebuild.

Tue Jun  4 09:24:21 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* configure.in (sim_target): Build PowerPC simulator for powerpc
	System V.4, Solaris, and Elf targets.
	* configure: Regenerate with autoconf 2.10.

Wed May 22 12:10:49 1996  Rob Savoye  <rob@chinadoll>

	* configure.in: Only built erc32 simulator on Unix hosts as it
	uses pseudo ttys.
	* configure: Regenerated with autoconf 2.8.

Sun May 19 20:20:40 1996  Rob Savoye  <rob@chinadoll.cygnus.com>

	* erc32: Sparc simulator from the ESA.

Sun Apr  7 21:00:09 1996  Fred Fish  <fnf@cygnus.com>

	From: Miles Bader  <miles@gnu.ai.mit.edu>
	* configure.in: Use AC_CHECK_TOOL to find AR & RANLIB.
	* configure: Regenerate using autoconf.

Thu Feb 22 11:31:50 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* Makefile.in (install): Fix typo.

Wed Feb 21 11:59:57 1996  Ian Lance Taylor  <ian@cygnus.com>

	* configure: Regenerate with autoconf 2.7.

	* Makefile.in (all): Simplify.
	(clean, mostlyclean): SUBDIRS may contain whitespace; fix the loop
	as in the all target.
	(distclean, maintainer-clean, realclean): Likewise.
	(install): Likewise.

Thu Feb 15 18:37:00 1996  Fred Fish  <fnf@cygnus.com>

	* Makefile.in (all): Remove extra '\' char from shell script.

Wed Feb 14 16:43:59 1996  Mike Meissner  <meissner@tiktok.cygnus.com>

	* Makefile.in (all): Avoid a for loop with zero elements, even if
	the loop will not be executed because of an if statement.

Wed Jan 31 21:48:34 1996  Fred Fish  <fnf@cygnus.com>

	* Makefile.in (install): Add missing semicolon in "fi \".

Thu Nov  9 16:10:56 1995  Michael Meissner  <meissner@tiktok.cygnus.com>

	* Makefile.in (AR, CC, CFLAGS, CC_FOR_BUILD, RANLIB): Pick up
	defaults from configure.

	* configure.in: Pick up AR, CC, CFLAGS, CC_FOR_BUILD, RANLIB using
	configure defaults.
	(powerpc*-*-eabi*): Build simulator for all powerpc eabi targets
	if either --enable-sim-powerpc is used, or the host compiler is
	GCC.

Wed Nov  8 15:46:49 1995  James G. Smith  <jsmith@pasanda.cygnus.co.uk>

	* configure.in (mips*-*-*): Added "mips" simulator target.
	* configure: Re-generated.

Tue Oct 10 11:08:20 1995  Fred Fish  <fnf@cygnus.com>

	* Makefile.in (BISON): Remove macro.
	(FLAGS_TO_PASS): Remove BISON.

Sun Oct  8 04:26:27 1995  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)

	* configure.in:  Explicitly `exit 0' for broken shells.
	* configure:  Rebuilt.

Fri Oct  6 12:03:27 1995  Jim Wilson  <wilson@chestnut.cygnus.com>

	* common/run.c (main): Initialize the callbacks.

Wed Sep 20 13:34:50 1995  Ian Lance Taylor  <ian@cygnus.com>

	* Makefile.in (maintainer-clean): New synonym for realclean.

Fri Aug 25 11:53:43 1995  Michael Meissner  <meissner@tiktok.cygnus.com>

	* configure.in (powerpc*-*-eabisim*): Only build the simulator if
	the target is powerpc*-*-eabisim*, since it requires GCC to build.

Mon Aug 21 17:53:48 1995  Michael Meissner  <meissner@tiktok.cygnus.com>

	* configure.in (powerpc{,le}-*-*): Add psim from Andrew Cagney
	<cagney@highland.com.au>.
	* configure: Regnerate from configure.in.

Thu Aug  3 10:45:37 1995  Fred Fish  <fnf@cygnus.com>

	* Update all FSF addresses except those in COPYING* files.

Thu Jul 20 15:17:29 1995  Fred Fish  <fnf@cygnus.com>

	* Makefile.in (CC_FOR_BUILD):  Define default and arrange to pass
	submakes either default or passed in value.

Wed Jul  5 14:32:54 1995  J.T. Conklin  <jtc@rtl.cygnus.com>

	* Makefile.in (all, clean, distclean, mostlyclean, realclean,
	  install): Changed targets so that they descend all
	  subdirectories in $(SUBDIRS).
	  (*-all, *-clean, *-install): Removed targets.

	* configure.in: Don't bother with target makefile fragments, they
	  are no longer needed.
	* configure: regenerated.

	* Makefile.in, configure.in: converted to autoconf.
	* configure: New file, generated with autconf 2.4.

Wed May 24 14:48:46 1995  Steve Chamberlain  <sac@slash.cygnus.com>

	* Makefile.in: Support ARM.
	* configure.in: Ditto.

Sun Jan 15 16:53:47 1995  Steve Chamberlain  <sac@splat>

	* Makefile.in: Support W65.
	* configure.in: Ditto.

Sun Mar 13 09:27:50 1994  Jim Kingdon  (kingdon@lioth.cygnus.com)

	* Makefile.in: Add TAGS target.

Mon Sep 13 12:47:15 1993  K. Richard Pixley  (rich@sendai.cygnus.com)

	* Makefile.in (all-z8k, install-z8k, clean-z8k, all-h8300,
	  install-h8300, clean-h8300, all-h8500, install-h8500,
	  clean-h8500, all-sh, install-sh, clean-sh): do not echo
	  recursion lines.

Wed Jun 30 14:12:05 1993  david d `zoo' zuhn  (zoo at poseidon.cygnus.com)

	* Makefile.in: remove endian.h trace from h8500

Sun Jun 13 13:08:58 1993  Jim Kingdon  (kingdon@cygnus.com)

	* Makefile.in: Add distclean, realclean, and mostlyclean targets.

Fri May 21 11:21:16 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)

	* Makefile.in: make all of the all-* target (except all-nothing)
	depend on endian.h, so that if we're not building a simulator, we
	don't built endian

Fri May 21 10:55:06 1993  Ian Lance Taylor  (ian@cygnus.com)

	* Makefile.in (check, installcheck): Added dummy targets.

Mon May  3 21:39:43 1993  Fred Fish  (fnf@cygnus.com)

	* Makefile.in (endian): Find endian.c in $(srcdir), and also
	explicitly make it, since some makes apparently don't work with
	VPATH and .c to executable rules (SunOS make for example).

Mon May  3 08:29:01 1993  Steve Chamberlain  (sac@thepub.cygnus.com)

	* Makefile.in (endian): Add explicit rule for broken makes.

Mon Mar 15 15:47:53 1993  Ian Lance Taylor  (ian@cygnus.com)

	* Makefile.in (info, install-info): New targets.
	(DO_INSTALL): Renamed from INSTALL, which is overridden by the top
	level Makefile.

Wed Feb 10 20:12:27 1993  K. Richard Pixley  (rich@ok.cygnus.com)

	* Makefile.in (endian.h): build endian.h via a temporary file so
	  that we don't leave an incomplete file lying around on
	  interrupted builds.
	  (clean): remove endian, e.h, and endian.h.

Mon Feb  8 11:46:06 1993  Steve Chamberlain  (sac@thepub.cygnus.com)

	* Makefile.in, configure.in: if target isn't supported, build a
	harmless makefile.
