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