blob: 7c352ac1d9fc9bf81fd79ba86859fe77741a6766 [file] [log] [blame]
#define TE_VMS
#include "obj-format.h"
extern int vms_file_stats_name (const char *, long long *, long *, char *, int *);
/* VMS debugger expects a separator. */
#define DWARF2_DIR_SHOULD_END_WITH_SEPARATOR 1
/* VMS debugger needs the file timestamp. */
#define DWARF2_FILE_TIME_NAME(FILENAME,DIRNAME) \
({ \
long long cdt; \
char *filename = (char *) alloca (strlen (FILENAME) + strlen (DIRNAME) + 1);\
strcpy (filename, DIRNAME); \
strcat (filename, FILENAME); \
((vms_file_stats_name (filename, &cdt, 0, 0, 0) == 0) ? cdt : 0); \
})
/* VMS debugger needs the file size. */
#define DWARF2_FILE_SIZE_NAME(FILENAME,DIRNAME) \
({ \
long siz; \
char *filename = (char *) alloca (strlen (FILENAME) + strlen (DIRNAME) + 1);\
strcpy (filename, DIRNAME); \
strcat (filename, FILENAME); \
((vms_file_stats_name (filename, 0, &siz, 0, 0) == 0) ? siz : 0); \
})
/* VMS debugger needs the filename with version appended. */
/* Longest filename on VMS is 255 characters. Largest version is 32768. */
#define DWARF2_FILE_NAME(FILENAME,DIRNAME) \
({ \
int ver; \
char buff [255 + 7]; \
char *filename = (char *) alloca (strlen (FILENAME) + strlen (DIRNAME) + 1);\
strcpy (filename, DIRNAME); \
strcat (filename, FILENAME); \
vms_file_stats_name (filename, 0, 0, 0, &ver); \
snprintf (buff, 255 + 7, "%s;%d", FILENAME, ver); \
buff; \
})