]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
PR-105410 Bugfix implement save-temps across every temporary file.
authorGaius Mulley <gaius.mulley@southwales.ac.uk>
Wed, 4 May 2022 14:24:18 +0000 (15:24 +0100)
committerGaius Mulley <gaius.mulley@southwales.ac.uk>
Wed, 4 May 2022 14:24:18 +0000 (15:24 +0100)
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>
gcc/m2/m2-link-support.h
gm2tools/Makefile.in

index eb52f2b4f0d068df6011081b0483eb38b46aac54..66a444edbe763f1edfac9b965649961a624fe419 100644 (file)
@@ -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.  */
index d228a6a9b397a4d1290544050ff831abecdd6201..386f2e4163ae96157f269b3d64338ff0adbe98b3 100644 (file)
@@ -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