mandoc: update to 1.14.1
[unleashed.git] / bin / bmake / ChangeLog
blob7413bc76acd804dc83a97dfa7bf07ab27c4bc7ab
1 2017-02-01  Simon J. Gerraty  <sjg@bad.crufty.net>
3         * Makefile (_MAKE_VERSION): 20170201
4           Merge with NetBSD make, pick up
5           o var.c: allow :_=var and avoid use of special context.
7 2017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>
9         * Makefile (_MAKE_VERSION): 20170130
10           Merge with NetBSD make, pick up
11           o var.c: add :range and :_
12           o main.c: partially initialize Dir_* before MainParseArgs()
13             can be called.
14             If -V, skip Main_ExportMAKEFLAGS()
16 2017-01-14  Simon J. Gerraty  <sjg@bad.crufty.net>
18         * Makefile (_MAKE_VERSION): 20170114
19           Merge with NetBSD make, pick up
20           o var.c: allow specifying the utc value used by :{gm,local}time
22 2016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
24         * Makefile (_MAKE_VERSION): 20161212
25           Merge with NetBSD make, pick up
26           o main.c: look for obj.${MACHINE}-${MACHINE_ARCH} too.
28 2016-12-09  Simon J. Gerraty  <sjg@bad.crufty.net>
30         * Makefile (_MAKE_VERSION): 20161209
31           Merge with NetBSD make, pick up
32           o main.c: cleanup setting of .OBJDIR
33           o parse.c: avoid coredump from (var)=val
35 2016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
37         * Makefile (_MAKE_VERSION): 20161126
38           Merge with NetBSD make, pick up
39           o make.c: Make_OODate: report src node name if path not set
41 2016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
43         * Makefile (_MAKE_VERSION): 20160926
44           Merge with NetBSD make, pick up
45           o support for .DELETE_ON_ERROR: (remove targets that fail)
46         
47 2016-09-26  Simon J. Gerraty  <sjg@bad.crufty.net>
49         * Makefile MAN: tweak .Dt to match ${PROG}
51 2016-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
53         * Makefile (_MAKE_VERSION): 20160818
54           its a neater number; pick up whitespace fixes to man page.
56 2016-08-17  Simon J. Gerraty  <sjg@bad.crufty.net>
58         * Makefile (_MAKE_VERSION): 20160817
59           Merge with NetBSD make, pick up
60           o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore()
61             so we can call it before adding entries to missingFiles.
62             Thus we do not track files we have been told to ignore.
64 2016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>
66         * Makefile (_MAKE_VERSION): 20160815
67           Merge with NetBSD make, pick up
68           o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to
69             pathnames, and skip if the expansion is empty.
70             Useful for dirdeps.mk when checking DIRDEPS_CACHE.
72 2016-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
74         * Makefile (_MAKE_VERSION): 20160812
75           Merge with NetBSD make, pick up
76           o meta.c: remove all missingFiles entries that match a deleted
77             dir.
78           o main.c: set .ERROR_CMD if possible.
79           
80 2016-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
82         * Makefile (_MAKE_VERSION): 20160606
83           Merge with NetBSD make, pick up
84           o dir.c: extend mtimes cache to others via cached_stat()
86 2016-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
88         * Makefile (_MAKE_VERSION): 20160604
89           Merge with NetBSD make, pick up
90           o meta.c: missing filemon data is only relevant if we read a
91             meta file.
92             Also do not return oodate for a missing metafile if gn->path
93             points to .CURDIR
94         
95 2016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
97         * Makefile (_MAKE_VERSION): 20160602
98           Merge with NetBSD make, pick up
99           o cached_realpath(): avoid hitting filesystem more than necessary.
100           o meta.c: refactor need_meta decision, add knobs for 
101             missing meta file and filemon data wrt out-of-datedness.
103 2016-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
105         * Makefile (_MAKE_VERSION): 20160528
107         * boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION 
109 2016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
111         * Makefile (_MAKE_VERSION): 20160512
112           Merge with NetBSD make, pick up
113           o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS
114             this is useful for gcov builds.
115           o propagate errors from filemon(4).
116         
117 2016-05-09  Simon J. Gerraty  <sjg@bad.crufty.net>
119         * Makefile (_MAKE_VERSION): 20160509
120           Merge with NetBSD make, pick up
121           o remove use of non-standard types u_int etc.
122           o meta.c: apply realpath() before matching against metaIgnorePaths
124 2016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>
126         * Makefile (_MAKE_VERSION): 20160404
127           Merge with NetBSD make, pick up
128           o allow makefile to set .MAKE.JOBS
130         * Makefile (PROG_NAME): use ${_MAKE_VERSION}
132 2016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
134         * Makefile (_MAKE_VERSION): 20160315
135           Merge with NetBSD make, pick up
136           o fix handling of archive members
138 2016-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
140         * Makefile (_MAKE_VERSION): rename variable to avoid interference
141           with checks for ${MAKE_VERSION}
143 2016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
145         * Makefile (MAKE_VERSION): 20160310
146           Merge with NetBSD make, pick up
147           o meta.c: treat missing Read file same as Write, incase we Delete it.
149 2016-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
151         * Makefile (MAKE_VERSION): 20160307
152           Merge with NetBSD make, pick up
153           o var.c: fix :ts\nnn to be octal by default.
154           o meta.c: meta_finish() to cleanup memory.
156 2016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
158         * Makefile (MAKE_VERSION): 20160226
159           Merge with NetBSD make, pick up
160           o meta.c: allow meta file for makeDepend if makefiles want it.
162 2016-02-19  Simon J. Gerraty  <sjg@bad.crufty.net>
164         * var.c: default .MAKE.SAVE_DOLLARS to FALSE
165           for backwards compatability.
167         * Makefile (MAKE_VERSION): 20160220
168           Merge with NetBSD make, pick up
169           o var.c: add knob to control handling of '$$' in :=
171 2016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
173         * Makefile (MAKE_VERSION): 20160218
174           Merge with NetBSD make, pick up
175           o var.c: add .export-literal allows us to fix sys.clean-env.mk
176             post the changes to Var_Subst.
177             Var_Subst now takes flags, and does not consume '$$' in :=
179 2016-02-17  Simon J. Gerraty  <sjg@bad.crufty.net>
181         * Makefile (MAKE_VERSION): 20160217
182           Merge with NetBSD make, pick up
183           o var.c: preserve '$$' in :=
184           o parse.c: add .dinclude for handling included 
185             makefile like .depend
187 2015-12-20  Simon J. Gerraty  <sjg@bad.crufty.net>
189         * Makefile (MAKE_VERSION): 20151220
190           Merge with NetBSD make, pick up
191           o suff.c: re-initialize suffNull when clearing suffixes.
193 2015-12-01  Simon J. Gerraty  <sjg@bad.crufty.net>
195         * Makefile (MAKE_VERSION): 20151201
196           Merge with NetBSD make, pick up
197           o cond.c: CondCvtArg: avoid access beyond end of empty buffer.
198           o meta.c: meta_oodate: use lstat(2) for checking link target
199             in case it is a symlink.
200           o var.c: avoid calling brk_string and Var_Export1 with empty
201             strings.
202         
203 2015-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
205         * Makefile (MAKE_VERSION): 20151126
206           Merge with NetBSD make, pick up
207           o parse.c: ParseTrackInput don't access beyond 
208             end of old value.
209         
210 2015-10-22  Simon J. Gerraty  <sjg@bad.crufty.net>
212         * Makefile (MAKE_VERSION): 20151022
214         * Add support for BSD/OS which lacks inttypes.h
215           and really needs sys/param.h for sys/sysctl.h
216           also 'type' is not a shell builtin.
218         * var.c: eliminate uint32_t and need for inttypes.h
219         
220         * main.c: PrintOnError flush stdout before run .ERROR
222         * parse.c: cope with _SC_PAGESIZE not being defined.
224         
225 2015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
227         * Makefile (MAKE_VERSION): 20151020
228           Merge with NetBSD make, pick up
229           o var.c: fix uninitialized var 
231 2015-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
233         * var.c: the conditional expressions used with ':?' can be
234         expensive, if already discarding do not evaluate or expand
235         anything. 
237 2015-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
239         * Makefile (MAKE_VERSION): 20151010
240           Merge with NetBSD make, pick up
241           o Add Boolean wantit flag to Var_Subst and Var_Parse
242             when FALSE we know we are discarding the result and can
243             skip operations like Cmd_Exec.
245 2015-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
247         * Makefile (MAKE_VERSION): 20151009
248           Merge with NetBSD make, pick up
249           o var.c: don't check for NULL before free()
250           o meta.c: meta_oodate, do not hard code ignore of makeDependfile
252 2015-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
254         * Makefile (MAKE_VERSION): 20150910
255           Merge with NetBSD make, pick up
256           o main.c: with -w print Enter/Leaving messages for objdir too
257             if necessary.
258           o centralize shell metachar handling
259         
260         * FILES: add metachar.[ch]
262 2015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
264         * Makefile (MAKE_VERSION): 20150606
265           Merge with NetBSD make, pick up
266           o make.1: document .OBJDIR target
268 2015-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
270         * Makefile (MAKE_VERSION): 20150505
271           Merge with NetBSD make, pick up
272           o cond.c: be strict about lhs of comparison when evaluating .if
273             but less so when called from variable expansion.
274           o unit-tests/cond2.mk: test various error conditions
276 2015-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
278         * machine.sh (MACHINE): Add Bitrig 
279           patch from joerg@netbsd.org
281 2015-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
283         * Makefile (MAKE_VERSION): 20150418
284           Merge with NetBSD make, pick up
285           o job.c: use memmove() rather than memcpy()
287         * unit-tests/varshell.mk: SunOS cannot handle the TERMINATED_BY_SIGNAL
288           case, so skip it.
290 2015-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
292         * Makefile (MAKE_VERSION): 20150411
293           bump version - only mk/ changes.
294         
295 2015-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
297         * Makefile (MAKE_VERSION): 20150410
298           Merge with NetBSD make, pick up
299           o document different handling of '-' in jobs mode vs compat
300           o fix jobs mode so that '-' only applies to whole job
301             when shell lacks hasErrCtl
302           o meta.c: use separate vars to track lcwd and latestdir (read)
303             per process
304         
305 2015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
307         * Makefile (MAKE_VERSION): 20150401
308           Merge with NetBSD make, pick up
309           o meta.c: close meta file in child
310         
311         * Makefile: use BINDIR.bmake if set.
312           Same for MANDIR and SHAREDIR
313           Handy for testing release candidates
314           in various environments.
315         
316 2015-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
318         * move initialization of savederr to block where it is used
319           to avoid spurious warning from gcc5
321 2014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
323         * Makefile (MAKE_VERSION): 20141111
324           just a cooler number
326 2014-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
328         * Makefile (MAKE_VERSION): 20141105
329           Merge with NetBSD make, pick up
330           o revert major overhaul of suffix handling
331             and POSIX compliance - too much breakage
332             and impossible to make backwards compatible.
333           o we still have the new unit test structure which is ok.
334           o meta.c ensure "-- filemon" is at start of line.
336 2014-09-17  Simon J. Gerraty  <sjg@bad.crufty.net>
338         * configure.in: test that result of getconf PATH_MAX is numeric
339           and discard if not.  Apparently needed for Hurd.
341 2014-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
343         * Makefile (MAKE_VERSION): 20140830
344           Merge with NetBSD make, pick up
345           o major overhaul of suffix handling
346           o improved POSIX compliance
347           o overhauled unit-tests
349 2014-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
351         * Makefile (MAKE_VERSION): 20140620
352           Merge with NetBSD make, pick up
353           o var.c return varNoError rather than var_Error for ::= modifiers.
355 2014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
357         * Makefile (MAKE_VERSION): 20140522
358           Merge with NetBSD make, pick up
359           o var.c detect some parse errors.
361 2014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
363         * Fix spelling errors - patch from Pedro Giffuni
365 2014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
367         * Makefile (MAKE_VERSION): 20140214
368           Merge with NetBSD make, pick up
369           o .INCLUDEFROM*
370           o use Var_Value to get MAKEOBJDIR[PREFIX]
371           o reduced realloc'ign in brk_string.
372         * configure.in: add a check for compiler supporting __func__
374 2014-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
376         * boot-strap: ignore mksrc=none
378 2014-01-02  Simon J. Gerraty  <sjg@bad.crufty.net>
380         * Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk
382 2014-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
383         
384         * Makefile (MAKE_VERSION): 20140101
385         * configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024)
386         * Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max
387         * make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for
388           Hurd) 
389         * configure.in: Add AC_PREREQ and check for
390           sysctl; patch from Andrew Shadura andrewsh at debian.org
392 2013-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
394         * Makefile (MAKE_VERSION): 20131010
395         * lose the const from arg to systcl to avoid problems on older BSDs.
397 2013-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
399         * Makefile (MAKE_VERSION): 20131001
400           Merge with NetBSD make, pick up
401           o main.c: for NATIVE build sysctl to get MACHINE_ARCH from
402             hw.machine_arch if necessary.
403           o meta.c: meta_oodate - need to look at src of Link and target
404             of Move as well.
405         * main.c: check that CTL_HW and HW_MACHINE_ARCH exist.
406           provide __arraycount() if needed.
408 2013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
410         * Makefile (MAKE_VERSION): 20130904
411           Merge with NetBSD make, pick up
412           o Add VAR_INTERNAL context, so that internal setting of
413             MAKEFILE does not override value set by makefiles.
415 2013-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
417         * Makefile (MAKE_VERSION): 20130902
418           Merge with NetBSD make, pick up
419           o CompatRunCommand: only apply shellErrFlag when errCheck is true
421 2013-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
423         * Makefile (MAKE_VERSION): 20130828
424           Merge with NetBSD make, pick up
425           o Fix VAR :sh = syntax from Will Andrews at freebsd.org
426           o Call Job_SetPrefix() from Job_Init() so makefiles have
427             opportunity to set .MAKE.JOB.PREFIX
429 2013-07-30  Simon J. Gerraty  <sjg@bad.crufty.net>
431         * Makefile (MAKE_VERSION): 20130730
432           Merge with NetBSD make, pick up
433           o Allow suppression of --- job -- tokens by setting
434             .MAKE.JOB.PREFIX empty.
436 2013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
438         * Makefile (MAKE_VERSION): 20130716
439           Merge with NetBSD make, pick up
440           o number of gmake compatibility tweaks
441             -w for gmake style entering/leaving messages
442             if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc.
443             handle MAKEFLAGS containing only letters.
444           o when overriding a GLOBAL variable on the command line,
445             delete it from GLOBAL context so -V doesn't show the wrong
446             value.
447         
448 2013-07-06  Simon J. Gerraty  <sjg@bad.crufty.net>
450         * configure.in: We don't need MAKE_LEVEL_SAFE anymore.
452         * Makefile (MAKE_VERSION): 20130706
453           Merge with NetBSD make, pick up
454           o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is
455             true so that CompatRunCommand() can use it, to ensure
456             consistent behavior with jobs mode.
457           o use MAKE_LEVEL_ENV to define the variable to propagate
458             .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake).
459           o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of
460             paths to ignore.
462 2013-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
464         * Makefile (MAKE_VERSION): 20130604
465           Merge with NetBSD make, pick up
466           o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's
467             to avoid leaking descriptors.
469 2013-05-28  Simon J. Gerraty  <sjg@bad.crufty.net>
471         * Makefile (MAKE_VERSION): 20130528
472           Merge with NetBSD make, pick up
473           o var.c: cleanup some left-overs in VarHash()
475 2013-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
477         * Makefile (MAKE_VERSION): 20130520
478           generate manifest from component FILES rather than have to
479           update FILES when mk/FILES changes.
481 2013-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
483         * Makefile (MAKE_VERSION): 20130518
484           Merge with NetBSD make, pick up
485           o suff.c: don't skip all processsing for .PHONY targets
486             else wildcard srcs do not get expanded.
487           o var.c: expand name of variable to delete if necessary.
489 2013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
491         * Makefile (MAKE_VERSION): 20130330
492           Merge with NetBSD make, pick up
493           o meta.c: refine the handling of .OODATE in commands.
494             Rather than suppress command comparison for the entire script
495             as though .NOMETA_CMP had been used, only suppress it for the
496             one command line.
497             This allows something like ${.OODATE:M.NOMETA_CMP} to be used to 
498             suppress comparison of a command without otherwise affecting it.
499           o make.1: document that
501 2013-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
503         * Makefile (MAKE_VERSION): 20130321
504           yes, not quite right but its a cooler number.
505           Merge with NetBSD make, pick up
506           o parse.c: fix ParseGmakeExport to be portable 
507             and add a unit-test.
508         * meta.c: call meta_init() before makefiles are read and if built
509           with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON
510           this let's makefiles test for support.
511           Call meta_mode_init() to process .MAKE.MODE.
513 2013-03-13  Simon J. Gerraty  <sjg@bad.crufty.net>
515         * Makefile (MAKE_VERSION): 20130305
516           Merge with NetBSD make, pick up
517           o run .STALE: target when a dependency from .depend is missing.
518           o job.c: add Job_RunTarget() for the above and .BEGIN
520 2013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
522         * Makefile (MAKE_VERSION): 20130303
523           Merge with NetBSD make, pick up
524           o main.c: set .MAKE.OS to utsname.sysname
525           o job.c: more checks for read and poll errors
526           o var.c: lose VarChangeCase() saves 4% time
528 2013-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
530         * boot-strap: remove MAKEOBJDIRPREFIX from environment since we
531           want to use MAKEOBJDIR
533 2013-01-27  Simon J. Gerraty  <sjg@bad.crufty.net>
535         * Merge with NetBSD make, pick up
536           o make.1: more info on how shell commands are handled.
537           o job.c,main.c: detect write errors to job pipes.
539 2013-01-25  Simon J. Gerraty  <sjg@bad.crufty.net>
541         * Makefile (MAKE_VERSION): 20130123
542           Merge with NetBSD make, pick up
543           o meta.c: if script uses .OODATE and meta_oodate() decides
544             rebuild is needed, .OODATE will be empty - set it to .ALLSRC.
545           o var.c: in debug output indicate which variabale modifiers
546             apply to.
547           o remove Check_Cwd logic the makefiles have been fixed.
548         
549 2012-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
551         * makefile.in: add a simple makefile for folk who insist on
552           ./configure; make; make install
553           it just runs boot-strap
554         * include mk/* to accommodate the above
555         * boot-strap:  re-work to accommodate the above
556           mksrc defaults to $Mydir/mk
557           allow op={configure,build,install,clean,all}
558           add options to facilitate install
559         * Makefile.config.in: just the bits set by configure
560         * Makefile: bump version to 20121212
561           abandon Makefile.in (NetBSD Makefile)
562           leverage mk/* instead
563         * configure.in: ensure srcdir is absolute
565 2012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
567         * Makefile.in (MAKE_VERSION): 20121111
568           fix generation of bmake.cat1
570 2012-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
572         * Makefile.in (MAKE_VERSION): 20121109
573           Merge with NetBSD make, pick up
574           o make.c: MakeBuildChild: return 0 so search continues if a
575             .ORDER dependency is detected.
576           o unit-tests/order: test the above
577         
578 2012-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
580         * Makefile.in (MAKE_VERSION): 20121102
581           Merge with NetBSD make, pick up
582           o cond.c: allow cond_state[] to grow.
583             In meta mode with a very large tree, we can hit the limit
584             while processing dirdeps.
585         
586 2012-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
588         * Makefile.in: we need to use ${srcdir} not ${.CURDIR}
590 2012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
592         * Makefile.in (MAKE_VERSION): 20121010
593           o protect syntax that only bmake parses correctly.
594           o remove auto setting of FORCE_MACHINE, use configure's
595             --with-force-machine=whatever if that is desired.
596         
597 2012-10-08  Simon J. Gerraty  <sjg@bad.crufty.net>
599         * Makefile.in: do not lose history from make.1 when generating bmake.1
601 2012-10-07  Simon J. Gerraty  <sjg@bad.crufty.net>
603         * Makefile.in (MAKE_VERSION): 20121007
604           Merge with NetBSD make, pick up
605           o compat.c: ignore empty commands - same as jobs mode.
606           o make.1: document meta chars that cause use of shell
608 2012-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
610         * Makefile.in (MAKE_VERSION): bump version to 20120911
611         * bsd.after-import.mk: include Makefile.inc early and allow it to
612           override PROG
614 2012-08-31  Simon J. Gerraty  <sjg@bad.crufty.net>
616         * Makefile.in (MAKE_VERSION): bump version to 20120831
617           Merge with NetBSD make, pick up
618           o cast sizeof() to int for comparison
619           o minor make.1 tweak
621 2012-08-30  Simon J. Gerraty  <sjg@bad.crufty.net>
623         * Makefile.in (MAKE_VERSION): bump version to 20120830
624           Merge with NetBSD make, pick up
625           o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
626           o debug flag -dV causes -V to show raw value regardless.
627         
628 2012-07-05  Simon J. Gerraty  <sjg@bad.crufty.net>
630         * bsd.after-import.mk (after-import): ensure unit-tests/Makefile
631           gets SRCTOP set.
633 2012-07-04  Simon J. Gerraty  <sjg@bad.crufty.net>
635         * Makefile.in (MAKE_VERSION): bump version to 20120704
636           Merge with NetBSD make, pick up
637           o Job_ParseShell should call Shell_Init if it has been
638             previously called.
639         * Makefile.in: set USE_META based on configure result.
640           also .PARSEDIR is safer indicator of bmake.
642 2012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
644         * Makefile.in: bump version to 20120626
645           ensure CPPFLAGS is in CFLAGS
646         * meta.c: avoid nested externs
647         * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
648         
649 2012-06-20  Simon J. Gerraty  <sjg@bad.crufty.net>
651         * Makefile.in (MAKE_VERSION): bump version to 20120620
652           Merge with NetBSD make, pick up
653           o make_malloc.c: avoid including make_malloc.h again
655         * Makefile.in: avoid bmake only syntax or protect with
656           .if defined(.MAKE.LEVEL)
657         * bsd.after-import.mk: replace .-include with .sinclude
658           ensure? SRCTOP gets a value
659         * configure.in: look for filemon.h in /usr/include/dev/filemon first.
661 2012-06-19  Simon J. Gerraty  <sjg@bad.crufty.net>
663         * Makefile.in (MAKE_VERSION): bump version to 20120612
664           Merge with NetBSD make, pick up
665           o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
666             for greater portability.
667           o unit-tests/forloop: check that .for works as expected wrt
668             number of times and with "quoted strings".
669         
670 2012-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
672         * Makefile.in (MAKE_VERSION): bump version to 20120606
673           Merge with NetBSD make, pick up
674           o compat.c: use kill(2) rather than raise(3).
675         * configure.in: look for sys/dev/filemon
676         * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
677           and pass BOOTSTRAP_XTRAS to boot-strap.
679 2012-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
681         * Makefile.in (MAKE_VERSION): bump version to 20120604
682           Merge with NetBSD make, pick up
683           o util.c and var.c share same var for tracking if environ
684             has been reallocated.
685           o util.c provide getenv with setenv.
686         * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
687           when the shell actively strips .MAKE.* from the environment.
688           We still refer to the variable always as .MAKE.LEVEL
689         * util.c fix bug in findenv() was finding prefix of name.
690         * compat.c: re-raising SIGINT etc after running .INTERRUPT
691           results in more reliable termination of all activity on many
692           platforms.
694 2012-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
696         * Makefile.in (MAKE_VERSION): bump version to 20120602
697           Merge with NetBSD make, pick up
698           o for.c: handle quoted items in .for list
700 2012-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
702         * Makefile.in (MAKE_VERSION): bump version to 20120530
703           Merge with NetBSD make, pick up
704           o compat.c: ignore empty command.
706 2012-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
708         * Makefile.in (MAKE_VERSION): bump version to 20120524
709         * FILES: add bsd.after-import.mk:
710           A simple means of integrating bmake into a BSD build system.
712 2012-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
714         * Makefile.in (MAKE_VERSION): bump version to 20120520
715           Merge with NetBSD make, pick up
716           o increased limit for nested conditionals.
717         
718 2012-05-18  Simon J. Gerraty  <sjg@bad.crufty.net>
720         * Makefile.in (MAKE_VERSION): bump version to 20120518
721           Merge with NetBSD make, pick up
722           o use _exit(2) in signal hanlder
723           o Don't use the [dir] cache when building nodes that might have
724             changed since the last exec.
725           o Avoid nested extern declaration warnings.
727 2012-04-27  Simon J. Gerraty  <sjg@bad.crufty.net>
729         * meta.c (fgetLine): avoid %z - not portable.
730         * parse.c: Since we moved include of sys/mman.h
731           and def's of MAP_COPY etc. we got dups from a merge.
733 2012-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
735         * Makefile.in (MAKE_VERSION): bump version to 20120420
736           Merge with NetBSD make, pick up
737           o restore duplicate supression in .MAKE.MAKEFILES
738             runtime saving can be significant.
739           o Var_Subst() uses Buf_DestroyCompact() to reduce memory
740             consumption up to 20%. 
742 2012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
744         * Makefile.in (MAKE_VERSION): bump version to 20120420
745           Merge with NetBSD make, pick up
746           o remove duplicate supression in .MAKE.MAKEFILES
747           o improved dir cache behavior
748           o gmake'ish export command
749         
750 2012-03-25  Simon J. Gerraty  <sjg@bad.crufty.net>
752         * Makefile.in (MAKE_VERSION): bump version to 20120325
753           Merge with NetBSD make, pick up
754           o fix parsing of :[#] in conditionals.
756 2012-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
758         * Makefile.in: replace use of .Nx in bmake.1 with NetBSD
759           since some systems cannot cope with .Nx <version>
761 2011-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
763         * Makefile.in (MAKE_VERSION): bump version to 20111111
764           Merge with NetBSD make, pick up
765           o debug output for .PARSEDIR and .PARSEFILE
767 2011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
769         * Makefile.in (MAKE_VERSION):  bump version to 20111010
771 2011-10-09  Simon J. Gerraty  <sjg@bad.crufty.net>
773         * boot-strap: check for an expected file in the dirs we look for.
774         * make-bootstrap.sh: pass on LDSTATIC
776 2011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
778         * Makefile.in (MAKE_VERSION): bump version to 20111001
779           Merge with NetBSD make, pick up
780           o ensure .PREFIX is set for .PHONY
781             and .TARGET set for .PHONY run via .END
782           o __dead used consistently
783         
784 2011-09-10  Simon J. Gerraty  <sjg@bad.crufty.net>
786         * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
788 2011-09-05  Simon J. Gerraty  <sjg@bad.crufty.net>
790         * Makefile.in (MAKE_VERSION): bump version to 20110905
791           Merge with NetBSD make, pick up
792           o meta_oodate: ignore makeDependfile
793         
794 2011-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
796         * Makefile.in (MAKE_VERSION): bump version to 20110828
797           Merge with NetBSD make, pick up
798           o silent=yes in .MAKE.MODE causes meta mode to mark targets 
799             as SILENT if a .meta file is created
801 2011-08-18  Simon J. Gerraty  <sjg@bad.crufty.net>
803         * Makefile.in (MAKE_VERSION): bump version to 20110818
804           Merge with NetBSD make, pick up
805           o in meta mode, if target flagged .META a missing .meta file
806             means target is out-of-date
807           o fixes for gcc 4.5 warnings
808           o simplify job printing code
809         
810 2011-08-09  Simon J. Gerraty  <sjg@bad.crufty.net>
812         * Makefile.in (MAKE_VERSION): bump version to 20110808
813           Merge with NetBSD make, pick up
814           o do not touch OP_SPECIAL targets when doing make -t
815         
816 2011-06-22  Simon J. Gerraty  <sjg@bad.crufty.net>
818         * Makefile.in (MAKE_VERSION): bump version to 20110622
819           Merge with NetBSD make, pick up
820           o meta_oodate detect corrupted .meta file and declare oodate.
821         * configure.in: add check for setsid
822         
823 2011-06-07  Simon J. Gerraty  <sjg@bad.crufty.net>
825         * Merge with NetBSD make, pick up
826           o unit-tests/modts now works on MirBSD
828 2011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
830         * Makefile.in (MAKE_VERSION): bump version to 20110606
831           Merge with NetBSD make, pick up
832           o ApplyModifiers: when we parse a variable which is not
833             the entire modifier string, or not followed by ':', do not
834             consider it as containing modifiers.
835           o loadfile: ensure newline at end of mapped file.
837 2011-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
839         * Makefile.in (MAKE_VERSION): bump version to 20110505
840           Merge with NetBSD make, pick up
841           o .MAKE.META.BAILIWICK - list of prefixes which define the scope
842             of make's control.  In meta mode, any generated file within
843             said bailiwick, which  is found to be missing, causes current
844             target to be out-of-date. 
845         
846 2011-04-11  Simon J. Gerraty  <sjg@bad.crufty.net>
848         * Makefile.in (MAKE_VERSION): bump version to 20110411
849           Merge with NetBSD make, pick up
850           o when long modifiers fail to match, check sysV style.
851             - add a test case
852         
853 2011-04-10  Simon J. Gerraty  <sjg@bad.crufty.net>
855         * Makefile.in (MAKE_VERSION): bump version to 20110410
856           Merge with NetBSD make, pick up
857           o :hash - cheap 32bit hash of value
858           o :localtime, :gmtime - use value as format string for strftime.
859         
860 2011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
862         * Makefile.in (MAKE_VERSION): bump version to 20110330
863           mostly because its a cooler version.
864           Merge with NetBSD make, pick up
865           o NetBSD tags for meta.[ch]
866           o job.c call meta_job_finish() after meta_job_error().
867           o meta_job_error() should call meta_job_finish() to ensure
868             .meta file is closed, and safe to copy - if .ERROR target wants.
869            meta_job_finish() is safe to call repeatedly.
870         
871 2011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
873         * unit-tests/modts: use printf if it is a builtin, 
874           to save us from MirBSD
876         * Makefile.in (MAKE_VERSION): bump version to 20110329
877           Merge with NetBSD make, pick up
878           o fix for use after free() in CondDoExists().
879           o meta_oodate() report extra commands and return earlier.
880         
881 2011-03-27  Simon J. Gerraty  <sjg@bad.crufty.net>
883         * Makefile.in (MAKE_VERSION): bump version to 20110327
884           Merge with NetBSD make, pick up
885           o meta.c, if .MAKE.MODE contains curdirOk=yes
886             allow creating .meta files in .CURDIR
887         * boot-strap (TOOL_DIFF): aparently at least on linux distro
888           formats the output of 'type' differently - so eat any "()"
890 2011-03-06  Simon J. Gerraty  <sjg@bad.crufty.net>
892         * Makefile.in (MAKE_VERSION): bump version to 20110306
893           Merge with NetBSD make, pick up
894           o meta.c, only do getcwd() once
895         
896 2011-03-05  Simon J. Gerraty  <sjg@bad.crufty.net>
898         * Makefile.in (MAKE_VERSION): bump version to 20110305
899           Merge with NetBSD make, pick up
900           o correct sysV substitution handling of empty lhs and variable
901           o correct exists() check for dir with trailing /
902           o correct handling of modifiers for non-existant variables
903             during evaluation of conditionals.
904           o ensure MAP_FILE is defined.
905           o meta.c use curdir[] now exported by main.c
906         
907 2011-02-25  Simon J. Gerraty  <sjg@bad.crufty.net>
909         * Makefile.in (MAKE_VERSION): bump version to 20110225
910           Merge with NetBSD make, pick up
911           o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
912             makefiles have been read.
913           o fix example of :? modifier in man page.
914         
915 2011-02-13  Simon J. Gerraty  <sjg@bad.crufty.net>
917         * Makefile.in (MAKE_VERSION): bump version to 20110214
918           Merge with NetBSD make, pick up
919           o meta.c handle realpath() failing when generating meta file
920             name.
922         * sigcompat.c: convert to ansi so we can use higher warning levels.
925 2011-02-07  Simon J. Gerraty  <sjg@bad.crufty.net>
927         * Makefile.in (MAKE_VERSION): bump version to 20110207
928           Merge with NetBSD make, pick up
929           o fix for bug in meta mode.
930         
931 2011-01-03  Simon J. Gerraty  <sjg@bad.crufty.net>
933         * parse.c: SunOS 5.8 at least does not have MAP_FILE
935 2011-01-01  Simon J. Gerraty  <sjg@bad.crufty.net>
937         * Makefile.in (MAKE_VERSION): bump version to 20110101
938           Merge with NetBSD make, pick up
939           o use mmap(2) if available, for reading makefiles
941 2010-12-15  Simon J. Gerraty  <sjg@bad.crufty.net>
943         * Makefile.in (MAKE_VERSION): bump version to 20101215
944           Merge with NetBSD make, pick up
945           o ensure meta_job_error() does not report a previous .meta file
946             as being culprit.
948 2010-12-10  Simon J. Gerraty  <sjg@bad.crufty.net>
950         * Makefile.in (MAKE_VERSION): bump version to 20101210
951           Merge with NetBSD make, pick up
952           o meta_oodate: track cwd per process, and only consider target
953             out-of-date if missing file is outside make's CWD.
954             Ignore files in /tmp/ etc.
955           o to ensure unit-tests results match, need to control LC_ALL
956             as well as LANG.
957           o fix for parsing bug in var.c
959 2010-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
961         * Makefile.in (MAKE_VERSION): bump version to 20101126
962           Merge with NetBSD make, pick up
963           o if stale dependency is an IMPSRC, search via .PATH
964           o meta_oodate: if a referenced file is missing, target is
965             out-of-date.
966           o meta_oodate: if a target uses .OODATE in its commands,
967             it (.OODATE) needs to be recomputed.
968           o keep a pointer to youngest child node, rather than just its
969             mtime.
970         
971 2010-11-02  Simon J. Gerraty  <sjg@bad.crufty.net>
973         * Makefile.in (MAKE_VERSION): bump version to 20101101
975 2010-10-16  Simon J. Gerraty  <sjg@bad.crufty.net>
977         * machine.sh: like os.sh, 
978         allow for uname -p producing useless drivel
980 2010-09-13  Simon J. Gerraty  <sjg@bad.crufty.net>
982         * boot-strap: document configure knobs for meta and filemon.
984         * Makefile.in (MAKE_VERSION): bump version to 20100911
985           Merge with NetBSD make, pick up
986           o meta.c - meta mode
988         * make-bootstrap.sh.in: handle meta.c
989         * configure.in: add knobs for use_meta and filemon_h
990           also, look for dirname, str[e]sep and strlcpy
991         * util.c: add simple err[x] and warn[x]
993 2010-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
995         * boot-strap (TOOL_DIFF): set this to ensure tests use
996           the same version of diff that configure tested
998         * Makefile.in (MAKE_VERSION): bump version to 20100808
999           Merge with NetBSD make, pick up
1000           o in jobs mode, when we discover we cannot make something,
1001             call PrintOnError before exit.
1002         
1003 2010-08-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1005         * Makefile.in (MAKE_VERSION): bump version to 20100806
1006           Merge with NetBSD make, pick up
1007           o formatting fixes for ignored errors
1008           o ensure jobs are cleaned up regardless of where wait() was called.
1010 2010-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1012         * Makefile.in (MAKE_VERSION): bump version to 20100618
1013         * os.sh (MACHINE_ARCH): watch out for drivel from uname -p
1015 2010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1017         * Makefile.in (MAKE_VERSION): bump version to 20100616
1018           Merge with NetBSD make, pick up
1019           o man page update
1020           o call PrintOnError from JobFinish when we detect an error we
1021             are not ignoring. 
1022         
1023 2010-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1025         * Makefile.in (MAKE_VERSION): bump version to 20100606
1026           Merge with NetBSD make, pick up
1027           o man page update
1029 2010-06-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1031         * Makefile.in (MAKE_VERSION): bump version to 20100605
1032           Merge with NetBSD make, pick up
1033           o use bmake_signal() which is a wrapper around sigaction() 
1034             in place of signal()
1035           o add .export-env to allow exporting variables to environment
1036             without tracking (so no re-export when the internal value is
1037             changed).
1038         
1039 2010-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1041         * Makefile.in (MAKE_VERSION): bump version to 20100524
1042           Merge with NetBSD make, pick up
1043           o fix for .info et al being greedy.
1045 2010-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1047         * Makefile.in (MAKE_VERSION): bump version to 20100520
1048           Merge with NetBSD make, pick up
1049           o back to using realpath on argv[0] 
1050             but only if contains '/' and does not start with '/'.
1052 2010-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1054         * boot-strap: use absolute path for bmake when running tests.
1056         * Makefile.in (MAKE_VERSION):  bump version to 20100510
1057           Merge with NetBSD make, pick up
1058           o revert use of realpath on argv[0]
1059             too many corner cases.
1060           o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
1062 2010-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1064         * Makefile.in (MAKE_VERSION): bump version to 20100505
1065           Merge with NetBSD make, pick up
1066           o fix for missed SIGCHLD when compiled with SunPRO
1067             actually for bmake, defining FORCE_POSIX_SIGNALS would have
1068             done the job.
1070 2010-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1072         * Makefile.in (MAKE_VERSION): bump version to 20100430
1073           Merge with NetBSD make, pick up
1074           o fflush stdout before writing to stdout
1075         
1076 2010-04-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1078         * Makefile.in (MAKE_VERSION): bump version to 20100423
1079           Merge with NetBSD make, pick up
1080           o updated unit tests for Haiku (this time for sure).
1081         * boot-strap: based on patch from joerg 
1082           honor --with-default-sys-path better.
1083         * boot-strap: remove mention of --with-prefix-sys-path
1084         
1085 2010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1087         * Makefile.in (MAKE_VERSION): bump version to 20100422
1088         * Merge with NetBSD make, pick up
1089           o fix for vfork() on Darwin.
1090           o fix for bogus $TMPDIR.
1091           o set .MAKE.MODE=compat for -B
1092           o set .MAKE.JOBS=max_jobs for -j max_jobs
1093           o allow unit-tests to run without any *.mk
1094           o unit-tests/modmisc be more conservative in dirs presumed to exist.
1095         * boot-strap: ignore /usr/share/mk except on NetBSD.
1096         * unit-tests/Makefile.in: set LANG=C when running unit-tests to
1097           ensure sort(1) behaves as expected. 
1098         
1099 2010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1101         * boot-strap: add FindHereOrAbove so we can use -m .../mk
1103 2010-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1105         * Makefile.in (MAKE_VERSION): bump version to 20100420
1106         * Merge with NetBSD make, pick up
1107           o fix for variable realpath() behavior.
1108             we have to stat(2) the result to be sure.
1109           o fix for .export (all) when nested vars use :sh
1110         
1111 2010-04-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1113         * Makefile.in (MAKE_VERSION): bump version to 20100414
1114         * Merge with NetBSD make, pick up
1115           o use realpath to resolve argv[0] (for .MAKE) if needed.
1116           o add realpath from libc.
1117           o add :tA to resolve variable via realpath(3) if possible.
1119 2010-04-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1121         * Makefile.in (MAKE_VERSION): bump version to 20100408
1122         * Merge with NetBSD make, pick up
1123           o unit tests for .ERROR, .error
1124           o fix for .ERROR to ensure it cannot be default target.
1126 2010-04-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1128         * Makefile.in (MAKE_VERSION): bump version to 20100406
1129         * Merge with NetBSD make, pick up
1130           o fix for compat mode "Error code" going to debug_file.
1131           o fix for .ALLSRC being populated twice.
1132           o support for .info, .warning and .error directives
1133           o .MAKE.MODE to control make's operational mode
1134           o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
1135             name(s).
1136           o .MAKE.DEPENDFILE to control the name of the depend file
1137           o .ERROR target - run on failure.
1138         
1139 2010-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1141         * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
1143         * os.sh,arch.c: patch for Haiku from joerg at netbsd
1145 2010-03-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1147         * Makefile.in (MAKE_VERSION): bump version to 20100222
1148         * Merge with NetBSD make, pick up
1149           o better error msg for .for with mutiple inter vars
1150         
1151         * boot-strap: 
1152           o use make-bootstrap.sh from joerg at netbsd
1153             to avoid the need for a native make when bootstrapping.
1154           o add "" everywhere ;-)
1155           o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
1156             otherwise the pre-formated version.
1158 2010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1160         * Makefile.in (MAKE_VERSION): bump version to 20100102
1161         * Merge with NetBSD make, pick up:
1162           o fix for -m .../
1164 2009-11-18  Simon J. Gerraty  <sjg@void.crufty.net>
1166         * Makefile.in (MAKE_VERSION): bump version to 20091118
1167         * Merge with NetBSD make, pick up:
1168           o .unexport
1169           o report lines that start with '.' and should have ':'
1170             (catch typo's of .el*if).
1171         
1172 2009-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
1174         * configure.in: Ensure that srcdir and mksrc are absolute paths.
1176 2009-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1178         * Makefile.in (MAKE_VERSION): fix version to 20091007
1180 2009-10-07  Simon J. Gerraty  <sjg@void.crufty.net>
1182         * Makefile.in (MAKE_VERSION): bump version to 200910007
1183         * Merge with NetBSD make, pick up:
1184           o fix for parsing of :S;...;...; applied to .for loop iterator
1185             appearing in a dependency line. 
1186         
1187 2009-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1189         * Makefile.in (MAKE_VERSION): bump version to 20090909
1190         * Merge with NetBSD make, pick up:
1191           o fix for -C, .CURDIR and .OBJDIR
1192         * boot-strap: 
1193           o allow share_dir to be set independent of prefix.
1194           o select default share_dir better when prefix ends in $HOST_TARGET
1195           o if FORCE_BSD_MK etc were set, include them in the suggested
1196             install-mk command.
1198 2009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
1200         * Makefile.in (MAKE_VERSION): bump version to 20090908
1201         * Merge with NetBSD make, pick up:
1202           o .MAKE.LEVEL for recursion tracking
1203           o fix for :M scanning \:
1205 2009-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1207         * configure.in: Don't -D__EXTENSIONS__ if
1208         AC_USE_SYSTEM_EXTENSIONS says "no".
1210 2009-08-26  Simon J. Gerraty  <sjg@void.crufty.net>
1212         * Makefile.in (MAKE_VERSION): bump version to 20090826
1213         Simplify MAKE_VERSION to just the bare date.
1214         * Merge with NetBSD make, pick up:
1215           o -C directory support.
1216           o support for SIGINFO
1217           o use $TMPDIR for temp files.
1218           o child of vfork should be careful about modifying parent's state.
1219         
1221 2009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
1223         * Appy some patches for MiNT from David Brownlee
1225 2009-02-26  Simon J. Gerraty  <sjg@void.crufty.net>
1227         * Makefile.in (BMAKE_VERSION): bump version to 20090222
1228         * Merge with NetBSD make, pick up:
1229           o Possible null pointer de-ref in Var_Set.
1231 2009-02-08  Simon J. Gerraty  <sjg@void.crufty.net>
1233         * Makefile.in (BMAKE_VERSION): bump version to 20090204
1234         * Merge with NetBSD make, pick up:
1235           o bmake_malloc et al moved to their own .c
1236           o Count both () and {} when looking for the end of a :M pattern
1237           o Change 'Buffer' so that it is the actual struct, not a pointer to it.
1238           o strlist.c - functions for processing extendable arrays of pointers to strings.
1239           o ClientData replaced with void *, so const void * can be used.
1240           o New debug flag C for DEBUG_CWD
1242 2008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
1244         * Makefile.in (BMAKE_VERSION): bump version to 20081111
1245           Apply patch from Joerg Sonnenberge to
1246           configure.in:
1247           o remove some redundant checks
1248           o check for emlloc etc only in libutil and require the whole family.
1249           util.c:
1250           o remove [v]asprintf which is no longer used.
1251         
1252 2008-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1254         * Makefile.in (BMAKE_VERSION): bump version to 20081101
1255         * Merge with NetBSD make, pick up:
1256           o util.c: avoid use of putenv() - christos
1258 2008-10-30  Simon J. Gerraty  <sjg@void.crufty.net>
1260         * Makefile.in (BMAKE_VERSION): bump version to 20081030
1261           pick up man page tweaks.
1263 2008-10-29  Simon J. Gerraty  <sjg@void.crufty.net>
1265         * Makefile.in: move processing of LIBOBJS to after is definition!
1266           thus we'll have getenv.c in SRCS only if needed.
1268         * make.1: add examples of how to use :?
1270         * Makefile.in (BMAKE_VERSION): bump version to 20081029
1271         * Merge with NetBSD make, pick up:
1272           o fix for .END processing with -j
1273           o segfault from Parse_Error when no makefile is open
1274           o handle numeric expressions in any variable expansion
1275           o debug output now defaults to stderr, -dF to change it - apb
1276           o make now uses bmake_malloc etc so that it can build natively 
1277             on A/UX - wasn't an issue for bmake, but we want to keep in sync.
1279 2008-09-27  Simon J. Gerraty  <sjg@void.crufty.net>
1281         * Makefile.in (BMAKE_VERSION): bump version to 20080808
1282         * Merge with NetBSD make, pick up:
1283           o fix for PR/38840: Pierre Pronchery: make crashes while parsing
1284             long lines in Makefiles 
1285           o optimizations for VarQuote by joerg
1286           o fix for PR/38756: dominik: make dumps core on invalid makefile
1287         
1288 2008-05-15  Simon J. Gerraty  <sjg@void.crufty.net>
1290         * Makefile.in (BMAKE_VERSION): bump version to 20080515
1291         * Merge with NetBSD make, pick up:
1292           o fix skip setting vars in VAR_GLOBAL context, to handle
1293             cases where VAR_CMD is used for other than command line vars.
1295 2008-05-14  Simon J. Gerraty  <sjg@void.crufty.net>
1297         * boot-strap (make_version): we may need to look in
1298         $prefix/share/mk for sys.mk 
1300         * Makefile.in (BMAKE_VERSION): bump version to 20080514
1301         * Merge with NetBSD make, pick up:
1302           o skip setting vars in VAR_GLOBAL context, when already set in
1303           VAR_CMD which takes precedence.
1305 2008-03-30  Simon J. Gerraty  <sjg@void.crufty.net>
1307         * Makefile.in (BMAKE_VERSION):  bump version to 20080330
1308         * Merge with NetBSD make, pick up:
1309           o fix for ?= when LHS contains variable reference.
1311 2008-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1313         * merge some patches from NetBSD pkgsrc.
1314         
1315         * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
1316         the MAKSYSPATH used during bootstrap. 
1318         * Makefile.in (BMAKE_VERSION): bump version to 20080215
1319         * Merge with NetBSD make, pick up:
1320           o warn if non-space chars follow 'empty' in a conditional.
1322 2008-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1324         * Makefile.in (BMAKE_VERSION): bump version to 20080118
1325         * Merge with NetBSD make, pick up:
1326           o consider dependencies read from .depend as optional - dsl
1327           o remember when buffer for reading makefile grows - dsl
1328           o add -dl (aka LOUD) - David O'Brien
1330 2007-10-22  Simon J. Gerraty  <sjg@void.crufty.net>
1332         * Makefile.in (BMAKE_VERSION): bump version to 20071022
1333         * Merge with NetBSD make, pick up:
1334           o Allow .PATH<suffix> to be used for .include ""
1336         * boot-strap: source default settings from .bmake-boot-strap.rc
1338 2007-10-16  Simon J. Gerraty  <sjg@void.crufty.net>
1340         * Makefile.in: fix maninstall on various systems 
1341           provided that our man.mk is used.
1342           For non-BSD systems we install the preformatted page
1343           into $MANDIR/cat1
1345 2007-10-15  Simon J. Gerraty  <sjg@void.crufty.net>
1347         * boot-strap: make bmake.1 too, so maninstall works.
1349 2007-10-14  Simon J. Gerraty  <sjg@void.crufty.net>
1351         * Makefile.in (BMAKE_VERSION): bump version to 20071014
1352         * Merge with NetBSD make, pick up:
1353           o revamped handling of defshell - configure no longer needs to
1354             know the content of the shells array - apb
1355           o stop Var_Subst modifying its input - apb
1356           o avoid calling ParseTrackInput too often - dsl
1358 2007-10-11  Simon J. Gerraty  <sjg@void.crufty.net>
1360         * Makefile.in (BMAKE_VERSION): bump version to 20071011
1361         * Merge with NetBSD make, pick up:
1362           o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
1364         * sigcompat.c: some tweaks for HP-UX 11.x based on 
1365           patch from Tobias Nygren
1367         * configure.in: update handling of --with-defshell to match
1368           new make behavior.  --with-defshell=/usr/xpg4/bin/sh
1369           will now do what one might hope - provided the chosen shell
1370           behaves enough like sh.
1372 2007-10-08  Simon J. Gerraty  <sjg@void.crufty.net>
1374         * Makefile.in (BMAKE_VERSION): bump to 20071008
1375         * Merge with NetBSD make, pick up:
1376           o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
1377           o .export/.MAKE.EXPORTED - export of variables - sjg
1378           o .MAKE.MAKEFILES - track all makefiles read - sjg
1379           o performance improvements - dsl
1380           o revamp parallel job scheduling - dsl
1381         
1382 2006-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1384         * Makefile.in (BMAKE_VERSION): bump to 20060728
1385         * Merge with NetBSD make, pick up:
1386           o extra debug info during variable and cond processing - sjg
1387           o shell definition now covers newline - rillig
1388           o minor mem leak in PrintOnError - sjg
1390 2006-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1392         * Makefile.in (BMAKE_VERSION):  bump to 20060511
1393         * Merge with NetBSD make, pick up:
1394           o more memory leaks - coverity
1395           o possible overflow in ArchFindMember - coverity
1396           o extract variable modifier code out of Var_Parse()
1397             so it can be called recursively - sjg
1398           o unit-tests/moderrs - sjg
1400 2006-04-12  Simon J. Gerraty  <sjg@void.crufty.net>
1402         * Makefile.in (BMAKE_VERSION): bump to 20060412
1403         * Merge with NetBSD make, pick up:
1404           o fixes for some memory leaks - coverity
1405           o only read first sys.mk etc when searching sysIncPath - sjg
1407         * main.c (ReadMakefile): remove hack for __INTERIX that prevented
1408         setting ${MAKEFILE} - OBATA Akio
1410 2006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
1412         * Makefile.in (BMAKE_VERSION): bump to 20060318
1413         * Merge with NetBSD make, pick up:
1414           o cleanup of job.c to remove remote handling, distcc is more
1415             useful and this code was likely bit-rotting - dsl
1416           o fix for :P modifier - sjg
1417         * boot-strap: set default prefix to something reasonable 
1418           (for me anyway). 
1420 2006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
1422         * Makefile.in (BMAKE_VERSION): bump to 20060301
1423         * Merge with NetBSD make, pick up:
1424           o make .WAIT apply recursively, document and test case - apb
1425           o allow variable modifiers in a variable appear anywhere in
1426             modifier list, document and test case - sjg
1428 2006-02-22  Simon J. Gerraty  <sjg@void.crufty.net>
1430         * Makefile.in (BMAKE_VERSION): bump to 20060222
1431         * Merge with NetBSD make, pick up:
1432           o improved job token handling - dsl
1433           o SIG_DFL the correct signal before exec - dsl
1434           o more debug info during parsing - dsl
1435           o allow variable modifiers to be specified via variable - sjg
1436         * boot-strap: explain why we died if no mksrc
1438 2005-11-05  Simon J. Gerraty  <sjg@void.crufty.net>
1440         * Makefile.in (BMAKE_VERSION): bump to 20051105
1441         * configure.in: always set default_sys_path 
1442           default is ${prefix}/share/mk
1443           - remove prefix_sys_path, anyone wanting more than above
1444             needs to set it manually.
1446 2005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1448         * boot-strap: make this a bit easier for pkgsrc folk.
1449           bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
1450           'mips' while pkgsrc wants 'mipseb' or 'mipsel'
1452 2005-11-02  Simon J. Gerraty  <sjg@void.crufty.net>
1454         * Makefile.in (BMAKE_VERSION): bump to 20051102
1455         * job.c (JobFinish): fix likely ancient merge lossage
1456         fix from Todd Vierling.
1457         * boot-strap (srcdir): allow setting mksrc=none
1459 2005-10-31  Simon J. Gerraty  <sjg@void.crufty.net>
1461         * Makefile.in (BMAKE_VERSION): bump to 20051031
1462         * ranlib.h: skip on OSF too.
1463           (NetBSD PR 31864)
1465 2005-10-10  Simon J. Gerraty  <sjg@void.crufty.net>
1467         * Makefile.in (BMAKE_VERSION): bump to 20051002
1468           fix a silly typo
1470 2005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1472         * Makefile.in (BMAKE_VERSION): bump to 20051001
1473           support for UnixWare and some other systems,
1474           based on patches from pkgsrc/bootstrap
1476 2005-09-03  Simon J. Gerraty  <sjg@void.crufty.net>
1478         * Makefile.in (BMAKE_VERSION): bump to 20050901
1479         * Merge with NetBSD make, pick up:
1480           o possible parse error causing us to wander off.
1482 2005-06-06  Simon J. Gerraty  <sjg@void.crufty.net>
1484         * Makefile.in (BMAKE_VERSION): bump to 20050606
1485         * Merge with NetBSD make, pick up:
1486           o :0x modifier for randomizing a list
1487           o fixes for a number of -Wuninitialized issues.
1489 2005-05-30  Simon J. Gerraty  <sjg@void.crufty.net>
1491         * Makefile.in (BMAKE_VERSION): bump to 20050530
1492         * Merge with NetBSD make, pick up:
1493           o Handle dependencies for .BEGIN, .END and .INTERRUPT
1495         * README: was seriously out of date.
1496         
1497 2005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
1499         * Important to use .MAKE rather than MAKE.
1501 2005-03-15  Simon J. Gerraty  <sjg@void.crufty.net>
1503         * Makefile.in (BMAKE_VERSION): bump to 20050315
1504         * Merge with NetBSD make, pick up:
1505           o don't mistake .elsefoo for .else
1506           o use suffix-specific search path correctly
1507           o bunch of style nits
1509 2004-05-11  Simon J. Gerraty  <sjg@void.crufty.net>
1511         * boot-strap: 
1512         o ensure that args to --src and --with-mksrc
1513           are resolved before giving them to configure.
1514         o add -o "objdir" so that builder can control it,
1515           default is $OS as determined by os.sh
1516         o add -q to suppress all the install instructions.
1518 2004-05-08  Simon J. Gerraty  <sjg@void.crufty.net>
1520         * Remove __IDSTRING()
1522         * Makefile.in (BMAKE_VERSION): bump to 20040508
1523         * Merge with NetBSD make, pick up:
1524           o posix fixes
1525             - remove '-e' from compat mode
1526             - add support for '+' command-line prefix.
1527           o fix for handling '--' on command-line.
1528           o fix include in lst.lib/lstInt.h to simplify '-I's
1529           o we also picked up replacement of MAKE_BOOTSTRAP 
1530             with !MAKE_NATIVE which is a noop, but possibly confusing.
1532 2004-04-14  Simon J. Gerraty  <sjg@void.crufty.net>
1534         * Makefile.in (BMAKE_VERSION): bump to 20040414
1535         * Merge with NetBSD make, pick up:
1536           o allow quoted strings on lhs of conditionals
1537           o issue warning when extra .else is seen
1538           o print line numer when errors encountered during parsing from
1539           string.
1541 2004-02-20  Simon J. Gerraty  <sjg@void.crufty.net>
1543         * Makefile.in (BMAKE_VERSION):  bump to 20040220
1544         * Merge with NetBSD make, pick up:
1545           o fix for old :M parsing bug.
1546           o re-jigged unit-tests
1548 2004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1550         * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
1551         so that './bmake -f Makefile test' works.
1552         
1553 2004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1555         * Makefile.in: (BMAKE_VERSION): bump to 20040214
1556         * Merge with NetBSD make, pick up:
1557           o search upwards for *.mk
1558           o fix for double free of var substitution buffers
1559           o use of getopt replaced with custom code, since the usage
1560           (re-scanning) isn't posix compatible.
1562 2004-02-12  Simon J. Gerraty  <sjg@void.crufty.net>
1564         * arch.c: don't include ranlib.h on ELF systems
1565         (thanks to Chuck Cranor <chuck@ece.cmu.edu>).
1567 2004-01-18  Simon J. Gerraty  <sjg@void.crufty.net>
1569         * Makefile.in (BMAKE_VERSION): bump to 20040118
1571         * boot-strap (while): export vars we assign to on cmdline
1572         * unit-test/Makefile.in: ternary is .PHONY
1574 2004-01-08  Simon J. Gerraty  <sjg@void.crufty.net>
1576         * Makefile.in (BMAKE_VERSION): bump version to 20040108
1577         * Merge with NetBSD make, pick up:
1578           o fix for ternary modifier
1580 2004-01-06  Simon J. Gerraty  <sjg@void.crufty.net>
1582         * Makefile.in (BMAKE_VERSION): bump version to 20040105
1583         * Merge with NetBSD make, pick up:
1584           o fix for cond.c to handle compound expressions better
1585           o variable expansion within sysV style replacements
1586           
1587 2003-12-22  Simon J. Gerraty  <sjg@void.crufty.net>
1589         * Make portable snprintf safer - output to /dev/null first to
1590         check space needed.
1592         * Makefile.in (BMAKE_VERSION): bump version to 20031222
1593         * Merge with NetBSD make, pick up:
1594           o -dg3 to show input graph when things go wrong.
1595           o explicitly look for makefiles in objdir if not found in curdir so
1596             that errors in .depend etc will be reported accurarely. 
1597           o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1598             instead as it more accurately reflects the expected behavior and
1599             is more consistently implemented.
1600           o avoid use of asprintf.
1602 2003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1604         * util.c: Add asprintf and vasprintf.
1606         * Makefile.in (BMAKE_VERSION): bump version to 20030928
1607         * Merge with NetBSD make, pick up:
1608         :[] modifier - allows picking words from a variable.
1609         :tW modifier - allows treating value as one big word.
1610         W flag for :C and :S - allows treating value as one big word.
1611         
1612 2003-09-12  Simon J. Gerraty  <sjg@void.crufty.net>
1614         * Merge with NetBSD make
1615         pick up -de flag to enable printing failed command.
1616         don't skip 1st two dir entries (normally . and ..) since
1617         coda does not have them.
1619 2003-09-09  Simon J. Gerraty  <sjg@void.crufty.net>
1621         * Makefile.in (BMAKE_VERSION): bump version to 20030909
1622         * Merge with NetBSD make, pick up:
1623         - changes for -V '${VAR}' to print fully expanded value
1624           cf. -V VAR
1625         - CompatRunCommand now prints the command that failed.
1626         - several files got updated 3 clause Berkeley license.
1627         
1628 2003-08-02  Simon J. Gerraty  <sjg@void.crufty.net>
1630         * boot-strap: Allow setting configure args on command line.
1632 2003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1634         * configure.in: add --with-defshell to allow sh or ksh
1635         to be selected as default shell.
1637         * Makefile.in: bump version to 20030731
1639         * Merge with NetBSD make 
1640         Pick up .SHELL spec for ksh and associate man page changes.
1641         Also compat mode now uses the same shell specs.
1643 2003-07-29  Simon J. Gerraty  <sjg@void.crufty.net>
1645         * var.c (Var_Parse): ensure delim is initialized.
1647         * unit-tests/Makefile.in: use single quotes to avoid problems from
1648         some shells.
1650         * makefile.boot.in:
1651         Run the unit-tests as part of the bootstrap procedure.
1653 2003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1655         * unit-tests/Makefile.in: always force complaints from
1656         ${TEST_MAKE} to be from 'make'.
1658         * configure.in: add check for 'diff -u'
1659         also fix some old autoconf'isms
1660         
1661         * Makefile.in (BMAKE_VERSION): bump version to 20030728.
1662         if using GCC add -Wno-cast-qual to CFLAGS for var.o
1664         * Merge with NetBSD make
1665         Pick up fix for :ts parsing error in some cases.
1666         Pick unit-tests.
1668 2003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1670         * Makefile.in (BMAKE_VERSION): bump version to 20030723.
1672         * var.c (Var_Parse): fix bug in :ts modifier, after const
1673         correctness fixes, must pass nstr to VarModify.
1675 2003-07-14  Simon J. Gerraty  <sjg@void.crufty.net>
1677         * Makefile.in: BMAKE_VERSION switch to a date based version.
1678         We'll generally use the date of last import from NetBSD.
1680         * Merge with NetBSD make
1681         Pick up fixes for const-correctness, now passes WARNS=3 on
1682         NetBSD.
1683         Pick up :ts modifier, allows controlling the separator used
1684         between words in variable expansion.
1686 2003-07-11  Simon J. Gerraty  <sjg@void.crufty.net>
1688         * FILES: include boot-strap and os.sh
1690         * Makefile.in: only set WARNS if we are NetBSD, the effect on
1691         FreeBSD is known to be bad.
1693         * makefile.boot.in (bootstrap): make this the default target.
1695         * Makefile.in: bump version to 3.1.19
1697         * machine.sh: avoid A-Z with tr as it is bound to lose.
1699 2003-07-10  Simon J. Gerraty  <sjg@void.crufty.net>
1701         * Merge with NetBSD make
1702         Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1703         Plus some doc fixes.
1704         
1705 2003-04-27  Simon J. Gerraty  <sjg@void.crufty.net>
1707         * Merge with NetBSD make
1708         Pick up fix for PR/1523 - don't count a library as built, if there
1709         is no way to build it 
1711         * Bump version to 3.1.18
1713 2003-03-23  Simon J. Gerraty  <sjg@void.crufty.net>
1715         * Merge with NetBSD make
1716         Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1717         appears in src list.
1719 2003-03-21  Simon J. Gerraty  <sjg@void.crufty.net>
1721         * Merge with NetBSD make (mmm 10th anniversary!)
1722         pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1723         pick up -X which tells us to not export VAR=val via setenv if
1724         we are already doing so via MAKEFLAGS.  This saves valuable env
1725         space on systems like Darwin.
1726         set MAKE_VERSION to 3.1.17
1728         * parse.c: pix up fix for suffix rules
1730 2003-03-06  Simon J. Gerraty  <sjg@void.crufty.net>
1732         * Merge with NetBSD make.
1733         pick up fix for propagating -B via MAKEFLAGS.
1734         set MAKE_VERSION to 3.1.16
1736         * Apply some patches from pkgsrc-bootstrap/bmake
1737         Originally by Grant Beattie <grant@netbsd.org>
1738         I may have missed some - since they are based on bmake-3.1.12
1739         
1740 2002-12-03  Simon J. Gerraty  <sjg@void.crufty.net>
1742         * makefile.boot.in (bmake): update install targets for those that
1743         use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1744         havoc from gmake -w.  Thanks to Harlan Stenn <hstenn@cisco.com>.
1746         * bmake.cat1: update the pre-formatted man page!
1748 2002-11-30  Simon J. Gerraty  <sjg@void.crufty.net>
1750         * Merge with NetBSD make.
1751         pick up fix for premature free of pointer used in call
1752         to Dir_InitCur().
1753         set MAKE_VERSION to 3.1.15
1755 2002-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
1757         * configure.in: determine suitable value for MKSRC.
1758         override using --with-mksrc=PATH.
1760         * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1761         configs(8) will use 'sun4' as an alias for 'sparc'.
1763 2002-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
1765         * Merge with NetBSD make.
1766         pick up ${.PATH}
1767         pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1768         set MAKE_VERSION to 3.1.14
1769         add configure checks for killpg and sys/socket.h
1771 2002-09-16  Simon J. Gerraty  <sjg@void.crufty.net>
1773         * tag bmake-3-1-13
1774         
1775         * makefile.boot.in (bmake): use install-mk
1776         Also setup ./mk before trying to invoke bmake.boot incase we
1777         needed install-mk to create a sys.mk for us. 
1779         * configure.in: If we need to add -I${srcdir}/missing, make it an
1780         absolute path so that it works for lst.lib too.
1782         * make.h: always include sys/cdefs.h since we provide one if the
1783         host does not.
1784         
1785         * Makefile.in (install-mk): 
1786         use MKSRC/install-mk which will do the right thing.
1787         use uname -p for ARCH if possible.
1788         since install-mk will setup links bsd.prog.mk -> prog.mk if
1789         needed, just .include bsd.prog.mk
1791         * Merge with NetBSD make (NetBSD-1.6)
1792         Code is ansi-C only now.
1793         Bug in handling of dotLast is fixed.
1794         Can now assign .OBJDIR and make will reset its notions of life.
1795         New modifiers :tu :tl for toUpper and toLower.
1797 Tue Oct 16 12:18:42 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1799         * Merge with NetBSD make
1800         pick up fix for .END failure in compat mode.
1801         pick up fix for extra va_end() in ParseVErrorInternal.
1803 Thu Oct 11 13:20:06 2001  Simon J. Gerraty  <sjg@zen.crufty.net>
1805         * configure.in: for systems that have sys/cdefs.h check if it is
1806         compatible.  If not, include the one under missing, but tell it to
1807         include the native one too - necessary on Linux.
1809         * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1810         include_next (for gcc) to get the native sys/cdefs.h
1812 Tue Aug 21 02:29:34 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1814         * job.c (JobFinish): Fix an earlier merge bug that resulted in
1815         leaking descriptors when using -jN.
1816         
1817         * job.c (JobPrintCommand): See if "curdir" exists before
1818         attempting to chdir().  Doing the chdir directly in make (when in
1819         compat mode) fails silently, so let the -jN version do the same.
1820         This can happen when building kernels in an object tree and
1821         playing clever games to reset .CURDIR.
1823         * Merged with NetBSD make
1824         pick up .USEBEFORE
1826 Tue Jun 26 23:45:11 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1828         * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1830 Tue Jun 12 16:48:57 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1832         * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1833         us not to export the iterator variable when using VAR_CMD context.
1835 Sun Jun 10 21:55:21 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1837         * job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1838         its the wrong "fix".
1840 Sat Jun  9 00:11:24 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1842         * Redesigned export of VAR_CMD's via MAKEFLAGS.
1843         We now simply append the variable names to .MAKEOVERRIDES, and
1844         handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1845         ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1846         Apart from fixing quoting bugs in previous version, this allows us
1847         to export vars to the environment by simply doing:
1848         .MAKEOVERRIDES+= PATH 
1849         Merged again with NetBSD make, but the above is the only change.
1851         * configure.in: added
1852         --disable-pwd-override          disable $PWD overriding getcwd()
1853         --disable-check-make-chdir      disable make trying to guess 
1854                 when it should automatically cd ${.CURDIR}
1856         * Merge with NetBSD make, changes include:
1857         parse.c (ParseDoDependency): Spot that the syntax error is
1858         caused by an unresolved cvs/rcs conflict and say so.
1859         var.c: most of Var* functions now take a ctxt as 1st arg.
1860         now does variable substituion on rhs of sysv style modifiers.
1861         
1862         * var.c (Var_Set): exporting of command line variables (VAR_CMD)
1863         is now done here.  We append the name='value' to .MAKEOVERRIDES
1864         rather than directly into MAKEFLAGS as this allows a Makefile to
1865         use .MAKEOVERRIDES= to disable this behaviour.  GNU make uses a
1866         very similar mechanism.  Note that in adding name='value' to
1867         .MAKEOVERRIDES we do the moral equivalent of:
1868         .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
1870 Fri Jun  1 14:08:02 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1872         * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
1874         * Merged with NetBSD make
1875         make -dx can now be used to run commands via sh -x
1876         better error messages on exec failures.
1878 Thu May 31 01:44:54 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1880         * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
1881         MAKE_VERSION gets updated.  Also don't use ?= for MAKE_VERSION,
1882         MACHINE etc otherwise they propagate from the previous bmake.
1884         * configure.in (machine): allow --with-machine=generic to make
1885         configure use machine.sh to set MACHINE. 
1887         * job.c (JobInterrupt): convert to using WAIT_T and friends.
1889         * Makefile.in: mention in bmake.1 that we use autoconf.
1891         * make.1: mention MAKE_PRINT_VAR_ON_ERROR.
1893 Wed May 30 23:17:18 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1895         * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
1896         as that rather defeats the usefulness of ${MAKEFILE}.
1898         * main.c (MainParseArgs): append command line variable assignments
1899         to MAKEFLAGS so that they get propagated to child make's.
1900         Apparently this is required POSIX behaviour?  Its useful anyway.
1902 Tue May 29 02:20:07 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1904         * compat.c (CompatRunCommand): don't use perror() since stdio may
1905         cause problems in child of vfork().
1907         * compat.c, main.c: Call PrintOnError() when we are going to bail.
1908         This routine prints out the .curdir where we stopped and will also
1909         display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
1911         * main.c: add ${.newline} to hold a "\n" - sometimes handy in
1912         :@ expansion.
1914         * var.c: VarLoopExpand: ignore addSpace if a \n is present.
1916         * Added RCSid's for the files we've touched.
1917         
1918 Thu May 24 15:41:37 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1920         * configure.in: Thanks to some clues from mdb@juniper.net,
1921         added autoconf magic to control setting of MACHINE, MACHINE_ARCH
1922         as well as what ends up in _PATH_DEFSYSPATH.  We now have:
1924   --with-machine=MACHINE  explicitly set MACHINE
1925   --with-force-machine=MACHINE  set FORCE_MACHINE
1926   --with-machine_arch=MACHINE_ARCH  explicitly set MACHINE_ARCH
1927   --with-default-sys-path=PATH:DIR:LIST  use an explicit _PATH_DEFSYSPATH
1928   --with-prefix-sys-path=PATH:DIR:LIST  prefix _PATH_PREFIX_SYSPATH
1929   --with-path-objdirprefix=PATH  override _PATH_OBJDIRPREFIX
1930         
1931         If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
1933         * makefile: added a pathetically simple makefile to drive
1934         bootstrapping.  Running configure by hand is more useful.
1936         * Makefile.in: added MAKE_VERSION, and reworked things to be less
1937         dependent on NetBSD bsd.*.mk
1938         
1939         * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
1940         _PATH_OBJDIRPREFIX for those that don't want a default.
1941         construct _PATH_DEFSYSPATH from the info we get from configure.
1943         * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
1944         if MAKE_VERSION is defined.
1945         
1946         * compat.c: when we bail, print out the .CURDIR we were in.
1947         
1948 Sat May 12 00:34:12 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1950         * Merged with NetBSD make
1952         * var.c: fixed a bug in the handling of the modifier :P
1953         if the node as found but the path was null, we segfault trying to
1954         duplicate it.
1956 Mon Mar  5 16:20:33 2001  Simon J. Gerraty  <sjg@zen.quick.com.au>
1958         * Merged with NetBSD make
1959         
1960         * make.c: Make_OODate's test for a library out of date was using
1961         cmtime where it should have used mtime (my bug).
1963         * compat.c: Use perror() to tell us what really went wrong when we
1964         cannot exec a command.
1965         
1966 Fri Dec 15 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1968         * Merged with NetBSD make
1969         
1970 Sat Jun 10 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1972         * Merged with NetBSD make
1973         
1974 Thu Jun  1 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1976         * Merged with NetBSD make
1977         
1978 Tue May 30 10:11:08  2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1980         * Merged with NetBSD make
1981         
1982 Thu Apr 27 00:07:47 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1984         * util.c: don't provide signal() since we use sigcompat.c
1986         * Makefile.in: added a build target.
1988         * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
1989         These allow some quite clever magic.
1991         * main.c (main): added support for getenv(MAKESYSPATH).
1993 Mon Apr  2 16:25:13 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
1995         * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
1996         This avoids objdir having a different value depending on how a
1997         directory was reached (via command line, or subdir.mk).
1999         * If FORCE_MACHINE is defined, ignore getenv("MACHINE").
2000         
2001 Mon Apr  2 23:15:31 2000  Simon J. Gerraty  <sjg@zen.quick.com.au>
2003         * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
2004         MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
2005         I've been testing this in NetBSD's make for some weeks.
2007         * Turn Makefile into Makefile.in and make it useful.
2008         
2009 Tue Feb 29 22:08:00 2000 Simon J. Gerraty  <sjg@zen.quick.com.au>
2011         * Imported NetBSD's -current make(1) and resolve conflicts.
2012         
2013         * Applied autoconf patches from bmake v2
2015         * Imported clean code base from NetBSD-1.0