xref: /dragonfly/contrib/bmake/ChangeLog (revision 939d500b)
12021-02-06  Simon J Gerraty  <sjg@beast.crufty.net>
2
3	* VERSION (_MAKE_VERSION): 20210206
4	Merge with NetBSD make, pick up
5	o unit-tests: use private TMPDIR to avoid errors from other users
6
72021-02-05  Simon J Gerraty  <sjg@beast.crufty.net>
8
9	* VERSION (_MAKE_VERSION): 20210205
10	Merge with NetBSD make, pick up
11	o avoid strdup in mkTempFile
12	o always use vfork
13	o rename context and ctxt to scope
14	o rename some VAR constants to SCOPE
15	o Var_ functions, move the scope to the front
16	o use shortcut functions Global_Set and Global_Append
17	o add shortcut Global_Delete for deleting a global variable
18	o rename Var_Delete to Var_DeleteExpand, Var_DeleteVar to Var_Delete
19	o compat.c: when exiting due to an error, print graph information
20	o enum.c: remove overengineered Enum_ValueToString
21	o make.c: remove unused INTERNAL flag
22	remove unused return type of MakeBuildParent
23	o parse.c: replace parse error "Need an operator" with better message
24	o var.c: improve documentation about variable scopes
25	rename Var_ValueDirect to GNode_ValueDirect
26	rename old Var_SetWithFlags to Var_SetExpandWithFlags
27	merge SetVar into Var_SetWithFlags
28	split Var_Exists into plain Var_Exists and Var_ExistsExpand
29	split Var_Append into Var_Append and Var_AppendExpand
30	replace enum bit-set with bit-field
31	o unit-tests/var-op-shell: use kill rather than kill -14
32	which broke on darwin with recent update.
33
342021-02-01  Simon J Gerraty  <sjg@beast.crufty.net>
35
36	* configure.in: check for sig_atomic_t and define it as 'int'
37	if missing.
38
39	* VERSION (_MAKE_VERSION): 20210201
40	Merge with NetBSD make, pick up
41	o use sig_atomic_t for caught_sigchld
42
432021-01-30  Simon J Gerraty  <sjg@beast.crufty.net>
44
45	* VERSION (_MAKE_VERSION): 20210130
46	Merge with NetBSD make, pick up
47	o more unit tests
48	o convert SearchPath to struct
49	o split Buf_Destroy into Buf_Done and Buf_DoneData
50	o for.c: split For_Eval into separate functions
51	rename struct For to struct ForLoop
52	o job.c: do not create empty shell files in jobs mode
53	rename JobOpenTmpFile to JobWriteShellCommands
54	reduce unnecessary calls to waitpid
55	o parse.c: in -dp mode, print stack trace with each diagnostic
56
572021-01-23  Simon J Gerraty  <sjg@beast.crufty.net>
58
59	* VERSION (_MAKE_VERSION): 20210123
60	Merge with NetBSD make, pick up
61	o rename Dir_Expand to SearchPath_Expand
62	o rename Dir_AddDir, reorder parameters of SearchPath_ToFlags
63	o cond.c: fix debug output for comparison operators in conditionals
64	o dir.c: split Dir_FindFile into separate functions
65
662021-01-20  Simon J Gerraty  <sjg@beast.crufty.net>
67
68	* VERSION (_MAKE_VERSION): 20210120
69	Merge with NetBSD make, pick up
70	o fix some more lint nits
71	o refine some unit tests for portability
72	o cond.c: rework parsing
73
742021-01-10  Simon J Gerraty  <sjg@beast.crufty.net>
75
76	* VERSION (_MAKE_VERSION): 20210110
77	Merge with NetBSD make, pick up
78	o fix lint warnings
79	o consistently use boolean expressions in conditions
80
812021-01-08  Simon J Gerraty  <sjg@beast.crufty.net>
82
83	* VERSION (_MAKE_VERSION): 20210108
84	Merge with NetBSD make, pick up
85	o job.c: back to polling token pipe if we want a token
86	o main.c: always print 'stopped in' on first call
87	The execption is if we bail because of an abort token
88	in which case just exit 6.
89
902021-01-01  Simon J Gerraty  <sjg@beast.crufty.net>
91
92	* VERSION (_MAKE_VERSION): 20210101
93	Merge with NetBSD make, pick up
94	o Happy New Year!
95	o rename CmdOpts.lint to strict
96	o exit 2 on technical errors
97	o replace pointers in controlling conditions with booleans
98	o replace global preserveUndefined with VARE_KEEP_UNDEF
99	o compat.c: re-export variables from the actual make process
100	if using vfork this is the effect anyway
101	o cond.c: clean up VarParseResult constants
102	o for.c: fix undefined behavior in SubstVarLong
103	make control flow in SubstVarLong of .for loops more obvious
104	clean up SubstVarShort in .for loops
105	extract ForSubstBody from ForReadMore
106	clean up ForReadMore
107	simplify termination condition for .for loop
108	add error handling for .for loop items
109	job.c: re-export variables from the actual make process
110	parse.c: remove mmap for loading files, only allow files < 1 GiB
111	fix edge case in := with undefined in variable name
112	skip variable expansion in ParseDependencyTargetWord
113	var.c: split ExportVar into separate functions
114	clean up code in extracted ExportVar functions
115	remove dead code from ApplyModifiersIndirect
116	split Var_Subst into easily understandable functions
117	clean up VarParseResult constants
118
1192020-12-25  Simon J Gerraty  <sjg@beast.crufty.net>
120
121	* main.c: use .MAKE.DEPENDFILE as set by makefiles
122
1232020-12-22  Simon J Gerraty  <sjg@beast.crufty.net>
124
125	* VERSION (_MAKE_VERSION): 20201222
126	Merge with NetBSD make, pick up
127	o make DEBUG macro return boolean
128	o parse.c: fix assertion failure for files without trailing newline
129	o var.c: allow .undef to undefine multiple variables at once
130	remove excess newline from parse errors
131
1322020-12-21  Simon J Gerraty  <sjg@beast.crufty.net>
133
134	* VERSION (_MAKE_VERSION): 20201221
135	Merge with NetBSD make, pick up
136	o some unit-test updates
137
1382020-12-20  Simon J Gerraty  <sjg@beast.crufty.net>
139
140	* VERSION (_MAKE_VERSION): 20201220
141	Merge with NetBSD make, pick up
142	o more unit tests
143	o return FStr from Var_Parse and Var_Value
144	o spell nonexistent consistently
145	o add str_basename to reduce duplicate code
146	o compat.c: fix .ERROR_TARGET in compat -k mode
147	extract InitSignals from Compat_Run
148	extract UseShell from Compat_RunCommand
149	o cond.c: error out if an '.endif' or '.else' contain extraneous text
150	o for.c: rename ForIterate to ForReadMore
151	o hash.c: clean up hash function for HashTable
152	o lst.c: rename Vector.priv_cap to cap
153	o main.c: remove constant parameter from MakeMode
154	o make.c: use symbolic time for 0 in Make_Recheck
155	extract MakeChildren from MakeStartJobs
156	o parse.c: clean up memory handling in VarAssign_EvalShell, Parse_DoVar
157	fix error message for .info/.warning/.error without argument
158	extract Var_Undef from ParseDirective
159	extract ParseSkippedBranches, ParseForLoop from ParseReadLine
160	rename mode constants for ParseGetLine to be more expressive
161	reduce debugging details in Parse_SetInput
162	fix line numbers in .for loops
163	split ParseGetLine into separate functions
164	fix garbled output for failed shell command
165	var.c: remove redundant assignment in ApplyModifier_SysV
166	error out on unknown variable modifiers at parse time
167	remove wrong error message for indirect modifier in lint mode
168	extract ApplySingleModifier from ApplyModifiers
169	use FStr for memory management in Var_SetWithFlags
170	extract SetVar from Var_SetWithFlags
171	use FStr in VarNew
172	extract string functions from ApplyModifier_To
173	error out if .undef has not exactly 1 argument
174	extract Var_DeleteVar from Var_Delete
175	extract Var_Undef from ParseDirective
176	clean up memory management for expanding variable expressions
177
1782020-12-12  Simon J Gerraty  <sjg@beast.crufty.net>
179
180	* avoid %zu
181
182	* lst.c: avoid anonymous union
183
184	* VERSION (_MAKE_VERSION): 20201212
185	Merge with NetBSD make, pick up
186	o more unit tests
187	o inline Targ_Ignore and Targ_Silent
188	o split JobFlags into separate fields
189	o remove const from function parameters (left overs from refactoring)
190	o eliminate boolean argument of Var_Export
191	o make API of Buf_Init simpler
192	o rename ParseRunOptions to ParseCommandFlags
193	o replace *line with line[0]
194	o compat.c: fix wrong exit status for multiple failed main targets
195	refactor Compat_Run to show the error condition more clearly
196	don't make .END if the main targets already failed (-k mode)
197	fix exit status in -k mode if a dependency fails
198	o for.c: clean up Buf_AddEscaped in .for loops
199	o job.c: extract ShellWriter_ErrOn from JobPrintCommand
200	make Job_Touch simpler
201	refactor JobFinish
202	rename Shell.exitFlag to errFlag
203	move Job.xtraced to ShellWriter
204	make printing of shell commands independent from the job
205	rename shell flags in struct Shell
206	extract JobOpenTmpFile from JobStart
207	rename RunFlags to CommandFlags
208	split various Job.* into separate fields
209	rename commandShell to shell
210	extract InitShellNameAndPath from Shell_Init
211	replace signal handling macros with local functions
212	replace macro MESSAGE with local function
213	parse.c: error out on null bytes in makefiles
214	error out on misspelled directives
215	rename IFile.nextbuf to readMore
216	fix undefined behavior in ParseEOF
217	str.c: remove redundant call to strlen in Str_Words
218	var.c: error out on misspelled .unexport-env
219	error out on misspelled .export directives
220	extract ExportVars from Var_Export
221	extract ExportVarsExpand from Var_Export
222	eliminate boolean argument of Var_Export
223	fix undefined behavior when exporting ${:U }
224	rename Var_ExportVars to Var_ReexportVars
225	rename Var_Export1 to ExportVar
226
2272020-12-06  Simon J Gerraty  <sjg@beast.crufty.net>
228
229	* VERSION (_MAKE_VERSION): 20201206
230	Merge with NetBSD make, pick up
231	o more unit tests
232	o inline macros for debug logging
233	o use consistent variable names for list nodes
234	o define constants for enum zero-values
235	o dir.c: use fixed format for debug output of the directory cache
236	remove Dir_InitDir
237	o lst.c: inline Lst_Enqueue, Vector_Done
238	o meta.c: remove unused parameter from meta_needed
239	o parse.c: rename parse functions
240	o suff.c: extract ExpandChildrenRegular from ExpandChildren
241	o targ.c: don't concatenate identifiers in Targ_PrintType
242	o var.c: remove comment decoration
243	extract UnexportVars from Var_UnExport
244	extract GetVarnamesToUnexport from Var_UnExport
245	extract UnexportEnv from Var_UnExport
246	extract UnexportVar from Var_UnExport
247	move CleanEnv to UnexportVars
248	replace pointer comparisons with enum
249	add FStr to var.c to make memory handling simpler
250	use FStr in Var_UnExport
251	move type definitions in var.c to the top
252	extract FreeEnvVar from Var_Parse
253	extract ShuffleStrings from ApplyModifier_Order
254
2552020-11-30  Simon J Gerraty  <sjg@beast.crufty.net>
256
257	* VERSION (_MAKE_VERSION): 20201130
258	Merge with NetBSD make, pick up
259	o add unit tests for META MODE
260	o reduce memory allocation for dirSearchPath, GNode.parents,
261	GNode.children, OpenDirs
262	o reduce pointer indirection for GNode.cohorts and
263	GNode.implicitParents
264	o remove pointer indirection from GNode.commands
265	o inline Lst_ForEachUntil in meta mode
266	o dir.c: fix memory leak for lstat cache in -DCLEANUP mode
267	clean up memory management for CachedDirs
268	fix the reference count of dotLast going negative
269	add debug logging for OpenDirs_Done
270	extract CacheNewDir from Dir_AddDir
271	add debug logging for reference counting of CachedDir
272	rename some Dir functions to SearchPath
273	o job.c: rename some global variables
274	o main.c: reduce memory allocation in ReadBuiltinRules
275	reduce memory allocation in CmdOpts.create, CmdOpts.variables,
276	CmdOpts.makefiles
277	Add .MAKE.UID and .MAKE.GID
278	o make.c: reduce memory allocation for/in toBeMade,
279	Make_ProcessWait, Make_ExpandUse
280	o meta.c: reduce memory allocation in meta_oodate
281	o parse.c: reduce memory allocations for parsing dependencies and
282	targets
283	o suff.c: reduce memory allocation in suffix handling
284
2852020-11-24  Simon J Gerraty  <sjg@beast.crufty.net>
286
287	* VERSION (_MAKE_VERSION): 20201124
288	Merge with NetBSD make, pick up
289	o .MAKE.{UID,GID} represent uid and gid running make.
290	o fix error handling for .BEGIN and .END dependency in -k mode
291	o fix missing "Stop." after failed .END node in -k mode
292	o use properly typed comparisons in boolean contexts
293	o replace a few HashTable_CreateEntry with HashTable_Set
294	o add HashSet type
295	o compat.c: split Compat_Make into smaller functions
296	extract DebugFailedTarget from Compat_RunCommand
297	o dir.c: refactor Dir_UpdateMTime
298	migrate CachedDir.files from HashTable to HashSet
299	o make.c: add high-level API for GNode.made
300
3012020-11-22  Simon J Gerraty  <sjg@beast.crufty.net>
302
303	* VERSION (_MAKE_VERSION): 20201122
304	Merge with NetBSD make, pick up
305	o rename GNode.context to vars
306	o suff.c: cleanup and refactor
307	rename some functions and vars to better reflect usage
308	add high-level API for CandidateSearcher
309	o targ.c: add more debug logging for suffix handling
310	o more unit tests
311	o add debug logging for setting and resetting the main target
312
3132020-11-17  Simon J Gerraty  <sjg@beast.crufty.net>
314
315	* VERSION (_MAKE_VERSION): 20201117
316	Merge with NetBSD make, pick up
317	o fix some unit-tests when .SHELL is dash
318	o rename Targ_NewGN to GNode_New
319	o make some GNode functions const
320	o main.c: call Targ_Init before Var_Init
321	cleanup PrintOnError, getTmpdir and ParseBoolean
322	o var.c: fix error message of failed :!cmd! modifier
323
3242020-11-14  Simon J Gerraty  <sjg@beast.crufty.net>
325
326	* VERSION (_MAKE_VERSION): 20201114
327	Merge with NetBSD make, pick up
328	o replace a few HashTable_CreateEntry with HashTable_Set
329	o clean up cached_stats
330	o rename DEFAULT to defaultNode
331	o remove redundant struct make_stat
332	o cond.c: in lint mode, check for ".else <cond>"
333	use bitset for IfState
334	replace large switch with if-else in Cond_EvalLine
335	o job.c: clean up JobExec, JobStart, JobDoOutput
336	use stderr for error message about failed touch
337	clean up Job_Touch
338	replace macro DBPRINTF with JobPrintln
339	rename JobState to JobStatus
340	main.c: switch cache for realpath from GNode to HashTable
341	clean up Fatal
342	clean up InitDefSysIncPath
343	use progname instead of hard-coded 'make' in warning
344	rename Main_SetVarObjdir to SetVarObjdir
345	make.1: document the -S option
346	make.c: fix debug output for GNode details
347	use symbolic names in debug output of GNodes
348
3492020-11-12  Simon J Gerraty  <sjg@beast.crufty.net>
350
351	* configure.in: fix --with-force-machine-arch
352
353	* VERSION (_MAKE_VERSION): 20201112
354	Merge with NetBSD make, pick up
355	o allow env var MAKE_OBJDIR_CHECK_WRITABLE=no to skip writable
356	checks in InitObjdir.  Explicit .OBJDIR target always allows
357	read-only directory.
358	o cond.c: clean up Cond_EvalLine
359
3602020-11-11  Simon J Gerraty  <sjg@beast.crufty.net>
361
362	* VERSION (_MAKE_VERSION): 20201111
363	Merge with NetBSD make, pick up
364	o more unit-tests
365	o style cleanup
366	remove redundant parentheses from sizeof operator
367	replace character literal 0 with '\0'.
368	replace pointer literal 0 with NULL.
369	remove redundant parentheses.
370	replace (expr & mask) == 0 with !(expr & mask).
371	use strict typing in conditions of the form !var
372	o rename Make_OODate to GNode_IsOODate
373	o rename Make_TimeStamp to GNode_UpdateYoungestChild
374	o rename Var_Set_with_flags to Var_SetWithFlags
375	o rename dieQuietly to shouldDieQuietly
376	o buf.c: make API of Buf_Init simpler
377	o compat.c: clean up Compat_Make, Compat_RunCommand,
378	CompatDeleteTarget and CompatInterrupt
379	o cond.c: in lint mode, only allow '&&' and '||', not '&' and '|'
380	clean up CondParser_Comparison
381	o main.c: rename getBoolean and s2Boolean
382	rename MAKEFILE_PREFERENCE for consistency
383	o parse.c: replace strstr in ParseMaybeSubMake with optimized code
384	o var.c: rename VARE_ASSIGN to VARE_KEEP_DOLLAR
385	replace emptyString with allocated empty string
386	error out on unclosed expressions after the colon
387
3882020-11-01  Simon J Gerraty  <sjg@beast.crufty.net>
389
390	* VERSION (_MAKE_VERSION): 20201101
391	Merge with NetBSD make, pick up
392	o negate NoExecute to GNode_ShouldExecute
393	o job.c: rename JobMatchShell to FindShellByName
394	extract EscapeShellDblQuot from JobPrintCommand
395	extract ParseRunOptions from JobPrintCommand
396	o var.c: extract ApplyModifiersIndirect from ApplyModifiers
397	treat malformed :range, :ts and :[...] as errors
398	add tests for the variable modifiers :[words] and :range
399
4002020-10-31  Simon J Gerraty  <sjg@beast.crufty.net>
401
402	* VERSION (_MAKE_VERSION): 20201031
403	Merge with NetBSD make, pick up
404	o format #include directives consistently
405	o do not look up local variables like .TARGET anywhere else
406	o main.c: Main_SetObjdir is first called for curdir which may be
407	readonly
408	reduce the scope where recursive expressions are detected
409	remove redundant :tl from getBoolean
410	clean up mkTempFile
411	o meta.c: simplify memory allocation in meta_create and meta_oodate
412	o parse.c: extract loadedfile_mmap from loadfile
413	o trace.c: document possible undefined behavior with .CURDIR
414	o var.c: make parsing of the :gmtime and :localtime modifiers stricter
415	rename ismeta to is_shell_metachar
416	remove debug logging for the :Q variable modifier
417	rename VarIsDynamic to VarnameIsDynamic
418	use consistent parameter order in varname parsing functions
419	extract ParseVarnameLong from Var_Parse
420	extract ParseVarnameShort from Var_Parse
421	fix type of ParseModifierPart parameter delim
422	extract IsEscapedModifierPart from ParseModifierPart
423	clean up ModifyWords
424	add test for combining the :@ and :? variable modifiers
425
4262020-10-30  Simon J Gerraty  <sjg@beast.crufty.net>
427
428	* VERSION (_MAKE_VERSION): 20201030
429	Merge with NetBSD make, pick up
430	o change char * to void * in Var_Value
431	o make iterating over HashTable simpler
432	o rename VAR_CMD to VAR_CMDLINE
433	o cond.c: clean up is_separator
434	fix parse error in string literal in conditional
435	o main.c: do not use objdir that is not writable
436	in lint mode, exit with error status on errors
437	o  parse.c: clean up StrContainsWord
438	fix out-of-bounds pointer in ParseTrackInput
439	o var.c: rename Str_SYSVMatch and its parameters
440	remove unsatisfiable conditions in Var_Set_with_flags
441	document where the variable name is expanded
442	fix documentation for VARP_SUB_ONE
443	rename VAR_EXPORTED_YES to VAR_EXPORTED_SOME
444	document VAR_READONLY
445	prevent appending to read-only variables
446	extract MayExport from Var_Export1
447	remove redundant evaluations in VarFind
448	replace VarFindFlags with a simple Boolean
449	rename FIND_CMD to FIND_CMDLINE, to match VAR_CMDLINE
450
4512020-10-28  Simon J Gerraty  <sjg@beast.crufty.net>
452
453	* VERSION (_MAKE_VERSION): 20201028
454	Merge with NetBSD make, pick up
455	o rename defIncPath to defSysIncPath
456	o initialize all CmdOpts fields
457	o lst.c: inline Vector_Get
458	o main.c: refactor main extract
459	InitMaxJobs,InitObjdir,InitVarMake,InitRandom,
460	ReadMakefiles,CleanUp,InitVpath,ReadBuiltinRules,
461	InitDefIncPath,CmdOpts_Init,UnlimitFiles
462	o parse.c: merge curFile into includes
463	rename predecessor to order_pred
464	sort ParseSpecial alphabetically
465	remove unused, undocumented .NOEXPORT
466	rename ParseSpecial enum values consistently
467	rename some fields of struct IFile
468
4692020-10-26  Simon J Gerraty  <sjg@beast.crufty.net>
470
471	* VERSION (_MAKE_VERSION): 20201026
472	Merge with NetBSD make, pick up
473	o group the command line options and arguments into a struct
474	o rename GNode.cmgn to youngestChild
475	o rename hash functions to identify the type name
476	o negate OP_NOP and rename it to GNode_IsTarget
477	o add GNode_Path to access the path of a GNode
478	o remove macros MIN and MAX
479	o remove unused Lst_Find and Lst_FindFrom
480	o arch.c: and make Arch_FindLib simpler
481	clean up code layout
482	make Arch_ParseArchive simpler
483	o cond.c: inline CondFindStrMatch into FuncMake
484	o dir.c: replace Dir_CopyDir with Dir_CopyDirSearchPath
485	omit trailing space in debug output for expanding file patterns
486	refactor DirMatchFiles
487	document that the SearchPath of Dir_FindFile may be NULL
488	remove UNCONST from Dir_Expand
489	inline DirFindName
490	o for.c: clean up code for handling .for loops
491	o hash.c: print hash in debug log with fixed width
492	clean up hash table functions
493	reduce amount of string hashing
494	o job.c: refactor JobDeleteTarget
495	use proper enum constants for aborting
496	convert result of JobStart from macros to enum
497	convert abort reason macros to enum
498	rework Job_CheckCommands to reduce indentation
499	rename Shell fields
500	add field names in declaration of DEFSHELL_CUSTOM
501	convert JobState and JobFlags to enum types
502	move handling of the "..." command to JobPrintCommands
503	o lst.c: clean up
504	refactor LstNodeNew
505	remove Lst_Open, Lst_Next, Lst_Close
506	remove code for circular lists from Lst_Next
507	o main.c: do not attempt to read .MAKE.DEPENFILE if set to
508	/dev/null or anything starting with "no"
509	convert macros for debug flags into enum
510	o make.c: inline Lst_Copy in Make_ExpandUse
511	o meta.c: inline Lst_Find in meta_oodate
512	make Lst_RemoveIf simpler in meta_oodate
513	o parse.c: convert error level for Parse_Error to an enum
514	o suff.c: properly terminate debug output with newline
515	add more details to DEBUG_SRC log
516	replace Dir_CopyDir with Dir_CopyDirSearchPath
517	don't modify GNode name while rebuilding the suffix graph
518	o var.c: reduce duplicate code in VarFind
519
5202020-10-22  Simon J Gerraty  <sjg@beast.crufty.net>
521
522	* VERSION (_MAKE_VERSION): 20201022
523	Merge with NetBSD make, pick up
524	o more refactoring and simplification to reduce code size
525	o var.c: extract CanonicalVarname from VarFind
526	o make.c: extract UpdateImplicitParentsVars from Make_Update
527	o main.c: extract PrintVar from doPrintVars
528	extract HandlePWD from main
529	o lst.c: inline simple Lst getters
530	remove unused Lst_ForEach
531	o job.c: move struct Shell from job.h to job.c
532	o more unit tests
533
5342020-10-19  Simon J Gerraty  <sjg@beast.crufty.net>
535
536	* configure.in: remove inappropriate use of AC_INCLUDES_DEFAULT
537
5382020-10-18  Simon J Gerraty  <sjg@beast.crufty.net>
539
540	* VERSION (_MAKE_VERSION): 20201018
541	Merge with NetBSD make, pick up
542	o remove USE_IOVEC
543	o rename some Hash_* apis to Hash*
544	o replace execError with execDie
545	o rename Lst_Init to Lst_New
546	o add tags to enum types
547	o rename Stack to Vector
548	o parse.c: more refactoring
549	o unit-tests: make some tests use line buffered stdout
550	o unit-tests/Makefile: in meta mode do not make all tests depend on
551	Makefile, it isn't necessary.
552
5532020-10-10  Simon J Gerraty  <sjg@beast.crufty.net>
554
555	* main.c: check for CTL_HW being defined.
556	* unit-tests/Makefile: ensure export tests output are POSIX compliant
557	disable opt-debug-jobs test until it works on ubuntu
558
559	* VERSION (_MAKE_VERSION): 20201010
560	Merge with NetBSD make, pick up
561	o dir.c: remove pathname limit for Dir_FindHereOrAbove
562	o hash.c: replace strcpy with memcpy in Hash_CreateEntry
563	o main.c: extract init_machine and init_machine_arch from main
564	allow to disable debug logging options
565	o parse.c: enable format string truncation warnings
566	extract parsing of sources from ParseDoDependency
567	split ParseDoSrc into smaller functions
568	hide implementation details from Parse_DoVar
569	clean up parsing of variable assignments
570	split Parse_DoVar into manageable pieces
571	don't modify the given line during Parse_DoVar
572	fix out-of-bounds memory access in Parse_DoVar
573	fix parsing of the :sh assignment modifier
574	o var.c: rework memory allocation for the name of variables
575	extract ApplyModifier_Literal into separate function
576	in lint mode, reject modifiers without delimiter
577	do not export variable names starting with '-'
578	o fix double-free bug in -DCLEANUP mode
579	o more cleanup to enable higher warnings level
580	o more unit tests
581
5822020-10-02  Simon J Gerraty  <sjg@beast.crufty.net>
583
584	* VERSION (_MAKE_VERSION): 20201002
585	Merge with NetBSD make, pick up
586	o dir.c: use hash table for looking up open directories by name
587	o main.c: clean up option handling
588	o parse.c: add missing const for Parse_AddIncludeDir
589	o var.c: ApplyModifier_To, update pp in each branch
590	o remove redundant function prototypes
591	o more unit tests
592
5932020-10-01  Simon J Gerraty  <sjg@beast.crufty.net>
594
595	* VERSION (_MAKE_VERSION): 20201001
596	Merge with NetBSD make, pick up
597	o compat.c: comment about "..."
598
5992020-09-30  Simon J Gerraty  <sjg@beast.crufty.net>
600
601	* VERSION (_MAKE_VERSION): 20200930
602	Merge with NetBSD make, pick up
603	o job.c: split Job.jobPipe into 2 separate fields
604	replace Lst_Open with direct iteration
605	o lst.c: remove redundant assertions
606	o targ.c: replace Lst_Open with direct iteration
607	o var.c: fix bug in evaluation of indirect variable modifiers
608	extract ApplyModifier_Quote into separate function
609	o make debug logging simpler
610
6112020-09-27  Simon J Gerraty  <sjg@beast.crufty.net>
612
613	* VERSION (_MAKE_VERSION): 20200927
614	Merge with NetBSD make, pick up
615	o parse.c: ensure parse errors result in 'stopped in' message.
616	o compat.c: make parameter of Compat_RunCommand const
617	o main.c: extract InitVarTarget from main
618	o parse.c: rename ParseFinishLine to FinishDependencyGroup
619	refactor ParseDoDependency
620	o var.c: Var_Subst no longer returns string result
621	rename Var_ParsePP back to Var_Parse
622	in lint mode, improve error handling for undefined variables
623	extract ParseVarname from Var_Parse
624	o rename Lst_ForEach to Lst_ForEachUntil
625	o inline Lst_ForEachUntil in several cases
626	o clean up API for finding and creating GNodes
627	o fix assertion failure in -j mode with .END node
628	o inline and remove LstNode_Prev and LstNode_Next
629	o use fine-grained type names for lists and their nodes
630	o more unit tests
631
6322020-09-11  Simon J Gerraty  <sjg@beast.crufty.net>
633
634	* VERSION (_MAKE_VERSION): 20200911
635	Merge with NetBSD make, pick up
636	o cond.c: split EvalComparison into smaller functions
637	reorder parameters of condition parsing functions
638	reduce code size in CondParser_Eval
639	rename CondGetString to CondParser_String
640	add CondLexer_SkipWhitespace
641	group the condition parsing state into a struct
642	in CondGetString, replace repeated Buf_Add with Buf_AddStr
643	o migrate Var_Parse to Var_ParsePP
644	o add wrappers around ctype.h functions
645	o lst.c: use a stack instead of a list for the nested include path
646	o more unit tests
647
6482020-09-04  Simon J Gerraty  <sjg@beast.crufty.net>
649
650	* make-bootstrap.sh.in: adjust object list
651
6522020-09-02  Simon J Gerraty  <sjg@beast.crufty.net>
653
654	* VERSION (_MAKE_VERSION): 20200902
655	Merge with NetBSD make, pick up
656	o use make_stat to ensure no confusion over valid fields
657	returned by cached_stat
658	o var.c: make VarQuote const-correct
659	o add unit tests for .for
660
6612020-09-01  Simon J Gerraty  <sjg@beast.crufty.net>
662
663	* VERSION (_MAKE_VERSION): 20200901
664	Merge with NetBSD make, pick up
665	o rename Hash_Table fields
666	o make data types in Dir_HasWildcards more precise
667
6682020-08-31  Simon J Gerraty  <sjg@beast.crufty.net>
669
670	* VERSION (_MAKE_VERSION): 20200831
671	Merge with NetBSD make, pick up
672	o suff.c: fix unbalanced Lst_Open/Lst_Close in SuffFindCmds
673	o lst.c: Lst_Open renable assert that list isn't open
674	o unit test for .TARGET dependent flags
675	o var.c: fix aliasing bug in VarUniq
676	o more unit tests for :u
677
6782020-08-30  Simon J Gerraty  <sjg@beast.crufty.net>
679
680	* VERSION (_MAKE_VERSION): 20200830
681	Merge with NetBSD make, pick up
682	o allow for strict type checking for Boolean
683	o Var_Parse never returns NULL
684	o Var_Subst never returns NULL
685	o Lst_Find now takes boolean match function
686	o rename Lst_Memeber to Lst_FindDatum
687	o rename LstNode functions to match their type
688	o rename GNode.iParents to implicitParents
689	o fix assertion failure for .SUFFIXES in archives
690	o compat.c: clean up documentation for CompatInterrupt and Compat_Run
691	remove unreachable code from CompatRunCommand
692	o main.c: simplify getBoolean
693	o stc.c: replace brk_string with simpler Str_Words
694	o suff.c: add debug macros
695
6962020-08-28  Simon J Gerraty  <sjg@beast.crufty.net>
697
698	* VERSION (_MAKE_VERSION): 20200828
699	Merge with NetBSD make, pick up
700	o lst.c: inline LstIsValid and LstNodeIsValid
701	o remove trailing S from Lst function names after migration complete
702	o more comment cleanup/clarification
703	o suff.c: clean up suffix handling
704	o more unit tests
705
7062020-08-26  Simon J Gerraty  <sjg@beast.crufty.net>
707
708	* VERSION (_MAKE_VERSION): 20200826
709	Merge with NetBSD make, pick up
710	o enum.c: distinguish between bitsets containing flags and
711	ordinary enums
712	o var.c: fix error message for ::!= modifier with shell error
713	o fix bugs in -DCLEANUP mode
714
7152020-08-24  Simon J Gerraty  <sjg@beast.crufty.net>
716
717	* VERSION (_MAKE_VERSION): 20200824
718	Merge with NetBSD make, pick up
719	o in debug mode, print GNode details in symbols
720
7212020-08-23  Simon J Gerraty  <sjg@beast.crufty.net>
722
723	* VERSION (_MAKE_VERSION): 20200823
724	Merge with NetBSD make, pick up
725	o lst.c: more asserts,
726	make args to Lst_Find match others.
727	o var.c: pass flags to VarAdd
728	o arch.c: use Buffer
729	o str.c: brk_string return size_t for nwords
730	o more unit tests
731
7322020-08-22  Simon J Gerraty  <sjg@beast.crufty.net>
733
734	* VERSION (_MAKE_VERSION):
735	Merge with NetBSD make, pick up
736	o var.c: support for read-only variables eg .SHELL
737	being the shell used to run scripts.
738	o lst.c: more simplification
739	o more documentation and style cleanup
740	o more unit tests
741	o ensure unit-test/Makefile is run by TEST_MAKE
742	o reduce duplication of header inclusion
743
7442020-08-21  Simon J Gerraty  <sjg@beast.crufty.net>
745
746	* VERSION (_MAKE_VERSION): 20200821
747	Merge with NetBSD make, pick up
748	o lst.c: revert invalid assertion - but document it
749	o dir.c: split Dir_Init into two functions
750
7512020-08-20  Simon J Gerraty  <sjg@beast.crufty.net>
752
753	* lst.c: needs inttypes.h on Linux
754
755	* VERSION (_MAKE_VERSION): 20200820
756	Merge with NetBSD make, pick up
757	o make.1: clarify some passages
758	o var.c: more cleanup, clarify comments
759	o make_malloc.c: remove unreachable code
760	o cond.c: make CondGetString easier to debug
761	o simplify list usage
762	o unit-tests: more
763
7642020-08-16  Simon J Gerraty  <sjg@beast.crufty.net>
765
766	* VERSION (_MAKE_VERSION): 20200816
767	Merge with NetBSD make, pick up
768	o refactor unit-tests to be more fine grained
769	  not all tests moved yet
770
7712020-08-14  Simon J Gerraty  <sjg@beast.crufty.net>
772
773	* VERSION (_MAKE_VERSION): 20200814
774	Merge with NetBSD make, pick up
775	o more str_concat variants
776	o more enums for flags
777	o var.c: cleanup for higher warnings level
778
7792020-08-10  Simon J Gerraty  <sjg@beast.crufty.net>
780
781	* VERSION (_MAKE_VERSION): 20200810
782	Merge with NetBSD make, pick up
783	o more unit tests
784	o general comment and style cleanup
785
7862020-08-08  Simon J Gerraty  <sjg@beast.crufty.net>
787
788	* VERSION (_MAKE_VERSION): 20200808
789	Merge with NetBSD make, pick up
790	o enum.[ch]: streamline, enums for use in flags and debug output
791	o cond.c: cleanup
792	o var.c: reduce duplicate code for modifiers
793	debug logging for Var_Parse
794	more detailed debug output
795	o more unit tests
796
7972020-08-06  Simon J Gerraty  <sjg@beast.crufty.net>
798
799	* unit-tests/Makefile: -r for recursive and include Makefile.inc
800	so I can run tests in meta mode
801	supress extra noise if in meta mode
802
803	* VERSION (_MAKE_VERSION): 20200806
804	Merge with NetBSD make, pick up
805	o parse.c: remove VARE_WANTRES for LINT
806	we just want to check parsing (for now).
807
8082020-08-05  Simon J Gerraty  <sjg@beast.crufty.net>
809
810	* VERSION (_MAKE_VERSION): 20200805
811	Merge with NetBSD make, pick up
812	o make.1: Rework the description of dependence operators
813
8142020-08-03  Simon J Gerraty  <sjg@beast.crufty.net>
815
816	* VERSION (_MAKE_VERSION): 20200803
817	Merge with NetBSD make, pick up
818	o revert some C99 usage, for max portability
819	o unit-tests/lint
820
8212020-08-02  Simon J Gerraty  <sjg@beast.crufty.net>
822
823	* VERSION (_MAKE_VERSION): 20200802
824	Merge with NetBSD make, pick up
825	o more unit tests
826
8272020-08-01  Simon J Gerraty  <sjg@beast.crufty.net>
828
829	* Remove NetBSD specific plumbing from unit-tests/Makefile
830
831	* VERSION (_MAKE_VERSION): 20200801
832	Merge with NetBSD make, pick up
833	o make Var_Value return const
834	o size_t for buf sizes
835	o optimize some buffer operations - avoid strlen
836
8372020-07-31  Simon J Gerraty  <sjg@beast.crufty.net>
838
839	* VERSION (_MAKE_VERSION): 20200731
840	Merge with NetBSD make, pick up
841	o var.c: fix undefinded behavior for incomplete :t modifier
842	  fixes unit-test/moderrs on Ubuntu
843	o parse.c: When parsing variable assignments other than :=
844	  if DEBUG(LINT) test substition of value, so we get a file and
845	  line number in the resulting error.
846	o dir.c: fix parsing of nested braces in dependency lines
847	  add unit-tests
848
8492020-07-30  Simon J Gerraty  <sjg@beast.crufty.net>
850
851	* VERSION (_MAKE_VERSION): 20200730
852	Merge with NetBSD make, pick up
853	o var.c: minor cleanup
854	o unit-tests: more tests to improve code coverage
855
8562020-07-28  Simon J Gerraty  <sjg@beast.crufty.net>
857
858	* VERSION (_MAKE_VERSION): 20200728
859	Merge with NetBSD make, pick up
860	o var.c: more optimizations
861
8622020-07-26  Simon J Gerraty  <sjg@beast.crufty.net>
863
864	* VERSION (_MAKE_VERSION): 20200726
865	Merge with NetBSD make, pick up
866	o collapse lsd.lib into lst.c - reduce code size and allow inlining
867	o lots of function comment updates
868	o var.c: more optimizations
869	o make return of Var_Parse const
870
8712020-07-20  Simon J Gerraty  <sjg@beast.crufty.net>
872
873	* VERSION (_MAKE_VERSION): 20200720
874	Merge with NetBSD make, pick up
875	o DEBUG_HASH report stats at end and tone down the noise
876	o var.c: each flag type gets its own prefix.
877	move SysV string matching to var.c
878	make ampersand in ${VAR:from=to&} an ordinary character
879	cleanup and simplify implementation of modifiers
880	o make.1: move documentation for assignment modifiers
881
8822020-07-18  Simon J Gerraty  <sjg@beast.crufty.net>
883
884	* VERSION (_MAKE_VERSION): 20200718
885	Merge with NetBSD make, pick up
886	o DEBUG_HASH to see how well the hash tables are working
887
8882020-07-11  Simon J Gerraty  <sjg@beast.crufty.net>
889
890	* bsd.after-import.mk: make sure we update unit-tests/Makefile
891
8922020-07-10  Simon J Gerraty  <sjg@beast.crufty.net>
893
894	* configure.in: use AC_INCLUDES_DEFAULT rather than AC_HEADER_STDC
895
896	* VERSION (_MAKE_VERSION): 20200710
897	Merge with NetBSD make, pick up
898	o filemon/filemon_dev.c: use O_CLOEXEC rather than extra syscall
899	o meta.c: target flagged .META is out-of-date if meta file missing
900
9012020-07-09  Simon J Gerraty  <sjg@beast.crufty.net>
902
903	* VERSION (_MAKE_VERSION): 20200709
904	Merge with NetBSD make, pick up
905	o cond.c: fix for compare_expression when doEval=0
906	o unit-tests/Makefile: rework
907	o filemon/filemon_dev.c: ensure filemon fd is closed on exec.
908
9092020-07-04  Simon J Gerraty  <sjg@beast.crufty.net>
910
911	* VERSION (_MAKE_VERSION): 20200704
912	Merge with NetBSD make, pick up
913	(most of this by rillig@)
914	o lots of style and white-space cleanup
915	o lots more unit tests for variable modifiers
916	o simplified description of some functions
917	o str.c: refactor Str_Match
918	o var.c: debugging output for :@
919	  constify VarModify parameter
920	  fix :hash modifier on 16-bit platforms
921	  remove unnecessary forward declarations
922	  refactor ApplyModifier_SysV to have less indentation
923	  simplify code for :E and :R
924	  clean up code for :H and :T
925	  refactor ApplyModifiers
926
927	* var.c: we need stdint.h on some platforms to get uint32_t
928	* unit-test/Makefile: we need to supress the specific error
929	for RE substitution error in modmisc, since it varies accross
930	different OS.
931
9322020-07-02  Simon J Gerraty  <sjg@beast.crufty.net>
933
934	* VERSION (_MAKE_VERSION): 20200702
935	Merge with NetBSD make, pick up
936	o var.c: more improvements to avoiding unnecessary evaluation
937	use enums for flags
938	o remove flags arg to Var_Set which outside of var.c is always 0
939
9402020-07-01  Simon J Gerraty  <sjg@beast.crufty.net>
941
942	* VERSION (_MAKE_VERSION): 20200701
943	Merge with NetBSD make, pick up
944	o var.c: with change to cond.c; ensure that nested variables
945	within a variable name are expanded.
946	o unit-tests/varmisc.mk: test for nested varname
947
9482020-06-29  Simon J Gerraty  <sjg@beast.crufty.net>
949
950	* VERSION (_MAKE_VERSION): 20200629
951	Merge with NetBSD make, pick up
952	o cond.c: do not eval unnecessary terms of conditionals.
953
9542020-06-25  Simon J Gerraty  <sjg@beast.crufty.net>
955
956	* VERSION (_MAKE_VERSION): 20200625
957	Merge with NetBSD make, pick up
958	o meta.c: report error if lseek in filemon_read fails
959
9602020-06-22  Simon J Gerraty  <sjg@beast.crufty.net>
961
962	* VERSION (_MAKE_VERSION): 20200622
963	Merge with NetBSD make, pick up
964	o dieQuietly: ignore OP_SUBMAKE as too aggressive
965
9662020-06-19  Simon J Gerraty  <sjg@beast.crufty.net>
967
968	* VERSION (_MAKE_VERSION): 20200619
969	Merge with NetBSD make, pick up
970	o str.c: performance improvement for Str_Match for multiple '*'
971	o dieQuietly: supress the failure output from make
972	when failing node is a sub-make or a sibling failed.
973	This cuts down greatly on unhelpful noise at the end of
974	build log.  Disabled by -dj or .MAKE.DIE_QUIETLY=no
975
9762020-06-10  Simon J Gerraty  <sjg@beast.crufty.net>
977
978	* FILES: add LICENSE to appease some packagers.
979	This is an attempt to fairly represent the license on almost
980	200 files, which are almost all BSD-3-Clause
981	The few exceptions being more liberal.
982
983	* VERSION (_MAKE_VERSION): 20200610
984	Merge with NetBSD make, pick up
985	o unit test for :Or
986
9872020-06-06  Simon J Gerraty  <sjg@beast.crufty.net>
988
989	* VERSION (_MAKE_VERSION): 20200606
990	Merge with NetBSD make, pick up
991	o make.1: cleanup
992
993	* Makefile: fix depends for main.o which broke MAKE_VERSION
994
9952020-06-05  Simon J Gerraty  <sjg@beast.crufty.net>
996
997	* VERSION (_MAKE_VERSION): 20200605
998	Merge with NetBSD make, pick up
999	o dir.c: cached_stats - don't confuse stat and lstat results.
1000	o var.c: add :Or for reverse sort.
1001
10022020-05-24  Simon J Gerraty  <sjg@beast.crufty.net>
1003
1004	* configure.in: add AC_PROG_CC_C99 for mipspro compiler
1005	also if --with-filemon= specifies path to filemon.h
1006	set use_filemon=dev
1007	* dirname.c: remove include of namespace.h
1008
10092020-05-17  Simon J Gerraty  <sjg@beast.crufty.net>
1010
1011	* VERSION (_MAKE_VERSION): 20200517
1012	Merge with NetBSD make, pick up
1013	o modified dollar tests to avoid shell dependencies
1014	o new tests for .INCLUDEFROM
1015
10162020-05-16  Simon J Gerraty  <sjg@beast.crufty.net>
1017
1018	* unit-tests/dollar.mk: tweak  '1 dollar literal' test
1019	to not depend so much on shell behavior
1020
10212020-05-10  Simon J Gerraty  <sjg@beast.crufty.net>
1022
1023	* VERSION (_MAKE_VERSION): 20200510
1024	Merge with NetBSD make, pick up
1025	o unit test for dollar handling
1026
10272020-05-06  Simon J Gerraty  <sjg@beast.crufty.net>
1028
1029	* VERSION (_MAKE_VERSION): 20200506
1030	Merge with NetBSD make, pick up
1031	o str.c: empty string does not match % pattern
1032	  plus unit-test changes
1033
10342020-05-04  Simon J Gerraty  <sjg@beast.crufty.net>
1035
1036	* VERSION (_MAKE_VERSION): 20200504
1037	May the 4th be with you
1038	Merge with NetBSD make, pick up
1039	o var.c: import handling of old sysV style modifier using '%'
1040	o str.c: refactor brk_string
1041	o unit-tests: add test case for lazy conditions
1042
10432020-04-18  Simon J Gerraty  <sjg@beast.crufty.net>
1044
1045	* VERSION (_MAKE_VERSION): 20200418
1046
1047	* configure.in: use_makefile=no for cygwin et al.
1048	case insensitive filesystems just don't work if both
1049	makefile and Makefile exist.
1050	NOTE: bmake does not support cygwin and likely never will,
1051	but if brave souls want to try it - help them out.
1052
10532020-04-02  Simon J Gerraty  <sjg@beast.crufty.net>
1054
1055	* VERSION (_MAKE_VERSION): 20200402
1056	Merge with NetBSD make, pick up
1057	o meta.c: meta_oodate, CHECK_VALID_META is too aggressive for CMD
1058	  a blank command is perfectly valid.
1059
10602020-03-30  Simon J Gerraty  <sjg@beast.crufty.net>
1061
1062	* VERSION (_MAKE_VERSION): 20200330
1063	Merge with NetBSD make, pick up
1064	o make.h: extern debug_file
1065
10662020-03-18  Simon J Gerraty  <sjg@beast.crufty.net>
1067
1068	* VERSION (_MAKE_VERSION): 20200318
1069	Merge with NetBSD make, pick up
1070	o meta.c: meta_oodate, check for corrupted meta file
1071	  earlier and more often.
1072
10732020-02-20  Simon J Gerraty  <sjg@beast.crufty.net>
1074
1075	* VERSION (_MAKE_VERSION): 20200220
1076
10772020-02-19  Simon J Gerraty  <sjg@beast.crufty.net>
1078
1079	* boot-strap: unset MAKEFLAGS
1080
10812020-02-12  Simon J Gerraty  <sjg@beast.crufty.net>
1082
1083	* VERSION (_MAKE_VERSION): 20200212
1084	* meta.c: meta_compat_parent check for USE_FILEMON
1085	  patch from Soeren Tempel
1086
10872020-02-05  Simon J Gerraty  <sjg@beast.crufty.net>
1088
1089	* VERSION: 20200205
1090	Merge with NetBSD make, pick up
1091	o meta.c: fix compat mode, need to call meta_job_output()
1092	o job.c: extra fds for meta mode not needed if using filemon_dev
1093
10942020-01-22  Simon J Gerraty  <sjg@beast.crufty.net>
1095
1096	* VERSION: 20200122
1097	Merge with NetBSD make, pick up
1098	o meta.c: avoid passing NULL to filemon_*() when meta_needed()
1099	  returns FALSE.
1100
11012020-01-21  Simon J Gerraty  <sjg@beast.crufty.net>
1102
1103	* VERSION: 20200121
1104	Merge with NetBSD make, pick up
1105	o filemon/filemon_{dev,ktrace}.c: allow selection of
1106	  filemon implementation.  filemon_dev.c uses the kernel module
1107	  while filemon_ktrace.c leverages the fktrace api available in
1108	  NetBSD.  filemon_ktrace.c can hopefully form the basis for
1109	  adding support for other tracing mechanisms such as strace on
1110	  Linux.
1111	o meta.c: when target is out-of-date per normal make rules
1112	  record value of .OODATE in meta file.
1113
11142019-09-26  Simon J Gerraty  <sjg@beast.crufty.net>
1115
1116	* VERSION: 20190926
1117	  Merge with NetBSD make, pick up
1118	  o parse.c: don't pass NULL to realpath(3)
1119	    some versions cannot handle it.
1120
11212019-04-09  Simon J Gerraty  <sjg@beast.crufty.net>
1122
1123	* VERSION: 20190409
1124	  Merge with NetBSD make, pick up
1125	  o parse.c: ParseDoDependency: free paths rather than assert
1126
11272018-12-22  Simon J Gerraty  <sjg@beast.crufty.net>
1128
1129	* VERSION: 20181222
1130
1131	* configure.in: add --without-makefile to avoid generating
1132	  makefile and make-bootstrap.sh
1133
1134	* include Makefile.inc if it exists
1135
1136	* Use Makefile and Makefile.config.in in unit-tests
1137	  so we can use just: make obj && make && make test
1138	  when bmake is already available.
1139	  We add --without-makefile to CONFIGURE_ARGS in this case.
1140
1141	* tweak bsd.after-import.mk (captures Makefile.config etc
1142	  after import to FreeBSD for example) to cope with all the above.
1143
11442018-12-21  Simon J Gerraty  <sjg@beast.crufty.net>
1145
1146	* VERSION: 20181221
1147	  Merge with NetBSD make, pick up
1148	  o parse.c: ParseVErrorInternal use .PARSEDIR
1149	    and apply if relative, and then use .PARSEFILE
1150	    for consistent result.
1151
11522018-12-20  Simon J Gerraty  <sjg@beast.crufty.net>
1153
1154	* VERSION: 20181220
1155	  Merge with NetBSD make, pick up
1156	  o parse.c: ParseVErrorInternal use .CURDIR if .PARSEDIR
1157	    is relative
1158	  o var.c: avoid SEGFAULT in .unexport-env
1159	    when MAKELEVEL is not set
1160
11612018-12-16  Simon J Gerraty  <sjg@beast.crufty.net>
1162
1163	* VERSION: 20181216
1164	  Merge with NetBSD make, pick up
1165	  o fix for unit-tests/varquote.mk on Debian
1166
11672018-09-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1168
1169	* VERSION: 20180919
1170	  Merge with NetBSD make, pick up
1171	  o var.c: add :q
1172	  o dir.c: cleanup caching of stats
1173
11742018-09-21  Simon J Gerraty  <sjg@beast.crufty.net>
1175
1176	* Makefile.config.in: use += where it makes sense.
1177
11782018-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1179
1180	* VERSION: 20180512
1181	  Merge with NetBSD make, pick up
1182	  o job.c: skip polling job token pipe
1183
11842018-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1185
1186	* VERSION: 20180405
1187	  Merge with NetBSD make, pick up
1188	  o parse.c: be more cautious about detecting depenency line
1189	    rather than sysV style include.
1190
11912018-02-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1192
1193	* VERSION: 20180222
1194	  Merge with NetBSD make, pick up
1195	  o parse.c: avoid calling sysconf for every call to loadfile
1196
11972018-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1198
1199	* VERSION: 20180218
1200	  Merge with NetBSD make, pick up
1201	  o var.c: Var_Set handle NULL value anytime.
1202
12032018-02-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1204
1205	* VERSION: 20180212
1206	  Merge with NetBSD make, pick up
1207	  o parse.c: do not treat .info as warning with -W
1208
12092017-12-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1210
1211	* VERSION: 20171207
1212	  Merge with NetBSD make, pick up
1213	  o var.c: Var_Append use Var_Set if var not previously set
1214	    so that VAR_CMD is handled correctly.
1215	    Add a suitable unit-test.
1216
12172017-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1218
1219	* VERSION (_MAKE_VERSION): 20171126
1220
1221	* aclocal.m4: use AC_LINK_IFELSE for AC_C___ATTRIBUTE__
1222	  since AC_TRY_COMPILE puts input inside main()
1223	  which upsets modern compilers.
1224
12252017-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1226
1227	* VERSION: 20171118
1228	  Merge with NetBSD make, pick up
1229	  o var.c: do not append to variable set on command line
1230	    add unit-test to catch this.
1231
12322017-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1233
1234	* VERSION: 20171028
1235	  Merge with NetBSD make, pick up
1236	  o main.c: ignore empty MAKEOBJDIR
1237
1238	* Makefile.config.in:
1239	  make @prefix@ @machine*@ and @default_sys_path@ defaults.
1240
12412017-10-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1242
1243	* VERSION: 20171005
1244
1245	* unit-tests/dotwait.mk: redirect stderr through pipe for more
1246	  consistent result on some platforms.
1247
12482017-08-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1249
1250	* machine.sh: entry for AIX
1251
12522017-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1253
1254	* VERSION (_MAKE_VERSION): Move the setting of _MAKE_VERSION
1255	  to a file that can be included by configure as well as make.
1256	  This allows configure to set set _MAKE_VERSION in make-bootstrap.sh
1257
12582017-08-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1259
1260	* Makefile (_MAKE_VERSION): 20170810
1261	  Merge with NetBSD make, pick up
1262	  o meta.c: if target is in subdir we only need subdir name in
1263	    meta_name.
1264
12652017-07-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1266
1267	* Makefile (_MAKE_VERSION): 20170720
1268	  Merge with NetBSD make, pick up
1269	  o compat.c: pass SIGINT etc onto child and wait for it to exit
1270	    before we self-terminate.
1271
12722017-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1273
1274	* Makefile (_MAKE_VERSION): 20170711
1275	  forgot to update after merge on 20170708 ;-)
1276	  o main.c: refactor to reduce size of main function.
1277	    add -v option to always fully expand values.
1278	  o meta.c: ensure command output in meta file has ending newline
1279	    even when filemon not being used.
1280	    When matching ${.MAKE.META.IGNORE_PATTERNS} do not use
1281	    pathname via ':L' since any ':' in pathname breaks that.
1282	    Instead set a '${.p.}' to pathname in the target context and
1283	    use that.
1284
12852017-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1286
1287	* Makefile (_MAKE_VERSION): 20170510
1288	  Merge with NetBSD make, pick up
1289	  o main.c: Main_SetObjdir: ensure buf2 is in scope
1290
12912017-05-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1292
1293	* Makefile (_MAKE_VERSION): 20170505
1294	  see mk/ChangeLog
1295
12962017-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1297
1298	* parse.c: not everyone has stdint.h
1299
13002017-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1301
1302	* Makefile (_MAKE_VERSION): 20170501
1303	  see mk/ChangeLog
1304
13052017-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1306
1307	* Makefile (_MAKE_VERSION): 20170421
1308	  Merge with NetBSD make, pick up
1309	  o str.c: Str_Match: fix closure tests for [^] and add unit-test.
1310
13112017-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1312
1313	* Makefile (_MAKE_VERSION): 20170420
1314	  Merge with NetBSD make, pick up
1315	  o main.c: only use -C arg "as is" if it contains no
1316	    relative component.
1317
13182017-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1319
1320	* Makefile (_MAKE_VERSION): 20170418
1321	  Merge with NetBSD make, pick up
1322	  o main.c: fix Main_SetObjdir() for relative paths (eg obj).
1323
13242017-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1325
1326	* Makefile (_MAKE_VERSION): 20170417
1327	  Merge with NetBSD make, pick up
1328	  o fixes a number of coverity complaints
1329	    - check return value of fseek, fcntl
1330	    - plug memory leak in Dir_FindFile, Var_LoopExpand,
1331	      JobPrintCommand, ParseTraditionalInclude
1332	    - use bmake_malloc() where NULL is not tollerated
1333	    - use MAKE_ATTR_UNUSED rather that kludges like
1334	      return(unused ? 0 : 0)
1335	    - use purge_cached_realpaths() rather than abuse cached_realpath()
1336
13372017-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1338
1339	* Makefile (_MAKE_VERSION): 20170413
1340	  Merge with NetBSD make, pick up
1341	  o main.c: when setting .OBJDIR ignore '$' in paths.
1342
1343	* job.c: use MALLOC_OPTIONS to set malloc_options.
1344
13452017-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1346
1347	* Makefile (_MAKE_VERSION): 20170411
1348	  Merge with NetBSD make, pick up
1349	  o str.c: Str_Match: allow [^a-z] to behave as expected.
1350
13512017-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1352
1353	* Makefile (_MAKE_VERSION): 20170326
1354	  Merge with NetBSD make, pick up
1355	  o main.c: purge relative paths from realpath cache when .OBJDIR
1356	    is changed.
1357
13582017-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1359
1360	* Makefile (_MAKE_VERSION): 20170311
1361	  Merge with NetBSD make, pick up
1362          o main.c: only use -C arg "as is" if it starts with '/'.
1363
13642017-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1365
1366	* Makefile (_MAKE_VERSION): 20170301
1367	  Merge with NetBSD make, pick up
1368	  o main.c: use -C arg "as is" rather than getcwd()
1369	    if they identify the same directory.
1370	  o parse.c: ensure loadfile buffer is \n terminated in non-mmap case
1371
13722017-02-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1373
1374	* Makefile (_MAKE_VERSION): 20170201
1375	  Merge with NetBSD make, pick up
1376	  o var.c: allow :_=var and avoid use of special context.
1377
13782017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1379
1380	* Makefile (_MAKE_VERSION): 20170130
1381	  Merge with NetBSD make, pick up
1382	  o var.c: add :range and :_
1383	  o main.c: partially initialize Dir_* before MainParseArgs()
1384	    can be called.
1385	    If -V, skip Main_ExportMAKEFLAGS()
1386
13872017-01-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1388
1389	* Makefile (_MAKE_VERSION): 20170114
1390	  Merge with NetBSD make, pick up
1391	  o var.c: allow specifying the utc value used by :{gm,local}time
1392
13932016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1394
1395	* Makefile (_MAKE_VERSION): 20161212
1396	  Merge with NetBSD make, pick up
1397          o main.c: look for obj.${MACHINE}-${MACHINE_ARCH} too.
1398
13992016-12-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1400
1401	* Makefile (_MAKE_VERSION): 20161209
1402	  Merge with NetBSD make, pick up
1403	  o main.c: cleanup setting of .OBJDIR
1404	  o parse.c: avoid coredump from (var)=val
1405
14062016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1407
1408	* Makefile (_MAKE_VERSION): 20161126
1409	  Merge with NetBSD make, pick up
1410	  o make.c: Make_OODate: report src node name if path not set
1411
14122016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1413
1414	* Makefile (_MAKE_VERSION): 20160926
1415	  Merge with NetBSD make, pick up
1416	  o support for .DELETE_ON_ERROR: (remove targets that fail)
1417
14182016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1419
1420	* Makefile MAN: tweak .Dt to match ${PROG}
1421
14222016-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1423
1424	* Makefile (_MAKE_VERSION): 20160818
1425	  its a neater number; pick up whitespace fixes to man page.
1426
14272016-08-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1428
1429	* Makefile (_MAKE_VERSION): 20160817
1430	  Merge with NetBSD make, pick up
1431	  o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore()
1432	    so we can call it before adding entries to missingFiles.
1433	    Thus we do not track files we have been told to ignore.
1434
14352016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1436
1437	* Makefile (_MAKE_VERSION): 20160815
1438	  Merge with NetBSD make, pick up
1439	  o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to
1440	    pathnames, and skip if the expansion is empty.
1441	    Useful for dirdeps.mk when checking DIRDEPS_CACHE.
1442
14432016-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1444
1445	* Makefile (_MAKE_VERSION): 20160812
1446	  Merge with NetBSD make, pick up
1447	  o meta.c: remove all missingFiles entries that match a deleted
1448	    dir.
1449	  o main.c: set .ERROR_CMD if possible.
1450
14512016-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1452
1453	* Makefile (_MAKE_VERSION): 20160606
1454	  Merge with NetBSD make, pick up
1455	  o dir.c: extend mtimes cache to others via cached_stat()
1456
14572016-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1458
1459	* Makefile (_MAKE_VERSION): 20160604
1460	  Merge with NetBSD make, pick up
1461	  o meta.c: missing filemon data is only relevant if we read a
1462	    meta file.
1463	    Also do not return oodate for a missing metafile if gn->path
1464	    points to .CURDIR
1465
14662016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1467
1468	* Makefile (_MAKE_VERSION): 20160602
1469	  Merge with NetBSD make, pick up
1470	  o cached_realpath(): avoid hitting filesystem more than necessary.
1471	  o meta.c: refactor need_meta decision, add knobs for
1472	    missing meta file and filemon data wrt out-of-datedness.
1473
14742016-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1475
1476	* Makefile (_MAKE_VERSION): 20160528
1477
1478	* boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION
1479
14802016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1481
1482	* Makefile (_MAKE_VERSION): 20160512
1483	  Merge with NetBSD make, pick up
1484	  o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS
1485	    this is useful for gcov builds.
1486	  o propagate errors from filemon(4).
1487
14882016-05-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1489
1490	* Makefile (_MAKE_VERSION): 20160509
1491	  Merge with NetBSD make, pick up
1492	  o remove use of non-standard types u_int etc.
1493	  o meta.c: apply realpath() before matching against metaIgnorePaths
1494
14952016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1496
1497	* Makefile (_MAKE_VERSION): 20160404
1498	  Merge with NetBSD make, pick up
1499	  o allow makefile to set .MAKE.JOBS
1500
1501	* Makefile (PROG_NAME): use ${_MAKE_VERSION}
1502
15032016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1504
1505	* Makefile (_MAKE_VERSION): 20160315
1506	  Merge with NetBSD make, pick up
1507	  o fix handling of archive members
1508
15092016-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1510
1511	* Makefile (_MAKE_VERSION): rename variable to avoid interference
1512	  with checks for ${MAKE_VERSION}
1513
15142016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1515
1516	* Makefile (MAKE_VERSION): 20160310
1517	  Merge with NetBSD make, pick up
1518	  o meta.c: treat missing Read file same as Write, incase we Delete it.
1519
15202016-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1521
1522	* Makefile (MAKE_VERSION): 20160307
1523	  Merge with NetBSD make, pick up
1524	  o var.c: fix :ts\nnn to be octal by default.
1525	  o meta.c: meta_finish() to cleanup memory.
1526
15272016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1528
1529	* Makefile (MAKE_VERSION): 20160226
1530	  Merge with NetBSD make, pick up
1531	  o meta.c: allow meta file for makeDepend if makefiles want it.
1532
15332016-02-19  Simon J. Gerraty  <sjg@bad.crufty.net>
1534
1535	* var.c: default .MAKE.SAVE_DOLLARS to FALSE
1536	  for backwards compatability.
1537
1538	* Makefile (MAKE_VERSION): 20160220
1539	  Merge with NetBSD make, pick up
1540	  o var.c: add knob to control handling of '$$' in :=
1541
15422016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1543
1544	* Makefile (MAKE_VERSION): 20160218
1545	  Merge with NetBSD make, pick up
1546	  o var.c: add .export-literal allows us to fix sys.clean-env.mk
1547	    post the changes to Var_Subst.
1548	    Var_Subst now takes flags, and does not consume '$$' in :=
1549
15502016-02-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1551
1552	* Makefile (MAKE_VERSION): 20160217
1553	  Merge with NetBSD make, pick up
1554	  o var.c: preserve '$$' in :=
1555	  o parse.c: add .dinclude for handling included
1556	    makefile like .depend
1557
15582015-12-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1559
1560	* Makefile (MAKE_VERSION): 20151220
1561	  Merge with NetBSD make, pick up
1562	  o suff.c: re-initialize suffNull when clearing suffixes.
1563
15642015-12-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1565
1566	* Makefile (MAKE_VERSION): 20151201
1567	  Merge with NetBSD make, pick up
1568	  o cond.c: CondCvtArg: avoid access beyond end of empty buffer.
1569	  o meta.c: meta_oodate: use lstat(2) for checking link target
1570	    in case it is a symlink.
1571	  o var.c: avoid calling brk_string and Var_Export1 with empty
1572	    strings.
1573
15742015-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1575
1576	* Makefile (MAKE_VERSION): 20151126
1577	  Merge with NetBSD make, pick up
1578	  o parse.c: ParseTrackInput don't access beyond
1579	    end of old value.
1580
15812015-10-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1582
1583	* Makefile (MAKE_VERSION): 20151022
1584
1585	* Add support for BSD/OS which lacks inttypes.h
1586	  and really needs sys/param.h for sys/sysctl.h
1587	  also 'type' is not a shell builtin.
1588
1589	* var.c: eliminate uint32_t and need for inttypes.h
1590
1591	* main.c: PrintOnError flush stdout before run .ERROR
1592
1593	* parse.c: cope with _SC_PAGESIZE not being defined.
1594
1595
15962015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1597
1598	* Makefile (MAKE_VERSION): 20151020
1599	  Merge with NetBSD make, pick up
1600	  o var.c: fix uninitialized var
1601
16022015-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1603
1604	* var.c: the conditional expressions used with ':?' can be
1605	expensive, if already discarding do not evaluate or expand
1606	anything.
1607
16082015-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1609
1610	* Makefile (MAKE_VERSION): 20151010
1611	  Merge with NetBSD make, pick up
1612	  o Add Boolean wantit flag to Var_Subst and Var_Parse
1613	    when FALSE we know we are discarding the result and can
1614	    skip operations like Cmd_Exec.
1615
16162015-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1617
1618	* Makefile (MAKE_VERSION): 20151009
1619	  Merge with NetBSD make, pick up
1620	  o var.c: don't check for NULL before free()
1621	  o meta.c: meta_oodate, do not hard code ignore of makeDependfile
1622
16232015-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1624
1625	* Makefile (MAKE_VERSION): 20150910
1626	  Merge with NetBSD make, pick up
1627	  o main.c: with -w print Enter/Leaving messages for objdir too
1628	    if necessary.
1629	  o centralize shell metachar handling
1630
1631	* FILES: add metachar.[ch]
1632
16332015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1634
1635	* Makefile (MAKE_VERSION): 20150606
1636	  Merge with NetBSD make, pick up
1637	  o make.1: document .OBJDIR target
1638
16392015-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1640
1641	* Makefile (MAKE_VERSION): 20150505
1642	  Merge with NetBSD make, pick up
1643	  o cond.c: be strict about lhs of comparison when evaluating .if
1644	    but less so when called from variable expansion.
1645	  o unit-tests/cond2.mk: test various error conditions
1646
16472015-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1648
1649	* machine.sh (MACHINE): Add Bitrig
1650	  patch from joerg@netbsd.org
1651
16522015-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1653
1654	* Makefile (MAKE_VERSION): 20150418
1655	  Merge with NetBSD make, pick up
1656	  o job.c: use memmove() rather than memcpy()
1657
1658	* unit-tests/varshell.mk: SunOS cannot handle the TERMINATED_BY_SIGNAL
1659	  case, so skip it.
1660
16612015-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1662
1663	* Makefile (MAKE_VERSION): 20150411
1664	  bump version - only mk/ changes.
1665
16662015-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1667
1668	* Makefile (MAKE_VERSION): 20150410
1669	  Merge with NetBSD make, pick up
1670	  o document different handling of '-' in jobs mode vs compat
1671	  o fix jobs mode so that '-' only applies to whole job
1672	    when shell lacks hasErrCtl
1673	  o meta.c: use separate vars to track lcwd and latestdir (read)
1674	    per process
1675
16762015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1677
1678	* Makefile (MAKE_VERSION): 20150401
1679	  Merge with NetBSD make, pick up
1680	  o meta.c: close meta file in child
1681
1682	* Makefile: use BINDIR.bmake if set.
1683	  Same for MANDIR and SHAREDIR
1684	  Handy for testing release candidates
1685	  in various environments.
1686
16872015-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1688
1689	* move initialization of savederr to block where it is used
1690	  to avoid spurious warning from gcc5
1691
16922014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1693
1694	* Makefile (MAKE_VERSION): 20141111
1695	  just a cooler number
1696
16972014-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1698
1699	* Makefile (MAKE_VERSION): 20141105
1700	  Merge with NetBSD make, pick up
1701	  o revert major overhaul of suffix handling
1702	    and POSIX compliance - too much breakage
1703	    and impossible to make backwards compatible.
1704	  o we still have the new unit test structure which is ok.
1705	  o meta.c ensure "-- filemon" is at start of line.
1706
17072014-09-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1708
1709	* configure.in: test that result of getconf PATH_MAX is numeric
1710	  and discard if not.  Apparently needed for Hurd.
1711
17122014-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1713
1714	* Makefile (MAKE_VERSION): 20140830
1715	  Merge with NetBSD make, pick up
1716	  o major overhaul of suffix handling
1717	  o improved POSIX compliance
1718	  o overhauled unit-tests
1719
17202014-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1721
1722	* Makefile (MAKE_VERSION): 20140620
1723	  Merge with NetBSD make, pick up
1724	  o var.c return varNoError rather than var_Error for ::= modifiers.
1725
17262014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1727
1728	* Makefile (MAKE_VERSION): 20140522
1729	  Merge with NetBSD make, pick up
1730	  o var.c detect some parse errors.
1731
17322014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1733
1734	* Fix spelling errors - patch from Pedro Giffuni
1735
17362014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1737
1738	* Makefile (MAKE_VERSION): 20140214
1739	  Merge with NetBSD make, pick up
1740	  o .INCLUDEFROM*
1741	  o use Var_Value to get MAKEOBJDIR[PREFIX]
1742	  o reduced realloc'ign in brk_string.
1743	* configure.in: add a check for compiler supporting __func__
1744
17452014-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1746
1747	* boot-strap: ignore mksrc=none
1748
17492014-01-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1750
1751	* Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk
1752
17532014-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1754
1755	* Makefile (MAKE_VERSION): 20140101
1756	* configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024)
1757	* Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max
1758	* make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for
1759	  Hurd)
1760	* configure.in: Add AC_PREREQ and check for
1761	  sysctl; patch from Andrew Shadura andrewsh at debian.org
1762
17632013-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1764
1765	* Makefile (MAKE_VERSION): 20131010
1766	* lose the const from arg to systcl to avoid problems on older BSDs.
1767
17682013-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1769
1770	* Makefile (MAKE_VERSION): 20131001
1771	  Merge with NetBSD make, pick up
1772	  o main.c: for NATIVE build sysctl to get MACHINE_ARCH from
1773	    hw.machine_arch if necessary.
1774	  o meta.c: meta_oodate - need to look at src of Link and target
1775	    of Move as well.
1776	* main.c: check that CTL_HW and HW_MACHINE_ARCH exist.
1777	  provide __arraycount() if needed.
1778
17792013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1780
1781	* Makefile (MAKE_VERSION): 20130904
1782	  Merge with NetBSD make, pick up
1783	  o Add VAR_INTERNAL context, so that internal setting of
1784	    MAKEFILE does not override value set by makefiles.
1785
17862013-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1787
1788	* Makefile (MAKE_VERSION): 20130902
1789	  Merge with NetBSD make, pick up
1790	  o CompatRunCommand: only apply shellErrFlag when errCheck is true
1791
17922013-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1793
1794	* Makefile (MAKE_VERSION): 20130828
1795	  Merge with NetBSD make, pick up
1796	  o Fix VAR :sh = syntax from Will Andrews at freebsd.org
1797	  o Call Job_SetPrefix() from Job_Init() so makefiles have
1798	    opportunity to set .MAKE.JOB.PREFIX
1799
18002013-07-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1801
1802	* Makefile (MAKE_VERSION): 20130730
1803	  Merge with NetBSD make, pick up
1804	  o Allow suppression of --- job -- tokens by setting
1805	    .MAKE.JOB.PREFIX empty.
1806
18072013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1808
1809	* Makefile (MAKE_VERSION): 20130716
1810	  Merge with NetBSD make, pick up
1811	  o number of gmake compatibility tweaks
1812	    -w for gmake style entering/leaving messages
1813	    if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc.
1814	    handle MAKEFLAGS containing only letters.
1815	  o when overriding a GLOBAL variable on the command line,
1816	    delete it from GLOBAL context so -V doesn't show the wrong
1817	    value.
1818
18192013-07-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1820
1821	* configure.in: We don't need MAKE_LEVEL_SAFE anymore.
1822
1823	* Makefile (MAKE_VERSION): 20130706
1824	  Merge with NetBSD make, pick up
1825	  o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is
1826	    true so that CompatRunCommand() can use it, to ensure
1827	    consistent behavior with jobs mode.
1828	  o use MAKE_LEVEL_ENV to define the variable to propagate
1829	    .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake).
1830	  o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of
1831	    paths to ignore.
1832
18332013-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1834
1835	* Makefile (MAKE_VERSION): 20130604
1836	  Merge with NetBSD make, pick up
1837	  o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's
1838	    to avoid leaking descriptors.
1839
18402013-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1841
1842	* Makefile (MAKE_VERSION): 20130528
1843	  Merge with NetBSD make, pick up
1844	  o var.c: cleanup some left-overs in VarHash()
1845
18462013-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1847
1848	* Makefile (MAKE_VERSION): 20130520
1849	  generate manifest from component FILES rather than have to
1850	  update FILES when mk/FILES changes.
1851
18522013-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1853
1854	* Makefile (MAKE_VERSION): 20130518
1855	  Merge with NetBSD make, pick up
1856	  o suff.c: don't skip all processsing for .PHONY targets
1857	    else wildcard srcs do not get expanded.
1858	  o var.c: expand name of variable to delete if necessary.
1859
18602013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1861
1862	* Makefile (MAKE_VERSION): 20130330
1863	  Merge with NetBSD make, pick up
1864	  o meta.c: refine the handling of .OODATE in commands.
1865	    Rather than suppress command comparison for the entire script
1866	    as though .NOMETA_CMP had been used, only suppress it for the
1867	    one command line.
1868	    This allows something like ${.OODATE:M.NOMETA_CMP} to be used to
1869	    suppress comparison of a command without otherwise affecting it.
1870	  o make.1: document that
1871
18722013-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1873
1874	* Makefile (MAKE_VERSION): 20130321
1875	  yes, not quite right but its a cooler number.
1876	  Merge with NetBSD make, pick up
1877	  o parse.c: fix ParseGmakeExport to be portable
1878	    and add a unit-test.
1879	* meta.c: call meta_init() before makefiles are read and if built
1880	  with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON
1881	  this let's makefiles test for support.
1882	  Call meta_mode_init() to process .MAKE.MODE.
1883
18842013-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1885
1886	* Makefile (MAKE_VERSION): 20130305
1887	  Merge with NetBSD make, pick up
1888	  o run .STALE: target when a dependency from .depend is missing.
1889	  o job.c: add Job_RunTarget() for the above and .BEGIN
1890
18912013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1892
1893	* Makefile (MAKE_VERSION): 20130303
1894	  Merge with NetBSD make, pick up
1895	  o main.c: set .MAKE.OS to utsname.sysname
1896	  o job.c: more checks for read and poll errors
1897	  o var.c: lose VarChangeCase() saves 4% time
1898
18992013-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1900
1901	* boot-strap: remove MAKEOBJDIRPREFIX from environment since we
1902	  want to use MAKEOBJDIR
1903
19042013-01-27  Simon J. Gerraty  <sjg@bad.crufty.net>
1905
1906	* Merge with NetBSD make, pick up
1907	  o make.1: more info on how shell commands are handled.
1908	  o job.c,main.c: detect write errors to job pipes.
1909
19102013-01-25  Simon J. Gerraty  <sjg@bad.crufty.net>
1911
1912	* Makefile (MAKE_VERSION): 20130123
1913	  Merge with NetBSD make, pick up
1914	  o meta.c: if script uses .OODATE and meta_oodate() decides
1915	    rebuild is needed, .OODATE will be empty - set it to .ALLSRC.
1916	  o var.c: in debug output indicate which variabale modifiers
1917	    apply to.
1918	  o remove Check_Cwd logic the makefiles have been fixed.
1919
19202012-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1921
1922	* makefile.in: add a simple makefile for folk who insist on
1923	  ./configure; make; make install
1924	  it just runs boot-strap
1925	* include mk/* to accommodate the above
1926	* boot-strap:  re-work to accommodate the above
1927	  mksrc defaults to $Mydir/mk
1928	  allow op={configure,build,install,clean,all}
1929	  add options to facilitate install
1930	* Makefile.config.in: just the bits set by configure
1931	* Makefile: bump version to 20121212
1932	  abandon Makefile.in (NetBSD Makefile)
1933	  leverage mk/* instead
1934	* configure.in: ensure srcdir is absolute
1935
19362012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1937
1938	* Makefile.in (MAKE_VERSION): 20121111
1939	  fix generation of bmake.cat1
1940
19412012-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1942
1943	* Makefile.in (MAKE_VERSION): 20121109
1944	  Merge with NetBSD make, pick up
1945	  o make.c: MakeBuildChild: return 0 so search continues if a
1946	    .ORDER dependency is detected.
1947	  o unit-tests/order: test the above
1948
19492012-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1950
1951	* Makefile.in (MAKE_VERSION): 20121102
1952	  Merge with NetBSD make, pick up
1953	  o cond.c: allow cond_state[] to grow.
1954	    In meta mode with a very large tree, we can hit the limit
1955	    while processing dirdeps.
1956
19572012-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
1958
1959	* Makefile.in: we need to use ${srcdir} not ${.CURDIR}
1960
19612012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1962
1963	* Makefile.in (MAKE_VERSION): 20121010
1964	  o protect syntax that only bmake parses correctly.
1965	  o remove auto setting of FORCE_MACHINE, use configure's
1966	    --with-force-machine=whatever if that is desired.
1967
19682012-10-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1969
1970	* Makefile.in: do not lose history from make.1 when generating bmake.1
1971
19722012-10-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1973
1974	* Makefile.in (MAKE_VERSION): 20121007
1975	  Merge with NetBSD make, pick up
1976	  o compat.c: ignore empty commands - same as jobs mode.
1977	  o make.1: document meta chars that cause use of shell
1978
19792012-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1980
1981	* Makefile.in (MAKE_VERSION): bump version to 20120911
1982	* bsd.after-import.mk: include Makefile.inc early and allow it to
1983	  override PROG
1984
19852012-08-31  Simon J. Gerraty  <sjg@bad.crufty.net>
1986
1987	* Makefile.in (MAKE_VERSION): bump version to 20120831
1988	  Merge with NetBSD make, pick up
1989	  o cast sizeof() to int for comparison
1990	  o minor make.1 tweak
1991
19922012-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1993
1994	* Makefile.in (MAKE_VERSION): bump version to 20120830
1995	  Merge with NetBSD make, pick up
1996	  o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
1997	  o debug flag -dV causes -V to show raw value regardless.
1998
19992012-07-05  Simon J. Gerraty  <sjg@bad.crufty.net>
2000
2001	* bsd.after-import.mk (after-import): ensure unit-tests/Makefile
2002	  gets SRCTOP set.
2003
20042012-07-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2005
2006	* Makefile.in (MAKE_VERSION): bump version to 20120704
2007	  Merge with NetBSD make, pick up
2008	  o Job_ParseShell should call Shell_Init if it has been
2009	    previously called.
2010	* Makefile.in: set USE_META based on configure result.
2011	  also .PARSEDIR is safer indicator of bmake.
2012
20132012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
2014
2015	* Makefile.in: bump version to 20120626
2016	  ensure CPPFLAGS is in CFLAGS
2017	* meta.c: avoid nested externs
2018	* bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
2019
20202012-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
2021
2022	* Makefile.in (MAKE_VERSION): bump version to 20120620
2023	  Merge with NetBSD make, pick up
2024	  o make_malloc.c: avoid including make_malloc.h again
2025
2026	* Makefile.in: avoid bmake only syntax or protect with
2027	  .if defined(.MAKE.LEVEL)
2028	* bsd.after-import.mk: replace .-include with .sinclude
2029	  ensure? SRCTOP gets a value
2030	* configure.in: look for filemon.h in /usr/include/dev/filemon first.
2031
20322012-06-19  Simon J. Gerraty  <sjg@bad.crufty.net>
2033
2034	* Makefile.in (MAKE_VERSION): bump version to 20120612
2035	  Merge with NetBSD make, pick up
2036	  o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
2037	    for greater portability.
2038	  o unit-tests/forloop: check that .for works as expected wrt
2039	    number of times and with "quoted strings".
2040
20412012-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
2042
2043	* Makefile.in (MAKE_VERSION): bump version to 20120606
2044	  Merge with NetBSD make, pick up
2045	  o compat.c: use kill(2) rather than raise(3).
2046	* configure.in: look for sys/dev/filemon
2047	* bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
2048	  and pass BOOTSTRAP_XTRAS to boot-strap.
2049
20502012-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2051
2052	* Makefile.in (MAKE_VERSION): bump version to 20120604
2053	  Merge with NetBSD make, pick up
2054	  o util.c and var.c share same var for tracking if environ
2055	    has been reallocated.
2056	  o util.c provide getenv with setenv.
2057	* Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
2058	  when the shell actively strips .MAKE.* from the environment.
2059	  We still refer to the variable always as .MAKE.LEVEL
2060	* util.c fix bug in findenv() was finding prefix of name.
2061	* compat.c: re-raising SIGINT etc after running .INTERRUPT
2062	  results in more reliable termination of all activity on many
2063	  platforms.
2064
20652012-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
2066
2067	* Makefile.in (MAKE_VERSION): bump version to 20120602
2068	  Merge with NetBSD make, pick up
2069	  o for.c: handle quoted items in .for list
2070
20712012-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
2072
2073	* Makefile.in (MAKE_VERSION): bump version to 20120530
2074	  Merge with NetBSD make, pick up
2075	  o compat.c: ignore empty command.
2076
20772012-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
2078
2079	* Makefile.in (MAKE_VERSION): bump version to 20120524
2080	* FILES: add bsd.after-import.mk:
2081	  A simple means of integrating bmake into a BSD build system.
2082
20832012-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
2084
2085	* Makefile.in (MAKE_VERSION): bump version to 20120520
2086	  Merge with NetBSD make, pick up
2087	  o increased limit for nested conditionals.
2088
20892012-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
2090
2091	* Makefile.in (MAKE_VERSION): bump version to 20120518
2092	  Merge with NetBSD make, pick up
2093	  o use _exit(2) in signal hanlder
2094	  o Don't use the [dir] cache when building nodes that might have
2095	    changed since the last exec.
2096	  o Avoid nested extern declaration warnings.
2097
20982012-04-27  Simon J. Gerraty  <sjg@bad.crufty.net>
2099
2100	* meta.c (fgetLine): avoid %z - not portable.
2101	* parse.c: Since we moved include of sys/mman.h
2102	  and def's of MAP_COPY etc. we got dups from a merge.
2103
21042012-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
2105
2106	* Makefile.in (MAKE_VERSION): bump version to 20120420
2107	  Merge with NetBSD make, pick up
2108	  o restore duplicate supression in .MAKE.MAKEFILES
2109	    runtime saving can be significant.
2110	  o Var_Subst() uses Buf_DestroyCompact() to reduce memory
2111	    consumption up to 20%.
2112
21132012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
2114
2115	* Makefile.in (MAKE_VERSION): bump version to 20120420
2116          Merge with NetBSD make, pick up
2117	  o remove duplicate supression in .MAKE.MAKEFILES
2118	  o improved dir cache behavior
2119	  o gmake'ish export command
2120
21212012-03-25  Simon J. Gerraty  <sjg@bad.crufty.net>
2122
2123	* Makefile.in (MAKE_VERSION): bump version to 20120325
2124	  Merge with NetBSD make, pick up
2125	  o fix parsing of :[#] in conditionals.
2126
21272012-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2128
2129	* Makefile.in: replace use of .Nx in bmake.1 with NetBSD
2130	  since some systems cannot cope with .Nx <version>
2131
21322011-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
2133
2134	* Makefile.in (MAKE_VERSION): bump version to 20111111
2135	  Merge with NetBSD make, pick up
2136	  o debug output for .PARSEDIR and .PARSEFILE
2137
21382011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2139
2140	* Makefile.in (MAKE_VERSION):  bump version to 20111010
2141
21422011-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
2143
2144	* boot-strap: check for an expected file in the dirs we look for.
2145	* make-bootstrap.sh: pass on LDSTATIC
2146
21472011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
2148
2149	* Makefile.in (MAKE_VERSION): bump version to 20111001
2150	  Merge with NetBSD make, pick up
2151	  o ensure .PREFIX is set for .PHONY
2152	    and .TARGET set for .PHONY run via .END
2153	  o __dead used consistently
2154
21552011-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2156
2157	* Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
2158
21592011-09-05  Simon J. Gerraty  <sjg@bad.crufty.net>
2160
2161	* Makefile.in (MAKE_VERSION): bump version to 20110905
2162	  Merge with NetBSD make, pick up
2163	  o meta_oodate: ignore makeDependfile
2164
21652011-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
2166
2167	* Makefile.in (MAKE_VERSION): bump version to 20110828
2168	  Merge with NetBSD make, pick up
2169	  o silent=yes in .MAKE.MODE causes meta mode to mark targets
2170	    as SILENT if a .meta file is created
2171
21722011-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
2173
2174	* Makefile.in (MAKE_VERSION): bump version to 20110818
2175	  Merge with NetBSD make, pick up
2176	  o in meta mode, if target flagged .META a missing .meta file
2177	    means target is out-of-date
2178	  o fixes for gcc 4.5 warnings
2179	  o simplify job printing code
2180
21812011-08-09  Simon J. Gerraty  <sjg@bad.crufty.net>
2182
2183	* Makefile.in (MAKE_VERSION): bump version to 20110808
2184	  Merge with NetBSD make, pick up
2185	  o do not touch OP_SPECIAL targets when doing make -t
2186
21872011-06-22  Simon J. Gerraty  <sjg@bad.crufty.net>
2188
2189	* Makefile.in (MAKE_VERSION): bump version to 20110622
2190	  Merge with NetBSD make, pick up
2191	  o meta_oodate detect corrupted .meta file and declare oodate.
2192	* configure.in: add check for setsid
2193
21942011-06-07  Simon J. Gerraty  <sjg@bad.crufty.net>
2195
2196	* Merge with NetBSD make, pick up
2197	  o unit-tests/modts now works on MirBSD
2198
21992011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2200
2201	* Makefile.in (MAKE_VERSION): bump version to 20110606
2202	  Merge with NetBSD make, pick up
2203	  o ApplyModifiers: when we parse a variable which is not
2204	    the entire modifier string, or not followed by ':', do not
2205	    consider it as containing modifiers.
2206	  o loadfile: ensure newline at end of mapped file.
2207
22082011-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
2209
2210	* Makefile.in (MAKE_VERSION): bump version to 20110505
2211	  Merge with NetBSD make, pick up
2212	  o .MAKE.META.BAILIWICK - list of prefixes which define the scope
2213	    of make's control.  In meta mode, any generated file within
2214	    said bailiwick, which  is found to be missing, causes current
2215	    target to be out-of-date.
2216
22172011-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
2218
2219	* Makefile.in (MAKE_VERSION): bump version to 20110411
2220	  Merge with NetBSD make, pick up
2221	  o when long modifiers fail to match, check sysV style.
2222	    - add a test case
2223
22242011-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2225
2226	* Makefile.in (MAKE_VERSION): bump version to 20110410
2227	  Merge with NetBSD make, pick up
2228	  o :hash - cheap 32bit hash of value
2229	  o :localtime, :gmtime - use value as format string for strftime.
2230
22312011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
2232
2233	* Makefile.in (MAKE_VERSION): bump version to 20110330
2234	  mostly because its a cooler version.
2235	  Merge with NetBSD make, pick up
2236	  o NetBSD tags for meta.[ch]
2237	  o job.c call meta_job_finish() after meta_job_error().
2238	  o meta_job_error() should call meta_job_finish() to ensure
2239	    .meta file is closed, and safe to copy - if .ERROR target wants.
2240	   meta_job_finish() is safe to call repeatedly.
2241
22422011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
2243
2244	* unit-tests/modts: use printf if it is a builtin,
2245	  to save us from MirBSD
2246
2247	* Makefile.in (MAKE_VERSION): bump version to 20110329
2248	  Merge with NetBSD make, pick up
2249	  o fix for use after free() in CondDoExists().
2250	  o meta_oodate() report extra commands and return earlier.
2251
22522011-03-27  Simon J. Gerraty  <sjg@bad.crufty.net>
2253
2254	* Makefile.in (MAKE_VERSION): bump version to 20110327
2255	  Merge with NetBSD make, pick up
2256	  o meta.c, if .MAKE.MODE contains curdirOk=yes
2257	    allow creating .meta files in .CURDIR
2258	* boot-strap (TOOL_DIFF): aparently at least on linux distro
2259	  formats the output of 'type' differently - so eat any "()"
2260
22612011-03-06  Simon J. Gerraty  <sjg@bad.crufty.net>
2262
2263	* Makefile.in (MAKE_VERSION): bump version to 20110306
2264	  Merge with NetBSD make, pick up
2265	  o meta.c, only do getcwd() once
2266
22672011-03-05  Simon J. Gerraty  <sjg@bad.crufty.net>
2268
2269	* Makefile.in (MAKE_VERSION): bump version to 20110305
2270	  Merge with NetBSD make, pick up
2271	  o correct sysV substitution handling of empty lhs and variable
2272	  o correct exists() check for dir with trailing /
2273	  o correct handling of modifiers for non-existant variables
2274	    during evaluation of conditionals.
2275	  o ensure MAP_FILE is defined.
2276	  o meta.c use curdir[] now exported by main.c
2277
22782011-02-25  Simon J. Gerraty  <sjg@bad.crufty.net>
2279
2280	* Makefile.in (MAKE_VERSION): bump version to 20110225
2281	  Merge with NetBSD make, pick up
2282	  o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
2283	    makefiles have been read.
2284	  o fix example of :? modifier in man page.
2285
22862011-02-13  Simon J. Gerraty  <sjg@bad.crufty.net>
2287
2288	* Makefile.in (MAKE_VERSION): bump version to 20110214
2289	  Merge with NetBSD make, pick up
2290	  o meta.c handle realpath() failing when generating meta file
2291	    name.
2292
2293	* sigcompat.c: convert to ansi so we can use higher warning levels.
2294
2295
22962011-02-07  Simon J. Gerraty  <sjg@bad.crufty.net>
2297
2298	* Makefile.in (MAKE_VERSION): bump version to 20110207
2299	  Merge with NetBSD make, pick up
2300	  o fix for bug in meta mode.
2301
23022011-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
2303
2304	* parse.c: SunOS 5.8 at least does not have MAP_FILE
2305
23062011-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
2307
2308	* Makefile.in (MAKE_VERSION): bump version to 20110101
2309	  Merge with NetBSD make, pick up
2310	  o use mmap(2) if available, for reading makefiles
2311
23122010-12-15  Simon J. Gerraty  <sjg@bad.crufty.net>
2313
2314	* Makefile.in (MAKE_VERSION): bump version to 20101215
2315	  Merge with NetBSD make, pick up
2316	  o ensure meta_job_error() does not report a previous .meta file
2317	    as being culprit.
2318
23192010-12-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2320
2321	* Makefile.in (MAKE_VERSION): bump version to 20101210
2322	  Merge with NetBSD make, pick up
2323	  o meta_oodate: track cwd per process, and only consider target
2324	    out-of-date if missing file is outside make's CWD.
2325	    Ignore files in /tmp/ etc.
2326	  o to ensure unit-tests results match, need to control LC_ALL
2327	    as well as LANG.
2328	  o fix for parsing bug in var.c
2329
23302010-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
2331
2332	* Makefile.in (MAKE_VERSION): bump version to 20101126
2333	  Merge with NetBSD make, pick up
2334	  o if stale dependency is an IMPSRC, search via .PATH
2335	  o meta_oodate: if a referenced file is missing, target is
2336	    out-of-date.
2337	  o meta_oodate: if a target uses .OODATE in its commands,
2338	    it (.OODATE) needs to be recomputed.
2339	  o keep a pointer to youngest child node, rather than just its
2340	    mtime.
2341
23422010-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
2343
2344	* Makefile.in (MAKE_VERSION): bump version to 20101101
2345
23462010-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
2347
2348	* machine.sh: like os.sh,
2349	allow for uname -p producing useless drivel
2350
23512010-09-13  Simon J. Gerraty  <sjg@bad.crufty.net>
2352
2353	* boot-strap: document configure knobs for meta and filemon.
2354
2355	* Makefile.in (MAKE_VERSION): bump version to 20100911
2356	  Merge with NetBSD make, pick up
2357	  o meta.c - meta mode
2358
2359	* make-bootstrap.sh.in: handle meta.c
2360	* configure.in: add knobs for use_meta and filemon_h
2361	  also, look for dirname, str[e]sep and strlcpy
2362	* util.c: add simple err[x] and warn[x]
2363
23642010-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
2365
2366	* boot-strap (TOOL_DIFF): set this to ensure tests use
2367	  the same version of diff that configure tested
2368
2369	* Makefile.in (MAKE_VERSION): bump version to 20100808
2370	  Merge with NetBSD make, pick up
2371	  o in jobs mode, when we discover we cannot make something,
2372	    call PrintOnError before exit.
2373
23742010-08-06  Simon J. Gerraty  <sjg@bad.crufty.net>
2375
2376	* Makefile.in (MAKE_VERSION): bump version to 20100806
2377	  Merge with NetBSD make, pick up
2378	  o formatting fixes for ignored errors
2379	  o ensure jobs are cleaned up regardless of where wait() was called.
2380
23812010-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
2382
2383	* Makefile.in (MAKE_VERSION): bump version to 20100618
2384	* os.sh (MACHINE_ARCH): watch out for drivel from uname -p
2385
23862010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
2387
2388	* Makefile.in (MAKE_VERSION): bump version to 20100616
2389	  Merge with NetBSD make, pick up
2390	  o man page update
2391	  o call PrintOnError from JobFinish when we detect an error we
2392	    are not ignoring.
2393
23942010-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
2395
2396	* Makefile.in (MAKE_VERSION): bump version to 20100606
2397	  Merge with NetBSD make, pick up
2398	  o man page update
2399
24002010-06-05  Simon J. Gerraty  <sjg@bad.crufty.net>
2401
2402	* Makefile.in (MAKE_VERSION): bump version to 20100605
2403	  Merge with NetBSD make, pick up
2404	  o use bmake_signal() which is a wrapper around sigaction()
2405	    in place of signal()
2406	  o add .export-env to allow exporting variables to environment
2407	    without tracking (so no re-export when the internal value is
2408	    changed).
2409
24102010-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
2411
2412	* Makefile.in (MAKE_VERSION): bump version to 20100524
2413	  Merge with NetBSD make, pick up
2414	  o fix for .info et al being greedy.
2415
24162010-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
2417
2418	* Makefile.in (MAKE_VERSION): bump version to 20100520
2419	  Merge with NetBSD make, pick up
2420	  o back to using realpath on argv[0]
2421	    but only if contains '/' and does not start with '/'.
2422
24232010-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2424
2425	* boot-strap: use absolute path for bmake when running tests.
2426
2427	* Makefile.in (MAKE_VERSION):  bump version to 20100510
2428	  Merge with NetBSD make, pick up
2429	  o revert use of realpath on argv[0]
2430	    too many corner cases.
2431	  o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
2432
24332010-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
2434
2435	* Makefile.in (MAKE_VERSION): bump version to 20100505
2436	  Merge with NetBSD make, pick up
2437	  o fix for missed SIGCHLD when compiled with SunPRO
2438	    actually for bmake, defining FORCE_POSIX_SIGNALS would have
2439	    done the job.
2440
24412010-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
2442
2443	* Makefile.in (MAKE_VERSION): bump version to 20100430
2444	  Merge with NetBSD make, pick up
2445	  o fflush stdout before writing to stdout
2446
24472010-04-23  Simon J. Gerraty  <sjg@bad.crufty.net>
2448
2449	* Makefile.in (MAKE_VERSION): bump version to 20100423
2450	  Merge with NetBSD make, pick up
2451	  o updated unit tests for Haiku (this time for sure).
2452	* boot-strap: based on patch from joerg
2453	  honor --with-default-sys-path better.
2454	* boot-strap: remove mention of --with-prefix-sys-path
2455
24562010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
2457
2458	* Makefile.in (MAKE_VERSION): bump version to 20100422
2459	* Merge with NetBSD make, pick up
2460	  o fix for vfork() on Darwin.
2461	  o fix for bogus $TMPDIR.
2462	  o set .MAKE.MODE=compat for -B
2463	  o set .MAKE.JOBS=max_jobs for -j max_jobs
2464	  o allow unit-tests to run without any *.mk
2465	  o unit-tests/modmisc be more conservative in dirs presumed to exist.
2466	* boot-strap: ignore /usr/share/mk except on NetBSD.
2467	* unit-tests/Makefile.in: set LANG=C when running unit-tests to
2468	  ensure sort(1) behaves as expected.
2469
24702010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
2471
2472	* boot-strap: add FindHereOrAbove so we can use -m .../mk
2473
24742010-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
2475
2476	* Makefile.in (MAKE_VERSION): bump version to 20100420
2477	* Merge with NetBSD make, pick up
2478	  o fix for variable realpath() behavior.
2479	    we have to stat(2) the result to be sure.
2480	  o fix for .export (all) when nested vars use :sh
2481
24822010-04-14  Simon J. Gerraty  <sjg@bad.crufty.net>
2483
2484	* Makefile.in (MAKE_VERSION): bump version to 20100414
2485	* Merge with NetBSD make, pick up
2486	  o use realpath to resolve argv[0] (for .MAKE) if needed.
2487	  o add realpath from libc.
2488	  o add :tA to resolve variable via realpath(3) if possible.
2489
24902010-04-08  Simon J. Gerraty  <sjg@bad.crufty.net>
2491
2492	* Makefile.in (MAKE_VERSION): bump version to 20100408
2493	* Merge with NetBSD make, pick up
2494	  o unit tests for .ERROR, .error
2495	  o fix for .ERROR to ensure it cannot be default target.
2496
24972010-04-06  Simon J. Gerraty  <sjg@bad.crufty.net>
2498
2499	* Makefile.in (MAKE_VERSION): bump version to 20100406
2500	* Merge with NetBSD make, pick up
2501	  o fix for compat mode "Error code" going to debug_file.
2502	  o fix for .ALLSRC being populated twice.
2503	  o support for .info, .warning and .error directives
2504	  o .MAKE.MODE to control make's operational mode
2505	  o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
2506	    name(s).
2507	  o .MAKE.DEPENDFILE to control the name of the depend file
2508	  o .ERROR target - run on failure.
2509
25102010-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
2511
2512	* make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
2513
2514	* os.sh,arch.c: patch for Haiku from joerg at netbsd
2515
25162010-03-17  Simon J. Gerraty  <sjg@bad.crufty.net>
2517
2518	* Makefile.in (MAKE_VERSION): bump version to 20100222
2519	* Merge with NetBSD make, pick up
2520	  o better error msg for .for with mutiple inter vars
2521
2522	* boot-strap:
2523	  o use make-bootstrap.sh from joerg at netbsd
2524	    to avoid the need for a native make when bootstrapping.
2525	  o add "" everywhere ;-)
2526	  o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
2527	    otherwise the pre-formated version.
2528
25292010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2530
2531	* Makefile.in (MAKE_VERSION): bump version to 20100102
2532	* Merge with NetBSD make, pick up:
2533	  o fix for -m .../
2534
25352009-11-18  Simon J. Gerraty  <sjg@void.crufty.net>
2536
2537	* Makefile.in (MAKE_VERSION): bump version to 20091118
2538	* Merge with NetBSD make, pick up:
2539	  o .unexport
2540	  o report lines that start with '.' and should have ':'
2541	    (catch typo's of .el*if).
2542
25432009-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
2544
2545	* configure.in: Ensure that srcdir and mksrc are absolute paths.
2546
25472009-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
2548
2549	* Makefile.in (MAKE_VERSION): fix version to 20091007
2550
25512009-10-07  Simon J. Gerraty  <sjg@void.crufty.net>
2552
2553	* Makefile.in (MAKE_VERSION): bump version to 200910007
2554	* Merge with NetBSD make, pick up:
2555	  o fix for parsing of :S;...;...; applied to .for loop iterator
2556	    appearing in a dependency line.
2557
25582009-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
2559
2560	* Makefile.in (MAKE_VERSION): bump version to 20090909
2561	* Merge with NetBSD make, pick up:
2562	  o fix for -C, .CURDIR and .OBJDIR
2563	* boot-strap:
2564	  o allow share_dir to be set independent of prefix.
2565	  o select default share_dir better when prefix ends in $HOST_TARGET
2566	  o if FORCE_BSD_MK etc were set, include them in the suggested
2567	    install-mk command.
2568
25692009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
2570
2571	* Makefile.in (MAKE_VERSION): bump version to 20090908
2572	* Merge with NetBSD make, pick up:
2573	  o .MAKE.LEVEL for recursion tracking
2574	  o fix for :M scanning \:
2575
25762009-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
2577
2578	* configure.in: Don't -D__EXTENSIONS__ if
2579	AC_USE_SYSTEM_EXTENSIONS says "no".
2580
25812009-08-26  Simon J. Gerraty  <sjg@void.crufty.net>
2582
2583	* Makefile.in (MAKE_VERSION): bump version to 20090826
2584	Simplify MAKE_VERSION to just the bare date.
2585	* Merge with NetBSD make, pick up:
2586	  o -C directory support.
2587	  o support for SIGINFO
2588	  o use $TMPDIR for temp files.
2589	  o child of vfork should be careful about modifying parent's state.
2590
2591
25922009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
2593
2594	* Appy some patches for MiNT from David Brownlee
2595
25962009-02-26  Simon J. Gerraty  <sjg@void.crufty.net>
2597
2598	* Makefile.in (BMAKE_VERSION): bump version to 20090222
2599	* Merge with NetBSD make, pick up:
2600	  o Possible null pointer de-ref in Var_Set.
2601
26022009-02-08  Simon J. Gerraty  <sjg@void.crufty.net>
2603
2604	* Makefile.in (BMAKE_VERSION): bump version to 20090204
2605	* Merge with NetBSD make, pick up:
2606	  o bmake_malloc et al moved to their own .c
2607	  o Count both () and {} when looking for the end of a :M pattern
2608	  o Change 'Buffer' so that it is the actual struct, not a pointer to it.
2609	  o strlist.c - functions for processing extendable arrays of pointers to strings.
2610	  o ClientData replaced with void *, so const void * can be used.
2611	  o New debug flag C for DEBUG_CWD
2612
26132008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
2614
2615	* Makefile.in (BMAKE_VERSION): bump version to 20081111
2616	  Apply patch from Joerg Sonnenberge to
2617	  configure.in:
2618	  o remove some redundant checks
2619	  o check for emlloc etc only in libutil and require the whole family.
2620	  util.c:
2621	  o remove [v]asprintf which is no longer used.
2622
26232008-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
2624
2625	* Makefile.in (BMAKE_VERSION): bump version to 20081101
2626	* Merge with NetBSD make, pick up:
2627	  o util.c: avoid use of putenv() - christos
2628
26292008-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
2630
2631	* Makefile.in (BMAKE_VERSION): bump version to 20081030
2632	  pick up man page tweaks.
2633
26342008-10-29  Simon J. Gerraty  <sjg@void.crufty.net>
2635
2636	* Makefile.in: move processing of LIBOBJS to after is definition!
2637	  thus we'll have getenv.c in SRCS only if needed.
2638
2639	* make.1: add examples of how to use :?
2640
2641	* Makefile.in (BMAKE_VERSION): bump version to 20081029
2642	* Merge with NetBSD make, pick up:
2643	  o fix for .END processing with -j
2644	  o segfault from Parse_Error when no makefile is open
2645	  o handle numeric expressions in any variable expansion
2646	  o debug output now defaults to stderr, -dF to change it - apb
2647	  o make now uses bmake_malloc etc so that it can build natively
2648	    on A/UX - wasn't an issue for bmake, but we want to keep in sync.
2649
26502008-09-27  Simon J. Gerraty  <sjg@void.crufty.net>
2651
2652	* Makefile.in (BMAKE_VERSION): bump version to 20080808
2653	* Merge with NetBSD make, pick up:
2654	  o fix for PR/38840: Pierre Pronchery: make crashes while parsing
2655	    long lines in Makefiles
2656	  o optimizations for VarQuote by joerg
2657	  o fix for PR/38756: dominik: make dumps core on invalid makefile
2658
26592008-05-15  Simon J. Gerraty  <sjg@void.crufty.net>
2660
2661	* Makefile.in (BMAKE_VERSION): bump version to 20080515
2662	* Merge with NetBSD make, pick up:
2663	  o fix skip setting vars in VAR_GLOBAL context, to handle
2664	    cases where VAR_CMD is used for other than command line vars.
2665
26662008-05-14  Simon J. Gerraty  <sjg@void.crufty.net>
2667
2668	* boot-strap (make_version): we may need to look in
2669	$prefix/share/mk for sys.mk
2670
2671	* Makefile.in (BMAKE_VERSION): bump version to 20080514
2672	* Merge with NetBSD make, pick up:
2673	  o skip setting vars in VAR_GLOBAL context, when already set in
2674	  VAR_CMD which takes precedence.
2675
26762008-03-30  Simon J. Gerraty  <sjg@void.crufty.net>
2677
2678	* Makefile.in (BMAKE_VERSION):  bump version to 20080330
2679	* Merge with NetBSD make, pick up:
2680	  o fix for ?= when LHS contains variable reference.
2681
26822008-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
2683
2684	* merge some patches from NetBSD pkgsrc.
2685
2686	* makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
2687	the MAKSYSPATH used during bootstrap.
2688
2689	* Makefile.in (BMAKE_VERSION): bump version to 20080215
2690	* Merge with NetBSD make, pick up:
2691	  o warn if non-space chars follow 'empty' in a conditional.
2692
26932008-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
2694
2695	* Makefile.in (BMAKE_VERSION): bump version to 20080118
2696	* Merge with NetBSD make, pick up:
2697	  o consider dependencies read from .depend as optional - dsl
2698	  o remember when buffer for reading makefile grows - dsl
2699	  o add -dl (aka LOUD) - David O'Brien
2700
27012007-10-22  Simon J. Gerraty  <sjg@void.crufty.net>
2702
2703	* Makefile.in (BMAKE_VERSION): bump version to 20071022
2704	* Merge with NetBSD make, pick up:
2705	  o Allow .PATH<suffix> to be used for .include ""
2706
2707	* boot-strap: source default settings from .bmake-boot-strap.rc
2708
27092007-10-16  Simon J. Gerraty  <sjg@void.crufty.net>
2710
2711	* Makefile.in: fix maninstall on various systems
2712	  provided that our man.mk is used.
2713	  For non-BSD systems we install the preformatted page
2714	  into $MANDIR/cat1
2715
27162007-10-15  Simon J. Gerraty  <sjg@void.crufty.net>
2717
2718	* boot-strap: make bmake.1 too, so maninstall works.
2719
27202007-10-14  Simon J. Gerraty  <sjg@void.crufty.net>
2721
2722	* Makefile.in (BMAKE_VERSION): bump version to 20071014
2723	* Merge with NetBSD make, pick up:
2724	  o revamped handling of defshell - configure no longer needs to
2725	    know the content of the shells array - apb
2726	  o stop Var_Subst modifying its input - apb
2727	  o avoid calling ParseTrackInput too often - dsl
2728
27292007-10-11  Simon J. Gerraty  <sjg@void.crufty.net>
2730
2731	* Makefile.in (BMAKE_VERSION): bump version to 20071011
2732	* Merge with NetBSD make, pick up:
2733	  o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
2734
2735	* sigcompat.c: some tweaks for HP-UX 11.x based on
2736	  patch from Tobias Nygren
2737
2738	* configure.in: update handling of --with-defshell to match
2739	  new make behavior.  --with-defshell=/usr/xpg4/bin/sh
2740	  will now do what one might hope - provided the chosen shell
2741	  behaves enough like sh.
2742
27432007-10-08  Simon J. Gerraty  <sjg@void.crufty.net>
2744
2745	* Makefile.in (BMAKE_VERSION): bump to 20071008
2746	* Merge with NetBSD make, pick up:
2747	  o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
2748	  o .export/.MAKE.EXPORTED - export of variables - sjg
2749	  o .MAKE.MAKEFILES - track all makefiles read - sjg
2750	  o performance improvements - dsl
2751	  o revamp parallel job scheduling - dsl
2752
27532006-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
2754
2755	* Makefile.in (BMAKE_VERSION): bump to 20060728
2756	* Merge with NetBSD make, pick up:
2757	  o extra debug info during variable and cond processing - sjg
2758	  o shell definition now covers newline - rillig
2759	  o minor mem leak in PrintOnError - sjg
2760
27612006-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
2762
2763	* Makefile.in (BMAKE_VERSION):  bump to 20060511
2764	* Merge with NetBSD make, pick up:
2765	  o more memory leaks - coverity
2766	  o possible overflow in ArchFindMember - coverity
2767	  o extract variable modifier code out of Var_Parse()
2768	    so it can be called recursively - sjg
2769	  o unit-tests/moderrs - sjg
2770
27712006-04-12  Simon J. Gerraty  <sjg@void.crufty.net>
2772
2773	* Makefile.in (BMAKE_VERSION): bump to 20060412
2774	* Merge with NetBSD make, pick up:
2775	  o fixes for some memory leaks - coverity
2776	  o only read first sys.mk etc when searching sysIncPath - sjg
2777
2778	* main.c (ReadMakefile): remove hack for __INTERIX that prevented
2779	setting ${MAKEFILE} - OBATA Akio
2780
27812006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
2782
2783	* Makefile.in (BMAKE_VERSION): bump to 20060318
2784	* Merge with NetBSD make, pick up:
2785	  o cleanup of job.c to remove remote handling, distcc is more
2786	    useful and this code was likely bit-rotting - dsl
2787	  o fix for :P modifier - sjg
2788	* boot-strap: set default prefix to something reasonable
2789	  (for me anyway).
2790
27912006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
2792
2793	* Makefile.in (BMAKE_VERSION): bump to 20060301
2794	* Merge with NetBSD make, pick up:
2795	  o make .WAIT apply recursively, document and test case - apb
2796	  o allow variable modifiers in a variable appear anywhere in
2797	    modifier list, document and test case - sjg
2798
27992006-02-22  Simon J. Gerraty  <sjg@void.crufty.net>
2800
2801	* Makefile.in (BMAKE_VERSION): bump to 20060222
2802	* Merge with NetBSD make, pick up:
2803	  o improved job token handling - dsl
2804	  o SIG_DFL the correct signal before exec - dsl
2805	  o more debug info during parsing - dsl
2806	  o allow variable modifiers to be specified via variable - sjg
2807	* boot-strap: explain why we died if no mksrc
2808
28092005-11-05  Simon J. Gerraty  <sjg@void.crufty.net>
2810
2811	* Makefile.in (BMAKE_VERSION): bump to 20051105
2812	* configure.in: always set default_sys_path
2813	  default is ${prefix}/share/mk
2814	  - remove prefix_sys_path, anyone wanting more than above
2815	    needs to set it manually.
2816
28172005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
2818
2819	* boot-strap: make this a bit easier for pkgsrc folk.
2820	  bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
2821	  'mips' while pkgsrc wants 'mipseb' or 'mipsel'
2822
28232005-11-02  Simon J. Gerraty  <sjg@void.crufty.net>
2824
2825	* Makefile.in (BMAKE_VERSION): bump to 20051102
2826	* job.c (JobFinish): fix likely ancient merge lossage
2827	fix from Todd Vierling.
2828	* boot-strap (srcdir): allow setting mksrc=none
2829
28302005-10-31  Simon J. Gerraty  <sjg@void.crufty.net>
2831
2832	* Makefile.in (BMAKE_VERSION): bump to 20051031
2833	* ranlib.h: skip on OSF too.
2834	  (NetBSD PR 31864)
2835
28362005-10-10  Simon J. Gerraty  <sjg@void.crufty.net>
2837
2838	* Makefile.in (BMAKE_VERSION): bump to 20051002
2839	  fix a silly typo
2840
28412005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
2842
2843	* Makefile.in (BMAKE_VERSION): bump to 20051001
2844	  support for UnixWare and some other systems,
2845	  based on patches from pkgsrc/bootstrap
2846
28472005-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
2848
2849	* Makefile.in (BMAKE_VERSION): bump to 20050901
2850	* Merge with NetBSD make, pick up:
2851	  o possible parse error causing us to wander off.
2852
28532005-06-06  Simon J. Gerraty  <sjg@void.crufty.net>
2854
2855	* Makefile.in (BMAKE_VERSION): bump to 20050606
2856	* Merge with NetBSD make, pick up:
2857	  o :0x modifier for randomizing a list
2858	  o fixes for a number of -Wuninitialized issues.
2859
28602005-05-30  Simon J. Gerraty  <sjg@void.crufty.net>
2861
2862	* Makefile.in (BMAKE_VERSION): bump to 20050530
2863	* Merge with NetBSD make, pick up:
2864	  o Handle dependencies for .BEGIN, .END and .INTERRUPT
2865
2866	* README: was seriously out of date.
2867
28682005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
2869
2870	* Important to use .MAKE rather than MAKE.
2871
28722005-03-15  Simon J. Gerraty  <sjg@void.crufty.net>
2873
2874	* Makefile.in (BMAKE_VERSION): bump to 20050315
2875	* Merge with NetBSD make, pick up:
2876	  o don't mistake .elsefoo for .else
2877	  o use suffix-specific search path correctly
2878	  o bunch of style nits
2879
28802004-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
2881
2882	* boot-strap:
2883	o ensure that args to --src and --with-mksrc
2884	  are resolved before giving them to configure.
2885	o add -o "objdir" so that builder can control it,
2886	  default is $OS as determined by os.sh
2887	o add -q to suppress all the install instructions.
2888
28892004-05-08  Simon J. Gerraty  <sjg@void.crufty.net>
2890
2891	* Remove __IDSTRING()
2892
2893	* Makefile.in (BMAKE_VERSION): bump to 20040508
2894	* Merge with NetBSD make, pick up:
2895	  o posix fixes
2896	    - remove '-e' from compat mode
2897	    - add support for '+' command-line prefix.
2898	  o fix for handling '--' on command-line.
2899	  o fix include in lst.lib/lstInt.h to simplify '-I's
2900	  o we also picked up replacement of MAKE_BOOTSTRAP
2901	    with !MAKE_NATIVE which is a noop, but possibly confusing.
2902
29032004-04-14  Simon J. Gerraty  <sjg@void.crufty.net>
2904
2905	* Makefile.in (BMAKE_VERSION): bump to 20040414
2906	* Merge with NetBSD make, pick up:
2907	  o allow quoted strings on lhs of conditionals
2908	  o issue warning when extra .else is seen
2909	  o print line numer when errors encountered during parsing from
2910	  string.
2911
29122004-02-20  Simon J. Gerraty  <sjg@void.crufty.net>
2913
2914	* Makefile.in (BMAKE_VERSION):  bump to 20040220
2915	* Merge with NetBSD make, pick up:
2916	  o fix for old :M parsing bug.
2917	  o re-jigged unit-tests
2918
29192004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
2920
2921	* Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
2922	so that './bmake -f Makefile test' works.
2923
29242004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
2925
2926	* Makefile.in: (BMAKE_VERSION): bump to 20040214
2927	* Merge with NetBSD make, pick up:
2928	  o search upwards for *.mk
2929	  o fix for double free of var substitution buffers
2930	  o use of getopt replaced with custom code, since the usage
2931	  (re-scanning) isn't posix compatible.
2932
29332004-02-12  Simon J. Gerraty  <sjg@void.crufty.net>
2934
2935	* arch.c: don't include ranlib.h on ELF systems
2936	(thanks to Chuck Cranor <chuck@ece.cmu.edu>).
2937
29382004-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
2939
2940	* Makefile.in (BMAKE_VERSION): bump to 20040118
2941
2942	* boot-strap (while): export vars we assign to on cmdline
2943	* unit-test/Makefile.in: ternary is .PHONY
2944
29452004-01-08  Simon J. Gerraty  <sjg@void.crufty.net>
2946
2947	* Makefile.in (BMAKE_VERSION): bump version to 20040108
2948	* Merge with NetBSD make, pick up:
2949	  o fix for ternary modifier
2950
29512004-01-06  Simon J. Gerraty  <sjg@void.crufty.net>
2952
2953	* Makefile.in (BMAKE_VERSION): bump version to 20040105
2954	* Merge with NetBSD make, pick up:
2955	  o fix for cond.c to handle compound expressions better
2956	  o variable expansion within sysV style replacements
2957
29582003-12-22  Simon J. Gerraty  <sjg@void.crufty.net>
2959
2960	* Make portable snprintf safer - output to /dev/null first to
2961	check space needed.
2962
2963	* Makefile.in (BMAKE_VERSION): bump version to 20031222
2964	* Merge with NetBSD make, pick up:
2965	  o -dg3 to show input graph when things go wrong.
2966	  o explicitly look for makefiles in objdir if not found in curdir so
2967	    that errors in .depend etc will be reported accurarely.
2968	  o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
2969	    instead as it more accurately reflects the expected behavior and
2970	    is more consistently implemented.
2971	  o avoid use of asprintf.
2972
29732003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
2974
2975	* util.c: Add asprintf and vasprintf.
2976
2977	* Makefile.in (BMAKE_VERSION): bump version to 20030928
2978	* Merge with NetBSD make, pick up:
2979	:[] modifier - allows picking words from a variable.
2980	:tW modifier - allows treating value as one big word.
2981	W flag for :C and :S - allows treating value as one big word.
2982
29832003-09-12  Simon J. Gerraty  <sjg@void.crufty.net>
2984
2985	* Merge with NetBSD make
2986	pick up -de flag to enable printing failed command.
2987	don't skip 1st two dir entries (normally . and ..) since
2988	coda does not have them.
2989
29902003-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
2991
2992	* Makefile.in (BMAKE_VERSION): bump version to 20030909
2993	* Merge with NetBSD make, pick up:
2994	- changes for -V '${VAR}' to print fully expanded value
2995	  cf. -V VAR
2996	- CompatRunCommand now prints the command that failed.
2997	- several files got updated 3 clause Berkeley license.
2998
29992003-08-02  Simon J. Gerraty  <sjg@void.crufty.net>
3000
3001	* boot-strap: Allow setting configure args on command line.
3002
30032003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
3004
3005	* configure.in: add --with-defshell to allow sh or ksh
3006	to be selected as default shell.
3007
3008	* Makefile.in: bump version to 20030731
3009
3010	* Merge with NetBSD make
3011	Pick up .SHELL spec for ksh and associate man page changes.
3012	Also compat mode now uses the same shell specs.
3013
30142003-07-29  Simon J. Gerraty  <sjg@void.crufty.net>
3015
3016	* var.c (Var_Parse): ensure delim is initialized.
3017
3018	* unit-tests/Makefile.in: use single quotes to avoid problems from
3019	some shells.
3020
3021	* makefile.boot.in:
3022	Run the unit-tests as part of the bootstrap procedure.
3023
30242003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
3025
3026	* unit-tests/Makefile.in: always force complaints from
3027	${TEST_MAKE} to be from 'make'.
3028
3029	* configure.in: add check for 'diff -u'
3030	also fix some old autoconf'isms
3031
3032	* Makefile.in (BMAKE_VERSION): bump version to 20030728.
3033	if using GCC add -Wno-cast-qual to CFLAGS for var.o
3034
3035	* Merge with NetBSD make
3036	Pick up fix for :ts parsing error in some cases.
3037	Pick unit-tests.
3038
30392003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
3040
3041	* Makefile.in (BMAKE_VERSION): bump version to 20030723.
3042
3043	* var.c (Var_Parse): fix bug in :ts modifier, after const
3044	correctness fixes, must pass nstr to VarModify.
3045
30462003-07-14  Simon J. Gerraty  <sjg@void.crufty.net>
3047
3048	* Makefile.in: BMAKE_VERSION switch to a date based version.
3049	We'll generally use the date of last import from NetBSD.
3050
3051	* Merge with NetBSD make
3052	Pick up fixes for const-correctness, now passes WARNS=3 on
3053	NetBSD.
3054	Pick up :ts modifier, allows controlling the separator used
3055	between words in variable expansion.
3056
30572003-07-11  Simon J. Gerraty  <sjg@void.crufty.net>
3058
3059	* FILES: include boot-strap and os.sh
3060
3061	* Makefile.in: only set WARNS if we are NetBSD, the effect on
3062	FreeBSD is known to be bad.
3063
3064	* makefile.boot.in (bootstrap): make this the default target.
3065
3066	* Makefile.in: bump version to 3.1.19
3067
3068	* machine.sh: avoid A-Z with tr as it is bound to lose.
3069
30702003-07-10  Simon J. Gerraty  <sjg@void.crufty.net>
3071
3072	* Merge with NetBSD make
3073	Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
3074	Plus some doc fixes.
3075
30762003-04-27  Simon J. Gerraty  <sjg@void.crufty.net>
3077
3078	* Merge with NetBSD make
3079	Pick up fix for PR/1523 - don't count a library as built, if there
3080	is no way to build it
3081
3082	* Bump version to 3.1.18
3083
30842003-03-23  Simon J. Gerraty  <sjg@void.crufty.net>
3085
3086	* Merge with NetBSD make
3087	Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
3088	appears in src list.
3089
30902003-03-21  Simon J. Gerraty  <sjg@void.crufty.net>
3091
3092	* Merge with NetBSD make (mmm 10th anniversary!)
3093	pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
3094	pick up -X which tells us to not export VAR=val via setenv if
3095	we are already doing so via MAKEFLAGS.  This saves valuable env
3096	space on systems like Darwin.
3097	set MAKE_VERSION to 3.1.17
3098
3099	* parse.c: pix up fix for suffix rules
3100
31012003-03-06  Simon J. Gerraty  <sjg@void.crufty.net>
3102
3103	* Merge with NetBSD make.
3104	pick up fix for propagating -B via MAKEFLAGS.
3105	set MAKE_VERSION to 3.1.16
3106
3107	* Apply some patches from pkgsrc-bootstrap/bmake
3108	Originally by Grant Beattie <grant@netbsd.org>
3109	I may have missed some - since they are based on bmake-3.1.12
3110
31112002-12-03  Simon J. Gerraty  <sjg@void.crufty.net>
3112
3113	* makefile.boot.in (bmake): update install targets for those that
3114	use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
3115	havoc from gmake -w.  Thanks to Harlan Stenn <hstenn@cisco.com>.
3116
3117	* bmake.cat1: update the pre-formatted man page!
3118
31192002-11-30  Simon J. Gerraty  <sjg@void.crufty.net>
3120
3121	* Merge with NetBSD make.
3122	pick up fix for premature free of pointer used in call
3123	to Dir_InitCur().
3124	set MAKE_VERSION to 3.1.15
3125
31262002-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
3127
3128	* configure.in: determine suitable value for MKSRC.
3129	override using --with-mksrc=PATH.
3130
3131	* machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
3132	configs(8) will use 'sun4' as an alias for 'sparc'.
3133
31342002-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
3135
3136	* Merge with NetBSD make.
3137	pick up ${.PATH}
3138	pick up fix for finding ../cat.c via .PATH when .CURDIR=..
3139	set MAKE_VERSION to 3.1.14
3140	add configure checks for killpg and sys/socket.h
3141
31422002-09-16  Simon J. Gerraty  <sjg@void.crufty.net>
3143
3144	* tag bmake-3-1-13
3145
3146	* makefile.boot.in (bmake): use install-mk
3147	Also setup ./mk before trying to invoke bmake.boot incase we
3148	needed install-mk to create a sys.mk for us.
3149
3150	* configure.in: If we need to add -I${srcdir}/missing, make it an
3151	absolute path so that it works for lst.lib too.
3152
3153	* make.h: always include sys/cdefs.h since we provide one if the
3154	host does not.
3155
3156	* Makefile.in (install-mk):
3157	use MKSRC/install-mk which will do the right thing.
3158	use uname -p for ARCH if possible.
3159	since install-mk will setup links bsd.prog.mk -> prog.mk if
3160	needed, just .include bsd.prog.mk
3161
3162	* Merge with NetBSD make (NetBSD-1.6)
3163	Code is ansi-C only now.
3164	Bug in handling of dotLast is fixed.
3165	Can now assign .OBJDIR and make will reset its notions of life.
3166	New modifiers :tu :tl for toUpper and toLower.
3167
3168Tue Oct 16 12:18:42 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
3169
3170	* Merge with NetBSD make
3171	pick up fix for .END failure in compat mode.
3172	pick up fix for extra va_end() in ParseVErrorInternal.
3173
3174Thu Oct 11 13:20:06 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
3175
3176	* configure.in: for systems that have sys/cdefs.h check if it is
3177	compatible.  If not, include the one under missing, but tell it to
3178	include the native one too - necessary on Linux.
3179
3180	* missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
3181	include_next (for gcc) to get the native sys/cdefs.h
3182
3183Tue Aug 21 02:29:34 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3184
3185	* job.c (JobFinish): Fix an earlier merge bug that resulted in
3186	leaking descriptors when using -jN.
3187
3188	* job.c (JobPrintCommand): See if "curdir" exists before
3189	attempting to chdir().  Doing the chdir directly in make (when in
3190	compat mode) fails silently, so let the -jN version do the same.
3191	This can happen when building kernels in an object tree and
3192	playing clever games to reset .CURDIR.
3193
3194	* Merged with NetBSD make
3195	pick up .USEBEFORE
3196
3197Tue Jun 26 23:45:11 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3198
3199	* makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
3200
3201Tue Jun 12 16:48:57 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3202
3203	* var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
3204	us not to export the iterator variable when using VAR_CMD context.
3205
3206Sun Jun 10 21:55:21 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3207
3208	* job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
3209	its the wrong "fix".
3210
3211Sat Jun  9 00:11:24 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3212
3213	* Redesigned export of VAR_CMD's via MAKEFLAGS.
3214	We now simply append the variable names to .MAKEOVERRIDES, and
3215	handle duplicate suppression and quoting in ExportMAKEFLAGS using:
3216	${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
3217	Apart from fixing quoting bugs in previous version, this allows us
3218	to export vars to the environment by simply doing:
3219	.MAKEOVERRIDES+= PATH
3220	Merged again with NetBSD make, but the above is the only change.
3221
3222	* configure.in: added
3223	--disable-pwd-override		disable $PWD overriding getcwd()
3224	--disable-check-make-chdir	disable make trying to guess
3225		when it should automatically cd ${.CURDIR}
3226
3227	* Merge with NetBSD make, changes include:
3228	parse.c (ParseDoDependency): Spot that the syntax error is
3229	caused by an unresolved cvs/rcs conflict and say so.
3230	var.c: most of Var* functions now take a ctxt as 1st arg.
3231	now does variable substituion on rhs of sysv style modifiers.
3232
3233	* var.c (Var_Set): exporting of command line variables (VAR_CMD)
3234	is now done here.  We append the name='value' to .MAKEOVERRIDES
3235	rather than directly into MAKEFLAGS as this allows a Makefile to
3236	use .MAKEOVERRIDES= to disable this behaviour.  GNU make uses a
3237	very similar mechanism.  Note that in adding name='value' to
3238	.MAKEOVERRIDES we do the moral equivalent of:
3239	.MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
3240
3241Fri Jun  1 14:08:02 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3242
3243	* make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
3244
3245	* Merged with NetBSD make
3246	make -dx can now be used to run commands via sh -x
3247	better error messages on exec failures.
3248
3249Thu May 31 01:44:54 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3250
3251	* Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
3252	MAKE_VERSION gets updated.  Also don't use ?= for MAKE_VERSION,
3253	MACHINE etc otherwise they propagate from the previous bmake.
3254
3255	* configure.in (machine): allow --with-machine=generic to make
3256	configure use machine.sh to set MACHINE.
3257
3258	* job.c (JobInterrupt): convert to using WAIT_T and friends.
3259
3260	* Makefile.in: mention in bmake.1 that we use autoconf.
3261
3262	* make.1: mention MAKE_PRINT_VAR_ON_ERROR.
3263
3264Wed May 30 23:17:18 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3265
3266	* main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
3267	as that rather defeats the usefulness of ${MAKEFILE}.
3268
3269	* main.c (MainParseArgs): append command line variable assignments
3270	to MAKEFLAGS so that they get propagated to child make's.
3271	Apparently this is required POSIX behaviour?  Its useful anyway.
3272
3273Tue May 29 02:20:07 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3274
3275	* compat.c (CompatRunCommand): don't use perror() since stdio may
3276	cause problems in child of vfork().
3277
3278	* compat.c, main.c: Call PrintOnError() when we are going to bail.
3279	This routine prints out the .curdir where we stopped and will also
3280	display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
3281
3282	* main.c: add ${.newline} to hold a "\n" - sometimes handy in
3283	:@ expansion.
3284
3285	* var.c: VarLoopExpand: ignore addSpace if a \n is present.
3286
3287	* Added RCSid's for the files we've touched.
3288
3289Thu May 24 15:41:37 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3290
3291	* configure.in:	Thanks to some clues from mdb@juniper.net,
3292	added autoconf magic to control setting of MACHINE, MACHINE_ARCH
3293	as well as what ends up in _PATH_DEFSYSPATH.  We now have:
3294
3295  --with-machine=MACHINE  explicitly set MACHINE
3296  --with-force-machine=MACHINE  set FORCE_MACHINE
3297  --with-machine_arch=MACHINE_ARCH  explicitly set MACHINE_ARCH
3298  --with-default-sys-path=PATH:DIR:LIST  use an explicit _PATH_DEFSYSPATH
3299  --with-prefix-sys-path=PATH:DIR:LIST  prefix _PATH_PREFIX_SYSPATH
3300  --with-path-objdirprefix=PATH  override _PATH_OBJDIRPREFIX
3301
3302	If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
3303
3304	* makefile: added a pathetically simple makefile to drive
3305	bootstrapping.  Running configure by hand is more useful.
3306
3307	* Makefile.in: added MAKE_VERSION, and reworked things to be less
3308	dependent on NetBSD bsd.*.mk
3309
3310	* pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
3311	_PATH_OBJDIRPREFIX for those that don't want a default.
3312	construct _PATH_DEFSYSPATH from the info we get from configure.
3313
3314	* main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
3315	if MAKE_VERSION is defined.
3316
3317	* compat.c: when we bail, print out the .CURDIR we were in.
3318
3319Sat May 12 00:34:12 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3320
3321	* Merged with NetBSD make
3322
3323	* var.c: fixed a bug in the handling of the modifier :P
3324	if the node as found but the path was null, we segfault trying to
3325	duplicate it.
3326
3327Mon Mar  5 16:20:33 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
3328
3329	* Merged with NetBSD make
3330
3331	* make.c: Make_OODate's test for a library out of date was using
3332	cmtime where it should have used mtime (my bug).
3333
3334	* compat.c: Use perror() to tell us what really went wrong when we
3335	cannot exec a command.
3336
3337Fri Dec 15 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
3338
3339	* Merged with NetBSD make
3340
3341Sat Jun 10 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
3342
3343	* Merged with NetBSD make
3344
3345Thu Jun  1 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
3346
3347	* Merged with NetBSD make
3348
3349Tue May 30 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
3350
3351	* Merged with NetBSD make
3352
3353Thu Apr 27 00:07:47 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
3354
3355	* util.c: don't provide signal() since we use sigcompat.c
3356
3357	* Makefile.in: added a build target.
3358
3359	* var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
3360	These allow some quite clever magic.
3361
3362	* main.c (main): added support for getenv(MAKESYSPATH).
3363
3364Mon Apr  2 16:25:13 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
3365
3366	* Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
3367	This avoids objdir having a different value depending on how a
3368	directory was reached (via command line, or subdir.mk).
3369
3370	* If FORCE_MACHINE is defined, ignore getenv("MACHINE").
3371
3372Mon Apr  2 23:15:31 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
3373
3374	* Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
3375	MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
3376	I've been testing this in NetBSD's make for some weeks.
3377
3378	* Turn Makefile into Makefile.in and make it useful.
3379
3380Tue Feb 29 22:08:00 2000 Simon J. Gerraty  <sjg@zen.quick.com.au>
3381
3382	* Imported NetBSD's -current make(1) and resolve conflicts.
3383
3384	* Applied autoconf patches from bmake v2
3385
3386	* Imported clean code base from NetBSD-1.0
3387