New version from Oz Yigit
authorKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Wed, 4 Sep 1991 02:43:34 +0000 (18:43 -0800)
committerKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Wed, 4 Sep 1991 02:43:34 +0000 (18:43 -0800)
SCCS-vsn: usr.bin/m4/extern.h 5.1
SCCS-vsn: usr.bin/m4/stdd.h 5.1

usr/src/usr.bin/m4/extern.h [new file with mode: 0644]
usr/src/usr.bin/m4/stdd.h [new file with mode: 0644]

diff --git a/usr/src/usr.bin/m4/extern.h b/usr/src/usr.bin/m4/extern.h
new file mode 100644 (file)
index 0000000..3cc8a45
--- /dev/null
@@ -0,0 +1,68 @@
+/*-
+ * Copyright (c) 1991 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Ozan Yigit.
+ *
+ * %sccs.include.redist.c%
+ *
+ *     @(#)extern.h    5.1 (Berkeley) %G%
+ */
+
+char   *basename __P((char *));
+char   *xalloc __P((unsigned long));
+int    expr __P((char *));
+ndptr  addent __P((char *));
+void   chrsave __P((int));
+void   dochc __P((char *[], int));
+void   dochq __P((char *[], int));
+void   dodefine __P((char *, char *));
+void   dodefn __P((char *));
+void   dodiv __P((int));
+void   dodump __P((char *[], int));
+void   doifelse __P((char *[], int));
+int    doincl __P((char *));
+int    dopaste __P((char *));
+void   dopushdef __P((char *, char *));
+void   dosub __P((char *[], int));
+void   doundiv __P((char *[], int));
+void   eval __P((char *[], int, int));
+void   expand __P((char *[], int));
+void   getdiv __P((int));
+char   *xstrdup __P((const char *));
+int    hash __P((char *));
+int    indx __P((char *, char *));
+void   killdiv __P((void));
+ndptr  lookup __P((char *));
+void   map __P((char *, char *, char *, char *));
+void   onintr __P((int));
+void   oops __P((const char *, ...));
+void   pbnum __P((int));
+void   pbstr __P((char *));
+void   putback __P((int));
+void   remhash __P((char *, int));
+void   usage __P((void));
+
+extern ndptr hashtab[];                /* hash table for macros etc. */
+extern stae mstack[];          /* stack of m4 machine */
+extern FILE *active;           /* active output file pointer */
+extern FILE *infile[];         /* input file stack (0=stdin) */
+extern FILE *outfile[];                /* diversion array(0=bitbucket) */
+extern int fp;                         /* m4 call frame pointer */
+extern int ilevel;             /* input file stack pointer */
+extern int oindex;             /* diversion index. */
+extern int sp;                 /* current m4 stack pointer */
+extern char *bp;               /* first available character */
+extern char buf[];             /* push-back buffer */
+extern char ecommt;            /* end character for comment */
+extern char *endest;           /* end of string space */
+extern char *endpbb;           /* end of push-back buffer */
+extern char *ep;               /* first free char in strspace */
+extern char lquote;            /* left quote character (`) */
+extern char *m4temp;           /* filename for diversions */
+extern char *m4wraps;          /* m4wrap string default. */
+extern char *null;             /* as it says.. just a null. */
+extern char *progname;         /* program name */
+extern char rquote;            /* right quote character (') */
+extern char scommt;            /* start character for comment */
diff --git a/usr/src/usr.bin/m4/stdd.h b/usr/src/usr.bin/m4/stdd.h
new file mode 100644 (file)
index 0000000..8e4ddd1
--- /dev/null
@@ -0,0 +1,30 @@
+/*-
+ * Copyright (c) 1991 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Ozan Yigit.
+ *
+ * %sccs.include.redist.c%
+ *
+ *     @(#)stdd.h      5.1 (Berkeley) %G%
+ */
+
+/*
+ * standard defines
+ */
+
+#define max(a,b) ((a) > (b)? (a): (b))
+#define min(a,b) ((a) < (b)? (a): (b))
+
+#define iswhite(c) ((c) == ' ' || (c) == '\t')
+
+/* 
+ * STREQ is an optimised strcmp(a,b)==0 
+ * STREQN is an optimised strncmp(a,b,n)==0; assumes n > 0 
+ */
+#define STREQ(a, b) ((a)[0] == (b)[0] && strcmp(a, b) == 0)
+#define STREQN(a, b, n) ((a)[0] == (b)[0] && strncmp(a, b, n) == 0)
+
+#define YES 1
+#define NO 0