ChangeLog revision 301462
190075Sobrien2016-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 290075Sobrien 390075Sobrien * Makefile (_MAKE_VERSION): 20160604 490075Sobrien Merge with NetBSD make, pick up 590075Sobrien o meta.c: missing filemon data is only relevant if we read a 690075Sobrien meta file. 790075Sobrien Also do not return oodate for a missing metafile if gn->path 890075Sobrien points to .CURDIR 990075Sobrien 1090075Sobrien2016-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 1190075Sobrien 1290075Sobrien * Makefile (_MAKE_VERSION): 20160602 1390075Sobrien Merge with NetBSD make, pick up 1490075Sobrien o cached_realpath(): avoid hitting filesystem more than necessary. 1590075Sobrien o meta.c: refactor need_meta decision, add knobs for 1690075Sobrien missing meta file and filemon data wrt out-of-datedness. 1790075Sobrien 1890075Sobrien2016-05-28 Simon J. Gerraty <sjg@bad.crufty.net> 1990075Sobrien 2090075Sobrien * Makefile (_MAKE_VERSION): 20160528 2190075Sobrien 2290075Sobrien * boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION 2390075Sobrien 2490075Sobrien2016-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 2590075Sobrien 2690075Sobrien * Makefile (_MAKE_VERSION): 20160512 2790075Sobrien Merge with NetBSD make, pick up 2890075Sobrien o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS 2990075Sobrien this is useful for gcov builds. 3090075Sobrien o propagate errors from filemon(4). 3190075Sobrien 3290075Sobrien2016-05-09 Simon J. Gerraty <sjg@bad.crufty.net> 3390075Sobrien 3490075Sobrien * Makefile (_MAKE_VERSION): 20160509 3590075Sobrien Merge with NetBSD make, pick up 3690075Sobrien o remove use of non-standard types u_int etc. 3790075Sobrien o meta.c: apply realpath() before matching against metaIgnorePaths 3890075Sobrien 3990075Sobrien2016-04-04 Simon J. Gerraty <sjg@bad.crufty.net> 4090075Sobrien 4190075Sobrien * Makefile (_MAKE_VERSION): 20160404 4290075Sobrien Merge with NetBSD make, pick up 4390075Sobrien o allow makefile to set .MAKE.JOBS 4490075Sobrien 4590075Sobrien * Makefile (PROG_NAME): use ${_MAKE_VERSION} 4690075Sobrien 4790075Sobrien2016-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 4890075Sobrien 4990075Sobrien * Makefile (_MAKE_VERSION): 20160315 5090075Sobrien Merge with NetBSD make, pick up 5190075Sobrien o fix handling of archive members 5290075Sobrien 5390075Sobrien2016-03-13 Simon J. Gerraty <sjg@bad.crufty.net> 5490075Sobrien 5590075Sobrien * Makefile (_MAKE_VERSION): rename variable to avoid interference 5690075Sobrien with checks for ${MAKE_VERSION} 5790075Sobrien 5890075Sobrien2016-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 5990075Sobrien 6090075Sobrien * Makefile (MAKE_VERSION): 20160310 6190075Sobrien Merge with NetBSD make, pick up 6290075Sobrien o meta.c: treat missing Read file same as Write, incase we Delete it. 6390075Sobrien 6490075Sobrien2016-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 6590075Sobrien 6690075Sobrien * Makefile (MAKE_VERSION): 20160307 6790075Sobrien Merge with NetBSD make, pick up 6890075Sobrien o var.c: fix :ts\nnn to be octal by default. 6990075Sobrien o meta.c: meta_finish() to cleanup memory. 7090075Sobrien 7190075Sobrien2016-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 7290075Sobrien 7390075Sobrien * Makefile (MAKE_VERSION): 20160226 7490075Sobrien Merge with NetBSD make, pick up 7590075Sobrien o meta.c: allow meta file for makeDepend if makefiles want it. 7690075Sobrien 7790075Sobrien2016-02-19 Simon J. Gerraty <sjg@bad.crufty.net> 7890075Sobrien 7990075Sobrien * var.c: default .MAKE.SAVE_DOLLARS to FALSE 8090075Sobrien for backwards compatability. 8190075Sobrien 8290075Sobrien * Makefile (MAKE_VERSION): 20160220 8390075Sobrien Merge with NetBSD make, pick up 8490075Sobrien o var.c: add knob to control handling of '$$' in := 8590075Sobrien 8690075Sobrien2016-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 8790075Sobrien 8890075Sobrien * Makefile (MAKE_VERSION): 20160218 8990075Sobrien Merge with NetBSD make, pick up 9090075Sobrien o var.c: add .export-literal allows us to fix sys.clean-env.mk 9190075Sobrien post the changes to Var_Subst. 9290075Sobrien Var_Subst now takes flags, and does not consume '$$' in := 9390075Sobrien 9490075Sobrien2016-02-17 Simon J. Gerraty <sjg@bad.crufty.net> 9590075Sobrien 9690075Sobrien * Makefile (MAKE_VERSION): 20160217 9790075Sobrien Merge with NetBSD make, pick up 9890075Sobrien o var.c: preserve '$$' in := 9990075Sobrien o parse.c: add .dinclude for handling included 10090075Sobrien makefile like .depend 10190075Sobrien 10290075Sobrien2015-12-20 Simon J. Gerraty <sjg@bad.crufty.net> 10390075Sobrien 10490075Sobrien * Makefile (MAKE_VERSION): 20151220 10590075Sobrien Merge with NetBSD make, pick up 10690075Sobrien o suff.c: re-initialize suffNull when clearing suffixes. 10790075Sobrien 10890075Sobrien2015-12-01 Simon J. Gerraty <sjg@bad.crufty.net> 10990075Sobrien 11090075Sobrien * Makefile (MAKE_VERSION): 20151201 11190075Sobrien Merge with NetBSD make, pick up 11290075Sobrien o cond.c: CondCvtArg: avoid access beyond end of empty buffer. 11390075Sobrien o meta.c: meta_oodate: use lstat(2) for checking link target 11490075Sobrien in case it is a symlink. 11590075Sobrien o var.c: avoid calling brk_string and Var_Export1 with empty 11690075Sobrien strings. 11790075Sobrien 11890075Sobrien2015-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 11990075Sobrien 12090075Sobrien * Makefile (MAKE_VERSION): 20151126 12190075Sobrien Merge with NetBSD make, pick up 12290075Sobrien o parse.c: ParseTrackInput don't access beyond 12390075Sobrien end of old value. 12490075Sobrien 12590075Sobrien2015-10-22 Simon J. Gerraty <sjg@bad.crufty.net> 12690075Sobrien 127 * Makefile (MAKE_VERSION): 20151022 128 129 * Add support for BSD/OS which lacks inttypes.h 130 and really needs sys/param.h for sys/sysctl.h 131 also 'type' is not a shell builtin. 132 133 * var.c: eliminate uint32_t and need for inttypes.h 134 135 * main.c: PrintOnError flush stdout before run .ERROR 136 137 * parse.c: cope with _SC_PAGESIZE not being defined. 138 139 1402015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 141 142 * Makefile (MAKE_VERSION): 20151020 143 Merge with NetBSD make, pick up 144 o var.c: fix uninitialized var 145 1462015-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 147 148 * var.c: the conditional expressions used with ':?' can be 149 expensive, if already discarding do not evaluate or expand 150 anything. 151 1522015-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 153 154 * Makefile (MAKE_VERSION): 20151010 155 Merge with NetBSD make, pick up 156 o Add Boolean wantit flag to Var_Subst and Var_Parse 157 when FALSE we know we are discarding the result and can 158 skip operations like Cmd_Exec. 159 1602015-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 161 162 * Makefile (MAKE_VERSION): 20151009 163 Merge with NetBSD make, pick up 164 o var.c: don't check for NULL before free() 165 o meta.c: meta_oodate, do not hard code ignore of makeDependfile 166 1672015-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 168 169 * Makefile (MAKE_VERSION): 20150910 170 Merge with NetBSD make, pick up 171 o main.c: with -w print Enter/Leaving messages for objdir too 172 if necessary. 173 o centralize shell metachar handling 174 175 * FILES: add metachar.[ch] 176 1772015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 178 179 * Makefile (MAKE_VERSION): 20150606 180 Merge with NetBSD make, pick up 181 o make.1: document .OBJDIR target 182 1832015-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 184 185 * Makefile (MAKE_VERSION): 20150505 186 Merge with NetBSD make, pick up 187 o cond.c: be strict about lhs of comparison when evaluating .if 188 but less so when called from variable expansion. 189 o unit-tests/cond2.mk: test various error conditions 190 1912015-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 192 193 * machine.sh (MACHINE): Add Bitrig 194 patch from joerg@netbsd.org 195 1962015-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 197 198 * Makefile (MAKE_VERSION): 20150418 199 Merge with NetBSD make, pick up 200 o job.c: use memmove() rather than memcpy() 201 202 * unit-tests/varshell.mk: SunOS cannot handle the TERMINATED_BY_SIGNAL 203 case, so skip it. 204 2052015-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 206 207 * Makefile (MAKE_VERSION): 20150411 208 bump version - only mk/ changes. 209 2102015-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 211 212 * Makefile (MAKE_VERSION): 20150410 213 Merge with NetBSD make, pick up 214 o document different handling of '-' in jobs mode vs compat 215 o fix jobs mode so that '-' only applies to whole job 216 when shell lacks hasErrCtl 217 o meta.c: use separate vars to track lcwd and latestdir (read) 218 per process 219 2202015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 221 222 * Makefile (MAKE_VERSION): 20150401 223 Merge with NetBSD make, pick up 224 o meta.c: close meta file in child 225 226 * Makefile: use BINDIR.bmake if set. 227 Same for MANDIR and SHAREDIR 228 Handy for testing release candidates 229 in various environments. 230 2312015-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 232 233 * move initialization of savederr to block where it is used 234 to avoid spurious warning from gcc5 235 2362014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 237 238 * Makefile (MAKE_VERSION): 20141111 239 just a cooler number 240 2412014-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 242 243 * Makefile (MAKE_VERSION): 20141105 244 Merge with NetBSD make, pick up 245 o revert major overhaul of suffix handling 246 and POSIX compliance - too much breakage 247 and impossible to make backwards compatible. 248 o we still have the new unit test structure which is ok. 249 o meta.c ensure "-- filemon" is at start of line. 250 2512014-09-17 Simon J. Gerraty <sjg@bad.crufty.net> 252 253 * configure.in: test that result of getconf PATH_MAX is numeric 254 and discard if not. Apparently needed for Hurd. 255 2562014-08-30 Simon J. Gerraty <sjg@bad.crufty.net> 257 258 * Makefile (MAKE_VERSION): 20140830 259 Merge with NetBSD make, pick up 260 o major overhaul of suffix handling 261 o improved POSIX compliance 262 o overhauled unit-tests 263 2642014-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 265 266 * Makefile (MAKE_VERSION): 20140620 267 Merge with NetBSD make, pick up 268 o var.c return varNoError rather than var_Error for ::= modifiers. 269 2702014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 271 272 * Makefile (MAKE_VERSION): 20140522 273 Merge with NetBSD make, pick up 274 o var.c detect some parse errors. 275 2762014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 277 278 * Fix spelling errors - patch from Pedro Giffuni 279 2802014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 281 282 * Makefile (MAKE_VERSION): 20140214 283 Merge with NetBSD make, pick up 284 o .INCLUDEFROM* 285 o use Var_Value to get MAKEOBJDIR[PREFIX] 286 o reduced realloc'ign in brk_string. 287 * configure.in: add a check for compiler supporting __func__ 288 2892014-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 290 291 * boot-strap: ignore mksrc=none 292 2932014-01-02 Simon J. Gerraty <sjg@bad.crufty.net> 294 295 * Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk 296 2972014-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 298 299 * Makefile (MAKE_VERSION): 20140101 300 * configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024) 301 * Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max 302 * make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for 303 Hurd) 304 * configure.in: Add AC_PREREQ and check for 305 sysctl; patch from Andrew Shadura andrewsh at debian.org 306 3072013-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 308 309 * Makefile (MAKE_VERSION): 20131010 310 * lose the const from arg to systcl to avoid problems on older BSDs. 311 3122013-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 313 314 * Makefile (MAKE_VERSION): 20131001 315 Merge with NetBSD make, pick up 316 o main.c: for NATIVE build sysctl to get MACHINE_ARCH from 317 hw.machine_arch if necessary. 318 o meta.c: meta_oodate - need to look at src of Link and target 319 of Move as well. 320 * main.c: check that CTL_HW and HW_MACHINE_ARCH exist. 321 provide __arraycount() if needed. 322 3232013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 324 325 * Makefile (MAKE_VERSION): 20130904 326 Merge with NetBSD make, pick up 327 o Add VAR_INTERNAL context, so that internal setting of 328 MAKEFILE does not override value set by makefiles. 329 3302013-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 331 332 * Makefile (MAKE_VERSION): 20130902 333 Merge with NetBSD make, pick up 334 o CompatRunCommand: only apply shellErrFlag when errCheck is true 335 3362013-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 337 338 * Makefile (MAKE_VERSION): 20130828 339 Merge with NetBSD make, pick up 340 o Fix VAR :sh = syntax from Will Andrews at freebsd.org 341 o Call Job_SetPrefix() from Job_Init() so makefiles have 342 opportunity to set .MAKE.JOB.PREFIX 343 3442013-07-30 Simon J. Gerraty <sjg@bad.crufty.net> 345 346 * Makefile (MAKE_VERSION): 20130730 347 Merge with NetBSD make, pick up 348 o Allow suppression of --- job -- tokens by setting 349 .MAKE.JOB.PREFIX empty. 350 3512013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 352 353 * Makefile (MAKE_VERSION): 20130716 354 Merge with NetBSD make, pick up 355 o number of gmake compatibility tweaks 356 -w for gmake style entering/leaving messages 357 if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc. 358 handle MAKEFLAGS containing only letters. 359 o when overriding a GLOBAL variable on the command line, 360 delete it from GLOBAL context so -V doesn't show the wrong 361 value. 362 3632013-07-06 Simon J. Gerraty <sjg@bad.crufty.net> 364 365 * configure.in: We don't need MAKE_LEVEL_SAFE anymore. 366 367 * Makefile (MAKE_VERSION): 20130706 368 Merge with NetBSD make, pick up 369 o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is 370 true so that CompatRunCommand() can use it, to ensure 371 consistent behavior with jobs mode. 372 o use MAKE_LEVEL_ENV to define the variable to propagate 373 .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake). 374 o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of 375 paths to ignore. 376 3772013-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 378 379 * Makefile (MAKE_VERSION): 20130604 380 Merge with NetBSD make, pick up 381 o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's 382 to avoid leaking descriptors. 383 3842013-05-28 Simon J. Gerraty <sjg@bad.crufty.net> 385 386 * Makefile (MAKE_VERSION): 20130528 387 Merge with NetBSD make, pick up 388 o var.c: cleanup some left-overs in VarHash() 389 3902013-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 391 392 * Makefile (MAKE_VERSION): 20130520 393 generate manifest from component FILES rather than have to 394 update FILES when mk/FILES changes. 395 3962013-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 397 398 * Makefile (MAKE_VERSION): 20130518 399 Merge with NetBSD make, pick up 400 o suff.c: don't skip all processsing for .PHONY targets 401 else wildcard srcs do not get expanded. 402 o var.c: expand name of variable to delete if necessary. 403 4042013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 405 406 * Makefile (MAKE_VERSION): 20130330 407 Merge with NetBSD make, pick up 408 o meta.c: refine the handling of .OODATE in commands. 409 Rather than suppress command comparison for the entire script 410 as though .NOMETA_CMP had been used, only suppress it for the 411 one command line. 412 This allows something like ${.OODATE:M.NOMETA_CMP} to be used to 413 suppress comparison of a command without otherwise affecting it. 414 o make.1: document that 415 4162013-03-22 Simon J. Gerraty <sjg@bad.crufty.net> 417 418 * Makefile (MAKE_VERSION): 20130321 419 yes, not quite right but its a cooler number. 420 Merge with NetBSD make, pick up 421 o parse.c: fix ParseGmakeExport to be portable 422 and add a unit-test. 423 * meta.c: call meta_init() before makefiles are read and if built 424 with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON 425 this let's makefiles test for support. 426 Call meta_mode_init() to process .MAKE.MODE. 427 4282013-03-13 Simon J. Gerraty <sjg@bad.crufty.net> 429 430 * Makefile (MAKE_VERSION): 20130305 431 Merge with NetBSD make, pick up 432 o run .STALE: target when a dependency from .depend is missing. 433 o job.c: add Job_RunTarget() for the above and .BEGIN 434 4352013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 436 437 * Makefile (MAKE_VERSION): 20130303 438 Merge with NetBSD make, pick up 439 o main.c: set .MAKE.OS to utsname.sysname 440 o job.c: more checks for read and poll errors 441 o var.c: lose VarChangeCase() saves 4% time 442 4432013-03-02 Simon J. Gerraty <sjg@bad.crufty.net> 444 445 * boot-strap: remove MAKEOBJDIRPREFIX from environment since we 446 want to use MAKEOBJDIR 447 4482013-01-27 Simon J. Gerraty <sjg@bad.crufty.net> 449 450 * Merge with NetBSD make, pick up 451 o make.1: more info on how shell commands are handled. 452 o job.c,main.c: detect write errors to job pipes. 453 4542013-01-25 Simon J. Gerraty <sjg@bad.crufty.net> 455 456 * Makefile (MAKE_VERSION): 20130123 457 Merge with NetBSD make, pick up 458 o meta.c: if script uses .OODATE and meta_oodate() decides 459 rebuild is needed, .OODATE will be empty - set it to .ALLSRC. 460 o var.c: in debug output indicate which variabale modifiers 461 apply to. 462 o remove Check_Cwd logic the makefiles have been fixed. 463 4642012-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 465 466 * makefile.in: add a simple makefile for folk who insist on 467 ./configure; make; make install 468 it just runs boot-strap 469 * include mk/* to accommodate the above 470 * boot-strap: re-work to accommodate the above 471 mksrc defaults to $Mydir/mk 472 allow op={configure,build,install,clean,all} 473 add options to facilitate install 474 * Makefile.config.in: just the bits set by configure 475 * Makefile: bump version to 20121212 476 abandon Makefile.in (NetBSD Makefile) 477 leverage mk/* instead 478 * configure.in: ensure srcdir is absolute 479 4802012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 481 482 * Makefile.in (MAKE_VERSION): 20121111 483 fix generation of bmake.cat1 484 4852012-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 486 487 * Makefile.in (MAKE_VERSION): 20121109 488 Merge with NetBSD make, pick up 489 o make.c: MakeBuildChild: return 0 so search continues if a 490 .ORDER dependency is detected. 491 o unit-tests/order: test the above 492 4932012-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 494 495 * Makefile.in (MAKE_VERSION): 20121102 496 Merge with NetBSD make, pick up 497 o cond.c: allow cond_state[] to grow. 498 In meta mode with a very large tree, we can hit the limit 499 while processing dirdeps. 500 5012012-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 502 503 * Makefile.in: we need to use ${srcdir} not ${.CURDIR} 504 5052012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 506 507 * Makefile.in (MAKE_VERSION): 20121010 508 o protect syntax that only bmake parses correctly. 509 o remove auto setting of FORCE_MACHINE, use configure's 510 --with-force-machine=whatever if that is desired. 511 5122012-10-08 Simon J. Gerraty <sjg@bad.crufty.net> 513 514 * Makefile.in: do not lose history from make.1 when generating bmake.1 515 5162012-10-07 Simon J. Gerraty <sjg@bad.crufty.net> 517 518 * Makefile.in (MAKE_VERSION): 20121007 519 Merge with NetBSD make, pick up 520 o compat.c: ignore empty commands - same as jobs mode. 521 o make.1: document meta chars that cause use of shell 522 5232012-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 524 525 * Makefile.in (MAKE_VERSION): bump version to 20120911 526 * bsd.after-import.mk: include Makefile.inc early and allow it to 527 override PROG 528 5292012-08-31 Simon J. Gerraty <sjg@bad.crufty.net> 530 531 * Makefile.in (MAKE_VERSION): bump version to 20120831 532 Merge with NetBSD make, pick up 533 o cast sizeof() to int for comparison 534 o minor make.1 tweak 535 5362012-08-30 Simon J. Gerraty <sjg@bad.crufty.net> 537 538 * Makefile.in (MAKE_VERSION): bump version to 20120830 539 Merge with NetBSD make, pick up 540 o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V 541 o debug flag -dV causes -V to show raw value regardless. 542 5432012-07-05 Simon J. Gerraty <sjg@bad.crufty.net> 544 545 * bsd.after-import.mk (after-import): ensure unit-tests/Makefile 546 gets SRCTOP set. 547 5482012-07-04 Simon J. Gerraty <sjg@bad.crufty.net> 549 550 * Makefile.in (MAKE_VERSION): bump version to 20120704 551 Merge with NetBSD make, pick up 552 o Job_ParseShell should call Shell_Init if it has been 553 previously called. 554 * Makefile.in: set USE_META based on configure result. 555 also .PARSEDIR is safer indicator of bmake. 556 5572012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 558 559 * Makefile.in: bump version to 20120626 560 ensure CPPFLAGS is in CFLAGS 561 * meta.c: avoid nested externs 562 * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target 563 5642012-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 565 566 * Makefile.in (MAKE_VERSION): bump version to 20120620 567 Merge with NetBSD make, pick up 568 o make_malloc.c: avoid including make_malloc.h again 569 570 * Makefile.in: avoid bmake only syntax or protect with 571 .if defined(.MAKE.LEVEL) 572 * bsd.after-import.mk: replace .-include with .sinclude 573 ensure? SRCTOP gets a value 574 * configure.in: look for filemon.h in /usr/include/dev/filemon first. 575 5762012-06-19 Simon J. Gerraty <sjg@bad.crufty.net> 577 578 * Makefile.in (MAKE_VERSION): bump version to 20120612 579 Merge with NetBSD make, pick up 580 o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler 581 for greater portability. 582 o unit-tests/forloop: check that .for works as expected wrt 583 number of times and with "quoted strings". 584 5852012-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 586 587 * Makefile.in (MAKE_VERSION): bump version to 20120606 588 Merge with NetBSD make, pick up 589 o compat.c: use kill(2) rather than raise(3). 590 * configure.in: look for sys/dev/filemon 591 * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile 592 and pass BOOTSTRAP_XTRAS to boot-strap. 593 5942012-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 595 596 * Makefile.in (MAKE_VERSION): bump version to 20120604 597 Merge with NetBSD make, pick up 598 o util.c and var.c share same var for tracking if environ 599 has been reallocated. 600 o util.c provide getenv with setenv. 601 * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL 602 when the shell actively strips .MAKE.* from the environment. 603 We still refer to the variable always as .MAKE.LEVEL 604 * util.c fix bug in findenv() was finding prefix of name. 605 * compat.c: re-raising SIGINT etc after running .INTERRUPT 606 results in more reliable termination of all activity on many 607 platforms. 608 6092012-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 610 611 * Makefile.in (MAKE_VERSION): bump version to 20120602 612 Merge with NetBSD make, pick up 613 o for.c: handle quoted items in .for list 614 6152012-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 616 617 * Makefile.in (MAKE_VERSION): bump version to 20120530 618 Merge with NetBSD make, pick up 619 o compat.c: ignore empty command. 620 6212012-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 622 623 * Makefile.in (MAKE_VERSION): bump version to 20120524 624 * FILES: add bsd.after-import.mk: 625 A simple means of integrating bmake into a BSD build system. 626 6272012-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 628 629 * Makefile.in (MAKE_VERSION): bump version to 20120520 630 Merge with NetBSD make, pick up 631 o increased limit for nested conditionals. 632 6332012-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 634 635 * Makefile.in (MAKE_VERSION): bump version to 20120518 636 Merge with NetBSD make, pick up 637 o use _exit(2) in signal hanlder 638 o Don't use the [dir] cache when building nodes that might have 639 changed since the last exec. 640 o Avoid nested extern declaration warnings. 641 6422012-04-27 Simon J. Gerraty <sjg@bad.crufty.net> 643 644 * meta.c (fgetLine): avoid %z - not portable. 645 * parse.c: Since we moved include of sys/mman.h 646 and def's of MAP_COPY etc. we got dups from a merge. 647 6482012-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 649 650 * Makefile.in (MAKE_VERSION): bump version to 20120420 651 Merge with NetBSD make, pick up 652 o restore duplicate supression in .MAKE.MAKEFILES 653 runtime saving can be significant. 654 o Var_Subst() uses Buf_DestroyCompact() to reduce memory 655 consumption up to 20%. 656 6572012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 658 659 * Makefile.in (MAKE_VERSION): bump version to 20120420 660 Merge with NetBSD make, pick up 661 o remove duplicate supression in .MAKE.MAKEFILES 662 o improved dir cache behavior 663 o gmake'ish export command 664 6652012-03-25 Simon J. Gerraty <sjg@bad.crufty.net> 666 667 * Makefile.in (MAKE_VERSION): bump version to 20120325 668 Merge with NetBSD make, pick up 669 o fix parsing of :[#] in conditionals. 670 6712012-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 672 673 * Makefile.in: replace use of .Nx in bmake.1 with NetBSD 674 since some systems cannot cope with .Nx <version> 675 6762011-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 677 678 * Makefile.in (MAKE_VERSION): bump version to 20111111 679 Merge with NetBSD make, pick up 680 o debug output for .PARSEDIR and .PARSEFILE 681 6822011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 683 684 * Makefile.in (MAKE_VERSION): bump version to 20111010 685 6862011-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 687 688 * boot-strap: check for an expected file in the dirs we look for. 689 * make-bootstrap.sh: pass on LDSTATIC 690 6912011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 692 693 * Makefile.in (MAKE_VERSION): bump version to 20111001 694 Merge with NetBSD make, pick up 695 o ensure .PREFIX is set for .PHONY 696 and .TARGET set for .PHONY run via .END 697 o __dead used consistently 698 6992011-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 700 701 * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-) 702 7032011-09-05 Simon J. Gerraty <sjg@bad.crufty.net> 704 705 * Makefile.in (MAKE_VERSION): bump version to 20110905 706 Merge with NetBSD make, pick up 707 o meta_oodate: ignore makeDependfile 708 7092011-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 710 711 * Makefile.in (MAKE_VERSION): bump version to 20110828 712 Merge with NetBSD make, pick up 713 o silent=yes in .MAKE.MODE causes meta mode to mark targets 714 as SILENT if a .meta file is created 715 7162011-08-18 Simon J. Gerraty <sjg@bad.crufty.net> 717 718 * Makefile.in (MAKE_VERSION): bump version to 20110818 719 Merge with NetBSD make, pick up 720 o in meta mode, if target flagged .META a missing .meta file 721 means target is out-of-date 722 o fixes for gcc 4.5 warnings 723 o simplify job printing code 724 7252011-08-09 Simon J. Gerraty <sjg@bad.crufty.net> 726 727 * Makefile.in (MAKE_VERSION): bump version to 20110808 728 Merge with NetBSD make, pick up 729 o do not touch OP_SPECIAL targets when doing make -t 730 7312011-06-22 Simon J. Gerraty <sjg@bad.crufty.net> 732 733 * Makefile.in (MAKE_VERSION): bump version to 20110622 734 Merge with NetBSD make, pick up 735 o meta_oodate detect corrupted .meta file and declare oodate. 736 * configure.in: add check for setsid 737 7382011-06-07 Simon J. Gerraty <sjg@bad.crufty.net> 739 740 * Merge with NetBSD make, pick up 741 o unit-tests/modts now works on MirBSD 742 7432011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 744 745 * Makefile.in (MAKE_VERSION): bump version to 20110606 746 Merge with NetBSD make, pick up 747 o ApplyModifiers: when we parse a variable which is not 748 the entire modifier string, or not followed by ':', do not 749 consider it as containing modifiers. 750 o loadfile: ensure newline at end of mapped file. 751 7522011-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 753 754 * Makefile.in (MAKE_VERSION): bump version to 20110505 755 Merge with NetBSD make, pick up 756 o .MAKE.META.BAILIWICK - list of prefixes which define the scope 757 of make's control. In meta mode, any generated file within 758 said bailiwick, which is found to be missing, causes current 759 target to be out-of-date. 760 7612011-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 762 763 * Makefile.in (MAKE_VERSION): bump version to 20110411 764 Merge with NetBSD make, pick up 765 o when long modifiers fail to match, check sysV style. 766 - add a test case 767 7682011-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 769 770 * Makefile.in (MAKE_VERSION): bump version to 20110410 771 Merge with NetBSD make, pick up 772 o :hash - cheap 32bit hash of value 773 o :localtime, :gmtime - use value as format string for strftime. 774 7752011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 776 777 * Makefile.in (MAKE_VERSION): bump version to 20110330 778 mostly because its a cooler version. 779 Merge with NetBSD make, pick up 780 o NetBSD tags for meta.[ch] 781 o job.c call meta_job_finish() after meta_job_error(). 782 o meta_job_error() should call meta_job_finish() to ensure 783 .meta file is closed, and safe to copy - if .ERROR target wants. 784 meta_job_finish() is safe to call repeatedly. 785 7862011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 787 788 * unit-tests/modts: use printf if it is a builtin, 789 to save us from MirBSD 790 791 * Makefile.in (MAKE_VERSION): bump version to 20110329 792 Merge with NetBSD make, pick up 793 o fix for use after free() in CondDoExists(). 794 o meta_oodate() report extra commands and return earlier. 795 7962011-03-27 Simon J. Gerraty <sjg@bad.crufty.net> 797 798 * Makefile.in (MAKE_VERSION): bump version to 20110327 799 Merge with NetBSD make, pick up 800 o meta.c, if .MAKE.MODE contains curdirOk=yes 801 allow creating .meta files in .CURDIR 802 * boot-strap (TOOL_DIFF): aparently at least on linux distro 803 formats the output of 'type' differently - so eat any "()" 804 8052011-03-06 Simon J. Gerraty <sjg@bad.crufty.net> 806 807 * Makefile.in (MAKE_VERSION): bump version to 20110306 808 Merge with NetBSD make, pick up 809 o meta.c, only do getcwd() once 810 8112011-03-05 Simon J. Gerraty <sjg@bad.crufty.net> 812 813 * Makefile.in (MAKE_VERSION): bump version to 20110305 814 Merge with NetBSD make, pick up 815 o correct sysV substitution handling of empty lhs and variable 816 o correct exists() check for dir with trailing / 817 o correct handling of modifiers for non-existant variables 818 during evaluation of conditionals. 819 o ensure MAP_FILE is defined. 820 o meta.c use curdir[] now exported by main.c 821 8222011-02-25 Simon J. Gerraty <sjg@bad.crufty.net> 823 824 * Makefile.in (MAKE_VERSION): bump version to 20110225 825 Merge with NetBSD make, pick up 826 o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after 827 makefiles have been read. 828 o fix example of :? modifier in man page. 829 8302011-02-13 Simon J. Gerraty <sjg@bad.crufty.net> 831 832 * Makefile.in (MAKE_VERSION): bump version to 20110214 833 Merge with NetBSD make, pick up 834 o meta.c handle realpath() failing when generating meta file 835 name. 836 837 * sigcompat.c: convert to ansi so we can use higher warning levels. 838 839 8402011-02-07 Simon J. Gerraty <sjg@bad.crufty.net> 841 842 * Makefile.in (MAKE_VERSION): bump version to 20110207 843 Merge with NetBSD make, pick up 844 o fix for bug in meta mode. 845 8462011-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 847 848 * parse.c: SunOS 5.8 at least does not have MAP_FILE 849 8502011-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 851 852 * Makefile.in (MAKE_VERSION): bump version to 20110101 853 Merge with NetBSD make, pick up 854 o use mmap(2) if available, for reading makefiles 855 8562010-12-15 Simon J. Gerraty <sjg@bad.crufty.net> 857 858 * Makefile.in (MAKE_VERSION): bump version to 20101215 859 Merge with NetBSD make, pick up 860 o ensure meta_job_error() does not report a previous .meta file 861 as being culprit. 862 8632010-12-10 Simon J. Gerraty <sjg@bad.crufty.net> 864 865 * Makefile.in (MAKE_VERSION): bump version to 20101210 866 Merge with NetBSD make, pick up 867 o meta_oodate: track cwd per process, and only consider target 868 out-of-date if missing file is outside make's CWD. 869 Ignore files in /tmp/ etc. 870 o to ensure unit-tests results match, need to control LC_ALL 871 as well as LANG. 872 o fix for parsing bug in var.c 873 8742010-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 875 876 * Makefile.in (MAKE_VERSION): bump version to 20101126 877 Merge with NetBSD make, pick up 878 o if stale dependency is an IMPSRC, search via .PATH 879 o meta_oodate: if a referenced file is missing, target is 880 out-of-date. 881 o meta_oodate: if a target uses .OODATE in its commands, 882 it (.OODATE) needs to be recomputed. 883 o keep a pointer to youngest child node, rather than just its 884 mtime. 885 8862010-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 887 888 * Makefile.in (MAKE_VERSION): bump version to 20101101 889 8902010-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 891 892 * machine.sh: like os.sh, 893 allow for uname -p producing useless drivel 894 8952010-09-13 Simon J. Gerraty <sjg@bad.crufty.net> 896 897 * boot-strap: document configure knobs for meta and filemon. 898 899 * Makefile.in (MAKE_VERSION): bump version to 20100911 900 Merge with NetBSD make, pick up 901 o meta.c - meta mode 902 903 * make-bootstrap.sh.in: handle meta.c 904 * configure.in: add knobs for use_meta and filemon_h 905 also, look for dirname, str[e]sep and strlcpy 906 * util.c: add simple err[x] and warn[x] 907 9082010-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 909 910 * boot-strap (TOOL_DIFF): set this to ensure tests use 911 the same version of diff that configure tested 912 913 * Makefile.in (MAKE_VERSION): bump version to 20100808 914 Merge with NetBSD make, pick up 915 o in jobs mode, when we discover we cannot make something, 916 call PrintOnError before exit. 917 9182010-08-06 Simon J. Gerraty <sjg@bad.crufty.net> 919 920 * Makefile.in (MAKE_VERSION): bump version to 20100806 921 Merge with NetBSD make, pick up 922 o formatting fixes for ignored errors 923 o ensure jobs are cleaned up regardless of where wait() was called. 924 9252010-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 926 927 * Makefile.in (MAKE_VERSION): bump version to 20100618 928 * os.sh (MACHINE_ARCH): watch out for drivel from uname -p 929 9302010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 931 932 * Makefile.in (MAKE_VERSION): bump version to 20100616 933 Merge with NetBSD make, pick up 934 o man page update 935 o call PrintOnError from JobFinish when we detect an error we 936 are not ignoring. 937 9382010-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 939 940 * Makefile.in (MAKE_VERSION): bump version to 20100606 941 Merge with NetBSD make, pick up 942 o man page update 943 9442010-06-05 Simon J. Gerraty <sjg@bad.crufty.net> 945 946 * Makefile.in (MAKE_VERSION): bump version to 20100605 947 Merge with NetBSD make, pick up 948 o use bmake_signal() which is a wrapper around sigaction() 949 in place of signal() 950 o add .export-env to allow exporting variables to environment 951 without tracking (so no re-export when the internal value is 952 changed). 953 9542010-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 955 956 * Makefile.in (MAKE_VERSION): bump version to 20100524 957 Merge with NetBSD make, pick up 958 o fix for .info et al being greedy. 959 9602010-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 961 962 * Makefile.in (MAKE_VERSION): bump version to 20100520 963 Merge with NetBSD make, pick up 964 o back to using realpath on argv[0] 965 but only if contains '/' and does not start with '/'. 966 9672010-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 968 969 * boot-strap: use absolute path for bmake when running tests. 970 971 * Makefile.in (MAKE_VERSION): bump version to 20100510 972 Merge with NetBSD make, pick up 973 o revert use of realpath on argv[0] 974 too many corner cases. 975 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target. 976 9772010-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 978 979 * Makefile.in (MAKE_VERSION): bump version to 20100505 980 Merge with NetBSD make, pick up 981 o fix for missed SIGCHLD when compiled with SunPRO 982 actually for bmake, defining FORCE_POSIX_SIGNALS would have 983 done the job. 984 9852010-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 986 987 * Makefile.in (MAKE_VERSION): bump version to 20100430 988 Merge with NetBSD make, pick up 989 o fflush stdout before writing to stdout 990 9912010-04-23 Simon J. Gerraty <sjg@bad.crufty.net> 992 993 * Makefile.in (MAKE_VERSION): bump version to 20100423 994 Merge with NetBSD make, pick up 995 o updated unit tests for Haiku (this time for sure). 996 * boot-strap: based on patch from joerg 997 honor --with-default-sys-path better. 998 * boot-strap: remove mention of --with-prefix-sys-path 999 10002010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 1001 1002 * Makefile.in (MAKE_VERSION): bump version to 20100422 1003 * Merge with NetBSD make, pick up 1004 o fix for vfork() on Darwin. 1005 o fix for bogus $TMPDIR. 1006 o set .MAKE.MODE=compat for -B 1007 o set .MAKE.JOBS=max_jobs for -j max_jobs 1008 o allow unit-tests to run without any *.mk 1009 o unit-tests/modmisc be more conservative in dirs presumed to exist. 1010 * boot-strap: ignore /usr/share/mk except on NetBSD. 1011 * unit-tests/Makefile.in: set LANG=C when running unit-tests to 1012 ensure sort(1) behaves as expected. 1013 10142010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 1015 1016 * boot-strap: add FindHereOrAbove so we can use -m .../mk 1017 10182010-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 1019 1020 * Makefile.in (MAKE_VERSION): bump version to 20100420 1021 * Merge with NetBSD make, pick up 1022 o fix for variable realpath() behavior. 1023 we have to stat(2) the result to be sure. 1024 o fix for .export (all) when nested vars use :sh 1025 10262010-04-14 Simon J. Gerraty <sjg@bad.crufty.net> 1027 1028 * Makefile.in (MAKE_VERSION): bump version to 20100414 1029 * Merge with NetBSD make, pick up 1030 o use realpath to resolve argv[0] (for .MAKE) if needed. 1031 o add realpath from libc. 1032 o add :tA to resolve variable via realpath(3) if possible. 1033 10342010-04-08 Simon J. Gerraty <sjg@bad.crufty.net> 1035 1036 * Makefile.in (MAKE_VERSION): bump version to 20100408 1037 * Merge with NetBSD make, pick up 1038 o unit tests for .ERROR, .error 1039 o fix for .ERROR to ensure it cannot be default target. 1040 10412010-04-06 Simon J. Gerraty <sjg@bad.crufty.net> 1042 1043 * Makefile.in (MAKE_VERSION): bump version to 20100406 1044 * Merge with NetBSD make, pick up 1045 o fix for compat mode "Error code" going to debug_file. 1046 o fix for .ALLSRC being populated twice. 1047 o support for .info, .warning and .error directives 1048 o .MAKE.MODE to control make's operational mode 1049 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile 1050 name(s). 1051 o .MAKE.DEPENDFILE to control the name of the depend file 1052 o .ERROR target - run on failure. 1053 10542010-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 1055 1056 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile 1057 1058 * os.sh,arch.c: patch for Haiku from joerg at netbsd 1059 10602010-03-17 Simon J. Gerraty <sjg@bad.crufty.net> 1061 1062 * Makefile.in (MAKE_VERSION): bump version to 20100222 1063 * Merge with NetBSD make, pick up 1064 o better error msg for .for with mutiple inter vars 1065 1066 * boot-strap: 1067 o use make-bootstrap.sh from joerg at netbsd 1068 to avoid the need for a native make when bootstrapping. 1069 o add "" everywhere ;-) 1070 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1 1071 otherwise the pre-formated version. 1072 10732010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 1074 1075 * Makefile.in (MAKE_VERSION): bump version to 20100102 1076 * Merge with NetBSD make, pick up: 1077 o fix for -m .../ 1078 10792009-11-18 Simon J. Gerraty <sjg@void.crufty.net> 1080 1081 * Makefile.in (MAKE_VERSION): bump version to 20091118 1082 * Merge with NetBSD make, pick up: 1083 o .unexport 1084 o report lines that start with '.' and should have ':' 1085 (catch typo's of .el*if). 1086 10872009-10-30 Simon J. Gerraty <sjg@void.crufty.net> 1088 1089 * configure.in: Ensure that srcdir and mksrc are absolute paths. 1090 10912009-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1092 1093 * Makefile.in (MAKE_VERSION): fix version to 20091007 1094 10952009-10-07 Simon J. Gerraty <sjg@void.crufty.net> 1096 1097 * Makefile.in (MAKE_VERSION): bump version to 200910007 1098 * Merge with NetBSD make, pick up: 1099 o fix for parsing of :S;...;...; applied to .for loop iterator 1100 appearing in a dependency line. 1101 11022009-09-09 Simon J. Gerraty <sjg@void.crufty.net> 1103 1104 * Makefile.in (MAKE_VERSION): bump version to 20090909 1105 * Merge with NetBSD make, pick up: 1106 o fix for -C, .CURDIR and .OBJDIR 1107 * boot-strap: 1108 o allow share_dir to be set independent of prefix. 1109 o select default share_dir better when prefix ends in $HOST_TARGET 1110 o if FORCE_BSD_MK etc were set, include them in the suggested 1111 install-mk command. 1112 11132009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 1114 1115 * Makefile.in (MAKE_VERSION): bump version to 20090908 1116 * Merge with NetBSD make, pick up: 1117 o .MAKE.LEVEL for recursion tracking 1118 o fix for :M scanning \: 1119 11202009-09-03 Simon J. Gerraty <sjg@void.crufty.net> 1121 1122 * configure.in: Don't -D__EXTENSIONS__ if 1123 AC_USE_SYSTEM_EXTENSIONS says "no". 1124 11252009-08-26 Simon J. Gerraty <sjg@void.crufty.net> 1126 1127 * Makefile.in (MAKE_VERSION): bump version to 20090826 1128 Simplify MAKE_VERSION to just the bare date. 1129 * Merge with NetBSD make, pick up: 1130 o -C directory support. 1131 o support for SIGINFO 1132 o use $TMPDIR for temp files. 1133 o child of vfork should be careful about modifying parent's state. 1134 1135 11362009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 1137 1138 * Appy some patches for MiNT from David Brownlee 1139 11402009-02-26 Simon J. Gerraty <sjg@void.crufty.net> 1141 1142 * Makefile.in (BMAKE_VERSION): bump version to 20090222 1143 * Merge with NetBSD make, pick up: 1144 o Possible null pointer de-ref in Var_Set. 1145 11462009-02-08 Simon J. Gerraty <sjg@void.crufty.net> 1147 1148 * Makefile.in (BMAKE_VERSION): bump version to 20090204 1149 * Merge with NetBSD make, pick up: 1150 o bmake_malloc et al moved to their own .c 1151 o Count both () and {} when looking for the end of a :M pattern 1152 o Change 'Buffer' so that it is the actual struct, not a pointer to it. 1153 o strlist.c - functions for processing extendable arrays of pointers to strings. 1154 o ClientData replaced with void *, so const void * can be used. 1155 o New debug flag C for DEBUG_CWD 1156 11572008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 1158 1159 * Makefile.in (BMAKE_VERSION): bump version to 20081111 1160 Apply patch from Joerg Sonnenberge to 1161 configure.in: 1162 o remove some redundant checks 1163 o check for emlloc etc only in libutil and require the whole family. 1164 util.c: 1165 o remove [v]asprintf which is no longer used. 1166 11672008-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1168 1169 * Makefile.in (BMAKE_VERSION): bump version to 20081101 1170 * Merge with NetBSD make, pick up: 1171 o util.c: avoid use of putenv() - christos 1172 11732008-10-30 Simon J. Gerraty <sjg@void.crufty.net> 1174 1175 * Makefile.in (BMAKE_VERSION): bump version to 20081030 1176 pick up man page tweaks. 1177 11782008-10-29 Simon J. Gerraty <sjg@void.crufty.net> 1179 1180 * Makefile.in: move processing of LIBOBJS to after is definition! 1181 thus we'll have getenv.c in SRCS only if needed. 1182 1183 * make.1: add examples of how to use :? 1184 1185 * Makefile.in (BMAKE_VERSION): bump version to 20081029 1186 * Merge with NetBSD make, pick up: 1187 o fix for .END processing with -j 1188 o segfault from Parse_Error when no makefile is open 1189 o handle numeric expressions in any variable expansion 1190 o debug output now defaults to stderr, -dF to change it - apb 1191 o make now uses bmake_malloc etc so that it can build natively 1192 on A/UX - wasn't an issue for bmake, but we want to keep in sync. 1193 11942008-09-27 Simon J. Gerraty <sjg@void.crufty.net> 1195 1196 * Makefile.in (BMAKE_VERSION): bump version to 20080808 1197 * Merge with NetBSD make, pick up: 1198 o fix for PR/38840: Pierre Pronchery: make crashes while parsing 1199 long lines in Makefiles 1200 o optimizations for VarQuote by joerg 1201 o fix for PR/38756: dominik: make dumps core on invalid makefile 1202 12032008-05-15 Simon J. Gerraty <sjg@void.crufty.net> 1204 1205 * Makefile.in (BMAKE_VERSION): bump version to 20080515 1206 * Merge with NetBSD make, pick up: 1207 o fix skip setting vars in VAR_GLOBAL context, to handle 1208 cases where VAR_CMD is used for other than command line vars. 1209 12102008-05-14 Simon J. Gerraty <sjg@void.crufty.net> 1211 1212 * boot-strap (make_version): we may need to look in 1213 $prefix/share/mk for sys.mk 1214 1215 * Makefile.in (BMAKE_VERSION): bump version to 20080514 1216 * Merge with NetBSD make, pick up: 1217 o skip setting vars in VAR_GLOBAL context, when already set in 1218 VAR_CMD which takes precedence. 1219 12202008-03-30 Simon J. Gerraty <sjg@void.crufty.net> 1221 1222 * Makefile.in (BMAKE_VERSION): bump version to 20080330 1223 * Merge with NetBSD make, pick up: 1224 o fix for ?= when LHS contains variable reference. 1225 12262008-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1227 1228 * merge some patches from NetBSD pkgsrc. 1229 1230 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of 1231 the MAKSYSPATH used during bootstrap. 1232 1233 * Makefile.in (BMAKE_VERSION): bump version to 20080215 1234 * Merge with NetBSD make, pick up: 1235 o warn if non-space chars follow 'empty' in a conditional. 1236 12372008-01-18 Simon J. Gerraty <sjg@void.crufty.net> 1238 1239 * Makefile.in (BMAKE_VERSION): bump version to 20080118 1240 * Merge with NetBSD make, pick up: 1241 o consider dependencies read from .depend as optional - dsl 1242 o remember when buffer for reading makefile grows - dsl 1243 o add -dl (aka LOUD) - David O'Brien 1244 12452007-10-22 Simon J. Gerraty <sjg@void.crufty.net> 1246 1247 * Makefile.in (BMAKE_VERSION): bump version to 20071022 1248 * Merge with NetBSD make, pick up: 1249 o Allow .PATH<suffix> to be used for .include "" 1250 1251 * boot-strap: source default settings from .bmake-boot-strap.rc 1252 12532007-10-16 Simon J. Gerraty <sjg@void.crufty.net> 1254 1255 * Makefile.in: fix maninstall on various systems 1256 provided that our man.mk is used. 1257 For non-BSD systems we install the preformatted page 1258 into $MANDIR/cat1 1259 12602007-10-15 Simon J. Gerraty <sjg@void.crufty.net> 1261 1262 * boot-strap: make bmake.1 too, so maninstall works. 1263 12642007-10-14 Simon J. Gerraty <sjg@void.crufty.net> 1265 1266 * Makefile.in (BMAKE_VERSION): bump version to 20071014 1267 * Merge with NetBSD make, pick up: 1268 o revamped handling of defshell - configure no longer needs to 1269 know the content of the shells array - apb 1270 o stop Var_Subst modifying its input - apb 1271 o avoid calling ParseTrackInput too often - dsl 1272 12732007-10-11 Simon J. Gerraty <sjg@void.crufty.net> 1274 1275 * Makefile.in (BMAKE_VERSION): bump version to 20071011 1276 * Merge with NetBSD make, pick up: 1277 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path. 1278 1279 * sigcompat.c: some tweaks for HP-UX 11.x based on 1280 patch from Tobias Nygren 1281 1282 * configure.in: update handling of --with-defshell to match 1283 new make behavior. --with-defshell=/usr/xpg4/bin/sh 1284 will now do what one might hope - provided the chosen shell 1285 behaves enough like sh. 1286 12872007-10-08 Simon J. Gerraty <sjg@void.crufty.net> 1288 1289 * Makefile.in (BMAKE_VERSION): bump to 20071008 1290 * Merge with NetBSD make, pick up: 1291 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg 1292 o .export/.MAKE.EXPORTED - export of variables - sjg 1293 o .MAKE.MAKEFILES - track all makefiles read - sjg 1294 o performance improvements - dsl 1295 o revamp parallel job scheduling - dsl 1296 12972006-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1298 1299 * Makefile.in (BMAKE_VERSION): bump to 20060728 1300 * Merge with NetBSD make, pick up: 1301 o extra debug info during variable and cond processing - sjg 1302 o shell definition now covers newline - rillig 1303 o minor mem leak in PrintOnError - sjg 1304 13052006-05-11 Simon J. Gerraty <sjg@void.crufty.net> 1306 1307 * Makefile.in (BMAKE_VERSION): bump to 20060511 1308 * Merge with NetBSD make, pick up: 1309 o more memory leaks - coverity 1310 o possible overflow in ArchFindMember - coverity 1311 o extract variable modifier code out of Var_Parse() 1312 so it can be called recursively - sjg 1313 o unit-tests/moderrs - sjg 1314 13152006-04-12 Simon J. Gerraty <sjg@void.crufty.net> 1316 1317 * Makefile.in (BMAKE_VERSION): bump to 20060412 1318 * Merge with NetBSD make, pick up: 1319 o fixes for some memory leaks - coverity 1320 o only read first sys.mk etc when searching sysIncPath - sjg 1321 1322 * main.c (ReadMakefile): remove hack for __INTERIX that prevented 1323 setting ${MAKEFILE} - OBATA Akio 1324 13252006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 1326 1327 * Makefile.in (BMAKE_VERSION): bump to 20060318 1328 * Merge with NetBSD make, pick up: 1329 o cleanup of job.c to remove remote handling, distcc is more 1330 useful and this code was likely bit-rotting - dsl 1331 o fix for :P modifier - sjg 1332 * boot-strap: set default prefix to something reasonable 1333 (for me anyway). 1334 13352006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 1336 1337 * Makefile.in (BMAKE_VERSION): bump to 20060301 1338 * Merge with NetBSD make, pick up: 1339 o make .WAIT apply recursively, document and test case - apb 1340 o allow variable modifiers in a variable appear anywhere in 1341 modifier list, document and test case - sjg 1342 13432006-02-22 Simon J. Gerraty <sjg@void.crufty.net> 1344 1345 * Makefile.in (BMAKE_VERSION): bump to 20060222 1346 * Merge with NetBSD make, pick up: 1347 o improved job token handling - dsl 1348 o SIG_DFL the correct signal before exec - dsl 1349 o more debug info during parsing - dsl 1350 o allow variable modifiers to be specified via variable - sjg 1351 * boot-strap: explain why we died if no mksrc 1352 13532005-11-05 Simon J. Gerraty <sjg@void.crufty.net> 1354 1355 * Makefile.in (BMAKE_VERSION): bump to 20051105 1356 * configure.in: always set default_sys_path 1357 default is ${prefix}/share/mk 1358 - remove prefix_sys_path, anyone wanting more than above 1359 needs to set it manually. 1360 13612005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1362 1363 * boot-strap: make this a bit easier for pkgsrc folk. 1364 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to 1365 'mips' while pkgsrc wants 'mipseb' or 'mipsel' 1366 13672005-11-02 Simon J. Gerraty <sjg@void.crufty.net> 1368 1369 * Makefile.in (BMAKE_VERSION): bump to 20051102 1370 * job.c (JobFinish): fix likely ancient merge lossage 1371 fix from Todd Vierling. 1372 * boot-strap (srcdir): allow setting mksrc=none 1373 13742005-10-31 Simon J. Gerraty <sjg@void.crufty.net> 1375 1376 * Makefile.in (BMAKE_VERSION): bump to 20051031 1377 * ranlib.h: skip on OSF too. 1378 (NetBSD PR 31864) 1379 13802005-10-10 Simon J. Gerraty <sjg@void.crufty.net> 1381 1382 * Makefile.in (BMAKE_VERSION): bump to 20051002 1383 fix a silly typo 1384 13852005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1386 1387 * Makefile.in (BMAKE_VERSION): bump to 20051001 1388 support for UnixWare and some other systems, 1389 based on patches from pkgsrc/bootstrap 1390 13912005-09-03 Simon J. Gerraty <sjg@void.crufty.net> 1392 1393 * Makefile.in (BMAKE_VERSION): bump to 20050901 1394 * Merge with NetBSD make, pick up: 1395 o possible parse error causing us to wander off. 1396 13972005-06-06 Simon J. Gerraty <sjg@void.crufty.net> 1398 1399 * Makefile.in (BMAKE_VERSION): bump to 20050606 1400 * Merge with NetBSD make, pick up: 1401 o :0x modifier for randomizing a list 1402 o fixes for a number of -Wuninitialized issues. 1403 14042005-05-30 Simon J. Gerraty <sjg@void.crufty.net> 1405 1406 * Makefile.in (BMAKE_VERSION): bump to 20050530 1407 * Merge with NetBSD make, pick up: 1408 o Handle dependencies for .BEGIN, .END and .INTERRUPT 1409 1410 * README: was seriously out of date. 1411 14122005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 1413 1414 * Important to use .MAKE rather than MAKE. 1415 14162005-03-15 Simon J. Gerraty <sjg@void.crufty.net> 1417 1418 * Makefile.in (BMAKE_VERSION): bump to 20050315 1419 * Merge with NetBSD make, pick up: 1420 o don't mistake .elsefoo for .else 1421 o use suffix-specific search path correctly 1422 o bunch of style nits 1423 14242004-05-11 Simon J. Gerraty <sjg@void.crufty.net> 1425 1426 * boot-strap: 1427 o ensure that args to --src and --with-mksrc 1428 are resolved before giving them to configure. 1429 o add -o "objdir" so that builder can control it, 1430 default is $OS as determined by os.sh 1431 o add -q to suppress all the install instructions. 1432 14332004-05-08 Simon J. Gerraty <sjg@void.crufty.net> 1434 1435 * Remove __IDSTRING() 1436 1437 * Makefile.in (BMAKE_VERSION): bump to 20040508 1438 * Merge with NetBSD make, pick up: 1439 o posix fixes 1440 - remove '-e' from compat mode 1441 - add support for '+' command-line prefix. 1442 o fix for handling '--' on command-line. 1443 o fix include in lst.lib/lstInt.h to simplify '-I's 1444 o we also picked up replacement of MAKE_BOOTSTRAP 1445 with !MAKE_NATIVE which is a noop, but possibly confusing. 1446 14472004-04-14 Simon J. Gerraty <sjg@void.crufty.net> 1448 1449 * Makefile.in (BMAKE_VERSION): bump to 20040414 1450 * Merge with NetBSD make, pick up: 1451 o allow quoted strings on lhs of conditionals 1452 o issue warning when extra .else is seen 1453 o print line numer when errors encountered during parsing from 1454 string. 1455 14562004-02-20 Simon J. Gerraty <sjg@void.crufty.net> 1457 1458 * Makefile.in (BMAKE_VERSION): bump to 20040220 1459 * Merge with NetBSD make, pick up: 1460 o fix for old :M parsing bug. 1461 o re-jigged unit-tests 1462 14632004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1464 1465 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,} 1466 so that './bmake -f Makefile test' works. 1467 14682004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 1469 1470 * Makefile.in: (BMAKE_VERSION): bump to 20040214 1471 * Merge with NetBSD make, pick up: 1472 o search upwards for *.mk 1473 o fix for double free of var substitution buffers 1474 o use of getopt replaced with custom code, since the usage 1475 (re-scanning) isn't posix compatible. 1476 14772004-02-12 Simon J. Gerraty <sjg@void.crufty.net> 1478 1479 * arch.c: don't include ranlib.h on ELF systems 1480 (thanks to Chuck Cranor <chuck@ece.cmu.edu>). 1481 14822004-01-18 Simon J. Gerraty <sjg@void.crufty.net> 1483 1484 * Makefile.in (BMAKE_VERSION): bump to 20040118 1485 1486 * boot-strap (while): export vars we assign to on cmdline 1487 * unit-test/Makefile.in: ternary is .PHONY 1488 14892004-01-08 Simon J. Gerraty <sjg@void.crufty.net> 1490 1491 * Makefile.in (BMAKE_VERSION): bump version to 20040108 1492 * Merge with NetBSD make, pick up: 1493 o fix for ternary modifier 1494 14952004-01-06 Simon J. Gerraty <sjg@void.crufty.net> 1496 1497 * Makefile.in (BMAKE_VERSION): bump version to 20040105 1498 * Merge with NetBSD make, pick up: 1499 o fix for cond.c to handle compound expressions better 1500 o variable expansion within sysV style replacements 1501 15022003-12-22 Simon J. Gerraty <sjg@void.crufty.net> 1503 1504 * Make portable snprintf safer - output to /dev/null first to 1505 check space needed. 1506 1507 * Makefile.in (BMAKE_VERSION): bump version to 20031222 1508 * Merge with NetBSD make, pick up: 1509 o -dg3 to show input graph when things go wrong. 1510 o explicitly look for makefiles in objdir if not found in curdir so 1511 that errors in .depend etc will be reported accurarely. 1512 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?' 1513 instead as it more accurately reflects the expected behavior and 1514 is more consistently implemented. 1515 o avoid use of asprintf. 1516 15172003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 1518 1519 * util.c: Add asprintf and vasprintf. 1520 1521 * Makefile.in (BMAKE_VERSION): bump version to 20030928 1522 * Merge with NetBSD make, pick up: 1523 :[] modifier - allows picking words from a variable. 1524 :tW modifier - allows treating value as one big word. 1525 W flag for :C and :S - allows treating value as one big word. 1526 15272003-09-12 Simon J. Gerraty <sjg@void.crufty.net> 1528 1529 * Merge with NetBSD make 1530 pick up -de flag to enable printing failed command. 1531 don't skip 1st two dir entries (normally . and ..) since 1532 coda does not have them. 1533 15342003-09-09 Simon J. Gerraty <sjg@void.crufty.net> 1535 1536 * Makefile.in (BMAKE_VERSION): bump version to 20030909 1537 * Merge with NetBSD make, pick up: 1538 - changes for -V '${VAR}' to print fully expanded value 1539 cf. -V VAR 1540 - CompatRunCommand now prints the command that failed. 1541 - several files got updated 3 clause Berkeley license. 1542 15432003-08-02 Simon J. Gerraty <sjg@void.crufty.net> 1544 1545 * boot-strap: Allow setting configure args on command line. 1546 15472003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 1548 1549 * configure.in: add --with-defshell to allow sh or ksh 1550 to be selected as default shell. 1551 1552 * Makefile.in: bump version to 20030731 1553 1554 * Merge with NetBSD make 1555 Pick up .SHELL spec for ksh and associate man page changes. 1556 Also compat mode now uses the same shell specs. 1557 15582003-07-29 Simon J. Gerraty <sjg@void.crufty.net> 1559 1560 * var.c (Var_Parse): ensure delim is initialized. 1561 1562 * unit-tests/Makefile.in: use single quotes to avoid problems from 1563 some shells. 1564 1565 * makefile.boot.in: 1566 Run the unit-tests as part of the bootstrap procedure. 1567 15682003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1569 1570 * unit-tests/Makefile.in: always force complaints from 1571 ${TEST_MAKE} to be from 'make'. 1572 1573 * configure.in: add check for 'diff -u' 1574 also fix some old autoconf'isms 1575 1576 * Makefile.in (BMAKE_VERSION): bump version to 20030728. 1577 if using GCC add -Wno-cast-qual to CFLAGS for var.o 1578 1579 * Merge with NetBSD make 1580 Pick up fix for :ts parsing error in some cases. 1581 Pick unit-tests. 1582 15832003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1584 1585 * Makefile.in (BMAKE_VERSION): bump version to 20030723. 1586 1587 * var.c (Var_Parse): fix bug in :ts modifier, after const 1588 correctness fixes, must pass nstr to VarModify. 1589 15902003-07-14 Simon J. Gerraty <sjg@void.crufty.net> 1591 1592 * Makefile.in: BMAKE_VERSION switch to a date based version. 1593 We'll generally use the date of last import from NetBSD. 1594 1595 * Merge with NetBSD make 1596 Pick up fixes for const-correctness, now passes WARNS=3 on 1597 NetBSD. 1598 Pick up :ts modifier, allows controlling the separator used 1599 between words in variable expansion. 1600 16012003-07-11 Simon J. Gerraty <sjg@void.crufty.net> 1602 1603 * FILES: include boot-strap and os.sh 1604 1605 * Makefile.in: only set WARNS if we are NetBSD, the effect on 1606 FreeBSD is known to be bad. 1607 1608 * makefile.boot.in (bootstrap): make this the default target. 1609 1610 * Makefile.in: bump version to 3.1.19 1611 1612 * machine.sh: avoid A-Z with tr as it is bound to lose. 1613 16142003-07-10 Simon J. Gerraty <sjg@void.crufty.net> 1615 1616 * Merge with NetBSD make 1617 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo 1618 Plus some doc fixes. 1619 16202003-04-27 Simon J. Gerraty <sjg@void.crufty.net> 1621 1622 * Merge with NetBSD make 1623 Pick up fix for PR/1523 - don't count a library as built, if there 1624 is no way to build it 1625 1626 * Bump version to 3.1.18 1627 16282003-03-23 Simon J. Gerraty <sjg@void.crufty.net> 1629 1630 * Merge with NetBSD make 1631 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT 1632 appears in src list. 1633 16342003-03-21 Simon J. Gerraty <sjg@void.crufty.net> 1635 1636 * Merge with NetBSD make (mmm 10th anniversary!) 1637 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828) 1638 pick up -X which tells us to not export VAR=val via setenv if 1639 we are already doing so via MAKEFLAGS. This saves valuable env 1640 space on systems like Darwin. 1641 set MAKE_VERSION to 3.1.17 1642 1643 * parse.c: pix up fix for suffix rules 1644 16452003-03-06 Simon J. Gerraty <sjg@void.crufty.net> 1646 1647 * Merge with NetBSD make. 1648 pick up fix for propagating -B via MAKEFLAGS. 1649 set MAKE_VERSION to 3.1.16 1650 1651 * Apply some patches from pkgsrc-bootstrap/bmake 1652 Originally by Grant Beattie <grant@netbsd.org> 1653 I may have missed some - since they are based on bmake-3.1.12 1654 16552002-12-03 Simon J. Gerraty <sjg@void.crufty.net> 1656 1657 * makefile.boot.in (bmake): update install targets for those that 1658 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid 1659 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>. 1660 1661 * bmake.cat1: update the pre-formatted man page! 1662 16632002-11-30 Simon J. Gerraty <sjg@void.crufty.net> 1664 1665 * Merge with NetBSD make. 1666 pick up fix for premature free of pointer used in call 1667 to Dir_InitCur(). 1668 set MAKE_VERSION to 3.1.15 1669 16702002-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1671 1672 * configure.in: determine suitable value for MKSRC. 1673 override using --with-mksrc=PATH. 1674 1675 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems. 1676 configs(8) will use 'sun4' as an alias for 'sparc'. 1677 16782002-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1679 1680 * Merge with NetBSD make. 1681 pick up ${.PATH} 1682 pick up fix for finding ../cat.c via .PATH when .CURDIR=.. 1683 set MAKE_VERSION to 3.1.14 1684 add configure checks for killpg and sys/socket.h 1685 16862002-09-16 Simon J. Gerraty <sjg@void.crufty.net> 1687 1688 * tag bmake-3-1-13 1689 1690 * makefile.boot.in (bmake): use install-mk 1691 Also setup ./mk before trying to invoke bmake.boot incase we 1692 needed install-mk to create a sys.mk for us. 1693 1694 * configure.in: If we need to add -I${srcdir}/missing, make it an 1695 absolute path so that it works for lst.lib too. 1696 1697 * make.h: always include sys/cdefs.h since we provide one if the 1698 host does not. 1699 1700 * Makefile.in (install-mk): 1701 use MKSRC/install-mk which will do the right thing. 1702 use uname -p for ARCH if possible. 1703 since install-mk will setup links bsd.prog.mk -> prog.mk if 1704 needed, just .include bsd.prog.mk 1705 1706 * Merge with NetBSD make (NetBSD-1.6) 1707 Code is ansi-C only now. 1708 Bug in handling of dotLast is fixed. 1709 Can now assign .OBJDIR and make will reset its notions of life. 1710 New modifiers :tu :tl for toUpper and toLower. 1711 1712Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1713 1714 * Merge with NetBSD make 1715 pick up fix for .END failure in compat mode. 1716 pick up fix for extra va_end() in ParseVErrorInternal. 1717 1718Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net> 1719 1720 * configure.in: for systems that have sys/cdefs.h check if it is 1721 compatible. If not, include the one under missing, but tell it to 1722 include the native one too - necessary on Linux. 1723 1724 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use 1725 include_next (for gcc) to get the native sys/cdefs.h 1726 1727Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1728 1729 * job.c (JobFinish): Fix an earlier merge bug that resulted in 1730 leaking descriptors when using -jN. 1731 1732 * job.c (JobPrintCommand): See if "curdir" exists before 1733 attempting to chdir(). Doing the chdir directly in make (when in 1734 compat mode) fails silently, so let the -jN version do the same. 1735 This can happen when building kernels in an object tree and 1736 playing clever games to reset .CURDIR. 1737 1738 * Merged with NetBSD make 1739 pick up .USEBEFORE 1740 1741Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1742 1743 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work. 1744 1745Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1746 1747 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell 1748 us not to export the iterator variable when using VAR_CMD context. 1749 1750Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1751 1752 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here, 1753 its the wrong "fix". 1754 1755Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1756 1757 * Redesigned export of VAR_CMD's via MAKEFLAGS. 1758 We now simply append the variable names to .MAKEOVERRIDES, and 1759 handle duplicate suppression and quoting in ExportMAKEFLAGS using: 1760 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@} 1761 Apart from fixing quoting bugs in previous version, this allows us 1762 to export vars to the environment by simply doing: 1763 .MAKEOVERRIDES+= PATH 1764 Merged again with NetBSD make, but the above is the only change. 1765 1766 * configure.in: added 1767 --disable-pwd-override disable $PWD overriding getcwd() 1768 --disable-check-make-chdir disable make trying to guess 1769 when it should automatically cd ${.CURDIR} 1770 1771 * Merge with NetBSD make, changes include: 1772 parse.c (ParseDoDependency): Spot that the syntax error is 1773 caused by an unresolved cvs/rcs conflict and say so. 1774 var.c: most of Var* functions now take a ctxt as 1st arg. 1775 now does variable substituion on rhs of sysv style modifiers. 1776 1777 * var.c (Var_Set): exporting of command line variables (VAR_CMD) 1778 is now done here. We append the name='value' to .MAKEOVERRIDES 1779 rather than directly into MAKEFLAGS as this allows a Makefile to 1780 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a 1781 very similar mechanism. Note that in adding name='value' to 1782 .MAKEOVERRIDES we do the moral equivalent of: 1783 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val' 1784 1785Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1786 1787 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H 1788 1789 * Merged with NetBSD make 1790 make -dx can now be used to run commands via sh -x 1791 better error messages on exec failures. 1792 1793Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1794 1795 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that 1796 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION, 1797 MACHINE etc otherwise they propagate from the previous bmake. 1798 1799 * configure.in (machine): allow --with-machine=generic to make 1800 configure use machine.sh to set MACHINE. 1801 1802 * job.c (JobInterrupt): convert to using WAIT_T and friends. 1803 1804 * Makefile.in: mention in bmake.1 that we use autoconf. 1805 1806 * make.1: mention MAKE_PRINT_VAR_ON_ERROR. 1807 1808Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1809 1810 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend" 1811 as that rather defeats the usefulness of ${MAKEFILE}. 1812 1813 * main.c (MainParseArgs): append command line variable assignments 1814 to MAKEFLAGS so that they get propagated to child make's. 1815 Apparently this is required POSIX behaviour? Its useful anyway. 1816 1817Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1818 1819 * compat.c (CompatRunCommand): don't use perror() since stdio may 1820 cause problems in child of vfork(). 1821 1822 * compat.c, main.c: Call PrintOnError() when we are going to bail. 1823 This routine prints out the .curdir where we stopped and will also 1824 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}. 1825 1826 * main.c: add ${.newline} to hold a "\n" - sometimes handy in 1827 :@ expansion. 1828 1829 * var.c: VarLoopExpand: ignore addSpace if a \n is present. 1830 1831 * Added RCSid's for the files we've touched. 1832 1833Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1834 1835 * configure.in: Thanks to some clues from mdb@juniper.net, 1836 added autoconf magic to control setting of MACHINE, MACHINE_ARCH 1837 as well as what ends up in _PATH_DEFSYSPATH. We now have: 1838 1839 --with-machine=MACHINE explicitly set MACHINE 1840 --with-force-machine=MACHINE set FORCE_MACHINE 1841 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH 1842 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH 1843 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH 1844 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX 1845 1846 If _PATH_OBJDIRPREFIX is set to "no" we won't define it. 1847 1848 * makefile: added a pathetically simple makefile to drive 1849 bootstrapping. Running configure by hand is more useful. 1850 1851 * Makefile.in: added MAKE_VERSION, and reworked things to be less 1852 dependent on NetBSD bsd.*.mk 1853 1854 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining 1855 _PATH_OBJDIRPREFIX for those that don't want a default. 1856 construct _PATH_DEFSYSPATH from the info we get from configure. 1857 1858 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION} 1859 if MAKE_VERSION is defined. 1860 1861 * compat.c: when we bail, print out the .CURDIR we were in. 1862 1863Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1864 1865 * Merged with NetBSD make 1866 1867 * var.c: fixed a bug in the handling of the modifier :P 1868 if the node as found but the path was null, we segfault trying to 1869 duplicate it. 1870 1871Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 1872 1873 * Merged with NetBSD make 1874 1875 * make.c: Make_OODate's test for a library out of date was using 1876 cmtime where it should have used mtime (my bug). 1877 1878 * compat.c: Use perror() to tell us what really went wrong when we 1879 cannot exec a command. 1880 1881Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1882 1883 * Merged with NetBSD make 1884 1885Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1886 1887 * Merged with NetBSD make 1888 1889Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1890 1891 * Merged with NetBSD make 1892 1893Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1894 1895 * Merged with NetBSD make 1896 1897Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1898 1899 * util.c: don't provide signal() since we use sigcompat.c 1900 1901 * Makefile.in: added a build target. 1902 1903 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :! 1904 These allow some quite clever magic. 1905 1906 * main.c (main): added support for getenv(MAKESYSPATH). 1907 1908Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1909 1910 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set. 1911 This avoids objdir having a different value depending on how a 1912 directory was reached (via command line, or subdir.mk). 1913 1914 * If FORCE_MACHINE is defined, ignore getenv("MACHINE"). 1915 1916Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1917 1918 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if 1919 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not. 1920 I've been testing this in NetBSD's make for some weeks. 1921 1922 * Turn Makefile into Makefile.in and make it useful. 1923 1924Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 1925 1926 * Imported NetBSD's -current make(1) and resolve conflicts. 1927 1928 * Applied autoconf patches from bmake v2 1929 1930 * Imported clean code base from NetBSD-1.0 1931