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