[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