1 2017-10-25 Simon J. Gerraty <sjg@bad.crufty.net>
3 * Allow for host32 on rare occasions.
5 2017-10-18 Simon J. Gerraty <sjg@bad.crufty.net>
7 * install-mk (MK_VERSION): 20171018
9 * whats.mk: include what_thing in what_uuid to avoid problem
10 when building multiple apps in the same directory.
12 2017-08-12 Simon J. Gerraty <sjg@bad.crufty.net>
14 * install-mk (MK_VERSION): 20170812
16 * autoconf.mk: Use CONFIGURE_DEPS so Makefile can
17 add dependencies for config.recheck and config.gen
19 2017-06-30 Simon J. Gerraty <sjg@bad.crufty.net>
21 * install-mk (MK_VERSION): 20170630
23 * meta.stage.mk: avoid triggering stage_* targets with nothing to do.
25 2017-05-23 Simon J. Gerraty <sjg@bad.crufty.net>
27 * meta2deps.py: take special care of '..'
29 2017-05-15 Simon J. Gerraty <sjg@bad.crufty.net>
31 * install-mk (MK_VERSION): 20170515
33 * dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is
34 useful/necessary for a Makefile.depend file to export some knobs.
35 This is complicated when we are doing DIRDEPS_CACHE, so we will
36 handle export of any variables listed in DEP_EXPORT_VARS.
38 2017-05-08 Simon J. Gerraty <sjg@bad.crufty.net>
40 * install-mk (MK_VERSION): 20170505
42 * meta2deps.py: fix botched indenation.
44 2017-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
46 * sys/*.mk: Remove setting of MAKE it is unnecessary and
47 in many cases wrong (basname rather than full path)
49 * scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk
51 * init.mk: define realbuild to simplify logic in {lib,prog}.mk etc
53 2017-05-01 Simon J. Gerraty <sjg@bad.crufty.net>
55 * install-mk (MK_VERSION): 20170501
57 * doc.mk: fix typo in DOC_INSTALL_OWN
59 * inc.mk: handle INCGROUPS similar to freebsd
61 * files.mk: add something for files too
63 * add staging logic to lib.mk prog.mk etc.
65 2017-04-24 Simon J. Gerraty <sjg@bad.crufty.net>
67 * install-mk (MK_VERSION): 20170424
69 * dirdeps.mk: set NO_DIRDEPS when bootstrapping.
70 also target of bootstrap-this when sed is needed should be ${_want:T}
72 2017-04-18 Simon J. Gerraty <sjg@bad.crufty.net>
74 * install-mk (MK_VERSION): 20170418
76 * auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a
77 prefix match for .CURDIR - in which case .CURDIR *is* __objdir.
79 2017-04-01 Simon J. Gerraty <sjg@bad.crufty.net>
81 * install-mk (MK_VERSION): 20170401
83 * meta2deps.py: add is_src so we can check if obj dependency
84 is also a src dependency.
86 2017-03-26 Simon J. Gerraty <sjg@bad.crufty.net>
88 * install-mk (MK_VERSION): 20170326
90 * meta.stage.mk: do nothing if NO_STAGING is defined.
92 2017-03-24 Simon J. Gerraty <sjg@bad.crufty.net>
94 * auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc.
96 2017-03-18 Simon J. Gerraty <sjg@bad.crufty.net>
98 * mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_*
100 2017-03-01 Simon J. Gerraty <sjg@bad.crufty.net>
102 * install-mk (MK_VERSION): 20170301
104 * dirdeps.mk (_build_all_dirs): update this outside test for empty
107 * meta.stage.mk: allow multiple inclusion to the extent it makes
110 2017-02-14 Simon J. Gerraty <sjg@bad.crufty.net>
112 * prog.mk (install_links): depends on realinstall
114 2017-02-12 Simon J. Gerraty <sjg@bad.crufty.net>
116 * install-mk (MK_VERSION): 20170212
118 * dpadd.mk: avoid applying :T:R twice to DPLIBS entries
120 2017-01-30 Simon J. Gerraty <sjg@bad.crufty.net>
122 * install-mk (MK_VERSION): 20170130
124 * dirdeps.mk: use :range if we can.
126 * sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130
128 * meta2deps.py: clean paths without using realpath() where possible.
131 2016-12-12 Simon J. Gerraty <sjg@bad.crufty.net>
133 * install-mk (MK_VERSION): 20161212
135 * meta2deps.py: set pid_cwd[pid] when we process 'C'hdir,
136 rather than when we detect pid change.
138 2016-12-07 Simon J. Gerraty <sjg@bad.crufty.net>
140 * install-mk (MK_VERSION): 20161207
142 * meta.stage.mk: add stage_as_and_symlink for staging packages.
143 We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able
144 to use foo.tgz to reference the latest staged version - so we
145 make foo.tgz a symlink to it.
146 Using a target to do both operations ensures we stay in sync.
148 2016-11-26 Simon J. Gerraty <sjg@bad.crufty.net>
150 * install-mk (MK_VERSION): 20161126
152 * dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk
153 so it can add dependencies.
155 2016-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
157 * dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE
158 do that they can influence the result correctly.
160 * dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC
162 * dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST
163 similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST
165 2016-10-05 Simon J. Gerraty <sjg@bad.crufty.net>
167 * dirdeps.mk: remove dependence on jot (normal situations anyway).
168 Before we read another Makefile.depend* set DEP_* vars from
169 _DEP_TARGET_SPEC in case it uses any of them with :=
170 When bootstrapping, trim any ,* from extention of chosen _src
171 Makefile.depend* to get the machine value we subst for.
173 2016-09-30 Simon J. Gerraty <sjg@bad.crufty.net>
175 * dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to
176 DEP_SKIP_DIR and DEP_DIRDEPS_FILTER
178 * sys.mk: extract some bits to sys.{debug,vars}.mk
179 for easier re-use by others.
181 2016-09-23 Simon Gerraty <sjg@sjg-mba13>
183 * lib.mk: Use ${PICO} for extension for PIC objects.
184 default to .pico (like NetBSD) safe on case insensitive filesystem.
186 2016-08-19 Simon J. Gerraty <sjg@bad.crufty.net>
188 * meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default
190 2016-08-15 Simon J. Gerraty <sjg@bad.crufty.net>
192 * install-mk (MK_VERSION): 20160815
194 * dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only
195 consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date.
197 2016-08-13 Simon J. Gerraty <sjg@bad.crufty.net>
199 * meta.sys.mk (.MAKE.META.IGNORE_PATHS):
200 in meta mode we can ignore the mtime of makefiles
202 2016-08-02 Simon J. Gerraty <sjg@bad.crufty.net>
204 * install-mk (MK_VERSION): 20160802
206 * lib.mk (libinstall): depends on beforinstall
208 * prog.mk (proginstall): depends on beforinstall
209 patch from Lauri Tirkkonen
211 * dirdeps.mk (bootstrap): When bootstrapping; creat
212 .MAKE.DEPENDFILE_DEFAULT and allow additional filtering via
213 .MAKE.DEPENDFILE_BOOTSTRAP_SED
215 * dirdeps.mk: move some comments to where they make sense.
217 2016-07-27 Simon J. Gerraty <sjg@bad.crufty.net>
219 * dirdeps.mk (DIRDEPS_CACHE): no dirname.
221 2016-06-02 Simon J. Gerraty <sjg@bad.crufty.net>
223 * install-mk (MK_VERSION): 20160602
224 * meta.autodep.mk: when passing META_FILES to gendirdeps.mk
225 do not apply :T to META_XTRAS
226 patch from Bryan Drewery at FreeBSD.org.
228 2016-05-30 Simon J. Gerraty <sjg@bad.crufty.net>
230 * install-mk (MK_VERSION): 20160530
231 * meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH
234 2016-05-12 Simon J. Gerraty <sjg@bad.crufty.net>
236 * install-mk (MK_VERSION): 20160512
238 * dpadd.mk: always include local.dpadd.mk if it exists
239 remove some things that better belong in local.dpadd.mk
240 skip INCLUDES_* for staged libs unless SRC_* defined.
242 * own.mk: add INCLUDEDIR
244 2016-04-18 Simon J. Gerraty <sjg@bad.crufty.net>
246 * dirdeps.mk: when doing -f dirdeps.mk if target suppies no
247 TARGET_MACHINE - :E will be empty or match part of path, use
250 2016-04-07 Simon J. Gerraty <sjg@bad.crufty.net>
252 * meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to
255 * dirdeps.mk: move the logic that allows for
256 make -f dirdeps.mk some/dir.${TARGET_SPEC}
257 inside the check for !target(_DIRDEP_USE)
259 2016-04-04 Simon J. Gerraty <sjg@bad.crufty.net>
261 * Use <> when including local*.mk and others which may exist
262 elsewhere so that user can better control what they get.
264 * meta.autodep.mk (NO_FILEMON_COOKIE):
265 create a cookie if we ever build dir with nofilemon
266 so that UPDATE_DEPENDFILE will be forced to NO until cleaned.
268 2016-04-01 Simon J. Gerraty <sjg@bad.crufty.net>
270 * install-mk (MK_VERSION): 20160401
272 * meta2deps.py: fix old print statement when debugging.
274 * gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X
275 patch from Bryan Drewery
277 2016-03-22 Simon J. Gerraty <sjg@bad.crufty.net>
279 * install-mk (MK_VERSION): 20160317 (St. Pats)
281 * warnings.mk: g++ does not like -Wimplicit
283 * sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the
284 pelthora of common suffixes for C++
286 * lib.mk: use .So for shared objects
288 2016-03-15 Simon J. Gerraty <sjg@bad.crufty.net>
290 * install-mk (MK_VERSION): 20160315
292 * meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1)
293 normally only applies to scripts.
295 * dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as
298 2016-03-10 Simon J. Gerraty <sjg@bad.crufty.net>
300 * install-mk (MK_VERSION): 20160310
302 * dirdeps.mk: use targets rather than a list to track DIRDEPS that
303 we have processed; the list gets very inefficient as number of
306 * sys.dependfile.mk: fix comment wrt MACHINE
308 * meta.autodep.mk: ignore staged DPADDs when bootstrapping.
309 patch from Bryan Drewery
311 2016-03-02 Simon J. Gerraty <sjg@bad.crufty.net>
313 * meta2deps.sh: don't ignore subdirs.
314 patch from Bryan Drewery
316 2016-02-26 Simon J. Gerraty <sjg@bad.crufty.net>
318 * install-mk (MK_VERSION): 20160226
320 * gendirdeps.mk: mark _DEPENDFILE .NOMETA
322 2016-02-20 Simon J. Gerraty <sjg@bad.crufty.net>
324 * dirdeps.mk: we shouldn't normally include .depend but if we do
325 use .dinclude if we can.
327 2016-02-18 Simon J. Gerraty <sjg@bad.crufty.net>
329 * install-mk (MK_VERSION): 20160218
330 * sys.clean-env.mk: with recent change to Var_Subst()
331 we cannot use the '$$' trick, but .export-literal does the job
333 * auto.dep.mk: make use .dinclude if we can.
336 2016-02-05 Simon J. Gerraty <sjg@bad.crufty.net>
339 Add _build_all_dirs such that local.dirdeps.mk can
340 add fully qualified dirs to it.
341 These will be built normally but the current
342 DEP_RELDIR will not depend on then (to avoid cycles).
343 This makes it easy to hook things like unit-tests into build.
346 2016-01-21 Simon J. Gerraty <sjg@bad.crufty.net>
348 * dirdeps.mk: add bootstrap-empty
350 2015-12-12 Simon J. Gerraty <sjg@bad.crufty.net>
352 * install-mk (MK_VERSION): 20151212
353 * auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist.
354 only apply :tA to __objdir when comparing to .OBJDIR
356 2015-11-14 Simon J. Gerraty <sjg@bad.crufty.net>
358 * install-mk (MK_VERSION): 20151111
360 * meta.sys.mk: include sys.dependfile.mk
362 * sys.mk (OPTIONS_DEFAULT_NO): use options.mk
363 to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD
364 include local.sys.env.mk early
365 include local.sys.mk later
367 * own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk
369 2015-11-13 Simon J. Gerraty <sjg@bad.crufty.net>
371 * meta.sys.mk (META_COOKIE_TOUCH):
372 add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie
374 * meta.stage.mk: stage_libs should ignore SYMLINKS.
376 2015-10-23 Simon J. Gerraty <sjg@bad.crufty.net>
378 * install-mk (MK_VERSION): 20151022
380 * sys.mk: BSD/OS does not have 'type' as a shell builtin.
382 2015-10-20 Simon J. Gerraty <sjg@bad.crufty.net>
384 * install-mk (MK_VERSION): 20151020
386 * dirdeps.mk: Add logic for
387 make -f dirdeps.mk some/dir.${TARGET_SPEC}
389 2015-10-14 Simon J. Gerraty <sjg@bad.crufty.net>
391 * install-mk (MK_VERSION): 20151010
393 2015-10-02 Simon J. Gerraty <sjg@bad.crufty.net>
395 * meta.stage.mk: use staging: ${STAGE_TARGETS:...
396 to have stage_lins run last in non-jobs mode.
397 Use .ORDER only for jobs mode.
399 2015-09-02 Simon J. Gerraty <sjg@bad.crufty.net>
401 * rst2htm.mk: allow for per target flags etc.
403 2015-09-01 Simon J. Gerraty <sjg@bad.crufty.net>
405 * install-mk (MK_VERSION): 20150901
407 * doc.mk: create dir if needed use DOC_INSTALL_OWN
409 2015-06-15 Simon J. Gerraty <sjg@bad.crufty.net>
411 * install-mk (MK_VERSION): 20150615
413 * auto.obj.mk: allow use of MAKEOBJDIRPREFIX too.
414 Follow make's normal precedence rules.
416 * gendirdeps.mk: allow customization of the header.
418 GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}';
420 * meta.autodep.mk: ignore dirdeps.cache*
422 * meta.stage.mk: when bootstrapping options it can be handy to
423 throw warnings rather than errors for staging conflicts.
425 * meta.sys.mk: include local.meta.sys.mk for customization
427 2015-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
429 * install-mk (MK_VERSION): 20150606
431 * dirdeps.mk: don't rely on manually maintained Makefile.depend
432 to set DEP_RELDIR and reset DIRDEPS.
433 By setting DEP_RELDIR ourselves we can skip :tA
435 * gendirdeps.mk: skip setting DEP_RELDIR.
437 2015-05-24 Simon J. Gerraty <sjg@bad.crufty.net>
439 * dirdeps.mk: avoid wildcards like make(bootstrap*)
441 2015-05-20 Simon J. Gerraty <sjg@bad.crufty.net>
443 * install-mk (MK_VERSION): 20150520
445 * dirdeps.mk: when we are building dirdeps cache file we *want*
446 meta_oodate to look at all the Makefile.depend files, so
447 set .MAKE.DEPENDFILE to something that won't match.
449 * meta.stage.mk: for STAGE_AS_* basename of file may not be unique
450 so first use absolute path as key.
451 Also skip staging at level 0.
453 2015-04-30 Simon J. Gerraty <sjg@bad.crufty.net>
455 * install-mk (MK_VERSION): 20150430
457 * dirdeps.mk: fix _count_dirdeps for non-cache case.
459 2015-04-16 Simon J. Gerraty <sjg@bad.crufty.net>
461 * install-mk (MK_VERSION): 20150411
464 * own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES.
465 it is here mainly for documentation purposes, since
466 if using auto.obj.mk it is better done via sys.mk
468 2015-04-01 Simon J. Gerraty <sjg@bad.crufty.net>
470 * install-mk (MK_VERSION): 20150401
472 * meta2deps.sh: support @list
474 * meta2deps.py: updates from Juniper
476 o skip bogus input files.
477 o treat 'M' and 'L' as both an 'R' and a 'W'
479 2015-03-03 Simon J. Gerraty <sjg@bad.crufty.net>
481 * install-mk (MK_VERSION): 20150303
483 * dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache
484 which is built via sub-make so we have a .meta file to tell if
486 The dirdeps-cache contains the same dependency rules that we
487 normaly construct on the fly.
488 This adds a few seconds overhead when the cache is out of date,
489 but for a large target, the savings can be significant (10-20min).
491 2014-11-18 Simon J. Gerraty <sjg@bad.crufty.net>
493 * install-mk (MK_VERSION): 20141118
495 * meta.stage.mk: add stale_staged
497 * dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked
498 only useful under very rare conditions such as
499 FreeBSD's make universe.
501 * auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto
503 2014-11-11 Simon J. Gerraty <sjg@bad.crufty.net>
505 * install-mk (MK_VERSION): 20141111
507 * mkopt.sh: use consistent semantics for _mk_opt and _mk_opts
509 2014-11-09 Simon J. Gerraty <sjg@bad.crufty.net>
511 * FILES: include mkopt.sh which allows handling options in shell
512 scripts in a manner compatible with options.mk
514 2014-10-12 Simon J. Gerraty <sjg@bad.crufty.net>
516 * meta.stage.mk: ensure only _STAGED_DIRS under objroot are used
517 for GENDIRDEPS_FILTER to avoid surprises.
519 2014-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
521 * dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by
522 the time it is applied to __depdirs they have.
524 * dirdeps.mk fix filtering of _machines since M_dep_qual_fixes
525 expects patterns like *.${MACHINE}
527 * cython.mk (pyprefix?): use pyprefix to find python bits
528 since prefix might be something else (where we install our
531 2014-09-11 Simon J. Gerraty <sjg@bad.crufty.net>
533 * install-mk (MK_VERSION): 20140911
535 * dirdeps.mk: add bootstrap target to simplify adding support for
538 2014-09-01 Simon J. Gerraty <sjg@bad.crufty.net>
540 * gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and
541 GENDIRDEPS_FILTER_VARS to make it easier to produce sharable
542 Makefile.depend files.
544 2014-08-28 Simon J. Gerraty <sjg@bad.crufty.net>
546 * install-mk (MK_VERSION): 20140828
548 * cython.mk: capture logic for building python extension modules
551 2014-08-08 Simon J. Gerraty <sjg@bad.crufty.net>
553 * meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant
555 2014-08-02 Simon J. Gerraty <sjg@bad.crufty.net>
557 * install-mk (MK_VERSION): 20140801
559 * dep.mk: use explicit MKDEP_MK rather than overload MKDEP to
560 identify the autodep.mk variant.
562 * sys.dependfile.mk: delete .MAKE.DEPENDFILE if its
563 initial value does not match .MAKE.DEPENDFILE_PREFIX
565 * meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS
567 2014-05-22 Simon J. Gerraty <sjg@bad.crufty.net>
569 * install-mk (MK_VERSION): 20140522
571 * lib.mk: use CC to link shlib for linux too
572 patch from Brendan MacDonell
574 2014-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
576 * meta.autodep.mk: add _reldir_{finish,failed} for gathering stats
577 if WITH_META_STATS is defined.
579 2014-05-02 Simon J. Gerraty <sjg@bad.crufty.net>
581 * dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS)
582 to supress dirdeps outside of .CURDIR.
584 2014-04-05 Simon J. Gerraty <sjg@bad.crufty.net>
586 * Fix spelling errors - patch from Pedro Giffuni
588 2014-03-14 Simon J. Gerraty <sjg@bad.crufty.net>
590 * install-mk (MK_VERSION): 20140314
592 * dirdeps.mk (beforedirdeps): a handy hook
594 * dirdeps.mk (DIRDEP_MAKE): allow the actual command we run
595 to visit leaf dirs to be intercepted (eg. for distributed
598 * dirdeps.mk (__depdirs): ensure // don't sneak in
600 * gendirdeps.mk (DIRDEPS): ensure // don't sneak in
603 2014-02-21 Simon J. Gerraty <sjg@bad.crufty.net>
605 * rst2htm.mk (RST2PDF): add support for rst2pdf
607 2014-02-14 Simon J. Gerraty <sjg@bad.crufty.net>
609 * install-mk (MK_VERSION): bump version
610 * dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if
613 2014-02-10 Simon J. Gerraty <sjg@bad.crufty.net>
615 * options.mk: avoid :U so this isn't bmake dependent
617 2014-02-09 Simon J. Gerraty <sjg@bad.crufty.net>
619 * options.mk: cleanup and simplify semanitcs
620 NO_* dominates all, if both WITH_* and WITHOUT_*
621 are defined then result is DOMINATE_* which defaults to "no".
622 Ie. WITHOUT_ normally wins.
624 2013-12-12 Simon J. Gerraty <sjg@bad.crufty.net>
626 * install-mk (MK_VERSION): bump version
627 * meta2deps.py: convert to print function for python3 compat.
628 we also need to open files with mode 'r' rather than 'rb'
629 otherwise we get bytes instead of strings.
631 2013-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
633 * install-mk (MK_VERSION): bump version
635 * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE
636 apply the same filtering (M_dep_qual_fixes) when setting _machines
638 Also fix the filtering of Makefile.depend files - for reporting
639 what we are looking for (M_dep_qual_fixes can get confused by
641 Add some more debug info.
643 2013-09-04 Simon J. Gerraty <sjg@bad.crufty.net>
645 * gendirdeps.mk (_objtops): fix typo also
646 while processing M2D_OBJROOTS to gather qualdir_list
647 qualify $ql with loop iterator to ensure correct results.
649 2013-08-01 Simon J. Gerraty <sjg@bad.crufty.net>
651 * install-mk (MK_VERSION): 20130801
652 * libs.mk: update to match progs.mk
654 2013-07-26 Simon J. Gerraty <sjg@bad.crufty.net>
656 * install-mk (MK_VERSION): 20130726
657 some updates from Juniper and FreeBSD
658 o meta2deps.py: indicate file and line number when we hit parse
660 also allow @file to provide huge list of .meta files.
661 * meta2deps.py: add try_parse() to cleanup the above.
663 2013-07-16 Simon J. Gerraty <sjg@bad.crufty.net>
665 * install-mk (MK_VERSION): 20130716
666 * own.mk: add GPROG as an option
667 * prog.mk: honor MK_GPROF==yes
669 2013-05-10 Simon J. Gerraty <sjg@bad.crufty.net>
671 * install-mk (MK_VERSION): 20130505
672 * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC
673 for when $MACHINE isn't enough for objdir distinction.
674 Bring meta2deps.sh closer to par with meta2deps.py.
676 2013-04-18 Simon J. Gerraty <sjg@bad.crufty.net>
678 * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all'
679 also if the target 'beforeinstall' exists, make it depend on
680 .dirdep (incase it uses STAGE_INSTALL).
682 2013-04-17 Simon J. Gerraty <sjg@bad.crufty.net>
684 * install-mk (MK_VERSION): 20130401 ;-)
685 * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as
686 wrapper around install(1).
687 * options.mk (OPTION_PREFIX): Allow a prefix other than MK_
689 2013-03-30 Simon J. Gerraty <sjg@bad.crufty.net>
691 * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized.
692 * install-mk (MK_VERSION): bump version
694 2013-03-21 Simon J. Gerraty <sjg@bad.crufty.net>
696 * install-mk (MK_VERSION): bump version
697 * gendirdeps.mk: do not apply :tA to DPADD entries, since we lose
698 any trailing /., rather apply :tA only when needed.
699 * gendirdeps.mk: better mimic meta2deps handling of .dirdep files.
700 * meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance
702 * dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC.
704 2013-03-18 Simon J. Gerraty <sjg@bad.crufty.net>
706 * gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT
707 it is simpler to just not update when say building for "host"
708 (where we know we apply filters to DIRDEPS), and using a
709 non-machine qualified dependfile.
711 2013-03-16 Simon J. Gerraty <sjg@bad.crufty.net>
713 * dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR
714 and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC
715 * gendirdeps.mk: ensure _objroot has trailing / if it needs it.
716 * meta2deps.py: if machine is "host", then also trim
717 self.host_target from any OBJROOTS.
720 2013-03-11 Simon J. Gerraty <sjg@bad.crufty.net>
722 * gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine
723 qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists
724 but _DEPENDFILE does not, compare the new _DEPENDFILE against
725 .MAKE.DEPENDFILE_DEFAULT and discard if the same.
727 2013-03-08 Simon J. Gerraty <sjg@bad.crufty.net>
729 * meta.stage.mk: use STAGE_TARGETS to control .ORDER
730 and hook to all: via staging:
732 2013-03-07 Simon J. Gerraty <sjg@bad.crufty.net>
734 * sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT):
735 use a separate variable for the default .MAKE.DEPENDFILE value
736 so that it can be controlled independently of
737 .MAKE.DEPENDFILE_PREFERENCE
739 * meta.stage.mk: throw error if cp fails etc.
740 Stage*() return early if passed no args.
743 2013-03-03 Simon J. Gerraty <sjg@bad.crufty.net>
745 * install-mk (MK_VERSION): bump version
746 * gendirdeps.mk: handle multiple M2D_OBJROOTS better.
748 2013-02-10 Simon J. Gerraty <sjg@bad.crufty.net>
750 * install-mk (MK_VERSION): bump version to 20130210
751 * import latest dirdeps.mk, gendirdeps.mk and meta2deps.py
753 o dirdeps.mk now fully supports TARGET_SPEC consisting of more
755 o no longer use DEP_MACHINE from Makefile.depend* so remove it.
757 2013-01-23 Simon J. Gerraty <sjg@bad.crufty.net>
759 * install-mk (MK_VERSION): bump version to 20130123
760 * meta.stage.mk: add stage_links (hard links).
761 if doing hard links, we add dest to link as well.
762 Default the stage dir for [sym]links to STAGE_OBJTOP since
763 these are typically specified as absolute paths.
764 Add -m "mode" flag to StageFiles and StageAs.
766 2012-11-11 Simon J. Gerraty <sjg@bad.crufty.net>
768 * install-mk (MK_VERSION): bump version to 20121111
769 * autoconf.mk: avoid meta mode seeing changed commands for config.status
770 * meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps
771 in case we were found via .../mk
772 * sys.clean-env.mk: move it from examples, we and others use it
774 * FILES: add srctop.mk and options.mk
775 * own.mk: convert to using options.mk
776 which is modeled after FreeBSD's handling of MK_*
778 This allows MK_* for boolean knobs to not be confused
779 with MK* which can be commands.
781 * examples/sys.clean-env.mk: add WITH[OUT]_ to
782 MAKE_ENV_SAVE_PREFIX_LIST.
783 Mention that HOME=/var/empty might be a good idea.
785 2012-11-08 Simon J. Gerraty <sjg@bad.crufty.net>
787 * sys.dependfile.mk: if not depend file exists, $MACHINE
788 specific ones are supported but not the default,
789 check if any exist and follow suit.
791 2012-11-06 Simon J. Gerraty <sjg@bad.crufty.net>
793 * install-mk (MK_VERSION): bump version to 20121106
795 2012-11-05 Simon J. Gerraty <sjg@bad.crufty.net>
797 * import latest dirdeps.mk and meta2deps.py from Juniper.
798 * progs.mk: add MAN and CXXFLAGS to PROG_VARS
799 also add PROGS_TARGETS and pass on PROG_CXX if it seems
802 2012-11-04 Simon J. Gerraty <sjg@bad.crufty.net>
804 * meta.stage.mk: update CLEANFILES
805 remove redundant cp of .dirdep from STAGE_AS_SCRIPT.
806 * progs.mk: Add LDADD to PROG_VARS
808 2012-10-12 Simon J. Gerraty <sjg@bad.crufty.net>
810 * meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in
811 _STAGED_DIRS so that these can be turned into filters for
814 2012-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
816 * install-mk (MK_VERSION): bump version to 20121010
817 * meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing
818 target.dirdep matches .dirdep
820 2012-08-08 Simon J. Gerraty <sjg@bad.crufty.net>
822 * install-mk (MK_VERSION): bump version to 20120808
823 * import latest meta2deps.py from Juniper.
825 2012-07-11 Simon J. Gerraty <sjg@bad.crufty.net>
827 * install-mk (MK_VERSION): bump version to 20120711
828 * dep.mk: add explicit dependencies on SRCS after applying
830 * meta.autodep.mk: add explicit dependencies on SRCS after
831 applying SRCS_DEP_FILTER
832 * meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed.
834 2012-06-26 Simon J. Gerraty <sjg@bad.crufty.net>
836 * install-mk (MK_VERSION): bump version to 20120626
837 * meta.sys.mk: ignore PYTHON if it does not exist
838 compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable.
839 * meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any
840 entries ending in .${MACHINE} to decide if qualified _dirdep is
842 * gendirdeps.mk: only produce unqualified deps if no
843 .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE}
844 * meta.subdir.mk: apply SUBDIRDEPS_FILTER
846 2012-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
848 * install-mk (MK_VERSION): bump version to 20120420
849 * add sys.dependfile.mk so we can experiment with
850 .MAKE.DEPENDFILE_PREFERENCE
851 * meta.autodep.mk: _DEPENDFILE is precious!
853 2012-03-15 Simon J. Gerraty <sjg@bad.crufty.net>
855 * install-mk (MK_VERSION): bump version to 20120315
856 * install-new.mk: avoid being interrupted
858 2012-02-26 Simon J. Gerraty <sjg@bad.crufty.net>
860 * man.mk: MAN might have multiple values so be careful with exists().
862 2012-01-19 Simon J. Gerraty <sjg@bad.crufty.net>
864 * install-mk (MK_VERSION): bump version to 20120112
865 * fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled
866 as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
868 2011-12-03 Simon J. Gerraty <sjg@bad.crufty.net>
870 * install-mk (MK_VERSION): bump version to 20111201
871 * import dirdeps.mk from Juniper sjg@
872 o more consistent handling of DEP_MACHINE, especially when
873 dealing with an odd Makefile.depend, when normally using
874 Makefile.depend.${MACHINE}
876 2011-11-22 Simon J. Gerraty <sjg@bad.crufty.net>
878 * install-mk (MK_VERSION): bump version to 20111122
879 * meta.autodep.mk: add some debug output, be more crisp about
880 updating. Use ${.ALLTARGETS:M*.o} as a clue for .depend
882 2011-11-13 Simon J. Gerraty <sjg@bad.crufty.net>
884 * install-mk (MK_VERSION): bump version to 20111111
885 it's too cool to miss
886 * import meta* updates from Juniper sjg@
887 o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are
888 normally using Makefile.depend.${MACHINE}), handy for
889 read-only manually maintained dependencies.
890 o meta2deps.py add a clear 'ERROR:' token if an exception is raised.
891 o gendirdeps.mk if ERROR: from meta2deps.py do not update
894 2011-10-30 Simon J. Gerraty <sjg@bad.crufty.net>
896 * install-new.mk separate the cmp and copy logic to its own function.
898 2011-10-28 Simon J. Gerraty <sjg@bad.crufty.net>
900 * install-mk (MK_VERSION): bump version to 20111028
901 * sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto
902 * subdir.mk: ensure _SUBDIRUSE is provided
903 * meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk
904 * meta.subdir.mk: always allow for Makefile.depend
906 2011-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
908 * install-mk (MK_VERSION): bump version to 20111010
909 o minor tweak to *dirdeps.mk from Juniper sjg@
911 2011-10-01 Simon J. Gerraty <sjg@bad.crufty.net>
913 * install-mk (MK_VERSION): bump version to 20111001
914 o add meta2deps.py from Juniper sjg@
915 o tweak gendirdeps.mk to work with meta2deps.py when not
917 * autoconf.mk: add autoconf-input as a hook for regenerating
918 AUTOCONF_INPUTS (configure).
920 2011-08-24 Simon J. Gerraty <sjg@bad.crufty.net>
922 * meta.autodep.mk: if we do not have OBJS, .depend isn't a useful
923 trigger for updating Makefile.depend*
925 2011-08-08 Simon J. Gerraty <sjg@bad.crufty.net>
927 * install-mk (MK_VERSION): bump version to 20110808
928 * obj.mk: minor cleanup
929 * auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too.
931 2011-08-01 Simon J. Gerraty <sjg@bad.crufty.net>
933 * auto.obj.mk (.OBJDIR): throw an error if we cannot use the
936 2011-06-28 Simon J. Gerraty <sjg@bad.crufty.net>
938 * meta.autodep.mk: if XMAKE_META_FILE is set
939 the makefile uses a foreign make, and so dependencies
940 can only be gathered from a clean tree build.
942 2011-06-24 Simon J. Gerraty <sjg@bad.crufty.net>
944 * install-mk (MK_VERSION): bump version to 20110622
945 * meta.autodep.mk: improve bootstraping
947 2011-06-10 Simon J. Gerraty <sjg@bad.crufty.net>
949 * yacc.mk: handle the corner case of .c being removed
952 2011-06-08 Simon J. Gerraty <sjg@bad.crufty.net>
954 * yacc.mk: do .y.h and .y.c separately
956 2011-06-04 Simon J. Gerraty <sjg@bad.crufty.net>
958 * install-mk (MK_VERSION): bump version to 20110606
959 * don't store SRC_DIRDEPS in Makefile.depend* by default
960 not everyone needs it.
962 2011-05-04 Simon J. Gerraty <sjg@bad.crufty.net>
964 * install-mk (MK_VERSION): bump version to 20110505
965 first release including meta mode makefiles
967 2011-05-02 Simon J. Gerraty <sjg@bad.crufty.net>
969 * meta.stage.mk: add STAGE_AS_SETS and stage_as
970 for things that need to be staged with different names.
972 2011-05-01 Simon J. Gerraty <sjg@bad.crufty.net>
974 * meta.stage.mk: add notion of STAGE_SETS
975 so a makefile can stage to multiple dirs
977 2011-04-03 Simon J. Gerraty <sjg@bad.crufty.net>
979 * rst2htm.mk: convert rst to s5 (slides) or plain html depending
982 2011-03-30 Simon J. Gerraty <sjg@bad.crufty.net>
984 * install-mk (MK_VERSION): bump version to 20110330
986 2011-03-29 Simon J. Gerraty <sjg@bad.crufty.net>
988 * sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0
989 can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest.
990 * sys.mk: re-define M_whence in terms of M_type.
991 M_type is useful for checking if something is a builtin.
993 2011-03-16 Simon J. Gerraty <sjg@bad.crufty.net>
995 * meta.stage.mk: add stage_symlinks and leverage StageLinks for
998 2011-03-10 Simon J. Gerraty <sjg@bad.crufty.net>
1000 * dirdeps.mk: correct value for _depdir_files depends on
1002 Add our copyright - just to make it clear we have frobbed this
1004 DEP_MACHINE needs to be set to MACHINE each time, if using only
1005 Makefile.depend (cf. Makefile.depend.${MACHINE})
1007 * meta.stage.mk: meta mode version of staging
1009 * init.mk, final.mk: include local.*.mk to simplify customization
1011 2011-03-03 Simon J. Gerraty <sjg@bad.crufty.net>
1013 * auto.obj.mk: just because we are doing mk destroy, we should
1014 still set .OBJDIR correctly if it exists.
1016 * install-mk (mksrc): do not exclude meta.sys.mk
1018 2011-03-01 Simon J. Gerraty <sjg@bad.crufty.net>
1020 * host-target.mk: set/export _HOST_ARCH etc separately,
1021 catch junk resulting from uname -p, so we can find sys/Linux.mk
1024 2011-02-18 Simon J. Gerraty <sjg@bad.crufty.net>
1026 * meta.sys.mk: throw an error if /dev/filemon is missing and we
1027 expected to be updating Makefile.depend*
1029 2011-02-14 Simon J. Gerraty <sjg@bad.crufty.net>
1031 * install-mk (MK_VERSION): bump version to 20110214
1032 * meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES
1034 2010-09-25 Simon J. Gerraty <sjg@bad.crufty.net>
1036 * meta.sys.mk: not valid for older bmake
1038 2010-09-24 Simon J. Gerraty <sjg@bad.crufty.net>
1040 * install-mk (MK_VERSION): bump version to 20100919
1041 include dirdeps.mk et al from Juniper Networks,
1042 for meta mode - requires filemon(9).
1043 * sys.mk, subdir.mk: Add hooks for meta mode.
1044 we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk
1045 to make turning it on/off simple.
1047 2010-06-16 Simon J. Gerraty <sjg@bad.crufty.net>
1049 * install-mk (MK_VERSION): bump version to 20100616
1050 * fix typo in sys.mk
1052 2010-06-12 Simon J. Gerraty <sjg@bad.crufty.net>
1054 * install-mk (MK_VERSION): bump version to 20100612
1055 * lib.mk: remove duplicate addition to SOBJS
1057 2010-06-10 Simon J. Gerraty <sjg@bad.crufty.net>
1059 * sys.mk: Add a means of selectively turning on debug flags.
1060 Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg"
1061 will act as if we did make -dv if .CURDIR ends in lib/sjg
1062 DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at
1063 the start of sys.mk rather than the end.
1064 This only makes sense for leaf dirs, so we check that
1067 2010-06-09 Simon J. Gerraty <sjg@bad.crufty.net>
1069 * install-mk (MK_VERSION): bump version to 20100608
1070 * sys.mk: include sys.env.mk later so it can use M_ListToSkip et al.
1071 * examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606
1072 also make it easier for folk to tweak
1074 2010-06-08 Simon J. Gerraty <sjg@bad.crufty.net>
1076 * install-mk (MK_VERSION): bump version to 20100606
1077 do not install examples/*
1078 * FILES: add examples/sys.clean-env.mk
1079 * examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR
1080 this requires bmake-20100606 or later to work.
1082 2010-05-13 Simon J. Gerraty <sjg@bad.crufty.net>
1084 * sys.mk (M_tA): better simulate the result of :tA if not available.
1086 2010-05-04 Simon J. Gerraty <sjg@bad.crufty.net>
1088 * sys.mk: canonicalize MAKE_VERSION
1089 old versions reported bmake-<src-date> build-<build-date>
1090 whereas we only care about <src-date>
1092 2010-04-25 Simon J. Gerraty <sjg@bad.crufty.net>
1094 * install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored
1095 * lib.mk: we only build the shared lib if SHLIB_FULLVERSION
1098 2010-04-22 Simon J. Gerraty <sjg@bad.crufty.net>
1100 * dpadd.mk: use LDADD_* if defined.
1102 2010-04-21 Simon J. Gerraty <sjg@bad.crufty.net>
1104 * install-mk (MK_VERSION): bump version to 20100420
1105 * sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy
1106 * autoconf.mk allow AUTO_AUTOCONF
1108 2010-04-19 Simon J. Gerraty <sjg@bad.crufty.net>
1110 * obj.mk: add objwarn to keep freebsd makefiles happy
1111 * auto.obj.mk: ensure Mkdirs is available.
1112 * FILES: add auto.dep.mk - a simpler version of autodep.mk
1113 * dep.mk: auto.dep.mk does not do 'make depend' so ignore it if
1115 fix/simplify the tests for when to run mkdep.
1116 * auto.dep.mk: add some explanation of how/what we do.
1117 * autodep.mk: skip the .OPTIONAL frobbing of .depend
1118 bmake's FROM_DEPEND flag makes it redundant.
1120 2010-04-13 Simon J. Gerraty <sjg@bad.crufty.net>
1122 * install-mk (MK_VERSION): bump version to 20100404
1123 * subdir.mk: protect from multiple inclusion using _SUBDIRUSE.
1124 * obj.mk: protect from multiple inclusion even as bsd.obj.mk
1125 Also create a target _SUBDIRUSE so that we can be used without
1128 2010-04-12 Simon J. Gerraty <sjg@bad.crufty.net>
1130 * dep.mk: use <> when .including so can override.
1132 2010-01-11 Simon J. Gerraty <sjg@bad.crufty.net>
1134 * lib.mk (SHLIB_LINKS): ensure a string comparison.
1136 2010-01-04 Simon J. Gerraty <sjg@bad.crufty.net>
1138 * install-mk (MK_VERSION): bump version to 20100102
1139 * own.mk: ensure PRINTOBJDIR works
1140 * autoconf.mk: pass on CONFIGURE_ARGS
1141 * init.mk: handle COPTS.${.IMPSRC:T} etc.
1142 * lib.mk: allow sys.mk to control SHLIB_FULLVERSION
1143 fix handling of symlinks for darwin
1144 * libnames.mk: add DSHLIBEXT for libs which only exist as shared.
1145 * man.mk: suppress chown when not root.
1146 * rst2htm.mk: allow srcs from multiple locations.
1147 * sys.mk: M_whence, stop after 1st line of output.
1148 * sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT
1149 * sys/SunOS.mk: we need to export PATH
1151 2009-12-23 Simon J. Gerraty <sjg@void.crufty.net>
1153 * install-mk (MK_VERSION): bump version
1156 2009-12-17 Simon J. Gerraty <sjg@void.crufty.net>
1158 * sys.mk,libnames.mk add .-include <local.*>
1159 this allows local customization without the need to edit the
1162 2009-12-14 Simon J. Gerraty <sjg@void.crufty.net>
1164 * dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up
1165 older versions already installed.
1167 2009-12-13 Simon J. Gerraty <sjg@void.crufty.net>
1169 * stage.mk (.stage-install): generalize lib.mk's .libinstall
1170 * rules.mk rules for generic Makefile.
1171 * inc.mk install for includes.
1173 2009-12-11 Simon J. Gerraty <sjg@void.crufty.net>
1175 * sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check
1176 this, so provide it if using native make.
1178 2009-12-10 Simon J. Gerraty <sjg@void.crufty.net>
1180 * FILES: move all the platform *.sys.mk files to sys/*.mk
1181 * Rename Generic.sys.mk to sys.mk - we always want it.
1183 2009-11-17 Simon J. Gerraty <sjg@void.crufty.net>
1185 * install-mk (MK_VERSION): bump version
1186 * host-target.mk: only export the expensive stuff
1187 * Generic.sys.mk (sys_mk): for SunOS we need to look for
1188 ${HOST_OS}.${HOST_OSMAJOR} too!
1190 2009-11-07 Simon J. Gerraty <sjg@void.crufty.net>
1192 * install-mk (MK_VERSION): bump version
1193 * lib.mk: if sys.mk doesn't give us an lorder, don't use it.
1194 based on patch from Greg Olszewski.
1195 * Generic.sys.mk: if we have nothing to work with
1196 set LORDER etc only if we can find it.
1198 2009-09-08 Simon J. Gerraty <sjg@void.crufty.net>
1200 * install-mk (MK_VERSION): bump version
1201 * man.mk: cleanman: remove CLEANMAN if defined.
1203 2009-09-04 Simon J. Gerraty <sjg@void.crufty.net>
1205 * SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk
1207 2009-07-17 Simon J. Gerraty <sjg@void.crufty.net>
1209 * install-mk (MK_VERSION): bump version
1213 2009-03-26 Simon J. Gerraty <sjg@void.crufty.net>
1215 * prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail.
1217 2008-11-11 Simon J. Gerraty <sjg@void.crufty.net>
1219 * install-mk (MK_VERSION): bump version
1220 man.mk: ensure we generate *.cat1 etc in .
1222 2008-07-16 Simon J. Gerraty <sjg@void.crufty.net>
1224 * install-mk (MK_VERSION): bump version
1227 2007-11-25 Simon J. Gerraty <sjg@void.crufty.net>
1229 * Generic.sys.mk: Allow os specific sys.mk to be in a
1230 subdir of ${.PARSEDIR}
1232 2007-11-22 Simon J. Gerraty <sjg@void.crufty.net>
1234 * install-mk (MK_VERSION): bump version
1236 * dpadd.mk introduce DPMAGIC_LIBS_*
1238 2007-04-30 Simon J. Gerraty <sjg@void.crufty.net>
1240 * install-mk (MK_VERSION): bump version
1242 * libs.mk, progs.mk, autodep.mk: allow for per lib/prog
1243 depend files and ensure clean is called for each lib/prog.
1245 2007-03-27 Simon J. Gerraty <sjg@void.crufty.net>
1247 * autodep.mk (.depend): delete lines that do not start with
1248 space and do not contain ':'
1250 2007-02-16 Simon J. Gerraty <sjg@void.crufty.net>
1252 * autodep.mk (.depend): gcc may wrap lines if pathnames are long
1253 so make sure the transform for .OPTIONAL copes.
1255 2007-02-03 Simon J. Gerraty <sjg@void.crufty.net>
1257 * install-mk (MK_VERSION): bump version
1259 * own.mk: make sure RM and LN are defined.
1261 * obj.mk: fix a typo, and objlink target.
1263 2006-12-30 Simon J. Gerraty <sjg@void.crufty.net>
1265 * install-mk (MK_VERSION): bump version
1266 * added libs.mk - analogous to progs.mk
1267 make both of them always inlcude {lib,prog}.mk
1269 2006-12-28 Simon J. Gerraty <sjg@void.crufty.net>
1271 * progs.mk: add a means of building multiple apps in one dir.
1273 2006-11-26 Simon J. Gerraty <sjg@void.crufty.net>
1275 * install-mk (MK_VERSION): bump version to 20061126
1277 * warnings.mk: detect invalid WARNINGS_SET
1279 * warnings.mk: use ${.TARGET:T:R}.o when looking for target
1282 * For .cc sources, turn off warnings that g++ vomits on.
1284 2006-11-08 Simon J. Gerraty <sjg@void.crufty.net>
1286 * own.mk: if __initialized__ target doesn't exist and we are
1287 FreeBSD we got here directly from sys.mk
1289 2006-11-06 Simon J. Gerraty <sjg@void.crufty.net>
1291 * install-mk (MK_VERSION): bump version to 20061106
1294 2006-03-18 Simon J. Gerraty <sjg@void.crufty.net>
1296 * install-mk (MK_VERSION): bump version to 20060318
1298 * autodep.mk: avoid := when modifying OBJS into __dependsrcs
1300 2006-03-02 Simon J. Gerraty <sjg@void.crufty.net>
1302 * install-mk (MK_VERSION): bump version to 20060302
1303 * autodep.mk: use -MF et al to help gcc+ccache DTRT.
1305 2006-03-01 Simon J. Gerraty <sjg@void.crufty.net>
1307 * install-mk (MK_VERSION): bump version to 20060301
1308 * autodep.mk (.depend):
1309 if MAKE_VERSION is newer than 20050530 we can make .END depend on
1310 .depend and make .depend depend on __depsrcs that exist.
1311 * dpadd.mk: add SRC_PATHADD
1313 2005-11-04 Simon J. Gerraty <sjg@void.crufty.net>
1315 * install-mk (MK_VERSION): bump version to 20051104
1316 * prog.mk: remove all the LIBC?= junk, use
1317 .-include libnames.mk instead (none by default).
1318 also if USE_DPADD_MK is set, include that.
1320 2005-10-09 Simon J. Gerraty <sjg@void.crufty.net>
1322 * install-mk (MK_VERSION): bump version to 20051001
1323 Add UnixWare.sys.mk from Klaus Heinz.
1325 2005-04-05 Simon J. Gerraty <sjg@void.crufty.net>
1327 * install-mk: always install *.sys.mk and if need be symlink one
1330 2005-03-22 Simon J. Gerraty <sjg@void.crufty.net>
1332 * subdir.mk, own.mk: use .MAKE rather than MAKE
1334 2004-02-15 Simon J. Gerraty <sjg@void.crufty.net>
1336 * own.mk: don't use NetBSD's _SRC_TOP_ it can
1337 cause confusion. Also don't take just 'mk' as a
1340 2004-02-14 Simon J. Gerraty <sjg@void.crufty.net>
1342 * warnings.mk: overhauled, now very powerful.
1344 2004-02-03 Simon J. Gerraty <sjg@void.crufty.net>
1346 * Generic.sys.mk: need to use ${.PARSEDIR} with exists().
1348 2004-02-01 Simon J. Gerraty <sjg@void.crufty.net>
1350 * install-mk (MK_VERSION): bump version to 20040201
1351 * extract HOST_TARGET stuff to host-target.mk so own.mk and
1352 Generic.sys.mk can share.
1353 * fix typo in autodep.mk _SUBDIRUSE not _SUBDIR.
1355 2003-09-30 Simon J. Gerraty <sjg@void.crufty.net>
1357 * install-mk (MK_VERSION): 20030930
1358 * rename generic.sys.mk to Generic.sys.mk
1359 so that it does not get installed (unless being used as sys.mk)
1360 * set OS and ROOT_GROUP for those that we know the value.
1361 for others (eg. Generic.sys.mk) wrap the != in an .ifndef so
1362 we don't do it again for each sub-make.
1364 2003-09-28 Simon J. Gerraty <sjg@void.crufty.net>
1366 * install-mk (MK_VERSION): 20030928
1367 Add some extra *.sys.mk from bootstrap-pkgsrc
1368 some of these likely still need work.
1369 Make everything default to root:wheel ownership,
1370 sys.mk can set ROOT_GROUP accordingly.
1372 2003-08-07 Simon J. Gerraty <sjg@void.crufty.net>
1374 * install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR
1375 not the portable ones.
1377 2003-07-31 Simon J. Gerraty <sjg@void.crufty.net>
1379 * install-mk: add ability to use cp -f when updating
1380 destination .mk files. Also now possible to play games with
1381 FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk
1382 into dest - not recommended unless you seriously want to.
1384 2003-07-28 Simon J. Gerraty <sjg@void.crufty.net>
1386 * own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc
1387 for semi-compatability with NetBSD.
1389 2003-07-23 Simon J. Gerraty <sjg@void.crufty.net>
1391 * install-mk: add a version indicator
1393 2003-07-22 Simon J. Gerraty <sjg@void.crufty.net>
1395 * prog.mk: don't try and use ${LIBCRT0} if its /dev/null
1397 * install-mk: Allow FORCE_SYS_MK to come from env