OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /or1k/trunk/gdb-5.0/include/mpw
    from Rev 107 to Rev 1765
    Reverse comparison

Rev 107 → Rev 1765

/spin.h
0,0 → 1,64
/* Progress macros that use SpinCursor in MPW.
Copyright (C) 1994 Free Software Foundation, Inc.
 
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
 
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
 
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
 
#ifndef _SPIN_H
#define _SPIN_H
 
/* For MPW, progress macros just need to "spin the cursor" frequently,
preferably several times per second on a 68K Mac. */
 
/* In order to determine if we're meeting the goal, define this macro
and information about frequency of spinning will be collected and
displayed. */
 
#define SPIN_MEASUREMENT
 
#include <CursorCtl.h>
 
/* Programs use this macro to indicate the start of a lengthy
activity. STR identifies the particular activity, while N
indicates the expected duration, in unspecified units. If N is
zero, then the expected time to completion is unknown. */
 
#undef START_PROGRESS
#define START_PROGRESS(STR,N) mpw_start_progress (STR, N, __FILE__, __LINE__);
 
/* Programs use this macro to indicate that progress has been made on a
lengthy activity. */
 
#undef PROGRESS
#ifdef SPIN_MEASUREMENT
#define PROGRESS(X) mpw_progress_measured (X, __FILE__, __LINE__);
#else
#define PROGRESS(X) mpw_progress (X);
#endif
 
/* Programs use this macro to indicate the end of a lengthy activity.
STR must match a STR passed to START_PROGRESS previously. */
 
#undef END_PROGRESS
#define END_PROGRESS(STR) mpw_end_progress (STR, __FILE__, __LINE__);
 
extern void mpw_start_progress (char *, int, char *, int);
 
extern void mpw_progress (int);
 
extern void mpw_progress_measured (int, char *, int);
 
extern void mpw_end_progress (char *, char *, int);
 
#endif /* _SPIN_H */
/pwd.h
0,0 → 1,15
#ifndef __pwd_h
#define __pwd_h
 
#include <sys/types.h>
 
struct passwd {
char *pw_name;
uid_t pw_uid;
gid_t pw_gid;
char *pw_dir;
char *pw_shell;
char *pw_passwd;
};
 
#endif /* ! __pwd_h */
/stat.h
0,0 → 1,75
/* The <sys/stat.h> header defines a struct that is used in the stat() and
* fstat functions. The information in this struct comes from the i-node of
* some file. These calls are the only approved way to inspect i-nodes.
*/
 
#ifndef _STAT_H
#define _STAT_H
 
#ifndef _TYPES_H /* not quite right */
#include <sys/types.h>
#endif
 
struct stat {
dev_t st_dev; /* major/minor device number */
ino_t st_ino; /* i-node number */
mode_t st_mode; /* file mode, protection bits, etc. */
short int st_nlink; /* # links; TEMPORARY HACK: should be nlink_t*/
uid_t st_uid; /* uid of the file's owner */
short int st_gid; /* gid; TEMPORARY HACK: should be gid_t */
dev_t st_rdev;
off_t st_size; /* file size */
time_t st_atime; /* time of last access */
time_t st_mtime; /* time of last data modification */
time_t st_ctime; /* time of last file status change */
};
 
/* Traditional mask definitions for st_mode. */
#define S_IFMT 0170000 /* type of file */
#define S_IFREG 0100000 /* regular */
#define S_IFBLK 0060000 /* block special */
#define S_IFDIR 0040000 /* directory */
#define S_IFCHR 0020000 /* character special */
#define S_IFIFO 0010000 /* this is a FIFO */
#define S_ISUID 0004000 /* set user id on execution */
#define S_ISGID 0002000 /* set group id on execution */
/* next is reserved for future use */
#define S_ISVTX 01000 /* save swapped text even after use */
 
/* POSIX masks for st_mode. */
#define S_IRWXU 00700 /* owner: rwx------ */
#define S_IRUSR 00400 /* owner: r-------- */
#define S_IWUSR 00200 /* owner: -w------- */
#define S_IXUSR 00100 /* owner: --x------ */
 
#define S_IRWXG 00070 /* group: ---rwx--- */
#define S_IRGRP 00040 /* group: ---r----- */
#define S_IWGRP 00020 /* group: ----w---- */
#define S_IXGRP 00010 /* group: -----x--- */
 
#define S_IRWXO 00007 /* others: ------rwx */
#define S_IROTH 00004 /* others: ------r-- */
#define S_IWOTH 00002 /* others: -------w- */
#define S_IXOTH 00001 /* others: --------x */
 
/* The following macros test st_mode (from POSIX Sec. 5.6.1.1. */
#define S_ISREG(m) ((m & S_IFMT) == S_IFREG) /* is a reg file */
#define S_ISDIR(m) ((m & S_IFMT) == S_IFDIR) /* is a directory */
#define S_ISCHR(m) ((m & S_IFMT) == S_IFCHR) /* is a char spec */
#define S_ISBLK(m) ((m & S_IFMT) == S_IFBLK) /* is a block spec */
#define S_ISFIFO(m) ((m & S_IFMT) == S_IFIFO) /* is a pipe/FIFO */
 
 
/* Function Prototypes. */
#ifndef _ANSI_H
#include <ansi.h>
#endif
 
_PROTOTYPE( int chmod, (const char *_path, int _mode) );
_PROTOTYPE( int fstat, (int _fildes, struct stat *_buf) );
_PROTOTYPE( int mkdir, (const char *_path, int _mode) );
_PROTOTYPE( int mkfifo, (const char *_path, int _mode) );
_PROTOTYPE( int stat , (const char *_path, struct stat *_buf) );
_PROTOTYPE( mode_t umask, (int _cmask) );
 
#endif /* _STAT_H */
/dir.h
0,0 → 1,23
/* The <dir.h> header gives the layout of a directory. */
 
#pragma once
 
#ifndef _DIR_H
#define _DIR_H
 
#ifndef _TYPES_H /* not quite right */
#include <sys/types.h>
#endif
 
#define DIRBLKSIZ 512 /* size of directory block */
 
#ifndef DIRSIZ
#define DIRSIZ 14
#endif
 
struct direct {
ino_t d_ino;
char d_name[DIRSIZ];
};
 
#endif /* _DIR_H */
/ChangeLog
0,0 → 1,61
Tue Feb 27 12:23:04 1996 Raymond Jou <rjou@mexican.cygnus.com>
 
* mpw.h (HAVE_VPRINTF): Add and define to have the value 1.
 
Fri Dec 29 14:40:46 1995 Stan Shebs <shebs@andros.cygnus.com>
 
* mpw.h (HAVE_STDLIB_H, etc): Define to have the value 1.
(HAVE_FCNTL_H): Define.
 
Mon Dec 11 15:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
 
* mpw.h (open, access): Define as mpw_open and mpw_access.
 
Thu Nov 9 15:38:37 1995 Stan Shebs <shebs@andros.cygnus.com>
 
* mpw.h: Include unix.h if USE_MW_HEADERS, otherwise include
various original MPW include files (ioctl.h, etc).
(EIO): Define if not defined.
* sys/ioctl.h: Remove, not needed.
 
Wed Oct 25 12:30:44 1995 Stan Shebs <shebs@andros.cygnus.com>
 
* mpw.h: Don't include errno.h or ioctl.h.
(ENOENT, EACCES, ENOSYS): Define if not defined.
(fdopen): Declare if __STDC__.
(R_OK, W_OK, X_OK): Define if not defined.
 
Tue Sep 26 14:57:21 1995 Stan Shebs <shebs@andros.cygnus.com>
 
* mpw.h: New file, universally useful MPW host definitions.
Many of these used to live in bfd/hosts/mpw.h.
* grp.h: Remove RCS comment.
* sys/ioctl.h: Add a comment line.
 
Wed Dec 14 13:12:14 1994 Stan Shebs <shebs@andros.cygnus.com>
 
* spin.h: New file, cursor spinning for progress.
 
Thu Jun 30 15:32:07 1994 Stan Shebs (shebs@andros.cygnus.com)
 
* fcntl.h (open): Allow optional third arg.
 
Thu Apr 14 12:54:51 1994 Stan Shebs (shebs@andros.cygnus.com)
 
* dir.h, dirent.h, fcntl.h, grp.h, pwd.h, stat.h: New files.
* sys/ioctl.h: New file.
 
Mon Feb 21 09:44:45 1994 Stan Shebs (shebs@andros.cygnus.com)
 
* sys/stat.h (struct stat): New field st_rsize.
(S_IFMT, etc): Use different bit positions.
(fstat): Add parameter names to prototype.
 
Mon Jan 31 19:30:16 1994 Stan Shebs (shebs@andros.cygnus.com)
 
* README: New file.
* utime.h, varargs.h: New files, simulated Posix.
* sys/{file,param,resource,stat,time,types}.h: New files, more
simulated Posix.
 
 
/mpw.h
0,0 → 1,130
/* Mac MPW host-specific definitions. */
 
#ifndef __INCLUDE_MPW_H
#define __INCLUDE_MPW_H
 
#ifndef MPW
#define MPW
#endif
 
/* MPW C is basically ANSI, but doesn't actually enable __STDC__,
nor does it allow __STDC__ to be #defined. */
 
#ifndef ALMOST_STDC
#define ALMOST_STDC
#endif
 
#include <stdio.h>
#include <ctype.h>
#include <errno.h>
 
#define HAVE_TIME_T_IN_TIME_H 1
 
#define HAVE_STDLIB_H 1
 
#define HAVE_ERRNO_H 1
 
#define HAVE_STDDEF_H 1
 
#define HAVE_STRING_H 1
 
#define HAVE_STDARG_H 1
 
#define HAVE_VPRINTF 1
 
#ifdef USE_MW_HEADERS
 
#include <unix.h>
 
#else
 
#include <fcntl.h>
#include <ioctl.h>
#include <sys/stat.h>
 
#define HAVE_FCNTL_H 1
 
#ifndef O_ACCMODE
#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
#endif
 
#ifndef fileno
#define fileno(fp) ((fp)->_file)
#endif
 
/* stdio.h does not define this if __STDC__, so define here. */
 
#ifdef __STDC__
FILE *fdopen(int fildes, const char *mode);
#endif
 
#endif /* USE_MW_HEADERS */
 
/* Add ersatz definitions, for systems that lack them. */
 
#ifndef EIO
#define EIO 96
#endif
#ifndef ENOENT
#define ENOENT 97
#endif
#ifndef EACCES
#define EACCES 98
#endif
#ifndef ENOSYS
#define ENOSYS 99
#endif
 
#ifndef R_OK
#define R_OK 4
#define W_OK 2
#define X_OK 1
#endif
 
/* Binary files have different characteristics; for instance, no cr/nl
translation. */
 
#define USE_BINARY_FOPEN
 
#include <spin.h>
 
#ifdef MPW_C
#undef __PTR_TO_INT
#define __PTR_TO_INT(P) ((int)(P))
#undef __INT_TO_PTR
#define __INT_TO_PTR(P) ((char *)(P))
#endif /* MPW_C */
 
#define NO_FCNTL
 
int fstat ();
 
FILE *mpw_fopen ();
int mpw_fseek ();
int mpw_fread ();
int mpw_fwrite ();
int mpw_access ();
int mpw_open ();
int mpw_creat ();
void mpw_abort (void);
 
/* Map these standard functions to improved versions in libiberty. */
 
#define fopen mpw_fopen
#define fseek mpw_fseek
#define fread mpw_fread
#define fwrite mpw_fwrite
#define open mpw_open
#define access mpw_access
#define creat mpw_creat
#define abort mpw_abort
 
#define POSIX_UTIME
 
#define LOSING_TOTALLY
 
/* Define this so that files will be closed before being unlinked. */
 
#define CLOSE_BEFORE_UNLINK
 
#endif /* __INCLUDE_MPW_H */
/utime.h
0,0 → 1,7
 
struct utimbuf {
time_t actime;
time_t modtime;
};
 
int utime (char *, struct utimbuf *);
/dirent.h
0,0 → 1,31
#ifndef __dirent_h
#define __dirent_h
 
#include "sys/dir.h"
 
struct dirent {
long d_ino; /* inode number of entry */
off_t d_off; /* offset of disk directory entry */
unsigned short d_reclen; /* length of this record */
char d_name[1]; /* name of file */
};
 
/*
#define DIRENTBASESIZE \
(((struct dirent *) 0)->d_name - (char *) 0)
#define DIRENTSIZE(namelen) \
((DIRENTBASESIZE + (namelen) + NBPW) & ~(NBPW - 1))
*/
 
/* from Mips posix/dirent.h */
 
/*
#undef rewinddir
*/
 
extern DIR *opendir();
extern struct dirent *readdir();
extern void rewinddir();
extern int closedir();
 
#endif /* ! __dirent_h */
/varargs.h
0,0 → 1,9
/* varargs.h. */
#ifndef __va_list__
#define __va_list__
typedef char *va_list;
#endif
#define va_dcl int va_alist;
#define va_start(list) list = (char *) &va_alist
#define va_end(list)
#define va_arg(list,mode) ((mode *)(list += sizeof(mode)))[-1]
/fcntl.h
0,0 → 1,124
/*
* FCntl.h -- faccess(), fcntl(), and open() mode flags
*
* Portions copyright American Telephone & Telegraph
* Used with permission, Apple Computer Inc. (1985,1988,1990,1992)
* All rights reserved.
*/
 
#ifndef __FCNTL__
#define __FCNTL__
 
#ifndef __TYPES__
#include <Types.h>
#endif
 
/*
* For use by lseek():
*/
 
#ifndef __STDIO__ /* these defns exactly paralled in StdIO.h for fseek() */
#define SEEK_CUR 1
#define SEEK_END 2
#define SEEK_SET 0
#endif
 
/*
* faccess() commands; for general use
*/
/* 'd' => "directory" ops */
#define F_DELETE (('d'<<8)|0x01)
#define F_RENAME (('d'<<8)|0x02)
 
/*
* more faccess() commands; for use only by MPW tools
*/
#define F_OPEN (('d'<<8)|0x00) /* reserved for operating system use */
/* 'e' => "editor" ops */
#define F_GTABINFO (('e'<<8)|0x00) /* get tab offset for file */
#define F_STABINFO (('e'<<8)|0x01) /* set " " " " */
#define F_GFONTINFO (('e'<<8)|0x02) /* get font number and size for file */
#define F_SFONTINFO (('e'<<8)|0x03) /* set " " " " " " */
#define F_GPRINTREC (('e'<<8)|0x04) /* get print record for file */
#define F_SPRINTREC (('e'<<8)|0x05) /* set " " " " */
#define F_GSELINFO (('e'<<8)|0x06) /* get selection information for file */
#define F_SSELINFO (('e'<<8)|0x07) /* set " " " " */
#define F_GWININFO (('e'<<8)|0x08) /* get current window position */
#define F_SWININFO (('e'<<8)|0x09) /* set " " " */
#define F_GSCROLLINFO (('e'<<8)|0x0A) /* get scroll information */
#define F_SSCROLLINFO (('e'<<8)|0x0B) /* set " " */
#define F_GMARKER (('e'<<8)|0x0D) /* Get Marker */
#define F_SMARKER (('e'<<8)|0x0C) /* Set " */
#define F_GSAVEONCLOSE (('e'<<8)|0x0F) /* Get Save on close */
#define F_SSAVEONCLOSE (('e'<<8)|0x0E) /* Set " " " */
 
/*
* argument structures used by various faccess() commands
*/
struct MarkElement {
int start; /* start position of mark */
int end; /* end position */
unsigned char charCount; /* number of chars in mark name */
char name[64]; /* mark name */
} ; /* note: marker names may be up to 64 characters long */
 
#ifndef __cplusplus
typedef struct MarkElement MarkElement;
#endif
 
struct SelectionRecord {
long startingPos;
long endingPos;
long displayTop;
};
 
#ifndef __cplusplus
typedef struct SelectionRecord SelectionRecord;
#endif
 
 
/*
* Mode values accessible to open()
*/
#define O_RDONLY 0 /* Bits 0 and 1 are used internally */
#define O_WRONLY 1 /* Values 0..2 are historical */
#define O_RDWR 2 /* NOTE: it goes 0, 1, 2, *!* 8, 16, 32, ... */
#define O_APPEND (1<< 3) /* append (writes guaranteed at the end) */
#define O_RSRC (1<< 4) /* Open the resource fork */
#define O_ALIAS (1<< 5) /* Open alias file */
#define O_CREAT (1<< 8) /* Open with file create */
#define O_TRUNC (1<< 9) /* Open with truncation */
#define O_EXCL (1<<10) /* w/ O_CREAT: Exclusive "create-only" */
#define O_BINARY (1<<11) /* Open as a binary stream */
#define O_NRESOLVE (1<<14) /* Don't resolve any aliases */
 
#ifdef __cplusplus
extern "C" {
#endif
 
/*
* function prototypes
*/
int close(int);
int creat(const char*);
int dup(int filedes); /* OBSOLETE: fcntl(filedes, F_DUPFD, 0) is preferred */
int faccess(char*, unsigned int, long*);
int fcntl(int, unsigned int, int);
long lseek(int, long, int);
int open(const char*, int, ...);
int read(int, char*, unsigned);
int unlink(char*);
int write(int, const char*, unsigned);
 
#ifdef __cplusplus
}
#endif
 
/*
* fcntl() commands
*/
#define F_DUPFD 0 /* Duplicate files (file descriptor) */
 
#endif __FCNTL__
/README
0,0 → 1,124
This is a collection of include files that help imitate Posix in MPW.
/grp.h
0,0 → 1,10
#pragma once
 
#include "sys/types.h"
 
struct group {
char *gr_name;
gid_t gr_gid;
char *gr_passwd;
char **gr_mem;
};
/sys/stat.h
0,0 → 1,44
/* Imitation sys/stat.h. */
 
#ifndef __SYS_STAT_H__
#define __SYS_STAT_H__
 
#include <sys/types.h>
#include <time.h>
 
struct stat {
dev_t st_dev;
ino_t st_ino;
mode_t st_mode;
short st_nlink;
uid_t st_uid;
gid_t st_gid;
dev_t st_rdev;
off_t st_size;
off_t st_rsize;
time_t st_atime;
int st_spare1;
time_t st_mtime;
int st_spare2;
time_t st_ctime;
int st_spare3;
long st_blksize;
long st_blocks;
long st_spare4[2];
};
 
#define S_IFMT 0170000L
#define S_IFDIR 0040000L
#define S_IFREG 0100000L
#define S_IREAD 0400
#define S_IWRITE 0200
#define S_IEXEC 0100
 
#define S_IFIFO 010000 /* FIFO special */
#define S_IFCHR 020000 /* character special */
#define S_IFBLK 030000 /* block special */
 
int stat (char *path, struct stat *buf);
int fstat (int fd, struct stat *buf);
 
#endif /* __SYS_STAT_H___ */
/sys/time.h
0,0 → 1,13
/* Imitation sys/time.h. */
 
#ifndef __SYS_TIME_H__
#define __SYS_TIME_H__
 
#include <time.h>
 
struct timeval {
long tv_sec;
long tv_usec;
};
 
#endif /* __SYS_TIME_H__ */
/sys/file.h
0,0 → 1,13
/* empty */
/sys/param.h
0,0 → 1,13
/* empty */
/sys/types.h
0,0 → 1,15
/* Imitation sys/types.h. */
 
#ifndef __SYS_TYPES_H__
#define __SYS_TYPES_H__
 
#include <Types.h>
 
typedef short dev_t;
typedef short ino_t;
typedef unsigned short mode_t;
typedef unsigned short uid_t;
typedef unsigned short gid_t;
typedef long off_t;
 
#endif /* __SYS_TYPES_H__ */
/sys/resource.h
0,0 → 1,9
#ifndef __SYS_RESOURCE_H__
#define __SYS_RESOURCE_H__
 
struct rusage {
struct timeval ru_utime;
struct timeval ru_stime;
};
 
#endif /* __SYS_RESOURCE_H__ */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.