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