12015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 2 3 * install-mk (MK_VERSION): 20151020 4 5 * dirdeps.mk: Add logic for 6 make -f dirdeps.mk some/dir.${TARGET_SPEC} 7 82015-10-14 Simon J. Gerraty <sjg@bad.crufty.net> 9 10 * install-mk (MK_VERSION): 20151010 11 122015-10-02 Simon J. Gerraty <sjg@bad.crufty.net> 13 14 * meta.stage.mk: use staging: ${STAGE_TARGETS:... 15 to have stage_lins run last in non-jobs mode. 16 Use .ORDER only for jobs mode. 17 182015-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 19 20 * rst2htm.mk: allow for per target flags etc. 21 222015-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 23 24 * install-mk (MK_VERSION): 20150901 25 26 * doc.mk: create dir if needed use DOC_INSTALL_OWN 27 282015-06-15 Simon J. Gerraty <sjg@bad.crufty.net> 29 30 * install-mk (MK_VERSION): 20150615 31 32 * auto.obj.mk: allow use of MAKEOBJDIRPREFIX too. 33 Follow make's normal precedence rules. 34 35 * gendirdeps.mk: allow customization of the header. 36 eg. for FreeBSD: 37 GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}'; 38 39 * meta.autodep.mk: ignore dirdeps.cache* 40 41 * meta.stage.mk: when bootstrapping options it can be handy to 42 throw warnings rather than errors for staging conflicts. 43 44 * meta.sys.mk: include local.meta.sys.mk for customization 45 462015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 47 48 * install-mk (MK_VERSION): 20150606 49 50 * dirdeps.mk: don't rely on manually maintained Makefile.depend 51 to set DEP_RELDIR and reset DIRDEPS. 52 By setting DEP_RELDIR ourselves we can skip :tA 53 54 * gendirdeps.mk: skip setting DEP_RELDIR. 55 562015-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 57 58 * dirdeps.mk: avoid wildcards like make(bootstrap*) 59 602015-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 61 62 * install-mk (MK_VERSION): 20150520 63 64 * dirdeps.mk: when we are building dirdeps cache file we *want* 65 meta_oodate to look at all the Makefile.depend files, so 66 set .MAKE.DEPENDFILE to something that won't match. 67 68 * meta.stage.mk: for STAGE_AS_* basename of file may not be unique 69 so first use absolute path as key. 70 Also skip staging at level 0. 71 722015-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 73 74 * install-mk (MK_VERSION): 20150430 75 76 * dirdeps.mk: fix _count_dirdeps for non-cache case. 77 782015-04-16 Simon J. Gerraty <sjg@bad.crufty.net> 79 80 * install-mk (MK_VERSION): 20150411 81 bump version 82 83 * own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES. 84 it is here mainly for documentation purposes, since 85 if using auto.obj.mk it is better done via sys.mk 86 872015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 88 89 * install-mk (MK_VERSION): 20150401 90 91 * meta2deps.sh: support @list 92 93 * meta2deps.py: updates from Juniper 94 o add EXCLUDES 95 o skip bogus input files. 96 o treat 'M' and 'L' as both an 'R' and a 'W' 97 982015-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 99 100 * install-mk (MK_VERSION): 20150303 101 102 * dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache 103 which is built via sub-make so we have a .meta file to tell if 104 it is out-of-date. 105 The dirdeps-cache contains the same dependency rules that we 106 normaly construct on the fly. 107 This adds a few seconds overhead when the cache is out of date, 108 but for a large target, the savings can be significant (10-20min). 109 1102014-11-18 Simon J. Gerraty <sjg@bad.crufty.net> 111 112 * install-mk (MK_VERSION): 20141118 113 114 * meta.stage.mk: add stale_staged 115 116 * dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked 117 only useful under very rare conditions such as 118 FreeBSD's make universe. 119 120 * auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto 121 1222014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 123 124 * install-mk (MK_VERSION): 20141111 125 126 * mkopt.sh: use consistent semantics for _mk_opt and _mk_opts 127 1282014-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 129 130 * FILES: include mkopt.sh which allows handling options in shell 131 scripts in a manner compatible with options.mk 132 1332014-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 134 135 * meta.stage.mk: ensure only _STAGED_DIRS under objroot are used 136 for GENDIRDEPS_FILTER to avoid surprises. 137 1382014-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 139 140 * dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by 141 the time it is applied to __depdirs they have. 142 143 * dirdeps.mk fix filtering of _machines since M_dep_qual_fixes 144 expects patterns like *.${MACHINE} 145 146 * cython.mk (pyprefix?): use pyprefix to find python bits 147 since prefix might be something else (where we install our 148 stuff) 149 1502014-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 151 152 * install-mk (MK_VERSION): 20140911 153 154 * dirdeps.mk: add bootstrap target to simplify adding support for 155 new MACHINE. 156 1572014-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 158 159 * gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and 160 GENDIRDEPS_FILTER_VARS to make it easier to produce sharable 161 Makefile.depend files. 162 1632014-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 164 165 * install-mk (MK_VERSION): 20140828 166 167 * cython.mk: capture logic for building python extension modules 168 with Cython. 169 1702014-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 171 172 * meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant 173 1742014-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 175 176 * install-mk (MK_VERSION): 20140801 177 178 * dep.mk: use explicit MKDEP_MK rather than overload MKDEP to 179 identify the autodep.mk variant. 180 181 * sys.dependfile.mk: delete .MAKE.DEPENDFILE if its 182 initial value does not match .MAKE.DEPENDFILE_PREFIX 183 184 * meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS 185 1862014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 187 188 * install-mk (MK_VERSION): 20140522 189 190 * lib.mk: use CC to link shlib for linux too 191 patch from Brendan MacDonell 192 1932014-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 194 195 * meta.autodep.mk: add _reldir_{finish,failed} for gathering stats 196 if WITH_META_STATS is defined. 197 1982014-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 199 200 * dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS) 201 to supress dirdeps outside of .CURDIR. 202 2032014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 204 205 * Fix spelling errors - patch from Pedro Giffuni 206 2072014-03-14 Simon J. Gerraty <sjg@bad.crufty.net> 208 209 * install-mk (MK_VERSION): 20140314 210 211 * dirdeps.mk (beforedirdeps): a handy hook 212 213 * dirdeps.mk (DIRDEP_MAKE): allow the actual command we run 214 to visit leaf dirs to be intercepted (eg. for distributed 215 build). 216 217 * dirdeps.mk (__depdirs): ensure // don't sneak in 218 219 * gendirdeps.mk (DIRDEPS): ensure // don't sneak in 220 221 2222014-02-21 Simon J. Gerraty <sjg@bad.crufty.net> 223 224 * rst2htm.mk (RST2PDF): add support for rst2pdf 225 2262014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 227 228 * install-mk (MK_VERSION): bump version 229 * dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if 230 available. 231 2322014-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 233 234 * options.mk: avoid :U so this isn't bmake dependent 235 2362014-02-09 Simon J. Gerraty <sjg@bad.crufty.net> 237 238 * options.mk: cleanup and simplify semanitcs 239 NO_* dominates all, if both WITH_* and WITHOUT_* 240 are defined then result is DOMINATE_* which defaults to "no". 241 Ie. WITHOUT_ normally wins. 242 2432013-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 244 245 * install-mk (MK_VERSION): bump version 246 * meta2deps.py: convert to print function for python3 compat. 247 we also need to open files with mode 'r' rather than 'rb' 248 otherwise we get bytes instead of strings. 249 2502013-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 251 252 * install-mk (MK_VERSION): bump version 253 254 * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE 255 apply the same filtering (M_dep_qual_fixes) when setting _machines 256 as _build_dirs. 257 Also fix the filtering of Makefile.depend files - for reporting 258 what we are looking for (M_dep_qual_fixes can get confused by 259 Makefile.depend) 260 Add some more debug info. 261 2622013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 263 264 * gendirdeps.mk (_objtops): fix typo also 265 while processing M2D_OBJROOTS to gather qualdir_list 266 qualify $ql with loop iterator to ensure correct results. 267 2682013-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 269 270 * install-mk (MK_VERSION): 20130801 271 * libs.mk: update to match progs.mk 272 2732013-07-26 Simon J. Gerraty <sjg@bad.crufty.net> 274 275 * install-mk (MK_VERSION): 20130726 276 some updates from Juniper and FreeBSD 277 o meta2deps.py: indicate file and line number when we hit parse 278 errors 279 also allow @file to provide huge list of .meta files. 280 * meta2deps.py: add try_parse() to cleanup the above. 281 2822013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 283 284 * install-mk (MK_VERSION): 20130716 285 * own.mk: add GPROG as an option 286 * prog.mk: honor MK_GPROF==yes 287 2882013-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 289 290 * install-mk (MK_VERSION): 20130505 291 * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC 292 for when $MACHINE isn't enough for objdir distinction. 293 Bring meta2deps.sh closer to par with meta2deps.py. 294 2952013-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 296 297 * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all' 298 also if the target 'beforeinstall' exists, make it depend on 299 .dirdep (incase it uses STAGE_INSTALL). 300 3012013-04-17 Simon J. Gerraty <sjg@bad.crufty.net> 302 303 * install-mk (MK_VERSION): 20130401 ;-) 304 * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as 305 wrapper around install(1). 306 * options.mk (OPTION_PREFIX): Allow a prefix other than MK_ 307 3082013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 309 310 * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized. 311 * install-mk (MK_VERSION): bump version 312 3132013-03-21 Simon J. Gerraty <sjg@bad.crufty.net> 314 315 * install-mk (MK_VERSION): bump version 316 * gendirdeps.mk: do not apply :tA to DPADD entries, since we lose 317 any trailing /., rather apply :tA only when needed. 318 * gendirdeps.mk: better mimic meta2deps handling of .dirdep files. 319 * meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance 320 consistently. 321 * dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC. 322 3232013-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 324 325 * gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT 326 it is simpler to just not update when say building for "host" 327 (where we know we apply filters to DIRDEPS), and using a 328 non-machine qualified dependfile. 329 3302013-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 331 332 * dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR 333 and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC 334 * gendirdeps.mk: ensure _objroot has trailing / if it needs it. 335 * meta2deps.py: if machine is "host", then also trim 336 self.host_target from any OBJROOTS. 337 338 3392013-03-11 Simon J. Gerraty <sjg@bad.crufty.net> 340 341 * gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine 342 qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists 343 but _DEPENDFILE does not, compare the new _DEPENDFILE against 344 .MAKE.DEPENDFILE_DEFAULT and discard if the same. 345 3462013-03-08 Simon J. Gerraty <sjg@bad.crufty.net> 347 348 * meta.stage.mk: use STAGE_TARGETS to control .ORDER 349 and hook to all: via staging: 350 3512013-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 352 353 * sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT): 354 use a separate variable for the default .MAKE.DEPENDFILE value 355 so that it can be controlled independently of 356 .MAKE.DEPENDFILE_PREFERENCE 357 358 * meta.stage.mk: throw error if cp fails etc. 359 Stage*() return early if passed no args. 360 .ORDER stage_* 361 3622013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 363 364 * install-mk (MK_VERSION): bump version 365 * gendirdeps.mk: handle multiple M2D_OBJROOTS better. 366 3672013-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 368 369 * install-mk (MK_VERSION): bump version to 20130210 370 * import latest dirdeps.mk, gendirdeps.mk and meta2deps.py 371 from Juniper. 372 o dirdeps.mk now fully supports TARGET_SPEC consisting of more 373 than just MACHINE. 374 o no longer use DEP_MACHINE from Makefile.depend* so remove it. 375 3762013-01-23 Simon J. Gerraty <sjg@bad.crufty.net> 377 378 * install-mk (MK_VERSION): bump version to 20130123 379 * meta.stage.mk: add stage_links (hard links). 380 if doing hard links, we add dest to link as well. 381 Default the stage dir for [sym]links to STAGE_OBJTOP since 382 these are typically specified as absolute paths. 383 Add -m "mode" flag to StageFiles and StageAs. 384 3852012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 386 387 * install-mk (MK_VERSION): bump version to 20121111 388 * autoconf.mk: avoid meta mode seeing changed commands for config.status 389 * meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps 390 in case we were found via .../mk 391 * sys.clean-env.mk: move it from examples, we and others use it 392 "as is". 393 * FILES: add srctop.mk and options.mk 394 * own.mk: convert to using options.mk 395 which is modeled after FreeBSD's handling of MK_* 396 but more flexible. 397 This allows MK_* for boolean knobs to not be confused 398 with MK* which can be commands. 399 400 * examples/sys.clean-env.mk: add WITH[OUT]_ to 401 MAKE_ENV_SAVE_PREFIX_LIST. 402 Mention that HOME=/var/empty might be a good idea. 403 4042012-11-08 Simon J. Gerraty <sjg@bad.crufty.net> 405 406 * sys.dependfile.mk: if not depend file exists, $MACHINE 407 specific ones are supported but not the default, 408 check if any exist and follow suit. 409 4102012-11-06 Simon J. Gerraty <sjg@bad.crufty.net> 411 412 * install-mk (MK_VERSION): bump version to 20121106 413 4142012-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 415 416 * import latest dirdeps.mk and meta2deps.py from Juniper. 417 * progs.mk: add MAN and CXXFLAGS to PROG_VARS 418 also add PROGS_TARGETS and pass on PROG_CXX if it seems 419 appropriate. 420 4212012-11-04 Simon J. Gerraty <sjg@bad.crufty.net> 422 423 * meta.stage.mk: update CLEANFILES 424 remove redundant cp of .dirdep from STAGE_AS_SCRIPT. 425 * progs.mk: Add LDADD to PROG_VARS 426 4272012-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 428 429 * meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in 430 _STAGED_DIRS so that these can be turned into filters for 431 GENDIRDEPS_FILTER. 432 4332012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 434 435 * install-mk (MK_VERSION): bump version to 20121010 436 * meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing 437 target.dirdep matches .dirdep 438 4392012-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 440 441 * install-mk (MK_VERSION): bump version to 20120808 442 * import latest meta2deps.py from Juniper. 443 4442012-07-11 Simon J. Gerraty <sjg@bad.crufty.net> 445 446 * install-mk (MK_VERSION): bump version to 20120711 447 * dep.mk: add explicit dependencies on SRCS after applying 448 SRCS_DEP_FILTER 449 * meta.autodep.mk: add explicit dependencies on SRCS after 450 applying SRCS_DEP_FILTER 451 * meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed. 452 4532012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 454 455 * install-mk (MK_VERSION): bump version to 20120626 456 * meta.sys.mk: ignore PYTHON if it does not exist 457 compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable. 458 * meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any 459 entries ending in .${MACHINE} to decide if qualified _dirdep is 460 needed. 461 * gendirdeps.mk: only produce unqualified deps if no 462 .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE} 463 * meta.subdir.mk: apply SUBDIREPS_FILTER 464 4652012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 466 467 * install-mk (MK_VERSION): bump version to 20120420 468 * add sys.dependfile.mk so we can experiment with 469 .MAKE.DEPENDFILE_PREFERENCE 470 * meta.autodep.mk: _DEPENDFILE is precious! 471 4722012-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 473 474 * install-mk (MK_VERSION): bump version to 20120315 475 * install-new.mk: avoid being interrupted 476 4772012-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 478 479 * man.mk: MAN might have multiple values so be careful with exists(). 480 4812012-01-19 Simon J. Gerraty <sjg@bad.crufty.net> 482 483 * install-mk (MK_VERSION): bump version to 20120112 484 * fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled 485 as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}' 486 4872011-12-03 Simon J. Gerraty <sjg@bad.crufty.net> 488 489 * install-mk (MK_VERSION): bump version to 20111201 490 * import dirdeps.mk from Juniper sjg@ 491 o more consistent handling of DEP_MACHINE, especially when 492 dealing with an odd Makefile.depend, when normally using 493 Makefile.depend.${MACHINE} 494 4952011-11-22 Simon J. Gerraty <sjg@bad.crufty.net> 496 497 * install-mk (MK_VERSION): bump version to 20111122 498 * meta.autodep.mk: add some debug output, be more crisp about 499 updating. Use ${.ALLTARGETS:M*.o} as a clue for .depend 500 5012011-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 502 503 * install-mk (MK_VERSION): bump version to 20111111 504 it's too cool to miss 505 * import meta* updates from Juniper sjg@ 506 o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are 507 normally using Makefile.depend.${MACHINE}), handy for 508 read-only manually maintained dependencies. 509 o meta2deps.py add a clear 'ERROR:' token if an exception is raised. 510 o gendirdeps.mk if ERROR: from meta2deps.py do not update 511 anything. 512 5132011-10-30 Simon J. Gerraty <sjg@bad.crufty.net> 514 515 * install-new.mk separate the cmp and copy logic to its own function. 516 5172011-10-28 Simon J. Gerraty <sjg@bad.crufty.net> 518 519 * install-mk (MK_VERSION): bump version to 20111028 520 * sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto 521 * subdir.mk: ensure _SUBDIRUSE is provided 522 * meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk 523 * meta.subdir.mk: always allow for Makefile.depend 524 5252011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 526 527 * install-mk (MK_VERSION): bump version to 20111010 528 o minor tweak to *dirdeps.mk from Juniper sjg@ 529 5302011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 531 532 * install-mk (MK_VERSION): bump version to 20111001 533 o add meta2deps.py from Juniper sjg@ 534 o tweak gendirdeps.mk to work with meta2deps.py when not 535 cross-building 536 * autoconf.mk: add autoconf-input as a hook for regenerating 537 AUTOCONF_INPUTS (configure). 538 5392011-08-24 Simon J. Gerraty <sjg@bad.crufty.net> 540 541 * meta.autodep.mk: if we do not have OBJS, .depend isn't a useful 542 trigger for updating Makefile.depend* 543 5442011-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 545 546 * install-mk (MK_VERSION): bump version to 20110808 547 * obj.mk: minor cleanup 548 * auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too. 549 5502011-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 551 552 * auto.obj.mk (.OBJDIR): throw an error if we cannot use the 553 specified dir. 554 5552011-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 556 557 * meta.autodep.mk: if XMAKE_META_FILE is set 558 the makefile uses a foreign make, and so dependencies 559 can only be gathered from a clean tree build. 560 5612011-06-24 Simon J. Gerraty <sjg@bad.crufty.net> 562 563 * install-mk (MK_VERSION): bump version to 20110622 564 * meta.autodep.mk: improve bootstraping 565 5662011-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 567 568 * yacc.mk: handle the corner case of .c being removed 569 while .h remains. 570 5712011-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 572 573 * yacc.mk: do .y.h and .y.c separately 574 5752011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 576 577 * install-mk (MK_VERSION): bump version to 20110606 578 * don't store SRC_DIRDEPS in Makefile.depend* by default 579 not everyone needs it. 580 5812011-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 582 583 * install-mk (MK_VERSION): bump version to 20110505 584 first release including meta mode makefiles 585 5862011-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 587 588 * meta.stage.mk: add STAGE_AS_SETS and stage_as 589 for things that need to be staged with different names. 590 5912011-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 592 593 * meta.stage.mk: add notion of STAGE_SETS 594 so a makefile can stage to multiple dirs 595 5962011-04-03 Simon J. Gerraty <sjg@bad.crufty.net> 597 598 * rst2htm.mk: convert rst to s5 (slides) or plain html depending 599 on target name. 600 6012011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 602 603 * install-mk (MK_VERSION): bump version to 20110330 604 6052011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 606 607 * sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0 608 can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest. 609 * sys.mk: re-define M_whence in terms of M_type. 610 M_type is useful for checking if something is a builtin. 611 6122011-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 613 614 * meta.stage.mk: add stage_symlinks and leverage StageLinks for 615 stage_libs 616 6172011-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 618 619 * dirdeps.mk: correct value for _depdir_files depends on 620 .MAKE.DEPENDFILE 621 Add our copyright - just to make it clear we have frobbed this 622 quite a bit. 623 DEP_MACHINE needs to be set to MACHINE each time, if using only 624 Makefile.depend (cf. Makefile.depend.${MACHINE}) 625 626 * meta.stage.mk: meta mode version of staging 627 628 * init.mk, final.mk: include local.*.mk to simplify customization 629 6302011-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 631 632 * auto.obj.mk: just because we are doing mk destroy, we should 633 still set .OBJDIR correctly if it exists. 634 635 * install-mk (mksrc): do not exclude meta.sys.mk 636 6372011-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 638 639 * host-target.mk: set/export _HOST_ARCH etc separately, 640 catch junk resulting from uname -p, so we can find sys/Linux.mk 641 correctly. 642 6432011-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 644 645 * meta.sys.mk: throw an error if /dev/filemon is missing and we 646 expected to be updating Makefile.depend* 647 6482011-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 649 650 * install-mk (MK_VERSION): bump version to 20110214 651 * meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES 652 6532010-09-25 Simon J. Gerraty <sjg@bad.crufty.net> 654 655 * meta.sys.mk: not valid for older bmake 656 6572010-09-24 Simon J. Gerraty <sjg@bad.crufty.net> 658 659 * install-mk (MK_VERSION): bump version to 20100919 660 include dirdeps.mk et al from Juniper Networks, 661 for meta mode - requires filemon(9). 662 * sys.mk, subdir.mk: Add hooks for meta mode. 663 we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk 664 to make turning it on/off simple. 665 6662010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 667 668 * install-mk (MK_VERSION): bump version to 20100616 669 * fix typo in sys.mk 670 6712010-06-12 Simon J. Gerraty <sjg@bad.crufty.net> 672 673 * install-mk (MK_VERSION): bump version to 20100612 674 * lib.mk: remove duplicate addition to SOBJS 675 6762010-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 677 678 * sys.mk: Add a means of selectively turning on debug flags. 679 Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg" 680 will act as if we did make -dv if .CURDIR ends in lib/sjg 681 DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at 682 the start of sys.mk rather than the end. 683 This only makes sense for leaf dirs, so we check that 684 .MAKE.LEVEL > 0 685 6862010-06-09 Simon J. Gerraty <sjg@bad.crufty.net> 687 688 * install-mk (MK_VERSION): bump version to 20100608 689 * sys.mk: include sys.env.mk later so it can use M_ListToSkip et al. 690 * examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606 691 also make it easier for folk to tweak 692 6932010-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 694 695 * install-mk (MK_VERSION): bump version to 20100606 696 do not install examples/* 697 * FILES: add examples/sys.clean-env.mk 698 * examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR 699 this requires bmake-20100606 or later to work. 700 7012010-05-13 Simon J. Gerraty <sjg@bad.crufty.net> 702 703 * sys.mk (M_tA): better simulate the result of :tA if not available. 704 7052010-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 706 707 * sys.mk: canonicalize MAKE_VERSION 708 old versions reported bmake-<src-date> build-<build-date> 709 whereas we only care about <src-date> 710 7112010-04-25 Simon J. Gerraty <sjg@bad.crufty.net> 712 713 * install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored 714 * lib.mk: we only build the shared lib if SHLIB_FULLVERSION 715 is !empty 716 7172010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 718 719 * dpadd.mk: use LDADD_* if defined. 720 7212010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 722 723 * install-mk (MK_VERSION): bump version to 20100420 724 * sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy 725 * autoconf.mk allow AUTO_AUTOCONF 726 7272010-04-19 Simon J. Gerraty <sjg@bad.crufty.net> 728 729 * obj.mk: add objwarn to keep freebsd makefiles happy 730 * auto.obj.mk: ensure Mkdirs is available. 731 * FILES: add auto.dep.mk - a simpler version of autodep.mk 732 * dep.mk: auto.dep.mk does not do 'make depend' so ignore it if 733 asked to do that. 734 fix/simplify the tests for when to run mkdep. 735 * auto.dep.mk: add some explanation of how/what we do. 736 * autodep.mk: skip the .OPTIONAL frobbing of .depend 737 bmake's FROM_DEPEND flag makes it redundant. 738 7392010-04-13 Simon J. Gerraty <sjg@bad.crufty.net> 740 741 * install-mk (MK_VERSION): bump version to 20100404 742 * subdir.mk: protect from multiple inclusion using _SUBDIRUSE. 743 * obj.mk: protect from multiple inclusion even as bsd.obj.mk 744 Also create a target _SUBDIRUSE so that we can be used without 745 subdir.mk 746 7472010-04-12 Simon J. Gerraty <sjg@bad.crufty.net> 748 749 * dep.mk: use <> when .including so can override. 750 7512010-01-11 Simon J. Gerraty <sjg@bad.crufty.net> 752 753 * lib.mk (SHLIB_LINKS): ensure a string comparison. 754 7552010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 756 757 * install-mk (MK_VERSION): bump version to 20100102 758 * own.mk: ensure PRINTOBJDIR works 759 * autoconf.mk: pass on CONFIGURE_ARGS 760 * init.mk: handle COPTS.${.IMPSRC:T} etc. 761 * lib.mk: allow sys.mk to control SHLIB_FULLVERSION 762 fix handling of symlinks for darwin 763 * libnames.mk: add DSHLIBEXT for libs which only exist as shared. 764 * man.mk: suppress chown when not root. 765 * rst2htm.mk: allow srcs from multiple locations. 766 * sys.mk: M_whence, stop after 1st line of output. 767 * sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT 768 * sys/SunOS.mk: we need to export PATH 769 7702009-12-23 Simon J. Gerraty <sjg@void.crufty.net> 771 772 * install-mk (MK_VERSION): bump version 773 include rst2htm.mk 774 7752009-12-17 Simon J. Gerraty <sjg@void.crufty.net> 776 777 * sys.mk,libnames.mk add .-include <local.*> 778 this allows local customization without the need to edit the 779 distributed files. 780 7812009-12-14 Simon J. Gerraty <sjg@void.crufty.net> 782 783 * dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up 784 older versions already installed. 785 7862009-12-13 Simon J. Gerraty <sjg@void.crufty.net> 787 788 * stage.mk (.stage-install): generalize lib.mk's .libinstall 789 * rules.mk rules for generic Makefile. 790 * inc.mk install for includes. 791 7922009-12-11 Simon J. Gerraty <sjg@void.crufty.net> 793 794 * sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check 795 this, so provide it if using native make. 796 7972009-12-10 Simon J. Gerraty <sjg@void.crufty.net> 798 799 * FILES: move all the platform *.sys.mk files to sys/*.mk 800 * Rename Generic.sys.mk to sys.mk - we always want it. 801 8022009-11-17 Simon J. Gerraty <sjg@void.crufty.net> 803 804 * install-mk (MK_VERSION): bump version 805 * host-target.mk: only export the expensive stuff 806 * Generic.sys.mk (sys_mk): for SunOS we need to look for 807 ${HOST_OS}.${HOST_OSMAJOR} too! 808 8092009-11-07 Simon J. Gerraty <sjg@void.crufty.net> 810 811 * install-mk (MK_VERSION): bump version 812 * lib.mk: if sys.mk doesn't give us an lorder, don't use it. 813 based on patch from Greg Olszewski. 814 * Generic.sys.mk: if we have nothing to work with 815 set LORDER etc only if we can find it. 816 8172009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 818 819 * install-mk (MK_VERSION): bump version 820 * man.mk: cleanman: remove CLEANMAN if defined. 821 8222009-09-04 Simon J. Gerraty <sjg@void.crufty.net> 823 824 * SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk 825 8262009-07-17 Simon J. Gerraty <sjg@void.crufty.net> 827 828 * install-mk (MK_VERSION): bump version 829 include auto.obj.mk 830 831 8322009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 833 834 * prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail. 835 8362008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 837 838 * install-mk (MK_VERSION): bump version 839 man.mk: ensure we generate *.cat1 etc in . 840 8412008-07-16 Simon J. Gerraty <sjg@void.crufty.net> 842 843 * install-mk (MK_VERSION): bump version 844 add prlist.mk 845 8462007-11-25 Simon J. Gerraty <sjg@void.crufty.net> 847 848 * Generic.sys.mk: Allow os specific sys.mk to be in a 849 subdir of ${.PARSEDIR} 850 8512007-11-22 Simon J. Gerraty <sjg@void.crufty.net> 852 853 * install-mk (MK_VERSION): bump version 854 * general cleanup 855 * dpadd.mk introduce DPMAGIC_LIBS_* 856 8572007-04-30 Simon J. Gerraty <sjg@void.crufty.net> 858 859 * install-mk (MK_VERSION): bump version 860 861 * libs.mk, progs.mk, autodep.mk: allow for per lib/prog 862 depend files and ensure clean is called for each lib/prog. 863 8642007-03-27 Simon J. Gerraty <sjg@void.crufty.net> 865 866 * autodep.mk (.depend): delete lines that do not start with 867 space and do not contain ':' 868 8692007-02-16 Simon J. Gerraty <sjg@void.crufty.net> 870 871 * autodep.mk (.depend): gcc may wrap lines if pathnames are long 872 so make sure the transform for .OPTIONAL copes. 873 8742007-02-03 Simon J. Gerraty <sjg@void.crufty.net> 875 876 * install-mk (MK_VERSION): bump version 877 878 * own.mk: make sure RM and LN are defined. 879 880 * obj.mk: fix a typo, and objlink target. 881 8822006-12-30 Simon J. Gerraty <sjg@void.crufty.net> 883 884 * install-mk (MK_VERSION): bump version 885 * added libs.mk - analogous to progs.mk 886 make both of them always inlcude {lib,prog}.mk 887 8882006-12-28 Simon J. Gerraty <sjg@void.crufty.net> 889 890 * progs.mk: add a means of building multiple apps in one dir. 891 8922006-11-26 Simon J. Gerraty <sjg@void.crufty.net> 893 894 * install-mk (MK_VERSION): bump version to 20061126 895 896 * warnings.mk: detect invalid WARNINGS_SET 897 898 * warnings.mk: use ${.TARGET:T:R}.o when looking for target 899 specific warnings. 900 901 * For .cc sources, turn off warnings that g++ vomits on. 902 9032006-11-08 Simon J. Gerraty <sjg@void.crufty.net> 904 905 * own.mk: if __initialized__ target doesn't exist and we are 906 FreeBSD we got here directly from sys.mk 907 9082006-11-06 Simon J. Gerraty <sjg@void.crufty.net> 909 910 * install-mk (MK_VERSION): bump version to 20061106 911 add scripts.mk 912 9132006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 914 915 * install-mk (MK_VERSION): bump version to 20060318 916 917 * autodep.mk: avoid := when modifying OBJS into __dependsrcs 918 9192006-03-02 Simon J. Gerraty <sjg@void.crufty.net> 920 921 * install-mk (MK_VERSION): bump version to 20060302 922 * autodep.mk: use -MF et al to help gcc+ccache DTRT. 923 9242006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 925 926 * install-mk (MK_VERSION): bump version to 20060301 927 * autodep.mk (.depend): 928 if MAKE_VERSION is newer than 20050530 we can make .END depend on 929 .depend and make .depend depend on __depsrcs that exist. 930 * dpadd.mk: add SRC_PATHADD 931 9322005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 933 934 * install-mk (MK_VERSION): bump version to 20051104 935 * prog.mk: remove all the LIBC?= junk, use 936 .-include libnames.mk instead (none by default). 937 also if USE_DPADD_MK is set, include that. 938 9392005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 940 941 * install-mk (MK_VERSION): bump version to 20051001 942 Add UnixWare.sys.mk from Klaus Heinz. 943 9442005-04-05 Simon J. Gerraty <sjg@void.crufty.net> 945 946 * install-mk: always install *.sys.mk and if need be symlink one 947 to sys.mk 948 9492005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 950 951 * subdir.mk, own.mk: use .MAKE rather than MAKE 952 9532004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 954 955 * own.mk: don't use NetBSD's _SRC_TOP_ it can 956 cause confusion. Also don't take just 'mk' as a 957 srctop indicator. 958 9592004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 960 961 * warnings.mk: overhauled, now very powerful. 962 9632004-02-03 Simon J. Gerraty <sjg@void.crufty.net> 964 965 * Generic.sys.mk: need to use ${.PARSEDIR} with exists(). 966 9672004-02-01 Simon J. Gerraty <sjg@void.crufty.net> 968 969 * install-mk (MK_VERSION): bump version to 20040201 970 * extract HOST_TARGET stuff to host-target.mk so own.mk and 971 Generic.sys.mk can share. 972 * fix typo in autodep.mk _SUBDIRUSE not _SUBDIR. 973 9742003-09-30 Simon J. Gerraty <sjg@void.crufty.net> 975 976 * install-mk (MK_VERSION): 20030930 977 * rename generic.sys.mk to Generic.sys.mk 978 so that it does not get installed (unless being used as sys.mk) 979 * set OS and ROOT_GROUP for those that we know the value. 980 for others (eg. Generic.sys.mk) wrap the != in an .ifndef so 981 we don't do it again for each sub-make. 982 9832003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 984 985 * install-mk (MK_VERSION): 20030928 986 Add some extra *.sys.mk from bootstrap-pkgsrc 987 some of these likely still need work. 988 Make everything default to root:wheel ownership, 989 sys.mk can set ROOT_GROUP accordingly. 990 9912003-08-07 Simon J. Gerraty <sjg@void.crufty.net> 992 993 * install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR 994 not the portable ones. 995 9962003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 997 998 * install-mk: add ability to use cp -f when updating 999 destination .mk files. Also now possible to play games with 1000 FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk 1001 into dest - not recommended unless you seriously want to. 1002 10032003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 1004 1005 * own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc 1006 for semi-compatability with NetBSD. 1007 10082003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 1009 1010 * install-mk: add a version indicator 1011 10122003-07-22 Simon J. Gerraty <sjg@void.crufty.net> 1013 1014 * prog.mk: don't try and use ${LIBCRT0} if its /dev/null 1015 1016 * install-mk: Allow FORCE_SYS_MK to come from env 1017 1018 1019 1020