From dce2c6f0ee8a8dfd13540d6df6cf1d3625348f28 Mon Sep 17 00:00:00 2001 From: Landon Curt Noll Date: Sun, 27 Nov 2022 18:45:58 -0800 Subject: [PATCH] Improve the make debug rule Added full_debug rule to Makefile. This does the work of the old debug rule in a more verbose mode by using Q= H=@ S= E= V=@. The debug rule in the Makefile now pre-removes debug.out and then runs make full_debug sending stdout and stderr to debug.out. It then prints a few instructions about filing a GitHub issue bug report. --- .gitignore | 1 + CHANGES | 92 +++++++++++++++++++++++++++---------------------- Makefile | 32 ++++++++++++----- Makefile.simple | 32 ++++++++++++----- 4 files changed, 100 insertions(+), 57 deletions(-) diff --git a/.gitignore b/.gitignore index 0f7fe9b..c2f8b94 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,7 @@ cscript/simple cscript/square custom/.all custom/libcustcalc* +debug.out endian endian_calc.h fposval.h diff --git a/CHANGES b/CHANGES index 65dead5..04a870b 100644 --- a/CHANGES +++ b/CHANGES @@ -1,4 +1,54 @@ -The following are the changes from calc version 2.14.1.0 to date: +The following are the changes from calc version 2.14.1.2 to date: + + Added a few remarks on calc version numbers to version.c. + + Fixed how fposval.h is built. On a number of systems, the fposval.c + file failed to compile incorrectly. This caused problems for systems in + which fposval.h.def was not correct. + + Fixed how have_memmv.h is built. On a number of systems, the have_memmv.c + file failed to compile incorrectly, producing a potentially incorrect + have_memmv.h file for such systems. + + Fixed how align32.h is built. On a number of systems, the align32.c + file failed to compile incorrectly, producing a potentially incorrect + align32.h file for such systems. + + Fixed how have_newstr.h is built. On a number of systems, the have_newstr.c + failed to compile incorrectly, producing a potentially incorrect + have_newstr.h file for such systems. + + Fixed how have_strdup.h is built. On a number of systems, the have_strdup.c + file failed to compile incorrectly, producing a potentially incorrect + have_strdup.h file for such systems. + + Fixed how have_strlcat.h is built. On a number of systems, the have_strlcat.c + file failed to compile incorrectly, producing a potentially incorrect + have_strlcat.h file for such systems. + + Fixed how have_strlcpy.h is built. On a number of systems, the have_strlcpy.c + file failed to compile incorrectly, producing a potentially incorrect + have_strlcpy.h file for such systems. + + Fixed how have_uid_t.h is built. On a number of systems, the have_uid_t.c + file failed to compile incorrectly, producing a potentially incorrect + have_uid_t.h file for such systems. + + Fixed how have_uid_t.h is built. On a number of systems, the have_uid_t.c + file failed to compile incorrectly, producing a potentially incorrect + have_uid_t.h file for such systems. + + Renamed #define FPOS_POS_LEN symbol to FPOSPOS_LEN. + + Added full_debug rule to Makefile. This does the work of the + old debug rule in a more verbose mode by using Q= H=@ S= E= V=@. + + The debug rule in the Makefile now pre-removes debug.out and then + runs make full_debug sending stdout and stderr to debug.out. It then + prints a few instructions about filing a GitHub issue bug report. + + +The following are the changes from calc version 2.14.1.0 to 2.14.1.0: Fixed alignment of show item section of help command. @@ -65,46 +115,6 @@ The following are the changes from calc version 2.14.1.0 to date: The value produced by str_comma() is returned. - Added a few remarks on calc version numbers to version.c. - - Fixed how fposval.h is built. On a number of systems, the fposval.c - file failed to compile incorrectly. This caused problems for systems in - which fposval.h.def was not correct. - - Fixed how have_memmv.h is built. On a number of systems, the have_memmv.c - file failed to compile incorrectly, producing a potentially incorrect - have_memmv.h file for such systems. - - Fixed how align32.h is built. On a number of systems, the align32.c - file failed to compile incorrectly, producing a potentially incorrect - align32.h file for such systems. - - Fixed how have_newstr.h is built. On a number of systems, the have_newstr.c - failed to compile incorrectly, producing a potentially incorrect - have_newstr.h file for such systems. - - Fixed how have_strdup.h is built. On a number of systems, the have_strdup.c - file failed to compile incorrectly, producing a potentially incorrect - have_strdup.h file for such systems. - - Fixed how have_strlcat.h is built. On a number of systems, the have_strlcat.c - file failed to compile incorrectly, producing a potentially incorrect - have_strlcat.h file for such systems. - - Fixed how have_strlcpy.h is built. On a number of systems, the have_strlcpy.c - file failed to compile incorrectly, producing a potentially incorrect - have_strlcpy.h file for such systems. - - Fixed how have_uid_t.h is built. On a number of systems, the have_uid_t.c - file failed to compile incorrectly, producing a potentially incorrect - have_uid_t.h file for such systems. - - Fixed how have_uid_t.h is built. On a number of systems, the have_uid_t.c - file failed to compile incorrectly, producing a potentially incorrect - have_uid_t.h file for such systems. - - Renamed #define FPOS_POS_LEN symbol to FPOSPOS_LEN. - The following are the changes from calc version 2.14.0.15 to 2.14.0.15: diff --git a/Makefile b/Makefile index 5e660fa..bc53d0c 100644 --- a/Makefile +++ b/Makefile @@ -1993,7 +1993,7 @@ ifndef EXCLUDE_FROM_CUSTOM_MAKEFILE # Q= echo internal Makefile actions (debug / verbose mode) # # H=@: do not report hsrc file formation progress -# H=@ do echo hsrc file formation progress +# H=@ echo hsrc file formation progress # # S= >/dev/null 2>&1 silence ${CC} output during hsrc file formation # S= full ${CC} output during hsrc file formation @@ -2002,7 +2002,7 @@ ifndef EXCLUDE_FROM_CUSTOM_MAKEFILE # E= full command stderr during hsrc file formation # # V=@: do not echo debug statements (quiet mode) -# V=@ do echo debug statements (debug / verbose mode) +# V=@ echo debug statements (debug / verbose mode) # #Q= Q=@ @@ -4701,11 +4701,14 @@ chk: ./cal/regress.cal # * print major Makefile variables # * build anything not yet built # -# make debug: +# make full_debug: # * remove everything that was previously built # * print major Makefile variables # * make everything # * run the regression tests +# +# make debug: +# * run 'make full_debug' and write stdout and stderr to debug.out ### calcinfo: @@ -4944,27 +4947,27 @@ mkdebug: env version.c @${MAKE} -f Makefile Q= V=@ ver_calc${EXT} -@./ver_calc${EXT} @echo '=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=' - @${MAKE} -f Makefile Q= V=@ all + @${MAKE} -f Makefile Q= H=@ S= E= V=@ all @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-= Determining the binary version =-=-=-=' -@./calc${EXT} -e -q -v @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-=' -debug: calcinfo env +full_debug: calcinfo env @echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-=' @echo '=-=-=-= Contents of ${LOC_MKF} follows =-=-=-=' @${CAT} ${LOC_MKF} @echo '=-=-=-= End of contents of ${LOC_MKF} =-=-=-=' @echo '=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ clobber =-=-=-=' - @${MAKE} -f Makefile Q= V=@ clobber + @${MAKE} -f Makefile Q= H=@ S= E= V=@ clobber @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=' @echo '=-=-= this may take a bit of time =-=-=' - @${MAKE} -f Makefile Q= V=@ all + @${MAKE} -f Makefile Q= H=@ S= E= V=@ all @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-= Determining the source version =-=-=-=' - @${MAKE} -f Makefile Q= V=@ ver_calc${EXT} + @${MAKE} -f Makefile Q= H=@ S= E= V=@ ver_calc${EXT} -@./ver_calc${EXT} @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @${ECHON} '=-=-=-= Print #defile values if custom functions ' @@ -4977,6 +4980,19 @@ debug: calcinfo env @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-=' +debug: + ${RM} -f debug.out + ${MAKE} -f Makefile full_debug 2>&1 | ${TEE} debug.out + @echo + @echo 'To file a bug report / open a GitHub Issue, visit:' + @echo + @echo ' https://github.com/lcn2/calc/issues' + @echo + @echo 'Click the ((New issue)) button to file a bug report.' + @echo + @echo 'Please attch the debug.out file to the bug report.' + @echo + ### # # testing rules diff --git a/Makefile.simple b/Makefile.simple index b92f9bd..479fbdc 100644 --- a/Makefile.simple +++ b/Makefile.simple @@ -1400,7 +1400,7 @@ LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC} # Q= echo internal Makefile actions (debug / verbose mode) # # H=@: do not report hsrc file formation progress -# H=@ do echo hsrc file formation progress +# H=@ echo hsrc file formation progress # # S= >/dev/null 2>&1 silence ${CC} output during hsrc file formation # S= full ${CC} output during hsrc file formation @@ -1409,7 +1409,7 @@ LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC} # E= full command stderr during hsrc file formation # # V=@: do not echo debug statements (quiet mode) -# V=@ do echo debug statements (debug / verbose mode) +# V=@ echo debug statements (debug / verbose mode) # #Q= Q=@ @@ -3989,11 +3989,14 @@ chk: ./cal/regress.cal # * print major Makefile variables # * build anything not yet built # -# make debug: +# make full_debug: # * remove everything that was previously built # * print major Makefile variables # * make everything # * run the regression tests +# +# make debug: +# * run 'make full_debug' and write stdout and stderr to debug.out ### calcinfo: @@ -4232,27 +4235,27 @@ mkdebug: env version.c @${MAKE} -f Makefile Q= V=@ ver_calc${EXT} -@./ver_calc${EXT} @echo '=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=' - @${MAKE} -f Makefile Q= V=@ all + @${MAKE} -f Makefile Q= H=@ S= E= V=@ all @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-= Determining the binary version =-=-=-=' -@./calc${EXT} -e -q -v @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-=' -debug: calcinfo env +full_debug: calcinfo env @echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-=' @echo '=-=-=-= Contents of ${LOC_MKF} follows =-=-=-=' @${CAT} ${LOC_MKF} @echo '=-=-=-= End of contents of ${LOC_MKF} =-=-=-=' @echo '=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ clobber =-=-=-=' - @${MAKE} -f Makefile Q= V=@ clobber + @${MAKE} -f Makefile Q= H=@ S= E= V=@ clobber @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=' @echo '=-=-= this may take a bit of time =-=-=' - @${MAKE} -f Makefile Q= V=@ all + @${MAKE} -f Makefile Q= H=@ S= E= V=@ all @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-= Determining the source version =-=-=-=' - @${MAKE} -f Makefile Q= V=@ ver_calc${EXT} + @${MAKE} -f Makefile Q= H=@ S= E= V=@ ver_calc${EXT} -@./ver_calc${EXT} @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @${ECHON} '=-=-=-= Print #defile values if custom functions ' @@ -4265,6 +4268,19 @@ debug: calcinfo env @echo '=-=-=-= Back to the main Makefile for $@ rule =-=-=-=' @echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-=' +debug: + ${RM} -f debug.out + ${MAKE} -f Makefile full_debug 2>&1 | ${TEE} debug.out + @echo + @echo 'To file a bug report / open a GitHub Issue, visit:' + @echo + @echo ' https://github.com/lcn2/calc/issues' + @echo + @echo 'Click the ((New issue)) button to file a bug report.' + @echo + @echo 'Please attch the debug.out file to the bug report.' + @echo + ### # # testing rules