12022-09-09 Simon J Gerraty <sjg@beast.crufty.net> 2 3 * install-mk (MK_VERSION): 20220909 4 5 * sys/Linux.mk set EGREP to grep -E to avoid deprecation warnings 6 72022-09-06 Simon J Gerraty <sjg@beast.crufty.net> 8 9 * dirdeps-options.mk: explain the need to use 10 ${DEP_${TARGET_SPEC_VAR}:U${TARGET_SPEC_VAR}} when refering to 11 ${TARGET_SPEC_VAR} 12 132022-09-03 Simon J Gerraty <sjg@beast.crufty.net> 14 15 * install-mk (MK_VERSION): 20220903 16 17 * M_cmpv handle more than 3 dots and clear leading 0's 18 192022-07-20 Simon J Gerraty <sjg@beast.crufty.net> 20 21 * install-mk (MK_VERSION): 20220720 22 23 * prog.mk: handle PROG_CXX for more than just NetBSD 24 252022-06-20 Simon J Gerraty <sjg@beast.crufty.net> 26 27 * install-mk (MK_VERSION): 20220620 28 29 * yacc.mk: when we have *.y in SRCS used explicit rules and .ORDER 30 rather than just suffix rules 31 322022-04-23 Simon J Gerraty <sjg@beast.crufty.net> 33 34 * install-mk (MK_VERSION): 20220422 35 36 * gendirdeps.mk: If LOCAL_DEPENDS_GUARD is set to "no" 37 do not capture any local depends in Makefile.depend 38 392022-03-25 Simon J Gerraty <sjg@beast.crufty.net> 40 41 * install-mk (MK_VERSION): 20220323 42 * posix.mk: default rules for .POSIX: 43 442022-03-17 Simon J Gerraty <sjg@beast.crufty.net> 45 46 * sys/*.mk: remove l from ARFLAGS 47 482022-03-14 Simon J Gerraty <sjg@beast.crufty.net> 49 50 * install-mk (MK_VERSION): 20220314 51 52 * dirdeps-options.mk: allow options to be per RELDIR 53 try DIRDEPS_OPTIONS_QUALIFIER_LIST first prefixed 54 with ${DEP_RELDIR}. 55 562022-02-14 Simon J Gerraty <sjg@beast.crufty.net> 57 58 * install-mk (MK_VERSION): 20220214 59 60 * cc-wrap.mk: fix :@ modifier 61 622022-02-06 Simon J Gerraty <sjg@beast.crufty.net> 63 64 * install-mk (MK_VERSION): 20220206 65 66 * cc-wrap.mk: docuement how CCACHE etc might be set for 67 maximum flexibility 68 692022-02-05 Simon J Gerraty <sjg@beast.crufty.net> 70 71 * sys.vars.mk: use JOT_CMD (jot or seq) if available for M_JOT 72 732022-02-04 Simon J Gerraty <sjg@beast.crufty.net> 74 75 * install-mk (MK_VERSION): 20220204 76 77 * host-target.mk: use .MAKE.OS if available 78 792022-02-02 Simon J Gerraty <sjg@beast.crufty.net> 80 81 * install-mk (MK_VERSION): 20220202 82 83 * cc-wrap.mk: allow other entries in CC_WRAP_FILTER 84 We add our filter on extensions last, so prior filters 85 can apply to the whole value of .IMPSRC 86 872022-02-01 Simon J Gerraty <sjg@beast.crufty.net> 88 89 * cc-wrap.mk: take advantage of target local variables to 90 wrap compilers like CC CXX with wrappers like ccache distcc etc 91 922022-01-28 Simon J Gerraty <sjg@beast.crufty.net> 93 94 * meta2deps: we do not expect any trace data for setid apps 95 962022-01-26 Simon J Gerraty <sjg@beast.crufty.net> 97 98 * dirdeps.mk: ensure TARGET_SPEC and TARGET_SPEC_VARS are passed 99 to sub-make using DIRDEPS_CACHE 100 1012022-01-07 Simon J Gerraty <sjg@beast.crufty.net> 102 103 * dirdeps.mk: use _cache_script to minimize the number of shells 104 forked when generating dirdeps.cache 105 1062022-01-02 Simon J Gerraty <sjg@beast.crufty.net> 107 108 * install-mk (MK_VERSION): 20220101 109 110 * dirdeps.mk: initialize DEP_* and _debug_reldir earlier. 111 If initial DIRDEPS are from command line, create the target 112 _dirdeps_cmdline as an indication. 113 1142022-01-01 Simon J Gerraty <sjg@beast.crufty.net> 115 116 * init.mk (_SKIP_BUILD): when doing DIRDEPS_BUILD 117 at top-level only some targets are allowed at level 0, 118 for leaf makefiles only the default (all) target is restricted 119 1202021-12-28 Simon J Gerraty <sjg@beast.crufty.net> 121 122 * install-mk (MK_VERSION): 20211228 123 124 * meta2deps.py: filemon on Linux is not as reliable as we might 125 like, we do not want to update DIRDEPS if filemon output is 126 incomplete. Track pids that we 'E'xec and make sure we see an 127 e'X'it for each one. Throw an error if we are missing any 'X' 128 records. 129 1302021-12-12 Simon J Gerraty <sjg@beast.crufty.net> 131 132 * sys.mk: simplify; include meta.sys.mk if MK_META_MODE is yes. 133 134 * meta.sys.mk: do not check for /dev/filemon if .MAKE.PATH_FILEMON 135 is something else. 136 137 * meta.autodep.mk: we can now reference ${.SUFFIXES} 138 139 * meta2deps.py: derive a list of dirdep extensions from 140 TARGET_SPEC to trim from dirdeps. 141 142 * dirdeps.mk: flip the computation of qualified vs unqualified 143 dirdeps - it is much simpler to check for unqualified first. 144 1452021-12-11 Simon J Gerraty <sjg@beast.crufty.net> 146 147 * install-mk (MK_VERSION): 20211212 148 149 * auto.dep.mk: rearrange so that the trivial implementation 150 for recent bmake is more obvious. 151 1522021-12-07 Simon J Gerraty <sjg@beast.crufty.net> 153 154 * install-mk (MK_VERSION): 20211207 155 156 * Ensure guard targets are .NOTMAIN 157 158 * meta.sys.mk: check for nofilemon support when we skip level 0 159 160 * auto.dep.mk: make this usable in meta mode 161 for platforms that cannot use meta.autodep.mk 162 163 * meta2deps.py: avoid confusion if MACHINE and another 164 TARGET_SPEC_VAR have same value. 165 1662021-11-27 Simon J Gerraty <sjg@beast.crufty.net> 167 168 * dirdeps.mk: when building dirdeps.cache, minimize the amount of 169 data put into env, by stripping ${SRCTOP}/ from each entry. 170 A long sandbox name can double the amount of memory consumed and 171 in extreme cases cause failure. 172 While we are at it, strip ${SRCTOP}/ from a lot of the debug output. 173 1742021-11-11 Simon J Gerraty <sjg@beast.crufty.net> 175 176 * install-mk (MK_VERSION): 20211111 177 178 * meta.stage.mk (LN_CP_SCRIPT): if staging to NFS cp -p can fail 179 so fallback to cp if necessary. 180 1812021-10-30 Simon J Gerraty <sjg@beast.crufty.net> 182 183 * man.mk (CMT2DOC): use cmt2doc.py rather than the 30 year 184 old cmt2doc.pl 185 1862021-10-24 Simon J Gerraty <sjg@beast.crufty.net> 187 188 * meta.stage.mk: stage_as_and_symlink use ${STAGE_LINK_AS_$f:U$f} 189 as the symlink (rare) 190 1912021-10-16 Simon J Gerraty <sjg@beast.crufty.net> 192 193 * autoconf.mk: if AUTOCONF_GENERATED_MAKEFILE is set and has not 194 been read, throw an error after running configure telling user to 195 restart. 196 1972021-10-13 Simon J Gerraty <sjg@beast.crufty.net> 198 199 * install-mk (MK_VERSION): 20211011 200 201 * Add support for SCO_SV 202 2032021-10-01 Simon J Gerraty <sjg@beast.crufty.net> 204 205 * install-mk (MK_VERSION): 20211001 206 207 * man.mk: use MAN_SUFFIXES and CMT2DOC_SUFFIXES for more 208 flexibility 209 2102021-09-13 Simon J Gerraty <sjg@beast.crufty.net> 211 212 * options.mk (describe-options): print options and their values 213 and optional description 214 2152021-09-11 Simon J Gerraty <sjg@beast.crufty.net> 216 217 * install-mk (MK_VERSION): 20210911 218 219 * options.mk (show-options): print options and their values 220 2212021-09-08 Simon J Gerraty <sjg@beast.crufty.net> 222 223 * install-mk (MK_VERSION): 20210909 224 225 * lib.mk: apply patch from <daniel@octaforge.org> 226 to fix shared libs on Linux 227 2282021-08-08 Simon J Gerraty <sjg@beast.crufty.net> 229 230 * install-mk (MK_VERSION): 20210808 231 232 * options.mk: issue warning for WITH_*=no 233 2342021-06-16 Simon J Gerraty <sjg@beast.crufty.net> 235 236 * install-mk (MK_VERSION): 20210616 237 238 * dirdeps.mk: when using .MAKE.DEPENDFILE_PREFERENCE to find 239 depend files to read, anchor MACHINE at , or end of string 240 to avoid prefix match. 241 2422021-05-04 Simon J Gerraty <sjg@beast.crufty.net> 243 244 * install-mk (MK_VERSION): 20210504 245 246 * dirdeps.mk: re-implement ALL_MACHINES support to better 247 cater for local complexities, when ONLY_TARGET_SPEC_LIST 248 is not set. local.dirdeps.mk can set 249 DIRDEPS_ALL_MACHINES_FILTER and/or 250 DIRDEPS_ALL_MACHINES_FILTER_XTRAS to filter the results we get 251 from listing all existing Makefile.depend.* 252 2532021-04-20 Simon J Gerraty <sjg@beast.crufty.net> 254 255 * install-mk (MK_VERSION): 20210420 256 257 * dirdeps.mk: revert previous - not always safe. 258 2592021-03-20 Simon J Gerraty <sjg@beast.crufty.net> 260 261 * install-mk (MK_VERSION): 20210321 262 263 * dirdeps.mk: when generating dirdeps.cache 264 we only need to hook the initial DIRDEPS to the 265 dirdeps target. That and any _build_xtra_dirs (like tests which 266 should not be hooked directly to the dependency graph - to avoid 267 cycles) 268 2692021-01-30 Simon J Gerraty <sjg@beast.crufty.net> 270 271 * install-mk (MK_VERSION): 20210130 272 273 * dirdeps.mk: expr 2 - 1 - 1 exits with a bad status 274 we need to guard against this in DIRDEP_LOADAVG_REPORT. 275 276 * dirdeps.mk: restore respect for TARGET_MACHINE 277 2782021-01-06 Simon J Gerraty <sjg@beast.crufty.net> 279 280 * install-mk (MK_VERSION): 20210101 281 282 * dirdeps.mk: first time we are read, just use TARGET_SPEC for 283 _DEP_TARGET_SPEC 284 2852020-12-22 Simon J Gerraty <sjg@beast.crufty.net> 286 287 * sys.mk (MAKE_SHELL): use ${.SHELL:Ush} 288 and use := when setting SHELL 289 2902020-12-21 Simon J Gerraty <sjg@beast.crufty.net> 291 292 * install-mk (MK_VERSION): 20201221 293 294 * dirdeps-options.mk: latest bmake allows only one arg to .undef 295 2962020-12-11 Simon J Gerraty <sjg@beast.crufty.net> 297 298 * dirdeps-targets.mk: allow for "." in DIRDEPS_TARGETS_DIRS 299 so that any directory can be treated as a target. 300 3012020-11-26 Simon J Gerraty <sjg@beast.crufty.net> 302 303 * install-mk (MK_VERSION): 20201126 304 305 * own.mk: use .MAKE.{UID,GID} if available. 306 307 * init.mk: suppress _SKIP_BUILD warning if doing -V 308 3092020-11-20 Simon J Gerraty <sjg@beast.crufty.net> 310 311 * install-mk (MK_VERSION): 20201120 312 313 * init.mk: rename LEVEL0_TARGETS to DIRDEPS_BUILD_LEVEL0_TARGETS 314 315 * dirdeps-targets.mk: fix typo in comment 316 3172020-11-06 Simon J Gerraty <sjg@beast.crufty.net> 318 319 * install-mk (MK_VERSION): 20201106 320 321 * meta.autodep.mk: use OBJ_EXTENSIONS rather than hardcode sed 322 args to tweak extensions for local deps. 323 3242020-11-01 Simon J Gerraty <sjg@beast.crufty.net> 325 326 * install-mk (MK_VERSION): 20201101 327 328 * dirdeps.mk: most leaf makefiles are not suitable for building 329 dirdeps.cache so if RELDIR is not "." use dirdeps.mk 330 3312020-10-28 Simon J Gerraty <sjg@beast.crufty.net> 332 333 * install-mk (MK_VERSION): 20201028 334 335 * dirdeps.mk: if we don't have :range use equivalent of M_RANGE 336 when building dirdeps.cache for leaf directory use -f dirdeps.mk 337 338 * sys.vars.mk: add M_JOT and M_RANGE 339 3402020-10-01 Simon J Gerraty <sjg@beast.crufty.net> 341 342 * install-mk (MK_VERSION): 20201001 343 344 * meta2deps.{py,sh}: throw an error if we don't see filemon version 345 3462020-09-09 Simon J Gerraty <sjg@beast.crufty.net> 347 348 * install-mk (MK_VERSION): 20200909 349 350 * dirdeps-cache-update.mk: use cache_update_dirdep as guard target 351 3522020-08-26 Simon J Gerraty <sjg@beast.crufty.net> 353 354 * dirdeps.mk: ensure we cannot confuse a static cache for dynamic 355 (even more rare that use of static cache is playing clever tricks 356 with it) 357 3582020-08-16 Simon J Gerraty <sjg@beast.crufty.net> 359 360 * dirdeps-cache-update.mk: allow 361 MK_STATIC_DIRDEPS_CACHE_UPDATE_IMMEDIATE to control when we 362 actually update STATIC_DIRDEPS_CACHE. 363 364 * stage-install.sh: create dest directory if needed 365 before running install(1) 366 3672020-08-10 Simon J Gerraty <sjg@beast.crufty.net> 368 369 * dirdeps-targets.mk: include Makefile.dirdeps.options 370 371 * dirdeps.mk: use _TARGETS if defined for DIRDEPS_CACHE 372 3732020-08-09 Simon J Gerraty <sjg@beast.crufty.net> 374 375 * dirdeps.mk: default BUILD_DIRDEPS_MAKEFILE to empty 376 377 * dirdeps-cache-update.mk: building parallel cache update 378 under the context of dirdeps-cached would be ideal, but 379 is problematic, so it runs as a sibling. 380 Use cache-built target to ensure we wait for it to complete if 381 necessary. 382 3832020-08-06 Simon J Gerraty <sjg@beast.crufty.net> 384 385 * install-mk (MK_VERSION): 20200806 386 387 * dirdeps-options: allow TARGET_SPEC to affect option values. 388 Use DIRDEPS_OPTIONS_QUALIFIER_LIST before using bare MK_* 389 390 * dirdeps-targets.mk: check for MK_STATIC_DIRDEPS_CACHE defined 391 before looking for STATIC_DIRDEPS_CACHE 392 3932020-08-05 Simon J Gerraty <sjg@beast.crufty.net> 394 395 * host-target.mk: Darwin use MACHINE for HOST_ARCH too 396 397 * dirdeps-options.mk: improve debug output 398 3992020-07-22 Simon J Gerraty <sjg@beast.crufty.net> 400 401 * dirdeps.mk: set and export DYNAMIC_DIRDEPS_CACHE 402 for use by dirdeps-cache-update.mk 403 404 * dirdeps-targets.mk: set and export STATIC_DIRDEPS_CACHE 405 for use by dirdeps-cache-update.mk even if we don't use it. 406 407 * dirdeps-cache-update.mk: we only need worry about the background 408 update case, with the above, the update from DIRDEPS_CACHE is 409 simple. 410 411 * meta2deps.py: R 1234 . is not interesting 412 4132020-07-20 Simon J Gerraty <sjg@beast.crufty.net> 414 415 * sys.mk: default MK_STATIC_DIRDEPS_CACHE from MK_DIRDEPS_CACHE 416 417 * dirdeps-options.mk: do not :tu DIRDEPS_OPTIONS 418 allows use of lower case for pseudo options. 419 420 * dirdeps-cache-update.mk: magic to deal with STATIC_DIRDEPS_CACHE 421 4222020-07-18 Simon J Gerraty <sjg@beast.crufty.net> 423 424 * dirdeps-targets.mk: Look for Makefile.dirdeps.cache 425 which allows us to have a static cache for expensive targets. 426 Use -DWITHOUT_STATIC_DIRDEPS_CACHE -DWITH_DIRDEPS_CACHE 427 to regenerate the dirdeps.cache it is a copy of. 428 4292020-07-17 Simon J Gerraty <sjg@beast.crufty.net> 430 431 * Get rid of BUILD_AT_LEVEL0, MK_DIRDEPS_BUILD makes more sense. 432 4332020-07-16 Simon J Gerraty <sjg@beast.crufty.net> 434 435 * dirdeps.mk (DIRDEP_LOADAVG_REPORT): make it easy to record 436 load averages at intervals during build. 437 4382020-07-15 Simon J Gerraty <sjg@beast.crufty.net> 439 440 * install-mk (MK_VERSION): 20200715 441 442 * dirdeps.mk: tweak Checking line to make matching Finished 443 lines for post-build analysis easier. 444 445 * meta.autodep.mk: use !defined(WITHOUT_META_STATS) 446 447 * progs.mk: avoid prog.mk outputting multiple Finished lines 448 4492020-07-11 Simon J Gerraty <sjg@beast.crufty.net> 450 451 * dirdeps.mk: further optimize dirdeps.cache 452 generate a DIRDEPS.${.TARGET} list for other purposes 453 and improve the layout. 454 4552020-07-10 Simon J Gerraty <sjg@beast.crufty.net> 456 457 * dirdeps.mk: optimize content of dirdeps.cache 458 4592020-06-28 Simon J Gerraty <sjg@beast.crufty.net> 460 461 * sys/*.mk: make it easier for local*sys.mk to customize by 462 using ?= 463 4642020-06-22 Simon J Gerraty <sjg@beast.crufty.net> 465 466 * gendirdeps.mk (LOCAL_DEPENDS_GUARD): if we don't build at level 0 467 it is much safer to guard local depends with a simple check for 468 .MAKE.LEVEL > 0 469 4702020-06-10 Simon J Gerraty <sjg@beast.crufty.net> 471 472 * install-mk (MK_VERSION): 20200610 473 474 * mkopt.sh: this needs posix shell so #!/bin/sh should be ok 475 4762020-06-06 Simon J Gerraty <sjg@beast.crufty.net> 477 478 * install-mk (MK_VERSION): 20200606 479 480 * dirdeps-targets.mk: allow for filtering of .TARGETS 481 482 * meta2deps.py: fix bug in processing 'L'ink and 'M'ove 483 entries - and we don't care about 'W'rite entries. 484 Also ignore absolute paths that do not exist. 485 4862020-05-25 Simon J Gerraty <sjg@beast.crufty.net> 487 488 * install-mk (MK_VERSION): 20200525 489 490 * init.mk: expand and simplify handling of qualified vars 491 like CPPFLAGS.${.TARGET:T} 492 4932020-05-15 Simon J Gerraty <sjg@beast.crufty.net> 494 495 * install-mk (MK_VERSION): 20200515 496 497 * dirdeps.mk: set _debug_* earlier and allow passing -d* 498 flags to submake when building DIRDEPS_CACHE 499 5002020-05-09 Simon J Gerraty <sjg@beast.crufty.net> 501 502 * whats.mk: more easily extensible 503 5042020-05-02 Simon J Gerraty <sjg@beast.crufty.net> 505 506 * whats.mk: greatly simplify by adding what.c to SRCS 507 5082020-05-01 Simon J Gerraty <sjg@beast.crufty.net> 509 510 * whats.mk: for libs take care how we add to *OBJS 511 512 * lib.mk: : works better with whats.mk 513 5142020-04-25 Simon J Gerraty <sjg@beast.crufty.net> 515 516 * install-mk (MK_VERSION): 20200420 517 518 * meta.stage.mk: it is not a STAGE_CONFLICT if some-target.dirdep 519 contains the same ${RELDIR} and a prefix match for our ${TARGET_SPEC} 520 5212020-04-16 Simon J Gerraty <sjg@beast.crufty.net> 522 523 * install-mk (MK_VERSION): 20200416 524 525 * sys/*.mk: set MAKE_SHELL rather than SHELL so as not to 526 interfere with user env. 527 528 * sys.mk: default MAKE_SHELL to sh and SHELL to MAKE_SHELL 529 530 * autodep.mk: use MAKE_SHELL. 531 5322019-11-21 Simon J Gerraty <sjg@beast.crufty.net> 533 534 * gendirdeps.mk: clear .SUFFIXES to avoid a lot of 535 wasted effort, and unexport _meta_files when no longer needed as 536 it consumes space we need for command line. 537 5382019-11-11 Simon J Gerraty <sjg@beast.crufty.net> 539 540 * dirdeps.mk _DIRDEP_USE: use DIRDEP_DIR and add 541 DIRDEP_USE_PRELUDE at start - facilitates job distribution 542 5432019-10-04 Simon J Gerraty <sjg@beast.crufty.net> 544 545 * dirdeps-targets.mk: Use TARGET_SPEC_LAST_LIST 546 defaults to ${${TARGET_SPEC_VARS:[-1]}_LIST} to match valid 547 TARGET_SPEC qualified depend files. 548 5492019-10-02 Simon J Gerraty <sjg@beast.crufty.net> 550 551 * dirdeps-targets.mk: encapsulate logic for finding top-level 552 targets to set initial DIRDEPS for DIRDEPS_BUILD 553 5542019-09-27 Simon J Gerraty <sjg@beast.crufty.net> 555 556 * install-mk (MK_VERSION): 20190911 557 558 * compiler.mk: set COMPILER_TYPE 559 5602019-07-17 Simon J Gerraty <sjg@beast.crufty.net> 561 562 * install-mk (MK_VERSION): 20190704 563 564 * sys/Darwin.mk: support for Objective-C and clang 565 5662019-05-30 Simon J Gerraty <sjg@beast.crufty.net> 567 568 * dirdeps.mk: avoid insanely long command line when generating cache 569 5702019-05-23 Simon J Gerraty <sjg@beast.crufty.net> 571 572 * install-mk (MK_VERSION): 20190505 573 574 * whats.mk: handle corner case SHLIB defined but not LIB 575 5762018-09-19 Simon J Gerraty <sjg@beast.crufty.net> 577 578 * install-mk (MK_VERSION): 20180919 579 580 * dirdeps-options.mk: .undef cannot handle var that expands to 581 more than one var. 582 5832018-07-08 Simon J Gerraty <sjg@beast.crufty.net> 584 585 * meta.stage.mk: allow wildcards in STAGE_FILES.* etc. 586 5872018-06-01 Simon J Gerraty <sjg@beast.crufty.net> 588 589 * meta.autodep.mk: export META_FILES to avoid command line limit 590 * gendirdeps.mk: if we have lots of .meta files put them in 591 an @list 592 5932018-05-28 Simon J Gerraty <sjg@beast.crufty.net> 594 595 * dirdeps-options.mk: use local.dirdeps-options.mk 596 not local.dirdeps-option.mk 597 5982018-04-20 Simon J Gerraty <sjg@beast.crufty.net> 599 600 * install-mk (MK_VERSION): 20180420 601 * dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0 602 ie. we are building something. 603 6042018-04-14 Simon J Gerraty <sjg@beast.crufty.net> 605 606 * FILES: add dirdeps-options.mk to deal with optional DIRDEPS. 607 6082018-04-05 Simon J Gerraty <sjg@beast.crufty.net> 609 610 * install-mk (MK_VERSION): 20180405 611 612 * ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER 613 if needed. 614 6152018-01-18 Simon J Gerraty <sjg@beast.crufty.net> 616 617 * install-mk (MK_VERSION): 20180118 618 619 * ldorder.mk: let make compute correct link order 620 6212017-12-12 Simon J Gerraty <sjg@beast.crufty.net> 622 623 * install-mk (MK_VERSION): 20171212 624 625 * gendirdeps.mk: guard against bogus entries in GENDIRDEPS_FILTER 626 6272017-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 628 629 * install-mk (MK_VERSION): 20171111 630 631 * lib.mk: ensure META_NOECHO is set 632 6332017-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 634 635 * Allow for host32 on rare occasions. 636 6372017-10-18 Simon J. Gerraty <sjg@bad.crufty.net> 638 639 * install-mk (MK_VERSION): 20171018 640 641 * whats.mk: include what_thing in what_uuid to avoid problem 642 when building multiple apps in the same directory. 643 6442017-08-12 Simon J. Gerraty <sjg@bad.crufty.net> 645 646 * install-mk (MK_VERSION): 20170812 647 648 * autoconf.mk: Use CONFIGURE_DEPS so Makefile can 649 add dependencies for config.recheck and config.gen 650 6512017-06-30 Simon J. Gerraty <sjg@bad.crufty.net> 652 653 * install-mk (MK_VERSION): 20170630 654 655 * meta.stage.mk: avoid triggering stage_* targets with nothing to do. 656 6572017-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 658 659 * meta2deps.py: take special care of '..' 660 6612017-05-15 Simon J. Gerraty <sjg@bad.crufty.net> 662 663 * install-mk (MK_VERSION): 20170515 664 665 * dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is 666 useful/necessary for a Makefile.depend file to export some knobs. 667 This is complicated when we are doing DIRDEPS_CACHE, so we will 668 handle export of any variables listed in DEP_EXPORT_VARS. 669 6702017-05-08 Simon J. Gerraty <sjg@bad.crufty.net> 671 672 * install-mk (MK_VERSION): 20170505 673 674 * meta2deps.py: fix botched indenation. 675 6762017-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 677 678 * sys/*.mk: Remove setting of MAKE it is unnecessary and 679 in many cases wrong (basname rather than full path) 680 681 * scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk 682 683 * init.mk: define realbuild to simplify logic in {lib,prog}.mk etc 684 6852017-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 686 687 * install-mk (MK_VERSION): 20170501 688 689 * doc.mk: fix typo in DOC_INSTALL_OWN 690 691 * inc.mk: handle INCGROUPS similar to freebsd 692 693 * files.mk: add something for files too 694 695 * add staging logic to lib.mk prog.mk etc. 696 6972017-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 698 699 * install-mk (MK_VERSION): 20170424 700 701 * dirdeps.mk: set NO_DIRDEPS when bootstrapping. 702 also target of bootstrap-this when sed is needed should be ${_want:T} 703 7042017-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 705 706 * install-mk (MK_VERSION): 20170418 707 708 * auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a 709 prefix match for .CURDIR - in which case .CURDIR *is* __objdir. 710 7112017-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 712 713 * install-mk (MK_VERSION): 20170401 714 715 * meta2deps.py: add is_src so we can check if obj dependency 716 is also a src dependency. 717 7182017-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 719 720 * install-mk (MK_VERSION): 20170326 721 722 * meta.stage.mk: do nothing if NO_STAGING is defined. 723 7242017-03-24 Simon J. Gerraty <sjg@bad.crufty.net> 725 726 * auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc. 727 7282017-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 729 730 * mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_* 731 7322017-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 733 734 * install-mk (MK_VERSION): 20170301 735 736 * dirdeps.mk (_build_all_dirs): update this outside test for empty 737 DIRDEPS. 738 739 * meta.stage.mk: allow multiple inclusion to the extent it makes 740 sense. 741 7422017-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 743 744 * prog.mk (install_links): depends on realinstall 745 7462017-02-12 Simon J. Gerraty <sjg@bad.crufty.net> 747 748 * install-mk (MK_VERSION): 20170212 749 750 * dpadd.mk: avoid applying :T:R twice to DPLIBS entries 751 7522017-01-30 Simon J. Gerraty <sjg@bad.crufty.net> 753 754 * install-mk (MK_VERSION): 20170130 755 756 * dirdeps.mk: use :range if we can. 757 758 * sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130 759 760 * meta2deps.py: clean paths without using realpath() where possible. 761 fix sort_unique. 762 7632016-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 764 765 * install-mk (MK_VERSION): 20161212 766 767 * meta2deps.py: set pid_cwd[pid] when we process 'C'hdir, 768 rather than when we detect pid change. 769 7702016-12-07 Simon J. Gerraty <sjg@bad.crufty.net> 771 772 * install-mk (MK_VERSION): 20161207 773 774 * meta.stage.mk: add stage_as_and_symlink for staging packages. 775 We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able 776 to use foo.tgz to reference the latest staged version - so we 777 make foo.tgz a symlink to it. 778 Using a target to do both operations ensures we stay in sync. 779 7802016-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 781 782 * install-mk (MK_VERSION): 20161126 783 784 * dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk 785 so it can add dependencies. 786 7872016-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 788 789 * dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE 790 do that they can influence the result correctly. 791 792 * dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC 793 794 * dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST 795 similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST 796 7972016-10-05 Simon J. Gerraty <sjg@bad.crufty.net> 798 799 * dirdeps.mk: remove dependence on jot (normal situations anyway). 800 Before we read another Makefile.depend* set DEP_* vars from 801 _DEP_TARGET_SPEC in case it uses any of them with := 802 When bootstrapping, trim any ,* from extention of chosen _src 803 Makefile.depend* to get the machine value we subst for. 804 8052016-09-30 Simon J. Gerraty <sjg@bad.crufty.net> 806 807 * dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to 808 DEP_SKIP_DIR and DEP_DIRDEPS_FILTER 809 810 * sys.mk: extract some bits to sys.{debug,vars}.mk 811 for easier re-use by others. 812 8132016-09-23 Simon Gerraty <sjg@sjg-mba13> 814 815 * lib.mk: Use ${PICO} for extension for PIC objects. 816 default to .pico (like NetBSD) safe on case insensitive filesystem. 817 8182016-08-19 Simon J. Gerraty <sjg@bad.crufty.net> 819 820 * meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default 821 8222016-08-15 Simon J. Gerraty <sjg@bad.crufty.net> 823 824 * install-mk (MK_VERSION): 20160815 825 826 * dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only 827 consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date. 828 8292016-08-13 Simon J. Gerraty <sjg@bad.crufty.net> 830 831 * meta.sys.mk (.MAKE.META.IGNORE_PATHS): 832 in meta mode we can ignore the mtime of makefiles 833 8342016-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 835 836 * install-mk (MK_VERSION): 20160802 837 838 * lib.mk (libinstall): depends on beforinstall 839 840 * prog.mk (proginstall): depends on beforinstall 841 patch from Lauri Tirkkonen 842 843 * dirdeps.mk (bootstrap): When bootstrapping; creat 844 .MAKE.DEPENDFILE_DEFAULT and allow additional filtering via 845 .MAKE.DEPENDFILE_BOOTSTRAP_SED 846 847 * dirdeps.mk: move some comments to where they make sense. 848 8492016-07-27 Simon J. Gerraty <sjg@bad.crufty.net> 850 851 * dirdeps.mk (DIRDEPS_CACHE): no dirname. 852 8532016-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 854 855 * install-mk (MK_VERSION): 20160602 856 * meta.autodep.mk: when passing META_FILES to gendirdeps.mk 857 do not apply :T to META_XTRAS 858 patch from Bryan Drewery at FreeBSD.org. 859 8602016-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 861 862 * install-mk (MK_VERSION): 20160530 863 * meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH 864 make it so. 865 8662016-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 867 868 * install-mk (MK_VERSION): 20160512 869 870 * dpadd.mk: always include local.dpadd.mk if it exists 871 remove some things that better belong in local.dpadd.mk 872 skip INCLUDES_* for staged libs unless SRC_* defined. 873 874 * own.mk: add INCLUDEDIR 875 8762016-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 877 878 * dirdeps.mk: when doing -f dirdeps.mk if target suppies no 879 TARGET_MACHINE - :E will be empty or match part of path, use 880 ${MACHINE} 881 8822016-04-07 Simon J. Gerraty <sjg@bad.crufty.net> 883 884 * meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to 885 NO_FILEMON_COOKIE 886 887 * dirdeps.mk: move the logic that allows for 888 make -f dirdeps.mk some/dir.${TARGET_SPEC} 889 inside the check for !target(_DIRDEP_USE) 890 8912016-04-04 Simon J. Gerraty <sjg@bad.crufty.net> 892 893 * Use <> when including local*.mk and others which may exist 894 elsewhere so that user can better control what they get. 895 896 * meta.autodep.mk (NO_FILEMON_COOKIE): 897 create a cookie if we ever build dir with nofilemon 898 so that UPDATE_DEPENDFILE will be forced to NO until cleaned. 899 9002016-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 901 902 * install-mk (MK_VERSION): 20160401 903 904 * meta2deps.py: fix old print statement when debugging. 905 906 * gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X 907 patch from Bryan Drewery 908 9092016-03-22 Simon J. Gerraty <sjg@bad.crufty.net> 910 911 * install-mk (MK_VERSION): 20160317 (St. Pats) 912 913 * warnings.mk: g++ does not like -Wimplicit 914 915 * sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the 916 pelthora of common suffixes for C++ 917 918 * lib.mk: use .So for shared objects 919 9202016-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 921 922 * install-mk (MK_VERSION): 20160315 923 924 * meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1) 925 normally only applies to scripts. 926 927 * dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as 928 well as outside it. 929 9302016-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 931 932 * install-mk (MK_VERSION): 20160310 933 934 * dirdeps.mk: use targets rather than a list to track DIRDEPS that 935 we have processed; the list gets very inefficient as number of 936 DIRDEPS gets large. 937 938 * sys.dependfile.mk: fix comment wrt MACHINE 939 940 * meta.autodep.mk: ignore staged DPADDs when bootstrapping. 941 patch from Bryan Drewery 942 9432016-03-02 Simon J. Gerraty <sjg@bad.crufty.net> 944 945 * meta2deps.sh: don't ignore subdirs. 946 patch from Bryan Drewery 947 9482016-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 949 950 * install-mk (MK_VERSION): 20160226 951 952 * gendirdeps.mk: mark _DEPENDFILE .NOMETA 953 9542016-02-20 Simon J. Gerraty <sjg@bad.crufty.net> 955 956 * dirdeps.mk: we shouldn't normally include .depend but if we do 957 use .dinclude if we can. 958 9592016-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 960 961 * install-mk (MK_VERSION): 20160218 962 * sys.clean-env.mk: with recent change to Var_Subst() 963 we cannot use the '$$' trick, but .export-literal does the job 964 we need. 965 * auto.dep.mk: make use .dinclude if we can. 966 967 9682016-02-05 Simon J. Gerraty <sjg@bad.crufty.net> 969 970 * dirdeps.mk: 971 Add _build_all_dirs such that local.dirdeps.mk can 972 add fully qualified dirs to it. 973 These will be built normally but the current 974 DEP_RELDIR will not depend on then (to avoid cycles). 975 This makes it easy to hook things like unit-tests into build. 976 977 9782016-01-21 Simon J. Gerraty <sjg@bad.crufty.net> 979 980 * dirdeps.mk: add bootstrap-empty 981 9822015-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 983 984 * install-mk (MK_VERSION): 20151212 985 * auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist. 986 only apply :tA to __objdir when comparing to .OBJDIR 987 9882015-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 989 990 * install-mk (MK_VERSION): 20151111 991 992 * meta.sys.mk: include sys.dependfile.mk 993 994 * sys.mk (OPTIONS_DEFAULT_NO): use options.mk 995 to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD 996 include local.sys.env.mk early 997 include local.sys.mk later 998 999 * own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk 1000 10012015-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 1002 1003 * meta.sys.mk (META_COOKIE_TOUCH): 1004 add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie 1005 1006 * meta.stage.mk: stage_libs should ignore SYMLINKS. 1007 10082015-10-23 Simon J. Gerraty <sjg@bad.crufty.net> 1009 1010 * install-mk (MK_VERSION): 20151022 1011 1012 * sys.mk: BSD/OS does not have 'type' as a shell builtin. 1013 10142015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 1015 1016 * install-mk (MK_VERSION): 20151020 1017 1018 * dirdeps.mk: Add logic for 1019 make -f dirdeps.mk some/dir.${TARGET_SPEC} 1020 10212015-10-14 Simon J. Gerraty <sjg@bad.crufty.net> 1022 1023 * install-mk (MK_VERSION): 20151010 1024 10252015-10-02 Simon J. Gerraty <sjg@bad.crufty.net> 1026 1027 * meta.stage.mk: use staging: ${STAGE_TARGETS:... 1028 to have stage_lins run last in non-jobs mode. 1029 Use .ORDER only for jobs mode. 1030 10312015-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 1032 1033 * rst2htm.mk: allow for per target flags etc. 1034 10352015-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 1036 1037 * install-mk (MK_VERSION): 20150901 1038 1039 * doc.mk: create dir if needed use DOC_INSTALL_OWN 1040 10412015-06-15 Simon J. Gerraty <sjg@bad.crufty.net> 1042 1043 * install-mk (MK_VERSION): 20150615 1044 1045 * auto.obj.mk: allow use of MAKEOBJDIRPREFIX too. 1046 Follow make's normal precedence rules. 1047 1048 * gendirdeps.mk: allow customization of the header. 1049 eg. for FreeBSD: 1050 GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}'; 1051 1052 * meta.autodep.mk: ignore dirdeps.cache* 1053 1054 * meta.stage.mk: when bootstrapping options it can be handy to 1055 throw warnings rather than errors for staging conflicts. 1056 1057 * meta.sys.mk: include local.meta.sys.mk for customization 1058 10592015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 1060 1061 * install-mk (MK_VERSION): 20150606 1062 1063 * dirdeps.mk: don't rely on manually maintained Makefile.depend 1064 to set DEP_RELDIR and reset DIRDEPS. 1065 By setting DEP_RELDIR ourselves we can skip :tA 1066 1067 * gendirdeps.mk: skip setting DEP_RELDIR. 1068 10692015-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 1070 1071 * dirdeps.mk: avoid wildcards like make(bootstrap*) 1072 10732015-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 1074 1075 * install-mk (MK_VERSION): 20150520 1076 1077 * dirdeps.mk: when we are building dirdeps cache file we *want* 1078 meta_oodate to look at all the Makefile.depend files, so 1079 set .MAKE.DEPENDFILE to something that won't match. 1080 1081 * meta.stage.mk: for STAGE_AS_* basename of file may not be unique 1082 so first use absolute path as key. 1083 Also skip staging at level 0. 1084 10852015-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 1086 1087 * install-mk (MK_VERSION): 20150430 1088 1089 * dirdeps.mk: fix _count_dirdeps for non-cache case. 1090 10912015-04-16 Simon J. Gerraty <sjg@bad.crufty.net> 1092 1093 * install-mk (MK_VERSION): 20150411 1094 bump version 1095 1096 * own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES. 1097 it is here mainly for documentation purposes, since 1098 if using auto.obj.mk it is better done via sys.mk 1099 11002015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 1101 1102 * install-mk (MK_VERSION): 20150401 1103 1104 * meta2deps.sh: support @list 1105 1106 * meta2deps.py: updates from Juniper 1107 o add EXCLUDES 1108 o skip bogus input files. 1109 o treat 'M' and 'L' as both an 'R' and a 'W' 1110 11112015-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1112 1113 * install-mk (MK_VERSION): 20150303 1114 1115 * dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache 1116 which is built via sub-make so we have a .meta file to tell if 1117 it is out-of-date. 1118 The dirdeps-cache contains the same dependency rules that we 1119 normaly construct on the fly. 1120 This adds a few seconds overhead when the cache is out of date, 1121 but for a large target, the savings can be significant (10-20min). 1122 11232014-11-18 Simon J. Gerraty <sjg@bad.crufty.net> 1124 1125 * install-mk (MK_VERSION): 20141118 1126 1127 * meta.stage.mk: add stale_staged 1128 1129 * dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked 1130 only useful under very rare conditions such as 1131 FreeBSD's make universe. 1132 1133 * auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto 1134 11352014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1136 1137 * install-mk (MK_VERSION): 20141111 1138 1139 * mkopt.sh: use consistent semantics for _mk_opt and _mk_opts 1140 11412014-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 1142 1143 * FILES: include mkopt.sh which allows handling options in shell 1144 scripts in a manner compatible with options.mk 1145 11462014-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1147 1148 * meta.stage.mk: ensure only _STAGED_DIRS under objroot are used 1149 for GENDIRDEPS_FILTER to avoid surprises. 1150 11512014-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1152 1153 * dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by 1154 the time it is applied to __depdirs they have. 1155 1156 * dirdeps.mk fix filtering of _machines since M_dep_qual_fixes 1157 expects patterns like *.${MACHINE} 1158 1159 * cython.mk (pyprefix?): use pyprefix to find python bits 1160 since prefix might be something else (where we install our 1161 stuff) 1162 11632014-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 1164 1165 * install-mk (MK_VERSION): 20140911 1166 1167 * dirdeps.mk: add bootstrap target to simplify adding support for 1168 new MACHINE. 1169 11702014-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 1171 1172 * gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and 1173 GENDIRDEPS_FILTER_VARS to make it easier to produce sharable 1174 Makefile.depend files. 1175 11762014-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 1177 1178 * install-mk (MK_VERSION): 20140828 1179 1180 * cython.mk: capture logic for building python extension modules 1181 with Cython. 1182 11832014-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1184 1185 * meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant 1186 11872014-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 1188 1189 * install-mk (MK_VERSION): 20140801 1190 1191 * dep.mk: use explicit MKDEP_MK rather than overload MKDEP to 1192 identify the autodep.mk variant. 1193 1194 * sys.dependfile.mk: delete .MAKE.DEPENDFILE if its 1195 initial value does not match .MAKE.DEPENDFILE_PREFIX 1196 1197 * meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS 1198 11992014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 1200 1201 * install-mk (MK_VERSION): 20140522 1202 1203 * lib.mk: use CC to link shlib for linux too 1204 patch from Brendan MacDonell 1205 12062014-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 1207 1208 * meta.autodep.mk: add _reldir_{finish,failed} for gathering stats 1209 if WITH_META_STATS is defined. 1210 12112014-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1212 1213 * dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS) 1214 to supress dirdeps outside of .CURDIR. 1215 12162014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 1217 1218 * Fix spelling errors - patch from Pedro Giffuni 1219 12202014-03-14 Simon J. Gerraty <sjg@bad.crufty.net> 1221 1222 * install-mk (MK_VERSION): 20140314 1223 1224 * dirdeps.mk (beforedirdeps): a handy hook 1225 1226 * dirdeps.mk (DIRDEP_MAKE): allow the actual command we run 1227 to visit leaf dirs to be intercepted (eg. for distributed 1228 build). 1229 1230 * dirdeps.mk (__depdirs): ensure // don't sneak in 1231 1232 * gendirdeps.mk (DIRDEPS): ensure // don't sneak in 1233 1234 12352014-02-21 Simon J. Gerraty <sjg@bad.crufty.net> 1236 1237 * rst2htm.mk (RST2PDF): add support for rst2pdf 1238 12392014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1240 1241 * install-mk (MK_VERSION): bump version 1242 * dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if 1243 available. 1244 12452014-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1246 1247 * options.mk: avoid :U so this isn't bmake dependent 1248 12492014-02-09 Simon J. Gerraty <sjg@bad.crufty.net> 1250 1251 * options.mk: cleanup and simplify semanitcs 1252 NO_* dominates all, if both WITH_* and WITHOUT_* 1253 are defined then result is DOMINATE_* which defaults to "no". 1254 Ie. WITHOUT_ normally wins. 1255 12562013-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 1257 1258 * install-mk (MK_VERSION): bump version 1259 * meta2deps.py: convert to print function for python3 compat. 1260 we also need to open files with mode 'r' rather than 'rb' 1261 otherwise we get bytes instead of strings. 1262 12632013-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1264 1265 * install-mk (MK_VERSION): bump version 1266 1267 * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE 1268 apply the same filtering (M_dep_qual_fixes) when setting _machines 1269 as _build_dirs. 1270 Also fix the filtering of Makefile.depend files - for reporting 1271 what we are looking for (M_dep_qual_fixes can get confused by 1272 Makefile.depend) 1273 Add some more debug info. 1274 12752013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 1276 1277 * gendirdeps.mk (_objtops): fix typo also 1278 while processing M2D_OBJROOTS to gather qualdir_list 1279 qualify $ql with loop iterator to ensure correct results. 1280 12812013-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1282 1283 * install-mk (MK_VERSION): 20130801 1284 * libs.mk: update to match progs.mk 1285 12862013-07-26 Simon J. Gerraty <sjg@bad.crufty.net> 1287 1288 * install-mk (MK_VERSION): 20130726 1289 some updates from Juniper and FreeBSD 1290 o meta2deps.py: indicate file and line number when we hit parse 1291 errors 1292 also allow @file to provide huge list of .meta files. 1293 * meta2deps.py: add try_parse() to cleanup the above. 1294 12952013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 1296 1297 * install-mk (MK_VERSION): 20130716 1298 * own.mk: add GPROG as an option 1299 * prog.mk: honor MK_GPROF==yes 1300 13012013-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 1302 1303 * install-mk (MK_VERSION): 20130505 1304 * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC 1305 for when $MACHINE isn't enough for objdir distinction. 1306 Bring meta2deps.sh closer to par with meta2deps.py. 1307 13082013-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 1309 1310 * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all' 1311 also if the target 'beforeinstall' exists, make it depend on 1312 .dirdep (incase it uses STAGE_INSTALL). 1313 13142013-04-17 Simon J. Gerraty <sjg@bad.crufty.net> 1315 1316 * install-mk (MK_VERSION): 20130401 ;-) 1317 * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as 1318 wrapper around install(1). 1319 * options.mk (OPTION_PREFIX): Allow a prefix other than MK_ 1320 13212013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1322 1323 * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized. 1324 * install-mk (MK_VERSION): bump version 1325 13262013-03-21 Simon J. Gerraty <sjg@bad.crufty.net> 1327 1328 * install-mk (MK_VERSION): bump version 1329 * gendirdeps.mk: do not apply :tA to DPADD entries, since we lose 1330 any trailing /., rather apply :tA only when needed. 1331 * gendirdeps.mk: better mimic meta2deps handling of .dirdep files. 1332 * meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance 1333 consistently. 1334 * dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC. 1335 13362013-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 1337 1338 * gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT 1339 it is simpler to just not update when say building for "host" 1340 (where we know we apply filters to DIRDEPS), and using a 1341 non-machine qualified dependfile. 1342 13432013-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1344 1345 * dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR 1346 and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC 1347 * gendirdeps.mk: ensure _objroot has trailing / if it needs it. 1348 * meta2deps.py: if machine is "host", then also trim 1349 self.host_target from any OBJROOTS. 1350 1351 13522013-03-11 Simon J. Gerraty <sjg@bad.crufty.net> 1353 1354 * gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine 1355 qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists 1356 but _DEPENDFILE does not, compare the new _DEPENDFILE against 1357 .MAKE.DEPENDFILE_DEFAULT and discard if the same. 1358 13592013-03-08 Simon J. Gerraty <sjg@bad.crufty.net> 1360 1361 * meta.stage.mk: use STAGE_TARGETS to control .ORDER 1362 and hook to all: via staging: 1363 13642013-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 1365 1366 * sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT): 1367 use a separate variable for the default .MAKE.DEPENDFILE value 1368 so that it can be controlled independently of 1369 .MAKE.DEPENDFILE_PREFERENCE 1370 1371 * meta.stage.mk: throw error if cp fails etc. 1372 Stage*() return early if passed no args. 1373 .ORDER stage_* 1374 13752013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1376 1377 * install-mk (MK_VERSION): bump version 1378 * gendirdeps.mk: handle multiple M2D_OBJROOTS better. 1379 13802013-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1381 1382 * install-mk (MK_VERSION): bump version to 20130210 1383 * import latest dirdeps.mk, gendirdeps.mk and meta2deps.py 1384 from Juniper. 1385 o dirdeps.mk now fully supports TARGET_SPEC consisting of more 1386 than just MACHINE. 1387 o no longer use DEP_MACHINE from Makefile.depend* so remove it. 1388 13892013-01-23 Simon J. Gerraty <sjg@bad.crufty.net> 1390 1391 * install-mk (MK_VERSION): bump version to 20130123 1392 * meta.stage.mk: add stage_links (hard links). 1393 if doing hard links, we add dest to link as well. 1394 Default the stage dir for [sym]links to STAGE_OBJTOP since 1395 these are typically specified as absolute paths. 1396 Add -m "mode" flag to StageFiles and StageAs. 1397 13982012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1399 1400 * install-mk (MK_VERSION): bump version to 20121111 1401 * autoconf.mk: avoid meta mode seeing changed commands for config.status 1402 * meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps 1403 in case we were found via .../mk 1404 * sys.clean-env.mk: move it from examples, we and others use it 1405 "as is". 1406 * FILES: add srctop.mk and options.mk 1407 * own.mk: convert to using options.mk 1408 which is modeled after FreeBSD's handling of MK_* 1409 but more flexible. 1410 This allows MK_* for boolean knobs to not be confused 1411 with MK* which can be commands. 1412 1413 * examples/sys.clean-env.mk: add WITH[OUT]_ to 1414 MAKE_ENV_SAVE_PREFIX_LIST. 1415 Mention that HOME=/var/empty might be a good idea. 1416 14172012-11-08 Simon J. Gerraty <sjg@bad.crufty.net> 1418 1419 * sys.dependfile.mk: if not depend file exists, $MACHINE 1420 specific ones are supported but not the default, 1421 check if any exist and follow suit. 1422 14232012-11-06 Simon J. Gerraty <sjg@bad.crufty.net> 1424 1425 * install-mk (MK_VERSION): bump version to 20121106 1426 14272012-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 1428 1429 * import latest dirdeps.mk and meta2deps.py from Juniper. 1430 * progs.mk: add MAN and CXXFLAGS to PROG_VARS 1431 also add PROGS_TARGETS and pass on PROG_CXX if it seems 1432 appropriate. 1433 14342012-11-04 Simon J. Gerraty <sjg@bad.crufty.net> 1435 1436 * meta.stage.mk: update CLEANFILES 1437 remove redundant cp of .dirdep from STAGE_AS_SCRIPT. 1438 * progs.mk: Add LDADD to PROG_VARS 1439 14402012-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1441 1442 * meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in 1443 _STAGED_DIRS so that these can be turned into filters for 1444 GENDIRDEPS_FILTER. 1445 14462012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1447 1448 * install-mk (MK_VERSION): bump version to 20121010 1449 * meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing 1450 target.dirdep matches .dirdep 1451 14522012-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1453 1454 * install-mk (MK_VERSION): bump version to 20120808 1455 * import latest meta2deps.py from Juniper. 1456 14572012-07-11 Simon J. Gerraty <sjg@bad.crufty.net> 1458 1459 * install-mk (MK_VERSION): bump version to 20120711 1460 * dep.mk: add explicit dependencies on SRCS after applying 1461 SRCS_DEP_FILTER 1462 * meta.autodep.mk: add explicit dependencies on SRCS after 1463 applying SRCS_DEP_FILTER 1464 * meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed. 1465 14662012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 1467 1468 * install-mk (MK_VERSION): bump version to 20120626 1469 * meta.sys.mk: ignore PYTHON if it does not exist 1470 compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable. 1471 * meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any 1472 entries ending in .${MACHINE} to decide if qualified _dirdep is 1473 needed. 1474 * gendirdeps.mk: only produce unqualified deps if no 1475 .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE} 1476 * meta.subdir.mk: apply SUBDIRDEPS_FILTER 1477 14782012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 1479 1480 * install-mk (MK_VERSION): bump version to 20120420 1481 * add sys.dependfile.mk so we can experiment with 1482 .MAKE.DEPENDFILE_PREFERENCE 1483 * meta.autodep.mk: _DEPENDFILE is precious! 1484 14852012-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 1486 1487 * install-mk (MK_VERSION): bump version to 20120315 1488 * install-new.mk: avoid being interrupted 1489 14902012-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 1491 1492 * man.mk: MAN might have multiple values so be careful with exists(). 1493 14942012-01-19 Simon J. Gerraty <sjg@bad.crufty.net> 1495 1496 * install-mk (MK_VERSION): bump version to 20120112 1497 * fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled 1498 as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}' 1499 15002011-12-03 Simon J. Gerraty <sjg@bad.crufty.net> 1501 1502 * install-mk (MK_VERSION): bump version to 20111201 1503 * import dirdeps.mk from Juniper sjg@ 1504 o more consistent handling of DEP_MACHINE, especially when 1505 dealing with an odd Makefile.depend, when normally using 1506 Makefile.depend.${MACHINE} 1507 15082011-11-22 Simon J. Gerraty <sjg@bad.crufty.net> 1509 1510 * install-mk (MK_VERSION): bump version to 20111122 1511 * meta.autodep.mk: add some debug output, be more crisp about 1512 updating. Use ${.ALLTARGETS:M*.o} as a clue for .depend 1513 15142011-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 1515 1516 * install-mk (MK_VERSION): bump version to 20111111 1517 it's too cool to miss 1518 * import meta* updates from Juniper sjg@ 1519 o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are 1520 normally using Makefile.depend.${MACHINE}), handy for 1521 read-only manually maintained dependencies. 1522 o meta2deps.py add a clear 'ERROR:' token if an exception is raised. 1523 o gendirdeps.mk if ERROR: from meta2deps.py do not update 1524 anything. 1525 15262011-10-30 Simon J. Gerraty <sjg@bad.crufty.net> 1527 1528 * install-new.mk separate the cmp and copy logic to its own function. 1529 15302011-10-28 Simon J. Gerraty <sjg@bad.crufty.net> 1531 1532 * install-mk (MK_VERSION): bump version to 20111028 1533 * sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto 1534 * subdir.mk: ensure _SUBDIRUSE is provided 1535 * meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk 1536 * meta.subdir.mk: always allow for Makefile.depend 1537 15382011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1539 1540 * install-mk (MK_VERSION): bump version to 20111010 1541 o minor tweak to *dirdeps.mk from Juniper sjg@ 1542 15432011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 1544 1545 * install-mk (MK_VERSION): bump version to 20111001 1546 o add meta2deps.py from Juniper sjg@ 1547 o tweak gendirdeps.mk to work with meta2deps.py when not 1548 cross-building 1549 * autoconf.mk: add autoconf-input as a hook for regenerating 1550 AUTOCONF_INPUTS (configure). 1551 15522011-08-24 Simon J. Gerraty <sjg@bad.crufty.net> 1553 1554 * meta.autodep.mk: if we do not have OBJS, .depend isn't a useful 1555 trigger for updating Makefile.depend* 1556 15572011-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1558 1559 * install-mk (MK_VERSION): bump version to 20110808 1560 * obj.mk: minor cleanup 1561 * auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too. 1562 15632011-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1564 1565 * auto.obj.mk (.OBJDIR): throw an error if we cannot use the 1566 specified dir. 1567 15682011-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 1569 1570 * meta.autodep.mk: if XMAKE_META_FILE is set 1571 the makefile uses a foreign make, and so dependencies 1572 can only be gathered from a clean tree build. 1573 15742011-06-24 Simon J. Gerraty <sjg@bad.crufty.net> 1575 1576 * install-mk (MK_VERSION): bump version to 20110622 1577 * meta.autodep.mk: improve bootstraping 1578 15792011-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1580 1581 * yacc.mk: handle the corner case of .c being removed 1582 while .h remains. 1583 15842011-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1585 1586 * yacc.mk: do .y.h and .y.c separately 1587 15882011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 1589 1590 * install-mk (MK_VERSION): bump version to 20110606 1591 * don't store SRC_DIRDEPS in Makefile.depend* by default 1592 not everyone needs it. 1593 15942011-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1595 1596 * install-mk (MK_VERSION): bump version to 20110505 1597 first release including meta mode makefiles 1598 15992011-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1600 1601 * meta.stage.mk: add STAGE_AS_SETS and stage_as 1602 for things that need to be staged with different names. 1603 16042011-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 1605 1606 * meta.stage.mk: add notion of STAGE_SETS 1607 so a makefile can stage to multiple dirs 1608 16092011-04-03 Simon J. Gerraty <sjg@bad.crufty.net> 1610 1611 * rst2htm.mk: convert rst to s5 (slides) or plain html depending 1612 on target name. 1613 16142011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1615 1616 * install-mk (MK_VERSION): bump version to 20110330 1617 16182011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 1619 1620 * sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0 1621 can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest. 1622 * sys.mk: re-define M_whence in terms of M_type. 1623 M_type is useful for checking if something is a builtin. 1624 16252011-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1626 1627 * meta.stage.mk: add stage_symlinks and leverage StageLinks for 1628 stage_libs 1629 16302011-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 1631 1632 * dirdeps.mk: correct value for _depdir_files depends on 1633 .MAKE.DEPENDFILE 1634 Add our copyright - just to make it clear we have frobbed this 1635 quite a bit. 1636 DEP_MACHINE needs to be set to MACHINE each time, if using only 1637 Makefile.depend (cf. Makefile.depend.${MACHINE}) 1638 1639 * meta.stage.mk: meta mode version of staging 1640 1641 * init.mk, final.mk: include local.*.mk to simplify customization 1642 16432011-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1644 1645 * auto.obj.mk: just because we are doing mk destroy, we should 1646 still set .OBJDIR correctly if it exists. 1647 1648 * install-mk (mksrc): do not exclude meta.sys.mk 1649 16502011-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 1651 1652 * host-target.mk: set/export _HOST_ARCH etc separately, 1653 catch junk resulting from uname -p, so we can find sys/Linux.mk 1654 correctly. 1655 16562011-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 1657 1658 * meta.sys.mk: throw an error if /dev/filemon is missing and we 1659 expected to be updating Makefile.depend* 1660 16612011-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1662 1663 * install-mk (MK_VERSION): bump version to 20110214 1664 * meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES 1665 16662010-09-25 Simon J. Gerraty <sjg@bad.crufty.net> 1667 1668 * meta.sys.mk: not valid for older bmake 1669 16702010-09-24 Simon J. Gerraty <sjg@bad.crufty.net> 1671 1672 * install-mk (MK_VERSION): bump version to 20100919 1673 include dirdeps.mk et al from Juniper Networks, 1674 for meta mode - requires filemon(9). 1675 * sys.mk, subdir.mk: Add hooks for meta mode. 1676 we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk 1677 to make turning it on/off simple. 1678 16792010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 1680 1681 * install-mk (MK_VERSION): bump version to 20100616 1682 * fix typo in sys.mk 1683 16842010-06-12 Simon J. Gerraty <sjg@bad.crufty.net> 1685 1686 * install-mk (MK_VERSION): bump version to 20100612 1687 * lib.mk: remove duplicate addition to SOBJS 1688 16892010-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1690 1691 * sys.mk: Add a means of selectively turning on debug flags. 1692 Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg" 1693 will act as if we did make -dv if .CURDIR ends in lib/sjg 1694 DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at 1695 the start of sys.mk rather than the end. 1696 This only makes sense for leaf dirs, so we check that 1697 .MAKE.LEVEL > 0 1698 16992010-06-09 Simon J. Gerraty <sjg@bad.crufty.net> 1700 1701 * install-mk (MK_VERSION): bump version to 20100608 1702 * sys.mk: include sys.env.mk later so it can use M_ListToSkip et al. 1703 * examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606 1704 also make it easier for folk to tweak 1705 17062010-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1707 1708 * install-mk (MK_VERSION): bump version to 20100606 1709 do not install examples/* 1710 * FILES: add examples/sys.clean-env.mk 1711 * examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR 1712 this requires bmake-20100606 or later to work. 1713 17142010-05-13 Simon J. Gerraty <sjg@bad.crufty.net> 1715 1716 * sys.mk (M_tA): better simulate the result of :tA if not available. 1717 17182010-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1719 1720 * sys.mk: canonicalize MAKE_VERSION 1721 old versions reported bmake-<src-date> build-<build-date> 1722 whereas we only care about <src-date> 1723 17242010-04-25 Simon J. Gerraty <sjg@bad.crufty.net> 1725 1726 * install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored 1727 * lib.mk: we only build the shared lib if SHLIB_FULLVERSION 1728 is !empty 1729 17302010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 1731 1732 * dpadd.mk: use LDADD_* if defined. 1733 17342010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 1735 1736 * install-mk (MK_VERSION): bump version to 20100420 1737 * sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy 1738 * autoconf.mk allow AUTO_AUTOCONF 1739 17402010-04-19 Simon J. Gerraty <sjg@bad.crufty.net> 1741 1742 * obj.mk: add objwarn to keep freebsd makefiles happy 1743 * auto.obj.mk: ensure Mkdirs is available. 1744 * FILES: add auto.dep.mk - a simpler version of autodep.mk 1745 * dep.mk: auto.dep.mk does not do 'make depend' so ignore it if 1746 asked to do that. 1747 fix/simplify the tests for when to run mkdep. 1748 * auto.dep.mk: add some explanation of how/what we do. 1749 * autodep.mk: skip the .OPTIONAL frobbing of .depend 1750 bmake's FROM_DEPEND flag makes it redundant. 1751 17522010-04-13 Simon J. Gerraty <sjg@bad.crufty.net> 1753 1754 * install-mk (MK_VERSION): bump version to 20100404 1755 * subdir.mk: protect from multiple inclusion using _SUBDIRUSE. 1756 * obj.mk: protect from multiple inclusion even as bsd.obj.mk 1757 Also create a target _SUBDIRUSE so that we can be used without 1758 subdir.mk 1759 17602010-04-12 Simon J. Gerraty <sjg@bad.crufty.net> 1761 1762 * dep.mk: use <> when .including so can override. 1763 17642010-01-11 Simon J. Gerraty <sjg@bad.crufty.net> 1765 1766 * lib.mk (SHLIB_LINKS): ensure a string comparison. 1767 17682010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 1769 1770 * install-mk (MK_VERSION): bump version to 20100102 1771 * own.mk: ensure PRINTOBJDIR works 1772 * autoconf.mk: pass on CONFIGURE_ARGS 1773 * init.mk: handle COPTS.${.IMPSRC:T} etc. 1774 * lib.mk: allow sys.mk to control SHLIB_FULLVERSION 1775 fix handling of symlinks for darwin 1776 * libnames.mk: add DSHLIBEXT for libs which only exist as shared. 1777 * man.mk: suppress chown when not root. 1778 * rst2htm.mk: allow srcs from multiple locations. 1779 * sys.mk: M_whence, stop after 1st line of output. 1780 * sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT 1781 * sys/SunOS.mk: we need to export PATH 1782 17832009-12-23 Simon J. Gerraty <sjg@void.crufty.net> 1784 1785 * install-mk (MK_VERSION): bump version 1786 include rst2htm.mk 1787 17882009-12-17 Simon J. Gerraty <sjg@void.crufty.net> 1789 1790 * sys.mk,libnames.mk add .-include <local.*> 1791 this allows local customization without the need to edit the 1792 distributed files. 1793 17942009-12-14 Simon J. Gerraty <sjg@void.crufty.net> 1795 1796 * dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up 1797 older versions already installed. 1798 17992009-12-13 Simon J. Gerraty <sjg@void.crufty.net> 1800 1801 * stage.mk (.stage-install): generalize lib.mk's .libinstall 1802 * rules.mk rules for generic Makefile. 1803 * inc.mk install for includes. 1804 18052009-12-11 Simon J. Gerraty <sjg@void.crufty.net> 1806 1807 * sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check 1808 this, so provide it if using native make. 1809 18102009-12-10 Simon J. Gerraty <sjg@void.crufty.net> 1811 1812 * FILES: move all the platform *.sys.mk files to sys/*.mk 1813 * Rename Generic.sys.mk to sys.mk - we always want it. 1814 18152009-11-17 Simon J. Gerraty <sjg@void.crufty.net> 1816 1817 * install-mk (MK_VERSION): bump version 1818 * host-target.mk: only export the expensive stuff 1819 * Generic.sys.mk (sys_mk): for SunOS we need to look for 1820 ${HOST_OS}.${HOST_OSMAJOR} too! 1821 18222009-11-07 Simon J. Gerraty <sjg@void.crufty.net> 1823 1824 * install-mk (MK_VERSION): bump version 1825 * lib.mk: if sys.mk doesn't give us an lorder, don't use it. 1826 based on patch from Greg Olszewski. 1827 * Generic.sys.mk: if we have nothing to work with 1828 set LORDER etc only if we can find it. 1829 18302009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 1831 1832 * install-mk (MK_VERSION): bump version 1833 * man.mk: cleanman: remove CLEANMAN if defined. 1834 18352009-09-04 Simon J. Gerraty <sjg@void.crufty.net> 1836 1837 * SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk 1838 18392009-07-17 Simon J. Gerraty <sjg@void.crufty.net> 1840 1841 * install-mk (MK_VERSION): bump version 1842 include auto.obj.mk 1843 1844 18452009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 1846 1847 * prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail. 1848 18492008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 1850 1851 * install-mk (MK_VERSION): bump version 1852 man.mk: ensure we generate *.cat1 etc in . 1853 18542008-07-16 Simon J. Gerraty <sjg@void.crufty.net> 1855 1856 * install-mk (MK_VERSION): bump version 1857 add prlist.mk 1858 18592007-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1860 1861 * Generic.sys.mk: Allow os specific sys.mk to be in a 1862 subdir of ${.PARSEDIR} 1863 18642007-11-22 Simon J. Gerraty <sjg@void.crufty.net> 1865 1866 * install-mk (MK_VERSION): bump version 1867 * general cleanup 1868 * dpadd.mk introduce DPMAGIC_LIBS_* 1869 18702007-04-30 Simon J. Gerraty <sjg@void.crufty.net> 1871 1872 * install-mk (MK_VERSION): bump version 1873 1874 * libs.mk, progs.mk, autodep.mk: allow for per lib/prog 1875 depend files and ensure clean is called for each lib/prog. 1876 18772007-03-27 Simon J. Gerraty <sjg@void.crufty.net> 1878 1879 * autodep.mk (.depend): delete lines that do not start with 1880 space and do not contain ':' 1881 18822007-02-16 Simon J. Gerraty <sjg@void.crufty.net> 1883 1884 * autodep.mk (.depend): gcc may wrap lines if pathnames are long 1885 so make sure the transform for .OPTIONAL copes. 1886 18872007-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1888 1889 * install-mk (MK_VERSION): bump version 1890 1891 * own.mk: make sure RM and LN are defined. 1892 1893 * obj.mk: fix a typo, and objlink target. 1894 18952006-12-30 Simon J. Gerraty <sjg@void.crufty.net> 1896 1897 * install-mk (MK_VERSION): bump version 1898 * added libs.mk - analogous to progs.mk 1899 make both of them always inlcude {lib,prog}.mk 1900 19012006-12-28 Simon J. Gerraty <sjg@void.crufty.net> 1902 1903 * progs.mk: add a means of building multiple apps in one dir. 1904 19052006-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1906 1907 * install-mk (MK_VERSION): bump version to 20061126 1908 1909 * warnings.mk: detect invalid WARNINGS_SET 1910 1911 * warnings.mk: use ${.TARGET:T:R}.o when looking for target 1912 specific warnings. 1913 1914 * For .cc sources, turn off warnings that g++ vomits on. 1915 19162006-11-08 Simon J. Gerraty <sjg@void.crufty.net> 1917 1918 * own.mk: if __initialized__ target doesn't exist and we are 1919 FreeBSD we got here directly from sys.mk 1920 19212006-11-06 Simon J. Gerraty <sjg@void.crufty.net> 1922 1923 * install-mk (MK_VERSION): bump version to 20061106 1924 add scripts.mk 1925 19262006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 1927 1928 * install-mk (MK_VERSION): bump version to 20060318 1929 1930 * autodep.mk: avoid := when modifying OBJS into __dependsrcs 1931 19322006-03-02 Simon J. Gerraty <sjg@void.crufty.net> 1933 1934 * install-mk (MK_VERSION): bump version to 20060302 1935 * autodep.mk: use -MF et al to help gcc+ccache DTRT. 1936 19372006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 1938 1939 * install-mk (MK_VERSION): bump version to 20060301 1940 * autodep.mk (.depend): 1941 if MAKE_VERSION is newer than 20050530 we can make .END depend on 1942 .depend and make .depend depend on __depsrcs that exist. 1943 * dpadd.mk: add SRC_PATHADD 1944 19452005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1946 1947 * install-mk (MK_VERSION): bump version to 20051104 1948 * prog.mk: remove all the LIBC?= junk, use 1949 .-include libnames.mk instead (none by default). 1950 also if USE_DPADD_MK is set, include that. 1951 19522005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1953 1954 * install-mk (MK_VERSION): bump version to 20051001 1955 Add UnixWare.sys.mk from Klaus Heinz. 1956 19572005-04-05 Simon J. Gerraty <sjg@void.crufty.net> 1958 1959 * install-mk: always install *.sys.mk and if need be symlink one 1960 to sys.mk 1961 19622005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 1963 1964 * subdir.mk, own.mk: use .MAKE rather than MAKE 1965 19662004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1967 1968 * own.mk: don't use NetBSD's _SRC_TOP_ it can 1969 cause confusion. Also don't take just 'mk' as a 1970 srctop indicator. 1971 19722004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 1973 1974 * warnings.mk: overhauled, now very powerful. 1975 19762004-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1977 1978 * Generic.sys.mk: need to use ${.PARSEDIR} with exists(). 1979 19802004-02-01 Simon J. Gerraty <sjg@void.crufty.net> 1981 1982 * install-mk (MK_VERSION): bump version to 20040201 1983 * extract HOST_TARGET stuff to host-target.mk so own.mk and 1984 Generic.sys.mk can share. 1985 * fix typo in autodep.mk _SUBDIRUSE not _SUBDIR. 1986 19872003-09-30 Simon J. Gerraty <sjg@void.crufty.net> 1988 1989 * install-mk (MK_VERSION): 20030930 1990 * rename generic.sys.mk to Generic.sys.mk 1991 so that it does not get installed (unless being used as sys.mk) 1992 * set OS and ROOT_GROUP for those that we know the value. 1993 for others (eg. Generic.sys.mk) wrap the != in an .ifndef so 1994 we don't do it again for each sub-make. 1995 19962003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 1997 1998 * install-mk (MK_VERSION): 20030928 1999 Add some extra *.sys.mk from bootstrap-pkgsrc 2000 some of these likely still need work. 2001 Make everything default to root:wheel ownership, 2002 sys.mk can set ROOT_GROUP accordingly. 2003 20042003-08-07 Simon J. Gerraty <sjg@void.crufty.net> 2005 2006 * install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR 2007 not the portable ones. 2008 20092003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 2010 2011 * install-mk: add ability to use cp -f when updating 2012 destination .mk files. Also now possible to play games with 2013 FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk 2014 into dest - not recommended unless you seriously want to. 2015 20162003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 2017 2018 * own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc 2019 for semi-compatability with NetBSD. 2020 20212003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 2022 2023 * install-mk: add a version indicator 2024 20252003-07-22 Simon J. Gerraty <sjg@void.crufty.net> 2026 2027 * prog.mk: don't try and use ${LIBCRT0} if its /dev/null 2028 2029 * install-mk: Allow FORCE_SYS_MK to come from env 2030 2031 2032 2033