diff options
author | ache <ache@FreeBSD.org> | 1998-01-21 14:37:27 +0000 |
---|---|---|
committer | ache <ache@FreeBSD.org> | 1998-01-21 14:37:27 +0000 |
commit | bcf27ec126121a6c11ba750d9f011ce95cf51417 (patch) | |
tree | 94cf18e6669b89531e2a2ae1c9cb0b4b93b84ff6 /gnu/usr.bin/patch/common.h | |
parent | dc5134f336789006de7a0001ff9b325841d50c6d (diff) | |
download | FreeBSD-src-bcf27ec126121a6c11ba750d9f011ce95cf51417.zip FreeBSD-src-bcf27ec126121a6c11ba750d9f011ce95cf51417.tar.gz |
Resurrect patch 2.1 without FreeBSD Index: hack
Diffstat (limited to 'gnu/usr.bin/patch/common.h')
-rw-r--r-- | gnu/usr.bin/patch/common.h | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/gnu/usr.bin/patch/common.h b/gnu/usr.bin/patch/common.h new file mode 100644 index 0000000..e58f3f2 --- /dev/null +++ b/gnu/usr.bin/patch/common.h @@ -0,0 +1,200 @@ +/* $Header: /home/ncvs/src/gnu/usr.bin/patch/common.h,v 1.3 1995/05/30 05:02:30 rgrimes Exp $ + * + * $Log: common.h,v $ + * Revision 1.3 1995/05/30 05:02:30 rgrimes + * Remove trailing whitespace. + * + * Revision 1.2 1993/09/22 16:51:03 rich + * Increaed the fixed static buffer sizes and maximum hunk size that + * otherwise causes the XFree86 1.3 patch set to fail. + * + * Revision 1.1.1.1 1993/06/19 14:21:52 paul + * b-maked patch-2.10 + * + * Revision 2.0.1.2 88/06/22 20:44:53 lwall + * patch12: sprintf was declared wrong + * + * Revision 2.0.1.1 88/06/03 15:01:56 lwall + * patch10: support for shorter extensions. + * + * Revision 2.0 86/09/17 15:36:39 lwall + * Baseline for netwide release. + * + */ + +#define DEBUGGING + +#define VOIDUSED 7 +#include "config.h" + +/* shut lint up about the following when return value ignored */ + +#define Signal (void)signal +#define Unlink (void)unlink +#define Lseek (void)lseek +#define Fseek (void)fseek +#define Fstat (void)fstat +#define Pclose (void)pclose +#define Close (void)close +#define Fclose (void)fclose +#define Fflush (void)fflush +#define Sprintf (void)sprintf +#define Mktemp (void)mktemp +#define Strcpy (void)strcpy +#define Strcat (void)strcat + +/* NeXT declares malloc and realloc incompatibly from us in some of + these files. Temporarily redefine them to prevent errors. */ +#define malloc system_malloc +#define realloc system_realloc +#include <stdio.h> +#include <assert.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <ctype.h> +#include <signal.h> +#undef malloc +#undef realloc + +/* constants */ + +/* AIX predefines these. */ +#ifdef TRUE +#undef TRUE +#endif +#ifdef FALSE +#undef FALSE +#endif +#define TRUE (1) +#define FALSE (0) + +#define MAXHUNKSIZE 200000 /* is this enough lines? */ +#define INITHUNKMAX 125 /* initial dynamic allocation size */ +#define MAXLINELEN 4096 +#define BUFFERSIZE 4096 + +#define SCCSPREFIX "s." +#define GET "get %s" +#define GET_LOCKED "get -e %s" +#define SCCSDIFF "get -p %s | diff - %s >/dev/null" + +#define RCSSUFFIX ",v" +#define CHECKOUT "co %s" +#define CHECKOUT_LOCKED "co -l %s" +#define RCSDIFF "rcsdiff %s > /dev/null" + +/* handy definitions */ + +#define Null(t) ((t)0) +#define Nullch Null(char *) +#define Nullfp Null(FILE *) +#define Nulline Null(LINENUM) + +#define Ctl(ch) ((ch) & 037) + +#define strNE(s1,s2) (strcmp(s1, s2)) +#define strEQ(s1,s2) (!strcmp(s1, s2)) +#define strnNE(s1,s2,l) (strncmp(s1, s2, l)) +#define strnEQ(s1,s2,l) (!strncmp(s1, s2, l)) + +/* typedefs */ + +typedef char bool; +typedef long LINENUM; /* must be signed */ +typedef unsigned MEM; /* what to feed malloc */ + +/* globals */ + +EXT int Argc; /* guess */ +EXT char **Argv; +EXT int optind_last; /* for restarting plan_b */ + +EXT struct stat filestat; /* file statistics area */ +EXT int filemode INIT(0644); + +EXT char buf[MAXLINELEN]; /* general purpose buffer */ +EXT FILE *ofp INIT(Nullfp); /* output file pointer */ +EXT FILE *rejfp INIT(Nullfp); /* reject file pointer */ + +EXT int myuid; /* cache getuid return value */ + +EXT bool using_plan_a INIT(TRUE); /* try to keep everything in memory */ +EXT bool out_of_mem INIT(FALSE); /* ran out of memory in plan a */ + +#define MAXFILEC 2 +EXT int filec INIT(0); /* how many file arguments? */ +EXT char *filearg[MAXFILEC]; +EXT bool ok_to_create_file INIT(FALSE); +EXT char *bestguess INIT(Nullch); /* guess at correct filename */ + +EXT char *outname INIT(Nullch); +EXT char rejname[128]; + +EXT char *origprae INIT(Nullch); + +EXT char *TMPOUTNAME; +EXT char *TMPINNAME; +EXT char *TMPREJNAME; +EXT char *TMPPATNAME; +EXT bool toutkeep INIT(FALSE); +EXT bool trejkeep INIT(FALSE); + +EXT LINENUM last_offset INIT(0); +#ifdef DEBUGGING +EXT int debug INIT(0); +#endif +EXT LINENUM maxfuzz INIT(2); +EXT bool force INIT(FALSE); +EXT bool batch INIT(FALSE); +EXT bool verbose INIT(TRUE); +EXT bool reverse INIT(FALSE); +EXT bool noreverse INIT(FALSE); +EXT bool skip_rest_of_patch INIT(FALSE); +EXT int strippath INIT(957); +EXT bool canonicalize INIT(FALSE); + +#define CONTEXT_DIFF 1 +#define NORMAL_DIFF 2 +#define ED_DIFF 3 +#define NEW_CONTEXT_DIFF 4 +#define UNI_DIFF 5 +EXT int diff_type INIT(0); + +EXT bool do_defines INIT(FALSE); /* patch using ifdef, ifndef, etc. */ +EXT char if_defined[128]; /* #ifdef xyzzy */ +EXT char not_defined[128]; /* #ifndef xyzzy */ +EXT char else_defined[] INIT("#else\n");/* #else */ +EXT char end_defined[128]; /* #endif xyzzy */ + +EXT char *revision INIT(Nullch); /* prerequisite revision, if any */ + +#include <errno.h> +#ifdef STDC_HEADERS +#include <stdlib.h> +#include <string.h> +#else +extern int errno; +FILE *popen(); +char *malloc(); +char *realloc(); +long atol(); +char *getenv(); +char *strcpy(); +char *strcat(); +#endif +char *mktemp(); +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#else +long lseek(); +#endif +#if defined(_POSIX_VERSION) || defined(HAVE_FCNTL_H) +#include <fcntl.h> +#endif + +#if !defined(S_ISDIR) && defined(S_IFDIR) +#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) +#endif +#if !defined(S_ISREG) && defined(S_IFREG) +#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) +#endif |