xref: /freebsd/contrib/bmake/ChangeLog (revision 8a0a413e)
12017-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* VERSION: 20171028
4	  Merge with NetBSD make, pick up
5	  o main.c: ignore empty MAKEOBJDIR
6
7	* Makefile.config.in:
8	  make @prefix@ @machine*@ and @default_sys_path@ defaults.
9
102017-10-05  Simon J. Gerraty  <sjg@bad.crufty.net>
11
12	* VERSION: 20171005
13
14	* unit-tests/dotwait.mk: redirect stderr through pipe for more
15	  consistent result on some platforms.
16
172017-08-13  Simon J. Gerraty  <sjg@bad.crufty.net>
18
19	* machine.sh: entry for AIX
20
212017-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
22
23	* VERSION (_MAKE_VERSION): Move the setting of _MAKE_VERSION
24	  to a file that can be included by configure as well as make.
25	  This allows configure to set set _MAKE_VERSION in make-bootstrap.sh
26
272017-08-10  Simon J. Gerraty  <sjg@bad.crufty.net>
28
29	* Makefile (_MAKE_VERSION): 20170810
30	  Merge with NetBSD make, pick up
31	  o meta.c: if target is in subdir we only need subdir name in
32	    meta_name.
33
342017-07-20  Simon J. Gerraty  <sjg@bad.crufty.net>
35
36	* Makefile (_MAKE_VERSION): 20170720
37	  Merge with NetBSD make, pick up
38	  o compat.c: pass SIGINT etc onto child and wait for it to exit
39	    before we self-terminate.
40
412017-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
42
43	* Makefile (_MAKE_VERSION): 20170711
44	  forgot to update after merge on 20170708 ;-)
45	  o main.c: refactor to reduce size of main function.
46	    add -v option to always fully expand values.
47	  o meta.c: ensure command output in meta file has ending newline
48	    even when filemon not being used.
49	    When matching ${.MAKE.META.IGNORE_PATTERNS} do not use
50	    pathname via ':L' since any ':' in pathname breaks that.
51	    Instead set a '${.p.}' to pathname in the target context and
52	    use that.
53
542017-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
55
56	* Makefile (_MAKE_VERSION): 20170510
57	  Merge with NetBSD make, pick up
58	  o main.c: Main_SetObjdir: ensure buf2 is in scope
59
602017-05-08  Simon J. Gerraty  <sjg@bad.crufty.net>
61
62	* Makefile (_MAKE_VERSION): 20170505
63	  see mk/ChangeLog
64
652017-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
66
67	* parse.c: not everyone has stdint.h
68
692017-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
70
71	* Makefile (_MAKE_VERSION): 20170501
72	  see mk/ChangeLog
73
742017-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
75
76	* Makefile (_MAKE_VERSION): 20170421
77	  Merge with NetBSD make, pick up
78	  o str.c: Str_Match: fix closure tests for [^] and add unit-test.
79
802017-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
81
82	* Makefile (_MAKE_VERSION): 20170420
83	  Merge with NetBSD make, pick up
84	  o main.c: only use -C arg "as is" if it contains no
85	    relative component.
86
872017-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
88
89	* Makefile (_MAKE_VERSION): 20170418
90	  Merge with NetBSD make, pick up
91	  o main.c: fix Main_SetObjdir() for relative paths (eg obj).
92
932017-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
94
95	* Makefile (_MAKE_VERSION): 20170417
96	  Merge with NetBSD make, pick up
97	  o fixes a number of coverity complaints
98	    - check return value of fseek, fcntl
99	    - plug memory leak in Dir_FindFile, Var_LoopExpand,
100	      JobPrintCommand, ParseTraditionalInclude
101	    - use bmake_malloc() where NULL is not tollerated
102	    - use MAKE_ATTR_UNUSED rather that kludges like
103	      return(unused ? 0 : 0)
104	    - use purge_cached_realpaths() rather than abuse cached_realpath()
105
1062017-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
107
108	* Makefile (_MAKE_VERSION): 20170413
109	  Merge with NetBSD make, pick up
110	  o main.c: when setting .OBJDIR ignore '$' in paths.
111
112	* job.c: use MALLOC_OPTIONS to set malloc_options.
113
1142017-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
115
116	* Makefile (_MAKE_VERSION): 20170411
117	  Merge with NetBSD make, pick up
118	  o str.c: Str_Match: allow [^a-z] to behave as expected.
119
1202017-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
121
122	* Makefile (_MAKE_VERSION): 20170326
123	  Merge with NetBSD make, pick up
124	  o main.c: purge relative paths from realpath cache when .OBJDIR
125	    is changed.
126
1272017-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
128
129	* Makefile (_MAKE_VERSION): 20170311
130	  Merge with NetBSD make, pick up
131          o main.c: only use -C arg "as is" if it starts with '/'.
132
1332017-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
134
135	* Makefile (_MAKE_VERSION): 20170301
136	  Merge with NetBSD make, pick up
137	  o main.c: use -C arg "as is" rather than getcwd()
138	    if they identify the same directory.
139	  o parse.c: ensure loadfile buffer is \n terminated in non-mmap case
140
1412017-02-01  Simon J. Gerraty  <sjg@bad.crufty.net>
142
143	* Makefile (_MAKE_VERSION): 20170201
144	  Merge with NetBSD make, pick up
145	  o var.c: allow :_=var and avoid use of special context.
146
1472017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>
148
149	* Makefile (_MAKE_VERSION): 20170130
150	  Merge with NetBSD make, pick up
151	  o var.c: add :range and :_
152	  o main.c: partially initialize Dir_* before MainParseArgs()
153	    can be called.
154	    If -V, skip Main_ExportMAKEFLAGS()
155
1562017-01-14  Simon J. Gerraty  <sjg@bad.crufty.net>
157
158	* Makefile (_MAKE_VERSION): 20170114
159	  Merge with NetBSD make, pick up
160	  o var.c: allow specifying the utc value used by :{gm,local}time
161
1622016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
163
164	* Makefile (_MAKE_VERSION): 20161212
165	  Merge with NetBSD make, pick up
166          o main.c: look for obj.${MACHINE}-${MACHINE_ARCH} too.
167
1682016-12-09  Simon J. Gerraty  <sjg@bad.crufty.net>
169
170	* Makefile (_MAKE_VERSION): 20161209
171	  Merge with NetBSD make, pick up
172	  o main.c: cleanup setting of .OBJDIR
173	  o parse.c: avoid coredump from (var)=val
174
1752016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
176
177	* Makefile (_MAKE_VERSION): 20161126
178	  Merge with NetBSD make, pick up
179	  o make.c: Make_OODate: report src node name if path not set
180
1812016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
182
183	* Makefile (_MAKE_VERSION): 20160926
184	  Merge with NetBSD make, pick up
185	  o support for .DELETE_ON_ERROR: (remove targets that fail)
186
1872016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
188
189	* Makefile MAN: tweak .Dt to match ${PROG}
190
1912016-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
192
193	* Makefile (_MAKE_VERSION): 20160818
194	  its a neater number; pick up whitespace fixes to man page.
195
1962016-08-17  Simon J. Gerraty  <sjg@bad.crufty.net>
197
198	* Makefile (_MAKE_VERSION): 20160817
199	  Merge with NetBSD make, pick up
200	  o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore()
201	    so we can call it before adding entries to missingFiles.
202	    Thus we do not track files we have been told to ignore.
203
2042016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>
205
206	* Makefile (_MAKE_VERSION): 20160815
207	  Merge with NetBSD make, pick up
208	  o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to
209	    pathnames, and skip if the expansion is empty.
210	    Useful for dirdeps.mk when checking DIRDEPS_CACHE.
211
2122016-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
213
214	* Makefile (_MAKE_VERSION): 20160812
215	  Merge with NetBSD make, pick up
216	  o meta.c: remove all missingFiles entries that match a deleted
217	    dir.
218	  o main.c: set .ERROR_CMD if possible.
219
2202016-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
221
222	* Makefile (_MAKE_VERSION): 20160606
223	  Merge with NetBSD make, pick up
224	  o dir.c: extend mtimes cache to others via cached_stat()
225
2262016-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
227
228	* Makefile (_MAKE_VERSION): 20160604
229	  Merge with NetBSD make, pick up
230	  o meta.c: missing filemon data is only relevant if we read a
231	    meta file.
232	    Also do not return oodate for a missing metafile if gn->path
233	    points to .CURDIR
234
2352016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
236
237	* Makefile (_MAKE_VERSION): 20160602
238	  Merge with NetBSD make, pick up
239	  o cached_realpath(): avoid hitting filesystem more than necessary.
240	  o meta.c: refactor need_meta decision, add knobs for
241	    missing meta file and filemon data wrt out-of-datedness.
242
2432016-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
244
245	* Makefile (_MAKE_VERSION): 20160528
246
247	* boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION
248
2492016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
250
251	* Makefile (_MAKE_VERSION): 20160512
252	  Merge with NetBSD make, pick up
253	  o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS
254	    this is useful for gcov builds.
255	  o propagate errors from filemon(4).
256
2572016-05-09  Simon J. Gerraty  <sjg@bad.crufty.net>
258
259	* Makefile (_MAKE_VERSION): 20160509
260	  Merge with NetBSD make, pick up
261	  o remove use of non-standard types u_int etc.
262	  o meta.c: apply realpath() before matching against metaIgnorePaths
263
2642016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>
265
266	* Makefile (_MAKE_VERSION): 20160404
267	  Merge with NetBSD make, pick up
268	  o allow makefile to set .MAKE.JOBS
269
270	* Makefile (PROG_NAME): use ${_MAKE_VERSION}
271
2722016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
273
274	* Makefile (_MAKE_VERSION): 20160315
275	  Merge with NetBSD make, pick up
276	  o fix handling of archive members
277
2782016-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
279
280	* Makefile (_MAKE_VERSION): rename variable to avoid interference
281	  with checks for ${MAKE_VERSION}
282
2832016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
284
285	* Makefile (MAKE_VERSION): 20160310
286	  Merge with NetBSD make, pick up
287	  o meta.c: treat missing Read file same as Write, incase we Delete it.
288
2892016-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
290
291	* Makefile (MAKE_VERSION): 20160307
292	  Merge with NetBSD make, pick up
293	  o var.c: fix :ts\nnn to be octal by default.
294	  o meta.c: meta_finish() to cleanup memory.
295
2962016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
297
298	* Makefile (MAKE_VERSION): 20160226
299	  Merge with NetBSD make, pick up
300	  o meta.c: allow meta file for makeDepend if makefiles want it.
301
3022016-02-19  Simon J. Gerraty  <sjg@bad.crufty.net>
303
304	* var.c: default .MAKE.SAVE_DOLLARS to FALSE
305	  for backwards compatability.
306
307	* Makefile (MAKE_VERSION): 20160220
308	  Merge with NetBSD make, pick up
309	  o var.c: add knob to control handling of '$$' in :=
310
3112016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
312
313	* Makefile (MAKE_VERSION): 20160218
314	  Merge with NetBSD make, pick up
315	  o var.c: add .export-literal allows us to fix sys.clean-env.mk
316	    post the changes to Var_Subst.
317	    Var_Subst now takes flags, and does not consume '$$' in :=
318
3192016-02-17  Simon J. Gerraty  <sjg@bad.crufty.net>
320
321	* Makefile (MAKE_VERSION): 20160217
322	  Merge with NetBSD make, pick up
323	  o var.c: preserve '$$' in :=
324	  o parse.c: add .dinclude for handling included
325	    makefile like .depend
326
3272015-12-20  Simon J. Gerraty  <sjg@bad.crufty.net>
328
329	* Makefile (MAKE_VERSION): 20151220
330	  Merge with NetBSD make, pick up
331	  o suff.c: re-initialize suffNull when clearing suffixes.
332
3332015-12-01  Simon J. Gerraty  <sjg@bad.crufty.net>
334
335	* Makefile (MAKE_VERSION): 20151201
336	  Merge with NetBSD make, pick up
337	  o cond.c: CondCvtArg: avoid access beyond end of empty buffer.
338	  o meta.c: meta_oodate: use lstat(2) for checking link target
339	    in case it is a symlink.
340	  o var.c: avoid calling brk_string and Var_Export1 with empty
341	    strings.
342
3432015-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
344
345	* Makefile (MAKE_VERSION): 20151126
346	  Merge with NetBSD make, pick up
347	  o parse.c: ParseTrackInput don't access beyond
348	    end of old value.
349
3502015-10-22  Simon J. Gerraty  <sjg@bad.crufty.net>
351
352	* Makefile (MAKE_VERSION): 20151022
353
354	* Add support for BSD/OS which lacks inttypes.h
355	  and really needs sys/param.h for sys/sysctl.h
356	  also 'type' is not a shell builtin.
357
358	* var.c: eliminate uint32_t and need for inttypes.h
359
360	* main.c: PrintOnError flush stdout before run .ERROR
361
362	* parse.c: cope with _SC_PAGESIZE not being defined.
363
364
3652015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
366
367	* Makefile (MAKE_VERSION): 20151020
368	  Merge with NetBSD make, pick up
369	  o var.c: fix uninitialized var
370
3712015-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
372
373	* var.c: the conditional expressions used with ':?' can be
374	expensive, if already discarding do not evaluate or expand
375	anything.
376
3772015-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
378
379	* Makefile (MAKE_VERSION): 20151010
380	  Merge with NetBSD make, pick up
381	  o Add Boolean wantit flag to Var_Subst and Var_Parse
382	    when FALSE we know we are discarding the result and can
383	    skip operations like Cmd_Exec.
384
3852015-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
386
387	* Makefile (MAKE_VERSION): 20151009
388	  Merge with NetBSD make, pick up
389	  o var.c: don't check for NULL before free()
390	  o meta.c: meta_oodate, do not hard code ignore of makeDependfile
391
3922015-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
393
394	* Makefile (MAKE_VERSION): 20150910
395	  Merge with NetBSD make, pick up
396	  o main.c: with -w print Enter/Leaving messages for objdir too
397	    if necessary.
398	  o centralize shell metachar handling
399
400	* FILES: add metachar.[ch]
401
4022015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
403
404	* Makefile (MAKE_VERSION): 20150606
405	  Merge with NetBSD make, pick up
406	  o make.1: document .OBJDIR target
407
4082015-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
409
410	* Makefile (MAKE_VERSION): 20150505
411	  Merge with NetBSD make, pick up
412	  o cond.c: be strict about lhs of comparison when evaluating .if
413	    but less so when called from variable expansion.
414	  o unit-tests/cond2.mk: test various error conditions
415
4162015-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
417
418	* machine.sh (MACHINE): Add Bitrig
419	  patch from joerg@netbsd.org
420
4212015-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
422
423	* Makefile (MAKE_VERSION): 20150418
424	  Merge with NetBSD make, pick up
425	  o job.c: use memmove() rather than memcpy()
426
427	* unit-tests/varshell.mk: SunOS cannot handle the TERMINATED_BY_SIGNAL
428	  case, so skip it.
429
4302015-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
431
432	* Makefile (MAKE_VERSION): 20150411
433	  bump version - only mk/ changes.
434
4352015-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
436
437	* Makefile (MAKE_VERSION): 20150410
438	  Merge with NetBSD make, pick up
439	  o document different handling of '-' in jobs mode vs compat
440	  o fix jobs mode so that '-' only applies to whole job
441	    when shell lacks hasErrCtl
442	  o meta.c: use separate vars to track lcwd and latestdir (read)
443	    per process
444
4452015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
446
447	* Makefile (MAKE_VERSION): 20150401
448	  Merge with NetBSD make, pick up
449	  o meta.c: close meta file in child
450
451	* Makefile: use BINDIR.bmake if set.
452	  Same for MANDIR and SHAREDIR
453	  Handy for testing release candidates
454	  in various environments.
455
4562015-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
457
458	* move initialization of savederr to block where it is used
459	  to avoid spurious warning from gcc5
460
4612014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
462
463	* Makefile (MAKE_VERSION): 20141111
464	  just a cooler number
465
4662014-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
467
468	* Makefile (MAKE_VERSION): 20141105
469	  Merge with NetBSD make, pick up
470	  o revert major overhaul of suffix handling
471	    and POSIX compliance - too much breakage
472	    and impossible to make backwards compatible.
473	  o we still have the new unit test structure which is ok.
474	  o meta.c ensure "-- filemon" is at start of line.
475
4762014-09-17  Simon J. Gerraty  <sjg@bad.crufty.net>
477
478	* configure.in: test that result of getconf PATH_MAX is numeric
479	  and discard if not.  Apparently needed for Hurd.
480
4812014-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
482
483	* Makefile (MAKE_VERSION): 20140830
484	  Merge with NetBSD make, pick up
485	  o major overhaul of suffix handling
486	  o improved POSIX compliance
487	  o overhauled unit-tests
488
4892014-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
490
491	* Makefile (MAKE_VERSION): 20140620
492	  Merge with NetBSD make, pick up
493	  o var.c return varNoError rather than var_Error for ::= modifiers.
494
4952014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
496
497	* Makefile (MAKE_VERSION): 20140522
498	  Merge with NetBSD make, pick up
499	  o var.c detect some parse errors.
500
5012014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
502
503	* Fix spelling errors - patch from Pedro Giffuni
504
5052014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
506
507	* Makefile (MAKE_VERSION): 20140214
508	  Merge with NetBSD make, pick up
509	  o .INCLUDEFROM*
510	  o use Var_Value to get MAKEOBJDIR[PREFIX]
511	  o reduced realloc'ign in brk_string.
512	* configure.in: add a check for compiler supporting __func__
513
5142014-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
515
516	* boot-strap: ignore mksrc=none
517
5182014-01-02  Simon J. Gerraty  <sjg@bad.crufty.net>
519
520	* Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk
521
5222014-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
523
524	* Makefile (MAKE_VERSION): 20140101
525	* configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024)
526	* Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max
527	* make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for
528	  Hurd)
529	* configure.in: Add AC_PREREQ and check for
530	  sysctl; patch from Andrew Shadura andrewsh at debian.org
531
5322013-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
533
534	* Makefile (MAKE_VERSION): 20131010
535	* lose the const from arg to systcl to avoid problems on older BSDs.
536
5372013-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
538
539	* Makefile (MAKE_VERSION): 20131001
540	  Merge with NetBSD make, pick up
541	  o main.c: for NATIVE build sysctl to get MACHINE_ARCH from
542	    hw.machine_arch if necessary.
543	  o meta.c: meta_oodate - need to look at src of Link and target
544	    of Move as well.
545	* main.c: check that CTL_HW and HW_MACHINE_ARCH exist.
546	  provide __arraycount() if needed.
547
5482013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
549
550	* Makefile (MAKE_VERSION): 20130904
551	  Merge with NetBSD make, pick up
552	  o Add VAR_INTERNAL context, so that internal setting of
553	    MAKEFILE does not override value set by makefiles.
554
5552013-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
556
557	* Makefile (MAKE_VERSION): 20130902
558	  Merge with NetBSD make, pick up
559	  o CompatRunCommand: only apply shellErrFlag when errCheck is true
560
5612013-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
562
563	* Makefile (MAKE_VERSION): 20130828
564	  Merge with NetBSD make, pick up
565	  o Fix VAR :sh = syntax from Will Andrews at freebsd.org
566	  o Call Job_SetPrefix() from Job_Init() so makefiles have
567	    opportunity to set .MAKE.JOB.PREFIX
568
5692013-07-30  Simon J. Gerraty  <sjg@bad.crufty.net>
570
571	* Makefile (MAKE_VERSION): 20130730
572	  Merge with NetBSD make, pick up
573	  o Allow suppression of --- job -- tokens by setting
574	    .MAKE.JOB.PREFIX empty.
575
5762013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
577
578	* Makefile (MAKE_VERSION): 20130716
579	  Merge with NetBSD make, pick up
580	  o number of gmake compatibility tweaks
581	    -w for gmake style entering/leaving messages
582	    if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc.
583	    handle MAKEFLAGS containing only letters.
584	  o when overriding a GLOBAL variable on the command line,
585	    delete it from GLOBAL context so -V doesn't show the wrong
586	    value.
587
5882013-07-06  Simon J. Gerraty  <sjg@bad.crufty.net>
589
590	* configure.in: We don't need MAKE_LEVEL_SAFE anymore.
591
592	* Makefile (MAKE_VERSION): 20130706
593	  Merge with NetBSD make, pick up
594	  o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is
595	    true so that CompatRunCommand() can use it, to ensure
596	    consistent behavior with jobs mode.
597	  o use MAKE_LEVEL_ENV to define the variable to propagate
598	    .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake).
599	  o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of
600	    paths to ignore.
601
6022013-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
603
604	* Makefile (MAKE_VERSION): 20130604
605	  Merge with NetBSD make, pick up
606	  o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's
607	    to avoid leaking descriptors.
608
6092013-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
610
611	* Makefile (MAKE_VERSION): 20130528
612	  Merge with NetBSD make, pick up
613	  o var.c: cleanup some left-overs in VarHash()
614
6152013-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
616
617	* Makefile (MAKE_VERSION): 20130520
618	  generate manifest from component FILES rather than have to
619	  update FILES when mk/FILES changes.
620
6212013-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
622
623	* Makefile (MAKE_VERSION): 20130518
624	  Merge with NetBSD make, pick up
625	  o suff.c: don't skip all processsing for .PHONY targets
626	    else wildcard srcs do not get expanded.
627	  o var.c: expand name of variable to delete if necessary.
628
6292013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
630
631	* Makefile (MAKE_VERSION): 20130330
632	  Merge with NetBSD make, pick up
633	  o meta.c: refine the handling of .OODATE in commands.
634	    Rather than suppress command comparison for the entire script
635	    as though .NOMETA_CMP had been used, only suppress it for the
636	    one command line.
637	    This allows something like ${.OODATE:M.NOMETA_CMP} to be used to
638	    suppress comparison of a command without otherwise affecting it.
639	  o make.1: document that
640
6412013-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
642
643	* Makefile (MAKE_VERSION): 20130321
644	  yes, not quite right but its a cooler number.
645	  Merge with NetBSD make, pick up
646	  o parse.c: fix ParseGmakeExport to be portable
647	    and add a unit-test.
648	* meta.c: call meta_init() before makefiles are read and if built
649	  with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON
650	  this let's makefiles test for support.
651	  Call meta_mode_init() to process .MAKE.MODE.
652
6532013-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
654
655	* Makefile (MAKE_VERSION): 20130305
656	  Merge with NetBSD make, pick up
657	  o run .STALE: target when a dependency from .depend is missing.
658	  o job.c: add Job_RunTarget() for the above and .BEGIN
659
6602013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
661
662	* Makefile (MAKE_VERSION): 20130303
663	  Merge with NetBSD make, pick up
664	  o main.c: set .MAKE.OS to utsname.sysname
665	  o job.c: more checks for read and poll errors
666	  o var.c: lose VarChangeCase() saves 4% time
667
6682013-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
669
670	* boot-strap: remove MAKEOBJDIRPREFIX from environment since we
671	  want to use MAKEOBJDIR
672
6732013-01-27  Simon J. Gerraty  <sjg@bad.crufty.net>
674
675	* Merge with NetBSD make, pick up
676	  o make.1: more info on how shell commands are handled.
677	  o job.c,main.c: detect write errors to job pipes.
678
6792013-01-25  Simon J. Gerraty  <sjg@bad.crufty.net>
680
681	* Makefile (MAKE_VERSION): 20130123
682	  Merge with NetBSD make, pick up
683	  o meta.c: if script uses .OODATE and meta_oodate() decides
684	    rebuild is needed, .OODATE will be empty - set it to .ALLSRC.
685	  o var.c: in debug output indicate which variabale modifiers
686	    apply to.
687	  o remove Check_Cwd logic the makefiles have been fixed.
688
6892012-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
690
691	* makefile.in: add a simple makefile for folk who insist on
692	  ./configure; make; make install
693	  it just runs boot-strap
694	* include mk/* to accommodate the above
695	* boot-strap:  re-work to accommodate the above
696	  mksrc defaults to $Mydir/mk
697	  allow op={configure,build,install,clean,all}
698	  add options to facilitate install
699	* Makefile.config.in: just the bits set by configure
700	* Makefile: bump version to 20121212
701	  abandon Makefile.in (NetBSD Makefile)
702	  leverage mk/* instead
703	* configure.in: ensure srcdir is absolute
704
7052012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
706
707	* Makefile.in (MAKE_VERSION): 20121111
708	  fix generation of bmake.cat1
709
7102012-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
711
712	* Makefile.in (MAKE_VERSION): 20121109
713	  Merge with NetBSD make, pick up
714	  o make.c: MakeBuildChild: return 0 so search continues if a
715	    .ORDER dependency is detected.
716	  o unit-tests/order: test the above
717
7182012-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
719
720	* Makefile.in (MAKE_VERSION): 20121102
721	  Merge with NetBSD make, pick up
722	  o cond.c: allow cond_state[] to grow.
723	    In meta mode with a very large tree, we can hit the limit
724	    while processing dirdeps.
725
7262012-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
727
728	* Makefile.in: we need to use ${srcdir} not ${.CURDIR}
729
7302012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
731
732	* Makefile.in (MAKE_VERSION): 20121010
733	  o protect syntax that only bmake parses correctly.
734	  o remove auto setting of FORCE_MACHINE, use configure's
735	    --with-force-machine=whatever if that is desired.
736
7372012-10-08  Simon J. Gerraty  <sjg@bad.crufty.net>
738
739	* Makefile.in: do not lose history from make.1 when generating bmake.1
740
7412012-10-07  Simon J. Gerraty  <sjg@bad.crufty.net>
742
743	* Makefile.in (MAKE_VERSION): 20121007
744	  Merge with NetBSD make, pick up
745	  o compat.c: ignore empty commands - same as jobs mode.
746	  o make.1: document meta chars that cause use of shell
747
7482012-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
749
750	* Makefile.in (MAKE_VERSION): bump version to 20120911
751	* bsd.after-import.mk: include Makefile.inc early and allow it to
752	  override PROG
753
7542012-08-31  Simon J. Gerraty  <sjg@bad.crufty.net>
755
756	* Makefile.in (MAKE_VERSION): bump version to 20120831
757	  Merge with NetBSD make, pick up
758	  o cast sizeof() to int for comparison
759	  o minor make.1 tweak
760
7612012-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
762
763	* Makefile.in (MAKE_VERSION): bump version to 20120830
764	  Merge with NetBSD make, pick up
765	  o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
766	  o debug flag -dV causes -V to show raw value regardless.
767
7682012-07-05  Simon J. Gerraty  <sjg@bad.crufty.net>
769
770	* bsd.after-import.mk (after-import): ensure unit-tests/Makefile
771	  gets SRCTOP set.
772
7732012-07-04  Simon J. Gerraty  <sjg@bad.crufty.net>
774
775	* Makefile.in (MAKE_VERSION): bump version to 20120704
776	  Merge with NetBSD make, pick up
777	  o Job_ParseShell should call Shell_Init if it has been
778	    previously called.
779	* Makefile.in: set USE_META based on configure result.
780	  also .PARSEDIR is safer indicator of bmake.
781
7822012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
783
784	* Makefile.in: bump version to 20120626
785	  ensure CPPFLAGS is in CFLAGS
786	* meta.c: avoid nested externs
787	* bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
788
7892012-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
790
791	* Makefile.in (MAKE_VERSION): bump version to 20120620
792	  Merge with NetBSD make, pick up
793	  o make_malloc.c: avoid including make_malloc.h again
794
795	* Makefile.in: avoid bmake only syntax or protect with
796	  .if defined(.MAKE.LEVEL)
797	* bsd.after-import.mk: replace .-include with .sinclude
798	  ensure? SRCTOP gets a value
799	* configure.in: look for filemon.h in /usr/include/dev/filemon first.
800
8012012-06-19  Simon J. Gerraty  <sjg@bad.crufty.net>
802
803	* Makefile.in (MAKE_VERSION): bump version to 20120612
804	  Merge with NetBSD make, pick up
805	  o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
806	    for greater portability.
807	  o unit-tests/forloop: check that .for works as expected wrt
808	    number of times and with "quoted strings".
809
8102012-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
811
812	* Makefile.in (MAKE_VERSION): bump version to 20120606
813	  Merge with NetBSD make, pick up
814	  o compat.c: use kill(2) rather than raise(3).
815	* configure.in: look for sys/dev/filemon
816	* bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
817	  and pass BOOTSTRAP_XTRAS to boot-strap.
818
8192012-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
820
821	* Makefile.in (MAKE_VERSION): bump version to 20120604
822	  Merge with NetBSD make, pick up
823	  o util.c and var.c share same var for tracking if environ
824	    has been reallocated.
825	  o util.c provide getenv with setenv.
826	* Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
827	  when the shell actively strips .MAKE.* from the environment.
828	  We still refer to the variable always as .MAKE.LEVEL
829	* util.c fix bug in findenv() was finding prefix of name.
830	* compat.c: re-raising SIGINT etc after running .INTERRUPT
831	  results in more reliable termination of all activity on many
832	  platforms.
833
8342012-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
835
836	* Makefile.in (MAKE_VERSION): bump version to 20120602
837	  Merge with NetBSD make, pick up
838	  o for.c: handle quoted items in .for list
839
8402012-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
841
842	* Makefile.in (MAKE_VERSION): bump version to 20120530
843	  Merge with NetBSD make, pick up
844	  o compat.c: ignore empty command.
845
8462012-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
847
848	* Makefile.in (MAKE_VERSION): bump version to 20120524
849	* FILES: add bsd.after-import.mk:
850	  A simple means of integrating bmake into a BSD build system.
851
8522012-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
853
854	* Makefile.in (MAKE_VERSION): bump version to 20120520
855	  Merge with NetBSD make, pick up
856	  o increased limit for nested conditionals.
857
8582012-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
859
860	* Makefile.in (MAKE_VERSION): bump version to 20120518
861	  Merge with NetBSD make, pick up
862	  o use _exit(2) in signal hanlder
863	  o Don't use the [dir] cache when building nodes that might have
864	    changed since the last exec.
865	  o Avoid nested extern declaration warnings.
866
8672012-04-27  Simon J. Gerraty  <sjg@bad.crufty.net>
868
869	* meta.c (fgetLine): avoid %z - not portable.
870	* parse.c: Since we moved include of sys/mman.h
871	  and def's of MAP_COPY etc. we got dups from a merge.
872
8732012-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
874
875	* Makefile.in (MAKE_VERSION): bump version to 20120420
876	  Merge with NetBSD make, pick up
877	  o restore duplicate supression in .MAKE.MAKEFILES
878	    runtime saving can be significant.
879	  o Var_Subst() uses Buf_DestroyCompact() to reduce memory
880	    consumption up to 20%.
881
8822012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
883
884	* Makefile.in (MAKE_VERSION): bump version to 20120420
885          Merge with NetBSD make, pick up
886	  o remove duplicate supression in .MAKE.MAKEFILES
887	  o improved dir cache behavior
888	  o gmake'ish export command
889
8902012-03-25  Simon J. Gerraty  <sjg@bad.crufty.net>
891
892	* Makefile.in (MAKE_VERSION): bump version to 20120325
893	  Merge with NetBSD make, pick up
894	  o fix parsing of :[#] in conditionals.
895
8962012-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
897
898	* Makefile.in: replace use of .Nx in bmake.1 with NetBSD
899	  since some systems cannot cope with .Nx <version>
900
9012011-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
902
903	* Makefile.in (MAKE_VERSION): bump version to 20111111
904	  Merge with NetBSD make, pick up
905	  o debug output for .PARSEDIR and .PARSEFILE
906
9072011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
908
909	* Makefile.in (MAKE_VERSION):  bump version to 20111010
910
9112011-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
912
913	* boot-strap: check for an expected file in the dirs we look for.
914	* make-bootstrap.sh: pass on LDSTATIC
915
9162011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
917
918	* Makefile.in (MAKE_VERSION): bump version to 20111001
919	  Merge with NetBSD make, pick up
920	  o ensure .PREFIX is set for .PHONY
921	    and .TARGET set for .PHONY run via .END
922	  o __dead used consistently
923
9242011-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
925
926	* Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
927
9282011-09-05  Simon J. Gerraty  <sjg@bad.crufty.net>
929
930	* Makefile.in (MAKE_VERSION): bump version to 20110905
931	  Merge with NetBSD make, pick up
932	  o meta_oodate: ignore makeDependfile
933
9342011-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
935
936	* Makefile.in (MAKE_VERSION): bump version to 20110828
937	  Merge with NetBSD make, pick up
938	  o silent=yes in .MAKE.MODE causes meta mode to mark targets
939	    as SILENT if a .meta file is created
940
9412011-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
942
943	* Makefile.in (MAKE_VERSION): bump version to 20110818
944	  Merge with NetBSD make, pick up
945	  o in meta mode, if target flagged .META a missing .meta file
946	    means target is out-of-date
947	  o fixes for gcc 4.5 warnings
948	  o simplify job printing code
949
9502011-08-09  Simon J. Gerraty  <sjg@bad.crufty.net>
951
952	* Makefile.in (MAKE_VERSION): bump version to 20110808
953	  Merge with NetBSD make, pick up
954	  o do not touch OP_SPECIAL targets when doing make -t
955
9562011-06-22  Simon J. Gerraty  <sjg@bad.crufty.net>
957
958	* Makefile.in (MAKE_VERSION): bump version to 20110622
959	  Merge with NetBSD make, pick up
960	  o meta_oodate detect corrupted .meta file and declare oodate.
961	* configure.in: add check for setsid
962
9632011-06-07  Simon J. Gerraty  <sjg@bad.crufty.net>
964
965	* Merge with NetBSD make, pick up
966	  o unit-tests/modts now works on MirBSD
967
9682011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
969
970	* Makefile.in (MAKE_VERSION): bump version to 20110606
971	  Merge with NetBSD make, pick up
972	  o ApplyModifiers: when we parse a variable which is not
973	    the entire modifier string, or not followed by ':', do not
974	    consider it as containing modifiers.
975	  o loadfile: ensure newline at end of mapped file.
976
9772011-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
978
979	* Makefile.in (MAKE_VERSION): bump version to 20110505
980	  Merge with NetBSD make, pick up
981	  o .MAKE.META.BAILIWICK - list of prefixes which define the scope
982	    of make's control.  In meta mode, any generated file within
983	    said bailiwick, which  is found to be missing, causes current
984	    target to be out-of-date.
985
9862011-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
987
988	* Makefile.in (MAKE_VERSION): bump version to 20110411
989	  Merge with NetBSD make, pick up
990	  o when long modifiers fail to match, check sysV style.
991	    - add a test case
992
9932011-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
994
995	* Makefile.in (MAKE_VERSION): bump version to 20110410
996	  Merge with NetBSD make, pick up
997	  o :hash - cheap 32bit hash of value
998	  o :localtime, :gmtime - use value as format string for strftime.
999
10002011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1001
1002	* Makefile.in (MAKE_VERSION): bump version to 20110330
1003	  mostly because its a cooler version.
1004	  Merge with NetBSD make, pick up
1005	  o NetBSD tags for meta.[ch]
1006	  o job.c call meta_job_finish() after meta_job_error().
1007	  o meta_job_error() should call meta_job_finish() to ensure
1008	    .meta file is closed, and safe to copy - if .ERROR target wants.
1009	   meta_job_finish() is safe to call repeatedly.
1010
10112011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
1012
1013	* unit-tests/modts: use printf if it is a builtin,
1014	  to save us from MirBSD
1015
1016	* Makefile.in (MAKE_VERSION): bump version to 20110329
1017	  Merge with NetBSD make, pick up
1018	  o fix for use after free() in CondDoExists().
1019	  o meta_oodate() report extra commands and return earlier.
1020
10212011-03-27  Simon J. Gerraty  <sjg@bad.crufty.net>
1022
1023	* Makefile.in (MAKE_VERSION): bump version to 20110327
1024	  Merge with NetBSD make, pick up
1025	  o meta.c, if .MAKE.MODE contains curdirOk=yes
1026	    allow creating .meta files in .CURDIR
1027	* boot-strap (TOOL_DIFF): aparently at least on linux distro
1028	  formats the output of 'type' differently - so eat any "()"
1029
10302011-03-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1031
1032	* Makefile.in (MAKE_VERSION): bump version to 20110306
1033	  Merge with NetBSD make, pick up
1034	  o meta.c, only do getcwd() once
1035
10362011-03-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1037
1038	* Makefile.in (MAKE_VERSION): bump version to 20110305
1039	  Merge with NetBSD make, pick up
1040	  o correct sysV substitution handling of empty lhs and variable
1041	  o correct exists() check for dir with trailing /
1042	  o correct handling of modifiers for non-existant variables
1043	    during evaluation of conditionals.
1044	  o ensure MAP_FILE is defined.
1045	  o meta.c use curdir[] now exported by main.c
1046
10472011-02-25  Simon J. Gerraty  <sjg@bad.crufty.net>
1048
1049	* Makefile.in (MAKE_VERSION): bump version to 20110225
1050	  Merge with NetBSD make, pick up
1051	  o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
1052	    makefiles have been read.
1053	  o fix example of :? modifier in man page.
1054
10552011-02-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1056
1057	* Makefile.in (MAKE_VERSION): bump version to 20110214
1058	  Merge with NetBSD make, pick up
1059	  o meta.c handle realpath() failing when generating meta file
1060	    name.
1061
1062	* sigcompat.c: convert to ansi so we can use higher warning levels.
1063
1064
10652011-02-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1066
1067	* Makefile.in (MAKE_VERSION): bump version to 20110207
1068	  Merge with NetBSD make, pick up
1069	  o fix for bug in meta mode.
1070
10712011-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1072
1073	* parse.c: SunOS 5.8 at least does not have MAP_FILE
1074
10752011-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1076
1077	* Makefile.in (MAKE_VERSION): bump version to 20110101
1078	  Merge with NetBSD make, pick up
1079	  o use mmap(2) if available, for reading makefiles
1080
10812010-12-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1082
1083	* Makefile.in (MAKE_VERSION): bump version to 20101215
1084	  Merge with NetBSD make, pick up
1085	  o ensure meta_job_error() does not report a previous .meta file
1086	    as being culprit.
1087
10882010-12-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1089
1090	* Makefile.in (MAKE_VERSION): bump version to 20101210
1091	  Merge with NetBSD make, pick up
1092	  o meta_oodate: track cwd per process, and only consider target
1093	    out-of-date if missing file is outside make's CWD.
1094	    Ignore files in /tmp/ etc.
1095	  o to ensure unit-tests results match, need to control LC_ALL
1096	    as well as LANG.
1097	  o fix for parsing bug in var.c
1098
10992010-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1100
1101	* Makefile.in (MAKE_VERSION): bump version to 20101126
1102	  Merge with NetBSD make, pick up
1103	  o if stale dependency is an IMPSRC, search via .PATH
1104	  o meta_oodate: if a referenced file is missing, target is
1105	    out-of-date.
1106	  o meta_oodate: if a target uses .OODATE in its commands,
1107	    it (.OODATE) needs to be recomputed.
1108	  o keep a pointer to youngest child node, rather than just its
1109	    mtime.
1110
11112010-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1112
1113	* Makefile.in (MAKE_VERSION): bump version to 20101101
1114
11152010-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1116
1117	* machine.sh: like os.sh,
1118	allow for uname -p producing useless drivel
1119
11202010-09-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1121
1122	* boot-strap: document configure knobs for meta and filemon.
1123
1124	* Makefile.in (MAKE_VERSION): bump version to 20100911
1125	  Merge with NetBSD make, pick up
1126	  o meta.c - meta mode
1127
1128	* make-bootstrap.sh.in: handle meta.c
1129	* configure.in: add knobs for use_meta and filemon_h
1130	  also, look for dirname, str[e]sep and strlcpy
1131	* util.c: add simple err[x] and warn[x]
1132
11332010-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1134
1135	* boot-strap (TOOL_DIFF): set this to ensure tests use
1136	  the same version of diff that configure tested
1137
1138	* Makefile.in (MAKE_VERSION): bump version to 20100808
1139	  Merge with NetBSD make, pick up
1140	  o in jobs mode, when we discover we cannot make something,
1141	    call PrintOnError before exit.
1142
11432010-08-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1144
1145	* Makefile.in (MAKE_VERSION): bump version to 20100806
1146	  Merge with NetBSD make, pick up
1147	  o formatting fixes for ignored errors
1148	  o ensure jobs are cleaned up regardless of where wait() was called.
1149
11502010-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1151
1152	* Makefile.in (MAKE_VERSION): bump version to 20100618
1153	* os.sh (MACHINE_ARCH): watch out for drivel from uname -p
1154
11552010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1156
1157	* Makefile.in (MAKE_VERSION): bump version to 20100616
1158	  Merge with NetBSD make, pick up
1159	  o man page update
1160	  o call PrintOnError from JobFinish when we detect an error we
1161	    are not ignoring.
1162
11632010-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1164
1165	* Makefile.in (MAKE_VERSION): bump version to 20100606
1166	  Merge with NetBSD make, pick up
1167	  o man page update
1168
11692010-06-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1170
1171	* Makefile.in (MAKE_VERSION): bump version to 20100605
1172	  Merge with NetBSD make, pick up
1173	  o use bmake_signal() which is a wrapper around sigaction()
1174	    in place of signal()
1175	  o add .export-env to allow exporting variables to environment
1176	    without tracking (so no re-export when the internal value is
1177	    changed).
1178
11792010-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1180
1181	* Makefile.in (MAKE_VERSION): bump version to 20100524
1182	  Merge with NetBSD make, pick up
1183	  o fix for .info et al being greedy.
1184
11852010-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1186
1187	* Makefile.in (MAKE_VERSION): bump version to 20100520
1188	  Merge with NetBSD make, pick up
1189	  o back to using realpath on argv[0]
1190	    but only if contains '/' and does not start with '/'.
1191
11922010-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1193
1194	* boot-strap: use absolute path for bmake when running tests.
1195
1196	* Makefile.in (MAKE_VERSION):  bump version to 20100510
1197	  Merge with NetBSD make, pick up
1198	  o revert use of realpath on argv[0]
1199	    too many corner cases.
1200	  o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
1201
12022010-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1203
1204	* Makefile.in (MAKE_VERSION): bump version to 20100505
1205	  Merge with NetBSD make, pick up
1206	  o fix for missed SIGCHLD when compiled with SunPRO
1207	    actually for bmake, defining FORCE_POSIX_SIGNALS would have
1208	    done the job.
1209
12102010-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1211
1212	* Makefile.in (MAKE_VERSION): bump version to 20100430
1213	  Merge with NetBSD make, pick up
1214	  o fflush stdout before writing to stdout
1215
12162010-04-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1217
1218	* Makefile.in (MAKE_VERSION): bump version to 20100423
1219	  Merge with NetBSD make, pick up
1220	  o updated unit tests for Haiku (this time for sure).
1221	* boot-strap: based on patch from joerg
1222	  honor --with-default-sys-path better.
1223	* boot-strap: remove mention of --with-prefix-sys-path
1224
12252010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1226
1227	* Makefile.in (MAKE_VERSION): bump version to 20100422
1228	* Merge with NetBSD make, pick up
1229	  o fix for vfork() on Darwin.
1230	  o fix for bogus $TMPDIR.
1231	  o set .MAKE.MODE=compat for -B
1232	  o set .MAKE.JOBS=max_jobs for -j max_jobs
1233	  o allow unit-tests to run without any *.mk
1234	  o unit-tests/modmisc be more conservative in dirs presumed to exist.
1235	* boot-strap: ignore /usr/share/mk except on NetBSD.
1236	* unit-tests/Makefile.in: set LANG=C when running unit-tests to
1237	  ensure sort(1) behaves as expected.
1238
12392010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1240
1241	* boot-strap: add FindHereOrAbove so we can use -m .../mk
1242
12432010-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1244
1245	* Makefile.in (MAKE_VERSION): bump version to 20100420
1246	* Merge with NetBSD make, pick up
1247	  o fix for variable realpath() behavior.
1248	    we have to stat(2) the result to be sure.
1249	  o fix for .export (all) when nested vars use :sh
1250
12512010-04-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1252
1253	* Makefile.in (MAKE_VERSION): bump version to 20100414
1254	* Merge with NetBSD make, pick up
1255	  o use realpath to resolve argv[0] (for .MAKE) if needed.
1256	  o add realpath from libc.
1257	  o add :tA to resolve variable via realpath(3) if possible.
1258
12592010-04-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1260
1261	* Makefile.in (MAKE_VERSION): bump version to 20100408
1262	* Merge with NetBSD make, pick up
1263	  o unit tests for .ERROR, .error
1264	  o fix for .ERROR to ensure it cannot be default target.
1265
12662010-04-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1267
1268	* Makefile.in (MAKE_VERSION): bump version to 20100406
1269	* Merge with NetBSD make, pick up
1270	  o fix for compat mode "Error code" going to debug_file.
1271	  o fix for .ALLSRC being populated twice.
1272	  o support for .info, .warning and .error directives
1273	  o .MAKE.MODE to control make's operational mode
1274	  o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
1275	    name(s).
1276	  o .MAKE.DEPENDFILE to control the name of the depend file
1277	  o .ERROR target - run on failure.
1278
12792010-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1280
1281	* make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
1282
1283	* os.sh,arch.c: patch for Haiku from joerg at netbsd
1284
12852010-03-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1286
1287	* Makefile.in (MAKE_VERSION): bump version to 20100222
1288	* Merge with NetBSD make, pick up
1289	  o better error msg for .for with mutiple inter vars
1290
1291	* boot-strap:
1292	  o use make-bootstrap.sh from joerg at netbsd
1293	    to avoid the need for a native make when bootstrapping.
1294	  o add "" everywhere ;-)
1295	  o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
1296	    otherwise the pre-formated version.
1297
12982010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1299
1300	* Makefile.in (MAKE_VERSION): bump version to 20100102
1301	* Merge with NetBSD make, pick up:
1302	  o fix for -m .../
1303
13042009-11-18  Simon J. Gerraty  <sjg@void.crufty.net>
1305
1306	* Makefile.in (MAKE_VERSION): bump version to 20091118
1307	* Merge with NetBSD make, pick up:
1308	  o .unexport
1309	  o report lines that start with '.' and should have ':'
1310	    (catch typo's of .el*if).
1311
13122009-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
1313
1314	* configure.in: Ensure that srcdir and mksrc are absolute paths.
1315
13162009-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1317
1318	* Makefile.in (MAKE_VERSION): fix version to 20091007
1319
13202009-10-07  Simon J. Gerraty  <sjg@void.crufty.net>
1321
1322	* Makefile.in (MAKE_VERSION): bump version to 200910007
1323	* Merge with NetBSD make, pick up:
1324	  o fix for parsing of :S;...;...; applied to .for loop iterator
1325	    appearing in a dependency line.
1326
13272009-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1328
1329	* Makefile.in (MAKE_VERSION): bump version to 20090909
1330	* Merge with NetBSD make, pick up:
1331	  o fix for -C, .CURDIR and .OBJDIR
1332	* boot-strap:
1333	  o allow share_dir to be set independent of prefix.
1334	  o select default share_dir better when prefix ends in $HOST_TARGET
1335	  o if FORCE_BSD_MK etc were set, include them in the suggested
1336	    install-mk command.
1337
13382009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
1339
1340	* Makefile.in (MAKE_VERSION): bump version to 20090908
1341	* Merge with NetBSD make, pick up:
1342	  o .MAKE.LEVEL for recursion tracking
1343	  o fix for :M scanning \:
1344
13452009-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1346
1347	* configure.in: Don't -D__EXTENSIONS__ if
1348	AC_USE_SYSTEM_EXTENSIONS says "no".
1349
13502009-08-26  Simon J. Gerraty  <sjg@void.crufty.net>
1351
1352	* Makefile.in (MAKE_VERSION): bump version to 20090826
1353	Simplify MAKE_VERSION to just the bare date.
1354	* Merge with NetBSD make, pick up:
1355	  o -C directory support.
1356	  o support for SIGINFO
1357	  o use $TMPDIR for temp files.
1358	  o child of vfork should be careful about modifying parent's state.
1359
1360
13612009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
1362
1363	* Appy some patches for MiNT from David Brownlee
1364
13652009-02-26  Simon J. Gerraty  <sjg@void.crufty.net>
1366
1367	* Makefile.in (BMAKE_VERSION): bump version to 20090222
1368	* Merge with NetBSD make, pick up:
1369	  o Possible null pointer de-ref in Var_Set.
1370
13712009-02-08  Simon J. Gerraty  <sjg@void.crufty.net>
1372
1373	* Makefile.in (BMAKE_VERSION): bump version to 20090204
1374	* Merge with NetBSD make, pick up:
1375	  o bmake_malloc et al moved to their own .c
1376	  o Count both () and {} when looking for the end of a :M pattern
1377	  o Change 'Buffer' so that it is the actual struct, not a pointer to it.
1378	  o strlist.c - functions for processing extendable arrays of pointers to strings.
1379	  o ClientData replaced with void *, so const void * can be used.
1380	  o New debug flag C for DEBUG_CWD
1381
13822008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
1383
1384	* Makefile.in (BMAKE_VERSION): bump version to 20081111
1385	  Apply patch from Joerg Sonnenberge to
1386	  configure.in:
1387	  o remove some redundant checks
1388	  o check for emlloc etc only in libutil and require the whole family.
1389	  util.c:
1390	  o remove [v]asprintf which is no longer used.
1391
13922008-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1393
1394	* Makefile.in (BMAKE_VERSION): bump version to 20081101
1395	* Merge with NetBSD make, pick up:
1396	  o util.c: avoid use of putenv() - christos
1397
13982008-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
1399
1400	* Makefile.in (BMAKE_VERSION): bump version to 20081030
1401	  pick up man page tweaks.
1402
14032008-10-29  Simon J. Gerraty  <sjg@void.crufty.net>
1404
1405	* Makefile.in: move processing of LIBOBJS to after is definition!
1406	  thus we'll have getenv.c in SRCS only if needed.
1407
1408	* make.1: add examples of how to use :?
1409
1410	* Makefile.in (BMAKE_VERSION): bump version to 20081029
1411	* Merge with NetBSD make, pick up:
1412	  o fix for .END processing with -j
1413	  o segfault from Parse_Error when no makefile is open
1414	  o handle numeric expressions in any variable expansion
1415	  o debug output now defaults to stderr, -dF to change it - apb
1416	  o make now uses bmake_malloc etc so that it can build natively
1417	    on A/UX - wasn't an issue for bmake, but we want to keep in sync.
1418
14192008-09-27  Simon J. Gerraty  <sjg@void.crufty.net>
1420
1421	* Makefile.in (BMAKE_VERSION): bump version to 20080808
1422	* Merge with NetBSD make, pick up:
1423	  o fix for PR/38840: Pierre Pronchery: make crashes while parsing
1424	    long lines in Makefiles
1425	  o optimizations for VarQuote by joerg
1426	  o fix for PR/38756: dominik: make dumps core on invalid makefile
1427
14282008-05-15  Simon J. Gerraty  <sjg@void.crufty.net>
1429
1430	* Makefile.in (BMAKE_VERSION): bump version to 20080515
1431	* Merge with NetBSD make, pick up:
1432	  o fix skip setting vars in VAR_GLOBAL context, to handle
1433	    cases where VAR_CMD is used for other than command line vars.
1434
14352008-05-14  Simon J. Gerraty  <sjg@void.crufty.net>
1436
1437	* boot-strap (make_version): we may need to look in
1438	$prefix/share/mk for sys.mk
1439
1440	* Makefile.in (BMAKE_VERSION): bump version to 20080514
1441	* Merge with NetBSD make, pick up:
1442	  o skip setting vars in VAR_GLOBAL context, when already set in
1443	  VAR_CMD which takes precedence.
1444
14452008-03-30  Simon J. Gerraty  <sjg@void.crufty.net>
1446
1447	* Makefile.in (BMAKE_VERSION):  bump version to 20080330
1448	* Merge with NetBSD make, pick up:
1449	  o fix for ?= when LHS contains variable reference.
1450
14512008-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1452
1453	* merge some patches from NetBSD pkgsrc.
1454
1455	* makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
1456	the MAKSYSPATH used during bootstrap.
1457
1458	* Makefile.in (BMAKE_VERSION): bump version to 20080215
1459	* Merge with NetBSD make, pick up:
1460	  o warn if non-space chars follow 'empty' in a conditional.
1461
14622008-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1463
1464	* Makefile.in (BMAKE_VERSION): bump version to 20080118
1465	* Merge with NetBSD make, pick up:
1466	  o consider dependencies read from .depend as optional - dsl
1467	  o remember when buffer for reading makefile grows - dsl
1468	  o add -dl (aka LOUD) - David O'Brien
1469
14702007-10-22  Simon J. Gerraty  <sjg@void.crufty.net>
1471
1472	* Makefile.in (BMAKE_VERSION): bump version to 20071022
1473	* Merge with NetBSD make, pick up:
1474	  o Allow .PATH<suffix> to be used for .include ""
1475
1476	* boot-strap: source default settings from .bmake-boot-strap.rc
1477
14782007-10-16  Simon J. Gerraty  <sjg@void.crufty.net>
1479
1480	* Makefile.in: fix maninstall on various systems
1481	  provided that our man.mk is used.
1482	  For non-BSD systems we install the preformatted page
1483	  into $MANDIR/cat1
1484
14852007-10-15  Simon J. Gerraty  <sjg@void.crufty.net>
1486
1487	* boot-strap: make bmake.1 too, so maninstall works.
1488
14892007-10-14  Simon J. Gerraty  <sjg@void.crufty.net>
1490
1491	* Makefile.in (BMAKE_VERSION): bump version to 20071014
1492	* Merge with NetBSD make, pick up:
1493	  o revamped handling of defshell - configure no longer needs to
1494	    know the content of the shells array - apb
1495	  o stop Var_Subst modifying its input - apb
1496	  o avoid calling ParseTrackInput too often - dsl
1497
14982007-10-11  Simon J. Gerraty  <sjg@void.crufty.net>
1499
1500	* Makefile.in (BMAKE_VERSION): bump version to 20071011
1501	* Merge with NetBSD make, pick up:
1502	  o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
1503
1504	* sigcompat.c: some tweaks for HP-UX 11.x based on
1505	  patch from Tobias Nygren
1506
1507	* configure.in: update handling of --with-defshell to match
1508	  new make behavior.  --with-defshell=/usr/xpg4/bin/sh
1509	  will now do what one might hope - provided the chosen shell
1510	  behaves enough like sh.
1511
15122007-10-08  Simon J. Gerraty  <sjg@void.crufty.net>
1513
1514	* Makefile.in (BMAKE_VERSION): bump to 20071008
1515	* Merge with NetBSD make, pick up:
1516	  o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
1517	  o .export/.MAKE.EXPORTED - export of variables - sjg
1518	  o .MAKE.MAKEFILES - track all makefiles read - sjg
1519	  o performance improvements - dsl
1520	  o revamp parallel job scheduling - dsl
1521
15222006-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1523
1524	* Makefile.in (BMAKE_VERSION): bump to 20060728
1525	* Merge with NetBSD make, pick up:
1526	  o extra debug info during variable and cond processing - sjg
1527	  o shell definition now covers newline - rillig
1528	  o minor mem leak in PrintOnError - sjg
1529
15302006-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1531
1532	* Makefile.in (BMAKE_VERSION):  bump to 20060511
1533	* Merge with NetBSD make, pick up:
1534	  o more memory leaks - coverity
1535	  o possible overflow in ArchFindMember - coverity
1536	  o extract variable modifier code out of Var_Parse()
1537	    so it can be called recursively - sjg
1538	  o unit-tests/moderrs - sjg
1539
15402006-04-12  Simon J. Gerraty  <sjg@void.crufty.net>
1541
1542	* Makefile.in (BMAKE_VERSION): bump to 20060412
1543	* Merge with NetBSD make, pick up:
1544	  o fixes for some memory leaks - coverity
1545	  o only read first sys.mk etc when searching sysIncPath - sjg
1546
1547	* main.c (ReadMakefile): remove hack for __INTERIX that prevented
1548	setting ${MAKEFILE} - OBATA Akio
1549
15502006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
1551
1552	* Makefile.in (BMAKE_VERSION): bump to 20060318
1553	* Merge with NetBSD make, pick up:
1554	  o cleanup of job.c to remove remote handling, distcc is more
1555	    useful and this code was likely bit-rotting - dsl
1556	  o fix for :P modifier - sjg
1557	* boot-strap: set default prefix to something reasonable
1558	  (for me anyway).
1559
15602006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
1561
1562	* Makefile.in (BMAKE_VERSION): bump to 20060301
1563	* Merge with NetBSD make, pick up:
1564	  o make .WAIT apply recursively, document and test case - apb
1565	  o allow variable modifiers in a variable appear anywhere in
1566	    modifier list, document and test case - sjg
1567
15682006-02-22  Simon J. Gerraty  <sjg@void.crufty.net>
1569
1570	* Makefile.in (BMAKE_VERSION): bump to 20060222
1571	* Merge with NetBSD make, pick up:
1572	  o improved job token handling - dsl
1573	  o SIG_DFL the correct signal before exec - dsl
1574	  o more debug info during parsing - dsl
1575	  o allow variable modifiers to be specified via variable - sjg
1576	* boot-strap: explain why we died if no mksrc
1577
15782005-11-05  Simon J. Gerraty  <sjg@void.crufty.net>
1579
1580	* Makefile.in (BMAKE_VERSION): bump to 20051105
1581	* configure.in: always set default_sys_path
1582	  default is ${prefix}/share/mk
1583	  - remove prefix_sys_path, anyone wanting more than above
1584	    needs to set it manually.
1585
15862005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1587
1588	* boot-strap: make this a bit easier for pkgsrc folk.
1589	  bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
1590	  'mips' while pkgsrc wants 'mipseb' or 'mipsel'
1591
15922005-11-02  Simon J. Gerraty  <sjg@void.crufty.net>
1593
1594	* Makefile.in (BMAKE_VERSION): bump to 20051102
1595	* job.c (JobFinish): fix likely ancient merge lossage
1596	fix from Todd Vierling.
1597	* boot-strap (srcdir): allow setting mksrc=none
1598
15992005-10-31  Simon J. Gerraty  <sjg@void.crufty.net>
1600
1601	* Makefile.in (BMAKE_VERSION): bump to 20051031
1602	* ranlib.h: skip on OSF too.
1603	  (NetBSD PR 31864)
1604
16052005-10-10  Simon J. Gerraty  <sjg@void.crufty.net>
1606
1607	* Makefile.in (BMAKE_VERSION): bump to 20051002
1608	  fix a silly typo
1609
16102005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1611
1612	* Makefile.in (BMAKE_VERSION): bump to 20051001
1613	  support for UnixWare and some other systems,
1614	  based on patches from pkgsrc/bootstrap
1615
16162005-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1617
1618	* Makefile.in (BMAKE_VERSION): bump to 20050901
1619	* Merge with NetBSD make, pick up:
1620	  o possible parse error causing us to wander off.
1621
16222005-06-06  Simon J. Gerraty  <sjg@void.crufty.net>
1623
1624	* Makefile.in (BMAKE_VERSION): bump to 20050606
1625	* Merge with NetBSD make, pick up:
1626	  o :0x modifier for randomizing a list
1627	  o fixes for a number of -Wuninitialized issues.
1628
16292005-05-30  Simon J. Gerraty  <sjg@void.crufty.net>
1630
1631	* Makefile.in (BMAKE_VERSION): bump to 20050530
1632	* Merge with NetBSD make, pick up:
1633	  o Handle dependencies for .BEGIN, .END and .INTERRUPT
1634
1635	* README: was seriously out of date.
1636
16372005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
1638
1639	* Important to use .MAKE rather than MAKE.
1640
16412005-03-15  Simon J. Gerraty  <sjg@void.crufty.net>
1642
1643	* Makefile.in (BMAKE_VERSION): bump to 20050315
1644	* Merge with NetBSD make, pick up:
1645	  o don't mistake .elsefoo for .else
1646	  o use suffix-specific search path correctly
1647	  o bunch of style nits
1648
16492004-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1650
1651	* boot-strap:
1652	o ensure that args to --src and --with-mksrc
1653	  are resolved before giving them to configure.
1654	o add -o "objdir" so that builder can control it,
1655	  default is $OS as determined by os.sh
1656	o add -q to suppress all the install instructions.
1657
16582004-05-08  Simon J. Gerraty  <sjg@void.crufty.net>
1659
1660	* Remove __IDSTRING()
1661
1662	* Makefile.in (BMAKE_VERSION): bump to 20040508
1663	* Merge with NetBSD make, pick up:
1664	  o posix fixes
1665	    - remove '-e' from compat mode
1666	    - add support for '+' command-line prefix.
1667	  o fix for handling '--' on command-line.
1668	  o fix include in lst.lib/lstInt.h to simplify '-I's
1669	  o we also picked up replacement of MAKE_BOOTSTRAP
1670	    with !MAKE_NATIVE which is a noop, but possibly confusing.
1671
16722004-04-14  Simon J. Gerraty  <sjg@void.crufty.net>
1673
1674	* Makefile.in (BMAKE_VERSION): bump to 20040414
1675	* Merge with NetBSD make, pick up:
1676	  o allow quoted strings on lhs of conditionals
1677	  o issue warning when extra .else is seen
1678	  o print line numer when errors encountered during parsing from
1679	  string.
1680
16812004-02-20  Simon J. Gerraty  <sjg@void.crufty.net>
1682
1683	* Makefile.in (BMAKE_VERSION):  bump to 20040220
1684	* Merge with NetBSD make, pick up:
1685	  o fix for old :M parsing bug.
1686	  o re-jigged unit-tests
1687
16882004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1689
1690	* Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
1691	so that './bmake -f Makefile test' works.
1692
16932004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1694
1695	* Makefile.in: (BMAKE_VERSION): bump to 20040214
1696	* Merge with NetBSD make, pick up:
1697	  o search upwards for *.mk
1698	  o fix for double free of var substitution buffers
1699	  o use of getopt replaced with custom code, since the usage
1700	  (re-scanning) isn't posix compatible.
1701
17022004-02-12  Simon J. Gerraty  <sjg@void.crufty.net>
1703
1704	* arch.c: don't include ranlib.h on ELF systems
1705	(thanks to Chuck Cranor <chuck@ece.cmu.edu>).
1706
17072004-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1708
1709	* Makefile.in (BMAKE_VERSION): bump to 20040118
1710
1711	* boot-strap (while): export vars we assign to on cmdline
1712	* unit-test/Makefile.in: ternary is .PHONY
1713
17142004-01-08  Simon J. Gerraty  <sjg@void.crufty.net>
1715
1716	* Makefile.in (BMAKE_VERSION): bump version to 20040108
1717	* Merge with NetBSD make, pick up:
1718	  o fix for ternary modifier
1719
17202004-01-06  Simon J. Gerraty  <sjg@void.crufty.net>
1721
1722	* Makefile.in (BMAKE_VERSION): bump version to 20040105
1723	* Merge with NetBSD make, pick up:
1724	  o fix for cond.c to handle compound expressions better
1725	  o variable expansion within sysV style replacements
1726
17272003-12-22  Simon J. Gerraty  <sjg@void.crufty.net>
1728
1729	* Make portable snprintf safer - output to /dev/null first to
1730	check space needed.
1731
1732	* Makefile.in (BMAKE_VERSION): bump version to 20031222
1733	* Merge with NetBSD make, pick up:
1734	  o -dg3 to show input graph when things go wrong.
1735	  o explicitly look for makefiles in objdir if not found in curdir so
1736	    that errors in .depend etc will be reported accurarely.
1737	  o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1738	    instead as it more accurately reflects the expected behavior and
1739	    is more consistently implemented.
1740	  o avoid use of asprintf.
1741
17422003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1743
1744	* util.c: Add asprintf and vasprintf.
1745
1746	* Makefile.in (BMAKE_VERSION): bump version to 20030928
1747	* Merge with NetBSD make, pick up:
1748	:[] modifier - allows picking words from a variable.
1749	:tW modifier - allows treating value as one big word.
1750	W flag for :C and :S - allows treating value as one big word.
1751
17522003-09-12  Simon J. Gerraty  <sjg@void.crufty.net>
1753
1754	* Merge with NetBSD make
1755	pick up -de flag to enable printing failed command.
1756	don't skip 1st two dir entries (normally . and ..) since
1757	coda does not have them.
1758
17592003-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1760
1761	* Makefile.in (BMAKE_VERSION): bump version to 20030909
1762	* Merge with NetBSD make, pick up:
1763	- changes for -V '${VAR}' to print fully expanded value
1764	  cf. -V VAR
1765	- CompatRunCommand now prints the command that failed.
1766	- several files got updated 3 clause Berkeley license.
1767
17682003-08-02  Simon J. Gerraty  <sjg@void.crufty.net>
1769
1770	* boot-strap: Allow setting configure args on command line.
1771
17722003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1773
1774	* configure.in: add --with-defshell to allow sh or ksh
1775	to be selected as default shell.
1776
1777	* Makefile.in: bump version to 20030731
1778
1779	* Merge with NetBSD make
1780	Pick up .SHELL spec for ksh and associate man page changes.
1781	Also compat mode now uses the same shell specs.
1782
17832003-07-29  Simon J. Gerraty  <sjg@void.crufty.net>
1784
1785	* var.c (Var_Parse): ensure delim is initialized.
1786
1787	* unit-tests/Makefile.in: use single quotes to avoid problems from
1788	some shells.
1789
1790	* makefile.boot.in:
1791	Run the unit-tests as part of the bootstrap procedure.
1792
17932003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1794
1795	* unit-tests/Makefile.in: always force complaints from
1796	${TEST_MAKE} to be from 'make'.
1797
1798	* configure.in: add check for 'diff -u'
1799	also fix some old autoconf'isms
1800
1801	* Makefile.in (BMAKE_VERSION): bump version to 20030728.
1802	if using GCC add -Wno-cast-qual to CFLAGS for var.o
1803
1804	* Merge with NetBSD make
1805	Pick up fix for :ts parsing error in some cases.
1806	Pick unit-tests.
1807
18082003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1809
1810	* Makefile.in (BMAKE_VERSION): bump version to 20030723.
1811
1812	* var.c (Var_Parse): fix bug in :ts modifier, after const
1813	correctness fixes, must pass nstr to VarModify.
1814
18152003-07-14  Simon J. Gerraty  <sjg@void.crufty.net>
1816
1817	* Makefile.in: BMAKE_VERSION switch to a date based version.
1818	We'll generally use the date of last import from NetBSD.
1819
1820	* Merge with NetBSD make
1821	Pick up fixes for const-correctness, now passes WARNS=3 on
1822	NetBSD.
1823	Pick up :ts modifier, allows controlling the separator used
1824	between words in variable expansion.
1825
18262003-07-11  Simon J. Gerraty  <sjg@void.crufty.net>
1827
1828	* FILES: include boot-strap and os.sh
1829
1830	* Makefile.in: only set WARNS if we are NetBSD, the effect on
1831	FreeBSD is known to be bad.
1832
1833	* makefile.boot.in (bootstrap): make this the default target.
1834
1835	* Makefile.in: bump version to 3.1.19
1836
1837	* machine.sh: avoid A-Z with tr as it is bound to lose.
1838
18392003-07-10  Simon J. Gerraty  <sjg@void.crufty.net>
1840
1841	* Merge with NetBSD make
1842	Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1843	Plus some doc fixes.
1844
18452003-04-27  Simon J. Gerraty  <sjg@void.crufty.net>
1846
1847	* Merge with NetBSD make
1848	Pick up fix for PR/1523 - don't count a library as built, if there
1849	is no way to build it
1850
1851	* Bump version to 3.1.18
1852
18532003-03-23  Simon J. Gerraty  <sjg@void.crufty.net>
1854
1855	* Merge with NetBSD make
1856	Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1857	appears in src list.
1858
18592003-03-21  Simon J. Gerraty  <sjg@void.crufty.net>
1860
1861	* Merge with NetBSD make (mmm 10th anniversary!)
1862	pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1863	pick up -X which tells us to not export VAR=val via setenv if
1864	we are already doing so via MAKEFLAGS.  This saves valuable env
1865	space on systems like Darwin.
1866	set MAKE_VERSION to 3.1.17
1867
1868	* parse.c: pix up fix for suffix rules
1869
18702003-03-06  Simon J. Gerraty  <sjg@void.crufty.net>
1871
1872	* Merge with NetBSD make.
1873	pick up fix for propagating -B via MAKEFLAGS.
1874	set MAKE_VERSION to 3.1.16
1875
1876	* Apply some patches from pkgsrc-bootstrap/bmake
1877	Originally by Grant Beattie <grant@netbsd.org>
1878	I may have missed some - since they are based on bmake-3.1.12
1879
18802002-12-03  Simon J. Gerraty  <sjg@void.crufty.net>
1881
1882	* makefile.boot.in (bmake): update install targets for those that
1883	use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1884	havoc from gmake -w.  Thanks to Harlan Stenn <hstenn@cisco.com>.
1885
1886	* bmake.cat1: update the pre-formatted man page!
1887
18882002-11-30  Simon J. Gerraty  <sjg@void.crufty.net>
1889
1890	* Merge with NetBSD make.
1891	pick up fix for premature free of pointer used in call
1892	to Dir_InitCur().
1893	set MAKE_VERSION to 3.1.15
1894
18952002-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
1896
1897	* configure.in: determine suitable value for MKSRC.
1898	override using --with-mksrc=PATH.
1899
1900	* machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1901	configs(8) will use 'sun4' as an alias for 'sparc'.
1902
19032002-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
1904
1905	* Merge with NetBSD make.
1906	pick up ${.PATH}
1907	pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1908	set MAKE_VERSION to 3.1.14
1909	add configure checks for killpg and sys/socket.h
1910
19112002-09-16  Simon J. Gerraty  <sjg@void.crufty.net>
1912
1913	* tag bmake-3-1-13
1914
1915	* makefile.boot.in (bmake): use install-mk
1916	Also setup ./mk before trying to invoke bmake.boot incase we
1917	needed install-mk to create a sys.mk for us.
1918
1919	* configure.in: If we need to add -I${srcdir}/missing, make it an
1920	absolute path so that it works for lst.lib too.
1921
1922	* make.h: always include sys/cdefs.h since we provide one if the
1923	host does not.
1924
1925	* Makefile.in (install-mk):
1926	use MKSRC/install-mk which will do the right thing.
1927	use uname -p for ARCH if possible.
1928	since install-mk will setup links bsd.prog.mk -> prog.mk if
1929	needed, just .include bsd.prog.mk
1930
1931	* Merge with NetBSD make (NetBSD-1.6)
1932	Code is ansi-C only now.
1933	Bug in handling of dotLast is fixed.
1934	Can now assign .OBJDIR and make will reset its notions of life.
1935	New modifiers :tu :tl for toUpper and toLower.
1936
1937Tue Oct 16 12:18:42 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1938
1939	* Merge with NetBSD make
1940	pick up fix for .END failure in compat mode.
1941	pick up fix for extra va_end() in ParseVErrorInternal.
1942
1943Thu Oct 11 13:20:06 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1944
1945	* configure.in: for systems that have sys/cdefs.h check if it is
1946	compatible.  If not, include the one under missing, but tell it to
1947	include the native one too - necessary on Linux.
1948
1949	* missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1950	include_next (for gcc) to get the native sys/cdefs.h
1951
1952Tue Aug 21 02:29:34 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1953
1954	* job.c (JobFinish): Fix an earlier merge bug that resulted in
1955	leaking descriptors when using -jN.
1956
1957	* job.c (JobPrintCommand): See if "curdir" exists before
1958	attempting to chdir().  Doing the chdir directly in make (when in
1959	compat mode) fails silently, so let the -jN version do the same.
1960	This can happen when building kernels in an object tree and
1961	playing clever games to reset .CURDIR.
1962
1963	* Merged with NetBSD make
1964	pick up .USEBEFORE
1965
1966Tue Jun 26 23:45:11 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1967
1968	* makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1969
1970Tue Jun 12 16:48:57 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1971
1972	* var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1973	us not to export the iterator variable when using VAR_CMD context.
1974
1975Sun Jun 10 21:55:21 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1976
1977	* job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1978	its the wrong "fix".
1979
1980Sat Jun  9 00:11:24 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1981
1982	* Redesigned export of VAR_CMD's via MAKEFLAGS.
1983	We now simply append the variable names to .MAKEOVERRIDES, and
1984	handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1985	${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1986	Apart from fixing quoting bugs in previous version, this allows us
1987	to export vars to the environment by simply doing:
1988	.MAKEOVERRIDES+= PATH
1989	Merged again with NetBSD make, but the above is the only change.
1990
1991	* configure.in: added
1992	--disable-pwd-override		disable $PWD overriding getcwd()
1993	--disable-check-make-chdir	disable make trying to guess
1994		when it should automatically cd ${.CURDIR}
1995
1996	* Merge with NetBSD make, changes include:
1997	parse.c (ParseDoDependency): Spot that the syntax error is
1998	caused by an unresolved cvs/rcs conflict and say so.
1999	var.c: most of Var* functions now take a ctxt as 1st arg.
2000	now does variable substituion on rhs of sysv style modifiers.
2001
2002	* var.c (Var_Set): exporting of command line variables (VAR_CMD)
2003	is now done here.  We append the name='value' to .MAKEOVERRIDES
2004	rather than directly into MAKEFLAGS as this allows a Makefile to
2005	use .MAKEOVERRIDES= to disable this behaviour.  GNU make uses a
2006	very similar mechanism.  Note that in adding name='value' to
2007	.MAKEOVERRIDES we do the moral equivalent of:
2008	.MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
2009
2010Fri Jun  1 14:08:02 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2011
2012	* make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
2013
2014	* Merged with NetBSD make
2015	make -dx can now be used to run commands via sh -x
2016	better error messages on exec failures.
2017
2018Thu May 31 01:44:54 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2019
2020	* Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
2021	MAKE_VERSION gets updated.  Also don't use ?= for MAKE_VERSION,
2022	MACHINE etc otherwise they propagate from the previous bmake.
2023
2024	* configure.in (machine): allow --with-machine=generic to make
2025	configure use machine.sh to set MACHINE.
2026
2027	* job.c (JobInterrupt): convert to using WAIT_T and friends.
2028
2029	* Makefile.in: mention in bmake.1 that we use autoconf.
2030
2031	* make.1: mention MAKE_PRINT_VAR_ON_ERROR.
2032
2033Wed May 30 23:17:18 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2034
2035	* main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
2036	as that rather defeats the usefulness of ${MAKEFILE}.
2037
2038	* main.c (MainParseArgs): append command line variable assignments
2039	to MAKEFLAGS so that they get propagated to child make's.
2040	Apparently this is required POSIX behaviour?  Its useful anyway.
2041
2042Tue May 29 02:20:07 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2043
2044	* compat.c (CompatRunCommand): don't use perror() since stdio may
2045	cause problems in child of vfork().
2046
2047	* compat.c, main.c: Call PrintOnError() when we are going to bail.
2048	This routine prints out the .curdir where we stopped and will also
2049	display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
2050
2051	* main.c: add ${.newline} to hold a "\n" - sometimes handy in
2052	:@ expansion.
2053
2054	* var.c: VarLoopExpand: ignore addSpace if a \n is present.
2055
2056	* Added RCSid's for the files we've touched.
2057
2058Thu May 24 15:41:37 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2059
2060	* configure.in:	Thanks to some clues from mdb@juniper.net,
2061	added autoconf magic to control setting of MACHINE, MACHINE_ARCH
2062	as well as what ends up in _PATH_DEFSYSPATH.  We now have:
2063
2064  --with-machine=MACHINE  explicitly set MACHINE
2065  --with-force-machine=MACHINE  set FORCE_MACHINE
2066  --with-machine_arch=MACHINE_ARCH  explicitly set MACHINE_ARCH
2067  --with-default-sys-path=PATH:DIR:LIST  use an explicit _PATH_DEFSYSPATH
2068  --with-prefix-sys-path=PATH:DIR:LIST  prefix _PATH_PREFIX_SYSPATH
2069  --with-path-objdirprefix=PATH  override _PATH_OBJDIRPREFIX
2070
2071	If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
2072
2073	* makefile: added a pathetically simple makefile to drive
2074	bootstrapping.  Running configure by hand is more useful.
2075
2076	* Makefile.in: added MAKE_VERSION, and reworked things to be less
2077	dependent on NetBSD bsd.*.mk
2078
2079	* pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
2080	_PATH_OBJDIRPREFIX for those that don't want a default.
2081	construct _PATH_DEFSYSPATH from the info we get from configure.
2082
2083	* main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
2084	if MAKE_VERSION is defined.
2085
2086	* compat.c: when we bail, print out the .CURDIR we were in.
2087
2088Sat May 12 00:34:12 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2089
2090	* Merged with NetBSD make
2091
2092	* var.c: fixed a bug in the handling of the modifier :P
2093	if the node as found but the path was null, we segfault trying to
2094	duplicate it.
2095
2096Mon Mar  5 16:20:33 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
2097
2098	* Merged with NetBSD make
2099
2100	* make.c: Make_OODate's test for a library out of date was using
2101	cmtime where it should have used mtime (my bug).
2102
2103	* compat.c: Use perror() to tell us what really went wrong when we
2104	cannot exec a command.
2105
2106Fri Dec 15 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2107
2108	* Merged with NetBSD make
2109
2110Sat Jun 10 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2111
2112	* Merged with NetBSD make
2113
2114Thu Jun  1 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2115
2116	* Merged with NetBSD make
2117
2118Tue May 30 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2119
2120	* Merged with NetBSD make
2121
2122Thu Apr 27 00:07:47 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2123
2124	* util.c: don't provide signal() since we use sigcompat.c
2125
2126	* Makefile.in: added a build target.
2127
2128	* var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
2129	These allow some quite clever magic.
2130
2131	* main.c (main): added support for getenv(MAKESYSPATH).
2132
2133Mon Apr  2 16:25:13 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2134
2135	* Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
2136	This avoids objdir having a different value depending on how a
2137	directory was reached (via command line, or subdir.mk).
2138
2139	* If FORCE_MACHINE is defined, ignore getenv("MACHINE").
2140
2141Mon Apr  2 23:15:31 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2142
2143	* Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
2144	MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
2145	I've been testing this in NetBSD's make for some weeks.
2146
2147	* Turn Makefile into Makefile.in and make it useful.
2148
2149Tue Feb 29 22:08:00 2000 Simon J. Gerraty  <sjg@zen.quick.com.au>
2150
2151	* Imported NetBSD's -current make(1) and resolve conflicts.
2152
2153	* Applied autoconf patches from bmake v2
2154
2155	* Imported clean code base from NetBSD-1.0
2156