diff options
author | Gaius Mulley <gaius.mulley@southwales.ac.uk> | 2022-05-04 15:24:18 +0100 |
---|---|---|
committer | Gaius Mulley <gaius.mulley@southwales.ac.uk> | 2022-05-04 15:24:18 +0100 |
commit | b94876d89da4b36e67982d0a402ea021b280c27a (patch) | |
tree | 977286ce071cfa966e888542d87982eefbbc3243 | |
parent | 85de466e317bc7486537747cd313ee396f1e1bac (diff) | |
download | gcc-b94876d89da4b36e67982d0a402ea021b280c27a.zip gcc-b94876d89da4b36e67982d0a402ea021b280c27a.tar.gz gcc-b94876d89da4b36e67982d0a402ea021b280c27a.tar.bz2 |
PR-105410 Bugfix implement save-temps across every temporary file.
2022-05-04 Gaius Mulley <gaius.mulley@southwales.ac.uk>
gcc/m2/ChangeLog:
* m2/m2-link-support.h (RM_IF_NOSAVETEMP) New macro.
(GM2CC) Use RM_IF_NOSAVETEMP on the assembler intermediate file.
(GM2LCC) Use RM_IF_NOSAVETEMP when creating an archive of the
application. (GEN_SCAFFOLD_SRC) Use RM_IF_NOSAVETEMP when
creating the scaffold source program. (M2LINK) Use
RM_IF_NOSAVETEMP when creating the assembler source name and use
RM_IF_NOSAVETEMP when creating the main program object.
Signed-off-by: Gaius Mulley <gaius.mulley@southwales.ac.uk>
-rw-r--r-- | gcc/m2/m2-link-support.h | 15 | ||||
-rw-r--r-- | gm2tools/Makefile.in | 2 |
2 files changed, 11 insertions, 6 deletions
diff --git a/gcc/m2/m2-link-support.h b/gcc/m2/m2-link-support.h index eb52f2b..66a444e 100644 --- a/gcc/m2/m2-link-support.h +++ b/gcc/m2/m2-link-support.h @@ -48,12 +48,16 @@ along with GCC; see the file COPYING3. If not see #define SCAFFOLDNAME "%b_m2" +/* RM_IF_NOSAVETEMP remove the next file if save-temps is absent. */ + +#define RM_IF_NOSAVETEMP "%{!save-temps*:%d}" + /* GM2CC compile the link scaffold either with the C or C++ compiler. */ #define GM2CC(INPUT,OUTPUT) \ "%{!fno-exceptions:cc1plus;:cc1} " GM2CC_OPTIONS " " INPUT " \ - -o %d" SCAFFOLDNAME ".s \n\ + -o " RM_IF_NOSAVETEMP SCAFFOLDNAME ".s \n\ " AS(SCAFFOLDNAME ".s",OUTPUT) " " /* GM2LCC invoke the sub program gm2lcc with the object path options @@ -67,7 +71,8 @@ along with GCC; see the file COPYING3. If not see %{ftarget-ranlib=*} \ %{fobject-path=*} %{v} --exec --startup \ " SCAFFOLDNAME "%O \ - %{!fshared:--ar %:objects() %:noobjects() -o %w%d%g.a } \ + %{!fshared:--ar %:objects() %:noobjects() -o " \ + RM_IF_NOSAVETEMP "%w%g.a } \ " OBJECT " \ %{fshared:%w%{o:%{o*}}%:nolink() %:objects() %:noobjects() \ %:linkargs() } " LST " " @@ -173,19 +178,19 @@ along with GCC; see the file COPYING3. If not see #define GEN_SCAFFOLD_SRC \ "%{fmakeinit:" SCAFFOLDNAME ".cpp;:" \ - SCAFFOLDNAME "%d.cpp}" + RM_IF_NOSAVETEMP SCAFFOLDNAME ".cpp}" /* M2LINK compile main module (providing absense of -fonlylink) and link all project dependent modules. */ #define M2LINK \ - "%{!S:%{!gm2gcc:%{!fonlylink:" GM2("%i","%d%g.s") " \n\ + "%{!S:%{!gm2gcc:%{!fonlylink:" GM2("%i",RM_IF_NOSAVETEMP "%g.s") " \n\ " AS("%g.s","%w%b%O") " } \n\ %{!fuselist:" GM2L("%i"," -o %g.l ") " \n\ " GM2LORDER("%g.l","%g.lst") " \n\ " GM2LGEN("%{fuselist:%b.lst;:%g.lst}",\ GEN_SCAFFOLD_SRC,\ - "%d" SCAFFOLDNAME "%O") "}}\n\ + RM_IF_NOSAVETEMP SCAFFOLDNAME "%O") "}}\n\ }" /* MODULA_LINK_SUPPORT only invoke link subprocesses if no -c option. */ diff --git a/gm2tools/Makefile.in b/gm2tools/Makefile.in index d228a6a..386f2e4 100644 --- a/gm2tools/Makefile.in +++ b/gm2tools/Makefile.in @@ -639,8 +639,8 @@ distclean-generic: maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -@NATIVE_FALSE@install-exec-local: @NATIVE_FALSE@uninstall-local: +@NATIVE_FALSE@install-exec-local: clean: clean-am clean-am: clean-binPROGRAMS clean-generic mostlyclean-am |