xref: /freebsd/contrib/bmake/ChangeLog (revision 730cecb05aaf016ac52ef7cfc691ccec3a0408cd)
12013-01-27  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* Merge with NetBSD make, pick up
4	  o make.1: more info on how shell commands are handled.
5	  o job.c,main.c: detect write errors to job pipes.
6
72013-01-25  Simon J. Gerraty  <sjg@bad.crufty.net>
8
9	* Makefile (MAKE_VERSION): 20130123
10	  Merge with NetBSD make, pick up
11	  o meta.c: if script uses .OODATE and meta_oodate() decides
12	    rebuild is needed, .OODATE will be empty - set it to .ALLSRC.
13	  o var.c: in debug output indicate which variabale modifiers
14	    apply to.
15	  o remove Check_Cwd logic the makefiles have been fixed.
16
172012-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
18
19	* makefile.in: add a simple makefile for folk who insist on
20	  ./configure; make; make install
21	  it just runs boot-strap
22	* include mk/* to accommodate the above
23	* boot-strap:  re-work to accommodate the above
24	  mksrc defaults to $Mydir/mk
25	  allow op={configure,build,install,clean,all}
26	  add options to facilitate install
27	* Makefile.config.in: just the bits set by configure
28	* Makefile: bump version to 20121212
29	  abandon Makefile.in (NetBSD Makefile)
30	  leverage mk/* instead
31	* configure.in: ensure srcdir is absolute
32
332012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
34
35	* Makefile.in (MAKE_VERSION): 20121111
36	  fix generation of bmake.cat1
37
382012-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
39
40	* Makefile.in (MAKE_VERSION): 20121109
41	  Merge with NetBSD make, pick up
42	  o make.c: MakeBuildChild: return 0 so search continues if a
43	    .ORDER dependency is detected.
44	  o unit-tests/order: test the above
45
462012-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
47
48	* Makefile.in (MAKE_VERSION): 20121102
49	  Merge with NetBSD make, pick up
50	  o cond.c: allow cond_state[] to grow.
51	    In meta mode with a very large tree, we can hit the limit
52	    while processing dirdeps.
53
542012-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
55
56	* Makefile.in: we need to use ${srcdir} not ${.CURDIR}
57
582012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
59
60	* Makefile.in (MAKE_VERSION): 20121010
61	  o protect syntax that only bmake parses correctly.
62	  o remove auto setting of FORCE_MACHINE, use configure's
63	    --with-force-machine=whatever if that is desired.
64
652012-10-08  Simon J. Gerraty  <sjg@bad.crufty.net>
66
67	* Makefile.in: do not lose history from make.1 when generating bmake.1
68
692012-10-07  Simon J. Gerraty  <sjg@bad.crufty.net>
70
71	* Makefile.in (MAKE_VERSION): 20121007
72	  Merge with NetBSD make, pick up
73	  o compat.c: ignore empty commands - same as jobs mode.
74	  o make.1: document meta chars that cause use of shell
75
762012-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
77
78	* Makefile.in (MAKE_VERSION): bump version to 20120911
79	* bsd.after-import.mk: include Makefile.inc early and allow it to
80	  override PROG
81
822012-08-31  Simon J. Gerraty  <sjg@bad.crufty.net>
83
84	* Makefile.in (MAKE_VERSION): bump version to 20120831
85	  Merge with NetBSD make, pick up
86	  o cast sizeof() to int for comparison
87	  o minor make.1 tweak
88
892012-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
90
91	* Makefile.in (MAKE_VERSION): bump version to 20120830
92	  Merge with NetBSD make, pick up
93	  o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
94	  o debug flag -dV causes -V to show raw value regardless.
95
962012-07-05  Simon J. Gerraty  <sjg@bad.crufty.net>
97
98	* bsd.after-import.mk (after-import): ensure unit-tests/Makefile
99	  gets SRCTOP set.
100
1012012-07-04  Simon J. Gerraty  <sjg@bad.crufty.net>
102
103	* Makefile.in (MAKE_VERSION): bump version to 20120704
104	  Merge with NetBSD make, pick up
105	  o Job_ParseShell should call Shell_Init if it has been
106	    previously called.
107	* Makefile.in: set USE_META based on configure result.
108	  also .PARSEDIR is safer indicator of bmake.
109
1102012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
111
112	* Makefile.in: bump version to 20120626
113	  ensure CPPFLAGS is in CFLAGS
114	* meta.c: avoid nested externs
115	* bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
116
1172012-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
118
119	* Makefile.in (MAKE_VERSION): bump version to 20120620
120	  Merge with NetBSD make, pick up
121	  o make_malloc.c: avoid including make_malloc.h again
122
123	* Makefile.in: avoid bmake only syntax or protect with
124	  .if defined(.MAKE.LEVEL)
125	* bsd.after-import.mk: replace .-include with .sinclude
126	  ensure? SRCTOP gets a value
127	* configure.in: look for filemon.h in /usr/include/dev/filemon first.
128
1292012-06-19  Simon J. Gerraty  <sjg@bad.crufty.net>
130
131	* Makefile.in (MAKE_VERSION): bump version to 20120612
132	  Merge with NetBSD make, pick up
133	  o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
134	    for greater portability.
135	  o unit-tests/forloop: check that .for works as expected wrt
136	    number of times and with "quoted strings".
137
1382012-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
139
140	* Makefile.in (MAKE_VERSION): bump version to 20120606
141	  Merge with NetBSD make, pick up
142	  o compat.c: use kill(2) rather than raise(3).
143	* configure.in: look for sys/dev/filemon
144	* bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
145	  and pass BOOTSTRAP_XTRAS to boot-strap.
146
1472012-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
148
149	* Makefile.in (MAKE_VERSION): bump version to 20120604
150	  Merge with NetBSD make, pick up
151	  o util.c and var.c share same var for tracking if environ
152	    has been reallocated.
153	  o util.c provide getenv with setenv.
154	* Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
155	  when the shell actively strips .MAKE.* from the environment.
156	  We still refer to the variable always as .MAKE.LEVEL
157	* util.c fix bug in findenv() was finding prefix of name.
158	* compat.c: re-raising SIGINT etc after running .INTERRUPT
159	  results in more reliable termination of all activity on many
160	  platforms.
161
1622012-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
163
164	* Makefile.in (MAKE_VERSION): bump version to 20120602
165	  Merge with NetBSD make, pick up
166	  o for.c: handle quoted items in .for list
167
1682012-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
169
170	* Makefile.in (MAKE_VERSION): bump version to 20120530
171	  Merge with NetBSD make, pick up
172	  o compat.c: ignore empty command.
173
1742012-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
175
176	* Makefile.in (MAKE_VERSION): bump version to 20120524
177	* FILES: add bsd.after-import.mk:
178	  A simple means of integrating bmake into a BSD build system.
179
1802012-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
181
182	* Makefile.in (MAKE_VERSION): bump version to 20120520
183	  Merge with NetBSD make, pick up
184	  o increased limit for nested conditionals.
185
1862012-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
187
188	* Makefile.in (MAKE_VERSION): bump version to 20120518
189	  Merge with NetBSD make, pick up
190	  o use _exit(2) in signal hanlder
191	  o Don't use the [dir] cache when building nodes that might have
192	    changed since the last exec.
193	  o Avoid nested extern declaration warnings.
194
1952012-04-27  Simon J. Gerraty  <sjg@bad.crufty.net>
196
197	* meta.c (fgetLine): avoid %z - not portable.
198	* parse.c: Since we moved include of sys/mman.h
199	  and def's of MAP_COPY etc. we got dups from a merge.
200
2012012-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
202
203	* Makefile.in (MAKE_VERSION): bump version to 20120420
204	  Merge with NetBSD make, pick up
205	  o restore duplicate supression in .MAKE.MAKEFILES
206	    runtime saving can be significant.
207	  o Var_Subst() uses Buf_DestroyCompact() to reduce memory
208	    consumption up to 20%.
209
2102012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
211
212	* Makefile.in (MAKE_VERSION): bump version to 20120420
213          Merge with NetBSD make, pick up
214	  o remove duplicate supression in .MAKE.MAKEFILES
215	  o improved dir cache behavior
216	  o gmake'ish export command
217
2182012-03-25  Simon J. Gerraty  <sjg@bad.crufty.net>
219
220	* Makefile.in (MAKE_VERSION): bump version to 20120325
221	  Merge with NetBSD make, pick up
222	  o fix parsing of :[#] in conditionals.
223
2242012-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
225
226	* Makefile.in: replace use of .Nx in bmake.1 with NetBSD
227	  since some systems cannot cope with .Nx <version>
228
2292011-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
230
231	* Makefile.in (MAKE_VERSION): bump version to 20111111
232	  Merge with NetBSD make, pick up
233	  o debug output for .PARSEDIR and .PARSEFILE
234
2352011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
236
237	* Makefile.in (MAKE_VERSION):  bump version to 20111010
238
2392011-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
240
241	* boot-strap: check for an expected file in the dirs we look for.
242	* make-bootstrap.sh: pass on LDSTATIC
243
2442011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
245
246	* Makefile.in (MAKE_VERSION): bump version to 20111001
247	  Merge with NetBSD make, pick up
248	  o ensure .PREFIX is set for .PHONY
249	    and .TARGET set for .PHONY run via .END
250	  o __dead used consistently
251
2522011-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
253
254	* Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
255
2562011-09-05  Simon J. Gerraty  <sjg@bad.crufty.net>
257
258	* Makefile.in (MAKE_VERSION): bump version to 20110905
259	  Merge with NetBSD make, pick up
260	  o meta_oodate: ignore makeDependfile
261
2622011-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
263
264	* Makefile.in (MAKE_VERSION): bump version to 20110828
265	  Merge with NetBSD make, pick up
266	  o silent=yes in .MAKE.MODE causes meta mode to mark targets
267	    as SILENT if a .meta file is created
268
2692011-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
270
271	* Makefile.in (MAKE_VERSION): bump version to 20110818
272	  Merge with NetBSD make, pick up
273	  o in meta mode, if target flagged .META a missing .meta file
274	    means target is out-of-date
275	  o fixes for gcc 4.5 warnings
276	  o simplify job printing code
277
2782011-08-09  Simon J. Gerraty  <sjg@bad.crufty.net>
279
280	* Makefile.in (MAKE_VERSION): bump version to 20110808
281	  Merge with NetBSD make, pick up
282	  o do not touch OP_SPECIAL targets when doing make -t
283
2842011-06-22  Simon J. Gerraty  <sjg@bad.crufty.net>
285
286	* Makefile.in (MAKE_VERSION): bump version to 20110622
287	  Merge with NetBSD make, pick up
288	  o meta_oodate detect corrupted .meta file and declare oodate.
289	* configure.in: add check for setsid
290
2912011-06-07  Simon J. Gerraty  <sjg@bad.crufty.net>
292
293	* Merge with NetBSD make, pick up
294	  o unit-tests/modts now works on MirBSD
295
2962011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
297
298	* Makefile.in (MAKE_VERSION): bump version to 20110606
299	  Merge with NetBSD make, pick up
300	  o ApplyModifiers: when we parse a variable which is not
301	    the entire modifier string, or not followed by ':', do not
302	    consider it as containing modifiers.
303	  o loadfile: ensure newline at end of mapped file.
304
3052011-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
306
307	* Makefile.in (MAKE_VERSION): bump version to 20110505
308	  Merge with NetBSD make, pick up
309	  o .MAKE.META.BAILIWICK - list of prefixes which define the scope
310	    of make's control.  In meta mode, any generated file within
311	    said bailiwick, which  is found to be missing, causes current
312	    target to be out-of-date.
313
3142011-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
315
316	* Makefile.in (MAKE_VERSION): bump version to 20110411
317	  Merge with NetBSD make, pick up
318	  o when long modifiers fail to match, check sysV style.
319	    - add a test case
320
3212011-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
322
323	* Makefile.in (MAKE_VERSION): bump version to 20110410
324	  Merge with NetBSD make, pick up
325	  o :hash - cheap 32bit hash of value
326	  o :localtime, :gmtime - use value as format string for strftime.
327
3282011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
329
330	* Makefile.in (MAKE_VERSION): bump version to 20110330
331	  mostly because its a cooler version.
332	  Merge with NetBSD make, pick up
333	  o NetBSD tags for meta.[ch]
334	  o job.c call meta_job_finish() after meta_job_error().
335	  o meta_job_error() should call meta_job_finish() to ensure
336	    .meta file is closed, and safe to copy - if .ERROR target wants.
337	   meta_job_finish() is safe to call repeatedly.
338
3392011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
340
341	* unit-tests/modts: use printf if it is a builtin,
342	  to save us from MirBSD
343
344	* Makefile.in (MAKE_VERSION): bump version to 20110329
345	  Merge with NetBSD make, pick up
346	  o fix for use after free() in CondDoExists().
347	  o meta_oodate() report extra commands and return earlier.
348
3492011-03-27  Simon J. Gerraty  <sjg@bad.crufty.net>
350
351	* Makefile.in (MAKE_VERSION): bump version to 20110327
352	  Merge with NetBSD make, pick up
353	  o meta.c, if .MAKE.MODE contains curdirOk=yes
354	    allow creating .meta files in .CURDIR
355	* boot-strap (TOOL_DIFF): aparently at least on linux distro
356	  formats the output of 'type' differently - so eat any "()"
357
3582011-03-06  Simon J. Gerraty  <sjg@bad.crufty.net>
359
360	* Makefile.in (MAKE_VERSION): bump version to 20110306
361	  Merge with NetBSD make, pick up
362	  o meta.c, only do getcwd() once
363
3642011-03-05  Simon J. Gerraty  <sjg@bad.crufty.net>
365
366	* Makefile.in (MAKE_VERSION): bump version to 20110305
367	  Merge with NetBSD make, pick up
368	  o correct sysV substitution handling of empty lhs and variable
369	  o correct exists() check for dir with trailing /
370	  o correct handling of modifiers for non-existant variables
371	    during evaluation of conditionals.
372	  o ensure MAP_FILE is defined.
373	  o meta.c use curdir[] now exported by main.c
374
3752011-02-25  Simon J. Gerraty  <sjg@bad.crufty.net>
376
377	* Makefile.in (MAKE_VERSION): bump version to 20110225
378	  Merge with NetBSD make, pick up
379	  o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
380	    makefiles have been read.
381	  o fix example of :? modifier in man page.
382
3832011-02-13  Simon J. Gerraty  <sjg@bad.crufty.net>
384
385	* Makefile.in (MAKE_VERSION): bump version to 20110214
386	  Merge with NetBSD make, pick up
387	  o meta.c handle realpath() failing when generating meta file
388	    name.
389
390	* sigcompat.c: convert to ansi so we can use higher warning levels.
391
392
3932011-02-07  Simon J. Gerraty  <sjg@bad.crufty.net>
394
395	* Makefile.in (MAKE_VERSION): bump version to 20110207
396	  Merge with NetBSD make, pick up
397	  o fix for bug in meta mode.
398
3992011-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
400
401	* parse.c: SunOS 5.8 at least does not have MAP_FILE
402
4032011-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
404
405	* Makefile.in (MAKE_VERSION): bump version to 20110101
406	  Merge with NetBSD make, pick up
407	  o use mmap(2) if available, for reading makefiles
408
4092010-12-15  Simon J. Gerraty  <sjg@bad.crufty.net>
410
411	* Makefile.in (MAKE_VERSION): bump version to 20101215
412	  Merge with NetBSD make, pick up
413	  o ensure meta_job_error() does not report a previous .meta file
414	    as being culprit.
415
4162010-12-10  Simon J. Gerraty  <sjg@bad.crufty.net>
417
418	* Makefile.in (MAKE_VERSION): bump version to 20101210
419	  Merge with NetBSD make, pick up
420	  o meta_oodate: track cwd per process, and only consider target
421	    out-of-date if missing file is outside make's CWD.
422	    Ignore files in /tmp/ etc.
423	  o to ensure unit-tests results match, need to control LC_ALL
424	    as well as LANG.
425	  o fix for parsing bug in var.c
426
4272010-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
428
429	* Makefile.in (MAKE_VERSION): bump version to 20101126
430	  Merge with NetBSD make, pick up
431	  o if stale dependency is an IMPSRC, search via .PATH
432	  o meta_oodate: if a referenced file is missing, target is
433	    out-of-date.
434	  o meta_oodate: if a target uses .OODATE in its commands,
435	    it (.OODATE) needs to be recomputed.
436	  o keep a pointer to youngest child node, rather than just its
437	    mtime.
438
4392010-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
440
441	* Makefile.in (MAKE_VERSION): bump version to 20101101
442
4432010-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
444
445	* machine.sh: like os.sh,
446	allow for uname -p producing useless drivel
447
4482010-09-13  Simon J. Gerraty  <sjg@bad.crufty.net>
449
450	* boot-strap: document configure knobs for meta and filemon.
451
452	* Makefile.in (MAKE_VERSION): bump version to 20100911
453	  Merge with NetBSD make, pick up
454	  o meta.c - meta mode
455
456	* make-bootstrap.sh.in: handle meta.c
457	* configure.in: add knobs for use_meta and filemon_h
458	  also, look for dirname, str[e]sep and strlcpy
459	* util.c: add simple err[x] and warn[x]
460
4612010-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
462
463	* boot-strap (TOOL_DIFF): set this to ensure tests use
464	  the same version of diff that configure tested
465
466	* Makefile.in (MAKE_VERSION): bump version to 20100808
467	  Merge with NetBSD make, pick up
468	  o in jobs mode, when we discover we cannot make something,
469	    call PrintOnError before exit.
470
4712010-08-06  Simon J. Gerraty  <sjg@bad.crufty.net>
472
473	* Makefile.in (MAKE_VERSION): bump version to 20100806
474	  Merge with NetBSD make, pick up
475	  o formatting fixes for ignored errors
476	  o ensure jobs are cleaned up regardless of where wait() was called.
477
4782010-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
479
480	* Makefile.in (MAKE_VERSION): bump version to 20100618
481	* os.sh (MACHINE_ARCH): watch out for drivel from uname -p
482
4832010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
484
485	* Makefile.in (MAKE_VERSION): bump version to 20100616
486	  Merge with NetBSD make, pick up
487	  o man page update
488	  o call PrintOnError from JobFinish when we detect an error we
489	    are not ignoring.
490
4912010-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
492
493	* Makefile.in (MAKE_VERSION): bump version to 20100606
494	  Merge with NetBSD make, pick up
495	  o man page update
496
4972010-06-05  Simon J. Gerraty  <sjg@bad.crufty.net>
498
499	* Makefile.in (MAKE_VERSION): bump version to 20100605
500	  Merge with NetBSD make, pick up
501	  o use bmake_signal() which is a wrapper around sigaction()
502	    in place of signal()
503	  o add .export-env to allow exporting variables to environment
504	    without tracking (so no re-export when the internal value is
505	    changed).
506
5072010-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
508
509	* Makefile.in (MAKE_VERSION): bump version to 20100524
510	  Merge with NetBSD make, pick up
511	  o fix for .info et al being greedy.
512
5132010-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
514
515	* Makefile.in (MAKE_VERSION): bump version to 20100520
516	  Merge with NetBSD make, pick up
517	  o back to using realpath on argv[0]
518	    but only if contains '/' and does not start with '/'.
519
5202010-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
521
522	* boot-strap: use absolute path for bmake when running tests.
523
524	* Makefile.in (MAKE_VERSION):  bump version to 20100510
525	  Merge with NetBSD make, pick up
526	  o revert use of realpath on argv[0]
527	    too many corner cases.
528	  o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
529
5302010-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
531
532	* Makefile.in (MAKE_VERSION): bump version to 20100505
533	  Merge with NetBSD make, pick up
534	  o fix for missed SIGCHLD when compiled with SunPRO
535	    actually for bmake, defining FORCE_POSIX_SIGNALS would have
536	    done the job.
537
5382010-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
539
540	* Makefile.in (MAKE_VERSION): bump version to 20100430
541	  Merge with NetBSD make, pick up
542	  o fflush stdout before writing to stdout
543
5442010-04-23  Simon J. Gerraty  <sjg@bad.crufty.net>
545
546	* Makefile.in (MAKE_VERSION): bump version to 20100423
547	  Merge with NetBSD make, pick up
548	  o updated unit tests for Haiku (this time for sure).
549	* boot-strap: based on patch from joerg
550	  honor --with-default-sys-path better.
551	* boot-strap: remove mention of --with-prefix-sys-path
552
5532010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
554
555	* Makefile.in (MAKE_VERSION): bump version to 20100422
556	* Merge with NetBSD make, pick up
557	  o fix for vfork() on Darwin.
558	  o fix for bogus $TMPDIR.
559	  o set .MAKE.MODE=compat for -B
560	  o set .MAKE.JOBS=max_jobs for -j max_jobs
561	  o allow unit-tests to run without any *.mk
562	  o unit-tests/modmisc be more conservative in dirs presumed to exist.
563	* boot-strap: ignore /usr/share/mk except on NetBSD.
564	* unit-tests/Makefile.in: set LANG=C when running unit-tests to
565	  ensure sort(1) behaves as expected.
566
5672010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
568
569	* boot-strap: add FindHereOrAbove so we can use -m .../mk
570
5712010-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
572
573	* Makefile.in (MAKE_VERSION): bump version to 20100420
574	* Merge with NetBSD make, pick up
575	  o fix for variable realpath() behavior.
576	    we have to stat(2) the result to be sure.
577	  o fix for .export (all) when nested vars use :sh
578
5792010-04-14  Simon J. Gerraty  <sjg@bad.crufty.net>
580
581	* Makefile.in (MAKE_VERSION): bump version to 20100414
582	* Merge with NetBSD make, pick up
583	  o use realpath to resolve argv[0] (for .MAKE) if needed.
584	  o add realpath from libc.
585	  o add :tA to resolve variable via realpath(3) if possible.
586
5872010-04-08  Simon J. Gerraty  <sjg@bad.crufty.net>
588
589	* Makefile.in (MAKE_VERSION): bump version to 20100408
590	* Merge with NetBSD make, pick up
591	  o unit tests for .ERROR, .error
592	  o fix for .ERROR to ensure it cannot be default target.
593
5942010-04-06  Simon J. Gerraty  <sjg@bad.crufty.net>
595
596	* Makefile.in (MAKE_VERSION): bump version to 20100406
597	* Merge with NetBSD make, pick up
598	  o fix for compat mode "Error code" going to debug_file.
599	  o fix for .ALLSRC being populated twice.
600	  o support for .info, .warning and .error directives
601	  o .MAKE.MODE to control make's operational mode
602	  o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
603	    name(s).
604	  o .MAKE.DEPENDFILE to control the name of the depend file
605	  o .ERROR target - run on failure.
606
6072010-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
608
609	* make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
610
611	* os.sh,arch.c: patch for Haiku from joerg at netbsd
612
6132010-03-17  Simon J. Gerraty  <sjg@bad.crufty.net>
614
615	* Makefile.in (MAKE_VERSION): bump version to 20100222
616	* Merge with NetBSD make, pick up
617	  o better error msg for .for with mutiple inter vars
618
619	* boot-strap:
620	  o use make-bootstrap.sh from joerg at netbsd
621	    to avoid the need for a native make when bootstrapping.
622	  o add "" everywhere ;-)
623	  o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
624	    otherwise the pre-formated version.
625
6262010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
627
628	* Makefile.in (MAKE_VERSION): bump version to 20100102
629	* Merge with NetBSD make, pick up:
630	  o fix for -m .../
631
6322009-11-18  Simon J. Gerraty  <sjg@void.crufty.net>
633
634	* Makefile.in (MAKE_VERSION): bump version to 20091118
635	* Merge with NetBSD make, pick up:
636	  o .unexport
637	  o report lines that start with '.' and should have ':'
638	    (catch typo's of .el*if).
639
6402009-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
641
642	* configure.in: Ensure that srcdir and mksrc are absolute paths.
643
6442009-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
645
646	* Makefile.in (MAKE_VERSION): fix version to 20091007
647
6482009-10-07  Simon J. Gerraty  <sjg@void.crufty.net>
649
650	* Makefile.in (MAKE_VERSION): bump version to 200910007
651	* Merge with NetBSD make, pick up:
652	  o fix for parsing of :S;...;...; applied to .for loop iterator
653	    appearing in a dependency line.
654
6552009-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
656
657	* Makefile.in (MAKE_VERSION): bump version to 20090909
658	* Merge with NetBSD make, pick up:
659	  o fix for -C, .CURDIR and .OBJDIR
660	* boot-strap:
661	  o allow share_dir to be set independent of prefix.
662	  o select default share_dir better when prefix ends in $HOST_TARGET
663	  o if FORCE_BSD_MK etc were set, include them in the suggested
664	    install-mk command.
665
6662009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
667
668	* Makefile.in (MAKE_VERSION): bump version to 20090908
669	* Merge with NetBSD make, pick up:
670	  o .MAKE.LEVEL for recursion tracking
671	  o fix for :M scanning \:
672
6732009-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
674
675	* configure.in: Don't -D__EXTENSIONS__ if
676	AC_USE_SYSTEM_EXTENSIONS says "no".
677
6782009-08-26  Simon J. Gerraty  <sjg@void.crufty.net>
679
680	* Makefile.in (MAKE_VERSION): bump version to 20090826
681	Simplify MAKE_VERSION to just the bare date.
682	* Merge with NetBSD make, pick up:
683	  o -C directory support.
684	  o support for SIGINFO
685	  o use $TMPDIR for temp files.
686	  o child of vfork should be careful about modifying parent's state.
687
688
6892009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
690
691	* Appy some patches for MiNT from David Brownlee
692
6932009-02-26  Simon J. Gerraty  <sjg@void.crufty.net>
694
695	* Makefile.in (BMAKE_VERSION): bump version to 20090222
696	* Merge with NetBSD make, pick up:
697	  o Possible null pointer de-ref in Var_Set.
698
6992009-02-08  Simon J. Gerraty  <sjg@void.crufty.net>
700
701	* Makefile.in (BMAKE_VERSION): bump version to 20090204
702	* Merge with NetBSD make, pick up:
703	  o bmake_malloc et al moved to their own .c
704	  o Count both () and {} when looking for the end of a :M pattern
705	  o Change 'Buffer' so that it is the actual struct, not a pointer to it.
706	  o strlist.c - functions for processing extendable arrays of pointers to strings.
707	  o ClientData replaced with void *, so const void * can be used.
708	  o New debug flag C for DEBUG_CWD
709
7102008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
711
712	* Makefile.in (BMAKE_VERSION): bump version to 20081111
713	  Apply patch from Joerg Sonnenberge to
714	  configure.in:
715	  o remove some redundant checks
716	  o check for emlloc etc only in libutil and require the whole family.
717	  util.c:
718	  o remove [v]asprintf which is no longer used.
719
7202008-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
721
722	* Makefile.in (BMAKE_VERSION): bump version to 20081101
723	* Merge with NetBSD make, pick up:
724	  o util.c: avoid use of putenv() - christos
725
7262008-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
727
728	* Makefile.in (BMAKE_VERSION): bump version to 20081030
729	  pick up man page tweaks.
730
7312008-10-29  Simon J. Gerraty  <sjg@void.crufty.net>
732
733	* Makefile.in: move processing of LIBOBJS to after is definition!
734	  thus we'll have getenv.c in SRCS only if needed.
735
736	* make.1: add examples of how to use :?
737
738	* Makefile.in (BMAKE_VERSION): bump version to 20081029
739	* Merge with NetBSD make, pick up:
740	  o fix for .END processing with -j
741	  o segfault from Parse_Error when no makefile is open
742	  o handle numeric expressions in any variable expansion
743	  o debug output now defaults to stderr, -dF to change it - apb
744	  o make now uses bmake_malloc etc so that it can build natively
745	    on A/UX - wasn't an issue for bmake, but we want to keep in sync.
746
7472008-09-27  Simon J. Gerraty  <sjg@void.crufty.net>
748
749	* Makefile.in (BMAKE_VERSION): bump version to 20080808
750	* Merge with NetBSD make, pick up:
751	  o fix for PR/38840: Pierre Pronchery: make crashes while parsing
752	    long lines in Makefiles
753	  o optimizations for VarQuote by joerg
754	  o fix for PR/38756: dominik: make dumps core on invalid makefile
755
7562008-05-15  Simon J. Gerraty  <sjg@void.crufty.net>
757
758	* Makefile.in (BMAKE_VERSION): bump version to 20080515
759	* Merge with NetBSD make, pick up:
760	  o fix skip setting vars in VAR_GLOBAL context, to handle
761	    cases where VAR_CMD is used for other than command line vars.
762
7632008-05-14  Simon J. Gerraty  <sjg@void.crufty.net>
764
765	* boot-strap (make_version): we may need to look in
766	$prefix/share/mk for sys.mk
767
768	* Makefile.in (BMAKE_VERSION): bump version to 20080514
769	* Merge with NetBSD make, pick up:
770	  o skip setting vars in VAR_GLOBAL context, when already set in
771	  VAR_CMD which takes precedence.
772
7732008-03-30  Simon J. Gerraty  <sjg@void.crufty.net>
774
775	* Makefile.in (BMAKE_VERSION):  bump version to 20080330
776	* Merge with NetBSD make, pick up:
777	  o fix for ?= when LHS contains variable reference.
778
7792008-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
780
781	* merge some patches from NetBSD pkgsrc.
782
783	* makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
784	the MAKSYSPATH used during bootstrap.
785
786	* Makefile.in (BMAKE_VERSION): bump version to 20080215
787	* Merge with NetBSD make, pick up:
788	  o warn if non-space chars follow 'empty' in a conditional.
789
7902008-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
791
792	* Makefile.in (BMAKE_VERSION): bump version to 20080118
793	* Merge with NetBSD make, pick up:
794	  o consider dependencies read from .depend as optional - dsl
795	  o remember when buffer for reading makefile grows - dsl
796	  o add -dl (aka LOUD) - David O'Brien
797
7982007-10-22  Simon J. Gerraty  <sjg@void.crufty.net>
799
800	* Makefile.in (BMAKE_VERSION): bump version to 20071022
801	* Merge with NetBSD make, pick up:
802	  o Allow .PATH<suffix> to be used for .include ""
803
804	* boot-strap: source default settings from .bmake-boot-strap.rc
805
8062007-10-16  Simon J. Gerraty  <sjg@void.crufty.net>
807
808	* Makefile.in: fix maninstall on various systems
809	  provided that our man.mk is used.
810	  For non-BSD systems we install the preformatted page
811	  into $MANDIR/cat1
812
8132007-10-15  Simon J. Gerraty  <sjg@void.crufty.net>
814
815	* boot-strap: make bmake.1 too, so maninstall works.
816
8172007-10-14  Simon J. Gerraty  <sjg@void.crufty.net>
818
819	* Makefile.in (BMAKE_VERSION): bump version to 20071014
820	* Merge with NetBSD make, pick up:
821	  o revamped handling of defshell - configure no longer needs to
822	    know the content of the shells array - apb
823	  o stop Var_Subst modifying its input - apb
824	  o avoid calling ParseTrackInput too often - dsl
825
8262007-10-11  Simon J. Gerraty  <sjg@void.crufty.net>
827
828	* Makefile.in (BMAKE_VERSION): bump version to 20071011
829	* Merge with NetBSD make, pick up:
830	  o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
831
832	* sigcompat.c: some tweaks for HP-UX 11.x based on
833	  patch from Tobias Nygren
834
835	* configure.in: update handling of --with-defshell to match
836	  new make behavior.  --with-defshell=/usr/xpg4/bin/sh
837	  will now do what one might hope - provided the chosen shell
838	  behaves enough like sh.
839
8402007-10-08  Simon J. Gerraty  <sjg@void.crufty.net>
841
842	* Makefile.in (BMAKE_VERSION): bump to 20071008
843	* Merge with NetBSD make, pick up:
844	  o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
845	  o .export/.MAKE.EXPORTED - export of variables - sjg
846	  o .MAKE.MAKEFILES - track all makefiles read - sjg
847	  o performance improvements - dsl
848	  o revamp parallel job scheduling - dsl
849
8502006-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
851
852	* Makefile.in (BMAKE_VERSION): bump to 20060728
853	* Merge with NetBSD make, pick up:
854	  o extra debug info during variable and cond processing - sjg
855	  o shell definition now covers newline - rillig
856	  o minor mem leak in PrintOnError - sjg
857
8582006-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
859
860	* Makefile.in (BMAKE_VERSION):  bump to 20060511
861	* Merge with NetBSD make, pick up:
862	  o more memory leaks - coverity
863	  o possible overflow in ArchFindMember - coverity
864	  o extract variable modifier code out of Var_Parse()
865	    so it can be called recursively - sjg
866	  o unit-tests/moderrs - sjg
867
8682006-04-12  Simon J. Gerraty  <sjg@void.crufty.net>
869
870	* Makefile.in (BMAKE_VERSION): bump to 20060412
871	* Merge with NetBSD make, pick up:
872	  o fixes for some memory leaks - coverity
873	  o only read first sys.mk etc when searching sysIncPath - sjg
874
875	* main.c (ReadMakefile): remove hack for __INTERIX that prevented
876	setting ${MAKEFILE} - OBATA Akio
877
8782006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
879
880	* Makefile.in (BMAKE_VERSION): bump to 20060318
881	* Merge with NetBSD make, pick up:
882	  o cleanup of job.c to remove remote handling, distcc is more
883	    useful and this code was likely bit-rotting - dsl
884	  o fix for :P modifier - sjg
885	* boot-strap: set default prefix to something reasonable
886	  (for me anyway).
887
8882006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
889
890	* Makefile.in (BMAKE_VERSION): bump to 20060301
891	* Merge with NetBSD make, pick up:
892	  o make .WAIT apply recursively, document and test case - apb
893	  o allow variable modifiers in a variable appear anywhere in
894	    modifier list, document and test case - sjg
895
8962006-02-22  Simon J. Gerraty  <sjg@void.crufty.net>
897
898	* Makefile.in (BMAKE_VERSION): bump to 20060222
899	* Merge with NetBSD make, pick up:
900	  o improved job token handling - dsl
901	  o SIG_DFL the correct signal before exec - dsl
902	  o more debug info during parsing - dsl
903	  o allow variable modifiers to be specified via variable - sjg
904	* boot-strap: explain why we died if no mksrc
905
9062005-11-05  Simon J. Gerraty  <sjg@void.crufty.net>
907
908	* Makefile.in (BMAKE_VERSION): bump to 20051105
909	* configure.in: always set default_sys_path
910	  default is ${prefix}/share/mk
911	  - remove prefix_sys_path, anyone wanting more than above
912	    needs to set it manually.
913
9142005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
915
916	* boot-strap: make this a bit easier for pkgsrc folk.
917	  bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
918	  'mips' while pkgsrc wants 'mipseb' or 'mipsel'
919
9202005-11-02  Simon J. Gerraty  <sjg@void.crufty.net>
921
922	* Makefile.in (BMAKE_VERSION): bump to 20051102
923	* job.c (JobFinish): fix likely ancient merge lossage
924	fix from Todd Vierling.
925	* boot-strap (srcdir): allow setting mksrc=none
926
9272005-10-31  Simon J. Gerraty  <sjg@void.crufty.net>
928
929	* Makefile.in (BMAKE_VERSION): bump to 20051031
930	* ranlib.h: skip on OSF too.
931	  (NetBSD PR 31864)
932
9332005-10-10  Simon J. Gerraty  <sjg@void.crufty.net>
934
935	* Makefile.in (BMAKE_VERSION): bump to 20051002
936	  fix a silly typo
937
9382005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
939
940	* Makefile.in (BMAKE_VERSION): bump to 20051001
941	  support for UnixWare and some other systems,
942	  based on patches from pkgsrc/bootstrap
943
9442005-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
945
946	* Makefile.in (BMAKE_VERSION): bump to 20050901
947	* Merge with NetBSD make, pick up:
948	  o possible parse error causing us to wander off.
949
9502005-06-06  Simon J. Gerraty  <sjg@void.crufty.net>
951
952	* Makefile.in (BMAKE_VERSION): bump to 20050606
953	* Merge with NetBSD make, pick up:
954	  o :0x modifier for randomizing a list
955	  o fixes for a number of -Wuninitialized issues.
956
9572005-05-30  Simon J. Gerraty  <sjg@void.crufty.net>
958
959	* Makefile.in (BMAKE_VERSION): bump to 20050530
960	* Merge with NetBSD make, pick up:
961	  o Handle dependencies for .BEGIN, .END and .INTERRUPT
962
963	* README: was seriously out of date.
964
9652005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
966
967	* Important to use .MAKE rather than MAKE.
968
9692005-03-15  Simon J. Gerraty  <sjg@void.crufty.net>
970
971	* Makefile.in (BMAKE_VERSION): bump to 20050315
972	* Merge with NetBSD make, pick up:
973	  o don't mistake .elsefoo for .else
974	  o use suffix-specific search path correctly
975	  o bunch of style nits
976
9772004-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
978
979	* boot-strap:
980	o ensure that args to --src and --with-mksrc
981	  are resolved before giving them to configure.
982	o add -o "objdir" so that builder can control it,
983	  default is $OS as determined by os.sh
984	o add -q to suppress all the install instructions.
985
9862004-05-08  Simon J. Gerraty  <sjg@void.crufty.net>
987
988	* Remove __IDSTRING()
989
990	* Makefile.in (BMAKE_VERSION): bump to 20040508
991	* Merge with NetBSD make, pick up:
992	  o posix fixes
993	    - remove '-e' from compat mode
994	    - add support for '+' command-line prefix.
995	  o fix for handling '--' on command-line.
996	  o fix include in lst.lib/lstInt.h to simplify '-I's
997	  o we also picked up replacement of MAKE_BOOTSTRAP
998	    with !MAKE_NATIVE which is a noop, but possibly confusing.
999
10002004-04-14  Simon J. Gerraty  <sjg@void.crufty.net>
1001
1002	* Makefile.in (BMAKE_VERSION): bump to 20040414
1003	* Merge with NetBSD make, pick up:
1004	  o allow quoted strings on lhs of conditionals
1005	  o issue warning when extra .else is seen
1006	  o print line numer when errors encountered during parsing from
1007	  string.
1008
10092004-02-20  Simon J. Gerraty  <sjg@void.crufty.net>
1010
1011	* Makefile.in (BMAKE_VERSION):  bump to 20040220
1012	* Merge with NetBSD make, pick up:
1013	  o fix for old :M parsing bug.
1014	  o re-jigged unit-tests
1015
10162004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1017
1018	* Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
1019	so that './bmake -f Makefile test' works.
1020
10212004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1022
1023	* Makefile.in: (BMAKE_VERSION): bump to 20040214
1024	* Merge with NetBSD make, pick up:
1025	  o search upwards for *.mk
1026	  o fix for double free of var substitution buffers
1027	  o use of getopt replaced with custom code, since the usage
1028	  (re-scanning) isn't posix compatible.
1029
10302004-02-12  Simon J. Gerraty  <sjg@void.crufty.net>
1031
1032	* arch.c: don't include ranlib.h on ELF systems
1033	(thanks to Chuck Cranor <chuck@ece.cmu.edu>).
1034
10352004-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1036
1037	* Makefile.in (BMAKE_VERSION): bump to 20040118
1038
1039	* boot-strap (while): export vars we assign to on cmdline
1040	* unit-test/Makefile.in: ternary is .PHONY
1041
10422004-01-08  Simon J. Gerraty  <sjg@void.crufty.net>
1043
1044	* Makefile.in (BMAKE_VERSION): bump version to 20040108
1045	* Merge with NetBSD make, pick up:
1046	  o fix for ternary modifier
1047
10482004-01-06  Simon J. Gerraty  <sjg@void.crufty.net>
1049
1050	* Makefile.in (BMAKE_VERSION): bump version to 20040105
1051	* Merge with NetBSD make, pick up:
1052	  o fix for cond.c to handle compound expressions better
1053	  o variable expansion within sysV style replacements
1054
10552003-12-22  Simon J. Gerraty  <sjg@void.crufty.net>
1056
1057	* Make portable snprintf safer - output to /dev/null first to
1058	check space needed.
1059
1060	* Makefile.in (BMAKE_VERSION): bump version to 20031222
1061	* Merge with NetBSD make, pick up:
1062	  o -dg3 to show input graph when things go wrong.
1063	  o explicitly look for makefiles in objdir if not found in curdir so
1064	    that errors in .depend etc will be reported accurarely.
1065	  o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1066	    instead as it more accurately reflects the expected behavior and
1067	    is more consistently implemented.
1068	  o avoid use of asprintf.
1069
10702003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1071
1072	* util.c: Add asprintf and vasprintf.
1073
1074	* Makefile.in (BMAKE_VERSION): bump version to 20030928
1075	* Merge with NetBSD make, pick up:
1076	:[] modifier - allows picking words from a variable.
1077	:tW modifier - allows treating value as one big word.
1078	W flag for :C and :S - allows treating value as one big word.
1079
10802003-09-12  Simon J. Gerraty  <sjg@void.crufty.net>
1081
1082	* Merge with NetBSD make
1083	pick up -de flag to enable printing failed command.
1084	don't skip 1st two dir entries (normally . and ..) since
1085	coda does not have them.
1086
10872003-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1088
1089	* Makefile.in (BMAKE_VERSION): bump version to 20030909
1090	* Merge with NetBSD make, pick up:
1091	- changes for -V '${VAR}' to print fully expanded value
1092	  cf. -V VAR
1093	- CompatRunCommand now prints the command that failed.
1094	- several files got updated 3 clause Berkeley license.
1095
10962003-08-02  Simon J. Gerraty  <sjg@void.crufty.net>
1097
1098	* boot-strap: Allow setting configure args on command line.
1099
11002003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1101
1102	* configure.in: add --with-defshell to allow sh or ksh
1103	to be selected as default shell.
1104
1105	* Makefile.in: bump version to 20030731
1106
1107	* Merge with NetBSD make
1108	Pick up .SHELL spec for ksh and associate man page changes.
1109	Also compat mode now uses the same shell specs.
1110
11112003-07-29  Simon J. Gerraty  <sjg@void.crufty.net>
1112
1113	* var.c (Var_Parse): ensure delim is initialized.
1114
1115	* unit-tests/Makefile.in: use single quotes to avoid problems from
1116	some shells.
1117
1118	* makefile.boot.in:
1119	Run the unit-tests as part of the bootstrap procedure.
1120
11212003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1122
1123	* unit-tests/Makefile.in: always force complaints from
1124	${TEST_MAKE} to be from 'make'.
1125
1126	* configure.in: add check for 'diff -u'
1127	also fix some old autoconf'isms
1128
1129	* Makefile.in (BMAKE_VERSION): bump version to 20030728.
1130	if using GCC add -Wno-cast-qual to CFLAGS for var.o
1131
1132	* Merge with NetBSD make
1133	Pick up fix for :ts parsing error in some cases.
1134	Pick unit-tests.
1135
11362003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1137
1138	* Makefile.in (BMAKE_VERSION): bump version to 20030723.
1139
1140	* var.c (Var_Parse): fix bug in :ts modifier, after const
1141	correctness fixes, must pass nstr to VarModify.
1142
11432003-07-14  Simon J. Gerraty  <sjg@void.crufty.net>
1144
1145	* Makefile.in: BMAKE_VERSION switch to a date based version.
1146	We'll generally use the date of last import from NetBSD.
1147
1148	* Merge with NetBSD make
1149	Pick up fixes for const-correctness, now passes WARNS=3 on
1150	NetBSD.
1151	Pick up :ts modifier, allows controlling the separator used
1152	between words in variable expansion.
1153
11542003-07-11  Simon J. Gerraty  <sjg@void.crufty.net>
1155
1156	* FILES: include boot-strap and os.sh
1157
1158	* Makefile.in: only set WARNS if we are NetBSD, the effect on
1159	FreeBSD is known to be bad.
1160
1161	* makefile.boot.in (bootstrap): make this the default target.
1162
1163	* Makefile.in: bump version to 3.1.19
1164
1165	* machine.sh: avoid A-Z with tr as it is bound to lose.
1166
11672003-07-10  Simon J. Gerraty  <sjg@void.crufty.net>
1168
1169	* Merge with NetBSD make
1170	Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1171	Plus some doc fixes.
1172
11732003-04-27  Simon J. Gerraty  <sjg@void.crufty.net>
1174
1175	* Merge with NetBSD make
1176	Pick up fix for PR/1523 - don't count a library as built, if there
1177	is no way to build it
1178
1179	* Bump version to 3.1.18
1180
11812003-03-23  Simon J. Gerraty  <sjg@void.crufty.net>
1182
1183	* Merge with NetBSD make
1184	Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1185	appears in src list.
1186
11872003-03-21  Simon J. Gerraty  <sjg@void.crufty.net>
1188
1189	* Merge with NetBSD make (mmm 10th anniversary!)
1190	pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1191	pick up -X which tells us to not export VAR=val via setenv if
1192	we are already doing so via MAKEFLAGS.  This saves valuable env
1193	space on systems like Darwin.
1194	set MAKE_VERSION to 3.1.17
1195
1196	* parse.c: pix up fix for suffix rules
1197
11982003-03-06  Simon J. Gerraty  <sjg@void.crufty.net>
1199
1200	* Merge with NetBSD make.
1201	pick up fix for propagating -B via MAKEFLAGS.
1202	set MAKE_VERSION to 3.1.16
1203
1204	* Apply some patches from pkgsrc-bootstrap/bmake
1205	Originally by Grant Beattie <grant@netbsd.org>
1206	I may have missed some - since they are based on bmake-3.1.12
1207
12082002-12-03  Simon J. Gerraty  <sjg@void.crufty.net>
1209
1210	* makefile.boot.in (bmake): update install targets for those that
1211	use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1212	havoc from gmake -w.  Thanks to Harlan Stenn <hstenn@cisco.com>.
1213
1214	* bmake.cat1: update the pre-formatted man page!
1215
12162002-11-30  Simon J. Gerraty  <sjg@void.crufty.net>
1217
1218	* Merge with NetBSD make.
1219	pick up fix for premature free of pointer used in call
1220	to Dir_InitCur().
1221	set MAKE_VERSION to 3.1.15
1222
12232002-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
1224
1225	* configure.in: determine suitable value for MKSRC.
1226	override using --with-mksrc=PATH.
1227
1228	* machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1229	configs(8) will use 'sun4' as an alias for 'sparc'.
1230
12312002-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
1232
1233	* Merge with NetBSD make.
1234	pick up ${.PATH}
1235	pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1236	set MAKE_VERSION to 3.1.14
1237	add configure checks for killpg and sys/socket.h
1238
12392002-09-16  Simon J. Gerraty  <sjg@void.crufty.net>
1240
1241	* tag bmake-3-1-13
1242
1243	* makefile.boot.in (bmake): use install-mk
1244	Also setup ./mk before trying to invoke bmake.boot incase we
1245	needed install-mk to create a sys.mk for us.
1246
1247	* configure.in: If we need to add -I${srcdir}/missing, make it an
1248	absolute path so that it works for lst.lib too.
1249
1250	* make.h: always include sys/cdefs.h since we provide one if the
1251	host does not.
1252
1253	* Makefile.in (install-mk):
1254	use MKSRC/install-mk which will do the right thing.
1255	use uname -p for ARCH if possible.
1256	since install-mk will setup links bsd.prog.mk -> prog.mk if
1257	needed, just .include bsd.prog.mk
1258
1259	* Merge with NetBSD make (NetBSD-1.6)
1260	Code is ansi-C only now.
1261	Bug in handling of dotLast is fixed.
1262	Can now assign .OBJDIR and make will reset its notions of life.
1263	New modifiers :tu :tl for toUpper and toLower.
1264
1265Tue Oct 16 12:18:42 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1266
1267	* Merge with NetBSD make
1268	pick up fix for .END failure in compat mode.
1269	pick up fix for extra va_end() in ParseVErrorInternal.
1270
1271Thu Oct 11 13:20:06 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1272
1273	* configure.in: for systems that have sys/cdefs.h check if it is
1274	compatible.  If not, include the one under missing, but tell it to
1275	include the native one too - necessary on Linux.
1276
1277	* missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1278	include_next (for gcc) to get the native sys/cdefs.h
1279
1280Tue Aug 21 02:29:34 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1281
1282	* job.c (JobFinish): Fix an earlier merge bug that resulted in
1283	leaking descriptors when using -jN.
1284
1285	* job.c (JobPrintCommand): See if "curdir" exists before
1286	attempting to chdir().  Doing the chdir directly in make (when in
1287	compat mode) fails silently, so let the -jN version do the same.
1288	This can happen when building kernels in an object tree and
1289	playing clever games to reset .CURDIR.
1290
1291	* Merged with NetBSD make
1292	pick up .USEBEFORE
1293
1294Tue Jun 26 23:45:11 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1295
1296	* makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1297
1298Tue Jun 12 16:48:57 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1299
1300	* var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1301	us not to export the iterator variable when using VAR_CMD context.
1302
1303Sun Jun 10 21:55:21 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1304
1305	* job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1306	its the wrong "fix".
1307
1308Sat Jun  9 00:11:24 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1309
1310	* Redesigned export of VAR_CMD's via MAKEFLAGS.
1311	We now simply append the variable names to .MAKEOVERRIDES, and
1312	handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1313	${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1314	Apart from fixing quoting bugs in previous version, this allows us
1315	to export vars to the environment by simply doing:
1316	.MAKEOVERRIDES+= PATH
1317	Merged again with NetBSD make, but the above is the only change.
1318
1319	* configure.in: added
1320	--disable-pwd-override		disable $PWD overriding getcwd()
1321	--disable-check-make-chdir	disable make trying to guess
1322		when it should automatically cd ${.CURDIR}
1323
1324	* Merge with NetBSD make, changes include:
1325	parse.c (ParseDoDependency): Spot that the syntax error is
1326	caused by an unresolved cvs/rcs conflict and say so.
1327	var.c: most of Var* functions now take a ctxt as 1st arg.
1328	now does variable substituion on rhs of sysv style modifiers.
1329
1330	* var.c (Var_Set): exporting of command line variables (VAR_CMD)
1331	is now done here.  We append the name='value' to .MAKEOVERRIDES
1332	rather than directly into MAKEFLAGS as this allows a Makefile to
1333	use .MAKEOVERRIDES= to disable this behaviour.  GNU make uses a
1334	very similar mechanism.  Note that in adding name='value' to
1335	.MAKEOVERRIDES we do the moral equivalent of:
1336	.MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
1337
1338Fri Jun  1 14:08:02 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1339
1340	* make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
1341
1342	* Merged with NetBSD make
1343	make -dx can now be used to run commands via sh -x
1344	better error messages on exec failures.
1345
1346Thu May 31 01:44:54 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1347
1348	* Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
1349	MAKE_VERSION gets updated.  Also don't use ?= for MAKE_VERSION,
1350	MACHINE etc otherwise they propagate from the previous bmake.
1351
1352	* configure.in (machine): allow --with-machine=generic to make
1353	configure use machine.sh to set MACHINE.
1354
1355	* job.c (JobInterrupt): convert to using WAIT_T and friends.
1356
1357	* Makefile.in: mention in bmake.1 that we use autoconf.
1358
1359	* make.1: mention MAKE_PRINT_VAR_ON_ERROR.
1360
1361Wed May 30 23:17:18 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1362
1363	* main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
1364	as that rather defeats the usefulness of ${MAKEFILE}.
1365
1366	* main.c (MainParseArgs): append command line variable assignments
1367	to MAKEFLAGS so that they get propagated to child make's.
1368	Apparently this is required POSIX behaviour?  Its useful anyway.
1369
1370Tue May 29 02:20:07 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1371
1372	* compat.c (CompatRunCommand): don't use perror() since stdio may
1373	cause problems in child of vfork().
1374
1375	* compat.c, main.c: Call PrintOnError() when we are going to bail.
1376	This routine prints out the .curdir where we stopped and will also
1377	display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
1378
1379	* main.c: add ${.newline} to hold a "\n" - sometimes handy in
1380	:@ expansion.
1381
1382	* var.c: VarLoopExpand: ignore addSpace if a \n is present.
1383
1384	* Added RCSid's for the files we've touched.
1385
1386Thu May 24 15:41:37 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1387
1388	* configure.in:	Thanks to some clues from mdb@juniper.net,
1389	added autoconf magic to control setting of MACHINE, MACHINE_ARCH
1390	as well as what ends up in _PATH_DEFSYSPATH.  We now have:
1391
1392  --with-machine=MACHINE  explicitly set MACHINE
1393  --with-force-machine=MACHINE  set FORCE_MACHINE
1394  --with-machine_arch=MACHINE_ARCH  explicitly set MACHINE_ARCH
1395  --with-default-sys-path=PATH:DIR:LIST  use an explicit _PATH_DEFSYSPATH
1396  --with-prefix-sys-path=PATH:DIR:LIST  prefix _PATH_PREFIX_SYSPATH
1397  --with-path-objdirprefix=PATH  override _PATH_OBJDIRPREFIX
1398
1399	If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
1400
1401	* makefile: added a pathetically simple makefile to drive
1402	bootstrapping.  Running configure by hand is more useful.
1403
1404	* Makefile.in: added MAKE_VERSION, and reworked things to be less
1405	dependent on NetBSD bsd.*.mk
1406
1407	* pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
1408	_PATH_OBJDIRPREFIX for those that don't want a default.
1409	construct _PATH_DEFSYSPATH from the info we get from configure.
1410
1411	* main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
1412	if MAKE_VERSION is defined.
1413
1414	* compat.c: when we bail, print out the .CURDIR we were in.
1415
1416Sat May 12 00:34:12 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1417
1418	* Merged with NetBSD make
1419
1420	* var.c: fixed a bug in the handling of the modifier :P
1421	if the node as found but the path was null, we segfault trying to
1422	duplicate it.
1423
1424Mon Mar  5 16:20:33 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1425
1426	* Merged with NetBSD make
1427
1428	* make.c: Make_OODate's test for a library out of date was using
1429	cmtime where it should have used mtime (my bug).
1430
1431	* compat.c: Use perror() to tell us what really went wrong when we
1432	cannot exec a command.
1433
1434Fri Dec 15 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1435
1436	* Merged with NetBSD make
1437
1438Sat Jun 10 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1439
1440	* Merged with NetBSD make
1441
1442Thu Jun  1 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1443
1444	* Merged with NetBSD make
1445
1446Tue May 30 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1447
1448	* Merged with NetBSD make
1449
1450Thu Apr 27 00:07:47 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1451
1452	* util.c: don't provide signal() since we use sigcompat.c
1453
1454	* Makefile.in: added a build target.
1455
1456	* var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
1457	These allow some quite clever magic.
1458
1459	* main.c (main): added support for getenv(MAKESYSPATH).
1460
1461Mon Apr  2 16:25:13 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1462
1463	* Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
1464	This avoids objdir having a different value depending on how a
1465	directory was reached (via command line, or subdir.mk).
1466
1467	* If FORCE_MACHINE is defined, ignore getenv("MACHINE").
1468
1469Mon Apr  2 23:15:31 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1470
1471	* Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
1472	MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
1473	I've been testing this in NetBSD's make for some weeks.
1474
1475	* Turn Makefile into Makefile.in and make it useful.
1476
1477Tue Feb 29 22:08:00 2000 Simon J. Gerraty  <sjg@zen.quick.com.au>
1478
1479	* Imported NetBSD's -current make(1) and resolve conflicts.
1480
1481	* Applied autoconf patches from bmake v2
1482
1483	* Imported clean code base from NetBSD-1.0
1484