xref: /freebsd/contrib/bmake/ChangeLog (revision f56f82e0)
12017-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* Makefile (_MAKE_VERSION): 20170510
4	  Merge with NetBSD make, pick up
5	  o main.c: Main_SetObjdir: ensure buf2 is in scope
6
72017-05-08  Simon J. Gerraty  <sjg@bad.crufty.net>
8
9	* Makefile (_MAKE_VERSION): 20170505
10	  see mk/ChangeLog
11
122017-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
13
14	* parse.c: not everyone has stdint.h
15
162017-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
17
18	* Makefile (_MAKE_VERSION): 20170501
19	  see mk/ChangeLog
20
212017-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
22
23	* Makefile (_MAKE_VERSION): 20170421
24	  Merge with NetBSD make, pick up
25	  o str.c: Str_Match: fix closure tests for [^] and add unit-test.
26
272017-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
28
29	* Makefile (_MAKE_VERSION): 20170420
30	  Merge with NetBSD make, pick up
31	  o main.c: only use -C arg "as is" if it contains no
32	    relative component.
33
342017-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
35
36	* Makefile (_MAKE_VERSION): 20170418
37	  Merge with NetBSD make, pick up
38	  o main.c: fix Main_SetObjdir() for relative paths (eg obj).
39
402017-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
41
42	* Makefile (_MAKE_VERSION): 20170417
43	  Merge with NetBSD make, pick up
44	  o fixes a number of coverity complaints
45	    - check return value of fseek, fcntl
46	    - plug memory leak in Dir_FindFile, Var_LoopExpand,
47	      JobPrintCommand, ParseTraditionalInclude
48	    - use bmake_malloc() where NULL is not tollerated
49	    - use MAKE_ATTR_UNUSED rather that kludges like
50	      return(unused ? 0 : 0)
51	    - use purge_cached_realpaths() rather than abuse cached_realpath()
52
532017-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
54
55	* Makefile (_MAKE_VERSION): 20170413
56	  Merge with NetBSD make, pick up
57	  o main.c: when setting .OBJDIR ignore '$' in paths.
58
59	* job.c: use MALLOC_OPTIONS to set malloc_options.
60
612017-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
62
63	* Makefile (_MAKE_VERSION): 20170411
64	  Merge with NetBSD make, pick up
65	  o str.c: Str_Match: allow [^a-z] to behave as expected.
66
672017-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
68
69	* Makefile (_MAKE_VERSION): 20170326
70	  Merge with NetBSD make, pick up
71	  o main.c: purge relative paths from realpath cache when .OBJDIR
72	    is changed.
73
742017-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
75
76	* Makefile (_MAKE_VERSION): 20170311
77	  Merge with NetBSD make, pick up
78          o main.c: only use -C arg "as is" if it starts with '/'.
79
802017-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
81
82	* Makefile (_MAKE_VERSION): 20170301
83	  Merge with NetBSD make, pick up
84	  o main.c: use -C arg "as is" rather than getcwd()
85	    if they identify the same directory.
86	  o parse.c: ensure loadfile buffer is \n terminated in non-mmap case
87
882017-02-01  Simon J. Gerraty  <sjg@bad.crufty.net>
89
90	* Makefile (_MAKE_VERSION): 20170201
91	  Merge with NetBSD make, pick up
92	  o var.c: allow :_=var and avoid use of special context.
93
942017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>
95
96	* Makefile (_MAKE_VERSION): 20170130
97	  Merge with NetBSD make, pick up
98	  o var.c: add :range and :_
99	  o main.c: partially initialize Dir_* before MainParseArgs()
100	    can be called.
101	    If -V, skip Main_ExportMAKEFLAGS()
102
1032017-01-14  Simon J. Gerraty  <sjg@bad.crufty.net>
104
105	* Makefile (_MAKE_VERSION): 20170114
106	  Merge with NetBSD make, pick up
107	  o var.c: allow specifying the utc value used by :{gm,local}time
108
1092016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
110
111	* Makefile (_MAKE_VERSION): 20161212
112	  Merge with NetBSD make, pick up
113          o main.c: look for obj.${MACHINE}-${MACHINE_ARCH} too.
114
1152016-12-09  Simon J. Gerraty  <sjg@bad.crufty.net>
116
117	* Makefile (_MAKE_VERSION): 20161209
118	  Merge with NetBSD make, pick up
119	  o main.c: cleanup setting of .OBJDIR
120	  o parse.c: avoid coredump from (var)=val
121
1222016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
123
124	* Makefile (_MAKE_VERSION): 20161126
125	  Merge with NetBSD make, pick up
126	  o make.c: Make_OODate: report src node name if path not set
127
1282016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
129
130	* Makefile (_MAKE_VERSION): 20160926
131	  Merge with NetBSD make, pick up
132	  o support for .DELETE_ON_ERROR: (remove targets that fail)
133
1342016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
135
136	* Makefile MAN: tweak .Dt to match ${PROG}
137
1382016-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
139
140	* Makefile (_MAKE_VERSION): 20160818
141	  its a neater number; pick up whitespace fixes to man page.
142
1432016-08-17  Simon J. Gerraty  <sjg@bad.crufty.net>
144
145	* Makefile (_MAKE_VERSION): 20160817
146	  Merge with NetBSD make, pick up
147	  o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore()
148	    so we can call it before adding entries to missingFiles.
149	    Thus we do not track files we have been told to ignore.
150
1512016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>
152
153	* Makefile (_MAKE_VERSION): 20160815
154	  Merge with NetBSD make, pick up
155	  o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to
156	    pathnames, and skip if the expansion is empty.
157	    Useful for dirdeps.mk when checking DIRDEPS_CACHE.
158
1592016-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
160
161	* Makefile (_MAKE_VERSION): 20160812
162	  Merge with NetBSD make, pick up
163	  o meta.c: remove all missingFiles entries that match a deleted
164	    dir.
165	  o main.c: set .ERROR_CMD if possible.
166
1672016-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
168
169	* Makefile (_MAKE_VERSION): 20160606
170	  Merge with NetBSD make, pick up
171	  o dir.c: extend mtimes cache to others via cached_stat()
172
1732016-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
174
175	* Makefile (_MAKE_VERSION): 20160604
176	  Merge with NetBSD make, pick up
177	  o meta.c: missing filemon data is only relevant if we read a
178	    meta file.
179	    Also do not return oodate for a missing metafile if gn->path
180	    points to .CURDIR
181
1822016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
183
184	* Makefile (_MAKE_VERSION): 20160602
185	  Merge with NetBSD make, pick up
186	  o cached_realpath(): avoid hitting filesystem more than necessary.
187	  o meta.c: refactor need_meta decision, add knobs for
188	    missing meta file and filemon data wrt out-of-datedness.
189
1902016-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
191
192	* Makefile (_MAKE_VERSION): 20160528
193
194	* boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION
195
1962016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
197
198	* Makefile (_MAKE_VERSION): 20160512
199	  Merge with NetBSD make, pick up
200	  o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS
201	    this is useful for gcov builds.
202	  o propagate errors from filemon(4).
203
2042016-05-09  Simon J. Gerraty  <sjg@bad.crufty.net>
205
206	* Makefile (_MAKE_VERSION): 20160509
207	  Merge with NetBSD make, pick up
208	  o remove use of non-standard types u_int etc.
209	  o meta.c: apply realpath() before matching against metaIgnorePaths
210
2112016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>
212
213	* Makefile (_MAKE_VERSION): 20160404
214	  Merge with NetBSD make, pick up
215	  o allow makefile to set .MAKE.JOBS
216
217	* Makefile (PROG_NAME): use ${_MAKE_VERSION}
218
2192016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
220
221	* Makefile (_MAKE_VERSION): 20160315
222	  Merge with NetBSD make, pick up
223	  o fix handling of archive members
224
2252016-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
226
227	* Makefile (_MAKE_VERSION): rename variable to avoid interference
228	  with checks for ${MAKE_VERSION}
229
2302016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
231
232	* Makefile (MAKE_VERSION): 20160310
233	  Merge with NetBSD make, pick up
234	  o meta.c: treat missing Read file same as Write, incase we Delete it.
235
2362016-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
237
238	* Makefile (MAKE_VERSION): 20160307
239	  Merge with NetBSD make, pick up
240	  o var.c: fix :ts\nnn to be octal by default.
241	  o meta.c: meta_finish() to cleanup memory.
242
2432016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
244
245	* Makefile (MAKE_VERSION): 20160226
246	  Merge with NetBSD make, pick up
247	  o meta.c: allow meta file for makeDepend if makefiles want it.
248
2492016-02-19  Simon J. Gerraty  <sjg@bad.crufty.net>
250
251	* var.c: default .MAKE.SAVE_DOLLARS to FALSE
252	  for backwards compatability.
253
254	* Makefile (MAKE_VERSION): 20160220
255	  Merge with NetBSD make, pick up
256	  o var.c: add knob to control handling of '$$' in :=
257
2582016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
259
260	* Makefile (MAKE_VERSION): 20160218
261	  Merge with NetBSD make, pick up
262	  o var.c: add .export-literal allows us to fix sys.clean-env.mk
263	    post the changes to Var_Subst.
264	    Var_Subst now takes flags, and does not consume '$$' in :=
265
2662016-02-17  Simon J. Gerraty  <sjg@bad.crufty.net>
267
268	* Makefile (MAKE_VERSION): 20160217
269	  Merge with NetBSD make, pick up
270	  o var.c: preserve '$$' in :=
271	  o parse.c: add .dinclude for handling included
272	    makefile like .depend
273
2742015-12-20  Simon J. Gerraty  <sjg@bad.crufty.net>
275
276	* Makefile (MAKE_VERSION): 20151220
277	  Merge with NetBSD make, pick up
278	  o suff.c: re-initialize suffNull when clearing suffixes.
279
2802015-12-01  Simon J. Gerraty  <sjg@bad.crufty.net>
281
282	* Makefile (MAKE_VERSION): 20151201
283	  Merge with NetBSD make, pick up
284	  o cond.c: CondCvtArg: avoid access beyond end of empty buffer.
285	  o meta.c: meta_oodate: use lstat(2) for checking link target
286	    in case it is a symlink.
287	  o var.c: avoid calling brk_string and Var_Export1 with empty
288	    strings.
289
2902015-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
291
292	* Makefile (MAKE_VERSION): 20151126
293	  Merge with NetBSD make, pick up
294	  o parse.c: ParseTrackInput don't access beyond
295	    end of old value.
296
2972015-10-22  Simon J. Gerraty  <sjg@bad.crufty.net>
298
299	* Makefile (MAKE_VERSION): 20151022
300
301	* Add support for BSD/OS which lacks inttypes.h
302	  and really needs sys/param.h for sys/sysctl.h
303	  also 'type' is not a shell builtin.
304
305	* var.c: eliminate uint32_t and need for inttypes.h
306
307	* main.c: PrintOnError flush stdout before run .ERROR
308
309	* parse.c: cope with _SC_PAGESIZE not being defined.
310
311
3122015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
313
314	* Makefile (MAKE_VERSION): 20151020
315	  Merge with NetBSD make, pick up
316	  o var.c: fix uninitialized var
317
3182015-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
319
320	* var.c: the conditional expressions used with ':?' can be
321	expensive, if already discarding do not evaluate or expand
322	anything.
323
3242015-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
325
326	* Makefile (MAKE_VERSION): 20151010
327	  Merge with NetBSD make, pick up
328	  o Add Boolean wantit flag to Var_Subst and Var_Parse
329	    when FALSE we know we are discarding the result and can
330	    skip operations like Cmd_Exec.
331
3322015-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
333
334	* Makefile (MAKE_VERSION): 20151009
335	  Merge with NetBSD make, pick up
336	  o var.c: don't check for NULL before free()
337	  o meta.c: meta_oodate, do not hard code ignore of makeDependfile
338
3392015-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
340
341	* Makefile (MAKE_VERSION): 20150910
342	  Merge with NetBSD make, pick up
343	  o main.c: with -w print Enter/Leaving messages for objdir too
344	    if necessary.
345	  o centralize shell metachar handling
346
347	* FILES: add metachar.[ch]
348
3492015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
350
351	* Makefile (MAKE_VERSION): 20150606
352	  Merge with NetBSD make, pick up
353	  o make.1: document .OBJDIR target
354
3552015-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
356
357	* Makefile (MAKE_VERSION): 20150505
358	  Merge with NetBSD make, pick up
359	  o cond.c: be strict about lhs of comparison when evaluating .if
360	    but less so when called from variable expansion.
361	  o unit-tests/cond2.mk: test various error conditions
362
3632015-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
364
365	* machine.sh (MACHINE): Add Bitrig
366	  patch from joerg@netbsd.org
367
3682015-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
369
370	* Makefile (MAKE_VERSION): 20150418
371	  Merge with NetBSD make, pick up
372	  o job.c: use memmove() rather than memcpy()
373
374	* unit-tests/varshell.mk: SunOS cannot handle the TERMINATED_BY_SIGNAL
375	  case, so skip it.
376
3772015-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
378
379	* Makefile (MAKE_VERSION): 20150411
380	  bump version - only mk/ changes.
381
3822015-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
383
384	* Makefile (MAKE_VERSION): 20150410
385	  Merge with NetBSD make, pick up
386	  o document different handling of '-' in jobs mode vs compat
387	  o fix jobs mode so that '-' only applies to whole job
388	    when shell lacks hasErrCtl
389	  o meta.c: use separate vars to track lcwd and latestdir (read)
390	    per process
391
3922015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
393
394	* Makefile (MAKE_VERSION): 20150401
395	  Merge with NetBSD make, pick up
396	  o meta.c: close meta file in child
397
398	* Makefile: use BINDIR.bmake if set.
399	  Same for MANDIR and SHAREDIR
400	  Handy for testing release candidates
401	  in various environments.
402
4032015-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
404
405	* move initialization of savederr to block where it is used
406	  to avoid spurious warning from gcc5
407
4082014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
409
410	* Makefile (MAKE_VERSION): 20141111
411	  just a cooler number
412
4132014-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
414
415	* Makefile (MAKE_VERSION): 20141105
416	  Merge with NetBSD make, pick up
417	  o revert major overhaul of suffix handling
418	    and POSIX compliance - too much breakage
419	    and impossible to make backwards compatible.
420	  o we still have the new unit test structure which is ok.
421	  o meta.c ensure "-- filemon" is at start of line.
422
4232014-09-17  Simon J. Gerraty  <sjg@bad.crufty.net>
424
425	* configure.in: test that result of getconf PATH_MAX is numeric
426	  and discard if not.  Apparently needed for Hurd.
427
4282014-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
429
430	* Makefile (MAKE_VERSION): 20140830
431	  Merge with NetBSD make, pick up
432	  o major overhaul of suffix handling
433	  o improved POSIX compliance
434	  o overhauled unit-tests
435
4362014-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
437
438	* Makefile (MAKE_VERSION): 20140620
439	  Merge with NetBSD make, pick up
440	  o var.c return varNoError rather than var_Error for ::= modifiers.
441
4422014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
443
444	* Makefile (MAKE_VERSION): 20140522
445	  Merge with NetBSD make, pick up
446	  o var.c detect some parse errors.
447
4482014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
449
450	* Fix spelling errors - patch from Pedro Giffuni
451
4522014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
453
454	* Makefile (MAKE_VERSION): 20140214
455	  Merge with NetBSD make, pick up
456	  o .INCLUDEFROM*
457	  o use Var_Value to get MAKEOBJDIR[PREFIX]
458	  o reduced realloc'ign in brk_string.
459	* configure.in: add a check for compiler supporting __func__
460
4612014-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
462
463	* boot-strap: ignore mksrc=none
464
4652014-01-02  Simon J. Gerraty  <sjg@bad.crufty.net>
466
467	* Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk
468
4692014-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
470
471	* Makefile (MAKE_VERSION): 20140101
472	* configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024)
473	* Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max
474	* make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for
475	  Hurd)
476	* configure.in: Add AC_PREREQ and check for
477	  sysctl; patch from Andrew Shadura andrewsh at debian.org
478
4792013-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
480
481	* Makefile (MAKE_VERSION): 20131010
482	* lose the const from arg to systcl to avoid problems on older BSDs.
483
4842013-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
485
486	* Makefile (MAKE_VERSION): 20131001
487	  Merge with NetBSD make, pick up
488	  o main.c: for NATIVE build sysctl to get MACHINE_ARCH from
489	    hw.machine_arch if necessary.
490	  o meta.c: meta_oodate - need to look at src of Link and target
491	    of Move as well.
492	* main.c: check that CTL_HW and HW_MACHINE_ARCH exist.
493	  provide __arraycount() if needed.
494
4952013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
496
497	* Makefile (MAKE_VERSION): 20130904
498	  Merge with NetBSD make, pick up
499	  o Add VAR_INTERNAL context, so that internal setting of
500	    MAKEFILE does not override value set by makefiles.
501
5022013-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
503
504	* Makefile (MAKE_VERSION): 20130902
505	  Merge with NetBSD make, pick up
506	  o CompatRunCommand: only apply shellErrFlag when errCheck is true
507
5082013-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
509
510	* Makefile (MAKE_VERSION): 20130828
511	  Merge with NetBSD make, pick up
512	  o Fix VAR :sh = syntax from Will Andrews at freebsd.org
513	  o Call Job_SetPrefix() from Job_Init() so makefiles have
514	    opportunity to set .MAKE.JOB.PREFIX
515
5162013-07-30  Simon J. Gerraty  <sjg@bad.crufty.net>
517
518	* Makefile (MAKE_VERSION): 20130730
519	  Merge with NetBSD make, pick up
520	  o Allow suppression of --- job -- tokens by setting
521	    .MAKE.JOB.PREFIX empty.
522
5232013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
524
525	* Makefile (MAKE_VERSION): 20130716
526	  Merge with NetBSD make, pick up
527	  o number of gmake compatibility tweaks
528	    -w for gmake style entering/leaving messages
529	    if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc.
530	    handle MAKEFLAGS containing only letters.
531	  o when overriding a GLOBAL variable on the command line,
532	    delete it from GLOBAL context so -V doesn't show the wrong
533	    value.
534
5352013-07-06  Simon J. Gerraty  <sjg@bad.crufty.net>
536
537	* configure.in: We don't need MAKE_LEVEL_SAFE anymore.
538
539	* Makefile (MAKE_VERSION): 20130706
540	  Merge with NetBSD make, pick up
541	  o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is
542	    true so that CompatRunCommand() can use it, to ensure
543	    consistent behavior with jobs mode.
544	  o use MAKE_LEVEL_ENV to define the variable to propagate
545	    .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake).
546	  o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of
547	    paths to ignore.
548
5492013-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
550
551	* Makefile (MAKE_VERSION): 20130604
552	  Merge with NetBSD make, pick up
553	  o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's
554	    to avoid leaking descriptors.
555
5562013-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
557
558	* Makefile (MAKE_VERSION): 20130528
559	  Merge with NetBSD make, pick up
560	  o var.c: cleanup some left-overs in VarHash()
561
5622013-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
563
564	* Makefile (MAKE_VERSION): 20130520
565	  generate manifest from component FILES rather than have to
566	  update FILES when mk/FILES changes.
567
5682013-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
569
570	* Makefile (MAKE_VERSION): 20130518
571	  Merge with NetBSD make, pick up
572	  o suff.c: don't skip all processsing for .PHONY targets
573	    else wildcard srcs do not get expanded.
574	  o var.c: expand name of variable to delete if necessary.
575
5762013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
577
578	* Makefile (MAKE_VERSION): 20130330
579	  Merge with NetBSD make, pick up
580	  o meta.c: refine the handling of .OODATE in commands.
581	    Rather than suppress command comparison for the entire script
582	    as though .NOMETA_CMP had been used, only suppress it for the
583	    one command line.
584	    This allows something like ${.OODATE:M.NOMETA_CMP} to be used to
585	    suppress comparison of a command without otherwise affecting it.
586	  o make.1: document that
587
5882013-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
589
590	* Makefile (MAKE_VERSION): 20130321
591	  yes, not quite right but its a cooler number.
592	  Merge with NetBSD make, pick up
593	  o parse.c: fix ParseGmakeExport to be portable
594	    and add a unit-test.
595	* meta.c: call meta_init() before makefiles are read and if built
596	  with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON
597	  this let's makefiles test for support.
598	  Call meta_mode_init() to process .MAKE.MODE.
599
6002013-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
601
602	* Makefile (MAKE_VERSION): 20130305
603	  Merge with NetBSD make, pick up
604	  o run .STALE: target when a dependency from .depend is missing.
605	  o job.c: add Job_RunTarget() for the above and .BEGIN
606
6072013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
608
609	* Makefile (MAKE_VERSION): 20130303
610	  Merge with NetBSD make, pick up
611	  o main.c: set .MAKE.OS to utsname.sysname
612	  o job.c: more checks for read and poll errors
613	  o var.c: lose VarChangeCase() saves 4% time
614
6152013-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
616
617	* boot-strap: remove MAKEOBJDIRPREFIX from environment since we
618	  want to use MAKEOBJDIR
619
6202013-01-27  Simon J. Gerraty  <sjg@bad.crufty.net>
621
622	* Merge with NetBSD make, pick up
623	  o make.1: more info on how shell commands are handled.
624	  o job.c,main.c: detect write errors to job pipes.
625
6262013-01-25  Simon J. Gerraty  <sjg@bad.crufty.net>
627
628	* Makefile (MAKE_VERSION): 20130123
629	  Merge with NetBSD make, pick up
630	  o meta.c: if script uses .OODATE and meta_oodate() decides
631	    rebuild is needed, .OODATE will be empty - set it to .ALLSRC.
632	  o var.c: in debug output indicate which variabale modifiers
633	    apply to.
634	  o remove Check_Cwd logic the makefiles have been fixed.
635
6362012-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
637
638	* makefile.in: add a simple makefile for folk who insist on
639	  ./configure; make; make install
640	  it just runs boot-strap
641	* include mk/* to accommodate the above
642	* boot-strap:  re-work to accommodate the above
643	  mksrc defaults to $Mydir/mk
644	  allow op={configure,build,install,clean,all}
645	  add options to facilitate install
646	* Makefile.config.in: just the bits set by configure
647	* Makefile: bump version to 20121212
648	  abandon Makefile.in (NetBSD Makefile)
649	  leverage mk/* instead
650	* configure.in: ensure srcdir is absolute
651
6522012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
653
654	* Makefile.in (MAKE_VERSION): 20121111
655	  fix generation of bmake.cat1
656
6572012-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
658
659	* Makefile.in (MAKE_VERSION): 20121109
660	  Merge with NetBSD make, pick up
661	  o make.c: MakeBuildChild: return 0 so search continues if a
662	    .ORDER dependency is detected.
663	  o unit-tests/order: test the above
664
6652012-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
666
667	* Makefile.in (MAKE_VERSION): 20121102
668	  Merge with NetBSD make, pick up
669	  o cond.c: allow cond_state[] to grow.
670	    In meta mode with a very large tree, we can hit the limit
671	    while processing dirdeps.
672
6732012-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
674
675	* Makefile.in: we need to use ${srcdir} not ${.CURDIR}
676
6772012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
678
679	* Makefile.in (MAKE_VERSION): 20121010
680	  o protect syntax that only bmake parses correctly.
681	  o remove auto setting of FORCE_MACHINE, use configure's
682	    --with-force-machine=whatever if that is desired.
683
6842012-10-08  Simon J. Gerraty  <sjg@bad.crufty.net>
685
686	* Makefile.in: do not lose history from make.1 when generating bmake.1
687
6882012-10-07  Simon J. Gerraty  <sjg@bad.crufty.net>
689
690	* Makefile.in (MAKE_VERSION): 20121007
691	  Merge with NetBSD make, pick up
692	  o compat.c: ignore empty commands - same as jobs mode.
693	  o make.1: document meta chars that cause use of shell
694
6952012-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
696
697	* Makefile.in (MAKE_VERSION): bump version to 20120911
698	* bsd.after-import.mk: include Makefile.inc early and allow it to
699	  override PROG
700
7012012-08-31  Simon J. Gerraty  <sjg@bad.crufty.net>
702
703	* Makefile.in (MAKE_VERSION): bump version to 20120831
704	  Merge with NetBSD make, pick up
705	  o cast sizeof() to int for comparison
706	  o minor make.1 tweak
707
7082012-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
709
710	* Makefile.in (MAKE_VERSION): bump version to 20120830
711	  Merge with NetBSD make, pick up
712	  o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
713	  o debug flag -dV causes -V to show raw value regardless.
714
7152012-07-05  Simon J. Gerraty  <sjg@bad.crufty.net>
716
717	* bsd.after-import.mk (after-import): ensure unit-tests/Makefile
718	  gets SRCTOP set.
719
7202012-07-04  Simon J. Gerraty  <sjg@bad.crufty.net>
721
722	* Makefile.in (MAKE_VERSION): bump version to 20120704
723	  Merge with NetBSD make, pick up
724	  o Job_ParseShell should call Shell_Init if it has been
725	    previously called.
726	* Makefile.in: set USE_META based on configure result.
727	  also .PARSEDIR is safer indicator of bmake.
728
7292012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
730
731	* Makefile.in: bump version to 20120626
732	  ensure CPPFLAGS is in CFLAGS
733	* meta.c: avoid nested externs
734	* bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
735
7362012-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
737
738	* Makefile.in (MAKE_VERSION): bump version to 20120620
739	  Merge with NetBSD make, pick up
740	  o make_malloc.c: avoid including make_malloc.h again
741
742	* Makefile.in: avoid bmake only syntax or protect with
743	  .if defined(.MAKE.LEVEL)
744	* bsd.after-import.mk: replace .-include with .sinclude
745	  ensure? SRCTOP gets a value
746	* configure.in: look for filemon.h in /usr/include/dev/filemon first.
747
7482012-06-19  Simon J. Gerraty  <sjg@bad.crufty.net>
749
750	* Makefile.in (MAKE_VERSION): bump version to 20120612
751	  Merge with NetBSD make, pick up
752	  o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
753	    for greater portability.
754	  o unit-tests/forloop: check that .for works as expected wrt
755	    number of times and with "quoted strings".
756
7572012-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
758
759	* Makefile.in (MAKE_VERSION): bump version to 20120606
760	  Merge with NetBSD make, pick up
761	  o compat.c: use kill(2) rather than raise(3).
762	* configure.in: look for sys/dev/filemon
763	* bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
764	  and pass BOOTSTRAP_XTRAS to boot-strap.
765
7662012-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
767
768	* Makefile.in (MAKE_VERSION): bump version to 20120604
769	  Merge with NetBSD make, pick up
770	  o util.c and var.c share same var for tracking if environ
771	    has been reallocated.
772	  o util.c provide getenv with setenv.
773	* Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
774	  when the shell actively strips .MAKE.* from the environment.
775	  We still refer to the variable always as .MAKE.LEVEL
776	* util.c fix bug in findenv() was finding prefix of name.
777	* compat.c: re-raising SIGINT etc after running .INTERRUPT
778	  results in more reliable termination of all activity on many
779	  platforms.
780
7812012-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
782
783	* Makefile.in (MAKE_VERSION): bump version to 20120602
784	  Merge with NetBSD make, pick up
785	  o for.c: handle quoted items in .for list
786
7872012-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
788
789	* Makefile.in (MAKE_VERSION): bump version to 20120530
790	  Merge with NetBSD make, pick up
791	  o compat.c: ignore empty command.
792
7932012-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
794
795	* Makefile.in (MAKE_VERSION): bump version to 20120524
796	* FILES: add bsd.after-import.mk:
797	  A simple means of integrating bmake into a BSD build system.
798
7992012-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
800
801	* Makefile.in (MAKE_VERSION): bump version to 20120520
802	  Merge with NetBSD make, pick up
803	  o increased limit for nested conditionals.
804
8052012-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
806
807	* Makefile.in (MAKE_VERSION): bump version to 20120518
808	  Merge with NetBSD make, pick up
809	  o use _exit(2) in signal hanlder
810	  o Don't use the [dir] cache when building nodes that might have
811	    changed since the last exec.
812	  o Avoid nested extern declaration warnings.
813
8142012-04-27  Simon J. Gerraty  <sjg@bad.crufty.net>
815
816	* meta.c (fgetLine): avoid %z - not portable.
817	* parse.c: Since we moved include of sys/mman.h
818	  and def's of MAP_COPY etc. we got dups from a merge.
819
8202012-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
821
822	* Makefile.in (MAKE_VERSION): bump version to 20120420
823	  Merge with NetBSD make, pick up
824	  o restore duplicate supression in .MAKE.MAKEFILES
825	    runtime saving can be significant.
826	  o Var_Subst() uses Buf_DestroyCompact() to reduce memory
827	    consumption up to 20%.
828
8292012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
830
831	* Makefile.in (MAKE_VERSION): bump version to 20120420
832          Merge with NetBSD make, pick up
833	  o remove duplicate supression in .MAKE.MAKEFILES
834	  o improved dir cache behavior
835	  o gmake'ish export command
836
8372012-03-25  Simon J. Gerraty  <sjg@bad.crufty.net>
838
839	* Makefile.in (MAKE_VERSION): bump version to 20120325
840	  Merge with NetBSD make, pick up
841	  o fix parsing of :[#] in conditionals.
842
8432012-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
844
845	* Makefile.in: replace use of .Nx in bmake.1 with NetBSD
846	  since some systems cannot cope with .Nx <version>
847
8482011-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
849
850	* Makefile.in (MAKE_VERSION): bump version to 20111111
851	  Merge with NetBSD make, pick up
852	  o debug output for .PARSEDIR and .PARSEFILE
853
8542011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
855
856	* Makefile.in (MAKE_VERSION):  bump version to 20111010
857
8582011-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
859
860	* boot-strap: check for an expected file in the dirs we look for.
861	* make-bootstrap.sh: pass on LDSTATIC
862
8632011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
864
865	* Makefile.in (MAKE_VERSION): bump version to 20111001
866	  Merge with NetBSD make, pick up
867	  o ensure .PREFIX is set for .PHONY
868	    and .TARGET set for .PHONY run via .END
869	  o __dead used consistently
870
8712011-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
872
873	* Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
874
8752011-09-05  Simon J. Gerraty  <sjg@bad.crufty.net>
876
877	* Makefile.in (MAKE_VERSION): bump version to 20110905
878	  Merge with NetBSD make, pick up
879	  o meta_oodate: ignore makeDependfile
880
8812011-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
882
883	* Makefile.in (MAKE_VERSION): bump version to 20110828
884	  Merge with NetBSD make, pick up
885	  o silent=yes in .MAKE.MODE causes meta mode to mark targets
886	    as SILENT if a .meta file is created
887
8882011-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
889
890	* Makefile.in (MAKE_VERSION): bump version to 20110818
891	  Merge with NetBSD make, pick up
892	  o in meta mode, if target flagged .META a missing .meta file
893	    means target is out-of-date
894	  o fixes for gcc 4.5 warnings
895	  o simplify job printing code
896
8972011-08-09  Simon J. Gerraty  <sjg@bad.crufty.net>
898
899	* Makefile.in (MAKE_VERSION): bump version to 20110808
900	  Merge with NetBSD make, pick up
901	  o do not touch OP_SPECIAL targets when doing make -t
902
9032011-06-22  Simon J. Gerraty  <sjg@bad.crufty.net>
904
905	* Makefile.in (MAKE_VERSION): bump version to 20110622
906	  Merge with NetBSD make, pick up
907	  o meta_oodate detect corrupted .meta file and declare oodate.
908	* configure.in: add check for setsid
909
9102011-06-07  Simon J. Gerraty  <sjg@bad.crufty.net>
911
912	* Merge with NetBSD make, pick up
913	  o unit-tests/modts now works on MirBSD
914
9152011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
916
917	* Makefile.in (MAKE_VERSION): bump version to 20110606
918	  Merge with NetBSD make, pick up
919	  o ApplyModifiers: when we parse a variable which is not
920	    the entire modifier string, or not followed by ':', do not
921	    consider it as containing modifiers.
922	  o loadfile: ensure newline at end of mapped file.
923
9242011-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
925
926	* Makefile.in (MAKE_VERSION): bump version to 20110505
927	  Merge with NetBSD make, pick up
928	  o .MAKE.META.BAILIWICK - list of prefixes which define the scope
929	    of make's control.  In meta mode, any generated file within
930	    said bailiwick, which  is found to be missing, causes current
931	    target to be out-of-date.
932
9332011-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
934
935	* Makefile.in (MAKE_VERSION): bump version to 20110411
936	  Merge with NetBSD make, pick up
937	  o when long modifiers fail to match, check sysV style.
938	    - add a test case
939
9402011-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
941
942	* Makefile.in (MAKE_VERSION): bump version to 20110410
943	  Merge with NetBSD make, pick up
944	  o :hash - cheap 32bit hash of value
945	  o :localtime, :gmtime - use value as format string for strftime.
946
9472011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
948
949	* Makefile.in (MAKE_VERSION): bump version to 20110330
950	  mostly because its a cooler version.
951	  Merge with NetBSD make, pick up
952	  o NetBSD tags for meta.[ch]
953	  o job.c call meta_job_finish() after meta_job_error().
954	  o meta_job_error() should call meta_job_finish() to ensure
955	    .meta file is closed, and safe to copy - if .ERROR target wants.
956	   meta_job_finish() is safe to call repeatedly.
957
9582011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
959
960	* unit-tests/modts: use printf if it is a builtin,
961	  to save us from MirBSD
962
963	* Makefile.in (MAKE_VERSION): bump version to 20110329
964	  Merge with NetBSD make, pick up
965	  o fix for use after free() in CondDoExists().
966	  o meta_oodate() report extra commands and return earlier.
967
9682011-03-27  Simon J. Gerraty  <sjg@bad.crufty.net>
969
970	* Makefile.in (MAKE_VERSION): bump version to 20110327
971	  Merge with NetBSD make, pick up
972	  o meta.c, if .MAKE.MODE contains curdirOk=yes
973	    allow creating .meta files in .CURDIR
974	* boot-strap (TOOL_DIFF): aparently at least on linux distro
975	  formats the output of 'type' differently - so eat any "()"
976
9772011-03-06  Simon J. Gerraty  <sjg@bad.crufty.net>
978
979	* Makefile.in (MAKE_VERSION): bump version to 20110306
980	  Merge with NetBSD make, pick up
981	  o meta.c, only do getcwd() once
982
9832011-03-05  Simon J. Gerraty  <sjg@bad.crufty.net>
984
985	* Makefile.in (MAKE_VERSION): bump version to 20110305
986	  Merge with NetBSD make, pick up
987	  o correct sysV substitution handling of empty lhs and variable
988	  o correct exists() check for dir with trailing /
989	  o correct handling of modifiers for non-existant variables
990	    during evaluation of conditionals.
991	  o ensure MAP_FILE is defined.
992	  o meta.c use curdir[] now exported by main.c
993
9942011-02-25  Simon J. Gerraty  <sjg@bad.crufty.net>
995
996	* Makefile.in (MAKE_VERSION): bump version to 20110225
997	  Merge with NetBSD make, pick up
998	  o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
999	    makefiles have been read.
1000	  o fix example of :? modifier in man page.
1001
10022011-02-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1003
1004	* Makefile.in (MAKE_VERSION): bump version to 20110214
1005	  Merge with NetBSD make, pick up
1006	  o meta.c handle realpath() failing when generating meta file
1007	    name.
1008
1009	* sigcompat.c: convert to ansi so we can use higher warning levels.
1010
1011
10122011-02-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1013
1014	* Makefile.in (MAKE_VERSION): bump version to 20110207
1015	  Merge with NetBSD make, pick up
1016	  o fix for bug in meta mode.
1017
10182011-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1019
1020	* parse.c: SunOS 5.8 at least does not have MAP_FILE
1021
10222011-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1023
1024	* Makefile.in (MAKE_VERSION): bump version to 20110101
1025	  Merge with NetBSD make, pick up
1026	  o use mmap(2) if available, for reading makefiles
1027
10282010-12-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1029
1030	* Makefile.in (MAKE_VERSION): bump version to 20101215
1031	  Merge with NetBSD make, pick up
1032	  o ensure meta_job_error() does not report a previous .meta file
1033	    as being culprit.
1034
10352010-12-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1036
1037	* Makefile.in (MAKE_VERSION): bump version to 20101210
1038	  Merge with NetBSD make, pick up
1039	  o meta_oodate: track cwd per process, and only consider target
1040	    out-of-date if missing file is outside make's CWD.
1041	    Ignore files in /tmp/ etc.
1042	  o to ensure unit-tests results match, need to control LC_ALL
1043	    as well as LANG.
1044	  o fix for parsing bug in var.c
1045
10462010-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1047
1048	* Makefile.in (MAKE_VERSION): bump version to 20101126
1049	  Merge with NetBSD make, pick up
1050	  o if stale dependency is an IMPSRC, search via .PATH
1051	  o meta_oodate: if a referenced file is missing, target is
1052	    out-of-date.
1053	  o meta_oodate: if a target uses .OODATE in its commands,
1054	    it (.OODATE) needs to be recomputed.
1055	  o keep a pointer to youngest child node, rather than just its
1056	    mtime.
1057
10582010-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1059
1060	* Makefile.in (MAKE_VERSION): bump version to 20101101
1061
10622010-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1063
1064	* machine.sh: like os.sh,
1065	allow for uname -p producing useless drivel
1066
10672010-09-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1068
1069	* boot-strap: document configure knobs for meta and filemon.
1070
1071	* Makefile.in (MAKE_VERSION): bump version to 20100911
1072	  Merge with NetBSD make, pick up
1073	  o meta.c - meta mode
1074
1075	* make-bootstrap.sh.in: handle meta.c
1076	* configure.in: add knobs for use_meta and filemon_h
1077	  also, look for dirname, str[e]sep and strlcpy
1078	* util.c: add simple err[x] and warn[x]
1079
10802010-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1081
1082	* boot-strap (TOOL_DIFF): set this to ensure tests use
1083	  the same version of diff that configure tested
1084
1085	* Makefile.in (MAKE_VERSION): bump version to 20100808
1086	  Merge with NetBSD make, pick up
1087	  o in jobs mode, when we discover we cannot make something,
1088	    call PrintOnError before exit.
1089
10902010-08-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1091
1092	* Makefile.in (MAKE_VERSION): bump version to 20100806
1093	  Merge with NetBSD make, pick up
1094	  o formatting fixes for ignored errors
1095	  o ensure jobs are cleaned up regardless of where wait() was called.
1096
10972010-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1098
1099	* Makefile.in (MAKE_VERSION): bump version to 20100618
1100	* os.sh (MACHINE_ARCH): watch out for drivel from uname -p
1101
11022010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1103
1104	* Makefile.in (MAKE_VERSION): bump version to 20100616
1105	  Merge with NetBSD make, pick up
1106	  o man page update
1107	  o call PrintOnError from JobFinish when we detect an error we
1108	    are not ignoring.
1109
11102010-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1111
1112	* Makefile.in (MAKE_VERSION): bump version to 20100606
1113	  Merge with NetBSD make, pick up
1114	  o man page update
1115
11162010-06-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1117
1118	* Makefile.in (MAKE_VERSION): bump version to 20100605
1119	  Merge with NetBSD make, pick up
1120	  o use bmake_signal() which is a wrapper around sigaction()
1121	    in place of signal()
1122	  o add .export-env to allow exporting variables to environment
1123	    without tracking (so no re-export when the internal value is
1124	    changed).
1125
11262010-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1127
1128	* Makefile.in (MAKE_VERSION): bump version to 20100524
1129	  Merge with NetBSD make, pick up
1130	  o fix for .info et al being greedy.
1131
11322010-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1133
1134	* Makefile.in (MAKE_VERSION): bump version to 20100520
1135	  Merge with NetBSD make, pick up
1136	  o back to using realpath on argv[0]
1137	    but only if contains '/' and does not start with '/'.
1138
11392010-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1140
1141	* boot-strap: use absolute path for bmake when running tests.
1142
1143	* Makefile.in (MAKE_VERSION):  bump version to 20100510
1144	  Merge with NetBSD make, pick up
1145	  o revert use of realpath on argv[0]
1146	    too many corner cases.
1147	  o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
1148
11492010-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1150
1151	* Makefile.in (MAKE_VERSION): bump version to 20100505
1152	  Merge with NetBSD make, pick up
1153	  o fix for missed SIGCHLD when compiled with SunPRO
1154	    actually for bmake, defining FORCE_POSIX_SIGNALS would have
1155	    done the job.
1156
11572010-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1158
1159	* Makefile.in (MAKE_VERSION): bump version to 20100430
1160	  Merge with NetBSD make, pick up
1161	  o fflush stdout before writing to stdout
1162
11632010-04-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1164
1165	* Makefile.in (MAKE_VERSION): bump version to 20100423
1166	  Merge with NetBSD make, pick up
1167	  o updated unit tests for Haiku (this time for sure).
1168	* boot-strap: based on patch from joerg
1169	  honor --with-default-sys-path better.
1170	* boot-strap: remove mention of --with-prefix-sys-path
1171
11722010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1173
1174	* Makefile.in (MAKE_VERSION): bump version to 20100422
1175	* Merge with NetBSD make, pick up
1176	  o fix for vfork() on Darwin.
1177	  o fix for bogus $TMPDIR.
1178	  o set .MAKE.MODE=compat for -B
1179	  o set .MAKE.JOBS=max_jobs for -j max_jobs
1180	  o allow unit-tests to run without any *.mk
1181	  o unit-tests/modmisc be more conservative in dirs presumed to exist.
1182	* boot-strap: ignore /usr/share/mk except on NetBSD.
1183	* unit-tests/Makefile.in: set LANG=C when running unit-tests to
1184	  ensure sort(1) behaves as expected.
1185
11862010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1187
1188	* boot-strap: add FindHereOrAbove so we can use -m .../mk
1189
11902010-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1191
1192	* Makefile.in (MAKE_VERSION): bump version to 20100420
1193	* Merge with NetBSD make, pick up
1194	  o fix for variable realpath() behavior.
1195	    we have to stat(2) the result to be sure.
1196	  o fix for .export (all) when nested vars use :sh
1197
11982010-04-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1199
1200	* Makefile.in (MAKE_VERSION): bump version to 20100414
1201	* Merge with NetBSD make, pick up
1202	  o use realpath to resolve argv[0] (for .MAKE) if needed.
1203	  o add realpath from libc.
1204	  o add :tA to resolve variable via realpath(3) if possible.
1205
12062010-04-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1207
1208	* Makefile.in (MAKE_VERSION): bump version to 20100408
1209	* Merge with NetBSD make, pick up
1210	  o unit tests for .ERROR, .error
1211	  o fix for .ERROR to ensure it cannot be default target.
1212
12132010-04-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1214
1215	* Makefile.in (MAKE_VERSION): bump version to 20100406
1216	* Merge with NetBSD make, pick up
1217	  o fix for compat mode "Error code" going to debug_file.
1218	  o fix for .ALLSRC being populated twice.
1219	  o support for .info, .warning and .error directives
1220	  o .MAKE.MODE to control make's operational mode
1221	  o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
1222	    name(s).
1223	  o .MAKE.DEPENDFILE to control the name of the depend file
1224	  o .ERROR target - run on failure.
1225
12262010-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1227
1228	* make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
1229
1230	* os.sh,arch.c: patch for Haiku from joerg at netbsd
1231
12322010-03-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1233
1234	* Makefile.in (MAKE_VERSION): bump version to 20100222
1235	* Merge with NetBSD make, pick up
1236	  o better error msg for .for with mutiple inter vars
1237
1238	* boot-strap:
1239	  o use make-bootstrap.sh from joerg at netbsd
1240	    to avoid the need for a native make when bootstrapping.
1241	  o add "" everywhere ;-)
1242	  o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
1243	    otherwise the pre-formated version.
1244
12452010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1246
1247	* Makefile.in (MAKE_VERSION): bump version to 20100102
1248	* Merge with NetBSD make, pick up:
1249	  o fix for -m .../
1250
12512009-11-18  Simon J. Gerraty  <sjg@void.crufty.net>
1252
1253	* Makefile.in (MAKE_VERSION): bump version to 20091118
1254	* Merge with NetBSD make, pick up:
1255	  o .unexport
1256	  o report lines that start with '.' and should have ':'
1257	    (catch typo's of .el*if).
1258
12592009-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
1260
1261	* configure.in: Ensure that srcdir and mksrc are absolute paths.
1262
12632009-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1264
1265	* Makefile.in (MAKE_VERSION): fix version to 20091007
1266
12672009-10-07  Simon J. Gerraty  <sjg@void.crufty.net>
1268
1269	* Makefile.in (MAKE_VERSION): bump version to 200910007
1270	* Merge with NetBSD make, pick up:
1271	  o fix for parsing of :S;...;...; applied to .for loop iterator
1272	    appearing in a dependency line.
1273
12742009-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1275
1276	* Makefile.in (MAKE_VERSION): bump version to 20090909
1277	* Merge with NetBSD make, pick up:
1278	  o fix for -C, .CURDIR and .OBJDIR
1279	* boot-strap:
1280	  o allow share_dir to be set independent of prefix.
1281	  o select default share_dir better when prefix ends in $HOST_TARGET
1282	  o if FORCE_BSD_MK etc were set, include them in the suggested
1283	    install-mk command.
1284
12852009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
1286
1287	* Makefile.in (MAKE_VERSION): bump version to 20090908
1288	* Merge with NetBSD make, pick up:
1289	  o .MAKE.LEVEL for recursion tracking
1290	  o fix for :M scanning \:
1291
12922009-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1293
1294	* configure.in: Don't -D__EXTENSIONS__ if
1295	AC_USE_SYSTEM_EXTENSIONS says "no".
1296
12972009-08-26  Simon J. Gerraty  <sjg@void.crufty.net>
1298
1299	* Makefile.in (MAKE_VERSION): bump version to 20090826
1300	Simplify MAKE_VERSION to just the bare date.
1301	* Merge with NetBSD make, pick up:
1302	  o -C directory support.
1303	  o support for SIGINFO
1304	  o use $TMPDIR for temp files.
1305	  o child of vfork should be careful about modifying parent's state.
1306
1307
13082009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
1309
1310	* Appy some patches for MiNT from David Brownlee
1311
13122009-02-26  Simon J. Gerraty  <sjg@void.crufty.net>
1313
1314	* Makefile.in (BMAKE_VERSION): bump version to 20090222
1315	* Merge with NetBSD make, pick up:
1316	  o Possible null pointer de-ref in Var_Set.
1317
13182009-02-08  Simon J. Gerraty  <sjg@void.crufty.net>
1319
1320	* Makefile.in (BMAKE_VERSION): bump version to 20090204
1321	* Merge with NetBSD make, pick up:
1322	  o bmake_malloc et al moved to their own .c
1323	  o Count both () and {} when looking for the end of a :M pattern
1324	  o Change 'Buffer' so that it is the actual struct, not a pointer to it.
1325	  o strlist.c - functions for processing extendable arrays of pointers to strings.
1326	  o ClientData replaced with void *, so const void * can be used.
1327	  o New debug flag C for DEBUG_CWD
1328
13292008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
1330
1331	* Makefile.in (BMAKE_VERSION): bump version to 20081111
1332	  Apply patch from Joerg Sonnenberge to
1333	  configure.in:
1334	  o remove some redundant checks
1335	  o check for emlloc etc only in libutil and require the whole family.
1336	  util.c:
1337	  o remove [v]asprintf which is no longer used.
1338
13392008-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1340
1341	* Makefile.in (BMAKE_VERSION): bump version to 20081101
1342	* Merge with NetBSD make, pick up:
1343	  o util.c: avoid use of putenv() - christos
1344
13452008-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
1346
1347	* Makefile.in (BMAKE_VERSION): bump version to 20081030
1348	  pick up man page tweaks.
1349
13502008-10-29  Simon J. Gerraty  <sjg@void.crufty.net>
1351
1352	* Makefile.in: move processing of LIBOBJS to after is definition!
1353	  thus we'll have getenv.c in SRCS only if needed.
1354
1355	* make.1: add examples of how to use :?
1356
1357	* Makefile.in (BMAKE_VERSION): bump version to 20081029
1358	* Merge with NetBSD make, pick up:
1359	  o fix for .END processing with -j
1360	  o segfault from Parse_Error when no makefile is open
1361	  o handle numeric expressions in any variable expansion
1362	  o debug output now defaults to stderr, -dF to change it - apb
1363	  o make now uses bmake_malloc etc so that it can build natively
1364	    on A/UX - wasn't an issue for bmake, but we want to keep in sync.
1365
13662008-09-27  Simon J. Gerraty  <sjg@void.crufty.net>
1367
1368	* Makefile.in (BMAKE_VERSION): bump version to 20080808
1369	* Merge with NetBSD make, pick up:
1370	  o fix for PR/38840: Pierre Pronchery: make crashes while parsing
1371	    long lines in Makefiles
1372	  o optimizations for VarQuote by joerg
1373	  o fix for PR/38756: dominik: make dumps core on invalid makefile
1374
13752008-05-15  Simon J. Gerraty  <sjg@void.crufty.net>
1376
1377	* Makefile.in (BMAKE_VERSION): bump version to 20080515
1378	* Merge with NetBSD make, pick up:
1379	  o fix skip setting vars in VAR_GLOBAL context, to handle
1380	    cases where VAR_CMD is used for other than command line vars.
1381
13822008-05-14  Simon J. Gerraty  <sjg@void.crufty.net>
1383
1384	* boot-strap (make_version): we may need to look in
1385	$prefix/share/mk for sys.mk
1386
1387	* Makefile.in (BMAKE_VERSION): bump version to 20080514
1388	* Merge with NetBSD make, pick up:
1389	  o skip setting vars in VAR_GLOBAL context, when already set in
1390	  VAR_CMD which takes precedence.
1391
13922008-03-30  Simon J. Gerraty  <sjg@void.crufty.net>
1393
1394	* Makefile.in (BMAKE_VERSION):  bump version to 20080330
1395	* Merge with NetBSD make, pick up:
1396	  o fix for ?= when LHS contains variable reference.
1397
13982008-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1399
1400	* merge some patches from NetBSD pkgsrc.
1401
1402	* makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
1403	the MAKSYSPATH used during bootstrap.
1404
1405	* Makefile.in (BMAKE_VERSION): bump version to 20080215
1406	* Merge with NetBSD make, pick up:
1407	  o warn if non-space chars follow 'empty' in a conditional.
1408
14092008-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1410
1411	* Makefile.in (BMAKE_VERSION): bump version to 20080118
1412	* Merge with NetBSD make, pick up:
1413	  o consider dependencies read from .depend as optional - dsl
1414	  o remember when buffer for reading makefile grows - dsl
1415	  o add -dl (aka LOUD) - David O'Brien
1416
14172007-10-22  Simon J. Gerraty  <sjg@void.crufty.net>
1418
1419	* Makefile.in (BMAKE_VERSION): bump version to 20071022
1420	* Merge with NetBSD make, pick up:
1421	  o Allow .PATH<suffix> to be used for .include ""
1422
1423	* boot-strap: source default settings from .bmake-boot-strap.rc
1424
14252007-10-16  Simon J. Gerraty  <sjg@void.crufty.net>
1426
1427	* Makefile.in: fix maninstall on various systems
1428	  provided that our man.mk is used.
1429	  For non-BSD systems we install the preformatted page
1430	  into $MANDIR/cat1
1431
14322007-10-15  Simon J. Gerraty  <sjg@void.crufty.net>
1433
1434	* boot-strap: make bmake.1 too, so maninstall works.
1435
14362007-10-14  Simon J. Gerraty  <sjg@void.crufty.net>
1437
1438	* Makefile.in (BMAKE_VERSION): bump version to 20071014
1439	* Merge with NetBSD make, pick up:
1440	  o revamped handling of defshell - configure no longer needs to
1441	    know the content of the shells array - apb
1442	  o stop Var_Subst modifying its input - apb
1443	  o avoid calling ParseTrackInput too often - dsl
1444
14452007-10-11  Simon J. Gerraty  <sjg@void.crufty.net>
1446
1447	* Makefile.in (BMAKE_VERSION): bump version to 20071011
1448	* Merge with NetBSD make, pick up:
1449	  o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
1450
1451	* sigcompat.c: some tweaks for HP-UX 11.x based on
1452	  patch from Tobias Nygren
1453
1454	* configure.in: update handling of --with-defshell to match
1455	  new make behavior.  --with-defshell=/usr/xpg4/bin/sh
1456	  will now do what one might hope - provided the chosen shell
1457	  behaves enough like sh.
1458
14592007-10-08  Simon J. Gerraty  <sjg@void.crufty.net>
1460
1461	* Makefile.in (BMAKE_VERSION): bump to 20071008
1462	* Merge with NetBSD make, pick up:
1463	  o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
1464	  o .export/.MAKE.EXPORTED - export of variables - sjg
1465	  o .MAKE.MAKEFILES - track all makefiles read - sjg
1466	  o performance improvements - dsl
1467	  o revamp parallel job scheduling - dsl
1468
14692006-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1470
1471	* Makefile.in (BMAKE_VERSION): bump to 20060728
1472	* Merge with NetBSD make, pick up:
1473	  o extra debug info during variable and cond processing - sjg
1474	  o shell definition now covers newline - rillig
1475	  o minor mem leak in PrintOnError - sjg
1476
14772006-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1478
1479	* Makefile.in (BMAKE_VERSION):  bump to 20060511
1480	* Merge with NetBSD make, pick up:
1481	  o more memory leaks - coverity
1482	  o possible overflow in ArchFindMember - coverity
1483	  o extract variable modifier code out of Var_Parse()
1484	    so it can be called recursively - sjg
1485	  o unit-tests/moderrs - sjg
1486
14872006-04-12  Simon J. Gerraty  <sjg@void.crufty.net>
1488
1489	* Makefile.in (BMAKE_VERSION): bump to 20060412
1490	* Merge with NetBSD make, pick up:
1491	  o fixes for some memory leaks - coverity
1492	  o only read first sys.mk etc when searching sysIncPath - sjg
1493
1494	* main.c (ReadMakefile): remove hack for __INTERIX that prevented
1495	setting ${MAKEFILE} - OBATA Akio
1496
14972006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
1498
1499	* Makefile.in (BMAKE_VERSION): bump to 20060318
1500	* Merge with NetBSD make, pick up:
1501	  o cleanup of job.c to remove remote handling, distcc is more
1502	    useful and this code was likely bit-rotting - dsl
1503	  o fix for :P modifier - sjg
1504	* boot-strap: set default prefix to something reasonable
1505	  (for me anyway).
1506
15072006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
1508
1509	* Makefile.in (BMAKE_VERSION): bump to 20060301
1510	* Merge with NetBSD make, pick up:
1511	  o make .WAIT apply recursively, document and test case - apb
1512	  o allow variable modifiers in a variable appear anywhere in
1513	    modifier list, document and test case - sjg
1514
15152006-02-22  Simon J. Gerraty  <sjg@void.crufty.net>
1516
1517	* Makefile.in (BMAKE_VERSION): bump to 20060222
1518	* Merge with NetBSD make, pick up:
1519	  o improved job token handling - dsl
1520	  o SIG_DFL the correct signal before exec - dsl
1521	  o more debug info during parsing - dsl
1522	  o allow variable modifiers to be specified via variable - sjg
1523	* boot-strap: explain why we died if no mksrc
1524
15252005-11-05  Simon J. Gerraty  <sjg@void.crufty.net>
1526
1527	* Makefile.in (BMAKE_VERSION): bump to 20051105
1528	* configure.in: always set default_sys_path
1529	  default is ${prefix}/share/mk
1530	  - remove prefix_sys_path, anyone wanting more than above
1531	    needs to set it manually.
1532
15332005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1534
1535	* boot-strap: make this a bit easier for pkgsrc folk.
1536	  bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
1537	  'mips' while pkgsrc wants 'mipseb' or 'mipsel'
1538
15392005-11-02  Simon J. Gerraty  <sjg@void.crufty.net>
1540
1541	* Makefile.in (BMAKE_VERSION): bump to 20051102
1542	* job.c (JobFinish): fix likely ancient merge lossage
1543	fix from Todd Vierling.
1544	* boot-strap (srcdir): allow setting mksrc=none
1545
15462005-10-31  Simon J. Gerraty  <sjg@void.crufty.net>
1547
1548	* Makefile.in (BMAKE_VERSION): bump to 20051031
1549	* ranlib.h: skip on OSF too.
1550	  (NetBSD PR 31864)
1551
15522005-10-10  Simon J. Gerraty  <sjg@void.crufty.net>
1553
1554	* Makefile.in (BMAKE_VERSION): bump to 20051002
1555	  fix a silly typo
1556
15572005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1558
1559	* Makefile.in (BMAKE_VERSION): bump to 20051001
1560	  support for UnixWare and some other systems,
1561	  based on patches from pkgsrc/bootstrap
1562
15632005-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1564
1565	* Makefile.in (BMAKE_VERSION): bump to 20050901
1566	* Merge with NetBSD make, pick up:
1567	  o possible parse error causing us to wander off.
1568
15692005-06-06  Simon J. Gerraty  <sjg@void.crufty.net>
1570
1571	* Makefile.in (BMAKE_VERSION): bump to 20050606
1572	* Merge with NetBSD make, pick up:
1573	  o :0x modifier for randomizing a list
1574	  o fixes for a number of -Wuninitialized issues.
1575
15762005-05-30  Simon J. Gerraty  <sjg@void.crufty.net>
1577
1578	* Makefile.in (BMAKE_VERSION): bump to 20050530
1579	* Merge with NetBSD make, pick up:
1580	  o Handle dependencies for .BEGIN, .END and .INTERRUPT
1581
1582	* README: was seriously out of date.
1583
15842005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
1585
1586	* Important to use .MAKE rather than MAKE.
1587
15882005-03-15  Simon J. Gerraty  <sjg@void.crufty.net>
1589
1590	* Makefile.in (BMAKE_VERSION): bump to 20050315
1591	* Merge with NetBSD make, pick up:
1592	  o don't mistake .elsefoo for .else
1593	  o use suffix-specific search path correctly
1594	  o bunch of style nits
1595
15962004-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1597
1598	* boot-strap:
1599	o ensure that args to --src and --with-mksrc
1600	  are resolved before giving them to configure.
1601	o add -o "objdir" so that builder can control it,
1602	  default is $OS as determined by os.sh
1603	o add -q to suppress all the install instructions.
1604
16052004-05-08  Simon J. Gerraty  <sjg@void.crufty.net>
1606
1607	* Remove __IDSTRING()
1608
1609	* Makefile.in (BMAKE_VERSION): bump to 20040508
1610	* Merge with NetBSD make, pick up:
1611	  o posix fixes
1612	    - remove '-e' from compat mode
1613	    - add support for '+' command-line prefix.
1614	  o fix for handling '--' on command-line.
1615	  o fix include in lst.lib/lstInt.h to simplify '-I's
1616	  o we also picked up replacement of MAKE_BOOTSTRAP
1617	    with !MAKE_NATIVE which is a noop, but possibly confusing.
1618
16192004-04-14  Simon J. Gerraty  <sjg@void.crufty.net>
1620
1621	* Makefile.in (BMAKE_VERSION): bump to 20040414
1622	* Merge with NetBSD make, pick up:
1623	  o allow quoted strings on lhs of conditionals
1624	  o issue warning when extra .else is seen
1625	  o print line numer when errors encountered during parsing from
1626	  string.
1627
16282004-02-20  Simon J. Gerraty  <sjg@void.crufty.net>
1629
1630	* Makefile.in (BMAKE_VERSION):  bump to 20040220
1631	* Merge with NetBSD make, pick up:
1632	  o fix for old :M parsing bug.
1633	  o re-jigged unit-tests
1634
16352004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1636
1637	* Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
1638	so that './bmake -f Makefile test' works.
1639
16402004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1641
1642	* Makefile.in: (BMAKE_VERSION): bump to 20040214
1643	* Merge with NetBSD make, pick up:
1644	  o search upwards for *.mk
1645	  o fix for double free of var substitution buffers
1646	  o use of getopt replaced with custom code, since the usage
1647	  (re-scanning) isn't posix compatible.
1648
16492004-02-12  Simon J. Gerraty  <sjg@void.crufty.net>
1650
1651	* arch.c: don't include ranlib.h on ELF systems
1652	(thanks to Chuck Cranor <chuck@ece.cmu.edu>).
1653
16542004-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1655
1656	* Makefile.in (BMAKE_VERSION): bump to 20040118
1657
1658	* boot-strap (while): export vars we assign to on cmdline
1659	* unit-test/Makefile.in: ternary is .PHONY
1660
16612004-01-08  Simon J. Gerraty  <sjg@void.crufty.net>
1662
1663	* Makefile.in (BMAKE_VERSION): bump version to 20040108
1664	* Merge with NetBSD make, pick up:
1665	  o fix for ternary modifier
1666
16672004-01-06  Simon J. Gerraty  <sjg@void.crufty.net>
1668
1669	* Makefile.in (BMAKE_VERSION): bump version to 20040105
1670	* Merge with NetBSD make, pick up:
1671	  o fix for cond.c to handle compound expressions better
1672	  o variable expansion within sysV style replacements
1673
16742003-12-22  Simon J. Gerraty  <sjg@void.crufty.net>
1675
1676	* Make portable snprintf safer - output to /dev/null first to
1677	check space needed.
1678
1679	* Makefile.in (BMAKE_VERSION): bump version to 20031222
1680	* Merge with NetBSD make, pick up:
1681	  o -dg3 to show input graph when things go wrong.
1682	  o explicitly look for makefiles in objdir if not found in curdir so
1683	    that errors in .depend etc will be reported accurarely.
1684	  o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1685	    instead as it more accurately reflects the expected behavior and
1686	    is more consistently implemented.
1687	  o avoid use of asprintf.
1688
16892003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1690
1691	* util.c: Add asprintf and vasprintf.
1692
1693	* Makefile.in (BMAKE_VERSION): bump version to 20030928
1694	* Merge with NetBSD make, pick up:
1695	:[] modifier - allows picking words from a variable.
1696	:tW modifier - allows treating value as one big word.
1697	W flag for :C and :S - allows treating value as one big word.
1698
16992003-09-12  Simon J. Gerraty  <sjg@void.crufty.net>
1700
1701	* Merge with NetBSD make
1702	pick up -de flag to enable printing failed command.
1703	don't skip 1st two dir entries (normally . and ..) since
1704	coda does not have them.
1705
17062003-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1707
1708	* Makefile.in (BMAKE_VERSION): bump version to 20030909
1709	* Merge with NetBSD make, pick up:
1710	- changes for -V '${VAR}' to print fully expanded value
1711	  cf. -V VAR
1712	- CompatRunCommand now prints the command that failed.
1713	- several files got updated 3 clause Berkeley license.
1714
17152003-08-02  Simon J. Gerraty  <sjg@void.crufty.net>
1716
1717	* boot-strap: Allow setting configure args on command line.
1718
17192003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1720
1721	* configure.in: add --with-defshell to allow sh or ksh
1722	to be selected as default shell.
1723
1724	* Makefile.in: bump version to 20030731
1725
1726	* Merge with NetBSD make
1727	Pick up .SHELL spec for ksh and associate man page changes.
1728	Also compat mode now uses the same shell specs.
1729
17302003-07-29  Simon J. Gerraty  <sjg@void.crufty.net>
1731
1732	* var.c (Var_Parse): ensure delim is initialized.
1733
1734	* unit-tests/Makefile.in: use single quotes to avoid problems from
1735	some shells.
1736
1737	* makefile.boot.in:
1738	Run the unit-tests as part of the bootstrap procedure.
1739
17402003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1741
1742	* unit-tests/Makefile.in: always force complaints from
1743	${TEST_MAKE} to be from 'make'.
1744
1745	* configure.in: add check for 'diff -u'
1746	also fix some old autoconf'isms
1747
1748	* Makefile.in (BMAKE_VERSION): bump version to 20030728.
1749	if using GCC add -Wno-cast-qual to CFLAGS for var.o
1750
1751	* Merge with NetBSD make
1752	Pick up fix for :ts parsing error in some cases.
1753	Pick unit-tests.
1754
17552003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1756
1757	* Makefile.in (BMAKE_VERSION): bump version to 20030723.
1758
1759	* var.c (Var_Parse): fix bug in :ts modifier, after const
1760	correctness fixes, must pass nstr to VarModify.
1761
17622003-07-14  Simon J. Gerraty  <sjg@void.crufty.net>
1763
1764	* Makefile.in: BMAKE_VERSION switch to a date based version.
1765	We'll generally use the date of last import from NetBSD.
1766
1767	* Merge with NetBSD make
1768	Pick up fixes for const-correctness, now passes WARNS=3 on
1769	NetBSD.
1770	Pick up :ts modifier, allows controlling the separator used
1771	between words in variable expansion.
1772
17732003-07-11  Simon J. Gerraty  <sjg@void.crufty.net>
1774
1775	* FILES: include boot-strap and os.sh
1776
1777	* Makefile.in: only set WARNS if we are NetBSD, the effect on
1778	FreeBSD is known to be bad.
1779
1780	* makefile.boot.in (bootstrap): make this the default target.
1781
1782	* Makefile.in: bump version to 3.1.19
1783
1784	* machine.sh: avoid A-Z with tr as it is bound to lose.
1785
17862003-07-10  Simon J. Gerraty  <sjg@void.crufty.net>
1787
1788	* Merge with NetBSD make
1789	Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1790	Plus some doc fixes.
1791
17922003-04-27  Simon J. Gerraty  <sjg@void.crufty.net>
1793
1794	* Merge with NetBSD make
1795	Pick up fix for PR/1523 - don't count a library as built, if there
1796	is no way to build it
1797
1798	* Bump version to 3.1.18
1799
18002003-03-23  Simon J. Gerraty  <sjg@void.crufty.net>
1801
1802	* Merge with NetBSD make
1803	Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1804	appears in src list.
1805
18062003-03-21  Simon J. Gerraty  <sjg@void.crufty.net>
1807
1808	* Merge with NetBSD make (mmm 10th anniversary!)
1809	pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1810	pick up -X which tells us to not export VAR=val via setenv if
1811	we are already doing so via MAKEFLAGS.  This saves valuable env
1812	space on systems like Darwin.
1813	set MAKE_VERSION to 3.1.17
1814
1815	* parse.c: pix up fix for suffix rules
1816
18172003-03-06  Simon J. Gerraty  <sjg@void.crufty.net>
1818
1819	* Merge with NetBSD make.
1820	pick up fix for propagating -B via MAKEFLAGS.
1821	set MAKE_VERSION to 3.1.16
1822
1823	* Apply some patches from pkgsrc-bootstrap/bmake
1824	Originally by Grant Beattie <grant@netbsd.org>
1825	I may have missed some - since they are based on bmake-3.1.12
1826
18272002-12-03  Simon J. Gerraty  <sjg@void.crufty.net>
1828
1829	* makefile.boot.in (bmake): update install targets for those that
1830	use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1831	havoc from gmake -w.  Thanks to Harlan Stenn <hstenn@cisco.com>.
1832
1833	* bmake.cat1: update the pre-formatted man page!
1834
18352002-11-30  Simon J. Gerraty  <sjg@void.crufty.net>
1836
1837	* Merge with NetBSD make.
1838	pick up fix for premature free of pointer used in call
1839	to Dir_InitCur().
1840	set MAKE_VERSION to 3.1.15
1841
18422002-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
1843
1844	* configure.in: determine suitable value for MKSRC.
1845	override using --with-mksrc=PATH.
1846
1847	* machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1848	configs(8) will use 'sun4' as an alias for 'sparc'.
1849
18502002-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
1851
1852	* Merge with NetBSD make.
1853	pick up ${.PATH}
1854	pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1855	set MAKE_VERSION to 3.1.14
1856	add configure checks for killpg and sys/socket.h
1857
18582002-09-16  Simon J. Gerraty  <sjg@void.crufty.net>
1859
1860	* tag bmake-3-1-13
1861
1862	* makefile.boot.in (bmake): use install-mk
1863	Also setup ./mk before trying to invoke bmake.boot incase we
1864	needed install-mk to create a sys.mk for us.
1865
1866	* configure.in: If we need to add -I${srcdir}/missing, make it an
1867	absolute path so that it works for lst.lib too.
1868
1869	* make.h: always include sys/cdefs.h since we provide one if the
1870	host does not.
1871
1872	* Makefile.in (install-mk):
1873	use MKSRC/install-mk which will do the right thing.
1874	use uname -p for ARCH if possible.
1875	since install-mk will setup links bsd.prog.mk -> prog.mk if
1876	needed, just .include bsd.prog.mk
1877
1878	* Merge with NetBSD make (NetBSD-1.6)
1879	Code is ansi-C only now.
1880	Bug in handling of dotLast is fixed.
1881	Can now assign .OBJDIR and make will reset its notions of life.
1882	New modifiers :tu :tl for toUpper and toLower.
1883
1884Tue Oct 16 12:18:42 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1885
1886	* Merge with NetBSD make
1887	pick up fix for .END failure in compat mode.
1888	pick up fix for extra va_end() in ParseVErrorInternal.
1889
1890Thu Oct 11 13:20:06 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1891
1892	* configure.in: for systems that have sys/cdefs.h check if it is
1893	compatible.  If not, include the one under missing, but tell it to
1894	include the native one too - necessary on Linux.
1895
1896	* missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1897	include_next (for gcc) to get the native sys/cdefs.h
1898
1899Tue Aug 21 02:29:34 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1900
1901	* job.c (JobFinish): Fix an earlier merge bug that resulted in
1902	leaking descriptors when using -jN.
1903
1904	* job.c (JobPrintCommand): See if "curdir" exists before
1905	attempting to chdir().  Doing the chdir directly in make (when in
1906	compat mode) fails silently, so let the -jN version do the same.
1907	This can happen when building kernels in an object tree and
1908	playing clever games to reset .CURDIR.
1909
1910	* Merged with NetBSD make
1911	pick up .USEBEFORE
1912
1913Tue Jun 26 23:45:11 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1914
1915	* makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1916
1917Tue Jun 12 16:48:57 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1918
1919	* var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1920	us not to export the iterator variable when using VAR_CMD context.
1921
1922Sun Jun 10 21:55:21 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1923
1924	* job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1925	its the wrong "fix".
1926
1927Sat Jun  9 00:11:24 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1928
1929	* Redesigned export of VAR_CMD's via MAKEFLAGS.
1930	We now simply append the variable names to .MAKEOVERRIDES, and
1931	handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1932	${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1933	Apart from fixing quoting bugs in previous version, this allows us
1934	to export vars to the environment by simply doing:
1935	.MAKEOVERRIDES+= PATH
1936	Merged again with NetBSD make, but the above is the only change.
1937
1938	* configure.in: added
1939	--disable-pwd-override		disable $PWD overriding getcwd()
1940	--disable-check-make-chdir	disable make trying to guess
1941		when it should automatically cd ${.CURDIR}
1942
1943	* Merge with NetBSD make, changes include:
1944	parse.c (ParseDoDependency): Spot that the syntax error is
1945	caused by an unresolved cvs/rcs conflict and say so.
1946	var.c: most of Var* functions now take a ctxt as 1st arg.
1947	now does variable substituion on rhs of sysv style modifiers.
1948
1949	* var.c (Var_Set): exporting of command line variables (VAR_CMD)
1950	is now done here.  We append the name='value' to .MAKEOVERRIDES
1951	rather than directly into MAKEFLAGS as this allows a Makefile to
1952	use .MAKEOVERRIDES= to disable this behaviour.  GNU make uses a
1953	very similar mechanism.  Note that in adding name='value' to
1954	.MAKEOVERRIDES we do the moral equivalent of:
1955	.MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
1956
1957Fri Jun  1 14:08:02 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1958
1959	* make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
1960
1961	* Merged with NetBSD make
1962	make -dx can now be used to run commands via sh -x
1963	better error messages on exec failures.
1964
1965Thu May 31 01:44:54 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1966
1967	* Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
1968	MAKE_VERSION gets updated.  Also don't use ?= for MAKE_VERSION,
1969	MACHINE etc otherwise they propagate from the previous bmake.
1970
1971	* configure.in (machine): allow --with-machine=generic to make
1972	configure use machine.sh to set MACHINE.
1973
1974	* job.c (JobInterrupt): convert to using WAIT_T and friends.
1975
1976	* Makefile.in: mention in bmake.1 that we use autoconf.
1977
1978	* make.1: mention MAKE_PRINT_VAR_ON_ERROR.
1979
1980Wed May 30 23:17:18 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1981
1982	* main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
1983	as that rather defeats the usefulness of ${MAKEFILE}.
1984
1985	* main.c (MainParseArgs): append command line variable assignments
1986	to MAKEFLAGS so that they get propagated to child make's.
1987	Apparently this is required POSIX behaviour?  Its useful anyway.
1988
1989Tue May 29 02:20:07 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1990
1991	* compat.c (CompatRunCommand): don't use perror() since stdio may
1992	cause problems in child of vfork().
1993
1994	* compat.c, main.c: Call PrintOnError() when we are going to bail.
1995	This routine prints out the .curdir where we stopped and will also
1996	display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
1997
1998	* main.c: add ${.newline} to hold a "\n" - sometimes handy in
1999	:@ expansion.
2000
2001	* var.c: VarLoopExpand: ignore addSpace if a \n is present.
2002
2003	* Added RCSid's for the files we've touched.
2004
2005Thu May 24 15:41:37 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2006
2007	* configure.in:	Thanks to some clues from mdb@juniper.net,
2008	added autoconf magic to control setting of MACHINE, MACHINE_ARCH
2009	as well as what ends up in _PATH_DEFSYSPATH.  We now have:
2010
2011  --with-machine=MACHINE  explicitly set MACHINE
2012  --with-force-machine=MACHINE  set FORCE_MACHINE
2013  --with-machine_arch=MACHINE_ARCH  explicitly set MACHINE_ARCH
2014  --with-default-sys-path=PATH:DIR:LIST  use an explicit _PATH_DEFSYSPATH
2015  --with-prefix-sys-path=PATH:DIR:LIST  prefix _PATH_PREFIX_SYSPATH
2016  --with-path-objdirprefix=PATH  override _PATH_OBJDIRPREFIX
2017
2018	If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
2019
2020	* makefile: added a pathetically simple makefile to drive
2021	bootstrapping.  Running configure by hand is more useful.
2022
2023	* Makefile.in: added MAKE_VERSION, and reworked things to be less
2024	dependent on NetBSD bsd.*.mk
2025
2026	* pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
2027	_PATH_OBJDIRPREFIX for those that don't want a default.
2028	construct _PATH_DEFSYSPATH from the info we get from configure.
2029
2030	* main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
2031	if MAKE_VERSION is defined.
2032
2033	* compat.c: when we bail, print out the .CURDIR we were in.
2034
2035Sat May 12 00:34:12 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2036
2037	* Merged with NetBSD make
2038
2039	* var.c: fixed a bug in the handling of the modifier :P
2040	if the node as found but the path was null, we segfault trying to
2041	duplicate it.
2042
2043Mon Mar  5 16:20:33 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2044
2045	* Merged with NetBSD make
2046
2047	* make.c: Make_OODate's test for a library out of date was using
2048	cmtime where it should have used mtime (my bug).
2049
2050	* compat.c: Use perror() to tell us what really went wrong when we
2051	cannot exec a command.
2052
2053Fri Dec 15 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2054
2055	* Merged with NetBSD make
2056
2057Sat Jun 10 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2058
2059	* Merged with NetBSD make
2060
2061Thu Jun  1 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2062
2063	* Merged with NetBSD make
2064
2065Tue May 30 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2066
2067	* Merged with NetBSD make
2068
2069Thu Apr 27 00:07:47 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2070
2071	* util.c: don't provide signal() since we use sigcompat.c
2072
2073	* Makefile.in: added a build target.
2074
2075	* var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
2076	These allow some quite clever magic.
2077
2078	* main.c (main): added support for getenv(MAKESYSPATH).
2079
2080Mon Apr  2 16:25:13 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2081
2082	* Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
2083	This avoids objdir having a different value depending on how a
2084	directory was reached (via command line, or subdir.mk).
2085
2086	* If FORCE_MACHINE is defined, ignore getenv("MACHINE").
2087
2088Mon Apr  2 23:15:31 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2089
2090	* Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
2091	MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
2092	I've been testing this in NetBSD's make for some weeks.
2093
2094	* Turn Makefile into Makefile.in and make it useful.
2095
2096Tue Feb 29 22:08:00 2000 Simon J. Gerraty  <sjg@zen.quick.com.au>
2097
2098	* Imported NetBSD's -current make(1) and resolve conflicts.
2099
2100	* Applied autoconf patches from bmake v2
2101
2102	* Imported clean code base from NetBSD-1.0
2103