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