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