ChangeLog revision 293174
12015-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* install-mk (MK_VERSION): 20151212
4	* auto.obj.mk: do not require MAKEOBJDIRPREFIX to exist.
5	  only apply :tA to __objdir when comparing to .OBJDIR
6
72015-11-14  Simon J. Gerraty  <sjg@bad.crufty.net>
8
9	* install-mk (MK_VERSION): 20151111
10
11	* meta.sys.mk: include sys.dependfile.mk
12
13	* sys.mk (OPTIONS_DEFAULT_NO): use options.mk
14	  to set MK_AUTO_OBJ and MK_DIRDEPS_BUILD
15	  include local.sys.env.mk early
16	  include local.sys.mk later
17	
18	* own.mk (OPTIONS_DEFAULT_NO): AUTO_OBJ etc moved to sys.mk
19
202015-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
21
22	* meta.sys.mk (META_COOKIE_TOUCH):
23	  add ${META_COOKIE_TOUCH} to the end of scripts to touch cookie
24
25	* meta.stage.mk: stage_libs should ignore SYMLINKS.
26
272015-10-23  Simon J. Gerraty  <sjg@bad.crufty.net>
28
29	* install-mk (MK_VERSION): 20151022
30
31	* sys.mk: BSD/OS does not have 'type' as a shell builtin.
32
332015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
34
35	* install-mk (MK_VERSION): 20151020
36	
37	* dirdeps.mk: Add logic for 
38	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
39
402015-10-14  Simon J. Gerraty  <sjg@bad.crufty.net>
41
42	* install-mk (MK_VERSION): 20151010
43
442015-10-02  Simon J. Gerraty  <sjg@bad.crufty.net>
45
46	* meta.stage.mk: use staging: ${STAGE_TARGETS:...
47	  to have stage_lins run last in non-jobs mode.
48	  Use .ORDER only for jobs mode.
49
502015-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
51
52	* rst2htm.mk: allow for per target flags etc.
53
542015-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
55
56	* install-mk (MK_VERSION): 20150901
57
58	* doc.mk: create dir if needed use DOC_INSTALL_OWN
59
602015-06-15  Simon J. Gerraty  <sjg@bad.crufty.net>
61
62	* install-mk (MK_VERSION): 20150615
63	
64	* auto.obj.mk: allow use of MAKEOBJDIRPREFIX too.
65	  Follow make's normal precedence rules.
66	
67	* gendirdeps.mk: allow customization of the header.
68	  eg. for FreeBSD: 
69	  GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}';
70
71	* meta.autodep.mk: ignore dirdeps.cache*
72	
73	* meta.stage.mk: when bootstrapping options it can be handy to
74	  throw warnings rather than errors for staging conflicts.
75
76	* meta.sys.mk: include local.meta.sys.mk for customization
77
782015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
79
80	* install-mk (MK_VERSION): 20150606
81	
82	* dirdeps.mk: don't rely on manually maintained Makefile.depend
83	  to set DEP_RELDIR and reset DIRDEPS.
84	  By setting DEP_RELDIR ourselves we can skip :tA
85	
86	* gendirdeps.mk: skip setting DEP_RELDIR.
87
882015-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
89
90	* dirdeps.mk: avoid wildcards like make(bootstrap*)
91
922015-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
93
94	* install-mk (MK_VERSION): 20150520
95
96	* dirdeps.mk: when we are building dirdeps cache file we *want*
97	  meta_oodate to look at all the Makefile.depend files, so
98	  set .MAKE.DEPENDFILE to something that won't match.
99
100	* meta.stage.mk: for STAGE_AS_* basename of file may not be unique
101	  so first use absolute path as key.
102	  Also skip staging at level 0. 
103
1042015-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
105
106	* install-mk (MK_VERSION): 20150430
107	
108	* dirdeps.mk: fix _count_dirdeps for non-cache case.
109
1102015-04-16  Simon J. Gerraty  <sjg@bad.crufty.net>
111
112	* install-mk (MK_VERSION): 20150411
113	  bump version
114	
115	* own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES.
116	  it is here mainly for documentation purposes, since
117	  if using auto.obj.mk it is better done via sys.mk
118
1192015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
120
121	* install-mk (MK_VERSION): 20150401
122	
123	* meta2deps.sh: support @list
124	
125	* meta2deps.py: updates from Juniper
126	  o add EXCLUDES 
127	  o skip bogus input files.
128	  o treat 'M' and 'L' as both an 'R' and a 'W'
129
1302015-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
131
132	* install-mk (MK_VERSION): 20150303
133	
134	* dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache
135	  which is built via sub-make so we have a .meta file to tell if
136	  it is out-of-date. 
137	  The dirdeps-cache contains the same dependency rules that we
138	  normaly construct on the fly.
139	  This adds a few seconds overhead when the cache is out of date,
140	  but for a large target, the savings can be significant (10-20min).
141
1422014-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>
143
144	* install-mk (MK_VERSION): 20141118
145	
146	* meta.stage.mk: add stale_staged
147	
148	* dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked
149	  only useful under very rare conditions such as
150	  FreeBSD's make universe.
151
152	* auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto
153	
1542014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
155
156	* install-mk (MK_VERSION): 20141111
157
158	* mkopt.sh: use consistent semantics for _mk_opt and _mk_opts
159
1602014-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
161
162	* FILES: include mkopt.sh which allows handling options in shell
163	  scripts in a manner compatible with options.mk
164
1652014-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
166
167	* meta.stage.mk: ensure only _STAGED_DIRS under objroot are used
168	  for GENDIRDEPS_FILTER to avoid surprises.
169
1702014-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
171	
172	* dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by
173	  the time it is applied to __depdirs they have.
174	
175	* dirdeps.mk fix filtering of _machines since M_dep_qual_fixes
176	  expects patterns like *.${MACHINE}
177	
178	* cython.mk (pyprefix?): use pyprefix to find python bits
179	  since prefix might be something else (where we install our
180	  stuff)
181	
1822014-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
183
184	* install-mk (MK_VERSION): 20140911
185	
186	* dirdeps.mk: add bootstrap target to simplify adding support for
187	  new MACHINE.
188	
1892014-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
190
191	* gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and
192	  GENDIRDEPS_FILTER_VARS to make it easier to produce sharable
193	  Makefile.depend files.
194
1952014-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
196
197	* install-mk (MK_VERSION): 20140828
198	
199	* cython.mk: capture logic for building python extension modules
200	  with Cython.
201
2022014-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
203
204	* meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant
205
2062014-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
207
208	* install-mk (MK_VERSION): 20140801
209
210	* dep.mk: use explicit MKDEP_MK rather than overload MKDEP to
211	identify the autodep.mk variant. 
212	
213	* sys.dependfile.mk: delete .MAKE.DEPENDFILE if its
214	initial value does not match .MAKE.DEPENDFILE_PREFIX
215
216	* meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS
217
2182014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
219
220	* install-mk (MK_VERSION): 20140522
221
222	* lib.mk: use CC to link shlib for linux too
223	  patch from Brendan MacDonell
224
2252014-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
226
227	* meta.autodep.mk: add _reldir_{finish,failed} for gathering stats
228	  if WITH_META_STATS is defined.
229
2302014-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
231
232	* dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS)
233	  to supress dirdeps outside of .CURDIR.
234
2352014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
236
237	* Fix spelling errors - patch from Pedro Giffuni
238
2392014-03-14  Simon J. Gerraty  <sjg@bad.crufty.net>
240
241	* install-mk (MK_VERSION): 20140314
242
243	* dirdeps.mk (beforedirdeps): a handy hook
244
245	* dirdeps.mk (DIRDEP_MAKE): allow the actual command we run
246	  to visit leaf dirs to be intercepted (eg. for distributed
247	  build).
248
249	* dirdeps.mk (__depdirs): ensure // don't sneak in
250	
251	* gendirdeps.mk (DIRDEPS): ensure // don't sneak in
252
253
2542014-02-21  Simon J. Gerraty  <sjg@bad.crufty.net>
255
256	* rst2htm.mk (RST2PDF): add support for rst2pdf
257
2582014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
259
260	* install-mk (MK_VERSION): bump version
261	* dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if
262	  available.
263
2642014-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
265
266	* options.mk: avoid :U so this isn't bmake dependent
267
2682014-02-09  Simon J. Gerraty  <sjg@bad.crufty.net>
269
270	* options.mk: cleanup and simplify semanitcs 
271	  NO_* dominates all, if both WITH_* and WITHOUT_*
272	  are defined then result is DOMINATE_* which defaults to "no".
273	  Ie. WITHOUT_ normally wins.
274
2752013-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
276
277	* install-mk (MK_VERSION): bump version
278	* meta2deps.py: convert to print function for python3 compat.
279	  we also need to open files with mode 'r' rather than 'rb'
280	  otherwise we get bytes instead of strings.
281
2822013-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
283
284	* install-mk (MK_VERSION): bump version
285
286	* dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE
287	  apply the same filtering (M_dep_qual_fixes) when setting _machines
288	  as _build_dirs.
289	  Also fix the filtering of Makefile.depend files - for reporting
290	  what we are looking for (M_dep_qual_fixes can get confused by
291	  Makefile.depend) 
292	  Add some more debug info.
293
2942013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
295
296	* gendirdeps.mk (_objtops): fix typo also
297	  while processing M2D_OBJROOTS to gather qualdir_list
298	  qualify $ql with loop iterator to ensure correct results.
299
3002013-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
301
302	* install-mk (MK_VERSION): 20130801
303	* libs.mk: update to match progs.mk
304	
3052013-07-26  Simon J. Gerraty  <sjg@bad.crufty.net>
306
307	* install-mk (MK_VERSION): 20130726
308	  some updates from Juniper and FreeBSD
309	  o meta2deps.py: indicate file and line number when we hit parse
310	    errors
311	    also allow @file to provide huge list of .meta files.
312	* meta2deps.py: add try_parse() to cleanup the above.
313	
3142013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
315
316	* install-mk (MK_VERSION): 20130716
317	* own.mk: add GPROG as an option
318	* prog.mk: honor MK_GPROF==yes
319	
3202013-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
321
322	* install-mk (MK_VERSION): 20130505
323	* gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC
324	  for when $MACHINE isn't enough for objdir distinction.
325	  Bring meta2deps.sh closer to par with meta2deps.py.
326
3272013-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
328
329	* meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all'
330	  also if the target 'beforeinstall' exists, make it depend on
331	  .dirdep (incase it uses STAGE_INSTALL).
332
3332013-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
334
335	* install-mk (MK_VERSION): 20130401 ;-)
336	* meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as
337	  wrapper around install(1).
338	* options.mk (OPTION_PREFIX): Allow a prefix other than MK_
339
3402013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
341
342	* meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized.
343	* install-mk (MK_VERSION): bump version
344
3452013-03-21  Simon J. Gerraty  <sjg@bad.crufty.net>
346
347	* install-mk (MK_VERSION): bump version
348	* gendirdeps.mk: do not apply :tA to DPADD entries, since we lose
349	  any trailing /., rather apply :tA only when needed.
350	* gendirdeps.mk: better mimic meta2deps handling of .dirdep files.
351	* meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance
352	  consistently.
353	* dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC.
354	
3552013-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
356
357	* gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT
358	  it is simpler to just not update when say building for "host"
359	  (where we know we apply filters to DIRDEPS), and using a
360	  non-machine qualified dependfile.
361
3622013-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
363
364	* dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR
365	  and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC
366	* gendirdeps.mk: ensure _objroot has trailing / if it needs it.
367	* meta2deps.py: if machine is "host", then also trim
368	  self.host_target from any OBJROOTS.
369	
370
3712013-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
372
373	* gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine
374	  qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists
375	  but _DEPENDFILE does not, compare the new _DEPENDFILE against
376	  .MAKE.DEPENDFILE_DEFAULT and discard if the same.
377
3782013-03-08  Simon J. Gerraty  <sjg@bad.crufty.net>
379
380	* meta.stage.mk: use STAGE_TARGETS to control .ORDER
381	  and hook to all: via staging:
382
3832013-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
384
385	* sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT): 
386	  use a separate variable for the default .MAKE.DEPENDFILE value
387	  so that it can be controlled independently of
388	  .MAKE.DEPENDFILE_PREFERENCE
389
390	* meta.stage.mk: throw error if cp fails etc.
391	  Stage*() return early if passed no args.
392	  .ORDER stage_*
393
3942013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
395
396	* install-mk (MK_VERSION): bump version
397	* gendirdeps.mk: handle multiple M2D_OBJROOTS better.
398
3992013-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
400
401	* install-mk (MK_VERSION): bump version to 20130210
402	* import latest dirdeps.mk, gendirdeps.mk and meta2deps.py 
403	  from Juniper. 
404	  o dirdeps.mk now fully supports TARGET_SPEC consisting of more
405	    than just MACHINE.
406	  o no longer use DEP_MACHINE from Makefile.depend* so remove it.
407	
4082013-01-23  Simon J. Gerraty  <sjg@bad.crufty.net>
409
410	* install-mk (MK_VERSION): bump version to 20130123
411	* meta.stage.mk: add stage_links (hard links).
412	  if doing hard links, we add dest to link as well.
413	  Default the stage dir for [sym]links to STAGE_OBJTOP since
414	  these are typically specified as absolute paths.
415	  Add -m "mode" flag to StageFiles and StageAs.
416
4172012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
418
419	* install-mk (MK_VERSION): bump version to 20121111
420	* autoconf.mk: avoid meta mode seeing changed commands for config.status
421	* meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps
422	  in case we were found via .../mk
423	* sys.clean-env.mk: move it from examples, we and others use it
424	  "as is".
425	* FILES: add srctop.mk and options.mk
426	* own.mk: convert to using options.mk
427	  which is modeled after FreeBSD's handling of MK_*
428	  but more flexible.
429	  This allows MK_* for boolean knobs to not be confused
430	  with MK* which can be commands.
431
432	* examples/sys.clean-env.mk: add WITH[OUT]_ to
433	  MAKE_ENV_SAVE_PREFIX_LIST.
434	  Mention that HOME=/var/empty might be a good idea.
435
4362012-11-08  Simon J. Gerraty  <sjg@bad.crufty.net>
437
438	* sys.dependfile.mk: if not depend file exists, $MACHINE
439	  specific ones are supported but not the default,
440	  check if any exist and follow suit.
441
4422012-11-06  Simon J. Gerraty  <sjg@bad.crufty.net>
443
444	* install-mk (MK_VERSION): bump version to 20121106
445
4462012-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
447
448	* import latest dirdeps.mk and meta2deps.py from Juniper.
449	* progs.mk: add MAN and CXXFLAGS to PROG_VARS
450	  also add PROGS_TARGETS and pass on PROG_CXX if it seems
451	  appropriate.
452	
4532012-11-04  Simon J. Gerraty  <sjg@bad.crufty.net>
454
455	* meta.stage.mk: update CLEANFILES
456	  remove redundant cp of .dirdep from STAGE_AS_SCRIPT.
457	* progs.mk: Add LDADD to PROG_VARS
458	
4592012-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
460
461	* meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in
462	  _STAGED_DIRS so that these can be turned into filters for
463	  GENDIRDEPS_FILTER.
464
4652012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
466
467	* install-mk (MK_VERSION): bump version to 20121010
468	* meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing
469	target.dirdep matches .dirdep
470
4712012-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
472
473	* install-mk (MK_VERSION): bump version to 20120808
474	* import latest meta2deps.py from Juniper.
475
4762012-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
477
478	* install-mk (MK_VERSION): bump version to 20120711
479	* dep.mk: add explicit dependencies on SRCS after applying
480	  SRCS_DEP_FILTER 
481	* meta.autodep.mk: add explicit dependencies on SRCS after
482	  applying SRCS_DEP_FILTER
483	* meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed.
484	
4852012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
486
487	* install-mk (MK_VERSION): bump version to 20120626
488	* meta.sys.mk: ignore PYTHON if it does not exist
489	  compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable.
490	* meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any
491	  entries ending in .${MACHINE} to decide if qualified _dirdep is
492	  needed.
493	* gendirdeps.mk: only produce unqualified deps if no
494	  .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE}
495	* meta.subdir.mk: apply SUBDIRDEPS_FILTER
496	
4972012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
498
499	* install-mk (MK_VERSION): bump version to 20120420
500	* add sys.dependfile.mk so we can experiment with
501	  .MAKE.DEPENDFILE_PREFERENCE 
502	* meta.autodep.mk: _DEPENDFILE is precious!
503	
5042012-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
505
506	* install-mk (MK_VERSION): bump version to 20120315
507	* install-new.mk: avoid being interrupted
508
5092012-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
510
511	* man.mk: MAN might have multiple values so be careful with exists().
512
5132012-01-19  Simon J. Gerraty  <sjg@bad.crufty.net>
514
515	* install-mk (MK_VERSION): bump version to 20120112
516	* fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled
517	  as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
518
5192011-12-03  Simon J. Gerraty  <sjg@bad.crufty.net>
520
521	* install-mk (MK_VERSION):  bump version to 20111201
522	* import dirdeps.mk from Juniper sjg@
523	  o more consistent handling of DEP_MACHINE, especially when
524	    dealing with an odd Makefile.depend, when normally using
525	    Makefile.depend.${MACHINE}
526
5272011-11-22  Simon J. Gerraty  <sjg@bad.crufty.net>
528
529	* install-mk (MK_VERSION): bump version to 20111122
530	* meta.autodep.mk: add some debug output, be more crisp about
531	  updating.  Use ${.ALLTARGETS:M*.o} as a clue for .depend
532
5332011-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
534
535	* install-mk (MK_VERSION): bump version to 20111111
536	  it's too cool to miss
537	* import meta* updates from Juniper sjg@
538	  o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are
539	    normally using Makefile.depend.${MACHINE}), handy for
540	    read-only manually maintained dependencies.
541	  o meta2deps.py add a clear 'ERROR:' token if an exception is raised.
542	  o gendirdeps.mk if ERROR: from meta2deps.py do not update
543	    anything.
544	
5452011-10-30  Simon J. Gerraty  <sjg@bad.crufty.net>
546
547	* install-new.mk separate the cmp and copy logic to its own function.
548	
5492011-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
550
551	* install-mk (MK_VERSION): bump version to 20111028
552	* sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto
553	* subdir.mk: ensure _SUBDIRUSE is provided
554	* meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk 
555	* meta.subdir.mk: always allow for Makefile.depend
556	
5572011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
558
559	* install-mk (MK_VERSION): bump version to 20111010
560	  o minor tweak to *dirdeps.mk from Juniper sjg@
561	
5622011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
563
564	* install-mk (MK_VERSION): bump version to 20111001
565	  o add meta2deps.py from Juniper sjg@
566	  o tweak gendirdeps.mk to work with meta2deps.py when not
567	    cross-building 
568	* autoconf.mk: add autoconf-input as a hook for regenerating 
569	  AUTOCONF_INPUTS (configure).
570
5712011-08-24  Simon J. Gerraty  <sjg@bad.crufty.net>
572
573	* meta.autodep.mk: if we do not have OBJS, .depend isn't a useful
574	  trigger for updating Makefile.depend* 
575
5762011-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
577
578	* install-mk (MK_VERSION): bump version to 20110808
579	* obj.mk: minor cleanup
580	* auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too.
581
5822011-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
583
584	* auto.obj.mk (.OBJDIR): throw an error if we cannot use the
585	  specified dir.
586
5872011-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
588
589	* meta.autodep.mk: if XMAKE_META_FILE is set
590	  the makefile uses a foreign make, and so dependencies
591	  can only be gathered from a clean tree build.
592
5932011-06-24  Simon J. Gerraty  <sjg@bad.crufty.net>
594
595	* install-mk (MK_VERSION): bump version to 20110622
596	* meta.autodep.mk: improve bootstraping
597
5982011-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
599
600	* yacc.mk: handle the corner case of .c being removed
601	  while .h remains.
602
6032011-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
604
605	* yacc.mk: do .y.h and .y.c separately
606
6072011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
608
609	* install-mk (MK_VERSION): bump version to 20110606
610	* don't store SRC_DIRDEPS in Makefile.depend* by default
611	  not everyone needs it.
612
6132011-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
614
615	* install-mk (MK_VERSION): bump version to 20110505
616	  first release including meta mode makefiles
617
6182011-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
619
620	* meta.stage.mk: add STAGE_AS_SETS and stage_as
621	  for things that need to be staged with different names.
622
6232011-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
624
625	* meta.stage.mk: add notion of STAGE_SETS
626	  so a makefile can stage to multiple dirs
627
6282011-04-03  Simon J. Gerraty  <sjg@bad.crufty.net>
629
630	* rst2htm.mk: convert rst to s5 (slides) or plain html depending
631	  on target name. 
632
6332011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
634
635	* install-mk (MK_VERSION): bump version to 20110330
636
6372011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
638
639	* sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0
640	  can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest.
641	* sys.mk: re-define M_whence in terms of M_type.
642	  M_type is useful for checking if something is a builtin.
643	
6442011-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
645
646	* meta.stage.mk: add stage_symlinks and leverage StageLinks for
647	  stage_libs 
648
6492011-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
650
651	* dirdeps.mk: correct value for _depdir_files depends on
652	  .MAKE.DEPENDFILE 
653	  Add our copyright - just to make it clear we have frobbed this
654	  quite a bit.
655	  DEP_MACHINE needs to be set to MACHINE each time, if using only
656	  Makefile.depend (cf. Makefile.depend.${MACHINE})
657
658	* meta.stage.mk: meta mode version of staging
659
660	* init.mk, final.mk: include local.*.mk to simplify customization
661
6622011-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
663
664	* auto.obj.mk: just because we are doing mk destroy, we should
665	  still set .OBJDIR correctly if it exists.
666
667	* install-mk (mksrc): do not exclude meta.sys.mk
668
6692011-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
670
671	* host-target.mk: set/export _HOST_ARCH etc separately,
672	  catch junk resulting from uname -p, so we can find sys/Linux.mk
673	  correctly.
674
6752011-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
676
677	* meta.sys.mk: throw an error if /dev/filemon is missing and we
678	  expected to be updating Makefile.depend*
679
6802011-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
681
682	* install-mk (MK_VERSION): bump version to 20110214
683	* meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES
684
6852010-09-25  Simon J. Gerraty  <sjg@bad.crufty.net>
686
687	* meta.sys.mk: not valid for older bmake
688
6892010-09-24  Simon J. Gerraty  <sjg@bad.crufty.net>
690
691	* install-mk (MK_VERSION): bump version to 20100919
692	include dirdeps.mk et al from Juniper Networks, 
693	for meta mode - requires filemon(9).
694	* sys.mk, subdir.mk: Add hooks for meta mode.
695	we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk
696	to make turning it on/off simple.
697
6982010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
699
700	* install-mk (MK_VERSION): bump version to 20100616
701	* fix typo in sys.mk
702
7032010-06-12  Simon J. Gerraty  <sjg@bad.crufty.net>
704
705	* install-mk (MK_VERSION): bump version to 20100612
706	* lib.mk: remove duplicate addition to SOBJS
707
7082010-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
709
710	* sys.mk: Add a means of selectively turning on debug flags.
711	  Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg"
712	  will act as if we did make -dv if .CURDIR ends in lib/sjg
713	  DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at
714	  the start of sys.mk rather than the end.
715	  This only makes sense for leaf dirs, so we check that
716	  .MAKE.LEVEL > 0
717
7182010-06-09  Simon J. Gerraty  <sjg@bad.crufty.net>
719
720	* install-mk (MK_VERSION): bump version to 20100608
721	* sys.mk: include sys.env.mk later so it can use M_ListToSkip et al.
722	* examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606
723	  also make it easier for folk to tweak
724
7252010-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
726
727	* install-mk (MK_VERSION): bump version to 20100606
728	  do not install examples/*
729	* FILES: add examples/sys.clean-env.mk
730	* examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR
731	  this requires bmake-20100606 or later to work.
732
7332010-05-13  Simon J. Gerraty  <sjg@bad.crufty.net>
734
735	* sys.mk (M_tA): better simulate the result of :tA if not available.
736
7372010-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
738
739	* sys.mk: canonicalize MAKE_VERSION
740	  old versions reported bmake-<src-date> build-<build-date>
741	  whereas we only care about <src-date>
742
7432010-04-25  Simon J. Gerraty  <sjg@bad.crufty.net>
744
745	* install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored
746	* lib.mk: we only build the shared lib if SHLIB_FULLVERSION
747	  is !empty
748
7492010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
750
751	* dpadd.mk: use LDADD_* if defined.
752
7532010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
754
755	* install-mk (MK_VERSION): bump version to 20100420
756	* sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy
757	* autoconf.mk allow AUTO_AUTOCONF
758	
7592010-04-19  Simon J. Gerraty  <sjg@bad.crufty.net>
760
761	* obj.mk: add objwarn to keep freebsd makefiles happy
762	* auto.obj.mk: ensure Mkdirs is available.
763	* FILES: add auto.dep.mk - a simpler version of autodep.mk
764	* dep.mk: auto.dep.mk does not do 'make depend' so ignore it if
765	  asked to do that.
766	  fix/simplify the tests for when to run mkdep.
767	* auto.dep.mk: add some explanation of how/what we do.
768	* autodep.mk: skip the .OPTIONAL frobbing of .depend
769	  bmake's FROM_DEPEND flag makes it redundant.
770	
7712010-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
772
773	* install-mk (MK_VERSION): bump version to 20100404
774	* subdir.mk: protect from multiple inclusion using _SUBDIRUSE.
775	* obj.mk: protect from multiple inclusion even as bsd.obj.mk
776	Also create a target _SUBDIRUSE so that we can  be used without
777	subdir.mk
778
7792010-04-12  Simon J. Gerraty  <sjg@bad.crufty.net>
780
781	* dep.mk: use <> when .including so can override.
782
7832010-01-11  Simon J. Gerraty  <sjg@bad.crufty.net>
784
785	* lib.mk (SHLIB_LINKS): ensure a string comparison.
786
7872010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
788
789	* install-mk (MK_VERSION): bump version to 20100102
790	* own.mk: ensure PRINTOBJDIR works
791	* autoconf.mk: pass on CONFIGURE_ARGS
792	* init.mk: handle COPTS.${.IMPSRC:T} etc.
793	* lib.mk: allow sys.mk to control SHLIB_FULLVERSION
794	  fix handling of symlinks for darwin
795	* libnames.mk: add DSHLIBEXT for libs which only exist as shared.
796	* man.mk: suppress chown when not root.
797	* rst2htm.mk: allow srcs from multiple locations.
798	* sys.mk: M_whence, stop after 1st line of output.
799	* sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT
800	* sys/SunOS.mk: we need to export PATH
801
8022009-12-23  Simon J. Gerraty  <sjg@void.crufty.net>
803
804	* install-mk (MK_VERSION): bump version
805	  include rst2htm.mk
806
8072009-12-17  Simon J. Gerraty  <sjg@void.crufty.net>
808
809	* sys.mk,libnames.mk add .-include <local.*>
810	  this allows local customization without the need to edit the
811	  distributed files. 
812
8132009-12-14  Simon J. Gerraty  <sjg@void.crufty.net>
814
815	* dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up
816	  older versions already installed.
817
8182009-12-13  Simon J. Gerraty  <sjg@void.crufty.net>
819
820	* stage.mk (.stage-install): generalize lib.mk's .libinstall
821	* rules.mk rules for generic Makefile.
822	* inc.mk install for includes.
823
8242009-12-11  Simon J. Gerraty  <sjg@void.crufty.net>
825
826	* sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check
827	  this, so provide it if using native make.
828
8292009-12-10  Simon J. Gerraty  <sjg@void.crufty.net>
830
831	* FILES: move all the platform *.sys.mk files to sys/*.mk
832	* Rename Generic.sys.mk to sys.mk - we always want it.
833
8342009-11-17  Simon J. Gerraty  <sjg@void.crufty.net>
835
836	* install-mk (MK_VERSION): bump version
837	* host-target.mk: only export the expensive stuff 
838	* Generic.sys.mk (sys_mk): for SunOS we need to look for
839	  ${HOST_OS}.${HOST_OSMAJOR} too!
840
8412009-11-07  Simon J. Gerraty  <sjg@void.crufty.net>
842
843	* install-mk (MK_VERSION): bump version
844	* lib.mk: if sys.mk doesn't give us an lorder, don't use it.
845	  based on patch from Greg Olszewski.
846	* Generic.sys.mk: if we have nothing to work with
847	set LORDER etc only if we can find it.
848
8492009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
850
851	* install-mk (MK_VERSION): bump version
852	* man.mk: cleanman: remove CLEANMAN if defined.
853
8542009-09-04  Simon J. Gerraty  <sjg@void.crufty.net>
855
856	* SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk
857
8582009-07-17  Simon J. Gerraty  <sjg@void.crufty.net>
859
860	* install-mk (MK_VERSION): bump version
861	include auto.obj.mk
862
863
8642009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
865
866	* prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail.
867
8682008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
869
870	* install-mk (MK_VERSION): bump version
871	man.mk: ensure we generate *.cat1 etc in .
872
8732008-07-16  Simon J. Gerraty  <sjg@void.crufty.net>
874
875	* install-mk (MK_VERSION): bump version
876	add prlist.mk
877
8782007-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
879
880	* Generic.sys.mk: Allow os specific sys.mk to be in a
881	subdir of ${.PARSEDIR}
882
8832007-11-22  Simon J. Gerraty  <sjg@void.crufty.net>
884
885	* install-mk (MK_VERSION): bump version
886	* general cleanup
887	* dpadd.mk introduce DPMAGIC_LIBS_* 
888
8892007-04-30  Simon J. Gerraty  <sjg@void.crufty.net>
890
891	* install-mk (MK_VERSION): bump version
892
893	* libs.mk, progs.mk, autodep.mk: allow for per lib/prog
894	depend files and ensure clean is called for each lib/prog.
895
8962007-03-27  Simon J. Gerraty  <sjg@void.crufty.net>
897
898	* autodep.mk (.depend): delete lines that do not start with
899	space and do not contain ':'
900
9012007-02-16  Simon J. Gerraty  <sjg@void.crufty.net>
902
903	* autodep.mk (.depend): gcc may wrap lines if pathnames are long
904	so make sure the transform for .OPTIONAL copes.
905
9062007-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
907
908	* install-mk (MK_VERSION): bump version
909
910	* own.mk: make sure RM and LN are defined.
911
912	* obj.mk: fix a typo, and objlink target.
913
9142006-12-30  Simon J. Gerraty  <sjg@void.crufty.net>
915
916	* install-mk (MK_VERSION): bump version
917	* added libs.mk - analogous to progs.mk
918	  make both of them always inlcude {lib,prog}.mk
919
9202006-12-28  Simon J. Gerraty  <sjg@void.crufty.net>
921
922	* progs.mk: add a means of building multiple apps in one dir.
923
9242006-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
925
926	* install-mk (MK_VERSION): bump version to 20061126
927
928	* warnings.mk: detect invalid WARNINGS_SET
929	
930	* warnings.mk: use ${.TARGET:T:R}.o when looking for target
931	specific warnings. 
932	
933	* For .cc sources, turn off warnings that g++ vomits on.
934
9352006-11-08  Simon J. Gerraty  <sjg@void.crufty.net>
936
937	* own.mk: if __initialized__ target doesn't exist and we are
938	FreeBSD we got here directly from sys.mk
939
9402006-11-06  Simon J. Gerraty  <sjg@void.crufty.net>
941
942	* install-mk (MK_VERSION): bump version to 20061106
943	add scripts.mk
944
9452006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
946
947	* install-mk (MK_VERSION): bump version to 20060318
948
949	* autodep.mk: avoid := when modifying OBJS into __dependsrcs
950
9512006-03-02  Simon J. Gerraty  <sjg@void.crufty.net>
952
953	* install-mk (MK_VERSION): bump version to 20060302
954	* autodep.mk: use -MF et al to help gcc+ccache DTRT.
955
9562006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
957
958	* install-mk (MK_VERSION): bump version to 20060301
959	* autodep.mk (.depend): 
960	if MAKE_VERSION is newer than  20050530 we can make .END depend on
961	.depend and make .depend depend on __depsrcs that exist.
962	* dpadd.mk: add SRC_PATHADD
963	
9642005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
965
966	* install-mk (MK_VERSION): bump version to 20051104
967	* prog.mk: remove all the LIBC?= junk, use
968	.-include libnames.mk instead (none by default).
969	also if USE_DPADD_MK is set, include that.
970
9712005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
972
973	* install-mk (MK_VERSION): bump version to 20051001
974	Add UnixWare.sys.mk from Klaus Heinz.
975
9762005-04-05  Simon J. Gerraty  <sjg@void.crufty.net>
977
978	* install-mk: always install *.sys.mk and if need be symlink one
979	to sys.mk
980
9812005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
982
983	* subdir.mk, own.mk: use .MAKE rather than MAKE
984
9852004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
986
987	* own.mk: don't use NetBSD's _SRC_TOP_ it can
988	cause confusion.  Also don't take just 'mk' as a 
989	srctop indicator.
990
9912004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
992
993	* warnings.mk: overhauled, now very powerful.
994
9952004-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
996
997	* Generic.sys.mk: need to use ${.PARSEDIR} with exists().
998
9992004-02-01  Simon J. Gerraty  <sjg@void.crufty.net>
1000
1001	* install-mk (MK_VERSION): bump version to 20040201
1002	* extract HOST_TARGET stuff to host-target.mk so own.mk and
1003	Generic.sys.mk can share.
1004	* fix typo in autodep.mk _SUBDIRUSE not _SUBDIR.
1005
10062003-09-30  Simon J. Gerraty  <sjg@void.crufty.net>
1007
1008	* install-mk (MK_VERSION): 20030930
1009	* rename generic.sys.mk to Generic.sys.mk
1010	so that it does not get installed (unless being used as sys.mk)
1011	* set OS and ROOT_GROUP for those that we know the value.
1012	for others (eg. Generic.sys.mk) wrap the != in an .ifndef so
1013	we don't do it again for each sub-make.
1014	
10152003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
1016
1017	* install-mk (MK_VERSION): 20030928
1018	Add some extra *.sys.mk from bootstrap-pkgsrc
1019	some of these likely still need work.
1020	Make everything default to root:wheel ownership,
1021	sys.mk can set ROOT_GROUP accordingly.
1022
10232003-08-07  Simon J. Gerraty  <sjg@void.crufty.net>
1024
1025	* install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR
1026	not the portable ones.
1027
10282003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
1029
1030	* install-mk: add ability to use cp -f when updating 
1031	destination .mk files.  Also now possible to play games with 
1032	FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk
1033	into dest - not recommended unless you seriously want to.
1034
10352003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1036
1037	* own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc
1038	for semi-compatability with NetBSD.
1039
10402003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1041
1042	* install-mk: add a version indicator
1043
10442003-07-22  Simon J. Gerraty  <sjg@void.crufty.net>
1045
1046	* prog.mk: don't try and use ${LIBCRT0} if its /dev/null
1047
1048	* install-mk: Allow FORCE_SYS_MK to come from env
1049
1050
1051	
1052