Annotation of 42BSD/bin/make/defs, revision 1.1

1.1     ! root        1: /* defs 4.6 83/07/01 */
        !             2: #include <stdio.h>
        !             3: #include <ctype.h>
        !             4: #include <sys/param.h>
        !             5: #include <sys/dir.h>
        !             6: 
        !             7: #define SHELLCOM "/bin/sh"
        !             8: 
        !             9: typedef long int TIMETYPE;
        !            10: 
        !            11: #ifdef unix
        !            12: /*  to install metering, add a statement like */
        !            13: #define METERFILE "/usr/sif/make/Meter"
        !            14: /* to turn metering on, set external variable meteron to 1 */
        !            15: #endif
        !            16: 
        !            17: /* define FSTATIC to be static on systems with C compilers
        !            18:    supporting file-static; otherwise define it to be null
        !            19: */
        !            20: #define FSTATIC static
        !            21: 
        !            22: #define NO 0
        !            23: #define YES 1
        !            24: 
        !            25: #define unequal strcmp
        !            26: #define HASHSIZE 1021
        !            27: #define NLEFTS 512
        !            28: #define NCHARS 500
        !            29: #define NINTS  250
        !            30: #define INMAX 3500
        !            31: #define OUTMAX 3500
        !            32: #define QBUFMAX 2500
        !            33: #define MAXDIR 10
        !            34: 
        !            35: #define ALLDEPS  1
        !            36: #define SOMEDEPS 2
        !            37: 
        !            38: #define META 01
        !            39: #define TERMINAL 02
        !            40: extern char funny[128];
        !            41: 
        !            42: 
        !            43: #define ALLOC(x) (struct x *) ckalloc(sizeof(struct x))
        !            44: 
        !            45: extern int sigivalue;
        !            46: extern int sigqvalue;
        !            47: extern int waitpid;
        !            48: extern int dbgflag;
        !            49: extern int prtrflag;
        !            50: extern int silflag;
        !            51: extern int noexflag;
        !            52: extern int keepgoing;
        !            53: extern int noruleflag;
        !            54: extern int touchflag;
        !            55: extern int questflag;
        !            56: extern int ndocoms;
        !            57: extern int ignerr;
        !            58: extern int okdel;
        !            59: extern int inarglist;
        !            60: extern char *prompt;
        !            61: extern int nopdir;
        !            62: extern char junkname[ ];
        !            63: 
        !            64: 
        !            65: 
        !            66: struct nameblock
        !            67:        {
        !            68:        struct nameblock *nxtnameblock;
        !            69:        char *namep;
        !            70:        struct lineblock *linep;
        !            71:        int done:3;
        !            72:        int septype:3;
        !            73:        TIMETYPE modtime;
        !            74:        };
        !            75: 
        !            76: extern struct nameblock *mainname ;
        !            77: extern struct nameblock *firstname;
        !            78: 
        !            79: struct lineblock
        !            80:        {
        !            81:        struct lineblock *nxtlineblock;
        !            82:        struct depblock *depp;
        !            83:        struct shblock *shp;
        !            84:        };
        !            85: extern struct lineblock *sufflist;
        !            86: 
        !            87: struct depblock
        !            88:        {
        !            89:        struct depblock *nxtdepblock;
        !            90:        struct nameblock *depname;
        !            91:        };
        !            92: 
        !            93: struct shblock
        !            94:        {
        !            95:        struct shblock *nxtshblock;
        !            96:        char *shbp;
        !            97:        };
        !            98: 
        !            99: struct varblock
        !           100:        {
        !           101:        struct varblock *nxtvarblock;
        !           102:        char *varname;
        !           103:        char *varval;
        !           104:        int noreset:1;
        !           105:        int used:1;
        !           106:        };
        !           107: extern struct varblock *firstvar;
        !           108: 
        !           109: struct pattern
        !           110:        {
        !           111:        struct pattern *nxtpattern;
        !           112:        char *patval;
        !           113:        };
        !           114: extern struct pattern *firstpat;
        !           115: 
        !           116: struct dirhdr
        !           117:        {
        !           118:        struct dirhdr *nxtopendir;
        !           119:        DIR *dirfc;
        !           120:        char *dirn;
        !           121:        };
        !           122: extern struct dirhdr *firstod;
        !           123: 
        !           124: 
        !           125: struct chain
        !           126:        {
        !           127:        struct chain *nextp;
        !           128:        char *datap;
        !           129:        };
        !           130: 
        !           131: char *copys(), *concat(), *subst();
        !           132: int *ckalloc();
        !           133: struct nameblock *srchname(), *makename();
        !           134: TIMETYPE exists();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.