xref: /dragonfly/contrib/bmake/ChangeLog (revision dadd6466)
12013-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* Makefile (MAKE_VERSION): 20131001
4	  Merge with NetBSD make, pick up
5	  o main.c: for NATIVE build sysctl to get MACHINE_ARCH from
6	    hw.machine_arch if necessary.
7	  o meta.c: meta_oodate - need to look at src of Link and target
8	    of Move as well.
9	* main.c: check that CTL_HW and HW_MACHINE_ARCH exist.
10	  provide __arraycount() if needed.
11
122013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
13
14	* Makefile (MAKE_VERSION): 20130904
15	  Merge with NetBSD make, pick up
16	  o Add VAR_INTERNAL context, so that internal setting of
17	    MAKEFILE does not override value set by makefiles.
18
192013-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
20
21	* Makefile (MAKE_VERSION): 20130902
22	  Merge with NetBSD make, pick up
23	  o CompatRunCommand: only apply shellErrFlag when errCheck is true
24
252013-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
26
27	* Makefile (MAKE_VERSION): 20130828
28	  Merge with NetBSD make, pick up
29	  o Fix VAR :sh = syntax from Will Andrews at freebsd.org
30	  o Call Job_SetPrefix() from Job_Init() so makefiles have
31	    opportunity to set .MAKE.JOB.PREFIX
32
332013-07-30  Simon J. Gerraty  <sjg@bad.crufty.net>
34
35	* Makefile (MAKE_VERSION): 20130730
36	  Merge with NetBSD make, pick up
37	  o Allow suppression of --- job -- tokens by setting
38	    .MAKE.JOB.PREFIX empty.
39
402013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
41
42	* Makefile (MAKE_VERSION): 20130716
43	  Merge with NetBSD make, pick up
44	  o number of gmake compatability tweaks
45	    -w for gmake style entering/leaving messages
46	    if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc.
47	    handle MAKEFLAGS containing only letters.
48	  o when overriding a GLOBAL variable on the command line,
49	    delete it from GLOBAL context so -V doesn't show the wrong
50	    value.
51
522013-07-06  Simon J. Gerraty  <sjg@bad.crufty.net>
53
54	* configure.in: We don't need MAKE_LEVEL_SAFE anymore.
55
56	* Makefile (MAKE_VERSION): 20130706
57	  Merge with NetBSD make, pick up
58	  o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is
59	    true so that CompatRunCommand() can use it, to ensure
60	    consistent behavior with jobs mode.
61	  o use MAKE_LEVEL_ENV to define the variable to propagate
62	    .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake).
63	  o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of
64	    paths to ignore.
65
662013-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
67
68	* Makefile (MAKE_VERSION): 20130604
69	  Merge with NetBSD make, pick up
70	  o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's
71	    to avoid leaking descriptors.
72
732013-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
74
75	* Makefile (MAKE_VERSION): 20130528
76	  Merge with NetBSD make, pick up
77	  o var.c: cleanup some left-overs in VarHash()
78
792013-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
80
81	* Makefile (MAKE_VERSION): 20130520
82	  generate manifest from component FILES rather than have to
83	  update FILES when mk/FILES changes.
84
852013-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
86
87	* Makefile (MAKE_VERSION): 20130518
88	  Merge with NetBSD make, pick up
89	  o suff.c: don't skip all processsing for .PHONY targets
90	    else wildcard srcs do not get expanded.
91	  o var.c: expand name of variable to delete if necessary.
92
932013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
94
95	* Makefile (MAKE_VERSION): 20130330
96	  Merge with NetBSD make, pick up
97	  o meta.c: refine the handling of .OODATE in commands.
98	    Rather than suppress command comparison for the entire script
99	    as though .NOMETA_CMP had been used, only suppress it for the
100	    one command line.
101	    This allows something like ${.OODATE:M.NOMETA_CMP} to be used to
102	    suppress comparison of a command without otherwise affecting it.
103	  o make.1: document that
104
1052013-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
106
107	* Makefile (MAKE_VERSION): 20130321
108	  yes, not quite right but its a cooler number.
109	  Merge with NetBSD make, pick up
110	  o parse.c: fix ParseGmakeExport to be portable
111	    and add a unit-test.
112	* meta.c: call meta_init() before makefiles are read and if built
113	  with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON
114	  this let's makefiles test for support.
115	  Call meta_mode_init() to process .MAKE.MODE.
116
1172013-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
118
119	* Makefile (MAKE_VERSION): 20130305
120	  Merge with NetBSD make, pick up
121	  o run .STALE: target when a dependency from .depend is missing.
122	  o job.c: add Job_RunTarget() for the above and .BEGIN
123
1242013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
125
126	* Makefile (MAKE_VERSION): 20130303
127	  Merge with NetBSD make, pick up
128	  o main.c: set .MAKE.OS to utsname.sysname
129	  o job.c: more checks for read and poll errors
130	  o var.c: lose VarChangeCase() saves 4% time
131
1322013-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
133
134	* boot-strap: remove MAKEOBJDIRPREFIX from environment since we
135	  want to use MAKEOBJDIR
136
1372013-01-27  Simon J. Gerraty  <sjg@bad.crufty.net>
138
139	* Merge with NetBSD make, pick up
140	  o make.1: more info on how shell commands are handled.
141	  o job.c,main.c: detect write errors to job pipes.
142
1432013-01-25  Simon J. Gerraty  <sjg@bad.crufty.net>
144
145	* Makefile (MAKE_VERSION): 20130123
146	  Merge with NetBSD make, pick up
147	  o meta.c: if script uses .OODATE and meta_oodate() decides
148	    rebuild is needed, .OODATE will be empty - set it to .ALLSRC.
149	  o var.c: in debug output indicate which variabale modifiers
150	    apply to.
151	  o remove Check_Cwd logic the makefiles have been fixed.
152
1532012-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
154
155	* makefile.in: add a simple makefile for folk who insist on
156	  ./configure; make; make install
157	  it just runs boot-strap
158	* include mk/* to accommodate the above
159	* boot-strap:  re-work to accommodate the above
160	  mksrc defaults to $Mydir/mk
161	  allow op={configure,build,install,clean,all}
162	  add options to facilitate install
163	* Makefile.config.in: just the bits set by configure
164	* Makefile: bump version to 20121212
165	  abandon Makefile.in (NetBSD Makefile)
166	  leverage mk/* instead
167	* configure.in: ensure srcdir is absolute
168
1692012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
170
171	* Makefile.in (MAKE_VERSION): 20121111
172	  fix generation of bmake.cat1
173
1742012-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
175
176	* Makefile.in (MAKE_VERSION): 20121109
177	  Merge with NetBSD make, pick up
178	  o make.c: MakeBuildChild: return 0 so search continues if a
179	    .ORDER dependency is detected.
180	  o unit-tests/order: test the above
181
1822012-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
183
184	* Makefile.in (MAKE_VERSION): 20121102
185	  Merge with NetBSD make, pick up
186	  o cond.c: allow cond_state[] to grow.
187	    In meta mode with a very large tree, we can hit the limit
188	    while processing dirdeps.
189
1902012-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
191
192	* Makefile.in: we need to use ${srcdir} not ${.CURDIR}
193
1942012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
195
196	* Makefile.in (MAKE_VERSION): 20121010
197	  o protect syntax that only bmake parses correctly.
198	  o remove auto setting of FORCE_MACHINE, use configure's
199	    --with-force-machine=whatever if that is desired.
200
2012012-10-08  Simon J. Gerraty  <sjg@bad.crufty.net>
202
203	* Makefile.in: do not lose history from make.1 when generating bmake.1
204
2052012-10-07  Simon J. Gerraty  <sjg@bad.crufty.net>
206
207	* Makefile.in (MAKE_VERSION): 20121007
208	  Merge with NetBSD make, pick up
209	  o compat.c: ignore empty commands - same as jobs mode.
210	  o make.1: document meta chars that cause use of shell
211
2122012-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
213
214	* Makefile.in (MAKE_VERSION): bump version to 20120911
215	* bsd.after-import.mk: include Makefile.inc early and allow it to
216	  override PROG
217
2182012-08-31  Simon J. Gerraty  <sjg@bad.crufty.net>
219
220	* Makefile.in (MAKE_VERSION): bump version to 20120831
221	  Merge with NetBSD make, pick up
222	  o cast sizeof() to int for comparison
223	  o minor make.1 tweak
224
2252012-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
226
227	* Makefile.in (MAKE_VERSION): bump version to 20120830
228	  Merge with NetBSD make, pick up
229	  o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
230	  o debug flag -dV causes -V to show raw value regardless.
231
2322012-07-05  Simon J. Gerraty  <sjg@bad.crufty.net>
233
234	* bsd.after-import.mk (after-import): ensure unit-tests/Makefile
235	  gets SRCTOP set.
236
2372012-07-04  Simon J. Gerraty  <sjg@bad.crufty.net>
238
239	* Makefile.in (MAKE_VERSION): bump version to 20120704
240	  Merge with NetBSD make, pick up
241	  o Job_ParseShell should call Shell_Init if it has been
242	    previously called.
243	* Makefile.in: set USE_META based on configure result.
244	  also .PARSEDIR is safer indicator of bmake.
245
2462012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
247
248	* Makefile.in: bump version to 20120626
249	  ensure CPPFLAGS is in CFLAGS
250	* meta.c: avoid nested externs
251	* bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
252
2532012-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
254
255	* Makefile.in (MAKE_VERSION): bump version to 20120620
256	  Merge with NetBSD make, pick up
257	  o make_malloc.c: avoid including make_malloc.h again
258
259	* Makefile.in: avoid bmake only syntax or protect with
260	  .if defined(.MAKE.LEVEL)
261	* bsd.after-import.mk: replace .-include with .sinclude
262	  ensure? SRCTOP gets a value
263	* configure.in: look for filemon.h in /usr/include/dev/filemon first.
264
2652012-06-19  Simon J. Gerraty  <sjg@bad.crufty.net>
266
267	* Makefile.in (MAKE_VERSION): bump version to 20120612
268	  Merge with NetBSD make, pick up
269	  o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
270	    for greater portability.
271	  o unit-tests/forloop: check that .for works as expected wrt
272	    number of times and with "quoted strings".
273
2742012-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
275
276	* Makefile.in (MAKE_VERSION): bump version to 20120606
277	  Merge with NetBSD make, pick up
278	  o compat.c: use kill(2) rather than raise(3).
279	* configure.in: look for sys/dev/filemon
280	* bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
281	  and pass BOOTSTRAP_XTRAS to boot-strap.
282
2832012-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
284
285	* Makefile.in (MAKE_VERSION): bump version to 20120604
286	  Merge with NetBSD make, pick up
287	  o util.c and var.c share same var for tracking if environ
288	    has been reallocated.
289	  o util.c provide getenv with setenv.
290	* Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
291	  when the shell actively strips .MAKE.* from the environment.
292	  We still refer to the variable always as .MAKE.LEVEL
293	* util.c fix bug in findenv() was finding prefix of name.
294	* compat.c: re-raising SIGINT etc after running .INTERRUPT
295	  results in more reliable termination of all activity on many
296	  platforms.
297
2982012-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
299
300	* Makefile.in (MAKE_VERSION): bump version to 20120602
301	  Merge with NetBSD make, pick up
302	  o for.c: handle quoted items in .for list
303
3042012-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
305
306	* Makefile.in (MAKE_VERSION): bump version to 20120530
307	  Merge with NetBSD make, pick up
308	  o compat.c: ignore empty command.
309
3102012-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
311
312	* Makefile.in (MAKE_VERSION): bump version to 20120524
313	* FILES: add bsd.after-import.mk:
314	  A simple means of integrating bmake into a BSD build system.
315
3162012-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
317
318	* Makefile.in (MAKE_VERSION): bump version to 20120520
319	  Merge with NetBSD make, pick up
320	  o increased limit for nested conditionals.
321
3222012-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
323
324	* Makefile.in (MAKE_VERSION): bump version to 20120518
325	  Merge with NetBSD make, pick up
326	  o use _exit(2) in signal hanlder
327	  o Don't use the [dir] cache when building nodes that might have
328	    changed since the last exec.
329	  o Avoid nested extern declaration warnings.
330
3312012-04-27  Simon J. Gerraty  <sjg@bad.crufty.net>
332
333	* meta.c (fgetLine): avoid %z - not portable.
334	* parse.c: Since we moved include of sys/mman.h
335	  and def's of MAP_COPY etc. we got dups from a merge.
336
3372012-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
338
339	* Makefile.in (MAKE_VERSION): bump version to 20120420
340	  Merge with NetBSD make, pick up
341	  o restore duplicate supression in .MAKE.MAKEFILES
342	    runtime saving can be significant.
343	  o Var_Subst() uses Buf_DestroyCompact() to reduce memory
344	    consumption up to 20%.
345
3462012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
347
348	* Makefile.in (MAKE_VERSION): bump version to 20120420
349          Merge with NetBSD make, pick up
350	  o remove duplicate supression in .MAKE.MAKEFILES
351	  o improved dir cache behavior
352	  o gmake'ish export command
353
3542012-03-25  Simon J. Gerraty  <sjg@bad.crufty.net>
355
356	* Makefile.in (MAKE_VERSION): bump version to 20120325
357	  Merge with NetBSD make, pick up
358	  o fix parsing of :[#] in conditionals.
359
3602012-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
361
362	* Makefile.in: replace use of .Nx in bmake.1 with NetBSD
363	  since some systems cannot cope with .Nx <version>
364
3652011-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
366
367	* Makefile.in (MAKE_VERSION): bump version to 20111111
368	  Merge with NetBSD make, pick up
369	  o debug output for .PARSEDIR and .PARSEFILE
370
3712011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
372
373	* Makefile.in (MAKE_VERSION):  bump version to 20111010
374
3752011-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
376
377	* boot-strap: check for an expected file in the dirs we look for.
378	* make-bootstrap.sh: pass on LDSTATIC
379
3802011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
381
382	* Makefile.in (MAKE_VERSION): bump version to 20111001
383	  Merge with NetBSD make, pick up
384	  o ensure .PREFIX is set for .PHONY
385	    and .TARGET set for .PHONY run via .END
386	  o __dead used consistently
387
3882011-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
389
390	* Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
391
3922011-09-05  Simon J. Gerraty  <sjg@bad.crufty.net>
393
394	* Makefile.in (MAKE_VERSION): bump version to 20110905
395	  Merge with NetBSD make, pick up
396	  o meta_oodate: ignore makeDependfile
397
3982011-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
399
400	* Makefile.in (MAKE_VERSION): bump version to 20110828
401	  Merge with NetBSD make, pick up
402	  o silent=yes in .MAKE.MODE causes meta mode to mark targets
403	    as SILENT if a .meta file is created
404
4052011-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
406
407	* Makefile.in (MAKE_VERSION): bump version to 20110818
408	  Merge with NetBSD make, pick up
409	  o in meta mode, if target flagged .META a missing .meta file
410	    means target is out-of-date
411	  o fixes for gcc 4.5 warnings
412	  o simplify job printing code
413
4142011-08-09  Simon J. Gerraty  <sjg@bad.crufty.net>
415
416	* Makefile.in (MAKE_VERSION): bump version to 20110808
417	  Merge with NetBSD make, pick up
418	  o do not touch OP_SPECIAL targets when doing make -t
419
4202011-06-22  Simon J. Gerraty  <sjg@bad.crufty.net>
421
422	* Makefile.in (MAKE_VERSION): bump version to 20110622
423	  Merge with NetBSD make, pick up
424	  o meta_oodate detect corrupted .meta file and declare oodate.
425	* configure.in: add check for setsid
426
4272011-06-07  Simon J. Gerraty  <sjg@bad.crufty.net>
428
429	* Merge with NetBSD make, pick up
430	  o unit-tests/modts now works on MirBSD
431
4322011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
433
434	* Makefile.in (MAKE_VERSION): bump version to 20110606
435	  Merge with NetBSD make, pick up
436	  o ApplyModifiers: when we parse a variable which is not
437	    the entire modifier string, or not followed by ':', do not
438	    consider it as containing modifiers.
439	  o loadfile: ensure newline at end of mapped file.
440
4412011-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
442
443	* Makefile.in (MAKE_VERSION): bump version to 20110505
444	  Merge with NetBSD make, pick up
445	  o .MAKE.META.BAILIWICK - list of prefixes which define the scope
446	    of make's control.  In meta mode, any generated file within
447	    said bailiwick, which  is found to be missing, causes current
448	    target to be out-of-date.
449
4502011-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
451
452	* Makefile.in (MAKE_VERSION): bump version to 20110411
453	  Merge with NetBSD make, pick up
454	  o when long modifiers fail to match, check sysV style.
455	    - add a test case
456
4572011-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
458
459	* Makefile.in (MAKE_VERSION): bump version to 20110410
460	  Merge with NetBSD make, pick up
461	  o :hash - cheap 32bit hash of value
462	  o :localtime, :gmtime - use value as format string for strftime.
463
4642011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
465
466	* Makefile.in (MAKE_VERSION): bump version to 20110330
467	  mostly because its a cooler version.
468	  Merge with NetBSD make, pick up
469	  o NetBSD tags for meta.[ch]
470	  o job.c call meta_job_finish() after meta_job_error().
471	  o meta_job_error() should call meta_job_finish() to ensure
472	    .meta file is closed, and safe to copy - if .ERROR target wants.
473	   meta_job_finish() is safe to call repeatedly.
474
4752011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
476
477	* unit-tests/modts: use printf if it is a builtin,
478	  to save us from MirBSD
479
480	* Makefile.in (MAKE_VERSION): bump version to 20110329
481	  Merge with NetBSD make, pick up
482	  o fix for use after free() in CondDoExists().
483	  o meta_oodate() report extra commands and return earlier.
484
4852011-03-27  Simon J. Gerraty  <sjg@bad.crufty.net>
486
487	* Makefile.in (MAKE_VERSION): bump version to 20110327
488	  Merge with NetBSD make, pick up
489	  o meta.c, if .MAKE.MODE contains curdirOk=yes
490	    allow creating .meta files in .CURDIR
491	* boot-strap (TOOL_DIFF): aparently at least on linux distro
492	  formats the output of 'type' differently - so eat any "()"
493
4942011-03-06  Simon J. Gerraty  <sjg@bad.crufty.net>
495
496	* Makefile.in (MAKE_VERSION): bump version to 20110306
497	  Merge with NetBSD make, pick up
498	  o meta.c, only do getcwd() once
499
5002011-03-05  Simon J. Gerraty  <sjg@bad.crufty.net>
501
502	* Makefile.in (MAKE_VERSION): bump version to 20110305
503	  Merge with NetBSD make, pick up
504	  o correct sysV substitution handling of empty lhs and variable
505	  o correct exists() check for dir with trailing /
506	  o correct handling of modifiers for non-existant variables
507	    during evaluation of conditionals.
508	  o ensure MAP_FILE is defined.
509	  o meta.c use curdir[] now exported by main.c
510
5112011-02-25  Simon J. Gerraty  <sjg@bad.crufty.net>
512
513	* Makefile.in (MAKE_VERSION): bump version to 20110225
514	  Merge with NetBSD make, pick up
515	  o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
516	    makefiles have been read.
517	  o fix example of :? modifier in man page.
518
5192011-02-13  Simon J. Gerraty  <sjg@bad.crufty.net>
520
521	* Makefile.in (MAKE_VERSION): bump version to 20110214
522	  Merge with NetBSD make, pick up
523	  o meta.c handle realpath() failing when generating meta file
524	    name.
525
526	* sigcompat.c: convert to ansi so we can use higher warning levels.
527
528
5292011-02-07  Simon J. Gerraty  <sjg@bad.crufty.net>
530
531	* Makefile.in (MAKE_VERSION): bump version to 20110207
532	  Merge with NetBSD make, pick up
533	  o fix for bug in meta mode.
534
5352011-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
536
537	* parse.c: SunOS 5.8 at least does not have MAP_FILE
538
5392011-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
540
541	* Makefile.in (MAKE_VERSION): bump version to 20110101
542	  Merge with NetBSD make, pick up
543	  o use mmap(2) if available, for reading makefiles
544
5452010-12-15  Simon J. Gerraty  <sjg@bad.crufty.net>
546
547	* Makefile.in (MAKE_VERSION): bump version to 20101215
548	  Merge with NetBSD make, pick up
549	  o ensure meta_job_error() does not report a previous .meta file
550	    as being culprit.
551
5522010-12-10  Simon J. Gerraty  <sjg@bad.crufty.net>
553
554	* Makefile.in (MAKE_VERSION): bump version to 20101210
555	  Merge with NetBSD make, pick up
556	  o meta_oodate: track cwd per process, and only consider target
557	    out-of-date if missing file is outside make's CWD.
558	    Ignore files in /tmp/ etc.
559	  o to ensure unit-tests results match, need to control LC_ALL
560	    as well as LANG.
561	  o fix for parsing bug in var.c
562
5632010-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
564
565	* Makefile.in (MAKE_VERSION): bump version to 20101126
566	  Merge with NetBSD make, pick up
567	  o if stale dependency is an IMPSRC, search via .PATH
568	  o meta_oodate: if a referenced file is missing, target is
569	    out-of-date.
570	  o meta_oodate: if a target uses .OODATE in its commands,
571	    it (.OODATE) needs to be recomputed.
572	  o keep a pointer to youngest child node, rather than just its
573	    mtime.
574
5752010-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
576
577	* Makefile.in (MAKE_VERSION): bump version to 20101101
578
5792010-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
580
581	* machine.sh: like os.sh,
582	allow for uname -p producing useless drivel
583
5842010-09-13  Simon J. Gerraty  <sjg@bad.crufty.net>
585
586	* boot-strap: document configure knobs for meta and filemon.
587
588	* Makefile.in (MAKE_VERSION): bump version to 20100911
589	  Merge with NetBSD make, pick up
590	  o meta.c - meta mode
591
592	* make-bootstrap.sh.in: handle meta.c
593	* configure.in: add knobs for use_meta and filemon_h
594	  also, look for dirname, str[e]sep and strlcpy
595	* util.c: add simple err[x] and warn[x]
596
5972010-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
598
599	* boot-strap (TOOL_DIFF): set this to ensure tests use
600	  the same version of diff that configure tested
601
602	* Makefile.in (MAKE_VERSION): bump version to 20100808
603	  Merge with NetBSD make, pick up
604	  o in jobs mode, when we discover we cannot make something,
605	    call PrintOnError before exit.
606
6072010-08-06  Simon J. Gerraty  <sjg@bad.crufty.net>
608
609	* Makefile.in (MAKE_VERSION): bump version to 20100806
610	  Merge with NetBSD make, pick up
611	  o formatting fixes for ignored errors
612	  o ensure jobs are cleaned up regardless of where wait() was called.
613
6142010-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
615
616	* Makefile.in (MAKE_VERSION): bump version to 20100618
617	* os.sh (MACHINE_ARCH): watch out for drivel from uname -p
618
6192010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
620
621	* Makefile.in (MAKE_VERSION): bump version to 20100616
622	  Merge with NetBSD make, pick up
623	  o man page update
624	  o call PrintOnError from JobFinish when we detect an error we
625	    are not ignoring.
626
6272010-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
628
629	* Makefile.in (MAKE_VERSION): bump version to 20100606
630	  Merge with NetBSD make, pick up
631	  o man page update
632
6332010-06-05  Simon J. Gerraty  <sjg@bad.crufty.net>
634
635	* Makefile.in (MAKE_VERSION): bump version to 20100605
636	  Merge with NetBSD make, pick up
637	  o use bmake_signal() which is a wrapper around sigaction()
638	    in place of signal()
639	  o add .export-env to allow exporting variables to environment
640	    without tracking (so no re-export when the internal value is
641	    changed).
642
6432010-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
644
645	* Makefile.in (MAKE_VERSION): bump version to 20100524
646	  Merge with NetBSD make, pick up
647	  o fix for .info et al being greedy.
648
6492010-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
650
651	* Makefile.in (MAKE_VERSION): bump version to 20100520
652	  Merge with NetBSD make, pick up
653	  o back to using realpath on argv[0]
654	    but only if contains '/' and does not start with '/'.
655
6562010-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
657
658	* boot-strap: use absolute path for bmake when running tests.
659
660	* Makefile.in (MAKE_VERSION):  bump version to 20100510
661	  Merge with NetBSD make, pick up
662	  o revert use of realpath on argv[0]
663	    too many corner cases.
664	  o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
665
6662010-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
667
668	* Makefile.in (MAKE_VERSION): bump version to 20100505
669	  Merge with NetBSD make, pick up
670	  o fix for missed SIGCHLD when compiled with SunPRO
671	    actually for bmake, defining FORCE_POSIX_SIGNALS would have
672	    done the job.
673
6742010-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
675
676	* Makefile.in (MAKE_VERSION): bump version to 20100430
677	  Merge with NetBSD make, pick up
678	  o fflush stdout before writing to stdout
679
6802010-04-23  Simon J. Gerraty  <sjg@bad.crufty.net>
681
682	* Makefile.in (MAKE_VERSION): bump version to 20100423
683	  Merge with NetBSD make, pick up
684	  o updated unit tests for Haiku (this time for sure).
685	* boot-strap: based on patch from joerg
686	  honor --with-default-sys-path better.
687	* boot-strap: remove mention of --with-prefix-sys-path
688
6892010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
690
691	* Makefile.in (MAKE_VERSION): bump version to 20100422
692	* Merge with NetBSD make, pick up
693	  o fix for vfork() on Darwin.
694	  o fix for bogus $TMPDIR.
695	  o set .MAKE.MODE=compat for -B
696	  o set .MAKE.JOBS=max_jobs for -j max_jobs
697	  o allow unit-tests to run without any *.mk
698	  o unit-tests/modmisc be more conservative in dirs presumed to exist.
699	* boot-strap: ignore /usr/share/mk except on NetBSD.
700	* unit-tests/Makefile.in: set LANG=C when running unit-tests to
701	  ensure sort(1) behaves as expected.
702
7032010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
704
705	* boot-strap: add FindHereOrAbove so we can use -m .../mk
706
7072010-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
708
709	* Makefile.in (MAKE_VERSION): bump version to 20100420
710	* Merge with NetBSD make, pick up
711	  o fix for variable realpath() behavior.
712	    we have to stat(2) the result to be sure.
713	  o fix for .export (all) when nested vars use :sh
714
7152010-04-14  Simon J. Gerraty  <sjg@bad.crufty.net>
716
717	* Makefile.in (MAKE_VERSION): bump version to 20100414
718	* Merge with NetBSD make, pick up
719	  o use realpath to resolve argv[0] (for .MAKE) if needed.
720	  o add realpath from libc.
721	  o add :tA to resolve variable via realpath(3) if possible.
722
7232010-04-08  Simon J. Gerraty  <sjg@bad.crufty.net>
724
725	* Makefile.in (MAKE_VERSION): bump version to 20100408
726	* Merge with NetBSD make, pick up
727	  o unit tests for .ERROR, .error
728	  o fix for .ERROR to ensure it cannot be default target.
729
7302010-04-06  Simon J. Gerraty  <sjg@bad.crufty.net>
731
732	* Makefile.in (MAKE_VERSION): bump version to 20100406
733	* Merge with NetBSD make, pick up
734	  o fix for compat mode "Error code" going to debug_file.
735	  o fix for .ALLSRC being populated twice.
736	  o support for .info, .warning and .error directives
737	  o .MAKE.MODE to control make's operational mode
738	  o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
739	    name(s).
740	  o .MAKE.DEPENDFILE to control the name of the depend file
741	  o .ERROR target - run on failure.
742
7432010-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
744
745	* make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
746
747	* os.sh,arch.c: patch for Haiku from joerg at netbsd
748
7492010-03-17  Simon J. Gerraty  <sjg@bad.crufty.net>
750
751	* Makefile.in (MAKE_VERSION): bump version to 20100222
752	* Merge with NetBSD make, pick up
753	  o better error msg for .for with mutiple inter vars
754
755	* boot-strap:
756	  o use make-bootstrap.sh from joerg at netbsd
757	    to avoid the need for a native make when bootstrapping.
758	  o add "" everywhere ;-)
759	  o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
760	    otherwise the pre-formated version.
761
7622010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
763
764	* Makefile.in (MAKE_VERSION): bump version to 20100102
765	* Merge with NetBSD make, pick up:
766	  o fix for -m .../
767
7682009-11-18  Simon J. Gerraty  <sjg@void.crufty.net>
769
770	* Makefile.in (MAKE_VERSION): bump version to 20091118
771	* Merge with NetBSD make, pick up:
772	  o .unexport
773	  o report lines that start with '.' and should have ':'
774	    (catch typo's of .el*if).
775
7762009-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
777
778	* configure.in: Ensure that srcdir and mksrc are absolute paths.
779
7802009-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
781
782	* Makefile.in (MAKE_VERSION): fix version to 20091007
783
7842009-10-07  Simon J. Gerraty  <sjg@void.crufty.net>
785
786	* Makefile.in (MAKE_VERSION): bump version to 200910007
787	* Merge with NetBSD make, pick up:
788	  o fix for parsing of :S;...;...; applied to .for loop iterator
789	    appearing in a dependency line.
790
7912009-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
792
793	* Makefile.in (MAKE_VERSION): bump version to 20090909
794	* Merge with NetBSD make, pick up:
795	  o fix for -C, .CURDIR and .OBJDIR
796	* boot-strap:
797	  o allow share_dir to be set independent of prefix.
798	  o select default share_dir better when prefix ends in $HOST_TARGET
799	  o if FORCE_BSD_MK etc were set, include them in the suggested
800	    install-mk command.
801
8022009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
803
804	* Makefile.in (MAKE_VERSION): bump version to 20090908
805	* Merge with NetBSD make, pick up:
806	  o .MAKE.LEVEL for recursion tracking
807	  o fix for :M scanning \:
808
8092009-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
810
811	* configure.in: Don't -D__EXTENSIONS__ if
812	AC_USE_SYSTEM_EXTENSIONS says "no".
813
8142009-08-26  Simon J. Gerraty  <sjg@void.crufty.net>
815
816	* Makefile.in (MAKE_VERSION): bump version to 20090826
817	Simplify MAKE_VERSION to just the bare date.
818	* Merge with NetBSD make, pick up:
819	  o -C directory support.
820	  o support for SIGINFO
821	  o use $TMPDIR for temp files.
822	  o child of vfork should be careful about modifying parent's state.
823
824
8252009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
826
827	* Appy some patches for MiNT from David Brownlee
828
8292009-02-26  Simon J. Gerraty  <sjg@void.crufty.net>
830
831	* Makefile.in (BMAKE_VERSION): bump version to 20090222
832	* Merge with NetBSD make, pick up:
833	  o Possible null pointer de-ref in Var_Set.
834
8352009-02-08  Simon J. Gerraty  <sjg@void.crufty.net>
836
837	* Makefile.in (BMAKE_VERSION): bump version to 20090204
838	* Merge with NetBSD make, pick up:
839	  o bmake_malloc et al moved to their own .c
840	  o Count both () and {} when looking for the end of a :M pattern
841	  o Change 'Buffer' so that it is the actual struct, not a pointer to it.
842	  o strlist.c - functions for processing extendable arrays of pointers to strings.
843	  o ClientData replaced with void *, so const void * can be used.
844	  o New debug flag C for DEBUG_CWD
845
8462008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
847
848	* Makefile.in (BMAKE_VERSION): bump version to 20081111
849	  Apply patch from Joerg Sonnenberge to
850	  configure.in:
851	  o remove some redundant checks
852	  o check for emlloc etc only in libutil and require the whole family.
853	  util.c:
854	  o remove [v]asprintf which is no longer used.
855
8562008-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
857
858	* Makefile.in (BMAKE_VERSION): bump version to 20081101
859	* Merge with NetBSD make, pick up:
860	  o util.c: avoid use of putenv() - christos
861
8622008-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
863
864	* Makefile.in (BMAKE_VERSION): bump version to 20081030
865	  pick up man page tweaks.
866
8672008-10-29  Simon J. Gerraty  <sjg@void.crufty.net>
868
869	* Makefile.in: move processing of LIBOBJS to after is definition!
870	  thus we'll have getenv.c in SRCS only if needed.
871
872	* make.1: add examples of how to use :?
873
874	* Makefile.in (BMAKE_VERSION): bump version to 20081029
875	* Merge with NetBSD make, pick up:
876	  o fix for .END processing with -j
877	  o segfault from Parse_Error when no makefile is open
878	  o handle numeric expressions in any variable expansion
879	  o debug output now defaults to stderr, -dF to change it - apb
880	  o make now uses bmake_malloc etc so that it can build natively
881	    on A/UX - wasn't an issue for bmake, but we want to keep in sync.
882
8832008-09-27  Simon J. Gerraty  <sjg@void.crufty.net>
884
885	* Makefile.in (BMAKE_VERSION): bump version to 20080808
886	* Merge with NetBSD make, pick up:
887	  o fix for PR/38840: Pierre Pronchery: make crashes while parsing
888	    long lines in Makefiles
889	  o optimizations for VarQuote by joerg
890	  o fix for PR/38756: dominik: make dumps core on invalid makefile
891
8922008-05-15  Simon J. Gerraty  <sjg@void.crufty.net>
893
894	* Makefile.in (BMAKE_VERSION): bump version to 20080515
895	* Merge with NetBSD make, pick up:
896	  o fix skip setting vars in VAR_GLOBAL context, to handle
897	    cases where VAR_CMD is used for other than command line vars.
898
8992008-05-14  Simon J. Gerraty  <sjg@void.crufty.net>
900
901	* boot-strap (make_version): we may need to look in
902	$prefix/share/mk for sys.mk
903
904	* Makefile.in (BMAKE_VERSION): bump version to 20080514
905	* Merge with NetBSD make, pick up:
906	  o skip setting vars in VAR_GLOBAL context, when already set in
907	  VAR_CMD which takes precedence.
908
9092008-03-30  Simon J. Gerraty  <sjg@void.crufty.net>
910
911	* Makefile.in (BMAKE_VERSION):  bump version to 20080330
912	* Merge with NetBSD make, pick up:
913	  o fix for ?= when LHS contains variable reference.
914
9152008-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
916
917	* merge some patches from NetBSD pkgsrc.
918
919	* makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
920	the MAKSYSPATH used during bootstrap.
921
922	* Makefile.in (BMAKE_VERSION): bump version to 20080215
923	* Merge with NetBSD make, pick up:
924	  o warn if non-space chars follow 'empty' in a conditional.
925
9262008-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
927
928	* Makefile.in (BMAKE_VERSION): bump version to 20080118
929	* Merge with NetBSD make, pick up:
930	  o consider dependencies read from .depend as optional - dsl
931	  o remember when buffer for reading makefile grows - dsl
932	  o add -dl (aka LOUD) - David O'Brien
933
9342007-10-22  Simon J. Gerraty  <sjg@void.crufty.net>
935
936	* Makefile.in (BMAKE_VERSION): bump version to 20071022
937	* Merge with NetBSD make, pick up:
938	  o Allow .PATH<suffix> to be used for .include ""
939
940	* boot-strap: source default settings from .bmake-boot-strap.rc
941
9422007-10-16  Simon J. Gerraty  <sjg@void.crufty.net>
943
944	* Makefile.in: fix maninstall on various systems
945	  provided that our man.mk is used.
946	  For non-BSD systems we install the preformatted page
947	  into $MANDIR/cat1
948
9492007-10-15  Simon J. Gerraty  <sjg@void.crufty.net>
950
951	* boot-strap: make bmake.1 too, so maninstall works.
952
9532007-10-14  Simon J. Gerraty  <sjg@void.crufty.net>
954
955	* Makefile.in (BMAKE_VERSION): bump version to 20071014
956	* Merge with NetBSD make, pick up:
957	  o revamped handling of defshell - configure no longer needs to
958	    know the content of the shells array - apb
959	  o stop Var_Subst modifying its input - apb
960	  o avoid calling ParseTrackInput too often - dsl
961
9622007-10-11  Simon J. Gerraty  <sjg@void.crufty.net>
963
964	* Makefile.in (BMAKE_VERSION): bump version to 20071011
965	* Merge with NetBSD make, pick up:
966	  o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
967
968	* sigcompat.c: some tweaks for HP-UX 11.x based on
969	  patch from Tobias Nygren
970
971	* configure.in: update handling of --with-defshell to match
972	  new make behavior.  --with-defshell=/usr/xpg4/bin/sh
973	  will now do what one might hope - provided the chosen shell
974	  behaves enough like sh.
975
9762007-10-08  Simon J. Gerraty  <sjg@void.crufty.net>
977
978	* Makefile.in (BMAKE_VERSION): bump to 20071008
979	* Merge with NetBSD make, pick up:
980	  o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
981	  o .export/.MAKE.EXPORTED - export of variables - sjg
982	  o .MAKE.MAKEFILES - track all makefiles read - sjg
983	  o performance improvements - dsl
984	  o revamp parallel job scheduling - dsl
985
9862006-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
987
988	* Makefile.in (BMAKE_VERSION): bump to 20060728
989	* Merge with NetBSD make, pick up:
990	  o extra debug info during variable and cond processing - sjg
991	  o shell definition now covers newline - rillig
992	  o minor mem leak in PrintOnError - sjg
993
9942006-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
995
996	* Makefile.in (BMAKE_VERSION):  bump to 20060511
997	* Merge with NetBSD make, pick up:
998	  o more memory leaks - coverity
999	  o possible overflow in ArchFindMember - coverity
1000	  o extract variable modifier code out of Var_Parse()
1001	    so it can be called recursively - sjg
1002	  o unit-tests/moderrs - sjg
1003
10042006-04-12  Simon J. Gerraty  <sjg@void.crufty.net>
1005
1006	* Makefile.in (BMAKE_VERSION): bump to 20060412
1007	* Merge with NetBSD make, pick up:
1008	  o fixes for some memory leaks - coverity
1009	  o only read first sys.mk etc when searching sysIncPath - sjg
1010
1011	* main.c (ReadMakefile): remove hack for __INTERIX that prevented
1012	setting ${MAKEFILE} - OBATA Akio
1013
10142006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
1015
1016	* Makefile.in (BMAKE_VERSION): bump to 20060318
1017	* Merge with NetBSD make, pick up:
1018	  o cleanup of job.c to remove remote handling, distcc is more
1019	    useful and this code was likely bit-rotting - dsl
1020	  o fix for :P modifier - sjg
1021	* boot-strap: set default prefix to something reasonable
1022	  (for me anyway).
1023
10242006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
1025
1026	* Makefile.in (BMAKE_VERSION): bump to 20060301
1027	* Merge with NetBSD make, pick up:
1028	  o make .WAIT apply recursively, document and test case - apb
1029	  o allow variable modifiers in a variable appear anywhere in
1030	    modifier list, document and test case - sjg
1031
10322006-02-22  Simon J. Gerraty  <sjg@void.crufty.net>
1033
1034	* Makefile.in (BMAKE_VERSION): bump to 20060222
1035	* Merge with NetBSD make, pick up:
1036	  o improved job token handling - dsl
1037	  o SIG_DFL the correct signal before exec - dsl
1038	  o more debug info during parsing - dsl
1039	  o allow variable modifiers to be specified via variable - sjg
1040	* boot-strap: explain why we died if no mksrc
1041
10422005-11-05  Simon J. Gerraty  <sjg@void.crufty.net>
1043
1044	* Makefile.in (BMAKE_VERSION): bump to 20051105
1045	* configure.in: always set default_sys_path
1046	  default is ${prefix}/share/mk
1047	  - remove prefix_sys_path, anyone wanting more than above
1048	    needs to set it manually.
1049
10502005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1051
1052	* boot-strap: make this a bit easier for pkgsrc folk.
1053	  bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
1054	  'mips' while pkgsrc wants 'mipseb' or 'mipsel'
1055
10562005-11-02  Simon J. Gerraty  <sjg@void.crufty.net>
1057
1058	* Makefile.in (BMAKE_VERSION): bump to 20051102
1059	* job.c (JobFinish): fix likely ancient merge lossage
1060	fix from Todd Vierling.
1061	* boot-strap (srcdir): allow setting mksrc=none
1062
10632005-10-31  Simon J. Gerraty  <sjg@void.crufty.net>
1064
1065	* Makefile.in (BMAKE_VERSION): bump to 20051031
1066	* ranlib.h: skip on OSF too.
1067	  (NetBSD PR 31864)
1068
10692005-10-10  Simon J. Gerraty  <sjg@void.crufty.net>
1070
1071	* Makefile.in (BMAKE_VERSION): bump to 20051002
1072	  fix a silly typo
1073
10742005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1075
1076	* Makefile.in (BMAKE_VERSION): bump to 20051001
1077	  support for UnixWare and some other systems,
1078	  based on patches from pkgsrc/bootstrap
1079
10802005-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1081
1082	* Makefile.in (BMAKE_VERSION): bump to 20050901
1083	* Merge with NetBSD make, pick up:
1084	  o possible parse error causing us to wander off.
1085
10862005-06-06  Simon J. Gerraty  <sjg@void.crufty.net>
1087
1088	* Makefile.in (BMAKE_VERSION): bump to 20050606
1089	* Merge with NetBSD make, pick up:
1090	  o :0x modifier for randomizing a list
1091	  o fixes for a number of -Wuninitialized issues.
1092
10932005-05-30  Simon J. Gerraty  <sjg@void.crufty.net>
1094
1095	* Makefile.in (BMAKE_VERSION): bump to 20050530
1096	* Merge with NetBSD make, pick up:
1097	  o Handle dependencies for .BEGIN, .END and .INTERRUPT
1098
1099	* README: was seriously out of date.
1100
11012005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
1102
1103	* Important to use .MAKE rather than MAKE.
1104
11052005-03-15  Simon J. Gerraty  <sjg@void.crufty.net>
1106
1107	* Makefile.in (BMAKE_VERSION): bump to 20050315
1108	* Merge with NetBSD make, pick up:
1109	  o don't mistake .elsefoo for .else
1110	  o use suffix-specific search path correctly
1111	  o bunch of style nits
1112
11132004-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1114
1115	* boot-strap:
1116	o ensure that args to --src and --with-mksrc
1117	  are resolved before giving them to configure.
1118	o add -o "objdir" so that builder can control it,
1119	  default is $OS as determined by os.sh
1120	o add -q to suppress all the install instructions.
1121
11222004-05-08  Simon J. Gerraty  <sjg@void.crufty.net>
1123
1124	* Remove __IDSTRING()
1125
1126	* Makefile.in (BMAKE_VERSION): bump to 20040508
1127	* Merge with NetBSD make, pick up:
1128	  o posix fixes
1129	    - remove '-e' from compat mode
1130	    - add support for '+' command-line prefix.
1131	  o fix for handling '--' on command-line.
1132	  o fix include in lst.lib/lstInt.h to simplify '-I's
1133	  o we also picked up replacement of MAKE_BOOTSTRAP
1134	    with !MAKE_NATIVE which is a noop, but possibly confusing.
1135
11362004-04-14  Simon J. Gerraty  <sjg@void.crufty.net>
1137
1138	* Makefile.in (BMAKE_VERSION): bump to 20040414
1139	* Merge with NetBSD make, pick up:
1140	  o allow quoted strings on lhs of conditionals
1141	  o issue warning when extra .else is seen
1142	  o print line numer when errors encountered during parsing from
1143	  string.
1144
11452004-02-20  Simon J. Gerraty  <sjg@void.crufty.net>
1146
1147	* Makefile.in (BMAKE_VERSION):  bump to 20040220
1148	* Merge with NetBSD make, pick up:
1149	  o fix for old :M parsing bug.
1150	  o re-jigged unit-tests
1151
11522004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1153
1154	* Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
1155	so that './bmake -f Makefile test' works.
1156
11572004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1158
1159	* Makefile.in: (BMAKE_VERSION): bump to 20040214
1160	* Merge with NetBSD make, pick up:
1161	  o search upwards for *.mk
1162	  o fix for double free of var substitution buffers
1163	  o use of getopt replaced with custom code, since the usage
1164	  (re-scanning) isn't posix compatible.
1165
11662004-02-12  Simon J. Gerraty  <sjg@void.crufty.net>
1167
1168	* arch.c: don't include ranlib.h on ELF systems
1169	(thanks to Chuck Cranor <chuck@ece.cmu.edu>).
1170
11712004-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1172
1173	* Makefile.in (BMAKE_VERSION): bump to 20040118
1174
1175	* boot-strap (while): export vars we assign to on cmdline
1176	* unit-test/Makefile.in: ternary is .PHONY
1177
11782004-01-08  Simon J. Gerraty  <sjg@void.crufty.net>
1179
1180	* Makefile.in (BMAKE_VERSION): bump version to 20040108
1181	* Merge with NetBSD make, pick up:
1182	  o fix for ternary modifier
1183
11842004-01-06  Simon J. Gerraty  <sjg@void.crufty.net>
1185
1186	* Makefile.in (BMAKE_VERSION): bump version to 20040105
1187	* Merge with NetBSD make, pick up:
1188	  o fix for cond.c to handle compound expressions better
1189	  o variable expansion within sysV style replacements
1190
11912003-12-22  Simon J. Gerraty  <sjg@void.crufty.net>
1192
1193	* Make portable snprintf safer - output to /dev/null first to
1194	check space needed.
1195
1196	* Makefile.in (BMAKE_VERSION): bump version to 20031222
1197	* Merge with NetBSD make, pick up:
1198	  o -dg3 to show input graph when things go wrong.
1199	  o explicitly look for makefiles in objdir if not found in curdir so
1200	    that errors in .depend etc will be reported accurarely.
1201	  o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1202	    instead as it more accurately reflects the expected behavior and
1203	    is more consistently implemented.
1204	  o avoid use of asprintf.
1205
12062003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1207
1208	* util.c: Add asprintf and vasprintf.
1209
1210	* Makefile.in (BMAKE_VERSION): bump version to 20030928
1211	* Merge with NetBSD make, pick up:
1212	:[] modifier - allows picking words from a variable.
1213	:tW modifier - allows treating value as one big word.
1214	W flag for :C and :S - allows treating value as one big word.
1215
12162003-09-12  Simon J. Gerraty  <sjg@void.crufty.net>
1217
1218	* Merge with NetBSD make
1219	pick up -de flag to enable printing failed command.
1220	don't skip 1st two dir entries (normally . and ..) since
1221	coda does not have them.
1222
12232003-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1224
1225	* Makefile.in (BMAKE_VERSION): bump version to 20030909
1226	* Merge with NetBSD make, pick up:
1227	- changes for -V '${VAR}' to print fully expanded value
1228	  cf. -V VAR
1229	- CompatRunCommand now prints the command that failed.
1230	- several files got updated 3 clause Berkeley license.
1231
12322003-08-02  Simon J. Gerraty  <sjg@void.crufty.net>
1233
1234	* boot-strap: Allow setting configure args on command line.
1235
12362003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1237
1238	* configure.in: add --with-defshell to allow sh or ksh
1239	to be selected as default shell.
1240
1241	* Makefile.in: bump version to 20030731
1242
1243	* Merge with NetBSD make
1244	Pick up .SHELL spec for ksh and associate man page changes.
1245	Also compat mode now uses the same shell specs.
1246
12472003-07-29  Simon J. Gerraty  <sjg@void.crufty.net>
1248
1249	* var.c (Var_Parse): ensure delim is initialized.
1250
1251	* unit-tests/Makefile.in: use single quotes to avoid problems from
1252	some shells.
1253
1254	* makefile.boot.in:
1255	Run the unit-tests as part of the bootstrap procedure.
1256
12572003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1258
1259	* unit-tests/Makefile.in: always force complaints from
1260	${TEST_MAKE} to be from 'make'.
1261
1262	* configure.in: add check for 'diff -u'
1263	also fix some old autoconf'isms
1264
1265	* Makefile.in (BMAKE_VERSION): bump version to 20030728.
1266	if using GCC add -Wno-cast-qual to CFLAGS for var.o
1267
1268	* Merge with NetBSD make
1269	Pick up fix for :ts parsing error in some cases.
1270	Pick unit-tests.
1271
12722003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1273
1274	* Makefile.in (BMAKE_VERSION): bump version to 20030723.
1275
1276	* var.c (Var_Parse): fix bug in :ts modifier, after const
1277	correctness fixes, must pass nstr to VarModify.
1278
12792003-07-14  Simon J. Gerraty  <sjg@void.crufty.net>
1280
1281	* Makefile.in: BMAKE_VERSION switch to a date based version.
1282	We'll generally use the date of last import from NetBSD.
1283
1284	* Merge with NetBSD make
1285	Pick up fixes for const-correctness, now passes WARNS=3 on
1286	NetBSD.
1287	Pick up :ts modifier, allows controlling the separator used
1288	between words in variable expansion.
1289
12902003-07-11  Simon J. Gerraty  <sjg@void.crufty.net>
1291
1292	* FILES: include boot-strap and os.sh
1293
1294	* Makefile.in: only set WARNS if we are NetBSD, the effect on
1295	FreeBSD is known to be bad.
1296
1297	* makefile.boot.in (bootstrap): make this the default target.
1298
1299	* Makefile.in: bump version to 3.1.19
1300
1301	* machine.sh: avoid A-Z with tr as it is bound to lose.
1302
13032003-07-10  Simon J. Gerraty  <sjg@void.crufty.net>
1304
1305	* Merge with NetBSD make
1306	Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1307	Plus some doc fixes.
1308
13092003-04-27  Simon J. Gerraty  <sjg@void.crufty.net>
1310
1311	* Merge with NetBSD make
1312	Pick up fix for PR/1523 - don't count a library as built, if there
1313	is no way to build it
1314
1315	* Bump version to 3.1.18
1316
13172003-03-23  Simon J. Gerraty  <sjg@void.crufty.net>
1318
1319	* Merge with NetBSD make
1320	Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1321	appears in src list.
1322
13232003-03-21  Simon J. Gerraty  <sjg@void.crufty.net>
1324
1325	* Merge with NetBSD make (mmm 10th anniversary!)
1326	pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1327	pick up -X which tells us to not export VAR=val via setenv if
1328	we are already doing so via MAKEFLAGS.  This saves valuable env
1329	space on systems like Darwin.
1330	set MAKE_VERSION to 3.1.17
1331
1332	* parse.c: pix up fix for suffix rules
1333
13342003-03-06  Simon J. Gerraty  <sjg@void.crufty.net>
1335
1336	* Merge with NetBSD make.
1337	pick up fix for propagating -B via MAKEFLAGS.
1338	set MAKE_VERSION to 3.1.16
1339
1340	* Apply some patches from pkgsrc-bootstrap/bmake
1341	Originally by Grant Beattie <grant@netbsd.org>
1342	I may have missed some - since they are based on bmake-3.1.12
1343
13442002-12-03  Simon J. Gerraty  <sjg@void.crufty.net>
1345
1346	* makefile.boot.in (bmake): update install targets for those that
1347	use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1348	havoc from gmake -w.  Thanks to Harlan Stenn <hstenn@cisco.com>.
1349
1350	* bmake.cat1: update the pre-formatted man page!
1351
13522002-11-30  Simon J. Gerraty  <sjg@void.crufty.net>
1353
1354	* Merge with NetBSD make.
1355	pick up fix for premature free of pointer used in call
1356	to Dir_InitCur().
1357	set MAKE_VERSION to 3.1.15
1358
13592002-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
1360
1361	* configure.in: determine suitable value for MKSRC.
1362	override using --with-mksrc=PATH.
1363
1364	* machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1365	configs(8) will use 'sun4' as an alias for 'sparc'.
1366
13672002-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
1368
1369	* Merge with NetBSD make.
1370	pick up ${.PATH}
1371	pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1372	set MAKE_VERSION to 3.1.14
1373	add configure checks for killpg and sys/socket.h
1374
13752002-09-16  Simon J. Gerraty  <sjg@void.crufty.net>
1376
1377	* tag bmake-3-1-13
1378
1379	* makefile.boot.in (bmake): use install-mk
1380	Also setup ./mk before trying to invoke bmake.boot incase we
1381	needed install-mk to create a sys.mk for us.
1382
1383	* configure.in: If we need to add -I${srcdir}/missing, make it an
1384	absolute path so that it works for lst.lib too.
1385
1386	* make.h: always include sys/cdefs.h since we provide one if the
1387	host does not.
1388
1389	* Makefile.in (install-mk):
1390	use MKSRC/install-mk which will do the right thing.
1391	use uname -p for ARCH if possible.
1392	since install-mk will setup links bsd.prog.mk -> prog.mk if
1393	needed, just .include bsd.prog.mk
1394
1395	* Merge with NetBSD make (NetBSD-1.6)
1396	Code is ansi-C only now.
1397	Bug in handling of dotLast is fixed.
1398	Can now assign .OBJDIR and make will reset its notions of life.
1399	New modifiers :tu :tl for toUpper and toLower.
1400
1401Tue Oct 16 12:18:42 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1402
1403	* Merge with NetBSD make
1404	pick up fix for .END failure in compat mode.
1405	pick up fix for extra va_end() in ParseVErrorInternal.
1406
1407Thu Oct 11 13:20:06 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1408
1409	* configure.in: for systems that have sys/cdefs.h check if it is
1410	compatible.  If not, include the one under missing, but tell it to
1411	include the native one too - necessary on Linux.
1412
1413	* missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1414	include_next (for gcc) to get the native sys/cdefs.h
1415
1416Tue Aug 21 02:29:34 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1417
1418	* job.c (JobFinish): Fix an earlier merge bug that resulted in
1419	leaking descriptors when using -jN.
1420
1421	* job.c (JobPrintCommand): See if "curdir" exists before
1422	attempting to chdir().  Doing the chdir directly in make (when in
1423	compat mode) fails silently, so let the -jN version do the same.
1424	This can happen when building kernels in an object tree and
1425	playing clever games to reset .CURDIR.
1426
1427	* Merged with NetBSD make
1428	pick up .USEBEFORE
1429
1430Tue Jun 26 23:45:11 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1431
1432	* makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1433
1434Tue Jun 12 16:48:57 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1435
1436	* var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1437	us not to export the iterator variable when using VAR_CMD context.
1438
1439Sun Jun 10 21:55:21 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1440
1441	* job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1442	its the wrong "fix".
1443
1444Sat Jun  9 00:11:24 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1445
1446	* Redesigned export of VAR_CMD's via MAKEFLAGS.
1447	We now simply append the variable names to .MAKEOVERRIDES, and
1448	handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1449	${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1450	Apart from fixing quoting bugs in previous version, this allows us
1451	to export vars to the environment by simply doing:
1452	.MAKEOVERRIDES+= PATH
1453	Merged again with NetBSD make, but the above is the only change.
1454
1455	* configure.in: added
1456	--disable-pwd-override		disable $PWD overriding getcwd()
1457	--disable-check-make-chdir	disable make trying to guess
1458		when it should automatically cd ${.CURDIR}
1459
1460	* Merge with NetBSD make, changes include:
1461	parse.c (ParseDoDependency): Spot that the syntax error is
1462	caused by an unresolved cvs/rcs conflict and say so.
1463	var.c: most of Var* functions now take a ctxt as 1st arg.
1464	now does variable substituion on rhs of sysv style modifiers.
1465
1466	* var.c (Var_Set): exporting of command line variables (VAR_CMD)
1467	is now done here.  We append the name='value' to .MAKEOVERRIDES
1468	rather than directly into MAKEFLAGS as this allows a Makefile to
1469	use .MAKEOVERRIDES= to disable this behaviour.  GNU make uses a
1470	very similar mechanism.  Note that in adding name='value' to
1471	.MAKEOVERRIDES we do the moral equivalent of:
1472	.MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
1473
1474Fri Jun  1 14:08:02 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1475
1476	* make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
1477
1478	* Merged with NetBSD make
1479	make -dx can now be used to run commands via sh -x
1480	better error messages on exec failures.
1481
1482Thu May 31 01:44:54 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1483
1484	* Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
1485	MAKE_VERSION gets updated.  Also don't use ?= for MAKE_VERSION,
1486	MACHINE etc otherwise they propagate from the previous bmake.
1487
1488	* configure.in (machine): allow --with-machine=generic to make
1489	configure use machine.sh to set MACHINE.
1490
1491	* job.c (JobInterrupt): convert to using WAIT_T and friends.
1492
1493	* Makefile.in: mention in bmake.1 that we use autoconf.
1494
1495	* make.1: mention MAKE_PRINT_VAR_ON_ERROR.
1496
1497Wed May 30 23:17:18 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1498
1499	* main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
1500	as that rather defeats the usefulness of ${MAKEFILE}.
1501
1502	* main.c (MainParseArgs): append command line variable assignments
1503	to MAKEFLAGS so that they get propagated to child make's.
1504	Apparently this is required POSIX behaviour?  Its useful anyway.
1505
1506Tue May 29 02:20:07 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1507
1508	* compat.c (CompatRunCommand): don't use perror() since stdio may
1509	cause problems in child of vfork().
1510
1511	* compat.c, main.c: Call PrintOnError() when we are going to bail.
1512	This routine prints out the .curdir where we stopped and will also
1513	display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
1514
1515	* main.c: add ${.newline} to hold a "\n" - sometimes handy in
1516	:@ expansion.
1517
1518	* var.c: VarLoopExpand: ignore addSpace if a \n is present.
1519
1520	* Added RCSid's for the files we've touched.
1521
1522Thu May 24 15:41:37 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1523
1524	* configure.in:	Thanks to some clues from mdb@juniper.net,
1525	added autoconf magic to control setting of MACHINE, MACHINE_ARCH
1526	as well as what ends up in _PATH_DEFSYSPATH.  We now have:
1527
1528  --with-machine=MACHINE  explicitly set MACHINE
1529  --with-force-machine=MACHINE  set FORCE_MACHINE
1530  --with-machine_arch=MACHINE_ARCH  explicitly set MACHINE_ARCH
1531  --with-default-sys-path=PATH:DIR:LIST  use an explicit _PATH_DEFSYSPATH
1532  --with-prefix-sys-path=PATH:DIR:LIST  prefix _PATH_PREFIX_SYSPATH
1533  --with-path-objdirprefix=PATH  override _PATH_OBJDIRPREFIX
1534
1535	If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
1536
1537	* makefile: added a pathetically simple makefile to drive
1538	bootstrapping.  Running configure by hand is more useful.
1539
1540	* Makefile.in: added MAKE_VERSION, and reworked things to be less
1541	dependent on NetBSD bsd.*.mk
1542
1543	* pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
1544	_PATH_OBJDIRPREFIX for those that don't want a default.
1545	construct _PATH_DEFSYSPATH from the info we get from configure.
1546
1547	* main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
1548	if MAKE_VERSION is defined.
1549
1550	* compat.c: when we bail, print out the .CURDIR we were in.
1551
1552Sat May 12 00:34:12 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1553
1554	* Merged with NetBSD make
1555
1556	* var.c: fixed a bug in the handling of the modifier :P
1557	if the node as found but the path was null, we segfault trying to
1558	duplicate it.
1559
1560Mon Mar  5 16:20:33 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1561
1562	* Merged with NetBSD make
1563
1564	* make.c: Make_OODate's test for a library out of date was using
1565	cmtime where it should have used mtime (my bug).
1566
1567	* compat.c: Use perror() to tell us what really went wrong when we
1568	cannot exec a command.
1569
1570Fri Dec 15 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1571
1572	* Merged with NetBSD make
1573
1574Sat Jun 10 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1575
1576	* Merged with NetBSD make
1577
1578Thu Jun  1 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1579
1580	* Merged with NetBSD make
1581
1582Tue May 30 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1583
1584	* Merged with NetBSD make
1585
1586Thu Apr 27 00:07:47 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1587
1588	* util.c: don't provide signal() since we use sigcompat.c
1589
1590	* Makefile.in: added a build target.
1591
1592	* var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
1593	These allow some quite clever magic.
1594
1595	* main.c (main): added support for getenv(MAKESYSPATH).
1596
1597Mon Apr  2 16:25:13 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1598
1599	* Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
1600	This avoids objdir having a different value depending on how a
1601	directory was reached (via command line, or subdir.mk).
1602
1603	* If FORCE_MACHINE is defined, ignore getenv("MACHINE").
1604
1605Mon Apr  2 23:15:31 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1606
1607	* Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
1608	MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
1609	I've been testing this in NetBSD's make for some weeks.
1610
1611	* Turn Makefile into Makefile.in and make it useful.
1612
1613Tue Feb 29 22:08:00 2000 Simon J. Gerraty  <sjg@zen.quick.com.au>
1614
1615	* Imported NetBSD's -current make(1) and resolve conflicts.
1616
1617	* Applied autoconf patches from bmake v2
1618
1619	* Imported clean code base from NetBSD-1.0
1620