aboutsummaryrefslogtreecommitdiff
path: root/bfd/hosts
diff options
context:
space:
mode:
authorSteve Chamberlain <sac@cygnus>1991-12-12 01:21:40 +0000
committerSteve Chamberlain <sac@cygnus>1991-12-12 01:21:40 +0000
commit33b6c26253062c395320fe6b3fee5fbfaa118ef6 (patch)
tree69c5c253826b4b64ae4aca18bfaeaf383fc0562e /bfd/hosts
parent5af19052119d2b0c6eeb23670395cb30ca363aee (diff)
downloadgdb-33b6c26253062c395320fe6b3fee5fbfaa118ef6.zip
gdb-33b6c26253062c395320fe6b3fee5fbfaa118ef6.tar.gz
gdb-33b6c26253062c395320fe6b3fee5fbfaa118ef6.tar.bz2
Added macros for the 'type' part of an fopen, freopen or fdopen.
<Read|Write>[Update]<Binary file>|<text file> eg: fopen("foo", FOPEN_WB) to open for writing binary. Usefull for vms, dos and who knows what else.
Diffstat (limited to 'bfd/hosts')
-rw-r--r--bfd/hosts/.Sanitize1
-rw-r--r--bfd/hosts/amix.h17
-rw-r--r--bfd/hosts/decstation.h32
-rw-r--r--bfd/hosts/delta88.h15
-rw-r--r--bfd/hosts/dgux.h15
-rw-r--r--bfd/hosts/dose.h15
-rw-r--r--bfd/hosts/harris.h15
-rw-r--r--bfd/hosts/hp300bsd.h59
-rw-r--r--bfd/hosts/hp9000.h15
-rw-r--r--bfd/hosts/i386mach.h15
-rw-r--r--bfd/hosts/i386v.h15
-rw-r--r--bfd/hosts/i386v4.h15
-rw-r--r--bfd/hosts/irix3.h15
-rw-r--r--bfd/hosts/news.h84
-rw-r--r--bfd/hosts/rs6000.h15
-rw-r--r--bfd/hosts/rtbsd.h15
-rw-r--r--bfd/hosts/sparc-ll.h15
-rw-r--r--bfd/hosts/sparc.h15
-rw-r--r--bfd/hosts/sun3.h15
-rw-r--r--bfd/hosts/tahoe.h37
-rw-r--r--bfd/hosts/ultra3.h15
-rw-r--r--bfd/hosts/vaxbsd.h16
-rw-r--r--bfd/hosts/vaxult.h23
23 files changed, 480 insertions, 14 deletions
diff --git a/bfd/hosts/.Sanitize b/bfd/hosts/.Sanitize
index cc198ad..1b8fa6a 100644
--- a/bfd/hosts/.Sanitize
+++ b/bfd/hosts/.Sanitize
@@ -30,6 +30,7 @@ h-decstation.h
h-dgux.h
h-delta88.h
h-dose.h
+h-go32.h
h-harris.h
h-hp300bsd.h
h-hp9000.h
diff --git a/bfd/hosts/amix.h b/bfd/hosts/amix.h
index 8481e94..f17e391 100644
--- a/bfd/hosts/amix.h
+++ b/bfd/hosts/amix.h
@@ -9,6 +9,23 @@
#include <string.h>
#include <sys/file.h>
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
+
+
#ifndef O_ACCMODE
#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
#endif
diff --git a/bfd/hosts/decstation.h b/bfd/hosts/decstation.h
index 875982c..64a5e92 100644
--- a/bfd/hosts/decstation.h
+++ b/bfd/hosts/decstation.h
@@ -6,14 +6,39 @@
#include <ctype.h>
#include <string.h>
#include <sys/file.h>
+#include <malloc.h>
#ifndef O_ACCMODE
#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
#endif
#define SEEK_SET 0
#define SEEK_CUR 1
-extern char *malloc();
-extern void free();
+#include <machine/param.h>
+#include <machine/vmparam.h>
+#define HOST_PAGE_SIZE NBPG
+/* #define HOST_SEGMENT_SIZE NBPG -- we use HOST_DATA_START_ADDR */
+#define HOST_MACHINE_ARCH bfd_arch_mips
+/* #define HOST_MACHINE_MACHINE */
+
+#define HOST_TEXT_START_ADDR USRTEXT
+#define HOST_DATA_START_ADDR USRDATA
+#define HOST_STACK_END_ADDR USRSTACK
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
+
/* EXACT TYPES */
typedef char int8e_type;
@@ -31,3 +56,6 @@ typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* other */
+
+extern char *getenv();
diff --git a/bfd/hosts/delta88.h b/bfd/hosts/delta88.h
index 879b035..6e92549 100644
--- a/bfd/hosts/delta88.h
+++ b/bfd/hosts/delta88.h
@@ -79,3 +79,18 @@ typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/dgux.h b/bfd/hosts/dgux.h
index 7db80bf..5c29c8e 100644
--- a/bfd/hosts/dgux.h
+++ b/bfd/hosts/dgux.h
@@ -25,3 +25,18 @@ extern PROTO(void, bzero,(char *, int));
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/dose.h b/bfd/hosts/dose.h
index a03b49a..ccab2ac 100644
--- a/bfd/hosts/dose.h
+++ b/bfd/hosts/dose.h
@@ -27,3 +27,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "rb"
+#define FOPEN_WB "wb"
+#define FOPEN_AB "ab"
+#define FOPEN_RUB "r+b"
+#define FOPEN_WUB "w+b"
+#define FOPEN_AUB "a+b"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/harris.h b/bfd/hosts/harris.h
index 138f170..431c7ae0 100644
--- a/bfd/hosts/harris.h
+++ b/bfd/hosts/harris.h
@@ -36,3 +36,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/hp300bsd.h b/bfd/hosts/hp300bsd.h
new file mode 100644
index 0000000..d373fdc
--- /dev/null
+++ b/bfd/hosts/hp300bsd.h
@@ -0,0 +1,59 @@
+#include <fcntl.h>
+#include <errno.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <ctype.h>
+#include <string.h>
+#include <sys/file.h>
+
+void *malloc();
+void free();
+
+#ifndef O_ACCMODE
+#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
+#endif
+
+#define SEEK_SET 0
+#define SEEK_CUR 1
+
+#include <machine/machparam.h>
+
+#define HOST_PAGE_SIZE NBPG
+#define HOST_SEGMENT_SIZE NBPG /* Data seg start addr rounds to NBPG */
+#define HOST_MACHINE_ARCH bfd_arch_m68k
+/* #define HOST_MACHINE_MACHINE */
+
+#define HOST_TEXT_START_ADDR 0
+#define HOST_STACK_END_ADDR 0xfff00000
+
+/* EXACT TYPES */
+typedef char int8e_type;
+typedef unsigned char uint8e_type;
+typedef short int16e_type;
+typedef unsigned short uint16e_type;
+typedef int int32e_type;
+typedef unsigned int uint32e_type;
+
+/* CORRECT SIZE OR GREATER */
+typedef char int8_type;
+typedef unsigned char uint8_type;
+typedef short int16_type;
+typedef unsigned short uint16_type;
+typedef int int32_type;
+typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/hp9000.h b/bfd/hosts/hp9000.h
index cbdb6d1..a6b48dc 100644
--- a/bfd/hosts/hp9000.h
+++ b/bfd/hosts/hp9000.h
@@ -63,3 +63,18 @@ typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/i386mach.h b/bfd/hosts/i386mach.h
index 6b6c9ce..ce11dd6 100644
--- a/bfd/hosts/i386mach.h
+++ b/bfd/hosts/i386mach.h
@@ -43,3 +43,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/i386v.h b/bfd/hosts/i386v.h
index 657ec68..d2b5daa 100644
--- a/bfd/hosts/i386v.h
+++ b/bfd/hosts/i386v.h
@@ -65,3 +65,18 @@ typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/i386v4.h b/bfd/hosts/i386v4.h
index 12906ef..5112632 100644
--- a/bfd/hosts/i386v4.h
+++ b/bfd/hosts/i386v4.h
@@ -60,3 +60,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/irix3.h b/bfd/hosts/irix3.h
index f6e5fa1..64f5933 100644
--- a/bfd/hosts/irix3.h
+++ b/bfd/hosts/irix3.h
@@ -38,3 +38,18 @@ typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/news.h b/bfd/hosts/news.h
new file mode 100644
index 0000000..edfdc4d
--- /dev/null
+++ b/bfd/hosts/news.h
@@ -0,0 +1,84 @@
+#include <fcntl.h>
+#include <errno.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <ctype.h>
+#include <string.h>
+#include <sys/file.h>
+#ifndef O_ACCMODE
+#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
+#endif
+#define SEEK_SET 0
+#define SEEK_CUR 1
+
+extern PROTO(int, abort,(void));
+extern PROTO(int, close,(int));
+extern PROTO(int, fcntl,(int des, int cmd, int e));
+extern PROTO(int, fprintf,(FILE *,char *,...));
+extern PROTO(int, printf,(char *,...));
+extern PROTO(int, qsort,(void *data,int els, int siz, int func()));
+extern PROTO(int, exit,(int));
+extern PROTO(int, fseek,(FILE*, int, int));
+extern PROTO(int, fclose,(FILE*));
+extern PROTO(void, bcopy,(char*,char*,int));
+extern PROTO(int, bcmp,(char *, char *, int));
+extern PROTO(void, bzero,(char *, int));
+extern char * strchr();
+extern PROTO(void, perror,(CONST char *));
+extern char *getenv();
+extern char *memchr();
+extern char *strrchr();
+extern int chmod();
+extern int fread();
+extern int fstat();
+extern int fwrite();
+extern int sscanf();
+extern int stat();
+extern int strtol();
+void free();
+char *malloc();
+char *realloc();
+extern char *strrchr();
+extern char *ctime();
+extern int _flsbuf();
+extern int fclose();
+extern int time();
+extern int utimes();
+extern int vfprintf();
+extern long atol();
+extern char *getenv();
+extern int fputc();
+extern int unlink();
+
+
+/* EXACT TYPES */
+typedef char int8e_type;
+typedef unsigned char uint8e_type;
+typedef short int16e_type;
+typedef unsigned short uint16e_type;
+typedef int int32e_type;
+typedef unsigned int uint32e_type;
+
+/* CORRECT SIZE OR GREATER */
+typedef char int8_type;
+typedef unsigned char uint8_type;
+typedef short int16_type;
+typedef unsigned short uint16_type;
+typedef int int32_type;
+typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/rs6000.h b/bfd/hosts/rs6000.h
index 7cf72b1..0fd01cd 100644
--- a/bfd/hosts/rs6000.h
+++ b/bfd/hosts/rs6000.h
@@ -33,3 +33,18 @@ typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/rtbsd.h b/bfd/hosts/rtbsd.h
index 8525052..94e900b 100644
--- a/bfd/hosts/rtbsd.h
+++ b/bfd/hosts/rtbsd.h
@@ -33,3 +33,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/sparc-ll.h b/bfd/hosts/sparc-ll.h
index 50a2945..493b559 100644
--- a/bfd/hosts/sparc-ll.h
+++ b/bfd/hosts/sparc-ll.h
@@ -121,3 +121,18 @@ typedef struct {
#define uint64_typeLOW(x) (uint32_type)(((x) & 0xffffffff))
#define uint64_typeHIGH(x) (uint32_type)(((x) >> 32) & 0xffffffff)
#endif
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/sparc.h b/bfd/hosts/sparc.h
index 7182ae6..b541922 100644
--- a/bfd/hosts/sparc.h
+++ b/bfd/hosts/sparc.h
@@ -131,3 +131,18 @@ typedef struct {
#endif
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/sun3.h b/bfd/hosts/sun3.h
index eefa366..49aba2f 100644
--- a/bfd/hosts/sun3.h
+++ b/bfd/hosts/sun3.h
@@ -68,3 +68,18 @@ typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/tahoe.h b/bfd/hosts/tahoe.h
index b8f0788..99147c0 100644
--- a/bfd/hosts/tahoe.h
+++ b/bfd/hosts/tahoe.h
@@ -1,3 +1,5 @@
+/* Tahoe running BSD (post-Reno) Unix. */
+
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>
@@ -6,11 +8,20 @@
#include <ctype.h>
#include <string.h>
#include <sys/file.h>
-#ifndef O_ACCMODE
-#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
-#endif
-#define SEEK_SET 0
-#define SEEK_CUR 1
+#include <stdlib.h>
+
+#define FASCIST_FDOPEN
+#define NO_CORE_COMMAND
+
+#undef ALIGN /* They use it, we use it too */
+#include <machine/param.h>
+#undef ALIGN /* They use it, we use it too */
+
+#define HOST_PAGE_SIZE NBPG
+#define HOST_MACHINE_ARCH bfd_arch_tahoe
+
+#define HOST_TEXT_START_ADDR 0
+#define HOST_STACK_END_ADDR KERNBASE
/* EXACT TYPES */
typedef char int8e_type;
@@ -27,4 +38,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
-
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/ultra3.h b/bfd/hosts/ultra3.h
index e3df430..b84e79f 100644
--- a/bfd/hosts/ultra3.h
+++ b/bfd/hosts/ultra3.h
@@ -32,3 +32,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/vaxbsd.h b/bfd/hosts/vaxbsd.h
index 330fac5..a818c77 100644
--- a/bfd/hosts/vaxbsd.h
+++ b/bfd/hosts/vaxbsd.h
@@ -27,4 +27,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
-
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/bfd/hosts/vaxult.h b/bfd/hosts/vaxult.h
index 2de6396..ebb1b39 100644
--- a/bfd/hosts/vaxult.h
+++ b/bfd/hosts/vaxult.h
@@ -16,13 +16,11 @@
#include <machine/param.h>
#include <machine/vmparam.h>
-#define HOST_PAGE_SIZE NBPG
-#define HOST_SEGMENT_SIZE NBPG /* Data seg start addr rounds to NBPG */
+#define HOST_PAGE_SIZE (NBPG*CLSIZE)
#define HOST_MACHINE_ARCH bfd_arch_vax
-/* #define HOST_MACHINE_MACHINE */
-#define HOST_TEXT_START_ADDR USRTEXT
-#define HOST_STACK_END_ADDR USRSTACK
+#define HOST_TEXT_START_ADDR USRTEXT
+#define HOST_STACK_END_ADDR USRSTACK
/* EXACT TYPES */
typedef char int8e_type;
@@ -39,3 +37,18 @@ typedef short int16_type;
typedef unsigned short uint16_type;
typedef int int32_type;
typedef unsigned int uint32_type;
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+ <Read|Write>[Update]<Binary file><text file>
+ */
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"