ChangeLog revision 238152
12012-07-04 Simon J. Gerraty <sjg@bad.crufty.net> 2 3 * Makefile.in (MAKE_VERSION): bump version to 20120704 4 Merge with NetBSD make, pick up 5 o Job_ParseShell should call Shell_Init if it has been 6 previously called. 7 * Makefile.in: set USE_META based on configure result. 8 also .PARSEDIR is safer indicator of bmake. 9 102012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 11 12 * Makefile.in: bump version to 20120626 13 ensure CPPFLAGS is in CFLAGS 14 * meta.c: avoid nested externs 15 * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target 16 172012-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 18 19 * Makefile.in (MAKE_VERSION): bump version to 20120620 20 Merge with NetBSD make, pick up 21 o make_malloc.c: avoid including make_malloc.h again 22 23 * Makefile.in: avoid bmake only syntax or protect with 24 .if defined(.MAKE.LEVEL) 25 * bsd.after-import.mk: replace .-include with .sinclude 26 ensure? SRCTOP gets a value 27 * configure.in: look for filemon.h in /usr/include/dev/filemon first. 28 292012-06-19 Simon J. Gerraty <sjg@bad.crufty.net> 30 31 * Makefile.in (MAKE_VERSION): bump version to 20120612 32 Merge with NetBSD make, pick up 33 o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler 34 for greater portability. 35 o unit-tests/forloop: check that .for works as expected wrt 36 number of times and with "quoted strings". 37 382012-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 39 40 * Makefile.in (MAKE_VERSION): bump version to 20120606 41 Merge with NetBSD make, pick up 42 o compat.c: use kill(2) rather than raise(3). 43 * configure.in: look for sys/dev/filemon 44 * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile 45 and pass BOOTSTRAP_XTRAS to boot-strap. 46 472012-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 48 49 * Makefile.in (MAKE_VERSION): bump version to 20120604 50 Merge with NetBSD make, pick up 51 o util.c and var.c share same var for tracking if environ 52 has been reallocated. 53 o util.c provide getenv with setenv. 54 * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL 55 when the shell actively strips .MAKE.* from the environment. 56 We still refer to the variable always as .MAKE.LEVEL 57 * util.c fix bug in findenv() was finding prefix of name. 58 * compat.c: re-raising SIGINT etc after running .INTERRUPT 59 results in more reliable termination of all activity on many 60 platforms. 61 622012-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 63 64 * Makefile.in (MAKE_VERSION): bump version to 20120602 65 Merge with NetBSD make, pick up 66 o for.c: handle quoted items in .for list 67 682012-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 69 70 * Makefile.in (MAKE_VERSION): bump version to 20120530 71 Merge with NetBSD make, pick up 72 o compat.c: ignore empty command. 73 742012-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 75 76 * Makefile.in (MAKE_VERSION): bump version to 20120524 77 * FILES: add bsd.after-import.mk: 78 A simple means of integrating bmake into a BSD build system. 79 802012-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 81 82 * Makefile.in (MAKE_VERSION): bump version to 20120520 83 Merge with NetBSD make, pick up 84 o increased limit for nested conditionals. 85 862012-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 87 88 * Makefile.in (MAKE_VERSION): bump version to 20120518 89 Merge with NetBSD make, pick up 90 o use _exit(2) in signal hanlder 91 o Don't use the [dir] cache when building nodes that might have 92 changed since the last exec. 93 o Avoid nested extern declaration warnings. 94 952012-04-27 Simon J. Gerraty <sjg@bad.crufty.net> 96 97 * meta.c (fgetLine): avoid %z - not portable. 98 * parse.c: Since we moved include of sys/mman.h 99 and def's of MAP_COPY etc. we got dups from a merge. 100 1012012-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 102 103 * Makefile.in (MAKE_VERSION): bump version to 20120420 104 Merge with NetBSD make, pick up 105 o restore duplicate supression in .MAKE.MAKEFILES 106 runtime saving can be significant. 107 o Var_Subst() uses Buf_DestroyCompact() to reduce memory 108 consumption up to 20%. 109 1102012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 111 112 * Makefile.in (MAKE_VERSION): bump version to 20120420 113 Merge with NetBSD make, pick up 114 o remove duplicate supression in .MAKE.MAKEFILES 115 o improved dir cache behavior 116 o gmake'ish export command 117 1182012-03-25 Simon J. Gerraty <sjg@bad.crufty.net> 119 120 * Makefile.in (MAKE_VERSION): bump version to 20120325 121 Merge with NetBSD make, pick up 122 o fix parsing of :[#] in conditionals. 123 1242012-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 125 126 * Makefile.in: replace use of .Nx in bmake.1 with NetBSD 127 since some systems cannot cope with .Nx <version> 128 1292011-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 130 131 * Makefile.in (MAKE_VERSION): bump version to 20111111 132 Merge with NetBSD make, pick up 133 o debug output for .PARSEDIR and .PARSEFILE 134 1352011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 136 137 * Makefile.in (MAKE_VERSION): bump version to 20111010 138 1392011-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 140 141 * boot-strap: check for an expected file in the dirs we look for. 142 * make-bootstrap.sh: pass on LDSTATIC 143 1442011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 145 146 * Makefile.in (MAKE_VERSION): bump version to 20111001 147 Merge with NetBSD make, pick up 148 o ensure .PREFIX is set for .PHONY 149 and .TARGET set for .PHONY run via .END 150 o __dead used consistently 151 1522011-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 153 154 * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-) 155 1562011-09-05 Simon J. Gerraty <sjg@bad.crufty.net> 157 158 * Makefile.in (MAKE_VERSION): bump version to 20110905 159 Merge with NetBSD make, pick up 160 o meta_oodate: ignore makeDependfile 161 1622011-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 163 164 * Makefile.in (MAKE_VERSION): bump version to 20110828 165 Merge with NetBSD make, pick up 166 o silent=yes in .MAKE.MODE causes meta mode to mark targets 167 as SILENT if a .meta file is created 168 1692011-08-18 Simon J. Gerraty <sjg@bad.crufty.net> 170 171 * Makefile.in (MAKE_VERSION): bump version to 20110818 172 Merge with NetBSD make, pick up 173 o in meta mode, if target flagged .META a missing .meta file 174 means target is out-of-date 175 o fixes for gcc 4.5 warnings 176 o simplify job printing code 177 1782011-08-09 Simon J. Gerraty <sjg@bad.crufty.net> 179 180 * Makefile.in (MAKE_VERSION): bump version to 20110808 181 Merge with NetBSD make, pick up 182 o do not touch OP_SPECIAL targets when doing make -t 183 1842011-06-22 Simon J. Gerraty <sjg@bad.crufty.net> 185 186 * Makefile.in (MAKE_VERSION): bump version to 20110622 187 Merge with NetBSD make, pick up 188 o meta_oodate detect corrupted .meta file and declare oodate. 189 * configure.in: add check for setsid 190 1912011-06-07 Simon J. Gerraty <sjg@bad.crufty.net> 192 193 * Merge with NetBSD make, pick up 194 o unit-tests/modts now works on MirBSD 195 1962011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 197 198 * Makefile.in (MAKE_VERSION): bump version to 20110606 199 Merge with NetBSD make, pick up 200 o ApplyModifiers: when we parse a variable which is not 201 the entire modifier string, or not followed by ':', do not 202 consider it as containing modifiers. 203 o loadfile: ensure newline at end of mapped file. 204 2052011-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 206 207 * Makefile.in (MAKE_VERSION): bump version to 20110505 208 Merge with NetBSD make, pick up 209 o .MAKE.META.BAILIWICK - list of prefixes which define the scope 210 of make's control. In meta mode, any generated file within 211 said bailiwick, which is found to be missing, causes current 212 target to be out-of-date. 213 2142011-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 215 216 * Makefile.in (MAKE_VERSION): bump version to 20110411 217 Merge with NetBSD make, pick up 218 o when long modifiers fail to match, check sysV style. 219 - add a test case 220 2212011-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 222 223 * Makefile.in (MAKE_VERSION): bump version to 20110410 224 Merge with NetBSD make, pick up 225 o :hash - cheap 32bit hash of value 226 o :localtime, :gmtime - use value as format string for strftime. 227 2282011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 229 230 * Makefile.in (MAKE_VERSION): bump version to 20110330 231 mostly because its a cooler version. 232 Merge with NetBSD make, pick up 233 o NetBSD tags for meta.[ch] 234 o job.c call meta_job_finish() after meta_job_error(). 235 o meta_job_error() should call meta_job_finish() to ensure 236 .meta file is closed, and safe to copy - if .ERROR target wants. 237 meta_job_finish() is safe to call repeatedly. 238 2392011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 240 241 * unit-tests/modts: use printf if it is a builtin, 242 to save us from MirBSD 243 244 * Makefile.in (MAKE_VERSION): bump version to 20110329 245 Merge with NetBSD make, pick up 246 o fix for use after free() in CondDoExists(). 247 o meta_oodate() report extra commands and return earlier. 248 2492011-03-27 Simon J. Gerraty <sjg@bad.crufty.net> 250 251 * Makefile.in (MAKE_VERSION): bump version to 20110327 252 Merge with NetBSD make, pick up 253 o meta.c, if .MAKE.MODE contains curdirOk=yes 254 allow creating .meta files in .CURDIR 255 * boot-strap (TOOL_DIFF): aparently at least on linux distro 256 formats the output of 'type' differently - so eat any "()" 257 2582011-03-06 Simon J. Gerraty <sjg@bad.crufty.net> 259 260 * Makefile.in (MAKE_VERSION): bump version to 20110306 261 Merge with NetBSD make, pick up 262 o meta.c, only do getcwd() once 263 2642011-03-05 Simon J. Gerraty <sjg@bad.crufty.net> 265 266 * Makefile.in (MAKE_VERSION): bump version to 20110305 267 Merge with NetBSD make, pick up 268 o correct sysV substitution handling of empty lhs and variable 269 o correct exists() check for dir with trailing / 270 o correct handling of modifiers for non-existant variables 271 during evaluation of conditionals. 272 o ensure MAP_FILE is defined. 273 o meta.c use curdir[] now exported by main.c 274 2752011-02-25 Simon J. Gerraty <sjg@bad.crufty.net> 276 277 * Makefile.in (MAKE_VERSION): bump version to 20110225 278 Merge with NetBSD make, pick up 279 o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after 280 makefiles have been read. 281 o fix example of :? modifier in man page. 282 2832011-02-13 Simon J. Gerraty <sjg@bad.crufty.net> 284 285 * Makefile.in (MAKE_VERSION): bump version to 20110214 286 Merge with NetBSD make, pick up 287 o meta.c handle realpath() failing when generating meta file 288 name. 289 290 * sigcompat.c: convert to ansi so we can use higher warning levels. 291 292 2932011-02-07 Simon J. Gerraty <sjg@bad.crufty.net> 294 295 * Makefile.in (MAKE_VERSION): bump version to 20110207 296 Merge with NetBSD make, pick up 297 o fix for bug in meta mode. 298 2992011-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 300 301 * parse.c: SunOS 5.8 at least does not have MAP_FILE 302 3032011-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 304 305 * Makefile.in (MAKE_VERSION): bump version to 20110101 306 Merge with NetBSD make, pick up 307 o use mmap(2) if available, for reading makefiles 308 3092010-12-15 Simon J. Gerraty <sjg@bad.crufty.net> 310 311 * Makefile.in (MAKE_VERSION): bump version to 20101215 312 Merge with NetBSD make, pick up 313 o ensure meta_job_error() does not report a previous .meta file 314 as being culprit. 315 3162010-12-10 Simon J. Gerraty <sjg@bad.crufty.net> 317 318 * Makefile.in (MAKE_VERSION): bump version to 20101210 319 Merge with NetBSD make, pick up 320 o meta_oodate: track cwd per process, and only consider target 321 out-of-date if missing file is outside make's CWD. 322 Ignore files in /tmp/ etc. 323 o to ensure unit-tests results match, need to control LC_ALL 324 as well as LANG. 325 o fix for parsing bug in var.c 326 3272010-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 328 329 * Makefile.in (MAKE_VERSION): bump version to 20101126 330 Merge with NetBSD make, pick up 331 o if stale dependency is an IMPSRC, search via .PATH 332 o meta_oodate: if a referenced file is missing, target is 333 out-of-date. 334 o meta_oodate: if a target uses .OODATE in its commands, 335 it (.OODATE) needs to be recomputed. 336 o keep a pointer to youngest child node, rather than just its 337 mtime. 338 3392010-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 340 341 * Makefile.in (MAKE_VERSION): bump version to 20101101 342 3432010-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 344 345 * machine.sh: like os.sh, 346 allow for uname -p producing useless drivel 347 3482010-09-13 Simon J. Gerraty <sjg@bad.crufty.net> 349 350 * boot-strap: document configure knobs for meta and filemon. 351 352 * Makefile.in (MAKE_VERSION): bump version to 20100911 353 Merge with NetBSD make, pick up 354 o meta.c - meta mode 355 356 * make-bootstrap.sh.in: handle meta.c 357 * configure.in: add knobs for use_meta and filemon_h 358 also, look for dirname, str[e]sep and strlcpy 359 * util.c: add simple err[x] and warn[x] 360 3612010-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 362 363 * boot-strap (TOOL_DIFF): set this to ensure tests use 364 the same version of diff that configure tested 365 366 * Makefile.in (MAKE_VERSION): bump version to 20100808 367 Merge with NetBSD make, pick up 368 o in jobs mode, when we discover we cannot make something, 369 call PrintOnError before exit. 370 3712010-08-06 Simon J. Gerraty <sjg@bad.crufty.net> 372 373 * Makefile.in (MAKE_VERSION): bump version to 20100806 374 Merge with NetBSD make, pick up 375 o formatting fixes for ignored errors 376 o ensure jobs are cleaned up regardless of where wait() was called. 377 3782010-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 379 380 * Makefile.in (MAKE_VERSION): bump version to 20100618 381 * os.sh (MACHINE_ARCH): watch out for drivel from uname -p 382 3832010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 384 385 * Makefile.in (MAKE_VERSION): bump version to 20100616 386 Merge with NetBSD make, pick up 387 o man page update 388 o call PrintOnError from JobFinish when we detect an error we 389 are not ignoring. 390 3912010-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 392 393 * Makefile.in (MAKE_VERSION): bump version to 20100606 394 Merge with NetBSD make, pick up 395 o man page update 396 3972010-06-05 Simon J. Gerraty <sjg@bad.crufty.net> 398 399 * Makefile.in (MAKE_VERSION): bump version to 20100605 400 Merge with NetBSD make, pick up 401 o use bmake_signal() which is a wrapper around sigaction() 402 in place of signal() 403 o add .export-env to allow exporting variables to environment 404 without tracking (so no re-export when the internal value is 405 changed). 406 4072010-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 408 409 * Makefile.in (MAKE_VERSION): bump version to 20100524 410 Merge with NetBSD make, pick up 411 o fix for .info et al being greedy. 412 4132010-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 414 415 * Makefile.in (MAKE_VERSION): bump version to 20100520 416 Merge with NetBSD make, pick up 417 o back to using realpath on argv[0] 418 but only if contains '/' and does not start with '/'. 419 4202010-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 421 422 * boot-strap: use absolute path for bmake when running tests. 423 424 * Makefile.in (MAKE_VERSION): bump version to 20100510 425 Merge with NetBSD make, pick up 426 o revert use of realpath on argv[0] 427 too many corner cases. 428 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target. 429 4302010-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 431 432 * Makefile.in (MAKE_VERSION): bump version to 20100505 433 Merge with NetBSD make, pick up 434 o fix for missed SIGCHLD when compiled with SunPRO 435 actually for bmake, defining FORCE_POSIX_SIGNALS would have 436 done the job. 437 4382010-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 439 440 * Makefile.in (MAKE_VERSION): bump version to 20100430 441 Merge with NetBSD make, pick up 442 o fflush stdout before writing to stdout 443 4442010-04-23 Simon J. Gerraty <sjg@bad.crufty.net> 445 446 * Makefile.in (MAKE_VERSION): bump version to 20100423 447 Merge with NetBSD make, pick up 448 o updated unit tests for Haiku (this time for sure). 449 * boot-strap: based on patch from joerg 450 honor --with-default-sys-path better. 451 * boot-strap: remove mention of --with-prefix-sys-path 452 4532010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 454 455 * Makefile.in (MAKE_VERSION): bump version to 20100422 456 * Merge with NetBSD make, pick up 457 o fix for vfork() on Darwin. 458 o fix for bogus $TMPDIR. 459 o set .MAKE.MODE=compat for -B 460 o set .MAKE.JOBS=max_jobs for -j max_jobs 461 o allow unit-tests to run without any *.mk 462 o unit-tests/modmisc be more conservative in dirs presumed to exist. 463 * boot-strap: ignore /usr/share/mk except on NetBSD. 464 * unit-tests/Makefile.in: set LANG=C when running unit-tests to 465 ensure sort(1) behaves as expected. 466 4672010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 468 469 * boot-strap: add FindHereOrAbove so we can use -m .../mk 470 4712010-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 472 473 * Makefile.in (MAKE_VERSION): bump version to 20100420 474 * Merge with NetBSD make, pick up 475 o fix for variable realpath() behavior. 476 we have to stat(2) the result to be sure. 477 o fix for .export (all) when nested vars use :sh 478 4792010-04-14 Simon J. Gerraty <sjg@bad.crufty.net> 480 481 * Makefile.in (MAKE_VERSION): bump version to 20100414 482 * Merge with NetBSD make, pick up 483 o use realpath to resolve argv[0] (for .MAKE) if needed. 484 o add realpath from libc. 485 o add :tA to resolve variable via realpath(3) if possible. 486 4872010-04-08 Simon J. Gerraty <sjg@bad.crufty.net> 488 489 * Makefile.in (MAKE_VERSION): bump version to 20100408 490 * Merge with NetBSD make, pick up 491 o unit tests for .ERROR, .error 492 o fix for .ERROR to ensure it cannot be default target. 493 4942010-04-06 Simon J. Gerraty <sjg@bad.crufty.net> 495 496 * Makefile.in (MAKE_VERSION): bump version to 20100406 497 * Merge with NetBSD make, pick up 498 o fix for compat mode "Error code" going to debug_file. 499 o fix for .ALLSRC being populated twice. 500 o support for .info, .warning and .error directives 501 o .MAKE.MODE to control make's operational mode 502 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile 503 name(s). 504 o .MAKE.DEPENDFILE to control the name of the depend file 505 o .ERROR target - run on failure. 506 5072010-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 508 509 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile 510 511 * os.sh,arch.c: patch for Haiku from joerg at netbsd 512 5132010-03-17 Simon J. Gerraty <sjg@bad.crufty.net> 514 515 * Makefile.in (MAKE_VERSION): bump version to 20100222 516 * Merge with NetBSD make, pick up 517 o better error msg for .for with mutiple inter vars 518 519 * boot-strap: 520 o use make-bootstrap.sh from joerg at netbsd 521 to avoid the need for a native make when bootstrapping. 522 o add "" everywhere ;-) 523 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1 524 otherwise the pre-formated version. 525 5262010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 527 528 * Makefile.in (MAKE_VERSION): bump version to 20100102 529 * Merge with NetBSD make, pick up: 530 o fix for -m .../ 531 5322009-11-18 Simon J. Gerraty <sjg@void.crufty.net> 533 534 * Makefile.in (MAKE_VERSION): bump version to 20091118 535 * Merge with NetBSD make, pick up: 536 o .unexport 537 o report lines that start with '.' and should have ':' 538 (catch typo's of .el*if). 539 5402009-10-30 Simon J. Gerraty <sjg@void.crufty.net> 541 542 * configure.in: Ensure that srcdir and mksrc are absolute paths. 543 5442009-10-09 Simon J. Gerraty <sjg@void.crufty.net> 545 546 * Makefile.in (MAKE_VERSION): fix version to 20091007 547 5482009-10-07 Simon J. Gerraty <sjg@void.crufty.net> 549 550 * Makefile.in (MAKE_VERSION): bump version to 200910007 551 * Merge with NetBSD make, pick up: 552 o fix for parsing of :S;...;...; applied to .for loop iterator 553 appearing in a dependency line. 554 5552009-09-09 Simon J. Gerraty <sjg@void.crufty.net> 556 557 * Makefile.in (MAKE_VERSION): bump version to 20090909 558 * Merge with NetBSD make, pick up: 559 o fix for -C, .CURDIR and .OBJDIR 560 * boot-strap: 561 o allow share_dir to be set independent of prefix. 562 o select default share_dir better when prefix ends in $HOST_TARGET 563 o if FORCE_BSD_MK etc were set, include them in the suggested 564 install-mk command. 565 5662009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 567 568 * Makefile.in (MAKE_VERSION): bump version to 20090908 569 * Merge with NetBSD make, pick up: 570 o .MAKE.LEVEL for recursion tracking 571 o fix for :M scanning \: 572 5732009-09-03 Simon J. Gerraty <sjg@void.crufty.net> 574 575 * configure.in: Don't -D__EXTENSIONS__ if 576 AC_USE_SYSTEM_EXTENSIONS says "no". 577 5782009-08-26 Simon J. Gerraty <sjg@void.crufty.net> 579 580 * Makefile.in (MAKE_VERSION): bump version to 20090826 581 Simplify MAKE_VERSION to just the bare date. 582 * Merge with NetBSD make, pick up: 583 o -C directory support. 584 o support for SIGINFO 585 o use $TMPDIR for temp files. 586 o child of vfork should be careful about modifying parent's state. 587 588 5892009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 590 591 * Appy some patches for MiNT from David Brownlee 592 5932009-02-26 Simon J. Gerraty <sjg@void.crufty.net> 594 595 * Makefile.in (BMAKE_VERSION): bump version to 20090222 596 * Merge with NetBSD make, pick up: 597 o Possible null pointer de-ref in Var_Set. 598 5992009-02-08 Simon J. Gerraty <sjg@void.crufty.net> 600 601 * Makefile.in (BMAKE_VERSION): bump version to 20090204 602 * Merge with NetBSD make, pick up: 603 o bmake_malloc et al moved to their own .c 604 o Count both () and {} when looking for the end of a :M pattern 605 o Change 'Buffer' so that it is the actual struct, not a pointer to it. 606 o strlist.c - functions for processing extendable arrays of pointers to strings. 607 o ClientData replaced with void *, so const void * can be used. 608 o New debug flag C for DEBUG_CWD 609 6102008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 611 612 * Makefile.in (BMAKE_VERSION): bump version to 20081111 613 Apply patch from Joerg Sonnenberge to 614 configure.in: 615 o remove some redundant checks 616 o check for emlloc etc only in libutil and require the whole family. 617 util.c: 618 o remove [v]asprintf which is no longer used. 619 6202008-11-04 Simon J. Gerraty <sjg@void.crufty.net> 621 622 * Makefile.in (BMAKE_VERSION): bump version to 20081101 623 * Merge with NetBSD make, pick up: 624 o util.c: avoid use of putenv() - christos 625 6262008-10-30 Simon J. Gerraty <sjg@void.crufty.net> 627 628 * Makefile.in (BMAKE_VERSION): bump version to 20081030 629 pick up man page tweaks. 630 6312008-10-29 Simon J. Gerraty <sjg@void.crufty.net> 632 633 * Makefile.in: move processing of LIBOBJS to after is definition! 634 thus we'll have getenv.c in SRCS only if needed. 635 636 * make.1: add examples of how to use :? 637 638 * Makefile.in (BMAKE_VERSION): bump version to 20081029 639 * Merge with NetBSD make, pick up: 640 o fix for .END processing with -j 641 o segfault from Parse_Error when no makefile is open 642 o handle numeric expressions in any variable expansion 643 o debug output now defaults to stderr, -dF to change it - apb 644 o make now uses bmake_malloc etc so that it can build natively 645 on A/UX - wasn't an issue for bmake, but we want to keep in sync. 646 6472008-09-27 Simon J. Gerraty <sjg@void.crufty.net> 648 649 * Makefile.in (BMAKE_VERSION): bump version to 20080808 650 * Merge with NetBSD make, pick up: 651 o fix for PR/38840: Pierre Pronchery: make crashes while parsing 652 long lines in Makefiles 653 o optimizations for VarQuote by joerg 654 o fix for PR/38756: dominik: make dumps core on invalid makefile 655 6562008-05-15 Simon J. Gerraty <sjg@void.crufty.net> 657 658 * Makefile.in (BMAKE_VERSION): bump version to 20080515 659 * Merge with NetBSD make, pick up: 660 o fix skip setting vars in VAR_GLOBAL context, to handle 661 cases where VAR_CMD is used for other than command line vars. 662 6632008-05-14 Simon J. Gerraty <sjg@void.crufty.net> 664 665 * boot-strap (make_version): we may need to look in 666 $prefix/share/mk for sys.mk 667 668 * Makefile.in (BMAKE_VERSION): bump version to 20080514 669 * Merge with NetBSD make, pick up: 670 o skip setting vars in VAR_GLOBAL context, when already set in 671 VAR_CMD which takes precedence. 672 6732008-03-30 Simon J. Gerraty <sjg@void.crufty.net> 674 675 * Makefile.in (BMAKE_VERSION): bump version to 20080330 676 * Merge with NetBSD make, pick up: 677 o fix for ?= when LHS contains variable reference. 678 6792008-02-15 Simon J. Gerraty <sjg@void.crufty.net> 680 681 * merge some patches from NetBSD pkgsrc. 682 683 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of 684 the MAKSYSPATH used during bootstrap. 685 686 * Makefile.in (BMAKE_VERSION): bump version to 20080215 687 * Merge with NetBSD make, pick up: 688 o warn if non-space chars follow 'empty' in a conditional. 689 6902008-01-18 Simon J. Gerraty <sjg@void.crufty.net> 691 692 * Makefile.in (BMAKE_VERSION): bump version to 20080118 693 * Merge with NetBSD make, pick up: 694 o consider dependencies read from .depend as optional - dsl 695 o remember when buffer for reading makefile grows - dsl 696 o add -dl (aka LOUD) - David O'Brien 697 6982007-10-22 Simon J. Gerraty <sjg@void.crufty.net> 699 700 * Makefile.in (BMAKE_VERSION): bump version to 20071022 701 * Merge with NetBSD make, pick up: 702 o Allow .PATH<suffix> to be used for .include "" 703 704 * boot-strap: source default settings from .bmake-boot-strap.rc 705 7062007-10-16 Simon J. Gerraty <sjg@void.crufty.net> 707 708 * Makefile.in: fix maninstall on various systems 709 provided that our man.mk is used. 710 For non-BSD systems we install the preformatted page 711 into $MANDIR/cat1 712 7132007-10-15 Simon J. Gerraty <sjg@void.crufty.net> 714 715 * boot-strap: make bmake.1 too, so maninstall works. 716 7172007-10-14 Simon J. Gerraty <sjg@void.crufty.net> 718 719 * Makefile.in (BMAKE_VERSION): bump version to 20071014 720 * Merge with NetBSD make, pick up: 721 o revamped handling of defshell - configure no longer needs to 722 know the content of the shells array - apb 723 o stop Var_Subst modifying its input - apb 724 o avoid calling ParseTrackInput too often - dsl 725 7262007-10-11 Simon J. Gerraty <sjg@void.crufty.net> 727 728 * Makefile.in (BMAKE_VERSION): bump version to 20071011 729 * Merge with NetBSD make, pick up: 730 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path. 731 732 * sigcompat.c: some tweaks for HP-UX 11.x based on 733 patch from Tobias Nygren 734 735 * configure.in: update handling of --with-defshell to match 736 new make behavior. --with-defshell=/usr/xpg4/bin/sh 737 will now do what one might hope - provided the chosen shell 738 behaves enough like sh. 739 7402007-10-08 Simon J. Gerraty <sjg@void.crufty.net> 741 742 * Makefile.in (BMAKE_VERSION): bump to 20071008 743 * Merge with NetBSD make, pick up: 744 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg 745 o .export/.MAKE.EXPORTED - export of variables - sjg 746 o .MAKE.MAKEFILES - track all makefiles read - sjg 747 o performance improvements - dsl 748 o revamp parallel job scheduling - dsl 749 7502006-07-28 Simon J. Gerraty <sjg@void.crufty.net> 751 752 * Makefile.in (BMAKE_VERSION): bump to 20060728 753 * Merge with NetBSD make, pick up: 754 o extra debug info during variable and cond processing - sjg 755 o shell definition now covers newline - rillig 756 o minor mem leak in PrintOnError - sjg 757 7582006-05-11 Simon J. Gerraty <sjg@void.crufty.net> 759 760 * Makefile.in (BMAKE_VERSION): bump to 20060511 761 * Merge with NetBSD make, pick up: 762 o more memory leaks - coverity 763 o possible overflow in ArchFindMember - coverity 764 o extract variable modifier code out of Var_Parse() 765 so it can be called recursively - sjg 766 o unit-tests/moderrs - sjg 767 7682006-04-12 Simon J. Gerraty <sjg@void.crufty.net> 769 770 * Makefile.in (BMAKE_VERSION): bump to 20060412 771 * Merge with NetBSD make, pick up: 772 o fixes for some memory leaks - coverity 773 o only read first sys.mk etc when searching sysIncPath - sjg 774 775 * main.c (ReadMakefile): remove hack for __INTERIX that prevented 776 setting ${MAKEFILE} - OBATA Akio 777 7782006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 779 780 * Makefile.in (BMAKE_VERSION): bump to 20060318 781 * Merge with NetBSD make, pick up: 782 o cleanup of job.c to remove remote handling, distcc is more 783 useful and this code was likely bit-rotting - dsl 784 o fix for :P modifier - sjg 785 * boot-strap: set default prefix to something reasonable 786 (for me anyway). 787 7882006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 789 790 * Makefile.in (BMAKE_VERSION): bump to 20060301 791 * Merge with NetBSD make, pick up: 792 o make .WAIT apply recursively, document and test case - apb 793 o allow variable modifiers in a variable appear anywhere in 794 modifier list, document and test case - sjg 795 7962006-02-22 Simon J. Gerraty <sjg@void.crufty.net> 797 798 * Makefile.in (BMAKE_VERSION): bump to 20060222 799 * Merge with NetBSD make, pick up: 800 o improved job token handling - dsl 801 o SIG_DFL the correct signal before exec - dsl 802 o more debug info during parsing - dsl 803 o allow variable modifiers to be specified via variable - sjg 804 * boot-strap: explain why we died if no mksrc 805 8062005-11-05 Simon J. Gerraty <sjg@void.crufty.net> 807 808 * Makefile.in (BMAKE_VERSION): bump to 20051105 809 * configure.in: always set default_sys_path 810 default is ${prefix}/share/mk 811 - remove prefix_sys_path, anyone wanting more than above 812 needs to set it manually. 813 8142005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 815 816 * boot-strap: make this a bit easier for pkgsrc folk. 817 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to 818 'mips' while pkgsrc wants 'mipseb' or 'mipsel' 819 8202005-11-02 Simon J. Gerraty <sjg@void.crufty.net> 821 822 * Makefile.in (BMAKE_VERSION): bump to 20051102 823 * job.c (JobFinish): fix likely ancient merge lossage 824 fix from Todd Vierling. 825 * boot-strap (srcdir): allow setting mksrc=none 826 8272005-10-31 Simon J. Gerraty <sjg@void.crufty.net> 828 829 * Makefile.in (BMAKE_VERSION): bump to 20051031 830 * ranlib.h: skip on OSF too. 831 (NetBSD PR 31864) 832 8332005-10-10 Simon J. Gerraty <sjg@void.crufty.net> 834 835 * Makefile.in (BMAKE_VERSION): bump to 20051002 836 fix a silly typo 837 8382005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 839 840 * Makefile.in (BMAKE_VERSION): bump to 20051001 841 support for UnixWare and some other systems, 842 based on patches from pkgsrc/bootstrap 843 8442005-09-03 Simon J. Gerraty <sjg@void.crufty.net> 845 846 * Makefile.in (BMAKE_VERSION): bump to 20050901 847 * Merge with NetBSD make, pick up: 848 o possible parse error causing us to wander off. 849 8502005-06-06 Simon J. Gerraty <sjg@void.crufty.net> 851 852 * Makefile.in (BMAKE_VERSION): bump to 20050606 853 * Merge with NetBSD make, pick up: 854 o :0x modifier for randomizing a list 855 o fixes for a number of -Wuninitialized issues. 856 8572005-05-30 Simon J. Gerraty <sjg@void.crufty.net> 858 859 * Makefile.in (BMAKE_VERSION): bump to 20050530 860 * Merge with NetBSD make, pick up: 861 o Handle dependencies for .BEGIN, .END and .INTERRUPT 862 863 * README: was seriously out of date. 864 8652005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 866 867 * Important to use .MAKE rather than MAKE. 868 8692005-03-15 Simon J. Gerraty <sjg@void.crufty.net> 870 871 * Makefile.in (BMAKE_VERSION): bump to 20050315 872 * Merge with NetBSD make, pick up: 873 o don't mistake .elsefoo for .else 874 o use suffix-specific search path correctly 875 o bunch of style nits 876 8772004-05-11 Simon J. Gerraty <sjg@void.crufty.net> 878 879 * boot-strap: 880 o ensure that args to --src and --with-mksrc 881 are resolved before giving them to configure. 882 o add -o "objdir" so that builder can control it, 883 default is $OS as determined by os.sh 884 o add -q to suppress all the install instructions. 885 8862004-05-08 Simon J. Gerraty <sjg@void.crufty.net> 887 888 * Remove __IDSTRING() 889 890 * Makefile.in (BMAKE_VERSION): bump to 20040508 891 * Merge with NetBSD make, pick up: 892 o posix fixes 893 - remove '-e' from compat mode 894 - add support for '+' command-line prefix. 895 o fix for handling '--' on command-line. 896 o fix include in lst.lib/lstInt.h to simplify '-I's 897 o we also picked up replacement of MAKE_BOOTSTRAP 898 with !MAKE_NATIVE which is a noop, but possibly confusing. 899 9002004-04-14 Simon J. Gerraty <sjg@void.crufty.net> 901 902 * Makefile.in (BMAKE_VERSION): bump to 20040414 903 * Merge with NetBSD make, pick up: 904 o allow quoted strings on lhs of conditionals 905 o issue warning when extra .else is seen 906 o print line numer when errors encountered during parsing from 907 string. 908 9092004-02-20 Simon J. Gerraty <sjg@void.crufty.net> 910 911 * Makefile.in (BMAKE_VERSION): bump to 20040220 912 * Merge with NetBSD make, pick up: 913 o fix for old :M parsing bug. 914 o re-jigged unit-tests 915 9162004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 917 918 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,} 919 so that './bmake -f Makefile test' works. 920 9212004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 922 923 * Makefile.in: (BMAKE_VERSION): bump to 20040214 924 * Merge with NetBSD make, pick up: 925 o search upwards for *.mk 926 o fix for double free of var substitution buffers 927 o use of getopt replaced with custom code, since the usage 928 (re-scanning) isn't posix compatible. 929 9302004-02-12 Simon J. Gerraty <sjg@void.crufty.net> 931 932 * arch.c: don't include ranlib.h on ELF systems 933 (thanks to Chuck Cranor <chuck@ece.cmu.edu>). 934 9352004-01-18 Simon J. Gerraty <sjg@void.crufty.net> 936 937 * Makefile.in (BMAKE_VERSION): bump to 20040118 938 939 * boot-strap (while): export vars we assign to on cmdline 940 * unit-test/Makefile.in: ternary is .PHONY 941 9422004-01-08 Simon J. Gerraty <sjg@void.crufty.net> 943 944 * Makefile.in (BMAKE_VERSION): bump version to 20040108 945 * Merge with NetBSD make, pick up: 946 o fix for ternary modifier 947 9482004-01-06 Simon J. Gerraty <sjg@void.crufty.net> 949 950 * Makefile.in (BMAKE_VERSION): bump version to 20040105 951 * Merge with NetBSD make, pick up: 952 o fix for cond.c to handle compound expressions better 953 o variable expansion within sysV style replacements 954 9552003-12-22 Simon J. Gerraty <sjg@void.crufty.net> 956 957 * Make portable snprintf safer - output to /dev/null first to 958 check space needed. 959 960 * Makefile.in (BMAKE_VERSION): bump version to 20031222 961 * Merge with NetBSD make, pick up: 962 o -dg3 to show input graph when things go wrong. 963 o explicitly look for makefiles in objdir if not found in curdir so 964 that errors in .depend etc will be reported accurarely. 965 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?' 966 instead as it more accurately reflects the expected behavior and 967 is more consistently implemented. 968 o avoid use of asprintf. 969 9702003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 971 972 * util.c: Add asprintf and vasprintf. 973 974 * Makefile.in (BMAKE_VERSION): bump version to 20030928 975 * Merge with NetBSD make, pick up: 976 :[] modifier - allows picking words from a variable. 977 :tW modifier - allows treating value as one big word. 978 W flag for :C and :S - allows treating value as one big word. 979 9802003-09-12 Simon J. Gerraty <sjg@void.crufty.net> 981 982 * Merge with NetBSD make 983 pick up -de flag to enable printing failed command. 984 don't skip 1st two dir entries (normally . and ..) since 985 coda does not have them. 986 9872003-09-09 Simon J. Gerraty <sjg@void.crufty.net> 988 989 * Makefile.in (BMAKE_VERSION): bump version to 20030909 990 * Merge with NetBSD make, pick up: 991 - changes for -V '${VAR}' to print fully expanded value 992 cf. -V VAR 993 - CompatRunCommand now prints the command that failed. 994 - several files got updated 3 clause Berkeley license. 995 9962003-08-02 Simon J. Gerraty <sjg@void.crufty.net> 997 998 * boot-strap: Allow setting configure args on command line. 999 10002003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 1001 1002 * configure.in: add --with-defshell to allow sh or ksh 1003 to be selected as default shell. 1004 1005 * Makefile.in: bump version to 20030731 1006 1007 * Merge with NetBSD make 1008 Pick up .SHELL spec for ksh and associate man page changes. 1009 Also compat mode now uses the same shell specs. 1010 10112003-07-29 Simon J. Gerraty <sjg@void.crufty.net> 1012 1013 * var.c (Var_Parse): ensure delim is initialized. 1014 1015 * unit-tests/Makefile.in: use single quotes to avoid problems from 1016 some shells. 1017 1018 * makefile.boot.in: 1019 Run the unit-tests as part of the bootstrap procedure. 1020 10212003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1022 1023 * unit-tests/Makefile.in: always force complaints from 1024 ${TEST_MAKE} to be from 'make'. 1025 1026 * configure.in: add check for 'diff -u' 1027 also fix some old autoconf'isms 1028 1029 * Makefile.in (BMAKE_VERSION): bump version to 20030728. 1030 if using GCC add -Wno-cast-qual to CFLAGS for var.o 1031 1032 * Merge with NetBSD make 1033 Pick up fix for :ts parsing error in some cases. 1034 Pick unit-tests. 1035 10362003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1037 1038 * Makefile.in (BMAKE_VERSION): bump version to 20030723. 1039 1040 * var.c (Var_Parse): fix bug in :ts modifier, after const 1041 correctness fixes, must pass nstr to VarModify. 1042 10432003-07-14 Simon J. Gerraty <sjg@void.crufty.net> 1044 1045 * Makefile.in: BMAKE_VERSION switch to a date based version. 1046 We'll generally use the date of last import from NetBSD. 1047 1048 * Merge with NetBSD make 1049 Pick up fixes for const-correctness, now passes WARNS=3 on 1050 NetBSD. 1051 Pick up :ts modifier, allows controlling the separator used 1052 between words in variable expansion. 1053 10542003-07-11 Simon J. Gerraty <sjg@void.crufty.net> 1055 1056 * FILES: include boot-strap and os.sh 1057 1058 * Makefile.in: only set WARNS if we are NetBSD, the effect on 1059 FreeBSD is known to be bad. 1060 1061 * makefile.boot.in (bootstrap): make this the default target. 1062 1063 * Makefile.in: bump version to 3.1.19 1064 1065 * machine.sh: avoid A-Z with tr as it is bound to lose. 1066 10672003-07-10 Simon J. Gerraty <sjg@void.crufty.net> 1068 1069 * Merge with NetBSD make 1070 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo 1071 Plus some doc fixes. 1072 10732003-04-27 Simon J. Gerraty <sjg@void.crufty.net> 1074 1075 * Merge with NetBSD make 1076 Pick up fix for PR/1523 - don't count a library as built, if there 1077 is no way to build it 1078 1079 * Bump version to 3.1.18 1080 10812003-03-23 Simon J. Gerraty <sjg@void.crufty.net> 1082 1083 * Merge with NetBSD make 1084 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT 1085 appears in src list. 1086 10872003-03-21 Simon J. Gerraty <sjg@void.crufty.net> 1088 1089 * Merge with NetBSD make (mmm 10th anniversary!) 1090 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828) 1091 pick up -X which tells us to not export VAR=val via setenv if 1092 we are already doing so via MAKEFLAGS. This saves valuable env 1093 space on systems like Darwin. 1094 set MAKE_VERSION to 3.1.17 1095 1096 * parse.c: pix up fix for suffix rules 1097 10982003-03-06 Simon J. Gerraty <sjg@void.crufty.net> 1099 1100 * Merge with NetBSD make. 1101 pick up fix for propagating -B via MAKEFLAGS. 1102 set MAKE_VERSION to 3.1.16 1103 1104 * Apply some patches from pkgsrc-bootstrap/bmake 1105 Originally by Grant Beattie <grant@netbsd.org> 1106 I may have missed some - since they are based on bmake-3.1.12 1107 11082002-12-03 Simon J. Gerraty <sjg@void.crufty.net> 1109 1110 * makefile.boot.in (bmake): update install targets for those that 1111 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid 1112 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>. 1113 1114 * bmake.cat1: update the pre-formatted man page! 1115 11162002-11-30 Simon J. Gerraty <sjg@void.crufty.net> 1117 1118 * Merge with NetBSD make. 1119 pick up fix for premature free of pointer used in call 1120 to Dir_InitCur(). 1121 set MAKE_VERSION to 3.1.15 1122 11232002-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1124 1125 * configure.in: determine suitable value for MKSRC. 1126 override using --with-mksrc=PATH. 1127 1128 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems. 1129 configs(8) will use 'sun4' as an alias for 'sparc'. 1130 11312002-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1132 1133 * Merge with NetBSD make. 1134 pick up ${.PATH} 1135 pick up fix for finding ../cat.c via .PATH when .CURDIR=.. 1136 set MAKE_VERSION to 3.1.14 1137 add configure checks for killpg and sys/socket.h 1138 11392002-09-16 Simon J. Gerraty <sjg@void.crufty.net> 1140 1141 * tag bmake-3-1-13 1142 1143 * makefile.boot.in (bmake): use install-mk 1144 Also setup ./mk before trying to invoke bmake.boot incase we 1145 needed install-mk to create a sys.mk for us. 1146 1147 * configure.in: If we need to add -I${srcdir}/missing, make it an 1148 absolute path so that it works for lst.lib too. 1149 1150 * make.h: always include sys/cdefs.h since we provide one if the 1151 host does not. 1152 1153 * Makefile.in (install-mk): 1154 use MKSRC/install-mk which will do the right thing. 1155 use uname -p for ARCH if possible. 1156 since install-mk will setup links bsd.prog.mk -> prog.mk if 1157 needed, just .include bsd.prog.mk 1158 1159 * Merge with NetBSD make (NetBSD-1.6) 1160 Code is ansi-C only now. 1161 Bug in handling of dotLast is fixed. 1162 Can now assign .OBJDIR and make will reset its notions of life. 1163 New modifiers :tu :tl for toUpper and toLower. 1164 1165Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1166 1167 * Merge with NetBSD make 1168 pick up fix for .END failure in compat mode. 1169 pick up fix for extra va_end() in ParseVErrorInternal. 1170 1171Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1172 1173 * configure.in: for systems that have sys/cdefs.h check if it is 1174 compatible. If not, include the one under missing, but tell it to 1175 include the native one too - necessary on Linux. 1176 1177 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use 1178 include_next (for gcc) to get the native sys/cdefs.h 1179 1180Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1181 1182 * job.c (JobFinish): Fix an earlier merge bug that resulted in 1183 leaking descriptors when using -jN. 1184 1185 * job.c (JobPrintCommand): See if "curdir" exists before 1186 attempting to chdir(). Doing the chdir directly in make (when in 1187 compat mode) fails silently, so let the -jN version do the same. 1188 This can happen when building kernels in an object tree and 1189 playing clever games to reset .CURDIR. 1190 1191 * Merged with NetBSD make 1192 pick up .USEBEFORE 1193 1194Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1195 1196 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work. 1197 1198Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1199 1200 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell 1201 us not to export the iterator variable when using VAR_CMD context. 1202 1203Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1204 1205 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here, 1206 its the wrong "fix". 1207 1208Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1209 1210 * Redesigned export of VAR_CMD's via MAKEFLAGS. 1211 We now simply append the variable names to .MAKEOVERRIDES, and 1212 handle duplicate suppression and quoting in ExportMAKEFLAGS using: 1213 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@} 1214 Apart from fixing quoting bugs in previous version, this allows us 1215 to export vars to the environment by simply doing: 1216 .MAKEOVERRIDES+= PATH 1217 Merged again with NetBSD make, but the above is the only change. 1218 1219 * configure.in: added 1220 --disable-pwd-override disable $PWD overriding getcwd() 1221 --disable-check-make-chdir disable make trying to guess 1222 when it should automatically cd ${.CURDIR} 1223 1224 * Merge with NetBSD make, changes include: 1225 parse.c (ParseDoDependency): Spot that the syntax error is 1226 caused by an unresolved cvs/rcs conflict and say so. 1227 var.c: most of Var* functions now take a ctxt as 1st arg. 1228 now does variable substituion on rhs of sysv style modifiers. 1229 1230 * var.c (Var_Set): exporting of command line variables (VAR_CMD) 1231 is now done here. We append the name='value' to .MAKEOVERRIDES 1232 rather than directly into MAKEFLAGS as this allows a Makefile to 1233 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a 1234 very similar mechanism. Note that in adding name='value' to 1235 .MAKEOVERRIDES we do the moral equivalent of: 1236 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val' 1237 1238Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1239 1240 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H 1241 1242 * Merged with NetBSD make 1243 make -dx can now be used to run commands via sh -x 1244 better error messages on exec failures. 1245 1246Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1247 1248 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that 1249 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION, 1250 MACHINE etc otherwise they propagate from the previous bmake. 1251 1252 * configure.in (machine): allow --with-machine=generic to make 1253 configure use machine.sh to set MACHINE. 1254 1255 * job.c (JobInterrupt): convert to using WAIT_T and friends. 1256 1257 * Makefile.in: mention in bmake.1 that we use autoconf. 1258 1259 * make.1: mention MAKE_PRINT_VAR_ON_ERROR. 1260 1261Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1262 1263 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend" 1264 as that rather defeats the usefulness of ${MAKEFILE}. 1265 1266 * main.c (MainParseArgs): append command line variable assignments 1267 to MAKEFLAGS so that they get propagated to child make's. 1268 Apparently this is required POSIX behaviour? Its useful anyway. 1269 1270Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1271 1272 * compat.c (CompatRunCommand): don't use perror() since stdio may 1273 cause problems in child of vfork(). 1274 1275 * compat.c, main.c: Call PrintOnError() when we are going to bail. 1276 This routine prints out the .curdir where we stopped and will also 1277 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}. 1278 1279 * main.c: add ${.newline} to hold a "\n" - sometimes handy in 1280 :@ expansion. 1281 1282 * var.c: VarLoopExpand: ignore addSpace if a \n is present. 1283 1284 * Added RCSid's for the files we've touched. 1285 1286Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1287 1288 * configure.in: Thanks to some clues from mdb@juniper.net, 1289 added autoconf magic to control setting of MACHINE, MACHINE_ARCH 1290 as well as what ends up in _PATH_DEFSYSPATH. We now have: 1291 1292 --with-machine=MACHINE explicitly set MACHINE 1293 --with-force-machine=MACHINE set FORCE_MACHINE 1294 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH 1295 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH 1296 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH 1297 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX 1298 1299 If _PATH_OBJDIRPREFIX is set to "no" we won't define it. 1300 1301 * makefile: added a pathetically simple makefile to drive 1302 bootstrapping. Running configure by hand is more useful. 1303 1304 * Makefile.in: added MAKE_VERSION, and reworked things to be less 1305 dependent on NetBSD bsd.*.mk 1306 1307 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining 1308 _PATH_OBJDIRPREFIX for those that don't want a default. 1309 construct _PATH_DEFSYSPATH from the info we get from configure. 1310 1311 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION} 1312 if MAKE_VERSION is defined. 1313 1314 * compat.c: when we bail, print out the .CURDIR we were in. 1315 1316Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1317 1318 * Merged with NetBSD make 1319 1320 * var.c: fixed a bug in the handling of the modifier :P 1321 if the node as found but the path was null, we segfault trying to 1322 duplicate it. 1323 1324Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1325 1326 * Merged with NetBSD make 1327 1328 * make.c: Make_OODate's test for a library out of date was using 1329 cmtime where it should have used mtime (my bug). 1330 1331 * compat.c: Use perror() to tell us what really went wrong when we 1332 cannot exec a command. 1333 1334Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1335 1336 * Merged with NetBSD make 1337 1338Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1339 1340 * Merged with NetBSD make 1341 1342Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1343 1344 * Merged with NetBSD make 1345 1346Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1347 1348 * Merged with NetBSD make 1349 1350Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1351 1352 * util.c: don't provide signal() since we use sigcompat.c 1353 1354 * Makefile.in: added a build target. 1355 1356 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :! 1357 These allow some quite clever magic. 1358 1359 * main.c (main): added support for getenv(MAKESYSPATH). 1360 1361Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1362 1363 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set. 1364 This avoids objdir having a different value depending on how a 1365 directory was reached (via command line, or subdir.mk). 1366 1367 * If FORCE_MACHINE is defined, ignore getenv("MACHINE"). 1368 1369Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1370 1371 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if 1372 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not. 1373 I've been testing this in NetBSD's make for some weeks. 1374 1375 * Turn Makefile into Makefile.in and make it useful. 1376 1377Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1378 1379 * Imported NetBSD's -current make(1) and resolve conflicts. 1380 1381 * Applied autoconf patches from bmake v2 1382 1383 * Imported clean code base from NetBSD-1.0 1384