[newlib-cygwin/users/vapier/wip] libgloss: add some objcopy/objdump build rules
Michael Frysinger
vapier@sourceware.org
Tue Jan 2 04:35:39 GMT 2024
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=6a1b0abc3d243f2524b738b990a85728d54bdbe9
commit 6a1b0abc3d243f2524b738b990a85728d54bdbe9
Author: Mike Frysinger <vapier@gentoo.org>
Date: Fri Dec 29 01:51:27 2023 -0500
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.
Diff:
---
libgloss/Makefile.am | 10 ++++++++++
libgloss/Makefile.in | 9 +++++++++
2 files changed, 19 insertions(+)
diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index 0d4460b58..aa1c430e3 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 deeb31cbc..e6441a4c5 100644
--- a/libgloss/Makefile.in
+++ b/libgloss/Makefile.in
@@ -5335,6 +5335,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.
More information about the Newlib-cvs
mailing list