aboutsummaryrefslogtreecommitdiff
path: root/sim/or1k
diff options
context:
space:
mode:
Diffstat (limited to 'sim/or1k')
-rw-r--r--sim/or1k/Makefile.in16
-rw-r--r--sim/or1k/local.mk37
2 files changed, 38 insertions, 15 deletions
diff --git a/sim/or1k/Makefile.in b/sim/or1k/Makefile.in
index c6bd03b..3f1c432 100644
--- a/sim/or1k/Makefile.in
+++ b/sim/or1k/Makefile.in
@@ -53,8 +53,6 @@ SIM_EXTRA_CFLAGS =
SIM_EXTRA_LIBS = -lm
-SIM_EXTRA_CLEAN = or1k-clean
-
## COMMON_POST_CONFIG_FRAG
arch = or1k
@@ -67,15 +65,6 @@ OR1K32BF_INCLUDE_DEPS = \
decode.h \
eng.h
-mloop.c eng.h: stamp-mloop ; @true
-stamp-mloop: $(srcdir)/../common/genmloop.sh mloop.in Makefile
- $(ECHO_STAMP) mloop.c eng.h
- $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \
- -mono -fast -pbb -switch sem-switch.c \
- -cpu or1k32bf -infile $(srcdir)/mloop.in
- $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin eng.h
- $(SILENCE) $(SHELL) $(srcroot)/move-if-change mloop.cin mloop.c
- $(SILENCE) touch $@
or1k.o: or1k.c $(OR1K32BF_INCLUDE_DEPS)
$(COMPILE) $<
$(POSTCOMPILE)
@@ -88,10 +77,7 @@ traps.o: traps.c $(SIM_MAIN_DEPS) eng.h
$(COMPILE) $<
$(POSTCOMPILE)
-or1k-clean:
- rm -f mloop.c eng.h stamp-mloop
-
-stamps: stamp-arch stamp-cpu stamp-mloop
+stamps: stamp-arch stamp-cpu
# NOTE: Generated source files are specified as full paths,
# e.g. $(srcdir)/arch.c, because make may decide the files live
diff --git a/sim/or1k/local.mk b/sim/or1k/local.mk
new file mode 100644
index 0000000..ab1f07d
--- /dev/null
+++ b/sim/or1k/local.mk
@@ -0,0 +1,37 @@
+# See sim/Makefile.am
+#
+# Copyright (C) 2017-2021 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+%C%_BUILD_OUTPUTS = \
+ %D%/eng.h \
+ %D%/mloop.c \
+ %D%/stamp-mloop
+
+# This makes sure build tools are available before building the arch-subdirs.
+SIM_ALL_RECURSIVE_DEPS += $(%C%_BUILD_OUTPUTS)
+
+# FIXME: Use of `mono' is wip.
+%D%/mloop.c %D%/eng.h: %D%/stamp-mloop ; @true
+%D%/stamp-mloop: $(srccom)/genmloop.sh %D%/mloop.in
+ $(AM_V_GEN)$(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \
+ -mono -fast -pbb -switch sem-switch.c \
+ -cpu or1k32bf \
+ -infile $(srcdir)/%D%/mloop.in -outfile-prefix %D%/
+ $(AM_V_at)$(SHELL) $(srcroot)/move-if-change %D%/eng.hin %D%/eng.h
+ $(AM_V_at)$(SHELL) $(srcroot)/move-if-change %D%/mloop.cin %D%/mloop.c
+ $(AM_V_at)touch $@
+
+MOSTLYCLEANFILES += $(%C%_BUILD_OUTPUTS)