summaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>1994-07-12 17:09:32 +0000
committerwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>1994-07-12 17:09:32 +0000
commit92bd0b1a802c28b800a76a54e783fd3dd3c70693 (patch)
tree348d94ba074b964e3bd0250bf9b8dae2791d1cf4 /gcc/final.c
parentadb429b03610eda30f4801951b178613008ba8e6 (diff)
downloadgcc-92bd0b1a802c28b800a76a54e783fd3dd3c70693.tar.gz
(end_final): Store full path name in .d file not just the filename.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7745 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/gcc/final.c b/gcc/final.c
index 20172513839..78a0a07368b 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -378,9 +378,13 @@ end_final (filename)
compatibility. */
ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, "LPBX", 1);
{
- int len = strlen (filename);
- char *data_file = (char *) alloca (len + 3);
- strcpy (data_file, filename);
+ char *cwd = getpwd ();
+ int len = strlen (filename) + strlen (cwd) + 1;
+ char *data_file = (char *) alloca (len + 4);
+
+ strcpy (data_file, cwd);
+ strcat (data_file, "/");
+ strcat (data_file, filename);
strip_off_ending (data_file, len);
strcat (data_file, ".d");
assemble_string (data_file, strlen (data_file) + 1);