#include <ctype.h>
#include <string.h>
#include <sys/file.h>
+
#ifndef O_ACCMODE
#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
#endif
+#ifndef SEEK_SET
#define SEEK_SET 0
+#endif
+#ifndef SEEK_CUR
#define SEEK_CUR 1
+#endif
+#ifdef STDC_HEADERS
+#include <stdlib.h>
+/*#include <string.h>*/
+#else
+extern char *EXFUN(mktemp,(CONST char*));
+extern int EXFUN(fflush,(FILE *));
+extern int EXFUN(write,(int, CONST char *, int));
+extern void EXFUN(abort,(void));
+extern int EXFUN(close,(int));
+extern int EXFUN(fcntl,(int des, int cmd, int e));
+extern int EXFUN(fprintf,(FILE *,char *,...));
+extern int EXFUN(printf,(char *,...));
+extern int EXFUN(qsort,(void *data,int els, int siz, int func()));
+extern void EXFUN(exit,(int));
+extern int EXFUN(fseek,(FILE*, int, int));
+extern int EXFUN(fclose,(FILE*));
+extern void EXFUN(bcopy,(char*,char*,int));
+extern int EXFUN(bcmp,(char *, char *, int));
+extern void EXFUN(bzero,(char *, int));
+extern PTR EXFUN(memset,(PTR, int, int));
+extern void EXFUN(puts,(CONST char*));
+extern void EXFUN(fputs,(CONST char*,FILE*));
+extern int EXFUN(rmdir,(CONST char *));
+extern int EXFUN(getuid,(void));
+extern int EXFUN(getgid,(void));
+extern int EXFUN(rename,(CONST char *, CONST char*));
+extern int EXFUN(getuid,());
+extern int EXFUN(getgid,());
+extern void EXFUN(perror,(CONST char *));
+#ifndef DONTDECLARE_MALLOC
+extern PTR EXFUN(malloc,(unsigned));
+extern PTR EXFUN(realloc, (PTR, unsigned));
+#endif
+
+#include <machine/param.h>
+
+#ifndef __GNUC__
+extern PTR EXFUN(memcpy,(PTR,CONST PTR,unsigned int));
+#else
+/* char * EXFUN( memcpy,(char *,CONST char *,unsigned int)); */
+#endif
+
+#ifdef __STDC__
+extern void EXFUN(free,(PTR));
+#else
+extern int free();
+#endif
-extern int EXFUN(close,(int));
-extern int EXFUN(fcntl,(int des, int cmd, int e));
-extern int EXFUN(fprintf,(FILE *,char *,...));
-extern int EXFUN(printf,(char *,...));
-extern int EXFUN(qsort,(void *data,int els, int siz, int func()));
-extern int EXFUN(fseek,(FILE*, int, int));
-extern int EXFUN(fclose,(FILE*));
-extern void EXFUN(bcopy,(char*,char*,int));
-extern int EXFUN(bcmp,(char *, char *, int));
-extern void EXFUN(bzero,(char *, int));
-extern void EXFUN(perror,(CONST char *));
-extern char *getenv();
extern char * strchr();
+extern char *getenv();
extern char *memchr();
extern char *strrchr();
extern int chmod();
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 char *getenv();
extern int fputc();
extern int unlink();
-
-#define HOST_BIG_ENDIAN_P
+#endif /* __STDC__ */
/* 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;
+#ifndef int8e_type
+#define int8e_type char
+#endif
+#ifndef uint8e_type
+#define uint8e_type unsigned char
+#endif
+#ifndef int16e_type
+#define int16e_type short
+#endif
+#ifndef uint16e_type
+#define uint16e_type unsigned short
+#endif
+#ifndef int32e_type
+#define int32e_type int
+#endif
+#ifndef uint32e_type
+#define uint32e_type unsigned int
+#endif
+#ifndef uint64e_type
+#ifdef __GNUC__
+#define uint64e_type unsigned long long
+#define int64e_type struct long long
+#define uint64_typeLOW(x) (uint32_type)(((x) & 0xffffffff))
+#define uint64_typeHIGH(x) (uint32_type)(((x) >> 32) & 0xffffffff)
+#else
+typedef struct uint64e_struct {
+ uint32e_type low, high;
+};
+#define uint64e_type struct uint64e_struct
+#define int64e_type struct uint64e_struct
+#define uint64_typeLOW(x) (uint32_type)(((x).low))
+#define uint64_typeHIGH(x) (uint32_type)(((x).high))
+#endif
+#endif
/* 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;
+#ifndef int8_type
+#define int8_type int8e_type
+#endif
+#ifndef uint8_type
+#define uint8_type uint8e_type
+#endif
+#ifndef int16_type
+#define int16_type int16e_type
+#endif
+#ifndef uint16_type
+#define uint16_type uint16e_type
+#endif
+#ifndef int32_type
+#define int32_type int32e_type
+#endif
+#ifndef uint32_type
+#define uint32_type uint32e_type
+#endif
+#ifndef int64_type
+#define int64_type int64e_type
+#endif
+#ifndef uint64_type
+#define uint64_type uint64e_type
+#endif
+
+#ifndef BYTES_IN_PRINTF_INT
+#define BYTES_IN_PRINTF_INT 4
+#endif
+
+#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 (KERNBASE - (UPAGES * NBPG))
+#define HOST_BIG_ENDIAN_P
#include "fopen-same.h"