view src/s/umips.h @ 10404:631f1dac6f7a

Global polishing, some bugs corrected, dynamic allocation used instead of fixed length static buffers in many places. * etags.c (FILEPOS, GET_CHARNO, GET_FILEPOS, max, LINENO): Deleted. (append_to_tagfile, typedefs, typedefs_and_cplusplus, constantypedefs, update, vgrind_style, no_warnings, cxref_style, cplusplus, noindentypedefs): Were int, now logical. (permit_duplicates): Was a var, now a #define. (filename_lb): Was global, now local to main. (main): Open the tag file when in cxref mode. Use a BUFSIZ size buffer for making the shell commands. Look at the return value from the system routine. Exit when cannot open the tag file. (process_file): Open the file and pass the FILE* to find_entries. (find_entries): Now void, because does not open the file itself. (pfnote): Recovering from lack of memory does not work. Removed. Use savenstr and simplify the code. (free_tree): Only free the name space if node is named. (structtag): Now a pointer, not a fixed length array of chars. (consider_token): Don't take a token as argument. Use savenstr when saving a tag in structtag. Callers changed. (TOKEN): Structure changed. Now used only in C_entries. (TOKEN_SAVED_P, SAVE_TOKEN, RESTORE_TOKEN): Deleted. (C_entries): nameb and savenameb deleted. Use dinamic allocation. (pfcnt): Deleted. Users updated. (getit, Asm_labels, Pascal_functions, L_getit, get_scheme, TEX_getit, prolog_getit): Use dinamic allocation for storing the tag instead of a fixed size buffer.
author Francesco Potortì <pot@gnu.org>
date Thu, 12 Jan 1995 17:05:37 +0000
parents 191acacfa1ec
children 02044b05d8e0
line wrap: on
line source

/* Definitions file for GNU Emacs running on Mips operating system.
   That system can emulate either BSD or Sys V, in either case with changes.
   If BSD is defined, we assume BSD is being emulated; otherwise, Sys V.  */

#ifdef BSD
#include "bsd4-3.h"

#define C_SWITCH_SYSTEM -systype bsd43
#define LD_SWITCH_SYSTEM -systype bsd43
#define LIBS_SYSTEM -lmld
#define LIBS_DEBUG
#define START_FILES pre-crt0.o /lib/crt1.o
#define LIB_STANDARD -lc /usr/lib/crtn.o

#define COFF
#define TERMINFO
#undef MAIL_USE_FLOCK  /* Someone should check this.  */
#undef HAVE_UNION_WAIT

#else /* not BSD */

#include "usg5-2-2.h"

#define LIBS_SYSTEM -lmld
#define LIBS_DEBUG
#define START_FILES pre-crt0.o /usr/lib/crt1.o
#define LIB_STANDARD -lbsd -lc /usr/lib/crtn.o
/* #define LIBS_TERMCAP -lcurses */

#define C_SWITCH_SYSTEM -I/usr/include/bsd

/* Cancel certain parts of standard sysV support.  */
#undef NONSYSTEM_DIR_LIBRARY
#define SYSV_SYSTEM_DIR
#undef static

/* Don't try to use SIGIO or FIONREAD even though they are defined.  */
#undef SIGIO
#define BROKEN_FIONREAD

/* Describe special kernel features.  */

#define HAVE_SYSVIPC

#if defined(emacs)
#include <bsd/sys/time.h>
#endif

/* The `select' in the system won't work for pipes,
   so don't use it.  */
#define BROKEN_SELECT

#define HAVE_DUP2
#define HAVE_GETWD
#define HAVE_GETTIMEOFDAY

#define HAVE_PTYS
#define HAVE_SOCKETS
/* #define BSTRING   Supposedly removed.  */

#undef NOMULTIPLEJOBS

#define CLASH_DETECTION

#if defined(HAVE_X_WINDOWS) && defined(HAVE_X11)
#define HAVE_VFORK		/* Graciously provided by libX.a */
#endif

#define utimes utime  /* Someone should check this.  */
/* ??? */
#define IRIS

#endif /* not BSD */

/* High order bit must be stripped off nlist return values */
#define FIXUP_KERNEL_SYMBOL_ADDR(NL)  (NL)[0].n_value &= 0x7fffffff;