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