aboutsummaryrefslogtreecommitdiff
path: root/sim/m4
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2023-08-10 11:12:39 +0930
committerAlan Modra <amodra@gmail.com>2023-08-19 12:41:32 +0930
commite7ad52cde6c8bb7e592ce60cdfe508cd00c3db11 (patch)
treeaccce7c87b4d25aacf910826197cf1cb26f1e4f6 /sim/m4
parent0e1b3420fbb2a3022a1ceac49ce37af3e59d0856 (diff)
downloadbinutils-e7ad52cde6c8bb7e592ce60cdfe508cd00c3db11.zip
binutils-e7ad52cde6c8bb7e592ce60cdfe508cd00c3db11.tar.gz
binutils-e7ad52cde6c8bb7e592ce60cdfe508cd00c3db11.tar.bz2
sim --enable-cgen-maint
I had reason yesterday to want to regenerate configury files which I do with --enable-maintainer-mode, and added --enable-cgen-maint accidentally. The first problem I hit is that sim looks for cgen in a different directory by default than opcodes, and I had my source layout set up for opcodes rather than sim. Fix that by making both use ../cgen first, then ../../cgen relative to sim/ and opcodes/. The next problem was that various sim local.mk files expected generated sources in the build dir rather than the source dir. Fix that by adding $(srcdir) to paths. Finally, the generated iq2000 files had a compile error, fixed by the cpu/iq2000.cpu patch. cpu/ * iq2000.cpu (syscall): Add pc arg. opcodes/ * configure.ac (cgendir): Default to ../../cgen, but use ../cgen if found there. * configure: Regenerate. sim/m4/ * sim_ac_option_cgen_maint.m4 (cgendir): Look in ../cgen too. sim/ * cris/local.mk: Add $(srcdir) to paths for regenerated source. * frv/local.mk: Likewise. * iq2000/local.mk: Likewise. * lm32/local.mk: Likewise. * m32r/local.mk: Likewise. * or1k/local.mk: Likewise. * Makefile.in: Regenerate. * configure: Regenerate.
Diffstat (limited to 'sim/m4')
-rw-r--r--sim/m4/sim_ac_option_cgen_maint.m43
1 files changed, 3 insertions, 0 deletions
diff --git a/sim/m4/sim_ac_option_cgen_maint.m4 b/sim/m4/sim_ac_option_cgen_maint.m4
index 7cf6459..dee137f 100644
--- a/sim/m4/sim_ac_option_cgen_maint.m4
+++ b/sim/m4/sim_ac_option_cgen_maint.m4
@@ -20,6 +20,9 @@ cgen_maint=no
dnl Default is to use one in build tree.
cgen=guile
cgendir='$(srcdir)/../../cgen'
+if test -r ${srcdir}/../cgen/iformat.scm; then
+ cgendir='$(srcdir)/../cgen'
+fi
dnl Having --enable-maintainer-mode take arguments is another way to go.
dnl ??? One can argue --with is more appropriate if one wants to specify
dnl a directory name, but what we're doing here is an enable/disable kind