12014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 2 3 * install-mk (MK_VERSION): 20141111 4 5 * mkopt.sh: use consistent semantics for _mk_opt and _mk_opts 6 72014-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 8 9 * FILES: include mkopt.sh which allows handling options in shell 10 scripts in a manner compatible with options.mk 11 122014-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 13 14 * meta.stage.mk: ensure only _STAGED_DIRS under objroot are used 15 for GENDIRDEPS_FILTER to avoid surprises. 16 172014-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 18 19 * dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by 20 the time it is applied to __depdirs they have. 21 22 * dirdeps.mk fix filtering of _machines since M_dep_qual_fixes 23 expects patterns like *.${MACHINE} 24 25 * cython.mk (pyprefix?): use pyprefix to find python bits 26 since prefix might be something else (where we install our 27 stuff) 28 292014-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 30 31 * install-mk (MK_VERSION): 20140911 32 33 * dirdeps.mk: add bootstrap target to simplify adding support for 34 new MACHINE. 35 362014-09-01 Simon J. Gerraty <sjg@bad.crufty.net> 37 38 * gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and 39 GENDIRDEPS_FILTER_VARS to make it easier to produce sharable 40 Makefile.depend files. 41 422014-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 43 44 * install-mk (MK_VERSION): 20140828 45 46 * cython.mk: capture logic for building python extension modules 47 with Cython. 48 492014-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 50 51 * meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant 52 532014-08-02 Simon J. Gerraty <sjg@bad.crufty.net> 54 55 * install-mk (MK_VERSION): 20140801 56 57 * dep.mk: use explicit MKDEP_MK rather than overload MKDEP to 58 identify the autodep.mk variant. 59 60 * sys.dependfile.mk: delete .MAKE.DEPENDFILE if its 61 initial value does not match .MAKE.DEPENDFILE_PREFIX 62 63 * meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS 64 652014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 66 67 * install-mk (MK_VERSION): 20140522 68 69 * lib.mk: use CC to link shlib for linux too 70 patch from Brendan MacDonell 71 722014-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 73 74 * meta.autodep.mk: add _reldir_{finish,failed} for gathering stats 75 if WITH_META_STATS is defined. 76 772014-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 78 79 * dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS) 80 to supress dirdeps outside of .CURDIR. 81 822014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 83 84 * Fix spelling errors - patch from Pedro Giffuni 85 862014-03-14 Simon J. Gerraty <sjg@bad.crufty.net> 87 88 * install-mk (MK_VERSION): 20140314 89 90 * dirdeps.mk (beforedirdeps): a handy hook 91 92 * dirdeps.mk (DIRDEP_MAKE): allow the actual command we run 93 to visit leaf dirs to be intercepted (eg. for distributed 94 build). 95 96 * dirdeps.mk (__depdirs): ensure // don't sneak in 97 98 * gendirdeps.mk (DIRDEPS): ensure // don't sneak in 99 100 1012014-02-21 Simon J. Gerraty <sjg@bad.crufty.net> 102 103 * rst2htm.mk (RST2PDF): add support for rst2pdf 104 1052014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 106 107 * install-mk (MK_VERSION): bump version 108 * dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if 109 available. 110 1112014-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 112 113 * options.mk: avoid :U so this isn't bmake dependent 114 1152014-02-09 Simon J. Gerraty <sjg@bad.crufty.net> 116 117 * options.mk: cleanup and simplify semanitcs 118 NO_* dominates all, if both WITH_* and WITHOUT_* 119 are defined then result is DOMINATE_* which defaults to "no". 120 Ie. WITHOUT_ normally wins. 121 1222013-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 123 124 * install-mk (MK_VERSION): bump version 125 * meta2deps.py: convert to print function for python3 compat. 126 we also need to open files with mode 'r' rather than 'rb' 127 otherwise we get bytes instead of strings. 128 1292013-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 130 131 * install-mk (MK_VERSION): bump version 132 133 * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE 134 apply the same filtering (M_dep_qual_fixes) when setting _machines 135 as _build_dirs. 136 Also fix the filtering of Makefile.depend files - for reporting 137 what we are looking for (M_dep_qual_fixes can get confused by 138 Makefile.depend) 139 Add some more debug info. 140 1412013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 142 143 * gendirdeps.mk (_objtops): fix typo also 144 while processing M2D_OBJROOTS to gather qualdir_list 145 qualify $ql with loop iterator to ensure correct results. 146 1472013-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 148 149 * install-mk (MK_VERSION): 20130801 150 * libs.mk: update to match progs.mk 151 1522013-07-26 Simon J. Gerraty <sjg@bad.crufty.net> 153 154 * install-mk (MK_VERSION): 20130726 155 some updates from Juniper and FreeBSD 156 o meta2deps.py: indicate file and line number when we hit parse 157 errors 158 also allow @file to provide huge list of .meta files. 159 * meta2deps.py: add try_parse() to cleanup the above. 160 1612013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 162 163 * install-mk (MK_VERSION): 20130716 164 * own.mk: add GPROG as an option 165 * prog.mk: honor MK_GPROF==yes 166 1672013-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 168 169 * install-mk (MK_VERSION): 20130505 170 * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC 171 for when $MACHINE isn't enough for objdir distinction. 172 Bring meta2deps.sh closer to par with meta2deps.py. 173 1742013-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 175 176 * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all' 177 also if the target 'beforeinstall' exists, make it depend on 178 .dirdep (incase it uses STAGE_INSTALL). 179 1802013-04-17 Simon J. Gerraty <sjg@bad.crufty.net> 181 182 * install-mk (MK_VERSION): 20130401 ;-) 183 * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as 184 wrapper around install(1). 185 * options.mk (OPTION_PREFIX): Allow a prefix other than MK_ 186 1872013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 188 189 * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized. 190 * install-mk (MK_VERSION): bump version 191 1922013-03-21 Simon J. Gerraty <sjg@bad.crufty.net> 193 194 * install-mk (MK_VERSION): bump version 195 * gendirdeps.mk: do not apply :tA to DPADD entries, since we lose 196 any trailing /., rather apply :tA only when needed. 197 * gendirdeps.mk: better mimic meta2deps handling of .dirdep files. 198 * meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance 199 consistently. 200 * dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC. 201 2022013-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 203 204 * gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT 205 it is simpler to just not update when say building for "host" 206 (where we know we apply filters to DIRDEPS), and using a 207 non-machine qualified dependfile. 208 2092013-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 210 211 * dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR 212 and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC 213 * gendirdeps.mk: ensure _objroot has trailing / if it needs it. 214 * meta2deps.py: if machine is "host", then also trim 215 self.host_target from any OBJROOTS. 216 217 2182013-03-11 Simon J. Gerraty <sjg@bad.crufty.net> 219 220 * gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine 221 qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists 222 but _DEPENDFILE does not, compare the new _DEPENDFILE against 223 .MAKE.DEPENDFILE_DEFAULT and discard if the same. 224 2252013-03-08 Simon J. Gerraty <sjg@bad.crufty.net> 226 227 * meta.stage.mk: use STAGE_TARGETS to control .ORDER 228 and hook to all: via staging: 229 2302013-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 231 232 * sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT): 233 use a separate variable for the default .MAKE.DEPENDFILE value 234 so that it can be controlled independently of 235 .MAKE.DEPENDFILE_PREFERENCE 236 237 * meta.stage.mk: throw error if cp fails etc. 238 Stage*() return early if passed no args. 239 .ORDER stage_* 240 2412013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 242 243 * install-mk (MK_VERSION): bump version 244 * gendirdeps.mk: handle multiple M2D_OBJROOTS better. 245 2462013-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 247 248 * install-mk (MK_VERSION): bump version to 20130210 249 * import latest dirdeps.mk, gendirdeps.mk and meta2deps.py 250 from Juniper. 251 o dirdeps.mk now fully supports TARGET_SPEC consisting of more 252 than just MACHINE. 253 o no longer use DEP_MACHINE from Makefile.depend* so remove it. 254 2552013-01-23 Simon J. Gerraty <sjg@bad.crufty.net> 256 257 * install-mk (MK_VERSION): bump version to 20130123 258 * meta.stage.mk: add stage_links (hard links). 259 if doing hard links, we add dest to link as well. 260 Default the stage dir for [sym]links to STAGE_OBJTOP since 261 these are typically specified as absolute paths. 262 Add -m "mode" flag to StageFiles and StageAs. 263 2642012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 265 266 * install-mk (MK_VERSION): bump version to 20121111 267 * autoconf.mk: avoid meta mode seeing changed commands for config.status 268 * meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps 269 in case we were found via .../mk 270 * sys.clean-env.mk: move it from examples, we and others use it 271 "as is". 272 * FILES: add srctop.mk and options.mk 273 * own.mk: convert to using options.mk 274 which is modeled after FreeBSD's handling of MK_* 275 but more flexible. 276 This allows MK_* for boolean knobs to not be confused 277 with MK* which can be commands. 278 279 * examples/sys.clean-env.mk: add WITH[OUT]_ to 280 MAKE_ENV_SAVE_PREFIX_LIST. 281 Mention that HOME=/var/empty might be a good idea. 282 2832012-11-08 Simon J. Gerraty <sjg@bad.crufty.net> 284 285 * sys.dependfile.mk: if not depend file exists, $MACHINE 286 specific ones are supported but not the default, 287 check if any exist and follow suit. 288 2892012-11-06 Simon J. Gerraty <sjg@bad.crufty.net> 290 291 * install-mk (MK_VERSION): bump version to 20121106 292 2932012-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 294 295 * import latest dirdeps.mk and meta2deps.py from Juniper. 296 * progs.mk: add MAN and CXXFLAGS to PROG_VARS 297 also add PROGS_TARGETS and pass on PROG_CXX if it seems 298 appropriate. 299 3002012-11-04 Simon J. Gerraty <sjg@bad.crufty.net> 301 302 * meta.stage.mk: update CLEANFILES 303 remove redundant cp of .dirdep from STAGE_AS_SCRIPT. 304 * progs.mk: Add LDADD to PROG_VARS 305 3062012-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 307 308 * meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in 309 _STAGED_DIRS so that these can be turned into filters for 310 GENDIRDEPS_FILTER. 311 3122012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 313 314 * install-mk (MK_VERSION): bump version to 20121010 315 * meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing 316 target.dirdep matches .dirdep 317 3182012-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 319 320 * install-mk (MK_VERSION): bump version to 20120808 321 * import latest meta2deps.py from Juniper. 322 3232012-07-11 Simon J. Gerraty <sjg@bad.crufty.net> 324 325 * install-mk (MK_VERSION): bump version to 20120711 326 * dep.mk: add explicit dependencies on SRCS after applying 327 SRCS_DEP_FILTER 328 * meta.autodep.mk: add explicit dependencies on SRCS after 329 applying SRCS_DEP_FILTER 330 * meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed. 331 3322012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 333 334 * install-mk (MK_VERSION): bump version to 20120626 335 * meta.sys.mk: ignore PYTHON if it does not exist 336 compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable. 337 * meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any 338 entries ending in .${MACHINE} to decide if qualified _dirdep is 339 needed. 340 * gendirdeps.mk: only produce unqualified deps if no 341 .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE} 342 * meta.subdir.mk: apply SUBDIREPS_FILTER 343 3442012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 345 346 * install-mk (MK_VERSION): bump version to 20120420 347 * add sys.dependfile.mk so we can experiment with 348 .MAKE.DEPENDFILE_PREFERENCE 349 * meta.autodep.mk: _DEPENDFILE is precious! 350 3512012-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 352 353 * install-mk (MK_VERSION): bump version to 20120315 354 * install-new.mk: avoid being interrupted 355 3562012-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 357 358 * man.mk: MAN might have multiple values so be careful with exists(). 359 3602012-01-19 Simon J. Gerraty <sjg@bad.crufty.net> 361 362 * install-mk (MK_VERSION): bump version to 20120112 363 * fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled 364 as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}' 365 3662011-12-03 Simon J. Gerraty <sjg@bad.crufty.net> 367 368 * install-mk (MK_VERSION): bump version to 20111201 369 * import dirdeps.mk from Juniper sjg@ 370 o more consistent handling of DEP_MACHINE, especially when 371 dealing with an odd Makefile.depend, when normally using 372 Makefile.depend.${MACHINE} 373 3742011-11-22 Simon J. Gerraty <sjg@bad.crufty.net> 375 376 * install-mk (MK_VERSION): bump version to 20111122 377 * meta.autodep.mk: add some debug output, be more crisp about 378 updating. Use ${.ALLTARGETS:M*.o} as a clue for .depend 379 3802011-11-13 Simon J. Gerraty <sjg@bad.crufty.net> 381 382 * install-mk (MK_VERSION): bump version to 20111111 383 it's too cool to miss 384 * import meta* updates from Juniper sjg@ 385 o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are 386 normally using Makefile.depend.${MACHINE}), handy for 387 read-only manually maintained dependencies. 388 o meta2deps.py add a clear 'ERROR:' token if an exception is raised. 389 o gendirdeps.mk if ERROR: from meta2deps.py do not update 390 anything. 391 3922011-10-30 Simon J. Gerraty <sjg@bad.crufty.net> 393 394 * install-new.mk separate the cmp and copy logic to its own function. 395 3962011-10-28 Simon J. Gerraty <sjg@bad.crufty.net> 397 398 * install-mk (MK_VERSION): bump version to 20111028 399 * sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto 400 * subdir.mk: ensure _SUBDIRUSE is provided 401 * meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk 402 * meta.subdir.mk: always allow for Makefile.depend 403 4042011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 405 406 * install-mk (MK_VERSION): bump version to 20111010 407 o minor tweak to *dirdeps.mk from Juniper sjg@ 408 4092011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 410 411 * install-mk (MK_VERSION): bump version to 20111001 412 o add meta2deps.py from Juniper sjg@ 413 o tweak gendirdeps.mk to work with meta2deps.py when not 414 cross-building 415 * autoconf.mk: add autoconf-input as a hook for regenerating 416 AUTOCONF_INPUTS (configure). 417 4182011-08-24 Simon J. Gerraty <sjg@bad.crufty.net> 419 420 * meta.autodep.mk: if we do not have OBJS, .depend isn't a useful 421 trigger for updating Makefile.depend* 422 4232011-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 424 425 * install-mk (MK_VERSION): bump version to 20110808 426 * obj.mk: minor cleanup 427 * auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too. 428 4292011-08-01 Simon J. Gerraty <sjg@bad.crufty.net> 430 431 * auto.obj.mk (.OBJDIR): throw an error if we cannot use the 432 specified dir. 433 4342011-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 435 436 * meta.autodep.mk: if XMAKE_META_FILE is set 437 the makefile uses a foreign make, and so dependencies 438 can only be gathered from a clean tree build. 439 4402011-06-24 Simon J. Gerraty <sjg@bad.crufty.net> 441 442 * install-mk (MK_VERSION): bump version to 20110622 443 * meta.autodep.mk: improve bootstraping 444 4452011-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 446 447 * yacc.mk: handle the corner case of .c being removed 448 while .h remains. 449 4502011-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 451 452 * yacc.mk: do .y.h and .y.c separately 453 4542011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 455 456 * install-mk (MK_VERSION): bump version to 20110606 457 * don't store SRC_DIRDEPS in Makefile.depend* by default 458 not everyone needs it. 459 4602011-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 461 462 * install-mk (MK_VERSION): bump version to 20110505 463 first release including meta mode makefiles 464 4652011-05-02 Simon J. Gerraty <sjg@bad.crufty.net> 466 467 * meta.stage.mk: add STAGE_AS_SETS and stage_as 468 for things that need to be staged with different names. 469 4702011-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 471 472 * meta.stage.mk: add notion of STAGE_SETS 473 so a makefile can stage to multiple dirs 474 4752011-04-03 Simon J. Gerraty <sjg@bad.crufty.net> 476 477 * rst2htm.mk: convert rst to s5 (slides) or plain html depending 478 on target name. 479 4802011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 481 482 * install-mk (MK_VERSION): bump version to 20110330 483 4842011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 485 486 * sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0 487 can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest. 488 * sys.mk: re-define M_whence in terms of M_type. 489 M_type is useful for checking if something is a builtin. 490 4912011-03-16 Simon J. Gerraty <sjg@bad.crufty.net> 492 493 * meta.stage.mk: add stage_symlinks and leverage StageLinks for 494 stage_libs 495 4962011-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 497 498 * dirdeps.mk: correct value for _depdir_files depends on 499 .MAKE.DEPENDFILE 500 Add our copyright - just to make it clear we have frobbed this 501 quite a bit. 502 DEP_MACHINE needs to be set to MACHINE each time, if using only 503 Makefile.depend (cf. Makefile.depend.${MACHINE}) 504 505 * meta.stage.mk: meta mode version of staging 506 507 * init.mk, final.mk: include local.*.mk to simplify customization 508 5092011-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 510 511 * auto.obj.mk: just because we are doing mk destroy, we should 512 still set .OBJDIR correctly if it exists. 513 514 * install-mk (mksrc): do not exclude meta.sys.mk 515 5162011-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 517 518 * host-target.mk: set/export _HOST_ARCH etc separately, 519 catch junk resulting from uname -p, so we can find sys/Linux.mk 520 correctly. 521 5222011-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 523 524 * meta.sys.mk: throw an error if /dev/filemon is missing and we 525 expected to be updating Makefile.depend* 526 5272011-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 528 529 * install-mk (MK_VERSION): bump version to 20110214 530 * meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES 531 5322010-09-25 Simon J. Gerraty <sjg@bad.crufty.net> 533 534 * meta.sys.mk: not valid for older bmake 535 5362010-09-24 Simon J. Gerraty <sjg@bad.crufty.net> 537 538 * install-mk (MK_VERSION): bump version to 20100919 539 include dirdeps.mk et al from Juniper Networks, 540 for meta mode - requires filemon(9). 541 * sys.mk, subdir.mk: Add hooks for meta mode. 542 we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk 543 to make turning it on/off simple. 544 5452010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 546 547 * install-mk (MK_VERSION): bump version to 20100616 548 * fix typo in sys.mk 549 5502010-06-12 Simon J. Gerraty <sjg@bad.crufty.net> 551 552 * install-mk (MK_VERSION): bump version to 20100612 553 * lib.mk: remove duplicate addition to SOBJS 554 5552010-06-10 Simon J. Gerraty <sjg@bad.crufty.net> 556 557 * sys.mk: Add a means of selectively turning on debug flags. 558 Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg" 559 will act as if we did make -dv if .CURDIR ends in lib/sjg 560 DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at 561 the start of sys.mk rather than the end. 562 This only makes sense for leaf dirs, so we check that 563 .MAKE.LEVEL > 0 564 5652010-06-09 Simon J. Gerraty <sjg@bad.crufty.net> 566 567 * install-mk (MK_VERSION): bump version to 20100608 568 * sys.mk: include sys.env.mk later so it can use M_ListToSkip et al. 569 * examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606 570 also make it easier for folk to tweak 571 5722010-06-08 Simon J. Gerraty <sjg@bad.crufty.net> 573 574 * install-mk (MK_VERSION): bump version to 20100606 575 do not install examples/* 576 * FILES: add examples/sys.clean-env.mk 577 * examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR 578 this requires bmake-20100606 or later to work. 579 5802010-05-13 Simon J. Gerraty <sjg@bad.crufty.net> 581 582 * sys.mk (M_tA): better simulate the result of :tA if not available. 583 5842010-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 585 586 * sys.mk: canonicalize MAKE_VERSION 587 old versions reported bmake-<src-date> build-<build-date> 588 whereas we only care about <src-date> 589 5902010-04-25 Simon J. Gerraty <sjg@bad.crufty.net> 591 592 * install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored 593 * lib.mk: we only build the shared lib if SHLIB_FULLVERSION 594 is !empty 595 5962010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 597 598 * dpadd.mk: use LDADD_* if defined. 599 6002010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 601 602 * install-mk (MK_VERSION): bump version to 20100420 603 * sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy 604 * autoconf.mk allow AUTO_AUTOCONF 605 6062010-04-19 Simon J. Gerraty <sjg@bad.crufty.net> 607 608 * obj.mk: add objwarn to keep freebsd makefiles happy 609 * auto.obj.mk: ensure Mkdirs is available. 610 * FILES: add auto.dep.mk - a simpler version of autodep.mk 611 * dep.mk: auto.dep.mk does not do 'make depend' so ignore it if 612 asked to do that. 613 fix/simplify the tests for when to run mkdep. 614 * auto.dep.mk: add some explanation of how/what we do. 615 * autodep.mk: skip the .OPTIONAL frobbing of .depend 616 bmake's FROM_DEPEND flag makes it redundant. 617 6182010-04-13 Simon J. Gerraty <sjg@bad.crufty.net> 619 620 * install-mk (MK_VERSION): bump version to 20100404 621 * subdir.mk: protect from multiple inclusion using _SUBDIRUSE. 622 * obj.mk: protect from multiple inclusion even as bsd.obj.mk 623 Also create a target _SUBDIRUSE so that we can be used without 624 subdir.mk 625 6262010-04-12 Simon J. Gerraty <sjg@bad.crufty.net> 627 628 * dep.mk: use <> when .including so can override. 629 6302010-01-11 Simon J. Gerraty <sjg@bad.crufty.net> 631 632 * lib.mk (SHLIB_LINKS): ensure a string comparison. 633 6342010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 635 636 * install-mk (MK_VERSION): bump version to 20100102 637 * own.mk: ensure PRINTOBJDIR works 638 * autoconf.mk: pass on CONFIGURE_ARGS 639 * init.mk: handle COPTS.${.IMPSRC:T} etc. 640 * lib.mk: allow sys.mk to control SHLIB_FULLVERSION 641 fix handling of symlinks for darwin 642 * libnames.mk: add DSHLIBEXT for libs which only exist as shared. 643 * man.mk: suppress chown when not root. 644 * rst2htm.mk: allow srcs from multiple locations. 645 * sys.mk: M_whence, stop after 1st line of output. 646 * sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT 647 * sys/SunOS.mk: we need to export PATH 648 6492009-12-23 Simon J. Gerraty <sjg@void.crufty.net> 650 651 * install-mk (MK_VERSION): bump version 652 include rst2htm.mk 653 6542009-12-17 Simon J. Gerraty <sjg@void.crufty.net> 655 656 * sys.mk,libnames.mk add .-include <local.*> 657 this allows local customization without the need to edit the 658 distributed files. 659 6602009-12-14 Simon J. Gerraty <sjg@void.crufty.net> 661 662 * dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up 663 older versions already installed. 664 6652009-12-13 Simon J. Gerraty <sjg@void.crufty.net> 666 667 * stage.mk (.stage-install): generalize lib.mk's .libinstall 668 * rules.mk rules for generic Makefile. 669 * inc.mk install for includes. 670 6712009-12-11 Simon J. Gerraty <sjg@void.crufty.net> 672 673 * sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check 674 this, so provide it if using native make. 675 6762009-12-10 Simon J. Gerraty <sjg@void.crufty.net> 677 678 * FILES: move all the platform *.sys.mk files to sys/*.mk 679 * Rename Generic.sys.mk to sys.mk - we always want it. 680 6812009-11-17 Simon J. Gerraty <sjg@void.crufty.net> 682 683 * install-mk (MK_VERSION): bump version 684 * host-target.mk: only export the expensive stuff 685 * Generic.sys.mk (sys_mk): for SunOS we need to look for 686 ${HOST_OS}.${HOST_OSMAJOR} too! 687 6882009-11-07 Simon J. Gerraty <sjg@void.crufty.net> 689 690 * install-mk (MK_VERSION): bump version 691 * lib.mk: if sys.mk doesn't give us an lorder, don't use it. 692 based on patch from Greg Olszewski. 693 * Generic.sys.mk: if we have nothing to work with 694 set LORDER etc only if we can find it. 695 6962009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 697 698 * install-mk (MK_VERSION): bump version 699 * man.mk: cleanman: remove CLEANMAN if defined. 700 7012009-09-04 Simon J. Gerraty <sjg@void.crufty.net> 702 703 * SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk 704 7052009-07-17 Simon J. Gerraty <sjg@void.crufty.net> 706 707 * install-mk (MK_VERSION): bump version 708 include auto.obj.mk 709 710 7112009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 712 713 * prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail. 714 7152008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 716 717 * install-mk (MK_VERSION): bump version 718 man.mk: ensure we generate *.cat1 etc in . 719 7202008-07-16 Simon J. Gerraty <sjg@void.crufty.net> 721 722 * install-mk (MK_VERSION): bump version 723 add prlist.mk 724 7252007-11-25 Simon J. Gerraty <sjg@void.crufty.net> 726 727 * Generic.sys.mk: Allow os specific sys.mk to be in a 728 subdir of ${.PARSEDIR} 729 7302007-11-22 Simon J. Gerraty <sjg@void.crufty.net> 731 732 * install-mk (MK_VERSION): bump version 733 * general cleanup 734 * dpadd.mk introduce DPMAGIC_LIBS_* 735 7362007-04-30 Simon J. Gerraty <sjg@void.crufty.net> 737 738 * install-mk (MK_VERSION): bump version 739 740 * libs.mk, progs.mk, autodep.mk: allow for per lib/prog 741 depend files and ensure clean is called for each lib/prog. 742 7432007-03-27 Simon J. Gerraty <sjg@void.crufty.net> 744 745 * autodep.mk (.depend): delete lines that do not start with 746 space and do not contain ':' 747 7482007-02-16 Simon J. Gerraty <sjg@void.crufty.net> 749 750 * autodep.mk (.depend): gcc may wrap lines if pathnames are long 751 so make sure the transform for .OPTIONAL copes. 752 7532007-02-03 Simon J. Gerraty <sjg@void.crufty.net> 754 755 * install-mk (MK_VERSION): bump version 756 757 * own.mk: make sure RM and LN are defined. 758 759 * obj.mk: fix a typo, and objlink target. 760 7612006-12-30 Simon J. Gerraty <sjg@void.crufty.net> 762 763 * install-mk (MK_VERSION): bump version 764 * added libs.mk - analogous to progs.mk 765 make both of them always inlcude {lib,prog}.mk 766 7672006-12-28 Simon J. Gerraty <sjg@void.crufty.net> 768 769 * progs.mk: add a means of building multiple apps in one dir. 770 7712006-11-26 Simon J. Gerraty <sjg@void.crufty.net> 772 773 * install-mk (MK_VERSION): bump version to 20061126 774 775 * warnings.mk: detect invalid WARNINGS_SET 776 777 * warnings.mk: use ${.TARGET:T:R}.o when looking for target 778 specific warnings. 779 780 * For .cc sources, turn off warnings that g++ vomits on. 781 7822006-11-08 Simon J. Gerraty <sjg@void.crufty.net> 783 784 * own.mk: if __initialized__ target doesn't exist and we are 785 FreeBSD we got here directly from sys.mk 786 7872006-11-06 Simon J. Gerraty <sjg@void.crufty.net> 788 789 * install-mk (MK_VERSION): bump version to 20061106 790 add scripts.mk 791 7922006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 793 794 * install-mk (MK_VERSION): bump version to 20060318 795 796 * autodep.mk: avoid := when modifying OBJS into __dependsrcs 797 7982006-03-02 Simon J. Gerraty <sjg@void.crufty.net> 799 800 * install-mk (MK_VERSION): bump version to 20060302 801 * autodep.mk: use -MF et al to help gcc+ccache DTRT. 802 8032006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 804 805 * install-mk (MK_VERSION): bump version to 20060301 806 * autodep.mk (.depend): 807 if MAKE_VERSION is newer than 20050530 we can make .END depend on 808 .depend and make .depend depend on __depsrcs that exist. 809 * dpadd.mk: add SRC_PATHADD 810 8112005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 812 813 * install-mk (MK_VERSION): bump version to 20051104 814 * prog.mk: remove all the LIBC?= junk, use 815 .-include libnames.mk instead (none by default). 816 also if USE_DPADD_MK is set, include that. 817 8182005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 819 820 * install-mk (MK_VERSION): bump version to 20051001 821 Add UnixWare.sys.mk from Klaus Heinz. 822 8232005-04-05 Simon J. Gerraty <sjg@void.crufty.net> 824 825 * install-mk: always install *.sys.mk and if need be symlink one 826 to sys.mk 827 8282005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 829 830 * subdir.mk, own.mk: use .MAKE rather than MAKE 831 8322004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 833 834 * own.mk: don't use NetBSD's _SRC_TOP_ it can 835 cause confusion. Also don't take just 'mk' as a 836 srctop indicator. 837 8382004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 839 840 * warnings.mk: overhauled, now very powerful. 841 8422004-02-03 Simon J. Gerraty <sjg@void.crufty.net> 843 844 * Generic.sys.mk: need to use ${.PARSEDIR} with exists(). 845 8462004-02-01 Simon J. Gerraty <sjg@void.crufty.net> 847 848 * install-mk (MK_VERSION): bump version to 20040201 849 * extract HOST_TARGET stuff to host-target.mk so own.mk and 850 Generic.sys.mk can share. 851 * fix typo in autodep.mk _SUBDIRUSE not _SUBDIR. 852 8532003-09-30 Simon J. Gerraty <sjg@void.crufty.net> 854 855 * install-mk (MK_VERSION): 20030930 856 * rename generic.sys.mk to Generic.sys.mk 857 so that it does not get installed (unless being used as sys.mk) 858 * set OS and ROOT_GROUP for those that we know the value. 859 for others (eg. Generic.sys.mk) wrap the != in an .ifndef so 860 we don't do it again for each sub-make. 861 8622003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 863 864 * install-mk (MK_VERSION): 20030928 865 Add some extra *.sys.mk from bootstrap-pkgsrc 866 some of these likely still need work. 867 Make everything default to root:wheel ownership, 868 sys.mk can set ROOT_GROUP accordingly. 869 8702003-08-07 Simon J. Gerraty <sjg@void.crufty.net> 871 872 * install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR 873 not the portable ones. 874 8752003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 876 877 * install-mk: add ability to use cp -f when updating 878 destination .mk files. Also now possible to play games with 879 FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk 880 into dest - not recommended unless you seriously want to. 881 8822003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 883 884 * own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc 885 for semi-compatability with NetBSD. 886 8872003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 888 889 * install-mk: add a version indicator 890 8912003-07-22 Simon J. Gerraty <sjg@void.crufty.net> 892 893 * prog.mk: don't try and use ${LIBCRT0} if its /dev/null 894 895 * install-mk: Allow FORCE_SYS_MK to come from env 896 897 898 899