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