xref: /freebsd/contrib/bmake/mk/ChangeLog (revision a4dc509f723944821bcfcc52005ff87c9a5dee5b)
12015-10-20  Simon J. Gerraty  <sjg@bad.crufty.net>
2
3	* install-mk (MK_VERSION): 20151020
4
5	* dirdeps.mk: Add logic for
6	  make -f dirdeps.mk some/dir.${TARGET_SPEC}
7
82015-10-14  Simon J. Gerraty  <sjg@bad.crufty.net>
9
10	* install-mk (MK_VERSION): 20151010
11
122015-10-02  Simon J. Gerraty  <sjg@bad.crufty.net>
13
14	* meta.stage.mk: use staging: ${STAGE_TARGETS:...
15	  to have stage_lins run last in non-jobs mode.
16	  Use .ORDER only for jobs mode.
17
182015-09-02  Simon J. Gerraty  <sjg@bad.crufty.net>
19
20	* rst2htm.mk: allow for per target flags etc.
21
222015-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
23
24	* install-mk (MK_VERSION): 20150901
25
26	* doc.mk: create dir if needed use DOC_INSTALL_OWN
27
282015-06-15  Simon J. Gerraty  <sjg@bad.crufty.net>
29
30	* install-mk (MK_VERSION): 20150615
31
32	* auto.obj.mk: allow use of MAKEOBJDIRPREFIX too.
33	  Follow make's normal precedence rules.
34
35	* gendirdeps.mk: allow customization of the header.
36	  eg. for FreeBSD:
37	  GENDIRDEPS_HEADER= echo '\# ${FreeBSD:L:@v@$$$v$$ @:M*F*}';
38
39	* meta.autodep.mk: ignore dirdeps.cache*
40
41	* meta.stage.mk: when bootstrapping options it can be handy to
42	  throw warnings rather than errors for staging conflicts.
43
44	* meta.sys.mk: include local.meta.sys.mk for customization
45
462015-06-06  Simon J. Gerraty  <sjg@bad.crufty.net>
47
48	* install-mk (MK_VERSION): 20150606
49
50	* dirdeps.mk: don't rely on manually maintained Makefile.depend
51	  to set DEP_RELDIR and reset DIRDEPS.
52	  By setting DEP_RELDIR ourselves we can skip :tA
53
54	* gendirdeps.mk: skip setting DEP_RELDIR.
55
562015-05-24  Simon J. Gerraty  <sjg@bad.crufty.net>
57
58	* dirdeps.mk: avoid wildcards like make(bootstrap*)
59
602015-05-20  Simon J. Gerraty  <sjg@bad.crufty.net>
61
62	* install-mk (MK_VERSION): 20150520
63
64	* dirdeps.mk: when we are building dirdeps cache file we *want*
65	  meta_oodate to look at all the Makefile.depend files, so
66	  set .MAKE.DEPENDFILE to something that won't match.
67
68	* meta.stage.mk: for STAGE_AS_* basename of file may not be unique
69	  so first use absolute path as key.
70	  Also skip staging at level 0.
71
722015-04-30  Simon J. Gerraty  <sjg@bad.crufty.net>
73
74	* install-mk (MK_VERSION): 20150430
75
76	* dirdeps.mk: fix _count_dirdeps for non-cache case.
77
782015-04-16  Simon J. Gerraty  <sjg@bad.crufty.net>
79
80	* install-mk (MK_VERSION): 20150411
81	  bump version
82
83	* own.mk: put AUTO_OBJ in OPTIONS_DEFAULT_NO rather than YES.
84	  it is here mainly for documentation purposes, since
85	  if using auto.obj.mk it is better done via sys.mk
86
872015-04-01  Simon J. Gerraty  <sjg@bad.crufty.net>
88
89	* install-mk (MK_VERSION): 20150401
90
91	* meta2deps.sh: support @list
92
93	* meta2deps.py: updates from Juniper
94	  o add EXCLUDES
95	  o skip bogus input files.
96	  o treat 'M' and 'L' as both an 'R' and a 'W'
97
982015-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
99
100	* install-mk (MK_VERSION): 20150303
101
102	* dirdeps.mk: if MK_DIRDEPS_CACHE is yes, use dirdeps-cache
103	  which is built via sub-make so we have a .meta file to tell if
104	  it is out-of-date.
105	  The dirdeps-cache contains the same dependency rules that we
106	  normaly construct on the fly.
107	  This adds a few seconds overhead when the cache is out of date,
108	  but for a large target, the savings can be significant (10-20min).
109
1102014-11-18  Simon J. Gerraty  <sjg@bad.crufty.net>
111
112	* install-mk (MK_VERSION): 20141118
113
114	* meta.stage.mk: add stale_staged
115
116	* dirdeps.mk (_DIRDEP_USE_LEVEL): allow this to be tweaked
117	  only useful under very rare conditions such as
118	  FreeBSD's make universe.
119
120	* auto.obj.mk: Allow MK_AUTO_OBJ to set MKOBJDIRS=auto
121
1222014-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
123
124	* install-mk (MK_VERSION): 20141111
125
126	* mkopt.sh: use consistent semantics for _mk_opt and _mk_opts
127
1282014-11-09  Simon J. Gerraty  <sjg@bad.crufty.net>
129
130	* FILES: include mkopt.sh which allows handling options in shell
131	  scripts in a manner compatible with options.mk
132
1332014-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
134
135	* meta.stage.mk: ensure only _STAGED_DIRS under objroot are used
136	  for GENDIRDEPS_FILTER to avoid surprises.
137
1382014-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
139
140	* dirdeps.mk (NSkipHostDir): this needs SRCTOP prepended since by
141	  the time it is applied to __depdirs they have.
142
143	* dirdeps.mk fix filtering of _machines since M_dep_qual_fixes
144	  expects patterns like *.${MACHINE}
145
146	* cython.mk (pyprefix?): use pyprefix to find python bits
147	  since prefix might be something else (where we install our
148	  stuff)
149
1502014-09-11  Simon J. Gerraty  <sjg@bad.crufty.net>
151
152	* install-mk (MK_VERSION): 20140911
153
154	* dirdeps.mk: add bootstrap target to simplify adding support for
155	  new MACHINE.
156
1572014-09-01  Simon J. Gerraty  <sjg@bad.crufty.net>
158
159	* gendirdeps.mk: Add handling of GENDIRDEPS_FILTER_DIR_VARS and
160	  GENDIRDEPS_FILTER_VARS to make it easier to produce sharable
161	  Makefile.depend files.
162
1632014-08-28  Simon J. Gerraty  <sjg@bad.crufty.net>
164
165	* install-mk (MK_VERSION): 20140828
166
167	* cython.mk: capture logic for building python extension modules
168	  with Cython.
169
1702014-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
171
172	* meta.stage.mk (_STAGE_AS_BASENAME_USE): Add StageAs variant
173
1742014-08-02  Simon J. Gerraty  <sjg@bad.crufty.net>
175
176	* install-mk (MK_VERSION): 20140801
177
178	* dep.mk: use explicit MKDEP_MK rather than overload MKDEP to
179	identify the autodep.mk variant.
180
181	* sys.dependfile.mk: delete .MAKE.DEPENDFILE if its
182	initial value does not match .MAKE.DEPENDFILE_PREFIX
183
184	* meta.autodep.mk: if _bootstrap_dirdeps add RELDIR to DIRDEPS
185
1862014-05-22  Simon J. Gerraty  <sjg@bad.crufty.net>
187
188	* install-mk (MK_VERSION): 20140522
189
190	* lib.mk: use CC to link shlib for linux too
191	  patch from Brendan MacDonell
192
1932014-05-05  Simon J. Gerraty  <sjg@bad.crufty.net>
194
195	* meta.autodep.mk: add _reldir_{finish,failed} for gathering stats
196	  if WITH_META_STATS is defined.
197
1982014-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
199
200	* dirdeps.mk: accept -DWITHOUT_DIRDEPS (same a as -DNO_DIRDEPS)
201	  to supress dirdeps outside of .CURDIR.
202
2032014-04-05  Simon J. Gerraty  <sjg@bad.crufty.net>
204
205	* Fix spelling errors - patch from Pedro Giffuni
206
2072014-03-14  Simon J. Gerraty  <sjg@bad.crufty.net>
208
209	* install-mk (MK_VERSION): 20140314
210
211	* dirdeps.mk (beforedirdeps): a handy hook
212
213	* dirdeps.mk (DIRDEP_MAKE): allow the actual command we run
214	  to visit leaf dirs to be intercepted (eg. for distributed
215	  build).
216
217	* dirdeps.mk (__depdirs): ensure // don't sneak in
218
219	* gendirdeps.mk (DIRDEPS): ensure // don't sneak in
220
221
2222014-02-21  Simon J. Gerraty  <sjg@bad.crufty.net>
223
224	* rst2htm.mk (RST2PDF): add support for rst2pdf
225
2262014-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
227
228	* install-mk (MK_VERSION): bump version
229	* dirdeps.mk (_last_dependfile): use .INCLUDEDFROMFILE if
230	  available.
231
2322014-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
233
234	* options.mk: avoid :U so this isn't bmake dependent
235
2362014-02-09  Simon J. Gerraty  <sjg@bad.crufty.net>
237
238	* options.mk: cleanup and simplify semanitcs
239	  NO_* dominates all, if both WITH_* and WITHOUT_*
240	  are defined then result is DOMINATE_* which defaults to "no".
241	  Ie. WITHOUT_ normally wins.
242
2432013-12-12  Simon J. Gerraty  <sjg@bad.crufty.net>
244
245	* install-mk (MK_VERSION): bump version
246	* meta2deps.py: convert to print function for python3 compat.
247	  we also need to open files with mode 'r' rather than 'rb'
248	  otherwise we get bytes instead of strings.
249
2502013-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
251
252	* install-mk (MK_VERSION): bump version
253
254	* dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE
255	  apply the same filtering (M_dep_qual_fixes) when setting _machines
256	  as _build_dirs.
257	  Also fix the filtering of Makefile.depend files - for reporting
258	  what we are looking for (M_dep_qual_fixes can get confused by
259	  Makefile.depend)
260	  Add some more debug info.
261
2622013-09-04  Simon J. Gerraty  <sjg@bad.crufty.net>
263
264	* gendirdeps.mk (_objtops): fix typo also
265	  while processing M2D_OBJROOTS to gather qualdir_list
266	  qualify $ql with loop iterator to ensure correct results.
267
2682013-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
269
270	* install-mk (MK_VERSION): 20130801
271	* libs.mk: update to match progs.mk
272
2732013-07-26  Simon J. Gerraty  <sjg@bad.crufty.net>
274
275	* install-mk (MK_VERSION): 20130726
276	  some updates from Juniper and FreeBSD
277	  o meta2deps.py: indicate file and line number when we hit parse
278	    errors
279	    also allow @file to provide huge list of .meta files.
280	* meta2deps.py: add try_parse() to cleanup the above.
281
2822013-07-16  Simon J. Gerraty  <sjg@bad.crufty.net>
283
284	* install-mk (MK_VERSION): 20130716
285	* own.mk: add GPROG as an option
286	* prog.mk: honor MK_GPROF==yes
287
2882013-05-10  Simon J. Gerraty  <sjg@bad.crufty.net>
289
290	* install-mk (MK_VERSION): 20130505
291	* gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC
292	  for when $MACHINE isn't enough for objdir distinction.
293	  Bring meta2deps.sh closer to par with meta2deps.py.
294
2952013-04-18  Simon J. Gerraty  <sjg@bad.crufty.net>
296
297	* meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all'
298	  also if the target 'beforeinstall' exists, make it depend on
299	  .dirdep (incase it uses STAGE_INSTALL).
300
3012013-04-17  Simon J. Gerraty  <sjg@bad.crufty.net>
302
303	* install-mk (MK_VERSION): 20130401 ;-)
304	* meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as
305	  wrapper around install(1).
306	* options.mk (OPTION_PREFIX): Allow a prefix other than MK_
307
3082013-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
309
310	* meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized.
311	* install-mk (MK_VERSION): bump version
312
3132013-03-21  Simon J. Gerraty  <sjg@bad.crufty.net>
314
315	* install-mk (MK_VERSION): bump version
316	* gendirdeps.mk: do not apply :tA to DPADD entries, since we lose
317	  any trailing /., rather apply :tA only when needed.
318	* gendirdeps.mk: better mimic meta2deps handling of .dirdep files.
319	* meta.stage.mk (LN_CP_SCRIPT): Add LnCp to do the ln||cp dance
320	  consistently.
321	* dirdeps.mk: better describe the dance in sys.mk for TARGET_SPEC.
322
3232013-03-18  Simon J. Gerraty  <sjg@bad.crufty.net>
324
325	* gendirdeps.mk: revert the dance around .MAKE.DEPENDFILE_DEFAULT
326	  it is simpler to just not update when say building for "host"
327	  (where we know we apply filters to DIRDEPS), and using a
328	  non-machine qualified dependfile.
329
3302013-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
331
332	* dirdeps.mk: improve DIRDEPS filtering by allowing DEP_SKIP_DIR
333	  and DEP_DIRDEPS_FILTER to vary by DEP_MACHINE and DEP_TARGET_SPEC
334	* gendirdeps.mk: ensure _objroot has trailing / if it needs it.
335	* meta2deps.py: if machine is "host", then also trim
336	  self.host_target from any OBJROOTS.
337
338
3392013-03-11  Simon J. Gerraty  <sjg@bad.crufty.net>
340
341	* gendirdeps.mk: if .MAKE.DEPENDFILE_DEFAULT is not machine
342	  qualified but _DEPENDFILE is, and .MAKE.DEPENDFILE_DEFAULT exists
343	  but _DEPENDFILE does not, compare the new _DEPENDFILE against
344	  .MAKE.DEPENDFILE_DEFAULT and discard if the same.
345
3462013-03-08  Simon J. Gerraty  <sjg@bad.crufty.net>
347
348	* meta.stage.mk: use STAGE_TARGETS to control .ORDER
349	  and hook to all: via staging:
350
3512013-03-07  Simon J. Gerraty  <sjg@bad.crufty.net>
352
353	* sys.dependfile.mk (.MAKE.DEPENDFILE_DEFAULT):
354	  use a separate variable for the default .MAKE.DEPENDFILE value
355	  so that it can be controlled independently of
356	  .MAKE.DEPENDFILE_PREFERENCE
357
358	* meta.stage.mk: throw error if cp fails etc.
359	  Stage*() return early if passed no args.
360	  .ORDER stage_*
361
3622013-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
363
364	* install-mk (MK_VERSION): bump version
365	* gendirdeps.mk: handle multiple M2D_OBJROOTS better.
366
3672013-02-10  Simon J. Gerraty  <sjg@bad.crufty.net>
368
369	* install-mk (MK_VERSION): bump version to 20130210
370	* import latest dirdeps.mk, gendirdeps.mk and meta2deps.py
371	  from Juniper.
372	  o dirdeps.mk now fully supports TARGET_SPEC consisting of more
373	    than just MACHINE.
374	  o no longer use DEP_MACHINE from Makefile.depend* so remove it.
375
3762013-01-23  Simon J. Gerraty  <sjg@bad.crufty.net>
377
378	* install-mk (MK_VERSION): bump version to 20130123
379	* meta.stage.mk: add stage_links (hard links).
380	  if doing hard links, we add dest to link as well.
381	  Default the stage dir for [sym]links to STAGE_OBJTOP since
382	  these are typically specified as absolute paths.
383	  Add -m "mode" flag to StageFiles and StageAs.
384
3852012-11-11  Simon J. Gerraty  <sjg@bad.crufty.net>
386
387	* install-mk (MK_VERSION): bump version to 20121111
388	* autoconf.mk: avoid meta mode seeing changed commands for config.status
389	* meta.autodep.mk: pass resolved MAKESYSPATH to gendirdeps
390	  in case we were found via .../mk
391	* sys.clean-env.mk: move it from examples, we and others use it
392	  "as is".
393	* FILES: add srctop.mk and options.mk
394	* own.mk: convert to using options.mk
395	  which is modeled after FreeBSD's handling of MK_*
396	  but more flexible.
397	  This allows MK_* for boolean knobs to not be confused
398	  with MK* which can be commands.
399
400	* examples/sys.clean-env.mk: add WITH[OUT]_ to
401	  MAKE_ENV_SAVE_PREFIX_LIST.
402	  Mention that HOME=/var/empty might be a good idea.
403
4042012-11-08  Simon J. Gerraty  <sjg@bad.crufty.net>
405
406	* sys.dependfile.mk: if not depend file exists, $MACHINE
407	  specific ones are supported but not the default,
408	  check if any exist and follow suit.
409
4102012-11-06  Simon J. Gerraty  <sjg@bad.crufty.net>
411
412	* install-mk (MK_VERSION): bump version to 20121106
413
4142012-11-05  Simon J. Gerraty  <sjg@bad.crufty.net>
415
416	* import latest dirdeps.mk and meta2deps.py from Juniper.
417	* progs.mk: add MAN and CXXFLAGS to PROG_VARS
418	  also add PROGS_TARGETS and pass on PROG_CXX if it seems
419	  appropriate.
420
4212012-11-04  Simon J. Gerraty  <sjg@bad.crufty.net>
422
423	* meta.stage.mk: update CLEANFILES
424	  remove redundant cp of .dirdep from STAGE_AS_SCRIPT.
425	* progs.mk: Add LDADD to PROG_VARS
426
4272012-10-12  Simon J. Gerraty  <sjg@bad.crufty.net>
428
429	* meta.stage.mk (STAGE_DIR_FILTER): track dirs we stage to in
430	  _STAGED_DIRS so that these can be turned into filters for
431	  GENDIRDEPS_FILTER.
432
4332012-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
434
435	* install-mk (MK_VERSION): bump version to 20121010
436	* meta.stage.mk (STAGE_DIRDEP_SCRIPT): check that an existing
437	target.dirdep matches .dirdep
438
4392012-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
440
441	* install-mk (MK_VERSION): bump version to 20120808
442	* import latest meta2deps.py from Juniper.
443
4442012-07-11  Simon J. Gerraty  <sjg@bad.crufty.net>
445
446	* install-mk (MK_VERSION): bump version to 20120711
447	* dep.mk: add explicit dependencies on SRCS after applying
448	  SRCS_DEP_FILTER
449	* meta.autodep.mk: add explicit dependencies on SRCS after
450	  applying SRCS_DEP_FILTER
451	* meta.autodep.mk: ensure GENDIRDEPS_FILTER is exported if needed.
452
4532012-06-26  Simon J. Gerraty  <sjg@bad.crufty.net>
454
455	* install-mk (MK_VERSION): bump version to 20120626
456	* meta.sys.mk: ignore PYTHON if it does not exist
457	  compare ${.MAKE.DEPENDFILE:E} against ${MACHINE} is more reliable.
458	* meta.stage.mk: examine .MAKE.DEPENDFILE_PREFERENCE for any
459	  entries ending in .${MACHINE} to decide if qualified _dirdep is
460	  needed.
461	* gendirdeps.mk: only produce unqualified deps if no
462	  .MAKE.DEPENDFILE_PREFERENCE ends in .${MACHINE}
463	* meta.subdir.mk: apply SUBDIREPS_FILTER
464
4652012-04-20  Simon J. Gerraty  <sjg@bad.crufty.net>
466
467	* install-mk (MK_VERSION): bump version to 20120420
468	* add sys.dependfile.mk so we can experiment with
469	  .MAKE.DEPENDFILE_PREFERENCE
470	* meta.autodep.mk: _DEPENDFILE is precious!
471
4722012-03-15  Simon J. Gerraty  <sjg@bad.crufty.net>
473
474	* install-mk (MK_VERSION): bump version to 20120315
475	* install-new.mk: avoid being interrupted
476
4772012-02-26  Simon J. Gerraty  <sjg@bad.crufty.net>
478
479	* man.mk: MAN might have multiple values so be careful with exists().
480
4812012-01-19  Simon J. Gerraty  <sjg@bad.crufty.net>
482
483	* install-mk (MK_VERSION): bump version to 20120112
484	* fix examples/sys.clean-env.mk so that MAKEOBJDIR is handled
485	  as: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
486
4872011-12-03  Simon J. Gerraty  <sjg@bad.crufty.net>
488
489	* install-mk (MK_VERSION):  bump version to 20111201
490	* import dirdeps.mk from Juniper sjg@
491	  o more consistent handling of DEP_MACHINE, especially when
492	    dealing with an odd Makefile.depend, when normally using
493	    Makefile.depend.${MACHINE}
494
4952011-11-22  Simon J. Gerraty  <sjg@bad.crufty.net>
496
497	* install-mk (MK_VERSION): bump version to 20111122
498	* meta.autodep.mk: add some debug output, be more crisp about
499	  updating.  Use ${.ALLTARGETS:M*.o} as a clue for .depend
500
5012011-11-13  Simon J. Gerraty  <sjg@bad.crufty.net>
502
503	* install-mk (MK_VERSION): bump version to 20111111
504	  it's too cool to miss
505	* import meta* updates from Juniper sjg@
506	  o dirdeps.mk set DEP_MACHINE for Makefile.depend (when we are
507	    normally using Makefile.depend.${MACHINE}), handy for
508	    read-only manually maintained dependencies.
509	  o meta2deps.py add a clear 'ERROR:' token if an exception is raised.
510	  o gendirdeps.mk if ERROR: from meta2deps.py do not update
511	    anything.
512
5132011-10-30  Simon J. Gerraty  <sjg@bad.crufty.net>
514
515	* install-new.mk separate the cmp and copy logic to its own function.
516
5172011-10-28  Simon J. Gerraty  <sjg@bad.crufty.net>
518
519	* install-mk (MK_VERSION): bump version to 20111028
520	* sys.mk: include auto.obj.mk if MKOBJDIRS is set to auto
521	* subdir.mk: ensure _SUBDIRUSE is provided
522	* meta.autodep.mk: remove dependency of gendirdeps.mk on auto.obj.mk
523	* meta.subdir.mk: always allow for Makefile.depend
524
5252011-10-10  Simon J. Gerraty  <sjg@bad.crufty.net>
526
527	* install-mk (MK_VERSION): bump version to 20111010
528	  o minor tweak to *dirdeps.mk from Juniper sjg@
529
5302011-10-01  Simon J. Gerraty  <sjg@bad.crufty.net>
531
532	* install-mk (MK_VERSION): bump version to 20111001
533	  o add meta2deps.py from Juniper sjg@
534	  o tweak gendirdeps.mk to work with meta2deps.py when not
535	    cross-building
536	* autoconf.mk: add autoconf-input as a hook for regenerating
537	  AUTOCONF_INPUTS (configure).
538
5392011-08-24  Simon J. Gerraty  <sjg@bad.crufty.net>
540
541	* meta.autodep.mk: if we do not have OBJS, .depend isn't a useful
542	  trigger for updating Makefile.depend*
543
5442011-08-08  Simon J. Gerraty  <sjg@bad.crufty.net>
545
546	* install-mk (MK_VERSION): bump version to 20110808
547	* obj.mk: minor cleanup
548	* auto.obj.mk: improve description of Mkdirs and honor NO_OBJ too.
549
5502011-08-01  Simon J. Gerraty  <sjg@bad.crufty.net>
551
552	* auto.obj.mk (.OBJDIR): throw an error if we cannot use the
553	  specified dir.
554
5552011-06-28  Simon J. Gerraty  <sjg@bad.crufty.net>
556
557	* meta.autodep.mk: if XMAKE_META_FILE is set
558	  the makefile uses a foreign make, and so dependencies
559	  can only be gathered from a clean tree build.
560
5612011-06-24  Simon J. Gerraty  <sjg@bad.crufty.net>
562
563	* install-mk (MK_VERSION): bump version to 20110622
564	* meta.autodep.mk: improve bootstraping
565
5662011-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
567
568	* yacc.mk: handle the corner case of .c being removed
569	  while .h remains.
570
5712011-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
572
573	* yacc.mk: do .y.h and .y.c separately
574
5752011-06-04  Simon J. Gerraty  <sjg@bad.crufty.net>
576
577	* install-mk (MK_VERSION): bump version to 20110606
578	* don't store SRC_DIRDEPS in Makefile.depend* by default
579	  not everyone needs it.
580
5812011-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
582
583	* install-mk (MK_VERSION): bump version to 20110505
584	  first release including meta mode makefiles
585
5862011-05-02  Simon J. Gerraty  <sjg@bad.crufty.net>
587
588	* meta.stage.mk: add STAGE_AS_SETS and stage_as
589	  for things that need to be staged with different names.
590
5912011-05-01  Simon J. Gerraty  <sjg@bad.crufty.net>
592
593	* meta.stage.mk: add notion of STAGE_SETS
594	  so a makefile can stage to multiple dirs
595
5962011-04-03  Simon J. Gerraty  <sjg@bad.crufty.net>
597
598	* rst2htm.mk: convert rst to s5 (slides) or plain html depending
599	  on target name.
600
6012011-03-30  Simon J. Gerraty  <sjg@bad.crufty.net>
602
603	* install-mk (MK_VERSION): bump version to 20110330
604
6052011-03-29  Simon J. Gerraty  <sjg@bad.crufty.net>
606
607	* sys.mk (_DEBUG_MAKE_FLAGS): use indirection so that DEBUG_MAKE_FLAGS0
608	  can be used to debug level 0 only and DEBUG_MAKE_FLAGS for the rest.
609	* sys.mk: re-define M_whence in terms of M_type.
610	  M_type is useful for checking if something is a builtin.
611
6122011-03-16  Simon J. Gerraty  <sjg@bad.crufty.net>
613
614	* meta.stage.mk: add stage_symlinks and leverage StageLinks for
615	  stage_libs
616
6172011-03-10  Simon J. Gerraty  <sjg@bad.crufty.net>
618
619	* dirdeps.mk: correct value for _depdir_files depends on
620	  .MAKE.DEPENDFILE
621	  Add our copyright - just to make it clear we have frobbed this
622	  quite a bit.
623	  DEP_MACHINE needs to be set to MACHINE each time, if using only
624	  Makefile.depend (cf. Makefile.depend.${MACHINE})
625
626	* meta.stage.mk: meta mode version of staging
627
628	* init.mk, final.mk: include local.*.mk to simplify customization
629
6302011-03-03  Simon J. Gerraty  <sjg@bad.crufty.net>
631
632	* auto.obj.mk: just because we are doing mk destroy, we should
633	  still set .OBJDIR correctly if it exists.
634
635	* install-mk (mksrc): do not exclude meta.sys.mk
636
6372011-03-01  Simon J. Gerraty  <sjg@bad.crufty.net>
638
639	* host-target.mk: set/export _HOST_ARCH etc separately,
640	  catch junk resulting from uname -p, so we can find sys/Linux.mk
641	  correctly.
642
6432011-02-18  Simon J. Gerraty  <sjg@bad.crufty.net>
644
645	* meta.sys.mk: throw an error if /dev/filemon is missing and we
646	  expected to be updating Makefile.depend*
647
6482011-02-14  Simon J. Gerraty  <sjg@bad.crufty.net>
649
650	* install-mk (MK_VERSION): bump version to 20110214
651	* meta.subdir.mk: add support for -DBOOTSTRAP_DEPENDFILES
652
6532010-09-25  Simon J. Gerraty  <sjg@bad.crufty.net>
654
655	* meta.sys.mk: not valid for older bmake
656
6572010-09-24  Simon J. Gerraty  <sjg@bad.crufty.net>
658
659	* install-mk (MK_VERSION): bump version to 20100919
660	include dirdeps.mk et al from Juniper Networks,
661	for meta mode - requires filemon(9).
662	* sys.mk, subdir.mk: Add hooks for meta mode.
663	we do this as meta.sys.mk, meta.autodep.mk and meta.subdir.mk
664	to make turning it on/off simple.
665
6662010-06-16  Simon J. Gerraty  <sjg@bad.crufty.net>
667
668	* install-mk (MK_VERSION): bump version to 20100616
669	* fix typo in sys.mk
670
6712010-06-12  Simon J. Gerraty  <sjg@bad.crufty.net>
672
673	* install-mk (MK_VERSION): bump version to 20100612
674	* lib.mk: remove duplicate addition to SOBJS
675
6762010-06-10  Simon J. Gerraty  <sjg@bad.crufty.net>
677
678	* sys.mk: Add a means of selectively turning on debug flags.
679	  Eg. DEBUG_MAKE_FLAGS=-dv DEBUG_MAKE_DIRS="*lib/sjg"
680	  will act as if we did make -dv if .CURDIR ends in lib/sjg
681	  DEBUG_MAKE_SYS_DIRS does the same thing, but we set the flags at
682	  the start of sys.mk rather than the end.
683	  This only makes sense for leaf dirs, so we check that
684	  .MAKE.LEVEL > 0
685
6862010-06-09  Simon J. Gerraty  <sjg@bad.crufty.net>
687
688	* install-mk (MK_VERSION): bump version to 20100608
689	* sys.mk: include sys.env.mk later so it can use M_ListToSkip et al.
690	* examples/sys.clean-env.mk: require MAKE_VERIONS >= 20100606
691	  also make it easier for folk to tweak
692
6932010-06-08  Simon J. Gerraty  <sjg@bad.crufty.net>
694
695	* install-mk (MK_VERSION): bump version to 20100606
696	  do not install examples/*
697	* FILES: add examples/sys.clean-env.mk
698	* examples/sys.clean-env.mk: use .export-env to handle MAKEOBJDIR
699	  this requires bmake-20100606 or later to work.
700
7012010-05-13  Simon J. Gerraty  <sjg@bad.crufty.net>
702
703	* sys.mk (M_tA): better simulate the result of :tA if not available.
704
7052010-05-04  Simon J. Gerraty  <sjg@bad.crufty.net>
706
707	* sys.mk: canonicalize MAKE_VERSION
708	  old versions reported bmake-<src-date> build-<build-date>
709	  whereas we only care about <src-date>
710
7112010-04-25  Simon J. Gerraty  <sjg@bad.crufty.net>
712
713	* install-mk: just warn about FORCE_{BSD,SYS}_MK being ignored
714	* lib.mk: we only build the shared lib if SHLIB_FULLVERSION
715	  is !empty
716
7172010-04-22  Simon J. Gerraty  <sjg@bad.crufty.net>
718
719	* dpadd.mk: use LDADD_* if defined.
720
7212010-04-21  Simon J. Gerraty  <sjg@bad.crufty.net>
722
723	* install-mk (MK_VERSION): bump version to 20100420
724	* sys/NetBSD.mk: add MACHINE_CPU to keep netbsd makefiles happy
725	* autoconf.mk allow AUTO_AUTOCONF
726
7272010-04-19  Simon J. Gerraty  <sjg@bad.crufty.net>
728
729	* obj.mk: add objwarn to keep freebsd makefiles happy
730	* auto.obj.mk: ensure Mkdirs is available.
731	* FILES: add auto.dep.mk - a simpler version of autodep.mk
732	* dep.mk: auto.dep.mk does not do 'make depend' so ignore it if
733	  asked to do that.
734	  fix/simplify the tests for when to run mkdep.
735	* auto.dep.mk: add some explanation of how/what we do.
736	* autodep.mk: skip the .OPTIONAL frobbing of .depend
737	  bmake's FROM_DEPEND flag makes it redundant.
738
7392010-04-13  Simon J. Gerraty  <sjg@bad.crufty.net>
740
741	* install-mk (MK_VERSION): bump version to 20100404
742	* subdir.mk: protect from multiple inclusion using _SUBDIRUSE.
743	* obj.mk: protect from multiple inclusion even as bsd.obj.mk
744	Also create a target _SUBDIRUSE so that we can  be used without
745	subdir.mk
746
7472010-04-12  Simon J. Gerraty  <sjg@bad.crufty.net>
748
749	* dep.mk: use <> when .including so can override.
750
7512010-01-11  Simon J. Gerraty  <sjg@bad.crufty.net>
752
753	* lib.mk (SHLIB_LINKS): ensure a string comparison.
754
7552010-01-04  Simon J. Gerraty  <sjg@bad.crufty.net>
756
757	* install-mk (MK_VERSION): bump version to 20100102
758	* own.mk: ensure PRINTOBJDIR works
759	* autoconf.mk: pass on CONFIGURE_ARGS
760	* init.mk: handle COPTS.${.IMPSRC:T} etc.
761	* lib.mk: allow sys.mk to control SHLIB_FULLVERSION
762	  fix handling of symlinks for darwin
763	* libnames.mk: add DSHLIBEXT for libs which only exist as shared.
764	* man.mk: suppress chown when not root.
765	* rst2htm.mk: allow srcs from multiple locations.
766	* sys.mk: M_whence, stop after 1st line of output.
767	* sys/Darwin.mk: Use .dylib for DSHLIBEXT and HOST_LIBEXT
768	* sys/SunOS.mk: we need to export PATH
769
7702009-12-23  Simon J. Gerraty  <sjg@void.crufty.net>
771
772	* install-mk (MK_VERSION): bump version
773	  include rst2htm.mk
774
7752009-12-17  Simon J. Gerraty  <sjg@void.crufty.net>
776
777	* sys.mk,libnames.mk add .-include <local.*>
778	  this allows local customization without the need to edit the
779	  distributed files.
780
7812009-12-14  Simon J. Gerraty  <sjg@void.crufty.net>
782
783	* dpadd.mk (__dpadd_libdirs): order -L's to avoid picking up
784	  older versions already installed.
785
7862009-12-13  Simon J. Gerraty  <sjg@void.crufty.net>
787
788	* stage.mk (.stage-install): generalize lib.mk's .libinstall
789	* rules.mk rules for generic Makefile.
790	* inc.mk install for includes.
791
7922009-12-11  Simon J. Gerraty  <sjg@void.crufty.net>
793
794	* sys/NetBSD.mk (MAKE_VERSION): some of our *.mk want to check
795	  this, so provide it if using native make.
796
7972009-12-10  Simon J. Gerraty  <sjg@void.crufty.net>
798
799	* FILES: move all the platform *.sys.mk files to sys/*.mk
800	* Rename Generic.sys.mk to sys.mk - we always want it.
801
8022009-11-17  Simon J. Gerraty  <sjg@void.crufty.net>
803
804	* install-mk (MK_VERSION): bump version
805	* host-target.mk: only export the expensive stuff
806	* Generic.sys.mk (sys_mk): for SunOS we need to look for
807	  ${HOST_OS}.${HOST_OSMAJOR} too!
808
8092009-11-07  Simon J. Gerraty  <sjg@void.crufty.net>
810
811	* install-mk (MK_VERSION): bump version
812	* lib.mk: if sys.mk doesn't give us an lorder, don't use it.
813	  based on patch from Greg Olszewski.
814	* Generic.sys.mk: if we have nothing to work with
815	set LORDER etc only if we can find it.
816
8172009-09-08  Simon J. Gerraty  <sjg@void.crufty.net>
818
819	* install-mk (MK_VERSION): bump version
820	* man.mk: cleanman: remove CLEANMAN if defined.
821
8222009-09-04  Simon J. Gerraty  <sjg@void.crufty.net>
823
824	* SunOS.5.sys.mk (CC): Use ?= like the other *sys.mk
825
8262009-07-17  Simon J. Gerraty  <sjg@void.crufty.net>
827
828	* install-mk (MK_VERSION): bump version
829	include auto.obj.mk
830
831
8322009-03-26  Simon J. Gerraty  <sjg@void.crufty.net>
833
834	* prog.mk,lib.mk: ensure test of USE_DPADD_MK doesn't fail.
835
8362008-11-11  Simon J. Gerraty  <sjg@void.crufty.net>
837
838	* install-mk (MK_VERSION): bump version
839	man.mk: ensure we generate *.cat1 etc in .
840
8412008-07-16  Simon J. Gerraty  <sjg@void.crufty.net>
842
843	* install-mk (MK_VERSION): bump version
844	add prlist.mk
845
8462007-11-25  Simon J. Gerraty  <sjg@void.crufty.net>
847
848	* Generic.sys.mk: Allow os specific sys.mk to be in a
849	subdir of ${.PARSEDIR}
850
8512007-11-22  Simon J. Gerraty  <sjg@void.crufty.net>
852
853	* install-mk (MK_VERSION): bump version
854	* general cleanup
855	* dpadd.mk introduce DPMAGIC_LIBS_*
856
8572007-04-30  Simon J. Gerraty  <sjg@void.crufty.net>
858
859	* install-mk (MK_VERSION): bump version
860
861	* libs.mk, progs.mk, autodep.mk: allow for per lib/prog
862	depend files and ensure clean is called for each lib/prog.
863
8642007-03-27  Simon J. Gerraty  <sjg@void.crufty.net>
865
866	* autodep.mk (.depend): delete lines that do not start with
867	space and do not contain ':'
868
8692007-02-16  Simon J. Gerraty  <sjg@void.crufty.net>
870
871	* autodep.mk (.depend): gcc may wrap lines if pathnames are long
872	so make sure the transform for .OPTIONAL copes.
873
8742007-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
875
876	* install-mk (MK_VERSION): bump version
877
878	* own.mk: make sure RM and LN are defined.
879
880	* obj.mk: fix a typo, and objlink target.
881
8822006-12-30  Simon J. Gerraty  <sjg@void.crufty.net>
883
884	* install-mk (MK_VERSION): bump version
885	* added libs.mk - analogous to progs.mk
886	  make both of them always inlcude {lib,prog}.mk
887
8882006-12-28  Simon J. Gerraty  <sjg@void.crufty.net>
889
890	* progs.mk: add a means of building multiple apps in one dir.
891
8922006-11-26  Simon J. Gerraty  <sjg@void.crufty.net>
893
894	* install-mk (MK_VERSION): bump version to 20061126
895
896	* warnings.mk: detect invalid WARNINGS_SET
897
898	* warnings.mk: use ${.TARGET:T:R}.o when looking for target
899	specific warnings.
900
901	* For .cc sources, turn off warnings that g++ vomits on.
902
9032006-11-08  Simon J. Gerraty  <sjg@void.crufty.net>
904
905	* own.mk: if __initialized__ target doesn't exist and we are
906	FreeBSD we got here directly from sys.mk
907
9082006-11-06  Simon J. Gerraty  <sjg@void.crufty.net>
909
910	* install-mk (MK_VERSION): bump version to 20061106
911	add scripts.mk
912
9132006-03-18  Simon J. Gerraty  <sjg@void.crufty.net>
914
915	* install-mk (MK_VERSION): bump version to 20060318
916
917	* autodep.mk: avoid := when modifying OBJS into __dependsrcs
918
9192006-03-02  Simon J. Gerraty  <sjg@void.crufty.net>
920
921	* install-mk (MK_VERSION): bump version to 20060302
922	* autodep.mk: use -MF et al to help gcc+ccache DTRT.
923
9242006-03-01  Simon J. Gerraty  <sjg@void.crufty.net>
925
926	* install-mk (MK_VERSION): bump version to 20060301
927	* autodep.mk (.depend):
928	if MAKE_VERSION is newer than  20050530 we can make .END depend on
929	.depend and make .depend depend on __depsrcs that exist.
930	* dpadd.mk: add SRC_PATHADD
931
9322005-11-04  Simon J. Gerraty  <sjg@void.crufty.net>
933
934	* install-mk (MK_VERSION): bump version to 20051104
935	* prog.mk: remove all the LIBC?= junk, use
936	.-include libnames.mk instead (none by default).
937	also if USE_DPADD_MK is set, include that.
938
9392005-10-09  Simon J. Gerraty  <sjg@void.crufty.net>
940
941	* install-mk (MK_VERSION): bump version to 20051001
942	Add UnixWare.sys.mk from Klaus Heinz.
943
9442005-04-05  Simon J. Gerraty  <sjg@void.crufty.net>
945
946	* install-mk: always install *.sys.mk and if need be symlink one
947	to sys.mk
948
9492005-03-22  Simon J. Gerraty  <sjg@void.crufty.net>
950
951	* subdir.mk, own.mk: use .MAKE rather than MAKE
952
9532004-02-15  Simon J. Gerraty  <sjg@void.crufty.net>
954
955	* own.mk: don't use NetBSD's _SRC_TOP_ it can
956	cause confusion.  Also don't take just 'mk' as a
957	srctop indicator.
958
9592004-02-14  Simon J. Gerraty  <sjg@void.crufty.net>
960
961	* warnings.mk: overhauled, now very powerful.
962
9632004-02-03  Simon J. Gerraty  <sjg@void.crufty.net>
964
965	* Generic.sys.mk: need to use ${.PARSEDIR} with exists().
966
9672004-02-01  Simon J. Gerraty  <sjg@void.crufty.net>
968
969	* install-mk (MK_VERSION): bump version to 20040201
970	* extract HOST_TARGET stuff to host-target.mk so own.mk and
971	Generic.sys.mk can share.
972	* fix typo in autodep.mk _SUBDIRUSE not _SUBDIR.
973
9742003-09-30  Simon J. Gerraty  <sjg@void.crufty.net>
975
976	* install-mk (MK_VERSION): 20030930
977	* rename generic.sys.mk to Generic.sys.mk
978	so that it does not get installed (unless being used as sys.mk)
979	* set OS and ROOT_GROUP for those that we know the value.
980	for others (eg. Generic.sys.mk) wrap the != in an .ifndef so
981	we don't do it again for each sub-make.
982
9832003-09-28  Simon J. Gerraty  <sjg@void.crufty.net>
984
985	* install-mk (MK_VERSION): 20030928
986	Add some extra *.sys.mk from bootstrap-pkgsrc
987	some of these likely still need work.
988	Make everything default to root:wheel ownership,
989	sys.mk can set ROOT_GROUP accordingly.
990
9912003-08-07  Simon J. Gerraty  <sjg@void.crufty.net>
992
993	* install-mk: if FORCE_BSD_MK={cp,ln} use the ones in SYS_MK_DIR
994	not the portable ones.
995
9962003-07-31  Simon J. Gerraty  <sjg@void.crufty.net>
997
998	* install-mk: add ability to use cp -f when updating
999	destination .mk files.  Also now possible to play games with
1000	FORCE_SYS_MK=ln etc on *BSD machines to link /usr/share/mk/sys.mk
1001	into dest - not recommended unless you seriously want to.
1002
10032003-07-28  Simon J. Gerraty  <sjg@void.crufty.net>
1004
1005	* own.mk (IMPFLAGS): add support for COPTS.${IMPSRC:T} etc
1006	for semi-compatability with NetBSD.
1007
10082003-07-23  Simon J. Gerraty  <sjg@void.crufty.net>
1009
1010	* install-mk: add a version indicator
1011
10122003-07-22  Simon J. Gerraty  <sjg@void.crufty.net>
1013
1014	* prog.mk: don't try and use ${LIBCRT0} if its /dev/null
1015
1016	* install-mk: Allow FORCE_SYS_MK to come from env
1017
1018
1019
1020