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