aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2023-12-29 01:51:27 -0500
committerMike Frysinger <vapier@gentoo.org>2024-01-19 20:09:28 -0500
commit0714c6305adfb91b6560da03dc871a564450495c (patch)
treec2644b9fcd22dbeabc101e0034f80f62102af450
parent1adfc9ac37228732bbed2c0923cfc3ae7007724e (diff)
downloadnewlib-0714c6305adfb91b6560da03dc871a564450495c.zip
newlib-0714c6305adfb91b6560da03dc871a564450495c.tar.gz
newlib-0714c6305adfb91b6560da03dc871a564450495c.tar.bz2
libgloss: add some objcopy/objdump build rules
A bunch of ports have manual rules to generate disassembly, srec, and binary files from test programs. Add top-level pattern rules so every test program gets this for free, and we don't have to duplicate it in every subdir.
-rw-r--r--libgloss/Makefile.am10
-rw-r--r--libgloss/Makefile.in9
2 files changed, 19 insertions, 0 deletions
diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index a8a445b..a035f8d 100644
--- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am
@@ -31,6 +31,16 @@ AM_CPPFLAGS = -idirafter $(srcroot)/include
noinst_LIBRARIES = libobjs.a
libobjs_a_SOURCES =
+## Some convenience rules for debugging programs.
+%.dis: %
+ $(AM_V_GEN)$(OBJDUMP) -d $< > $@
+%.bin: %
+ $(AM_V_GEN)$(OBJCOPY) -O binary $< $@
+%.hex: %
+ $(AM_V_GEN)$(OBJCOPY) -O ihex $< $@
+%.srec: %
+ $(AM_V_GEN)$(OBJCOPY) -O srec $< $@
+
## These are roughly topologically sorted in order to make porting more
## streamlined.
FLAGS_TO_PASS = \
diff --git a/libgloss/Makefile.in b/libgloss/Makefile.in
index 6b83757..eff9887 100644
--- a/libgloss/Makefile.in
+++ b/libgloss/Makefile.in
@@ -5693,6 +5693,15 @@ uninstall-am: uninstall-aarch64_cpu_initcpuinitDATA \
.PRECIOUS: Makefile
+%.dis: %
+ $(AM_V_GEN)$(OBJDUMP) -d $< > $@
+%.bin: %
+ $(AM_V_GEN)$(OBJCOPY) -O binary $< $@
+%.hex: %
+ $(AM_V_GEN)$(OBJCOPY) -O ihex $< $@
+%.srec: %
+ $(AM_V_GEN)$(OBJCOPY) -O srec $< $@
+
# GNU Make needs to see an explicit $(MAKE) variable in the command it
# runs to enable its job server during parallel builds. Hence the
# comments below.