xref: /original-bsd/old/make/ident.c (revision e21485a6)
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 */
102