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