xref: /freebsd/contrib/bmake/mk/ChangeLog (revision 17b7a0c595a51eaa7e83f16e99e1555bd13a445b)
12025-01-10  Simon J Gerraty  <sjg@beast.crufty.net>
2
3	* rust.mk: use RUST_LIBS and RUST_PROGS
4
52025-01-01  Simon J Gerraty  <sjg@beast.crufty.net>
6
7	* install-mk (MK_VERSION): 20250101
8
9	* use W flag to :S and :C rather than :tW
10
112024-12-16  Simon J Gerraty  <sjg@beast.crufty.net>
12
13	* rust.mk: add RUSTFLAGS if needed
14
152024-12-12  Simon J Gerraty  <sjg@beast.crufty.net>
16
17	* init.mk (OBJS_SRCS_FILTER): apply this as
18	${OBJS_SRCS_FILTER:ts:} as we do in FreeBSD.
19
202024-12-03  Simon J Gerraty  <sjg@beast.crufty.net>
21
22	* install-mk (MK_VERSION): 20241202
23
24	* setopts.sh: needed by newlog.sh
25
262024-11-22  Simon J Gerraty  <sjg@beast.crufty.net>
27
28	* meta.sys.mk: add META_MODE_XTRAS to META_MODE to make it
29	easier to add things like 'env' when debugging.
30
31	* install-mk (MK_VERSION): 20241122
32
33	* rust.mk: rename CARGO* to RUST_CARGO* so I don't feel
34	like this makefile should be renamed to cargo.mk
35
362024-11-11  Simon J Gerraty  <sjg@beast.crufty.net>
37
38	* dirdeps.mk: add DIRDEPS_CACHED_ENV to dirdeps-cached and
39	DIRDEP_USE_EPILOGUE to _DIRDEP_USE
40
412024-10-30  Simon J Gerraty  <sjg@beast.crufty.net>
42
43	* meta.sys.mk: if MK_META_ERROR_TARGET is yes and NEWLOG_SH is
44	set, and ERROR_LOGDIR already exists, hook _rotateErrorLog to
45	.BEGIN target.
46
472024-10-27  Simon J Gerraty  <sjg@beast.crufty.net>
48
49	* options.mk: add support for DEBUG_OPTIONS (similar to
50	DEBUG_DIRDEPS) to allow us to see where options get set.
51	Eg. DEBUG_OPTIONS="STAGING*" gives:
52
53	bmake[1]: "mk/options.mk" line 89: sys.mk: MK_STAGING=yes (MK_DIRDEPS_BUILD=no)
54	bmake[1]: "mk/options.mk" line 66: local.init.mk: MK_STAGING=yes
55	bmake[1]: "mk/options.mk" line 66: local.init.mk: MK_STAGING_PROG=no
56	bmake[1]: "mk/options.mk" line 89: own.mk: MK_STAGING_MAN=yes (MK_STAGING=yes)
57	bmake[1]: "mk/options.mk" line 89: own.mk: MK_STAGING_PROG=no (MK_STAGING=yes)
58	bmake[1]: "mk/options.mk" line 89: own.mk: MK_STAGING_RUST=no (MK_STAGING_PROG=no)
59
60	* own.mk: fix setting of STAGE_OBJTOP (normally set by sys.dirdeps.mk)
61
622024-10-26  Simon J Gerraty  <sjg@beast.crufty.net>
63
64	* rust.mk: add some documentation and support for staging
65
662024-10-25  Simon J Gerraty  <sjg@beast.crufty.net>
67
68	* rust.mk: a means of integrating Rust projects into a larger build.
69
702024-10-18  Simon J Gerraty  <sjg@beast.crufty.net>
71
72	* dirdeps-targets.mk: if DEBUG_DIRDEPS_TARGETS and we found
73	STATIC_DIRDEPS_CACHE, report its relative path.
74
752024-09-30  Simon J Gerraty  <sjg@beast.crufty.net>
76
77	* dirdeps.mk: tweak the debug message for "Loading" a
78	Makefile.depend file, always report what the actual makefile is
79	with the DIRDEP it is for.
80	Remove the redundant "Looking" message.
81
822024-09-26  Simon J Gerraty  <sjg@beast.crufty.net>
83
84	* meta2deps.py: when raising AssertionError include meta file name
85	with $SB trimmed if possible.
86
872024-09-23  Simon J Gerraty  <sjg@beast.crufty.net>
88
89	* meta2deps.py: replace assert() with raise AssertionError when we
90	detect missing eXits, to ensure a meaningful message gets into
91	log.
92
932024-09-21  Simon J Gerraty  <sjg@beast.crufty.net>
94
95	* install-mk (MK_VERSION): 20240921
96
97	* FILES: add genfiles.mk
98
992024-09-20  Simon J Gerraty  <sjg@beast.crufty.net>
100
101	* install-mk (MK_VERSION): 20240920
102
103	* cython.mk: Get PYTHON_VERSION from PYTHON
104
1052024-08-31  Simon J Gerraty  <sjg@beast.crufty.net>
106
107	* subdir.mk: add ${SUBDIR.yes} - allows for SUBDIR.${MK_*}
108	  and handle subdir with '-' in its name.
109
1102024-08-23  Simon J Gerraty  <sjg@beast.crufty.net>
111
112	* install-mk (MK_VERSION): 20240820
113
114	* links.mk: Allow a filter to be applied to SYMLINKS etc.
115	It is up to [BUILD_][SYM]LINKS_FILTER to do something sane.
116	Also only claim we are making a symlink if the value changed.
117
1182024-06-22  Simon J Gerraty  <sjg@beast.crufty.net>
119
120	* install-mk (MK_VERSION): 20240616
121
122	* dirdeps.mk: apply DEP_DIRDEPS_BUILD_DIR_FILTER after we have
123	computed build dirs, since some filters cannot be easily expressed via
124	DEP_DIRDEPS_FILTER.
125
1262024-05-31  Simon J Gerraty  <sjg@beast.crufty.net>
127
128	* dirdeps.mk: move reset of DIRDEPS_EXPORT_VARS
129	until after we a finished with it if building a cache.
130
1312024-05-04  Simon J Gerraty  <sjg@beast.crufty.net>
132
133	* install-mk (MK_VERSION): 20240504
134
135	* dirdeps.mk: allow BUILD_DIRDEPS_OVERRIDES to pass overrides to
136	sub-make building DIRDEPS_CACHE.
137
1382024-04-24  Simon J Gerraty  <sjg@beast.crufty.net>
139
140	* meta.autodep.mk: do not override start_utc
141
1422024-04-18  Simon J Gerraty  <sjg@beast.crufty.net>
143
144	* sys.dirdeps.mk: set defaults for DEP_* at level 0 too.
145	These help when first include of Makefile.depend happens in a leaf
146	dir.
147
148	* install-mk (MK_VERSION): 20240414
149
1502024-04-09  Simon J Gerraty  <sjg@beast.crufty.net>
151
152	* install-mk (MK_VERSION): 20240408
153
154	* init.mk: allow for _ as well as . to join V
155	and Q from QUALIFIED_VAR_LIST and VAR_QUALIFIER_LIST.
156
157	* progs.mk: avoid overlap between PROG_VARS and
158	init.mk's QUALIFIED_VAR_LIST since PROG would also
159	match its VAR_QUALIFIER_LIST,
160	libs.mk does not have the same issue.
161
162	* subdir.mk: _SUBDIRUSE for realinstall should run install
163	remove include of ${.CURDIR}/Makefile.inc that can be done via
164	local.subdir.mk where needed
165
166	* own.mk: do not conflict with man.mk
167
1682024-03-19  Simon J Gerraty  <sjg@beast.crufty.net>
169
170	* install-mk (MK_VERSION): 20240314
171
172	* add sys/Cygwin.mk from Christian Franke
173
1742024-03-09  Simon J Gerraty  <sjg@beast.crufty.net>
175
176	* install-mk (MK_VERSION): 20240309
177
178	* meta.sys.mk: _metaError: if .ERROR_EXIT == 6, we do not
179	want to save the .ERROR_META_FILE
180
1812024-02-20  Simon J Gerraty  <sjg@beast.crufty.net>
182
183	* install-mk (MK_VERSION): 20240220
184
185	* sys.dirdeps.mk, dirdeps-targets.mk, init.mk:
186	do not set .MAIN: dirdeps in sys.dirdeps.mk
187	dirdeps-targets.mk will do that for top-level builds
188	and init.mk will do it for others.
189	This allows a Makefile which has no need of 'dirdeps' to
190	set .MAIN for itself and "just work".
191
1922024-02-18  Simon J Gerraty  <sjg@beast.crufty.net>
193
194	* bsd.*.mk: for makefiles that get a bsd. symlink,
195	use _this in  multiple inclusion tags since .PARSEFILE will not
196	DTRT when such a makefile is included directly by Makefile and
197	automatically (without bsd. prefix).
198	Since we cannot guarantee that our sys.mk will be used, we provide
199	a default _this in each makefile that gets a bsd. prefix such that
200	the value is the same regardless of bsd. prefix.
201
202	* subdir.mk: drop the !target guard on $SUBDIR_TARGETS
203
2042024-02-12  Simon J Gerraty  <sjg@beast.crufty.net>
205
206	* install-mk (MK_VERSION): 20240212
207
208	* SPDX-License-Identifier: BSD-2-Clause
209	Add SPDX-License-Identifier to inidicate that I consider
210	my copyright on any of these makefiles equivalent to BSD-2-Clause
211
212	* autoconf.mk: allow for configure.ac as currently recommended
213
214	* subdir.mk: support @auto
215	which is replaced with each subdir that
216	has a [Mm]akefile.
217
218	* subdir.mk: include local.subdir.mk if it exists.
219
220	* subdir.mk: rework to handle .WAIT
221
2222024-02-11  Simon J Gerraty  <sjg@beast.crufty.net>
223
224	* subdir.mk: _SUBDIRUSE report the target we are entering subdirs for.
225
2262024-02-10  Simon J Gerraty  <sjg@beast.crufty.net>
227
228	* prog.mk: treat empty SRCS the same as undefined
229
2302024-02-02  Simon J Gerraty  <sjg@beast.crufty.net>
231
232	* Avoid undefined errors in lint (-dL) mode
233
234	* man.mk (CMT2DOC_FLAGS): note that -mm does mdoc(7)
235
2362024-01-28  Simon J Gerraty  <sjg@beast.crufty.net>
237
238	* install-mk (MK_VERSION): 20240128
239
240	* FILES: add ccm.dep.mk for C++ modules
241	add suffixes.mk for common location for generic SUFFIX rules.
242
243	* auto.dep.mk autodep.mk meta.autodep.mk: include ccm.dep.mk
244	replace OBJ_EXTENSIONS with OBJ_SUFFIXES
245
246	* autodep.mk: leverage CXX_SUFFIXES for __depsrcs
247	and update style (spaces around = etc)
248
249	* init.mk: add OBJS_SRCS_FILTER to filter SRCS when
250	setting OBJS
251
252	* meta2deps.py: handle multiple ./ embedded in path better.
253
2542024-01-05  Simon J Gerraty  <sjg@beast.crufty.net>
255
256	* install-mk (MK_VERSION): 20240105
257	* dirdeps.mk: for MAKE_VERSION 20240105 we do not have the same
258	limits on command line length, so skip export of lists to env.
259
2602023-12-24  Simon J Gerraty  <sjg@beast.crufty.net>
261
262	* man.mk: add logic for staging man pages
263
2642023-11-28  Simon J Gerraty  <sjg@beast.crufty.net>
265
266	* jobs.mk: avoid C suffix in JOB_MAX_C if factor is floating
267	point.  This keeps JOB_MAX numeric incase another makefile does
268	comparisons.
269
2702023-11-04  Simon J Gerraty  <sjg@beast.crufty.net>
271
272	* dpadd.mk: add support for DPLIBS_QUALIFIER_LIST
273
274	* gendirdeps.mk: if META_XTRAS is passed to us, add to META_FILES
275
2762023-10-03  Simon J Gerraty  <sjg@beast.crufty.net>
277
278	* compiler.mk (COMPILER_VERSION): clang at least is into
279	double digit major versions.
280
2812023-10-02  Simon J Gerraty  <sjg@beast.crufty.net>
282
283	* install-mk (MK_VERSION): 20231001
284
285	* set _CCLINK in init.mk so lib.mk can use it for default SHLIB_LD
286
287	* lib.mk (cleanlib): use LD_solink so we remove all the right files.
288	Use -Wl for -soname since we now default to linking with CC
289	We should not need SHLIB_LDSTARTFILE or SHLIB_LDENDFILE when linking
290	with CC.
291
2922023-09-24  Simon J Gerraty  <sjg@beast.crufty.net>
293
294	* init.mk (QUALIFIED_VAR_LIST): Add SRCS
295
2962023-09-09  Simon J Gerraty  <sjg@beast.crufty.net>
297
298	* jobs.mk (JOB_MAX): use -jC if we can
299	we actually use JOB_MAX_C which defaults to 1.33C
300
3012023-08-18  Simon J Gerraty  <sjg@beast.crufty.net>
302
303	* now_utc: %s only works with :localtime
304
3052023-07-14  Simon J Gerraty  <sjg@beast.crufty.net>
306
307	* install-sh: ignore -c as claimed and only insist on
308	a directory for destination when more than one file to copy.
309
310	* sys.mk: when looking for SYS_OS_MK try ${.MAKE.OS} and
311	${.MAKE.OS:S,64,,} early (so we find sys/IRIX.mk for IRIX64)
312
3132023-07-13  Simon J Gerraty  <sjg@beast.crufty.net>
314
315	* install-mk (MK_VERSION): 20230711
316
317	* sys.mk: set SYS_MK and INSTALL_SH for systems with incompatible
318	install(1)
319
320	* sys/IRIX.mk:  when setting ROOT_GROUP only match the first :0:
321	set INSTALL to install-sh rather than pathname that may not exist
322	(yet).
323
3242023-07-07  Simon J Gerraty  <sjg@beast.crufty.net>
325
326	* dirdeps.mk: pass DIRDEP_TARGETS to DIRDEP_MAKE
327	normally this is empty - for the default target, but there are
328	use-cases where we might set it to something else.
329
3302023-07-04  Simon J Gerraty  <sjg@beast.crufty.net>
331
332	* install-mk (MK_VERSION): 20230704
333
334	* dirdeps.mk: apply DEBUG_DIRDEPS_LIST_FILTER to lists we output
335	when DEBUG_DIRDEPS is in effect.
336	Eg. DEBUG_DIRDEPS_LIST_FILTER=ts\n
337	can greatly improve readability.
338
3392023-05-25  Simon J Gerraty  <sjg@beast.crufty.net>
340
341	* meta.autodep.mk (beforegendirdeps): allow tasks to be done
342	at END but before gendirdeps
343
3442023-05-22  Simon J Gerraty  <sjg@beast.crufty.net>
345
346	* install-mk (MK_VERSION): 20230522
347
348	* host-target.mk: deal with garbage from uname -m on
349	Darwin ppc, also NetBSD appears to use x86_64 for MACHINE_ARCH
350	these days so just leave it be.
351	For Darwin arm and i386 use _HOST_MACHINE for _HOST_ARCH so we get
352	arm64 and x86_64 in HOST_TARGET.
353
3542023-05-15  Simon J Gerraty  <sjg@beast.crufty.net>
355
356	* sys.vars.mk: M_mtime use :mtime or 'stat -f %m' for older
357	versions of bmake.
358
359	* dirdeps.mk (TARGET_SPEC_VARS.host):
360	While *most* projects need only DEP_MACHINE for host,
361	there is always an exception.  So we allow for
362	TARGET_SPEC_VARS.host to be a subset of TARGET_SPEC_VARS.
363	The default will *just work* for most projects.
364	We set DEP_TARGET_SPEC_VARS and hence DEP_TARGET_SPEC
365	based on DEP_MACHINE.
366	Allow for M_dep_qual_fixes.host to be different too
367	and take care to apply the right set.
368
3692023-05-14  Simon J Gerraty  <sjg@beast.crufty.net>
370
371	* sys.dirdeps.mk: we *do* want to override OBJTOP
372	and if MAKEOBJDIR was not in env as we want it;
373	put it there - carefully.
374	Ensure OBJROOT ends in / or - (/ preferred)
375	Add more comments to explain what/why.
376
3772023-05-13  Simon J Gerraty  <sjg@beast.crufty.net>
378
379	* install-mk (MK_VERSION): 20230512
380
381	* dirdeps.mk: take care not to qualify "host" dirdeps
382
383	* sys.dirdeps.mk (OBJTOP): must use ?=
384
3852023-05-10  Simon J Gerraty  <sjg@beast.crufty.net>
386
387	* meta.autodep.mk: if LOCAL_DEPENDS_GUARD is "no"
388	suppress processing of .depend
389
3902023-05-09  Simon J Gerraty  <sjg@beast.crufty.net>
391
392	* dirdeps.mk: do not add _CURDIR to DIRDEPS for SRCTOP
393
394	* meta.sys.mk sys.dirdeps.mk:
395	originally DIRDEPS_BUILD and META_MODE were the same thing,
396	but META_MODE is useful by itself.
397	Move things from meta.sys.mk which actually pertain to
398	DIRDEPS_BUILD to sys.dirdeps.mk
399
4002023-05-04  Simon J Gerraty  <sjg@beast.crufty.net>
401
402	* install-mk (MK_VERSION): 20230504 May the Forth be with you
403
404	* dirdeps.mk: as with meta.sys.mk we treat "host" as special.
405	DEP_TARGET_SPEC is just ${DEP_MACHINE}
406
407	* meta.sys.mk: ensure DEP_* for TARGET_SPEC_VARS are set at
408	level > 0 since these are often refered to in Makefile.depend*
409
4102023-04-26  Simon J Gerraty  <sjg@beast.crufty.net>
411
412	* jobs.mk: report ${.TARGET} ${JOB_ARGS} ${JOB_LOG} and
413	anything in ${JOB_LOG_START}
414
415	* jobs.mk: look for newlog.sh in ${.SYSPATH:U${.PARSEDIR}}
416	or a scripts subdir before searching $PATH.
417
418	* FILES: include newlog.sh for jobs.mk
419
4202023-04-20  Simon J Gerraty  <sjg@beast.crufty.net>
421
422	* install-mk (MK_VERSION): 20230420
423
424	* lib.mk: include LDFLAGS and LDADD when linking shared libs
425
426	* gendirdeps.mk: document setting GENDIRDEPS_FILTER_VARS etc
427	via local.meta.sys.mk rather than local.gendirdeps.mk
428	so DEP_* variables can be set at level 1+ to avoid syntax errors
429	when used in conditionals in manually maintained Makefile.depend
430	files.
431
432	* dirdeps.mk: ensure M_dep_qual_fixes is applied to all _machines
433
4342023-04-18  Simon J Gerraty  <sjg@beast.crufty.net>
435
436	* dirdeps.mk: check we were not included by
437	Makefile.depend.options as the result is bad.
438
4392023-04-14  Simon J Gerraty  <sjg@beast.crufty.net>
440
441	* install-mk (MK_VERSION): 20230414
442
443	* meta.sys.mk: since we have :range we can put the logic for
444	processing TARGET_SPEC from env here.
445
446	* dirdeps.mk: reset DIRDEPS and DEP_RELDIR before including
447	local.dirdeps-missing.mk, also improve debug output.
448
449	* dirdeps.mk: to allow make -f dirdeps.mk include.$TARGET_SPEC
450	we need to use :M*[/.]* same as for when actually setting DIRDEPS
451	from the targets on command line.
452
4532023-04-12  Simon J Gerraty  <sjg@beast.crufty.net>
454
455	* Add jobs.mk
456
4572023-03-21  Simon J Gerraty  <sjg@beast.crufty.net>
458
459	* install-mk (MK_VERSION): 20230321
460
461	* meta.stage.mk: allow STAGE_SHLIB_LINKS_FILTER to filter
462	STAGE_LIBS for SHLIB_LINKS.
463
464	* autoconf.mk: add .WAIT after config.status
465
4662023-02-17  Simon J Gerraty  <sjg@beast.crufty.net>
467
468	* sys.vars.mk: add M_Index to report the index of a word in a list.
469
4702023-02-15  Simon J Gerraty  <sjg@beast.crufty.net>
471
472	* install-mk (MK_VERSION): 20230215
473
474	* warnings.mk: allow better control of -Werror
475	allow -Wno-error or similar to be added if
476	WARNINGS_SET < WERROR_SET
477	account for COMPILER_TYPE
478
4792023-01-29  Simon J Gerraty  <sjg@beast.crufty.net>
480
481	* autoconf.mk: hook config.status to beforebuild.
482
483	* whats.mk: what*.c is NOTMAIN
484
4852023-01-27  Simon J Gerraty  <sjg@beast.crufty.net>
486
487	* install-mk (MK_VERSION): 20230127
488	control umask so directories are created with suitable mode.
489
4902023-01-20  Simon J Gerraty  <sjg@beast.crufty.net>
491
492	* install-mk (MK_VERSION): 20230120
493
494	* sys.vars.mk: add M_On and M_Onr also cleanup to be more
495	consistent wrt testing MAKE_VERSION
496
4972023-01-12  Simon J Gerraty  <sjg@beast.crufty.net>
498
499	* install-mk (MK_VERSION): 20230112
500
501	* meta2deps.{py,sh}: assert if filemon data is truncated
502	we should see the '# Bye bye' record - assert if we do not.
503
5042022-09-09  Simon J Gerraty  <sjg@beast.crufty.net>
505
506	* install-mk (MK_VERSION): 20220909
507
508	* sys/Linux.mk set EGREP to grep -E to avoid deprecation warnings
509
5102022-09-06  Simon J Gerraty  <sjg@beast.crufty.net>
511
512	* dirdeps-options.mk: explain the need to use
513	${DEP_${TARGET_SPEC_VAR}:U${TARGET_SPEC_VAR}} when refering to
514	${TARGET_SPEC_VAR}
515
5162022-09-03  Simon J Gerraty  <sjg@beast.crufty.net>
517
518	* install-mk (MK_VERSION): 20220903
519
520	* M_cmpv handle more than 3 dots and clear leading 0's
521
5222022-07-20  Simon J Gerraty  <sjg@beast.crufty.net>
523
524	* install-mk (MK_VERSION): 20220720
525
526	* prog.mk: handle PROG_CXX for more than just NetBSD
527
5282022-06-20  Simon J Gerraty  <sjg@beast.crufty.net>
529
530	* install-mk (MK_VERSION): 20220620
531
532	* yacc.mk: when we have *.y in SRCS used explicit rules and .ORDER
533	rather than just suffix rules
534
5352022-04-23  Simon J Gerraty  <sjg@beast.crufty.net>
536
537	* install-mk (MK_VERSION): 20220422
538
539	* gendirdeps.mk: If LOCAL_DEPENDS_GUARD is set to "no"
540	do not capture any local depends in Makefile.depend
541
5422022-03-25  Simon J Gerraty  <sjg@beast.crufty.net>
543
544	* install-mk (MK_VERSION): 20220323
545	* posix.mk: default rules for .POSIX:
546
5472022-03-17  Simon J Gerraty  <sjg@beast.crufty.net>
548
549	* sys/*.mk: remove l from ARFLAGS
550
5512022-03-14  Simon J Gerraty  <sjg@beast.crufty.net>
552
553	* install-mk (MK_VERSION): 20220314
554
555	* dirdeps-options.mk: allow options to be per RELDIR
556	try DIRDEPS_OPTIONS_QUALIFIER_LIST first prefixed
557	with ${DEP_RELDIR}.
558
5592022-02-14  Simon J Gerraty  <sjg@beast.crufty.net>
560
561	* install-mk (MK_VERSION): 20220214
562
563	* cc-wrap.mk: fix :@ modifier
564
5652022-02-06  Simon J Gerraty  <sjg@beast.crufty.net>
566
567	* install-mk (MK_VERSION): 20220206
568
569	* cc-wrap.mk: docuement how CCACHE etc might be set for
570	maximum flexibility
571
5722022-02-05  Simon J Gerraty  <sjg@beast.crufty.net>
573
574	* sys.vars.mk: use JOT_CMD (jot or seq) if available for M_JOT
575
5762022-02-04  Simon J Gerraty  <sjg@beast.crufty.net>
577
578	* install-mk (MK_VERSION): 20220204
579
580	* host-target.mk: use .MAKE.OS if available
581
5822022-02-02  Simon J Gerraty  <sjg@beast.crufty.net>
583
584	* install-mk (MK_VERSION): 20220202
585
586	* cc-wrap.mk: allow other entries in CC_WRAP_FILTER
587	We add our filter on extensions last, so prior filters
588	can apply to the whole value of .IMPSRC
589
5902022-02-01  Simon J Gerraty  <sjg@beast.crufty.net>
591
592	* cc-wrap.mk: take advantage of target local variables to
593	wrap compilers like CC CXX with wrappers like ccache distcc etc
594
5952022-01-28  Simon J Gerraty  <sjg@beast.crufty.net>
596
597	* meta2deps: we do not expect any trace data for setid apps
598
5992022-01-26  Simon J Gerraty  <sjg@beast.crufty.net>
600
601	* dirdeps.mk: ensure TARGET_SPEC and TARGET_SPEC_VARS are passed
602	to sub-make using DIRDEPS_CACHE
603
6042022-01-07  Simon J Gerraty  <sjg@beast.crufty.net>
605
606	* dirdeps.mk: use _cache_script to minimize the number of shells
607	forked when generating dirdeps.cache
608
6092022-01-02  Simon J Gerraty  <sjg@beast.crufty.net>
610
611	* install-mk (MK_VERSION): 20220101
612
613	* dirdeps.mk: initialize DEP_* and _debug_reldir earlier.
614	If initial DIRDEPS are from command line, create the target
615	_dirdeps_cmdline as an indication.
616
6172022-01-01  Simon J Gerraty  <sjg@beast.crufty.net>
618
619	* init.mk (_SKIP_BUILD): when doing DIRDEPS_BUILD
620	at top-level only some targets are allowed at level 0,
621	for leaf makefiles only the default (all) target is restricted
622
6232021-12-28  Simon J Gerraty  <sjg@beast.crufty.net>
624
625	* install-mk (MK_VERSION): 20211228
626
627	* meta2deps.py: filemon on Linux is not as reliable as we might
628	like, we do not want to update DIRDEPS if filemon output is
629	incomplete.   Track pids that we 'E'xec and make sure we see an
630	e'X'it for each one.  Throw an error if we are missing any 'X'
631	records.
632
6332021-12-12  Simon J Gerraty  <sjg@beast.crufty.net>
634
635	* sys.mk: simplify; include meta.sys.mk if MK_META_MODE is yes.
636
637	* meta.sys.mk: do not check for /dev/filemon if .MAKE.PATH_FILEMON
638	is something else.
639
640	* meta.autodep.mk: we can now reference ${.SUFFIXES}
641
642	* meta2deps.py: derive a list of dirdep extensions from
643	TARGET_SPEC to trim from dirdeps.
644
645	* dirdeps.mk: flip the computation of qualified vs unqualified
646	dirdeps - it is much simpler to check for unqualified first.
647
6482021-12-11  Simon J Gerraty  <sjg@beast.crufty.net>
649
650	* install-mk (MK_VERSION): 20211212
651
652	* auto.dep.mk: rearrange so that the trivial implementation
653	for recent bmake is more obvious.
654
6552021-12-07  Simon J Gerraty  <sjg@beast.crufty.net>
656
657	* install-mk (MK_VERSION): 20211207
658
659	* Ensure guard targets are .NOTMAIN
660
661	* meta.sys.mk: check for nofilemon support when we skip level 0
662
663	* auto.dep.mk: make this usable in meta mode
664	for platforms that cannot use meta.autodep.mk
665
666	* meta2deps.py: avoid confusion if MACHINE and another
667	TARGET_SPEC_VAR have same value.
668
6692021-11-27  Simon J Gerraty  <sjg@beast.crufty.net>
670
671	* dirdeps.mk: when building dirdeps.cache, minimize the amount of
672	data put into env, by stripping ${SRCTOP}/ from each entry.
673	A long sandbox name can double the amount of memory consumed and
674	in extreme cases cause failure.
675	While we are at it, strip ${SRCTOP}/ from a lot of the debug output.
676
6772021-11-11  Simon J Gerraty  <sjg@beast.crufty.net>
678
679	* install-mk (MK_VERSION): 20211111
680
681	* meta.stage.mk (LN_CP_SCRIPT): if staging to NFS cp -p can fail
682	so fallback to cp if necessary.
683
6842021-10-30  Simon J Gerraty  <sjg@beast.crufty.net>
685
686	* man.mk (CMT2DOC): use cmt2doc.py rather than the 30 year
687	old cmt2doc.pl
688
6892021-10-24  Simon J Gerraty  <sjg@beast.crufty.net>
690
691	* meta.stage.mk: stage_as_and_symlink use ${STAGE_LINK_AS_$f:U$f}
692	as the symlink (rare)
693
6942021-10-16  Simon J Gerraty  <sjg@beast.crufty.net>
695
696	* autoconf.mk: if AUTOCONF_GENERATED_MAKEFILE is set and has not
697	been read, throw an error after running configure telling user to
698	restart.
699
7002021-10-13  Simon J Gerraty  <sjg@beast.crufty.net>
701
702	* install-mk (MK_VERSION): 20211011
703
704	* Add support for SCO_SV
705
7062021-10-01  Simon J Gerraty  <sjg@beast.crufty.net>
707
708	* install-mk (MK_VERSION): 20211001
709
710	* man.mk: use MAN_SUFFIXES and CMT2DOC_SUFFIXES for more
711	flexibility
712
7132021-09-13  Simon J Gerraty  <sjg@beast.crufty.net>
714
715	* options.mk (describe-options): print options and their values
716	  and optional description
717
7182021-09-11  Simon J Gerraty  <sjg@beast.crufty.net>
719
720	* install-mk (MK_VERSION): 20210911
721
722	* options.mk (show-options): print options and their values
723
7242021-09-08  Simon J Gerraty  <sjg@beast.crufty.net>
725
726	* install-mk (MK_VERSION): 20210909
727
728	* lib.mk: apply patch from <daniel@octaforge.org>
729	to fix shared libs on Linux
730
7312021-08-08  Simon J Gerraty  <sjg@beast.crufty.net>
732
733	* install-mk (MK_VERSION): 20210808
734
735	* options.mk: issue warning for WITH_*=no
736
7372021-06-16  Simon J Gerraty  <sjg@beast.crufty.net>
738
739	* install-mk (MK_VERSION): 20210616
740
741	* dirdeps.mk: when using .MAKE.DEPENDFILE_PREFERENCE to find
742	depend files to read, anchor MACHINE at , or end of string
743	to avoid prefix match.
744
7452021-05-04  Simon J Gerraty  <sjg@beast.crufty.net>
746
747	* install-mk (MK_VERSION): 20210504
748
749	* dirdeps.mk: re-implement ALL_MACHINES support to better
750	cater for local complexities, when ONLY_TARGET_SPEC_LIST
751	is not set. local.dirdeps.mk can set
752	DIRDEPS_ALL_MACHINES_FILTER and/or
753	DIRDEPS_ALL_MACHINES_FILTER_XTRAS to filter the results we get
754	from listing all existing Makefile.depend.*
755
7562021-04-20  Simon J Gerraty  <sjg@beast.crufty.net>
757
758	* install-mk (MK_VERSION): 20210420
759
760	* dirdeps.mk: revert previous - not always safe.
761
7622021-03-20  Simon J Gerraty  <sjg@beast.crufty.net>
763
764	* install-mk (MK_VERSION): 20210321
765
766	* dirdeps.mk: when generating dirdeps.cache
767	we only need to hook the initial DIRDEPS to the
768	dirdeps target.  That and any _build_xtra_dirs (like tests which
769	should not be hooked directly to the dependency graph - to avoid
770	cycles)
771
7722021-01-30  Simon J Gerraty  <sjg@beast.crufty.net>
773
774	* install-mk (MK_VERSION): 20210130
775
776	* dirdeps.mk: expr 2 - 1 - 1 exits with a bad status
777	  we need to  guard against this in DIRDEP_LOADAVG_REPORT.
778
779	* dirdeps.mk: restore respect for TARGET_MACHINE
780
7812021-01-06  Simon J Gerraty  <sjg@beast.crufty.net>
782
783	* install-mk (MK_VERSION): 20210101
784
785	* dirdeps.mk: first time we are read, just use TARGET_SPEC for
786	_DEP_TARGET_SPEC
787
7882020-12-22  Simon J Gerraty  <sjg@beast.crufty.net>
789
790	* sys.mk (MAKE_SHELL): use ${.SHELL:Ush}
791	and use := when setting SHELL
792
7932020-12-21  Simon J Gerraty  <sjg@beast.crufty.net>
794
795	* install-mk (MK_VERSION): 20201221
796
797	* dirdeps-options.mk: latest bmake allows only one arg to .undef
798
7992020-12-11  Simon J Gerraty  <sjg@beast.crufty.net>
800
801	* dirdeps-targets.mk: allow for "." in DIRDEPS_TARGETS_DIRS
802	so that any directory can be treated as a target.
803
8042020-11-26  Simon J Gerraty  <sjg@beast.crufty.net>
805
806	* install-mk (MK_VERSION): 20201126
807
808	* own.mk: use .MAKE.{UID,GID} if available.
809
810	* init.mk: suppress _SKIP_BUILD warning if doing -V
811
8122020-11-20  Simon J Gerraty  <sjg@beast.crufty.net>
813
814	* install-mk (MK_VERSION): 20201120
815
816	* init.mk: rename LEVEL0_TARGETS to DIRDEPS_BUILD_LEVEL0_TARGETS
817
818	* dirdeps-targets.mk: fix typo in comment
819
8202020-11-06  Simon J Gerraty  <sjg@beast.crufty.net>
821
822	* install-mk (MK_VERSION): 20201106
823
824	* meta.autodep.mk: use OBJ_EXTENSIONS rather than hardcode sed
825	args to tweak extensions for local deps.
826
8272020-11-01  Simon J Gerraty  <sjg@beast.crufty.net>
828
829	* install-mk (MK_VERSION): 20201101
830
831	* dirdeps.mk: most leaf makefiles are not suitable for building
832	dirdeps.cache so if RELDIR is not "." use dirdeps.mk
833
8342020-10-28  Simon J Gerraty  <sjg@beast.crufty.net>
835
836	* install-mk (MK_VERSION): 20201028
837
838	* dirdeps.mk: if we don't have :range use equivalent of M_RANGE
839	when building dirdeps.cache for leaf directory use -f dirdeps.mk
840
841	* sys.vars.mk: add M_JOT and M_RANGE
842
8432020-10-01  Simon J Gerraty  <sjg@beast.crufty.net>
844
845	* install-mk (MK_VERSION): 20201001
846
847	* meta2deps.{py,sh}: throw an error if we don't see filemon version
848
8492020-09-09  Simon J Gerraty  <sjg@beast.crufty.net>
850
851	* install-mk (MK_VERSION): 20200909
852
853	* dirdeps-cache-update.mk: use cache_update_dirdep as guard target
854
8552020-08-26  Simon J Gerraty  <sjg@beast.crufty.net>
856
857	* dirdeps.mk: ensure we cannot confuse a static cache for dynamic
858	(even more rare that use of static cache is playing clever tricks
859	with it)
860
8612020-08-16  Simon J Gerraty  <sjg@beast.crufty.net>
862
863	* dirdeps-cache-update.mk: allow
864	MK_STATIC_DIRDEPS_CACHE_UPDATE_IMMEDIATE to control when we
865	actually update STATIC_DIRDEPS_CACHE.
866
867	* stage-install.sh: create dest directory if needed
868	before running install(1)
869
8702020-08-10  Simon J Gerraty  <sjg@beast.crufty.net>
871
872	* dirdeps-targets.mk: include Makefile.dirdeps.options
873
874	* dirdeps.mk: use _TARGETS if defined for DIRDEPS_CACHE
875
8762020-08-09  Simon J Gerraty  <sjg@beast.crufty.net>
877
878	* dirdeps.mk: default BUILD_DIRDEPS_MAKEFILE to empty
879
880	* dirdeps-cache-update.mk: building parallel cache update
881	under the context of dirdeps-cached would be ideal, but
882	is problematic, so it runs as a sibling.
883	Use cache-built target to ensure we wait for it to complete if
884	necessary.
885
8862020-08-06  Simon J Gerraty  <sjg@beast.crufty.net>
887
888	* install-mk (MK_VERSION): 20200806
889
890	* dirdeps-options: allow TARGET_SPEC to affect option values.
891	Use DIRDEPS_OPTIONS_QUALIFIER_LIST before using bare MK_*
892
893	* dirdeps-targets.mk: check for MK_STATIC_DIRDEPS_CACHE defined
894	before looking for STATIC_DIRDEPS_CACHE
895
8962020-08-05  Simon J Gerraty  <sjg@beast.crufty.net>
897
898	* host-target.mk: Darwin use MACHINE for HOST_ARCH too
899
900	* dirdeps-options.mk: improve debug output
901
9022020-07-22  Simon J Gerraty  <sjg@beast.crufty.net>
903
904	* dirdeps.mk: set and export DYNAMIC_DIRDEPS_CACHE
905	for use by dirdeps-cache-update.mk
906
907	* dirdeps-targets.mk: set and export STATIC_DIRDEPS_CACHE
908	for use by dirdeps-cache-update.mk even if we don't use it.
909
910	* dirdeps-cache-update.mk: we only need worry about the background
911	update case, with the above, the update from DIRDEPS_CACHE is
912	simple.
913
914	* meta2deps.py: R 1234 . is not interesting
915
9162020-07-20  Simon J Gerraty  <sjg@beast.crufty.net>
917
918	* sys.mk: default MK_STATIC_DIRDEPS_CACHE from MK_DIRDEPS_CACHE
919
920	* dirdeps-options.mk: do not :tu DIRDEPS_OPTIONS
921	allows use of lower case for pseudo options.
922
923	* dirdeps-cache-update.mk: magic to deal with STATIC_DIRDEPS_CACHE
924
9252020-07-18  Simon J Gerraty  <sjg@beast.crufty.net>
926
927	* dirdeps-targets.mk: Look for Makefile.dirdeps.cache
928	which allows us to have a static cache for expensive targets.
929	Use -DWITHOUT_STATIC_DIRDEPS_CACHE -DWITH_DIRDEPS_CACHE
930	to regenerate the dirdeps.cache it is a copy of.
931
9322020-07-17  Simon J Gerraty  <sjg@beast.crufty.net>
933
934	* Get rid of BUILD_AT_LEVEL0, MK_DIRDEPS_BUILD makes more sense.
935
9362020-07-16  Simon J Gerraty  <sjg@beast.crufty.net>
937
938	* dirdeps.mk (DIRDEP_LOADAVG_REPORT): make it easy to record
939	load averages at intervals during build.
940
9412020-07-15  Simon J Gerraty  <sjg@beast.crufty.net>
942
943	* install-mk (MK_VERSION): 20200715
944
945	* dirdeps.mk: tweak Checking line to make matching Finished
946	lines for post-build analysis easier.
947
948	* meta.autodep.mk: use !defined(WITHOUT_META_STATS)
949
950	* progs.mk: avoid prog.mk outputting multiple Finished lines
951
9522020-07-11  Simon J Gerraty  <sjg@beast.crufty.net>
953
954	* dirdeps.mk: further optimize dirdeps.cache
955	generate a DIRDEPS.${.TARGET} list for other purposes
956	and improve the layout.
957
9582020-07-10  Simon J Gerraty  <sjg@beast.crufty.net>
959
960	* dirdeps.mk: optimize content of dirdeps.cache
961
9622020-06-28  Simon J Gerraty  <sjg@beast.crufty.net>
963
964	* sys/*.mk: make it easier for local*sys.mk to customize by
965	using ?=
966
9672020-06-22  Simon J Gerraty  <sjg@beast.crufty.net>
968
969	* gendirdeps.mk (LOCAL_DEPENDS_GUARD): if we don't build at level 0
970	it is much safer to guard local depends with a simple check for
971	.MAKE.LEVEL > 0
972
9732020-06-10  Simon J Gerraty  <sjg@beast.crufty.net>
974
975	* install-mk (MK_VERSION): 20200610
976
977	* mkopt.sh: this needs posix shell so #!/bin/sh should be ok
978
9792020-06-06  Simon J Gerraty  <sjg@beast.crufty.net>
980
981	* install-mk (MK_VERSION): 20200606
982
983	* dirdeps-targets.mk: allow for filtering of .TARGETS
984
985	* meta2deps.py: fix bug in processing 'L'ink and 'M'ove
986	entries - and we don't care about 'W'rite entries.
987	Also ignore absolute paths that do not exist.
988
9892020-05-25  Simon J Gerraty  <sjg@beast.crufty.net>
990
991	* install-mk (MK_VERSION): 20200525
992
993	* init.mk: expand and simplify handling of qualified vars
994	like CPPFLAGS.${.TARGET:T}
995
9962020-05-15  Simon J Gerraty  <sjg@beast.crufty.net>
997
998	* install-mk (MK_VERSION): 20200515
999
1000	* dirdeps.mk: set _debug_* earlier and allow passing -d*
1001	flags to submake when building DIRDEPS_CACHE
1002
10032020-05-09  Simon J Gerraty  <sjg@beast.crufty.net>
1004
1005	* whats.mk: more easily extensible
1006
10072020-05-02  Simon J Gerraty  <sjg@beast.crufty.net>
1008
1009	* whats.mk: greatly simplify by adding what.c to SRCS
1010
10112020-05-01  Simon J Gerraty  <sjg@beast.crufty.net>
1012
1013	* whats.mk: for libs take care how we add to *OBJS
1014
1015	* lib.mk: : works better with whats.mk
1016
10172020-04-25  Simon J Gerraty  <sjg@beast.crufty.net>
1018
1019	* install-mk (MK_VERSION): 20200420
1020
1021	* meta.stage.mk: it is not a STAGE_CONFLICT if some-target.dirdep
1022	contains the same ${RELDIR} and a prefix match for our ${TARGET_SPEC}
1023
10242020-04-16  Simon J Gerraty  <sjg@beast.crufty.net>
1025
1026	* install-mk (MK_VERSION): 20200416
1027
1028	* sys/*.mk: set MAKE_SHELL rather than SHELL so as not to
1029	  interfere with user env.
1030
1031	* sys.mk: default MAKE_SHELL to sh and SHELL to MAKE_SHELL
1032
1033	* autodep.mk: use MAKE_SHELL.
1034
10352019-11-21  Simon J Gerraty  <sjg@beast.crufty.net>
1036
1037	* gendirdeps.mk: clear .SUFFIXES to avoid a lot of
1038	  wasted effort, and unexport _meta_files when no longer needed as
1039	  it consumes space we need for command line.
1040
10412019-11-11  Simon J Gerraty  <sjg@beast.crufty.net>
1042
1043	* dirdeps.mk _DIRDEP_USE: use DIRDEP_DIR and add
1044	  DIRDEP_USE_PRELUDE at start - facilitates job distribution
1045
10462019-10-04  Simon J Gerraty  <sjg@beast.crufty.net>
1047
1048	* dirdeps-targets.mk: Use TARGET_SPEC_LAST_LIST
1049	defaults to ${${TARGET_SPEC_VARS:[-1]}_LIST} to match valid
1050	TARGET_SPEC qualified depend files.
1051
10522019-10-02  Simon J Gerraty  <sjg@beast.crufty.net>
1053
1054	* dirdeps-targets.mk: encapsulate logic for finding top-level
1055	  targets to set initial DIRDEPS for DIRDEPS_BUILD
1056
10572019-09-27  Simon J Gerraty  <sjg@beast.crufty.net>
1058
1059	* install-mk (MK_VERSION): 20190911
1060
1061	* compiler.mk: set COMPILER_TYPE
1062
10632019-07-17  Simon J Gerraty  <sjg@beast.crufty.net>
1064
1065	* install-mk (MK_VERSION): 20190704
1066
1067	* sys/Darwin.mk: support for Objective-C and clang
1068
10692019-05-30  Simon J Gerraty  <sjg@beast.crufty.net>
1070
1071	* dirdeps.mk: avoid insanely long command line when generating cache
1072
10732019-05-23  Simon J Gerraty  <sjg@beast.crufty.net>
1074
1075	* install-mk (MK_VERSION): 20190505
1076
1077	* whats.mk: handle corner case SHLIB defined but not LIB
1078
10792018-09-19  Simon J Gerraty  <sjg@beast.crufty.net>
1080
1081	* install-mk (MK_VERSION): 20180919
1082
1083	* dirdeps-options.mk: .undef cannot handle var that expands to
1084	  more than one var.
1085
10862018-07-08  Simon J Gerraty  <sjg@beast.crufty.net>
1087
1088	* meta.stage.mk: allow wildcards in STAGE_FILES.* etc.
1089
10902018-06-01  Simon J Gerraty  <sjg@beast.crufty.net>
1091
1092	* meta.autodep.mk: export META_FILES to avoid command line limit
1093	* gendirdeps.mk: if we have lots of .meta files put them in
1094	  an @list
1095
10962018-05-28  Simon J Gerraty  <sjg@beast.crufty.net>
1097
1098	* dirdeps-options.mk: use local.dirdeps-options.mk
1099	  not local.dirdeps-option.mk
1100
11012018-04-20  Simon J Gerraty  <sjg@beast.crufty.net>
1102
1103	* install-mk (MK_VERSION): 20180420
1104	* dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0
1105	  ie. we are building something.
1106
11072018-04-14  Simon J Gerraty  <sjg@beast.crufty.net>
1108
1109	* FILES: add dirdeps-options.mk to deal with optional DIRDEPS.
1110
11112018-04-05  Simon J Gerraty  <sjg@beast.crufty.net>
1112
1113	* install-mk (MK_VERSION): 20180405
1114
1115	* ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER
1116	  if needed.
1117
11182018-01-18  Simon J Gerraty  <sjg@beast.crufty.net>
1119
1120	* install-mk (MK_VERSION): 20180118
1121
1122	* ldorder.mk: let make compute correct link order
1123
11242017-12-12  Simon J Gerraty  <sjg@beast.crufty.net>
1125
1126	* install-mk (MK_VERSION): 20171212
1127
1128	* gendirdeps.mk: guard against bogus entries in GENDIRDEPS_FILTER
1129
11302017-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1131
1132	* install-mk (MK_VERSION): 20171111
1133
1134	* lib.mk: ensure META_NOECHO is set
1135
11362017-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
1137
1138	* Allow for host32 on rare occasions.
1139
11402017-10-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1141
1142	* install-mk (MK_VERSION): 20171018
1143
1144	* whats.mk: include what_thing in what_uuid to avoid problem
1145	  when building multiple apps in the same directory.
1146
11472017-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1148
1149	* install-mk (MK_VERSION): 20170812
1150
1151	* autoconf.mk: Use CONFIGURE_DEPS so Makefile can
1152	  add dependencies for config.recheck and config.gen
1153
11542017-06-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1155
1156	* install-mk (MK_VERSION): 20170630
1157
1158	* meta.stage.mk: avoid triggering stage_* targets with nothing to do.
1159
11602017-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1161
1162	* meta2deps.py: take special care of '..'
1163
11642017-05-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1165
1166	* install-mk (MK_VERSION): 20170515
1167
1168	* dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is
1169	useful/necessary for a Makefile.depend file to export some knobs.
1170	This is complicated when we are doing DIRDEPS_CACHE, so we will
1171	handle export of any variables listed in DEP_EXPORT_VARS.
1172
11732017-05-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1174
1175	* install-mk (MK_VERSION): 20170505
1176
1177	* meta2deps.py: fix botched indenation.
1178
11792017-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1180
1181	* sys/*.mk: Remove setting of MAKE it is unnecessary and
1182	  in many cases wrong (basname rather than full path)
1183
1184	* scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk
1185
1186	* init.mk: define realbuild to simplify logic in {lib,prog}.mk etc
1187
11882017-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1189
1190	* install-mk (MK_VERSION): 20170501
1191
1192	* doc.mk: fix typo in DOC_INSTALL_OWN
1193
1194	* inc.mk: handle INCGROUPS similar to freebsd
1195
1196	* files.mk: add something for files too
1197
1198	* add staging logic to lib.mk prog.mk etc.
1199
12002017-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1201
1202	* install-mk (MK_VERSION): 20170424
1203
1204	* dirdeps.mk: set NO_DIRDEPS when bootstrapping.
1205	  also target of bootstrap-this when sed is needed should be ${_want:T}
1206
12072017-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1208
1209	* install-mk (MK_VERSION): 20170418
1210
1211	* auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a
1212	  prefix match for .CURDIR - in which case .CURDIR *is* __objdir.
1213
12142017-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1215
1216	* install-mk (MK_VERSION): 20170401
1217
1218	* meta2deps.py: add is_src so we can check if obj dependency
1219	  is also a src dependency.
1220
12212017-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1222
1223	* install-mk (MK_VERSION): 20170326
1224
1225	* meta.stage.mk: do nothing if NO_STAGING is defined.
1226
12272017-03-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1228
1229	* auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc.
1230
12312017-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1232
1233	* mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_*
1234
12352017-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1236
1237	* install-mk (MK_VERSION): 20170301
1238
1239	* dirdeps.mk (_build_all_dirs): update this outside test for empty
1240	  DIRDEPS.
1241
1242	* meta.stage.mk: allow multiple inclusion to the extent it makes
1243	  sense.
1244
12452017-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1246
1247	* prog.mk (install_links): depends on realinstall
1248
12492017-02-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1250
1251	* install-mk (MK_VERSION): 20170212
1252
1253	* dpadd.mk: avoid applying :T:R twice to DPLIBS entries
1254
12552017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1256
1257	* install-mk (MK_VERSION): 20170130
1258
1259	* dirdeps.mk: use :range if we can.
1260
1261	* sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130
1262
1263	* meta2deps.py: clean paths without using realpath() where possible.
1264	  fix sort_unique.
1265
12662016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1267
1268	* install-mk (MK_VERSION): 20161212
1269
1270	* meta2deps.py: set pid_cwd[pid] when we process 'C'hdir,
1271	rather than when we detect pid change.
1272
12732016-12-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1274
1275	* install-mk (MK_VERSION): 20161207
1276
1277	* meta.stage.mk: add stage_as_and_symlink for staging packages.
1278	  We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able
1279	  to use foo.tgz to reference the latest staged version - so we
1280	  make foo.tgz a symlink to it.
1281	  Using a target to do both operations ensures we stay in sync.
1282
12832016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1284
1285	* install-mk (MK_VERSION): 20161126
1286
1287	* dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk
1288	  so it can add dependencies.
1289
12902016-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1291
1292	* dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE
1293	  do that they can influence the result correctly.
1294
1295	* dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC
1296
1297	* dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST
1298	  similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST
1299
13002016-10-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1301
1302	* dirdeps.mk: remove dependence on jot (normal situations anyway).
1303	  Before we read another Makefile.depend* set DEP_* vars from
1304	  _DEP_TARGET_SPEC in case it uses any of them with :=
1305	  When bootstrapping, trim any ,* from extention of chosen _src
1306	  Makefile.depend* to get the machine value we subst for.
1307
13082016-09-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1309
1310	* dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to
1311	  DEP_SKIP_DIR and DEP_DIRDEPS_FILTER
1312
1313	* sys.mk: extract some bits to sys.{debug,vars}.mk
1314	  for easier re-use by others.
1315
13162016-09-23  Simon Gerraty  <sjg@sjg-mba13>
1317
1318	* lib.mk: Use ${PICO} for extension for PIC objects.
1319	  default to .pico (like NetBSD) safe on case insensitive filesystem.
1320
13212016-08-19  Simon J. Gerraty  <sjg@bad.crufty.net>
1322
1323	* meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default
1324
13252016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1326
1327	* install-mk (MK_VERSION): 20160815
1328
1329	* dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only
1330	consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date.
1331
13322016-08-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1333
1334	* meta.sys.mk (.MAKE.META.IGNORE_PATHS):
1335	  in meta mode we can ignore the mtime of makefiles
1336
13372016-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1338
1339	* install-mk (MK_VERSION): 20160802
1340
1341	* lib.mk (libinstall): depends on beforinstall
1342
1343	* prog.mk (proginstall): depends on beforinstall
1344	  patch from Lauri Tirkkonen
1345
1346	* dirdeps.mk (bootstrap): When bootstrapping; creat
1347	.MAKE.DEPENDFILE_DEFAULT and allow additional filtering via
1348	.MAKE.DEPENDFILE_BOOTSTRAP_SED
1349
1350	* dirdeps.mk: move some comments to where they make sense.
1351
13522016-07-27  Simon J. Gerraty  <sjg@bad.crufty.net>
1353
1354	* dirdeps.mk (DIRDEPS_CACHE): no dirname.
1355
13562016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1357
1358	* install-mk (MK_VERSION): 20160602
1359	* meta.autodep.mk: when passing META_FILES to gendirdeps.mk
1360	  do not apply :T to META_XTRAS
1361	  patch from Bryan Drewery at FreeBSD.org.
1362
13632016-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1364
1365	* install-mk (MK_VERSION): 20160530
1366	* meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH
1367	  make it so.
1368
13692016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1370
1371	* install-mk (MK_VERSION): 20160512
1372
1373	* dpadd.mk: always include local.dpadd.mk if it exists
1374	  remove some things that better belong in local.dpadd.mk
1375	  skip INCLUDES_* for staged libs unless SRC_* defined.
1376
1377	* own.mk: add INCLUDEDIR
1378
13792016-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1380
1381	* dirdeps.mk: when doing -f dirdeps.mk if target suppies no
1382	  TARGET_MACHINE - :E will be empty or match part of path, use
1383	  ${MACHINE}
1384
13852016-04-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1386
1387	* meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to
1388	  NO_FILEMON_COOKIE
1389
1390	* dirdeps.mk: move the logic that allows for
1391	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
1392	  inside the check for !target(_DIRDEP_USE)
1393
13942016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1395
1396	* Use <> when including local*.mk and others which may exist
1397	  elsewhere so that user can better control what they get.
1398
1399	* meta.autodep.mk (NO_FILEMON_COOKIE):
1400	  create a cookie if we ever build dir with nofilemon
1401	  so that UPDATE_DEPENDFILE will be forced to NO until cleaned.
1402
14032016-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1404
1405	* install-mk (MK_VERSION): 20160401
1406
1407	* meta2deps.py: fix old print statement when debugging.
1408
1409	* gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X
1410	  patch from Bryan Drewery
1411
14122016-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1413
1414	* install-mk (MK_VERSION): 20160317 (St. Pats)
1415
1416	* warnings.mk: g++ does not like -Wimplicit
1417
1418	* sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the
1419	  pelthora of common suffixes for C++
1420
1421	* lib.mk: use .So for shared objects
1422
14232016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1424
1425	* install-mk (MK_VERSION): 20160315
1426
1427	* meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1)
1428	  normally only applies to scripts.
1429
1430	* dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as
1431	  well as outside it.
1432
14332016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1434
1435	* install-mk (MK_VERSION): 20160310
1436
1437	* dirdeps.mk: use targets rather than a list to track DIRDEPS that
1438	  we have processed; the list gets very inefficient as number of
1439	  DIRDEPS gets large.
1440
1441	* sys.dependfile.mk: fix comment wrt MACHINE
1442
1443	* meta.autodep.mk: ignore staged DPADDs when bootstrapping.
1444	  patch from Bryan Drewery
1445
14462016-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1447
1448	* meta2deps.sh: don't ignore subdirs.
1449	  patch from Bryan Drewery
1450
14512016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1452
1453	* install-mk (MK_VERSION): 20160226
1454
1455	* gendirdeps.mk: mark _DEPENDFILE .NOMETA
1456
14572016-02-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1458
1459	* dirdeps.mk: we shouldn't normally include .depend but if we do
1460	  use .dinclude if we can.
1461
14622016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1463
1464	* install-mk (MK_VERSION): 20160218
1465	* sys.clean-env.mk: with recent change to Var_Subst()
1466	  we cannot use the '$$' trick, but .export-literal does the job
1467	  we need.
1468	* auto.dep.mk: make use .dinclude if we can.
1469
1470
14712016-02-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1472
1473	* dirdeps.mk:
1474	  Add _build_all_dirs such that local.dirdeps.mk can
1475	  add fully qualified dirs to it.
1476	  These will be built normally but the current
1477	  DEP_RELDIR will not depend on then (to avoid cycles).
1478	  This makes it easy to hook things like unit-tests into build.
1479
1480
14812016-01-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1482
1483	* dirdeps.mk: add bootstrap-empty
1484
14852015-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1486
1487	* install-mk (MK_VERSION): 20151212
1488	* auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist.
1489	  only apply :tA to __objdir when comparing to .OBJDIR
1490
14912015-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1492
1493	* install-mk (MK_VERSION): 20151111
1494
1495	* meta.sys.mk: include sys.dependfile.mk
1496
1497	* sys.mk (OPTIONS_DEFAULT_NO): use options.mk
1498	  to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD
1499	  include local.sys.env.mk early
1500	  include local.sys.mk later
1501
1502	* own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk
1503
15042015-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1505
1506	* meta.sys.mk (META_COOKIE_TOUCH):
1507	  add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie
1508
1509	* meta.stage.mk: stage_libs should ignore SYMLINKS.
1510
15112015-10-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1512
1513	* install-mk (MK_VERSION): 20151022
1514
1515	* sys.mk: BSD/OS does not have 'type' as a shell builtin.
1516
15172015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1518
1519	* install-mk (MK_VERSION): 20151020
1520
1521	* dirdeps.mk: Add logic for
1522	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
1523
15242015-10-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1525
1526	* install-mk (MK_VERSION): 20151010
1527
15282015-10-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1529
1530	* meta.stage.mk: use staging: ${STAGE_TARGETS:...
1531	  to have stage_lins run last in non-jobs mode.
1532	  Use .ORDER only for jobs mode.
1533
15342015-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1535
1536	* rst2htm.mk: allow for per target flags etc.
1537
15382015-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1539
1540	* install-mk (MK_VERSION): 20150901
1541
1542	* doc.mk: create dir if needed use DOC_INSTALL_OWN
1543
15442015-06-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1545
1546	* install-mk (MK_VERSION): 20150615
1547
1548	* auto.obj.mk: allow use of MAKEOBJDIRPREFIX too.
1549	  Follow make's normal precedence rules.
1550
1551	* gendirdeps.mk: allow customization of the header.
1552	  eg. for FreeBSD:
1553	  GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}';
1554
1555	* meta.autodep.mk: ignore dirdeps.cache*
1556
1557	* meta.stage.mk: when bootstrapping options it can be handy to
1558	  throw warnings rather than errors for staging conflicts.
1559
1560	* meta.sys.mk: include local.meta.sys.mk for customization
1561
15622015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1563
1564	* install-mk (MK_VERSION): 20150606
1565
1566	* dirdeps.mk: don't rely on manually maintained Makefile.depend
1567	  to set DEP_RELDIR and reset DIRDEPS.
1568	  By setting DEP_RELDIR ourselves we can skip :tA
1569
1570	* gendirdeps.mk: skip setting DEP_RELDIR.
1571
15722015-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1573
1574	* dirdeps.mk: avoid wildcards like make(bootstrap*)
1575
15762015-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1577
1578	* install-mk (MK_VERSION): 20150520
1579
1580	* dirdeps.mk: when we are building dirdeps cache file we *want*
1581	  meta_oodate to look at all the Makefile.depend files, so
1582	  set .MAKE.DEPENDFILE to something that won't match.
1583
1584	* meta.stage.mk: for STAGE_AS_* basename of file may not be unique
1585	  so first use absolute path as key.
1586	  Also skip staging at level 0.
1587
15882015-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1589
1590	* install-mk (MK_VERSION): 20150430
1591
1592	* dirdeps.mk: fix _count_dirdeps for non-cache case.
1593
15942015-04-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1595
1596	* install-mk (MK_VERSION): 20150411
1597	  bump version
1598
1599	* own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES.
1600	  it is here mainly for documentation purposes, since
1601	  if using auto.obj.mk it is better done via sys.mk
1602
16032015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1604
1605	* install-mk (MK_VERSION): 20150401
1606
1607	* meta2deps.sh: support @list
1608
1609	* meta2deps.py: updates from Juniper
1610	  o add EXCLUDES
1611	  o skip bogus input files.
1612	  o treat 'M' and 'L' as both an 'R' and a 'W'
1613
16142015-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1615
1616	* install-mk (MK_VERSION): 20150303
1617
1618	* dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache
1619	  which is built via sub-make so we have a .meta file to tell if
1620	  it is out-of-date.
1621	  The dirdeps-cache contains the same dependency rules that we
1622	  normaly construct on the fly.
1623	  This adds a few seconds overhead when the cache is out of date,
1624	  but for a large target, the savings can be significant (10-20min).
1625
16262014-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1627
1628	* install-mk (MK_VERSION): 20141118
1629
1630	* meta.stage.mk: add stale_staged
1631
1632	* dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked
1633	  only useful under very rare conditions such as
1634	  FreeBSD's make universe.
1635
1636	* auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto
1637
16382014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1639
1640	* install-mk (MK_VERSION): 20141111
1641
1642	* mkopt.sh: use consistent semantics for _mk_opt and _mk_opts
1643
16442014-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1645
1646	* FILES: include mkopt.sh which allows handling options in shell
1647	  scripts in a manner compatible with options.mk
1648
16492014-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1650
1651	* meta.stage.mk: ensure only _STAGED_DIRS under objroot are used
1652	  for GENDIRDEPS_FILTER to avoid surprises.
1653
16542014-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1655
1656	* dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by
1657	  the time it is applied to __depdirs they have.
1658
1659	* dirdeps.mk fix filtering of _machines since M_dep_qual_fixes
1660	  expects patterns like *.${MACHINE}
1661
1662	* cython.mk (pyprefix?): use pyprefix to find python bits
1663	  since prefix might be something else (where we install our
1664	  stuff)
1665
16662014-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1667
1668	* install-mk (MK_VERSION): 20140911
1669
1670	* dirdeps.mk: add bootstrap target to simplify adding support for
1671	  new MACHINE.
1672
16732014-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1674
1675	* gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and
1676	  GENDIRDEPS_FILTER_VARS to make it easier to produce sharable
1677	  Makefile.depend files.
1678
16792014-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1680
1681	* install-mk (MK_VERSION): 20140828
1682
1683	* cython.mk: capture logic for building python extension modules
1684	  with Cython.
1685
16862014-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1687
1688	* meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant
1689
16902014-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1691
1692	* install-mk (MK_VERSION): 20140801
1693
1694	* dep.mk: use explicit MKDEP_MK rather than overload MKDEP to
1695	identify the autodep.mk variant.
1696
1697	* sys.dependfile.mk: delete .MAKE.DEPENDFILE if its
1698	initial value does not match .MAKE.DEPENDFILE_PREFIX
1699
1700	* meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS
1701
17022014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1703
1704	* install-mk (MK_VERSION): 20140522
1705
1706	* lib.mk: use CC to link shlib for linux too
1707	  patch from Brendan MacDonell
1708
17092014-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1710
1711	* meta.autodep.mk: add _reldir_{finish,failed} for gathering stats
1712	  if WITH_META_STATS is defined.
1713
17142014-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1715
1716	* dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS)
1717	  to supress dirdeps outside of .CURDIR.
1718
17192014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1720
1721	* Fix spelling errors - patch from Pedro Giffuni
1722
17232014-03-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1724
1725	* install-mk (MK_VERSION): 20140314
1726
1727	* dirdeps.mk (beforedirdeps): a handy hook
1728
1729	* dirdeps.mk (DIRDEP_MAKE): allow the actual command we run
1730	  to visit leaf dirs to be intercepted (eg. for distributed
1731	  build).
1732
1733	* dirdeps.mk (__depdirs): ensure // don't sneak in
1734
1735	* gendirdeps.mk (DIRDEPS): ensure // don't sneak in
1736
1737
17382014-02-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1739
1740	* rst2htm.mk (RST2PDF): add support for rst2pdf
1741
17422014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1743
1744	* install-mk (MK_VERSION): bump version
1745	* dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if
1746	  available.
1747
17482014-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1749
1750	* options.mk: avoid :U so this isn't bmake dependent
1751
17522014-02-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1753
1754	* options.mk: cleanup and simplify semanitcs
1755	  NO_* dominates all, if both WITH_* and WITHOUT_*
1756	  are defined then result is DOMINATE_* which defaults to "no".
1757	  Ie. WITHOUT_ normally wins.
1758
17592013-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1760
1761	* install-mk (MK_VERSION): bump version
1762	* meta2deps.py: convert to print function for python3 compat.
1763	  we also need to open files with mode 'r' rather than 'rb'
1764	  otherwise we get bytes instead of strings.
1765
17662013-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1767
1768	* install-mk (MK_VERSION): bump version
1769
1770	* dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE
1771	  apply the same filtering (M_dep_qual_fixes) when setting _machines
1772	  as _build_dirs.
1773	  Also fix the filtering of Makefile.depend files - for reporting
1774	  what we are looking for (M_dep_qual_fixes can get confused by
1775	  Makefile.depend)
1776	  Add some more debug info.
1777
17782013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1779
1780	* gendirdeps.mk (_objtops): fix typo also
1781	  while processing M2D_OBJROOTS to gather qualdir_list
1782	  qualify $ql with loop iterator to ensure correct results.
1783
17842013-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1785
1786	* install-mk (MK_VERSION): 20130801
1787	* libs.mk: update to match progs.mk
1788
17892013-07-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1790
1791	* install-mk (MK_VERSION): 20130726
1792	  some updates from Juniper and FreeBSD
1793	  o meta2deps.py: indicate file and line number when we hit parse
1794	    errors
1795	    also allow @file to provide huge list of .meta files.
1796	* meta2deps.py: add try_parse() to cleanup the above.
1797
17982013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1799
1800	* install-mk (MK_VERSION): 20130716
1801	* own.mk: add GPROG as an option
1802	* prog.mk: honor MK_GPROF==yes
1803
18042013-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1805
1806	* install-mk (MK_VERSION): 20130505
1807	* gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC
1808	  for when $MACHINE isn't enough for objdir distinction.
1809	  Bring meta2deps.sh closer to par with meta2deps.py.
1810
18112013-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1812
1813	* meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all'
1814	  also if the target 'beforeinstall' exists, make it depend on
1815	  .dirdep (incase it uses STAGE_INSTALL).
1816
18172013-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
1818
1819	* install-mk (MK_VERSION): 20130401 ;-)
1820	* meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as
1821	  wrapper around install(1).
1822	* options.mk (OPTION_PREFIX): Allow a prefix other than MK_
1823
18242013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1825
1826	* meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized.
1827	* install-mk (MK_VERSION): bump version
1828
18292013-03-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1830
1831	* install-mk (MK_VERSION): bump version
1832	* gendirdeps.mk: do not apply :tA to DPADD entries, since we lose
1833	  any trailing /., rather apply :tA only when needed.
1834	* gendirdeps.mk: better mimic meta2deps handling of .dirdep files.
1835	* meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance
1836	  consistently.
1837	* dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC.
1838
18392013-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1840
1841	* gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT
1842	  it is simpler to just not update when say building for "host"
1843	  (where we know we apply filters to DIRDEPS), and using a
1844	  non-machine qualified dependfile.
1845
18462013-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1847
1848	* dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR
1849	  and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC
1850	* gendirdeps.mk: ensure _objroot has trailing / if it needs it.
1851	* meta2deps.py: if machine is "host", then also trim
1852	  self.host_target from any OBJROOTS.
1853
1854
18552013-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1856
1857	* gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine
1858	  qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists
1859	  but _DEPENDFILE does not, compare the new _DEPENDFILE against
1860	  .MAKE.DEPENDFILE_DEFAULT and discard if the same.
1861
18622013-03-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1863
1864	* meta.stage.mk: use STAGE_TARGETS to control .ORDER
1865	  and hook to all: via staging:
1866
18672013-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
1868
1869	* sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT):
1870	  use a separate variable for the default .MAKE.DEPENDFILE value
1871	  so that it can be controlled independently of
1872	  .MAKE.DEPENDFILE_PREFERENCE
1873
1874	* meta.stage.mk: throw error if cp fails etc.
1875	  Stage*() return early if passed no args.
1876	  .ORDER stage_*
1877
18782013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1879
1880	* install-mk (MK_VERSION): bump version
1881	* gendirdeps.mk: handle multiple M2D_OBJROOTS better.
1882
18832013-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1884
1885	* install-mk (MK_VERSION): bump version to 20130210
1886	* import latest dirdeps.mk, gendirdeps.mk and meta2deps.py
1887	  from Juniper.
1888	  o dirdeps.mk now fully supports TARGET_SPEC consisting of more
1889	    than just MACHINE.
1890	  o no longer use DEP_MACHINE from Makefile.depend* so remove it.
1891
18922013-01-23  Simon J. Gerraty  <sjg@bad.crufty.net>
1893
1894	* install-mk (MK_VERSION): bump version to 20130123
1895	* meta.stage.mk: add stage_links (hard links).
1896	  if doing hard links, we add dest to link as well.
1897	  Default the stage dir for [sym]links to STAGE_OBJTOP since
1898	  these are typically specified as absolute paths.
1899	  Add -m "mode" flag to StageFiles and StageAs.
1900
19012012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1902
1903	* install-mk (MK_VERSION): bump version to 20121111
1904	* autoconf.mk: avoid meta mode seeing changed commands for config.status
1905	* meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps
1906	  in case we were found via .../mk
1907	* sys.clean-env.mk: move it from examples, we and others use it
1908	  "as is".
1909	* FILES: add srctop.mk and options.mk
1910	* own.mk: convert to using options.mk
1911	  which is modeled after FreeBSD's handling of MK_*
1912	  but more flexible.
1913	  This allows MK_* for boolean knobs to not be confused
1914	  with MK* which can be commands.
1915
1916	* examples/sys.clean-env.mk: add WITH[OUT]_ to
1917	  MAKE_ENV_SAVE_PREFIX_LIST.
1918	  Mention that HOME=/var/empty might be a good idea.
1919
19202012-11-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1921
1922	* sys.dependfile.mk: if not depend file exists, $MACHINE
1923	  specific ones are supported but not the default,
1924	  check if any exist and follow suit.
1925
19262012-11-06  Simon J. Gerraty  <sjg@bad.crufty.net>
1927
1928	* install-mk (MK_VERSION): bump version to 20121106
1929
19302012-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
1931
1932	* import latest dirdeps.mk and meta2deps.py from Juniper.
1933	* progs.mk: add MAN and CXXFLAGS to PROG_VARS
1934	  also add PROGS_TARGETS and pass on PROG_CXX if it seems
1935	  appropriate.
1936
19372012-11-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1938
1939	* meta.stage.mk: update CLEANFILES
1940	  remove redundant cp of .dirdep from STAGE_AS_SCRIPT.
1941	* progs.mk: Add LDADD to PROG_VARS
1942
19432012-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1944
1945	* meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in
1946	  _STAGED_DIRS so that these can be turned into filters for
1947	  GENDIRDEPS_FILTER.
1948
19492012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1950
1951	* install-mk (MK_VERSION): bump version to 20121010
1952	* meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing
1953	target.dirdep matches .dirdep
1954
19552012-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1956
1957	* install-mk (MK_VERSION): bump version to 20120808
1958	* import latest meta2deps.py from Juniper.
1959
19602012-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1961
1962	* install-mk (MK_VERSION): bump version to 20120711
1963	* dep.mk: add explicit dependencies on SRCS after applying
1964	  SRCS_DEP_FILTER
1965	* meta.autodep.mk: add explicit dependencies on SRCS after
1966	  applying SRCS_DEP_FILTER
1967	* meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed.
1968
19692012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1970
1971	* install-mk (MK_VERSION): bump version to 20120626
1972	* meta.sys.mk: ignore PYTHON if it does not exist
1973	  compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable.
1974	* meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any
1975	  entries ending in .${MACHINE} to decide if qualified _dirdep is
1976	  needed.
1977	* gendirdeps.mk: only produce unqualified deps if no
1978	  .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE}
1979	* meta.subdir.mk: apply SUBDIRDEPS_FILTER
1980
19812012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1982
1983	* install-mk (MK_VERSION): bump version to 20120420
1984	* add sys.dependfile.mk so we can experiment with
1985	  .MAKE.DEPENDFILE_PREFERENCE
1986	* meta.autodep.mk: _DEPENDFILE is precious!
1987
19882012-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1989
1990	* install-mk (MK_VERSION): bump version to 20120315
1991	* install-new.mk: avoid being interrupted
1992
19932012-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1994
1995	* man.mk: MAN might have multiple values so be careful with exists().
1996
19972012-01-19  Simon J. Gerraty  <sjg@bad.crufty.net>
1998
1999	* install-mk (MK_VERSION): bump version to 20120112
2000	* fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled
2001	  as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
2002
20032011-12-03  Simon J. Gerraty  <sjg@bad.crufty.net>
2004
2005	* install-mk (MK_VERSION):  bump version to 20111201
2006	* import dirdeps.mk from Juniper sjg@
2007	  o more consistent handling of DEP_MACHINE, especially when
2008	    dealing with an odd Makefile.depend, when normally using
2009	    Makefile.depend.${MACHINE}
2010
20112011-11-22  Simon J. Gerraty  <sjg@bad.crufty.net>
2012
2013	* install-mk (MK_VERSION): bump version to 20111122
2014	* meta.autodep.mk: add some debug output, be more crisp about
2015	  updating.  Use ${.ALLTARGETS:M*.o} as a clue for .depend
2016
20172011-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
2018
2019	* install-mk (MK_VERSION): bump version to 20111111
2020	  it's too cool to miss
2021	* import meta* updates from Juniper sjg@
2022	  o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are
2023	    normally using Makefile.depend.${MACHINE}), handy for
2024	    read-only manually maintained dependencies.
2025	  o meta2deps.py add a clear 'ERROR:' token if an exception is raised.
2026	  o gendirdeps.mk if ERROR: from meta2deps.py do not update
2027	    anything.
2028
20292011-10-30  Simon J. Gerraty  <sjg@bad.crufty.net>
2030
2031	* install-new.mk separate the cmp and copy logic to its own function.
2032
20332011-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
2034
2035	* install-mk (MK_VERSION): bump version to 20111028
2036	* sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto
2037	* subdir.mk: ensure _SUBDIRUSE is provided
2038	* meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk
2039	* meta.subdir.mk: always allow for Makefile.depend
2040
20412011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2042
2043	* install-mk (MK_VERSION): bump version to 20111010
2044	  o minor tweak to *dirdeps.mk from Juniper sjg@
2045
20462011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
2047
2048	* install-mk (MK_VERSION): bump version to 20111001
2049	  o add meta2deps.py from Juniper sjg@
2050	  o tweak gendirdeps.mk to work with meta2deps.py when not
2051	    cross-building
2052	* autoconf.mk: add autoconf-input as a hook for regenerating
2053	  AUTOCONF_INPUTS (configure).
2054
20552011-08-24  Simon J. Gerraty  <sjg@bad.crufty.net>
2056
2057	* meta.autodep.mk: if we do not have OBJS, .depend isn't a useful
2058	  trigger for updating Makefile.depend*
2059
20602011-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
2061
2062	* install-mk (MK_VERSION): bump version to 20110808
2063	* obj.mk: minor cleanup
2064	* auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too.
2065
20662011-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
2067
2068	* auto.obj.mk (.OBJDIR): throw an error if we cannot use the
2069	  specified dir.
2070
20712011-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
2072
2073	* meta.autodep.mk: if XMAKE_META_FILE is set
2074	  the makefile uses a foreign make, and so dependencies
2075	  can only be gathered from a clean tree build.
2076
20772011-06-24  Simon J. Gerraty  <sjg@bad.crufty.net>
2078
2079	* install-mk (MK_VERSION): bump version to 20110622
2080	* meta.autodep.mk: improve bootstraping
2081
20822011-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2083
2084	* yacc.mk: handle the corner case of .c being removed
2085	  while .h remains.
2086
20872011-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
2088
2089	* yacc.mk: do .y.h and .y.c separately
2090
20912011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2092
2093	* install-mk (MK_VERSION): bump version to 20110606
2094	* don't store SRC_DIRDEPS in Makefile.depend* by default
2095	  not everyone needs it.
2096
20972011-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2098
2099	* install-mk (MK_VERSION): bump version to 20110505
2100	  first release including meta mode makefiles
2101
21022011-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
2103
2104	* meta.stage.mk: add STAGE_AS_SETS and stage_as
2105	  for things that need to be staged with different names.
2106
21072011-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
2108
2109	* meta.stage.mk: add notion of STAGE_SETS
2110	  so a makefile can stage to multiple dirs
2111
21122011-04-03  Simon J. Gerraty  <sjg@bad.crufty.net>
2113
2114	* rst2htm.mk: convert rst to s5 (slides) or plain html depending
2115	  on target name.
2116
21172011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
2118
2119	* install-mk (MK_VERSION): bump version to 20110330
2120
21212011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
2122
2123	* sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0
2124	  can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest.
2125	* sys.mk: re-define M_whence in terms of M_type.
2126	  M_type is useful for checking if something is a builtin.
2127
21282011-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
2129
2130	* meta.stage.mk: add stage_symlinks and leverage StageLinks for
2131	  stage_libs
2132
21332011-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2134
2135	* dirdeps.mk: correct value for _depdir_files depends on
2136	  .MAKE.DEPENDFILE
2137	  Add our copyright - just to make it clear we have frobbed this
2138	  quite a bit.
2139	  DEP_MACHINE needs to be set to MACHINE each time, if using only
2140	  Makefile.depend (cf. Makefile.depend.${MACHINE})
2141
2142	* meta.stage.mk: meta mode version of staging
2143
2144	* init.mk, final.mk: include local.*.mk to simplify customization
2145
21462011-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
2147
2148	* auto.obj.mk: just because we are doing mk destroy, we should
2149	  still set .OBJDIR correctly if it exists.
2150
2151	* install-mk (mksrc): do not exclude meta.sys.mk
2152
21532011-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
2154
2155	* host-target.mk: set/export _HOST_ARCH etc separately,
2156	  catch junk resulting from uname -p, so we can find sys/Linux.mk
2157	  correctly.
2158
21592011-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
2160
2161	* meta.sys.mk: throw an error if /dev/filemon is missing and we
2162	  expected to be updating Makefile.depend*
2163
21642011-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
2165
2166	* install-mk (MK_VERSION): bump version to 20110214
2167	* meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES
2168
21692010-09-25  Simon J. Gerraty  <sjg@bad.crufty.net>
2170
2171	* meta.sys.mk: not valid for older bmake
2172
21732010-09-24  Simon J. Gerraty  <sjg@bad.crufty.net>
2174
2175	* install-mk (MK_VERSION): bump version to 20100919
2176	include dirdeps.mk et al from Juniper Networks,
2177	for meta mode - requires filemon(9).
2178	* sys.mk, subdir.mk: Add hooks for meta mode.
2179	we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk
2180	to make turning it on/off simple.
2181
21822010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
2183
2184	* install-mk (MK_VERSION): bump version to 20100616
2185	* fix typo in sys.mk
2186
21872010-06-12  Simon J. Gerraty  <sjg@bad.crufty.net>
2188
2189	* install-mk (MK_VERSION): bump version to 20100612
2190	* lib.mk: remove duplicate addition to SOBJS
2191
21922010-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
2193
2194	* sys.mk: Add a means of selectively turning on debug flags.
2195	  Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg"
2196	  will act as if we did make -dv if .CURDIR ends in lib/sjg
2197	  DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at
2198	  the start of sys.mk rather than the end.
2199	  This only makes sense for leaf dirs, so we check that
2200	  .MAKE.LEVEL > 0
2201
22022010-06-09  Simon J. Gerraty  <sjg@bad.crufty.net>
2203
2204	* install-mk (MK_VERSION): bump version to 20100608
2205	* sys.mk: include sys.env.mk later so it can use M_ListToSkip et al.
2206	* examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606
2207	  also make it easier for folk to tweak
2208
22092010-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
2210
2211	* install-mk (MK_VERSION): bump version to 20100606
2212	  do not install examples/*
2213	* FILES: add examples/sys.clean-env.mk
2214	* examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR
2215	  this requires bmake-20100606 or later to work.
2216
22172010-05-13  Simon J. Gerraty  <sjg@bad.crufty.net>
2218
2219	* sys.mk (M_tA): better simulate the result of :tA if not available.
2220
22212010-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2222
2223	* sys.mk: canonicalize MAKE_VERSION
2224	  old versions reported bmake-<src-date> build-<build-date>
2225	  whereas we only care about <src-date>
2226
22272010-04-25  Simon J. Gerraty  <sjg@bad.crufty.net>
2228
2229	* install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored
2230	* lib.mk: we only build the shared lib if SHLIB_FULLVERSION
2231	  is !empty
2232
22332010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
2234
2235	* dpadd.mk: use LDADD_* if defined.
2236
22372010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
2238
2239	* install-mk (MK_VERSION): bump version to 20100420
2240	* sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy
2241	* autoconf.mk allow AUTO_AUTOCONF
2242
22432010-04-19  Simon J. Gerraty  <sjg@bad.crufty.net>
2244
2245	* obj.mk: add objwarn to keep freebsd makefiles happy
2246	* auto.obj.mk: ensure Mkdirs is available.
2247	* FILES: add auto.dep.mk - a simpler version of autodep.mk
2248	* dep.mk: auto.dep.mk does not do 'make depend' so ignore it if
2249	  asked to do that.
2250	  fix/simplify the tests for when to run mkdep.
2251	* auto.dep.mk: add some explanation of how/what we do.
2252	* autodep.mk: skip the .OPTIONAL frobbing of .depend
2253	  bmake's FROM_DEPEND flag makes it redundant.
2254
22552010-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
2256
2257	* install-mk (MK_VERSION): bump version to 20100404
2258	* subdir.mk: protect from multiple inclusion using _SUBDIRUSE.
2259	* obj.mk: protect from multiple inclusion even as bsd.obj.mk
2260	Also create a target _SUBDIRUSE so that we can  be used without
2261	subdir.mk
2262
22632010-04-12  Simon J. Gerraty  <sjg@bad.crufty.net>
2264
2265	* dep.mk: use <> when .including so can override.
2266
22672010-01-11  Simon J. Gerraty  <sjg@bad.crufty.net>
2268
2269	* lib.mk (SHLIB_LINKS): ensure a string comparison.
2270
22712010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
2272
2273	* install-mk (MK_VERSION): bump version to 20100102
2274	* own.mk: ensure PRINTOBJDIR works
2275	* autoconf.mk: pass on CONFIGURE_ARGS
2276	* init.mk: handle COPTS.${.IMPSRC:T} etc.
2277	* lib.mk: allow sys.mk to control SHLIB_FULLVERSION
2278	  fix handling of symlinks for darwin
2279	* libnames.mk: add DSHLIBEXT for libs which only exist as shared.
2280	* man.mk: suppress chown when not root.
2281	* rst2htm.mk: allow srcs from multiple locations.
2282	* sys.mk: M_whence, stop after 1st line of output.
2283	* sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT
2284	* sys/SunOS.mk: we need to export PATH
2285
22862009-12-23  Simon J. Gerraty  <sjg@void.crufty.net>
2287
2288	* install-mk (MK_VERSION): bump version
2289	  include rst2htm.mk
2290
22912009-12-17  Simon J. Gerraty  <sjg@void.crufty.net>
2292
2293	* sys.mk,libnames.mk add .-include <local.*>
2294	  this allows local customization without the need to edit the
2295	  distributed files.
2296
22972009-12-14  Simon J. Gerraty  <sjg@void.crufty.net>
2298
2299	* dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up
2300	  older versions already installed.
2301
23022009-12-13  Simon J. Gerraty  <sjg@void.crufty.net>
2303
2304	* stage.mk (.stage-install): generalize lib.mk's .libinstall
2305	* rules.mk rules for generic Makefile.
2306	* inc.mk install for includes.
2307
23082009-12-11  Simon J. Gerraty  <sjg@void.crufty.net>
2309
2310	* sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check
2311	  this, so provide it if using native make.
2312
23132009-12-10  Simon J. Gerraty  <sjg@void.crufty.net>
2314
2315	* FILES: move all the platform *.sys.mk files to sys/*.mk
2316	* Rename Generic.sys.mk to sys.mk - we always want it.
2317
23182009-11-17  Simon J. Gerraty  <sjg@void.crufty.net>
2319
2320	* install-mk (MK_VERSION): bump version
2321	* host-target.mk: only export the expensive stuff
2322	* Generic.sys.mk (sys_mk): for SunOS we need to look for
2323	  ${HOST_OS}.${HOST_OSMAJOR} too!
2324
23252009-11-07  Simon J. Gerraty  <sjg@void.crufty.net>
2326
2327	* install-mk (MK_VERSION): bump version
2328	* lib.mk: if sys.mk doesn't give us an lorder, don't use it.
2329	  based on patch from Greg Olszewski.
2330	* Generic.sys.mk: if we have nothing to work with
2331	set LORDER etc only if we can find it.
2332
23332009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
2334
2335	* install-mk (MK_VERSION): bump version
2336	* man.mk: cleanman: remove CLEANMAN if defined.
2337
23382009-09-04  Simon J. Gerraty  <sjg@void.crufty.net>
2339
2340	* SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk
2341
23422009-07-17  Simon J. Gerraty  <sjg@void.crufty.net>
2343
2344	* install-mk (MK_VERSION): bump version
2345	include auto.obj.mk
2346
2347
23482009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
2349
2350	* prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail.
2351
23522008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
2353
2354	* install-mk (MK_VERSION): bump version
2355	man.mk: ensure we generate *.cat1 etc in .
2356
23572008-07-16  Simon J. Gerraty  <sjg@void.crufty.net>
2358
2359	* install-mk (MK_VERSION): bump version
2360	add prlist.mk
2361
23622007-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
2363
2364	* Generic.sys.mk: Allow os specific sys.mk to be in a
2365	subdir of ${.PARSEDIR}
2366
23672007-11-22  Simon J. Gerraty  <sjg@void.crufty.net>
2368
2369	* install-mk (MK_VERSION): bump version
2370	* general cleanup
2371	* dpadd.mk introduce DPMAGIC_LIBS_*
2372
23732007-04-30  Simon J. Gerraty  <sjg@void.crufty.net>
2374
2375	* install-mk (MK_VERSION): bump version
2376
2377	* libs.mk, progs.mk, autodep.mk: allow for per lib/prog
2378	depend files and ensure clean is called for each lib/prog.
2379
23802007-03-27  Simon J. Gerraty  <sjg@void.crufty.net>
2381
2382	* autodep.mk (.depend): delete lines that do not start with
2383	space and do not contain ':'
2384
23852007-02-16  Simon J. Gerraty  <sjg@void.crufty.net>
2386
2387	* autodep.mk (.depend): gcc may wrap lines if pathnames are long
2388	so make sure the transform for .OPTIONAL copes.
2389
23902007-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
2391
2392	* install-mk (MK_VERSION): bump version
2393
2394	* own.mk: make sure RM and LN are defined.
2395
2396	* obj.mk: fix a typo, and objlink target.
2397
23982006-12-30  Simon J. Gerraty  <sjg@void.crufty.net>
2399
2400	* install-mk (MK_VERSION): bump version
2401	* added libs.mk - analogous to progs.mk
2402	  make both of them always inlcude {lib,prog}.mk
2403
24042006-12-28  Simon J. Gerraty  <sjg@void.crufty.net>
2405
2406	* progs.mk: add a means of building multiple apps in one dir.
2407
24082006-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
2409
2410	* install-mk (MK_VERSION): bump version to 20061126
2411
2412	* warnings.mk: detect invalid WARNINGS_SET
2413
2414	* warnings.mk: use ${.TARGET:T:R}.o when looking for target
2415	specific warnings.
2416
2417	* For .cc sources, turn off warnings that g++ vomits on.
2418
24192006-11-08  Simon J. Gerraty  <sjg@void.crufty.net>
2420
2421	* own.mk: if __initialized__ target doesn't exist and we are
2422	FreeBSD we got here directly from sys.mk
2423
24242006-11-06  Simon J. Gerraty  <sjg@void.crufty.net>
2425
2426	* install-mk (MK_VERSION): bump version to 20061106
2427	add scripts.mk
2428
24292006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
2430
2431	* install-mk (MK_VERSION): bump version to 20060318
2432
2433	* autodep.mk: avoid := when modifying OBJS into __dependsrcs
2434
24352006-03-02  Simon J. Gerraty  <sjg@void.crufty.net>
2436
2437	* install-mk (MK_VERSION): bump version to 20060302
2438	* autodep.mk: use -MF et al to help gcc+ccache DTRT.
2439
24402006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
2441
2442	* install-mk (MK_VERSION): bump version to 20060301
2443	* autodep.mk (.depend):
2444	if MAKE_VERSION is newer than  20050530 we can make .END depend on
2445	.depend and make .depend depend on __depsrcs that exist.
2446	* dpadd.mk: add SRC_PATHADD
2447
24482005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
2449
2450	* install-mk (MK_VERSION): bump version to 20051104
2451	* prog.mk: remove all the LIBC?= junk, use
2452	.-include libnames.mk instead (none by default).
2453	also if USE_DPADD_MK is set, include that.
2454
24552005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
2456
2457	* install-mk (MK_VERSION): bump version to 20051001
2458	Add UnixWare.sys.mk from Klaus Heinz.
2459
24602005-04-05  Simon J. Gerraty  <sjg@void.crufty.net>
2461
2462	* install-mk: always install *.sys.mk and if need be symlink one
2463	to sys.mk
2464
24652005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
2466
2467	* subdir.mk, own.mk: use .MAKE rather than MAKE
2468
24692004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
2470
2471	* own.mk: don't use NetBSD's _SRC_TOP_ it can
2472	cause confusion.  Also don't take just 'mk' as a
2473	srctop indicator.
2474
24752004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
2476
2477	* warnings.mk: overhauled, now very powerful.
2478
24792004-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
2480
2481	* Generic.sys.mk: need to use ${.PARSEDIR} with exists().
2482
24832004-02-01  Simon J. Gerraty  <sjg@void.crufty.net>
2484
2485	* install-mk (MK_VERSION): bump version to 20040201
2486	* extract HOST_TARGET stuff to host-target.mk so own.mk and
2487	Generic.sys.mk can share.
2488	* fix typo in autodep.mk _SUBDIRUSE not _SUBDIR.
2489
24902003-09-30  Simon J. Gerraty  <sjg@void.crufty.net>
2491
2492	* install-mk (MK_VERSION): 20030930
2493	* rename generic.sys.mk to Generic.sys.mk
2494	so that it does not get installed (unless being used as sys.mk)
2495	* set OS and ROOT_GROUP for those that we know the value.
2496	for others (eg. Generic.sys.mk) wrap the != in an .ifndef so
2497	we don't do it again for each sub-make.
2498
24992003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
2500
2501	* install-mk (MK_VERSION): 20030928
2502	Add some extra *.sys.mk from bootstrap-pkgsrc
2503	some of these likely still need work.
2504	Make everything default to root:wheel ownership,
2505	sys.mk can set ROOT_GROUP accordingly.
2506
25072003-08-07  Simon J. Gerraty  <sjg@void.crufty.net>
2508
2509	* install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR
2510	not the portable ones.
2511
25122003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
2513
2514	* install-mk: add ability to use cp -f when updating
2515	destination .mk files.  Also now possible to play games with
2516	FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk
2517	into dest - not recommended unless you seriously want to.
2518
25192003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
2520
2521	* own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc
2522	for semi-compatability with NetBSD.
2523
25242003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
2525
2526	* install-mk: add a version indicator
2527
25282003-07-22  Simon J. Gerraty  <sjg@void.crufty.net>
2529
2530	* prog.mk: don't try and use ${LIBCRT0} if its /dev/null
2531
2532	* install-mk: Allow FORCE_SYS_MK to come from env
2533
2534
2535
2536