home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Trees / V7 / usr / src / cmd / make / defs next >
Encoding:
Text File  |  1979-01-10  |  2.1 KB  |  129 lines

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