12016-08-18 Simon J. Gerraty <sjg@bad.crufty.net> 2 3 * Makefile (_MAKE_VERSION): 20160818 4 its a neater number; pick up whitespace fixes to man page. 5 62016-08-17 Simon J. Gerraty <sjg@bad.crufty.net> 7 8 * Makefile (_MAKE_VERSION): 20160817 9 Merge with NetBSD make, pick up 10 o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore() 11 so we can call it before adding entries to missingFiles. 12 Thus we do not track files we have been told to ignore. 13 142016-08-15 Simon J. Gerraty <sjg@bad.crufty.net> 15 16 * Makefile (_MAKE_VERSION): 20160815 17 Merge with NetBSD make, pick up 18 o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to 19 pathnames, and skip if the expansion is empty. 20 Useful for dirdeps.mk when checking DIRDEPS_CACHE. 21 222016-08-12 Simon J. Gerraty <sjg@bad.crufty.net> 23 24 * Makefile (_MAKE_VERSION): 20160812 25 Merge with NetBSD make, pick up 26 o meta.c: remove all missingFiles entries that match a deleted 27 dir. 28 o main.c: set .ERROR_CMD if possible. 29 302016-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 31 32 * Makefile (_MAKE_VERSION): 20160606 33 Merge with NetBSD make, pick up 34 o dir.c: extend mtimes cache to others via cached_stat() 35 362016-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 37 38 * Makefile (_MAKE_VERSION): 20160604 39 Merge with NetBSD make, pick up 40 o meta.c: missing filemon data is only relevant if we read a 41 meta file. 42 Also do not return oodate for a missing metafile if gn->path 43 points to .CURDIR 44 452016-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 46 47 * Makefile (_MAKE_VERSION): 20160602 48 Merge with NetBSD make, pick up 49 o cached_realpath(): avoid hitting filesystem more than necessary. 50 o meta.c: refactor need_meta decision, add knobs for 51 missing meta file and filemon data wrt out-of-datedness. 52 532016-05-28 Simon J. Gerraty <sjg@bad.crufty.net> 54 55 * Makefile (_MAKE_VERSION): 20160528 56 57 * boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION 58 592016-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 60 61 * Makefile (_MAKE_VERSION): 20160512 62 Merge with NetBSD make, pick up 63 o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS 64 this is useful for gcov builds. 65 o propagate errors from filemon(4). 66 672016-05-09 Simon J. Gerraty <sjg@bad.crufty.net> 68 69 * Makefile (_MAKE_VERSION): 20160509 70 Merge with NetBSD make, pick up 71 o remove use of non-standard types u_int etc. 72 o meta.c: apply realpath() before matching against metaIgnorePaths 73 742016-04-04 Simon J. Gerraty <sjg@bad.crufty.net> 75 76 * Makefile (_MAKE_VERSION): 20160404 77 Merge with NetBSD make, pick up 78 o allow makefile to set .MAKE.JOBS 79 80 * Makefile (PROG_NAME): use ${_MAKE_VERSION} 81 822016-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 83 84 * Makefile (_MAKE_VERSION): 20160315 85 Merge with NetBSD make, pick up 86 o fix handling of archive members 87 882016-03-13 Simon J. Gerraty <sjg@bad.crufty.net> 89 90 * Makefile (_MAKE_VERSION): rename variable to avoid interference 91 with checks for ${MAKE_VERSION} 92 932016-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 94 95 * Makefile (MAKE_VERSION): 20160310 96 Merge with NetBSD make, pick up 97 o meta.c: treat missing Read file same as Write, incase we Delete it. 98 992016-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 100 101 * Makefile (MAKE_VERSION): 20160307 102 Merge with NetBSD make, pick up 103 o var.c: fix :ts\nnn to be octal by default. 104 o meta.c: meta_finish() to cleanup memory. 105 1062016-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 107 108 * Makefile (MAKE_VERSION): 20160226 109 Merge with NetBSD make, pick up 110 o meta.c: allow meta file for makeDepend if makefiles want it. 111 1122016-02-19 Simon J. Gerraty <sjg@bad.crufty.net> 113 114 * var.c: default .MAKE.SAVE_DOLLARS to FALSE 115 for backwards compatability. 116 117 * Makefile (MAKE_VERSION): 20160220 118 Merge with NetBSD make, pick up 119 o var.c: add knob to control handling of '$$' in := 120 1212016-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 122 123 * Makefile (MAKE_VERSION): 20160218 124 Merge with NetBSD make, pick up 125 o var.c: add .export-literal allows us to fix sys.clean-env.mk 126 post the changes to Var_Subst. 127 Var_Subst now takes flags, and does not consume '$$' in := 128 1292016-02-17 Simon J. Gerraty <sjg@bad.crufty.net> 130 131 * Makefile (MAKE_VERSION): 20160217 132 Merge with NetBSD make, pick up 133 o var.c: preserve '$$' in := 134 o parse.c: add .dinclude for handling included 135 makefile like .depend 136 1372015-12-20 Simon J. Gerraty <sjg@bad.crufty.net> 138 139 * Makefile (MAKE_VERSION): 20151220 140 Merge with NetBSD make, pick up 141 o suff.c: re-initialize suffNull when clearing suffixes. 142 1432015-12-01 Simon J. Gerraty <sjg@bad.crufty.net> 144 145 * Makefile (MAKE_VERSION): 20151201 146 Merge with NetBSD make, pick up 147 o cond.c: CondCvtArg: avoid access beyond end of empty buffer. 148 o meta.c: meta_oodate: use lstat(2) for checking link target 149 in case it is a symlink. 150 o var.c: avoid calling brk_string and Var_Export1 with empty 151 strings. 152 1532015-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 154 155 * Makefile (MAKE_VERSION): 20151126 156 Merge with NetBSD make, pick up 157 o parse.c: ParseTrackInput don't access beyond 158 end of old value. 159 1602015-10-22 Simon J. Gerraty <sjg@bad.crufty.net> 161 162 * Makefile (MAKE_VERSION): 20151022 163 164 * Add support for BSD/OS which lacks inttypes.h 165 and really needs sys/param.h for sys/sysctl.h 166 also 'type' is not a shell builtin. 167 168 * var.c: eliminate uint32_t and need for inttypes.h 169 170 * main.c: PrintOnError flush stdout before run .ERROR 171 172 * parse.c: cope with _SC_PAGESIZE not being defined. 173 174 1752015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 176 177 * Makefile (MAKE_VERSION): 20151020 178 Merge with NetBSD make, pick up 179 o var.c: fix uninitialized var 180 1812015-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 182 183 * var.c: the conditional expressions used with ':?' can be 184 expensive, if already discarding do not evaluate or expand 185 anything. 186 1872015-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 188 189 * Makefile (MAKE_VERSION): 20151010 190 Merge with NetBSD make, pick up 191 o Add Boolean wantit flag to Var_Subst and Var_Parse 192 when FALSE we know we are discarding the result and can 193 skip operations like Cmd_Exec. 194 1952015-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 196 197 * Makefile (MAKE_VERSION): 20151009 198 Merge with NetBSD make, pick up 199 o var.c: don't check for NULL before free() 200 o meta.c: meta_oodate, do not hard code ignore of makeDependfile 201 2022015-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 203 204 * Makefile (MAKE_VERSION): 20150910 205 Merge with NetBSD make, pick up 206 o main.c: with -w print Enter/Leaving messages for objdir too 207 if necessary. 208 o centralize shell metachar handling 209 210 * FILES: add metachar.[ch] 211 2122015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 213 214 * Makefile (MAKE_VERSION): 20150606 215 Merge with NetBSD make, pick up 216 o make.1: document .OBJDIR target 217 2182015-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 219 220 * Makefile (MAKE_VERSION): 20150505 221 Merge with NetBSD make, pick up 222 o cond.c: be strict about lhs of comparison when evaluating .if 223 but less so when called from variable expansion. 224 o unit-tests/cond2.mk: test various error conditions 225 2262015-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 227 228 * machine.sh (MACHINE): Add Bitrig 229 patch from joerg@netbsd.org 230 2312015-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 232 233 * Makefile (MAKE_VERSION): 20150418 234 Merge with NetBSD make, pick up 235 o job.c: use memmove() rather than memcpy() 236 237 * unit-tests/varshell.mk: SunOS cannot handle the TERMINATED_BY_SIGNAL 238 case, so skip it. 239 2402015-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 241 242 * Makefile (MAKE_VERSION): 20150411 243 bump version - only mk/ changes. 244 2452015-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 246 247 * Makefile (MAKE_VERSION): 20150410 248 Merge with NetBSD make, pick up 249 o document different handling of '-' in jobs mode vs compat 250 o fix jobs mode so that '-' only applies to whole job 251 when shell lacks hasErrCtl 252 o meta.c: use separate vars to track lcwd and latestdir (read) 253 per process 254 2552015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 256 257 * Makefile (MAKE_VERSION): 20150401 258 Merge with NetBSD make, pick up 259 o meta.c: close meta file in child 260 261 * Makefile: use BINDIR.bmake if set. 262 Same for MANDIR and SHAREDIR 263 Handy for testing release candidates 264 in various environments. 265 2662015-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 267 268 * move initialization of savederr to block where it is used 269 to avoid spurious warning from gcc5 270 2712014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 272 273 * Makefile (MAKE_VERSION): 20141111 274 just a cooler number 275 2762014-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 277 278 * Makefile (MAKE_VERSION): 20141105 279 Merge with NetBSD make, pick up 280 o revert major overhaul of suffix handling 281 and POSIX compliance - too much breakage 282 and impossible to make backwards compatible. 283 o we still have the new unit test structure which is ok. 284 o meta.c ensure "-- filemon" is at start of line. 285 2862014-09-17 Simon J. Gerraty <sjg@bad.crufty.net> 287 288 * configure.in: test that result of getconf PATH_MAX is numeric 289 and discard if not. Apparently needed for Hurd. 290 2912014-08-30 Simon J. Gerraty <sjg@bad.crufty.net> 292 293 * Makefile (MAKE_VERSION): 20140830 294 Merge with NetBSD make, pick up 295 o major overhaul of suffix handling 296 o improved POSIX compliance 297 o overhauled unit-tests 298 2992014-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 300 301 * Makefile (MAKE_VERSION): 20140620 302 Merge with NetBSD make, pick up 303 o var.c return varNoError rather than var_Error for ::= modifiers. 304 3052014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 306 307 * Makefile (MAKE_VERSION): 20140522 308 Merge with NetBSD make, pick up 309 o var.c detect some parse errors. 310 3112014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 312 313 * Fix spelling errors - patch from Pedro Giffuni 314 3152014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 316 317 * Makefile (MAKE_VERSION): 20140214 318 Merge with NetBSD make, pick up 319 o .INCLUDEFROM* 320 o use Var_Value to get MAKEOBJDIR[PREFIX] 321 o reduced realloc'ign in brk_string. 322 * configure.in: add a check for compiler supporting __func__ 323 3242014-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 325 326 * boot-strap: ignore mksrc=none 327 3282014-01-02 Simon J. Gerraty <sjg@bad.crufty.net> 329 330 * Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk 331 3322014-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 333 334 * Makefile (MAKE_VERSION): 20140101 335 * configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024) 336 * Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max 337 * make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for 338 Hurd) 339 * configure.in: Add AC_PREREQ and check for 340 sysctl; patch from Andrew Shadura andrewsh at debian.org 341 3422013-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 343 344 * Makefile (MAKE_VERSION): 20131010 345 * lose the const from arg to systcl to avoid problems on older BSDs. 346 3472013-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 348 349 * Makefile (MAKE_VERSION): 20131001 350 Merge with NetBSD make, pick up 351 o main.c: for NATIVE build sysctl to get MACHINE_ARCH from 352 hw.machine_arch if necessary. 353 o meta.c: meta_oodate - need to look at src of Link and target 354 of Move as well. 355 * main.c: check that CTL_HW and HW_MACHINE_ARCH exist. 356 provide __arraycount() if needed. 357 3582013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 359 360 * Makefile (MAKE_VERSION): 20130904 361 Merge with NetBSD make, pick up 362 o Add VAR_INTERNAL context, so that internal setting of 363 MAKEFILE does not override value set by makefiles. 364 3652013-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 366 367 * Makefile (MAKE_VERSION): 20130902 368 Merge with NetBSD make, pick up 369 o CompatRunCommand: only apply shellErrFlag when errCheck is true 370 3712013-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 372 373 * Makefile (MAKE_VERSION): 20130828 374 Merge with NetBSD make, pick up 375 o Fix VAR :sh = syntax from Will Andrews at freebsd.org 376 o Call Job_SetPrefix() from Job_Init() so makefiles have 377 opportunity to set .MAKE.JOB.PREFIX 378 3792013-07-30 Simon J. Gerraty <sjg@bad.crufty.net> 380 381 * Makefile (MAKE_VERSION): 20130730 382 Merge with NetBSD make, pick up 383 o Allow suppression of --- job -- tokens by setting 384 .MAKE.JOB.PREFIX empty. 385 3862013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 387 388 * Makefile (MAKE_VERSION): 20130716 389 Merge with NetBSD make, pick up 390 o number of gmake compatibility tweaks 391 -w for gmake style entering/leaving messages 392 if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc. 393 handle MAKEFLAGS containing only letters. 394 o when overriding a GLOBAL variable on the command line, 395 delete it from GLOBAL context so -V doesn't show the wrong 396 value. 397 3982013-07-06 Simon J. Gerraty <sjg@bad.crufty.net> 399 400 * configure.in: We don't need MAKE_LEVEL_SAFE anymore. 401 402 * Makefile (MAKE_VERSION): 20130706 403 Merge with NetBSD make, pick up 404 o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is 405 true so that CompatRunCommand() can use it, to ensure 406 consistent behavior with jobs mode. 407 o use MAKE_LEVEL_ENV to define the variable to propagate 408 .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake). 409 o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of 410 paths to ignore. 411 4122013-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 413 414 * Makefile (MAKE_VERSION): 20130604 415 Merge with NetBSD make, pick up 416 o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's 417 to avoid leaking descriptors. 418 4192013-05-28 Simon J. Gerraty <sjg@bad.crufty.net> 420 421 * Makefile (MAKE_VERSION): 20130528 422 Merge with NetBSD make, pick up 423 o var.c: cleanup some left-overs in VarHash() 424 4252013-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 426 427 * Makefile (MAKE_VERSION): 20130520 428 generate manifest from component FILES rather than have to 429 update FILES when mk/FILES changes. 430 4312013-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 432 433 * Makefile (MAKE_VERSION): 20130518 434 Merge with NetBSD make, pick up 435 o suff.c: don't skip all processsing for .PHONY targets 436 else wildcard srcs do not get expanded. 437 o var.c: expand name of variable to delete if necessary. 438 4392013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 440 441 * Makefile (MAKE_VERSION): 20130330 442 Merge with NetBSD make, pick up 443 o meta.c: refine the handling of .OODATE in commands. 444 Rather than suppress command comparison for the entire script 445 as though .NOMETA_CMP had been used, only suppress it for the 446 one command line. 447 This allows something like ${.OODATE:M.NOMETA_CMP} to be used to 448 suppress comparison of a command without otherwise affecting it. 449 o make.1: document that 450 4512013-03-22 Simon J. Gerraty <sjg@bad.crufty.net> 452 453 * Makefile (MAKE_VERSION): 20130321 454 yes, not quite right but its a cooler number. 455 Merge with NetBSD make, pick up 456 o parse.c: fix ParseGmakeExport to be portable 457 and add a unit-test. 458 * meta.c: call meta_init() before makefiles are read and if built 459 with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON 460 this let's makefiles test for support. 461 Call meta_mode_init() to process .MAKE.MODE. 462 4632013-03-13 Simon J. Gerraty <sjg@bad.crufty.net> 464 465 * Makefile (MAKE_VERSION): 20130305 466 Merge with NetBSD make, pick up 467 o run .STALE: target when a dependency from .depend is missing. 468 o job.c: add Job_RunTarget() for the above and .BEGIN 469 4702013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 471 472 * Makefile (MAKE_VERSION): 20130303 473 Merge with NetBSD make, pick up 474 o main.c: set .MAKE.OS to utsname.sysname 475 o job.c: more checks for read and poll errors 476 o var.c: lose VarChangeCase() saves 4% time 477 4782013-03-02 Simon J. Gerraty <sjg@bad.crufty.net> 479 480 * boot-strap: remove MAKEOBJDIRPREFIX from environment since we 481 want to use MAKEOBJDIR 482 4832013-01-27 Simon J. Gerraty <sjg@bad.crufty.net> 484 485 * Merge with NetBSD make, pick up 486 o make.1: more info on how shell commands are handled. 487 o job.c,main.c: detect write errors to job pipes. 488 4892013-01-25 Simon J. Gerraty <sjg@bad.crufty.net> 490 491 * Makefile (MAKE_VERSION): 20130123 492 Merge with NetBSD make, pick up 493 o meta.c: if script uses .OODATE and meta_oodate() decides 494 rebuild is needed, .OODATE will be empty - set it to .ALLSRC. 495 o var.c: in debug output indicate which variabale modifiers 496 apply to. 497 o remove Check_Cwd logic the makefiles have been fixed. 498 4992012-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 500 501 * makefile.in: add a simple makefile for folk who insist on 502 ./configure; make; make install 503 it just runs boot-strap 504 * include mk/* to accommodate the above 505 * boot-strap: re-work to accommodate the above 506 mksrc defaults to $Mydir/mk 507 allow op={configure,build,install,clean,all} 508 add options to facilitate install 509 * Makefile.config.in: just the bits set by configure 510 * Makefile: bump version to 20121212 511 abandon Makefile.in (NetBSD Makefile) 512 leverage mk/* instead 513 * configure.in: ensure srcdir is absolute 514 5152012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 516 517 * Makefile.in (MAKE_VERSION): 20121111 518 fix generation of bmake.cat1 519 5202012-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 521 522 * Makefile.in (MAKE_VERSION): 20121109 523 Merge with NetBSD make, pick up 524 o make.c: MakeBuildChild: return 0 so search continues if a 525 .ORDER dependency is detected. 526 o unit-tests/order: test the above 527 5282012-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 529 530 * Makefile.in (MAKE_VERSION): 20121102 531 Merge with NetBSD make, pick up 532 o cond.c: allow cond_state[] to grow. 533 In meta mode with a very large tree, we can hit the limit 534 while processing dirdeps. 535 5362012-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 537 538 * Makefile.in: we need to use ${srcdir} not ${.CURDIR} 539 5402012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 541 542 * Makefile.in (MAKE_VERSION): 20121010 543 o protect syntax that only bmake parses correctly. 544 o remove auto setting of FORCE_MACHINE, use configure's 545 --with-force-machine=whatever if that is desired. 546 5472012-10-08 Simon J. Gerraty <sjg@bad.crufty.net> 548 549 * Makefile.in: do not lose history from make.1 when generating bmake.1 550 5512012-10-07 Simon J. Gerraty <sjg@bad.crufty.net> 552 553 * Makefile.in (MAKE_VERSION): 20121007 554 Merge with NetBSD make, pick up 555 o compat.c: ignore empty commands - same as jobs mode. 556 o make.1: document meta chars that cause use of shell 557 5582012-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 559 560 * Makefile.in (MAKE_VERSION): bump version to 20120911 561 * bsd.after-import.mk: include Makefile.inc early and allow it to 562 override PROG 563 5642012-08-31 Simon J. Gerraty <sjg@bad.crufty.net> 565 566 * Makefile.in (MAKE_VERSION): bump version to 20120831 567 Merge with NetBSD make, pick up 568 o cast sizeof() to int for comparison 569 o minor make.1 tweak 570 5712012-08-30 Simon J. Gerraty <sjg@bad.crufty.net> 572 573 * Makefile.in (MAKE_VERSION): bump version to 20120830 574 Merge with NetBSD make, pick up 575 o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V 576 o debug flag -dV causes -V to show raw value regardless. 577 5782012-07-05 Simon J. Gerraty <sjg@bad.crufty.net> 579 580 * bsd.after-import.mk (after-import): ensure unit-tests/Makefile 581 gets SRCTOP set. 582 5832012-07-04 Simon J. Gerraty <sjg@bad.crufty.net> 584 585 * Makefile.in (MAKE_VERSION): bump version to 20120704 586 Merge with NetBSD make, pick up 587 o Job_ParseShell should call Shell_Init if it has been 588 previously called. 589 * Makefile.in: set USE_META based on configure result. 590 also .PARSEDIR is safer indicator of bmake. 591 5922012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 593 594 * Makefile.in: bump version to 20120626 595 ensure CPPFLAGS is in CFLAGS 596 * meta.c: avoid nested externs 597 * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target 598 5992012-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 600 601 * Makefile.in (MAKE_VERSION): bump version to 20120620 602 Merge with NetBSD make, pick up 603 o make_malloc.c: avoid including make_malloc.h again 604 605 * Makefile.in: avoid bmake only syntax or protect with 606 .if defined(.MAKE.LEVEL) 607 * bsd.after-import.mk: replace .-include with .sinclude 608 ensure? SRCTOP gets a value 609 * configure.in: look for filemon.h in /usr/include/dev/filemon first. 610 6112012-06-19 Simon J. Gerraty <sjg@bad.crufty.net> 612 613 * Makefile.in (MAKE_VERSION): bump version to 20120612 614 Merge with NetBSD make, pick up 615 o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler 616 for greater portability. 617 o unit-tests/forloop: check that .for works as expected wrt 618 number of times and with "quoted strings". 619 6202012-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 621 622 * Makefile.in (MAKE_VERSION): bump version to 20120606 623 Merge with NetBSD make, pick up 624 o compat.c: use kill(2) rather than raise(3). 625 * configure.in: look for sys/dev/filemon 626 * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile 627 and pass BOOTSTRAP_XTRAS to boot-strap. 628 6292012-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 630 631 * Makefile.in (MAKE_VERSION): bump version to 20120604 632 Merge with NetBSD make, pick up 633 o util.c and var.c share same var for tracking if environ 634 has been reallocated. 635 o util.c provide getenv with setenv. 636 * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL 637 when the shell actively strips .MAKE.* from the environment. 638 We still refer to the variable always as .MAKE.LEVEL 639 * util.c fix bug in findenv() was finding prefix of name. 640 * compat.c: re-raising SIGINT etc after running .INTERRUPT 641 results in more reliable termination of all activity on many 642 platforms. 643 6442012-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 645 646 * Makefile.in (MAKE_VERSION): bump version to 20120602 647 Merge with NetBSD make, pick up 648 o for.c: handle quoted items in .for list 649 6502012-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 651 652 * Makefile.in (MAKE_VERSION): bump version to 20120530 653 Merge with NetBSD make, pick up 654 o compat.c: ignore empty command. 655 6562012-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 657 658 * Makefile.in (MAKE_VERSION): bump version to 20120524 659 * FILES: add bsd.after-import.mk: 660 A simple means of integrating bmake into a BSD build system. 661 6622012-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 663 664 * Makefile.in (MAKE_VERSION): bump version to 20120520 665 Merge with NetBSD make, pick up 666 o increased limit for nested conditionals. 667 6682012-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 669 670 * Makefile.in (MAKE_VERSION): bump version to 20120518 671 Merge with NetBSD make, pick up 672 o use _exit(2) in signal hanlder 673 o Don't use the [dir] cache when building nodes that might have 674 changed since the last exec. 675 o Avoid nested extern declaration warnings. 676 6772012-04-27 Simon J. Gerraty <sjg@bad.crufty.net> 678 679 * meta.c (fgetLine): avoid %z - not portable. 680 * parse.c: Since we moved include of sys/mman.h 681 and def's of MAP_COPY etc. we got dups from a merge. 682 6832012-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 684 685 * Makefile.in (MAKE_VERSION): bump version to 20120420 686 Merge with NetBSD make, pick up 687 o restore duplicate supression in .MAKE.MAKEFILES 688 runtime saving can be significant. 689 o Var_Subst() uses Buf_DestroyCompact() to reduce memory 690 consumption up to 20%. 691 6922012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 693 694 * Makefile.in (MAKE_VERSION): bump version to 20120420 695 Merge with NetBSD make, pick up 696 o remove duplicate supression in .MAKE.MAKEFILES 697 o improved dir cache behavior 698 o gmake'ish export command 699 7002012-03-25 Simon J. Gerraty <sjg@bad.crufty.net> 701 702 * Makefile.in (MAKE_VERSION): bump version to 20120325 703 Merge with NetBSD make, pick up 704 o fix parsing of :[#] in conditionals. 705 7062012-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 707 708 * Makefile.in: replace use of .Nx in bmake.1 with NetBSD 709 since some systems cannot cope with .Nx <version> 710 7112011-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 712 713 * Makefile.in (MAKE_VERSION): bump version to 20111111 714 Merge with NetBSD make, pick up 715 o debug output for .PARSEDIR and .PARSEFILE 716 7172011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 718 719 * Makefile.in (MAKE_VERSION): bump version to 20111010 720 7212011-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 722 723 * boot-strap: check for an expected file in the dirs we look for. 724 * make-bootstrap.sh: pass on LDSTATIC 725 7262011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 727 728 * Makefile.in (MAKE_VERSION): bump version to 20111001 729 Merge with NetBSD make, pick up 730 o ensure .PREFIX is set for .PHONY 731 and .TARGET set for .PHONY run via .END 732 o __dead used consistently 733 7342011-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 735 736 * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-) 737 7382011-09-05 Simon J. Gerraty <sjg@bad.crufty.net> 739 740 * Makefile.in (MAKE_VERSION): bump version to 20110905 741 Merge with NetBSD make, pick up 742 o meta_oodate: ignore makeDependfile 743 7442011-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 745 746 * Makefile.in (MAKE_VERSION): bump version to 20110828 747 Merge with NetBSD make, pick up 748 o silent=yes in .MAKE.MODE causes meta mode to mark targets 749 as SILENT if a .meta file is created 750 7512011-08-18 Simon J. Gerraty <sjg@bad.crufty.net> 752 753 * Makefile.in (MAKE_VERSION): bump version to 20110818 754 Merge with NetBSD make, pick up 755 o in meta mode, if target flagged .META a missing .meta file 756 means target is out-of-date 757 o fixes for gcc 4.5 warnings 758 o simplify job printing code 759 7602011-08-09 Simon J. Gerraty <sjg@bad.crufty.net> 761 762 * Makefile.in (MAKE_VERSION): bump version to 20110808 763 Merge with NetBSD make, pick up 764 o do not touch OP_SPECIAL targets when doing make -t 765 7662011-06-22 Simon J. Gerraty <sjg@bad.crufty.net> 767 768 * Makefile.in (MAKE_VERSION): bump version to 20110622 769 Merge with NetBSD make, pick up 770 o meta_oodate detect corrupted .meta file and declare oodate. 771 * configure.in: add check for setsid 772 7732011-06-07 Simon J. Gerraty <sjg@bad.crufty.net> 774 775 * Merge with NetBSD make, pick up 776 o unit-tests/modts now works on MirBSD 777 7782011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 779 780 * Makefile.in (MAKE_VERSION): bump version to 20110606 781 Merge with NetBSD make, pick up 782 o ApplyModifiers: when we parse a variable which is not 783 the entire modifier string, or not followed by ':', do not 784 consider it as containing modifiers. 785 o loadfile: ensure newline at end of mapped file. 786 7872011-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 788 789 * Makefile.in (MAKE_VERSION): bump version to 20110505 790 Merge with NetBSD make, pick up 791 o .MAKE.META.BAILIWICK - list of prefixes which define the scope 792 of make's control. In meta mode, any generated file within 793 said bailiwick, which is found to be missing, causes current 794 target to be out-of-date. 795 7962011-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 797 798 * Makefile.in (MAKE_VERSION): bump version to 20110411 799 Merge with NetBSD make, pick up 800 o when long modifiers fail to match, check sysV style. 801 - add a test case 802 8032011-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 804 805 * Makefile.in (MAKE_VERSION): bump version to 20110410 806 Merge with NetBSD make, pick up 807 o :hash - cheap 32bit hash of value 808 o :localtime, :gmtime - use value as format string for strftime. 809 8102011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 811 812 * Makefile.in (MAKE_VERSION): bump version to 20110330 813 mostly because its a cooler version. 814 Merge with NetBSD make, pick up 815 o NetBSD tags for meta.[ch] 816 o job.c call meta_job_finish() after meta_job_error(). 817 o meta_job_error() should call meta_job_finish() to ensure 818 .meta file is closed, and safe to copy - if .ERROR target wants. 819 meta_job_finish() is safe to call repeatedly. 820 8212011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 822 823 * unit-tests/modts: use printf if it is a builtin, 824 to save us from MirBSD 825 826 * Makefile.in (MAKE_VERSION): bump version to 20110329 827 Merge with NetBSD make, pick up 828 o fix for use after free() in CondDoExists(). 829 o meta_oodate() report extra commands and return earlier. 830 8312011-03-27 Simon J. Gerraty <sjg@bad.crufty.net> 832 833 * Makefile.in (MAKE_VERSION): bump version to 20110327 834 Merge with NetBSD make, pick up 835 o meta.c, if .MAKE.MODE contains curdirOk=yes 836 allow creating .meta files in .CURDIR 837 * boot-strap (TOOL_DIFF): aparently at least on linux distro 838 formats the output of 'type' differently - so eat any "()" 839 8402011-03-06 Simon J. Gerraty <sjg@bad.crufty.net> 841 842 * Makefile.in (MAKE_VERSION): bump version to 20110306 843 Merge with NetBSD make, pick up 844 o meta.c, only do getcwd() once 845 8462011-03-05 Simon J. Gerraty <sjg@bad.crufty.net> 847 848 * Makefile.in (MAKE_VERSION): bump version to 20110305 849 Merge with NetBSD make, pick up 850 o correct sysV substitution handling of empty lhs and variable 851 o correct exists() check for dir with trailing / 852 o correct handling of modifiers for non-existant variables 853 during evaluation of conditionals. 854 o ensure MAP_FILE is defined. 855 o meta.c use curdir[] now exported by main.c 856 8572011-02-25 Simon J. Gerraty <sjg@bad.crufty.net> 858 859 * Makefile.in (MAKE_VERSION): bump version to 20110225 860 Merge with NetBSD make, pick up 861 o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after 862 makefiles have been read. 863 o fix example of :? modifier in man page. 864 8652011-02-13 Simon J. Gerraty <sjg@bad.crufty.net> 866 867 * Makefile.in (MAKE_VERSION): bump version to 20110214 868 Merge with NetBSD make, pick up 869 o meta.c handle realpath() failing when generating meta file 870 name. 871 872 * sigcompat.c: convert to ansi so we can use higher warning levels. 873 874 8752011-02-07 Simon J. Gerraty <sjg@bad.crufty.net> 876 877 * Makefile.in (MAKE_VERSION): bump version to 20110207 878 Merge with NetBSD make, pick up 879 o fix for bug in meta mode. 880 8812011-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 882 883 * parse.c: SunOS 5.8 at least does not have MAP_FILE 884 8852011-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 886 887 * Makefile.in (MAKE_VERSION): bump version to 20110101 888 Merge with NetBSD make, pick up 889 o use mmap(2) if available, for reading makefiles 890 8912010-12-15 Simon J. Gerraty <sjg@bad.crufty.net> 892 893 * Makefile.in (MAKE_VERSION): bump version to 20101215 894 Merge with NetBSD make, pick up 895 o ensure meta_job_error() does not report a previous .meta file 896 as being culprit. 897 8982010-12-10 Simon J. Gerraty <sjg@bad.crufty.net> 899 900 * Makefile.in (MAKE_VERSION): bump version to 20101210 901 Merge with NetBSD make, pick up 902 o meta_oodate: track cwd per process, and only consider target 903 out-of-date if missing file is outside make's CWD. 904 Ignore files in /tmp/ etc. 905 o to ensure unit-tests results match, need to control LC_ALL 906 as well as LANG. 907 o fix for parsing bug in var.c 908 9092010-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 910 911 * Makefile.in (MAKE_VERSION): bump version to 20101126 912 Merge with NetBSD make, pick up 913 o if stale dependency is an IMPSRC, search via .PATH 914 o meta_oodate: if a referenced file is missing, target is 915 out-of-date. 916 o meta_oodate: if a target uses .OODATE in its commands, 917 it (.OODATE) needs to be recomputed. 918 o keep a pointer to youngest child node, rather than just its 919 mtime. 920 9212010-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 922 923 * Makefile.in (MAKE_VERSION): bump version to 20101101 924 9252010-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 926 927 * machine.sh: like os.sh, 928 allow for uname -p producing useless drivel 929 9302010-09-13 Simon J. Gerraty <sjg@bad.crufty.net> 931 932 * boot-strap: document configure knobs for meta and filemon. 933 934 * Makefile.in (MAKE_VERSION): bump version to 20100911 935 Merge with NetBSD make, pick up 936 o meta.c - meta mode 937 938 * make-bootstrap.sh.in: handle meta.c 939 * configure.in: add knobs for use_meta and filemon_h 940 also, look for dirname, str[e]sep and strlcpy 941 * util.c: add simple err[x] and warn[x] 942 9432010-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 944 945 * boot-strap (TOOL_DIFF): set this to ensure tests use 946 the same version of diff that configure tested 947 948 * Makefile.in (MAKE_VERSION): bump version to 20100808 949 Merge with NetBSD make, pick up 950 o in jobs mode, when we discover we cannot make something, 951 call PrintOnError before exit. 952 9532010-08-06 Simon J. Gerraty <sjg@bad.crufty.net> 954 955 * Makefile.in (MAKE_VERSION): bump version to 20100806 956 Merge with NetBSD make, pick up 957 o formatting fixes for ignored errors 958 o ensure jobs are cleaned up regardless of where wait() was called. 959 9602010-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 961 962 * Makefile.in (MAKE_VERSION): bump version to 20100618 963 * os.sh (MACHINE_ARCH): watch out for drivel from uname -p 964 9652010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 966 967 * Makefile.in (MAKE_VERSION): bump version to 20100616 968 Merge with NetBSD make, pick up 969 o man page update 970 o call PrintOnError from JobFinish when we detect an error we 971 are not ignoring. 972 9732010-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 974 975 * Makefile.in (MAKE_VERSION): bump version to 20100606 976 Merge with NetBSD make, pick up 977 o man page update 978 9792010-06-05 Simon J. Gerraty <sjg@bad.crufty.net> 980 981 * Makefile.in (MAKE_VERSION): bump version to 20100605 982 Merge with NetBSD make, pick up 983 o use bmake_signal() which is a wrapper around sigaction() 984 in place of signal() 985 o add .export-env to allow exporting variables to environment 986 without tracking (so no re-export when the internal value is 987 changed). 988 9892010-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 990 991 * Makefile.in (MAKE_VERSION): bump version to 20100524 992 Merge with NetBSD make, pick up 993 o fix for .info et al being greedy. 994 9952010-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 996 997 * Makefile.in (MAKE_VERSION): bump version to 20100520 998 Merge with NetBSD make, pick up 999 o back to using realpath on argv[0] 1000 but only if contains '/' and does not start with '/'. 1001 10022010-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 1003 1004 * boot-strap: use absolute path for bmake when running tests. 1005 1006 * Makefile.in (MAKE_VERSION): bump version to 20100510 1007 Merge with NetBSD make, pick up 1008 o revert use of realpath on argv[0] 1009 too many corner cases. 1010 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target. 1011 10122010-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 1013 1014 * Makefile.in (MAKE_VERSION): bump version to 20100505 1015 Merge with NetBSD make, pick up 1016 o fix for missed SIGCHLD when compiled with SunPRO 1017 actually for bmake, defining FORCE_POSIX_SIGNALS would have 1018 done the job. 1019 10202010-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 1021 1022 * Makefile.in (MAKE_VERSION): bump version to 20100430 1023 Merge with NetBSD make, pick up 1024 o fflush stdout before writing to stdout 1025 10262010-04-23 Simon J. Gerraty <sjg@bad.crufty.net> 1027 1028 * Makefile.in (MAKE_VERSION): bump version to 20100423 1029 Merge with NetBSD make, pick up 1030 o updated unit tests for Haiku (this time for sure). 1031 * boot-strap: based on patch from joerg 1032 honor --with-default-sys-path better. 1033 * boot-strap: remove mention of --with-prefix-sys-path 1034 10352010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 1036 1037 * Makefile.in (MAKE_VERSION): bump version to 20100422 1038 * Merge with NetBSD make, pick up 1039 o fix for vfork() on Darwin. 1040 o fix for bogus $TMPDIR. 1041 o set .MAKE.MODE=compat for -B 1042 o set .MAKE.JOBS=max_jobs for -j max_jobs 1043 o allow unit-tests to run without any *.mk 1044 o unit-tests/modmisc be more conservative in dirs presumed to exist. 1045 * boot-strap: ignore /usr/share/mk except on NetBSD. 1046 * unit-tests/Makefile.in: set LANG=C when running unit-tests to 1047 ensure sort(1) behaves as expected. 1048 10492010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 1050 1051 * boot-strap: add FindHereOrAbove so we can use -m .../mk 1052 10532010-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 1054 1055 * Makefile.in (MAKE_VERSION): bump version to 20100420 1056 * Merge with NetBSD make, pick up 1057 o fix for variable realpath() behavior. 1058 we have to stat(2) the result to be sure. 1059 o fix for .export (all) when nested vars use :sh 1060 10612010-04-14 Simon J. Gerraty <sjg@bad.crufty.net> 1062 1063 * Makefile.in (MAKE_VERSION): bump version to 20100414 1064 * Merge with NetBSD make, pick up 1065 o use realpath to resolve argv[0] (for .MAKE) if needed. 1066 o add realpath from libc. 1067 o add :tA to resolve variable via realpath(3) if possible. 1068 10692010-04-08 Simon J. Gerraty <sjg@bad.crufty.net> 1070 1071 * Makefile.in (MAKE_VERSION): bump version to 20100408 1072 * Merge with NetBSD make, pick up 1073 o unit tests for .ERROR, .error 1074 o fix for .ERROR to ensure it cannot be default target. 1075 10762010-04-06 Simon J. Gerraty <sjg@bad.crufty.net> 1077 1078 * Makefile.in (MAKE_VERSION): bump version to 20100406 1079 * Merge with NetBSD make, pick up 1080 o fix for compat mode "Error code" going to debug_file. 1081 o fix for .ALLSRC being populated twice. 1082 o support for .info, .warning and .error directives 1083 o .MAKE.MODE to control make's operational mode 1084 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile 1085 name(s). 1086 o .MAKE.DEPENDFILE to control the name of the depend file 1087 o .ERROR target - run on failure. 1088 10892010-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 1090 1091 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile 1092 1093 * os.sh,arch.c: patch for Haiku from joerg at netbsd 1094 10952010-03-17 Simon J. Gerraty <sjg@bad.crufty.net> 1096 1097 * Makefile.in (MAKE_VERSION): bump version to 20100222 1098 * Merge with NetBSD make, pick up 1099 o better error msg for .for with mutiple inter vars 1100 1101 * boot-strap: 1102 o use make-bootstrap.sh from joerg at netbsd 1103 to avoid the need for a native make when bootstrapping. 1104 o add "" everywhere ;-) 1105 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1 1106 otherwise the pre-formated version. 1107 11082010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 1109 1110 * Makefile.in (MAKE_VERSION): bump version to 20100102 1111 * Merge with NetBSD make, pick up: 1112 o fix for -m .../ 1113 11142009-11-18 Simon J. Gerraty <sjg@void.crufty.net> 1115 1116 * Makefile.in (MAKE_VERSION): bump version to 20091118 1117 * Merge with NetBSD make, pick up: 1118 o .unexport 1119 o report lines that start with '.' and should have ':' 1120 (catch typo's of .el*if). 1121 11222009-10-30 Simon J. Gerraty <sjg@void.crufty.net> 1123 1124 * configure.in: Ensure that srcdir and mksrc are absolute paths. 1125 11262009-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1127 1128 * Makefile.in (MAKE_VERSION): fix version to 20091007 1129 11302009-10-07 Simon J. Gerraty <sjg@void.crufty.net> 1131 1132 * Makefile.in (MAKE_VERSION): bump version to 200910007 1133 * Merge with NetBSD make, pick up: 1134 o fix for parsing of :S;...;...; applied to .for loop iterator 1135 appearing in a dependency line. 1136 11372009-09-09 Simon J. Gerraty <sjg@void.crufty.net> 1138 1139 * Makefile.in (MAKE_VERSION): bump version to 20090909 1140 * Merge with NetBSD make, pick up: 1141 o fix for -C, .CURDIR and .OBJDIR 1142 * boot-strap: 1143 o allow share_dir to be set independent of prefix. 1144 o select default share_dir better when prefix ends in $HOST_TARGET 1145 o if FORCE_BSD_MK etc were set, include them in the suggested 1146 install-mk command. 1147 11482009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 1149 1150 * Makefile.in (MAKE_VERSION): bump version to 20090908 1151 * Merge with NetBSD make, pick up: 1152 o .MAKE.LEVEL for recursion tracking 1153 o fix for :M scanning \: 1154 11552009-09-03 Simon J. Gerraty <sjg@void.crufty.net> 1156 1157 * configure.in: Don't -D__EXTENSIONS__ if 1158 AC_USE_SYSTEM_EXTENSIONS says "no". 1159 11602009-08-26 Simon J. Gerraty <sjg@void.crufty.net> 1161 1162 * Makefile.in (MAKE_VERSION): bump version to 20090826 1163 Simplify MAKE_VERSION to just the bare date. 1164 * Merge with NetBSD make, pick up: 1165 o -C directory support. 1166 o support for SIGINFO 1167 o use $TMPDIR for temp files. 1168 o child of vfork should be careful about modifying parent's state. 1169 1170 11712009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 1172 1173 * Appy some patches for MiNT from David Brownlee 1174 11752009-02-26 Simon J. Gerraty <sjg@void.crufty.net> 1176 1177 * Makefile.in (BMAKE_VERSION): bump version to 20090222 1178 * Merge with NetBSD make, pick up: 1179 o Possible null pointer de-ref in Var_Set. 1180 11812009-02-08 Simon J. Gerraty <sjg@void.crufty.net> 1182 1183 * Makefile.in (BMAKE_VERSION): bump version to 20090204 1184 * Merge with NetBSD make, pick up: 1185 o bmake_malloc et al moved to their own .c 1186 o Count both () and {} when looking for the end of a :M pattern 1187 o Change 'Buffer' so that it is the actual struct, not a pointer to it. 1188 o strlist.c - functions for processing extendable arrays of pointers to strings. 1189 o ClientData replaced with void *, so const void * can be used. 1190 o New debug flag C for DEBUG_CWD 1191 11922008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 1193 1194 * Makefile.in (BMAKE_VERSION): bump version to 20081111 1195 Apply patch from Joerg Sonnenberge to 1196 configure.in: 1197 o remove some redundant checks 1198 o check for emlloc etc only in libutil and require the whole family. 1199 util.c: 1200 o remove [v]asprintf which is no longer used. 1201 12022008-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1203 1204 * Makefile.in (BMAKE_VERSION): bump version to 20081101 1205 * Merge with NetBSD make, pick up: 1206 o util.c: avoid use of putenv() - christos 1207 12082008-10-30 Simon J. Gerraty <sjg@void.crufty.net> 1209 1210 * Makefile.in (BMAKE_VERSION): bump version to 20081030 1211 pick up man page tweaks. 1212 12132008-10-29 Simon J. Gerraty <sjg@void.crufty.net> 1214 1215 * Makefile.in: move processing of LIBOBJS to after is definition! 1216 thus we'll have getenv.c in SRCS only if needed. 1217 1218 * make.1: add examples of how to use :? 1219 1220 * Makefile.in (BMAKE_VERSION): bump version to 20081029 1221 * Merge with NetBSD make, pick up: 1222 o fix for .END processing with -j 1223 o segfault from Parse_Error when no makefile is open 1224 o handle numeric expressions in any variable expansion 1225 o debug output now defaults to stderr, -dF to change it - apb 1226 o make now uses bmake_malloc etc so that it can build natively 1227 on A/UX - wasn't an issue for bmake, but we want to keep in sync. 1228 12292008-09-27 Simon J. Gerraty <sjg@void.crufty.net> 1230 1231 * Makefile.in (BMAKE_VERSION): bump version to 20080808 1232 * Merge with NetBSD make, pick up: 1233 o fix for PR/38840: Pierre Pronchery: make crashes while parsing 1234 long lines in Makefiles 1235 o optimizations for VarQuote by joerg 1236 o fix for PR/38756: dominik: make dumps core on invalid makefile 1237 12382008-05-15 Simon J. Gerraty <sjg@void.crufty.net> 1239 1240 * Makefile.in (BMAKE_VERSION): bump version to 20080515 1241 * Merge with NetBSD make, pick up: 1242 o fix skip setting vars in VAR_GLOBAL context, to handle 1243 cases where VAR_CMD is used for other than command line vars. 1244 12452008-05-14 Simon J. Gerraty <sjg@void.crufty.net> 1246 1247 * boot-strap (make_version): we may need to look in 1248 $prefix/share/mk for sys.mk 1249 1250 * Makefile.in (BMAKE_VERSION): bump version to 20080514 1251 * Merge with NetBSD make, pick up: 1252 o skip setting vars in VAR_GLOBAL context, when already set in 1253 VAR_CMD which takes precedence. 1254 12552008-03-30 Simon J. Gerraty <sjg@void.crufty.net> 1256 1257 * Makefile.in (BMAKE_VERSION): bump version to 20080330 1258 * Merge with NetBSD make, pick up: 1259 o fix for ?= when LHS contains variable reference. 1260 12612008-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1262 1263 * merge some patches from NetBSD pkgsrc. 1264 1265 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of 1266 the MAKSYSPATH used during bootstrap. 1267 1268 * Makefile.in (BMAKE_VERSION): bump version to 20080215 1269 * Merge with NetBSD make, pick up: 1270 o warn if non-space chars follow 'empty' in a conditional. 1271 12722008-01-18 Simon J. Gerraty <sjg@void.crufty.net> 1273 1274 * Makefile.in (BMAKE_VERSION): bump version to 20080118 1275 * Merge with NetBSD make, pick up: 1276 o consider dependencies read from .depend as optional - dsl 1277 o remember when buffer for reading makefile grows - dsl 1278 o add -dl (aka LOUD) - David O'Brien 1279 12802007-10-22 Simon J. Gerraty <sjg@void.crufty.net> 1281 1282 * Makefile.in (BMAKE_VERSION): bump version to 20071022 1283 * Merge with NetBSD make, pick up: 1284 o Allow .PATH<suffix> to be used for .include "" 1285 1286 * boot-strap: source default settings from .bmake-boot-strap.rc 1287 12882007-10-16 Simon J. Gerraty <sjg@void.crufty.net> 1289 1290 * Makefile.in: fix maninstall on various systems 1291 provided that our man.mk is used. 1292 For non-BSD systems we install the preformatted page 1293 into $MANDIR/cat1 1294 12952007-10-15 Simon J. Gerraty <sjg@void.crufty.net> 1296 1297 * boot-strap: make bmake.1 too, so maninstall works. 1298 12992007-10-14 Simon J. Gerraty <sjg@void.crufty.net> 1300 1301 * Makefile.in (BMAKE_VERSION): bump version to 20071014 1302 * Merge with NetBSD make, pick up: 1303 o revamped handling of defshell - configure no longer needs to 1304 know the content of the shells array - apb 1305 o stop Var_Subst modifying its input - apb 1306 o avoid calling ParseTrackInput too often - dsl 1307 13082007-10-11 Simon J. Gerraty <sjg@void.crufty.net> 1309 1310 * Makefile.in (BMAKE_VERSION): bump version to 20071011 1311 * Merge with NetBSD make, pick up: 1312 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path. 1313 1314 * sigcompat.c: some tweaks for HP-UX 11.x based on 1315 patch from Tobias Nygren 1316 1317 * configure.in: update handling of --with-defshell to match 1318 new make behavior. --with-defshell=/usr/xpg4/bin/sh 1319 will now do what one might hope - provided the chosen shell 1320 behaves enough like sh. 1321 13222007-10-08 Simon J. Gerraty <sjg@void.crufty.net> 1323 1324 * Makefile.in (BMAKE_VERSION): bump to 20071008 1325 * Merge with NetBSD make, pick up: 1326 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg 1327 o .export/.MAKE.EXPORTED - export of variables - sjg 1328 o .MAKE.MAKEFILES - track all makefiles read - sjg 1329 o performance improvements - dsl 1330 o revamp parallel job scheduling - dsl 1331 13322006-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1333 1334 * Makefile.in (BMAKE_VERSION): bump to 20060728 1335 * Merge with NetBSD make, pick up: 1336 o extra debug info during variable and cond processing - sjg 1337 o shell definition now covers newline - rillig 1338 o minor mem leak in PrintOnError - sjg 1339 13402006-05-11 Simon J. Gerraty <sjg@void.crufty.net> 1341 1342 * Makefile.in (BMAKE_VERSION): bump to 20060511 1343 * Merge with NetBSD make, pick up: 1344 o more memory leaks - coverity 1345 o possible overflow in ArchFindMember - coverity 1346 o extract variable modifier code out of Var_Parse() 1347 so it can be called recursively - sjg 1348 o unit-tests/moderrs - sjg 1349 13502006-04-12 Simon J. Gerraty <sjg@void.crufty.net> 1351 1352 * Makefile.in (BMAKE_VERSION): bump to 20060412 1353 * Merge with NetBSD make, pick up: 1354 o fixes for some memory leaks - coverity 1355 o only read first sys.mk etc when searching sysIncPath - sjg 1356 1357 * main.c (ReadMakefile): remove hack for __INTERIX that prevented 1358 setting ${MAKEFILE} - OBATA Akio 1359 13602006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 1361 1362 * Makefile.in (BMAKE_VERSION): bump to 20060318 1363 * Merge with NetBSD make, pick up: 1364 o cleanup of job.c to remove remote handling, distcc is more 1365 useful and this code was likely bit-rotting - dsl 1366 o fix for :P modifier - sjg 1367 * boot-strap: set default prefix to something reasonable 1368 (for me anyway). 1369 13702006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 1371 1372 * Makefile.in (BMAKE_VERSION): bump to 20060301 1373 * Merge with NetBSD make, pick up: 1374 o make .WAIT apply recursively, document and test case - apb 1375 o allow variable modifiers in a variable appear anywhere in 1376 modifier list, document and test case - sjg 1377 13782006-02-22 Simon J. Gerraty <sjg@void.crufty.net> 1379 1380 * Makefile.in (BMAKE_VERSION): bump to 20060222 1381 * Merge with NetBSD make, pick up: 1382 o improved job token handling - dsl 1383 o SIG_DFL the correct signal before exec - dsl 1384 o more debug info during parsing - dsl 1385 o allow variable modifiers to be specified via variable - sjg 1386 * boot-strap: explain why we died if no mksrc 1387 13882005-11-05 Simon J. Gerraty <sjg@void.crufty.net> 1389 1390 * Makefile.in (BMAKE_VERSION): bump to 20051105 1391 * configure.in: always set default_sys_path 1392 default is ${prefix}/share/mk 1393 - remove prefix_sys_path, anyone wanting more than above 1394 needs to set it manually. 1395 13962005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1397 1398 * boot-strap: make this a bit easier for pkgsrc folk. 1399 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to 1400 'mips' while pkgsrc wants 'mipseb' or 'mipsel' 1401 14022005-11-02 Simon J. Gerraty <sjg@void.crufty.net> 1403 1404 * Makefile.in (BMAKE_VERSION): bump to 20051102 1405 * job.c (JobFinish): fix likely ancient merge lossage 1406 fix from Todd Vierling. 1407 * boot-strap (srcdir): allow setting mksrc=none 1408 14092005-10-31 Simon J. Gerraty <sjg@void.crufty.net> 1410 1411 * Makefile.in (BMAKE_VERSION): bump to 20051031 1412 * ranlib.h: skip on OSF too. 1413 (NetBSD PR 31864) 1414 14152005-10-10 Simon J. Gerraty <sjg@void.crufty.net> 1416 1417 * Makefile.in (BMAKE_VERSION): bump to 20051002 1418 fix a silly typo 1419 14202005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1421 1422 * Makefile.in (BMAKE_VERSION): bump to 20051001 1423 support for UnixWare and some other systems, 1424 based on patches from pkgsrc/bootstrap 1425 14262005-09-03 Simon J. Gerraty <sjg@void.crufty.net> 1427 1428 * Makefile.in (BMAKE_VERSION): bump to 20050901 1429 * Merge with NetBSD make, pick up: 1430 o possible parse error causing us to wander off. 1431 14322005-06-06 Simon J. Gerraty <sjg@void.crufty.net> 1433 1434 * Makefile.in (BMAKE_VERSION): bump to 20050606 1435 * Merge with NetBSD make, pick up: 1436 o :0x modifier for randomizing a list 1437 o fixes for a number of -Wuninitialized issues. 1438 14392005-05-30 Simon J. Gerraty <sjg@void.crufty.net> 1440 1441 * Makefile.in (BMAKE_VERSION): bump to 20050530 1442 * Merge with NetBSD make, pick up: 1443 o Handle dependencies for .BEGIN, .END and .INTERRUPT 1444 1445 * README: was seriously out of date. 1446 14472005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 1448 1449 * Important to use .MAKE rather than MAKE. 1450 14512005-03-15 Simon J. Gerraty <sjg@void.crufty.net> 1452 1453 * Makefile.in (BMAKE_VERSION): bump to 20050315 1454 * Merge with NetBSD make, pick up: 1455 o don't mistake .elsefoo for .else 1456 o use suffix-specific search path correctly 1457 o bunch of style nits 1458 14592004-05-11 Simon J. Gerraty <sjg@void.crufty.net> 1460 1461 * boot-strap: 1462 o ensure that args to --src and --with-mksrc 1463 are resolved before giving them to configure. 1464 o add -o "objdir" so that builder can control it, 1465 default is $OS as determined by os.sh 1466 o add -q to suppress all the install instructions. 1467 14682004-05-08 Simon J. Gerraty <sjg@void.crufty.net> 1469 1470 * Remove __IDSTRING() 1471 1472 * Makefile.in (BMAKE_VERSION): bump to 20040508 1473 * Merge with NetBSD make, pick up: 1474 o posix fixes 1475 - remove '-e' from compat mode 1476 - add support for '+' command-line prefix. 1477 o fix for handling '--' on command-line. 1478 o fix include in lst.lib/lstInt.h to simplify '-I's 1479 o we also picked up replacement of MAKE_BOOTSTRAP 1480 with !MAKE_NATIVE which is a noop, but possibly confusing. 1481 14822004-04-14 Simon J. Gerraty <sjg@void.crufty.net> 1483 1484 * Makefile.in (BMAKE_VERSION): bump to 20040414 1485 * Merge with NetBSD make, pick up: 1486 o allow quoted strings on lhs of conditionals 1487 o issue warning when extra .else is seen 1488 o print line numer when errors encountered during parsing from 1489 string. 1490 14912004-02-20 Simon J. Gerraty <sjg@void.crufty.net> 1492 1493 * Makefile.in (BMAKE_VERSION): bump to 20040220 1494 * Merge with NetBSD make, pick up: 1495 o fix for old :M parsing bug. 1496 o re-jigged unit-tests 1497 14982004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1499 1500 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,} 1501 so that './bmake -f Makefile test' works. 1502 15032004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 1504 1505 * Makefile.in: (BMAKE_VERSION): bump to 20040214 1506 * Merge with NetBSD make, pick up: 1507 o search upwards for *.mk 1508 o fix for double free of var substitution buffers 1509 o use of getopt replaced with custom code, since the usage 1510 (re-scanning) isn't posix compatible. 1511 15122004-02-12 Simon J. Gerraty <sjg@void.crufty.net> 1513 1514 * arch.c: don't include ranlib.h on ELF systems 1515 (thanks to Chuck Cranor <chuck@ece.cmu.edu>). 1516 15172004-01-18 Simon J. Gerraty <sjg@void.crufty.net> 1518 1519 * Makefile.in (BMAKE_VERSION): bump to 20040118 1520 1521 * boot-strap (while): export vars we assign to on cmdline 1522 * unit-test/Makefile.in: ternary is .PHONY 1523 15242004-01-08 Simon J. Gerraty <sjg@void.crufty.net> 1525 1526 * Makefile.in (BMAKE_VERSION): bump version to 20040108 1527 * Merge with NetBSD make, pick up: 1528 o fix for ternary modifier 1529 15302004-01-06 Simon J. Gerraty <sjg@void.crufty.net> 1531 1532 * Makefile.in (BMAKE_VERSION): bump version to 20040105 1533 * Merge with NetBSD make, pick up: 1534 o fix for cond.c to handle compound expressions better 1535 o variable expansion within sysV style replacements 1536 15372003-12-22 Simon J. Gerraty <sjg@void.crufty.net> 1538 1539 * Make portable snprintf safer - output to /dev/null first to 1540 check space needed. 1541 1542 * Makefile.in (BMAKE_VERSION): bump version to 20031222 1543 * Merge with NetBSD make, pick up: 1544 o -dg3 to show input graph when things go wrong. 1545 o explicitly look for makefiles in objdir if not found in curdir so 1546 that errors in .depend etc will be reported accurarely. 1547 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?' 1548 instead as it more accurately reflects the expected behavior and 1549 is more consistently implemented. 1550 o avoid use of asprintf. 1551 15522003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 1553 1554 * util.c: Add asprintf and vasprintf. 1555 1556 * Makefile.in (BMAKE_VERSION): bump version to 20030928 1557 * Merge with NetBSD make, pick up: 1558 :[] modifier - allows picking words from a variable. 1559 :tW modifier - allows treating value as one big word. 1560 W flag for :C and :S - allows treating value as one big word. 1561 15622003-09-12 Simon J. Gerraty <sjg@void.crufty.net> 1563 1564 * Merge with NetBSD make 1565 pick up -de flag to enable printing failed command. 1566 don't skip 1st two dir entries (normally . and ..) since 1567 coda does not have them. 1568 15692003-09-09 Simon J. Gerraty <sjg@void.crufty.net> 1570 1571 * Makefile.in (BMAKE_VERSION): bump version to 20030909 1572 * Merge with NetBSD make, pick up: 1573 - changes for -V '${VAR}' to print fully expanded value 1574 cf. -V VAR 1575 - CompatRunCommand now prints the command that failed. 1576 - several files got updated 3 clause Berkeley license. 1577 15782003-08-02 Simon J. Gerraty <sjg@void.crufty.net> 1579 1580 * boot-strap: Allow setting configure args on command line. 1581 15822003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 1583 1584 * configure.in: add --with-defshell to allow sh or ksh 1585 to be selected as default shell. 1586 1587 * Makefile.in: bump version to 20030731 1588 1589 * Merge with NetBSD make 1590 Pick up .SHELL spec for ksh and associate man page changes. 1591 Also compat mode now uses the same shell specs. 1592 15932003-07-29 Simon J. Gerraty <sjg@void.crufty.net> 1594 1595 * var.c (Var_Parse): ensure delim is initialized. 1596 1597 * unit-tests/Makefile.in: use single quotes to avoid problems from 1598 some shells. 1599 1600 * makefile.boot.in: 1601 Run the unit-tests as part of the bootstrap procedure. 1602 16032003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1604 1605 * unit-tests/Makefile.in: always force complaints from 1606 ${TEST_MAKE} to be from 'make'. 1607 1608 * configure.in: add check for 'diff -u' 1609 also fix some old autoconf'isms 1610 1611 * Makefile.in (BMAKE_VERSION): bump version to 20030728. 1612 if using GCC add -Wno-cast-qual to CFLAGS for var.o 1613 1614 * Merge with NetBSD make 1615 Pick up fix for :ts parsing error in some cases. 1616 Pick unit-tests. 1617 16182003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1619 1620 * Makefile.in (BMAKE_VERSION): bump version to 20030723. 1621 1622 * var.c (Var_Parse): fix bug in :ts modifier, after const 1623 correctness fixes, must pass nstr to VarModify. 1624 16252003-07-14 Simon J. Gerraty <sjg@void.crufty.net> 1626 1627 * Makefile.in: BMAKE_VERSION switch to a date based version. 1628 We'll generally use the date of last import from NetBSD. 1629 1630 * Merge with NetBSD make 1631 Pick up fixes for const-correctness, now passes WARNS=3 on 1632 NetBSD. 1633 Pick up :ts modifier, allows controlling the separator used 1634 between words in variable expansion. 1635 16362003-07-11 Simon J. Gerraty <sjg@void.crufty.net> 1637 1638 * FILES: include boot-strap and os.sh 1639 1640 * Makefile.in: only set WARNS if we are NetBSD, the effect on 1641 FreeBSD is known to be bad. 1642 1643 * makefile.boot.in (bootstrap): make this the default target. 1644 1645 * Makefile.in: bump version to 3.1.19 1646 1647 * machine.sh: avoid A-Z with tr as it is bound to lose. 1648 16492003-07-10 Simon J. Gerraty <sjg@void.crufty.net> 1650 1651 * Merge with NetBSD make 1652 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo 1653 Plus some doc fixes. 1654 16552003-04-27 Simon J. Gerraty <sjg@void.crufty.net> 1656 1657 * Merge with NetBSD make 1658 Pick up fix for PR/1523 - don't count a library as built, if there 1659 is no way to build it 1660 1661 * Bump version to 3.1.18 1662 16632003-03-23 Simon J. Gerraty <sjg@void.crufty.net> 1664 1665 * Merge with NetBSD make 1666 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT 1667 appears in src list. 1668 16692003-03-21 Simon J. Gerraty <sjg@void.crufty.net> 1670 1671 * Merge with NetBSD make (mmm 10th anniversary!) 1672 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828) 1673 pick up -X which tells us to not export VAR=val via setenv if 1674 we are already doing so via MAKEFLAGS. This saves valuable env 1675 space on systems like Darwin. 1676 set MAKE_VERSION to 3.1.17 1677 1678 * parse.c: pix up fix for suffix rules 1679 16802003-03-06 Simon J. Gerraty <sjg@void.crufty.net> 1681 1682 * Merge with NetBSD make. 1683 pick up fix for propagating -B via MAKEFLAGS. 1684 set MAKE_VERSION to 3.1.16 1685 1686 * Apply some patches from pkgsrc-bootstrap/bmake 1687 Originally by Grant Beattie <grant@netbsd.org> 1688 I may have missed some - since they are based on bmake-3.1.12 1689 16902002-12-03 Simon J. Gerraty <sjg@void.crufty.net> 1691 1692 * makefile.boot.in (bmake): update install targets for those that 1693 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid 1694 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>. 1695 1696 * bmake.cat1: update the pre-formatted man page! 1697 16982002-11-30 Simon J. Gerraty <sjg@void.crufty.net> 1699 1700 * Merge with NetBSD make. 1701 pick up fix for premature free of pointer used in call 1702 to Dir_InitCur(). 1703 set MAKE_VERSION to 3.1.15 1704 17052002-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1706 1707 * configure.in: determine suitable value for MKSRC. 1708 override using --with-mksrc=PATH. 1709 1710 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems. 1711 configs(8) will use 'sun4' as an alias for 'sparc'. 1712 17132002-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1714 1715 * Merge with NetBSD make. 1716 pick up ${.PATH} 1717 pick up fix for finding ../cat.c via .PATH when .CURDIR=.. 1718 set MAKE_VERSION to 3.1.14 1719 add configure checks for killpg and sys/socket.h 1720 17212002-09-16 Simon J. Gerraty <sjg@void.crufty.net> 1722 1723 * tag bmake-3-1-13 1724 1725 * makefile.boot.in (bmake): use install-mk 1726 Also setup ./mk before trying to invoke bmake.boot incase we 1727 needed install-mk to create a sys.mk for us. 1728 1729 * configure.in: If we need to add -I${srcdir}/missing, make it an 1730 absolute path so that it works for lst.lib too. 1731 1732 * make.h: always include sys/cdefs.h since we provide one if the 1733 host does not. 1734 1735 * Makefile.in (install-mk): 1736 use MKSRC/install-mk which will do the right thing. 1737 use uname -p for ARCH if possible. 1738 since install-mk will setup links bsd.prog.mk -> prog.mk if 1739 needed, just .include bsd.prog.mk 1740 1741 * Merge with NetBSD make (NetBSD-1.6) 1742 Code is ansi-C only now. 1743 Bug in handling of dotLast is fixed. 1744 Can now assign .OBJDIR and make will reset its notions of life. 1745 New modifiers :tu :tl for toUpper and toLower. 1746 1747Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1748 1749 * Merge with NetBSD make 1750 pick up fix for .END failure in compat mode. 1751 pick up fix for extra va_end() in ParseVErrorInternal. 1752 1753Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1754 1755 * configure.in: for systems that have sys/cdefs.h check if it is 1756 compatible. If not, include the one under missing, but tell it to 1757 include the native one too - necessary on Linux. 1758 1759 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use 1760 include_next (for gcc) to get the native sys/cdefs.h 1761 1762Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1763 1764 * job.c (JobFinish): Fix an earlier merge bug that resulted in 1765 leaking descriptors when using -jN. 1766 1767 * job.c (JobPrintCommand): See if "curdir" exists before 1768 attempting to chdir(). Doing the chdir directly in make (when in 1769 compat mode) fails silently, so let the -jN version do the same. 1770 This can happen when building kernels in an object tree and 1771 playing clever games to reset .CURDIR. 1772 1773 * Merged with NetBSD make 1774 pick up .USEBEFORE 1775 1776Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1777 1778 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work. 1779 1780Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1781 1782 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell 1783 us not to export the iterator variable when using VAR_CMD context. 1784 1785Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1786 1787 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here, 1788 its the wrong "fix". 1789 1790Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1791 1792 * Redesigned export of VAR_CMD's via MAKEFLAGS. 1793 We now simply append the variable names to .MAKEOVERRIDES, and 1794 handle duplicate suppression and quoting in ExportMAKEFLAGS using: 1795 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@} 1796 Apart from fixing quoting bugs in previous version, this allows us 1797 to export vars to the environment by simply doing: 1798 .MAKEOVERRIDES+= PATH 1799 Merged again with NetBSD make, but the above is the only change. 1800 1801 * configure.in: added 1802 --disable-pwd-override disable $PWD overriding getcwd() 1803 --disable-check-make-chdir disable make trying to guess 1804 when it should automatically cd ${.CURDIR} 1805 1806 * Merge with NetBSD make, changes include: 1807 parse.c (ParseDoDependency): Spot that the syntax error is 1808 caused by an unresolved cvs/rcs conflict and say so. 1809 var.c: most of Var* functions now take a ctxt as 1st arg. 1810 now does variable substituion on rhs of sysv style modifiers. 1811 1812 * var.c (Var_Set): exporting of command line variables (VAR_CMD) 1813 is now done here. We append the name='value' to .MAKEOVERRIDES 1814 rather than directly into MAKEFLAGS as this allows a Makefile to 1815 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a 1816 very similar mechanism. Note that in adding name='value' to 1817 .MAKEOVERRIDES we do the moral equivalent of: 1818 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val' 1819 1820Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1821 1822 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H 1823 1824 * Merged with NetBSD make 1825 make -dx can now be used to run commands via sh -x 1826 better error messages on exec failures. 1827 1828Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1829 1830 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that 1831 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION, 1832 MACHINE etc otherwise they propagate from the previous bmake. 1833 1834 * configure.in (machine): allow --with-machine=generic to make 1835 configure use machine.sh to set MACHINE. 1836 1837 * job.c (JobInterrupt): convert to using WAIT_T and friends. 1838 1839 * Makefile.in: mention in bmake.1 that we use autoconf. 1840 1841 * make.1: mention MAKE_PRINT_VAR_ON_ERROR. 1842 1843Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1844 1845 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend" 1846 as that rather defeats the usefulness of ${MAKEFILE}. 1847 1848 * main.c (MainParseArgs): append command line variable assignments 1849 to MAKEFLAGS so that they get propagated to child make's. 1850 Apparently this is required POSIX behaviour? Its useful anyway. 1851 1852Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1853 1854 * compat.c (CompatRunCommand): don't use perror() since stdio may 1855 cause problems in child of vfork(). 1856 1857 * compat.c, main.c: Call PrintOnError() when we are going to bail. 1858 This routine prints out the .curdir where we stopped and will also 1859 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}. 1860 1861 * main.c: add ${.newline} to hold a "\n" - sometimes handy in 1862 :@ expansion. 1863 1864 * var.c: VarLoopExpand: ignore addSpace if a \n is present. 1865 1866 * Added RCSid's for the files we've touched. 1867 1868Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1869 1870 * configure.in: Thanks to some clues from mdb@juniper.net, 1871 added autoconf magic to control setting of MACHINE, MACHINE_ARCH 1872 as well as what ends up in _PATH_DEFSYSPATH. We now have: 1873 1874 --with-machine=MACHINE explicitly set MACHINE 1875 --with-force-machine=MACHINE set FORCE_MACHINE 1876 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH 1877 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH 1878 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH 1879 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX 1880 1881 If _PATH_OBJDIRPREFIX is set to "no" we won't define it. 1882 1883 * makefile: added a pathetically simple makefile to drive 1884 bootstrapping. Running configure by hand is more useful. 1885 1886 * Makefile.in: added MAKE_VERSION, and reworked things to be less 1887 dependent on NetBSD bsd.*.mk 1888 1889 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining 1890 _PATH_OBJDIRPREFIX for those that don't want a default. 1891 construct _PATH_DEFSYSPATH from the info we get from configure. 1892 1893 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION} 1894 if MAKE_VERSION is defined. 1895 1896 * compat.c: when we bail, print out the .CURDIR we were in. 1897 1898Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1899 1900 * Merged with NetBSD make 1901 1902 * var.c: fixed a bug in the handling of the modifier :P 1903 if the node as found but the path was null, we segfault trying to 1904 duplicate it. 1905 1906Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1907 1908 * Merged with NetBSD make 1909 1910 * make.c: Make_OODate's test for a library out of date was using 1911 cmtime where it should have used mtime (my bug). 1912 1913 * compat.c: Use perror() to tell us what really went wrong when we 1914 cannot exec a command. 1915 1916Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1917 1918 * Merged with NetBSD make 1919 1920Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1921 1922 * Merged with NetBSD make 1923 1924Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1925 1926 * Merged with NetBSD make 1927 1928Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1929 1930 * Merged with NetBSD make 1931 1932Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1933 1934 * util.c: don't provide signal() since we use sigcompat.c 1935 1936 * Makefile.in: added a build target. 1937 1938 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :! 1939 These allow some quite clever magic. 1940 1941 * main.c (main): added support for getenv(MAKESYSPATH). 1942 1943Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1944 1945 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set. 1946 This avoids objdir having a different value depending on how a 1947 directory was reached (via command line, or subdir.mk). 1948 1949 * If FORCE_MACHINE is defined, ignore getenv("MACHINE"). 1950 1951Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1952 1953 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if 1954 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not. 1955 I've been testing this in NetBSD's make for some weeks. 1956 1957 * Turn Makefile into Makefile.in and make it useful. 1958 1959Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1960 1961 * Imported NetBSD's -current make(1) and resolve conflicts. 1962 1963 * Applied autoconf patches from bmake v2 1964 1965 * Imported clean code base from NetBSD-1.0 1966