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