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