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