xref: /freebsd/contrib/bmake/mk/ChangeLog (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
12024-03-09  Simon J Gerraty  <sjg@beast.crufty.net>
2
3	* install-mk (MK_VERSION): 20240309
4
5	* meta.sys.mk: _metaError: if .ERROR_EXIT == 6, we do not
6	want to save the .ERROR_META_FILE
7
82024-02-20  Simon J Gerraty  <sjg@beast.crufty.net>
9
10	* install-mk (MK_VERSION): 20240220
11
12	* sys.dirdeps.mk, dirdeps-targets.mk, init.mk:
13	do not set .MAIN: dirdeps in sys.dirdeps.mk
14	dirdeps-targets.mk will do that for top-level builds
15	and init.mk will do it for others.
16	This allows a Makefile which has no need of 'dirdeps' to
17	set .MAIN for itself and "just work".
18
192024-02-18  Simon J Gerraty  <sjg@beast.crufty.net>
20
21	* bsd.*.mk: for makefiles that get a bsd. symlink,
22	use _this in  multiple inclusion tags since .PARSEFILE will not
23	DTRT when such a makefile is included directly by Makefile and
24	automatically (without bsd. prefix).
25	Since we cannot guarantee that our sys.mk will be used, we provide
26	a default _this in each makefile that gets a bsd. prefix such that
27	the value is the same regardless of bsd. prefix.
28
29	* subdir.mk: drop the !target guard on $SUBDIR_TARGETS
30
312024-02-12  Simon J Gerraty  <sjg@beast.crufty.net>
32
33	* install-mk (MK_VERSION): 20240212
34
35	* SPDX-License-Identifier: BSD-2-Clause
36	Add SPDX-License-Identifier to inidicate that I consider
37	my copyright on any of these makefiles equivalent to BSD-2-Clause
38
39	* autoconf.mk: allow for configure.ac as currently recommended
40
41	* subdir.mk: support @auto
42	which is replaced with each subdir that
43	has a [Mm]akefile.
44
45	* subdir.mk: include local.subdir.mk if it exists.
46
47	* subdir.mk: rework to handle .WAIT
48
492024-02-11  Simon J Gerraty  <sjg@beast.crufty.net>
50
51	* subdir.mk: _SUBDIRUSE report the target we are entering subdirs for.
52
532024-02-10  Simon J Gerraty  <sjg@beast.crufty.net>
54
55	* prog.mk: treat empty SRCS the same as undefined
56
572024-02-02  Simon J Gerraty  <sjg@beast.crufty.net>
58
59	* Avoid undefined errors in lint (-dL) mode
60
61	* man.mk (CMT2DOC_FLAGS): note that -mm does mdoc(7)
62
632024-01-28  Simon J Gerraty  <sjg@beast.crufty.net>
64
65	* install-mk (MK_VERSION): 20240128
66
67	* FILES: add ccm.dep.mk for C++ modules
68	add suffixes.mk for common location for generic SUFFIX rules.
69
70	* auto.dep.mk autodep.mk meta.autodep.mk: include ccm.dep.mk
71	replace OBJ_EXTENSIONS with OBJ_SUFFIXES
72
73	* autodep.mk: leverage CXX_SUFFIXES for __depsrcs
74	and update style (spaces around = etc)
75
76	* init.mk: add OBJS_SRCS_FILTER to filter SRCS when
77	setting OBJS
78
79	* meta2deps.py: handle multiple ./ embedded in path better.
80
812024-01-05  Simon J Gerraty  <sjg@beast.crufty.net>
82
83	* install-mk (MK_VERSION): 20240105
84	* dirdeps.mk: for MAKE_VERSION 20240105 we do not have the same
85	limits on command line length, so skip export of lists to env.
86
872023-12-24  Simon J Gerraty  <sjg@beast.crufty.net>
88
89	* man.mk: add logic for staging man pages
90
912023-11-28  Simon J Gerraty  <sjg@beast.crufty.net>
92
93	* jobs.mk: avoid C suffix in JOB_MAX_C if factor is floating
94	point.  This keeps JOB_MAX numeric incase another makefile does
95	comparisons.
96
972023-11-04  Simon J Gerraty  <sjg@beast.crufty.net>
98
99	* dpadd.mk: add support for DPLIBS_QUALIFIER_LIST
100
101	* gendirdeps.mk: if META_XTRAS is passed to us, add to META_FILES
102
1032023-10-03  Simon J Gerraty  <sjg@beast.crufty.net>
104
105	* compiler.mk (COMPILER_VERSION): clang at least is into
106	double digit major versions.
107
1082023-10-02  Simon J Gerraty  <sjg@beast.crufty.net>
109
110	* install-mk (MK_VERSION): 20231001
111
112	* set _CCLINK in init.mk so lib.mk can use it for default SHLIB_LD
113
114	* lib.mk (cleanlib): use LD_solink so we remove all the right files.
115	Use -Wl for -soname since we now default to linking with CC
116	We should not need SHLIB_LDSTARTFILE or SHLIB_LDENDFILE when linking
117	with CC.
118
1192023-09-24  Simon J Gerraty  <sjg@beast.crufty.net>
120
121	* init.mk (QUALIFIED_VAR_LIST): Add SRCS
122
1232023-09-09  Simon J Gerraty  <sjg@beast.crufty.net>
124
125	* jobs.mk (JOB_MAX): use -jC if we can
126	we actually use JOB_MAX_C which defaults to 1.33C
127
1282023-08-18  Simon J Gerraty  <sjg@beast.crufty.net>
129
130	* now_utc: %s only works with :localtime
131
1322023-07-14  Simon J Gerraty  <sjg@beast.crufty.net>
133
134	* install-sh: ignore -c as claimed and only insist on
135	a directory for destination when more than one file to copy.
136
137	* sys.mk: when looking for SYS_OS_MK try ${.MAKE.OS} and
138	${.MAKE.OS:S,64,,} early (so we find sys/IRIX.mk for IRIX64)
139
1402023-07-13  Simon J Gerraty  <sjg@beast.crufty.net>
141
142	* install-mk (MK_VERSION): 20230711
143
144	* sys.mk: set SYS_MK and INSTALL_SH for systems with incompatible
145	install(1)
146
147	* sys/IRIX.mk:  when setting ROOT_GROUP only match the first :0:
148	set INSTALL to install-sh rather than pathname that may not exist
149	(yet).
150
1512023-07-07  Simon J Gerraty  <sjg@beast.crufty.net>
152
153	* dirdeps.mk: pass DIRDEP_TARGETS to DIRDEP_MAKE
154	normally this is empty - for the default target, but there are
155	use-cases where we might set it to something else.
156
1572023-07-04  Simon J Gerraty  <sjg@beast.crufty.net>
158
159	* install-mk (MK_VERSION): 20230704
160
161	* dirdeps.mk: apply DEBUG_DIRDEPS_LIST_FILTER to lists we output
162	when DEBUG_DIRDEPS is in effect.
163	Eg. DEBUG_DIRDEPS_LIST_FILTER=ts\n
164	can greatly improve readability.
165
1662023-05-25  Simon J Gerraty  <sjg@beast.crufty.net>
167
168	* meta.autodep.mk (beforegendirdeps): allow tasks to be done
169	at END but before gendirdeps
170
1712023-05-22  Simon J Gerraty  <sjg@beast.crufty.net>
172
173	* install-mk (MK_VERSION): 20230522
174
175	* host-target.mk: deal with garbage from uname -m on
176	Darwin ppc, also NetBSD appears to use x86_64 for MACHINE_ARCH
177	these days so just leave it be.
178	For Darwin arm and i386 use _HOST_MACHINE for _HOST_ARCH so we get
179	arm64 and x86_64 in HOST_TARGET.
180
1812023-05-15  Simon J Gerraty  <sjg@beast.crufty.net>
182
183	* sys.vars.mk: M_mtime use :mtime or 'stat -f %m' for older
184	versions of bmake.
185
186	* dirdeps.mk (TARGET_SPEC_VARS.host):
187	While *most* projects need only DEP_MACHINE for host,
188	there is always an exception.  So we allow for
189	TARGET_SPEC_VARS.host to be a subset of TARGET_SPEC_VARS.
190	The default will *just work* for most projects.
191	We set DEP_TARGET_SPEC_VARS and hence DEP_TARGET_SPEC
192	based on DEP_MACHINE.
193	Allow for M_dep_qual_fixes.host to be different too
194	and take care to apply the right set.
195
1962023-05-14  Simon J Gerraty  <sjg@beast.crufty.net>
197
198	* sys.dirdeps.mk: we *do* want to override OBJTOP
199	and if MAKEOBJDIR was not in env as we want it;
200	put it there - carefully.
201	Ensure OBJROOT ends in / or - (/ preferred)
202	Add more comments to explain what/why.
203
2042023-05-13  Simon J Gerraty  <sjg@beast.crufty.net>
205
206	* install-mk (MK_VERSION): 20230512
207
208	* dirdeps.mk: take care not to qualify "host" dirdeps
209
210	* sys.dirdeps.mk (OBJTOP): must use ?=
211
2122023-05-10  Simon J Gerraty  <sjg@beast.crufty.net>
213
214	* meta.autodep.mk: if LOCAL_DEPENDS_GUARD is "no"
215	suppress processing of .depend
216
2172023-05-09  Simon J Gerraty  <sjg@beast.crufty.net>
218
219	* dirdeps.mk: do not add _CURDIR to DIRDEPS for SRCTOP
220
221	* meta.sys.mk sys.dirdeps.mk:
222	originally DIRDEPS_BUILD and META_MODE were the same thing,
223	but META_MODE is useful by itself.
224	Move things from meta.sys.mk which actually pertain to
225	DIRDEPS_BUILD to sys.dirdeps.mk
226
2272023-05-04  Simon J Gerraty  <sjg@beast.crufty.net>
228
229	* install-mk (MK_VERSION): 20230504 May the Forth be with you
230
231	* dirdeps.mk: as with meta.sys.mk we treat "host" as special.
232	DEP_TARGET_SPEC is just ${DEP_MACHINE}
233
234	* meta.sys.mk: ensure DEP_* for TARGET_SPEC_VARS are set at
235	level > 0 since these are often refered to in Makefile.depend*
236
2372023-04-26  Simon J Gerraty  <sjg@beast.crufty.net>
238
239	* jobs.mk: report ${.TARGET} ${JOB_ARGS} ${JOB_LOG} and
240	anything in ${JOB_LOG_START}
241
242	* jobs.mk: look for newlog.sh in ${.SYSPATH:U${.PARSEDIR}}
243	or a scripts subdir before searching $PATH.
244
245	* FILES: include newlog.sh for jobs.mk
246
2472023-04-20  Simon J Gerraty  <sjg@beast.crufty.net>
248
249	* install-mk (MK_VERSION): 20230420
250
251	* lib.mk: include LDFLAGS and LDADD when linking shared libs
252
253	* gendirdeps.mk: document setting GENDIRDEPS_FILTER_VARS etc
254	via local.meta.sys.mk rather than local.gendirdeps.mk
255	so DEP_* variables can be set at level 1+ to avoid syntax errors
256	when used in conditionals in manually maintained Makefile.depend
257	files.
258
259	* dirdeps.mk: ensure M_dep_qual_fixes is applied to all _machines
260
2612023-04-18  Simon J Gerraty  <sjg@beast.crufty.net>
262
263	* dirdeps.mk: check we were not included by
264	Makefile.depend.options as the result is bad.
265
2662023-04-14  Simon J Gerraty  <sjg@beast.crufty.net>
267
268	* install-mk (MK_VERSION): 20230414
269
270	* meta.sys.mk: since we have :range we can put the logic for
271	processing TARGET_SPEC from env here.
272
273	* dirdeps.mk: reset DIRDEPS and DEP_RELDIR before including
274	local.dirdeps-missing.mk, also improve debug output.
275
276	* dirdeps.mk: to allow make -f dirdeps.mk include.$TARGET_SPEC
277	we need to use :M*[/.]* same as for when actually setting DIRDEPS
278	from the targets on command line.
279
2802023-04-12  Simon J Gerraty  <sjg@beast.crufty.net>
281
282	* Add jobs.mk
283
2842023-03-21  Simon J Gerraty  <sjg@beast.crufty.net>
285
286	* install-mk (MK_VERSION): 20230321
287
288	* meta.stage.mk: allow STAGE_SHLIB_LINKS_FILTER to filter
289	STAGE_LIBS for SHLIB_LINKS.
290
291	* autoconf.mk: add .WAIT after config.status
292
2932023-02-17  Simon J Gerraty  <sjg@beast.crufty.net>
294
295	* sys.vars.mk: add M_Index to report the index of a word in a list.
296
2972023-02-15  Simon J Gerraty  <sjg@beast.crufty.net>
298
299	* install-mk (MK_VERSION): 20230215
300
301	* warnings.mk: allow better control of -Werror
302	allow -Wno-error or similar to be added if
303	WARNINGS_SET < WERROR_SET
304	account for COMPILER_TYPE
305
3062023-01-29  Simon J Gerraty  <sjg@beast.crufty.net>
307
308	* autoconf.mk: hook config.status to beforebuild.
309
310	* whats.mk: what*.c is NOTMAIN
311
3122023-01-27  Simon J Gerraty  <sjg@beast.crufty.net>
313
314	* install-mk (MK_VERSION): 20230127
315	control umask so directories are created with suitable mode.
316
3172023-01-20  Simon J Gerraty  <sjg@beast.crufty.net>
318
319	* install-mk (MK_VERSION): 20230120
320
321	* sys.vars.mk: add M_On and M_Onr also cleanup to be more
322	consistent wrt testing MAKE_VERSION
323
3242023-01-12  Simon J Gerraty  <sjg@beast.crufty.net>
325
326	* install-mk (MK_VERSION): 20230112
327
328	* meta2deps.{py,sh}: assert if filemon data is truncated
329	we should see the '# Bye bye' record - assert if we do not.
330
3312022-09-09  Simon J Gerraty  <sjg@beast.crufty.net>
332
333	* install-mk (MK_VERSION): 20220909
334
335	* sys/Linux.mk set EGREP to grep -E to avoid deprecation warnings
336
3372022-09-06  Simon J Gerraty  <sjg@beast.crufty.net>
338
339	* dirdeps-options.mk: explain the need to use
340	${DEP_${TARGET_SPEC_VAR}:U${TARGET_SPEC_VAR}} when refering to
341	${TARGET_SPEC_VAR}
342
3432022-09-03  Simon J Gerraty  <sjg@beast.crufty.net>
344
345	* install-mk (MK_VERSION): 20220903
346
347	* M_cmpv handle more than 3 dots and clear leading 0's
348
3492022-07-20  Simon J Gerraty  <sjg@beast.crufty.net>
350
351	* install-mk (MK_VERSION): 20220720
352
353	* prog.mk: handle PROG_CXX for more than just NetBSD
354
3552022-06-20  Simon J Gerraty  <sjg@beast.crufty.net>
356
357	* install-mk (MK_VERSION): 20220620
358
359	* yacc.mk: when we have *.y in SRCS used explicit rules and .ORDER
360	rather than just suffix rules
361
3622022-04-23  Simon J Gerraty  <sjg@beast.crufty.net>
363
364	* install-mk (MK_VERSION): 20220422
365
366	* gendirdeps.mk: If LOCAL_DEPENDS_GUARD is set to "no"
367	do not capture any local depends in Makefile.depend
368
3692022-03-25  Simon J Gerraty  <sjg@beast.crufty.net>
370
371	* install-mk (MK_VERSION): 20220323
372	* posix.mk: default rules for .POSIX:
373
3742022-03-17  Simon J Gerraty  <sjg@beast.crufty.net>
375
376	* sys/*.mk: remove l from ARFLAGS
377
3782022-03-14  Simon J Gerraty  <sjg@beast.crufty.net>
379
380	* install-mk (MK_VERSION): 20220314
381
382	* dirdeps-options.mk: allow options to be per RELDIR
383	try DIRDEPS_OPTIONS_QUALIFIER_LIST first prefixed
384	with ${DEP_RELDIR}.
385
3862022-02-14  Simon J Gerraty  <sjg@beast.crufty.net>
387
388	* install-mk (MK_VERSION): 20220214
389
390	* cc-wrap.mk: fix :@ modifier
391
3922022-02-06  Simon J Gerraty  <sjg@beast.crufty.net>
393
394	* install-mk (MK_VERSION): 20220206
395
396	* cc-wrap.mk: docuement how CCACHE etc might be set for
397	maximum flexibility
398
3992022-02-05  Simon J Gerraty  <sjg@beast.crufty.net>
400
401	* sys.vars.mk: use JOT_CMD (jot or seq) if available for M_JOT
402
4032022-02-04  Simon J Gerraty  <sjg@beast.crufty.net>
404
405	* install-mk (MK_VERSION): 20220204
406
407	* host-target.mk: use .MAKE.OS if available
408
4092022-02-02  Simon J Gerraty  <sjg@beast.crufty.net>
410
411	* install-mk (MK_VERSION): 20220202
412
413	* cc-wrap.mk: allow other entries in CC_WRAP_FILTER
414	We add our filter on extensions last, so prior filters
415	can apply to the whole value of .IMPSRC
416
4172022-02-01  Simon J Gerraty  <sjg@beast.crufty.net>
418
419	* cc-wrap.mk: take advantage of target local variables to
420	wrap compilers like CC CXX with wrappers like ccache distcc etc
421
4222022-01-28  Simon J Gerraty  <sjg@beast.crufty.net>
423
424	* meta2deps: we do not expect any trace data for setid apps
425
4262022-01-26  Simon J Gerraty  <sjg@beast.crufty.net>
427
428	* dirdeps.mk: ensure TARGET_SPEC and TARGET_SPEC_VARS are passed
429	to sub-make using DIRDEPS_CACHE
430
4312022-01-07  Simon J Gerraty  <sjg@beast.crufty.net>
432
433	* dirdeps.mk: use _cache_script to minimize the number of shells
434	forked when generating dirdeps.cache
435
4362022-01-02  Simon J Gerraty  <sjg@beast.crufty.net>
437
438	* install-mk (MK_VERSION): 20220101
439
440	* dirdeps.mk: initialize DEP_* and _debug_reldir earlier.
441	If initial DIRDEPS are from command line, create the target
442	_dirdeps_cmdline as an indication.
443
4442022-01-01  Simon J Gerraty  <sjg@beast.crufty.net>
445
446	* init.mk (_SKIP_BUILD): when doing DIRDEPS_BUILD
447	at top-level only some targets are allowed at level 0,
448	for leaf makefiles only the default (all) target is restricted
449
4502021-12-28  Simon J Gerraty  <sjg@beast.crufty.net>
451
452	* install-mk (MK_VERSION): 20211228
453
454	* meta2deps.py: filemon on Linux is not as reliable as we might
455	like, we do not want to update DIRDEPS if filemon output is
456	incomplete.   Track pids that we 'E'xec and make sure we see an
457	e'X'it for each one.  Throw an error if we are missing any 'X'
458	records.
459
4602021-12-12  Simon J Gerraty  <sjg@beast.crufty.net>
461
462	* sys.mk: simplify; include meta.sys.mk if MK_META_MODE is yes.
463
464	* meta.sys.mk: do not check for /dev/filemon if .MAKE.PATH_FILEMON
465	is something else.
466
467	* meta.autodep.mk: we can now reference ${.SUFFIXES}
468
469	* meta2deps.py: derive a list of dirdep extensions from
470	TARGET_SPEC to trim from dirdeps.
471
472	* dirdeps.mk: flip the computation of qualified vs unqualified
473	dirdeps - it is much simpler to check for unqualified first.
474
4752021-12-11  Simon J Gerraty  <sjg@beast.crufty.net>
476
477	* install-mk (MK_VERSION): 20211212
478
479	* auto.dep.mk: rearrange so that the trivial implementation
480	for recent bmake is more obvious.
481
4822021-12-07  Simon J Gerraty  <sjg@beast.crufty.net>
483
484	* install-mk (MK_VERSION): 20211207
485
486	* Ensure guard targets are .NOTMAIN
487
488	* meta.sys.mk: check for nofilemon support when we skip level 0
489
490	* auto.dep.mk: make this usable in meta mode
491	for platforms that cannot use meta.autodep.mk
492
493	* meta2deps.py: avoid confusion if MACHINE and another
494	TARGET_SPEC_VAR have same value.
495
4962021-11-27  Simon J Gerraty  <sjg@beast.crufty.net>
497
498	* dirdeps.mk: when building dirdeps.cache, minimize the amount of
499	data put into env, by stripping ${SRCTOP}/ from each entry.
500	A long sandbox name can double the amount of memory consumed and
501	in extreme cases cause failure.
502	While we are at it, strip ${SRCTOP}/ from a lot of the debug output.
503
5042021-11-11  Simon J Gerraty  <sjg@beast.crufty.net>
505
506	* install-mk (MK_VERSION): 20211111
507
508	* meta.stage.mk (LN_CP_SCRIPT): if staging to NFS cp -p can fail
509	so fallback to cp if necessary.
510
5112021-10-30  Simon J Gerraty  <sjg@beast.crufty.net>
512
513	* man.mk (CMT2DOC): use cmt2doc.py rather than the 30 year
514	old cmt2doc.pl
515
5162021-10-24  Simon J Gerraty  <sjg@beast.crufty.net>
517
518	* meta.stage.mk: stage_as_and_symlink use ${STAGE_LINK_AS_$f:U$f}
519	as the symlink (rare)
520
5212021-10-16  Simon J Gerraty  <sjg@beast.crufty.net>
522
523	* autoconf.mk: if AUTOCONF_GENERATED_MAKEFILE is set and has not
524	been read, throw an error after running configure telling user to
525	restart.
526
5272021-10-13  Simon J Gerraty  <sjg@beast.crufty.net>
528
529	* install-mk (MK_VERSION): 20211011
530
531	* Add support for SCO_SV
532
5332021-10-01  Simon J Gerraty  <sjg@beast.crufty.net>
534
535	* install-mk (MK_VERSION): 20211001
536
537	* man.mk: use MAN_SUFFIXES and CMT2DOC_SUFFIXES for more
538	flexibility
539
5402021-09-13  Simon J Gerraty  <sjg@beast.crufty.net>
541
542	* options.mk (describe-options): print options and their values
543	  and optional description
544
5452021-09-11  Simon J Gerraty  <sjg@beast.crufty.net>
546
547	* install-mk (MK_VERSION): 20210911
548
549	* options.mk (show-options): print options and their values
550
5512021-09-08  Simon J Gerraty  <sjg@beast.crufty.net>
552
553	* install-mk (MK_VERSION): 20210909
554
555	* lib.mk: apply patch from <daniel@octaforge.org>
556	to fix shared libs on Linux
557
5582021-08-08  Simon J Gerraty  <sjg@beast.crufty.net>
559
560	* install-mk (MK_VERSION): 20210808
561
562	* options.mk: issue warning for WITH_*=no
563
5642021-06-16  Simon J Gerraty  <sjg@beast.crufty.net>
565
566	* install-mk (MK_VERSION): 20210616
567
568	* dirdeps.mk: when using .MAKE.DEPENDFILE_PREFERENCE to find
569	depend files to read, anchor MACHINE at , or end of string
570	to avoid prefix match.
571
5722021-05-04  Simon J Gerraty  <sjg@beast.crufty.net>
573
574	* install-mk (MK_VERSION): 20210504
575
576	* dirdeps.mk: re-implement ALL_MACHINES support to better
577	cater for local complexities, when ONLY_TARGET_SPEC_LIST
578	is not set. local.dirdeps.mk can set
579	DIRDEPS_ALL_MACHINES_FILTER and/or
580	DIRDEPS_ALL_MACHINES_FILTER_XTRAS to filter the results we get
581	from listing all existing Makefile.depend.*
582
5832021-04-20  Simon J Gerraty  <sjg@beast.crufty.net>
584
585	* install-mk (MK_VERSION): 20210420
586
587	* dirdeps.mk: revert previous - not always safe.
588
5892021-03-20  Simon J Gerraty  <sjg@beast.crufty.net>
590
591	* install-mk (MK_VERSION): 20210321
592
593	* dirdeps.mk: when generating dirdeps.cache
594	we only need to hook the initial DIRDEPS to the
595	dirdeps target.  That and any _build_xtra_dirs (like tests which
596	should not be hooked directly to the dependency graph - to avoid
597	cycles)
598
5992021-01-30  Simon J Gerraty  <sjg@beast.crufty.net>
600
601	* install-mk (MK_VERSION): 20210130
602
603	* dirdeps.mk: expr 2 - 1 - 1 exits with a bad status
604	  we need to  guard against this in DIRDEP_LOADAVG_REPORT.
605
606	* dirdeps.mk: restore respect for TARGET_MACHINE
607
6082021-01-06  Simon J Gerraty  <sjg@beast.crufty.net>
609
610	* install-mk (MK_VERSION): 20210101
611
612	* dirdeps.mk: first time we are read, just use TARGET_SPEC for
613	_DEP_TARGET_SPEC
614
6152020-12-22  Simon J Gerraty  <sjg@beast.crufty.net>
616
617	* sys.mk (MAKE_SHELL): use ${.SHELL:Ush}
618	and use := when setting SHELL
619
6202020-12-21  Simon J Gerraty  <sjg@beast.crufty.net>
621
622	* install-mk (MK_VERSION): 20201221
623
624	* dirdeps-options.mk: latest bmake allows only one arg to .undef
625
6262020-12-11  Simon J Gerraty  <sjg@beast.crufty.net>
627
628	* dirdeps-targets.mk: allow for "." in DIRDEPS_TARGETS_DIRS
629	so that any directory can be treated as a target.
630
6312020-11-26  Simon J Gerraty  <sjg@beast.crufty.net>
632
633	* install-mk (MK_VERSION): 20201126
634
635	* own.mk: use .MAKE.{UID,GID} if available.
636
637	* init.mk: suppress _SKIP_BUILD warning if doing -V
638
6392020-11-20  Simon J Gerraty  <sjg@beast.crufty.net>
640
641	* install-mk (MK_VERSION): 20201120
642
643	* init.mk: rename LEVEL0_TARGETS to DIRDEPS_BUILD_LEVEL0_TARGETS
644
645	* dirdeps-targets.mk: fix typo in comment
646
6472020-11-06  Simon J Gerraty  <sjg@beast.crufty.net>
648
649	* install-mk (MK_VERSION): 20201106
650
651	* meta.autodep.mk: use OBJ_EXTENSIONS rather than hardcode sed
652	args to tweak extensions for local deps.
653
6542020-11-01  Simon J Gerraty  <sjg@beast.crufty.net>
655
656	* install-mk (MK_VERSION): 20201101
657
658	* dirdeps.mk: most leaf makefiles are not suitable for building
659	dirdeps.cache so if RELDIR is not "." use dirdeps.mk
660
6612020-10-28  Simon J Gerraty  <sjg@beast.crufty.net>
662
663	* install-mk (MK_VERSION): 20201028
664
665	* dirdeps.mk: if we don't have :range use equivalent of M_RANGE
666	when building dirdeps.cache for leaf directory use -f dirdeps.mk
667
668	* sys.vars.mk: add M_JOT and M_RANGE
669
6702020-10-01  Simon J Gerraty  <sjg@beast.crufty.net>
671
672	* install-mk (MK_VERSION): 20201001
673
674	* meta2deps.{py,sh}: throw an error if we don't see filemon version
675
6762020-09-09  Simon J Gerraty  <sjg@beast.crufty.net>
677
678	* install-mk (MK_VERSION): 20200909
679
680	* dirdeps-cache-update.mk: use cache_update_dirdep as guard target
681
6822020-08-26  Simon J Gerraty  <sjg@beast.crufty.net>
683
684	* dirdeps.mk: ensure we cannot confuse a static cache for dynamic
685	(even more rare that use of static cache is playing clever tricks
686	with it)
687
6882020-08-16  Simon J Gerraty  <sjg@beast.crufty.net>
689
690	* dirdeps-cache-update.mk: allow
691	MK_STATIC_DIRDEPS_CACHE_UPDATE_IMMEDIATE to control when we
692	actually update STATIC_DIRDEPS_CACHE.
693
694	* stage-install.sh: create dest directory if needed
695	before running install(1)
696
6972020-08-10  Simon J Gerraty  <sjg@beast.crufty.net>
698
699	* dirdeps-targets.mk: include Makefile.dirdeps.options
700
701	* dirdeps.mk: use _TARGETS if defined for DIRDEPS_CACHE
702
7032020-08-09  Simon J Gerraty  <sjg@beast.crufty.net>
704
705	* dirdeps.mk: default BUILD_DIRDEPS_MAKEFILE to empty
706
707	* dirdeps-cache-update.mk: building parallel cache update
708	under the context of dirdeps-cached would be ideal, but
709	is problematic, so it runs as a sibling.
710	Use cache-built target to ensure we wait for it to complete if
711	necessary.
712
7132020-08-06  Simon J Gerraty  <sjg@beast.crufty.net>
714
715	* install-mk (MK_VERSION): 20200806
716
717	* dirdeps-options: allow TARGET_SPEC to affect option values.
718	Use DIRDEPS_OPTIONS_QUALIFIER_LIST before using bare MK_*
719
720	* dirdeps-targets.mk: check for MK_STATIC_DIRDEPS_CACHE defined
721	before looking for STATIC_DIRDEPS_CACHE
722
7232020-08-05  Simon J Gerraty  <sjg@beast.crufty.net>
724
725	* host-target.mk: Darwin use MACHINE for HOST_ARCH too
726
727	* dirdeps-options.mk: improve debug output
728
7292020-07-22  Simon J Gerraty  <sjg@beast.crufty.net>
730
731	* dirdeps.mk: set and export DYNAMIC_DIRDEPS_CACHE
732	for use by dirdeps-cache-update.mk
733
734	* dirdeps-targets.mk: set and export STATIC_DIRDEPS_CACHE
735	for use by dirdeps-cache-update.mk even if we don't use it.
736
737	* dirdeps-cache-update.mk: we only need worry about the background
738	update case, with the above, the update from DIRDEPS_CACHE is
739	simple.
740
741	* meta2deps.py: R 1234 . is not interesting
742
7432020-07-20  Simon J Gerraty  <sjg@beast.crufty.net>
744
745	* sys.mk: default MK_STATIC_DIRDEPS_CACHE from MK_DIRDEPS_CACHE
746
747	* dirdeps-options.mk: do not :tu DIRDEPS_OPTIONS
748	allows use of lower case for pseudo options.
749
750	* dirdeps-cache-update.mk: magic to deal with STATIC_DIRDEPS_CACHE
751
7522020-07-18  Simon J Gerraty  <sjg@beast.crufty.net>
753
754	* dirdeps-targets.mk: Look for Makefile.dirdeps.cache
755	which allows us to have a static cache for expensive targets.
756	Use -DWITHOUT_STATIC_DIRDEPS_CACHE -DWITH_DIRDEPS_CACHE
757	to regenerate the dirdeps.cache it is a copy of.
758
7592020-07-17  Simon J Gerraty  <sjg@beast.crufty.net>
760
761	* Get rid of BUILD_AT_LEVEL0, MK_DIRDEPS_BUILD makes more sense.
762
7632020-07-16  Simon J Gerraty  <sjg@beast.crufty.net>
764
765	* dirdeps.mk (DIRDEP_LOADAVG_REPORT): make it easy to record
766	load averages at intervals during build.
767
7682020-07-15  Simon J Gerraty  <sjg@beast.crufty.net>
769
770	* install-mk (MK_VERSION): 20200715
771
772	* dirdeps.mk: tweak Checking line to make matching Finished
773	lines for post-build analysis easier.
774
775	* meta.autodep.mk: use !defined(WITHOUT_META_STATS)
776
777	* progs.mk: avoid prog.mk outputting multiple Finished lines
778
7792020-07-11  Simon J Gerraty  <sjg@beast.crufty.net>
780
781	* dirdeps.mk: further optimize dirdeps.cache
782	generate a DIRDEPS.${.TARGET} list for other purposes
783	and improve the layout.
784
7852020-07-10  Simon J Gerraty  <sjg@beast.crufty.net>
786
787	* dirdeps.mk: optimize content of dirdeps.cache
788
7892020-06-28  Simon J Gerraty  <sjg@beast.crufty.net>
790
791	* sys/*.mk: make it easier for local*sys.mk to customize by
792	using ?=
793
7942020-06-22  Simon J Gerraty  <sjg@beast.crufty.net>
795
796	* gendirdeps.mk (LOCAL_DEPENDS_GUARD): if we don't build at level 0
797	it is much safer to guard local depends with a simple check for
798	.MAKE.LEVEL > 0
799
8002020-06-10  Simon J Gerraty  <sjg@beast.crufty.net>
801
802	* install-mk (MK_VERSION): 20200610
803
804	* mkopt.sh: this needs posix shell so #!/bin/sh should be ok
805
8062020-06-06  Simon J Gerraty  <sjg@beast.crufty.net>
807
808	* install-mk (MK_VERSION): 20200606
809
810	* dirdeps-targets.mk: allow for filtering of .TARGETS
811
812	* meta2deps.py: fix bug in processing 'L'ink and 'M'ove
813	entries - and we don't care about 'W'rite entries.
814	Also ignore absolute paths that do not exist.
815
8162020-05-25  Simon J Gerraty  <sjg@beast.crufty.net>
817
818	* install-mk (MK_VERSION): 20200525
819
820	* init.mk: expand and simplify handling of qualified vars
821	like CPPFLAGS.${.TARGET:T}
822
8232020-05-15  Simon J Gerraty  <sjg@beast.crufty.net>
824
825	* install-mk (MK_VERSION): 20200515
826
827	* dirdeps.mk: set _debug_* earlier and allow passing -d*
828	flags to submake when building DIRDEPS_CACHE
829
8302020-05-09  Simon J Gerraty  <sjg@beast.crufty.net>
831
832	* whats.mk: more easily extensible
833
8342020-05-02  Simon J Gerraty  <sjg@beast.crufty.net>
835
836	* whats.mk: greatly simplify by adding what.c to SRCS
837
8382020-05-01  Simon J Gerraty  <sjg@beast.crufty.net>
839
840	* whats.mk: for libs take care how we add to *OBJS
841
842	* lib.mk: : works better with whats.mk
843
8442020-04-25  Simon J Gerraty  <sjg@beast.crufty.net>
845
846	* install-mk (MK_VERSION): 20200420
847
848	* meta.stage.mk: it is not a STAGE_CONFLICT if some-target.dirdep
849	contains the same ${RELDIR} and a prefix match for our ${TARGET_SPEC}
850
8512020-04-16  Simon J Gerraty  <sjg@beast.crufty.net>
852
853	* install-mk (MK_VERSION): 20200416
854
855	* sys/*.mk: set MAKE_SHELL rather than SHELL so as not to
856	  interfere with user env.
857
858	* sys.mk: default MAKE_SHELL to sh and SHELL to MAKE_SHELL
859
860	* autodep.mk: use MAKE_SHELL.
861
8622019-11-21  Simon J Gerraty  <sjg@beast.crufty.net>
863
864	* gendirdeps.mk: clear .SUFFIXES to avoid a lot of
865	  wasted effort, and unexport _meta_files when no longer needed as
866	  it consumes space we need for command line.
867
8682019-11-11  Simon J Gerraty  <sjg@beast.crufty.net>
869
870	* dirdeps.mk _DIRDEP_USE: use DIRDEP_DIR and add
871	  DIRDEP_USE_PRELUDE at start - facilitates job distribution
872
8732019-10-04  Simon J Gerraty  <sjg@beast.crufty.net>
874
875	* dirdeps-targets.mk: Use TARGET_SPEC_LAST_LIST
876	defaults to ${${TARGET_SPEC_VARS:[-1]}_LIST} to match valid
877	TARGET_SPEC qualified depend files.
878
8792019-10-02  Simon J Gerraty  <sjg@beast.crufty.net>
880
881	* dirdeps-targets.mk: encapsulate logic for finding top-level
882	  targets to set initial DIRDEPS for DIRDEPS_BUILD
883
8842019-09-27  Simon J Gerraty  <sjg@beast.crufty.net>
885
886	* install-mk (MK_VERSION): 20190911
887
888	* compiler.mk: set COMPILER_TYPE
889
8902019-07-17  Simon J Gerraty  <sjg@beast.crufty.net>
891
892	* install-mk (MK_VERSION): 20190704
893
894	* sys/Darwin.mk: support for Objective-C and clang
895
8962019-05-30  Simon J Gerraty  <sjg@beast.crufty.net>
897
898	* dirdeps.mk: avoid insanely long command line when generating cache
899
9002019-05-23  Simon J Gerraty  <sjg@beast.crufty.net>
901
902	* install-mk (MK_VERSION): 20190505
903
904	* whats.mk: handle corner case SHLIB defined but not LIB
905
9062018-09-19  Simon J Gerraty  <sjg@beast.crufty.net>
907
908	* install-mk (MK_VERSION): 20180919
909
910	* dirdeps-options.mk: .undef cannot handle var that expands to
911	  more than one var.
912
9132018-07-08  Simon J Gerraty  <sjg@beast.crufty.net>
914
915	* meta.stage.mk: allow wildcards in STAGE_FILES.* etc.
916
9172018-06-01  Simon J Gerraty  <sjg@beast.crufty.net>
918
919	* meta.autodep.mk: export META_FILES to avoid command line limit
920	* gendirdeps.mk: if we have lots of .meta files put them in
921	  an @list
922
9232018-05-28  Simon J Gerraty  <sjg@beast.crufty.net>
924
925	* dirdeps-options.mk: use local.dirdeps-options.mk
926	  not local.dirdeps-option.mk
927
9282018-04-20  Simon J Gerraty  <sjg@beast.crufty.net>
929
930	* install-mk (MK_VERSION): 20180420
931	* dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0
932	  ie. we are building something.
933
9342018-04-14  Simon J Gerraty  <sjg@beast.crufty.net>
935
936	* FILES: add dirdeps-options.mk to deal with optional DIRDEPS.
937
9382018-04-05  Simon J Gerraty  <sjg@beast.crufty.net>
939
940	* install-mk (MK_VERSION): 20180405
941
942	* ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER
943	  if needed.
944
9452018-01-18  Simon J Gerraty  <sjg@beast.crufty.net>
946
947	* install-mk (MK_VERSION): 20180118
948
949	* ldorder.mk: let make compute correct link order
950
9512017-12-12  Simon J Gerraty  <sjg@beast.crufty.net>
952
953	* install-mk (MK_VERSION): 20171212
954
955	* gendirdeps.mk: guard against bogus entries in GENDIRDEPS_FILTER
956
9572017-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
958
959	* install-mk (MK_VERSION): 20171111
960
961	* lib.mk: ensure META_NOECHO is set
962
9632017-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
964
965	* Allow for host32 on rare occasions.
966
9672017-10-18  Simon J. Gerraty  <sjg@bad.crufty.net>
968
969	* install-mk (MK_VERSION): 20171018
970
971	* whats.mk: include what_thing in what_uuid to avoid problem
972	  when building multiple apps in the same directory.
973
9742017-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
975
976	* install-mk (MK_VERSION): 20170812
977
978	* autoconf.mk: Use CONFIGURE_DEPS so Makefile can
979	  add dependencies for config.recheck and config.gen
980
9812017-06-30  Simon J. Gerraty  <sjg@bad.crufty.net>
982
983	* install-mk (MK_VERSION): 20170630
984
985	* meta.stage.mk: avoid triggering stage_* targets with nothing to do.
986
9872017-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
988
989	* meta2deps.py: take special care of '..'
990
9912017-05-15  Simon J. Gerraty  <sjg@bad.crufty.net>
992
993	* install-mk (MK_VERSION): 20170515
994
995	* dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is
996	useful/necessary for a Makefile.depend file to export some knobs.
997	This is complicated when we are doing DIRDEPS_CACHE, so we will
998	handle export of any variables listed in DEP_EXPORT_VARS.
999
10002017-05-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1001
1002	* install-mk (MK_VERSION): 20170505
1003
1004	* meta2deps.py: fix botched indenation.
1005
10062017-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1007
1008	* sys/*.mk: Remove setting of MAKE it is unnecessary and
1009	  in many cases wrong (basname rather than full path)
1010
1011	* scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk
1012
1013	* init.mk: define realbuild to simplify logic in {lib,prog}.mk etc
1014
10152017-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1016
1017	* install-mk (MK_VERSION): 20170501
1018
1019	* doc.mk: fix typo in DOC_INSTALL_OWN
1020
1021	* inc.mk: handle INCGROUPS similar to freebsd
1022
1023	* files.mk: add something for files too
1024
1025	* add staging logic to lib.mk prog.mk etc.
1026
10272017-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1028
1029	* install-mk (MK_VERSION): 20170424
1030
1031	* dirdeps.mk: set NO_DIRDEPS when bootstrapping.
1032	  also target of bootstrap-this when sed is needed should be ${_want:T}
1033
10342017-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1035
1036	* install-mk (MK_VERSION): 20170418
1037
1038	* auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a
1039	  prefix match for .CURDIR - in which case .CURDIR *is* __objdir.
1040
10412017-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1042
1043	* install-mk (MK_VERSION): 20170401
1044
1045	* meta2deps.py: add is_src so we can check if obj dependency
1046	  is also a src dependency.
1047
10482017-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1049
1050	* install-mk (MK_VERSION): 20170326
1051
1052	* meta.stage.mk: do nothing if NO_STAGING is defined.
1053
10542017-03-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1055
1056	* auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc.
1057
10582017-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1059
1060	* mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_*
1061
10622017-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1063
1064	* install-mk (MK_VERSION): 20170301
1065
1066	* dirdeps.mk (_build_all_dirs): update this outside test for empty
1067	  DIRDEPS.
1068
1069	* meta.stage.mk: allow multiple inclusion to the extent it makes
1070	  sense.
1071
10722017-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1073
1074	* prog.mk (install_links): depends on realinstall
1075
10762017-02-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1077
1078	* install-mk (MK_VERSION): 20170212
1079
1080	* dpadd.mk: avoid applying :T:R twice to DPLIBS entries
1081
10822017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1083
1084	* install-mk (MK_VERSION): 20170130
1085
1086	* dirdeps.mk: use :range if we can.
1087
1088	* sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130
1089
1090	* meta2deps.py: clean paths without using realpath() where possible.
1091	  fix sort_unique.
1092
10932016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1094
1095	* install-mk (MK_VERSION): 20161212
1096
1097	* meta2deps.py: set pid_cwd[pid] when we process 'C'hdir,
1098	rather than when we detect pid change.
1099
11002016-12-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1101
1102	* install-mk (MK_VERSION): 20161207
1103
1104	* meta.stage.mk: add stage_as_and_symlink for staging packages.
1105	  We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able
1106	  to use foo.tgz to reference the latest staged version - so we
1107	  make foo.tgz a symlink to it.
1108	  Using a target to do both operations ensures we stay in sync.
1109
11102016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1111
1112	* install-mk (MK_VERSION): 20161126
1113
1114	* dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk
1115	  so it can add dependencies.
1116
11172016-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1118
1119	* dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE
1120	  do that they can influence the result correctly.
1121
1122	* dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC
1123
1124	* dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST
1125	  similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST
1126
11272016-10-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1128
1129	* dirdeps.mk: remove dependence on jot (normal situations anyway).
1130	  Before we read another Makefile.depend* set DEP_* vars from
1131	  _DEP_TARGET_SPEC in case it uses any of them with :=
1132	  When bootstrapping, trim any ,* from extention of chosen _src
1133	  Makefile.depend* to get the machine value we subst for.
1134
11352016-09-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1136
1137	* dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to
1138	  DEP_SKIP_DIR and DEP_DIRDEPS_FILTER
1139
1140	* sys.mk: extract some bits to sys.{debug,vars}.mk
1141	  for easier re-use by others.
1142
11432016-09-23  Simon Gerraty  <sjg@sjg-mba13>
1144
1145	* lib.mk: Use ${PICO} for extension for PIC objects.
1146	  default to .pico (like NetBSD) safe on case insensitive filesystem.
1147
11482016-08-19  Simon J. Gerraty  <sjg@bad.crufty.net>
1149
1150	* meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default
1151
11522016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1153
1154	* install-mk (MK_VERSION): 20160815
1155
1156	* dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only
1157	consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date.
1158
11592016-08-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1160
1161	* meta.sys.mk (.MAKE.META.IGNORE_PATHS):
1162	  in meta mode we can ignore the mtime of makefiles
1163
11642016-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1165
1166	* install-mk (MK_VERSION): 20160802
1167
1168	* lib.mk (libinstall): depends on beforinstall
1169
1170	* prog.mk (proginstall): depends on beforinstall
1171	  patch from Lauri Tirkkonen
1172
1173	* dirdeps.mk (bootstrap): When bootstrapping; creat
1174	.MAKE.DEPENDFILE_DEFAULT and allow additional filtering via
1175	.MAKE.DEPENDFILE_BOOTSTRAP_SED
1176
1177	* dirdeps.mk: move some comments to where they make sense.
1178
11792016-07-27  Simon J. Gerraty  <sjg@bad.crufty.net>
1180
1181	* dirdeps.mk (DIRDEPS_CACHE): no dirname.
1182
11832016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1184
1185	* install-mk (MK_VERSION): 20160602
1186	* meta.autodep.mk: when passing META_FILES to gendirdeps.mk
1187	  do not apply :T to META_XTRAS
1188	  patch from Bryan Drewery at FreeBSD.org.
1189
11902016-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1191
1192	* install-mk (MK_VERSION): 20160530
1193	* meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH
1194	  make it so.
1195
11962016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1197
1198	* install-mk (MK_VERSION): 20160512
1199
1200	* dpadd.mk: always include local.dpadd.mk if it exists
1201	  remove some things that better belong in local.dpadd.mk
1202	  skip INCLUDES_* for staged libs unless SRC_* defined.
1203
1204	* own.mk: add INCLUDEDIR
1205
12062016-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1207
1208	* dirdeps.mk: when doing -f dirdeps.mk if target suppies no
1209	  TARGET_MACHINE - :E will be empty or match part of path, use
1210	  ${MACHINE}
1211
12122016-04-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1213
1214	* meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to
1215	  NO_FILEMON_COOKIE
1216
1217	* dirdeps.mk: move the logic that allows for
1218	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
1219	  inside the check for !target(_DIRDEP_USE)
1220
12212016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1222
1223	* Use <> when including local*.mk and others which may exist
1224	  elsewhere so that user can better control what they get.
1225
1226	* meta.autodep.mk (NO_FILEMON_COOKIE):
1227	  create a cookie if we ever build dir with nofilemon
1228	  so that UPDATE_DEPENDFILE will be forced to NO until cleaned.
1229
12302016-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1231
1232	* install-mk (MK_VERSION): 20160401
1233
1234	* meta2deps.py: fix old print statement when debugging.
1235
1236	* gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X
1237	  patch from Bryan Drewery
1238
12392016-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1240
1241	* install-mk (MK_VERSION): 20160317 (St. Pats)
1242
1243	* warnings.mk: g++ does not like -Wimplicit
1244
1245	* sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the
1246	  pelthora of common suffixes for C++
1247
1248	* lib.mk: use .So for shared objects
1249
12502016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1251
1252	* install-mk (MK_VERSION): 20160315
1253
1254	* meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1)
1255	  normally only applies to scripts.
1256
1257	* dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as
1258	  well as outside it.
1259
12602016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1261
1262	* install-mk (MK_VERSION): 20160310
1263
1264	* dirdeps.mk: use targets rather than a list to track DIRDEPS that
1265	  we have processed; the list gets very inefficient as number of
1266	  DIRDEPS gets large.
1267
1268	* sys.dependfile.mk: fix comment wrt MACHINE
1269
1270	* meta.autodep.mk: ignore staged DPADDs when bootstrapping.
1271	  patch from Bryan Drewery
1272
12732016-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1274
1275	* meta2deps.sh: don't ignore subdirs.
1276	  patch from Bryan Drewery
1277
12782016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1279
1280	* install-mk (MK_VERSION): 20160226
1281
1282	* gendirdeps.mk: mark _DEPENDFILE .NOMETA
1283
12842016-02-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1285
1286	* dirdeps.mk: we shouldn't normally include .depend but if we do
1287	  use .dinclude if we can.
1288
12892016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1290
1291	* install-mk (MK_VERSION): 20160218
1292	* sys.clean-env.mk: with recent change to Var_Subst()
1293	  we cannot use the '$$' trick, but .export-literal does the job
1294	  we need.
1295	* auto.dep.mk: make use .dinclude if we can.
1296
1297
12982016-02-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1299
1300	* dirdeps.mk:
1301	  Add _build_all_dirs such that local.dirdeps.mk can
1302	  add fully qualified dirs to it.
1303	  These will be built normally but the current
1304	  DEP_RELDIR will not depend on then (to avoid cycles).
1305	  This makes it easy to hook things like unit-tests into build.
1306
1307
13082016-01-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1309
1310	* dirdeps.mk: add bootstrap-empty
1311
13122015-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1313
1314	* install-mk (MK_VERSION): 20151212
1315	* auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist.
1316	  only apply :tA to __objdir when comparing to .OBJDIR
1317
13182015-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1319
1320	* install-mk (MK_VERSION): 20151111
1321
1322	* meta.sys.mk: include sys.dependfile.mk
1323
1324	* sys.mk (OPTIONS_DEFAULT_NO): use options.mk
1325	  to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD
1326	  include local.sys.env.mk early
1327	  include local.sys.mk later
1328
1329	* own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk
1330
13312015-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1332
1333	* meta.sys.mk (META_COOKIE_TOUCH):
1334	  add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie
1335
1336	* meta.stage.mk: stage_libs should ignore SYMLINKS.
1337
13382015-10-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1339
1340	* install-mk (MK_VERSION): 20151022
1341
1342	* sys.mk: BSD/OS does not have 'type' as a shell builtin.
1343
13442015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1345
1346	* install-mk (MK_VERSION): 20151020
1347
1348	* dirdeps.mk: Add logic for
1349	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
1350
13512015-10-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1352
1353	* install-mk (MK_VERSION): 20151010
1354
13552015-10-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1356
1357	* meta.stage.mk: use staging: ${STAGE_TARGETS:...
1358	  to have stage_lins run last in non-jobs mode.
1359	  Use .ORDER only for jobs mode.
1360
13612015-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1362
1363	* rst2htm.mk: allow for per target flags etc.
1364
13652015-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1366
1367	* install-mk (MK_VERSION): 20150901
1368
1369	* doc.mk: create dir if needed use DOC_INSTALL_OWN
1370
13712015-06-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1372
1373	* install-mk (MK_VERSION): 20150615
1374
1375	* auto.obj.mk: allow use of MAKEOBJDIRPREFIX too.
1376	  Follow make's normal precedence rules.
1377
1378	* gendirdeps.mk: allow customization of the header.
1379	  eg. for FreeBSD:
1380	  GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}';
1381
1382	* meta.autodep.mk: ignore dirdeps.cache*
1383
1384	* meta.stage.mk: when bootstrapping options it can be handy to
1385	  throw warnings rather than errors for staging conflicts.
1386
1387	* meta.sys.mk: include local.meta.sys.mk for customization
1388
13892015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1390
1391	* install-mk (MK_VERSION): 20150606
1392
1393	* dirdeps.mk: don't rely on manually maintained Makefile.depend
1394	  to set DEP_RELDIR and reset DIRDEPS.
1395	  By setting DEP_RELDIR ourselves we can skip :tA
1396
1397	* gendirdeps.mk: skip setting DEP_RELDIR.
1398
13992015-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1400
1401	* dirdeps.mk: avoid wildcards like make(bootstrap*)
1402
14032015-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1404
1405	* install-mk (MK_VERSION): 20150520
1406
1407	* dirdeps.mk: when we are building dirdeps cache file we *want*
1408	  meta_oodate to look at all the Makefile.depend files, so
1409	  set .MAKE.DEPENDFILE to something that won't match.
1410
1411	* meta.stage.mk: for STAGE_AS_* basename of file may not be unique
1412	  so first use absolute path as key.
1413	  Also skip staging at level 0.
1414
14152015-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1416
1417	* install-mk (MK_VERSION): 20150430
1418
1419	* dirdeps.mk: fix _count_dirdeps for non-cache case.
1420
14212015-04-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1422
1423	* install-mk (MK_VERSION): 20150411
1424	  bump version
1425
1426	* own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES.
1427	  it is here mainly for documentation purposes, since
1428	  if using auto.obj.mk it is better done via sys.mk
1429
14302015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1431
1432	* install-mk (MK_VERSION): 20150401
1433
1434	* meta2deps.sh: support @list
1435
1436	* meta2deps.py: updates from Juniper
1437	  o add EXCLUDES
1438	  o skip bogus input files.
1439	  o treat 'M' and 'L' as both an 'R' and a 'W'
1440
14412015-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1442
1443	* install-mk (MK_VERSION): 20150303
1444
1445	* dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache
1446	  which is built via sub-make so we have a .meta file to tell if
1447	  it is out-of-date.
1448	  The dirdeps-cache contains the same dependency rules that we
1449	  normaly construct on the fly.
1450	  This adds a few seconds overhead when the cache is out of date,
1451	  but for a large target, the savings can be significant (10-20min).
1452
14532014-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1454
1455	* install-mk (MK_VERSION): 20141118
1456
1457	* meta.stage.mk: add stale_staged
1458
1459	* dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked
1460	  only useful under very rare conditions such as
1461	  FreeBSD's make universe.
1462
1463	* auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto
1464
14652014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1466
1467	* install-mk (MK_VERSION): 20141111
1468
1469	* mkopt.sh: use consistent semantics for _mk_opt and _mk_opts
1470
14712014-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1472
1473	* FILES: include mkopt.sh which allows handling options in shell
1474	  scripts in a manner compatible with options.mk
1475
14762014-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1477
1478	* meta.stage.mk: ensure only _STAGED_DIRS under objroot are used
1479	  for GENDIRDEPS_FILTER to avoid surprises.
1480
14812014-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1482
1483	* dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by
1484	  the time it is applied to __depdirs they have.
1485
1486	* dirdeps.mk fix filtering of _machines since M_dep_qual_fixes
1487	  expects patterns like *.${MACHINE}
1488
1489	* cython.mk (pyprefix?): use pyprefix to find python bits
1490	  since prefix might be something else (where we install our
1491	  stuff)
1492
14932014-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1494
1495	* install-mk (MK_VERSION): 20140911
1496
1497	* dirdeps.mk: add bootstrap target to simplify adding support for
1498	  new MACHINE.
1499
15002014-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1501
1502	* gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and
1503	  GENDIRDEPS_FILTER_VARS to make it easier to produce sharable
1504	  Makefile.depend files.
1505
15062014-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1507
1508	* install-mk (MK_VERSION): 20140828
1509
1510	* cython.mk: capture logic for building python extension modules
1511	  with Cython.
1512
15132014-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1514
1515	* meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant
1516
15172014-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1518
1519	* install-mk (MK_VERSION): 20140801
1520
1521	* dep.mk: use explicit MKDEP_MK rather than overload MKDEP to
1522	identify the autodep.mk variant.
1523
1524	* sys.dependfile.mk: delete .MAKE.DEPENDFILE if its
1525	initial value does not match .MAKE.DEPENDFILE_PREFIX
1526
1527	* meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS
1528
15292014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1530
1531	* install-mk (MK_VERSION): 20140522
1532
1533	* lib.mk: use CC to link shlib for linux too
1534	  patch from Brendan MacDonell
1535
15362014-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1537
1538	* meta.autodep.mk: add _reldir_{finish,failed} for gathering stats
1539	  if WITH_META_STATS is defined.
1540
15412014-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1542
1543	* dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS)
1544	  to supress dirdeps outside of .CURDIR.
1545
15462014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1547
1548	* Fix spelling errors - patch from Pedro Giffuni
1549
15502014-03-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1551
1552	* install-mk (MK_VERSION): 20140314
1553
1554	* dirdeps.mk (beforedirdeps): a handy hook
1555
1556	* dirdeps.mk (DIRDEP_MAKE): allow the actual command we run
1557	  to visit leaf dirs to be intercepted (eg. for distributed
1558	  build).
1559
1560	* dirdeps.mk (__depdirs): ensure // don't sneak in
1561
1562	* gendirdeps.mk (DIRDEPS): ensure // don't sneak in
1563
1564
15652014-02-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1566
1567	* rst2htm.mk (RST2PDF): add support for rst2pdf
1568
15692014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1570
1571	* install-mk (MK_VERSION): bump version
1572	* dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if
1573	  available.
1574
15752014-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1576
1577	* options.mk: avoid :U so this isn't bmake dependent
1578
15792014-02-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1580
1581	* options.mk: cleanup and simplify semanitcs
1582	  NO_* dominates all, if both WITH_* and WITHOUT_*
1583	  are defined then result is DOMINATE_* which defaults to "no".
1584	  Ie. WITHOUT_ normally wins.
1585
15862013-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1587
1588	* install-mk (MK_VERSION): bump version
1589	* meta2deps.py: convert to print function for python3 compat.
1590	  we also need to open files with mode 'r' rather than 'rb'
1591	  otherwise we get bytes instead of strings.
1592
15932013-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1594
1595	* install-mk (MK_VERSION): bump version
1596
1597	* dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE
1598	  apply the same filtering (M_dep_qual_fixes) when setting _machines
1599	  as _build_dirs.
1600	  Also fix the filtering of Makefile.depend files - for reporting
1601	  what we are looking for (M_dep_qual_fixes can get confused by
1602	  Makefile.depend)
1603	  Add some more debug info.
1604
16052013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1606
1607	* gendirdeps.mk (_objtops): fix typo also
1608	  while processing M2D_OBJROOTS to gather qualdir_list
1609	  qualify $ql with loop iterator to ensure correct results.
1610
16112013-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1612
1613	* install-mk (MK_VERSION): 20130801
1614	* libs.mk: update to match progs.mk
1615
16162013-07-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1617
1618	* install-mk (MK_VERSION): 20130726
1619	  some updates from Juniper and FreeBSD
1620	  o meta2deps.py: indicate file and line number when we hit parse
1621	    errors
1622	    also allow @file to provide huge list of .meta files.
1623	* meta2deps.py: add try_parse() to cleanup the above.
1624
16252013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1626
1627	* install-mk (MK_VERSION): 20130716
1628	* own.mk: add GPROG as an option
1629	* prog.mk: honor MK_GPROF==yes
1630
16312013-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1632
1633	* install-mk (MK_VERSION): 20130505
1634	* gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC
1635	  for when $MACHINE isn't enough for objdir distinction.
1636	  Bring meta2deps.sh closer to par with meta2deps.py.
1637
16382013-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1639
1640	* meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all'
1641	  also if the target 'beforeinstall' exists, make it depend on
1642	  .dirdep (incase it uses STAGE_INSTALL).
1643
16442013-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1645
1646	* install-mk (MK_VERSION): 20130401 ;-)
1647	* meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as
1648	  wrapper around install(1).
1649	* options.mk (OPTION_PREFIX): Allow a prefix other than MK_
1650
16512013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1652
1653	* meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized.
1654	* install-mk (MK_VERSION): bump version
1655
16562013-03-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1657
1658	* install-mk (MK_VERSION): bump version
1659	* gendirdeps.mk: do not apply :tA to DPADD entries, since we lose
1660	  any trailing /., rather apply :tA only when needed.
1661	* gendirdeps.mk: better mimic meta2deps handling of .dirdep files.
1662	* meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance
1663	  consistently.
1664	* dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC.
1665
16662013-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1667
1668	* gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT
1669	  it is simpler to just not update when say building for "host"
1670	  (where we know we apply filters to DIRDEPS), and using a
1671	  non-machine qualified dependfile.
1672
16732013-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1674
1675	* dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR
1676	  and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC
1677	* gendirdeps.mk: ensure _objroot has trailing / if it needs it.
1678	* meta2deps.py: if machine is "host", then also trim
1679	  self.host_target from any OBJROOTS.
1680
1681
16822013-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1683
1684	* gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine
1685	  qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists
1686	  but _DEPENDFILE does not, compare the new _DEPENDFILE against
1687	  .MAKE.DEPENDFILE_DEFAULT and discard if the same.
1688
16892013-03-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1690
1691	* meta.stage.mk: use STAGE_TARGETS to control .ORDER
1692	  and hook to all: via staging:
1693
16942013-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1695
1696	* sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT):
1697	  use a separate variable for the default .MAKE.DEPENDFILE value
1698	  so that it can be controlled independently of
1699	  .MAKE.DEPENDFILE_PREFERENCE
1700
1701	* meta.stage.mk: throw error if cp fails etc.
1702	  Stage*() return early if passed no args.
1703	  .ORDER stage_*
1704
17052013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1706
1707	* install-mk (MK_VERSION): bump version
1708	* gendirdeps.mk: handle multiple M2D_OBJROOTS better.
1709
17102013-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1711
1712	* install-mk (MK_VERSION): bump version to 20130210
1713	* import latest dirdeps.mk, gendirdeps.mk and meta2deps.py
1714	  from Juniper.
1715	  o dirdeps.mk now fully supports TARGET_SPEC consisting of more
1716	    than just MACHINE.
1717	  o no longer use DEP_MACHINE from Makefile.depend* so remove it.
1718
17192013-01-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1720
1721	* install-mk (MK_VERSION): bump version to 20130123
1722	* meta.stage.mk: add stage_links (hard links).
1723	  if doing hard links, we add dest to link as well.
1724	  Default the stage dir for [sym]links to STAGE_OBJTOP since
1725	  these are typically specified as absolute paths.
1726	  Add -m "mode" flag to StageFiles and StageAs.
1727
17282012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1729
1730	* install-mk (MK_VERSION): bump version to 20121111
1731	* autoconf.mk: avoid meta mode seeing changed commands for config.status
1732	* meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps
1733	  in case we were found via .../mk
1734	* sys.clean-env.mk: move it from examples, we and others use it
1735	  "as is".
1736	* FILES: add srctop.mk and options.mk
1737	* own.mk: convert to using options.mk
1738	  which is modeled after FreeBSD's handling of MK_*
1739	  but more flexible.
1740	  This allows MK_* for boolean knobs to not be confused
1741	  with MK* which can be commands.
1742
1743	* examples/sys.clean-env.mk: add WITH[OUT]_ to
1744	  MAKE_ENV_SAVE_PREFIX_LIST.
1745	  Mention that HOME=/var/empty might be a good idea.
1746
17472012-11-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1748
1749	* sys.dependfile.mk: if not depend file exists, $MACHINE
1750	  specific ones are supported but not the default,
1751	  check if any exist and follow suit.
1752
17532012-11-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1754
1755	* install-mk (MK_VERSION): bump version to 20121106
1756
17572012-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1758
1759	* import latest dirdeps.mk and meta2deps.py from Juniper.
1760	* progs.mk: add MAN and CXXFLAGS to PROG_VARS
1761	  also add PROGS_TARGETS and pass on PROG_CXX if it seems
1762	  appropriate.
1763
17642012-11-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1765
1766	* meta.stage.mk: update CLEANFILES
1767	  remove redundant cp of .dirdep from STAGE_AS_SCRIPT.
1768	* progs.mk: Add LDADD to PROG_VARS
1769
17702012-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1771
1772	* meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in
1773	  _STAGED_DIRS so that these can be turned into filters for
1774	  GENDIRDEPS_FILTER.
1775
17762012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1777
1778	* install-mk (MK_VERSION): bump version to 20121010
1779	* meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing
1780	target.dirdep matches .dirdep
1781
17822012-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1783
1784	* install-mk (MK_VERSION): bump version to 20120808
1785	* import latest meta2deps.py from Juniper.
1786
17872012-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1788
1789	* install-mk (MK_VERSION): bump version to 20120711
1790	* dep.mk: add explicit dependencies on SRCS after applying
1791	  SRCS_DEP_FILTER
1792	* meta.autodep.mk: add explicit dependencies on SRCS after
1793	  applying SRCS_DEP_FILTER
1794	* meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed.
1795
17962012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1797
1798	* install-mk (MK_VERSION): bump version to 20120626
1799	* meta.sys.mk: ignore PYTHON if it does not exist
1800	  compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable.
1801	* meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any
1802	  entries ending in .${MACHINE} to decide if qualified _dirdep is
1803	  needed.
1804	* gendirdeps.mk: only produce unqualified deps if no
1805	  .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE}
1806	* meta.subdir.mk: apply SUBDIRDEPS_FILTER
1807
18082012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1809
1810	* install-mk (MK_VERSION): bump version to 20120420
1811	* add sys.dependfile.mk so we can experiment with
1812	  .MAKE.DEPENDFILE_PREFERENCE
1813	* meta.autodep.mk: _DEPENDFILE is precious!
1814
18152012-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1816
1817	* install-mk (MK_VERSION): bump version to 20120315
1818	* install-new.mk: avoid being interrupted
1819
18202012-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1821
1822	* man.mk: MAN might have multiple values so be careful with exists().
1823
18242012-01-19  Simon J. Gerraty  <sjg@bad.crufty.net>
1825
1826	* install-mk (MK_VERSION): bump version to 20120112
1827	* fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled
1828	  as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
1829
18302011-12-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1831
1832	* install-mk (MK_VERSION):  bump version to 20111201
1833	* import dirdeps.mk from Juniper sjg@
1834	  o more consistent handling of DEP_MACHINE, especially when
1835	    dealing with an odd Makefile.depend, when normally using
1836	    Makefile.depend.${MACHINE}
1837
18382011-11-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1839
1840	* install-mk (MK_VERSION): bump version to 20111122
1841	* meta.autodep.mk: add some debug output, be more crisp about
1842	  updating.  Use ${.ALLTARGETS:M*.o} as a clue for .depend
1843
18442011-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1845
1846	* install-mk (MK_VERSION): bump version to 20111111
1847	  it's too cool to miss
1848	* import meta* updates from Juniper sjg@
1849	  o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are
1850	    normally using Makefile.depend.${MACHINE}), handy for
1851	    read-only manually maintained dependencies.
1852	  o meta2deps.py add a clear 'ERROR:' token if an exception is raised.
1853	  o gendirdeps.mk if ERROR: from meta2deps.py do not update
1854	    anything.
1855
18562011-10-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1857
1858	* install-new.mk separate the cmp and copy logic to its own function.
1859
18602011-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1861
1862	* install-mk (MK_VERSION): bump version to 20111028
1863	* sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto
1864	* subdir.mk: ensure _SUBDIRUSE is provided
1865	* meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk
1866	* meta.subdir.mk: always allow for Makefile.depend
1867
18682011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1869
1870	* install-mk (MK_VERSION): bump version to 20111010
1871	  o minor tweak to *dirdeps.mk from Juniper sjg@
1872
18732011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1874
1875	* install-mk (MK_VERSION): bump version to 20111001
1876	  o add meta2deps.py from Juniper sjg@
1877	  o tweak gendirdeps.mk to work with meta2deps.py when not
1878	    cross-building
1879	* autoconf.mk: add autoconf-input as a hook for regenerating
1880	  AUTOCONF_INPUTS (configure).
1881
18822011-08-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1883
1884	* meta.autodep.mk: if we do not have OBJS, .depend isn't a useful
1885	  trigger for updating Makefile.depend*
1886
18872011-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1888
1889	* install-mk (MK_VERSION): bump version to 20110808
1890	* obj.mk: minor cleanup
1891	* auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too.
1892
18932011-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1894
1895	* auto.obj.mk (.OBJDIR): throw an error if we cannot use the
1896	  specified dir.
1897
18982011-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1899
1900	* meta.autodep.mk: if XMAKE_META_FILE is set
1901	  the makefile uses a foreign make, and so dependencies
1902	  can only be gathered from a clean tree build.
1903
19042011-06-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1905
1906	* install-mk (MK_VERSION): bump version to 20110622
1907	* meta.autodep.mk: improve bootstraping
1908
19092011-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1910
1911	* yacc.mk: handle the corner case of .c being removed
1912	  while .h remains.
1913
19142011-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1915
1916	* yacc.mk: do .y.h and .y.c separately
1917
19182011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1919
1920	* install-mk (MK_VERSION): bump version to 20110606
1921	* don't store SRC_DIRDEPS in Makefile.depend* by default
1922	  not everyone needs it.
1923
19242011-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1925
1926	* install-mk (MK_VERSION): bump version to 20110505
1927	  first release including meta mode makefiles
1928
19292011-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1930
1931	* meta.stage.mk: add STAGE_AS_SETS and stage_as
1932	  for things that need to be staged with different names.
1933
19342011-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1935
1936	* meta.stage.mk: add notion of STAGE_SETS
1937	  so a makefile can stage to multiple dirs
1938
19392011-04-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1940
1941	* rst2htm.mk: convert rst to s5 (slides) or plain html depending
1942	  on target name.
1943
19442011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1945
1946	* install-mk (MK_VERSION): bump version to 20110330
1947
19482011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
1949
1950	* sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0
1951	  can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest.
1952	* sys.mk: re-define M_whence in terms of M_type.
1953	  M_type is useful for checking if something is a builtin.
1954
19552011-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1956
1957	* meta.stage.mk: add stage_symlinks and leverage StageLinks for
1958	  stage_libs
1959
19602011-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1961
1962	* dirdeps.mk: correct value for _depdir_files depends on
1963	  .MAKE.DEPENDFILE
1964	  Add our copyright - just to make it clear we have frobbed this
1965	  quite a bit.
1966	  DEP_MACHINE needs to be set to MACHINE each time, if using only
1967	  Makefile.depend (cf. Makefile.depend.${MACHINE})
1968
1969	* meta.stage.mk: meta mode version of staging
1970
1971	* init.mk, final.mk: include local.*.mk to simplify customization
1972
19732011-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1974
1975	* auto.obj.mk: just because we are doing mk destroy, we should
1976	  still set .OBJDIR correctly if it exists.
1977
1978	* install-mk (mksrc): do not exclude meta.sys.mk
1979
19802011-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1981
1982	* host-target.mk: set/export _HOST_ARCH etc separately,
1983	  catch junk resulting from uname -p, so we can find sys/Linux.mk
1984	  correctly.
1985
19862011-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1987
1988	* meta.sys.mk: throw an error if /dev/filemon is missing and we
1989	  expected to be updating Makefile.depend*
1990
19912011-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1992
1993	* install-mk (MK_VERSION): bump version to 20110214
1994	* meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES
1995
19962010-09-25  Simon J. Gerraty  <sjg@bad.crufty.net>
1997
1998	* meta.sys.mk: not valid for older bmake
1999
20002010-09-24  Simon J. Gerraty  <sjg@bad.crufty.net>
2001
2002	* install-mk (MK_VERSION): bump version to 20100919
2003	include dirdeps.mk et al from Juniper Networks,
2004	for meta mode - requires filemon(9).
2005	* sys.mk, subdir.mk: Add hooks for meta mode.
2006	we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk
2007	to make turning it on/off simple.
2008
20092010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
2010
2011	* install-mk (MK_VERSION): bump version to 20100616
2012	* fix typo in sys.mk
2013
20142010-06-12  Simon J. Gerraty  <sjg@bad.crufty.net>
2015
2016	* install-mk (MK_VERSION): bump version to 20100612
2017	* lib.mk: remove duplicate addition to SOBJS
2018
20192010-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2020
2021	* sys.mk: Add a means of selectively turning on debug flags.
2022	  Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg"
2023	  will act as if we did make -dv if .CURDIR ends in lib/sjg
2024	  DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at
2025	  the start of sys.mk rather than the end.
2026	  This only makes sense for leaf dirs, so we check that
2027	  .MAKE.LEVEL > 0
2028
20292010-06-09  Simon J. Gerraty  <sjg@bad.crufty.net>
2030
2031	* install-mk (MK_VERSION): bump version to 20100608
2032	* sys.mk: include sys.env.mk later so it can use M_ListToSkip et al.
2033	* examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606
2034	  also make it easier for folk to tweak
2035
20362010-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
2037
2038	* install-mk (MK_VERSION): bump version to 20100606
2039	  do not install examples/*
2040	* FILES: add examples/sys.clean-env.mk
2041	* examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR
2042	  this requires bmake-20100606 or later to work.
2043
20442010-05-13  Simon J. Gerraty  <sjg@bad.crufty.net>
2045
2046	* sys.mk (M_tA): better simulate the result of :tA if not available.
2047
20482010-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2049
2050	* sys.mk: canonicalize MAKE_VERSION
2051	  old versions reported bmake-<src-date> build-<build-date>
2052	  whereas we only care about <src-date>
2053
20542010-04-25  Simon J. Gerraty  <sjg@bad.crufty.net>
2055
2056	* install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored
2057	* lib.mk: we only build the shared lib if SHLIB_FULLVERSION
2058	  is !empty
2059
20602010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
2061
2062	* dpadd.mk: use LDADD_* if defined.
2063
20642010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
2065
2066	* install-mk (MK_VERSION): bump version to 20100420
2067	* sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy
2068	* autoconf.mk allow AUTO_AUTOCONF
2069
20702010-04-19  Simon J. Gerraty  <sjg@bad.crufty.net>
2071
2072	* obj.mk: add objwarn to keep freebsd makefiles happy
2073	* auto.obj.mk: ensure Mkdirs is available.
2074	* FILES: add auto.dep.mk - a simpler version of autodep.mk
2075	* dep.mk: auto.dep.mk does not do 'make depend' so ignore it if
2076	  asked to do that.
2077	  fix/simplify the tests for when to run mkdep.
2078	* auto.dep.mk: add some explanation of how/what we do.
2079	* autodep.mk: skip the .OPTIONAL frobbing of .depend
2080	  bmake's FROM_DEPEND flag makes it redundant.
2081
20822010-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
2083
2084	* install-mk (MK_VERSION): bump version to 20100404
2085	* subdir.mk: protect from multiple inclusion using _SUBDIRUSE.
2086	* obj.mk: protect from multiple inclusion even as bsd.obj.mk
2087	Also create a target _SUBDIRUSE so that we can  be used without
2088	subdir.mk
2089
20902010-04-12  Simon J. Gerraty  <sjg@bad.crufty.net>
2091
2092	* dep.mk: use <> when .including so can override.
2093
20942010-01-11  Simon J. Gerraty  <sjg@bad.crufty.net>
2095
2096	* lib.mk (SHLIB_LINKS): ensure a string comparison.
2097
20982010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2099
2100	* install-mk (MK_VERSION): bump version to 20100102
2101	* own.mk: ensure PRINTOBJDIR works
2102	* autoconf.mk: pass on CONFIGURE_ARGS
2103	* init.mk: handle COPTS.${.IMPSRC:T} etc.
2104	* lib.mk: allow sys.mk to control SHLIB_FULLVERSION
2105	  fix handling of symlinks for darwin
2106	* libnames.mk: add DSHLIBEXT for libs which only exist as shared.
2107	* man.mk: suppress chown when not root.
2108	* rst2htm.mk: allow srcs from multiple locations.
2109	* sys.mk: M_whence, stop after 1st line of output.
2110	* sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT
2111	* sys/SunOS.mk: we need to export PATH
2112
21132009-12-23  Simon J. Gerraty  <sjg@void.crufty.net>
2114
2115	* install-mk (MK_VERSION): bump version
2116	  include rst2htm.mk
2117
21182009-12-17  Simon J. Gerraty  <sjg@void.crufty.net>
2119
2120	* sys.mk,libnames.mk add .-include <local.*>
2121	  this allows local customization without the need to edit the
2122	  distributed files.
2123
21242009-12-14  Simon J. Gerraty  <sjg@void.crufty.net>
2125
2126	* dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up
2127	  older versions already installed.
2128
21292009-12-13  Simon J. Gerraty  <sjg@void.crufty.net>
2130
2131	* stage.mk (.stage-install): generalize lib.mk's .libinstall
2132	* rules.mk rules for generic Makefile.
2133	* inc.mk install for includes.
2134
21352009-12-11  Simon J. Gerraty  <sjg@void.crufty.net>
2136
2137	* sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check
2138	  this, so provide it if using native make.
2139
21402009-12-10  Simon J. Gerraty  <sjg@void.crufty.net>
2141
2142	* FILES: move all the platform *.sys.mk files to sys/*.mk
2143	* Rename Generic.sys.mk to sys.mk - we always want it.
2144
21452009-11-17  Simon J. Gerraty  <sjg@void.crufty.net>
2146
2147	* install-mk (MK_VERSION): bump version
2148	* host-target.mk: only export the expensive stuff
2149	* Generic.sys.mk (sys_mk): for SunOS we need to look for
2150	  ${HOST_OS}.${HOST_OSMAJOR} too!
2151
21522009-11-07  Simon J. Gerraty  <sjg@void.crufty.net>
2153
2154	* install-mk (MK_VERSION): bump version
2155	* lib.mk: if sys.mk doesn't give us an lorder, don't use it.
2156	  based on patch from Greg Olszewski.
2157	* Generic.sys.mk: if we have nothing to work with
2158	set LORDER etc only if we can find it.
2159
21602009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
2161
2162	* install-mk (MK_VERSION): bump version
2163	* man.mk: cleanman: remove CLEANMAN if defined.
2164
21652009-09-04  Simon J. Gerraty  <sjg@void.crufty.net>
2166
2167	* SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk
2168
21692009-07-17  Simon J. Gerraty  <sjg@void.crufty.net>
2170
2171	* install-mk (MK_VERSION): bump version
2172	include auto.obj.mk
2173
2174
21752009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
2176
2177	* prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail.
2178
21792008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
2180
2181	* install-mk (MK_VERSION): bump version
2182	man.mk: ensure we generate *.cat1 etc in .
2183
21842008-07-16  Simon J. Gerraty  <sjg@void.crufty.net>
2185
2186	* install-mk (MK_VERSION): bump version
2187	add prlist.mk
2188
21892007-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
2190
2191	* Generic.sys.mk: Allow os specific sys.mk to be in a
2192	subdir of ${.PARSEDIR}
2193
21942007-11-22  Simon J. Gerraty  <sjg@void.crufty.net>
2195
2196	* install-mk (MK_VERSION): bump version
2197	* general cleanup
2198	* dpadd.mk introduce DPMAGIC_LIBS_*
2199
22002007-04-30  Simon J. Gerraty  <sjg@void.crufty.net>
2201
2202	* install-mk (MK_VERSION): bump version
2203
2204	* libs.mk, progs.mk, autodep.mk: allow for per lib/prog
2205	depend files and ensure clean is called for each lib/prog.
2206
22072007-03-27  Simon J. Gerraty  <sjg@void.crufty.net>
2208
2209	* autodep.mk (.depend): delete lines that do not start with
2210	space and do not contain ':'
2211
22122007-02-16  Simon J. Gerraty  <sjg@void.crufty.net>
2213
2214	* autodep.mk (.depend): gcc may wrap lines if pathnames are long
2215	so make sure the transform for .OPTIONAL copes.
2216
22172007-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
2218
2219	* install-mk (MK_VERSION): bump version
2220
2221	* own.mk: make sure RM and LN are defined.
2222
2223	* obj.mk: fix a typo, and objlink target.
2224
22252006-12-30  Simon J. Gerraty  <sjg@void.crufty.net>
2226
2227	* install-mk (MK_VERSION): bump version
2228	* added libs.mk - analogous to progs.mk
2229	  make both of them always inlcude {lib,prog}.mk
2230
22312006-12-28  Simon J. Gerraty  <sjg@void.crufty.net>
2232
2233	* progs.mk: add a means of building multiple apps in one dir.
2234
22352006-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
2236
2237	* install-mk (MK_VERSION): bump version to 20061126
2238
2239	* warnings.mk: detect invalid WARNINGS_SET
2240
2241	* warnings.mk: use ${.TARGET:T:R}.o when looking for target
2242	specific warnings.
2243
2244	* For .cc sources, turn off warnings that g++ vomits on.
2245
22462006-11-08  Simon J. Gerraty  <sjg@void.crufty.net>
2247
2248	* own.mk: if __initialized__ target doesn't exist and we are
2249	FreeBSD we got here directly from sys.mk
2250
22512006-11-06  Simon J. Gerraty  <sjg@void.crufty.net>
2252
2253	* install-mk (MK_VERSION): bump version to 20061106
2254	add scripts.mk
2255
22562006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
2257
2258	* install-mk (MK_VERSION): bump version to 20060318
2259
2260	* autodep.mk: avoid := when modifying OBJS into __dependsrcs
2261
22622006-03-02  Simon J. Gerraty  <sjg@void.crufty.net>
2263
2264	* install-mk (MK_VERSION): bump version to 20060302
2265	* autodep.mk: use -MF et al to help gcc+ccache DTRT.
2266
22672006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
2268
2269	* install-mk (MK_VERSION): bump version to 20060301
2270	* autodep.mk (.depend):
2271	if MAKE_VERSION is newer than  20050530 we can make .END depend on
2272	.depend and make .depend depend on __depsrcs that exist.
2273	* dpadd.mk: add SRC_PATHADD
2274
22752005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
2276
2277	* install-mk (MK_VERSION): bump version to 20051104
2278	* prog.mk: remove all the LIBC?= junk, use
2279	.-include libnames.mk instead (none by default).
2280	also if USE_DPADD_MK is set, include that.
2281
22822005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
2283
2284	* install-mk (MK_VERSION): bump version to 20051001
2285	Add UnixWare.sys.mk from Klaus Heinz.
2286
22872005-04-05  Simon J. Gerraty  <sjg@void.crufty.net>
2288
2289	* install-mk: always install *.sys.mk and if need be symlink one
2290	to sys.mk
2291
22922005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
2293
2294	* subdir.mk, own.mk: use .MAKE rather than MAKE
2295
22962004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
2297
2298	* own.mk: don't use NetBSD's _SRC_TOP_ it can
2299	cause confusion.  Also don't take just 'mk' as a
2300	srctop indicator.
2301
23022004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
2303
2304	* warnings.mk: overhauled, now very powerful.
2305
23062004-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
2307
2308	* Generic.sys.mk: need to use ${.PARSEDIR} with exists().
2309
23102004-02-01  Simon J. Gerraty  <sjg@void.crufty.net>
2311
2312	* install-mk (MK_VERSION): bump version to 20040201
2313	* extract HOST_TARGET stuff to host-target.mk so own.mk and
2314	Generic.sys.mk can share.
2315	* fix typo in autodep.mk _SUBDIRUSE not _SUBDIR.
2316
23172003-09-30  Simon J. Gerraty  <sjg@void.crufty.net>
2318
2319	* install-mk (MK_VERSION): 20030930
2320	* rename generic.sys.mk to Generic.sys.mk
2321	so that it does not get installed (unless being used as sys.mk)
2322	* set OS and ROOT_GROUP for those that we know the value.
2323	for others (eg. Generic.sys.mk) wrap the != in an .ifndef so
2324	we don't do it again for each sub-make.
2325
23262003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
2327
2328	* install-mk (MK_VERSION): 20030928
2329	Add some extra *.sys.mk from bootstrap-pkgsrc
2330	some of these likely still need work.
2331	Make everything default to root:wheel ownership,
2332	sys.mk can set ROOT_GROUP accordingly.
2333
23342003-08-07  Simon J. Gerraty  <sjg@void.crufty.net>
2335
2336	* install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR
2337	not the portable ones.
2338
23392003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
2340
2341	* install-mk: add ability to use cp -f when updating
2342	destination .mk files.  Also now possible to play games with
2343	FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk
2344	into dest - not recommended unless you seriously want to.
2345
23462003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
2347
2348	* own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc
2349	for semi-compatability with NetBSD.
2350
23512003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
2352
2353	* install-mk: add a version indicator
2354
23552003-07-22  Simon J. Gerraty  <sjg@void.crufty.net>
2356
2357	* prog.mk: don't try and use ${LIBCRT0} if its /dev/null
2358
2359	* install-mk: Allow FORCE_SYS_MK to come from env
2360
2361
2362
2363