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