12021-12-12 Simon J Gerraty <sjg@beast.crufty.net> 2 3 * sys.mk: simplify; include meta.sys.mk if MK_META_MODE is yes. 4 5 * meta.sys.mk: do not check for /dev/filemon if .MAKE.PATH_FILEMON 6 is something else. 7 8 * meta.autodep.mk: we can now reference ${.SUFFIXES} 9 10 * meta2deps.py: derive a list of dirdep extensions from 11 TARGET_SPEC to trim from dirdeps. 12 13 * dirdeps.mk: flip the computation of qualified vs unqualified 14 dirdeps - it is much simpler to check for unqualified first. 15 162021-12-11 Simon J Gerraty <sjg@beast.crufty.net> 17 18 * install-mk (MK_VERSION): 20211212 19 20 * auto.dep.mk: rearrange so that the trivial implementation 21 for recent bmake is more obvious. 22 232021-12-07 Simon J Gerraty <sjg@beast.crufty.net> 24 25 * install-mk (MK_VERSION): 20211207 26 27 * Ensure guard targets are .NOTMAIN 28 29 * meta.sys.mk: check for nofilemon support when we skip level 0 30 31 * auto.dep.mk: make this usable in meta mode 32 for platforms that cannot use meta.autodep.mk 33 34 * meta2deps.py: avoid confusion if MACHINE and another 35 TARGET_SPEC_VAR have same value. 36 372021-11-27 Simon J Gerraty <sjg@beast.crufty.net> 38 39 * dirdeps.mk: when building dirdeps.cache, minimize the amount of 40 data put into env, by stripping ${SRCTOP}/ from each entry. 41 A long sandbox name can double the amount of memory consumed and 42 in extreme cases cause failure. 43 While we are at it, strip ${SRCTOP}/ from a lot of the debug output. 44 452021-11-11 Simon J Gerraty <sjg@beast.crufty.net> 46 47 * install-mk (MK_VERSION): 20211111 48 49 * meta.stage.mk (LN_CP_SCRIPT): if staging to NFS cp -p can fail 50 so fallback to cp if necessary. 51 522021-10-30 Simon J Gerraty <sjg@beast.crufty.net> 53 54 * man.mk (CMT2DOC): use cmt2doc.py rather than the 30 year 55 old cmt2doc.pl 56 572021-10-24 Simon J Gerraty <sjg@beast.crufty.net> 58 59 * meta.stage.mk: stage_as_and_symlink use ${STAGE_LINK_AS_$f:U$f} 60 as the symlink (rare) 61 622021-10-16 Simon J Gerraty <sjg@beast.crufty.net> 63 64 * autoconf.mk: if AUTOCONF_GENERATED_MAKEFILE is set and has not 65 been read, throw an error after running configure telling user to 66 restart. 67 682021-10-13 Simon J Gerraty <sjg@beast.crufty.net> 69 70 * install-mk (MK_VERSION): 20211011 71 72 * Add support for SCO_SV 73 742021-10-01 Simon J Gerraty <sjg@beast.crufty.net> 75 76 * install-mk (MK_VERSION): 20211001 77 78 * man.mk: use MAN_SUFFIXES and CMT2DOC_SUFFIXES for more 79 flexibility 80 812021-09-13 Simon J Gerraty <sjg@beast.crufty.net> 82 83 * options.mk (describe-options): print options and their values 84 and optional description 85 862021-09-11 Simon J Gerraty <sjg@beast.crufty.net> 87 88 * install-mk (MK_VERSION): 20210911 89 90 * options.mk (show-options): print options and their values 91 922021-09-08 Simon J Gerraty <sjg@beast.crufty.net> 93 94 * install-mk (MK_VERSION): 20210909 95 96 * lib.mk: apply patch from <daniel@octaforge.org> 97 to fix shared libs on Linux 98 992021-08-08 Simon J Gerraty <sjg@beast.crufty.net> 100 101 * install-mk (MK_VERSION): 20210808 102 103 * options.mk: issue warning for WITH_*=no 104 1052021-06-16 Simon J Gerraty <sjg@beast.crufty.net> 106 107 * install-mk (MK_VERSION): 20210616 108 109 * dirdeps.mk: when using .MAKE.DEPENDFILE_PREFERENCE to find 110 depend files to read, anchor MACHINE at , or end of string 111 to avoid prefix match. 112 1132021-05-04 Simon J Gerraty <sjg@beast.crufty.net> 114 115 * install-mk (MK_VERSION): 20210504 116 117 * dirdeps.mk: re-implement ALL_MACHINES support to better 118 cater for local complexities, when ONLY_TARGET_SPEC_LIST 119 is not set. local.dirdeps.mk can set 120 DIRDEPS_ALL_MACHINES_FILTER and/or 121 DIRDEPS_ALL_MACHINES_FILTER_XTRAS to filter the results we get 122 from listing all existing Makefile.depend.* 123 1242021-04-20 Simon J Gerraty <sjg@beast.crufty.net> 125 126 * install-mk (MK_VERSION): 20210420 127 128 * dirdeps.mk: revert previous - not always safe. 129 1302021-03-20 Simon J Gerraty <sjg@beast.crufty.net> 131 132 * install-mk (MK_VERSION): 20210321 133 134 * dirdeps.mk: when generating dirdeps.cache 135 we only need to hook the initial DIRDEPS to the 136 dirdeps target. That and any _build_xtra_dirs (like tests which 137 should not be hooked directly to the dependency graph - to avoid 138 cycles) 139 1402021-01-30 Simon J Gerraty <sjg@beast.crufty.net> 141 142 * install-mk (MK_VERSION): 20210130 143 144 * dirdeps.mk: expr 2 - 1 - 1 exits with a bad status 145 we need to guard against this in DIRDEP_LOADAVG_REPORT. 146 147 * dirdeps.mk: restore respect for TARGET_MACHINE 148 1492021-01-06 Simon J Gerraty <sjg@beast.crufty.net> 150 151 * install-mk (MK_VERSION): 20210101 152 153 * dirdeps.mk: first time we are read, just use TARGET_SPEC for 154 _DEP_TARGET_SPEC 155 1562020-12-22 Simon J Gerraty <sjg@beast.crufty.net> 157 158 * sys.mk (MAKE_SHELL): use ${.SHELL:Ush} 159 and use := when setting SHELL 160 1612020-12-21 Simon J Gerraty <sjg@beast.crufty.net> 162 163 * install-mk (MK_VERSION): 20201221 164 165 * dirdeps-options.mk: latest bmake allows only one arg to .undef 166 1672020-12-11 Simon J Gerraty <sjg@beast.crufty.net> 168 169 * dirdeps-targets.mk: allow for "." in DIRDEPS_TARGETS_DIRS 170 so that any directory can be treated as a target. 171 1722020-11-26 Simon J Gerraty <sjg@beast.crufty.net> 173 174 * install-mk (MK_VERSION): 20201126 175 176 * own.mk: use .MAKE.{UID,GID} if available. 177 178 * init.mk: suppress _SKIP_BUILD warning if doing -V 179 1802020-11-20 Simon J Gerraty <sjg@beast.crufty.net> 181 182 * install-mk (MK_VERSION): 20201120 183 184 * init.mk: rename LEVEL0_TARGETS to DIRDEPS_BUILD_LEVEL0_TARGETS 185 186 * dirdeps-targets.mk: fix typo in comment 187 1882020-11-06 Simon J Gerraty <sjg@beast.crufty.net> 189 190 * install-mk (MK_VERSION): 20201106 191 192 * meta.autodep.mk: use OBJ_EXTENSIONS rather than hardcode sed 193 args to tweak extensions for local deps. 194 1952020-11-01 Simon J Gerraty <sjg@beast.crufty.net> 196 197 * install-mk (MK_VERSION): 20201101 198 199 * dirdeps.mk: most leaf makefiles are not suitable for building 200 dirdeps.cache so if RELDIR is not "." use dirdeps.mk 201 2022020-10-28 Simon J Gerraty <sjg@beast.crufty.net> 203 204 * install-mk (MK_VERSION): 20201028 205 206 * dirdeps.mk: if we don't have :range use equivalent of M_RANGE 207 when building dirdeps.cache for leaf directory use -f dirdeps.mk 208 209 * sys.vars.mk: add M_JOT and M_RANGE 210 2112020-10-01 Simon J Gerraty <sjg@beast.crufty.net> 212 213 * install-mk (MK_VERSION): 20201001 214 215 * meta2deps.{py,sh}: throw an error if we don't see filemon version 216 2172020-09-09 Simon J Gerraty <sjg@beast.crufty.net> 218 219 * install-mk (MK_VERSION): 20200909 220 221 * dirdeps-cache-update.mk: use cache_update_dirdep as guard target 222 2232020-08-26 Simon J Gerraty <sjg@beast.crufty.net> 224 225 * dirdeps.mk: ensure we cannot confuse a static cache for dynamic 226 (even more rare that use of static cache is playing clever tricks 227 with it) 228 2292020-08-16 Simon J Gerraty <sjg@beast.crufty.net> 230 231 * dirdeps-cache-update.mk: allow 232 MK_STATIC_DIRDEPS_CACHE_UPDATE_IMMEDIATE to control when we 233 actually update STATIC_DIRDEPS_CACHE. 234 235 * stage-install.sh: create dest directory if needed 236 before running install(1) 237 2382020-08-10 Simon J Gerraty <sjg@beast.crufty.net> 239 240 * dirdeps-targets.mk: include Makefile.dirdeps.options 241 242 * dirdeps.mk: use _TARGETS if defined for DIRDEPS_CACHE 243 2442020-08-09 Simon J Gerraty <sjg@beast.crufty.net> 245 246 * dirdeps.mk: default BUILD_DIRDEPS_MAKEFILE to empty 247 248 * dirdeps-cache-update.mk: building parallel cache update 249 under the context of dirdeps-cached would be ideal, but 250 is problematic, so it runs as a sibling. 251 Use cache-built target to ensure we wait for it to complete if 252 necessary. 253 2542020-08-06 Simon J Gerraty <sjg@beast.crufty.net> 255 256 * install-mk (MK_VERSION): 20200806 257 258 * dirdeps-options: allow TARGET_SPEC to affect option values. 259 Use DIRDEPS_OPTIONS_QUALIFIER_LIST before using bare MK_* 260 261 * dirdeps-targets.mk: check for MK_STATIC_DIRDEPS_CACHE defined 262 before looking for STATIC_DIRDEPS_CACHE 263 2642020-08-05 Simon J Gerraty <sjg@beast.crufty.net> 265 266 * host-target.mk: Darwin use MACHINE for HOST_ARCH too 267 268 * dirdeps-options.mk: improve debug output 269 2702020-07-22 Simon J Gerraty <sjg@beast.crufty.net> 271 272 * dirdeps.mk: set and export DYNAMIC_DIRDEPS_CACHE 273 for use by dirdeps-cache-update.mk 274 275 * dirdeps-targets.mk: set and export STATIC_DIRDEPS_CACHE 276 for use by dirdeps-cache-update.mk even if we don't use it. 277 278 * dirdeps-cache-update.mk: we only need worry about the background 279 update case, with the above, the update from DIRDEPS_CACHE is 280 simple. 281 282 * meta2deps.py: R 1234 . is not interesting 283 2842020-07-20 Simon J Gerraty <sjg@beast.crufty.net> 285 286 * sys.mk: default MK_STATIC_DIRDEPS_CACHE from MK_DIRDEPS_CACHE 287 288 * dirdeps-options.mk: do not :tu DIRDEPS_OPTIONS 289 allows use of lower case for pseudo options. 290 291 * dirdeps-cache-update.mk: magic to deal with STATIC_DIRDEPS_CACHE 292 2932020-07-18 Simon J Gerraty <sjg@beast.crufty.net> 294 295 * dirdeps-targets.mk: Look for Makefile.dirdeps.cache 296 which allows us to have a static cache for expensive targets. 297 Use -DWITHOUT_STATIC_DIRDEPS_CACHE -DWITH_DIRDEPS_CACHE 298 to regenerate the dirdeps.cache it is a copy of. 299 3002020-07-17 Simon J Gerraty <sjg@beast.crufty.net> 301 302 * Get rid of BUILD_AT_LEVEL0, MK_DIRDEPS_BUILD makes more sense. 303 3042020-07-16 Simon J Gerraty <sjg@beast.crufty.net> 305 306 * dirdeps.mk (DIRDEP_LOADAVG_REPORT): make it easy to record 307 load averages at intervals during build. 308 3092020-07-15 Simon J Gerraty <sjg@beast.crufty.net> 310 311 * install-mk (MK_VERSION): 20200715 312 313 * dirdeps.mk: tweak Checking line to make matching Finished 314 lines for post-build analysis easier. 315 316 * meta.autodep.mk: use !defined(WITHOUT_META_STATS) 317 318 * progs.mk: avoid prog.mk outputting multiple Finished lines 319 3202020-07-11 Simon J Gerraty <sjg@beast.crufty.net> 321 322 * dirdeps.mk: further optimize dirdeps.cache 323 generate a DIRDEPS.${.TARGET} list for other purposes 324 and improve the layout. 325 3262020-07-10 Simon J Gerraty <sjg@beast.crufty.net> 327 328 * dirdeps.mk: optimize content of dirdeps.cache 329 3302020-06-28 Simon J Gerraty <sjg@beast.crufty.net> 331 332 * sys/*.mk: make it easier for local*sys.mk to customize by 333 using ?= 334 3352020-06-22 Simon J Gerraty <sjg@beast.crufty.net> 336 337 * gendirdeps.mk (LOCAL_DEPENDS_GUARD): if we don't build at level 0 338 it is much safer to guard local depends with a simple check for 339 .MAKE.LEVEL > 0 340 3412020-06-10 Simon J Gerraty <sjg@beast.crufty.net> 342 343 * install-mk (MK_VERSION): 20200610 344 345 * mkopt.sh: this needs posix shell so #!/bin/sh should be ok 346 3472020-06-06 Simon J Gerraty <sjg@beast.crufty.net> 348 349 * install-mk (MK_VERSION): 20200606 350 351 * dirdeps-targets.mk: allow for filtering of .TARGETS 352 353 * meta2deps.py: fix bug in processing 'L'ink and 'M'ove 354 entries - and we don't care about 'W'rite entries. 355 Also ignore absolute paths that do not exist. 356 3572020-05-25 Simon J Gerraty <sjg@beast.crufty.net> 358 359 * install-mk (MK_VERSION): 20200525 360 361 * init.mk: expand and simplify handling of qualified vars 362 like CPPFLAGS.${.TARGET:T} 363 3642020-05-15 Simon J Gerraty <sjg@beast.crufty.net> 365 366 * install-mk (MK_VERSION): 20200515 367 368 * dirdeps.mk: set _debug_* earlier and allow passing -d* 369 flags to submake when building DIRDEPS_CACHE 370 3712020-05-09 Simon J Gerraty <sjg@beast.crufty.net> 372 373 * whats.mk: more easily extensible 374 3752020-05-02 Simon J Gerraty <sjg@beast.crufty.net> 376 377 * whats.mk: greatly simplify by adding what.c to SRCS 378 3792020-05-01 Simon J Gerraty <sjg@beast.crufty.net> 380 381 * whats.mk: for libs take care how we add to *OBJS 382 383 * lib.mk: : works better with whats.mk 384 3852020-04-25 Simon J Gerraty <sjg@beast.crufty.net> 386 387 * install-mk (MK_VERSION): 20200420 388 389 * meta.stage.mk: it is not a STAGE_CONFLICT if some-target.dirdep 390 contains the same ${RELDIR} and a prefix match for our ${TARGET_SPEC} 391 3922020-04-16 Simon J Gerraty <sjg@beast.crufty.net> 393 394 * install-mk (MK_VERSION): 20200416 395 396 * sys/*.mk: set MAKE_SHELL rather than SHELL so as not to 397 interfere with user env. 398 399 * sys.mk: default MAKE_SHELL to sh and SHELL to MAKE_SHELL 400 401 * autodep.mk: use MAKE_SHELL. 402 4032019-11-21 Simon J Gerraty <sjg@beast.crufty.net> 404 405 * gendirdeps.mk: clear .SUFFIXES to avoid a lot of 406 wasted effort, and unexport _meta_files when no longer needed as 407 it consumes space we need for command line. 408 4092019-11-11 Simon J Gerraty <sjg@beast.crufty.net> 410 411 * dirdeps.mk _DIRDEP_USE: use DIRDEP_DIR and add 412 DIRDEP_USE_PRELUDE at start - facilitates job distribution 413 4142019-10-04 Simon J Gerraty <sjg@beast.crufty.net> 415 416 * dirdeps-targets.mk: Use TARGET_SPEC_LAST_LIST 417 defaults to ${${TARGET_SPEC_VARS:[-1]}_LIST} to match valid 418 TARGET_SPEC qualified depend files. 419 4202019-10-02 Simon J Gerraty <sjg@beast.crufty.net> 421 422 * dirdeps-targets.mk: encapsulate logic for finding top-level 423 targets to set initial DIRDEPS for DIRDEPS_BUILD 424 4252019-09-27 Simon J Gerraty <sjg@beast.crufty.net> 426 427 * install-mk (MK_VERSION): 20190911 428 429 * compiler.mk: set COMPILER_TYPE 430 4312019-07-17 Simon J Gerraty <sjg@beast.crufty.net> 432 433 * install-mk (MK_VERSION): 20190704 434 435 * sys/Darwin.mk: support for Objective-C and clang 436 4372019-05-30 Simon J Gerraty <sjg@beast.crufty.net> 438 439 * dirdeps.mk: avoid insanely long command line when generating cache 440 4412019-05-23 Simon J Gerraty <sjg@beast.crufty.net> 442 443 * install-mk (MK_VERSION): 20190505 444 445 * whats.mk: handle corner case SHLIB defined but not LIB 446 4472018-09-19 Simon J Gerraty <sjg@beast.crufty.net> 448 449 * install-mk (MK_VERSION): 20180919 450 451 * dirdeps-options.mk: .undef cannot handle var that expands to 452 more than one var. 453 4542018-07-08 Simon J Gerraty <sjg@beast.crufty.net> 455 456 * meta.stage.mk: allow wildcards in STAGE_FILES.* etc. 457 4582018-06-01 Simon J Gerraty <sjg@beast.crufty.net> 459 460 * meta.autodep.mk: export META_FILES to avoid command line limit 461 * gendirdeps.mk: if we have lots of .meta files put them in 462 an @list 463 4642018-05-28 Simon J Gerraty <sjg@beast.crufty.net> 465 466 * dirdeps-options.mk: use local.dirdeps-options.mk 467 not local.dirdeps-option.mk 468 4692018-04-20 Simon J Gerraty <sjg@beast.crufty.net> 470 471 * install-mk (MK_VERSION): 20180420 472 * dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0 473 ie. we are building something. 474 4752018-04-14 Simon J Gerraty <sjg@beast.crufty.net> 476 477 * FILES: add dirdeps-options.mk to deal with optional DIRDEPS. 478 4792018-04-05 Simon J Gerraty <sjg@beast.crufty.net> 480 481 * install-mk (MK_VERSION): 20180405 482 483 * ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER 484 if needed. 485 4862018-01-18 Simon J Gerraty <sjg@beast.crufty.net> 487 488 * install-mk (MK_VERSION): 20180118 489 490 * ldorder.mk: let make compute correct link order 491 4922017-12-12 Simon J Gerraty <sjg@beast.crufty.net> 493 494 * install-mk (MK_VERSION): 20171212 495 496 * gendirdeps.mk: guard against bogus entries in GENDIRDEPS_FILTER 497 4982017-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 499 500 * install-mk (MK_VERSION): 20171111 501 502 * lib.mk: ensure META_NOECHO is set 503 5042017-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 505 506 * Allow for host32 on rare occasions. 507 5082017-10-18 Simon J. Gerraty <sjg@bad.crufty.net> 509 510 * install-mk (MK_VERSION): 20171018 511 512 * whats.mk: include what_thing in what_uuid to avoid problem 513 when building multiple apps in the same directory. 514 5152017-08-12 Simon J. Gerraty <sjg@bad.crufty.net> 516 517 * install-mk (MK_VERSION): 20170812 518 519 * autoconf.mk: Use CONFIGURE_DEPS so Makefile can 520 add dependencies for config.recheck and config.gen 521 5222017-06-30 Simon J. Gerraty <sjg@bad.crufty.net> 523 524 * install-mk (MK_VERSION): 20170630 525 526 * meta.stage.mk: avoid triggering stage_* targets with nothing to do. 527 5282017-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 529 530 * meta2deps.py: take special care of '..' 531 5322017-05-15 Simon J. Gerraty <sjg@bad.crufty.net> 533 534 * install-mk (MK_VERSION): 20170515 535 536 * dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is 537 useful/necessary for a Makefile.depend file to export some knobs. 538 This is complicated when we are doing DIRDEPS_CACHE, so we will 539 handle export of any variables listed in DEP_EXPORT_VARS. 540 5412017-05-08 Simon J. Gerraty <sjg@bad.crufty.net> 542 543 * install-mk (MK_VERSION): 20170505 544 545 * meta2deps.py: fix botched indenation. 546 5472017-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 548 549 * sys/*.mk: Remove setting of MAKE it is unnecessary and 550 in many cases wrong (basname rather than full path) 551 552 * scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk 553 554 * init.mk: define realbuild to simplify logic in {lib,prog}.mk etc 555 5562017-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 557 558 * install-mk (MK_VERSION): 20170501 559 560 * doc.mk: fix typo in DOC_INSTALL_OWN 561 562 * inc.mk: handle INCGROUPS similar to freebsd 563 564 * files.mk: add something for files too 565 566 * add staging logic to lib.mk prog.mk etc. 567 5682017-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 569 570 * install-mk (MK_VERSION): 20170424 571 572 * dirdeps.mk: set NO_DIRDEPS when bootstrapping. 573 also target of bootstrap-this when sed is needed should be ${_want:T} 574 5752017-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 576 577 * install-mk (MK_VERSION): 20170418 578 579 * auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a 580 prefix match for .CURDIR - in which case .CURDIR *is* __objdir. 581 5822017-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 583 584 * install-mk (MK_VERSION): 20170401 585 586 * meta2deps.py: add is_src so we can check if obj dependency 587 is also a src dependency. 588 5892017-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 590 591 * install-mk (MK_VERSION): 20170326 592 593 * meta.stage.mk: do nothing if NO_STAGING is defined. 594 5952017-03-24 Simon J. Gerraty <sjg@bad.crufty.net> 596 597 * auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc. 598 5992017-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 600 601 * mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_* 602 6032017-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 604 605 * install-mk (MK_VERSION): 20170301 606 607 * dirdeps.mk (_build_all_dirs): update this outside test for empty 608 DIRDEPS. 609 610 * meta.stage.mk: allow multiple inclusion to the extent it makes 611 sense. 612 6132017-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 614 615 * prog.mk (install_links): depends on realinstall 616 6172017-02-12 Simon J. Gerraty <sjg@bad.crufty.net> 618 619 * install-mk (MK_VERSION): 20170212 620 621 * dpadd.mk: avoid applying :T:R twice to DPLIBS entries 622 6232017-01-30 Simon J. Gerraty <sjg@bad.crufty.net> 624 625 * install-mk (MK_VERSION): 20170130 626 627 * dirdeps.mk: use :range if we can. 628 629 * sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130 630 631 * meta2deps.py: clean paths without using realpath() where possible. 632 fix sort_unique. 633 6342016-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 635 636 * install-mk (MK_VERSION): 20161212 637 638 * meta2deps.py: set pid_cwd[pid] when we process 'C'hdir, 639 rather than when we detect pid change. 640 6412016-12-07 Simon J. Gerraty <sjg@bad.crufty.net> 642 643 * install-mk (MK_VERSION): 20161207 644 645 * meta.stage.mk: add stage_as_and_symlink for staging packages. 646 We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able 647 to use foo.tgz to reference the latest staged version - so we 648 make foo.tgz a symlink to it. 649 Using a target to do both operations ensures we stay in sync. 650 6512016-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 652 653 * install-mk (MK_VERSION): 20161126 654 655 * dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk 656 so it can add dependencies. 657 6582016-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 659 660 * dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE 661 do that they can influence the result correctly. 662 663 * dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC 664 665 * dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST 666 similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST 667 6682016-10-05 Simon J. Gerraty <sjg@bad.crufty.net> 669 670 * dirdeps.mk: remove dependence on jot (normal situations anyway). 671 Before we read another Makefile.depend* set DEP_* vars from 672 _DEP_TARGET_SPEC in case it uses any of them with := 673 When bootstrapping, trim any ,* from extention of chosen _src 674 Makefile.depend* to get the machine value we subst for. 675 6762016-09-30 Simon J. Gerraty <sjg@bad.crufty.net> 677 678 * dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to 679 DEP_SKIP_DIR and DEP_DIRDEPS_FILTER 680 681 * sys.mk: extract some bits to sys.{debug,vars}.mk 682 for easier re-use by others. 683 6842016-09-23 Simon Gerraty <sjg@sjg-mba13> 685 686 * lib.mk: Use ${PICO} for extension for PIC objects. 687 default to .pico (like NetBSD) safe on case insensitive filesystem. 688 6892016-08-19 Simon J. Gerraty <sjg@bad.crufty.net> 690 691 * meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default 692 6932016-08-15 Simon J. Gerraty <sjg@bad.crufty.net> 694 695 * install-mk (MK_VERSION): 20160815 696 697 * dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only 698 consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date. 699 7002016-08-13 Simon J. Gerraty <sjg@bad.crufty.net> 701 702 * meta.sys.mk (.MAKE.META.IGNORE_PATHS): 703 in meta mode we can ignore the mtime of makefiles 704 7052016-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 706 707 * install-mk (MK_VERSION): 20160802 708 709 * lib.mk (libinstall): depends on beforinstall 710 711 * prog.mk (proginstall): depends on beforinstall 712 patch from Lauri Tirkkonen 713 714 * dirdeps.mk (bootstrap): When bootstrapping; creat 715 .MAKE.DEPENDFILE_DEFAULT and allow additional filtering via 716 .MAKE.DEPENDFILE_BOOTSTRAP_SED 717 718 * dirdeps.mk: move some comments to where they make sense. 719 7202016-07-27 Simon J. Gerraty <sjg@bad.crufty.net> 721 722 * dirdeps.mk (DIRDEPS_CACHE): no dirname. 723 7242016-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 725 726 * install-mk (MK_VERSION): 20160602 727 * meta.autodep.mk: when passing META_FILES to gendirdeps.mk 728 do not apply :T to META_XTRAS 729 patch from Bryan Drewery at FreeBSD.org. 730 7312016-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 732 733 * install-mk (MK_VERSION): 20160530 734 * meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH 735 make it so. 736 7372016-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 738 739 * install-mk (MK_VERSION): 20160512 740 741 * dpadd.mk: always include local.dpadd.mk if it exists 742 remove some things that better belong in local.dpadd.mk 743 skip INCLUDES_* for staged libs unless SRC_* defined. 744 745 * own.mk: add INCLUDEDIR 746 7472016-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 748 749 * dirdeps.mk: when doing -f dirdeps.mk if target suppies no 750 TARGET_MACHINE - :E will be empty or match part of path, use 751 ${MACHINE} 752 7532016-04-07 Simon J. Gerraty <sjg@bad.crufty.net> 754 755 * meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to 756 NO_FILEMON_COOKIE 757 758 * dirdeps.mk: move the logic that allows for 759 make -f dirdeps.mk some/dir.${TARGET_SPEC} 760 inside the check for !target(_DIRDEP_USE) 761 7622016-04-04 Simon J. Gerraty <sjg@bad.crufty.net> 763 764 * Use <> when including local*.mk and others which may exist 765 elsewhere so that user can better control what they get. 766 767 * meta.autodep.mk (NO_FILEMON_COOKIE): 768 create a cookie if we ever build dir with nofilemon 769 so that UPDATE_DEPENDFILE will be forced to NO until cleaned. 770 7712016-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 772 773 * install-mk (MK_VERSION): 20160401 774 775 * meta2deps.py: fix old print statement when debugging. 776 777 * gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X 778 patch from Bryan Drewery 779 7802016-03-22 Simon J. Gerraty <sjg@bad.crufty.net> 781 782 * install-mk (MK_VERSION): 20160317 (St. Pats) 783 784 * warnings.mk: g++ does not like -Wimplicit 785 786 * sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the 787 pelthora of common suffixes for C++ 788 789 * lib.mk: use .So for shared objects 790 7912016-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 792 793 * install-mk (MK_VERSION): 20160315 794 795 * meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1) 796 normally only applies to scripts. 797 798 * dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as 799 well as outside it. 800 8012016-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 802 803 * install-mk (MK_VERSION): 20160310 804 805 * dirdeps.mk: use targets rather than a list to track DIRDEPS that 806 we have processed; the list gets very inefficient as number of 807 DIRDEPS gets large. 808 809 * sys.dependfile.mk: fix comment wrt MACHINE 810 811 * meta.autodep.mk: ignore staged DPADDs when bootstrapping. 812 patch from Bryan Drewery 813 8142016-03-02 Simon J. Gerraty <sjg@bad.crufty.net> 815 816 * meta2deps.sh: don't ignore subdirs. 817 patch from Bryan Drewery 818 8192016-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 820 821 * install-mk (MK_VERSION): 20160226 822 823 * gendirdeps.mk: mark _DEPENDFILE .NOMETA 824 8252016-02-20 Simon J. Gerraty <sjg@bad.crufty.net> 826 827 * dirdeps.mk: we shouldn't normally include .depend but if we do 828 use .dinclude if we can. 829 8302016-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 831 832 * install-mk (MK_VERSION): 20160218 833 * sys.clean-env.mk: with recent change to Var_Subst() 834 we cannot use the '$$' trick, but .export-literal does the job 835 we need. 836 * auto.dep.mk: make use .dinclude if we can. 837 838 8392016-02-05 Simon J. Gerraty <sjg@bad.crufty.net> 840 841 * dirdeps.mk: 842 Add _build_all_dirs such that local.dirdeps.mk can 843 add fully qualified dirs to it. 844 These will be built normally but the current 845 DEP_RELDIR will not depend on then (to avoid cycles). 846 This makes it easy to hook things like unit-tests into build. 847 848 8492016-01-21 Simon J. Gerraty <sjg@bad.crufty.net> 850 851 * dirdeps.mk: add bootstrap-empty 852 8532015-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 854 855 * install-mk (MK_VERSION): 20151212 856 * auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist. 857 only apply :tA to __objdir when comparing to .OBJDIR 858 8592015-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 860 861 * install-mk (MK_VERSION): 20151111 862 863 * meta.sys.mk: include sys.dependfile.mk 864 865 * sys.mk (OPTIONS_DEFAULT_NO): use options.mk 866 to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD 867 include local.sys.env.mk early 868 include local.sys.mk later 869 870 * own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk 871 8722015-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 873 874 * meta.sys.mk (META_COOKIE_TOUCH): 875 add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie 876 877 * meta.stage.mk: stage_libs should ignore SYMLINKS. 878 8792015-10-23 Simon J. Gerraty <sjg@bad.crufty.net> 880 881 * install-mk (MK_VERSION): 20151022 882 883 * sys.mk: BSD/OS does not have 'type' as a shell builtin. 884 8852015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 886 887 * install-mk (MK_VERSION): 20151020 888 889 * dirdeps.mk: Add logic for 890 make -f dirdeps.mk some/dir.${TARGET_SPEC} 891 8922015-10-14 Simon J. Gerraty <sjg@bad.crufty.net> 893 894 * install-mk (MK_VERSION): 20151010 895 8962015-10-02 Simon J. Gerraty <sjg@bad.crufty.net> 897 898 * meta.stage.mk: use staging: ${STAGE_TARGETS:... 899 to have stage_lins run last in non-jobs mode. 900 Use .ORDER only for jobs mode. 901 9022015-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 903 904 * rst2htm.mk: allow for per target flags etc. 905 9062015-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 907 908 * install-mk (MK_VERSION): 20150901 909 910 * doc.mk: create dir if needed use DOC_INSTALL_OWN 911 9122015-06-15 Simon J. Gerraty <sjg@bad.crufty.net> 913 914 * install-mk (MK_VERSION): 20150615 915 916 * auto.obj.mk: allow use of MAKEOBJDIRPREFIX too. 917 Follow make's normal precedence rules. 918 919 * gendirdeps.mk: allow customization of the header. 920 eg. for FreeBSD: 921 GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}'; 922 923 * meta.autodep.mk: ignore dirdeps.cache* 924 925 * meta.stage.mk: when bootstrapping options it can be handy to 926 throw warnings rather than errors for staging conflicts. 927 928 * meta.sys.mk: include local.meta.sys.mk for customization 929 9302015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 931 932 * install-mk (MK_VERSION): 20150606 933 934 * dirdeps.mk: don't rely on manually maintained Makefile.depend 935 to set DEP_RELDIR and reset DIRDEPS. 936 By setting DEP_RELDIR ourselves we can skip :tA 937 938 * gendirdeps.mk: skip setting DEP_RELDIR. 939 9402015-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 941 942 * dirdeps.mk: avoid wildcards like make(bootstrap*) 943 9442015-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 945 946 * install-mk (MK_VERSION): 20150520 947 948 * dirdeps.mk: when we are building dirdeps cache file we *want* 949 meta_oodate to look at all the Makefile.depend files, so 950 set .MAKE.DEPENDFILE to something that won't match. 951 952 * meta.stage.mk: for STAGE_AS_* basename of file may not be unique 953 so first use absolute path as key. 954 Also skip staging at level 0. 955 9562015-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 957 958 * install-mk (MK_VERSION): 20150430 959 960 * dirdeps.mk: fix _count_dirdeps for non-cache case. 961 9622015-04-16 Simon J. Gerraty <sjg@bad.crufty.net> 963 964 * install-mk (MK_VERSION): 20150411 965 bump version 966 967 * own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES. 968 it is here mainly for documentation purposes, since 969 if using auto.obj.mk it is better done via sys.mk 970 9712015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 972 973 * install-mk (MK_VERSION): 20150401 974 975 * meta2deps.sh: support @list 976 977 * meta2deps.py: updates from Juniper 978 o add EXCLUDES 979 o skip bogus input files. 980 o treat 'M' and 'L' as both an 'R' and a 'W' 981 9822015-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 983 984 * install-mk (MK_VERSION): 20150303 985 986 * dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache 987 which is built via sub-make so we have a .meta file to tell if 988 it is out-of-date. 989 The dirdeps-cache contains the same dependency rules that we 990 normaly construct on the fly. 991 This adds a few seconds overhead when the cache is out of date, 992 but for a large target, the savings can be significant (10-20min). 993 9942014-11-18 Simon J. Gerraty <sjg@bad.crufty.net> 995 996 * install-mk (MK_VERSION): 20141118 997 998 * meta.stage.mk: add stale_staged 999 1000 * dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked 1001 only useful under very rare conditions such as 1002 FreeBSD's make universe. 1003 1004 * auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto 1005 10062014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1007 1008 * install-mk (MK_VERSION): 20141111 1009 1010 * mkopt.sh: use consistent semantics for _mk_opt and _mk_opts 1011 10122014-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 1013 1014 * FILES: include mkopt.sh which allows handling options in shell 1015 scripts in a manner compatible with options.mk 1016 10172014-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1018 1019 * meta.stage.mk: ensure only _STAGED_DIRS under objroot are used 1020 for GENDIRDEPS_FILTER to avoid surprises. 1021 10222014-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1023 1024 * dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by 1025 the time it is applied to __depdirs they have. 1026 1027 * dirdeps.mk fix filtering of _machines since M_dep_qual_fixes 1028 expects patterns like *.${MACHINE} 1029 1030 * cython.mk (pyprefix?): use pyprefix to find python bits 1031 since prefix might be something else (where we install our 1032 stuff) 1033 10342014-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 1035 1036 * install-mk (MK_VERSION): 20140911 1037 1038 * dirdeps.mk: add bootstrap target to simplify adding support for 1039 new MACHINE. 1040 10412014-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 1042 1043 * gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and 1044 GENDIRDEPS_FILTER_VARS to make it easier to produce sharable 1045 Makefile.depend files. 1046 10472014-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 1048 1049 * install-mk (MK_VERSION): 20140828 1050 1051 * cython.mk: capture logic for building python extension modules 1052 with Cython. 1053 10542014-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1055 1056 * meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant 1057 10582014-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 1059 1060 * install-mk (MK_VERSION): 20140801 1061 1062 * dep.mk: use explicit MKDEP_MK rather than overload MKDEP to 1063 identify the autodep.mk variant. 1064 1065 * sys.dependfile.mk: delete .MAKE.DEPENDFILE if its 1066 initial value does not match .MAKE.DEPENDFILE_PREFIX 1067 1068 * meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS 1069 10702014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 1071 1072 * install-mk (MK_VERSION): 20140522 1073 1074 * lib.mk: use CC to link shlib for linux too 1075 patch from Brendan MacDonell 1076 10772014-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 1078 1079 * meta.autodep.mk: add _reldir_{finish,failed} for gathering stats 1080 if WITH_META_STATS is defined. 1081 10822014-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1083 1084 * dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS) 1085 to supress dirdeps outside of .CURDIR. 1086 10872014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 1088 1089 * Fix spelling errors - patch from Pedro Giffuni 1090 10912014-03-14 Simon J. Gerraty <sjg@bad.crufty.net> 1092 1093 * install-mk (MK_VERSION): 20140314 1094 1095 * dirdeps.mk (beforedirdeps): a handy hook 1096 1097 * dirdeps.mk (DIRDEP_MAKE): allow the actual command we run 1098 to visit leaf dirs to be intercepted (eg. for distributed 1099 build). 1100 1101 * dirdeps.mk (__depdirs): ensure // don't sneak in 1102 1103 * gendirdeps.mk (DIRDEPS): ensure // don't sneak in 1104 1105 11062014-02-21 Simon J. Gerraty <sjg@bad.crufty.net> 1107 1108 * rst2htm.mk (RST2PDF): add support for rst2pdf 1109 11102014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1111 1112 * install-mk (MK_VERSION): bump version 1113 * dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if 1114 available. 1115 11162014-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1117 1118 * options.mk: avoid :U so this isn't bmake dependent 1119 11202014-02-09 Simon J. Gerraty <sjg@bad.crufty.net> 1121 1122 * options.mk: cleanup and simplify semanitcs 1123 NO_* dominates all, if both WITH_* and WITHOUT_* 1124 are defined then result is DOMINATE_* which defaults to "no". 1125 Ie. WITHOUT_ normally wins. 1126 11272013-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 1128 1129 * install-mk (MK_VERSION): bump version 1130 * meta2deps.py: convert to print function for python3 compat. 1131 we also need to open files with mode 'r' rather than 'rb' 1132 otherwise we get bytes instead of strings. 1133 11342013-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1135 1136 * install-mk (MK_VERSION): bump version 1137 1138 * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE 1139 apply the same filtering (M_dep_qual_fixes) when setting _machines 1140 as _build_dirs. 1141 Also fix the filtering of Makefile.depend files - for reporting 1142 what we are looking for (M_dep_qual_fixes can get confused by 1143 Makefile.depend) 1144 Add some more debug info. 1145 11462013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 1147 1148 * gendirdeps.mk (_objtops): fix typo also 1149 while processing M2D_OBJROOTS to gather qualdir_list 1150 qualify $ql with loop iterator to ensure correct results. 1151 11522013-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1153 1154 * install-mk (MK_VERSION): 20130801 1155 * libs.mk: update to match progs.mk 1156 11572013-07-26 Simon J. Gerraty <sjg@bad.crufty.net> 1158 1159 * install-mk (MK_VERSION): 20130726 1160 some updates from Juniper and FreeBSD 1161 o meta2deps.py: indicate file and line number when we hit parse 1162 errors 1163 also allow @file to provide huge list of .meta files. 1164 * meta2deps.py: add try_parse() to cleanup the above. 1165 11662013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 1167 1168 * install-mk (MK_VERSION): 20130716 1169 * own.mk: add GPROG as an option 1170 * prog.mk: honor MK_GPROF==yes 1171 11722013-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 1173 1174 * install-mk (MK_VERSION): 20130505 1175 * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC 1176 for when $MACHINE isn't enough for objdir distinction. 1177 Bring meta2deps.sh closer to par with meta2deps.py. 1178 11792013-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 1180 1181 * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all' 1182 also if the target 'beforeinstall' exists, make it depend on 1183 .dirdep (incase it uses STAGE_INSTALL). 1184 11852013-04-17 Simon J. Gerraty <sjg@bad.crufty.net> 1186 1187 * install-mk (MK_VERSION): 20130401 ;-) 1188 * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as 1189 wrapper around install(1). 1190 * options.mk (OPTION_PREFIX): Allow a prefix other than MK_ 1191 11922013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1193 1194 * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized. 1195 * install-mk (MK_VERSION): bump version 1196 11972013-03-21 Simon J. Gerraty <sjg@bad.crufty.net> 1198 1199 * install-mk (MK_VERSION): bump version 1200 * gendirdeps.mk: do not apply :tA to DPADD entries, since we lose 1201 any trailing /., rather apply :tA only when needed. 1202 * gendirdeps.mk: better mimic meta2deps handling of .dirdep files. 1203 * meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance 1204 consistently. 1205 * dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC. 1206 12072013-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 1208 1209 * gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT 1210 it is simpler to just not update when say building for "host" 1211 (where we know we apply filters to DIRDEPS), and using a 1212 non-machine qualified dependfile. 1213 12142013-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1215 1216 * dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR 1217 and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC 1218 * gendirdeps.mk: ensure _objroot has trailing / if it needs it. 1219 * meta2deps.py: if machine is "host", then also trim 1220 self.host_target from any OBJROOTS. 1221 1222 12232013-03-11 Simon J. Gerraty <sjg@bad.crufty.net> 1224 1225 * gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine 1226 qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists 1227 but _DEPENDFILE does not, compare the new _DEPENDFILE against 1228 .MAKE.DEPENDFILE_DEFAULT and discard if the same. 1229 12302013-03-08 Simon J. Gerraty <sjg@bad.crufty.net> 1231 1232 * meta.stage.mk: use STAGE_TARGETS to control .ORDER 1233 and hook to all: via staging: 1234 12352013-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 1236 1237 * sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT): 1238 use a separate variable for the default .MAKE.DEPENDFILE value 1239 so that it can be controlled independently of 1240 .MAKE.DEPENDFILE_PREFERENCE 1241 1242 * meta.stage.mk: throw error if cp fails etc. 1243 Stage*() return early if passed no args. 1244 .ORDER stage_* 1245 12462013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1247 1248 * install-mk (MK_VERSION): bump version 1249 * gendirdeps.mk: handle multiple M2D_OBJROOTS better. 1250 12512013-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1252 1253 * install-mk (MK_VERSION): bump version to 20130210 1254 * import latest dirdeps.mk, gendirdeps.mk and meta2deps.py 1255 from Juniper. 1256 o dirdeps.mk now fully supports TARGET_SPEC consisting of more 1257 than just MACHINE. 1258 o no longer use DEP_MACHINE from Makefile.depend* so remove it. 1259 12602013-01-23 Simon J. Gerraty <sjg@bad.crufty.net> 1261 1262 * install-mk (MK_VERSION): bump version to 20130123 1263 * meta.stage.mk: add stage_links (hard links). 1264 if doing hard links, we add dest to link as well. 1265 Default the stage dir for [sym]links to STAGE_OBJTOP since 1266 these are typically specified as absolute paths. 1267 Add -m "mode" flag to StageFiles and StageAs. 1268 12692012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1270 1271 * install-mk (MK_VERSION): bump version to 20121111 1272 * autoconf.mk: avoid meta mode seeing changed commands for config.status 1273 * meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps 1274 in case we were found via .../mk 1275 * sys.clean-env.mk: move it from examples, we and others use it 1276 "as is". 1277 * FILES: add srctop.mk and options.mk 1278 * own.mk: convert to using options.mk 1279 which is modeled after FreeBSD's handling of MK_* 1280 but more flexible. 1281 This allows MK_* for boolean knobs to not be confused 1282 with MK* which can be commands. 1283 1284 * examples/sys.clean-env.mk: add WITH[OUT]_ to 1285 MAKE_ENV_SAVE_PREFIX_LIST. 1286 Mention that HOME=/var/empty might be a good idea. 1287 12882012-11-08 Simon J. Gerraty <sjg@bad.crufty.net> 1289 1290 * sys.dependfile.mk: if not depend file exists, $MACHINE 1291 specific ones are supported but not the default, 1292 check if any exist and follow suit. 1293 12942012-11-06 Simon J. Gerraty <sjg@bad.crufty.net> 1295 1296 * install-mk (MK_VERSION): bump version to 20121106 1297 12982012-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 1299 1300 * import latest dirdeps.mk and meta2deps.py from Juniper. 1301 * progs.mk: add MAN and CXXFLAGS to PROG_VARS 1302 also add PROGS_TARGETS and pass on PROG_CXX if it seems 1303 appropriate. 1304 13052012-11-04 Simon J. Gerraty <sjg@bad.crufty.net> 1306 1307 * meta.stage.mk: update CLEANFILES 1308 remove redundant cp of .dirdep from STAGE_AS_SCRIPT. 1309 * progs.mk: Add LDADD to PROG_VARS 1310 13112012-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1312 1313 * meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in 1314 _STAGED_DIRS so that these can be turned into filters for 1315 GENDIRDEPS_FILTER. 1316 13172012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1318 1319 * install-mk (MK_VERSION): bump version to 20121010 1320 * meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing 1321 target.dirdep matches .dirdep 1322 13232012-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1324 1325 * install-mk (MK_VERSION): bump version to 20120808 1326 * import latest meta2deps.py from Juniper. 1327 13282012-07-11 Simon J. Gerraty <sjg@bad.crufty.net> 1329 1330 * install-mk (MK_VERSION): bump version to 20120711 1331 * dep.mk: add explicit dependencies on SRCS after applying 1332 SRCS_DEP_FILTER 1333 * meta.autodep.mk: add explicit dependencies on SRCS after 1334 applying SRCS_DEP_FILTER 1335 * meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed. 1336 13372012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 1338 1339 * install-mk (MK_VERSION): bump version to 20120626 1340 * meta.sys.mk: ignore PYTHON if it does not exist 1341 compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable. 1342 * meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any 1343 entries ending in .${MACHINE} to decide if qualified _dirdep is 1344 needed. 1345 * gendirdeps.mk: only produce unqualified deps if no 1346 .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE} 1347 * meta.subdir.mk: apply SUBDIRDEPS_FILTER 1348 13492012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 1350 1351 * install-mk (MK_VERSION): bump version to 20120420 1352 * add sys.dependfile.mk so we can experiment with 1353 .MAKE.DEPENDFILE_PREFERENCE 1354 * meta.autodep.mk: _DEPENDFILE is precious! 1355 13562012-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 1357 1358 * install-mk (MK_VERSION): bump version to 20120315 1359 * install-new.mk: avoid being interrupted 1360 13612012-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 1362 1363 * man.mk: MAN might have multiple values so be careful with exists(). 1364 13652012-01-19 Simon J. Gerraty <sjg@bad.crufty.net> 1366 1367 * install-mk (MK_VERSION): bump version to 20120112 1368 * fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled 1369 as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}' 1370 13712011-12-03 Simon J. Gerraty <sjg@bad.crufty.net> 1372 1373 * install-mk (MK_VERSION): bump version to 20111201 1374 * import dirdeps.mk from Juniper sjg@ 1375 o more consistent handling of DEP_MACHINE, especially when 1376 dealing with an odd Makefile.depend, when normally using 1377 Makefile.depend.${MACHINE} 1378 13792011-11-22 Simon J. Gerraty <sjg@bad.crufty.net> 1380 1381 * install-mk (MK_VERSION): bump version to 20111122 1382 * meta.autodep.mk: add some debug output, be more crisp about 1383 updating. Use ${.ALLTARGETS:M*.o} as a clue for .depend 1384 13852011-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 1386 1387 * install-mk (MK_VERSION): bump version to 20111111 1388 it's too cool to miss 1389 * import meta* updates from Juniper sjg@ 1390 o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are 1391 normally using Makefile.depend.${MACHINE}), handy for 1392 read-only manually maintained dependencies. 1393 o meta2deps.py add a clear 'ERROR:' token if an exception is raised. 1394 o gendirdeps.mk if ERROR: from meta2deps.py do not update 1395 anything. 1396 13972011-10-30 Simon J. Gerraty <sjg@bad.crufty.net> 1398 1399 * install-new.mk separate the cmp and copy logic to its own function. 1400 14012011-10-28 Simon J. Gerraty <sjg@bad.crufty.net> 1402 1403 * install-mk (MK_VERSION): bump version to 20111028 1404 * sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto 1405 * subdir.mk: ensure _SUBDIRUSE is provided 1406 * meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk 1407 * meta.subdir.mk: always allow for Makefile.depend 1408 14092011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1410 1411 * install-mk (MK_VERSION): bump version to 20111010 1412 o minor tweak to *dirdeps.mk from Juniper sjg@ 1413 14142011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 1415 1416 * install-mk (MK_VERSION): bump version to 20111001 1417 o add meta2deps.py from Juniper sjg@ 1418 o tweak gendirdeps.mk to work with meta2deps.py when not 1419 cross-building 1420 * autoconf.mk: add autoconf-input as a hook for regenerating 1421 AUTOCONF_INPUTS (configure). 1422 14232011-08-24 Simon J. Gerraty <sjg@bad.crufty.net> 1424 1425 * meta.autodep.mk: if we do not have OBJS, .depend isn't a useful 1426 trigger for updating Makefile.depend* 1427 14282011-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1429 1430 * install-mk (MK_VERSION): bump version to 20110808 1431 * obj.mk: minor cleanup 1432 * auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too. 1433 14342011-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1435 1436 * auto.obj.mk (.OBJDIR): throw an error if we cannot use the 1437 specified dir. 1438 14392011-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 1440 1441 * meta.autodep.mk: if XMAKE_META_FILE is set 1442 the makefile uses a foreign make, and so dependencies 1443 can only be gathered from a clean tree build. 1444 14452011-06-24 Simon J. Gerraty <sjg@bad.crufty.net> 1446 1447 * install-mk (MK_VERSION): bump version to 20110622 1448 * meta.autodep.mk: improve bootstraping 1449 14502011-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1451 1452 * yacc.mk: handle the corner case of .c being removed 1453 while .h remains. 1454 14552011-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1456 1457 * yacc.mk: do .y.h and .y.c separately 1458 14592011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 1460 1461 * install-mk (MK_VERSION): bump version to 20110606 1462 * don't store SRC_DIRDEPS in Makefile.depend* by default 1463 not everyone needs it. 1464 14652011-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1466 1467 * install-mk (MK_VERSION): bump version to 20110505 1468 first release including meta mode makefiles 1469 14702011-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1471 1472 * meta.stage.mk: add STAGE_AS_SETS and stage_as 1473 for things that need to be staged with different names. 1474 14752011-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 1476 1477 * meta.stage.mk: add notion of STAGE_SETS 1478 so a makefile can stage to multiple dirs 1479 14802011-04-03 Simon J. Gerraty <sjg@bad.crufty.net> 1481 1482 * rst2htm.mk: convert rst to s5 (slides) or plain html depending 1483 on target name. 1484 14852011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1486 1487 * install-mk (MK_VERSION): bump version to 20110330 1488 14892011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 1490 1491 * sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0 1492 can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest. 1493 * sys.mk: re-define M_whence in terms of M_type. 1494 M_type is useful for checking if something is a builtin. 1495 14962011-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1497 1498 * meta.stage.mk: add stage_symlinks and leverage StageLinks for 1499 stage_libs 1500 15012011-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 1502 1503 * dirdeps.mk: correct value for _depdir_files depends on 1504 .MAKE.DEPENDFILE 1505 Add our copyright - just to make it clear we have frobbed this 1506 quite a bit. 1507 DEP_MACHINE needs to be set to MACHINE each time, if using only 1508 Makefile.depend (cf. Makefile.depend.${MACHINE}) 1509 1510 * meta.stage.mk: meta mode version of staging 1511 1512 * init.mk, final.mk: include local.*.mk to simplify customization 1513 15142011-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1515 1516 * auto.obj.mk: just because we are doing mk destroy, we should 1517 still set .OBJDIR correctly if it exists. 1518 1519 * install-mk (mksrc): do not exclude meta.sys.mk 1520 15212011-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 1522 1523 * host-target.mk: set/export _HOST_ARCH etc separately, 1524 catch junk resulting from uname -p, so we can find sys/Linux.mk 1525 correctly. 1526 15272011-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 1528 1529 * meta.sys.mk: throw an error if /dev/filemon is missing and we 1530 expected to be updating Makefile.depend* 1531 15322011-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1533 1534 * install-mk (MK_VERSION): bump version to 20110214 1535 * meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES 1536 15372010-09-25 Simon J. Gerraty <sjg@bad.crufty.net> 1538 1539 * meta.sys.mk: not valid for older bmake 1540 15412010-09-24 Simon J. Gerraty <sjg@bad.crufty.net> 1542 1543 * install-mk (MK_VERSION): bump version to 20100919 1544 include dirdeps.mk et al from Juniper Networks, 1545 for meta mode - requires filemon(9). 1546 * sys.mk, subdir.mk: Add hooks for meta mode. 1547 we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk 1548 to make turning it on/off simple. 1549 15502010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 1551 1552 * install-mk (MK_VERSION): bump version to 20100616 1553 * fix typo in sys.mk 1554 15552010-06-12 Simon J. Gerraty <sjg@bad.crufty.net> 1556 1557 * install-mk (MK_VERSION): bump version to 20100612 1558 * lib.mk: remove duplicate addition to SOBJS 1559 15602010-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1561 1562 * sys.mk: Add a means of selectively turning on debug flags. 1563 Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg" 1564 will act as if we did make -dv if .CURDIR ends in lib/sjg 1565 DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at 1566 the start of sys.mk rather than the end. 1567 This only makes sense for leaf dirs, so we check that 1568 .MAKE.LEVEL > 0 1569 15702010-06-09 Simon J. Gerraty <sjg@bad.crufty.net> 1571 1572 * install-mk (MK_VERSION): bump version to 20100608 1573 * sys.mk: include sys.env.mk later so it can use M_ListToSkip et al. 1574 * examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606 1575 also make it easier for folk to tweak 1576 15772010-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1578 1579 * install-mk (MK_VERSION): bump version to 20100606 1580 do not install examples/* 1581 * FILES: add examples/sys.clean-env.mk 1582 * examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR 1583 this requires bmake-20100606 or later to work. 1584 15852010-05-13 Simon J. Gerraty <sjg@bad.crufty.net> 1586 1587 * sys.mk (M_tA): better simulate the result of :tA if not available. 1588 15892010-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1590 1591 * sys.mk: canonicalize MAKE_VERSION 1592 old versions reported bmake-<src-date> build-<build-date> 1593 whereas we only care about <src-date> 1594 15952010-04-25 Simon J. Gerraty <sjg@bad.crufty.net> 1596 1597 * install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored 1598 * lib.mk: we only build the shared lib if SHLIB_FULLVERSION 1599 is !empty 1600 16012010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 1602 1603 * dpadd.mk: use LDADD_* if defined. 1604 16052010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 1606 1607 * install-mk (MK_VERSION): bump version to 20100420 1608 * sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy 1609 * autoconf.mk allow AUTO_AUTOCONF 1610 16112010-04-19 Simon J. Gerraty <sjg@bad.crufty.net> 1612 1613 * obj.mk: add objwarn to keep freebsd makefiles happy 1614 * auto.obj.mk: ensure Mkdirs is available. 1615 * FILES: add auto.dep.mk - a simpler version of autodep.mk 1616 * dep.mk: auto.dep.mk does not do 'make depend' so ignore it if 1617 asked to do that. 1618 fix/simplify the tests for when to run mkdep. 1619 * auto.dep.mk: add some explanation of how/what we do. 1620 * autodep.mk: skip the .OPTIONAL frobbing of .depend 1621 bmake's FROM_DEPEND flag makes it redundant. 1622 16232010-04-13 Simon J. Gerraty <sjg@bad.crufty.net> 1624 1625 * install-mk (MK_VERSION): bump version to 20100404 1626 * subdir.mk: protect from multiple inclusion using _SUBDIRUSE. 1627 * obj.mk: protect from multiple inclusion even as bsd.obj.mk 1628 Also create a target _SUBDIRUSE so that we can be used without 1629 subdir.mk 1630 16312010-04-12 Simon J. Gerraty <sjg@bad.crufty.net> 1632 1633 * dep.mk: use <> when .including so can override. 1634 16352010-01-11 Simon J. Gerraty <sjg@bad.crufty.net> 1636 1637 * lib.mk (SHLIB_LINKS): ensure a string comparison. 1638 16392010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 1640 1641 * install-mk (MK_VERSION): bump version to 20100102 1642 * own.mk: ensure PRINTOBJDIR works 1643 * autoconf.mk: pass on CONFIGURE_ARGS 1644 * init.mk: handle COPTS.${.IMPSRC:T} etc. 1645 * lib.mk: allow sys.mk to control SHLIB_FULLVERSION 1646 fix handling of symlinks for darwin 1647 * libnames.mk: add DSHLIBEXT for libs which only exist as shared. 1648 * man.mk: suppress chown when not root. 1649 * rst2htm.mk: allow srcs from multiple locations. 1650 * sys.mk: M_whence, stop after 1st line of output. 1651 * sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT 1652 * sys/SunOS.mk: we need to export PATH 1653 16542009-12-23 Simon J. Gerraty <sjg@void.crufty.net> 1655 1656 * install-mk (MK_VERSION): bump version 1657 include rst2htm.mk 1658 16592009-12-17 Simon J. Gerraty <sjg@void.crufty.net> 1660 1661 * sys.mk,libnames.mk add .-include <local.*> 1662 this allows local customization without the need to edit the 1663 distributed files. 1664 16652009-12-14 Simon J. Gerraty <sjg@void.crufty.net> 1666 1667 * dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up 1668 older versions already installed. 1669 16702009-12-13 Simon J. Gerraty <sjg@void.crufty.net> 1671 1672 * stage.mk (.stage-install): generalize lib.mk's .libinstall 1673 * rules.mk rules for generic Makefile. 1674 * inc.mk install for includes. 1675 16762009-12-11 Simon J. Gerraty <sjg@void.crufty.net> 1677 1678 * sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check 1679 this, so provide it if using native make. 1680 16812009-12-10 Simon J. Gerraty <sjg@void.crufty.net> 1682 1683 * FILES: move all the platform *.sys.mk files to sys/*.mk 1684 * Rename Generic.sys.mk to sys.mk - we always want it. 1685 16862009-11-17 Simon J. Gerraty <sjg@void.crufty.net> 1687 1688 * install-mk (MK_VERSION): bump version 1689 * host-target.mk: only export the expensive stuff 1690 * Generic.sys.mk (sys_mk): for SunOS we need to look for 1691 ${HOST_OS}.${HOST_OSMAJOR} too! 1692 16932009-11-07 Simon J. Gerraty <sjg@void.crufty.net> 1694 1695 * install-mk (MK_VERSION): bump version 1696 * lib.mk: if sys.mk doesn't give us an lorder, don't use it. 1697 based on patch from Greg Olszewski. 1698 * Generic.sys.mk: if we have nothing to work with 1699 set LORDER etc only if we can find it. 1700 17012009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 1702 1703 * install-mk (MK_VERSION): bump version 1704 * man.mk: cleanman: remove CLEANMAN if defined. 1705 17062009-09-04 Simon J. Gerraty <sjg@void.crufty.net> 1707 1708 * SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk 1709 17102009-07-17 Simon J. Gerraty <sjg@void.crufty.net> 1711 1712 * install-mk (MK_VERSION): bump version 1713 include auto.obj.mk 1714 1715 17162009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 1717 1718 * prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail. 1719 17202008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 1721 1722 * install-mk (MK_VERSION): bump version 1723 man.mk: ensure we generate *.cat1 etc in . 1724 17252008-07-16 Simon J. Gerraty <sjg@void.crufty.net> 1726 1727 * install-mk (MK_VERSION): bump version 1728 add prlist.mk 1729 17302007-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1731 1732 * Generic.sys.mk: Allow os specific sys.mk to be in a 1733 subdir of ${.PARSEDIR} 1734 17352007-11-22 Simon J. Gerraty <sjg@void.crufty.net> 1736 1737 * install-mk (MK_VERSION): bump version 1738 * general cleanup 1739 * dpadd.mk introduce DPMAGIC_LIBS_* 1740 17412007-04-30 Simon J. Gerraty <sjg@void.crufty.net> 1742 1743 * install-mk (MK_VERSION): bump version 1744 1745 * libs.mk, progs.mk, autodep.mk: allow for per lib/prog 1746 depend files and ensure clean is called for each lib/prog. 1747 17482007-03-27 Simon J. Gerraty <sjg@void.crufty.net> 1749 1750 * autodep.mk (.depend): delete lines that do not start with 1751 space and do not contain ':' 1752 17532007-02-16 Simon J. Gerraty <sjg@void.crufty.net> 1754 1755 * autodep.mk (.depend): gcc may wrap lines if pathnames are long 1756 so make sure the transform for .OPTIONAL copes. 1757 17582007-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1759 1760 * install-mk (MK_VERSION): bump version 1761 1762 * own.mk: make sure RM and LN are defined. 1763 1764 * obj.mk: fix a typo, and objlink target. 1765 17662006-12-30 Simon J. Gerraty <sjg@void.crufty.net> 1767 1768 * install-mk (MK_VERSION): bump version 1769 * added libs.mk - analogous to progs.mk 1770 make both of them always inlcude {lib,prog}.mk 1771 17722006-12-28 Simon J. Gerraty <sjg@void.crufty.net> 1773 1774 * progs.mk: add a means of building multiple apps in one dir. 1775 17762006-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1777 1778 * install-mk (MK_VERSION): bump version to 20061126 1779 1780 * warnings.mk: detect invalid WARNINGS_SET 1781 1782 * warnings.mk: use ${.TARGET:T:R}.o when looking for target 1783 specific warnings. 1784 1785 * For .cc sources, turn off warnings that g++ vomits on. 1786 17872006-11-08 Simon J. Gerraty <sjg@void.crufty.net> 1788 1789 * own.mk: if __initialized__ target doesn't exist and we are 1790 FreeBSD we got here directly from sys.mk 1791 17922006-11-06 Simon J. Gerraty <sjg@void.crufty.net> 1793 1794 * install-mk (MK_VERSION): bump version to 20061106 1795 add scripts.mk 1796 17972006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 1798 1799 * install-mk (MK_VERSION): bump version to 20060318 1800 1801 * autodep.mk: avoid := when modifying OBJS into __dependsrcs 1802 18032006-03-02 Simon J. Gerraty <sjg@void.crufty.net> 1804 1805 * install-mk (MK_VERSION): bump version to 20060302 1806 * autodep.mk: use -MF et al to help gcc+ccache DTRT. 1807 18082006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 1809 1810 * install-mk (MK_VERSION): bump version to 20060301 1811 * autodep.mk (.depend): 1812 if MAKE_VERSION is newer than 20050530 we can make .END depend on 1813 .depend and make .depend depend on __depsrcs that exist. 1814 * dpadd.mk: add SRC_PATHADD 1815 18162005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1817 1818 * install-mk (MK_VERSION): bump version to 20051104 1819 * prog.mk: remove all the LIBC?= junk, use 1820 .-include libnames.mk instead (none by default). 1821 also if USE_DPADD_MK is set, include that. 1822 18232005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1824 1825 * install-mk (MK_VERSION): bump version to 20051001 1826 Add UnixWare.sys.mk from Klaus Heinz. 1827 18282005-04-05 Simon J. Gerraty <sjg@void.crufty.net> 1829 1830 * install-mk: always install *.sys.mk and if need be symlink one 1831 to sys.mk 1832 18332005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 1834 1835 * subdir.mk, own.mk: use .MAKE rather than MAKE 1836 18372004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1838 1839 * own.mk: don't use NetBSD's _SRC_TOP_ it can 1840 cause confusion. Also don't take just 'mk' as a 1841 srctop indicator. 1842 18432004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 1844 1845 * warnings.mk: overhauled, now very powerful. 1846 18472004-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1848 1849 * Generic.sys.mk: need to use ${.PARSEDIR} with exists(). 1850 18512004-02-01 Simon J. Gerraty <sjg@void.crufty.net> 1852 1853 * install-mk (MK_VERSION): bump version to 20040201 1854 * extract HOST_TARGET stuff to host-target.mk so own.mk and 1855 Generic.sys.mk can share. 1856 * fix typo in autodep.mk _SUBDIRUSE not _SUBDIR. 1857 18582003-09-30 Simon J. Gerraty <sjg@void.crufty.net> 1859 1860 * install-mk (MK_VERSION): 20030930 1861 * rename generic.sys.mk to Generic.sys.mk 1862 so that it does not get installed (unless being used as sys.mk) 1863 * set OS and ROOT_GROUP for those that we know the value. 1864 for others (eg. Generic.sys.mk) wrap the != in an .ifndef so 1865 we don't do it again for each sub-make. 1866 18672003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 1868 1869 * install-mk (MK_VERSION): 20030928 1870 Add some extra *.sys.mk from bootstrap-pkgsrc 1871 some of these likely still need work. 1872 Make everything default to root:wheel ownership, 1873 sys.mk can set ROOT_GROUP accordingly. 1874 18752003-08-07 Simon J. Gerraty <sjg@void.crufty.net> 1876 1877 * install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR 1878 not the portable ones. 1879 18802003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 1881 1882 * install-mk: add ability to use cp -f when updating 1883 destination .mk files. Also now possible to play games with 1884 FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk 1885 into dest - not recommended unless you seriously want to. 1886 18872003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1888 1889 * own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc 1890 for semi-compatability with NetBSD. 1891 18922003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1893 1894 * install-mk: add a version indicator 1895 18962003-07-22 Simon J. Gerraty <sjg@void.crufty.net> 1897 1898 * prog.mk: don't try and use ${LIBCRT0} if its /dev/null 1899 1900 * install-mk: Allow FORCE_SYS_MK to come from env 1901 1902 1903 1904