1 2010-08-08 Simon J. Gerraty <sjg@bad.crufty.net>
3 * boot-strap (TOOL_DIFF): set this to ensure tests use
4 the same version of diff that configure tested
6 * Makefile.in (MAKE_VERSION): bump version to 20100808
7 Merge with NetBSD make, pick up
8 o in jobs mode, when we discover we cannot make something,
9 call PrintOnError before exit.
11 2010-08-06 Simon J. Gerraty <sjg@bad.crufty.net>
13 * Makefile.in (MAKE_VERSION): bump version to 20100806
14 Merge with NetBSD make, pick up
15 o formatting fixes for ignored errors
16 o ensure jobs are cleaned up regardless of where wait() was called.
18 2010-06-28 Simon J. Gerraty <sjg@bad.crufty.net>
20 * Makefile.in (MAKE_VERSION): bump version to 20100618
21 * os.sh (MACHINE_ARCH): watch out for drivel from uname -p
23 2010-06-16 Simon J. Gerraty <sjg@bad.crufty.net>
25 * Makefile.in (MAKE_VERSION): bump version to 20100616
26 Merge with NetBSD make, pick up
28 o call PrintOnError from JobFinish when we detect an error we
31 2010-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
33 * Makefile.in (MAKE_VERSION): bump version to 20100606
34 Merge with NetBSD make, pick up
37 2010-06-05 Simon J. Gerraty <sjg@bad.crufty.net>
39 * Makefile.in (MAKE_VERSION): bump version to 20100605
40 Merge with NetBSD make, pick up
41 o use bmake_signal() which is a wrapper around sigaction()
43 o add .export-env to allow exporting variables to environment
44 without tracking (so no re-export when the internal value is
47 2010-05-24 Simon J. Gerraty <sjg@bad.crufty.net>
49 * Makefile.in (MAKE_VERSION): bump version to 20100524
50 Merge with NetBSD make, pick up
51 o fix for .info et al being greedy.
53 2010-05-23 Simon J. Gerraty <sjg@bad.crufty.net>
55 * Makefile.in (MAKE_VERSION): bump version to 20100520
56 Merge with NetBSD make, pick up
57 o back to using realpath on argv[0]
58 but only if contains '/' and does not start with '/'.
60 2010-05-10 Simon J. Gerraty <sjg@bad.crufty.net>
62 * boot-strap: use absolute path for bmake when running tests.
64 * Makefile.in (MAKE_VERSION): bump version to 20100510
65 Merge with NetBSD make, pick up
66 o revert use of realpath on argv[0]
67 too many corner cases.
68 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
70 2010-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
72 * Makefile.in (MAKE_VERSION): bump version to 20100505
73 Merge with NetBSD make, pick up
74 o fix for missed SIGCHLD when compiled with SunPRO
75 actually for bmake, defining FORCE_POSIX_SIGNALS would have
78 2010-04-30 Simon J. Gerraty <sjg@bad.crufty.net>
80 * Makefile.in (MAKE_VERSION): bump version to 20100430
81 Merge with NetBSD make, pick up
82 o fflush stdout before writing to stdout
84 2010-04-23 Simon J. Gerraty <sjg@bad.crufty.net>
86 * Makefile.in (MAKE_VERSION): bump version to 20100423
87 Merge with NetBSD make, pick up
88 o updated unit tests for Haiku (this time for sure).
89 * boot-strap: based on patch from joerg
90 honor --with-default-sys-path better.
91 * boot-strap: remove mention of --with-prefix-sys-path
93 2010-04-22 Simon J. Gerraty <sjg@bad.crufty.net>
95 * Makefile.in (MAKE_VERSION): bump version to 20100422
96 * Merge with NetBSD make, pick up
97 o fix for vfork() on Darwin.
98 o fix for bogus $TMPDIR.
99 o set .MAKE.MODE=compat for -B
100 o set .MAKE.JOBS=max_jobs for -j max_jobs
101 o allow unit-tests to run without any *.mk
102 o unit-tests/modmisc be more conservative in dirs presumed to exist.
103 * boot-strap: ignore /usr/share/mk except on NetBSD.
104 * unit-tests/Makefile.in: set LANG=C when running unit-tests to
105 ensure sort(1) behaves as expected.
107 2010-04-21 Simon J. Gerraty <sjg@bad.crufty.net>
109 * boot-strap: add FindHereOrAbove so we can use -m .../mk
111 2010-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
113 * Makefile.in (MAKE_VERSION): bump version to 20100420
114 * Merge with NetBSD make, pick up
115 o fix for variable realpath() behavior.
116 we have to stat(2) the result to be sure.
117 o fix for .export (all) when nested vars use :sh
119 2010-04-14 Simon J. Gerraty <sjg@bad.crufty.net>
121 * Makefile.in (MAKE_VERSION): bump version to 20100414
122 * Merge with NetBSD make, pick up
123 o use realpath to resolve argv[0] (for .MAKE) if needed.
124 o add realpath from libc.
125 o add :tA to resolve variable via realpath(3) if possible.
127 2010-04-08 Simon J. Gerraty <sjg@bad.crufty.net>
129 * Makefile.in (MAKE_VERSION): bump version to 20100408
130 * Merge with NetBSD make, pick up
131 o unit tests for .ERROR, .error
132 o fix for .ERROR to ensure it cannot be default target.
134 2010-04-06 Simon J. Gerraty <sjg@bad.crufty.net>
136 * Makefile.in (MAKE_VERSION): bump version to 20100406
137 * Merge with NetBSD make, pick up
138 o fix for compat mode "Error code" going to debug_file.
139 o fix for .ALLSRC being populated twice.
140 o support for .info, .warning and .error directives
141 o .MAKE.MODE to control make's operational mode
142 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
144 o .MAKE.DEPENDFILE to control the name of the depend file
145 o .ERROR target - run on failure.
147 2010-03-18 Simon J. Gerraty <sjg@bad.crufty.net>
149 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
151 * os.sh,arch.c: patch for Haiku from joerg at netbsd
153 2010-03-17 Simon J. Gerraty <sjg@bad.crufty.net>
155 * Makefile.in (MAKE_VERSION): bump version to 20100222
156 * Merge with NetBSD make, pick up
157 o better error msg for .for with mutiple inter vars
160 o use make-bootstrap.sh from joerg at netbsd
161 to avoid the need for a native make when bootstrapping.
162 o add "" everywhere ;-)
163 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
164 otherwise the pre-formated version.
166 2010-01-04 Simon J. Gerraty <sjg@bad.crufty.net>
168 * Makefile.in (MAKE_VERSION): bump version to 20100102
169 * Merge with NetBSD make, pick up:
172 2009-11-18 Simon J. Gerraty <sjg@void.crufty.net>
174 * Makefile.in (MAKE_VERSION): bump version to 20091118
175 * Merge with NetBSD make, pick up:
177 o report lines that start with '.' and should have ':'
178 (catch typo's of .el*if).
180 2009-10-30 Simon J. Gerraty <sjg@void.crufty.net>
182 * configure.in: Ensure that srcdir and mksrc are absolute paths.
184 2009-10-09 Simon J. Gerraty <sjg@void.crufty.net>
186 * Makefile.in (MAKE_VERSION): fix version to 20091007
188 2009-10-07 Simon J. Gerraty <sjg@void.crufty.net>
190 * Makefile.in (MAKE_VERSION): bump version to 200910007
191 * Merge with NetBSD make, pick up:
192 o fix for parsing of :S;...;...; applied to .for loop iterator
193 appearing in a dependency line.
195 2009-09-09 Simon J. Gerraty <sjg@void.crufty.net>
197 * Makefile.in (MAKE_VERSION): bump version to 20090909
198 * Merge with NetBSD make, pick up:
199 o fix for -C, .CURDIR and .OBJDIR
201 o allow share_dir to be set independent of prefix.
202 o select default share_dir better when prefix ends in $HOST_TARGET
203 o if FORCE_BSD_MK etc were set, include them in the suggested
206 2009-09-08 Simon J. Gerraty <sjg@void.crufty.net>
208 * Makefile.in (MAKE_VERSION): bump version to 20090908
209 * Merge with NetBSD make, pick up:
210 o .MAKE.LEVEL for recursion tracking
211 o fix for :M scanning \:
213 2009-09-03 Simon J. Gerraty <sjg@void.crufty.net>
215 * configure.in: Don't -D__EXTENSIONS__ if
216 AC_USE_SYSTEM_EXTENSIONS says "no".
218 2009-08-26 Simon J. Gerraty <sjg@void.crufty.net>
220 * Makefile.in (MAKE_VERSION): bump version to 20090826
221 Simplify MAKE_VERSION to just the bare date.
222 * Merge with NetBSD make, pick up:
223 o -C directory support.
224 o support for SIGINFO
225 o use $TMPDIR for temp files.
226 o child of vfork should be careful about modifying parent's state.
229 2009-03-26 Simon J. Gerraty <sjg@void.crufty.net>
231 * Appy some patches for MiNT from David Brownlee
233 2009-02-26 Simon J. Gerraty <sjg@void.crufty.net>
235 * Makefile.in (BMAKE_VERSION): bump version to 20090222
236 * Merge with NetBSD make, pick up:
237 o Possible null pointer de-ref in Var_Set.
239 2009-02-08 Simon J. Gerraty <sjg@void.crufty.net>
241 * Makefile.in (BMAKE_VERSION): bump version to 20090204
242 * Merge with NetBSD make, pick up:
243 o bmake_malloc et al moved to their own .c
244 o Count both () and {} when looking for the end of a :M pattern
245 o Change 'Buffer' so that it is the actual struct, not a pointer to it.
246 o strlist.c - functions for processing extendable arrays of pointers to strings.
247 o ClientData replaced with void *, so const void * can be used.
248 o New debug flag C for DEBUG_CWD
250 2008-11-11 Simon J. Gerraty <sjg@void.crufty.net>
252 * Makefile.in (BMAKE_VERSION): bump version to 20081111
253 Apply patch from Joerg Sonnenberge to
255 o remove some redundant checks
256 o check for emlloc etc only in libutil and require the whole family.
258 o remove [v]asprintf which is no longer used.
260 2008-11-04 Simon J. Gerraty <sjg@void.crufty.net>
262 * Makefile.in (BMAKE_VERSION): bump version to 20081101
263 * Merge with NetBSD make, pick up:
264 o util.c: avoid use of putenv() - christos
266 2008-10-30 Simon J. Gerraty <sjg@void.crufty.net>
268 * Makefile.in (BMAKE_VERSION): bump version to 20081030
269 pick up man page tweaks.
271 2008-10-29 Simon J. Gerraty <sjg@void.crufty.net>
273 * Makefile.in: move processing of LIBOBJS to after is definition!
274 thus we'll have getenv.c in SRCS only if needed.
276 * make.1: add examples of how to use :?
278 * Makefile.in (BMAKE_VERSION): bump version to 20081029
279 * Merge with NetBSD make, pick up:
280 o fix for .END processing with -j
281 o segfault from Parse_Error when no makefile is open
282 o handle numeric expressions in any variable expansion
283 o debug output now defaults to stderr, -dF to change it - apb
284 o make now uses bmake_malloc etc so that it can build natively
285 on A/UX - wasn't an issue for bmake, but we want to keep in sync.
287 2008-09-27 Simon J. Gerraty <sjg@void.crufty.net>
289 * Makefile.in (BMAKE_VERSION): bump version to 20080808
290 * Merge with NetBSD make, pick up:
291 o fix for PR/38840: Pierre Pronchery: make crashes while parsing
292 long lines in Makefiles
293 o optimizations for VarQuote by joerg
294 o fix for PR/38756: dominik: make dumps core on invalid makefile
296 2008-05-15 Simon J. Gerraty <sjg@void.crufty.net>
298 * Makefile.in (BMAKE_VERSION): bump version to 20080515
299 * Merge with NetBSD make, pick up:
300 o fix skip setting vars in VAR_GLOBAL context, to handle
301 cases where VAR_CMD is used for other than command line vars.
303 2008-05-14 Simon J. Gerraty <sjg@void.crufty.net>
305 * boot-strap (make_version): we may need to look in
306 $prefix/share/mk for sys.mk
308 * Makefile.in (BMAKE_VERSION): bump version to 20080514
309 * Merge with NetBSD make, pick up:
310 o skip setting vars in VAR_GLOBAL context, when already set in
311 VAR_CMD which takes precedence.
313 2008-03-30 Simon J. Gerraty <sjg@void.crufty.net>
315 * Makefile.in (BMAKE_VERSION): bump version to 20080330
316 * Merge with NetBSD make, pick up:
317 o fix for ?= when LHS contains variable reference.
319 2008-02-15 Simon J. Gerraty <sjg@void.crufty.net>
321 * merge some patches from NetBSD pkgsrc.
323 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
324 the MAKSYSPATH used during bootstrap.
326 * Makefile.in (BMAKE_VERSION): bump version to 20080215
327 * Merge with NetBSD make, pick up:
328 o warn if non-space chars follow 'empty' in a conditional.
330 2008-01-18 Simon J. Gerraty <sjg@void.crufty.net>
332 * Makefile.in (BMAKE_VERSION): bump version to 20080118
333 * Merge with NetBSD make, pick up:
334 o consider dependencies read from .depend as optional - dsl
335 o remember when buffer for reading makefile grows - dsl
336 o add -dl (aka LOUD) - David O'Brien
338 2007-10-22 Simon J. Gerraty <sjg@void.crufty.net>
340 * Makefile.in (BMAKE_VERSION): bump version to 20071022
341 * Merge with NetBSD make, pick up:
342 o Allow .PATH<suffix> to be used for .include ""
344 * boot-strap: source default settings from .bmake-boot-strap.rc
346 2007-10-16 Simon J. Gerraty <sjg@void.crufty.net>
348 * Makefile.in: fix maninstall on various systems
349 provided that our man.mk is used.
350 For non-BSD systems we install the preformatted page
353 2007-10-15 Simon J. Gerraty <sjg@void.crufty.net>
355 * boot-strap: make bmake.1 too, so maninstall works.
357 2007-10-14 Simon J. Gerraty <sjg@void.crufty.net>
359 * Makefile.in (BMAKE_VERSION): bump version to 20071014
360 * Merge with NetBSD make, pick up:
361 o revamped handling of defshell - configure no longer needs to
362 know the content of the shells array - apb
363 o stop Var_Subst modifying its input - apb
364 o avoid calling ParseTrackInput too often - dsl
366 2007-10-11 Simon J. Gerraty <sjg@void.crufty.net>
368 * Makefile.in (BMAKE_VERSION): bump version to 20071011
369 * Merge with NetBSD make, pick up:
370 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
372 * sigcompat.c: some tweaks for HP-UX 11.x based on
373 patch from Tobias Nygren
375 * configure.in: update handling of --with-defshell to match
376 new make behavior. --with-defshell=/usr/xpg4/bin/sh
377 will now do what one might hope - provided the chosen shell
378 behaves enough like sh.
380 2007-10-08 Simon J. Gerraty <sjg@void.crufty.net>
382 * Makefile.in (BMAKE_VERSION): bump to 20071008
383 * Merge with NetBSD make, pick up:
384 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
385 o .export/.MAKE.EXPORTED - export of variables - sjg
386 o .MAKE.MAKEFILES - track all makefiles read - sjg
387 o performance improvements - dsl
388 o revamp parallel job scheduling - dsl
390 2006-07-28 Simon J. Gerraty <sjg@void.crufty.net>
392 * Makefile.in (BMAKE_VERSION): bump to 20060728
393 * Merge with NetBSD make, pick up:
394 o extra debug info during variable and cond processing - sjg
395 o shell definition now covers newline - rillig
396 o minor mem leak in PrintOnError - sjg
398 2006-05-11 Simon J. Gerraty <sjg@void.crufty.net>
400 * Makefile.in (BMAKE_VERSION): bump to 20060511
401 * Merge with NetBSD make, pick up:
402 o more memory leaks - coverity
403 o possible overflow in ArchFindMember - coverity
404 o extract variable modifier code out of Var_Parse()
405 so it can be called recursively - sjg
406 o unit-tests/moderrs - sjg
408 2006-04-12 Simon J. Gerraty <sjg@void.crufty.net>
410 * Makefile.in (BMAKE_VERSION): bump to 20060412
411 * Merge with NetBSD make, pick up:
412 o fixes for some memory leaks - coverity
413 o only read first sys.mk etc when searching sysIncPath - sjg
415 * main.c (ReadMakefile): remove hack for __INTERIX that prevented
416 setting ${MAKEFILE} - OBATA Akio
418 2006-03-18 Simon J. Gerraty <sjg@void.crufty.net>
420 * Makefile.in (BMAKE_VERSION): bump to 20060318
421 * Merge with NetBSD make, pick up:
422 o cleanup of job.c to remove remote handling, distcc is more
423 useful and this code was likely bit-rotting - dsl
424 o fix for :P modifier - sjg
425 * boot-strap: set default prefix to something reasonable
428 2006-03-01 Simon J. Gerraty <sjg@void.crufty.net>
430 * Makefile.in (BMAKE_VERSION): bump to 20060301
431 * Merge with NetBSD make, pick up:
432 o make .WAIT apply recursively, document and test case - apb
433 o allow variable modifiers in a variable appear anywhere in
434 modifier list, document and test case - sjg
436 2006-02-22 Simon J. Gerraty <sjg@void.crufty.net>
438 * Makefile.in (BMAKE_VERSION): bump to 20060222
439 * Merge with NetBSD make, pick up:
440 o improved job token handling - dsl
441 o SIG_DFL the correct signal before exec - dsl
442 o more debug info during parsing - dsl
443 o allow variable modifiers to be specified via variable - sjg
444 * boot-strap: explain why we died if no mksrc
446 2005-11-05 Simon J. Gerraty <sjg@void.crufty.net>
448 * Makefile.in (BMAKE_VERSION): bump to 20051105
449 * configure.in: always set default_sys_path
450 default is ${prefix}/share/mk
451 - remove prefix_sys_path, anyone wanting more than above
452 needs to set it manually.
454 2005-11-04 Simon J. Gerraty <sjg@void.crufty.net>
456 * boot-strap: make this a bit easier for pkgsrc folk.
457 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
458 'mips' while pkgsrc wants 'mipseb' or 'mipsel'
460 2005-11-02 Simon J. Gerraty <sjg@void.crufty.net>
462 * Makefile.in (BMAKE_VERSION): bump to 20051102
463 * job.c (JobFinish): fix likely ancient merge lossage
464 fix from Todd Vierling.
465 * boot-strap (srcdir): allow setting mksrc=none
467 2005-10-31 Simon J. Gerraty <sjg@void.crufty.net>
469 * Makefile.in (BMAKE_VERSION): bump to 20051031
470 * ranlib.h: skip on OSF too.
473 2005-10-10 Simon J. Gerraty <sjg@void.crufty.net>
475 * Makefile.in (BMAKE_VERSION): bump to 20051002
478 2005-10-09 Simon J. Gerraty <sjg@void.crufty.net>
480 * Makefile.in (BMAKE_VERSION): bump to 20051001
481 support for UnixWare and some other systems,
482 based on patches from pkgsrc/bootstrap
484 2005-09-03 Simon J. Gerraty <sjg@void.crufty.net>
486 * Makefile.in (BMAKE_VERSION): bump to 20050901
487 * Merge with NetBSD make, pick up:
488 o possible parse error causing us to wander off.
490 2005-06-06 Simon J. Gerraty <sjg@void.crufty.net>
492 * Makefile.in (BMAKE_VERSION): bump to 20050606
493 * Merge with NetBSD make, pick up:
494 o :0x modifier for randomizing a list
495 o fixes for a number of -Wuninitialized issues.
497 2005-05-30 Simon J. Gerraty <sjg@void.crufty.net>
499 * Makefile.in (BMAKE_VERSION): bump to 20050530
500 * Merge with NetBSD make, pick up:
501 o Handle dependencies for .BEGIN, .END and .INTERRUPT
503 * README: was seriously out of date.
505 2005-03-22 Simon J. Gerraty <sjg@void.crufty.net>
507 * Important to use .MAKE rather than MAKE.
509 2005-03-15 Simon J. Gerraty <sjg@void.crufty.net>
511 * Makefile.in (BMAKE_VERSION): bump to 20050315
512 * Merge with NetBSD make, pick up:
513 o don't mistake .elsefoo for .else
514 o use suffix-specific search path correctly
515 o bunch of style nits
517 2004-05-11 Simon J. Gerraty <sjg@void.crufty.net>
520 o ensure that args to --src and --with-mksrc
521 are resolved before giving them to configure.
522 o add -o "objdir" so that builder can control it,
523 default is $OS as determined by os.sh
524 o add -q to suppress all the install instructions.
526 2004-05-08 Simon J. Gerraty <sjg@void.crufty.net>
528 * Remove __IDSTRING()
530 * Makefile.in (BMAKE_VERSION): bump to 20040508
531 * Merge with NetBSD make, pick up:
533 - remove '-e' from compat mode
534 - add support for '+' command-line prefix.
535 o fix for handling '--' on command-line.
536 o fix include in lst.lib/lstInt.h to simplify '-I's
537 o we also picked up replacement of MAKE_BOOTSTRAP
538 with !MAKE_NATIVE which is a noop, but possibly confusing.
540 2004-04-14 Simon J. Gerraty <sjg@void.crufty.net>
542 * Makefile.in (BMAKE_VERSION): bump to 20040414
543 * Merge with NetBSD make, pick up:
544 o allow quoted strings on lhs of conditionals
545 o issue warning when extra .else is seen
546 o print line numer when errors encountered during parsing from
549 2004-02-20 Simon J. Gerraty <sjg@void.crufty.net>
551 * Makefile.in (BMAKE_VERSION): bump to 20040220
552 * Merge with NetBSD make, pick up:
553 o fix for old :M parsing bug.
554 o re-jigged unit-tests
556 2004-02-15 Simon J. Gerraty <sjg@void.crufty.net>
558 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
559 so that './bmake -f Makefile test' works.
561 2004-02-14 Simon J. Gerraty <sjg@void.crufty.net>
563 * Makefile.in: (BMAKE_VERSION): bump to 20040214
564 * Merge with NetBSD make, pick up:
565 o search upwards for *.mk
566 o fix for double free of var substitution buffers
567 o use of getopt replaced with custom code, since the usage
568 (re-scanning) isn't posix compatible.
570 2004-02-12 Simon J. Gerraty <sjg@void.crufty.net>
572 * arch.c: don't include ranlib.h on ELF systems
573 (thanks to Chuck Cranor <chuck@ece.cmu.edu>).
575 2004-01-18 Simon J. Gerraty <sjg@void.crufty.net>
577 * Makefile.in (BMAKE_VERSION): bump to 20040118
579 * boot-strap (while): export vars we assign to on cmdline
580 * unit-test/Makefile.in: ternary is .PHONY
582 2004-01-08 Simon J. Gerraty <sjg@void.crufty.net>
584 * Makefile.in (BMAKE_VERSION): bump version to 20040108
585 * Merge with NetBSD make, pick up:
586 o fix for ternary modifier
588 2004-01-06 Simon J. Gerraty <sjg@void.crufty.net>
590 * Makefile.in (BMAKE_VERSION): bump version to 20040105
591 * Merge with NetBSD make, pick up:
592 o fix for cond.c to handle compound expressions better
593 o variable expansion within sysV style replacements
595 2003-12-22 Simon J. Gerraty <sjg@void.crufty.net>
597 * Make portable snprintf safer - output to /dev/null first to
600 * Makefile.in (BMAKE_VERSION): bump version to 20031222
601 * Merge with NetBSD make, pick up:
602 o -dg3 to show input graph when things go wrong.
603 o explicitly look for makefiles in objdir if not found in curdir so
604 that errors in .depend etc will be reported accurarely.
605 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
606 instead as it more accurately reflects the expected behavior and
607 is more consistently implemented.
608 o avoid use of asprintf.
610 2003-09-28 Simon J. Gerraty <sjg@void.crufty.net>
612 * util.c: Add asprintf and vasprintf.
614 * Makefile.in (BMAKE_VERSION): bump version to 20030928
615 * Merge with NetBSD make, pick up:
616 :[] modifier - allows picking words from a variable.
617 :tW modifier - allows treating value as one big word.
618 W flag for :C and :S - allows treating value as one big word.
620 2003-09-12 Simon J. Gerraty <sjg@void.crufty.net>
622 * Merge with NetBSD make
623 pick up -de flag to enable printing failed command.
624 don't skip 1st two dir entries (normally . and ..) since
625 coda does not have them.
627 2003-09-09 Simon J. Gerraty <sjg@void.crufty.net>
629 * Makefile.in (BMAKE_VERSION): bump version to 20030909
630 * Merge with NetBSD make, pick up:
631 - changes for -V '${VAR}' to print fully expanded value
633 - CompatRunCommand now prints the command that failed.
634 - several files got updated 3 clause Berkeley license.
636 2003-08-02 Simon J. Gerraty <sjg@void.crufty.net>
638 * boot-strap: Allow setting configure args on command line.
640 2003-07-31 Simon J. Gerraty <sjg@void.crufty.net>
642 * configure.in: add --with-defshell to allow sh or ksh
643 to be selected as default shell.
645 * Makefile.in: bump version to 20030731
647 * Merge with NetBSD make
648 Pick up .SHELL spec for ksh and associate man page changes.
649 Also compat mode now uses the same shell specs.
651 2003-07-29 Simon J. Gerraty <sjg@void.crufty.net>
653 * var.c (Var_Parse): ensure delim is initialized.
655 * unit-tests/Makefile.in: use single quotes to avoid problems from
659 Run the unit-tests as part of the bootstrap procedure.
661 2003-07-28 Simon J. Gerraty <sjg@void.crufty.net>
663 * unit-tests/Makefile.in: always force complaints from
664 ${TEST_MAKE} to be from 'make'.
666 * configure.in: add check for 'diff -u'
667 also fix some old autoconf'isms
669 * Makefile.in (BMAKE_VERSION): bump version to 20030728.
670 if using GCC add -Wno-cast-qual to CFLAGS for var.o
672 * Merge with NetBSD make
673 Pick up fix for :ts parsing error in some cases.
676 2003-07-23 Simon J. Gerraty <sjg@void.crufty.net>
678 * Makefile.in (BMAKE_VERSION): bump version to 20030723.
680 * var.c (Var_Parse): fix bug in :ts modifier, after const
681 correctness fixes, must pass nstr to VarModify.
683 2003-07-14 Simon J. Gerraty <sjg@void.crufty.net>
685 * Makefile.in: BMAKE_VERSION switch to a date based version.
686 We'll generally use the date of last import from NetBSD.
688 * Merge with NetBSD make
689 Pick up fixes for const-correctness, now passes WARNS=3 on
691 Pick up :ts modifier, allows controlling the separator used
692 between words in variable expansion.
694 2003-07-11 Simon J. Gerraty <sjg@void.crufty.net>
696 * FILES: include boot-strap and os.sh
698 * Makefile.in: only set WARNS if we are NetBSD, the effect on
699 FreeBSD is known to be bad.
701 * makefile.boot.in (bootstrap): make this the default target.
703 * Makefile.in: bump version to 3.1.19
705 * machine.sh: avoid A-Z with tr as it is bound to lose.
707 2003-07-10 Simon J. Gerraty <sjg@void.crufty.net>
709 * Merge with NetBSD make
710 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
713 2003-04-27 Simon J. Gerraty <sjg@void.crufty.net>
715 * Merge with NetBSD make
716 Pick up fix for PR/1523 - don't count a library as built, if there
717 is no way to build it
719 * Bump version to 3.1.18
721 2003-03-23 Simon J. Gerraty <sjg@void.crufty.net>
723 * Merge with NetBSD make
724 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
727 2003-03-21 Simon J. Gerraty <sjg@void.crufty.net>
729 * Merge with NetBSD make (mmm 10th anniversary!)
730 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
731 pick up -X which tells us to not export VAR=val via setenv if
732 we are already doing so via MAKEFLAGS. This saves valuable env
733 space on systems like Darwin.
734 set MAKE_VERSION to 3.1.17
736 * parse.c: pix up fix for suffix rules
738 2003-03-06 Simon J. Gerraty <sjg@void.crufty.net>
740 * Merge with NetBSD make.
741 pick up fix for propagating -B via MAKEFLAGS.
742 set MAKE_VERSION to 3.1.16
744 * Apply some patches from pkgsrc-bootstrap/bmake
745 Originally by Grant Beattie <grant@netbsd.org>
746 I may have missed some - since they are based on bmake-3.1.12
748 2002-12-03 Simon J. Gerraty <sjg@void.crufty.net>
750 * makefile.boot.in (bmake): update install targets for those that
751 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
752 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>.
754 * bmake.cat1: update the pre-formatted man page!
756 2002-11-30 Simon J. Gerraty <sjg@void.crufty.net>
758 * Merge with NetBSD make.
759 pick up fix for premature free of pointer used in call
761 set MAKE_VERSION to 3.1.15
763 2002-11-26 Simon J. Gerraty <sjg@void.crufty.net>
765 * configure.in: determine suitable value for MKSRC.
766 override using --with-mksrc=PATH.
768 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
769 configs(8) will use 'sun4' as an alias for 'sparc'.
771 2002-11-25 Simon J. Gerraty <sjg@void.crufty.net>
773 * Merge with NetBSD make.
775 pick up fix for finding ../cat.c via .PATH when .CURDIR=..
776 set MAKE_VERSION to 3.1.14
777 add configure checks for killpg and sys/socket.h
779 2002-09-16 Simon J. Gerraty <sjg@void.crufty.net>
783 * makefile.boot.in (bmake): use install-mk
784 Also setup ./mk before trying to invoke bmake.boot incase we
785 needed install-mk to create a sys.mk for us.
787 * configure.in: If we need to add -I${srcdir}/missing, make it an
788 absolute path so that it works for lst.lib too.
790 * make.h: always include sys/cdefs.h since we provide one if the
793 * Makefile.in (install-mk):
794 use MKSRC/install-mk which will do the right thing.
795 use uname -p for ARCH if possible.
796 since install-mk will setup links bsd.prog.mk -> prog.mk if
797 needed, just .include bsd.prog.mk
799 * Merge with NetBSD make (NetBSD-1.6)
800 Code is ansi-C only now.
801 Bug in handling of dotLast is fixed.
802 Can now assign .OBJDIR and make will reset its notions of life.
803 New modifiers :tu :tl for toUpper and toLower.
805 Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net>
807 * Merge with NetBSD make
808 pick up fix for .END failure in compat mode.
809 pick up fix for extra va_end() in ParseVErrorInternal.
811 Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net>
813 * configure.in: for systems that have sys/cdefs.h check if it is
814 compatible. If not, include the one under missing, but tell it to
815 include the native one too - necessary on Linux.
817 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
818 include_next (for gcc) to get the native sys/cdefs.h
820 Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
822 * job.c (JobFinish): Fix an earlier merge bug that resulted in
823 leaking descriptors when using -jN.
825 * job.c (JobPrintCommand): See if "curdir" exists before
826 attempting to chdir(). Doing the chdir directly in make (when in
827 compat mode) fails silently, so let the -jN version do the same.
828 This can happen when building kernels in an object tree and
829 playing clever games to reset .CURDIR.
831 * Merged with NetBSD make
834 Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
836 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
838 Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
840 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
841 us not to export the iterator variable when using VAR_CMD context.
843 Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
845 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
848 Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
850 * Redesigned export of VAR_CMD's via MAKEFLAGS.
851 We now simply append the variable names to .MAKEOVERRIDES, and
852 handle duplicate suppression and quoting in ExportMAKEFLAGS using:
853 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
854 Apart from fixing quoting bugs in previous version, this allows us
855 to export vars to the environment by simply doing:
856 .MAKEOVERRIDES+= PATH
857 Merged again with NetBSD make, but the above is the only change.
859 * configure.in: added
860 --disable-pwd-override disable $PWD overriding getcwd()
861 --disable-check-make-chdir disable make trying to guess
862 when it should automatically cd ${.CURDIR}
864 * Merge with NetBSD make, changes include:
865 parse.c (ParseDoDependency): Spot that the syntax error is
866 caused by an unresolved cvs/rcs conflict and say so.
867 var.c: most of Var* functions now take a ctxt as 1st arg.
868 now does variable substituion on rhs of sysv style modifiers.
870 * var.c (Var_Set): exporting of command line variables (VAR_CMD)
871 is now done here. We append the name='value' to .MAKEOVERRIDES
872 rather than directly into MAKEFLAGS as this allows a Makefile to
873 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a
874 very similar mechanism. Note that in adding name='value' to
875 .MAKEOVERRIDES we do the moral equivalent of:
876 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
878 Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
880 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
882 * Merged with NetBSD make
883 make -dx can now be used to run commands via sh -x
884 better error messages on exec failures.
886 Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
888 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
889 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION,
890 MACHINE etc otherwise they propagate from the previous bmake.
892 * configure.in (machine): allow --with-machine=generic to make
893 configure use machine.sh to set MACHINE.
895 * job.c (JobInterrupt): convert to using WAIT_T and friends.
897 * Makefile.in: mention in bmake.1 that we use autoconf.
899 * make.1: mention MAKE_PRINT_VAR_ON_ERROR.
901 Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
903 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
904 as that rather defeats the usefulness of ${MAKEFILE}.
906 * main.c (MainParseArgs): append command line variable assignments
907 to MAKEFLAGS so that they get propagated to child make's.
908 Apparently this is required POSIX behaviour? Its useful anyway.
910 Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
912 * compat.c (CompatRunCommand): don't use perror() since stdio may
913 cause problems in child of vfork().
915 * compat.c, main.c: Call PrintOnError() when we are going to bail.
916 This routine prints out the .curdir where we stopped and will also
917 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
919 * main.c: add ${.newline} to hold a "\n" - sometimes handy in
922 * var.c: VarLoopExpand: ignore addSpace if a \n is present.
924 * Added RCSid's for the files we've touched.
926 Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
928 * configure.in: Thanks to some clues from mdb@juniper.net,
929 added autoconf magic to control setting of MACHINE, MACHINE_ARCH
930 as well as what ends up in _PATH_DEFSYSPATH. We now have:
932 --with-machine=MACHINE explicitly set MACHINE
933 --with-force-machine=MACHINE set FORCE_MACHINE
934 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH
935 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH
936 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH
937 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX
939 If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
941 * makefile: added a pathetically simple makefile to drive
942 bootstrapping. Running configure by hand is more useful.
944 * Makefile.in: added MAKE_VERSION, and reworked things to be less
945 dependent on NetBSD bsd.*.mk
947 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
948 _PATH_OBJDIRPREFIX for those that don't want a default.
949 construct _PATH_DEFSYSPATH from the info we get from configure.
951 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
952 if MAKE_VERSION is defined.
954 * compat.c: when we bail, print out the .CURDIR we were in.
956 Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
958 * Merged with NetBSD make
960 * var.c: fixed a bug in the handling of the modifier :P
961 if the node as found but the path was null, we segfault trying to
964 Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
966 * Merged with NetBSD make
968 * make.c: Make_OODate's test for a library out of date was using
969 cmtime where it should have used mtime (my bug).
971 * compat.c: Use perror() to tell us what really went wrong when we
972 cannot exec a command.
974 Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
976 * Merged with NetBSD make
978 Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
980 * Merged with NetBSD make
982 Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
984 * Merged with NetBSD make
986 Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
988 * Merged with NetBSD make
990 Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
992 * util.c: don't provide signal() since we use sigcompat.c
994 * Makefile.in: added a build target.
996 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
997 These allow some quite clever magic.
999 * main.c (main): added support for getenv(MAKESYSPATH).
1001 Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1003 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
1004 This avoids objdir having a different value depending on how a
1005 directory was reached (via command line, or subdir.mk).
1007 * If FORCE_MACHINE is defined, ignore getenv("MACHINE").
1009 Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1011 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
1012 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
1013 I've been testing this in NetBSD's make for some weeks.
1015 * Turn Makefile into Makefile.in and make it useful.
1017 Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1019 * Imported NetBSD's -current make(1) and resolve conflicts.
1021 * Applied autoconf patches from bmake v2
1023 * Imported clean code base from NetBSD-1.0