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