ChangeLog revision 251422
12013-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* Makefile (MAKE_VERSION): 20130604
4	  Merge with NetBSD make, pick up
5	  o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's
6	    to avoid leaking descriptors.
7
82013-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
9
10	* Makefile (MAKE_VERSION): 20130528
11	  Merge with NetBSD make, pick up
12	  o var.c: cleanup some left-overs in VarHash()
13
142013-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
15
16	* Makefile (MAKE_VERSION): 20130520
17	  generate manifest from component FILES rather than have to
18	  update FILES when mk/FILES changes.
19
202013-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
21
22	* Makefile (MAKE_VERSION): 20130518
23	  Merge with NetBSD make, pick up
24	  o suff.c: don't skip all processsing for .PHONY targets
25	    else wildcard srcs do not get expanded.
26	  o var.c: expand name of variable to delete if necessary.
27
282013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
29
30	* Makefile (MAKE_VERSION): 20130330
31	  Merge with NetBSD make, pick up
32	  o meta.c: refine the handling of .OODATE in commands.
33	    Rather than suppress command comparison for the entire script
34	    as though .NOMETA_CMP had been used, only suppress it for the
35	    one command line.
36	    This allows something like ${.OODATE:M.NOMETA_CMP} to be used to 
37	    suppress comparison of a command without otherwise affecting it.
38	  o make.1: document that
39
402013-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
41
42	* Makefile (MAKE_VERSION): 20130321
43	  yes, not quite right but its a cooler number.
44	  Merge with NetBSD make, pick up
45	  o parse.c: fix ParseGmakeExport to be portable 
46	    and add a unit-test.
47	* meta.c: call meta_init() before makefiles are read and if built
48	  with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON
49	  this let's makefiles test for support.
50	  Call meta_mode_init() to process .MAKE.MODE.
51
522013-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
53
54	* Makefile (MAKE_VERSION): 20130305
55	  Merge with NetBSD make, pick up
56	  o run .STALE: target when a dependency from .depend is missing.
57	  o job.c: add Job_RunTarget() for the above and .BEGIN
58
592013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
60
61	* Makefile (MAKE_VERSION): 20130303
62	  Merge with NetBSD make, pick up
63	  o main.c: set .MAKE.OS to utsname.sysname
64	  o job.c: more checks for read and poll errors
65	  o var.c: lose VarChangeCase() saves 4% time
66
672013-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
68
69	* boot-strap: remove MAKEOBJDIRPREFIX from environment since we
70	  want to use MAKEOBJDIR
71
722013-01-27  Simon J. Gerraty  <sjg@bad.crufty.net>
73
74	* Merge with NetBSD make, pick up
75	  o make.1: more info on how shell commands are handled.
76	  o job.c,main.c: detect write errors to job pipes.
77
782013-01-25  Simon J. Gerraty  <sjg@bad.crufty.net>
79
80	* Makefile (MAKE_VERSION): 20130123
81	  Merge with NetBSD make, pick up
82	  o meta.c: if script uses .OODATE and meta_oodate() decides
83	    rebuild is needed, .OODATE will be empty - set it to .ALLSRC.
84	  o var.c: in debug output indicate which variabale modifiers
85	    apply to.
86	  o remove Check_Cwd logic the makefiles have been fixed.
87	
882012-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
89
90	* makefile.in: add a simple makefile for folk who insist on
91	  ./configure; make; make install
92	  it just runs boot-strap
93	* include mk/* to accommodate the above
94	* boot-strap:  re-work to accommodate the above
95	  mksrc defaults to $Mydir/mk
96	  allow op={configure,build,install,clean,all}
97	  add options to facilitate install
98	* Makefile.config.in: just the bits set by configure
99	* Makefile: bump version to 20121212
100	  abandon Makefile.in (NetBSD Makefile)
101	  leverage mk/* instead
102	* configure.in: ensure srcdir is absolute
103
1042012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
105
106	* Makefile.in (MAKE_VERSION): 20121111
107	  fix generation of bmake.cat1
108
1092012-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
110
111	* Makefile.in (MAKE_VERSION): 20121109
112	  Merge with NetBSD make, pick up
113	  o make.c: MakeBuildChild: return 0 so search continues if a
114	    .ORDER dependency is detected.
115	  o unit-tests/order: test the above
116	
1172012-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
118
119	* Makefile.in (MAKE_VERSION): 20121102
120	  Merge with NetBSD make, pick up
121	  o cond.c: allow cond_state[] to grow.
122	    In meta mode with a very large tree, we can hit the limit
123	    while processing dirdeps.
124	
1252012-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
126
127	* Makefile.in: we need to use ${srcdir} not ${.CURDIR}
128
1292012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
130
131	* Makefile.in (MAKE_VERSION): 20121010
132	  o protect syntax that only bmake parses correctly.
133	  o remove auto setting of FORCE_MACHINE, use configure's
134	    --with-force-machine=whatever if that is desired.
135	
1362012-10-08  Simon J. Gerraty  <sjg@bad.crufty.net>
137
138	* Makefile.in: do not lose history from make.1 when generating bmake.1
139
1402012-10-07  Simon J. Gerraty  <sjg@bad.crufty.net>
141
142	* Makefile.in (MAKE_VERSION): 20121007
143	  Merge with NetBSD make, pick up
144	  o compat.c: ignore empty commands - same as jobs mode.
145	  o make.1: document meta chars that cause use of shell
146
1472012-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
148
149	* Makefile.in (MAKE_VERSION): bump version to 20120911
150	* bsd.after-import.mk: include Makefile.inc early and allow it to
151	  override PROG
152
1532012-08-31  Simon J. Gerraty  <sjg@bad.crufty.net>
154
155	* Makefile.in (MAKE_VERSION): bump version to 20120831
156	  Merge with NetBSD make, pick up
157	  o cast sizeof() to int for comparison
158	  o minor make.1 tweak
159
1602012-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
161
162	* Makefile.in (MAKE_VERSION): bump version to 20120830
163	  Merge with NetBSD make, pick up
164	  o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
165	  o debug flag -dV causes -V to show raw value regardless.
166	
1672012-07-05  Simon J. Gerraty  <sjg@bad.crufty.net>
168
169	* bsd.after-import.mk (after-import): ensure unit-tests/Makefile
170	  gets SRCTOP set.
171
1722012-07-04  Simon J. Gerraty  <sjg@bad.crufty.net>
173
174	* Makefile.in (MAKE_VERSION): bump version to 20120704
175	  Merge with NetBSD make, pick up
176	  o Job_ParseShell should call Shell_Init if it has been
177	    previously called.
178	* Makefile.in: set USE_META based on configure result.
179	  also .PARSEDIR is safer indicator of bmake.
180
1812012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
182
183	* Makefile.in: bump version to 20120626
184	  ensure CPPFLAGS is in CFLAGS
185	* meta.c: avoid nested externs
186	* bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
187	
1882012-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
189
190	* Makefile.in (MAKE_VERSION): bump version to 20120620
191	  Merge with NetBSD make, pick up
192	  o make_malloc.c: avoid including make_malloc.h again
193
194	* Makefile.in: avoid bmake only syntax or protect with
195	  .if defined(.MAKE.LEVEL)
196	* bsd.after-import.mk: replace .-include with .sinclude
197	  ensure? SRCTOP gets a value
198	* configure.in: look for filemon.h in /usr/include/dev/filemon first.
199
2002012-06-19  Simon J. Gerraty  <sjg@bad.crufty.net>
201
202	* Makefile.in (MAKE_VERSION): bump version to 20120612
203	  Merge with NetBSD make, pick up
204	  o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
205	    for greater portability.
206	  o unit-tests/forloop: check that .for works as expected wrt
207	    number of times and with "quoted strings".
208	
2092012-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
210
211	* Makefile.in (MAKE_VERSION): bump version to 20120606
212	  Merge with NetBSD make, pick up
213	  o compat.c: use kill(2) rather than raise(3).
214	* configure.in: look for sys/dev/filemon
215	* bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
216	  and pass BOOTSTRAP_XTRAS to boot-strap.
217
2182012-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
219
220	* Makefile.in (MAKE_VERSION): bump version to 20120604
221	  Merge with NetBSD make, pick up
222	  o util.c and var.c share same var for tracking if environ
223	    has been reallocated.
224	  o util.c provide getenv with setenv.
225	* Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
226	  when the shell actively strips .MAKE.* from the environment.
227	  We still refer to the variable always as .MAKE.LEVEL
228	* util.c fix bug in findenv() was finding prefix of name.
229	* compat.c: re-raising SIGINT etc after running .INTERRUPT
230	  results in more reliable termination of all activity on many
231	  platforms.
232
2332012-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
234
235	* Makefile.in (MAKE_VERSION): bump version to 20120602
236	  Merge with NetBSD make, pick up
237	  o for.c: handle quoted items in .for list
238
2392012-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
240
241	* Makefile.in (MAKE_VERSION): bump version to 20120530
242	  Merge with NetBSD make, pick up
243	  o compat.c: ignore empty command.
244
2452012-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
246
247	* Makefile.in (MAKE_VERSION): bump version to 20120524
248	* FILES: add bsd.after-import.mk:
249	  A simple means of integrating bmake into a BSD build system.
250
2512012-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
252
253	* Makefile.in (MAKE_VERSION): bump version to 20120520
254	  Merge with NetBSD make, pick up
255	  o increased limit for nested conditionals.
256	
2572012-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
258
259	* Makefile.in (MAKE_VERSION): bump version to 20120518
260	  Merge with NetBSD make, pick up
261	  o use _exit(2) in signal hanlder
262	  o Don't use the [dir] cache when building nodes that might have
263	    changed since the last exec.
264	  o Avoid nested extern declaration warnings.
265
2662012-04-27  Simon J. Gerraty  <sjg@bad.crufty.net>
267
268	* meta.c (fgetLine): avoid %z - not portable.
269	* parse.c: Since we moved include of sys/mman.h
270	  and def's of MAP_COPY etc. we got dups from a merge.
271
2722012-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
273
274	* Makefile.in (MAKE_VERSION): bump version to 20120420
275	  Merge with NetBSD make, pick up
276	  o restore duplicate supression in .MAKE.MAKEFILES
277	    runtime saving can be significant.
278	  o Var_Subst() uses Buf_DestroyCompact() to reduce memory
279	    consumption up to 20%. 
280
2812012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
282
283	* Makefile.in (MAKE_VERSION): bump version to 20120420
284          Merge with NetBSD make, pick up
285	  o remove duplicate supression in .MAKE.MAKEFILES
286	  o improved dir cache behavior
287	  o gmake'ish export command
288	
2892012-03-25  Simon J. Gerraty  <sjg@bad.crufty.net>
290
291	* Makefile.in (MAKE_VERSION): bump version to 20120325
292	  Merge with NetBSD make, pick up
293	  o fix parsing of :[#] in conditionals.
294
2952012-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
296
297	* Makefile.in: replace use of .Nx in bmake.1 with NetBSD
298	  since some systems cannot cope with .Nx <version>
299
3002011-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
301
302	* Makefile.in (MAKE_VERSION): bump version to 20111111
303	  Merge with NetBSD make, pick up
304	  o debug output for .PARSEDIR and .PARSEFILE
305
3062011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
307
308	* Makefile.in (MAKE_VERSION):  bump version to 20111010
309
3102011-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
311
312	* boot-strap: check for an expected file in the dirs we look for.
313	* make-bootstrap.sh: pass on LDSTATIC
314
3152011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
316
317	* Makefile.in (MAKE_VERSION): bump version to 20111001
318	  Merge with NetBSD make, pick up
319	  o ensure .PREFIX is set for .PHONY
320	    and .TARGET set for .PHONY run via .END
321	  o __dead used consistently
322	
3232011-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
324
325	* Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
326
3272011-09-05  Simon J. Gerraty  <sjg@bad.crufty.net>
328
329	* Makefile.in (MAKE_VERSION): bump version to 20110905
330	  Merge with NetBSD make, pick up
331	  o meta_oodate: ignore makeDependfile
332	
3332011-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
334
335	* Makefile.in (MAKE_VERSION): bump version to 20110828
336	  Merge with NetBSD make, pick up
337	  o silent=yes in .MAKE.MODE causes meta mode to mark targets 
338	    as SILENT if a .meta file is created
339
3402011-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
341
342	* Makefile.in (MAKE_VERSION): bump version to 20110818
343	  Merge with NetBSD make, pick up
344	  o in meta mode, if target flagged .META a missing .meta file
345	    means target is out-of-date
346	  o fixes for gcc 4.5 warnings
347	  o simplify job printing code
348	
3492011-08-09  Simon J. Gerraty  <sjg@bad.crufty.net>
350
351	* Makefile.in (MAKE_VERSION): bump version to 20110808
352	  Merge with NetBSD make, pick up
353	  o do not touch OP_SPECIAL targets when doing make -t
354	
3552011-06-22  Simon J. Gerraty  <sjg@bad.crufty.net>
356
357	* Makefile.in (MAKE_VERSION): bump version to 20110622
358	  Merge with NetBSD make, pick up
359	  o meta_oodate detect corrupted .meta file and declare oodate.
360	* configure.in: add check for setsid
361	
3622011-06-07  Simon J. Gerraty  <sjg@bad.crufty.net>
363
364	* Merge with NetBSD make, pick up
365	  o unit-tests/modts now works on MirBSD
366
3672011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
368
369	* Makefile.in (MAKE_VERSION): bump version to 20110606
370	  Merge with NetBSD make, pick up
371	  o ApplyModifiers: when we parse a variable which is not
372	    the entire modifier string, or not followed by ':', do not
373	    consider it as containing modifiers.
374	  o loadfile: ensure newline at end of mapped file.
375
3762011-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
377
378	* Makefile.in (MAKE_VERSION): bump version to 20110505
379	  Merge with NetBSD make, pick up
380	  o .MAKE.META.BAILIWICK - list of prefixes which define the scope
381	    of make's control.  In meta mode, any generated file within
382	    said bailiwick, which  is found to be missing, causes current
383	    target to be out-of-date. 
384	
3852011-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
386
387	* Makefile.in (MAKE_VERSION): bump version to 20110411
388	  Merge with NetBSD make, pick up
389	  o when long modifiers fail to match, check sysV style.
390	    - add a test case
391	
3922011-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
393
394	* Makefile.in (MAKE_VERSION): bump version to 20110410
395	  Merge with NetBSD make, pick up
396	  o :hash - cheap 32bit hash of value
397	  o :localtime, :gmtime - use value as format string for strftime.
398	
3992011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
400
401	* Makefile.in (MAKE_VERSION): bump version to 20110330
402	  mostly because its a cooler version.
403	  Merge with NetBSD make, pick up
404	  o NetBSD tags for meta.[ch]
405	  o job.c call meta_job_finish() after meta_job_error().
406	  o meta_job_error() should call meta_job_finish() to ensure
407	    .meta file is closed, and safe to copy - if .ERROR target wants.
408	   meta_job_finish() is safe to call repeatedly.
409	
4102011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
411
412	* unit-tests/modts: use printf if it is a builtin, 
413	  to save us from MirBSD
414
415	* Makefile.in (MAKE_VERSION): bump version to 20110329
416	  Merge with NetBSD make, pick up
417	  o fix for use after free() in CondDoExists().
418	  o meta_oodate() report extra commands and return earlier.
419	
4202011-03-27  Simon J. Gerraty  <sjg@bad.crufty.net>
421
422	* Makefile.in (MAKE_VERSION): bump version to 20110327
423	  Merge with NetBSD make, pick up
424	  o meta.c, if .MAKE.MODE contains curdirOk=yes
425	    allow creating .meta files in .CURDIR
426	* boot-strap (TOOL_DIFF): aparently at least on linux distro
427	  formats the output of 'type' differently - so eat any "()"
428
4292011-03-06  Simon J. Gerraty  <sjg@bad.crufty.net>
430
431	* Makefile.in (MAKE_VERSION): bump version to 20110306
432	  Merge with NetBSD make, pick up
433	  o meta.c, only do getcwd() once
434	
4352011-03-05  Simon J. Gerraty  <sjg@bad.crufty.net>
436
437	* Makefile.in (MAKE_VERSION): bump version to 20110305
438	  Merge with NetBSD make, pick up
439	  o correct sysV substitution handling of empty lhs and variable
440	  o correct exists() check for dir with trailing /
441	  o correct handling of modifiers for non-existant variables
442	    during evaluation of conditionals.
443	  o ensure MAP_FILE is defined.
444	  o meta.c use curdir[] now exported by main.c
445	
4462011-02-25  Simon J. Gerraty  <sjg@bad.crufty.net>
447
448	* Makefile.in (MAKE_VERSION): bump version to 20110225
449	  Merge with NetBSD make, pick up
450	  o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
451	    makefiles have been read.
452	  o fix example of :? modifier in man page.
453	
4542011-02-13  Simon J. Gerraty  <sjg@bad.crufty.net>
455
456	* Makefile.in (MAKE_VERSION): bump version to 20110214
457	  Merge with NetBSD make, pick up
458	  o meta.c handle realpath() failing when generating meta file
459	    name.
460
461	* sigcompat.c: convert to ansi so we can use higher warning levels.
462
463
4642011-02-07  Simon J. Gerraty  <sjg@bad.crufty.net>
465
466	* Makefile.in (MAKE_VERSION): bump version to 20110207
467	  Merge with NetBSD make, pick up
468	  o fix for bug in meta mode.
469	
4702011-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
471
472	* parse.c: SunOS 5.8 at least does not have MAP_FILE
473
4742011-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
475
476	* Makefile.in (MAKE_VERSION): bump version to 20110101
477	  Merge with NetBSD make, pick up
478	  o use mmap(2) if available, for reading makefiles
479
4802010-12-15  Simon J. Gerraty  <sjg@bad.crufty.net>
481
482	* Makefile.in (MAKE_VERSION): bump version to 20101215
483	  Merge with NetBSD make, pick up
484	  o ensure meta_job_error() does not report a previous .meta file
485	    as being culprit.
486
4872010-12-10  Simon J. Gerraty  <sjg@bad.crufty.net>
488
489	* Makefile.in (MAKE_VERSION): bump version to 20101210
490	  Merge with NetBSD make, pick up
491	  o meta_oodate: track cwd per process, and only consider target
492	    out-of-date if missing file is outside make's CWD.
493	    Ignore files in /tmp/ etc.
494	  o to ensure unit-tests results match, need to control LC_ALL
495	    as well as LANG.
496	  o fix for parsing bug in var.c
497
4982010-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
499
500	* Makefile.in (MAKE_VERSION): bump version to 20101126
501	  Merge with NetBSD make, pick up
502	  o if stale dependency is an IMPSRC, search via .PATH
503	  o meta_oodate: if a referenced file is missing, target is
504	    out-of-date.
505	  o meta_oodate: if a target uses .OODATE in its commands,
506	    it (.OODATE) needs to be recomputed.
507	  o keep a pointer to youngest child node, rather than just its
508	    mtime.
509	
5102010-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
511
512	* Makefile.in (MAKE_VERSION): bump version to 20101101
513
5142010-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
515
516	* machine.sh: like os.sh, 
517	allow for uname -p producing useless drivel
518
5192010-09-13  Simon J. Gerraty  <sjg@bad.crufty.net>
520
521	* boot-strap: document configure knobs for meta and filemon.
522
523	* Makefile.in (MAKE_VERSION): bump version to 20100911
524	  Merge with NetBSD make, pick up
525	  o meta.c - meta mode
526
527	* make-bootstrap.sh.in: handle meta.c
528	* configure.in: add knobs for use_meta and filemon_h
529	  also, look for dirname, str[e]sep and strlcpy
530	* util.c: add simple err[x] and warn[x]
531
5322010-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
533
534	* boot-strap (TOOL_DIFF): set this to ensure tests use
535	  the same version of diff that configure tested
536
537	* Makefile.in (MAKE_VERSION): bump version to 20100808
538	  Merge with NetBSD make, pick up
539	  o in jobs mode, when we discover we cannot make something,
540	    call PrintOnError before exit.
541	
5422010-08-06  Simon J. Gerraty  <sjg@bad.crufty.net>
543
544	* Makefile.in (MAKE_VERSION): bump version to 20100806
545	  Merge with NetBSD make, pick up
546	  o formatting fixes for ignored errors
547	  o ensure jobs are cleaned up regardless of where wait() was called.
548
5492010-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
550
551	* Makefile.in (MAKE_VERSION): bump version to 20100618
552	* os.sh (MACHINE_ARCH): watch out for drivel from uname -p
553
5542010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
555
556	* Makefile.in (MAKE_VERSION): bump version to 20100616
557	  Merge with NetBSD make, pick up
558	  o man page update
559	  o call PrintOnError from JobFinish when we detect an error we
560	    are not ignoring. 
561	
5622010-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
563
564	* Makefile.in (MAKE_VERSION): bump version to 20100606
565	  Merge with NetBSD make, pick up
566	  o man page update
567
5682010-06-05  Simon J. Gerraty  <sjg@bad.crufty.net>
569
570	* Makefile.in (MAKE_VERSION): bump version to 20100605
571	  Merge with NetBSD make, pick up
572	  o use bmake_signal() which is a wrapper around sigaction() 
573	    in place of signal()
574	  o add .export-env to allow exporting variables to environment
575	    without tracking (so no re-export when the internal value is
576	    changed).
577	
5782010-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
579
580	* Makefile.in (MAKE_VERSION): bump version to 20100524
581	  Merge with NetBSD make, pick up
582	  o fix for .info et al being greedy.
583
5842010-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
585
586	* Makefile.in (MAKE_VERSION): bump version to 20100520
587	  Merge with NetBSD make, pick up
588	  o back to using realpath on argv[0] 
589	    but only if contains '/' and does not start with '/'.
590
5912010-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
592
593	* boot-strap: use absolute path for bmake when running tests.
594
595	* Makefile.in (MAKE_VERSION):  bump version to 20100510
596	  Merge with NetBSD make, pick up
597	  o revert use of realpath on argv[0]
598	    too many corner cases.
599	  o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
600
6012010-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
602
603	* Makefile.in (MAKE_VERSION): bump version to 20100505
604	  Merge with NetBSD make, pick up
605	  o fix for missed SIGCHLD when compiled with SunPRO
606	    actually for bmake, defining FORCE_POSIX_SIGNALS would have
607	    done the job.
608
6092010-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
610
611	* Makefile.in (MAKE_VERSION): bump version to 20100430
612	  Merge with NetBSD make, pick up
613	  o fflush stdout before writing to stdout
614	
6152010-04-23  Simon J. Gerraty  <sjg@bad.crufty.net>
616
617	* Makefile.in (MAKE_VERSION): bump version to 20100423
618	  Merge with NetBSD make, pick up
619	  o updated unit tests for Haiku (this time for sure).
620	* boot-strap: based on patch from joerg 
621	  honor --with-default-sys-path better.
622	* boot-strap: remove mention of --with-prefix-sys-path
623	
6242010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
625
626	* Makefile.in (MAKE_VERSION): bump version to 20100422
627	* Merge with NetBSD make, pick up
628	  o fix for vfork() on Darwin.
629	  o fix for bogus $TMPDIR.
630	  o set .MAKE.MODE=compat for -B
631	  o set .MAKE.JOBS=max_jobs for -j max_jobs
632	  o allow unit-tests to run without any *.mk
633	  o unit-tests/modmisc be more conservative in dirs presumed to exist.
634	* boot-strap: ignore /usr/share/mk except on NetBSD.
635	* unit-tests/Makefile.in: set LANG=C when running unit-tests to
636	  ensure sort(1) behaves as expected. 
637	
6382010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
639
640	* boot-strap: add FindHereOrAbove so we can use -m .../mk
641
6422010-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
643
644	* Makefile.in (MAKE_VERSION): bump version to 20100420
645	* Merge with NetBSD make, pick up
646	  o fix for variable realpath() behavior.
647	    we have to stat(2) the result to be sure.
648	  o fix for .export (all) when nested vars use :sh
649	
6502010-04-14  Simon J. Gerraty  <sjg@bad.crufty.net>
651
652	* Makefile.in (MAKE_VERSION): bump version to 20100414
653	* Merge with NetBSD make, pick up
654	  o use realpath to resolve argv[0] (for .MAKE) if needed.
655	  o add realpath from libc.
656	  o add :tA to resolve variable via realpath(3) if possible.
657
6582010-04-08  Simon J. Gerraty  <sjg@bad.crufty.net>
659
660	* Makefile.in (MAKE_VERSION): bump version to 20100408
661	* Merge with NetBSD make, pick up
662	  o unit tests for .ERROR, .error
663	  o fix for .ERROR to ensure it cannot be default target.
664
6652010-04-06  Simon J. Gerraty  <sjg@bad.crufty.net>
666
667	* Makefile.in (MAKE_VERSION): bump version to 20100406
668	* Merge with NetBSD make, pick up
669	  o fix for compat mode "Error code" going to debug_file.
670	  o fix for .ALLSRC being populated twice.
671	  o support for .info, .warning and .error directives
672	  o .MAKE.MODE to control make's operational mode
673	  o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
674	    name(s).
675	  o .MAKE.DEPENDFILE to control the name of the depend file
676	  o .ERROR target - run on failure.
677	
6782010-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
679
680	* make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
681
682	* os.sh,arch.c: patch for Haiku from joerg at netbsd
683
6842010-03-17  Simon J. Gerraty  <sjg@bad.crufty.net>
685
686	* Makefile.in (MAKE_VERSION): bump version to 20100222
687	* Merge with NetBSD make, pick up
688	  o better error msg for .for with mutiple inter vars
689	
690	* boot-strap: 
691	  o use make-bootstrap.sh from joerg at netbsd
692	    to avoid the need for a native make when bootstrapping.
693	  o add "" everywhere ;-)
694	  o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
695	    otherwise the pre-formated version.
696
6972010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
698
699	* Makefile.in (MAKE_VERSION): bump version to 20100102
700	* Merge with NetBSD make, pick up:
701	  o fix for -m .../
702
7032009-11-18  Simon J. Gerraty  <sjg@void.crufty.net>
704
705	* Makefile.in (MAKE_VERSION): bump version to 20091118
706	* Merge with NetBSD make, pick up:
707	  o .unexport
708	  o report lines that start with '.' and should have ':'
709	    (catch typo's of .el*if).
710	
7112009-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
712
713	* configure.in: Ensure that srcdir and mksrc are absolute paths.
714
7152009-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
716
717	* Makefile.in (MAKE_VERSION): fix version to 20091007
718
7192009-10-07  Simon J. Gerraty  <sjg@void.crufty.net>
720
721	* Makefile.in (MAKE_VERSION): bump version to 200910007
722	* Merge with NetBSD make, pick up:
723	  o fix for parsing of :S;...;...; applied to .for loop iterator
724	    appearing in a dependency line. 
725	
7262009-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
727
728	* Makefile.in (MAKE_VERSION): bump version to 20090909
729	* Merge with NetBSD make, pick up:
730	  o fix for -C, .CURDIR and .OBJDIR
731	* boot-strap: 
732	  o allow share_dir to be set independent of prefix.
733	  o select default share_dir better when prefix ends in $HOST_TARGET
734	  o if FORCE_BSD_MK etc were set, include them in the suggested
735	    install-mk command.
736
7372009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
738
739	* Makefile.in (MAKE_VERSION): bump version to 20090908
740	* Merge with NetBSD make, pick up:
741	  o .MAKE.LEVEL for recursion tracking
742	  o fix for :M scanning \:
743
7442009-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
745
746	* configure.in: Don't -D__EXTENSIONS__ if
747	AC_USE_SYSTEM_EXTENSIONS says "no".
748
7492009-08-26  Simon J. Gerraty  <sjg@void.crufty.net>
750
751	* Makefile.in (MAKE_VERSION): bump version to 20090826
752	Simplify MAKE_VERSION to just the bare date.
753	* Merge with NetBSD make, pick up:
754	  o -C directory support.
755	  o support for SIGINFO
756	  o use $TMPDIR for temp files.
757	  o child of vfork should be careful about modifying parent's state.
758	
759
7602009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
761
762	* Appy some patches for MiNT from David Brownlee
763
7642009-02-26  Simon J. Gerraty  <sjg@void.crufty.net>
765
766	* Makefile.in (BMAKE_VERSION): bump version to 20090222
767	* Merge with NetBSD make, pick up:
768	  o Possible null pointer de-ref in Var_Set.
769
7702009-02-08  Simon J. Gerraty  <sjg@void.crufty.net>
771
772	* Makefile.in (BMAKE_VERSION): bump version to 20090204
773	* Merge with NetBSD make, pick up:
774	  o bmake_malloc et al moved to their own .c
775	  o Count both () and {} when looking for the end of a :M pattern
776	  o Change 'Buffer' so that it is the actual struct, not a pointer to it.
777	  o strlist.c - functions for processing extendable arrays of pointers to strings.
778	  o ClientData replaced with void *, so const void * can be used.
779	  o New debug flag C for DEBUG_CWD
780
7812008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
782
783	* Makefile.in (BMAKE_VERSION): bump version to 20081111
784	  Apply patch from Joerg Sonnenberge to
785	  configure.in:
786	  o remove some redundant checks
787	  o check for emlloc etc only in libutil and require the whole family.
788	  util.c:
789	  o remove [v]asprintf which is no longer used.
790	
7912008-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
792
793	* Makefile.in (BMAKE_VERSION): bump version to 20081101
794	* Merge with NetBSD make, pick up:
795	  o util.c: avoid use of putenv() - christos
796
7972008-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
798
799	* Makefile.in (BMAKE_VERSION): bump version to 20081030
800	  pick up man page tweaks.
801
8022008-10-29  Simon J. Gerraty  <sjg@void.crufty.net>
803
804	* Makefile.in: move processing of LIBOBJS to after is definition!
805	  thus we'll have getenv.c in SRCS only if needed.
806
807	* make.1: add examples of how to use :?
808
809	* Makefile.in (BMAKE_VERSION): bump version to 20081029
810	* Merge with NetBSD make, pick up:
811	  o fix for .END processing with -j
812	  o segfault from Parse_Error when no makefile is open
813	  o handle numeric expressions in any variable expansion
814	  o debug output now defaults to stderr, -dF to change it - apb
815	  o make now uses bmake_malloc etc so that it can build natively 
816	    on A/UX - wasn't an issue for bmake, but we want to keep in sync.
817
8182008-09-27  Simon J. Gerraty  <sjg@void.crufty.net>
819
820	* Makefile.in (BMAKE_VERSION): bump version to 20080808
821	* Merge with NetBSD make, pick up:
822	  o fix for PR/38840: Pierre Pronchery: make crashes while parsing
823	    long lines in Makefiles 
824	  o optimizations for VarQuote by joerg
825	  o fix for PR/38756: dominik: make dumps core on invalid makefile
826	
8272008-05-15  Simon J. Gerraty  <sjg@void.crufty.net>
828
829	* Makefile.in (BMAKE_VERSION): bump version to 20080515
830	* Merge with NetBSD make, pick up:
831	  o fix skip setting vars in VAR_GLOBAL context, to handle
832	    cases where VAR_CMD is used for other than command line vars.
833
8342008-05-14  Simon J. Gerraty  <sjg@void.crufty.net>
835
836	* boot-strap (make_version): we may need to look in
837	$prefix/share/mk for sys.mk 
838
839	* Makefile.in (BMAKE_VERSION): bump version to 20080514
840	* Merge with NetBSD make, pick up:
841	  o skip setting vars in VAR_GLOBAL context, when already set in
842	  VAR_CMD which takes precedence.
843
8442008-03-30  Simon J. Gerraty  <sjg@void.crufty.net>
845
846	* Makefile.in (BMAKE_VERSION):  bump version to 20080330
847	* Merge with NetBSD make, pick up:
848	  o fix for ?= when LHS contains variable reference.
849
8502008-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
851
852	* merge some patches from NetBSD pkgsrc.
853	
854	* makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
855	the MAKSYSPATH used during bootstrap. 
856
857	* Makefile.in (BMAKE_VERSION): bump version to 20080215
858	* Merge with NetBSD make, pick up:
859	  o warn if non-space chars follow 'empty' in a conditional.
860
8612008-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
862
863	* Makefile.in (BMAKE_VERSION): bump version to 20080118
864	* Merge with NetBSD make, pick up:
865	  o consider dependencies read from .depend as optional - dsl
866	  o remember when buffer for reading makefile grows - dsl
867	  o add -dl (aka LOUD) - David O'Brien
868
8692007-10-22  Simon J. Gerraty  <sjg@void.crufty.net>
870
871	* Makefile.in (BMAKE_VERSION): bump version to 20071022
872	* Merge with NetBSD make, pick up:
873	  o Allow .PATH<suffix> to be used for .include ""
874
875	* boot-strap: source default settings from .bmake-boot-strap.rc
876
8772007-10-16  Simon J. Gerraty  <sjg@void.crufty.net>
878
879	* Makefile.in: fix maninstall on various systems 
880	  provided that our man.mk is used.
881	  For non-BSD systems we install the preformatted page
882	  into $MANDIR/cat1
883
8842007-10-15  Simon J. Gerraty  <sjg@void.crufty.net>
885
886	* boot-strap: make bmake.1 too, so maninstall works.
887
8882007-10-14  Simon J. Gerraty  <sjg@void.crufty.net>
889
890	* Makefile.in (BMAKE_VERSION): bump version to 20071014
891	* Merge with NetBSD make, pick up:
892	  o revamped handling of defshell - configure no longer needs to
893	    know the content of the shells array - apb
894	  o stop Var_Subst modifying its input - apb
895	  o avoid calling ParseTrackInput too often - dsl
896
8972007-10-11  Simon J. Gerraty  <sjg@void.crufty.net>
898
899	* Makefile.in (BMAKE_VERSION): bump version to 20071011
900	* Merge with NetBSD make, pick up:
901	  o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
902
903	* sigcompat.c: some tweaks for HP-UX 11.x based on 
904	  patch from Tobias Nygren
905
906	* configure.in: update handling of --with-defshell to match
907	  new make behavior.  --with-defshell=/usr/xpg4/bin/sh
908	  will now do what one might hope - provided the chosen shell
909	  behaves enough like sh.
910
9112007-10-08  Simon J. Gerraty  <sjg@void.crufty.net>
912
913	* Makefile.in (BMAKE_VERSION): bump to 20071008
914	* Merge with NetBSD make, pick up:
915	  o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
916	  o .export/.MAKE.EXPORTED - export of variables - sjg
917	  o .MAKE.MAKEFILES - track all makefiles read - sjg
918	  o performance improvements - dsl
919	  o revamp parallel job scheduling - dsl
920	
9212006-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
922
923	* Makefile.in (BMAKE_VERSION): bump to 20060728
924	* Merge with NetBSD make, pick up:
925	  o extra debug info during variable and cond processing - sjg
926	  o shell definition now covers newline - rillig
927	  o minor mem leak in PrintOnError - sjg
928
9292006-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
930
931	* Makefile.in (BMAKE_VERSION):  bump to 20060511
932	* Merge with NetBSD make, pick up:
933	  o more memory leaks - coverity
934	  o possible overflow in ArchFindMember - coverity
935	  o extract variable modifier code out of Var_Parse()
936	    so it can be called recursively - sjg
937	  o unit-tests/moderrs - sjg
938
9392006-04-12  Simon J. Gerraty  <sjg@void.crufty.net>
940
941	* Makefile.in (BMAKE_VERSION): bump to 20060412
942	* Merge with NetBSD make, pick up:
943	  o fixes for some memory leaks - coverity
944	  o only read first sys.mk etc when searching sysIncPath - sjg
945
946	* main.c (ReadMakefile): remove hack for __INTERIX that prevented
947	setting ${MAKEFILE} - OBATA Akio
948
9492006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
950
951	* Makefile.in (BMAKE_VERSION): bump to 20060318
952	* Merge with NetBSD make, pick up:
953	  o cleanup of job.c to remove remote handling, distcc is more
954	    useful and this code was likely bit-rotting - dsl
955	  o fix for :P modifier - sjg
956	* boot-strap: set default prefix to something reasonable 
957	  (for me anyway). 
958
9592006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
960
961	* Makefile.in (BMAKE_VERSION): bump to 20060301
962	* Merge with NetBSD make, pick up:
963	  o make .WAIT apply recursively, document and test case - apb
964	  o allow variable modifiers in a variable appear anywhere in
965	    modifier list, document and test case - sjg
966
9672006-02-22  Simon J. Gerraty  <sjg@void.crufty.net>
968
969	* Makefile.in (BMAKE_VERSION): bump to 20060222
970	* Merge with NetBSD make, pick up:
971	  o improved job token handling - dsl
972	  o SIG_DFL the correct signal before exec - dsl
973	  o more debug info during parsing - dsl
974	  o allow variable modifiers to be specified via variable - sjg
975	* boot-strap: explain why we died if no mksrc
976
9772005-11-05  Simon J. Gerraty  <sjg@void.crufty.net>
978
979	* Makefile.in (BMAKE_VERSION): bump to 20051105
980	* configure.in: always set default_sys_path 
981	  default is ${prefix}/share/mk
982	  - remove prefix_sys_path, anyone wanting more than above
983	    needs to set it manually.
984
9852005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
986
987	* boot-strap: make this a bit easier for pkgsrc folk.
988	  bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
989	  'mips' while pkgsrc wants 'mipseb' or 'mipsel'
990
9912005-11-02  Simon J. Gerraty  <sjg@void.crufty.net>
992
993	* Makefile.in (BMAKE_VERSION): bump to 20051102
994	* job.c (JobFinish): fix likely ancient merge lossage
995	fix from Todd Vierling.
996	* boot-strap (srcdir): allow setting mksrc=none
997
9982005-10-31  Simon J. Gerraty  <sjg@void.crufty.net>
999
1000	* Makefile.in (BMAKE_VERSION): bump to 20051031
1001	* ranlib.h: skip on OSF too.
1002	  (NetBSD PR 31864)
1003
10042005-10-10  Simon J. Gerraty  <sjg@void.crufty.net>
1005
1006	* Makefile.in (BMAKE_VERSION): bump to 20051002
1007	  fix a silly typo
1008
10092005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1010
1011	* Makefile.in (BMAKE_VERSION): bump to 20051001
1012	  support for UnixWare and some other systems,
1013	  based on patches from pkgsrc/bootstrap
1014
10152005-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1016
1017	* Makefile.in (BMAKE_VERSION): bump to 20050901
1018	* Merge with NetBSD make, pick up:
1019	  o possible parse error causing us to wander off.
1020
10212005-06-06  Simon J. Gerraty  <sjg@void.crufty.net>
1022
1023	* Makefile.in (BMAKE_VERSION): bump to 20050606
1024	* Merge with NetBSD make, pick up:
1025	  o :0x modifier for randomizing a list
1026	  o fixes for a number of -Wuninitialized issues.
1027
10282005-05-30  Simon J. Gerraty  <sjg@void.crufty.net>
1029
1030	* Makefile.in (BMAKE_VERSION): bump to 20050530
1031	* Merge with NetBSD make, pick up:
1032	  o Handle dependencies for .BEGIN, .END and .INTERRUPT
1033
1034	* README: was seriously out of date.
1035	
10362005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
1037
1038	* Important to use .MAKE rather than MAKE.
1039
10402005-03-15  Simon J. Gerraty  <sjg@void.crufty.net>
1041
1042	* Makefile.in (BMAKE_VERSION): bump to 20050315
1043	* Merge with NetBSD make, pick up:
1044	  o don't mistake .elsefoo for .else
1045	  o use suffix-specific search path correctly
1046	  o bunch of style nits
1047
10482004-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1049
1050	* boot-strap: 
1051	o ensure that args to --src and --with-mksrc
1052	  are resolved before giving them to configure.
1053	o add -o "objdir" so that builder can control it,
1054	  default is $OS as determined by os.sh
1055	o add -q to suppress all the install instructions.
1056
10572004-05-08  Simon J. Gerraty  <sjg@void.crufty.net>
1058
1059	* Remove __IDSTRING()
1060
1061	* Makefile.in (BMAKE_VERSION): bump to 20040508
1062	* Merge with NetBSD make, pick up:
1063	  o posix fixes
1064	    - remove '-e' from compat mode
1065	    - add support for '+' command-line prefix.
1066	  o fix for handling '--' on command-line.
1067	  o fix include in lst.lib/lstInt.h to simplify '-I's
1068	  o we also picked up replacement of MAKE_BOOTSTRAP 
1069	    with !MAKE_NATIVE which is a noop, but possibly confusing.
1070
10712004-04-14  Simon J. Gerraty  <sjg@void.crufty.net>
1072
1073	* Makefile.in (BMAKE_VERSION): bump to 20040414
1074	* Merge with NetBSD make, pick up:
1075	  o allow quoted strings on lhs of conditionals
1076	  o issue warning when extra .else is seen
1077	  o print line numer when errors encountered during parsing from
1078	  string.
1079
10802004-02-20  Simon J. Gerraty  <sjg@void.crufty.net>
1081
1082	* Makefile.in (BMAKE_VERSION):  bump to 20040220
1083	* Merge with NetBSD make, pick up:
1084	  o fix for old :M parsing bug.
1085	  o re-jigged unit-tests
1086
10872004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1088
1089	* Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
1090	so that './bmake -f Makefile test' works.
1091	
10922004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1093
1094	* Makefile.in: (BMAKE_VERSION): bump to 20040214
1095	* Merge with NetBSD make, pick up:
1096	  o search upwards for *.mk
1097	  o fix for double free of var substitution buffers
1098	  o use of getopt replaced with custom code, since the usage
1099	  (re-scanning) isn't posix compatible.
1100
11012004-02-12  Simon J. Gerraty  <sjg@void.crufty.net>
1102
1103	* arch.c: don't include ranlib.h on ELF systems
1104	(thanks to Chuck Cranor <chuck@ece.cmu.edu>).
1105
11062004-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1107
1108	* Makefile.in (BMAKE_VERSION): bump to 20040118
1109
1110	* boot-strap (while): export vars we assign to on cmdline
1111	* unit-test/Makefile.in: ternary is .PHONY
1112
11132004-01-08  Simon J. Gerraty  <sjg@void.crufty.net>
1114
1115	* Makefile.in (BMAKE_VERSION): bump version to 20040108
1116	* Merge with NetBSD make, pick up:
1117	  o fix for ternary modifier
1118
11192004-01-06  Simon J. Gerraty  <sjg@void.crufty.net>
1120
1121	* Makefile.in (BMAKE_VERSION): bump version to 20040105
1122	* Merge with NetBSD make, pick up:
1123	  o fix for cond.c to handle compound expressions better
1124	  o variable expansion within sysV style replacements
1125	  
11262003-12-22  Simon J. Gerraty  <sjg@void.crufty.net>
1127
1128	* Make portable snprintf safer - output to /dev/null first to
1129	check space needed.
1130
1131	* Makefile.in (BMAKE_VERSION): bump version to 20031222
1132	* Merge with NetBSD make, pick up:
1133	  o -dg3 to show input graph when things go wrong.
1134	  o explicitly look for makefiles in objdir if not found in curdir so
1135	    that errors in .depend etc will be reported accurarely. 
1136	  o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1137	    instead as it more accurately reflects the expected behavior and
1138	    is more consistently implemented.
1139	  o avoid use of asprintf.
1140
11412003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1142
1143	* util.c: Add asprintf and vasprintf.
1144
1145	* Makefile.in (BMAKE_VERSION): bump version to 20030928
1146	* Merge with NetBSD make, pick up:
1147	:[] modifier - allows picking words from a variable.
1148	:tW modifier - allows treating value as one big word.
1149	W flag for :C and :S - allows treating value as one big word.
1150	
11512003-09-12  Simon J. Gerraty  <sjg@void.crufty.net>
1152
1153	* Merge with NetBSD make
1154	pick up -de flag to enable printing failed command.
1155	don't skip 1st two dir entries (normally . and ..) since
1156	coda does not have them.
1157
11582003-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1159
1160	* Makefile.in (BMAKE_VERSION): bump version to 20030909
1161	* Merge with NetBSD make, pick up:
1162	- changes for -V '${VAR}' to print fully expanded value
1163	  cf. -V VAR
1164	- CompatRunCommand now prints the command that failed.
1165	- several files got updated 3 clause Berkeley license.
1166	
11672003-08-02  Simon J. Gerraty  <sjg@void.crufty.net>
1168
1169	* boot-strap: Allow setting configure args on command line.
1170
11712003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1172
1173	* configure.in: add --with-defshell to allow sh or ksh
1174	to be selected as default shell.
1175
1176	* Makefile.in: bump version to 20030731
1177
1178	* Merge with NetBSD make 
1179	Pick up .SHELL spec for ksh and associate man page changes.
1180	Also compat mode now uses the same shell specs.
1181
11822003-07-29  Simon J. Gerraty  <sjg@void.crufty.net>
1183
1184	* var.c (Var_Parse): ensure delim is initialized.
1185
1186	* unit-tests/Makefile.in: use single quotes to avoid problems from
1187	some shells.
1188
1189	* makefile.boot.in:
1190	Run the unit-tests as part of the bootstrap procedure.
1191
11922003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1193
1194	* unit-tests/Makefile.in: always force complaints from
1195	${TEST_MAKE} to be from 'make'.
1196
1197	* configure.in: add check for 'diff -u'
1198	also fix some old autoconf'isms
1199	
1200	* Makefile.in (BMAKE_VERSION): bump version to 20030728.
1201	if using GCC add -Wno-cast-qual to CFLAGS for var.o
1202
1203	* Merge with NetBSD make
1204	Pick up fix for :ts parsing error in some cases.
1205	Pick unit-tests.
1206
12072003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1208
1209	* Makefile.in (BMAKE_VERSION): bump version to 20030723.
1210
1211	* var.c (Var_Parse): fix bug in :ts modifier, after const
1212	correctness fixes, must pass nstr to VarModify.
1213
12142003-07-14  Simon J. Gerraty  <sjg@void.crufty.net>
1215
1216	* Makefile.in: BMAKE_VERSION switch to a date based version.
1217	We'll generally use the date of last import from NetBSD.
1218
1219	* Merge with NetBSD make
1220	Pick up fixes for const-correctness, now passes WARNS=3 on
1221	NetBSD.
1222	Pick up :ts modifier, allows controlling the separator used
1223	between words in variable expansion.
1224
12252003-07-11  Simon J. Gerraty  <sjg@void.crufty.net>
1226
1227	* FILES: include boot-strap and os.sh
1228
1229	* Makefile.in: only set WARNS if we are NetBSD, the effect on
1230	FreeBSD is known to be bad.
1231
1232	* makefile.boot.in (bootstrap): make this the default target.
1233
1234	* Makefile.in: bump version to 3.1.19
1235
1236	* machine.sh: avoid A-Z with tr as it is bound to lose.
1237
12382003-07-10  Simon J. Gerraty  <sjg@void.crufty.net>
1239
1240	* Merge with NetBSD make
1241	Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1242	Plus some doc fixes.
1243	
12442003-04-27  Simon J. Gerraty  <sjg@void.crufty.net>
1245
1246	* Merge with NetBSD make
1247	Pick up fix for PR/1523 - don't count a library as built, if there
1248	is no way to build it 
1249
1250	* Bump version to 3.1.18
1251
12522003-03-23  Simon J. Gerraty  <sjg@void.crufty.net>
1253
1254	* Merge with NetBSD make
1255	Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1256	appears in src list.
1257
12582003-03-21  Simon J. Gerraty  <sjg@void.crufty.net>
1259
1260	* Merge with NetBSD make (mmm 10th anniversary!)
1261	pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1262	pick up -X which tells us to not export VAR=val via setenv if
1263	we are already doing so via MAKEFLAGS.  This saves valuable env
1264	space on systems like Darwin.
1265	set MAKE_VERSION to 3.1.17
1266
1267	* parse.c: pix up fix for suffix rules
1268
12692003-03-06  Simon J. Gerraty  <sjg@void.crufty.net>
1270
1271	* Merge with NetBSD make.
1272	pick up fix for propagating -B via MAKEFLAGS.
1273	set MAKE_VERSION to 3.1.16
1274
1275	* Apply some patches from pkgsrc-bootstrap/bmake
1276	Originally by Grant Beattie <grant@netbsd.org>
1277	I may have missed some - since they are based on bmake-3.1.12
1278	
12792002-12-03  Simon J. Gerraty  <sjg@void.crufty.net>
1280
1281	* makefile.boot.in (bmake): update install targets for those that
1282	use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1283	havoc from gmake -w.  Thanks to Harlan Stenn <hstenn@cisco.com>.
1284
1285	* bmake.cat1: update the pre-formatted man page!
1286
12872002-11-30  Simon J. Gerraty  <sjg@void.crufty.net>
1288
1289	* Merge with NetBSD make.
1290	pick up fix for premature free of pointer used in call
1291	to Dir_InitCur().
1292	set MAKE_VERSION to 3.1.15
1293
12942002-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
1295
1296	* configure.in: determine suitable value for MKSRC.
1297	override using --with-mksrc=PATH.
1298
1299	* machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1300	configs(8) will use 'sun4' as an alias for 'sparc'.
1301
13022002-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
1303
1304	* Merge with NetBSD make.
1305	pick up ${.PATH}
1306	pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1307	set MAKE_VERSION to 3.1.14
1308	add configure checks for killpg and sys/socket.h
1309
13102002-09-16  Simon J. Gerraty  <sjg@void.crufty.net>
1311
1312	* tag bmake-3-1-13
1313	
1314	* makefile.boot.in (bmake): use install-mk
1315	Also setup ./mk before trying to invoke bmake.boot incase we
1316	needed install-mk to create a sys.mk for us. 
1317
1318	* configure.in: If we need to add -I${srcdir}/missing, make it an
1319	absolute path so that it works for lst.lib too.
1320
1321	* make.h: always include sys/cdefs.h since we provide one if the
1322	host does not.
1323	
1324	* Makefile.in (install-mk): 
1325	use MKSRC/install-mk which will do the right thing.
1326	use uname -p for ARCH if possible.
1327	since install-mk will setup links bsd.prog.mk -> prog.mk if
1328	needed, just .include bsd.prog.mk
1329
1330	* Merge with NetBSD make (NetBSD-1.6)
1331	Code is ansi-C only now.
1332	Bug in handling of dotLast is fixed.
1333	Can now assign .OBJDIR and make will reset its notions of life.
1334	New modifiers :tu :tl for toUpper and toLower.
1335
1336Tue Oct 16 12:18:42 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1337
1338	* Merge with NetBSD make
1339	pick up fix for .END failure in compat mode.
1340	pick up fix for extra va_end() in ParseVErrorInternal.
1341
1342Thu Oct 11 13:20:06 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1343
1344	* configure.in: for systems that have sys/cdefs.h check if it is
1345	compatible.  If not, include the one under missing, but tell it to
1346	include the native one too - necessary on Linux.
1347
1348	* missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1349	include_next (for gcc) to get the native sys/cdefs.h
1350
1351Tue Aug 21 02:29:34 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1352
1353	* job.c (JobFinish): Fix an earlier merge bug that resulted in
1354	leaking descriptors when using -jN.
1355	
1356	* job.c (JobPrintCommand): See if "curdir" exists before
1357	attempting to chdir().  Doing the chdir directly in make (when in
1358	compat mode) fails silently, so let the -jN version do the same.
1359	This can happen when building kernels in an object tree and
1360	playing clever games to reset .CURDIR.
1361
1362	* Merged with NetBSD make
1363	pick up .USEBEFORE
1364
1365Tue Jun 26 23:45:11 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1366
1367	* makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1368
1369Tue Jun 12 16:48:57 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1370
1371	* var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1372	us not to export the iterator variable when using VAR_CMD context.
1373
1374Sun Jun 10 21:55:21 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1375
1376	* job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1377	its the wrong "fix".
1378
1379Sat Jun  9 00:11:24 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1380
1381	* Redesigned export of VAR_CMD's via MAKEFLAGS.
1382	We now simply append the variable names to .MAKEOVERRIDES, and
1383	handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1384	${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1385	Apart from fixing quoting bugs in previous version, this allows us
1386	to export vars to the environment by simply doing:
1387	.MAKEOVERRIDES+= PATH 
1388	Merged again with NetBSD make, but the above is the only change.
1389
1390	* configure.in: added
1391	--disable-pwd-override		disable $PWD overriding getcwd()
1392	--disable-check-make-chdir	disable make trying to guess 
1393		when it should automatically cd ${.CURDIR}
1394
1395	* Merge with NetBSD make, changes include:
1396	parse.c (ParseDoDependency): Spot that the syntax error is
1397	caused by an unresolved cvs/rcs conflict and say so.
1398	var.c: most of Var* functions now take a ctxt as 1st arg.
1399	now does variable substituion on rhs of sysv style modifiers.
1400	
1401	* var.c (Var_Set): exporting of command line variables (VAR_CMD)
1402	is now done here.  We append the name='value' to .MAKEOVERRIDES
1403	rather than directly into MAKEFLAGS as this allows a Makefile to
1404	use .MAKEOVERRIDES= to disable this behaviour.  GNU make uses a
1405	very similar mechanism.  Note that in adding name='value' to
1406	.MAKEOVERRIDES we do the moral equivalent of:
1407	.MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
1408
1409Fri Jun  1 14:08:02 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1410
1411	* make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
1412
1413	* Merged with NetBSD make
1414	make -dx can now be used to run commands via sh -x
1415	better error messages on exec failures.
1416
1417Thu May 31 01:44:54 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1418
1419	* Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
1420	MAKE_VERSION gets updated.  Also don't use ?= for MAKE_VERSION,
1421	MACHINE etc otherwise they propagate from the previous bmake.
1422
1423	* configure.in (machine): allow --with-machine=generic to make
1424	configure use machine.sh to set MACHINE. 
1425
1426	* job.c (JobInterrupt): convert to using WAIT_T and friends.
1427
1428	* Makefile.in: mention in bmake.1 that we use autoconf.
1429
1430	* make.1: mention MAKE_PRINT_VAR_ON_ERROR.
1431
1432Wed May 30 23:17:18 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1433
1434	* main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
1435	as that rather defeats the usefulness of ${MAKEFILE}.
1436
1437	* main.c (MainParseArgs): append command line variable assignments
1438	to MAKEFLAGS so that they get propagated to child make's.
1439	Apparently this is required POSIX behaviour?  Its useful anyway.
1440
1441Tue May 29 02:20:07 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1442
1443	* compat.c (CompatRunCommand): don't use perror() since stdio may
1444	cause problems in child of vfork().
1445
1446	* compat.c, main.c: Call PrintOnError() when we are going to bail.
1447	This routine prints out the .curdir where we stopped and will also
1448	display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
1449
1450	* main.c: add ${.newline} to hold a "\n" - sometimes handy in
1451	:@ expansion.
1452
1453	* var.c: VarLoopExpand: ignore addSpace if a \n is present.
1454
1455	* Added RCSid's for the files we've touched.
1456	
1457Thu May 24 15:41:37 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1458
1459	* configure.in:	Thanks to some clues from mdb@juniper.net,
1460	added autoconf magic to control setting of MACHINE, MACHINE_ARCH
1461	as well as what ends up in _PATH_DEFSYSPATH.  We now have:
1462
1463  --with-machine=MACHINE  explicitly set MACHINE
1464  --with-force-machine=MACHINE  set FORCE_MACHINE
1465  --with-machine_arch=MACHINE_ARCH  explicitly set MACHINE_ARCH
1466  --with-default-sys-path=PATH:DIR:LIST  use an explicit _PATH_DEFSYSPATH
1467  --with-prefix-sys-path=PATH:DIR:LIST  prefix _PATH_PREFIX_SYSPATH
1468  --with-path-objdirprefix=PATH  override _PATH_OBJDIRPREFIX
1469 	
1470	If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
1471
1472	* makefile: added a pathetically simple makefile to drive
1473	bootstrapping.  Running configure by hand is more useful.
1474
1475	* Makefile.in: added MAKE_VERSION, and reworked things to be less
1476	dependent on NetBSD bsd.*.mk
1477	
1478	* pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
1479	_PATH_OBJDIRPREFIX for those that don't want a default.
1480	construct _PATH_DEFSYSPATH from the info we get from configure.
1481
1482	* main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
1483	if MAKE_VERSION is defined.
1484	
1485	* compat.c: when we bail, print out the .CURDIR we were in.
1486	
1487Sat May 12 00:34:12 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1488
1489	* Merged with NetBSD make
1490
1491	* var.c: fixed a bug in the handling of the modifier :P
1492	if the node as found but the path was null, we segfault trying to
1493	duplicate it.
1494
1495Mon Mar  5 16:20:33 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1496
1497	* Merged with NetBSD make
1498	
1499	* make.c: Make_OODate's test for a library out of date was using
1500	cmtime where it should have used mtime (my bug).
1501
1502	* compat.c: Use perror() to tell us what really went wrong when we
1503	cannot exec a command.
1504	
1505Fri Dec 15 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1506
1507	* Merged with NetBSD make
1508	
1509Sat Jun 10 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1510
1511	* Merged with NetBSD make
1512	
1513Thu Jun  1 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1514
1515	* Merged with NetBSD make
1516	
1517Tue May 30 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1518
1519	* Merged with NetBSD make
1520	
1521Thu Apr 27 00:07:47 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1522
1523	* util.c: don't provide signal() since we use sigcompat.c
1524
1525	* Makefile.in: added a build target.
1526
1527	* var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
1528	These allow some quite clever magic.
1529
1530	* main.c (main): added support for getenv(MAKESYSPATH).
1531
1532Mon Apr  2 16:25:13 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1533
1534	* Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
1535	This avoids objdir having a different value depending on how a
1536	directory was reached (via command line, or subdir.mk).
1537
1538	* If FORCE_MACHINE is defined, ignore getenv("MACHINE").
1539	
1540Mon Apr  2 23:15:31 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1541
1542	* Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
1543	MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
1544	I've been testing this in NetBSD's make for some weeks.
1545
1546	* Turn Makefile into Makefile.in and make it useful.
1547	
1548Tue Feb 29 22:08:00 2000 Simon J. Gerraty  <sjg@zen.quick.com.au>
1549
1550	* Imported NetBSD's -current make(1) and resolve conflicts.
1551	
1552	* Applied autoconf patches from bmake v2
1553
1554	* Imported clean code base from NetBSD-1.0
1555