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