xref: /freebsd/contrib/bmake/mk/ChangeLog (revision 1e248b8346cbf585990a4da0199c6cc3b9cc2340)
12016-03-02  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* meta2deps.sh: don't ignore subdirs.
4	  patch from Bryan Drewery
5
62016-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
7
8	* install-mk (MK_VERSION): 20160226
9
10	* gendirdeps.mk: mark _DEPENDFILE .NOMETA
11
122016-02-20  Simon J. Gerraty  <sjg@bad.crufty.net>
13
14	* dirdeps.mk: we shouldn't normally include .depend but if we do
15	  use .dinclude if we can.
16
172016-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
18
19	* install-mk (MK_VERSION): 20160218
20	* sys.clean-env.mk: with recent change to Var_Subst()
21	  we cannot use the '$$' trick, but .export-literal does the job
22	  we need.
23	* auto.dep.mk: make use .dinclude if we can.
24
25
262016-02-05  Simon J. Gerraty  <sjg@bad.crufty.net>
27
28	* dirdeps.mk:
29	  Add _build_all_dirs such that local.dirdeps.mk can
30	  add fully qualified dirs to it.
31	  These will be built normally but the current
32	  DEP_RELDIR will not depend on then (to avoid cycles).
33	  This makes it easy to hook things like unit-tests into build.
34
35
362016-01-21  Simon J. Gerraty  <sjg@bad.crufty.net>
37
38	* dirdeps.mk: add bootstrap-empty
39
402015-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
41
42	* install-mk (MK_VERSION): 20151212
43	* auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist.
44	  only apply :tA to __objdir when comparing to .OBJDIR
45
462015-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
47
48	* install-mk (MK_VERSION): 20151111
49
50	* meta.sys.mk: include sys.dependfile.mk
51
52	* sys.mk (OPTIONS_DEFAULT_NO): use options.mk
53	  to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD
54	  include local.sys.env.mk early
55	  include local.sys.mk later
56
57	* own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk
58
592015-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
60
61	* meta.sys.mk (META_COOKIE_TOUCH):
62	  add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie
63
64	* meta.stage.mk: stage_libs should ignore SYMLINKS.
65
662015-10-23  Simon J. Gerraty  <sjg@bad.crufty.net>
67
68	* install-mk (MK_VERSION): 20151022
69
70	* sys.mk: BSD/OS does not have 'type' as a shell builtin.
71
722015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
73
74	* install-mk (MK_VERSION): 20151020
75
76	* dirdeps.mk: Add logic for
77	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
78
792015-10-14  Simon J. Gerraty  <sjg@bad.crufty.net>
80
81	* install-mk (MK_VERSION): 20151010
82
832015-10-02  Simon J. Gerraty  <sjg@bad.crufty.net>
84
85	* meta.stage.mk: use staging: ${STAGE_TARGETS:...
86	  to have stage_lins run last in non-jobs mode.
87	  Use .ORDER only for jobs mode.
88
892015-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
90
91	* rst2htm.mk: allow for per target flags etc.
92
932015-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
94
95	* install-mk (MK_VERSION): 20150901
96
97	* doc.mk: create dir if needed use DOC_INSTALL_OWN
98
992015-06-15  Simon J. Gerraty  <sjg@bad.crufty.net>
100
101	* install-mk (MK_VERSION): 20150615
102
103	* auto.obj.mk: allow use of MAKEOBJDIRPREFIX too.
104	  Follow make's normal precedence rules.
105
106	* gendirdeps.mk: allow customization of the header.
107	  eg. for FreeBSD:
108	  GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}';
109
110	* meta.autodep.mk: ignore dirdeps.cache*
111
112	* meta.stage.mk: when bootstrapping options it can be handy to
113	  throw warnings rather than errors for staging conflicts.
114
115	* meta.sys.mk: include local.meta.sys.mk for customization
116
1172015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
118
119	* install-mk (MK_VERSION): 20150606
120
121	* dirdeps.mk: don't rely on manually maintained Makefile.depend
122	  to set DEP_RELDIR and reset DIRDEPS.
123	  By setting DEP_RELDIR ourselves we can skip :tA
124
125	* gendirdeps.mk: skip setting DEP_RELDIR.
126
1272015-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
128
129	* dirdeps.mk: avoid wildcards like make(bootstrap*)
130
1312015-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
132
133	* install-mk (MK_VERSION): 20150520
134
135	* dirdeps.mk: when we are building dirdeps cache file we *want*
136	  meta_oodate to look at all the Makefile.depend files, so
137	  set .MAKE.DEPENDFILE to something that won't match.
138
139	* meta.stage.mk: for STAGE_AS_* basename of file may not be unique
140	  so first use absolute path as key.
141	  Also skip staging at level 0.
142
1432015-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
144
145	* install-mk (MK_VERSION): 20150430
146
147	* dirdeps.mk: fix _count_dirdeps for non-cache case.
148
1492015-04-16  Simon J. Gerraty  <sjg@bad.crufty.net>
150
151	* install-mk (MK_VERSION): 20150411
152	  bump version
153
154	* own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES.
155	  it is here mainly for documentation purposes, since
156	  if using auto.obj.mk it is better done via sys.mk
157
1582015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
159
160	* install-mk (MK_VERSION): 20150401
161
162	* meta2deps.sh: support @list
163
164	* meta2deps.py: updates from Juniper
165	  o add EXCLUDES
166	  o skip bogus input files.
167	  o treat 'M' and 'L' as both an 'R' and a 'W'
168
1692015-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
170
171	* install-mk (MK_VERSION): 20150303
172
173	* dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache
174	  which is built via sub-make so we have a .meta file to tell if
175	  it is out-of-date.
176	  The dirdeps-cache contains the same dependency rules that we
177	  normaly construct on the fly.
178	  This adds a few seconds overhead when the cache is out of date,
179	  but for a large target, the savings can be significant (10-20min).
180
1812014-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>
182
183	* install-mk (MK_VERSION): 20141118
184
185	* meta.stage.mk: add stale_staged
186
187	* dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked
188	  only useful under very rare conditions such as
189	  FreeBSD's make universe.
190
191	* auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto
192
1932014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
194
195	* install-mk (MK_VERSION): 20141111
196
197	* mkopt.sh: use consistent semantics for _mk_opt and _mk_opts
198
1992014-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
200
201	* FILES: include mkopt.sh which allows handling options in shell
202	  scripts in a manner compatible with options.mk
203
2042014-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
205
206	* meta.stage.mk: ensure only _STAGED_DIRS under objroot are used
207	  for GENDIRDEPS_FILTER to avoid surprises.
208
2092014-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
210
211	* dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by
212	  the time it is applied to __depdirs they have.
213
214	* dirdeps.mk fix filtering of _machines since M_dep_qual_fixes
215	  expects patterns like *.${MACHINE}
216
217	* cython.mk (pyprefix?): use pyprefix to find python bits
218	  since prefix might be something else (where we install our
219	  stuff)
220
2212014-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
222
223	* install-mk (MK_VERSION): 20140911
224
225	* dirdeps.mk: add bootstrap target to simplify adding support for
226	  new MACHINE.
227
2282014-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
229
230	* gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and
231	  GENDIRDEPS_FILTER_VARS to make it easier to produce sharable
232	  Makefile.depend files.
233
2342014-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
235
236	* install-mk (MK_VERSION): 20140828
237
238	* cython.mk: capture logic for building python extension modules
239	  with Cython.
240
2412014-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
242
243	* meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant
244
2452014-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
246
247	* install-mk (MK_VERSION): 20140801
248
249	* dep.mk: use explicit MKDEP_MK rather than overload MKDEP to
250	identify the autodep.mk variant.
251
252	* sys.dependfile.mk: delete .MAKE.DEPENDFILE if its
253	initial value does not match .MAKE.DEPENDFILE_PREFIX
254
255	* meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS
256
2572014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
258
259	* install-mk (MK_VERSION): 20140522
260
261	* lib.mk: use CC to link shlib for linux too
262	  patch from Brendan MacDonell
263
2642014-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
265
266	* meta.autodep.mk: add _reldir_{finish,failed} for gathering stats
267	  if WITH_META_STATS is defined.
268
2692014-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
270
271	* dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS)
272	  to supress dirdeps outside of .CURDIR.
273
2742014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
275
276	* Fix spelling errors - patch from Pedro Giffuni
277
2782014-03-14  Simon J. Gerraty  <sjg@bad.crufty.net>
279
280	* install-mk (MK_VERSION): 20140314
281
282	* dirdeps.mk (beforedirdeps): a handy hook
283
284	* dirdeps.mk (DIRDEP_MAKE): allow the actual command we run
285	  to visit leaf dirs to be intercepted (eg. for distributed
286	  build).
287
288	* dirdeps.mk (__depdirs): ensure // don't sneak in
289
290	* gendirdeps.mk (DIRDEPS): ensure // don't sneak in
291
292
2932014-02-21  Simon J. Gerraty  <sjg@bad.crufty.net>
294
295	* rst2htm.mk (RST2PDF): add support for rst2pdf
296
2972014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
298
299	* install-mk (MK_VERSION): bump version
300	* dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if
301	  available.
302
3032014-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
304
305	* options.mk: avoid :U so this isn't bmake dependent
306
3072014-02-09  Simon J. Gerraty  <sjg@bad.crufty.net>
308
309	* options.mk: cleanup and simplify semanitcs
310	  NO_* dominates all, if both WITH_* and WITHOUT_*
311	  are defined then result is DOMINATE_* which defaults to "no".
312	  Ie. WITHOUT_ normally wins.
313
3142013-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
315
316	* install-mk (MK_VERSION): bump version
317	* meta2deps.py: convert to print function for python3 compat.
318	  we also need to open files with mode 'r' rather than 'rb'
319	  otherwise we get bytes instead of strings.
320
3212013-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
322
323	* install-mk (MK_VERSION): bump version
324
325	* dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE
326	  apply the same filtering (M_dep_qual_fixes) when setting _machines
327	  as _build_dirs.
328	  Also fix the filtering of Makefile.depend files - for reporting
329	  what we are looking for (M_dep_qual_fixes can get confused by
330	  Makefile.depend)
331	  Add some more debug info.
332
3332013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
334
335	* gendirdeps.mk (_objtops): fix typo also
336	  while processing M2D_OBJROOTS to gather qualdir_list
337	  qualify $ql with loop iterator to ensure correct results.
338
3392013-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
340
341	* install-mk (MK_VERSION): 20130801
342	* libs.mk: update to match progs.mk
343
3442013-07-26  Simon J. Gerraty  <sjg@bad.crufty.net>
345
346	* install-mk (MK_VERSION): 20130726
347	  some updates from Juniper and FreeBSD
348	  o meta2deps.py: indicate file and line number when we hit parse
349	    errors
350	    also allow @file to provide huge list of .meta files.
351	* meta2deps.py: add try_parse() to cleanup the above.
352
3532013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
354
355	* install-mk (MK_VERSION): 20130716
356	* own.mk: add GPROG as an option
357	* prog.mk: honor MK_GPROF==yes
358
3592013-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
360
361	* install-mk (MK_VERSION): 20130505
362	* gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC
363	  for when $MACHINE isn't enough for objdir distinction.
364	  Bring meta2deps.sh closer to par with meta2deps.py.
365
3662013-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
367
368	* meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all'
369	  also if the target 'beforeinstall' exists, make it depend on
370	  .dirdep (incase it uses STAGE_INSTALL).
371
3722013-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
373
374	* install-mk (MK_VERSION): 20130401 ;-)
375	* meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as
376	  wrapper around install(1).
377	* options.mk (OPTION_PREFIX): Allow a prefix other than MK_
378
3792013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
380
381	* meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized.
382	* install-mk (MK_VERSION): bump version
383
3842013-03-21  Simon J. Gerraty  <sjg@bad.crufty.net>
385
386	* install-mk (MK_VERSION): bump version
387	* gendirdeps.mk: do not apply :tA to DPADD entries, since we lose
388	  any trailing /., rather apply :tA only when needed.
389	* gendirdeps.mk: better mimic meta2deps handling of .dirdep files.
390	* meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance
391	  consistently.
392	* dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC.
393
3942013-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
395
396	* gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT
397	  it is simpler to just not update when say building for "host"
398	  (where we know we apply filters to DIRDEPS), and using a
399	  non-machine qualified dependfile.
400
4012013-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
402
403	* dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR
404	  and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC
405	* gendirdeps.mk: ensure _objroot has trailing / if it needs it.
406	* meta2deps.py: if machine is "host", then also trim
407	  self.host_target from any OBJROOTS.
408
409
4102013-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
411
412	* gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine
413	  qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists
414	  but _DEPENDFILE does not, compare the new _DEPENDFILE against
415	  .MAKE.DEPENDFILE_DEFAULT and discard if the same.
416
4172013-03-08  Simon J. Gerraty  <sjg@bad.crufty.net>
418
419	* meta.stage.mk: use STAGE_TARGETS to control .ORDER
420	  and hook to all: via staging:
421
4222013-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
423
424	* sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT):
425	  use a separate variable for the default .MAKE.DEPENDFILE value
426	  so that it can be controlled independently of
427	  .MAKE.DEPENDFILE_PREFERENCE
428
429	* meta.stage.mk: throw error if cp fails etc.
430	  Stage*() return early if passed no args.
431	  .ORDER stage_*
432
4332013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
434
435	* install-mk (MK_VERSION): bump version
436	* gendirdeps.mk: handle multiple M2D_OBJROOTS better.
437
4382013-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
439
440	* install-mk (MK_VERSION): bump version to 20130210
441	* import latest dirdeps.mk, gendirdeps.mk and meta2deps.py
442	  from Juniper.
443	  o dirdeps.mk now fully supports TARGET_SPEC consisting of more
444	    than just MACHINE.
445	  o no longer use DEP_MACHINE from Makefile.depend* so remove it.
446
4472013-01-23  Simon J. Gerraty  <sjg@bad.crufty.net>
448
449	* install-mk (MK_VERSION): bump version to 20130123
450	* meta.stage.mk: add stage_links (hard links).
451	  if doing hard links, we add dest to link as well.
452	  Default the stage dir for [sym]links to STAGE_OBJTOP since
453	  these are typically specified as absolute paths.
454	  Add -m "mode" flag to StageFiles and StageAs.
455
4562012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
457
458	* install-mk (MK_VERSION): bump version to 20121111
459	* autoconf.mk: avoid meta mode seeing changed commands for config.status
460	* meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps
461	  in case we were found via .../mk
462	* sys.clean-env.mk: move it from examples, we and others use it
463	  "as is".
464	* FILES: add srctop.mk and options.mk
465	* own.mk: convert to using options.mk
466	  which is modeled after FreeBSD's handling of MK_*
467	  but more flexible.
468	  This allows MK_* for boolean knobs to not be confused
469	  with MK* which can be commands.
470
471	* examples/sys.clean-env.mk: add WITH[OUT]_ to
472	  MAKE_ENV_SAVE_PREFIX_LIST.
473	  Mention that HOME=/var/empty might be a good idea.
474
4752012-11-08  Simon J. Gerraty  <sjg@bad.crufty.net>
476
477	* sys.dependfile.mk: if not depend file exists, $MACHINE
478	  specific ones are supported but not the default,
479	  check if any exist and follow suit.
480
4812012-11-06  Simon J. Gerraty  <sjg@bad.crufty.net>
482
483	* install-mk (MK_VERSION): bump version to 20121106
484
4852012-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
486
487	* import latest dirdeps.mk and meta2deps.py from Juniper.
488	* progs.mk: add MAN and CXXFLAGS to PROG_VARS
489	  also add PROGS_TARGETS and pass on PROG_CXX if it seems
490	  appropriate.
491
4922012-11-04  Simon J. Gerraty  <sjg@bad.crufty.net>
493
494	* meta.stage.mk: update CLEANFILES
495	  remove redundant cp of .dirdep from STAGE_AS_SCRIPT.
496	* progs.mk: Add LDADD to PROG_VARS
497
4982012-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
499
500	* meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in
501	  _STAGED_DIRS so that these can be turned into filters for
502	  GENDIRDEPS_FILTER.
503
5042012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
505
506	* install-mk (MK_VERSION): bump version to 20121010
507	* meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing
508	target.dirdep matches .dirdep
509
5102012-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
511
512	* install-mk (MK_VERSION): bump version to 20120808
513	* import latest meta2deps.py from Juniper.
514
5152012-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
516
517	* install-mk (MK_VERSION): bump version to 20120711
518	* dep.mk: add explicit dependencies on SRCS after applying
519	  SRCS_DEP_FILTER
520	* meta.autodep.mk: add explicit dependencies on SRCS after
521	  applying SRCS_DEP_FILTER
522	* meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed.
523
5242012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
525
526	* install-mk (MK_VERSION): bump version to 20120626
527	* meta.sys.mk: ignore PYTHON if it does not exist
528	  compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable.
529	* meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any
530	  entries ending in .${MACHINE} to decide if qualified _dirdep is
531	  needed.
532	* gendirdeps.mk: only produce unqualified deps if no
533	  .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE}
534	* meta.subdir.mk: apply SUBDIRDEPS_FILTER
535
5362012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
537
538	* install-mk (MK_VERSION): bump version to 20120420
539	* add sys.dependfile.mk so we can experiment with
540	  .MAKE.DEPENDFILE_PREFERENCE
541	* meta.autodep.mk: _DEPENDFILE is precious!
542
5432012-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
544
545	* install-mk (MK_VERSION): bump version to 20120315
546	* install-new.mk: avoid being interrupted
547
5482012-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
549
550	* man.mk: MAN might have multiple values so be careful with exists().
551
5522012-01-19  Simon J. Gerraty  <sjg@bad.crufty.net>
553
554	* install-mk (MK_VERSION): bump version to 20120112
555	* fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled
556	  as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
557
5582011-12-03  Simon J. Gerraty  <sjg@bad.crufty.net>
559
560	* install-mk (MK_VERSION):  bump version to 20111201
561	* import dirdeps.mk from Juniper sjg@
562	  o more consistent handling of DEP_MACHINE, especially when
563	    dealing with an odd Makefile.depend, when normally using
564	    Makefile.depend.${MACHINE}
565
5662011-11-22  Simon J. Gerraty  <sjg@bad.crufty.net>
567
568	* install-mk (MK_VERSION): bump version to 20111122
569	* meta.autodep.mk: add some debug output, be more crisp about
570	  updating.  Use ${.ALLTARGETS:M*.o} as a clue for .depend
571
5722011-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
573
574	* install-mk (MK_VERSION): bump version to 20111111
575	  it's too cool to miss
576	* import meta* updates from Juniper sjg@
577	  o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are
578	    normally using Makefile.depend.${MACHINE}), handy for
579	    read-only manually maintained dependencies.
580	  o meta2deps.py add a clear 'ERROR:' token if an exception is raised.
581	  o gendirdeps.mk if ERROR: from meta2deps.py do not update
582	    anything.
583
5842011-10-30  Simon J. Gerraty  <sjg@bad.crufty.net>
585
586	* install-new.mk separate the cmp and copy logic to its own function.
587
5882011-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
589
590	* install-mk (MK_VERSION): bump version to 20111028
591	* sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto
592	* subdir.mk: ensure _SUBDIRUSE is provided
593	* meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk
594	* meta.subdir.mk: always allow for Makefile.depend
595
5962011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
597
598	* install-mk (MK_VERSION): bump version to 20111010
599	  o minor tweak to *dirdeps.mk from Juniper sjg@
600
6012011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
602
603	* install-mk (MK_VERSION): bump version to 20111001
604	  o add meta2deps.py from Juniper sjg@
605	  o tweak gendirdeps.mk to work with meta2deps.py when not
606	    cross-building
607	* autoconf.mk: add autoconf-input as a hook for regenerating
608	  AUTOCONF_INPUTS (configure).
609
6102011-08-24  Simon J. Gerraty  <sjg@bad.crufty.net>
611
612	* meta.autodep.mk: if we do not have OBJS, .depend isn't a useful
613	  trigger for updating Makefile.depend*
614
6152011-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
616
617	* install-mk (MK_VERSION): bump version to 20110808
618	* obj.mk: minor cleanup
619	* auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too.
620
6212011-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
622
623	* auto.obj.mk (.OBJDIR): throw an error if we cannot use the
624	  specified dir.
625
6262011-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
627
628	* meta.autodep.mk: if XMAKE_META_FILE is set
629	  the makefile uses a foreign make, and so dependencies
630	  can only be gathered from a clean tree build.
631
6322011-06-24  Simon J. Gerraty  <sjg@bad.crufty.net>
633
634	* install-mk (MK_VERSION): bump version to 20110622
635	* meta.autodep.mk: improve bootstraping
636
6372011-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
638
639	* yacc.mk: handle the corner case of .c being removed
640	  while .h remains.
641
6422011-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
643
644	* yacc.mk: do .y.h and .y.c separately
645
6462011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
647
648	* install-mk (MK_VERSION): bump version to 20110606
649	* don't store SRC_DIRDEPS in Makefile.depend* by default
650	  not everyone needs it.
651
6522011-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
653
654	* install-mk (MK_VERSION): bump version to 20110505
655	  first release including meta mode makefiles
656
6572011-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
658
659	* meta.stage.mk: add STAGE_AS_SETS and stage_as
660	  for things that need to be staged with different names.
661
6622011-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
663
664	* meta.stage.mk: add notion of STAGE_SETS
665	  so a makefile can stage to multiple dirs
666
6672011-04-03  Simon J. Gerraty  <sjg@bad.crufty.net>
668
669	* rst2htm.mk: convert rst to s5 (slides) or plain html depending
670	  on target name.
671
6722011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
673
674	* install-mk (MK_VERSION): bump version to 20110330
675
6762011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
677
678	* sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0
679	  can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest.
680	* sys.mk: re-define M_whence in terms of M_type.
681	  M_type is useful for checking if something is a builtin.
682
6832011-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
684
685	* meta.stage.mk: add stage_symlinks and leverage StageLinks for
686	  stage_libs
687
6882011-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
689
690	* dirdeps.mk: correct value for _depdir_files depends on
691	  .MAKE.DEPENDFILE
692	  Add our copyright - just to make it clear we have frobbed this
693	  quite a bit.
694	  DEP_MACHINE needs to be set to MACHINE each time, if using only
695	  Makefile.depend (cf. Makefile.depend.${MACHINE})
696
697	* meta.stage.mk: meta mode version of staging
698
699	* init.mk, final.mk: include local.*.mk to simplify customization
700
7012011-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
702
703	* auto.obj.mk: just because we are doing mk destroy, we should
704	  still set .OBJDIR correctly if it exists.
705
706	* install-mk (mksrc): do not exclude meta.sys.mk
707
7082011-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
709
710	* host-target.mk: set/export _HOST_ARCH etc separately,
711	  catch junk resulting from uname -p, so we can find sys/Linux.mk
712	  correctly.
713
7142011-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
715
716	* meta.sys.mk: throw an error if /dev/filemon is missing and we
717	  expected to be updating Makefile.depend*
718
7192011-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
720
721	* install-mk (MK_VERSION): bump version to 20110214
722	* meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES
723
7242010-09-25  Simon J. Gerraty  <sjg@bad.crufty.net>
725
726	* meta.sys.mk: not valid for older bmake
727
7282010-09-24  Simon J. Gerraty  <sjg@bad.crufty.net>
729
730	* install-mk (MK_VERSION): bump version to 20100919
731	include dirdeps.mk et al from Juniper Networks,
732	for meta mode - requires filemon(9).
733	* sys.mk, subdir.mk: Add hooks for meta mode.
734	we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk
735	to make turning it on/off simple.
736
7372010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
738
739	* install-mk (MK_VERSION): bump version to 20100616
740	* fix typo in sys.mk
741
7422010-06-12  Simon J. Gerraty  <sjg@bad.crufty.net>
743
744	* install-mk (MK_VERSION): bump version to 20100612
745	* lib.mk: remove duplicate addition to SOBJS
746
7472010-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
748
749	* sys.mk: Add a means of selectively turning on debug flags.
750	  Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg"
751	  will act as if we did make -dv if .CURDIR ends in lib/sjg
752	  DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at
753	  the start of sys.mk rather than the end.
754	  This only makes sense for leaf dirs, so we check that
755	  .MAKE.LEVEL > 0
756
7572010-06-09  Simon J. Gerraty  <sjg@bad.crufty.net>
758
759	* install-mk (MK_VERSION): bump version to 20100608
760	* sys.mk: include sys.env.mk later so it can use M_ListToSkip et al.
761	* examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606
762	  also make it easier for folk to tweak
763
7642010-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
765
766	* install-mk (MK_VERSION): bump version to 20100606
767	  do not install examples/*
768	* FILES: add examples/sys.clean-env.mk
769	* examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR
770	  this requires bmake-20100606 or later to work.
771
7722010-05-13  Simon J. Gerraty  <sjg@bad.crufty.net>
773
774	* sys.mk (M_tA): better simulate the result of :tA if not available.
775
7762010-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
777
778	* sys.mk: canonicalize MAKE_VERSION
779	  old versions reported bmake-<src-date> build-<build-date>
780	  whereas we only care about <src-date>
781
7822010-04-25  Simon J. Gerraty  <sjg@bad.crufty.net>
783
784	* install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored
785	* lib.mk: we only build the shared lib if SHLIB_FULLVERSION
786	  is !empty
787
7882010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
789
790	* dpadd.mk: use LDADD_* if defined.
791
7922010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
793
794	* install-mk (MK_VERSION): bump version to 20100420
795	* sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy
796	* autoconf.mk allow AUTO_AUTOCONF
797
7982010-04-19  Simon J. Gerraty  <sjg@bad.crufty.net>
799
800	* obj.mk: add objwarn to keep freebsd makefiles happy
801	* auto.obj.mk: ensure Mkdirs is available.
802	* FILES: add auto.dep.mk - a simpler version of autodep.mk
803	* dep.mk: auto.dep.mk does not do 'make depend' so ignore it if
804	  asked to do that.
805	  fix/simplify the tests for when to run mkdep.
806	* auto.dep.mk: add some explanation of how/what we do.
807	* autodep.mk: skip the .OPTIONAL frobbing of .depend
808	  bmake's FROM_DEPEND flag makes it redundant.
809
8102010-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
811
812	* install-mk (MK_VERSION): bump version to 20100404
813	* subdir.mk: protect from multiple inclusion using _SUBDIRUSE.
814	* obj.mk: protect from multiple inclusion even as bsd.obj.mk
815	Also create a target _SUBDIRUSE so that we can  be used without
816	subdir.mk
817
8182010-04-12  Simon J. Gerraty  <sjg@bad.crufty.net>
819
820	* dep.mk: use <> when .including so can override.
821
8222010-01-11  Simon J. Gerraty  <sjg@bad.crufty.net>
823
824	* lib.mk (SHLIB_LINKS): ensure a string comparison.
825
8262010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
827
828	* install-mk (MK_VERSION): bump version to 20100102
829	* own.mk: ensure PRINTOBJDIR works
830	* autoconf.mk: pass on CONFIGURE_ARGS
831	* init.mk: handle COPTS.${.IMPSRC:T} etc.
832	* lib.mk: allow sys.mk to control SHLIB_FULLVERSION
833	  fix handling of symlinks for darwin
834	* libnames.mk: add DSHLIBEXT for libs which only exist as shared.
835	* man.mk: suppress chown when not root.
836	* rst2htm.mk: allow srcs from multiple locations.
837	* sys.mk: M_whence, stop after 1st line of output.
838	* sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT
839	* sys/SunOS.mk: we need to export PATH
840
8412009-12-23  Simon J. Gerraty  <sjg@void.crufty.net>
842
843	* install-mk (MK_VERSION): bump version
844	  include rst2htm.mk
845
8462009-12-17  Simon J. Gerraty  <sjg@void.crufty.net>
847
848	* sys.mk,libnames.mk add .-include <local.*>
849	  this allows local customization without the need to edit the
850	  distributed files.
851
8522009-12-14  Simon J. Gerraty  <sjg@void.crufty.net>
853
854	* dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up
855	  older versions already installed.
856
8572009-12-13  Simon J. Gerraty  <sjg@void.crufty.net>
858
859	* stage.mk (.stage-install): generalize lib.mk's .libinstall
860	* rules.mk rules for generic Makefile.
861	* inc.mk install for includes.
862
8632009-12-11  Simon J. Gerraty  <sjg@void.crufty.net>
864
865	* sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check
866	  this, so provide it if using native make.
867
8682009-12-10  Simon J. Gerraty  <sjg@void.crufty.net>
869
870	* FILES: move all the platform *.sys.mk files to sys/*.mk
871	* Rename Generic.sys.mk to sys.mk - we always want it.
872
8732009-11-17  Simon J. Gerraty  <sjg@void.crufty.net>
874
875	* install-mk (MK_VERSION): bump version
876	* host-target.mk: only export the expensive stuff
877	* Generic.sys.mk (sys_mk): for SunOS we need to look for
878	  ${HOST_OS}.${HOST_OSMAJOR} too!
879
8802009-11-07  Simon J. Gerraty  <sjg@void.crufty.net>
881
882	* install-mk (MK_VERSION): bump version
883	* lib.mk: if sys.mk doesn't give us an lorder, don't use it.
884	  based on patch from Greg Olszewski.
885	* Generic.sys.mk: if we have nothing to work with
886	set LORDER etc only if we can find it.
887
8882009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
889
890	* install-mk (MK_VERSION): bump version
891	* man.mk: cleanman: remove CLEANMAN if defined.
892
8932009-09-04  Simon J. Gerraty  <sjg@void.crufty.net>
894
895	* SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk
896
8972009-07-17  Simon J. Gerraty  <sjg@void.crufty.net>
898
899	* install-mk (MK_VERSION): bump version
900	include auto.obj.mk
901
902
9032009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
904
905	* prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail.
906
9072008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
908
909	* install-mk (MK_VERSION): bump version
910	man.mk: ensure we generate *.cat1 etc in .
911
9122008-07-16  Simon J. Gerraty  <sjg@void.crufty.net>
913
914	* install-mk (MK_VERSION): bump version
915	add prlist.mk
916
9172007-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
918
919	* Generic.sys.mk: Allow os specific sys.mk to be in a
920	subdir of ${.PARSEDIR}
921
9222007-11-22  Simon J. Gerraty  <sjg@void.crufty.net>
923
924	* install-mk (MK_VERSION): bump version
925	* general cleanup
926	* dpadd.mk introduce DPMAGIC_LIBS_*
927
9282007-04-30  Simon J. Gerraty  <sjg@void.crufty.net>
929
930	* install-mk (MK_VERSION): bump version
931
932	* libs.mk, progs.mk, autodep.mk: allow for per lib/prog
933	depend files and ensure clean is called for each lib/prog.
934
9352007-03-27  Simon J. Gerraty  <sjg@void.crufty.net>
936
937	* autodep.mk (.depend): delete lines that do not start with
938	space and do not contain ':'
939
9402007-02-16  Simon J. Gerraty  <sjg@void.crufty.net>
941
942	* autodep.mk (.depend): gcc may wrap lines if pathnames are long
943	so make sure the transform for .OPTIONAL copes.
944
9452007-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
946
947	* install-mk (MK_VERSION): bump version
948
949	* own.mk: make sure RM and LN are defined.
950
951	* obj.mk: fix a typo, and objlink target.
952
9532006-12-30  Simon J. Gerraty  <sjg@void.crufty.net>
954
955	* install-mk (MK_VERSION): bump version
956	* added libs.mk - analogous to progs.mk
957	  make both of them always inlcude {lib,prog}.mk
958
9592006-12-28  Simon J. Gerraty  <sjg@void.crufty.net>
960
961	* progs.mk: add a means of building multiple apps in one dir.
962
9632006-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
964
965	* install-mk (MK_VERSION): bump version to 20061126
966
967	* warnings.mk: detect invalid WARNINGS_SET
968
969	* warnings.mk: use ${.TARGET:T:R}.o when looking for target
970	specific warnings.
971
972	* For .cc sources, turn off warnings that g++ vomits on.
973
9742006-11-08  Simon J. Gerraty  <sjg@void.crufty.net>
975
976	* own.mk: if __initialized__ target doesn't exist and we are
977	FreeBSD we got here directly from sys.mk
978
9792006-11-06  Simon J. Gerraty  <sjg@void.crufty.net>
980
981	* install-mk (MK_VERSION): bump version to 20061106
982	add scripts.mk
983
9842006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
985
986	* install-mk (MK_VERSION): bump version to 20060318
987
988	* autodep.mk: avoid := when modifying OBJS into __dependsrcs
989
9902006-03-02  Simon J. Gerraty  <sjg@void.crufty.net>
991
992	* install-mk (MK_VERSION): bump version to 20060302
993	* autodep.mk: use -MF et al to help gcc+ccache DTRT.
994
9952006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
996
997	* install-mk (MK_VERSION): bump version to 20060301
998	* autodep.mk (.depend):
999	if MAKE_VERSION is newer than  20050530 we can make .END depend on
1000	.depend and make .depend depend on __depsrcs that exist.
1001	* dpadd.mk: add SRC_PATHADD
1002
10032005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
1004
1005	* install-mk (MK_VERSION): bump version to 20051104
1006	* prog.mk: remove all the LIBC?= junk, use
1007	.-include libnames.mk instead (none by default).
1008	also if USE_DPADD_MK is set, include that.
1009
10102005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
1011
1012	* install-mk (MK_VERSION): bump version to 20051001
1013	Add UnixWare.sys.mk from Klaus Heinz.
1014
10152005-04-05  Simon J. Gerraty  <sjg@void.crufty.net>
1016
1017	* install-mk: always install *.sys.mk and if need be symlink one
1018	to sys.mk
1019
10202005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
1021
1022	* subdir.mk, own.mk: use .MAKE rather than MAKE
1023
10242004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
1025
1026	* own.mk: don't use NetBSD's _SRC_TOP_ it can
1027	cause confusion.  Also don't take just 'mk' as a
1028	srctop indicator.
1029
10302004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
1031
1032	* warnings.mk: overhauled, now very powerful.
1033
10342004-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
1035
1036	* Generic.sys.mk: need to use ${.PARSEDIR} with exists().
1037
10382004-02-01  Simon J. Gerraty  <sjg@void.crufty.net>
1039
1040	* install-mk (MK_VERSION): bump version to 20040201
1041	* extract HOST_TARGET stuff to host-target.mk so own.mk and
1042	Generic.sys.mk can share.
1043	* fix typo in autodep.mk _SUBDIRUSE not _SUBDIR.
1044
10452003-09-30  Simon J. Gerraty  <sjg@void.crufty.net>
1046
1047	* install-mk (MK_VERSION): 20030930
1048	* rename generic.sys.mk to Generic.sys.mk
1049	so that it does not get installed (unless being used as sys.mk)
1050	* set OS and ROOT_GROUP for those that we know the value.
1051	for others (eg. Generic.sys.mk) wrap the != in an .ifndef so
1052	we don't do it again for each sub-make.
1053
10542003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1055
1056	* install-mk (MK_VERSION): 20030928
1057	Add some extra *.sys.mk from bootstrap-pkgsrc
1058	some of these likely still need work.
1059	Make everything default to root:wheel ownership,
1060	sys.mk can set ROOT_GROUP accordingly.
1061
10622003-08-07  Simon J. Gerraty  <sjg@void.crufty.net>
1063
1064	* install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR
1065	not the portable ones.
1066
10672003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1068
1069	* install-mk: add ability to use cp -f when updating
1070	destination .mk files.  Also now possible to play games with
1071	FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk
1072	into dest - not recommended unless you seriously want to.
1073
10742003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1075
1076	* own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc
1077	for semi-compatability with NetBSD.
1078
10792003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1080
1081	* install-mk: add a version indicator
1082
10832003-07-22  Simon J. Gerraty  <sjg@void.crufty.net>
1084
1085	* prog.mk: don't try and use ${LIBCRT0} if its /dev/null
1086
1087	* install-mk: Allow FORCE_SYS_MK to come from env
1088
1089
1090
1091