12022-02-06 Simon J Gerraty <sjg@beast.crufty.net> 2 3 * install-mk (MK_VERSION): 20220206 4 5 * cc-wrap.mk: docuement how CCACHE etc might be set for 6 maximum flexibility 7 82022-02-05 Simon J Gerraty <sjg@beast.crufty.net> 9 10 * sys.vars.mk: use JOT_CMD (jot or seq) if available for M_JOT 11 122022-02-04 Simon J Gerraty <sjg@beast.crufty.net> 13 14 * install-mk (MK_VERSION): 20220204 15 16 * host-target.mk: use .MAKE.OS if available 17 182022-02-02 Simon J Gerraty <sjg@beast.crufty.net> 19 20 * install-mk (MK_VERSION): 20220202 21 22 * cc-wrap.mk: allow other entries in CC_WRAP_FILTER 23 We add our filter on extensions last, so prior filters 24 can apply to the whole value of .IMPSRC 25 262022-02-01 Simon J Gerraty <sjg@beast.crufty.net> 27 28 * cc-wrap.mk: take advantage of target local variables to 29 wrap compilers like CC CXX with wrappers like ccache distcc etc 30 312022-01-28 Simon J Gerraty <sjg@beast.crufty.net> 32 33 * meta2deps: we do not expect any trace data for setid apps 34 352022-01-26 Simon J Gerraty <sjg@beast.crufty.net> 36 37 * dirdeps.mk: ensure TARGET_SPEC and TARGET_SPEC_VARS are passed 38 to sub-make using DIRDEPS_CACHE 39 402022-01-07 Simon J Gerraty <sjg@beast.crufty.net> 41 42 * dirdeps.mk: use _cache_script to minimize the number of shells 43 forked when generating dirdeps.cache 44 452022-01-02 Simon J Gerraty <sjg@beast.crufty.net> 46 47 * install-mk (MK_VERSION): 20220101 48 49 * dirdeps.mk: initialize DEP_* and _debug_reldir earlier. 50 If initial DIRDEPS are from command line, create the target 51 _dirdeps_cmdline as an indication. 52 532022-01-01 Simon J Gerraty <sjg@beast.crufty.net> 54 55 * init.mk (_SKIP_BUILD): when doing DIRDEPS_BUILD 56 at top-level only some targets are allowed at level 0, 57 for leaf makefiles only the default (all) target is restricted 58 592021-12-28 Simon J Gerraty <sjg@beast.crufty.net> 60 61 * install-mk (MK_VERSION): 20211228 62 63 * meta2deps.py: filemon on Linux is not as reliable as we might 64 like, we do not want to update DIRDEPS if filemon output is 65 incomplete. Track pids that we 'E'xec and make sure we see an 66 e'X'it for each one. Throw an error if we are missing any 'X' 67 records. 68 692021-12-12 Simon J Gerraty <sjg@beast.crufty.net> 70 71 * sys.mk: simplify; include meta.sys.mk if MK_META_MODE is yes. 72 73 * meta.sys.mk: do not check for /dev/filemon if .MAKE.PATH_FILEMON 74 is something else. 75 76 * meta.autodep.mk: we can now reference ${.SUFFIXES} 77 78 * meta2deps.py: derive a list of dirdep extensions from 79 TARGET_SPEC to trim from dirdeps. 80 81 * dirdeps.mk: flip the computation of qualified vs unqualified 82 dirdeps - it is much simpler to check for unqualified first. 83 842021-12-11 Simon J Gerraty <sjg@beast.crufty.net> 85 86 * install-mk (MK_VERSION): 20211212 87 88 * auto.dep.mk: rearrange so that the trivial implementation 89 for recent bmake is more obvious. 90 912021-12-07 Simon J Gerraty <sjg@beast.crufty.net> 92 93 * install-mk (MK_VERSION): 20211207 94 95 * Ensure guard targets are .NOTMAIN 96 97 * meta.sys.mk: check for nofilemon support when we skip level 0 98 99 * auto.dep.mk: make this usable in meta mode 100 for platforms that cannot use meta.autodep.mk 101 102 * meta2deps.py: avoid confusion if MACHINE and another 103 TARGET_SPEC_VAR have same value. 104 1052021-11-27 Simon J Gerraty <sjg@beast.crufty.net> 106 107 * dirdeps.mk: when building dirdeps.cache, minimize the amount of 108 data put into env, by stripping ${SRCTOP}/ from each entry. 109 A long sandbox name can double the amount of memory consumed and 110 in extreme cases cause failure. 111 While we are at it, strip ${SRCTOP}/ from a lot of the debug output. 112 1132021-11-11 Simon J Gerraty <sjg@beast.crufty.net> 114 115 * install-mk (MK_VERSION): 20211111 116 117 * meta.stage.mk (LN_CP_SCRIPT): if staging to NFS cp -p can fail 118 so fallback to cp if necessary. 119 1202021-10-30 Simon J Gerraty <sjg@beast.crufty.net> 121 122 * man.mk (CMT2DOC): use cmt2doc.py rather than the 30 year 123 old cmt2doc.pl 124 1252021-10-24 Simon J Gerraty <sjg@beast.crufty.net> 126 127 * meta.stage.mk: stage_as_and_symlink use ${STAGE_LINK_AS_$f:U$f} 128 as the symlink (rare) 129 1302021-10-16 Simon J Gerraty <sjg@beast.crufty.net> 131 132 * autoconf.mk: if AUTOCONF_GENERATED_MAKEFILE is set and has not 133 been read, throw an error after running configure telling user to 134 restart. 135 1362021-10-13 Simon J Gerraty <sjg@beast.crufty.net> 137 138 * install-mk (MK_VERSION): 20211011 139 140 * Add support for SCO_SV 141 1422021-10-01 Simon J Gerraty <sjg@beast.crufty.net> 143 144 * install-mk (MK_VERSION): 20211001 145 146 * man.mk: use MAN_SUFFIXES and CMT2DOC_SUFFIXES for more 147 flexibility 148 1492021-09-13 Simon J Gerraty <sjg@beast.crufty.net> 150 151 * options.mk (describe-options): print options and their values 152 and optional description 153 1542021-09-11 Simon J Gerraty <sjg@beast.crufty.net> 155 156 * install-mk (MK_VERSION): 20210911 157 158 * options.mk (show-options): print options and their values 159 1602021-09-08 Simon J Gerraty <sjg@beast.crufty.net> 161 162 * install-mk (MK_VERSION): 20210909 163 164 * lib.mk: apply patch from <daniel@octaforge.org> 165 to fix shared libs on Linux 166 1672021-08-08 Simon J Gerraty <sjg@beast.crufty.net> 168 169 * install-mk (MK_VERSION): 20210808 170 171 * options.mk: issue warning for WITH_*=no 172 1732021-06-16 Simon J Gerraty <sjg@beast.crufty.net> 174 175 * install-mk (MK_VERSION): 20210616 176 177 * dirdeps.mk: when using .MAKE.DEPENDFILE_PREFERENCE to find 178 depend files to read, anchor MACHINE at , or end of string 179 to avoid prefix match. 180 1812021-05-04 Simon J Gerraty <sjg@beast.crufty.net> 182 183 * install-mk (MK_VERSION): 20210504 184 185 * dirdeps.mk: re-implement ALL_MACHINES support to better 186 cater for local complexities, when ONLY_TARGET_SPEC_LIST 187 is not set. local.dirdeps.mk can set 188 DIRDEPS_ALL_MACHINES_FILTER and/or 189 DIRDEPS_ALL_MACHINES_FILTER_XTRAS to filter the results we get 190 from listing all existing Makefile.depend.* 191 1922021-04-20 Simon J Gerraty <sjg@beast.crufty.net> 193 194 * install-mk (MK_VERSION): 20210420 195 196 * dirdeps.mk: revert previous - not always safe. 197 1982021-03-20 Simon J Gerraty <sjg@beast.crufty.net> 199 200 * install-mk (MK_VERSION): 20210321 201 202 * dirdeps.mk: when generating dirdeps.cache 203 we only need to hook the initial DIRDEPS to the 204 dirdeps target. That and any _build_xtra_dirs (like tests which 205 should not be hooked directly to the dependency graph - to avoid 206 cycles) 207 2082021-01-30 Simon J Gerraty <sjg@beast.crufty.net> 209 210 * install-mk (MK_VERSION): 20210130 211 212 * dirdeps.mk: expr 2 - 1 - 1 exits with a bad status 213 we need to guard against this in DIRDEP_LOADAVG_REPORT. 214 215 * dirdeps.mk: restore respect for TARGET_MACHINE 216 2172021-01-06 Simon J Gerraty <sjg@beast.crufty.net> 218 219 * install-mk (MK_VERSION): 20210101 220 221 * dirdeps.mk: first time we are read, just use TARGET_SPEC for 222 _DEP_TARGET_SPEC 223 2242020-12-22 Simon J Gerraty <sjg@beast.crufty.net> 225 226 * sys.mk (MAKE_SHELL): use ${.SHELL:Ush} 227 and use := when setting SHELL 228 2292020-12-21 Simon J Gerraty <sjg@beast.crufty.net> 230 231 * install-mk (MK_VERSION): 20201221 232 233 * dirdeps-options.mk: latest bmake allows only one arg to .undef 234 2352020-12-11 Simon J Gerraty <sjg@beast.crufty.net> 236 237 * dirdeps-targets.mk: allow for "." in DIRDEPS_TARGETS_DIRS 238 so that any directory can be treated as a target. 239 2402020-11-26 Simon J Gerraty <sjg@beast.crufty.net> 241 242 * install-mk (MK_VERSION): 20201126 243 244 * own.mk: use .MAKE.{UID,GID} if available. 245 246 * init.mk: suppress _SKIP_BUILD warning if doing -V 247 2482020-11-20 Simon J Gerraty <sjg@beast.crufty.net> 249 250 * install-mk (MK_VERSION): 20201120 251 252 * init.mk: rename LEVEL0_TARGETS to DIRDEPS_BUILD_LEVEL0_TARGETS 253 254 * dirdeps-targets.mk: fix typo in comment 255 2562020-11-06 Simon J Gerraty <sjg@beast.crufty.net> 257 258 * install-mk (MK_VERSION): 20201106 259 260 * meta.autodep.mk: use OBJ_EXTENSIONS rather than hardcode sed 261 args to tweak extensions for local deps. 262 2632020-11-01 Simon J Gerraty <sjg@beast.crufty.net> 264 265 * install-mk (MK_VERSION): 20201101 266 267 * dirdeps.mk: most leaf makefiles are not suitable for building 268 dirdeps.cache so if RELDIR is not "." use dirdeps.mk 269 2702020-10-28 Simon J Gerraty <sjg@beast.crufty.net> 271 272 * install-mk (MK_VERSION): 20201028 273 274 * dirdeps.mk: if we don't have :range use equivalent of M_RANGE 275 when building dirdeps.cache for leaf directory use -f dirdeps.mk 276 277 * sys.vars.mk: add M_JOT and M_RANGE 278 2792020-10-01 Simon J Gerraty <sjg@beast.crufty.net> 280 281 * install-mk (MK_VERSION): 20201001 282 283 * meta2deps.{py,sh}: throw an error if we don't see filemon version 284 2852020-09-09 Simon J Gerraty <sjg@beast.crufty.net> 286 287 * install-mk (MK_VERSION): 20200909 288 289 * dirdeps-cache-update.mk: use cache_update_dirdep as guard target 290 2912020-08-26 Simon J Gerraty <sjg@beast.crufty.net> 292 293 * dirdeps.mk: ensure we cannot confuse a static cache for dynamic 294 (even more rare that use of static cache is playing clever tricks 295 with it) 296 2972020-08-16 Simon J Gerraty <sjg@beast.crufty.net> 298 299 * dirdeps-cache-update.mk: allow 300 MK_STATIC_DIRDEPS_CACHE_UPDATE_IMMEDIATE to control when we 301 actually update STATIC_DIRDEPS_CACHE. 302 303 * stage-install.sh: create dest directory if needed 304 before running install(1) 305 3062020-08-10 Simon J Gerraty <sjg@beast.crufty.net> 307 308 * dirdeps-targets.mk: include Makefile.dirdeps.options 309 310 * dirdeps.mk: use _TARGETS if defined for DIRDEPS_CACHE 311 3122020-08-09 Simon J Gerraty <sjg@beast.crufty.net> 313 314 * dirdeps.mk: default BUILD_DIRDEPS_MAKEFILE to empty 315 316 * dirdeps-cache-update.mk: building parallel cache update 317 under the context of dirdeps-cached would be ideal, but 318 is problematic, so it runs as a sibling. 319 Use cache-built target to ensure we wait for it to complete if 320 necessary. 321 3222020-08-06 Simon J Gerraty <sjg@beast.crufty.net> 323 324 * install-mk (MK_VERSION): 20200806 325 326 * dirdeps-options: allow TARGET_SPEC to affect option values. 327 Use DIRDEPS_OPTIONS_QUALIFIER_LIST before using bare MK_* 328 329 * dirdeps-targets.mk: check for MK_STATIC_DIRDEPS_CACHE defined 330 before looking for STATIC_DIRDEPS_CACHE 331 3322020-08-05 Simon J Gerraty <sjg@beast.crufty.net> 333 334 * host-target.mk: Darwin use MACHINE for HOST_ARCH too 335 336 * dirdeps-options.mk: improve debug output 337 3382020-07-22 Simon J Gerraty <sjg@beast.crufty.net> 339 340 * dirdeps.mk: set and export DYNAMIC_DIRDEPS_CACHE 341 for use by dirdeps-cache-update.mk 342 343 * dirdeps-targets.mk: set and export STATIC_DIRDEPS_CACHE 344 for use by dirdeps-cache-update.mk even if we don't use it. 345 346 * dirdeps-cache-update.mk: we only need worry about the background 347 update case, with the above, the update from DIRDEPS_CACHE is 348 simple. 349 350 * meta2deps.py: R 1234 . is not interesting 351 3522020-07-20 Simon J Gerraty <sjg@beast.crufty.net> 353 354 * sys.mk: default MK_STATIC_DIRDEPS_CACHE from MK_DIRDEPS_CACHE 355 356 * dirdeps-options.mk: do not :tu DIRDEPS_OPTIONS 357 allows use of lower case for pseudo options. 358 359 * dirdeps-cache-update.mk: magic to deal with STATIC_DIRDEPS_CACHE 360 3612020-07-18 Simon J Gerraty <sjg@beast.crufty.net> 362 363 * dirdeps-targets.mk: Look for Makefile.dirdeps.cache 364 which allows us to have a static cache for expensive targets. 365 Use -DWITHOUT_STATIC_DIRDEPS_CACHE -DWITH_DIRDEPS_CACHE 366 to regenerate the dirdeps.cache it is a copy of. 367 3682020-07-17 Simon J Gerraty <sjg@beast.crufty.net> 369 370 * Get rid of BUILD_AT_LEVEL0, MK_DIRDEPS_BUILD makes more sense. 371 3722020-07-16 Simon J Gerraty <sjg@beast.crufty.net> 373 374 * dirdeps.mk (DIRDEP_LOADAVG_REPORT): make it easy to record 375 load averages at intervals during build. 376 3772020-07-15 Simon J Gerraty <sjg@beast.crufty.net> 378 379 * install-mk (MK_VERSION): 20200715 380 381 * dirdeps.mk: tweak Checking line to make matching Finished 382 lines for post-build analysis easier. 383 384 * meta.autodep.mk: use !defined(WITHOUT_META_STATS) 385 386 * progs.mk: avoid prog.mk outputting multiple Finished lines 387 3882020-07-11 Simon J Gerraty <sjg@beast.crufty.net> 389 390 * dirdeps.mk: further optimize dirdeps.cache 391 generate a DIRDEPS.${.TARGET} list for other purposes 392 and improve the layout. 393 3942020-07-10 Simon J Gerraty <sjg@beast.crufty.net> 395 396 * dirdeps.mk: optimize content of dirdeps.cache 397 3982020-06-28 Simon J Gerraty <sjg@beast.crufty.net> 399 400 * sys/*.mk: make it easier for local*sys.mk to customize by 401 using ?= 402 4032020-06-22 Simon J Gerraty <sjg@beast.crufty.net> 404 405 * gendirdeps.mk (LOCAL_DEPENDS_GUARD): if we don't build at level 0 406 it is much safer to guard local depends with a simple check for 407 .MAKE.LEVEL > 0 408 4092020-06-10 Simon J Gerraty <sjg@beast.crufty.net> 410 411 * install-mk (MK_VERSION): 20200610 412 413 * mkopt.sh: this needs posix shell so #!/bin/sh should be ok 414 4152020-06-06 Simon J Gerraty <sjg@beast.crufty.net> 416 417 * install-mk (MK_VERSION): 20200606 418 419 * dirdeps-targets.mk: allow for filtering of .TARGETS 420 421 * meta2deps.py: fix bug in processing 'L'ink and 'M'ove 422 entries - and we don't care about 'W'rite entries. 423 Also ignore absolute paths that do not exist. 424 4252020-05-25 Simon J Gerraty <sjg@beast.crufty.net> 426 427 * install-mk (MK_VERSION): 20200525 428 429 * init.mk: expand and simplify handling of qualified vars 430 like CPPFLAGS.${.TARGET:T} 431 4322020-05-15 Simon J Gerraty <sjg@beast.crufty.net> 433 434 * install-mk (MK_VERSION): 20200515 435 436 * dirdeps.mk: set _debug_* earlier and allow passing -d* 437 flags to submake when building DIRDEPS_CACHE 438 4392020-05-09 Simon J Gerraty <sjg@beast.crufty.net> 440 441 * whats.mk: more easily extensible 442 4432020-05-02 Simon J Gerraty <sjg@beast.crufty.net> 444 445 * whats.mk: greatly simplify by adding what.c to SRCS 446 4472020-05-01 Simon J Gerraty <sjg@beast.crufty.net> 448 449 * whats.mk: for libs take care how we add to *OBJS 450 451 * lib.mk: : works better with whats.mk 452 4532020-04-25 Simon J Gerraty <sjg@beast.crufty.net> 454 455 * install-mk (MK_VERSION): 20200420 456 457 * meta.stage.mk: it is not a STAGE_CONFLICT if some-target.dirdep 458 contains the same ${RELDIR} and a prefix match for our ${TARGET_SPEC} 459 4602020-04-16 Simon J Gerraty <sjg@beast.crufty.net> 461 462 * install-mk (MK_VERSION): 20200416 463 464 * sys/*.mk: set MAKE_SHELL rather than SHELL so as not to 465 interfere with user env. 466 467 * sys.mk: default MAKE_SHELL to sh and SHELL to MAKE_SHELL 468 469 * autodep.mk: use MAKE_SHELL. 470 4712019-11-21 Simon J Gerraty <sjg@beast.crufty.net> 472 473 * gendirdeps.mk: clear .SUFFIXES to avoid a lot of 474 wasted effort, and unexport _meta_files when no longer needed as 475 it consumes space we need for command line. 476 4772019-11-11 Simon J Gerraty <sjg@beast.crufty.net> 478 479 * dirdeps.mk _DIRDEP_USE: use DIRDEP_DIR and add 480 DIRDEP_USE_PRELUDE at start - facilitates job distribution 481 4822019-10-04 Simon J Gerraty <sjg@beast.crufty.net> 483 484 * dirdeps-targets.mk: Use TARGET_SPEC_LAST_LIST 485 defaults to ${${TARGET_SPEC_VARS:[-1]}_LIST} to match valid 486 TARGET_SPEC qualified depend files. 487 4882019-10-02 Simon J Gerraty <sjg@beast.crufty.net> 489 490 * dirdeps-targets.mk: encapsulate logic for finding top-level 491 targets to set initial DIRDEPS for DIRDEPS_BUILD 492 4932019-09-27 Simon J Gerraty <sjg@beast.crufty.net> 494 495 * install-mk (MK_VERSION): 20190911 496 497 * compiler.mk: set COMPILER_TYPE 498 4992019-07-17 Simon J Gerraty <sjg@beast.crufty.net> 500 501 * install-mk (MK_VERSION): 20190704 502 503 * sys/Darwin.mk: support for Objective-C and clang 504 5052019-05-30 Simon J Gerraty <sjg@beast.crufty.net> 506 507 * dirdeps.mk: avoid insanely long command line when generating cache 508 5092019-05-23 Simon J Gerraty <sjg@beast.crufty.net> 510 511 * install-mk (MK_VERSION): 20190505 512 513 * whats.mk: handle corner case SHLIB defined but not LIB 514 5152018-09-19 Simon J Gerraty <sjg@beast.crufty.net> 516 517 * install-mk (MK_VERSION): 20180919 518 519 * dirdeps-options.mk: .undef cannot handle var that expands to 520 more than one var. 521 5222018-07-08 Simon J Gerraty <sjg@beast.crufty.net> 523 524 * meta.stage.mk: allow wildcards in STAGE_FILES.* etc. 525 5262018-06-01 Simon J Gerraty <sjg@beast.crufty.net> 527 528 * meta.autodep.mk: export META_FILES to avoid command line limit 529 * gendirdeps.mk: if we have lots of .meta files put them in 530 an @list 531 5322018-05-28 Simon J Gerraty <sjg@beast.crufty.net> 533 534 * dirdeps-options.mk: use local.dirdeps-options.mk 535 not local.dirdeps-option.mk 536 5372018-04-20 Simon J Gerraty <sjg@beast.crufty.net> 538 539 * install-mk (MK_VERSION): 20180420 540 * dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0 541 ie. we are building something. 542 5432018-04-14 Simon J Gerraty <sjg@beast.crufty.net> 544 545 * FILES: add dirdeps-options.mk to deal with optional DIRDEPS. 546 5472018-04-05 Simon J Gerraty <sjg@beast.crufty.net> 548 549 * install-mk (MK_VERSION): 20180405 550 551 * ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER 552 if needed. 553 5542018-01-18 Simon J Gerraty <sjg@beast.crufty.net> 555 556 * install-mk (MK_VERSION): 20180118 557 558 * ldorder.mk: let make compute correct link order 559 5602017-12-12 Simon J Gerraty <sjg@beast.crufty.net> 561 562 * install-mk (MK_VERSION): 20171212 563 564 * gendirdeps.mk: guard against bogus entries in GENDIRDEPS_FILTER 565 5662017-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 567 568 * install-mk (MK_VERSION): 20171111 569 570 * lib.mk: ensure META_NOECHO is set 571 5722017-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 573 574 * Allow for host32 on rare occasions. 575 5762017-10-18 Simon J. Gerraty <sjg@bad.crufty.net> 577 578 * install-mk (MK_VERSION): 20171018 579 580 * whats.mk: include what_thing in what_uuid to avoid problem 581 when building multiple apps in the same directory. 582 5832017-08-12 Simon J. Gerraty <sjg@bad.crufty.net> 584 585 * install-mk (MK_VERSION): 20170812 586 587 * autoconf.mk: Use CONFIGURE_DEPS so Makefile can 588 add dependencies for config.recheck and config.gen 589 5902017-06-30 Simon J. Gerraty <sjg@bad.crufty.net> 591 592 * install-mk (MK_VERSION): 20170630 593 594 * meta.stage.mk: avoid triggering stage_* targets with nothing to do. 595 5962017-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 597 598 * meta2deps.py: take special care of '..' 599 6002017-05-15 Simon J. Gerraty <sjg@bad.crufty.net> 601 602 * install-mk (MK_VERSION): 20170515 603 604 * dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is 605 useful/necessary for a Makefile.depend file to export some knobs. 606 This is complicated when we are doing DIRDEPS_CACHE, so we will 607 handle export of any variables listed in DEP_EXPORT_VARS. 608 6092017-05-08 Simon J. Gerraty <sjg@bad.crufty.net> 610 611 * install-mk (MK_VERSION): 20170505 612 613 * meta2deps.py: fix botched indenation. 614 6152017-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 616 617 * sys/*.mk: Remove setting of MAKE it is unnecessary and 618 in many cases wrong (basname rather than full path) 619 620 * scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk 621 622 * init.mk: define realbuild to simplify logic in {lib,prog}.mk etc 623 6242017-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 625 626 * install-mk (MK_VERSION): 20170501 627 628 * doc.mk: fix typo in DOC_INSTALL_OWN 629 630 * inc.mk: handle INCGROUPS similar to freebsd 631 632 * files.mk: add something for files too 633 634 * add staging logic to lib.mk prog.mk etc. 635 6362017-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 637 638 * install-mk (MK_VERSION): 20170424 639 640 * dirdeps.mk: set NO_DIRDEPS when bootstrapping. 641 also target of bootstrap-this when sed is needed should be ${_want:T} 642 6432017-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 644 645 * install-mk (MK_VERSION): 20170418 646 647 * auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a 648 prefix match for .CURDIR - in which case .CURDIR *is* __objdir. 649 6502017-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 651 652 * install-mk (MK_VERSION): 20170401 653 654 * meta2deps.py: add is_src so we can check if obj dependency 655 is also a src dependency. 656 6572017-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 658 659 * install-mk (MK_VERSION): 20170326 660 661 * meta.stage.mk: do nothing if NO_STAGING is defined. 662 6632017-03-24 Simon J. Gerraty <sjg@bad.crufty.net> 664 665 * auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc. 666 6672017-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 668 669 * mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_* 670 6712017-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 672 673 * install-mk (MK_VERSION): 20170301 674 675 * dirdeps.mk (_build_all_dirs): update this outside test for empty 676 DIRDEPS. 677 678 * meta.stage.mk: allow multiple inclusion to the extent it makes 679 sense. 680 6812017-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 682 683 * prog.mk (install_links): depends on realinstall 684 6852017-02-12 Simon J. Gerraty <sjg@bad.crufty.net> 686 687 * install-mk (MK_VERSION): 20170212 688 689 * dpadd.mk: avoid applying :T:R twice to DPLIBS entries 690 6912017-01-30 Simon J. Gerraty <sjg@bad.crufty.net> 692 693 * install-mk (MK_VERSION): 20170130 694 695 * dirdeps.mk: use :range if we can. 696 697 * sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130 698 699 * meta2deps.py: clean paths without using realpath() where possible. 700 fix sort_unique. 701 7022016-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 703 704 * install-mk (MK_VERSION): 20161212 705 706 * meta2deps.py: set pid_cwd[pid] when we process 'C'hdir, 707 rather than when we detect pid change. 708 7092016-12-07 Simon J. Gerraty <sjg@bad.crufty.net> 710 711 * install-mk (MK_VERSION): 20161207 712 713 * meta.stage.mk: add stage_as_and_symlink for staging packages. 714 We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able 715 to use foo.tgz to reference the latest staged version - so we 716 make foo.tgz a symlink to it. 717 Using a target to do both operations ensures we stay in sync. 718 7192016-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 720 721 * install-mk (MK_VERSION): 20161126 722 723 * dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk 724 so it can add dependencies. 725 7262016-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 727 728 * dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE 729 do that they can influence the result correctly. 730 731 * dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC 732 733 * dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST 734 similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST 735 7362016-10-05 Simon J. Gerraty <sjg@bad.crufty.net> 737 738 * dirdeps.mk: remove dependence on jot (normal situations anyway). 739 Before we read another Makefile.depend* set DEP_* vars from 740 _DEP_TARGET_SPEC in case it uses any of them with := 741 When bootstrapping, trim any ,* from extention of chosen _src 742 Makefile.depend* to get the machine value we subst for. 743 7442016-09-30 Simon J. Gerraty <sjg@bad.crufty.net> 745 746 * dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to 747 DEP_SKIP_DIR and DEP_DIRDEPS_FILTER 748 749 * sys.mk: extract some bits to sys.{debug,vars}.mk 750 for easier re-use by others. 751 7522016-09-23 Simon Gerraty <sjg@sjg-mba13> 753 754 * lib.mk: Use ${PICO} for extension for PIC objects. 755 default to .pico (like NetBSD) safe on case insensitive filesystem. 756 7572016-08-19 Simon J. Gerraty <sjg@bad.crufty.net> 758 759 * meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default 760 7612016-08-15 Simon J. Gerraty <sjg@bad.crufty.net> 762 763 * install-mk (MK_VERSION): 20160815 764 765 * dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only 766 consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date. 767 7682016-08-13 Simon J. Gerraty <sjg@bad.crufty.net> 769 770 * meta.sys.mk (.MAKE.META.IGNORE_PATHS): 771 in meta mode we can ignore the mtime of makefiles 772 7732016-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 774 775 * install-mk (MK_VERSION): 20160802 776 777 * lib.mk (libinstall): depends on beforinstall 778 779 * prog.mk (proginstall): depends on beforinstall 780 patch from Lauri Tirkkonen 781 782 * dirdeps.mk (bootstrap): When bootstrapping; creat 783 .MAKE.DEPENDFILE_DEFAULT and allow additional filtering via 784 .MAKE.DEPENDFILE_BOOTSTRAP_SED 785 786 * dirdeps.mk: move some comments to where they make sense. 787 7882016-07-27 Simon J. Gerraty <sjg@bad.crufty.net> 789 790 * dirdeps.mk (DIRDEPS_CACHE): no dirname. 791 7922016-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 793 794 * install-mk (MK_VERSION): 20160602 795 * meta.autodep.mk: when passing META_FILES to gendirdeps.mk 796 do not apply :T to META_XTRAS 797 patch from Bryan Drewery at FreeBSD.org. 798 7992016-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 800 801 * install-mk (MK_VERSION): 20160530 802 * meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH 803 make it so. 804 8052016-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 806 807 * install-mk (MK_VERSION): 20160512 808 809 * dpadd.mk: always include local.dpadd.mk if it exists 810 remove some things that better belong in local.dpadd.mk 811 skip INCLUDES_* for staged libs unless SRC_* defined. 812 813 * own.mk: add INCLUDEDIR 814 8152016-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 816 817 * dirdeps.mk: when doing -f dirdeps.mk if target suppies no 818 TARGET_MACHINE - :E will be empty or match part of path, use 819 ${MACHINE} 820 8212016-04-07 Simon J. Gerraty <sjg@bad.crufty.net> 822 823 * meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to 824 NO_FILEMON_COOKIE 825 826 * dirdeps.mk: move the logic that allows for 827 make -f dirdeps.mk some/dir.${TARGET_SPEC} 828 inside the check for !target(_DIRDEP_USE) 829 8302016-04-04 Simon J. Gerraty <sjg@bad.crufty.net> 831 832 * Use <> when including local*.mk and others which may exist 833 elsewhere so that user can better control what they get. 834 835 * meta.autodep.mk (NO_FILEMON_COOKIE): 836 create a cookie if we ever build dir with nofilemon 837 so that UPDATE_DEPENDFILE will be forced to NO until cleaned. 838 8392016-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 840 841 * install-mk (MK_VERSION): 20160401 842 843 * meta2deps.py: fix old print statement when debugging. 844 845 * gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X 846 patch from Bryan Drewery 847 8482016-03-22 Simon J. Gerraty <sjg@bad.crufty.net> 849 850 * install-mk (MK_VERSION): 20160317 (St. Pats) 851 852 * warnings.mk: g++ does not like -Wimplicit 853 854 * sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the 855 pelthora of common suffixes for C++ 856 857 * lib.mk: use .So for shared objects 858 8592016-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 860 861 * install-mk (MK_VERSION): 20160315 862 863 * meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1) 864 normally only applies to scripts. 865 866 * dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as 867 well as outside it. 868 8692016-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 870 871 * install-mk (MK_VERSION): 20160310 872 873 * dirdeps.mk: use targets rather than a list to track DIRDEPS that 874 we have processed; the list gets very inefficient as number of 875 DIRDEPS gets large. 876 877 * sys.dependfile.mk: fix comment wrt MACHINE 878 879 * meta.autodep.mk: ignore staged DPADDs when bootstrapping. 880 patch from Bryan Drewery 881 8822016-03-02 Simon J. Gerraty <sjg@bad.crufty.net> 883 884 * meta2deps.sh: don't ignore subdirs. 885 patch from Bryan Drewery 886 8872016-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 888 889 * install-mk (MK_VERSION): 20160226 890 891 * gendirdeps.mk: mark _DEPENDFILE .NOMETA 892 8932016-02-20 Simon J. Gerraty <sjg@bad.crufty.net> 894 895 * dirdeps.mk: we shouldn't normally include .depend but if we do 896 use .dinclude if we can. 897 8982016-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 899 900 * install-mk (MK_VERSION): 20160218 901 * sys.clean-env.mk: with recent change to Var_Subst() 902 we cannot use the '$$' trick, but .export-literal does the job 903 we need. 904 * auto.dep.mk: make use .dinclude if we can. 905 906 9072016-02-05 Simon J. Gerraty <sjg@bad.crufty.net> 908 909 * dirdeps.mk: 910 Add _build_all_dirs such that local.dirdeps.mk can 911 add fully qualified dirs to it. 912 These will be built normally but the current 913 DEP_RELDIR will not depend on then (to avoid cycles). 914 This makes it easy to hook things like unit-tests into build. 915 916 9172016-01-21 Simon J. Gerraty <sjg@bad.crufty.net> 918 919 * dirdeps.mk: add bootstrap-empty 920 9212015-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 922 923 * install-mk (MK_VERSION): 20151212 924 * auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist. 925 only apply :tA to __objdir when comparing to .OBJDIR 926 9272015-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 928 929 * install-mk (MK_VERSION): 20151111 930 931 * meta.sys.mk: include sys.dependfile.mk 932 933 * sys.mk (OPTIONS_DEFAULT_NO): use options.mk 934 to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD 935 include local.sys.env.mk early 936 include local.sys.mk later 937 938 * own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk 939 9402015-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 941 942 * meta.sys.mk (META_COOKIE_TOUCH): 943 add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie 944 945 * meta.stage.mk: stage_libs should ignore SYMLINKS. 946 9472015-10-23 Simon J. Gerraty <sjg@bad.crufty.net> 948 949 * install-mk (MK_VERSION): 20151022 950 951 * sys.mk: BSD/OS does not have 'type' as a shell builtin. 952 9532015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 954 955 * install-mk (MK_VERSION): 20151020 956 957 * dirdeps.mk: Add logic for 958 make -f dirdeps.mk some/dir.${TARGET_SPEC} 959 9602015-10-14 Simon J. Gerraty <sjg@bad.crufty.net> 961 962 * install-mk (MK_VERSION): 20151010 963 9642015-10-02 Simon J. Gerraty <sjg@bad.crufty.net> 965 966 * meta.stage.mk: use staging: ${STAGE_TARGETS:... 967 to have stage_lins run last in non-jobs mode. 968 Use .ORDER only for jobs mode. 969 9702015-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 971 972 * rst2htm.mk: allow for per target flags etc. 973 9742015-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 975 976 * install-mk (MK_VERSION): 20150901 977 978 * doc.mk: create dir if needed use DOC_INSTALL_OWN 979 9802015-06-15 Simon J. Gerraty <sjg@bad.crufty.net> 981 982 * install-mk (MK_VERSION): 20150615 983 984 * auto.obj.mk: allow use of MAKEOBJDIRPREFIX too. 985 Follow make's normal precedence rules. 986 987 * gendirdeps.mk: allow customization of the header. 988 eg. for FreeBSD: 989 GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}'; 990 991 * meta.autodep.mk: ignore dirdeps.cache* 992 993 * meta.stage.mk: when bootstrapping options it can be handy to 994 throw warnings rather than errors for staging conflicts. 995 996 * meta.sys.mk: include local.meta.sys.mk for customization 997 9982015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 999 1000 * install-mk (MK_VERSION): 20150606 1001 1002 * dirdeps.mk: don't rely on manually maintained Makefile.depend 1003 to set DEP_RELDIR and reset DIRDEPS. 1004 By setting DEP_RELDIR ourselves we can skip :tA 1005 1006 * gendirdeps.mk: skip setting DEP_RELDIR. 1007 10082015-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 1009 1010 * dirdeps.mk: avoid wildcards like make(bootstrap*) 1011 10122015-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 1013 1014 * install-mk (MK_VERSION): 20150520 1015 1016 * dirdeps.mk: when we are building dirdeps cache file we *want* 1017 meta_oodate to look at all the Makefile.depend files, so 1018 set .MAKE.DEPENDFILE to something that won't match. 1019 1020 * meta.stage.mk: for STAGE_AS_* basename of file may not be unique 1021 so first use absolute path as key. 1022 Also skip staging at level 0. 1023 10242015-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 1025 1026 * install-mk (MK_VERSION): 20150430 1027 1028 * dirdeps.mk: fix _count_dirdeps for non-cache case. 1029 10302015-04-16 Simon J. Gerraty <sjg@bad.crufty.net> 1031 1032 * install-mk (MK_VERSION): 20150411 1033 bump version 1034 1035 * own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES. 1036 it is here mainly for documentation purposes, since 1037 if using auto.obj.mk it is better done via sys.mk 1038 10392015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 1040 1041 * install-mk (MK_VERSION): 20150401 1042 1043 * meta2deps.sh: support @list 1044 1045 * meta2deps.py: updates from Juniper 1046 o add EXCLUDES 1047 o skip bogus input files. 1048 o treat 'M' and 'L' as both an 'R' and a 'W' 1049 10502015-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1051 1052 * install-mk (MK_VERSION): 20150303 1053 1054 * dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache 1055 which is built via sub-make so we have a .meta file to tell if 1056 it is out-of-date. 1057 The dirdeps-cache contains the same dependency rules that we 1058 normaly construct on the fly. 1059 This adds a few seconds overhead when the cache is out of date, 1060 but for a large target, the savings can be significant (10-20min). 1061 10622014-11-18 Simon J. Gerraty <sjg@bad.crufty.net> 1063 1064 * install-mk (MK_VERSION): 20141118 1065 1066 * meta.stage.mk: add stale_staged 1067 1068 * dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked 1069 only useful under very rare conditions such as 1070 FreeBSD's make universe. 1071 1072 * auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto 1073 10742014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1075 1076 * install-mk (MK_VERSION): 20141111 1077 1078 * mkopt.sh: use consistent semantics for _mk_opt and _mk_opts 1079 10802014-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 1081 1082 * FILES: include mkopt.sh which allows handling options in shell 1083 scripts in a manner compatible with options.mk 1084 10852014-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1086 1087 * meta.stage.mk: ensure only _STAGED_DIRS under objroot are used 1088 for GENDIRDEPS_FILTER to avoid surprises. 1089 10902014-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1091 1092 * dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by 1093 the time it is applied to __depdirs they have. 1094 1095 * dirdeps.mk fix filtering of _machines since M_dep_qual_fixes 1096 expects patterns like *.${MACHINE} 1097 1098 * cython.mk (pyprefix?): use pyprefix to find python bits 1099 since prefix might be something else (where we install our 1100 stuff) 1101 11022014-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 1103 1104 * install-mk (MK_VERSION): 20140911 1105 1106 * dirdeps.mk: add bootstrap target to simplify adding support for 1107 new MACHINE. 1108 11092014-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 1110 1111 * gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and 1112 GENDIRDEPS_FILTER_VARS to make it easier to produce sharable 1113 Makefile.depend files. 1114 11152014-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 1116 1117 * install-mk (MK_VERSION): 20140828 1118 1119 * cython.mk: capture logic for building python extension modules 1120 with Cython. 1121 11222014-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1123 1124 * meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant 1125 11262014-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 1127 1128 * install-mk (MK_VERSION): 20140801 1129 1130 * dep.mk: use explicit MKDEP_MK rather than overload MKDEP to 1131 identify the autodep.mk variant. 1132 1133 * sys.dependfile.mk: delete .MAKE.DEPENDFILE if its 1134 initial value does not match .MAKE.DEPENDFILE_PREFIX 1135 1136 * meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS 1137 11382014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 1139 1140 * install-mk (MK_VERSION): 20140522 1141 1142 * lib.mk: use CC to link shlib for linux too 1143 patch from Brendan MacDonell 1144 11452014-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 1146 1147 * meta.autodep.mk: add _reldir_{finish,failed} for gathering stats 1148 if WITH_META_STATS is defined. 1149 11502014-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1151 1152 * dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS) 1153 to supress dirdeps outside of .CURDIR. 1154 11552014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 1156 1157 * Fix spelling errors - patch from Pedro Giffuni 1158 11592014-03-14 Simon J. Gerraty <sjg@bad.crufty.net> 1160 1161 * install-mk (MK_VERSION): 20140314 1162 1163 * dirdeps.mk (beforedirdeps): a handy hook 1164 1165 * dirdeps.mk (DIRDEP_MAKE): allow the actual command we run 1166 to visit leaf dirs to be intercepted (eg. for distributed 1167 build). 1168 1169 * dirdeps.mk (__depdirs): ensure // don't sneak in 1170 1171 * gendirdeps.mk (DIRDEPS): ensure // don't sneak in 1172 1173 11742014-02-21 Simon J. Gerraty <sjg@bad.crufty.net> 1175 1176 * rst2htm.mk (RST2PDF): add support for rst2pdf 1177 11782014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1179 1180 * install-mk (MK_VERSION): bump version 1181 * dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if 1182 available. 1183 11842014-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1185 1186 * options.mk: avoid :U so this isn't bmake dependent 1187 11882014-02-09 Simon J. Gerraty <sjg@bad.crufty.net> 1189 1190 * options.mk: cleanup and simplify semanitcs 1191 NO_* dominates all, if both WITH_* and WITHOUT_* 1192 are defined then result is DOMINATE_* which defaults to "no". 1193 Ie. WITHOUT_ normally wins. 1194 11952013-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 1196 1197 * install-mk (MK_VERSION): bump version 1198 * meta2deps.py: convert to print function for python3 compat. 1199 we also need to open files with mode 'r' rather than 'rb' 1200 otherwise we get bytes instead of strings. 1201 12022013-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1203 1204 * install-mk (MK_VERSION): bump version 1205 1206 * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE 1207 apply the same filtering (M_dep_qual_fixes) when setting _machines 1208 as _build_dirs. 1209 Also fix the filtering of Makefile.depend files - for reporting 1210 what we are looking for (M_dep_qual_fixes can get confused by 1211 Makefile.depend) 1212 Add some more debug info. 1213 12142013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 1215 1216 * gendirdeps.mk (_objtops): fix typo also 1217 while processing M2D_OBJROOTS to gather qualdir_list 1218 qualify $ql with loop iterator to ensure correct results. 1219 12202013-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1221 1222 * install-mk (MK_VERSION): 20130801 1223 * libs.mk: update to match progs.mk 1224 12252013-07-26 Simon J. Gerraty <sjg@bad.crufty.net> 1226 1227 * install-mk (MK_VERSION): 20130726 1228 some updates from Juniper and FreeBSD 1229 o meta2deps.py: indicate file and line number when we hit parse 1230 errors 1231 also allow @file to provide huge list of .meta files. 1232 * meta2deps.py: add try_parse() to cleanup the above. 1233 12342013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 1235 1236 * install-mk (MK_VERSION): 20130716 1237 * own.mk: add GPROG as an option 1238 * prog.mk: honor MK_GPROF==yes 1239 12402013-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 1241 1242 * install-mk (MK_VERSION): 20130505 1243 * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC 1244 for when $MACHINE isn't enough for objdir distinction. 1245 Bring meta2deps.sh closer to par with meta2deps.py. 1246 12472013-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 1248 1249 * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all' 1250 also if the target 'beforeinstall' exists, make it depend on 1251 .dirdep (incase it uses STAGE_INSTALL). 1252 12532013-04-17 Simon J. Gerraty <sjg@bad.crufty.net> 1254 1255 * install-mk (MK_VERSION): 20130401 ;-) 1256 * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as 1257 wrapper around install(1). 1258 * options.mk (OPTION_PREFIX): Allow a prefix other than MK_ 1259 12602013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1261 1262 * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized. 1263 * install-mk (MK_VERSION): bump version 1264 12652013-03-21 Simon J. Gerraty <sjg@bad.crufty.net> 1266 1267 * install-mk (MK_VERSION): bump version 1268 * gendirdeps.mk: do not apply :tA to DPADD entries, since we lose 1269 any trailing /., rather apply :tA only when needed. 1270 * gendirdeps.mk: better mimic meta2deps handling of .dirdep files. 1271 * meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance 1272 consistently. 1273 * dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC. 1274 12752013-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 1276 1277 * gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT 1278 it is simpler to just not update when say building for "host" 1279 (where we know we apply filters to DIRDEPS), and using a 1280 non-machine qualified dependfile. 1281 12822013-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1283 1284 * dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR 1285 and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC 1286 * gendirdeps.mk: ensure _objroot has trailing / if it needs it. 1287 * meta2deps.py: if machine is "host", then also trim 1288 self.host_target from any OBJROOTS. 1289 1290 12912013-03-11 Simon J. Gerraty <sjg@bad.crufty.net> 1292 1293 * gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine 1294 qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists 1295 but _DEPENDFILE does not, compare the new _DEPENDFILE against 1296 .MAKE.DEPENDFILE_DEFAULT and discard if the same. 1297 12982013-03-08 Simon J. Gerraty <sjg@bad.crufty.net> 1299 1300 * meta.stage.mk: use STAGE_TARGETS to control .ORDER 1301 and hook to all: via staging: 1302 13032013-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 1304 1305 * sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT): 1306 use a separate variable for the default .MAKE.DEPENDFILE value 1307 so that it can be controlled independently of 1308 .MAKE.DEPENDFILE_PREFERENCE 1309 1310 * meta.stage.mk: throw error if cp fails etc. 1311 Stage*() return early if passed no args. 1312 .ORDER stage_* 1313 13142013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1315 1316 * install-mk (MK_VERSION): bump version 1317 * gendirdeps.mk: handle multiple M2D_OBJROOTS better. 1318 13192013-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1320 1321 * install-mk (MK_VERSION): bump version to 20130210 1322 * import latest dirdeps.mk, gendirdeps.mk and meta2deps.py 1323 from Juniper. 1324 o dirdeps.mk now fully supports TARGET_SPEC consisting of more 1325 than just MACHINE. 1326 o no longer use DEP_MACHINE from Makefile.depend* so remove it. 1327 13282013-01-23 Simon J. Gerraty <sjg@bad.crufty.net> 1329 1330 * install-mk (MK_VERSION): bump version to 20130123 1331 * meta.stage.mk: add stage_links (hard links). 1332 if doing hard links, we add dest to link as well. 1333 Default the stage dir for [sym]links to STAGE_OBJTOP since 1334 these are typically specified as absolute paths. 1335 Add -m "mode" flag to StageFiles and StageAs. 1336 13372012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1338 1339 * install-mk (MK_VERSION): bump version to 20121111 1340 * autoconf.mk: avoid meta mode seeing changed commands for config.status 1341 * meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps 1342 in case we were found via .../mk 1343 * sys.clean-env.mk: move it from examples, we and others use it 1344 "as is". 1345 * FILES: add srctop.mk and options.mk 1346 * own.mk: convert to using options.mk 1347 which is modeled after FreeBSD's handling of MK_* 1348 but more flexible. 1349 This allows MK_* for boolean knobs to not be confused 1350 with MK* which can be commands. 1351 1352 * examples/sys.clean-env.mk: add WITH[OUT]_ to 1353 MAKE_ENV_SAVE_PREFIX_LIST. 1354 Mention that HOME=/var/empty might be a good idea. 1355 13562012-11-08 Simon J. Gerraty <sjg@bad.crufty.net> 1357 1358 * sys.dependfile.mk: if not depend file exists, $MACHINE 1359 specific ones are supported but not the default, 1360 check if any exist and follow suit. 1361 13622012-11-06 Simon J. Gerraty <sjg@bad.crufty.net> 1363 1364 * install-mk (MK_VERSION): bump version to 20121106 1365 13662012-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 1367 1368 * import latest dirdeps.mk and meta2deps.py from Juniper. 1369 * progs.mk: add MAN and CXXFLAGS to PROG_VARS 1370 also add PROGS_TARGETS and pass on PROG_CXX if it seems 1371 appropriate. 1372 13732012-11-04 Simon J. Gerraty <sjg@bad.crufty.net> 1374 1375 * meta.stage.mk: update CLEANFILES 1376 remove redundant cp of .dirdep from STAGE_AS_SCRIPT. 1377 * progs.mk: Add LDADD to PROG_VARS 1378 13792012-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1380 1381 * meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in 1382 _STAGED_DIRS so that these can be turned into filters for 1383 GENDIRDEPS_FILTER. 1384 13852012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1386 1387 * install-mk (MK_VERSION): bump version to 20121010 1388 * meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing 1389 target.dirdep matches .dirdep 1390 13912012-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1392 1393 * install-mk (MK_VERSION): bump version to 20120808 1394 * import latest meta2deps.py from Juniper. 1395 13962012-07-11 Simon J. Gerraty <sjg@bad.crufty.net> 1397 1398 * install-mk (MK_VERSION): bump version to 20120711 1399 * dep.mk: add explicit dependencies on SRCS after applying 1400 SRCS_DEP_FILTER 1401 * meta.autodep.mk: add explicit dependencies on SRCS after 1402 applying SRCS_DEP_FILTER 1403 * meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed. 1404 14052012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 1406 1407 * install-mk (MK_VERSION): bump version to 20120626 1408 * meta.sys.mk: ignore PYTHON if it does not exist 1409 compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable. 1410 * meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any 1411 entries ending in .${MACHINE} to decide if qualified _dirdep is 1412 needed. 1413 * gendirdeps.mk: only produce unqualified deps if no 1414 .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE} 1415 * meta.subdir.mk: apply SUBDIRDEPS_FILTER 1416 14172012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 1418 1419 * install-mk (MK_VERSION): bump version to 20120420 1420 * add sys.dependfile.mk so we can experiment with 1421 .MAKE.DEPENDFILE_PREFERENCE 1422 * meta.autodep.mk: _DEPENDFILE is precious! 1423 14242012-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 1425 1426 * install-mk (MK_VERSION): bump version to 20120315 1427 * install-new.mk: avoid being interrupted 1428 14292012-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 1430 1431 * man.mk: MAN might have multiple values so be careful with exists(). 1432 14332012-01-19 Simon J. Gerraty <sjg@bad.crufty.net> 1434 1435 * install-mk (MK_VERSION): bump version to 20120112 1436 * fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled 1437 as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}' 1438 14392011-12-03 Simon J. Gerraty <sjg@bad.crufty.net> 1440 1441 * install-mk (MK_VERSION): bump version to 20111201 1442 * import dirdeps.mk from Juniper sjg@ 1443 o more consistent handling of DEP_MACHINE, especially when 1444 dealing with an odd Makefile.depend, when normally using 1445 Makefile.depend.${MACHINE} 1446 14472011-11-22 Simon J. Gerraty <sjg@bad.crufty.net> 1448 1449 * install-mk (MK_VERSION): bump version to 20111122 1450 * meta.autodep.mk: add some debug output, be more crisp about 1451 updating. Use ${.ALLTARGETS:M*.o} as a clue for .depend 1452 14532011-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 1454 1455 * install-mk (MK_VERSION): bump version to 20111111 1456 it's too cool to miss 1457 * import meta* updates from Juniper sjg@ 1458 o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are 1459 normally using Makefile.depend.${MACHINE}), handy for 1460 read-only manually maintained dependencies. 1461 o meta2deps.py add a clear 'ERROR:' token if an exception is raised. 1462 o gendirdeps.mk if ERROR: from meta2deps.py do not update 1463 anything. 1464 14652011-10-30 Simon J. Gerraty <sjg@bad.crufty.net> 1466 1467 * install-new.mk separate the cmp and copy logic to its own function. 1468 14692011-10-28 Simon J. Gerraty <sjg@bad.crufty.net> 1470 1471 * install-mk (MK_VERSION): bump version to 20111028 1472 * sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto 1473 * subdir.mk: ensure _SUBDIRUSE is provided 1474 * meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk 1475 * meta.subdir.mk: always allow for Makefile.depend 1476 14772011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1478 1479 * install-mk (MK_VERSION): bump version to 20111010 1480 o minor tweak to *dirdeps.mk from Juniper sjg@ 1481 14822011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 1483 1484 * install-mk (MK_VERSION): bump version to 20111001 1485 o add meta2deps.py from Juniper sjg@ 1486 o tweak gendirdeps.mk to work with meta2deps.py when not 1487 cross-building 1488 * autoconf.mk: add autoconf-input as a hook for regenerating 1489 AUTOCONF_INPUTS (configure). 1490 14912011-08-24 Simon J. Gerraty <sjg@bad.crufty.net> 1492 1493 * meta.autodep.mk: if we do not have OBJS, .depend isn't a useful 1494 trigger for updating Makefile.depend* 1495 14962011-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1497 1498 * install-mk (MK_VERSION): bump version to 20110808 1499 * obj.mk: minor cleanup 1500 * auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too. 1501 15022011-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1503 1504 * auto.obj.mk (.OBJDIR): throw an error if we cannot use the 1505 specified dir. 1506 15072011-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 1508 1509 * meta.autodep.mk: if XMAKE_META_FILE is set 1510 the makefile uses a foreign make, and so dependencies 1511 can only be gathered from a clean tree build. 1512 15132011-06-24 Simon J. Gerraty <sjg@bad.crufty.net> 1514 1515 * install-mk (MK_VERSION): bump version to 20110622 1516 * meta.autodep.mk: improve bootstraping 1517 15182011-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1519 1520 * yacc.mk: handle the corner case of .c being removed 1521 while .h remains. 1522 15232011-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1524 1525 * yacc.mk: do .y.h and .y.c separately 1526 15272011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 1528 1529 * install-mk (MK_VERSION): bump version to 20110606 1530 * don't store SRC_DIRDEPS in Makefile.depend* by default 1531 not everyone needs it. 1532 15332011-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1534 1535 * install-mk (MK_VERSION): bump version to 20110505 1536 first release including meta mode makefiles 1537 15382011-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1539 1540 * meta.stage.mk: add STAGE_AS_SETS and stage_as 1541 for things that need to be staged with different names. 1542 15432011-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 1544 1545 * meta.stage.mk: add notion of STAGE_SETS 1546 so a makefile can stage to multiple dirs 1547 15482011-04-03 Simon J. Gerraty <sjg@bad.crufty.net> 1549 1550 * rst2htm.mk: convert rst to s5 (slides) or plain html depending 1551 on target name. 1552 15532011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1554 1555 * install-mk (MK_VERSION): bump version to 20110330 1556 15572011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 1558 1559 * sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0 1560 can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest. 1561 * sys.mk: re-define M_whence in terms of M_type. 1562 M_type is useful for checking if something is a builtin. 1563 15642011-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1565 1566 * meta.stage.mk: add stage_symlinks and leverage StageLinks for 1567 stage_libs 1568 15692011-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 1570 1571 * dirdeps.mk: correct value for _depdir_files depends on 1572 .MAKE.DEPENDFILE 1573 Add our copyright - just to make it clear we have frobbed this 1574 quite a bit. 1575 DEP_MACHINE needs to be set to MACHINE each time, if using only 1576 Makefile.depend (cf. Makefile.depend.${MACHINE}) 1577 1578 * meta.stage.mk: meta mode version of staging 1579 1580 * init.mk, final.mk: include local.*.mk to simplify customization 1581 15822011-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1583 1584 * auto.obj.mk: just because we are doing mk destroy, we should 1585 still set .OBJDIR correctly if it exists. 1586 1587 * install-mk (mksrc): do not exclude meta.sys.mk 1588 15892011-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 1590 1591 * host-target.mk: set/export _HOST_ARCH etc separately, 1592 catch junk resulting from uname -p, so we can find sys/Linux.mk 1593 correctly. 1594 15952011-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 1596 1597 * meta.sys.mk: throw an error if /dev/filemon is missing and we 1598 expected to be updating Makefile.depend* 1599 16002011-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1601 1602 * install-mk (MK_VERSION): bump version to 20110214 1603 * meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES 1604 16052010-09-25 Simon J. Gerraty <sjg@bad.crufty.net> 1606 1607 * meta.sys.mk: not valid for older bmake 1608 16092010-09-24 Simon J. Gerraty <sjg@bad.crufty.net> 1610 1611 * install-mk (MK_VERSION): bump version to 20100919 1612 include dirdeps.mk et al from Juniper Networks, 1613 for meta mode - requires filemon(9). 1614 * sys.mk, subdir.mk: Add hooks for meta mode. 1615 we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk 1616 to make turning it on/off simple. 1617 16182010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 1619 1620 * install-mk (MK_VERSION): bump version to 20100616 1621 * fix typo in sys.mk 1622 16232010-06-12 Simon J. Gerraty <sjg@bad.crufty.net> 1624 1625 * install-mk (MK_VERSION): bump version to 20100612 1626 * lib.mk: remove duplicate addition to SOBJS 1627 16282010-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1629 1630 * sys.mk: Add a means of selectively turning on debug flags. 1631 Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg" 1632 will act as if we did make -dv if .CURDIR ends in lib/sjg 1633 DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at 1634 the start of sys.mk rather than the end. 1635 This only makes sense for leaf dirs, so we check that 1636 .MAKE.LEVEL > 0 1637 16382010-06-09 Simon J. Gerraty <sjg@bad.crufty.net> 1639 1640 * install-mk (MK_VERSION): bump version to 20100608 1641 * sys.mk: include sys.env.mk later so it can use M_ListToSkip et al. 1642 * examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606 1643 also make it easier for folk to tweak 1644 16452010-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1646 1647 * install-mk (MK_VERSION): bump version to 20100606 1648 do not install examples/* 1649 * FILES: add examples/sys.clean-env.mk 1650 * examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR 1651 this requires bmake-20100606 or later to work. 1652 16532010-05-13 Simon J. Gerraty <sjg@bad.crufty.net> 1654 1655 * sys.mk (M_tA): better simulate the result of :tA if not available. 1656 16572010-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1658 1659 * sys.mk: canonicalize MAKE_VERSION 1660 old versions reported bmake-<src-date> build-<build-date> 1661 whereas we only care about <src-date> 1662 16632010-04-25 Simon J. Gerraty <sjg@bad.crufty.net> 1664 1665 * install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored 1666 * lib.mk: we only build the shared lib if SHLIB_FULLVERSION 1667 is !empty 1668 16692010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 1670 1671 * dpadd.mk: use LDADD_* if defined. 1672 16732010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 1674 1675 * install-mk (MK_VERSION): bump version to 20100420 1676 * sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy 1677 * autoconf.mk allow AUTO_AUTOCONF 1678 16792010-04-19 Simon J. Gerraty <sjg@bad.crufty.net> 1680 1681 * obj.mk: add objwarn to keep freebsd makefiles happy 1682 * auto.obj.mk: ensure Mkdirs is available. 1683 * FILES: add auto.dep.mk - a simpler version of autodep.mk 1684 * dep.mk: auto.dep.mk does not do 'make depend' so ignore it if 1685 asked to do that. 1686 fix/simplify the tests for when to run mkdep. 1687 * auto.dep.mk: add some explanation of how/what we do. 1688 * autodep.mk: skip the .OPTIONAL frobbing of .depend 1689 bmake's FROM_DEPEND flag makes it redundant. 1690 16912010-04-13 Simon J. Gerraty <sjg@bad.crufty.net> 1692 1693 * install-mk (MK_VERSION): bump version to 20100404 1694 * subdir.mk: protect from multiple inclusion using _SUBDIRUSE. 1695 * obj.mk: protect from multiple inclusion even as bsd.obj.mk 1696 Also create a target _SUBDIRUSE so that we can be used without 1697 subdir.mk 1698 16992010-04-12 Simon J. Gerraty <sjg@bad.crufty.net> 1700 1701 * dep.mk: use <> when .including so can override. 1702 17032010-01-11 Simon J. Gerraty <sjg@bad.crufty.net> 1704 1705 * lib.mk (SHLIB_LINKS): ensure a string comparison. 1706 17072010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 1708 1709 * install-mk (MK_VERSION): bump version to 20100102 1710 * own.mk: ensure PRINTOBJDIR works 1711 * autoconf.mk: pass on CONFIGURE_ARGS 1712 * init.mk: handle COPTS.${.IMPSRC:T} etc. 1713 * lib.mk: allow sys.mk to control SHLIB_FULLVERSION 1714 fix handling of symlinks for darwin 1715 * libnames.mk: add DSHLIBEXT for libs which only exist as shared. 1716 * man.mk: suppress chown when not root. 1717 * rst2htm.mk: allow srcs from multiple locations. 1718 * sys.mk: M_whence, stop after 1st line of output. 1719 * sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT 1720 * sys/SunOS.mk: we need to export PATH 1721 17222009-12-23 Simon J. Gerraty <sjg@void.crufty.net> 1723 1724 * install-mk (MK_VERSION): bump version 1725 include rst2htm.mk 1726 17272009-12-17 Simon J. Gerraty <sjg@void.crufty.net> 1728 1729 * sys.mk,libnames.mk add .-include <local.*> 1730 this allows local customization without the need to edit the 1731 distributed files. 1732 17332009-12-14 Simon J. Gerraty <sjg@void.crufty.net> 1734 1735 * dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up 1736 older versions already installed. 1737 17382009-12-13 Simon J. Gerraty <sjg@void.crufty.net> 1739 1740 * stage.mk (.stage-install): generalize lib.mk's .libinstall 1741 * rules.mk rules for generic Makefile. 1742 * inc.mk install for includes. 1743 17442009-12-11 Simon J. Gerraty <sjg@void.crufty.net> 1745 1746 * sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check 1747 this, so provide it if using native make. 1748 17492009-12-10 Simon J. Gerraty <sjg@void.crufty.net> 1750 1751 * FILES: move all the platform *.sys.mk files to sys/*.mk 1752 * Rename Generic.sys.mk to sys.mk - we always want it. 1753 17542009-11-17 Simon J. Gerraty <sjg@void.crufty.net> 1755 1756 * install-mk (MK_VERSION): bump version 1757 * host-target.mk: only export the expensive stuff 1758 * Generic.sys.mk (sys_mk): for SunOS we need to look for 1759 ${HOST_OS}.${HOST_OSMAJOR} too! 1760 17612009-11-07 Simon J. Gerraty <sjg@void.crufty.net> 1762 1763 * install-mk (MK_VERSION): bump version 1764 * lib.mk: if sys.mk doesn't give us an lorder, don't use it. 1765 based on patch from Greg Olszewski. 1766 * Generic.sys.mk: if we have nothing to work with 1767 set LORDER etc only if we can find it. 1768 17692009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 1770 1771 * install-mk (MK_VERSION): bump version 1772 * man.mk: cleanman: remove CLEANMAN if defined. 1773 17742009-09-04 Simon J. Gerraty <sjg@void.crufty.net> 1775 1776 * SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk 1777 17782009-07-17 Simon J. Gerraty <sjg@void.crufty.net> 1779 1780 * install-mk (MK_VERSION): bump version 1781 include auto.obj.mk 1782 1783 17842009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 1785 1786 * prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail. 1787 17882008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 1789 1790 * install-mk (MK_VERSION): bump version 1791 man.mk: ensure we generate *.cat1 etc in . 1792 17932008-07-16 Simon J. Gerraty <sjg@void.crufty.net> 1794 1795 * install-mk (MK_VERSION): bump version 1796 add prlist.mk 1797 17982007-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1799 1800 * Generic.sys.mk: Allow os specific sys.mk to be in a 1801 subdir of ${.PARSEDIR} 1802 18032007-11-22 Simon J. Gerraty <sjg@void.crufty.net> 1804 1805 * install-mk (MK_VERSION): bump version 1806 * general cleanup 1807 * dpadd.mk introduce DPMAGIC_LIBS_* 1808 18092007-04-30 Simon J. Gerraty <sjg@void.crufty.net> 1810 1811 * install-mk (MK_VERSION): bump version 1812 1813 * libs.mk, progs.mk, autodep.mk: allow for per lib/prog 1814 depend files and ensure clean is called for each lib/prog. 1815 18162007-03-27 Simon J. Gerraty <sjg@void.crufty.net> 1817 1818 * autodep.mk (.depend): delete lines that do not start with 1819 space and do not contain ':' 1820 18212007-02-16 Simon J. Gerraty <sjg@void.crufty.net> 1822 1823 * autodep.mk (.depend): gcc may wrap lines if pathnames are long 1824 so make sure the transform for .OPTIONAL copes. 1825 18262007-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1827 1828 * install-mk (MK_VERSION): bump version 1829 1830 * own.mk: make sure RM and LN are defined. 1831 1832 * obj.mk: fix a typo, and objlink target. 1833 18342006-12-30 Simon J. Gerraty <sjg@void.crufty.net> 1835 1836 * install-mk (MK_VERSION): bump version 1837 * added libs.mk - analogous to progs.mk 1838 make both of them always inlcude {lib,prog}.mk 1839 18402006-12-28 Simon J. Gerraty <sjg@void.crufty.net> 1841 1842 * progs.mk: add a means of building multiple apps in one dir. 1843 18442006-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1845 1846 * install-mk (MK_VERSION): bump version to 20061126 1847 1848 * warnings.mk: detect invalid WARNINGS_SET 1849 1850 * warnings.mk: use ${.TARGET:T:R}.o when looking for target 1851 specific warnings. 1852 1853 * For .cc sources, turn off warnings that g++ vomits on. 1854 18552006-11-08 Simon J. Gerraty <sjg@void.crufty.net> 1856 1857 * own.mk: if __initialized__ target doesn't exist and we are 1858 FreeBSD we got here directly from sys.mk 1859 18602006-11-06 Simon J. Gerraty <sjg@void.crufty.net> 1861 1862 * install-mk (MK_VERSION): bump version to 20061106 1863 add scripts.mk 1864 18652006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 1866 1867 * install-mk (MK_VERSION): bump version to 20060318 1868 1869 * autodep.mk: avoid := when modifying OBJS into __dependsrcs 1870 18712006-03-02 Simon J. Gerraty <sjg@void.crufty.net> 1872 1873 * install-mk (MK_VERSION): bump version to 20060302 1874 * autodep.mk: use -MF et al to help gcc+ccache DTRT. 1875 18762006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 1877 1878 * install-mk (MK_VERSION): bump version to 20060301 1879 * autodep.mk (.depend): 1880 if MAKE_VERSION is newer than 20050530 we can make .END depend on 1881 .depend and make .depend depend on __depsrcs that exist. 1882 * dpadd.mk: add SRC_PATHADD 1883 18842005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1885 1886 * install-mk (MK_VERSION): bump version to 20051104 1887 * prog.mk: remove all the LIBC?= junk, use 1888 .-include libnames.mk instead (none by default). 1889 also if USE_DPADD_MK is set, include that. 1890 18912005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1892 1893 * install-mk (MK_VERSION): bump version to 20051001 1894 Add UnixWare.sys.mk from Klaus Heinz. 1895 18962005-04-05 Simon J. Gerraty <sjg@void.crufty.net> 1897 1898 * install-mk: always install *.sys.mk and if need be symlink one 1899 to sys.mk 1900 19012005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 1902 1903 * subdir.mk, own.mk: use .MAKE rather than MAKE 1904 19052004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1906 1907 * own.mk: don't use NetBSD's _SRC_TOP_ it can 1908 cause confusion. Also don't take just 'mk' as a 1909 srctop indicator. 1910 19112004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 1912 1913 * warnings.mk: overhauled, now very powerful. 1914 19152004-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1916 1917 * Generic.sys.mk: need to use ${.PARSEDIR} with exists(). 1918 19192004-02-01 Simon J. Gerraty <sjg@void.crufty.net> 1920 1921 * install-mk (MK_VERSION): bump version to 20040201 1922 * extract HOST_TARGET stuff to host-target.mk so own.mk and 1923 Generic.sys.mk can share. 1924 * fix typo in autodep.mk _SUBDIRUSE not _SUBDIR. 1925 19262003-09-30 Simon J. Gerraty <sjg@void.crufty.net> 1927 1928 * install-mk (MK_VERSION): 20030930 1929 * rename generic.sys.mk to Generic.sys.mk 1930 so that it does not get installed (unless being used as sys.mk) 1931 * set OS and ROOT_GROUP for those that we know the value. 1932 for others (eg. Generic.sys.mk) wrap the != in an .ifndef so 1933 we don't do it again for each sub-make. 1934 19352003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 1936 1937 * install-mk (MK_VERSION): 20030928 1938 Add some extra *.sys.mk from bootstrap-pkgsrc 1939 some of these likely still need work. 1940 Make everything default to root:wheel ownership, 1941 sys.mk can set ROOT_GROUP accordingly. 1942 19432003-08-07 Simon J. Gerraty <sjg@void.crufty.net> 1944 1945 * install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR 1946 not the portable ones. 1947 19482003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 1949 1950 * install-mk: add ability to use cp -f when updating 1951 destination .mk files. Also now possible to play games with 1952 FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk 1953 into dest - not recommended unless you seriously want to. 1954 19552003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1956 1957 * own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc 1958 for semi-compatability with NetBSD. 1959 19602003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1961 1962 * install-mk: add a version indicator 1963 19642003-07-22 Simon J. Gerraty <sjg@void.crufty.net> 1965 1966 * prog.mk: don't try and use ${LIBCRT0} if its /dev/null 1967 1968 * install-mk: Allow FORCE_SYS_MK to come from env 1969 1970 1971 1972