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