gcc47: Add local -save-temps=objects option. master
authorzrj <rimvydas.jasinskas@gmail.com>
Wed, 20 Mar 2019 06:29:42 +0000 (08:29 +0200)
committerzrj <zrj@dragonflybsd.org>
Wed, 20 Mar 2019 06:50:52 +0000 (08:50 +0200)
Just for convenience, same as in:
df642abc046981dfea4020a80f466a1acc7607ca

contrib/gcc-4.7/gcc/gcc.c

index 628aa6b..9df7681 100644 (file)
@@ -139,7 +139,8 @@ static const char *target_sysroot_hdrs_suffix = 0;
 static enum save_temps {
   SAVE_TEMPS_NONE,             /* no -save-temps */
   SAVE_TEMPS_CWD,              /* -save-temps in current directory */
-  SAVE_TEMPS_OBJ               /* -save-temps in object directory */
+  SAVE_TEMPS_OBJ,              /* -save-temps in object directory */
+  SAVE_TEMPS_OBJZ              /* -save-temps in object directory with mangling */
 } save_temps_flag;
 
 /* Output file to use to get the object directory for -save-temps=obj  */
@@ -3422,6 +3423,8 @@ driver_handle_option (struct gcc_options *opts,
       else if (strcmp (arg, "obj") == 0
               || strcmp (arg, "object") == 0)
        save_temps_flag = SAVE_TEMPS_OBJ;
+      else if (strcmp (arg, "objects") == 0)
+       save_temps_flag = SAVE_TEMPS_OBJZ;
       else
        fatal_error ("%qs is an unknown -save-temps option",
                     decoded->orig_option_with_args_text);
@@ -3878,6 +3881,10 @@ process_command (unsigned int decoded_options_count,
        }
 
     }
+  else if (save_temps_flag == SAVE_TEMPS_OBJZ && save_temps_prefix != NULL)
+    {
+      save_temps_length = strlen (save_temps_prefix);
+    }
   else if (save_temps_prefix != NULL)
     {
       free (save_temps_prefix);