xref: /freebsd/contrib/bmake/mk/ChangeLog (revision 62cfcf62f627e5093fb37026a6d8c98e4d2ef04c)
12020-06-06  Simon J Gerraty  <sjg@beast.crufty.net>
2
3	* install-mk (MK_VERSION): 20200606
4
5	* dirdeps-targets.mk: allow for filtering of .TARGETS
6
7	* meta2deps.py: fix bug in processing 'L'ink and 'M'ove
8	entries - and we don't care about 'W'rite entries.
9	Also ignore absolute paths that do not exist.
10
112020-05-25  Simon J Gerraty  <sjg@beast.crufty.net>
12
13	* install-mk (MK_VERSION): 20200525
14
15	* init.mk: expand and simplify handling of qualified vars
16	like CPPFLAGS.${.TARGET:T}
17
182020-05-15  Simon J Gerraty  <sjg@beast.crufty.net>
19
20	* install-mk (MK_VERSION): 20200515
21
22	* dirdeps.mk: set _debug_* earlier and allow passing -d*
23	flags to submake when building DIRDEPS_CACHE
24
252020-05-09  Simon J Gerraty  <sjg@beast.crufty.net>
26
27	* whats.mk: more easily extensible
28
292020-05-02  Simon J Gerraty  <sjg@beast.crufty.net>
30
31	* whats.mk: greatly simplify by adding what.c to SRCS
32
332020-05-01  Simon J Gerraty  <sjg@beast.crufty.net>
34
35	* whats.mk: for libs take care how we add to *OBJS
36
37	* lib.mk: : works better with whats.mk
38
392020-04-25  Simon J Gerraty  <sjg@beast.crufty.net>
40
41	* install-mk (MK_VERSION): 20200420
42
43	* meta.stage.mk: it is not a STAGE_CONFLICT if some-target.dirdep
44	contains the same ${RELDIR} and a prefix match for our ${TARGET_SPEC}
45
462020-04-16  Simon J Gerraty  <sjg@beast.crufty.net>
47
48	* install-mk (MK_VERSION): 20200416
49
50	* sys/*.mk: set MAKE_SHELL rather than SHELL so as not to
51	  interfere with user env.
52
53	* sys.mk: default MAKE_SHELL to sh and SHELL to MAKE_SHELL
54
55	* autodep.mk: use MAKE_SHELL.
56
572019-11-21  Simon J Gerraty  <sjg@beast.crufty.net>
58
59	* gendirdeps.mk: clear .SUFFIXES to avoid a lot of
60	  wasted effort, and unexport _meta_files when no longer needed as
61	  it consumes space we need for command line.
62
632019-11-11  Simon J Gerraty  <sjg@beast.crufty.net>
64
65	* dirdeps.mk _DIRDEP_USE: use DIRDEP_DIR and add
66	  DIRDEP_USE_PRELUDE at start - facilitates job distribution
67
682019-10-04  Simon J Gerraty  <sjg@beast.crufty.net>
69
70	* dirdeps-targets.mk: Use TARGET_SPEC_LAST_LIST
71	defaults to ${${TARGET_SPEC_VARS:[-1]}_LIST} to match valid
72	TARGET_SPEC qualified depend files.
73
742019-10-02  Simon J Gerraty  <sjg@beast.crufty.net>
75
76	* dirdeps-targets.mk: encapsulate logic for finding top-level
77	  targets to set initial DIRDEPS for DIRDEPS_BUILD
78
792019-09-27  Simon J Gerraty  <sjg@beast.crufty.net>
80
81	* install-mk (MK_VERSION): 20190911
82
83	* compiler.mk: set COMPILER_TYPE
84
852019-07-17  Simon J Gerraty  <sjg@beast.crufty.net>
86
87	* install-mk (MK_VERSION): 20190704
88
89	* sys/Darwin.mk: support for Objective-C and clang
90
912019-05-30  Simon J Gerraty  <sjg@beast.crufty.net>
92
93	* dirdeps.mk: avoid insanely long command line when generating cache
94
952019-05-23  Simon J Gerraty  <sjg@beast.crufty.net>
96
97	* install-mk (MK_VERSION): 20190505
98
99	* whats.mk: handle corner case SHLIB defined but not LIB
100
1012018-09-19  Simon J Gerraty  <sjg@beast.crufty.net>
102
103	* install-mk (MK_VERSION): 20180919
104
105	* dirdeps-options.mk: .undef cannot handle var that expands to
106	  more than one var.
107
1082018-07-08  Simon J Gerraty  <sjg@beast.crufty.net>
109
110	* meta.stage.mk: allow wildcards in STAGE_FILES.* etc.
111
1122018-06-01  Simon J Gerraty  <sjg@beast.crufty.net>
113
114	* meta.autodep.mk: export META_FILES to avoid command line limit
115	* gendirdeps.mk: if we have lots of .meta files put them in
116	  an @list
117
1182018-05-28  Simon J Gerraty  <sjg@beast.crufty.net>
119
120	* dirdeps-options.mk: use local.dirdeps-options.mk
121	  not local.dirdeps-option.mk
122
1232018-04-20  Simon J Gerraty  <sjg@beast.crufty.net>
124
125	* install-mk (MK_VERSION): 20180420
126	* dirdeps.mk: include local.dirdeps-build.mk when .MAKE.LEVEL > 0
127	  ie. we are building something.
128
1292018-04-14  Simon J Gerraty  <sjg@beast.crufty.net>
130
131	* FILES: add dirdeps-options.mk to deal with optional DIRDEPS.
132
1332018-04-05  Simon J Gerraty  <sjg@beast.crufty.net>
134
135	* install-mk (MK_VERSION): 20180405
136
137	* ldorder.mk: describe how to use LDORDER_EXTERN_BARRIER
138	  if needed.
139
1402018-01-18  Simon J Gerraty  <sjg@beast.crufty.net>
141
142	* install-mk (MK_VERSION): 20180118
143
144	* ldorder.mk: let make compute correct link order
145
1462017-12-12  Simon J Gerraty  <sjg@beast.crufty.net>
147
148	* install-mk (MK_VERSION): 20171212
149
150	* gendirdeps.mk: guard against bogus entries in GENDIRDEPS_FILTER
151
1522017-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
153
154	* install-mk (MK_VERSION): 20171111
155
156	* lib.mk: ensure META_NOECHO is set
157
1582017-10-25  Simon J. Gerraty  <sjg@bad.crufty.net>
159
160	* Allow for host32 on rare occasions.
161
1622017-10-18  Simon J. Gerraty  <sjg@bad.crufty.net>
163
164	* install-mk (MK_VERSION): 20171018
165
166	* whats.mk: include what_thing in what_uuid to avoid problem
167	  when building multiple apps in the same directory.
168
1692017-08-12  Simon J. Gerraty  <sjg@bad.crufty.net>
170
171	* install-mk (MK_VERSION): 20170812
172
173	* autoconf.mk: Use CONFIGURE_DEPS so Makefile can
174	  add dependencies for config.recheck and config.gen
175
1762017-06-30  Simon J. Gerraty  <sjg@bad.crufty.net>
177
178	* install-mk (MK_VERSION): 20170630
179
180	* meta.stage.mk: avoid triggering stage_* targets with nothing to do.
181
1822017-05-23  Simon J. Gerraty  <sjg@bad.crufty.net>
183
184	* meta2deps.py: take special care of '..'
185
1862017-05-15  Simon J. Gerraty  <sjg@bad.crufty.net>
187
188	* install-mk (MK_VERSION): 20170515
189
190	* dirdeps.mk (DEP_EXPORT_VARS): on rare occasions it is
191	useful/necessary for a Makefile.depend file to export some knobs.
192	This is complicated when we are doing DIRDEPS_CACHE, so we will
193	handle export of any variables listed in DEP_EXPORT_VARS.
194
1952017-05-08  Simon J. Gerraty  <sjg@bad.crufty.net>
196
197	* install-mk (MK_VERSION): 20170505
198
199	* meta2deps.py: fix botched indenation.
200
2012017-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
202
203	* sys/*.mk: Remove setting of MAKE it is unnecessary and
204	  in many cases wrong (basname rather than full path)
205
206	* scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk
207
208	* init.mk: define realbuild to simplify logic in {lib,prog}.mk etc
209
2102017-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
211
212	* install-mk (MK_VERSION): 20170501
213
214	* doc.mk: fix typo in DOC_INSTALL_OWN
215
216	* inc.mk: handle INCGROUPS similar to freebsd
217
218	* files.mk: add something for files too
219
220	* add staging logic to lib.mk prog.mk etc.
221
2222017-04-24  Simon J. Gerraty  <sjg@bad.crufty.net>
223
224	* install-mk (MK_VERSION): 20170424
225
226	* dirdeps.mk: set NO_DIRDEPS when bootstrapping.
227	  also target of bootstrap-this when sed is needed should be ${_want:T}
228
2292017-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
230
231	* install-mk (MK_VERSION): 20170418
232
233	* auto.obj.mk: if using MAKEOBJDIRPREFIX check if it is a
234	  prefix match for .CURDIR - in which case .CURDIR *is* __objdir.
235
2362017-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
237
238	* install-mk (MK_VERSION): 20170401
239
240	* meta2deps.py: add is_src so we can check if obj dependency
241	  is also a src dependency.
242
2432017-03-26  Simon J. Gerraty  <sjg@bad.crufty.net>
244
245	* install-mk (MK_VERSION): 20170326
246
247	* meta.stage.mk: do nothing if NO_STAGING is defined.
248
2492017-03-24  Simon J. Gerraty  <sjg@bad.crufty.net>
250
251	* auto.obj.mk: handle the case of __objdir=obj or obj.${MACHINE} etc.
252
2532017-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
254
255	* mkopt.sh: treat WITH_*=NO like no; ie. WITHOUT_*
256
2572017-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
258
259	* install-mk (MK_VERSION): 20170301
260
261	* dirdeps.mk (_build_all_dirs): update this outside test for empty
262	  DIRDEPS.
263
264	* meta.stage.mk: allow multiple inclusion to the extent it makes
265	  sense.
266
2672017-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
268
269	* prog.mk (install_links): depends on realinstall
270
2712017-02-12  Simon J. Gerraty  <sjg@bad.crufty.net>
272
273	* install-mk (MK_VERSION): 20170212
274
275	* dpadd.mk: avoid applying :T:R twice to DPLIBS entries
276
2772017-01-30  Simon J. Gerraty  <sjg@bad.crufty.net>
278
279	* install-mk (MK_VERSION): 20170130
280
281	* dirdeps.mk: use :range if we can.
282
283	* sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130
284
285	* meta2deps.py: clean paths without using realpath() where possible.
286	  fix sort_unique.
287
2882016-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
289
290	* install-mk (MK_VERSION): 20161212
291
292	* meta2deps.py: set pid_cwd[pid] when we process 'C'hdir,
293	rather than when we detect pid change.
294
2952016-12-07  Simon J. Gerraty  <sjg@bad.crufty.net>
296
297	* install-mk (MK_VERSION): 20161207
298
299	* meta.stage.mk: add stage_as_and_symlink for staging packages.
300	  We build foo.tgz stage_as foo-${VERSION}.tgz but want to be able
301	  to use foo.tgz to reference the latest staged version - so we
302	  make foo.tgz a symlink to it.
303	  Using a target to do both operations ensures we stay in sync.
304
3052016-11-26  Simon J. Gerraty  <sjg@bad.crufty.net>
306
307	* install-mk (MK_VERSION): 20161126
308
309	* dirdeps.mk: set DIRDEPS_CACHE before we include local.dirdeps.mk
310	  so it can add dependencies.
311
3122016-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
313
314	* dirdeps.mk: set DEP_* before we expand .MAKE.DEPENDFILE_PREFERENCE
315	  do that they can influence the result correctly.
316
317	* dirdeps.mk (${DIRDEPS_CACHE}): make sure we pass on TARGET_SPEC
318
319	* dirdeps.mk: Add ONLY_TARGET_SPEC_LIST and NOT_TARGET_SPEC_LIST
320	  similar to ONLY_MACHINE_LIST and NOT_MACHINE_LIST
321
3222016-10-05  Simon J. Gerraty  <sjg@bad.crufty.net>
323
324	* dirdeps.mk: remove dependence on jot (normal situations anyway).
325	  Before we read another Makefile.depend* set DEP_* vars from
326	  _DEP_TARGET_SPEC in case it uses any of them with :=
327	  When bootstrapping, trim any ,* from extention of chosen _src
328	  Makefile.depend* to get the machine value we subst for.
329
3302016-09-30  Simon J. Gerraty  <sjg@bad.crufty.net>
331
332	* dirdeps.mk: use TARGET_SPEC_VARS to qualify components added to
333	  DEP_SKIP_DIR and DEP_DIRDEPS_FILTER
334
335	* sys.mk: extract some bits to sys.{debug,vars}.mk
336	  for easier re-use by others.
337
3382016-09-23  Simon Gerraty  <sjg@sjg-mba13>
339
340	* lib.mk: Use ${PICO} for extension for PIC objects.
341	  default to .pico (like NetBSD) safe on case insensitive filesystem.
342
3432016-08-19  Simon J. Gerraty  <sjg@bad.crufty.net>
344
345	* meta.sys.mk (META_COOKIE_TOUCH): use ${.OBJDIR}/${.TARGET:T} as default
346
3472016-08-15  Simon J. Gerraty  <sjg@bad.crufty.net>
348
349	* install-mk (MK_VERSION): 20160815
350
351	* dirdeps.mk (.MAKE.META.IGNORE_FILTER): set filter to only
352	consider Makefile.depend* when checking if DIRDEPS_CACHE is up-to-date.
353
3542016-08-13  Simon J. Gerraty  <sjg@bad.crufty.net>
355
356	* meta.sys.mk (.MAKE.META.IGNORE_PATHS):
357	  in meta mode we can ignore the mtime of makefiles
358
3592016-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
360
361	* install-mk (MK_VERSION): 20160802
362
363	* lib.mk (libinstall): depends on beforinstall
364
365	* prog.mk (proginstall): depends on beforinstall
366	  patch from Lauri Tirkkonen
367
368	* dirdeps.mk (bootstrap): When bootstrapping; creat
369	.MAKE.DEPENDFILE_DEFAULT and allow additional filtering via
370	.MAKE.DEPENDFILE_BOOTSTRAP_SED
371
372	* dirdeps.mk: move some comments to where they make sense.
373
3742016-07-27  Simon J. Gerraty  <sjg@bad.crufty.net>
375
376	* dirdeps.mk (DIRDEPS_CACHE): no dirname.
377
3782016-06-02  Simon J. Gerraty  <sjg@bad.crufty.net>
379
380	* install-mk (MK_VERSION): 20160602
381	* meta.autodep.mk: when passing META_FILES to gendirdeps.mk
382	  do not apply :T to META_XTRAS
383	  patch from Bryan Drewery at FreeBSD.org.
384
3852016-05-30  Simon J. Gerraty  <sjg@bad.crufty.net>
386
387	* install-mk (MK_VERSION): 20160530
388	* meta.stage.mk: we assume ${CLEANFILES} gets .NOPATH
389	  make it so.
390
3912016-05-12  Simon J. Gerraty  <sjg@bad.crufty.net>
392
393	* install-mk (MK_VERSION): 20160512
394
395	* dpadd.mk: always include local.dpadd.mk if it exists
396	  remove some things that better belong in local.dpadd.mk
397	  skip INCLUDES_* for staged libs unless SRC_* defined.
398
399	* own.mk: add INCLUDEDIR
400
4012016-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
402
403	* dirdeps.mk: when doing -f dirdeps.mk if target suppies no
404	  TARGET_MACHINE - :E will be empty or match part of path, use
405	  ${MACHINE}
406
4072016-04-07  Simon J. Gerraty  <sjg@bad.crufty.net>
408
409	* meta.autodep.mk: issue a warning if UPDATE_DEPENDFILE=NO due to
410	  NO_FILEMON_COOKIE
411
412	* dirdeps.mk: move the logic that allows for
413	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
414	  inside the check for !target(_DIRDEP_USE)
415
4162016-04-04  Simon J. Gerraty  <sjg@bad.crufty.net>
417
418	* Use <> when including local*.mk and others which may exist
419	  elsewhere so that user can better control what they get.
420
421	* meta.autodep.mk (NO_FILEMON_COOKIE):
422	  create a cookie if we ever build dir with nofilemon
423	  so that UPDATE_DEPENDFILE will be forced to NO until cleaned.
424
4252016-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
426
427	* install-mk (MK_VERSION): 20160401
428
429	* meta2deps.py: fix old print statement when debugging.
430
431	* gendirdeps.mk: META2DEPS_CMD append M2D_EXCLUDES with -X
432	  patch from Bryan Drewery
433
4342016-03-22  Simon J. Gerraty  <sjg@bad.crufty.net>
435
436	* install-mk (MK_VERSION): 20160317 (St. Pats)
437
438	* warnings.mk: g++ does not like -Wimplicit
439
440	* sys.mk sys/*.mk lib.mk prog.mk: use CXX_SUFFIXES to handle the
441	  pelthora of common suffixes for C++
442
443	* lib.mk: use .So for shared objects
444
4452016-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
446
447	* install-mk (MK_VERSION): 20160315
448
449	* meta.stage.mk (LN_CP_SCRIPT): do not ln(1) if we have to chmod(1)
450	  normally only applies to scripts.
451
452	* dirdeps.mk: NO_DIRDEPS_BELOW to supress DIRDEPS below RELDIR as
453	  well as outside it.
454
4552016-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
456
457	* install-mk (MK_VERSION): 20160310
458
459	* dirdeps.mk: use targets rather than a list to track DIRDEPS that
460	  we have processed; the list gets very inefficient as number of
461	  DIRDEPS gets large.
462
463	* sys.dependfile.mk: fix comment wrt MACHINE
464
465	* meta.autodep.mk: ignore staged DPADDs when bootstrapping.
466	  patch from Bryan Drewery
467
4682016-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
469
470	* meta2deps.sh: don't ignore subdirs.
471	  patch from Bryan Drewery
472
4732016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
474
475	* install-mk (MK_VERSION): 20160226
476
477	* gendirdeps.mk: mark _DEPENDFILE .NOMETA
478
4792016-02-20  Simon J. Gerraty  <sjg@bad.crufty.net>
480
481	* dirdeps.mk: we shouldn't normally include .depend but if we do
482	  use .dinclude if we can.
483
4842016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
485
486	* install-mk (MK_VERSION): 20160218
487	* sys.clean-env.mk: with recent change to Var_Subst()
488	  we cannot use the '$$' trick, but .export-literal does the job
489	  we need.
490	* auto.dep.mk: make use .dinclude if we can.
491
492
4932016-02-05  Simon J. Gerraty  <sjg@bad.crufty.net>
494
495	* dirdeps.mk:
496	  Add _build_all_dirs such that local.dirdeps.mk can
497	  add fully qualified dirs to it.
498	  These will be built normally but the current
499	  DEP_RELDIR will not depend on then (to avoid cycles).
500	  This makes it easy to hook things like unit-tests into build.
501
502
5032016-01-21  Simon J. Gerraty  <sjg@bad.crufty.net>
504
505	* dirdeps.mk: add bootstrap-empty
506
5072015-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
508
509	* install-mk (MK_VERSION): 20151212
510	* auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist.
511	  only apply :tA to __objdir when comparing to .OBJDIR
512
5132015-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
514
515	* install-mk (MK_VERSION): 20151111
516
517	* meta.sys.mk: include sys.dependfile.mk
518
519	* sys.mk (OPTIONS_DEFAULT_NO): use options.mk
520	  to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD
521	  include local.sys.env.mk early
522	  include local.sys.mk later
523
524	* own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk
525
5262015-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
527
528	* meta.sys.mk (META_COOKIE_TOUCH):
529	  add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie
530
531	* meta.stage.mk: stage_libs should ignore SYMLINKS.
532
5332015-10-23  Simon J. Gerraty  <sjg@bad.crufty.net>
534
535	* install-mk (MK_VERSION): 20151022
536
537	* sys.mk: BSD/OS does not have 'type' as a shell builtin.
538
5392015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
540
541	* install-mk (MK_VERSION): 20151020
542
543	* dirdeps.mk: Add logic for
544	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
545
5462015-10-14  Simon J. Gerraty  <sjg@bad.crufty.net>
547
548	* install-mk (MK_VERSION): 20151010
549
5502015-10-02  Simon J. Gerraty  <sjg@bad.crufty.net>
551
552	* meta.stage.mk: use staging: ${STAGE_TARGETS:...
553	  to have stage_lins run last in non-jobs mode.
554	  Use .ORDER only for jobs mode.
555
5562015-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
557
558	* rst2htm.mk: allow for per target flags etc.
559
5602015-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
561
562	* install-mk (MK_VERSION): 20150901
563
564	* doc.mk: create dir if needed use DOC_INSTALL_OWN
565
5662015-06-15  Simon J. Gerraty  <sjg@bad.crufty.net>
567
568	* install-mk (MK_VERSION): 20150615
569
570	* auto.obj.mk: allow use of MAKEOBJDIRPREFIX too.
571	  Follow make's normal precedence rules.
572
573	* gendirdeps.mk: allow customization of the header.
574	  eg. for FreeBSD:
575	  GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}';
576
577	* meta.autodep.mk: ignore dirdeps.cache*
578
579	* meta.stage.mk: when bootstrapping options it can be handy to
580	  throw warnings rather than errors for staging conflicts.
581
582	* meta.sys.mk: include local.meta.sys.mk for customization
583
5842015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
585
586	* install-mk (MK_VERSION): 20150606
587
588	* dirdeps.mk: don't rely on manually maintained Makefile.depend
589	  to set DEP_RELDIR and reset DIRDEPS.
590	  By setting DEP_RELDIR ourselves we can skip :tA
591
592	* gendirdeps.mk: skip setting DEP_RELDIR.
593
5942015-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
595
596	* dirdeps.mk: avoid wildcards like make(bootstrap*)
597
5982015-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
599
600	* install-mk (MK_VERSION): 20150520
601
602	* dirdeps.mk: when we are building dirdeps cache file we *want*
603	  meta_oodate to look at all the Makefile.depend files, so
604	  set .MAKE.DEPENDFILE to something that won't match.
605
606	* meta.stage.mk: for STAGE_AS_* basename of file may not be unique
607	  so first use absolute path as key.
608	  Also skip staging at level 0.
609
6102015-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
611
612	* install-mk (MK_VERSION): 20150430
613
614	* dirdeps.mk: fix _count_dirdeps for non-cache case.
615
6162015-04-16  Simon J. Gerraty  <sjg@bad.crufty.net>
617
618	* install-mk (MK_VERSION): 20150411
619	  bump version
620
621	* own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES.
622	  it is here mainly for documentation purposes, since
623	  if using auto.obj.mk it is better done via sys.mk
624
6252015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
626
627	* install-mk (MK_VERSION): 20150401
628
629	* meta2deps.sh: support @list
630
631	* meta2deps.py: updates from Juniper
632	  o add EXCLUDES
633	  o skip bogus input files.
634	  o treat 'M' and 'L' as both an 'R' and a 'W'
635
6362015-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
637
638	* install-mk (MK_VERSION): 20150303
639
640	* dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache
641	  which is built via sub-make so we have a .meta file to tell if
642	  it is out-of-date.
643	  The dirdeps-cache contains the same dependency rules that we
644	  normaly construct on the fly.
645	  This adds a few seconds overhead when the cache is out of date,
646	  but for a large target, the savings can be significant (10-20min).
647
6482014-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>
649
650	* install-mk (MK_VERSION): 20141118
651
652	* meta.stage.mk: add stale_staged
653
654	* dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked
655	  only useful under very rare conditions such as
656	  FreeBSD's make universe.
657
658	* auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto
659
6602014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
661
662	* install-mk (MK_VERSION): 20141111
663
664	* mkopt.sh: use consistent semantics for _mk_opt and _mk_opts
665
6662014-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
667
668	* FILES: include mkopt.sh which allows handling options in shell
669	  scripts in a manner compatible with options.mk
670
6712014-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
672
673	* meta.stage.mk: ensure only _STAGED_DIRS under objroot are used
674	  for GENDIRDEPS_FILTER to avoid surprises.
675
6762014-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
677
678	* dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by
679	  the time it is applied to __depdirs they have.
680
681	* dirdeps.mk fix filtering of _machines since M_dep_qual_fixes
682	  expects patterns like *.${MACHINE}
683
684	* cython.mk (pyprefix?): use pyprefix to find python bits
685	  since prefix might be something else (where we install our
686	  stuff)
687
6882014-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
689
690	* install-mk (MK_VERSION): 20140911
691
692	* dirdeps.mk: add bootstrap target to simplify adding support for
693	  new MACHINE.
694
6952014-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
696
697	* gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and
698	  GENDIRDEPS_FILTER_VARS to make it easier to produce sharable
699	  Makefile.depend files.
700
7012014-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
702
703	* install-mk (MK_VERSION): 20140828
704
705	* cython.mk: capture logic for building python extension modules
706	  with Cython.
707
7082014-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
709
710	* meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant
711
7122014-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
713
714	* install-mk (MK_VERSION): 20140801
715
716	* dep.mk: use explicit MKDEP_MK rather than overload MKDEP to
717	identify the autodep.mk variant.
718
719	* sys.dependfile.mk: delete .MAKE.DEPENDFILE if its
720	initial value does not match .MAKE.DEPENDFILE_PREFIX
721
722	* meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS
723
7242014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
725
726	* install-mk (MK_VERSION): 20140522
727
728	* lib.mk: use CC to link shlib for linux too
729	  patch from Brendan MacDonell
730
7312014-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
732
733	* meta.autodep.mk: add _reldir_{finish,failed} for gathering stats
734	  if WITH_META_STATS is defined.
735
7362014-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
737
738	* dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS)
739	  to supress dirdeps outside of .CURDIR.
740
7412014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
742
743	* Fix spelling errors - patch from Pedro Giffuni
744
7452014-03-14  Simon J. Gerraty  <sjg@bad.crufty.net>
746
747	* install-mk (MK_VERSION): 20140314
748
749	* dirdeps.mk (beforedirdeps): a handy hook
750
751	* dirdeps.mk (DIRDEP_MAKE): allow the actual command we run
752	  to visit leaf dirs to be intercepted (eg. for distributed
753	  build).
754
755	* dirdeps.mk (__depdirs): ensure // don't sneak in
756
757	* gendirdeps.mk (DIRDEPS): ensure // don't sneak in
758
759
7602014-02-21  Simon J. Gerraty  <sjg@bad.crufty.net>
761
762	* rst2htm.mk (RST2PDF): add support for rst2pdf
763
7642014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
765
766	* install-mk (MK_VERSION): bump version
767	* dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if
768	  available.
769
7702014-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
771
772	* options.mk: avoid :U so this isn't bmake dependent
773
7742014-02-09  Simon J. Gerraty  <sjg@bad.crufty.net>
775
776	* options.mk: cleanup and simplify semanitcs
777	  NO_* dominates all, if both WITH_* and WITHOUT_*
778	  are defined then result is DOMINATE_* which defaults to "no".
779	  Ie. WITHOUT_ normally wins.
780
7812013-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
782
783	* install-mk (MK_VERSION): bump version
784	* meta2deps.py: convert to print function for python3 compat.
785	  we also need to open files with mode 'r' rather than 'rb'
786	  otherwise we get bytes instead of strings.
787
7882013-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
789
790	* install-mk (MK_VERSION): bump version
791
792	* dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE
793	  apply the same filtering (M_dep_qual_fixes) when setting _machines
794	  as _build_dirs.
795	  Also fix the filtering of Makefile.depend files - for reporting
796	  what we are looking for (M_dep_qual_fixes can get confused by
797	  Makefile.depend)
798	  Add some more debug info.
799
8002013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
801
802	* gendirdeps.mk (_objtops): fix typo also
803	  while processing M2D_OBJROOTS to gather qualdir_list
804	  qualify $ql with loop iterator to ensure correct results.
805
8062013-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
807
808	* install-mk (MK_VERSION): 20130801
809	* libs.mk: update to match progs.mk
810
8112013-07-26  Simon J. Gerraty  <sjg@bad.crufty.net>
812
813	* install-mk (MK_VERSION): 20130726
814	  some updates from Juniper and FreeBSD
815	  o meta2deps.py: indicate file and line number when we hit parse
816	    errors
817	    also allow @file to provide huge list of .meta files.
818	* meta2deps.py: add try_parse() to cleanup the above.
819
8202013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
821
822	* install-mk (MK_VERSION): 20130716
823	* own.mk: add GPROG as an option
824	* prog.mk: honor MK_GPROF==yes
825
8262013-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
827
828	* install-mk (MK_VERSION): 20130505
829	* gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC
830	  for when $MACHINE isn't enough for objdir distinction.
831	  Bring meta2deps.sh closer to par with meta2deps.py.
832
8332013-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
834
835	* meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all'
836	  also if the target 'beforeinstall' exists, make it depend on
837	  .dirdep (incase it uses STAGE_INSTALL).
838
8392013-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
840
841	* install-mk (MK_VERSION): 20130401 ;-)
842	* meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as
843	  wrapper around install(1).
844	* options.mk (OPTION_PREFIX): Allow a prefix other than MK_
845
8462013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
847
848	* meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized.
849	* install-mk (MK_VERSION): bump version
850
8512013-03-21  Simon J. Gerraty  <sjg@bad.crufty.net>
852
853	* install-mk (MK_VERSION): bump version
854	* gendirdeps.mk: do not apply :tA to DPADD entries, since we lose
855	  any trailing /., rather apply :tA only when needed.
856	* gendirdeps.mk: better mimic meta2deps handling of .dirdep files.
857	* meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance
858	  consistently.
859	* dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC.
860
8612013-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
862
863	* gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT
864	  it is simpler to just not update when say building for "host"
865	  (where we know we apply filters to DIRDEPS), and using a
866	  non-machine qualified dependfile.
867
8682013-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
869
870	* dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR
871	  and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC
872	* gendirdeps.mk: ensure _objroot has trailing / if it needs it.
873	* meta2deps.py: if machine is "host", then also trim
874	  self.host_target from any OBJROOTS.
875
876
8772013-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
878
879	* gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine
880	  qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists
881	  but _DEPENDFILE does not, compare the new _DEPENDFILE against
882	  .MAKE.DEPENDFILE_DEFAULT and discard if the same.
883
8842013-03-08  Simon J. Gerraty  <sjg@bad.crufty.net>
885
886	* meta.stage.mk: use STAGE_TARGETS to control .ORDER
887	  and hook to all: via staging:
888
8892013-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
890
891	* sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT):
892	  use a separate variable for the default .MAKE.DEPENDFILE value
893	  so that it can be controlled independently of
894	  .MAKE.DEPENDFILE_PREFERENCE
895
896	* meta.stage.mk: throw error if cp fails etc.
897	  Stage*() return early if passed no args.
898	  .ORDER stage_*
899
9002013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
901
902	* install-mk (MK_VERSION): bump version
903	* gendirdeps.mk: handle multiple M2D_OBJROOTS better.
904
9052013-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
906
907	* install-mk (MK_VERSION): bump version to 20130210
908	* import latest dirdeps.mk, gendirdeps.mk and meta2deps.py
909	  from Juniper.
910	  o dirdeps.mk now fully supports TARGET_SPEC consisting of more
911	    than just MACHINE.
912	  o no longer use DEP_MACHINE from Makefile.depend* so remove it.
913
9142013-01-23  Simon J. Gerraty  <sjg@bad.crufty.net>
915
916	* install-mk (MK_VERSION): bump version to 20130123
917	* meta.stage.mk: add stage_links (hard links).
918	  if doing hard links, we add dest to link as well.
919	  Default the stage dir for [sym]links to STAGE_OBJTOP since
920	  these are typically specified as absolute paths.
921	  Add -m "mode" flag to StageFiles and StageAs.
922
9232012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
924
925	* install-mk (MK_VERSION): bump version to 20121111
926	* autoconf.mk: avoid meta mode seeing changed commands for config.status
927	* meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps
928	  in case we were found via .../mk
929	* sys.clean-env.mk: move it from examples, we and others use it
930	  "as is".
931	* FILES: add srctop.mk and options.mk
932	* own.mk: convert to using options.mk
933	  which is modeled after FreeBSD's handling of MK_*
934	  but more flexible.
935	  This allows MK_* for boolean knobs to not be confused
936	  with MK* which can be commands.
937
938	* examples/sys.clean-env.mk: add WITH[OUT]_ to
939	  MAKE_ENV_SAVE_PREFIX_LIST.
940	  Mention that HOME=/var/empty might be a good idea.
941
9422012-11-08  Simon J. Gerraty  <sjg@bad.crufty.net>
943
944	* sys.dependfile.mk: if not depend file exists, $MACHINE
945	  specific ones are supported but not the default,
946	  check if any exist and follow suit.
947
9482012-11-06  Simon J. Gerraty  <sjg@bad.crufty.net>
949
950	* install-mk (MK_VERSION): bump version to 20121106
951
9522012-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
953
954	* import latest dirdeps.mk and meta2deps.py from Juniper.
955	* progs.mk: add MAN and CXXFLAGS to PROG_VARS
956	  also add PROGS_TARGETS and pass on PROG_CXX if it seems
957	  appropriate.
958
9592012-11-04  Simon J. Gerraty  <sjg@bad.crufty.net>
960
961	* meta.stage.mk: update CLEANFILES
962	  remove redundant cp of .dirdep from STAGE_AS_SCRIPT.
963	* progs.mk: Add LDADD to PROG_VARS
964
9652012-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
966
967	* meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in
968	  _STAGED_DIRS so that these can be turned into filters for
969	  GENDIRDEPS_FILTER.
970
9712012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
972
973	* install-mk (MK_VERSION): bump version to 20121010
974	* meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing
975	target.dirdep matches .dirdep
976
9772012-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
978
979	* install-mk (MK_VERSION): bump version to 20120808
980	* import latest meta2deps.py from Juniper.
981
9822012-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
983
984	* install-mk (MK_VERSION): bump version to 20120711
985	* dep.mk: add explicit dependencies on SRCS after applying
986	  SRCS_DEP_FILTER
987	* meta.autodep.mk: add explicit dependencies on SRCS after
988	  applying SRCS_DEP_FILTER
989	* meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed.
990
9912012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
992
993	* install-mk (MK_VERSION): bump version to 20120626
994	* meta.sys.mk: ignore PYTHON if it does not exist
995	  compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable.
996	* meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any
997	  entries ending in .${MACHINE} to decide if qualified _dirdep is
998	  needed.
999	* gendirdeps.mk: only produce unqualified deps if no
1000	  .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE}
1001	* meta.subdir.mk: apply SUBDIRDEPS_FILTER
1002
10032012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
1004
1005	* install-mk (MK_VERSION): bump version to 20120420
1006	* add sys.dependfile.mk so we can experiment with
1007	  .MAKE.DEPENDFILE_PREFERENCE
1008	* meta.autodep.mk: _DEPENDFILE is precious!
1009
10102012-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
1011
1012	* install-mk (MK_VERSION): bump version to 20120315
1013	* install-new.mk: avoid being interrupted
1014
10152012-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
1016
1017	* man.mk: MAN might have multiple values so be careful with exists().
1018
10192012-01-19  Simon J. Gerraty  <sjg@bad.crufty.net>
1020
1021	* install-mk (MK_VERSION): bump version to 20120112
1022	* fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled
1023	  as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
1024
10252011-12-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1026
1027	* install-mk (MK_VERSION):  bump version to 20111201
1028	* import dirdeps.mk from Juniper sjg@
1029	  o more consistent handling of DEP_MACHINE, especially when
1030	    dealing with an odd Makefile.depend, when normally using
1031	    Makefile.depend.${MACHINE}
1032
10332011-11-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1034
1035	* install-mk (MK_VERSION): bump version to 20111122
1036	* meta.autodep.mk: add some debug output, be more crisp about
1037	  updating.  Use ${.ALLTARGETS:M*.o} as a clue for .depend
1038
10392011-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1040
1041	* install-mk (MK_VERSION): bump version to 20111111
1042	  it's too cool to miss
1043	* import meta* updates from Juniper sjg@
1044	  o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are
1045	    normally using Makefile.depend.${MACHINE}), handy for
1046	    read-only manually maintained dependencies.
1047	  o meta2deps.py add a clear 'ERROR:' token if an exception is raised.
1048	  o gendirdeps.mk if ERROR: from meta2deps.py do not update
1049	    anything.
1050
10512011-10-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1052
1053	* install-new.mk separate the cmp and copy logic to its own function.
1054
10552011-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1056
1057	* install-mk (MK_VERSION): bump version to 20111028
1058	* sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto
1059	* subdir.mk: ensure _SUBDIRUSE is provided
1060	* meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk
1061	* meta.subdir.mk: always allow for Makefile.depend
1062
10632011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1064
1065	* install-mk (MK_VERSION): bump version to 20111010
1066	  o minor tweak to *dirdeps.mk from Juniper sjg@
1067
10682011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1069
1070	* install-mk (MK_VERSION): bump version to 20111001
1071	  o add meta2deps.py from Juniper sjg@
1072	  o tweak gendirdeps.mk to work with meta2deps.py when not
1073	    cross-building
1074	* autoconf.mk: add autoconf-input as a hook for regenerating
1075	  AUTOCONF_INPUTS (configure).
1076
10772011-08-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1078
1079	* meta.autodep.mk: if we do not have OBJS, .depend isn't a useful
1080	  trigger for updating Makefile.depend*
1081
10822011-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1083
1084	* install-mk (MK_VERSION): bump version to 20110808
1085	* obj.mk: minor cleanup
1086	* auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too.
1087
10882011-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1089
1090	* auto.obj.mk (.OBJDIR): throw an error if we cannot use the
1091	  specified dir.
1092
10932011-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
1094
1095	* meta.autodep.mk: if XMAKE_META_FILE is set
1096	  the makefile uses a foreign make, and so dependencies
1097	  can only be gathered from a clean tree build.
1098
10992011-06-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1100
1101	* install-mk (MK_VERSION): bump version to 20110622
1102	* meta.autodep.mk: improve bootstraping
1103
11042011-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1105
1106	* yacc.mk: handle the corner case of .c being removed
1107	  while .h remains.
1108
11092011-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1110
1111	* yacc.mk: do .y.h and .y.c separately
1112
11132011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1114
1115	* install-mk (MK_VERSION): bump version to 20110606
1116	* don't store SRC_DIRDEPS in Makefile.depend* by default
1117	  not everyone needs it.
1118
11192011-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1120
1121	* install-mk (MK_VERSION): bump version to 20110505
1122	  first release including meta mode makefiles
1123
11242011-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
1125
1126	* meta.stage.mk: add STAGE_AS_SETS and stage_as
1127	  for things that need to be staged with different names.
1128
11292011-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1130
1131	* meta.stage.mk: add notion of STAGE_SETS
1132	  so a makefile can stage to multiple dirs
1133
11342011-04-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1135
1136	* rst2htm.mk: convert rst to s5 (slides) or plain html depending
1137	  on target name.
1138
11392011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
1140
1141	* install-mk (MK_VERSION): bump version to 20110330
1142
11432011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
1144
1145	* sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0
1146	  can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest.
1147	* sys.mk: re-define M_whence in terms of M_type.
1148	  M_type is useful for checking if something is a builtin.
1149
11502011-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1151
1152	* meta.stage.mk: add stage_symlinks and leverage StageLinks for
1153	  stage_libs
1154
11552011-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1156
1157	* dirdeps.mk: correct value for _depdir_files depends on
1158	  .MAKE.DEPENDFILE
1159	  Add our copyright - just to make it clear we have frobbed this
1160	  quite a bit.
1161	  DEP_MACHINE needs to be set to MACHINE each time, if using only
1162	  Makefile.depend (cf. Makefile.depend.${MACHINE})
1163
1164	* meta.stage.mk: meta mode version of staging
1165
1166	* init.mk, final.mk: include local.*.mk to simplify customization
1167
11682011-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
1169
1170	* auto.obj.mk: just because we are doing mk destroy, we should
1171	  still set .OBJDIR correctly if it exists.
1172
1173	* install-mk (mksrc): do not exclude meta.sys.mk
1174
11752011-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
1176
1177	* host-target.mk: set/export _HOST_ARCH etc separately,
1178	  catch junk resulting from uname -p, so we can find sys/Linux.mk
1179	  correctly.
1180
11812011-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
1182
1183	* meta.sys.mk: throw an error if /dev/filemon is missing and we
1184	  expected to be updating Makefile.depend*
1185
11862011-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
1187
1188	* install-mk (MK_VERSION): bump version to 20110214
1189	* meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES
1190
11912010-09-25  Simon J. Gerraty  <sjg@bad.crufty.net>
1192
1193	* meta.sys.mk: not valid for older bmake
1194
11952010-09-24  Simon J. Gerraty  <sjg@bad.crufty.net>
1196
1197	* install-mk (MK_VERSION): bump version to 20100919
1198	include dirdeps.mk et al from Juniper Networks,
1199	for meta mode - requires filemon(9).
1200	* sys.mk, subdir.mk: Add hooks for meta mode.
1201	we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk
1202	to make turning it on/off simple.
1203
12042010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
1205
1206	* install-mk (MK_VERSION): bump version to 20100616
1207	* fix typo in sys.mk
1208
12092010-06-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1210
1211	* install-mk (MK_VERSION): bump version to 20100612
1212	* lib.mk: remove duplicate addition to SOBJS
1213
12142010-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
1215
1216	* sys.mk: Add a means of selectively turning on debug flags.
1217	  Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg"
1218	  will act as if we did make -dv if .CURDIR ends in lib/sjg
1219	  DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at
1220	  the start of sys.mk rather than the end.
1221	  This only makes sense for leaf dirs, so we check that
1222	  .MAKE.LEVEL > 0
1223
12242010-06-09  Simon J. Gerraty  <sjg@bad.crufty.net>
1225
1226	* install-mk (MK_VERSION): bump version to 20100608
1227	* sys.mk: include sys.env.mk later so it can use M_ListToSkip et al.
1228	* examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606
1229	  also make it easier for folk to tweak
1230
12312010-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
1232
1233	* install-mk (MK_VERSION): bump version to 20100606
1234	  do not install examples/*
1235	* FILES: add examples/sys.clean-env.mk
1236	* examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR
1237	  this requires bmake-20100606 or later to work.
1238
12392010-05-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1240
1241	* sys.mk (M_tA): better simulate the result of :tA if not available.
1242
12432010-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1244
1245	* sys.mk: canonicalize MAKE_VERSION
1246	  old versions reported bmake-<src-date> build-<build-date>
1247	  whereas we only care about <src-date>
1248
12492010-04-25  Simon J. Gerraty  <sjg@bad.crufty.net>
1250
1251	* install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored
1252	* lib.mk: we only build the shared lib if SHLIB_FULLVERSION
1253	  is !empty
1254
12552010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
1256
1257	* dpadd.mk: use LDADD_* if defined.
1258
12592010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
1260
1261	* install-mk (MK_VERSION): bump version to 20100420
1262	* sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy
1263	* autoconf.mk allow AUTO_AUTOCONF
1264
12652010-04-19  Simon J. Gerraty  <sjg@bad.crufty.net>
1266
1267	* obj.mk: add objwarn to keep freebsd makefiles happy
1268	* auto.obj.mk: ensure Mkdirs is available.
1269	* FILES: add auto.dep.mk - a simpler version of autodep.mk
1270	* dep.mk: auto.dep.mk does not do 'make depend' so ignore it if
1271	  asked to do that.
1272	  fix/simplify the tests for when to run mkdep.
1273	* auto.dep.mk: add some explanation of how/what we do.
1274	* autodep.mk: skip the .OPTIONAL frobbing of .depend
1275	  bmake's FROM_DEPEND flag makes it redundant.
1276
12772010-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
1278
1279	* install-mk (MK_VERSION): bump version to 20100404
1280	* subdir.mk: protect from multiple inclusion using _SUBDIRUSE.
1281	* obj.mk: protect from multiple inclusion even as bsd.obj.mk
1282	Also create a target _SUBDIRUSE so that we can  be used without
1283	subdir.mk
1284
12852010-04-12  Simon J. Gerraty  <sjg@bad.crufty.net>
1286
1287	* dep.mk: use <> when .including so can override.
1288
12892010-01-11  Simon J. Gerraty  <sjg@bad.crufty.net>
1290
1291	* lib.mk (SHLIB_LINKS): ensure a string comparison.
1292
12932010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
1294
1295	* install-mk (MK_VERSION): bump version to 20100102
1296	* own.mk: ensure PRINTOBJDIR works
1297	* autoconf.mk: pass on CONFIGURE_ARGS
1298	* init.mk: handle COPTS.${.IMPSRC:T} etc.
1299	* lib.mk: allow sys.mk to control SHLIB_FULLVERSION
1300	  fix handling of symlinks for darwin
1301	* libnames.mk: add DSHLIBEXT for libs which only exist as shared.
1302	* man.mk: suppress chown when not root.
1303	* rst2htm.mk: allow srcs from multiple locations.
1304	* sys.mk: M_whence, stop after 1st line of output.
1305	* sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT
1306	* sys/SunOS.mk: we need to export PATH
1307
13082009-12-23  Simon J. Gerraty  <sjg@void.crufty.net>
1309
1310	* install-mk (MK_VERSION): bump version
1311	  include rst2htm.mk
1312
13132009-12-17  Simon J. Gerraty  <sjg@void.crufty.net>
1314
1315	* sys.mk,libnames.mk add .-include <local.*>
1316	  this allows local customization without the need to edit the
1317	  distributed files.
1318
13192009-12-14  Simon J. Gerraty  <sjg@void.crufty.net>
1320
1321	* dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up
1322	  older versions already installed.
1323
13242009-12-13  Simon J. Gerraty  <sjg@void.crufty.net>
1325
1326	* stage.mk (.stage-install): generalize lib.mk's .libinstall
1327	* rules.mk rules for generic Makefile.
1328	* inc.mk install for includes.
1329
13302009-12-11  Simon J. Gerraty  <sjg@void.crufty.net>
1331
1332	* sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check
1333	  this, so provide it if using native make.
1334
13352009-12-10  Simon J. Gerraty  <sjg@void.crufty.net>
1336
1337	* FILES: move all the platform *.sys.mk files to sys/*.mk
1338	* Rename Generic.sys.mk to sys.mk - we always want it.
1339
13402009-11-17  Simon J. Gerraty  <sjg@void.crufty.net>
1341
1342	* install-mk (MK_VERSION): bump version
1343	* host-target.mk: only export the expensive stuff
1344	* Generic.sys.mk (sys_mk): for SunOS we need to look for
1345	  ${HOST_OS}.${HOST_OSMAJOR} too!
1346
13472009-11-07  Simon J. Gerraty  <sjg@void.crufty.net>
1348
1349	* install-mk (MK_VERSION): bump version
1350	* lib.mk: if sys.mk doesn't give us an lorder, don't use it.
1351	  based on patch from Greg Olszewski.
1352	* Generic.sys.mk: if we have nothing to work with
1353	set LORDER etc only if we can find it.
1354
13552009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
1356
1357	* install-mk (MK_VERSION): bump version
1358	* man.mk: cleanman: remove CLEANMAN if defined.
1359
13602009-09-04  Simon J. Gerraty  <sjg@void.crufty.net>
1361
1362	* SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk
1363
13642009-07-17  Simon J. Gerraty  <sjg@void.crufty.net>
1365
1366	* install-mk (MK_VERSION): bump version
1367	include auto.obj.mk
1368
1369
13702009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
1371
1372	* prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail.
1373
13742008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
1375
1376	* install-mk (MK_VERSION): bump version
1377	man.mk: ensure we generate *.cat1 etc in .
1378
13792008-07-16  Simon J. Gerraty  <sjg@void.crufty.net>
1380
1381	* install-mk (MK_VERSION): bump version
1382	add prlist.mk
1383
13842007-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
1385
1386	* Generic.sys.mk: Allow os specific sys.mk to be in a
1387	subdir of ${.PARSEDIR}
1388
13892007-11-22  Simon J. Gerraty  <sjg@void.crufty.net>
1390
1391	* install-mk (MK_VERSION): bump version
1392	* general cleanup
1393	* dpadd.mk introduce DPMAGIC_LIBS_*
1394
13952007-04-30  Simon J. Gerraty  <sjg@void.crufty.net>
1396
1397	* install-mk (MK_VERSION): bump version
1398
1399	* libs.mk, progs.mk, autodep.mk: allow for per lib/prog
1400	depend files and ensure clean is called for each lib/prog.
1401
14022007-03-27  Simon J. Gerraty  <sjg@void.crufty.net>
1403
1404	* autodep.mk (.depend): delete lines that do not start with
1405	space and do not contain ':'
1406
14072007-02-16  Simon J. Gerraty  <sjg@void.crufty.net>
1408
1409	* autodep.mk (.depend): gcc may wrap lines if pathnames are long
1410	so make sure the transform for .OPTIONAL copes.
1411
14122007-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
1413
1414	* install-mk (MK_VERSION): bump version
1415
1416	* own.mk: make sure RM and LN are defined.
1417
1418	* obj.mk: fix a typo, and objlink target.
1419
14202006-12-30  Simon J. Gerraty  <sjg@void.crufty.net>
1421
1422	* install-mk (MK_VERSION): bump version
1423	* added libs.mk - analogous to progs.mk
1424	  make both of them always inlcude {lib,prog}.mk
1425
14262006-12-28  Simon J. Gerraty  <sjg@void.crufty.net>
1427
1428	* progs.mk: add a means of building multiple apps in one dir.
1429
14302006-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
1431
1432	* install-mk (MK_VERSION): bump version to 20061126
1433
1434	* warnings.mk: detect invalid WARNINGS_SET
1435
1436	* warnings.mk: use ${.TARGET:T:R}.o when looking for target
1437	specific warnings.
1438
1439	* For .cc sources, turn off warnings that g++ vomits on.
1440
14412006-11-08  Simon J. Gerraty  <sjg@void.crufty.net>
1442
1443	* own.mk: if __initialized__ target doesn't exist and we are
1444	FreeBSD we got here directly from sys.mk
1445
14462006-11-06  Simon J. Gerraty  <sjg@void.crufty.net>
1447
1448	* install-mk (MK_VERSION): bump version to 20061106
1449	add scripts.mk
1450
14512006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
1452
1453	* install-mk (MK_VERSION): bump version to 20060318
1454
1455	* autodep.mk: avoid := when modifying OBJS into __dependsrcs
1456
14572006-03-02  Simon J. Gerraty  <sjg@void.crufty.net>
1458
1459	* install-mk (MK_VERSION): bump version to 20060302
1460	* autodep.mk: use -MF et al to help gcc+ccache DTRT.
1461
14622006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
1463
1464	* install-mk (MK_VERSION): bump version to 20060301
1465	* autodep.mk (.depend):
1466	if MAKE_VERSION is newer than  20050530 we can make .END depend on
1467	.depend and make .depend depend on __depsrcs that exist.
1468	* dpadd.mk: add SRC_PATHADD
1469
14702005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1471
1472	* install-mk (MK_VERSION): bump version to 20051104
1473	* prog.mk: remove all the LIBC?= junk, use
1474	.-include libnames.mk instead (none by default).
1475	also if USE_DPADD_MK is set, include that.
1476
14772005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1478
1479	* install-mk (MK_VERSION): bump version to 20051001
1480	Add UnixWare.sys.mk from Klaus Heinz.
1481
14822005-04-05  Simon J. Gerraty  <sjg@void.crufty.net>
1483
1484	* install-mk: always install *.sys.mk and if need be symlink one
1485	to sys.mk
1486
14872005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
1488
1489	* subdir.mk, own.mk: use .MAKE rather than MAKE
1490
14912004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1492
1493	* own.mk: don't use NetBSD's _SRC_TOP_ it can
1494	cause confusion.  Also don't take just 'mk' as a
1495	srctop indicator.
1496
14972004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1498
1499	* warnings.mk: overhauled, now very powerful.
1500
15012004-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
1502
1503	* Generic.sys.mk: need to use ${.PARSEDIR} with exists().
1504
15052004-02-01  Simon J. Gerraty  <sjg@void.crufty.net>
1506
1507	* install-mk (MK_VERSION): bump version to 20040201
1508	* extract HOST_TARGET stuff to host-target.mk so own.mk and
1509	Generic.sys.mk can share.
1510	* fix typo in autodep.mk _SUBDIRUSE not _SUBDIR.
1511
15122003-09-30  Simon J. Gerraty  <sjg@void.crufty.net>
1513
1514	* install-mk (MK_VERSION): 20030930
1515	* rename generic.sys.mk to Generic.sys.mk
1516	so that it does not get installed (unless being used as sys.mk)
1517	* set OS and ROOT_GROUP for those that we know the value.
1518	for others (eg. Generic.sys.mk) wrap the != in an .ifndef so
1519	we don't do it again for each sub-make.
1520
15212003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1522
1523	* install-mk (MK_VERSION): 20030928
1524	Add some extra *.sys.mk from bootstrap-pkgsrc
1525	some of these likely still need work.
1526	Make everything default to root:wheel ownership,
1527	sys.mk can set ROOT_GROUP accordingly.
1528
15292003-08-07  Simon J. Gerraty  <sjg@void.crufty.net>
1530
1531	* install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR
1532	not the portable ones.
1533
15342003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1535
1536	* install-mk: add ability to use cp -f when updating
1537	destination .mk files.  Also now possible to play games with
1538	FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk
1539	into dest - not recommended unless you seriously want to.
1540
15412003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1542
1543	* own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc
1544	for semi-compatability with NetBSD.
1545
15462003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1547
1548	* install-mk: add a version indicator
1549
15502003-07-22  Simon J. Gerraty  <sjg@void.crufty.net>
1551
1552	* prog.mk: don't try and use ${LIBCRT0} if its /dev/null
1553
1554	* install-mk: Allow FORCE_SYS_MK to come from env
1555
1556
1557
1558