summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2022-11-04 00:25:32 +0700
committerMike Frysinger <vapier@gentoo.org>2022-11-04 01:37:07 +0700
commitfa71c76d475f40cc583fb496d262c7bfa5a040fe (patch)
tree1648fa6c99be36c581e5a9873df797e8a3b4b83b
parente26943f9c7285a453c5daf10ed078b2a014977c6 (diff)
downloadbinutils-gdb-fa71c76d475f40cc583fb496d262c7bfa5a040fe.tar.gz
sim: erc32: link sis to run program
The erc32 sim does a lot itself, including handling of the CLI. It used to provide a run-compatible interface in the pre-nrun days, but it was dropped when the old run interface was punted. Since the old commit 465fb143c87076b6416a8d0d5dd79bb016060fe3 ("sim: make nrun the default run program"), the erc32 run & sis programs have been the same, and erc32 hasn't provide a real run-compatible interface. Simplify this by linking the two programs via ln/cp instead of running the linking phase twice to produce the same result. If/when we fix up the erc32 port to have a proper run interface, it should be easy to split these back apart into real programs. Note: the interf.o reference in here is a bit of a misdirect. Since that object is placed into libsim.a, it's never been linked into the programs since the linker ignores objects that aren't referenced, and only gdb uses those symbols.
-rw-r--r--sim/erc32/Makefile.in9
1 files changed, 3 insertions, 6 deletions
diff --git a/sim/erc32/Makefile.in b/sim/erc32/Makefile.in
index 41830aab726..013b604be49 100644
--- a/sim/erc32/Makefile.in
+++ b/sim/erc32/Makefile.in
@@ -34,13 +34,10 @@ SIM_EXTRA_CFLAGS += -DFAST_UART -I$(srcroot)
## COMMON_POST_CONFIG_FRAG
-# `sis' doesn't need interf.o.
-SIS_OFILES = exec.o erc32.o func.o help.o float.o
-
all: sis$(EXEEXT)
-sis$(EXEEXT): sis.o $(SIS_OFILES) libsim.a $(LIBDEPS)
- $(ECHO_CCLD) $(CC) $(ALL_CFLAGS) -o sis$(EXEEXT) \
- sis.o $(SIS_OFILES) libsim.a $(EXTRA_LIBS)
+sis$(EXEEXT): run$(EXEEXT)
+ $(SILENCE) rm -f $@
+ $(ECHO_GEN) ln $< $@ 2>/dev/null || $(LN_S) $< $@ 2>/dev/null || cp -p $< $@
# Copy the files into directories where they will be run.
install-sis: installdirs