12022-03-25 Simon J Gerraty <sjg@beast.crufty.net> 2 3 * install-mk (MK_VERSION): 20220323 4 * posix.mk: default rules for .POSIX: 5 62022-03-17 Simon J Gerraty <sjg@beast.crufty.net> 7 8 * sys/*.mk: remove l from ARFLAGS 9 102022-03-14 Simon J Gerraty <sjg@beast.crufty.net> 11 12 * install-mk (MK_VERSION): 20220314 13 14 * dirdeps-options.mk: allow options to be per RELDIR 15 try DIRDEPS_OPTIONS_QUALIFIER_LIST first prefixed 16 with ${DEP_RELDIR}. 17 182022-02-14 Simon J Gerraty <sjg@beast.crufty.net> 19 20 * install-mk (MK_VERSION): 20220214 21 22 * cc-wrap.mk: fix :@ modifier 23 242022-02-06 Simon J Gerraty <sjg@beast.crufty.net> 25 26 * install-mk (MK_VERSION): 20220206 27 28 * cc-wrap.mk: docuement how CCACHE etc might be set for 29 maximum flexibility 30 312022-02-05 Simon J Gerraty <sjg@beast.crufty.net> 32 33 * sys.vars.mk: use JOT_CMD (jot or seq) if available for M_JOT 34 352022-02-04 Simon J Gerraty <sjg@beast.crufty.net> 36 37 * install-mk (MK_VERSION): 20220204 38 39 * host-target.mk: use .MAKE.OS if available 40 412022-02-02 Simon J Gerraty <sjg@beast.crufty.net> 42 43 * install-mk (MK_VERSION): 20220202 44 45 * cc-wrap.mk: allow other entries in CC_WRAP_FILTER 46 We add our filter on extensions last, so prior filters 47 can apply to the whole value of .IMPSRC 48 492022-02-01 Simon J Gerraty <sjg@beast.crufty.net> 50 51 * cc-wrap.mk: take advantage of target local variables to 52 wrap compilers like CC CXX with wrappers like ccache distcc etc 53 542022-01-28 Simon J Gerraty <sjg@beast.crufty.net> 55 56 * meta2deps: we do not expect any trace data for setid apps 57 582022-01-26 Simon J Gerraty <sjg@beast.crufty.net> 59 60 * dirdeps.mk: ensure TARGET_SPEC and TARGET_SPEC_VARS are passed 61 to sub-make using DIRDEPS_CACHE 62 632022-01-07 Simon J Gerraty <sjg@beast.crufty.net> 64 65 * dirdeps.mk: use _cache_script to minimize the number of shells 66 forked when generating dirdeps.cache 67 682022-01-02 Simon J Gerraty <sjg@beast.crufty.net> 69 70 * install-mk (MK_VERSION): 20220101 71 72 * dirdeps.mk: initialize DEP_* and _debug_reldir earlier. 73 If initial DIRDEPS are from command line, create the target 74 _dirdeps_cmdline as an indication. 75 762022-01-01 Simon J Gerraty <sjg@beast.crufty.net> 77 78 * init.mk (_SKIP_BUILD): when doing DIRDEPS_BUILD 79 at top-level only some targets are allowed at level 0, 80 for leaf makefiles only the default (all) target is restricted 81 822021-12-28 Simon J Gerraty <sjg@beast.crufty.net> 83 84 * install-mk (MK_VERSION): 20211228 85 86 * meta2deps.py: filemon on Linux is not as reliable as we might 87 like, we do not want to update DIRDEPS if filemon output is 88 incomplete. Track pids that we 'E'xec and make sure we see an 89 e'X'it for each one. Throw an error if we are missing any 'X' 90 records. 91 922021-12-12 Simon J Gerraty <sjg@beast.crufty.net> 93 94 * sys.mk: simplify; include meta.sys.mk if MK_META_MODE is yes. 95 96 * meta.sys.mk: do not check for /dev/filemon if .MAKE.PATH_FILEMON 97 is something else. 98 99 * meta.autodep.mk: we can now reference ${.SUFFIXES} 100 101 * meta2deps.py: derive a list of dirdep extensions from 102 TARGET_SPEC to trim from dirdeps. 103 104 * dirdeps.mk: flip the computation of qualified vs unqualified 105 dirdeps - it is much simpler to check for unqualified first. 106 1072021-12-11 Simon J Gerraty <sjg@beast.crufty.net> 108 109 * install-mk (MK_VERSION): 20211212 110 111 * auto.dep.mk: rearrange so that the trivial implementation 112 for recent bmake is more obvious. 113 1142021-12-07 Simon J Gerraty <sjg@beast.crufty.net> 115 116 * install-mk (MK_VERSION): 20211207 117 118 * Ensure guard targets are .NOTMAIN 119 120 * meta.sys.mk: check for nofilemon support when we skip level 0 121 122 * auto.dep.mk: make this usable in meta mode 123 for platforms that cannot use meta.autodep.mk 124 125 * meta2deps.py: avoid confusion if MACHINE and another 126 TARGET_SPEC_VAR have same value. 127 1282021-11-27 Simon J Gerraty <sjg@beast.crufty.net> 129 130 * dirdeps.mk: when building dirdeps.cache, minimize the amount of 131 data put into env, by stripping ${SRCTOP}/ from each entry. 132 A long sandbox name can double the amount of memory consumed and 133 in extreme cases cause failure. 134 While we are at it, strip ${SRCTOP}/ from a lot of the debug output. 135 1362021-11-11 Simon J Gerraty <sjg@beast.crufty.net> 137 138 * install-mk (MK_VERSION): 20211111 139 140 * meta.stage.mk (LN_CP_SCRIPT): if staging to NFS cp -p can fail 141 so fallback to cp if necessary. 142 1432021-10-30 Simon J Gerraty <sjg@beast.crufty.net> 144 145 * man.mk (CMT2DOC): use cmt2doc.py rather than the 30 year 146 old cmt2doc.pl 147 1482021-10-24 Simon J Gerraty <sjg@beast.crufty.net> 149 150 * meta.stage.mk: stage_as_and_symlink use ${STAGE_LINK_AS_$f:U$f} 151 as the symlink (rare) 152 1532021-10-16 Simon J Gerraty <sjg@beast.crufty.net> 154 155 * autoconf.mk: if AUTOCONF_GENERATED_MAKEFILE is set and has not 156 been read, throw an error after running configure telling user to 157 restart. 158 1592021-10-13 Simon J Gerraty <sjg@beast.crufty.net> 160 161 * install-mk (MK_VERSION): 20211011 162 163 * Add support for SCO_SV 164 1652021-10-01 Simon J Gerraty <sjg@beast.crufty.net> 166 167 * install-mk (MK_VERSION): 20211001 168 169 * man.mk: use MAN_SUFFIXES and CMT2DOC_SUFFIXES for more 170 flexibility 171 1722021-09-13 Simon J Gerraty <sjg@beast.crufty.net> 173 174 * options.mk (describe-options): print options and their values 175 and optional description 176 1772021-09-11 Simon J Gerraty <sjg@beast.crufty.net> 178 179 * install-mk (MK_VERSION): 20210911 180 181 * options.mk (show-options): print options and their values 182 1832021-09-08 Simon J Gerraty <sjg@beast.crufty.net> 184 185 * install-mk (MK_VERSION): 20210909 186 187 * lib.mk: apply patch from <daniel@octaforge.org> 188 to fix shared libs on Linux 189 1902021-08-08 Simon J Gerraty <sjg@beast.crufty.net> 191 192 * install-mk (MK_VERSION): 20210808 193 194 * options.mk: issue warning for WITH_*=no 195 1962021-06-16 Simon J Gerraty <sjg@beast.crufty.net> 197 198 * install-mk (MK_VERSION): 20210616 199 200 * dirdeps.mk: when using .MAKE.DEPENDFILE_PREFERENCE to find 201 depend files to read, anchor MACHINE at , or end of string 202 to avoid prefix match. 203 2042021-05-04 Simon J Gerraty <sjg@beast.crufty.net> 205 206 * install-mk (MK_VERSION): 20210504 207 208 * dirdeps.mk: re-implement ALL_MACHINES support to better 209 cater for local complexities, when ONLY_TARGET_SPEC_LIST 210 is not set. local.dirdeps.mk can set 211 DIRDEPS_ALL_MACHINES_FILTER and/or 212 DIRDEPS_ALL_MACHINES_FILTER_XTRAS to filter the results we get 213 from listing all existing Makefile.depend.* 214 2152021-04-20 Simon J Gerraty <sjg@beast.crufty.net> 216 217 * install-mk (MK_VERSION): 20210420 218 219 * dirdeps.mk: revert previous - not always safe. 220 2212021-03-20 Simon J Gerraty <sjg@beast.crufty.net> 222 223 * install-mk (MK_VERSION): 20210321 224 225 * dirdeps.mk: when generating dirdeps.cache 226 we only need to hook the initial DIRDEPS to the 227 dirdeps target. That and any _build_xtra_dirs (like tests which 228 should not be hooked directly to the dependency graph - to avoid 229 cycles) 230 2312021-01-30 Simon J Gerraty <sjg@beast.crufty.net> 232 233 * install-mk (MK_VERSION): 20210130 234 235 * dirdeps.mk: expr 2 - 1 - 1 exits with a bad status 236 we need to guard against this in DIRDEP_LOADAVG_REPORT. 237 238 * dirdeps.mk: restore respect for TARGET_MACHINE 239 2402021-01-06 Simon J Gerraty <sjg@beast.crufty.net> 241 242 * install-mk (MK_VERSION): 20210101 243 244 * dirdeps.mk: first time we are read, just use TARGET_SPEC for 245 _DEP_TARGET_SPEC 246 2472020-12-22 Simon J Gerraty <sjg@beast.crufty.net> 248 249 * sys.mk (MAKE_SHELL): use ${.SHELL:Ush} 250 and use := when setting SHELL 251 2522020-12-21 Simon J Gerraty <sjg@beast.crufty.net> 253 254 * install-mk (MK_VERSION): 20201221 255 256 * dirdeps-options.mk: latest bmake allows only one arg to .undef 257 2582020-12-11 Simon J Gerraty <sjg@beast.crufty.net> 259 260 * dirdeps-targets.mk: allow for "." in DIRDEPS_TARGETS_DIRS 261 so that any directory can be treated as a target. 262 2632020-11-26 Simon J Gerraty <sjg@beast.crufty.net> 264 265 * install-mk (MK_VERSION): 20201126 266 267 * own.mk: use .MAKE.{UID,GID} if available. 268 269 * init.mk: suppress _SKIP_BUILD warning if doing -V 270 2712020-11-20 Simon J Gerraty <sjg@beast.crufty.net> 272 273 * install-mk (MK_VERSION): 20201120 274 275 * init.mk: rename LEVEL0_TARGETS to DIRDEPS_BUILD_LEVEL0_TARGETS 276 277 * dirdeps-targets.mk: fix typo in comment 278 2792020-11-06 Simon J Gerraty <sjg@beast.crufty.net> 280 281 * install-mk (MK_VERSION): 20201106 282 283 * meta.autodep.mk: use OBJ_EXTENSIONS rather than hardcode sed 284 args to tweak extensions for local deps. 285 2862020-11-01 Simon J Gerraty <sjg@beast.crufty.net> 287 288 * install-mk (MK_VERSION): 20201101 289 290 * dirdeps.mk: most leaf makefiles are not suitable for building 291 dirdeps.cache so if RELDIR is not "." use dirdeps.mk 292 2932020-10-28 Simon J Gerraty <sjg@beast.crufty.net> 294 295 * install-mk (MK_VERSION): 20201028 296 297 * dirdeps.mk: if we don't have :range use equivalent of M_RANGE 298 when building dirdeps.cache for leaf directory use -f dirdeps.mk 299 300 * sys.vars.mk: add M_JOT and M_RANGE 301 3022020-10-01 Simon J Gerraty <sjg@beast.crufty.net> 303 304 * install-mk (MK_VERSION): 20201001 305 306 * meta2deps.{py,sh}: throw an error if we don't see filemon version 307 3082020-09-09 Simon J Gerraty <sjg@beast.crufty.net> 309 310 * install-mk (MK_VERSION): 20200909 311 312 * dirdeps-cache-update.mk: use cache_update_dirdep as guard target 313 3142020-08-26 Simon J Gerraty <sjg@beast.crufty.net> 315 316 * dirdeps.mk: ensure we cannot confuse a static cache for dynamic 317 (even more rare that use of static cache is playing clever tricks 318 with it) 319 3202020-08-16 Simon J Gerraty <sjg@beast.crufty.net> 321 322 * dirdeps-cache-update.mk: allow 323 MK_STATIC_DIRDEPS_CACHE_UPDATE_IMMEDIATE to control when we 324 actually update STATIC_DIRDEPS_CACHE. 325 326 * stage-install.sh: create dest directory if needed 327 before running install(1) 328 3292020-08-10 Simon J Gerraty <sjg@beast.crufty.net> 330 331 * dirdeps-targets.mk: include Makefile.dirdeps.options 332 333 * dirdeps.mk: use _TARGETS if defined for DIRDEPS_CACHE 334 3352020-08-09 Simon J Gerraty <sjg@beast.crufty.net> 336 337 * dirdeps.mk: default BUILD_DIRDEPS_MAKEFILE to empty 338 339 * dirdeps-cache-update.mk: building parallel cache update 340 under the context of dirdeps-cached would be ideal, but 341 is problematic, so it runs as a sibling. 342 Use cache-built target to ensure we wait for it to complete if 343 necessary. 344 3452020-08-06 Simon J Gerraty <sjg@beast.crufty.net> 346 347 * install-mk (MK_VERSION): 20200806 348 349 * dirdeps-options: allow TARGET_SPEC to affect option values. 350 Use DIRDEPS_OPTIONS_QUALIFIER_LIST before using bare MK_* 351 352 * dirdeps-targets.mk: check for MK_STATIC_DIRDEPS_CACHE defined 353 before looking for STATIC_DIRDEPS_CACHE 354 3552020-08-05 Simon J Gerraty <sjg@beast.crufty.net> 356 357 * host-target.mk: Darwin use MACHINE for HOST_ARCH too 358 359 * dirdeps-options.mk: improve debug output 360 3612020-07-22 Simon J Gerraty <sjg@beast.crufty.net> 362 363 * dirdeps.mk: set and export DYNAMIC_DIRDEPS_CACHE 364 for use by dirdeps-cache-update.mk 365 366 * dirdeps-targets.mk: set and export STATIC_DIRDEPS_CACHE 367 for use by dirdeps-cache-update.mk even if we don't use it. 368 369 * dirdeps-cache-update.mk: we only need worry about the background 370 update case, with the above, the update from DIRDEPS_CACHE is 371 simple. 372 373 * meta2deps.py: R 1234 . is not interesting 374 3752020-07-20 Simon J Gerraty <sjg@beast.crufty.net> 376 377 * sys.mk: default MK_STATIC_DIRDEPS_CACHE from MK_DIRDEPS_CACHE 378 379 * dirdeps-options.mk: do not :tu DIRDEPS_OPTIONS 380 allows use of lower case for pseudo options. 381 382 * dirdeps-cache-update.mk: magic to deal with STATIC_DIRDEPS_CACHE 383 3842020-07-18 Simon J Gerraty <sjg@beast.crufty.net> 385 386 * dirdeps-targets.mk: Look for Makefile.dirdeps.cache 387 which allows us to have a static cache for expensive targets. 388 Use -DWITHOUT_STATIC_DIRDEPS_CACHE -DWITH_DIRDEPS_CACHE 389 to regenerate the dirdeps.cache it is a copy of. 390 3912020-07-17 Simon J Gerraty <sjg@beast.crufty.net> 392 393 * Get rid of BUILD_AT_LEVEL0, MK_DIRDEPS_BUILD makes more sense. 394 3952020-07-16 Simon J Gerraty <sjg@beast.crufty.net> 396 397 * dirdeps.mk (DIRDEP_LOADAVG_REPORT): make it easy to record 398 load averages at intervals during build. 399 4002020-07-15 Simon J Gerraty <sjg@beast.crufty.net> 401 402 * install-mk (MK_VERSION): 20200715 403 404 * dirdeps.mk: tweak Checking line to make matching Finished 405 lines for post-build analysis easier. 406 407 * meta.autodep.mk: use !defined(WITHOUT_META_STATS) 408 409 * progs.mk: avoid prog.mk outputting multiple Finished lines 410 4112020-07-11 Simon J Gerraty <sjg@beast.crufty.net> 412 413 * dirdeps.mk: further optimize dirdeps.cache 414 generate a DIRDEPS.${.TARGET} list for other purposes 415 and improve the layout. 416 4172020-07-10 Simon J Gerraty <sjg@beast.crufty.net> 418 419 * dirdeps.mk: optimize content of dirdeps.cache 420 4212020-06-28 Simon J Gerraty <sjg@beast.crufty.net> 422 423 * sys/*.mk: make it easier for local*sys.mk to customize by 424 using ?= 425 4262020-06-22 Simon J Gerraty <sjg@beast.crufty.net> 427 428 * gendirdeps.mk (LOCAL_DEPENDS_GUARD): if we don't build at level 0 429 it is much safer to guard local depends with a simple check for 430 .MAKE.LEVEL > 0 431 4322020-06-10 Simon J Gerraty <sjg@beast.crufty.net> 433 434 * install-mk (MK_VERSION): 20200610 435 436 * mkopt.sh: this needs posix shell so #!/bin/sh should be ok 437 4382020-06-06 Simon J Gerraty <sjg@beast.crufty.net> 439 440 * install-mk (MK_VERSION): 20200606 441 442 * dirdeps-targets.mk: allow for filtering of .TARGETS 443 444 * meta2deps.py: fix bug in processing 'L'ink and 'M'ove 445 entries - and we don't care about 'W'rite entries. 446 Also ignore absolute paths that do not exist. 447 4482020-05-25 Simon J Gerraty <sjg@beast.crufty.net> 449 450 * install-mk (MK_VERSION): 20200525 451 452 * init.mk: expand and simplify handling of qualified vars 453 like CPPFLAGS.${.TARGET:T} 454 4552020-05-15 Simon J Gerraty <sjg@beast.crufty.net> 456 457 * install-mk (MK_VERSION): 20200515 458 459 * dirdeps.mk: set _debug_* earlier and allow passing -d* 460 flags to submake when building DIRDEPS_CACHE 461 4622020-05-09 Simon J Gerraty <sjg@beast.crufty.net> 463 464 * whats.mk: more easily extensible 465 4662020-05-02 Simon J Gerraty <sjg@beast.crufty.net> 467 468 * whats.mk: greatly simplify by adding what.c to SRCS 469 4702020-05-01 Simon J Gerraty <sjg@beast.crufty.net> 471 472 * whats.mk: for libs take care how we add to *OBJS 473 474 * lib.mk: : works better with whats.mk 475 4762020-04-25 Simon J Gerraty <sjg@beast.crufty.net> 477 478 * install-mk (MK_VERSION): 20200420 479 480 * meta.stage.mk: it is not a STAGE_CONFLICT if some-target.dirdep 481 contains the same ${RELDIR} and a prefix match for our ${TARGET_SPEC} 482 4832020-04-16 Simon J Gerraty <sjg@beast.crufty.net> 484 485 * install-mk (MK_VERSION): 20200416 486 487 * sys/*.mk: set MAKE_SHELL rather than SHELL so as not to 488 interfere with user env. 489 490 * sys.mk: default MAKE_SHELL to sh and SHELL to MAKE_SHELL 491 492 * autodep.mk: use MAKE_SHELL. 493 4942019-11-21 Simon J Gerraty <sjg@beast.crufty.net> 495 496 * gendirdeps.mk: clear .SUFFIXES to avoid a lot of 497 wasted effort, and unexport _meta_files when no longer needed as 498 it consumes space we need for command line. 499 5002019-11-11 Simon J Gerraty <sjg@beast.crufty.net> 501 502 * dirdeps.mk _DIRDEP_USE: use DIRDEP_DIR and add 503 DIRDEP_USE_PRELUDE at start - facilitates job distribution 504 5052019-10-04 Simon J Gerraty <sjg@beast.crufty.net> 506 507 * dirdeps-targets.mk: Use TARGET_SPEC_LAST_LIST 508 defaults to ${${TARGET_SPEC_VARS:[-1]}_LIST} to match valid 509 TARGET_SPEC qualified depend files. 510 5112019-10-02 Simon J Gerraty <sjg@beast.crufty.net> 512 513 * dirdeps-targets.mk: encapsulate logic for finding top-level 514 targets to set initial DIRDEPS for DIRDEPS_BUILD 515 5162019-09-27 Simon J Gerraty <sjg@beast.crufty.net> 517 518 * install-mk (MK_VERSION): 20190911 519 520 * compiler.mk: set COMPILER_TYPE 521 5222019-07-17 Simon J Gerraty <sjg@beast.crufty.net> 523 524 * install-mk (MK_VERSION): 20190704 525 526 * sys/Darwin.mk: support for Objective-C and clang 527 5282019-05-30 Simon J Gerraty <sjg@beast.crufty.net> 529 530 * dirdeps.mk: avoid insanely long command line when generating cache 531 5322019-05-23 Simon J Gerraty <sjg@beast.crufty.net> 533 534 * install-mk (MK_VERSION): 20190505 535 536 * whats.mk: handle corner case SHLIB defined but not LIB 537 5382018-09-19 Simon J Gerraty <sjg@beast.crufty.net> 539 540 * install-mk (MK_VERSION): 20180919 541 542 * dirdeps-options.mk: .undef cannot handle var that expands to 543 more than one var. 544 5452018-07-08 Simon J Gerraty <sjg@beast.crufty.net> 546 547 * meta.stage.mk: allow wildcards in STAGE_FILES.* etc. 548 5492018-06-01 Simon J Gerraty <sjg@beast.crufty.net> 550 551 * meta.autodep.mk: export META_FILES to avoid command line limit 552 * gendirdeps.mk: if we have lots of .meta files put them in 553 an @list 554 5552018-05-28 Simon J Gerraty <sjg@beast.crufty.net> 556 557 * dirdeps-options.mk: use local.dirdeps-options.mk 558 not local.dirdeps-option.mk 559 5602018-04-20 Simon J Gerraty <sjg@beast.crufty.net> 561 562 * install-mk (MK_VERSION): 20180420 563 * dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0 564 ie. we are building something. 565 5662018-04-14 Simon J Gerraty <sjg@beast.crufty.net> 567 568 * FILES: add dirdeps-options.mk to deal with optional DIRDEPS. 569 5702018-04-05 Simon J Gerraty <sjg@beast.crufty.net> 571 572 * install-mk (MK_VERSION): 20180405 573 574 * ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER 575 if needed. 576 5772018-01-18 Simon J Gerraty <sjg@beast.crufty.net> 578 579 * install-mk (MK_VERSION): 20180118 580 581 * ldorder.mk: let make compute correct link order 582 5832017-12-12 Simon J Gerraty <sjg@beast.crufty.net> 584 585 * install-mk (MK_VERSION): 20171212 586 587 * gendirdeps.mk: guard against bogus entries in GENDIRDEPS_FILTER 588 5892017-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 590 591 * install-mk (MK_VERSION): 20171111 592 593 * lib.mk: ensure META_NOECHO is set 594 5952017-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 596 597 * Allow for host32 on rare occasions. 598 5992017-10-18 Simon J. Gerraty <sjg@bad.crufty.net> 600 601 * install-mk (MK_VERSION): 20171018 602 603 * whats.mk: include what_thing in what_uuid to avoid problem 604 when building multiple apps in the same directory. 605 6062017-08-12 Simon J. Gerraty <sjg@bad.crufty.net> 607 608 * install-mk (MK_VERSION): 20170812 609 610 * autoconf.mk: Use CONFIGURE_DEPS so Makefile can 611 add dependencies for config.recheck and config.gen 612 6132017-06-30 Simon J. Gerraty <sjg@bad.crufty.net> 614 615 * install-mk (MK_VERSION): 20170630 616 617 * meta.stage.mk: avoid triggering stage_* targets with nothing to do. 618 6192017-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 620 621 * meta2deps.py: take special care of '..' 622 6232017-05-15 Simon J. Gerraty <sjg@bad.crufty.net> 624 625 * install-mk (MK_VERSION): 20170515 626 627 * dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is 628 useful/necessary for a Makefile.depend file to export some knobs. 629 This is complicated when we are doing DIRDEPS_CACHE, so we will 630 handle export of any variables listed in DEP_EXPORT_VARS. 631 6322017-05-08 Simon J. Gerraty <sjg@bad.crufty.net> 633 634 * install-mk (MK_VERSION): 20170505 635 636 * meta2deps.py: fix botched indenation. 637 6382017-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 639 640 * sys/*.mk: Remove setting of MAKE it is unnecessary and 641 in many cases wrong (basname rather than full path) 642 643 * scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk 644 645 * init.mk: define realbuild to simplify logic in {lib,prog}.mk etc 646 6472017-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 648 649 * install-mk (MK_VERSION): 20170501 650 651 * doc.mk: fix typo in DOC_INSTALL_OWN 652 653 * inc.mk: handle INCGROUPS similar to freebsd 654 655 * files.mk: add something for files too 656 657 * add staging logic to lib.mk prog.mk etc. 658 6592017-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 660 661 * install-mk (MK_VERSION): 20170424 662 663 * dirdeps.mk: set NO_DIRDEPS when bootstrapping. 664 also target of bootstrap-this when sed is needed should be ${_want:T} 665 6662017-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 667 668 * install-mk (MK_VERSION): 20170418 669 670 * auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a 671 prefix match for .CURDIR - in which case .CURDIR *is* __objdir. 672 6732017-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 674 675 * install-mk (MK_VERSION): 20170401 676 677 * meta2deps.py: add is_src so we can check if obj dependency 678 is also a src dependency. 679 6802017-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 681 682 * install-mk (MK_VERSION): 20170326 683 684 * meta.stage.mk: do nothing if NO_STAGING is defined. 685 6862017-03-24 Simon J. Gerraty <sjg@bad.crufty.net> 687 688 * auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc. 689 6902017-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 691 692 * mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_* 693 6942017-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 695 696 * install-mk (MK_VERSION): 20170301 697 698 * dirdeps.mk (_build_all_dirs): update this outside test for empty 699 DIRDEPS. 700 701 * meta.stage.mk: allow multiple inclusion to the extent it makes 702 sense. 703 7042017-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 705 706 * prog.mk (install_links): depends on realinstall 707 7082017-02-12 Simon J. Gerraty <sjg@bad.crufty.net> 709 710 * install-mk (MK_VERSION): 20170212 711 712 * dpadd.mk: avoid applying :T:R twice to DPLIBS entries 713 7142017-01-30 Simon J. Gerraty <sjg@bad.crufty.net> 715 716 * install-mk (MK_VERSION): 20170130 717 718 * dirdeps.mk: use :range if we can. 719 720 * sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130 721 722 * meta2deps.py: clean paths without using realpath() where possible. 723 fix sort_unique. 724 7252016-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 726 727 * install-mk (MK_VERSION): 20161212 728 729 * meta2deps.py: set pid_cwd[pid] when we process 'C'hdir, 730 rather than when we detect pid change. 731 7322016-12-07 Simon J. Gerraty <sjg@bad.crufty.net> 733 734 * install-mk (MK_VERSION): 20161207 735 736 * meta.stage.mk: add stage_as_and_symlink for staging packages. 737 We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able 738 to use foo.tgz to reference the latest staged version - so we 739 make foo.tgz a symlink to it. 740 Using a target to do both operations ensures we stay in sync. 741 7422016-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 743 744 * install-mk (MK_VERSION): 20161126 745 746 * dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk 747 so it can add dependencies. 748 7492016-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 750 751 * dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE 752 do that they can influence the result correctly. 753 754 * dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC 755 756 * dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST 757 similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST 758 7592016-10-05 Simon J. Gerraty <sjg@bad.crufty.net> 760 761 * dirdeps.mk: remove dependence on jot (normal situations anyway). 762 Before we read another Makefile.depend* set DEP_* vars from 763 _DEP_TARGET_SPEC in case it uses any of them with := 764 When bootstrapping, trim any ,* from extention of chosen _src 765 Makefile.depend* to get the machine value we subst for. 766 7672016-09-30 Simon J. Gerraty <sjg@bad.crufty.net> 768 769 * dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to 770 DEP_SKIP_DIR and DEP_DIRDEPS_FILTER 771 772 * sys.mk: extract some bits to sys.{debug,vars}.mk 773 for easier re-use by others. 774 7752016-09-23 Simon Gerraty <sjg@sjg-mba13> 776 777 * lib.mk: Use ${PICO} for extension for PIC objects. 778 default to .pico (like NetBSD) safe on case insensitive filesystem. 779 7802016-08-19 Simon J. Gerraty <sjg@bad.crufty.net> 781 782 * meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default 783 7842016-08-15 Simon J. Gerraty <sjg@bad.crufty.net> 785 786 * install-mk (MK_VERSION): 20160815 787 788 * dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only 789 consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date. 790 7912016-08-13 Simon J. Gerraty <sjg@bad.crufty.net> 792 793 * meta.sys.mk (.MAKE.META.IGNORE_PATHS): 794 in meta mode we can ignore the mtime of makefiles 795 7962016-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 797 798 * install-mk (MK_VERSION): 20160802 799 800 * lib.mk (libinstall): depends on beforinstall 801 802 * prog.mk (proginstall): depends on beforinstall 803 patch from Lauri Tirkkonen 804 805 * dirdeps.mk (bootstrap): When bootstrapping; creat 806 .MAKE.DEPENDFILE_DEFAULT and allow additional filtering via 807 .MAKE.DEPENDFILE_BOOTSTRAP_SED 808 809 * dirdeps.mk: move some comments to where they make sense. 810 8112016-07-27 Simon J. Gerraty <sjg@bad.crufty.net> 812 813 * dirdeps.mk (DIRDEPS_CACHE): no dirname. 814 8152016-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 816 817 * install-mk (MK_VERSION): 20160602 818 * meta.autodep.mk: when passing META_FILES to gendirdeps.mk 819 do not apply :T to META_XTRAS 820 patch from Bryan Drewery at FreeBSD.org. 821 8222016-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 823 824 * install-mk (MK_VERSION): 20160530 825 * meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH 826 make it so. 827 8282016-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 829 830 * install-mk (MK_VERSION): 20160512 831 832 * dpadd.mk: always include local.dpadd.mk if it exists 833 remove some things that better belong in local.dpadd.mk 834 skip INCLUDES_* for staged libs unless SRC_* defined. 835 836 * own.mk: add INCLUDEDIR 837 8382016-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 839 840 * dirdeps.mk: when doing -f dirdeps.mk if target suppies no 841 TARGET_MACHINE - :E will be empty or match part of path, use 842 ${MACHINE} 843 8442016-04-07 Simon J. Gerraty <sjg@bad.crufty.net> 845 846 * meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to 847 NO_FILEMON_COOKIE 848 849 * dirdeps.mk: move the logic that allows for 850 make -f dirdeps.mk some/dir.${TARGET_SPEC} 851 inside the check for !target(_DIRDEP_USE) 852 8532016-04-04 Simon J. Gerraty <sjg@bad.crufty.net> 854 855 * Use <> when including local*.mk and others which may exist 856 elsewhere so that user can better control what they get. 857 858 * meta.autodep.mk (NO_FILEMON_COOKIE): 859 create a cookie if we ever build dir with nofilemon 860 so that UPDATE_DEPENDFILE will be forced to NO until cleaned. 861 8622016-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 863 864 * install-mk (MK_VERSION): 20160401 865 866 * meta2deps.py: fix old print statement when debugging. 867 868 * gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X 869 patch from Bryan Drewery 870 8712016-03-22 Simon J. Gerraty <sjg@bad.crufty.net> 872 873 * install-mk (MK_VERSION): 20160317 (St. Pats) 874 875 * warnings.mk: g++ does not like -Wimplicit 876 877 * sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the 878 pelthora of common suffixes for C++ 879 880 * lib.mk: use .So for shared objects 881 8822016-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 883 884 * install-mk (MK_VERSION): 20160315 885 886 * meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1) 887 normally only applies to scripts. 888 889 * dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as 890 well as outside it. 891 8922016-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 893 894 * install-mk (MK_VERSION): 20160310 895 896 * dirdeps.mk: use targets rather than a list to track DIRDEPS that 897 we have processed; the list gets very inefficient as number of 898 DIRDEPS gets large. 899 900 * sys.dependfile.mk: fix comment wrt MACHINE 901 902 * meta.autodep.mk: ignore staged DPADDs when bootstrapping. 903 patch from Bryan Drewery 904 9052016-03-02 Simon J. Gerraty <sjg@bad.crufty.net> 906 907 * meta2deps.sh: don't ignore subdirs. 908 patch from Bryan Drewery 909 9102016-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 911 912 * install-mk (MK_VERSION): 20160226 913 914 * gendirdeps.mk: mark _DEPENDFILE .NOMETA 915 9162016-02-20 Simon J. Gerraty <sjg@bad.crufty.net> 917 918 * dirdeps.mk: we shouldn't normally include .depend but if we do 919 use .dinclude if we can. 920 9212016-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 922 923 * install-mk (MK_VERSION): 20160218 924 * sys.clean-env.mk: with recent change to Var_Subst() 925 we cannot use the '$$' trick, but .export-literal does the job 926 we need. 927 * auto.dep.mk: make use .dinclude if we can. 928 929 9302016-02-05 Simon J. Gerraty <sjg@bad.crufty.net> 931 932 * dirdeps.mk: 933 Add _build_all_dirs such that local.dirdeps.mk can 934 add fully qualified dirs to it. 935 These will be built normally but the current 936 DEP_RELDIR will not depend on then (to avoid cycles). 937 This makes it easy to hook things like unit-tests into build. 938 939 9402016-01-21 Simon J. Gerraty <sjg@bad.crufty.net> 941 942 * dirdeps.mk: add bootstrap-empty 943 9442015-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 945 946 * install-mk (MK_VERSION): 20151212 947 * auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist. 948 only apply :tA to __objdir when comparing to .OBJDIR 949 9502015-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 951 952 * install-mk (MK_VERSION): 20151111 953 954 * meta.sys.mk: include sys.dependfile.mk 955 956 * sys.mk (OPTIONS_DEFAULT_NO): use options.mk 957 to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD 958 include local.sys.env.mk early 959 include local.sys.mk later 960 961 * own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk 962 9632015-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 964 965 * meta.sys.mk (META_COOKIE_TOUCH): 966 add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie 967 968 * meta.stage.mk: stage_libs should ignore SYMLINKS. 969 9702015-10-23 Simon J. Gerraty <sjg@bad.crufty.net> 971 972 * install-mk (MK_VERSION): 20151022 973 974 * sys.mk: BSD/OS does not have 'type' as a shell builtin. 975 9762015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 977 978 * install-mk (MK_VERSION): 20151020 979 980 * dirdeps.mk: Add logic for 981 make -f dirdeps.mk some/dir.${TARGET_SPEC} 982 9832015-10-14 Simon J. Gerraty <sjg@bad.crufty.net> 984 985 * install-mk (MK_VERSION): 20151010 986 9872015-10-02 Simon J. Gerraty <sjg@bad.crufty.net> 988 989 * meta.stage.mk: use staging: ${STAGE_TARGETS:... 990 to have stage_lins run last in non-jobs mode. 991 Use .ORDER only for jobs mode. 992 9932015-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 994 995 * rst2htm.mk: allow for per target flags etc. 996 9972015-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 998 999 * install-mk (MK_VERSION): 20150901 1000 1001 * doc.mk: create dir if needed use DOC_INSTALL_OWN 1002 10032015-06-15 Simon J. Gerraty <sjg@bad.crufty.net> 1004 1005 * install-mk (MK_VERSION): 20150615 1006 1007 * auto.obj.mk: allow use of MAKEOBJDIRPREFIX too. 1008 Follow make's normal precedence rules. 1009 1010 * gendirdeps.mk: allow customization of the header. 1011 eg. for FreeBSD: 1012 GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}'; 1013 1014 * meta.autodep.mk: ignore dirdeps.cache* 1015 1016 * meta.stage.mk: when bootstrapping options it can be handy to 1017 throw warnings rather than errors for staging conflicts. 1018 1019 * meta.sys.mk: include local.meta.sys.mk for customization 1020 10212015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 1022 1023 * install-mk (MK_VERSION): 20150606 1024 1025 * dirdeps.mk: don't rely on manually maintained Makefile.depend 1026 to set DEP_RELDIR and reset DIRDEPS. 1027 By setting DEP_RELDIR ourselves we can skip :tA 1028 1029 * gendirdeps.mk: skip setting DEP_RELDIR. 1030 10312015-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 1032 1033 * dirdeps.mk: avoid wildcards like make(bootstrap*) 1034 10352015-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 1036 1037 * install-mk (MK_VERSION): 20150520 1038 1039 * dirdeps.mk: when we are building dirdeps cache file we *want* 1040 meta_oodate to look at all the Makefile.depend files, so 1041 set .MAKE.DEPENDFILE to something that won't match. 1042 1043 * meta.stage.mk: for STAGE_AS_* basename of file may not be unique 1044 so first use absolute path as key. 1045 Also skip staging at level 0. 1046 10472015-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 1048 1049 * install-mk (MK_VERSION): 20150430 1050 1051 * dirdeps.mk: fix _count_dirdeps for non-cache case. 1052 10532015-04-16 Simon J. Gerraty <sjg@bad.crufty.net> 1054 1055 * install-mk (MK_VERSION): 20150411 1056 bump version 1057 1058 * own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES. 1059 it is here mainly for documentation purposes, since 1060 if using auto.obj.mk it is better done via sys.mk 1061 10622015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 1063 1064 * install-mk (MK_VERSION): 20150401 1065 1066 * meta2deps.sh: support @list 1067 1068 * meta2deps.py: updates from Juniper 1069 o add EXCLUDES 1070 o skip bogus input files. 1071 o treat 'M' and 'L' as both an 'R' and a 'W' 1072 10732015-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1074 1075 * install-mk (MK_VERSION): 20150303 1076 1077 * dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache 1078 which is built via sub-make so we have a .meta file to tell if 1079 it is out-of-date. 1080 The dirdeps-cache contains the same dependency rules that we 1081 normaly construct on the fly. 1082 This adds a few seconds overhead when the cache is out of date, 1083 but for a large target, the savings can be significant (10-20min). 1084 10852014-11-18 Simon J. Gerraty <sjg@bad.crufty.net> 1086 1087 * install-mk (MK_VERSION): 20141118 1088 1089 * meta.stage.mk: add stale_staged 1090 1091 * dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked 1092 only useful under very rare conditions such as 1093 FreeBSD's make universe. 1094 1095 * auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto 1096 10972014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1098 1099 * install-mk (MK_VERSION): 20141111 1100 1101 * mkopt.sh: use consistent semantics for _mk_opt and _mk_opts 1102 11032014-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 1104 1105 * FILES: include mkopt.sh which allows handling options in shell 1106 scripts in a manner compatible with options.mk 1107 11082014-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1109 1110 * meta.stage.mk: ensure only _STAGED_DIRS under objroot are used 1111 for GENDIRDEPS_FILTER to avoid surprises. 1112 11132014-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1114 1115 * dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by 1116 the time it is applied to __depdirs they have. 1117 1118 * dirdeps.mk fix filtering of _machines since M_dep_qual_fixes 1119 expects patterns like *.${MACHINE} 1120 1121 * cython.mk (pyprefix?): use pyprefix to find python bits 1122 since prefix might be something else (where we install our 1123 stuff) 1124 11252014-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 1126 1127 * install-mk (MK_VERSION): 20140911 1128 1129 * dirdeps.mk: add bootstrap target to simplify adding support for 1130 new MACHINE. 1131 11322014-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 1133 1134 * gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and 1135 GENDIRDEPS_FILTER_VARS to make it easier to produce sharable 1136 Makefile.depend files. 1137 11382014-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 1139 1140 * install-mk (MK_VERSION): 20140828 1141 1142 * cython.mk: capture logic for building python extension modules 1143 with Cython. 1144 11452014-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1146 1147 * meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant 1148 11492014-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 1150 1151 * install-mk (MK_VERSION): 20140801 1152 1153 * dep.mk: use explicit MKDEP_MK rather than overload MKDEP to 1154 identify the autodep.mk variant. 1155 1156 * sys.dependfile.mk: delete .MAKE.DEPENDFILE if its 1157 initial value does not match .MAKE.DEPENDFILE_PREFIX 1158 1159 * meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS 1160 11612014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 1162 1163 * install-mk (MK_VERSION): 20140522 1164 1165 * lib.mk: use CC to link shlib for linux too 1166 patch from Brendan MacDonell 1167 11682014-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 1169 1170 * meta.autodep.mk: add _reldir_{finish,failed} for gathering stats 1171 if WITH_META_STATS is defined. 1172 11732014-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1174 1175 * dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS) 1176 to supress dirdeps outside of .CURDIR. 1177 11782014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 1179 1180 * Fix spelling errors - patch from Pedro Giffuni 1181 11822014-03-14 Simon J. Gerraty <sjg@bad.crufty.net> 1183 1184 * install-mk (MK_VERSION): 20140314 1185 1186 * dirdeps.mk (beforedirdeps): a handy hook 1187 1188 * dirdeps.mk (DIRDEP_MAKE): allow the actual command we run 1189 to visit leaf dirs to be intercepted (eg. for distributed 1190 build). 1191 1192 * dirdeps.mk (__depdirs): ensure // don't sneak in 1193 1194 * gendirdeps.mk (DIRDEPS): ensure // don't sneak in 1195 1196 11972014-02-21 Simon J. Gerraty <sjg@bad.crufty.net> 1198 1199 * rst2htm.mk (RST2PDF): add support for rst2pdf 1200 12012014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1202 1203 * install-mk (MK_VERSION): bump version 1204 * dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if 1205 available. 1206 12072014-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1208 1209 * options.mk: avoid :U so this isn't bmake dependent 1210 12112014-02-09 Simon J. Gerraty <sjg@bad.crufty.net> 1212 1213 * options.mk: cleanup and simplify semanitcs 1214 NO_* dominates all, if both WITH_* and WITHOUT_* 1215 are defined then result is DOMINATE_* which defaults to "no". 1216 Ie. WITHOUT_ normally wins. 1217 12182013-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 1219 1220 * install-mk (MK_VERSION): bump version 1221 * meta2deps.py: convert to print function for python3 compat. 1222 we also need to open files with mode 'r' rather than 'rb' 1223 otherwise we get bytes instead of strings. 1224 12252013-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1226 1227 * install-mk (MK_VERSION): bump version 1228 1229 * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE 1230 apply the same filtering (M_dep_qual_fixes) when setting _machines 1231 as _build_dirs. 1232 Also fix the filtering of Makefile.depend files - for reporting 1233 what we are looking for (M_dep_qual_fixes can get confused by 1234 Makefile.depend) 1235 Add some more debug info. 1236 12372013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 1238 1239 * gendirdeps.mk (_objtops): fix typo also 1240 while processing M2D_OBJROOTS to gather qualdir_list 1241 qualify $ql with loop iterator to ensure correct results. 1242 12432013-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1244 1245 * install-mk (MK_VERSION): 20130801 1246 * libs.mk: update to match progs.mk 1247 12482013-07-26 Simon J. Gerraty <sjg@bad.crufty.net> 1249 1250 * install-mk (MK_VERSION): 20130726 1251 some updates from Juniper and FreeBSD 1252 o meta2deps.py: indicate file and line number when we hit parse 1253 errors 1254 also allow @file to provide huge list of .meta files. 1255 * meta2deps.py: add try_parse() to cleanup the above. 1256 12572013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 1258 1259 * install-mk (MK_VERSION): 20130716 1260 * own.mk: add GPROG as an option 1261 * prog.mk: honor MK_GPROF==yes 1262 12632013-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 1264 1265 * install-mk (MK_VERSION): 20130505 1266 * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC 1267 for when $MACHINE isn't enough for objdir distinction. 1268 Bring meta2deps.sh closer to par with meta2deps.py. 1269 12702013-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 1271 1272 * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all' 1273 also if the target 'beforeinstall' exists, make it depend on 1274 .dirdep (incase it uses STAGE_INSTALL). 1275 12762013-04-17 Simon J. Gerraty <sjg@bad.crufty.net> 1277 1278 * install-mk (MK_VERSION): 20130401 ;-) 1279 * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as 1280 wrapper around install(1). 1281 * options.mk (OPTION_PREFIX): Allow a prefix other than MK_ 1282 12832013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1284 1285 * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized. 1286 * install-mk (MK_VERSION): bump version 1287 12882013-03-21 Simon J. Gerraty <sjg@bad.crufty.net> 1289 1290 * install-mk (MK_VERSION): bump version 1291 * gendirdeps.mk: do not apply :tA to DPADD entries, since we lose 1292 any trailing /., rather apply :tA only when needed. 1293 * gendirdeps.mk: better mimic meta2deps handling of .dirdep files. 1294 * meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance 1295 consistently. 1296 * dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC. 1297 12982013-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 1299 1300 * gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT 1301 it is simpler to just not update when say building for "host" 1302 (where we know we apply filters to DIRDEPS), and using a 1303 non-machine qualified dependfile. 1304 13052013-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1306 1307 * dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR 1308 and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC 1309 * gendirdeps.mk: ensure _objroot has trailing / if it needs it. 1310 * meta2deps.py: if machine is "host", then also trim 1311 self.host_target from any OBJROOTS. 1312 1313 13142013-03-11 Simon J. Gerraty <sjg@bad.crufty.net> 1315 1316 * gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine 1317 qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists 1318 but _DEPENDFILE does not, compare the new _DEPENDFILE against 1319 .MAKE.DEPENDFILE_DEFAULT and discard if the same. 1320 13212013-03-08 Simon J. Gerraty <sjg@bad.crufty.net> 1322 1323 * meta.stage.mk: use STAGE_TARGETS to control .ORDER 1324 and hook to all: via staging: 1325 13262013-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 1327 1328 * sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT): 1329 use a separate variable for the default .MAKE.DEPENDFILE value 1330 so that it can be controlled independently of 1331 .MAKE.DEPENDFILE_PREFERENCE 1332 1333 * meta.stage.mk: throw error if cp fails etc. 1334 Stage*() return early if passed no args. 1335 .ORDER stage_* 1336 13372013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1338 1339 * install-mk (MK_VERSION): bump version 1340 * gendirdeps.mk: handle multiple M2D_OBJROOTS better. 1341 13422013-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 1343 1344 * install-mk (MK_VERSION): bump version to 20130210 1345 * import latest dirdeps.mk, gendirdeps.mk and meta2deps.py 1346 from Juniper. 1347 o dirdeps.mk now fully supports TARGET_SPEC consisting of more 1348 than just MACHINE. 1349 o no longer use DEP_MACHINE from Makefile.depend* so remove it. 1350 13512013-01-23 Simon J. Gerraty <sjg@bad.crufty.net> 1352 1353 * install-mk (MK_VERSION): bump version to 20130123 1354 * meta.stage.mk: add stage_links (hard links). 1355 if doing hard links, we add dest to link as well. 1356 Default the stage dir for [sym]links to STAGE_OBJTOP since 1357 these are typically specified as absolute paths. 1358 Add -m "mode" flag to StageFiles and StageAs. 1359 13602012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 1361 1362 * install-mk (MK_VERSION): bump version to 20121111 1363 * autoconf.mk: avoid meta mode seeing changed commands for config.status 1364 * meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps 1365 in case we were found via .../mk 1366 * sys.clean-env.mk: move it from examples, we and others use it 1367 "as is". 1368 * FILES: add srctop.mk and options.mk 1369 * own.mk: convert to using options.mk 1370 which is modeled after FreeBSD's handling of MK_* 1371 but more flexible. 1372 This allows MK_* for boolean knobs to not be confused 1373 with MK* which can be commands. 1374 1375 * examples/sys.clean-env.mk: add WITH[OUT]_ to 1376 MAKE_ENV_SAVE_PREFIX_LIST. 1377 Mention that HOME=/var/empty might be a good idea. 1378 13792012-11-08 Simon J. Gerraty <sjg@bad.crufty.net> 1380 1381 * sys.dependfile.mk: if not depend file exists, $MACHINE 1382 specific ones are supported but not the default, 1383 check if any exist and follow suit. 1384 13852012-11-06 Simon J. Gerraty <sjg@bad.crufty.net> 1386 1387 * install-mk (MK_VERSION): bump version to 20121106 1388 13892012-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 1390 1391 * import latest dirdeps.mk and meta2deps.py from Juniper. 1392 * progs.mk: add MAN and CXXFLAGS to PROG_VARS 1393 also add PROGS_TARGETS and pass on PROG_CXX if it seems 1394 appropriate. 1395 13962012-11-04 Simon J. Gerraty <sjg@bad.crufty.net> 1397 1398 * meta.stage.mk: update CLEANFILES 1399 remove redundant cp of .dirdep from STAGE_AS_SCRIPT. 1400 * progs.mk: Add LDADD to PROG_VARS 1401 14022012-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 1403 1404 * meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in 1405 _STAGED_DIRS so that these can be turned into filters for 1406 GENDIRDEPS_FILTER. 1407 14082012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1409 1410 * install-mk (MK_VERSION): bump version to 20121010 1411 * meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing 1412 target.dirdep matches .dirdep 1413 14142012-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1415 1416 * install-mk (MK_VERSION): bump version to 20120808 1417 * import latest meta2deps.py from Juniper. 1418 14192012-07-11 Simon J. Gerraty <sjg@bad.crufty.net> 1420 1421 * install-mk (MK_VERSION): bump version to 20120711 1422 * dep.mk: add explicit dependencies on SRCS after applying 1423 SRCS_DEP_FILTER 1424 * meta.autodep.mk: add explicit dependencies on SRCS after 1425 applying SRCS_DEP_FILTER 1426 * meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed. 1427 14282012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 1429 1430 * install-mk (MK_VERSION): bump version to 20120626 1431 * meta.sys.mk: ignore PYTHON if it does not exist 1432 compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable. 1433 * meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any 1434 entries ending in .${MACHINE} to decide if qualified _dirdep is 1435 needed. 1436 * gendirdeps.mk: only produce unqualified deps if no 1437 .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE} 1438 * meta.subdir.mk: apply SUBDIRDEPS_FILTER 1439 14402012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 1441 1442 * install-mk (MK_VERSION): bump version to 20120420 1443 * add sys.dependfile.mk so we can experiment with 1444 .MAKE.DEPENDFILE_PREFERENCE 1445 * meta.autodep.mk: _DEPENDFILE is precious! 1446 14472012-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 1448 1449 * install-mk (MK_VERSION): bump version to 20120315 1450 * install-new.mk: avoid being interrupted 1451 14522012-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 1453 1454 * man.mk: MAN might have multiple values so be careful with exists(). 1455 14562012-01-19 Simon J. Gerraty <sjg@bad.crufty.net> 1457 1458 * install-mk (MK_VERSION): bump version to 20120112 1459 * fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled 1460 as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}' 1461 14622011-12-03 Simon J. Gerraty <sjg@bad.crufty.net> 1463 1464 * install-mk (MK_VERSION): bump version to 20111201 1465 * import dirdeps.mk from Juniper sjg@ 1466 o more consistent handling of DEP_MACHINE, especially when 1467 dealing with an odd Makefile.depend, when normally using 1468 Makefile.depend.${MACHINE} 1469 14702011-11-22 Simon J. Gerraty <sjg@bad.crufty.net> 1471 1472 * install-mk (MK_VERSION): bump version to 20111122 1473 * meta.autodep.mk: add some debug output, be more crisp about 1474 updating. Use ${.ALLTARGETS:M*.o} as a clue for .depend 1475 14762011-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 1477 1478 * install-mk (MK_VERSION): bump version to 20111111 1479 it's too cool to miss 1480 * import meta* updates from Juniper sjg@ 1481 o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are 1482 normally using Makefile.depend.${MACHINE}), handy for 1483 read-only manually maintained dependencies. 1484 o meta2deps.py add a clear 'ERROR:' token if an exception is raised. 1485 o gendirdeps.mk if ERROR: from meta2deps.py do not update 1486 anything. 1487 14882011-10-30 Simon J. Gerraty <sjg@bad.crufty.net> 1489 1490 * install-new.mk separate the cmp and copy logic to its own function. 1491 14922011-10-28 Simon J. Gerraty <sjg@bad.crufty.net> 1493 1494 * install-mk (MK_VERSION): bump version to 20111028 1495 * sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto 1496 * subdir.mk: ensure _SUBDIRUSE is provided 1497 * meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk 1498 * meta.subdir.mk: always allow for Makefile.depend 1499 15002011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 1501 1502 * install-mk (MK_VERSION): bump version to 20111010 1503 o minor tweak to *dirdeps.mk from Juniper sjg@ 1504 15052011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 1506 1507 * install-mk (MK_VERSION): bump version to 20111001 1508 o add meta2deps.py from Juniper sjg@ 1509 o tweak gendirdeps.mk to work with meta2deps.py when not 1510 cross-building 1511 * autoconf.mk: add autoconf-input as a hook for regenerating 1512 AUTOCONF_INPUTS (configure). 1513 15142011-08-24 Simon J. Gerraty <sjg@bad.crufty.net> 1515 1516 * meta.autodep.mk: if we do not have OBJS, .depend isn't a useful 1517 trigger for updating Makefile.depend* 1518 15192011-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 1520 1521 * install-mk (MK_VERSION): bump version to 20110808 1522 * obj.mk: minor cleanup 1523 * auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too. 1524 15252011-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 1526 1527 * auto.obj.mk (.OBJDIR): throw an error if we cannot use the 1528 specified dir. 1529 15302011-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 1531 1532 * meta.autodep.mk: if XMAKE_META_FILE is set 1533 the makefile uses a foreign make, and so dependencies 1534 can only be gathered from a clean tree build. 1535 15362011-06-24 Simon J. Gerraty <sjg@bad.crufty.net> 1537 1538 * install-mk (MK_VERSION): bump version to 20110622 1539 * meta.autodep.mk: improve bootstraping 1540 15412011-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1542 1543 * yacc.mk: handle the corner case of .c being removed 1544 while .h remains. 1545 15462011-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1547 1548 * yacc.mk: do .y.h and .y.c separately 1549 15502011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 1551 1552 * install-mk (MK_VERSION): bump version to 20110606 1553 * don't store SRC_DIRDEPS in Makefile.depend* by default 1554 not everyone needs it. 1555 15562011-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1557 1558 * install-mk (MK_VERSION): bump version to 20110505 1559 first release including meta mode makefiles 1560 15612011-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 1562 1563 * meta.stage.mk: add STAGE_AS_SETS and stage_as 1564 for things that need to be staged with different names. 1565 15662011-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 1567 1568 * meta.stage.mk: add notion of STAGE_SETS 1569 so a makefile can stage to multiple dirs 1570 15712011-04-03 Simon J. Gerraty <sjg@bad.crufty.net> 1572 1573 * rst2htm.mk: convert rst to s5 (slides) or plain html depending 1574 on target name. 1575 15762011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 1577 1578 * install-mk (MK_VERSION): bump version to 20110330 1579 15802011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 1581 1582 * sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0 1583 can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest. 1584 * sys.mk: re-define M_whence in terms of M_type. 1585 M_type is useful for checking if something is a builtin. 1586 15872011-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 1588 1589 * meta.stage.mk: add stage_symlinks and leverage StageLinks for 1590 stage_libs 1591 15922011-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 1593 1594 * dirdeps.mk: correct value for _depdir_files depends on 1595 .MAKE.DEPENDFILE 1596 Add our copyright - just to make it clear we have frobbed this 1597 quite a bit. 1598 DEP_MACHINE needs to be set to MACHINE each time, if using only 1599 Makefile.depend (cf. Makefile.depend.${MACHINE}) 1600 1601 * meta.stage.mk: meta mode version of staging 1602 1603 * init.mk, final.mk: include local.*.mk to simplify customization 1604 16052011-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 1606 1607 * auto.obj.mk: just because we are doing mk destroy, we should 1608 still set .OBJDIR correctly if it exists. 1609 1610 * install-mk (mksrc): do not exclude meta.sys.mk 1611 16122011-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 1613 1614 * host-target.mk: set/export _HOST_ARCH etc separately, 1615 catch junk resulting from uname -p, so we can find sys/Linux.mk 1616 correctly. 1617 16182011-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 1619 1620 * meta.sys.mk: throw an error if /dev/filemon is missing and we 1621 expected to be updating Makefile.depend* 1622 16232011-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 1624 1625 * install-mk (MK_VERSION): bump version to 20110214 1626 * meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES 1627 16282010-09-25 Simon J. Gerraty <sjg@bad.crufty.net> 1629 1630 * meta.sys.mk: not valid for older bmake 1631 16322010-09-24 Simon J. Gerraty <sjg@bad.crufty.net> 1633 1634 * install-mk (MK_VERSION): bump version to 20100919 1635 include dirdeps.mk et al from Juniper Networks, 1636 for meta mode - requires filemon(9). 1637 * sys.mk, subdir.mk: Add hooks for meta mode. 1638 we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk 1639 to make turning it on/off simple. 1640 16412010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 1642 1643 * install-mk (MK_VERSION): bump version to 20100616 1644 * fix typo in sys.mk 1645 16462010-06-12 Simon J. Gerraty <sjg@bad.crufty.net> 1647 1648 * install-mk (MK_VERSION): bump version to 20100612 1649 * lib.mk: remove duplicate addition to SOBJS 1650 16512010-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 1652 1653 * sys.mk: Add a means of selectively turning on debug flags. 1654 Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg" 1655 will act as if we did make -dv if .CURDIR ends in lib/sjg 1656 DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at 1657 the start of sys.mk rather than the end. 1658 This only makes sense for leaf dirs, so we check that 1659 .MAKE.LEVEL > 0 1660 16612010-06-09 Simon J. Gerraty <sjg@bad.crufty.net> 1662 1663 * install-mk (MK_VERSION): bump version to 20100608 1664 * sys.mk: include sys.env.mk later so it can use M_ListToSkip et al. 1665 * examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606 1666 also make it easier for folk to tweak 1667 16682010-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 1669 1670 * install-mk (MK_VERSION): bump version to 20100606 1671 do not install examples/* 1672 * FILES: add examples/sys.clean-env.mk 1673 * examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR 1674 this requires bmake-20100606 or later to work. 1675 16762010-05-13 Simon J. Gerraty <sjg@bad.crufty.net> 1677 1678 * sys.mk (M_tA): better simulate the result of :tA if not available. 1679 16802010-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 1681 1682 * sys.mk: canonicalize MAKE_VERSION 1683 old versions reported bmake-<src-date> build-<build-date> 1684 whereas we only care about <src-date> 1685 16862010-04-25 Simon J. Gerraty <sjg@bad.crufty.net> 1687 1688 * install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored 1689 * lib.mk: we only build the shared lib if SHLIB_FULLVERSION 1690 is !empty 1691 16922010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 1693 1694 * dpadd.mk: use LDADD_* if defined. 1695 16962010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 1697 1698 * install-mk (MK_VERSION): bump version to 20100420 1699 * sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy 1700 * autoconf.mk allow AUTO_AUTOCONF 1701 17022010-04-19 Simon J. Gerraty <sjg@bad.crufty.net> 1703 1704 * obj.mk: add objwarn to keep freebsd makefiles happy 1705 * auto.obj.mk: ensure Mkdirs is available. 1706 * FILES: add auto.dep.mk - a simpler version of autodep.mk 1707 * dep.mk: auto.dep.mk does not do 'make depend' so ignore it if 1708 asked to do that. 1709 fix/simplify the tests for when to run mkdep. 1710 * auto.dep.mk: add some explanation of how/what we do. 1711 * autodep.mk: skip the .OPTIONAL frobbing of .depend 1712 bmake's FROM_DEPEND flag makes it redundant. 1713 17142010-04-13 Simon J. Gerraty <sjg@bad.crufty.net> 1715 1716 * install-mk (MK_VERSION): bump version to 20100404 1717 * subdir.mk: protect from multiple inclusion using _SUBDIRUSE. 1718 * obj.mk: protect from multiple inclusion even as bsd.obj.mk 1719 Also create a target _SUBDIRUSE so that we can be used without 1720 subdir.mk 1721 17222010-04-12 Simon J. Gerraty <sjg@bad.crufty.net> 1723 1724 * dep.mk: use <> when .including so can override. 1725 17262010-01-11 Simon J. Gerraty <sjg@bad.crufty.net> 1727 1728 * lib.mk (SHLIB_LINKS): ensure a string comparison. 1729 17302010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 1731 1732 * install-mk (MK_VERSION): bump version to 20100102 1733 * own.mk: ensure PRINTOBJDIR works 1734 * autoconf.mk: pass on CONFIGURE_ARGS 1735 * init.mk: handle COPTS.${.IMPSRC:T} etc. 1736 * lib.mk: allow sys.mk to control SHLIB_FULLVERSION 1737 fix handling of symlinks for darwin 1738 * libnames.mk: add DSHLIBEXT for libs which only exist as shared. 1739 * man.mk: suppress chown when not root. 1740 * rst2htm.mk: allow srcs from multiple locations. 1741 * sys.mk: M_whence, stop after 1st line of output. 1742 * sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT 1743 * sys/SunOS.mk: we need to export PATH 1744 17452009-12-23 Simon J. Gerraty <sjg@void.crufty.net> 1746 1747 * install-mk (MK_VERSION): bump version 1748 include rst2htm.mk 1749 17502009-12-17 Simon J. Gerraty <sjg@void.crufty.net> 1751 1752 * sys.mk,libnames.mk add .-include <local.*> 1753 this allows local customization without the need to edit the 1754 distributed files. 1755 17562009-12-14 Simon J. Gerraty <sjg@void.crufty.net> 1757 1758 * dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up 1759 older versions already installed. 1760 17612009-12-13 Simon J. Gerraty <sjg@void.crufty.net> 1762 1763 * stage.mk (.stage-install): generalize lib.mk's .libinstall 1764 * rules.mk rules for generic Makefile. 1765 * inc.mk install for includes. 1766 17672009-12-11 Simon J. Gerraty <sjg@void.crufty.net> 1768 1769 * sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check 1770 this, so provide it if using native make. 1771 17722009-12-10 Simon J. Gerraty <sjg@void.crufty.net> 1773 1774 * FILES: move all the platform *.sys.mk files to sys/*.mk 1775 * Rename Generic.sys.mk to sys.mk - we always want it. 1776 17772009-11-17 Simon J. Gerraty <sjg@void.crufty.net> 1778 1779 * install-mk (MK_VERSION): bump version 1780 * host-target.mk: only export the expensive stuff 1781 * Generic.sys.mk (sys_mk): for SunOS we need to look for 1782 ${HOST_OS}.${HOST_OSMAJOR} too! 1783 17842009-11-07 Simon J. Gerraty <sjg@void.crufty.net> 1785 1786 * install-mk (MK_VERSION): bump version 1787 * lib.mk: if sys.mk doesn't give us an lorder, don't use it. 1788 based on patch from Greg Olszewski. 1789 * Generic.sys.mk: if we have nothing to work with 1790 set LORDER etc only if we can find it. 1791 17922009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 1793 1794 * install-mk (MK_VERSION): bump version 1795 * man.mk: cleanman: remove CLEANMAN if defined. 1796 17972009-09-04 Simon J. Gerraty <sjg@void.crufty.net> 1798 1799 * SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk 1800 18012009-07-17 Simon J. Gerraty <sjg@void.crufty.net> 1802 1803 * install-mk (MK_VERSION): bump version 1804 include auto.obj.mk 1805 1806 18072009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 1808 1809 * prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail. 1810 18112008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 1812 1813 * install-mk (MK_VERSION): bump version 1814 man.mk: ensure we generate *.cat1 etc in . 1815 18162008-07-16 Simon J. Gerraty <sjg@void.crufty.net> 1817 1818 * install-mk (MK_VERSION): bump version 1819 add prlist.mk 1820 18212007-11-25 Simon J. Gerraty <sjg@void.crufty.net> 1822 1823 * Generic.sys.mk: Allow os specific sys.mk to be in a 1824 subdir of ${.PARSEDIR} 1825 18262007-11-22 Simon J. Gerraty <sjg@void.crufty.net> 1827 1828 * install-mk (MK_VERSION): bump version 1829 * general cleanup 1830 * dpadd.mk introduce DPMAGIC_LIBS_* 1831 18322007-04-30 Simon J. Gerraty <sjg@void.crufty.net> 1833 1834 * install-mk (MK_VERSION): bump version 1835 1836 * libs.mk, progs.mk, autodep.mk: allow for per lib/prog 1837 depend files and ensure clean is called for each lib/prog. 1838 18392007-03-27 Simon J. Gerraty <sjg@void.crufty.net> 1840 1841 * autodep.mk (.depend): delete lines that do not start with 1842 space and do not contain ':' 1843 18442007-02-16 Simon J. Gerraty <sjg@void.crufty.net> 1845 1846 * autodep.mk (.depend): gcc may wrap lines if pathnames are long 1847 so make sure the transform for .OPTIONAL copes. 1848 18492007-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1850 1851 * install-mk (MK_VERSION): bump version 1852 1853 * own.mk: make sure RM and LN are defined. 1854 1855 * obj.mk: fix a typo, and objlink target. 1856 18572006-12-30 Simon J. Gerraty <sjg@void.crufty.net> 1858 1859 * install-mk (MK_VERSION): bump version 1860 * added libs.mk - analogous to progs.mk 1861 make both of them always inlcude {lib,prog}.mk 1862 18632006-12-28 Simon J. Gerraty <sjg@void.crufty.net> 1864 1865 * progs.mk: add a means of building multiple apps in one dir. 1866 18672006-11-26 Simon J. Gerraty <sjg@void.crufty.net> 1868 1869 * install-mk (MK_VERSION): bump version to 20061126 1870 1871 * warnings.mk: detect invalid WARNINGS_SET 1872 1873 * warnings.mk: use ${.TARGET:T:R}.o when looking for target 1874 specific warnings. 1875 1876 * For .cc sources, turn off warnings that g++ vomits on. 1877 18782006-11-08 Simon J. Gerraty <sjg@void.crufty.net> 1879 1880 * own.mk: if __initialized__ target doesn't exist and we are 1881 FreeBSD we got here directly from sys.mk 1882 18832006-11-06 Simon J. Gerraty <sjg@void.crufty.net> 1884 1885 * install-mk (MK_VERSION): bump version to 20061106 1886 add scripts.mk 1887 18882006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 1889 1890 * install-mk (MK_VERSION): bump version to 20060318 1891 1892 * autodep.mk: avoid := when modifying OBJS into __dependsrcs 1893 18942006-03-02 Simon J. Gerraty <sjg@void.crufty.net> 1895 1896 * install-mk (MK_VERSION): bump version to 20060302 1897 * autodep.mk: use -MF et al to help gcc+ccache DTRT. 1898 18992006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 1900 1901 * install-mk (MK_VERSION): bump version to 20060301 1902 * autodep.mk (.depend): 1903 if MAKE_VERSION is newer than 20050530 we can make .END depend on 1904 .depend and make .depend depend on __depsrcs that exist. 1905 * dpadd.mk: add SRC_PATHADD 1906 19072005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 1908 1909 * install-mk (MK_VERSION): bump version to 20051104 1910 * prog.mk: remove all the LIBC?= junk, use 1911 .-include libnames.mk instead (none by default). 1912 also if USE_DPADD_MK is set, include that. 1913 19142005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 1915 1916 * install-mk (MK_VERSION): bump version to 20051001 1917 Add UnixWare.sys.mk from Klaus Heinz. 1918 19192005-04-05 Simon J. Gerraty <sjg@void.crufty.net> 1920 1921 * install-mk: always install *.sys.mk and if need be symlink one 1922 to sys.mk 1923 19242005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 1925 1926 * subdir.mk, own.mk: use .MAKE rather than MAKE 1927 19282004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 1929 1930 * own.mk: don't use NetBSD's _SRC_TOP_ it can 1931 cause confusion. Also don't take just 'mk' as a 1932 srctop indicator. 1933 19342004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 1935 1936 * warnings.mk: overhauled, now very powerful. 1937 19382004-02-03 Simon J. Gerraty <sjg@void.crufty.net> 1939 1940 * Generic.sys.mk: need to use ${.PARSEDIR} with exists(). 1941 19422004-02-01 Simon J. Gerraty <sjg@void.crufty.net> 1943 1944 * install-mk (MK_VERSION): bump version to 20040201 1945 * extract HOST_TARGET stuff to host-target.mk so own.mk and 1946 Generic.sys.mk can share. 1947 * fix typo in autodep.mk _SUBDIRUSE not _SUBDIR. 1948 19492003-09-30 Simon J. Gerraty <sjg@void.crufty.net> 1950 1951 * install-mk (MK_VERSION): 20030930 1952 * rename generic.sys.mk to Generic.sys.mk 1953 so that it does not get installed (unless being used as sys.mk) 1954 * set OS and ROOT_GROUP for those that we know the value. 1955 for others (eg. Generic.sys.mk) wrap the != in an .ifndef so 1956 we don't do it again for each sub-make. 1957 19582003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 1959 1960 * install-mk (MK_VERSION): 20030928 1961 Add some extra *.sys.mk from bootstrap-pkgsrc 1962 some of these likely still need work. 1963 Make everything default to root:wheel ownership, 1964 sys.mk can set ROOT_GROUP accordingly. 1965 19662003-08-07 Simon J. Gerraty <sjg@void.crufty.net> 1967 1968 * install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR 1969 not the portable ones. 1970 19712003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 1972 1973 * install-mk: add ability to use cp -f when updating 1974 destination .mk files. Also now possible to play games with 1975 FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk 1976 into dest - not recommended unless you seriously want to. 1977 19782003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1979 1980 * own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc 1981 for semi-compatability with NetBSD. 1982 19832003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1984 1985 * install-mk: add a version indicator 1986 19872003-07-22 Simon J. Gerraty <sjg@void.crufty.net> 1988 1989 * prog.mk: don't try and use ${LIBCRT0} if its /dev/null 1990 1991 * install-mk: Allow FORCE_SYS_MK to come from env 1992 1993 1994 1995