Annotation of 42BSD/bin/make/defs, revision 1.1.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.