12013-01-27 Simon J. Gerraty <sjg@bad.crufty.net> 2 3 * Merge with NetBSD make, pick up 4 o make.1: more info on how shell commands are handled. 5 o job.c,main.c: detect write errors to job pipes. 6 72013-01-25 Simon J. Gerraty <sjg@bad.crufty.net> 8 9 * Makefile (MAKE_VERSION): 20130123 10 Merge with NetBSD make, pick up 11 o meta.c: if script uses .OODATE and meta_oodate() decides 12 rebuild is needed, .OODATE will be empty - set it to .ALLSRC. 13 o var.c: in debug output indicate which variabale modifiers 14 apply to. 15 o remove Check_Cwd logic the makefiles have been fixed. 16 172012-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 18 19 * makefile.in: add a simple makefile for folk who insist on 20 ./configure; make; make install 21 it just runs boot-strap 22 * include mk/* to accommodate the above 23 * boot-strap: re-work to accommodate the above 24 mksrc defaults to $Mydir/mk 25 allow op={configure,build,install,clean,all} 26 add options to facilitate install 27 * Makefile.config.in: just the bits set by configure 28 * Makefile: bump version to 20121212 29 abandon Makefile.in (NetBSD Makefile) 30 leverage mk/* instead 31 * configure.in: ensure srcdir is absolute 32 332012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 34 35 * Makefile.in (MAKE_VERSION): 20121111 36 fix generation of bmake.cat1 37 382012-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 39 40 * Makefile.in (MAKE_VERSION): 20121109 41 Merge with NetBSD make, pick up 42 o make.c: MakeBuildChild: return 0 so search continues if a 43 .ORDER dependency is detected. 44 o unit-tests/order: test the above 45 462012-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 47 48 * Makefile.in (MAKE_VERSION): 20121102 49 Merge with NetBSD make, pick up 50 o cond.c: allow cond_state[] to grow. 51 In meta mode with a very large tree, we can hit the limit 52 while processing dirdeps. 53 542012-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 55 56 * Makefile.in: we need to use ${srcdir} not ${.CURDIR} 57 582012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 59 60 * Makefile.in (MAKE_VERSION): 20121010 61 o protect syntax that only bmake parses correctly. 62 o remove auto setting of FORCE_MACHINE, use configure's 63 --with-force-machine=whatever if that is desired. 64 652012-10-08 Simon J. Gerraty <sjg@bad.crufty.net> 66 67 * Makefile.in: do not lose history from make.1 when generating bmake.1 68 692012-10-07 Simon J. Gerraty <sjg@bad.crufty.net> 70 71 * Makefile.in (MAKE_VERSION): 20121007 72 Merge with NetBSD make, pick up 73 o compat.c: ignore empty commands - same as jobs mode. 74 o make.1: document meta chars that cause use of shell 75 762012-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 77 78 * Makefile.in (MAKE_VERSION): bump version to 20120911 79 * bsd.after-import.mk: include Makefile.inc early and allow it to 80 override PROG 81 822012-08-31 Simon J. Gerraty <sjg@bad.crufty.net> 83 84 * Makefile.in (MAKE_VERSION): bump version to 20120831 85 Merge with NetBSD make, pick up 86 o cast sizeof() to int for comparison 87 o minor make.1 tweak 88 892012-08-30 Simon J. Gerraty <sjg@bad.crufty.net> 90 91 * Makefile.in (MAKE_VERSION): bump version to 20120830 92 Merge with NetBSD make, pick up 93 o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V 94 o debug flag -dV causes -V to show raw value regardless. 95 962012-07-05 Simon J. Gerraty <sjg@bad.crufty.net> 97 98 * bsd.after-import.mk (after-import): ensure unit-tests/Makefile 99 gets SRCTOP set. 100 1012012-07-04 Simon J. Gerraty <sjg@bad.crufty.net> 102 103 * Makefile.in (MAKE_VERSION): bump version to 20120704 104 Merge with NetBSD make, pick up 105 o Job_ParseShell should call Shell_Init if it has been 106 previously called. 107 * Makefile.in: set USE_META based on configure result. 108 also .PARSEDIR is safer indicator of bmake. 109 1102012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 111 112 * Makefile.in: bump version to 20120626 113 ensure CPPFLAGS is in CFLAGS 114 * meta.c: avoid nested externs 115 * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target 116 1172012-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 118 119 * Makefile.in (MAKE_VERSION): bump version to 20120620 120 Merge with NetBSD make, pick up 121 o make_malloc.c: avoid including make_malloc.h again 122 123 * Makefile.in: avoid bmake only syntax or protect with 124 .if defined(.MAKE.LEVEL) 125 * bsd.after-import.mk: replace .-include with .sinclude 126 ensure? SRCTOP gets a value 127 * configure.in: look for filemon.h in /usr/include/dev/filemon first. 128 1292012-06-19 Simon J. Gerraty <sjg@bad.crufty.net> 130 131 * Makefile.in (MAKE_VERSION): bump version to 20120612 132 Merge with NetBSD make, pick up 133 o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler 134 for greater portability. 135 o unit-tests/forloop: check that .for works as expected wrt 136 number of times and with "quoted strings". 137 1382012-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 139 140 * Makefile.in (MAKE_VERSION): bump version to 20120606 141 Merge with NetBSD make, pick up 142 o compat.c: use kill(2) rather than raise(3). 143 * configure.in: look for sys/dev/filemon 144 * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile 145 and pass BOOTSTRAP_XTRAS to boot-strap. 146 1472012-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 148 149 * Makefile.in (MAKE_VERSION): bump version to 20120604 150 Merge with NetBSD make, pick up 151 o util.c and var.c share same var for tracking if environ 152 has been reallocated. 153 o util.c provide getenv with setenv. 154 * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL 155 when the shell actively strips .MAKE.* from the environment. 156 We still refer to the variable always as .MAKE.LEVEL 157 * util.c fix bug in findenv() was finding prefix of name. 158 * compat.c: re-raising SIGINT etc after running .INTERRUPT 159 results in more reliable termination of all activity on many 160 platforms. 161 1622012-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 163 164 * Makefile.in (MAKE_VERSION): bump version to 20120602 165 Merge with NetBSD make, pick up 166 o for.c: handle quoted items in .for list 167 1682012-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 169 170 * Makefile.in (MAKE_VERSION): bump version to 20120530 171 Merge with NetBSD make, pick up 172 o compat.c: ignore empty command. 173 1742012-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 175 176 * Makefile.in (MAKE_VERSION): bump version to 20120524 177 * FILES: add bsd.after-import.mk: 178 A simple means of integrating bmake into a BSD build system. 179 1802012-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 181 182 * Makefile.in (MAKE_VERSION): bump version to 20120520 183 Merge with NetBSD make, pick up 184 o increased limit for nested conditionals. 185 1862012-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 187 188 * Makefile.in (MAKE_VERSION): bump version to 20120518 189 Merge with NetBSD make, pick up 190 o use _exit(2) in signal hanlder 191 o Don't use the [dir] cache when building nodes that might have 192 changed since the last exec. 193 o Avoid nested extern declaration warnings. 194 1952012-04-27 Simon J. Gerraty <sjg@bad.crufty.net> 196 197 * meta.c (fgetLine): avoid %z - not portable. 198 * parse.c: Since we moved include of sys/mman.h 199 and def's of MAP_COPY etc. we got dups from a merge. 200 2012012-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 202 203 * Makefile.in (MAKE_VERSION): bump version to 20120420 204 Merge with NetBSD make, pick up 205 o restore duplicate supression in .MAKE.MAKEFILES 206 runtime saving can be significant. 207 o Var_Subst() uses Buf_DestroyCompact() to reduce memory 208 consumption up to 20%. 209 2102012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 211 212 * Makefile.in (MAKE_VERSION): bump version to 20120420 213 Merge with NetBSD make, pick up 214 o remove duplicate supression in .MAKE.MAKEFILES 215 o improved dir cache behavior 216 o gmake'ish export command 217 2182012-03-25 Simon J. Gerraty <sjg@bad.crufty.net> 219 220 * Makefile.in (MAKE_VERSION): bump version to 20120325 221 Merge with NetBSD make, pick up 222 o fix parsing of :[#] in conditionals. 223 2242012-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 225 226 * Makefile.in: replace use of .Nx in bmake.1 with NetBSD 227 since some systems cannot cope with .Nx <version> 228 2292011-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 230 231 * Makefile.in (MAKE_VERSION): bump version to 20111111 232 Merge with NetBSD make, pick up 233 o debug output for .PARSEDIR and .PARSEFILE 234 2352011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 236 237 * Makefile.in (MAKE_VERSION): bump version to 20111010 238 2392011-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 240 241 * boot-strap: check for an expected file in the dirs we look for. 242 * make-bootstrap.sh: pass on LDSTATIC 243 2442011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 245 246 * Makefile.in (MAKE_VERSION): bump version to 20111001 247 Merge with NetBSD make, pick up 248 o ensure .PREFIX is set for .PHONY 249 and .TARGET set for .PHONY run via .END 250 o __dead used consistently 251 2522011-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 253 254 * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-) 255 2562011-09-05 Simon J. Gerraty <sjg@bad.crufty.net> 257 258 * Makefile.in (MAKE_VERSION): bump version to 20110905 259 Merge with NetBSD make, pick up 260 o meta_oodate: ignore makeDependfile 261 2622011-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 263 264 * Makefile.in (MAKE_VERSION): bump version to 20110828 265 Merge with NetBSD make, pick up 266 o silent=yes in .MAKE.MODE causes meta mode to mark targets 267 as SILENT if a .meta file is created 268 2692011-08-18 Simon J. Gerraty <sjg@bad.crufty.net> 270 271 * Makefile.in (MAKE_VERSION): bump version to 20110818 272 Merge with NetBSD make, pick up 273 o in meta mode, if target flagged .META a missing .meta file 274 means target is out-of-date 275 o fixes for gcc 4.5 warnings 276 o simplify job printing code 277 2782011-08-09 Simon J. Gerraty <sjg@bad.crufty.net> 279 280 * Makefile.in (MAKE_VERSION): bump version to 20110808 281 Merge with NetBSD make, pick up 282 o do not touch OP_SPECIAL targets when doing make -t 283 2842011-06-22 Simon J. Gerraty <sjg@bad.crufty.net> 285 286 * Makefile.in (MAKE_VERSION): bump version to 20110622 287 Merge with NetBSD make, pick up 288 o meta_oodate detect corrupted .meta file and declare oodate. 289 * configure.in: add check for setsid 290 2912011-06-07 Simon J. Gerraty <sjg@bad.crufty.net> 292 293 * Merge with NetBSD make, pick up 294 o unit-tests/modts now works on MirBSD 295 2962011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 297 298 * Makefile.in (MAKE_VERSION): bump version to 20110606 299 Merge with NetBSD make, pick up 300 o ApplyModifiers: when we parse a variable which is not 301 the entire modifier string, or not followed by ':', do not 302 consider it as containing modifiers. 303 o loadfile: ensure newline at end of mapped file. 304 3052011-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 306 307 * Makefile.in (MAKE_VERSION): bump version to 20110505 308 Merge with NetBSD make, pick up 309 o .MAKE.META.BAILIWICK - list of prefixes which define the scope 310 of make's control. In meta mode, any generated file within 311 said bailiwick, which is found to be missing, causes current 312 target to be out-of-date. 313 3142011-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 315 316 * Makefile.in (MAKE_VERSION): bump version to 20110411 317 Merge with NetBSD make, pick up 318 o when long modifiers fail to match, check sysV style. 319 - add a test case 320 3212011-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 322 323 * Makefile.in (MAKE_VERSION): bump version to 20110410 324 Merge with NetBSD make, pick up 325 o :hash - cheap 32bit hash of value 326 o :localtime, :gmtime - use value as format string for strftime. 327 3282011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 329 330 * Makefile.in (MAKE_VERSION): bump version to 20110330 331 mostly because its a cooler version. 332 Merge with NetBSD make, pick up 333 o NetBSD tags for meta.[ch] 334 o job.c call meta_job_finish() after meta_job_error(). 335 o meta_job_error() should call meta_job_finish() to ensure 336 .meta file is closed, and safe to copy - if .ERROR target wants. 337 meta_job_finish() is safe to call repeatedly. 338 3392011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 340 341 * unit-tests/modts: use printf if it is a builtin, 342 to save us from MirBSD 343 344 * Makefile.in (MAKE_VERSION): bump version to 20110329 345 Merge with NetBSD make, pick up 346 o fix for use after free() in CondDoExists(). 347 o meta_oodate() report extra commands and return earlier. 348 3492011-03-27 Simon J. Gerraty <sjg@bad.crufty.net> 350 351 * Makefile.in (MAKE_VERSION): bump version to 20110327 352 Merge with NetBSD make, pick up 353 o meta.c, if .MAKE.MODE contains curdirOk=yes 354 allow creating .meta files in .CURDIR 355 * boot-strap (TOOL_DIFF): aparently at least on linux distro 356 formats the output of 'type' differently - so eat any "()" 357 3582011-03-06 Simon J. Gerraty <sjg@bad.crufty.net> 359 360 * Makefile.in (MAKE_VERSION): bump version to 20110306 361 Merge with NetBSD make, pick up 362 o meta.c, only do getcwd() once 363 3642011-03-05 Simon J. Gerraty <sjg@bad.crufty.net> 365 366 * Makefile.in (MAKE_VERSION): bump version to 20110305 367 Merge with NetBSD make, pick up 368 o correct sysV substitution handling of empty lhs and variable 369 o correct exists() check for dir with trailing / 370 o correct handling of modifiers for non-existant variables 371 during evaluation of conditionals. 372 o ensure MAP_FILE is defined. 373 o meta.c use curdir[] now exported by main.c 374 3752011-02-25 Simon J. Gerraty <sjg@bad.crufty.net> 376 377 * Makefile.in (MAKE_VERSION): bump version to 20110225 378 Merge with NetBSD make, pick up 379 o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after 380 makefiles have been read. 381 o fix example of :? modifier in man page. 382 3832011-02-13 Simon J. Gerraty <sjg@bad.crufty.net> 384 385 * Makefile.in (MAKE_VERSION): bump version to 20110214 386 Merge with NetBSD make, pick up 387 o meta.c handle realpath() failing when generating meta file 388 name. 389 390 * sigcompat.c: convert to ansi so we can use higher warning levels. 391 392 3932011-02-07 Simon J. Gerraty <sjg@bad.crufty.net> 394 395 * Makefile.in (MAKE_VERSION): bump version to 20110207 396 Merge with NetBSD make, pick up 397 o fix for bug in meta mode. 398 3992011-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 400 401 * parse.c: SunOS 5.8 at least does not have MAP_FILE 402 4032011-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 404 405 * Makefile.in (MAKE_VERSION): bump version to 20110101 406 Merge with NetBSD make, pick up 407 o use mmap(2) if available, for reading makefiles 408 4092010-12-15 Simon J. Gerraty <sjg@bad.crufty.net> 410 411 * Makefile.in (MAKE_VERSION): bump version to 20101215 412 Merge with NetBSD make, pick up 413 o ensure meta_job_error() does not report a previous .meta file 414 as being culprit. 415 4162010-12-10 Simon J. Gerraty <sjg@bad.crufty.net> 417 418 * Makefile.in (MAKE_VERSION): bump version to 20101210 419 Merge with NetBSD make, pick up 420 o meta_oodate: track cwd per process, and only consider target 421 out-of-date if missing file is outside make's CWD. 422 Ignore files in /tmp/ etc. 423 o to ensure unit-tests results match, need to control LC_ALL 424 as well as LANG. 425 o fix for parsing bug in var.c 426 4272010-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 428 429 * Makefile.in (MAKE_VERSION): bump version to 20101126 430 Merge with NetBSD make, pick up 431 o if stale dependency is an IMPSRC, search via .PATH 432 o meta_oodate: if a referenced file is missing, target is 433 out-of-date. 434 o meta_oodate: if a target uses .OODATE in its commands, 435 it (.OODATE) needs to be recomputed. 436 o keep a pointer to youngest child node, rather than just its 437 mtime. 438 4392010-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 440 441 * Makefile.in (MAKE_VERSION): bump version to 20101101 442 4432010-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 444 445 * machine.sh: like os.sh, 446 allow for uname -p producing useless drivel 447 4482010-09-13 Simon J. Gerraty <sjg@bad.crufty.net> 449 450 * boot-strap: document configure knobs for meta and filemon. 451 452 * Makefile.in (MAKE_VERSION): bump version to 20100911 453 Merge with NetBSD make, pick up 454 o meta.c - meta mode 455 456 * make-bootstrap.sh.in: handle meta.c 457 * configure.in: add knobs for use_meta and filemon_h 458 also, look for dirname, str[e]sep and strlcpy 459 * util.c: add simple err[x] and warn[x] 460 4612010-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 462 463 * boot-strap (TOOL_DIFF): set this to ensure tests use 464 the same version of diff that configure tested 465 466 * Makefile.in (MAKE_VERSION): bump version to 20100808 467 Merge with NetBSD make, pick up 468 o in jobs mode, when we discover we cannot make something, 469 call PrintOnError before exit. 470 4712010-08-06 Simon J. Gerraty <sjg@bad.crufty.net> 472 473 * Makefile.in (MAKE_VERSION): bump version to 20100806 474 Merge with NetBSD make, pick up 475 o formatting fixes for ignored errors 476 o ensure jobs are cleaned up regardless of where wait() was called. 477 4782010-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 479 480 * Makefile.in (MAKE_VERSION): bump version to 20100618 481 * os.sh (MACHINE_ARCH): watch out for drivel from uname -p 482 4832010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 484 485 * Makefile.in (MAKE_VERSION): bump version to 20100616 486 Merge with NetBSD make, pick up 487 o man page update 488 o call PrintOnError from JobFinish when we detect an error we 489 are not ignoring. 490 4912010-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 492 493 * Makefile.in (MAKE_VERSION): bump version to 20100606 494 Merge with NetBSD make, pick up 495 o man page update 496 4972010-06-05 Simon J. Gerraty <sjg@bad.crufty.net> 498 499 * Makefile.in (MAKE_VERSION): bump version to 20100605 500 Merge with NetBSD make, pick up 501 o use bmake_signal() which is a wrapper around sigaction() 502 in place of signal() 503 o add .export-env to allow exporting variables to environment 504 without tracking (so no re-export when the internal value is 505 changed). 506 5072010-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 508 509 * Makefile.in (MAKE_VERSION): bump version to 20100524 510 Merge with NetBSD make, pick up 511 o fix for .info et al being greedy. 512 5132010-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 514 515 * Makefile.in (MAKE_VERSION): bump version to 20100520 516 Merge with NetBSD make, pick up 517 o back to using realpath on argv[0] 518 but only if contains '/' and does not start with '/'. 519 5202010-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 521 522 * boot-strap: use absolute path for bmake when running tests. 523 524 * Makefile.in (MAKE_VERSION): bump version to 20100510 525 Merge with NetBSD make, pick up 526 o revert use of realpath on argv[0] 527 too many corner cases. 528 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target. 529 5302010-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 531 532 * Makefile.in (MAKE_VERSION): bump version to 20100505 533 Merge with NetBSD make, pick up 534 o fix for missed SIGCHLD when compiled with SunPRO 535 actually for bmake, defining FORCE_POSIX_SIGNALS would have 536 done the job. 537 5382010-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 539 540 * Makefile.in (MAKE_VERSION): bump version to 20100430 541 Merge with NetBSD make, pick up 542 o fflush stdout before writing to stdout 543 5442010-04-23 Simon J. Gerraty <sjg@bad.crufty.net> 545 546 * Makefile.in (MAKE_VERSION): bump version to 20100423 547 Merge with NetBSD make, pick up 548 o updated unit tests for Haiku (this time for sure). 549 * boot-strap: based on patch from joerg 550 honor --with-default-sys-path better. 551 * boot-strap: remove mention of --with-prefix-sys-path 552 5532010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 554 555 * Makefile.in (MAKE_VERSION): bump version to 20100422 556 * Merge with NetBSD make, pick up 557 o fix for vfork() on Darwin. 558 o fix for bogus $TMPDIR. 559 o set .MAKE.MODE=compat for -B 560 o set .MAKE.JOBS=max_jobs for -j max_jobs 561 o allow unit-tests to run without any *.mk 562 o unit-tests/modmisc be more conservative in dirs presumed to exist. 563 * boot-strap: ignore /usr/share/mk except on NetBSD. 564 * unit-tests/Makefile.in: set LANG=C when running unit-tests to 565 ensure sort(1) behaves as expected. 566 5672010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 568 569 * boot-strap: add FindHereOrAbove so we can use -m .../mk 570 5712010-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 572 573 * Makefile.in (MAKE_VERSION): bump version to 20100420 574 * Merge with NetBSD make, pick up 575 o fix for variable realpath() behavior. 576 we have to stat(2) the result to be sure. 577 o fix for .export (all) when nested vars use :sh 578 5792010-04-14 Simon J. Gerraty <sjg@bad.crufty.net> 580 581 * Makefile.in (MAKE_VERSION): bump version to 20100414 582 * Merge with NetBSD make, pick up 583 o use realpath to resolve argv[0] (for .MAKE) if needed. 584 o add realpath from libc. 585 o add :tA to resolve variable via realpath(3) if possible. 586 5872010-04-08 Simon J. Gerraty <sjg@bad.crufty.net> 588 589 * Makefile.in (MAKE_VERSION): bump version to 20100408 590 * Merge with NetBSD make, pick up 591 o unit tests for .ERROR, .error 592 o fix for .ERROR to ensure it cannot be default target. 593 5942010-04-06 Simon J. Gerraty <sjg@bad.crufty.net> 595 596 * Makefile.in (MAKE_VERSION): bump version to 20100406 597 * Merge with NetBSD make, pick up 598 o fix for compat mode "Error code" going to debug_file. 599 o fix for .ALLSRC being populated twice. 600 o support for .info, .warning and .error directives 601 o .MAKE.MODE to control make's operational mode 602 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile 603 name(s). 604 o .MAKE.DEPENDFILE to control the name of the depend file 605 o .ERROR target - run on failure. 606 6072010-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 608 609 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile 610 611 * os.sh,arch.c: patch for Haiku from joerg at netbsd 612 6132010-03-17 Simon J. Gerraty <sjg@bad.crufty.net> 614 615 * Makefile.in (MAKE_VERSION): bump version to 20100222 616 * Merge with NetBSD make, pick up 617 o better error msg for .for with mutiple inter vars 618 619 * boot-strap: 620 o use make-bootstrap.sh from joerg at netbsd 621 to avoid the need for a native make when bootstrapping. 622 o add "" everywhere ;-) 623 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1 624 otherwise the pre-formated version. 625 6262010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 627 628 * Makefile.in (MAKE_VERSION): bump version to 20100102 629 * Merge with NetBSD make, pick up: 630 o fix for -m .../ 631 6322009-11-18 Simon J. Gerraty <sjg@void.crufty.net> 633 634 * Makefile.in (MAKE_VERSION): bump version to 20091118 635 * Merge with NetBSD make, pick up: 636 o .unexport 637 o report lines that start with '.' and should have ':' 638 (catch typo's of .el*if). 639 6402009-10-30 Simon J. Gerraty <sjg@void.crufty.net> 641 642 * configure.in: Ensure that srcdir and mksrc are absolute paths. 643 6442009-10-09 Simon J. Gerraty <sjg@void.crufty.net> 645 646 * Makefile.in (MAKE_VERSION): fix version to 20091007 647 6482009-10-07 Simon J. Gerraty <sjg@void.crufty.net> 649 650 * Makefile.in (MAKE_VERSION): bump version to 200910007 651 * Merge with NetBSD make, pick up: 652 o fix for parsing of :S;...;...; applied to .for loop iterator 653 appearing in a dependency line. 654 6552009-09-09 Simon J. Gerraty <sjg@void.crufty.net> 656 657 * Makefile.in (MAKE_VERSION): bump version to 20090909 658 * Merge with NetBSD make, pick up: 659 o fix for -C, .CURDIR and .OBJDIR 660 * boot-strap: 661 o allow share_dir to be set independent of prefix. 662 o select default share_dir better when prefix ends in $HOST_TARGET 663 o if FORCE_BSD_MK etc were set, include them in the suggested 664 install-mk command. 665 6662009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 667 668 * Makefile.in (MAKE_VERSION): bump version to 20090908 669 * Merge with NetBSD make, pick up: 670 o .MAKE.LEVEL for recursion tracking 671 o fix for :M scanning \: 672 6732009-09-03 Simon J. Gerraty <sjg@void.crufty.net> 674 675 * configure.in: Don't -D__EXTENSIONS__ if 676 AC_USE_SYSTEM_EXTENSIONS says "no". 677 6782009-08-26 Simon J. Gerraty <sjg@void.crufty.net> 679 680 * Makefile.in (MAKE_VERSION): bump version to 20090826 681 Simplify MAKE_VERSION to just the bare date. 682 * Merge with NetBSD make, pick up: 683 o -C directory support. 684 o support for SIGINFO 685 o use $TMPDIR for temp files. 686 o child of vfork should be careful about modifying parent's state. 687 688 6892009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 690 691 * Appy some patches for MiNT from David Brownlee 692 6932009-02-26 Simon J. Gerraty <sjg@void.crufty.net> 694 695 * Makefile.in (BMAKE_VERSION): bump version to 20090222 696 * Merge with NetBSD make, pick up: 697 o Possible null pointer de-ref in Var_Set. 698 6992009-02-08 Simon J. Gerraty <sjg@void.crufty.net> 700 701 * Makefile.in (BMAKE_VERSION): bump version to 20090204 702 * Merge with NetBSD make, pick up: 703 o bmake_malloc et al moved to their own .c 704 o Count both () and {} when looking for the end of a :M pattern 705 o Change 'Buffer' so that it is the actual struct, not a pointer to it. 706 o strlist.c - functions for processing extendable arrays of pointers to strings. 707 o ClientData replaced with void *, so const void * can be used. 708 o New debug flag C for DEBUG_CWD 709 7102008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 711 712 * Makefile.in (BMAKE_VERSION): bump version to 20081111 713 Apply patch from Joerg Sonnenberge to 714 configure.in: 715 o remove some redundant checks 716 o check for emlloc etc only in libutil and require the whole family. 717 util.c: 718 o remove [v]asprintf which is no longer used. 719 7202008-11-04 Simon J. Gerraty <sjg@void.crufty.net> 721 722 * Makefile.in (BMAKE_VERSION): bump version to 20081101 723 * Merge with NetBSD make, pick up: 724 o util.c: avoid use of putenv() - christos 725 7262008-10-30 Simon J. Gerraty <sjg@void.crufty.net> 727 728 * Makefile.in (BMAKE_VERSION): bump version to 20081030 729 pick up man page tweaks. 730 7312008-10-29 Simon J. Gerraty <sjg@void.crufty.net> 732 733 * Makefile.in: move processing of LIBOBJS to after is definition! 734 thus we'll have getenv.c in SRCS only if needed. 735 736 * make.1: add examples of how to use :? 737 738 * Makefile.in (BMAKE_VERSION): bump version to 20081029 739 * Merge with NetBSD make, pick up: 740 o fix for .END processing with -j 741 o segfault from Parse_Error when no makefile is open 742 o handle numeric expressions in any variable expansion 743 o debug output now defaults to stderr, -dF to change it - apb 744 o make now uses bmake_malloc etc so that it can build natively 745 on A/UX - wasn't an issue for bmake, but we want to keep in sync. 746 7472008-09-27 Simon J. Gerraty <sjg@void.crufty.net> 748 749 * Makefile.in (BMAKE_VERSION): bump version to 20080808 750 * Merge with NetBSD make, pick up: 751 o fix for PR/38840: Pierre Pronchery: make crashes while parsing 752 long lines in Makefiles 753 o optimizations for VarQuote by joerg 754 o fix for PR/38756: dominik: make dumps core on invalid makefile 755 7562008-05-15 Simon J. Gerraty <sjg@void.crufty.net> 757 758 * Makefile.in (BMAKE_VERSION): bump version to 20080515 759 * Merge with NetBSD make, pick up: 760 o fix skip setting vars in VAR_GLOBAL context, to handle 761 cases where VAR_CMD is used for other than command line vars. 762 7632008-05-14 Simon J. Gerraty <sjg@void.crufty.net> 764 765 * boot-strap (make_version): we may need to look in 766 $prefix/share/mk for sys.mk 767 768 * Makefile.in (BMAKE_VERSION): bump version to 20080514 769 * Merge with NetBSD make, pick up: 770 o skip setting vars in VAR_GLOBAL context, when already set in 771 VAR_CMD which takes precedence. 772 7732008-03-30 Simon J. Gerraty <sjg@void.crufty.net> 774 775 * Makefile.in (BMAKE_VERSION): bump version to 20080330 776 * Merge with NetBSD make, pick up: 777 o fix for ?= when LHS contains variable reference. 778 7792008-02-15 Simon J. Gerraty <sjg@void.crufty.net> 780 781 * merge some patches from NetBSD pkgsrc. 782 783 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of 784 the MAKSYSPATH used during bootstrap. 785 786 * Makefile.in (BMAKE_VERSION): bump version to 20080215 787 * Merge with NetBSD make, pick up: 788 o warn if non-space chars follow 'empty' in a conditional. 789 7902008-01-18 Simon J. Gerraty <sjg@void.crufty.net> 791 792 * Makefile.in (BMAKE_VERSION): bump version to 20080118 793 * Merge with NetBSD make, pick up: 794 o consider dependencies read from .depend as optional - dsl 795 o remember when buffer for reading makefile grows - dsl 796 o add -dl (aka LOUD) - David O'Brien 797 7982007-10-22 Simon J. Gerraty <sjg@void.crufty.net> 799 800 * Makefile.in (BMAKE_VERSION): bump version to 20071022 801 * Merge with NetBSD make, pick up: 802 o Allow .PATH<suffix> to be used for .include "" 803 804 * boot-strap: source default settings from .bmake-boot-strap.rc 805 8062007-10-16 Simon J. Gerraty <sjg@void.crufty.net> 807 808 * Makefile.in: fix maninstall on various systems 809 provided that our man.mk is used. 810 For non-BSD systems we install the preformatted page 811 into $MANDIR/cat1 812 8132007-10-15 Simon J. Gerraty <sjg@void.crufty.net> 814 815 * boot-strap: make bmake.1 too, so maninstall works. 816 8172007-10-14 Simon J. Gerraty <sjg@void.crufty.net> 818 819 * Makefile.in (BMAKE_VERSION): bump version to 20071014 820 * Merge with NetBSD make, pick up: 821 o revamped handling of defshell - configure no longer needs to 822 know the content of the shells array - apb 823 o stop Var_Subst modifying its input - apb 824 o avoid calling ParseTrackInput too often - dsl 825 8262007-10-11 Simon J. Gerraty <sjg@void.crufty.net> 827 828 * Makefile.in (BMAKE_VERSION): bump version to 20071011 829 * Merge with NetBSD make, pick up: 830 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path. 831 832 * sigcompat.c: some tweaks for HP-UX 11.x based on 833 patch from Tobias Nygren 834 835 * configure.in: update handling of --with-defshell to match 836 new make behavior. --with-defshell=/usr/xpg4/bin/sh 837 will now do what one might hope - provided the chosen shell 838 behaves enough like sh. 839 8402007-10-08 Simon J. Gerraty <sjg@void.crufty.net> 841 842 * Makefile.in (BMAKE_VERSION): bump to 20071008 843 * Merge with NetBSD make, pick up: 844 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg 845 o .export/.MAKE.EXPORTED - export of variables - sjg 846 o .MAKE.MAKEFILES - track all makefiles read - sjg 847 o performance improvements - dsl 848 o revamp parallel job scheduling - dsl 849 8502006-07-28 Simon J. Gerraty <sjg@void.crufty.net> 851 852 * Makefile.in (BMAKE_VERSION): bump to 20060728 853 * Merge with NetBSD make, pick up: 854 o extra debug info during variable and cond processing - sjg 855 o shell definition now covers newline - rillig 856 o minor mem leak in PrintOnError - sjg 857 8582006-05-11 Simon J. Gerraty <sjg@void.crufty.net> 859 860 * Makefile.in (BMAKE_VERSION): bump to 20060511 861 * Merge with NetBSD make, pick up: 862 o more memory leaks - coverity 863 o possible overflow in ArchFindMember - coverity 864 o extract variable modifier code out of Var_Parse() 865 so it can be called recursively - sjg 866 o unit-tests/moderrs - sjg 867 8682006-04-12 Simon J. Gerraty <sjg@void.crufty.net> 869 870 * Makefile.in (BMAKE_VERSION): bump to 20060412 871 * Merge with NetBSD make, pick up: 872 o fixes for some memory leaks - coverity 873 o only read first sys.mk etc when searching sysIncPath - sjg 874 875 * main.c (ReadMakefile): remove hack for __INTERIX that prevented 876 setting ${MAKEFILE} - OBATA Akio 877 8782006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 879 880 * Makefile.in (BMAKE_VERSION): bump to 20060318 881 * Merge with NetBSD make, pick up: 882 o cleanup of job.c to remove remote handling, distcc is more 883 useful and this code was likely bit-rotting - dsl 884 o fix for :P modifier - sjg 885 * boot-strap: set default prefix to something reasonable 886 (for me anyway). 887 8882006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 889 890 * Makefile.in (BMAKE_VERSION): bump to 20060301 891 * Merge with NetBSD make, pick up: 892 o make .WAIT apply recursively, document and test case - apb 893 o allow variable modifiers in a variable appear anywhere in 894 modifier list, document and test case - sjg 895 8962006-02-22 Simon J. Gerraty <sjg@void.crufty.net> 897 898 * Makefile.in (BMAKE_VERSION): bump to 20060222 899 * Merge with NetBSD make, pick up: 900 o improved job token handling - dsl 901 o SIG_DFL the correct signal before exec - dsl 902 o more debug info during parsing - dsl 903 o allow variable modifiers to be specified via variable - sjg 904 * boot-strap: explain why we died if no mksrc 905 9062005-11-05 Simon J. Gerraty <sjg@void.crufty.net> 907 908 * Makefile.in (BMAKE_VERSION): bump to 20051105 909 * configure.in: always set default_sys_path 910 default is ${prefix}/share/mk 911 - remove prefix_sys_path, anyone wanting more than above 912 needs to set it manually. 913 9142005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 915 916 * boot-strap: make this a bit easier for pkgsrc folk. 917 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to 918 'mips' while pkgsrc wants 'mipseb' or 'mipsel' 919 9202005-11-02 Simon J. Gerraty <sjg@void.crufty.net> 921 922 * Makefile.in (BMAKE_VERSION): bump to 20051102 923 * job.c (JobFinish): fix likely ancient merge lossage 924 fix from Todd Vierling. 925 * boot-strap (srcdir): allow setting mksrc=none 926 9272005-10-31 Simon J. Gerraty <sjg@void.crufty.net> 928 929 * Makefile.in (BMAKE_VERSION): bump to 20051031 930 * ranlib.h: skip on OSF too. 931 (NetBSD PR 31864) 932 9332005-10-10 Simon J. Gerraty <sjg@void.crufty.net> 934 935 * Makefile.in (BMAKE_VERSION): bump to 20051002 936 fix a silly typo 937 9382005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 939 940 * Makefile.in (BMAKE_VERSION): bump to 20051001 941 support for UnixWare and some other systems, 942 based on patches from pkgsrc/bootstrap 943 9442005-09-03 Simon J. Gerraty <sjg@void.crufty.net> 945 946 * Makefile.in (BMAKE_VERSION): bump to 20050901 947 * Merge with NetBSD make, pick up: 948 o possible parse error causing us to wander off. 949 9502005-06-06 Simon J. Gerraty <sjg@void.crufty.net> 951 952 * Makefile.in (BMAKE_VERSION): bump to 20050606 953 * Merge with NetBSD make, pick up: 954 o :0x modifier for randomizing a list 955 o fixes for a number of -Wuninitialized issues. 956 9572005-05-30 Simon J. Gerraty <sjg@void.crufty.net> 958 959 * Makefile.in (BMAKE_VERSION): bump to 20050530 960 * Merge with NetBSD make, pick up: 961 o Handle dependencies for .BEGIN, .END and .INTERRUPT 962 963 * README: was seriously out of date. 964 9652005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 966 967 * Important to use .MAKE rather than MAKE. 968 9692005-03-15 Simon J. Gerraty <sjg@void.crufty.net> 970 971 * Makefile.in (BMAKE_VERSION): bump to 20050315 972 * Merge with NetBSD make, pick up: 973 o don't mistake .elsefoo for .else 974 o use suffix-specific search path correctly 975 o bunch of style nits 976 9772004-05-11 Simon J. Gerraty <sjg@void.crufty.net> 978 979 * boot-strap: 980 o ensure that args to --src and --with-mksrc 981 are resolved before giving them to configure. 982 o add -o "objdir" so that builder can control it, 983 default is $OS as determined by os.sh 984 o add -q to suppress all the install instructions. 985 9862004-05-08 Simon J. Gerraty <sjg@void.crufty.net> 987 988 * Remove __IDSTRING() 989 990 * Makefile.in (BMAKE_VERSION): bump to 20040508 991 * Merge with NetBSD make, pick up: 992 o posix fixes 993 - remove '-e' from compat mode 994 - add support for '+' command-line prefix. 995 o fix for handling '--' on command-line. 996 o fix include in lst.lib/lstInt.h to simplify '-I's 997 o we also picked up replacement of MAKE_BOOTSTRAP 998 with !MAKE_NATIVE which is a noop, but possibly confusing. 999 10002004-04-14 Simon J. Gerraty <sjg@void.crufty.net> 1001 1002 * Makefile.in (BMAKE_VERSION): bump to 20040414 1003 * Merge with NetBSD make, pick up: 1004 o allow quoted strings on lhs of conditionals 1005 o issue warning when extra .else is seen 1006 o print line numer when errors encountered during parsing from 1007 string. 1008 10092004-02-20 Simon J. Gerraty <sjg@void.crufty.net> 1010 1011 * Makefile.in (BMAKE_VERSION): bump to 20040220 1012 * Merge with NetBSD make, pick up: 1013 o fix for old :M parsing bug. 1014 o re-jigged unit-tests 1015 10162004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1017 1018 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,} 1019 so that './bmake -f Makefile test' works. 1020 10212004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 1022 1023 * Makefile.in: (BMAKE_VERSION): bump to 20040214 1024 * Merge with NetBSD make, pick up: 1025 o search upwards for *.mk 1026 o fix for double free of var substitution buffers 1027 o use of getopt replaced with custom code, since the usage 1028 (re-scanning) isn't posix compatible. 1029 10302004-02-12 Simon J. Gerraty <sjg@void.crufty.net> 1031 1032 * arch.c: don't include ranlib.h on ELF systems 1033 (thanks to Chuck Cranor <chuck@ece.cmu.edu>). 1034 10352004-01-18 Simon J. Gerraty <sjg@void.crufty.net> 1036 1037 * Makefile.in (BMAKE_VERSION): bump to 20040118 1038 1039 * boot-strap (while): export vars we assign to on cmdline 1040 * unit-test/Makefile.in: ternary is .PHONY 1041 10422004-01-08 Simon J. Gerraty <sjg@void.crufty.net> 1043 1044 * Makefile.in (BMAKE_VERSION): bump version to 20040108 1045 * Merge with NetBSD make, pick up: 1046 o fix for ternary modifier 1047 10482004-01-06 Simon J. Gerraty <sjg@void.crufty.net> 1049 1050 * Makefile.in (BMAKE_VERSION): bump version to 20040105 1051 * Merge with NetBSD make, pick up: 1052 o fix for cond.c to handle compound expressions better 1053 o variable expansion within sysV style replacements 1054 10552003-12-22 Simon J. Gerraty <sjg@void.crufty.net> 1056 1057 * Make portable snprintf safer - output to /dev/null first to 1058 check space needed. 1059 1060 * Makefile.in (BMAKE_VERSION): bump version to 20031222 1061 * Merge with NetBSD make, pick up: 1062 o -dg3 to show input graph when things go wrong. 1063 o explicitly look for makefiles in objdir if not found in curdir so 1064 that errors in .depend etc will be reported accurarely. 1065 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?' 1066 instead as it more accurately reflects the expected behavior and 1067 is more consistently implemented. 1068 o avoid use of asprintf. 1069 10702003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 1071 1072 * util.c: Add asprintf and vasprintf. 1073 1074 * Makefile.in (BMAKE_VERSION): bump version to 20030928 1075 * Merge with NetBSD make, pick up: 1076 :[] modifier - allows picking words from a variable. 1077 :tW modifier - allows treating value as one big word. 1078 W flag for :C and :S - allows treating value as one big word. 1079 10802003-09-12 Simon J. Gerraty <sjg@void.crufty.net> 1081 1082 * Merge with NetBSD make 1083 pick up -de flag to enable printing failed command. 1084 don't skip 1st two dir entries (normally . and ..) since 1085 coda does not have them. 1086 10872003-09-09 Simon J. Gerraty <sjg@void.crufty.net> 1088 1089 * Makefile.in (BMAKE_VERSION): bump version to 20030909 1090 * Merge with NetBSD make, pick up: 1091 - changes for -V '${VAR}' to print fully expanded value 1092 cf. -V VAR 1093 - CompatRunCommand now prints the command that failed. 1094 - several files got updated 3 clause Berkeley license. 1095 10962003-08-02 Simon J. Gerraty <sjg@void.crufty.net> 1097 1098 * boot-strap: Allow setting configure args on command line. 1099 11002003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 1101 1102 * configure.in: add --with-defshell to allow sh or ksh 1103 to be selected as default shell. 1104 1105 * Makefile.in: bump version to 20030731 1106 1107 * Merge with NetBSD make 1108 Pick up .SHELL spec for ksh and associate man page changes. 1109 Also compat mode now uses the same shell specs. 1110 11112003-07-29 Simon J. Gerraty <sjg@void.crufty.net> 1112 1113 * var.c (Var_Parse): ensure delim is initialized. 1114 1115 * unit-tests/Makefile.in: use single quotes to avoid problems from 1116 some shells. 1117 1118 * makefile.boot.in: 1119 Run the unit-tests as part of the bootstrap procedure. 1120 11212003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1122 1123 * unit-tests/Makefile.in: always force complaints from 1124 ${TEST_MAKE} to be from 'make'. 1125 1126 * configure.in: add check for 'diff -u' 1127 also fix some old autoconf'isms 1128 1129 * Makefile.in (BMAKE_VERSION): bump version to 20030728. 1130 if using GCC add -Wno-cast-qual to CFLAGS for var.o 1131 1132 * Merge with NetBSD make 1133 Pick up fix for :ts parsing error in some cases. 1134 Pick unit-tests. 1135 11362003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1137 1138 * Makefile.in (BMAKE_VERSION): bump version to 20030723. 1139 1140 * var.c (Var_Parse): fix bug in :ts modifier, after const 1141 correctness fixes, must pass nstr to VarModify. 1142 11432003-07-14 Simon J. Gerraty <sjg@void.crufty.net> 1144 1145 * Makefile.in: BMAKE_VERSION switch to a date based version. 1146 We'll generally use the date of last import from NetBSD. 1147 1148 * Merge with NetBSD make 1149 Pick up fixes for const-correctness, now passes WARNS=3 on 1150 NetBSD. 1151 Pick up :ts modifier, allows controlling the separator used 1152 between words in variable expansion. 1153 11542003-07-11 Simon J. Gerraty <sjg@void.crufty.net> 1155 1156 * FILES: include boot-strap and os.sh 1157 1158 * Makefile.in: only set WARNS if we are NetBSD, the effect on 1159 FreeBSD is known to be bad. 1160 1161 * makefile.boot.in (bootstrap): make this the default target. 1162 1163 * Makefile.in: bump version to 3.1.19 1164 1165 * machine.sh: avoid A-Z with tr as it is bound to lose. 1166 11672003-07-10 Simon J. Gerraty <sjg@void.crufty.net> 1168 1169 * Merge with NetBSD make 1170 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo 1171 Plus some doc fixes. 1172 11732003-04-27 Simon J. Gerraty <sjg@void.crufty.net> 1174 1175 * Merge with NetBSD make 1176 Pick up fix for PR/1523 - don't count a library as built, if there 1177 is no way to build it 1178 1179 * Bump version to 3.1.18 1180 11812003-03-23 Simon J. Gerraty <sjg@void.crufty.net> 1182 1183 * Merge with NetBSD make 1184 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT 1185 appears in src list. 1186 11872003-03-21 Simon J. Gerraty <sjg@void.crufty.net> 1188 1189 * Merge with NetBSD make (mmm 10th anniversary!) 1190 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828) 1191 pick up -X which tells us to not export VAR=val via setenv if 1192 we are already doing so via MAKEFLAGS. This saves valuable env 1193 space on systems like Darwin. 1194 set MAKE_VERSION to 3.1.17 1195 1196 * parse.c: pix up fix for suffix rules 1197 11982003-03-06 Simon J. Gerraty <sjg@void.crufty.net> 1199 1200 * Merge with NetBSD make. 1201 pick up fix for propagating -B via MAKEFLAGS. 1202 set MAKE_VERSION to 3.1.16 1203 1204 * Apply some patches from pkgsrc-bootstrap/bmake 1205 Originally by Grant Beattie <grant@netbsd.org> 1206 I may have missed some - since they are based on bmake-3.1.12 1207 12082002-12-03 Simon J. Gerraty <sjg@void.crufty.net> 1209 1210 * makefile.boot.in (bmake): update install targets for those that 1211 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid 1212 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>. 1213 1214 * bmake.cat1: update the pre-formatted man page! 1215 12162002-11-30 Simon J. Gerraty <sjg@void.crufty.net> 1217 1218 * Merge with NetBSD make. 1219 pick up fix for premature free of pointer used in call 1220 to Dir_InitCur(). 1221 set MAKE_VERSION to 3.1.15 1222 12232002-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1224 1225 * configure.in: determine suitable value for MKSRC. 1226 override using --with-mksrc=PATH. 1227 1228 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems. 1229 configs(8) will use 'sun4' as an alias for 'sparc'. 1230 12312002-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1232 1233 * Merge with NetBSD make. 1234 pick up ${.PATH} 1235 pick up fix for finding ../cat.c via .PATH when .CURDIR=.. 1236 set MAKE_VERSION to 3.1.14 1237 add configure checks for killpg and sys/socket.h 1238 12392002-09-16 Simon J. Gerraty <sjg@void.crufty.net> 1240 1241 * tag bmake-3-1-13 1242 1243 * makefile.boot.in (bmake): use install-mk 1244 Also setup ./mk before trying to invoke bmake.boot incase we 1245 needed install-mk to create a sys.mk for us. 1246 1247 * configure.in: If we need to add -I${srcdir}/missing, make it an 1248 absolute path so that it works for lst.lib too. 1249 1250 * make.h: always include sys/cdefs.h since we provide one if the 1251 host does not. 1252 1253 * Makefile.in (install-mk): 1254 use MKSRC/install-mk which will do the right thing. 1255 use uname -p for ARCH if possible. 1256 since install-mk will setup links bsd.prog.mk -> prog.mk if 1257 needed, just .include bsd.prog.mk 1258 1259 * Merge with NetBSD make (NetBSD-1.6) 1260 Code is ansi-C only now. 1261 Bug in handling of dotLast is fixed. 1262 Can now assign .OBJDIR and make will reset its notions of life. 1263 New modifiers :tu :tl for toUpper and toLower. 1264 1265Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1266 1267 * Merge with NetBSD make 1268 pick up fix for .END failure in compat mode. 1269 pick up fix for extra va_end() in ParseVErrorInternal. 1270 1271Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1272 1273 * configure.in: for systems that have sys/cdefs.h check if it is 1274 compatible. If not, include the one under missing, but tell it to 1275 include the native one too - necessary on Linux. 1276 1277 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use 1278 include_next (for gcc) to get the native sys/cdefs.h 1279 1280Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1281 1282 * job.c (JobFinish): Fix an earlier merge bug that resulted in 1283 leaking descriptors when using -jN. 1284 1285 * job.c (JobPrintCommand): See if "curdir" exists before 1286 attempting to chdir(). Doing the chdir directly in make (when in 1287 compat mode) fails silently, so let the -jN version do the same. 1288 This can happen when building kernels in an object tree and 1289 playing clever games to reset .CURDIR. 1290 1291 * Merged with NetBSD make 1292 pick up .USEBEFORE 1293 1294Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1295 1296 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work. 1297 1298Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1299 1300 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell 1301 us not to export the iterator variable when using VAR_CMD context. 1302 1303Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1304 1305 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here, 1306 its the wrong "fix". 1307 1308Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1309 1310 * Redesigned export of VAR_CMD's via MAKEFLAGS. 1311 We now simply append the variable names to .MAKEOVERRIDES, and 1312 handle duplicate suppression and quoting in ExportMAKEFLAGS using: 1313 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@} 1314 Apart from fixing quoting bugs in previous version, this allows us 1315 to export vars to the environment by simply doing: 1316 .MAKEOVERRIDES+= PATH 1317 Merged again with NetBSD make, but the above is the only change. 1318 1319 * configure.in: added 1320 --disable-pwd-override disable $PWD overriding getcwd() 1321 --disable-check-make-chdir disable make trying to guess 1322 when it should automatically cd ${.CURDIR} 1323 1324 * Merge with NetBSD make, changes include: 1325 parse.c (ParseDoDependency): Spot that the syntax error is 1326 caused by an unresolved cvs/rcs conflict and say so. 1327 var.c: most of Var* functions now take a ctxt as 1st arg. 1328 now does variable substituion on rhs of sysv style modifiers. 1329 1330 * var.c (Var_Set): exporting of command line variables (VAR_CMD) 1331 is now done here. We append the name='value' to .MAKEOVERRIDES 1332 rather than directly into MAKEFLAGS as this allows a Makefile to 1333 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a 1334 very similar mechanism. Note that in adding name='value' to 1335 .MAKEOVERRIDES we do the moral equivalent of: 1336 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val' 1337 1338Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1339 1340 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H 1341 1342 * Merged with NetBSD make 1343 make -dx can now be used to run commands via sh -x 1344 better error messages on exec failures. 1345 1346Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1347 1348 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that 1349 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION, 1350 MACHINE etc otherwise they propagate from the previous bmake. 1351 1352 * configure.in (machine): allow --with-machine=generic to make 1353 configure use machine.sh to set MACHINE. 1354 1355 * job.c (JobInterrupt): convert to using WAIT_T and friends. 1356 1357 * Makefile.in: mention in bmake.1 that we use autoconf. 1358 1359 * make.1: mention MAKE_PRINT_VAR_ON_ERROR. 1360 1361Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1362 1363 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend" 1364 as that rather defeats the usefulness of ${MAKEFILE}. 1365 1366 * main.c (MainParseArgs): append command line variable assignments 1367 to MAKEFLAGS so that they get propagated to child make's. 1368 Apparently this is required POSIX behaviour? Its useful anyway. 1369 1370Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1371 1372 * compat.c (CompatRunCommand): don't use perror() since stdio may 1373 cause problems in child of vfork(). 1374 1375 * compat.c, main.c: Call PrintOnError() when we are going to bail. 1376 This routine prints out the .curdir where we stopped and will also 1377 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}. 1378 1379 * main.c: add ${.newline} to hold a "\n" - sometimes handy in 1380 :@ expansion. 1381 1382 * var.c: VarLoopExpand: ignore addSpace if a \n is present. 1383 1384 * Added RCSid's for the files we've touched. 1385 1386Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1387 1388 * configure.in: Thanks to some clues from mdb@juniper.net, 1389 added autoconf magic to control setting of MACHINE, MACHINE_ARCH 1390 as well as what ends up in _PATH_DEFSYSPATH. We now have: 1391 1392 --with-machine=MACHINE explicitly set MACHINE 1393 --with-force-machine=MACHINE set FORCE_MACHINE 1394 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH 1395 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH 1396 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH 1397 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX 1398 1399 If _PATH_OBJDIRPREFIX is set to "no" we won't define it. 1400 1401 * makefile: added a pathetically simple makefile to drive 1402 bootstrapping. Running configure by hand is more useful. 1403 1404 * Makefile.in: added MAKE_VERSION, and reworked things to be less 1405 dependent on NetBSD bsd.*.mk 1406 1407 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining 1408 _PATH_OBJDIRPREFIX for those that don't want a default. 1409 construct _PATH_DEFSYSPATH from the info we get from configure. 1410 1411 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION} 1412 if MAKE_VERSION is defined. 1413 1414 * compat.c: when we bail, print out the .CURDIR we were in. 1415 1416Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1417 1418 * Merged with NetBSD make 1419 1420 * var.c: fixed a bug in the handling of the modifier :P 1421 if the node as found but the path was null, we segfault trying to 1422 duplicate it. 1423 1424Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1425 1426 * Merged with NetBSD make 1427 1428 * make.c: Make_OODate's test for a library out of date was using 1429 cmtime where it should have used mtime (my bug). 1430 1431 * compat.c: Use perror() to tell us what really went wrong when we 1432 cannot exec a command. 1433 1434Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1435 1436 * Merged with NetBSD make 1437 1438Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1439 1440 * Merged with NetBSD make 1441 1442Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1443 1444 * Merged with NetBSD make 1445 1446Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1447 1448 * Merged with NetBSD make 1449 1450Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1451 1452 * util.c: don't provide signal() since we use sigcompat.c 1453 1454 * Makefile.in: added a build target. 1455 1456 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :! 1457 These allow some quite clever magic. 1458 1459 * main.c (main): added support for getenv(MAKESYSPATH). 1460 1461Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1462 1463 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set. 1464 This avoids objdir having a different value depending on how a 1465 directory was reached (via command line, or subdir.mk). 1466 1467 * If FORCE_MACHINE is defined, ignore getenv("MACHINE"). 1468 1469Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1470 1471 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if 1472 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not. 1473 I've been testing this in NetBSD's make for some weeks. 1474 1475 * Turn Makefile into Makefile.in and make it useful. 1476 1477Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1478 1479 * Imported NetBSD's -current make(1) and resolve conflicts. 1480 1481 * Applied autoconf patches from bmake v2 1482 1483 * Imported clean code base from NetBSD-1.0 1484