1: /* char *xxxvers = "\n@(#) MAKE. VERSION 2.61 13 AUGUST 1980\n" ; */ 2: /* static char *sccsid = "@(#)ident.c 4.1 (Berkeley) 81/02/28"; */ 3: 4: /* 5: 2.1 4/24/76 Base version 6: 7: 2.2 4/26/76 Error found by SRB in overriding pattern rules; 8: corrected gram.y 9: 10: 2.3 4/27/76 Further correction for overriding pattern rules; 11: corrected doname.c 12: 13: 2.4 Removed .CLEAR name, added .IGNORE. 14: A .SUFFIXES rule without dependents clears the list 15: 16: 2.5 Stripped output 17: 18: 2.6 Changed doshell to accomodate new shell. 19: 20: 2.7 Following SRB's sugestion, added ${...} as 21: alternate macro name 22: 23: 2.8 Defined macros AS and DTGEN in files.c. 24: 25: 2.9 Put in a fix to prevent removal of files 26: upon interrupt in a :: rule. 27: 28: 2.10 Fixed bugs involving messages for :: 29: and closing standard input 30: 31: 2.11 Changed time test from <= to < 32: (equal times are considered in sync) 33: 34: 2.12 Installed -t flag (touch and update time of 35: files rather than issue commands) 36: Fixed bug in dosys 37: 38: 2.13 Fixed lex.c to allow sharps (#) in commands 39: 40: 2.14 Added .DEFAULT rule 41: 42: 2.15 Changed to <lS> I/O System (stdio.h) 43: 44: 2.16 Removed references to double floats and macro HAVELONGS; 45: committed to use of long ints for times. 46: 2.17 Corrected metacharacter list in dosys.c. 47: 2.18 Miscellaneous fixes 48: 2.19 Updated files.c to use include file stat.h 49: 2.20 Added -q flag for Mike Lesk 50: 2.21 Added AWK rules and .w suffix to files.c 51: 2.22 Added colon to the list of metacharacters 52: 2.23 Macro substitutions on dependency lines. 53: Redid argument and macro setting. 54: Close files before exec'ing. 55: Print > at beginning of command lines. 56: No printing of commands beginnng with @. 57: 2.24 Parametrized propt sequence in doname.c (4/1/77) 58: 2.25 Added $? facility 59: 2.26 Fixed bug in macro expansion 60: 2.27 Repaired interrupt handling 61: 2.28 Repaired bug in -n 62: 2.29 Repaired bug in file closing and $? string creation 63: 2.30 Repaired bug in grammar about command lines 64: 2.31 Added -k flag, modified doname.c and defs 65: 2.32 Made "keepgoing" the default, added -S flag, 66: changed handling of funny characters internally 67: 2.3 Small fixups to interrupt and quit handling. 68: Changed default back to -k. 69: 2.34 Added .PRECIOUS rule for interrupts 70: 2.35 Added references to include files (due to TLL) 71: 2.36 Fixed bug in lex.c so = permitted in rules on :; line 72: 2.37 Miscellaneous code cleanups 73: 2.38 Sleep one second after each touch in -t mode 74: 2.39 Extended string[] declaration in doname.c 75: 2.40 Permit recursive macro references 76: 2.41 Separated YYLMAX into INMAX and OUTMAX macros, specifying longest 77: input and output lines respectively. 78: 2.42 Fixed bug involving :: lines without dependents 79: 2.43 Main name is first name that contains a slash or doesn't 80: begin with a dot 81: 2.44 Fixed bug involving $$ on command line 82: 2.45 Changed files.c to put .f before .e, .r and to use f77 instead of fc. 83: 2.46 Changed dosys.c to eliminate copying and to call execvp. 84: 2.47 Changed files.c to add ".out" suffix and rules. 85: 2.48 Changed misc.c to permit tabs preceding = in macro definition 86: 2.49 Added reference to <ctyp.h>. Removed -lS references from files.c 87: 2.50 General cleanup to reduce lint messages. (changes in declarations 88: and in uses of variables) 89: 2.51 Further cleanup making use of new Yacc features. 90: 2.52 91: 2.53 Changed handling of "touch" 92: 2.54 Fixed bug involving comments in lexical analyzer. 93: 2.55 Ignore commands that begin with a # are comments. 94: 2.56 Added = to list of META characters (to permit shell commands) 95: 2.57 Changed lookarch and getobj to fix bugs. 96: 2.58 Fixed interrupt handling. 97: 2.59 Changed references to sprintf to accomodate new function definition 98: Also fixed extern declarations. 99: 2.60 Limited the number of open directories. 100: 2.61 Added code to handle archives with ascii headers. 101: */