This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: egcs-19980707 snapshot installation broken
The patch below solved the problem. I hope it makes its way into the
next snapshot to bring dec-osf back into the egcs world.
Thanks a lot for the fast solution.
Matthias
Weiwen Liu writes:
> The problem is:
>
> if we do "gcc -o conftest conftest.c", cc1 generates a temporary file
> XXXXX%O which %O is not replaced by OBJECT_SUFFIX, but "as" expects a
> temporary file XXXXX.o which does not exist and a different temporary file
> is generated.
>
> Try this patch.
>
> Index: gcc.c
> ===================================================================
> RCS file: /egcs/carton/cvsfiles/egcs/gcc/gcc.c,v
> retrieving revision 1.44
> diff -u -p -r1.44 gcc.c
> --- gcc.c 1998/06/30 01:41:44 1.44
> +++ gcc.c 1998/07/12 15:50:28
> @@ -3521,10 +3521,21 @@ do_spec_1 (spec, inswitch, soft_matched_
> t->next = temp_names;
> temp_names = t;
> }
> - t->length = p - suffix;
> - t->suffix = save_string (suffix, p - suffix);
> - t->unique = (c != 'g');
> - temp_filename = make_temp_file (suffix);
> + if (strncmp (suffix, "%O", 2) == 0)
> + {
> + t->length = strlen(OBJECT_SUFFIX);
> + t->suffix = save_string (OBJECT_SUFFIX,
> + strlen(OBJECT_SUFFIX));
> + t->unique = (c != 'g');
> + temp_filename = make_temp_file (OBJECT_SUFFIX);
> + }
> + else
> + {
> + t->length = p - suffix;
> + t->suffix = save_string (suffix, p - suffix);
> + t->unique = (c != 'g');
> + temp_filename = make_temp_file (suffix);
> + }
> temp_filename_length = strlen (temp_filename);
> t->filename = temp_filename;
> t->filename_length = temp_filename_length;
>
--
+-----------------------------------------------------------------------+
| Matthias Mueller matthias@ica1.uni-stuttgart.de |
| http://www.ica1.uni-stuttgart.de/~matthias |
+-----------------------------------------------------------------------+
| ICA 1, Pfaffenwaldring 27, D-70569 Stuttgart (Germany) |
| Tel. 49-(0)711/685-7606, Fax. 49-(0)711/685-3658 |
+-----------------------------------------------------------------------+