1 2010-05-10 Simon J. Gerraty <sjg@bad.crufty.net>
3 * boot-strap: use absolute path for bmake when running tests.
5 * Makefile.in (MAKE_VERSION): bump version to 20100510
6 Merge with NetBSD make, pick up
7 o revert use of realpath on argv[0]
9 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
11 2010-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
13 * Makefile.in (MAKE_VERSION): bump version to 20100505
14 Merge with NetBSD make, pick up
15 o fix for missed SIGCHLD when compiled with SunPRO
16 actually for bmake, defining FORCE_POSIX_SIGNALS would have
19 2010-04-30 Simon J. Gerraty <sjg@bad.crufty.net>
21 * Makefile.in (MAKE_VERSION): bump version to 20100430
22 Merge with NetBSD make, pick up
23 o fflush stdout before writing to stdout
25 2010-04-23 Simon J. Gerraty <sjg@bad.crufty.net>
27 * Makefile.in (MAKE_VERSION): bump version to 20100423
28 Merge with NetBSD make, pick up
29 o updated unit tests for Haiku (this time for sure).
30 * boot-strap: based on patch from joerg
31 honor --with-default-sys-path better.
32 * boot-strap: remove mention of --with-prefix-sys-path
34 2010-04-22 Simon J. Gerraty <sjg@bad.crufty.net>
36 * Makefile.in (MAKE_VERSION): bump version to 20100422
37 * Merge with NetBSD make, pick up
38 o fix for vfork() on Darwin.
39 o fix for bogus $TMPDIR.
40 o set .MAKE.MODE=compat for -B
41 o set .MAKE.JOBS=max_jobs for -j max_jobs
42 o allow unit-tests to run without any *.mk
43 o unit-tests/modmisc be more conservative in dirs presumed to exist.
44 * boot-strap: ignore /usr/share/mk except on NetBSD.
45 * unit-tests/Makefile.in: set LANG=C when running unit-tests to
46 ensure sort(1) behaves as expected.
48 2010-04-21 Simon J. Gerraty <sjg@bad.crufty.net>
50 * boot-strap: add FindHereOrAbove so we can use -m .../mk
52 2010-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
54 * Makefile.in (MAKE_VERSION): bump version to 20100420
55 * Merge with NetBSD make, pick up
56 o fix for variable realpath() behavior.
57 we have to stat(2) the result to be sure.
58 o fix for .export (all) when nested vars use :sh
60 2010-04-14 Simon J. Gerraty <sjg@bad.crufty.net>
62 * Makefile.in (MAKE_VERSION): bump version to 20100414
63 * Merge with NetBSD make, pick up
64 o use realpath to resolve argv[0] (for .MAKE) if needed.
65 o add realpath from libc.
66 o add :tA to resolve variable via realpath(3) if possible.
68 2010-04-08 Simon J. Gerraty <sjg@bad.crufty.net>
70 * Makefile.in (MAKE_VERSION): bump version to 20100408
71 * Merge with NetBSD make, pick up
72 o unit tests for .ERROR, .error
73 o fix for .ERROR to ensure it cannot be default target.
75 2010-04-06 Simon J. Gerraty <sjg@bad.crufty.net>
77 * Makefile.in (MAKE_VERSION): bump version to 20100406
78 * Merge with NetBSD make, pick up
79 o fix for compat mode "Error code" going to debug_file.
80 o fix for .ALLSRC being populated twice.
81 o support for .info, .warning and .error directives
82 o .MAKE.MODE to control make's operational mode
83 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
85 o .MAKE.DEPENDFILE to control the name of the depend file
86 o .ERROR target - run on failure.
88 2010-03-18 Simon J. Gerraty <sjg@bad.crufty.net>
90 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
92 * os.sh,arch.c: patch for Haiku from joerg at netbsd
94 2010-03-17 Simon J. Gerraty <sjg@bad.crufty.net>
96 * Makefile.in (MAKE_VERSION): bump version to 20100222
97 * Merge with NetBSD make, pick up
98 o better error msg for .for with mutiple inter vars
101 o use make-bootstrap.sh from joerg at netbsd
102 to avoid the need for a native make when bootstrapping.
103 o add "" everywhere ;-)
104 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
105 otherwise the pre-formated version.
107 2010-01-04 Simon J. Gerraty <sjg@bad.crufty.net>
109 * Makefile.in (MAKE_VERSION): bump version to 20100102
110 * Merge with NetBSD make, pick up:
113 2009-11-18 Simon J. Gerraty <sjg@void.crufty.net>
115 * Makefile.in (MAKE_VERSION): bump version to 20091118
116 * Merge with NetBSD make, pick up:
118 o report lines that start with '.' and should have ':'
119 (catch typo's of .el*if).
121 2009-10-30 Simon J. Gerraty <sjg@void.crufty.net>
123 * configure.in: Ensure that srcdir and mksrc are absolute paths.
125 2009-10-09 Simon J. Gerraty <sjg@void.crufty.net>
127 * Makefile.in (MAKE_VERSION): fix version to 20091007
129 2009-10-07 Simon J. Gerraty <sjg@void.crufty.net>
131 * Makefile.in (MAKE_VERSION): bump version to 200910007
132 * Merge with NetBSD make, pick up:
133 o fix for parsing of :S;...;...; applied to .for loop iterator
134 appearing in a dependency line.
136 2009-09-09 Simon J. Gerraty <sjg@void.crufty.net>
138 * Makefile.in (MAKE_VERSION): bump version to 20090909
139 * Merge with NetBSD make, pick up:
140 o fix for -C, .CURDIR and .OBJDIR
142 o allow share_dir to be set independent of prefix.
143 o select default share_dir better when prefix ends in $HOST_TARGET
144 o if FORCE_BSD_MK etc were set, include them in the suggested
147 2009-09-08 Simon J. Gerraty <sjg@void.crufty.net>
149 * Makefile.in (MAKE_VERSION): bump version to 20090908
150 * Merge with NetBSD make, pick up:
151 o .MAKE.LEVEL for recursion tracking
152 o fix for :M scanning \:
154 2009-09-03 Simon J. Gerraty <sjg@void.crufty.net>
156 * configure.in: Don't -D__EXTENSIONS__ if
157 AC_USE_SYSTEM_EXTENSIONS says "no".
159 2009-08-26 Simon J. Gerraty <sjg@void.crufty.net>
161 * Makefile.in (MAKE_VERSION): bump version to 20090826
162 Simplify MAKE_VERSION to just the bare date.
163 * Merge with NetBSD make, pick up:
164 o -C directory support.
165 o support for SIGINFO
166 o use $TMPDIR for temp files.
167 o child of vfork should be careful about modifying parent's state.
170 2009-03-26 Simon J. Gerraty <sjg@void.crufty.net>
172 * Appy some patches for MiNT from David Brownlee
174 2009-02-26 Simon J. Gerraty <sjg@void.crufty.net>
176 * Makefile.in (BMAKE_VERSION): bump version to 20090222
177 * Merge with NetBSD make, pick up:
178 o Possible null pointer de-ref in Var_Set.
180 2009-02-08 Simon J. Gerraty <sjg@void.crufty.net>
182 * Makefile.in (BMAKE_VERSION): bump version to 20090204
183 * Merge with NetBSD make, pick up:
184 o bmake_malloc et al moved to their own .c
185 o Count both () and {} when looking for the end of a :M pattern
186 o Change 'Buffer' so that it is the actual struct, not a pointer to it.
187 o strlist.c - functions for processing extendable arrays of pointers to strings.
188 o ClientData replaced with void *, so const void * can be used.
189 o New debug flag C for DEBUG_CWD
191 2008-11-11 Simon J. Gerraty <sjg@void.crufty.net>
193 * Makefile.in (BMAKE_VERSION): bump version to 20081111
194 Apply patch from Joerg Sonnenberge to
196 o remove some redundant checks
197 o check for emlloc etc only in libutil and require the whole family.
199 o remove [v]asprintf which is no longer used.
201 2008-11-04 Simon J. Gerraty <sjg@void.crufty.net>
203 * Makefile.in (BMAKE_VERSION): bump version to 20081101
204 * Merge with NetBSD make, pick up:
205 o util.c: avoid use of putenv() - christos
207 2008-10-30 Simon J. Gerraty <sjg@void.crufty.net>
209 * Makefile.in (BMAKE_VERSION): bump version to 20081030
210 pick up man page tweaks.
212 2008-10-29 Simon J. Gerraty <sjg@void.crufty.net>
214 * Makefile.in: move processing of LIBOBJS to after is definition!
215 thus we'll have getenv.c in SRCS only if needed.
217 * make.1: add examples of how to use :?
219 * Makefile.in (BMAKE_VERSION): bump version to 20081029
220 * Merge with NetBSD make, pick up:
221 o fix for .END processing with -j
222 o segfault from Parse_Error when no makefile is open
223 o handle numeric expressions in any variable expansion
224 o debug output now defaults to stderr, -dF to change it - apb
225 o make now uses bmake_malloc etc so that it can build natively
226 on A/UX - wasn't an issue for bmake, but we want to keep in sync.
228 2008-09-27 Simon J. Gerraty <sjg@void.crufty.net>
230 * Makefile.in (BMAKE_VERSION): bump version to 20080808
231 * Merge with NetBSD make, pick up:
232 o fix for PR/38840: Pierre Pronchery: make crashes while parsing
233 long lines in Makefiles
234 o optimizations for VarQuote by joerg
235 o fix for PR/38756: dominik: make dumps core on invalid makefile
237 2008-05-15 Simon J. Gerraty <sjg@void.crufty.net>
239 * Makefile.in (BMAKE_VERSION): bump version to 20080515
240 * Merge with NetBSD make, pick up:
241 o fix skip setting vars in VAR_GLOBAL context, to handle
242 cases where VAR_CMD is used for other than command line vars.
244 2008-05-14 Simon J. Gerraty <sjg@void.crufty.net>
246 * boot-strap (make_version): we may need to look in
247 $prefix/share/mk for sys.mk
249 * Makefile.in (BMAKE_VERSION): bump version to 20080514
250 * Merge with NetBSD make, pick up:
251 o skip setting vars in VAR_GLOBAL context, when already set in
252 VAR_CMD which takes precedence.
254 2008-03-30 Simon J. Gerraty <sjg@void.crufty.net>
256 * Makefile.in (BMAKE_VERSION): bump version to 20080330
257 * Merge with NetBSD make, pick up:
258 o fix for ?= when LHS contains variable reference.
260 2008-02-15 Simon J. Gerraty <sjg@void.crufty.net>
262 * merge some patches from NetBSD pkgsrc.
264 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
265 the MAKSYSPATH used during bootstrap.
267 * Makefile.in (BMAKE_VERSION): bump version to 20080215
268 * Merge with NetBSD make, pick up:
269 o warn if non-space chars follow 'empty' in a conditional.
271 2008-01-18 Simon J. Gerraty <sjg@void.crufty.net>
273 * Makefile.in (BMAKE_VERSION): bump version to 20080118
274 * Merge with NetBSD make, pick up:
275 o consider dependencies read from .depend as optional - dsl
276 o remember when buffer for reading makefile grows - dsl
277 o add -dl (aka LOUD) - David O'Brien
279 2007-10-22 Simon J. Gerraty <sjg@void.crufty.net>
281 * Makefile.in (BMAKE_VERSION): bump version to 20071022
282 * Merge with NetBSD make, pick up:
283 o Allow .PATH<suffix> to be used for .include ""
285 * boot-strap: source default settings from .bmake-boot-strap.rc
287 2007-10-16 Simon J. Gerraty <sjg@void.crufty.net>
289 * Makefile.in: fix maninstall on various systems
290 provided that our man.mk is used.
291 For non-BSD systems we install the preformatted page
294 2007-10-15 Simon J. Gerraty <sjg@void.crufty.net>
296 * boot-strap: make bmake.1 too, so maninstall works.
298 2007-10-14 Simon J. Gerraty <sjg@void.crufty.net>
300 * Makefile.in (BMAKE_VERSION): bump version to 20071014
301 * Merge with NetBSD make, pick up:
302 o revamped handling of defshell - configure no longer needs to
303 know the content of the shells array - apb
304 o stop Var_Subst modifying its input - apb
305 o avoid calling ParseTrackInput too often - dsl
307 2007-10-11 Simon J. Gerraty <sjg@void.crufty.net>
309 * Makefile.in (BMAKE_VERSION): bump version to 20071011
310 * Merge with NetBSD make, pick up:
311 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
313 * sigcompat.c: some tweaks for HP-UX 11.x based on
314 patch from Tobias Nygren
316 * configure.in: update handling of --with-defshell to match
317 new make behavior. --with-defshell=/usr/xpg4/bin/sh
318 will now do what one might hope - provided the chosen shell
319 behaves enough like sh.
321 2007-10-08 Simon J. Gerraty <sjg@void.crufty.net>
323 * Makefile.in (BMAKE_VERSION): bump to 20071008
324 * Merge with NetBSD make, pick up:
325 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
326 o .export/.MAKE.EXPORTED - export of variables - sjg
327 o .MAKE.MAKEFILES - track all makefiles read - sjg
328 o performance improvements - dsl
329 o revamp parallel job scheduling - dsl
331 2006-07-28 Simon J. Gerraty <sjg@void.crufty.net>
333 * Makefile.in (BMAKE_VERSION): bump to 20060728
334 * Merge with NetBSD make, pick up:
335 o extra debug info during variable and cond processing - sjg
336 o shell definition now covers newline - rillig
337 o minor mem leak in PrintOnError - sjg
339 2006-05-11 Simon J. Gerraty <sjg@void.crufty.net>
341 * Makefile.in (BMAKE_VERSION): bump to 20060511
342 * Merge with NetBSD make, pick up:
343 o more memory leaks - coverity
344 o possible overflow in ArchFindMember - coverity
345 o extract variable modifier code out of Var_Parse()
346 so it can be called recursively - sjg
347 o unit-tests/moderrs - sjg
349 2006-04-12 Simon J. Gerraty <sjg@void.crufty.net>
351 * Makefile.in (BMAKE_VERSION): bump to 20060412
352 * Merge with NetBSD make, pick up:
353 o fixes for some memory leaks - coverity
354 o only read first sys.mk etc when searching sysIncPath - sjg
356 * main.c (ReadMakefile): remove hack for __INTERIX that prevented
357 setting ${MAKEFILE} - OBATA Akio
359 2006-03-18 Simon J. Gerraty <sjg@void.crufty.net>
361 * Makefile.in (BMAKE_VERSION): bump to 20060318
362 * Merge with NetBSD make, pick up:
363 o cleanup of job.c to remove remote handling, distcc is more
364 useful and this code was likely bit-rotting - dsl
365 o fix for :P modifier - sjg
366 * boot-strap: set default prefix to something reasonable
369 2006-03-01 Simon J. Gerraty <sjg@void.crufty.net>
371 * Makefile.in (BMAKE_VERSION): bump to 20060301
372 * Merge with NetBSD make, pick up:
373 o make .WAIT apply recursively, document and test case - apb
374 o allow variable modifiers in a variable appear anywhere in
375 modifier list, document and test case - sjg
377 2006-02-22 Simon J. Gerraty <sjg@void.crufty.net>
379 * Makefile.in (BMAKE_VERSION): bump to 20060222
380 * Merge with NetBSD make, pick up:
381 o improved job token handling - dsl
382 o SIG_DFL the correct signal before exec - dsl
383 o more debug info during parsing - dsl
384 o allow variable modifiers to be specified via variable - sjg
385 * boot-strap: explain why we died if no mksrc
387 2005-11-05 Simon J. Gerraty <sjg@void.crufty.net>
389 * Makefile.in (BMAKE_VERSION): bump to 20051105
390 * configure.in: always set default_sys_path
391 default is ${prefix}/share/mk
392 - remove prefix_sys_path, anyone wanting more than above
393 needs to set it manually.
395 2005-11-04 Simon J. Gerraty <sjg@void.crufty.net>
397 * boot-strap: make this a bit easier for pkgsrc folk.
398 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
399 'mips' while pkgsrc wants 'mipseb' or 'mipsel'
401 2005-11-02 Simon J. Gerraty <sjg@void.crufty.net>
403 * Makefile.in (BMAKE_VERSION): bump to 20051102
404 * job.c (JobFinish): fix likely ancient merge lossage
405 fix from Todd Vierling.
406 * boot-strap (srcdir): allow setting mksrc=none
408 2005-10-31 Simon J. Gerraty <sjg@void.crufty.net>
410 * Makefile.in (BMAKE_VERSION): bump to 20051031
411 * ranlib.h: skip on OSF too.
414 2005-10-10 Simon J. Gerraty <sjg@void.crufty.net>
416 * Makefile.in (BMAKE_VERSION): bump to 20051002
419 2005-10-09 Simon J. Gerraty <sjg@void.crufty.net>
421 * Makefile.in (BMAKE_VERSION): bump to 20051001
422 support for UnixWare and some other systems,
423 based on patches from pkgsrc/bootstrap
425 2005-09-03 Simon J. Gerraty <sjg@void.crufty.net>
427 * Makefile.in (BMAKE_VERSION): bump to 20050901
428 * Merge with NetBSD make, pick up:
429 o possible parse error causing us to wander off.
431 2005-06-06 Simon J. Gerraty <sjg@void.crufty.net>
433 * Makefile.in (BMAKE_VERSION): bump to 20050606
434 * Merge with NetBSD make, pick up:
435 o :0x modifier for randomizing a list
436 o fixes for a number of -Wuninitialized issues.
438 2005-05-30 Simon J. Gerraty <sjg@void.crufty.net>
440 * Makefile.in (BMAKE_VERSION): bump to 20050530
441 * Merge with NetBSD make, pick up:
442 o Handle dependencies for .BEGIN, .END and .INTERRUPT
444 * README: was seriously out of date.
446 2005-03-22 Simon J. Gerraty <sjg@void.crufty.net>
448 * Important to use .MAKE rather than MAKE.
450 2005-03-15 Simon J. Gerraty <sjg@void.crufty.net>
452 * Makefile.in (BMAKE_VERSION): bump to 20050315
453 * Merge with NetBSD make, pick up:
454 o don't mistake .elsefoo for .else
455 o use suffix-specific search path correctly
456 o bunch of style nits
458 2004-05-11 Simon J. Gerraty <sjg@void.crufty.net>
461 o ensure that args to --src and --with-mksrc
462 are resolved before giving them to configure.
463 o add -o "objdir" so that builder can control it,
464 default is $OS as determined by os.sh
465 o add -q to suppress all the install instructions.
467 2004-05-08 Simon J. Gerraty <sjg@void.crufty.net>
469 * Remove __IDSTRING()
471 * Makefile.in (BMAKE_VERSION): bump to 20040508
472 * Merge with NetBSD make, pick up:
474 - remove '-e' from compat mode
475 - add support for '+' command-line prefix.
476 o fix for handling '--' on command-line.
477 o fix include in lst.lib/lstInt.h to simplify '-I's
478 o we also picked up replacement of MAKE_BOOTSTRAP
479 with !MAKE_NATIVE which is a noop, but possibly confusing.
481 2004-04-14 Simon J. Gerraty <sjg@void.crufty.net>
483 * Makefile.in (BMAKE_VERSION): bump to 20040414
484 * Merge with NetBSD make, pick up:
485 o allow quoted strings on lhs of conditionals
486 o issue warning when extra .else is seen
487 o print line numer when errors encountered during parsing from
490 2004-02-20 Simon J. Gerraty <sjg@void.crufty.net>
492 * Makefile.in (BMAKE_VERSION): bump to 20040220
493 * Merge with NetBSD make, pick up:
494 o fix for old :M parsing bug.
495 o re-jigged unit-tests
497 2004-02-15 Simon J. Gerraty <sjg@void.crufty.net>
499 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
500 so that './bmake -f Makefile test' works.
502 2004-02-14 Simon J. Gerraty <sjg@void.crufty.net>
504 * Makefile.in: (BMAKE_VERSION): bump to 20040214
505 * Merge with NetBSD make, pick up:
506 o search upwards for *.mk
507 o fix for double free of var substitution buffers
508 o use of getopt replaced with custom code, since the usage
509 (re-scanning) isn't posix compatible.
511 2004-02-12 Simon J. Gerraty <sjg@void.crufty.net>
513 * arch.c: don't include ranlib.h on ELF systems
514 (thanks to Chuck Cranor <chuck@ece.cmu.edu>).
516 2004-01-18 Simon J. Gerraty <sjg@void.crufty.net>
518 * Makefile.in (BMAKE_VERSION): bump to 20040118
520 * boot-strap (while): export vars we assign to on cmdline
521 * unit-test/Makefile.in: ternary is .PHONY
523 2004-01-08 Simon J. Gerraty <sjg@void.crufty.net>
525 * Makefile.in (BMAKE_VERSION): bump version to 20040108
526 * Merge with NetBSD make, pick up:
527 o fix for ternary modifier
529 2004-01-06 Simon J. Gerraty <sjg@void.crufty.net>
531 * Makefile.in (BMAKE_VERSION): bump version to 20040105
532 * Merge with NetBSD make, pick up:
533 o fix for cond.c to handle compound expressions better
534 o variable expansion within sysV style replacements
536 2003-12-22 Simon J. Gerraty <sjg@void.crufty.net>
538 * Make portable snprintf safer - output to /dev/null first to
541 * Makefile.in (BMAKE_VERSION): bump version to 20031222
542 * Merge with NetBSD make, pick up:
543 o -dg3 to show input graph when things go wrong.
544 o explicitly look for makefiles in objdir if not found in curdir so
545 that errors in .depend etc will be reported accurarely.
546 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
547 instead as it more accurately reflects the expected behavior and
548 is more consistently implemented.
549 o avoid use of asprintf.
551 2003-09-28 Simon J. Gerraty <sjg@void.crufty.net>
553 * util.c: Add asprintf and vasprintf.
555 * Makefile.in (BMAKE_VERSION): bump version to 20030928
556 * Merge with NetBSD make, pick up:
557 :[] modifier - allows picking words from a variable.
558 :tW modifier - allows treating value as one big word.
559 W flag for :C and :S - allows treating value as one big word.
561 2003-09-12 Simon J. Gerraty <sjg@void.crufty.net>
563 * Merge with NetBSD make
564 pick up -de flag to enable printing failed command.
565 don't skip 1st two dir entries (normally . and ..) since
566 coda does not have them.
568 2003-09-09 Simon J. Gerraty <sjg@void.crufty.net>
570 * Makefile.in (BMAKE_VERSION): bump version to 20030909
571 * Merge with NetBSD make, pick up:
572 - changes for -V '${VAR}' to print fully expanded value
574 - CompatRunCommand now prints the command that failed.
575 - several files got updated 3 clause Berkeley license.
577 2003-08-02 Simon J. Gerraty <sjg@void.crufty.net>
579 * boot-strap: Allow setting configure args on command line.
581 2003-07-31 Simon J. Gerraty <sjg@void.crufty.net>
583 * configure.in: add --with-defshell to allow sh or ksh
584 to be selected as default shell.
586 * Makefile.in: bump version to 20030731
588 * Merge with NetBSD make
589 Pick up .SHELL spec for ksh and associate man page changes.
590 Also compat mode now uses the same shell specs.
592 2003-07-29 Simon J. Gerraty <sjg@void.crufty.net>
594 * var.c (Var_Parse): ensure delim is initialized.
596 * unit-tests/Makefile.in: use single quotes to avoid problems from
600 Run the unit-tests as part of the bootstrap procedure.
602 2003-07-28 Simon J. Gerraty <sjg@void.crufty.net>
604 * unit-tests/Makefile.in: always force complaints from
605 ${TEST_MAKE} to be from 'make'.
607 * configure.in: add check for 'diff -u'
608 also fix some old autoconf'isms
610 * Makefile.in (BMAKE_VERSION): bump version to 20030728.
611 if using GCC add -Wno-cast-qual to CFLAGS for var.o
613 * Merge with NetBSD make
614 Pick up fix for :ts parsing error in some cases.
617 2003-07-23 Simon J. Gerraty <sjg@void.crufty.net>
619 * Makefile.in (BMAKE_VERSION): bump version to 20030723.
621 * var.c (Var_Parse): fix bug in :ts modifier, after const
622 correctness fixes, must pass nstr to VarModify.
624 2003-07-14 Simon J. Gerraty <sjg@void.crufty.net>
626 * Makefile.in: BMAKE_VERSION switch to a date based version.
627 We'll generally use the date of last import from NetBSD.
629 * Merge with NetBSD make
630 Pick up fixes for const-correctness, now passes WARNS=3 on
632 Pick up :ts modifier, allows controlling the separator used
633 between words in variable expansion.
635 2003-07-11 Simon J. Gerraty <sjg@void.crufty.net>
637 * FILES: include boot-strap and os.sh
639 * Makefile.in: only set WARNS if we are NetBSD, the effect on
640 FreeBSD is known to be bad.
642 * makefile.boot.in (bootstrap): make this the default target.
644 * Makefile.in: bump version to 3.1.19
646 * machine.sh: avoid A-Z with tr as it is bound to lose.
648 2003-07-10 Simon J. Gerraty <sjg@void.crufty.net>
650 * Merge with NetBSD make
651 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
654 2003-04-27 Simon J. Gerraty <sjg@void.crufty.net>
656 * Merge with NetBSD make
657 Pick up fix for PR/1523 - don't count a library as built, if there
658 is no way to build it
660 * Bump version to 3.1.18
662 2003-03-23 Simon J. Gerraty <sjg@void.crufty.net>
664 * Merge with NetBSD make
665 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
668 2003-03-21 Simon J. Gerraty <sjg@void.crufty.net>
670 * Merge with NetBSD make (mmm 10th anniversary!)
671 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
672 pick up -X which tells us to not export VAR=val via setenv if
673 we are already doing so via MAKEFLAGS. This saves valuable env
674 space on systems like Darwin.
675 set MAKE_VERSION to 3.1.17
677 * parse.c: pix up fix for suffix rules
679 2003-03-06 Simon J. Gerraty <sjg@void.crufty.net>
681 * Merge with NetBSD make.
682 pick up fix for propagating -B via MAKEFLAGS.
683 set MAKE_VERSION to 3.1.16
685 * Apply some patches from pkgsrc-bootstrap/bmake
686 Originally by Grant Beattie <grant@netbsd.org>
687 I may have missed some - since they are based on bmake-3.1.12
689 2002-12-03 Simon J. Gerraty <sjg@void.crufty.net>
691 * makefile.boot.in (bmake): update install targets for those that
692 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
693 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>.
695 * bmake.cat1: update the pre-formatted man page!
697 2002-11-30 Simon J. Gerraty <sjg@void.crufty.net>
699 * Merge with NetBSD make.
700 pick up fix for premature free of pointer used in call
702 set MAKE_VERSION to 3.1.15
704 2002-11-26 Simon J. Gerraty <sjg@void.crufty.net>
706 * configure.in: determine suitable value for MKSRC.
707 override using --with-mksrc=PATH.
709 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
710 configs(8) will use 'sun4' as an alias for 'sparc'.
712 2002-11-25 Simon J. Gerraty <sjg@void.crufty.net>
714 * Merge with NetBSD make.
716 pick up fix for finding ../cat.c via .PATH when .CURDIR=..
717 set MAKE_VERSION to 3.1.14
718 add configure checks for killpg and sys/socket.h
720 2002-09-16 Simon J. Gerraty <sjg@void.crufty.net>
724 * makefile.boot.in (bmake): use install-mk
725 Also setup ./mk before trying to invoke bmake.boot incase we
726 needed install-mk to create a sys.mk for us.
728 * configure.in: If we need to add -I${srcdir}/missing, make it an
729 absolute path so that it works for lst.lib too.
731 * make.h: always include sys/cdefs.h since we provide one if the
734 * Makefile.in (install-mk):
735 use MKSRC/install-mk which will do the right thing.
736 use uname -p for ARCH if possible.
737 since install-mk will setup links bsd.prog.mk -> prog.mk if
738 needed, just .include bsd.prog.mk
740 * Merge with NetBSD make (NetBSD-1.6)
741 Code is ansi-C only now.
742 Bug in handling of dotLast is fixed.
743 Can now assign .OBJDIR and make will reset its notions of life.
744 New modifiers :tu :tl for toUpper and toLower.
746 Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net>
748 * Merge with NetBSD make
749 pick up fix for .END failure in compat mode.
750 pick up fix for extra va_end() in ParseVErrorInternal.
752 Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net>
754 * configure.in: for systems that have sys/cdefs.h check if it is
755 compatible. If not, include the one under missing, but tell it to
756 include the native one too - necessary on Linux.
758 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
759 include_next (for gcc) to get the native sys/cdefs.h
761 Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
763 * job.c (JobFinish): Fix an earlier merge bug that resulted in
764 leaking descriptors when using -jN.
766 * job.c (JobPrintCommand): See if "curdir" exists before
767 attempting to chdir(). Doing the chdir directly in make (when in
768 compat mode) fails silently, so let the -jN version do the same.
769 This can happen when building kernels in an object tree and
770 playing clever games to reset .CURDIR.
772 * Merged with NetBSD make
775 Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
777 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
779 Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
781 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
782 us not to export the iterator variable when using VAR_CMD context.
784 Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
786 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
789 Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
791 * Redesigned export of VAR_CMD's via MAKEFLAGS.
792 We now simply append the variable names to .MAKEOVERRIDES, and
793 handle duplicate suppression and quoting in ExportMAKEFLAGS using:
794 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
795 Apart from fixing quoting bugs in previous version, this allows us
796 to export vars to the environment by simply doing:
797 .MAKEOVERRIDES+= PATH
798 Merged again with NetBSD make, but the above is the only change.
800 * configure.in: added
801 --disable-pwd-override disable $PWD overriding getcwd()
802 --disable-check-make-chdir disable make trying to guess
803 when it should automatically cd ${.CURDIR}
805 * Merge with NetBSD make, changes include:
806 parse.c (ParseDoDependency): Spot that the syntax error is
807 caused by an unresolved cvs/rcs conflict and say so.
808 var.c: most of Var* functions now take a ctxt as 1st arg.
809 now does variable substituion on rhs of sysv style modifiers.
811 * var.c (Var_Set): exporting of command line variables (VAR_CMD)
812 is now done here. We append the name='value' to .MAKEOVERRIDES
813 rather than directly into MAKEFLAGS as this allows a Makefile to
814 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a
815 very similar mechanism. Note that in adding name='value' to
816 .MAKEOVERRIDES we do the moral equivalent of:
817 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
819 Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
821 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
823 * Merged with NetBSD make
824 make -dx can now be used to run commands via sh -x
825 better error messages on exec failures.
827 Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
829 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
830 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION,
831 MACHINE etc otherwise they propagate from the previous bmake.
833 * configure.in (machine): allow --with-machine=generic to make
834 configure use machine.sh to set MACHINE.
836 * job.c (JobInterrupt): convert to using WAIT_T and friends.
838 * Makefile.in: mention in bmake.1 that we use autoconf.
840 * make.1: mention MAKE_PRINT_VAR_ON_ERROR.
842 Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
844 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
845 as that rather defeats the usefulness of ${MAKEFILE}.
847 * main.c (MainParseArgs): append command line variable assignments
848 to MAKEFLAGS so that they get propagated to child make's.
849 Apparently this is required POSIX behaviour? Its useful anyway.
851 Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
853 * compat.c (CompatRunCommand): don't use perror() since stdio may
854 cause problems in child of vfork().
856 * compat.c, main.c: Call PrintOnError() when we are going to bail.
857 This routine prints out the .curdir where we stopped and will also
858 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
860 * main.c: add ${.newline} to hold a "\n" - sometimes handy in
863 * var.c: VarLoopExpand: ignore addSpace if a \n is present.
865 * Added RCSid's for the files we've touched.
867 Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
869 * configure.in: Thanks to some clues from mdb@juniper.net,
870 added autoconf magic to control setting of MACHINE, MACHINE_ARCH
871 as well as what ends up in _PATH_DEFSYSPATH. We now have:
873 --with-machine=MACHINE explicitly set MACHINE
874 --with-force-machine=MACHINE set FORCE_MACHINE
875 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH
876 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH
877 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH
878 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX
880 If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
882 * makefile: added a pathetically simple makefile to drive
883 bootstrapping. Running configure by hand is more useful.
885 * Makefile.in: added MAKE_VERSION, and reworked things to be less
886 dependent on NetBSD bsd.*.mk
888 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
889 _PATH_OBJDIRPREFIX for those that don't want a default.
890 construct _PATH_DEFSYSPATH from the info we get from configure.
892 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
893 if MAKE_VERSION is defined.
895 * compat.c: when we bail, print out the .CURDIR we were in.
897 Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
899 * Merged with NetBSD make
901 * var.c: fixed a bug in the handling of the modifier :P
902 if the node as found but the path was null, we segfault trying to
905 Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
907 * Merged with NetBSD make
909 * make.c: Make_OODate's test for a library out of date was using
910 cmtime where it should have used mtime (my bug).
912 * compat.c: Use perror() to tell us what really went wrong when we
913 cannot exec a command.
915 Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
917 * Merged with NetBSD make
919 Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
921 * Merged with NetBSD make
923 Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
925 * Merged with NetBSD make
927 Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
929 * Merged with NetBSD make
931 Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
933 * util.c: don't provide signal() since we use sigcompat.c
935 * Makefile.in: added a build target.
937 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
938 These allow some quite clever magic.
940 * main.c (main): added support for getenv(MAKESYSPATH).
942 Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
944 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
945 This avoids objdir having a different value depending on how a
946 directory was reached (via command line, or subdir.mk).
948 * If FORCE_MACHINE is defined, ignore getenv("MACHINE").
950 Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
952 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
953 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
954 I've been testing this in NetBSD's make for some weeks.
956 * Turn Makefile into Makefile.in and make it useful.
958 Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
960 * Imported NetBSD's -current make(1) and resolve conflicts.
962 * Applied autoconf patches from bmake v2
964 * Imported clean code base from NetBSD-1.0