Annotation of coherent/d/bin/make/make.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * make.h
                      3:  * Definitions and declarations for make.
                      4:  * Created due to the offended sensitivities of all MWC, 1-2-85.
                      5:  */
                      6: 
                      7: #include <stdio.h>
                      8: #include <sys/stat.h>
                      9: #include <sys/types.h>
                     10: #include <time.h>
                     11: #ifdef _I386
                     12: #include <arcoff.h>
                     13: #else
                     14: #include <ar.h>
                     15: #endif
                     16: #include <canon.h>
                     17: #include <path.h>
                     18: #include <time.h>
                     19: 
                     20: /* Exit codes. */
                     21: #define        ALLOK   0       /* all ok, if -q option then all uptodate */
                     22: #define        ERROR   1       /* something went wrong */
                     23: #define        NOTUTD  2       /* with -q option, something is not uptodate */
                     24: 
                     25: /* Types. */
                     26: #define        T_UNKNOWN       0
                     27: #define        T_NODETAIL      1
                     28: #define        T_DETAIL        2
                     29: #define        T_DONE          3
                     30: 
                     31: /* Other manifest constants. */
                     32: #define        TRUE    (0 == 0)
                     33: #define        FALSE   (0 != 0)
                     34: #define        EOS     0200
                     35: #define        NUL     '\0'
                     36: #define        NBACKUP 2048
                     37: #define        NMACRONAME      48
                     38: #define        NTOKBUF 100
                     39: #define        READ    0       /* open argument for reading */
                     40: 
                     41: /* Macros. */
                     42: #define        Streq(a,b)      (strcmp(a,b) == 0)
                     43: 
                     44: /* Structures. */
                     45: typedef        struct token {
                     46:        struct token *next;
                     47:        char *value;
                     48: } TOKEN;
                     49: 
                     50: typedef struct macro {
                     51:        struct macro *next;
                     52:        char *value;
                     53:        char *name;
                     54:        int protected;
                     55: } MACRO;
                     56: 
                     57: typedef struct sym {
                     58:        struct sym *next;
                     59:        char *action;
                     60:        char *name;
                     61:        char *filename;
                     62:        struct dep *deplist;
                     63:        int type;
                     64:        time_t moddate;
                     65: } SYM;
                     66: 
                     67: typedef struct dep {
                     68:        struct dep *next;
                     69:        char *action;
                     70:        struct sym *symbol;
                     71: } DEP;
                     72: 
                     73: /* Library functions. */
                     74: extern char *getenv();
                     75: extern char *strcat();
                     76: extern char *strcpy();
                     77: extern char *strncpy();
                     78: extern char *malloc();
                     79: extern char *realloc();
                     80: extern char *index();
                     81: extern char *rindex();
                     82: 
                     83: /* System dependencies. */
                     84: #if    MSDOS || GEMDOS
                     85: #define ACTIONFILE     "mactions"
                     86: #define MACROFILE      "mmacros"
                     87: #define TDELIM         " \t\n=;"
                     88: #endif
                     89: 
                     90: #if    COHERENT
                     91: #define ACTIONFILE     "makeactions"
                     92: #define MACROFILE      "makemacros"
                     93: #define TDELIM         " \t\n=:;"
                     94: #endif
                     95: 
                     96: /* end of make.h */

unix.superglobalmegacorp.com

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