1 2012-11-11 Simon J. Gerraty <sjg@bad.crufty.net>
3 * Makefile.in (MAKE_VERSION): 20121111
4 fix generation of bmake.cat1
6 2012-11-09 Simon J. Gerraty <sjg@bad.crufty.net>
8 * Makefile.in (MAKE_VERSION): 20121109
9 Merge with NetBSD make, pick up
10 o make.c: MakeBuildChild: return 0 so search continues if a
11 .ORDER dependency is detected.
12 o unit-tests/order: test the above
14 2012-11-02 Simon J. Gerraty <sjg@bad.crufty.net>
16 * Makefile.in (MAKE_VERSION): 20121102
17 Merge with NetBSD make, pick up
18 o cond.c: allow cond_state[] to grow.
19 In meta mode with a very large tree, we can hit the limit
20 while processing dirdeps.
22 2012-10-25 Simon J. Gerraty <sjg@bad.crufty.net>
24 * Makefile.in: we need to use ${srcdir} not ${.CURDIR}
26 2012-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
28 * Makefile.in (MAKE_VERSION): 20121010
29 o protect syntax that only bmake parses correctly.
30 o remove auto setting of FORCE_MACHINE, use configure's
31 --with-force-machine=whatever if that is desired.
33 2012-10-08 Simon J. Gerraty <sjg@bad.crufty.net>
35 * Makefile.in: do not lose history from make.1 when generating bmake.1
37 2012-10-07 Simon J. Gerraty <sjg@bad.crufty.net>
39 * Makefile.in (MAKE_VERSION): 20121007
40 Merge with NetBSD make, pick up
41 o compat.c: ignore empty commands - same as jobs mode.
42 o make.1: document meta chars that cause use of shell
44 2012-09-11 Simon J. Gerraty <sjg@bad.crufty.net>
46 * Makefile.in (MAKE_VERSION): bump version to 20120911
47 * bsd.after-import.mk: include Makefile.inc early and allow it to
50 2012-08-31 Simon J. Gerraty <sjg@bad.crufty.net>
52 * Makefile.in (MAKE_VERSION): bump version to 20120831
53 Merge with NetBSD make, pick up
54 o cast sizeof() to int for comparison
57 2012-08-30 Simon J. Gerraty <sjg@bad.crufty.net>
59 * Makefile.in (MAKE_VERSION): bump version to 20120830
60 Merge with NetBSD make, pick up
61 o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
62 o debug flag -dV causes -V to show raw value regardless.
64 2012-07-05 Simon J. Gerraty <sjg@bad.crufty.net>
66 * bsd.after-import.mk (after-import): ensure unit-tests/Makefile
69 2012-07-04 Simon J. Gerraty <sjg@bad.crufty.net>
71 * Makefile.in (MAKE_VERSION): bump version to 20120704
72 Merge with NetBSD make, pick up
73 o Job_ParseShell should call Shell_Init if it has been
75 * Makefile.in: set USE_META based on configure result.
76 also .PARSEDIR is safer indicator of bmake.
78 2012-06-26 Simon J. Gerraty <sjg@bad.crufty.net>
80 * Makefile.in: bump version to 20120626
81 ensure CPPFLAGS is in CFLAGS
82 * meta.c: avoid nested externs
83 * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
85 2012-06-20 Simon J. Gerraty <sjg@bad.crufty.net>
87 * Makefile.in (MAKE_VERSION): bump version to 20120620
88 Merge with NetBSD make, pick up
89 o make_malloc.c: avoid including make_malloc.h again
91 * Makefile.in: avoid bmake only syntax or protect with
92 .if defined(.MAKE.LEVEL)
93 * bsd.after-import.mk: replace .-include with .sinclude
94 ensure? SRCTOP gets a value
95 * configure.in: look for filemon.h in /usr/include/dev/filemon first.
97 2012-06-19 Simon J. Gerraty <sjg@bad.crufty.net>
99 * Makefile.in (MAKE_VERSION): bump version to 20120612
100 Merge with NetBSD make, pick up
101 o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
102 for greater portability.
103 o unit-tests/forloop: check that .for works as expected wrt
104 number of times and with "quoted strings".
106 2012-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
108 * Makefile.in (MAKE_VERSION): bump version to 20120606
109 Merge with NetBSD make, pick up
110 o compat.c: use kill(2) rather than raise(3).
111 * configure.in: look for sys/dev/filemon
112 * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
113 and pass BOOTSTRAP_XTRAS to boot-strap.
115 2012-06-04 Simon J. Gerraty <sjg@bad.crufty.net>
117 * Makefile.in (MAKE_VERSION): bump version to 20120604
118 Merge with NetBSD make, pick up
119 o util.c and var.c share same var for tracking if environ
120 has been reallocated.
121 o util.c provide getenv with setenv.
122 * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
123 when the shell actively strips .MAKE.* from the environment.
124 We still refer to the variable always as .MAKE.LEVEL
125 * util.c fix bug in findenv() was finding prefix of name.
126 * compat.c: re-raising SIGINT etc after running .INTERRUPT
127 results in more reliable termination of all activity on many
130 2012-06-02 Simon J. Gerraty <sjg@bad.crufty.net>
132 * Makefile.in (MAKE_VERSION): bump version to 20120602
133 Merge with NetBSD make, pick up
134 o for.c: handle quoted items in .for list
136 2012-05-30 Simon J. Gerraty <sjg@bad.crufty.net>
138 * Makefile.in (MAKE_VERSION): bump version to 20120530
139 Merge with NetBSD make, pick up
140 o compat.c: ignore empty command.
142 2012-05-24 Simon J. Gerraty <sjg@bad.crufty.net>
144 * Makefile.in (MAKE_VERSION): bump version to 20120524
145 * FILES: add bsd.after-import.mk:
146 A simple means of integrating bmake into a BSD build system.
148 2012-05-20 Simon J. Gerraty <sjg@bad.crufty.net>
150 * Makefile.in (MAKE_VERSION): bump version to 20120520
151 Merge with NetBSD make, pick up
152 o increased limit for nested conditionals.
154 2012-05-18 Simon J. Gerraty <sjg@bad.crufty.net>
156 * Makefile.in (MAKE_VERSION): bump version to 20120518
157 Merge with NetBSD make, pick up
158 o use _exit(2) in signal hanlder
159 o Don't use the [dir] cache when building nodes that might have
160 changed since the last exec.
161 o Avoid nested extern declaration warnings.
163 2012-04-27 Simon J. Gerraty <sjg@bad.crufty.net>
165 * meta.c (fgetLine): avoid %z - not portable.
166 * parse.c: Since we moved include of sys/mman.h
167 and def's of MAP_COPY etc. we got dups from a merge.
169 2012-04-24 Simon J. Gerraty <sjg@bad.crufty.net>
171 * Makefile.in (MAKE_VERSION): bump version to 20120420
172 Merge with NetBSD make, pick up
173 o restore duplicate supression in .MAKE.MAKEFILES
174 runtime saving can be significant.
175 o Var_Subst() uses Buf_DestroyCompact() to reduce memory
176 consumption up to 20%.
178 2012-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
180 * Makefile.in (MAKE_VERSION): bump version to 20120420
181 Merge with NetBSD make, pick up
182 o remove duplicate supression in .MAKE.MAKEFILES
183 o improved dir cache behavior
184 o gmake'ish export command
186 2012-03-25 Simon J. Gerraty <sjg@bad.crufty.net>
188 * Makefile.in (MAKE_VERSION): bump version to 20120325
189 Merge with NetBSD make, pick up
190 o fix parsing of :[#] in conditionals.
192 2012-02-10 Simon J. Gerraty <sjg@bad.crufty.net>
194 * Makefile.in: replace use of .Nx in bmake.1 with NetBSD
195 since some systems cannot cope with .Nx <version>
197 2011-11-14 Simon J. Gerraty <sjg@bad.crufty.net>
199 * Makefile.in (MAKE_VERSION): bump version to 20111111
200 Merge with NetBSD make, pick up
201 o debug output for .PARSEDIR and .PARSEFILE
203 2011-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
205 * Makefile.in (MAKE_VERSION): bump version to 20111010
207 2011-10-09 Simon J. Gerraty <sjg@bad.crufty.net>
209 * boot-strap: check for an expected file in the dirs we look for.
210 * make-bootstrap.sh: pass on LDSTATIC
212 2011-10-01 Simon J. Gerraty <sjg@bad.crufty.net>
214 * Makefile.in (MAKE_VERSION): bump version to 20111001
215 Merge with NetBSD make, pick up
216 o ensure .PREFIX is set for .PHONY
217 and .TARGET set for .PHONY run via .END
218 o __dead used consistently
220 2011-09-10 Simon J. Gerraty <sjg@bad.crufty.net>
222 * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
224 2011-09-05 Simon J. Gerraty <sjg@bad.crufty.net>
226 * Makefile.in (MAKE_VERSION): bump version to 20110905
227 Merge with NetBSD make, pick up
228 o meta_oodate: ignore makeDependfile
230 2011-08-28 Simon J. Gerraty <sjg@bad.crufty.net>
232 * Makefile.in (MAKE_VERSION): bump version to 20110828
233 Merge with NetBSD make, pick up
234 o silent=yes in .MAKE.MODE causes meta mode to mark targets
235 as SILENT if a .meta file is created
237 2011-08-18 Simon J. Gerraty <sjg@bad.crufty.net>
239 * Makefile.in (MAKE_VERSION): bump version to 20110818
240 Merge with NetBSD make, pick up
241 o in meta mode, if target flagged .META a missing .meta file
242 means target is out-of-date
243 o fixes for gcc 4.5 warnings
244 o simplify job printing code
246 2011-08-09 Simon J. Gerraty <sjg@bad.crufty.net>
248 * Makefile.in (MAKE_VERSION): bump version to 20110808
249 Merge with NetBSD make, pick up
250 o do not touch OP_SPECIAL targets when doing make -t
252 2011-06-22 Simon J. Gerraty <sjg@bad.crufty.net>
254 * Makefile.in (MAKE_VERSION): bump version to 20110622
255 Merge with NetBSD make, pick up
256 o meta_oodate detect corrupted .meta file and declare oodate.
257 * configure.in: add check for setsid
259 2011-06-07 Simon J. Gerraty <sjg@bad.crufty.net>
261 * Merge with NetBSD make, pick up
262 o unit-tests/modts now works on MirBSD
264 2011-06-04 Simon J. Gerraty <sjg@bad.crufty.net>
266 * Makefile.in (MAKE_VERSION): bump version to 20110606
267 Merge with NetBSD make, pick up
268 o ApplyModifiers: when we parse a variable which is not
269 the entire modifier string, or not followed by ':', do not
270 consider it as containing modifiers.
271 o loadfile: ensure newline at end of mapped file.
273 2011-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
275 * Makefile.in (MAKE_VERSION): bump version to 20110505
276 Merge with NetBSD make, pick up
277 o .MAKE.META.BAILIWICK - list of prefixes which define the scope
278 of make's control. In meta mode, any generated file within
279 said bailiwick, which is found to be missing, causes current
280 target to be out-of-date.
282 2011-04-11 Simon J. Gerraty <sjg@bad.crufty.net>
284 * Makefile.in (MAKE_VERSION): bump version to 20110411
285 Merge with NetBSD make, pick up
286 o when long modifiers fail to match, check sysV style.
289 2011-04-10 Simon J. Gerraty <sjg@bad.crufty.net>
291 * Makefile.in (MAKE_VERSION): bump version to 20110410
292 Merge with NetBSD make, pick up
293 o :hash - cheap 32bit hash of value
294 o :localtime, :gmtime - use value as format string for strftime.
296 2011-03-30 Simon J. Gerraty <sjg@bad.crufty.net>
298 * Makefile.in (MAKE_VERSION): bump version to 20110330
299 mostly because its a cooler version.
300 Merge with NetBSD make, pick up
301 o NetBSD tags for meta.[ch]
302 o job.c call meta_job_finish() after meta_job_error().
303 o meta_job_error() should call meta_job_finish() to ensure
304 .meta file is closed, and safe to copy - if .ERROR target wants.
305 meta_job_finish() is safe to call repeatedly.
307 2011-03-29 Simon J. Gerraty <sjg@bad.crufty.net>
309 * unit-tests/modts: use printf if it is a builtin,
310 to save us from MirBSD
312 * Makefile.in (MAKE_VERSION): bump version to 20110329
313 Merge with NetBSD make, pick up
314 o fix for use after free() in CondDoExists().
315 o meta_oodate() report extra commands and return earlier.
317 2011-03-27 Simon J. Gerraty <sjg@bad.crufty.net>
319 * Makefile.in (MAKE_VERSION): bump version to 20110327
320 Merge with NetBSD make, pick up
321 o meta.c, if .MAKE.MODE contains curdirOk=yes
322 allow creating .meta files in .CURDIR
323 * boot-strap (TOOL_DIFF): aparently at least on linux distro
324 formats the output of 'type' differently - so eat any "()"
326 2011-03-06 Simon J. Gerraty <sjg@bad.crufty.net>
328 * Makefile.in (MAKE_VERSION): bump version to 20110306
329 Merge with NetBSD make, pick up
330 o meta.c, only do getcwd() once
332 2011-03-05 Simon J. Gerraty <sjg@bad.crufty.net>
334 * Makefile.in (MAKE_VERSION): bump version to 20110305
335 Merge with NetBSD make, pick up
336 o correct sysV substitution handling of empty lhs and variable
337 o correct exists() check for dir with trailing /
338 o correct handling of modifiers for non-existant variables
339 during evaluation of conditionals.
340 o ensure MAP_FILE is defined.
341 o meta.c use curdir[] now exported by main.c
343 2011-02-25 Simon J. Gerraty <sjg@bad.crufty.net>
345 * Makefile.in (MAKE_VERSION): bump version to 20110225
346 Merge with NetBSD make, pick up
347 o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
348 makefiles have been read.
349 o fix example of :? modifier in man page.
351 2011-02-13 Simon J. Gerraty <sjg@bad.crufty.net>
353 * Makefile.in (MAKE_VERSION): bump version to 20110214
354 Merge with NetBSD make, pick up
355 o meta.c handle realpath() failing when generating meta file
358 * sigcompat.c: convert to ansi so we can use higher warning levels.
361 2011-02-07 Simon J. Gerraty <sjg@bad.crufty.net>
363 * Makefile.in (MAKE_VERSION): bump version to 20110207
364 Merge with NetBSD make, pick up
365 o fix for bug in meta mode.
367 2011-01-03 Simon J. Gerraty <sjg@bad.crufty.net>
369 * parse.c: SunOS 5.8 at least does not have MAP_FILE
371 2011-01-01 Simon J. Gerraty <sjg@bad.crufty.net>
373 * Makefile.in (MAKE_VERSION): bump version to 20110101
374 Merge with NetBSD make, pick up
375 o use mmap(2) if available, for reading makefiles
377 2010-12-15 Simon J. Gerraty <sjg@bad.crufty.net>
379 * Makefile.in (MAKE_VERSION): bump version to 20101215
380 Merge with NetBSD make, pick up
381 o ensure meta_job_error() does not report a previous .meta file
384 2010-12-10 Simon J. Gerraty <sjg@bad.crufty.net>
386 * Makefile.in (MAKE_VERSION): bump version to 20101210
387 Merge with NetBSD make, pick up
388 o meta_oodate: track cwd per process, and only consider target
389 out-of-date if missing file is outside make's CWD.
390 Ignore files in /tmp/ etc.
391 o to ensure unit-tests results match, need to control LC_ALL
393 o fix for parsing bug in var.c
395 2010-11-26 Simon J. Gerraty <sjg@bad.crufty.net>
397 * Makefile.in (MAKE_VERSION): bump version to 20101126
398 Merge with NetBSD make, pick up
399 o if stale dependency is an IMPSRC, search via .PATH
400 o meta_oodate: if a referenced file is missing, target is
402 o meta_oodate: if a target uses .OODATE in its commands,
403 it (.OODATE) needs to be recomputed.
404 o keep a pointer to youngest child node, rather than just its
407 2010-11-02 Simon J. Gerraty <sjg@bad.crufty.net>
409 * Makefile.in (MAKE_VERSION): bump version to 20101101
411 2010-10-16 Simon J. Gerraty <sjg@bad.crufty.net>
413 * machine.sh: like os.sh,
414 allow for uname -p producing useless drivel
416 2010-09-13 Simon J. Gerraty <sjg@bad.crufty.net>
418 * boot-strap: document configure knobs for meta and filemon.
420 * Makefile.in (MAKE_VERSION): bump version to 20100911
421 Merge with NetBSD make, pick up
424 * make-bootstrap.sh.in: handle meta.c
425 * configure.in: add knobs for use_meta and filemon_h
426 also, look for dirname, str[e]sep and strlcpy
427 * util.c: add simple err[x] and warn[x]
429 2010-08-08 Simon J. Gerraty <sjg@bad.crufty.net>
431 * boot-strap (TOOL_DIFF): set this to ensure tests use
432 the same version of diff that configure tested
434 * Makefile.in (MAKE_VERSION): bump version to 20100808
435 Merge with NetBSD make, pick up
436 o in jobs mode, when we discover we cannot make something,
437 call PrintOnError before exit.
439 2010-08-06 Simon J. Gerraty <sjg@bad.crufty.net>
441 * Makefile.in (MAKE_VERSION): bump version to 20100806
442 Merge with NetBSD make, pick up
443 o formatting fixes for ignored errors
444 o ensure jobs are cleaned up regardless of where wait() was called.
446 2010-06-28 Simon J. Gerraty <sjg@bad.crufty.net>
448 * Makefile.in (MAKE_VERSION): bump version to 20100618
449 * os.sh (MACHINE_ARCH): watch out for drivel from uname -p
451 2010-06-16 Simon J. Gerraty <sjg@bad.crufty.net>
453 * Makefile.in (MAKE_VERSION): bump version to 20100616
454 Merge with NetBSD make, pick up
456 o call PrintOnError from JobFinish when we detect an error we
459 2010-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
461 * Makefile.in (MAKE_VERSION): bump version to 20100606
462 Merge with NetBSD make, pick up
465 2010-06-05 Simon J. Gerraty <sjg@bad.crufty.net>
467 * Makefile.in (MAKE_VERSION): bump version to 20100605
468 Merge with NetBSD make, pick up
469 o use bmake_signal() which is a wrapper around sigaction()
471 o add .export-env to allow exporting variables to environment
472 without tracking (so no re-export when the internal value is
475 2010-05-24 Simon J. Gerraty <sjg@bad.crufty.net>
477 * Makefile.in (MAKE_VERSION): bump version to 20100524
478 Merge with NetBSD make, pick up
479 o fix for .info et al being greedy.
481 2010-05-23 Simon J. Gerraty <sjg@bad.crufty.net>
483 * Makefile.in (MAKE_VERSION): bump version to 20100520
484 Merge with NetBSD make, pick up
485 o back to using realpath on argv[0]
486 but only if contains '/' and does not start with '/'.
488 2010-05-10 Simon J. Gerraty <sjg@bad.crufty.net>
490 * boot-strap: use absolute path for bmake when running tests.
492 * Makefile.in (MAKE_VERSION): bump version to 20100510
493 Merge with NetBSD make, pick up
494 o revert use of realpath on argv[0]
495 too many corner cases.
496 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
498 2010-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
500 * Makefile.in (MAKE_VERSION): bump version to 20100505
501 Merge with NetBSD make, pick up
502 o fix for missed SIGCHLD when compiled with SunPRO
503 actually for bmake, defining FORCE_POSIX_SIGNALS would have
506 2010-04-30 Simon J. Gerraty <sjg@bad.crufty.net>
508 * Makefile.in (MAKE_VERSION): bump version to 20100430
509 Merge with NetBSD make, pick up
510 o fflush stdout before writing to stdout
512 2010-04-23 Simon J. Gerraty <sjg@bad.crufty.net>
514 * Makefile.in (MAKE_VERSION): bump version to 20100423
515 Merge with NetBSD make, pick up
516 o updated unit tests for Haiku (this time for sure).
517 * boot-strap: based on patch from joerg
518 honor --with-default-sys-path better.
519 * boot-strap: remove mention of --with-prefix-sys-path
521 2010-04-22 Simon J. Gerraty <sjg@bad.crufty.net>
523 * Makefile.in (MAKE_VERSION): bump version to 20100422
524 * Merge with NetBSD make, pick up
525 o fix for vfork() on Darwin.
526 o fix for bogus $TMPDIR.
527 o set .MAKE.MODE=compat for -B
528 o set .MAKE.JOBS=max_jobs for -j max_jobs
529 o allow unit-tests to run without any *.mk
530 o unit-tests/modmisc be more conservative in dirs presumed to exist.
531 * boot-strap: ignore /usr/share/mk except on NetBSD.
532 * unit-tests/Makefile.in: set LANG=C when running unit-tests to
533 ensure sort(1) behaves as expected.
535 2010-04-21 Simon J. Gerraty <sjg@bad.crufty.net>
537 * boot-strap: add FindHereOrAbove so we can use -m .../mk
539 2010-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
541 * Makefile.in (MAKE_VERSION): bump version to 20100420
542 * Merge with NetBSD make, pick up
543 o fix for variable realpath() behavior.
544 we have to stat(2) the result to be sure.
545 o fix for .export (all) when nested vars use :sh
547 2010-04-14 Simon J. Gerraty <sjg@bad.crufty.net>
549 * Makefile.in (MAKE_VERSION): bump version to 20100414
550 * Merge with NetBSD make, pick up
551 o use realpath to resolve argv[0] (for .MAKE) if needed.
552 o add realpath from libc.
553 o add :tA to resolve variable via realpath(3) if possible.
555 2010-04-08 Simon J. Gerraty <sjg@bad.crufty.net>
557 * Makefile.in (MAKE_VERSION): bump version to 20100408
558 * Merge with NetBSD make, pick up
559 o unit tests for .ERROR, .error
560 o fix for .ERROR to ensure it cannot be default target.
562 2010-04-06 Simon J. Gerraty <sjg@bad.crufty.net>
564 * Makefile.in (MAKE_VERSION): bump version to 20100406
565 * Merge with NetBSD make, pick up
566 o fix for compat mode "Error code" going to debug_file.
567 o fix for .ALLSRC being populated twice.
568 o support for .info, .warning and .error directives
569 o .MAKE.MODE to control make's operational mode
570 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
572 o .MAKE.DEPENDFILE to control the name of the depend file
573 o .ERROR target - run on failure.
575 2010-03-18 Simon J. Gerraty <sjg@bad.crufty.net>
577 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
579 * os.sh,arch.c: patch for Haiku from joerg at netbsd
581 2010-03-17 Simon J. Gerraty <sjg@bad.crufty.net>
583 * Makefile.in (MAKE_VERSION): bump version to 20100222
584 * Merge with NetBSD make, pick up
585 o better error msg for .for with mutiple inter vars
588 o use make-bootstrap.sh from joerg at netbsd
589 to avoid the need for a native make when bootstrapping.
590 o add "" everywhere ;-)
591 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
592 otherwise the pre-formated version.
594 2010-01-04 Simon J. Gerraty <sjg@bad.crufty.net>
596 * Makefile.in (MAKE_VERSION): bump version to 20100102
597 * Merge with NetBSD make, pick up:
600 2009-11-18 Simon J. Gerraty <sjg@void.crufty.net>
602 * Makefile.in (MAKE_VERSION): bump version to 20091118
603 * Merge with NetBSD make, pick up:
605 o report lines that start with '.' and should have ':'
606 (catch typo's of .el*if).
608 2009-10-30 Simon J. Gerraty <sjg@void.crufty.net>
610 * configure.in: Ensure that srcdir and mksrc are absolute paths.
612 2009-10-09 Simon J. Gerraty <sjg@void.crufty.net>
614 * Makefile.in (MAKE_VERSION): fix version to 20091007
616 2009-10-07 Simon J. Gerraty <sjg@void.crufty.net>
618 * Makefile.in (MAKE_VERSION): bump version to 200910007
619 * Merge with NetBSD make, pick up:
620 o fix for parsing of :S;...;...; applied to .for loop iterator
621 appearing in a dependency line.
623 2009-09-09 Simon J. Gerraty <sjg@void.crufty.net>
625 * Makefile.in (MAKE_VERSION): bump version to 20090909
626 * Merge with NetBSD make, pick up:
627 o fix for -C, .CURDIR and .OBJDIR
629 o allow share_dir to be set independent of prefix.
630 o select default share_dir better when prefix ends in $HOST_TARGET
631 o if FORCE_BSD_MK etc were set, include them in the suggested
634 2009-09-08 Simon J. Gerraty <sjg@void.crufty.net>
636 * Makefile.in (MAKE_VERSION): bump version to 20090908
637 * Merge with NetBSD make, pick up:
638 o .MAKE.LEVEL for recursion tracking
639 o fix for :M scanning \:
641 2009-09-03 Simon J. Gerraty <sjg@void.crufty.net>
643 * configure.in: Don't -D__EXTENSIONS__ if
644 AC_USE_SYSTEM_EXTENSIONS says "no".
646 2009-08-26 Simon J. Gerraty <sjg@void.crufty.net>
648 * Makefile.in (MAKE_VERSION): bump version to 20090826
649 Simplify MAKE_VERSION to just the bare date.
650 * Merge with NetBSD make, pick up:
651 o -C directory support.
652 o support for SIGINFO
653 o use $TMPDIR for temp files.
654 o child of vfork should be careful about modifying parent's state.
657 2009-03-26 Simon J. Gerraty <sjg@void.crufty.net>
659 * Appy some patches for MiNT from David Brownlee
661 2009-02-26 Simon J. Gerraty <sjg@void.crufty.net>
663 * Makefile.in (BMAKE_VERSION): bump version to 20090222
664 * Merge with NetBSD make, pick up:
665 o Possible null pointer de-ref in Var_Set.
667 2009-02-08 Simon J. Gerraty <sjg@void.crufty.net>
669 * Makefile.in (BMAKE_VERSION): bump version to 20090204
670 * Merge with NetBSD make, pick up:
671 o bmake_malloc et al moved to their own .c
672 o Count both () and {} when looking for the end of a :M pattern
673 o Change 'Buffer' so that it is the actual struct, not a pointer to it.
674 o strlist.c - functions for processing extendable arrays of pointers to strings.
675 o ClientData replaced with void *, so const void * can be used.
676 o New debug flag C for DEBUG_CWD
678 2008-11-11 Simon J. Gerraty <sjg@void.crufty.net>
680 * Makefile.in (BMAKE_VERSION): bump version to 20081111
681 Apply patch from Joerg Sonnenberge to
683 o remove some redundant checks
684 o check for emlloc etc only in libutil and require the whole family.
686 o remove [v]asprintf which is no longer used.
688 2008-11-04 Simon J. Gerraty <sjg@void.crufty.net>
690 * Makefile.in (BMAKE_VERSION): bump version to 20081101
691 * Merge with NetBSD make, pick up:
692 o util.c: avoid use of putenv() - christos
694 2008-10-30 Simon J. Gerraty <sjg@void.crufty.net>
696 * Makefile.in (BMAKE_VERSION): bump version to 20081030
697 pick up man page tweaks.
699 2008-10-29 Simon J. Gerraty <sjg@void.crufty.net>
701 * Makefile.in: move processing of LIBOBJS to after is definition!
702 thus we'll have getenv.c in SRCS only if needed.
704 * make.1: add examples of how to use :?
706 * Makefile.in (BMAKE_VERSION): bump version to 20081029
707 * Merge with NetBSD make, pick up:
708 o fix for .END processing with -j
709 o segfault from Parse_Error when no makefile is open
710 o handle numeric expressions in any variable expansion
711 o debug output now defaults to stderr, -dF to change it - apb
712 o make now uses bmake_malloc etc so that it can build natively
713 on A/UX - wasn't an issue for bmake, but we want to keep in sync.
715 2008-09-27 Simon J. Gerraty <sjg@void.crufty.net>
717 * Makefile.in (BMAKE_VERSION): bump version to 20080808
718 * Merge with NetBSD make, pick up:
719 o fix for PR/38840: Pierre Pronchery: make crashes while parsing
720 long lines in Makefiles
721 o optimizations for VarQuote by joerg
722 o fix for PR/38756: dominik: make dumps core on invalid makefile
724 2008-05-15 Simon J. Gerraty <sjg@void.crufty.net>
726 * Makefile.in (BMAKE_VERSION): bump version to 20080515
727 * Merge with NetBSD make, pick up:
728 o fix skip setting vars in VAR_GLOBAL context, to handle
729 cases where VAR_CMD is used for other than command line vars.
731 2008-05-14 Simon J. Gerraty <sjg@void.crufty.net>
733 * boot-strap (make_version): we may need to look in
734 $prefix/share/mk for sys.mk
736 * Makefile.in (BMAKE_VERSION): bump version to 20080514
737 * Merge with NetBSD make, pick up:
738 o skip setting vars in VAR_GLOBAL context, when already set in
739 VAR_CMD which takes precedence.
741 2008-03-30 Simon J. Gerraty <sjg@void.crufty.net>
743 * Makefile.in (BMAKE_VERSION): bump version to 20080330
744 * Merge with NetBSD make, pick up:
745 o fix for ?= when LHS contains variable reference.
747 2008-02-15 Simon J. Gerraty <sjg@void.crufty.net>
749 * merge some patches from NetBSD pkgsrc.
751 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
752 the MAKSYSPATH used during bootstrap.
754 * Makefile.in (BMAKE_VERSION): bump version to 20080215
755 * Merge with NetBSD make, pick up:
756 o warn if non-space chars follow 'empty' in a conditional.
758 2008-01-18 Simon J. Gerraty <sjg@void.crufty.net>
760 * Makefile.in (BMAKE_VERSION): bump version to 20080118
761 * Merge with NetBSD make, pick up:
762 o consider dependencies read from .depend as optional - dsl
763 o remember when buffer for reading makefile grows - dsl
764 o add -dl (aka LOUD) - David O'Brien
766 2007-10-22 Simon J. Gerraty <sjg@void.crufty.net>
768 * Makefile.in (BMAKE_VERSION): bump version to 20071022
769 * Merge with NetBSD make, pick up:
770 o Allow .PATH<suffix> to be used for .include ""
772 * boot-strap: source default settings from .bmake-boot-strap.rc
774 2007-10-16 Simon J. Gerraty <sjg@void.crufty.net>
776 * Makefile.in: fix maninstall on various systems
777 provided that our man.mk is used.
778 For non-BSD systems we install the preformatted page
781 2007-10-15 Simon J. Gerraty <sjg@void.crufty.net>
783 * boot-strap: make bmake.1 too, so maninstall works.
785 2007-10-14 Simon J. Gerraty <sjg@void.crufty.net>
787 * Makefile.in (BMAKE_VERSION): bump version to 20071014
788 * Merge with NetBSD make, pick up:
789 o revamped handling of defshell - configure no longer needs to
790 know the content of the shells array - apb
791 o stop Var_Subst modifying its input - apb
792 o avoid calling ParseTrackInput too often - dsl
794 2007-10-11 Simon J. Gerraty <sjg@void.crufty.net>
796 * Makefile.in (BMAKE_VERSION): bump version to 20071011
797 * Merge with NetBSD make, pick up:
798 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
800 * sigcompat.c: some tweaks for HP-UX 11.x based on
801 patch from Tobias Nygren
803 * configure.in: update handling of --with-defshell to match
804 new make behavior. --with-defshell=/usr/xpg4/bin/sh
805 will now do what one might hope - provided the chosen shell
806 behaves enough like sh.
808 2007-10-08 Simon J. Gerraty <sjg@void.crufty.net>
810 * Makefile.in (BMAKE_VERSION): bump to 20071008
811 * Merge with NetBSD make, pick up:
812 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
813 o .export/.MAKE.EXPORTED - export of variables - sjg
814 o .MAKE.MAKEFILES - track all makefiles read - sjg
815 o performance improvements - dsl
816 o revamp parallel job scheduling - dsl
818 2006-07-28 Simon J. Gerraty <sjg@void.crufty.net>
820 * Makefile.in (BMAKE_VERSION): bump to 20060728
821 * Merge with NetBSD make, pick up:
822 o extra debug info during variable and cond processing - sjg
823 o shell definition now covers newline - rillig
824 o minor mem leak in PrintOnError - sjg
826 2006-05-11 Simon J. Gerraty <sjg@void.crufty.net>
828 * Makefile.in (BMAKE_VERSION): bump to 20060511
829 * Merge with NetBSD make, pick up:
830 o more memory leaks - coverity
831 o possible overflow in ArchFindMember - coverity
832 o extract variable modifier code out of Var_Parse()
833 so it can be called recursively - sjg
834 o unit-tests/moderrs - sjg
836 2006-04-12 Simon J. Gerraty <sjg@void.crufty.net>
838 * Makefile.in (BMAKE_VERSION): bump to 20060412
839 * Merge with NetBSD make, pick up:
840 o fixes for some memory leaks - coverity
841 o only read first sys.mk etc when searching sysIncPath - sjg
843 * main.c (ReadMakefile): remove hack for __INTERIX that prevented
844 setting ${MAKEFILE} - OBATA Akio
846 2006-03-18 Simon J. Gerraty <sjg@void.crufty.net>
848 * Makefile.in (BMAKE_VERSION): bump to 20060318
849 * Merge with NetBSD make, pick up:
850 o cleanup of job.c to remove remote handling, distcc is more
851 useful and this code was likely bit-rotting - dsl
852 o fix for :P modifier - sjg
853 * boot-strap: set default prefix to something reasonable
856 2006-03-01 Simon J. Gerraty <sjg@void.crufty.net>
858 * Makefile.in (BMAKE_VERSION): bump to 20060301
859 * Merge with NetBSD make, pick up:
860 o make .WAIT apply recursively, document and test case - apb
861 o allow variable modifiers in a variable appear anywhere in
862 modifier list, document and test case - sjg
864 2006-02-22 Simon J. Gerraty <sjg@void.crufty.net>
866 * Makefile.in (BMAKE_VERSION): bump to 20060222
867 * Merge with NetBSD make, pick up:
868 o improved job token handling - dsl
869 o SIG_DFL the correct signal before exec - dsl
870 o more debug info during parsing - dsl
871 o allow variable modifiers to be specified via variable - sjg
872 * boot-strap: explain why we died if no mksrc
874 2005-11-05 Simon J. Gerraty <sjg@void.crufty.net>
876 * Makefile.in (BMAKE_VERSION): bump to 20051105
877 * configure.in: always set default_sys_path
878 default is ${prefix}/share/mk
879 - remove prefix_sys_path, anyone wanting more than above
880 needs to set it manually.
882 2005-11-04 Simon J. Gerraty <sjg@void.crufty.net>
884 * boot-strap: make this a bit easier for pkgsrc folk.
885 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
886 'mips' while pkgsrc wants 'mipseb' or 'mipsel'
888 2005-11-02 Simon J. Gerraty <sjg@void.crufty.net>
890 * Makefile.in (BMAKE_VERSION): bump to 20051102
891 * job.c (JobFinish): fix likely ancient merge lossage
892 fix from Todd Vierling.
893 * boot-strap (srcdir): allow setting mksrc=none
895 2005-10-31 Simon J. Gerraty <sjg@void.crufty.net>
897 * Makefile.in (BMAKE_VERSION): bump to 20051031
898 * ranlib.h: skip on OSF too.
901 2005-10-10 Simon J. Gerraty <sjg@void.crufty.net>
903 * Makefile.in (BMAKE_VERSION): bump to 20051002
906 2005-10-09 Simon J. Gerraty <sjg@void.crufty.net>
908 * Makefile.in (BMAKE_VERSION): bump to 20051001
909 support for UnixWare and some other systems,
910 based on patches from pkgsrc/bootstrap
912 2005-09-03 Simon J. Gerraty <sjg@void.crufty.net>
914 * Makefile.in (BMAKE_VERSION): bump to 20050901
915 * Merge with NetBSD make, pick up:
916 o possible parse error causing us to wander off.
918 2005-06-06 Simon J. Gerraty <sjg@void.crufty.net>
920 * Makefile.in (BMAKE_VERSION): bump to 20050606
921 * Merge with NetBSD make, pick up:
922 o :0x modifier for randomizing a list
923 o fixes for a number of -Wuninitialized issues.
925 2005-05-30 Simon J. Gerraty <sjg@void.crufty.net>
927 * Makefile.in (BMAKE_VERSION): bump to 20050530
928 * Merge with NetBSD make, pick up:
929 o Handle dependencies for .BEGIN, .END and .INTERRUPT
931 * README: was seriously out of date.
933 2005-03-22 Simon J. Gerraty <sjg@void.crufty.net>
935 * Important to use .MAKE rather than MAKE.
937 2005-03-15 Simon J. Gerraty <sjg@void.crufty.net>
939 * Makefile.in (BMAKE_VERSION): bump to 20050315
940 * Merge with NetBSD make, pick up:
941 o don't mistake .elsefoo for .else
942 o use suffix-specific search path correctly
943 o bunch of style nits
945 2004-05-11 Simon J. Gerraty <sjg@void.crufty.net>
948 o ensure that args to --src and --with-mksrc
949 are resolved before giving them to configure.
950 o add -o "objdir" so that builder can control it,
951 default is $OS as determined by os.sh
952 o add -q to suppress all the install instructions.
954 2004-05-08 Simon J. Gerraty <sjg@void.crufty.net>
956 * Remove __IDSTRING()
958 * Makefile.in (BMAKE_VERSION): bump to 20040508
959 * Merge with NetBSD make, pick up:
961 - remove '-e' from compat mode
962 - add support for '+' command-line prefix.
963 o fix for handling '--' on command-line.
964 o fix include in lst.lib/lstInt.h to simplify '-I's
965 o we also picked up replacement of MAKE_BOOTSTRAP
966 with !MAKE_NATIVE which is a noop, but possibly confusing.
968 2004-04-14 Simon J. Gerraty <sjg@void.crufty.net>
970 * Makefile.in (BMAKE_VERSION): bump to 20040414
971 * Merge with NetBSD make, pick up:
972 o allow quoted strings on lhs of conditionals
973 o issue warning when extra .else is seen
974 o print line numer when errors encountered during parsing from
977 2004-02-20 Simon J. Gerraty <sjg@void.crufty.net>
979 * Makefile.in (BMAKE_VERSION): bump to 20040220
980 * Merge with NetBSD make, pick up:
981 o fix for old :M parsing bug.
982 o re-jigged unit-tests
984 2004-02-15 Simon J. Gerraty <sjg@void.crufty.net>
986 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
987 so that './bmake -f Makefile test' works.
989 2004-02-14 Simon J. Gerraty <sjg@void.crufty.net>
991 * Makefile.in: (BMAKE_VERSION): bump to 20040214
992 * Merge with NetBSD make, pick up:
993 o search upwards for *.mk
994 o fix for double free of var substitution buffers
995 o use of getopt replaced with custom code, since the usage
996 (re-scanning) isn't posix compatible.
998 2004-02-12 Simon J. Gerraty <sjg@void.crufty.net>
1000 * arch.c: don't include ranlib.h on ELF systems
1001 (thanks to Chuck Cranor <chuck@ece.cmu.edu>).
1003 2004-01-18 Simon J. Gerraty <sjg@void.crufty.net>
1005 * Makefile.in (BMAKE_VERSION): bump to 20040118
1007 * boot-strap (while): export vars we assign to on cmdline
1008 * unit-test/Makefile.in: ternary is .PHONY
1010 2004-01-08 Simon J. Gerraty <sjg@void.crufty.net>
1012 * Makefile.in (BMAKE_VERSION): bump version to 20040108
1013 * Merge with NetBSD make, pick up:
1014 o fix for ternary modifier
1016 2004-01-06 Simon J. Gerraty <sjg@void.crufty.net>
1018 * Makefile.in (BMAKE_VERSION): bump version to 20040105
1019 * Merge with NetBSD make, pick up:
1020 o fix for cond.c to handle compound expressions better
1021 o variable expansion within sysV style replacements
1023 2003-12-22 Simon J. Gerraty <sjg@void.crufty.net>
1025 * Make portable snprintf safer - output to /dev/null first to
1028 * Makefile.in (BMAKE_VERSION): bump version to 20031222
1029 * Merge with NetBSD make, pick up:
1030 o -dg3 to show input graph when things go wrong.
1031 o explicitly look for makefiles in objdir if not found in curdir so
1032 that errors in .depend etc will be reported accurarely.
1033 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1034 instead as it more accurately reflects the expected behavior and
1035 is more consistently implemented.
1036 o avoid use of asprintf.
1038 2003-09-28 Simon J. Gerraty <sjg@void.crufty.net>
1040 * util.c: Add asprintf and vasprintf.
1042 * Makefile.in (BMAKE_VERSION): bump version to 20030928
1043 * Merge with NetBSD make, pick up:
1044 :[] modifier - allows picking words from a variable.
1045 :tW modifier - allows treating value as one big word.
1046 W flag for :C and :S - allows treating value as one big word.
1048 2003-09-12 Simon J. Gerraty <sjg@void.crufty.net>
1050 * Merge with NetBSD make
1051 pick up -de flag to enable printing failed command.
1052 don't skip 1st two dir entries (normally . and ..) since
1053 coda does not have them.
1055 2003-09-09 Simon J. Gerraty <sjg@void.crufty.net>
1057 * Makefile.in (BMAKE_VERSION): bump version to 20030909
1058 * Merge with NetBSD make, pick up:
1059 - changes for -V '${VAR}' to print fully expanded value
1061 - CompatRunCommand now prints the command that failed.
1062 - several files got updated 3 clause Berkeley license.
1064 2003-08-02 Simon J. Gerraty <sjg@void.crufty.net>
1066 * boot-strap: Allow setting configure args on command line.
1068 2003-07-31 Simon J. Gerraty <sjg@void.crufty.net>
1070 * configure.in: add --with-defshell to allow sh or ksh
1071 to be selected as default shell.
1073 * Makefile.in: bump version to 20030731
1075 * Merge with NetBSD make
1076 Pick up .SHELL spec for ksh and associate man page changes.
1077 Also compat mode now uses the same shell specs.
1079 2003-07-29 Simon J. Gerraty <sjg@void.crufty.net>
1081 * var.c (Var_Parse): ensure delim is initialized.
1083 * unit-tests/Makefile.in: use single quotes to avoid problems from
1087 Run the unit-tests as part of the bootstrap procedure.
1089 2003-07-28 Simon J. Gerraty <sjg@void.crufty.net>
1091 * unit-tests/Makefile.in: always force complaints from
1092 ${TEST_MAKE} to be from 'make'.
1094 * configure.in: add check for 'diff -u'
1095 also fix some old autoconf'isms
1097 * Makefile.in (BMAKE_VERSION): bump version to 20030728.
1098 if using GCC add -Wno-cast-qual to CFLAGS for var.o
1100 * Merge with NetBSD make
1101 Pick up fix for :ts parsing error in some cases.
1104 2003-07-23 Simon J. Gerraty <sjg@void.crufty.net>
1106 * Makefile.in (BMAKE_VERSION): bump version to 20030723.
1108 * var.c (Var_Parse): fix bug in :ts modifier, after const
1109 correctness fixes, must pass nstr to VarModify.
1111 2003-07-14 Simon J. Gerraty <sjg@void.crufty.net>
1113 * Makefile.in: BMAKE_VERSION switch to a date based version.
1114 We'll generally use the date of last import from NetBSD.
1116 * Merge with NetBSD make
1117 Pick up fixes for const-correctness, now passes WARNS=3 on
1119 Pick up :ts modifier, allows controlling the separator used
1120 between words in variable expansion.
1122 2003-07-11 Simon J. Gerraty <sjg@void.crufty.net>
1124 * FILES: include boot-strap and os.sh
1126 * Makefile.in: only set WARNS if we are NetBSD, the effect on
1127 FreeBSD is known to be bad.
1129 * makefile.boot.in (bootstrap): make this the default target.
1131 * Makefile.in: bump version to 3.1.19
1133 * machine.sh: avoid A-Z with tr as it is bound to lose.
1135 2003-07-10 Simon J. Gerraty <sjg@void.crufty.net>
1137 * Merge with NetBSD make
1138 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1139 Plus some doc fixes.
1141 2003-04-27 Simon J. Gerraty <sjg@void.crufty.net>
1143 * Merge with NetBSD make
1144 Pick up fix for PR/1523 - don't count a library as built, if there
1145 is no way to build it
1147 * Bump version to 3.1.18
1149 2003-03-23 Simon J. Gerraty <sjg@void.crufty.net>
1151 * Merge with NetBSD make
1152 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1153 appears in src list.
1155 2003-03-21 Simon J. Gerraty <sjg@void.crufty.net>
1157 * Merge with NetBSD make (mmm 10th anniversary!)
1158 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1159 pick up -X which tells us to not export VAR=val via setenv if
1160 we are already doing so via MAKEFLAGS. This saves valuable env
1161 space on systems like Darwin.
1162 set MAKE_VERSION to 3.1.17
1164 * parse.c: pix up fix for suffix rules
1166 2003-03-06 Simon J. Gerraty <sjg@void.crufty.net>
1168 * Merge with NetBSD make.
1169 pick up fix for propagating -B via MAKEFLAGS.
1170 set MAKE_VERSION to 3.1.16
1172 * Apply some patches from pkgsrc-bootstrap/bmake
1173 Originally by Grant Beattie <grant@netbsd.org>
1174 I may have missed some - since they are based on bmake-3.1.12
1176 2002-12-03 Simon J. Gerraty <sjg@void.crufty.net>
1178 * makefile.boot.in (bmake): update install targets for those that
1179 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1180 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>.
1182 * bmake.cat1: update the pre-formatted man page!
1184 2002-11-30 Simon J. Gerraty <sjg@void.crufty.net>
1186 * Merge with NetBSD make.
1187 pick up fix for premature free of pointer used in call
1189 set MAKE_VERSION to 3.1.15
1191 2002-11-26 Simon J. Gerraty <sjg@void.crufty.net>
1193 * configure.in: determine suitable value for MKSRC.
1194 override using --with-mksrc=PATH.
1196 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1197 configs(8) will use 'sun4' as an alias for 'sparc'.
1199 2002-11-25 Simon J. Gerraty <sjg@void.crufty.net>
1201 * Merge with NetBSD make.
1203 pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1204 set MAKE_VERSION to 3.1.14
1205 add configure checks for killpg and sys/socket.h
1207 2002-09-16 Simon J. Gerraty <sjg@void.crufty.net>
1211 * makefile.boot.in (bmake): use install-mk
1212 Also setup ./mk before trying to invoke bmake.boot incase we
1213 needed install-mk to create a sys.mk for us.
1215 * configure.in: If we need to add -I${srcdir}/missing, make it an
1216 absolute path so that it works for lst.lib too.
1218 * make.h: always include sys/cdefs.h since we provide one if the
1221 * Makefile.in (install-mk):
1222 use MKSRC/install-mk which will do the right thing.
1223 use uname -p for ARCH if possible.
1224 since install-mk will setup links bsd.prog.mk -> prog.mk if
1225 needed, just .include bsd.prog.mk
1227 * Merge with NetBSD make (NetBSD-1.6)
1228 Code is ansi-C only now.
1229 Bug in handling of dotLast is fixed.
1230 Can now assign .OBJDIR and make will reset its notions of life.
1231 New modifiers :tu :tl for toUpper and toLower.
1233 Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net>
1235 * Merge with NetBSD make
1236 pick up fix for .END failure in compat mode.
1237 pick up fix for extra va_end() in ParseVErrorInternal.
1239 Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net>
1241 * configure.in: for systems that have sys/cdefs.h check if it is
1242 compatible. If not, include the one under missing, but tell it to
1243 include the native one too - necessary on Linux.
1245 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1246 include_next (for gcc) to get the native sys/cdefs.h
1248 Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1250 * job.c (JobFinish): Fix an earlier merge bug that resulted in
1251 leaking descriptors when using -jN.
1253 * job.c (JobPrintCommand): See if "curdir" exists before
1254 attempting to chdir(). Doing the chdir directly in make (when in
1255 compat mode) fails silently, so let the -jN version do the same.
1256 This can happen when building kernels in an object tree and
1257 playing clever games to reset .CURDIR.
1259 * Merged with NetBSD make
1262 Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1264 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1266 Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1268 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1269 us not to export the iterator variable when using VAR_CMD context.
1271 Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1273 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1274 its the wrong "fix".
1276 Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1278 * Redesigned export of VAR_CMD's via MAKEFLAGS.
1279 We now simply append the variable names to .MAKEOVERRIDES, and
1280 handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1281 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1282 Apart from fixing quoting bugs in previous version, this allows us
1283 to export vars to the environment by simply doing:
1284 .MAKEOVERRIDES+= PATH
1285 Merged again with NetBSD make, but the above is the only change.
1287 * configure.in: added
1288 --disable-pwd-override disable $PWD overriding getcwd()
1289 --disable-check-make-chdir disable make trying to guess
1290 when it should automatically cd ${.CURDIR}
1292 * Merge with NetBSD make, changes include:
1293 parse.c (ParseDoDependency): Spot that the syntax error is
1294 caused by an unresolved cvs/rcs conflict and say so.
1295 var.c: most of Var* functions now take a ctxt as 1st arg.
1296 now does variable substituion on rhs of sysv style modifiers.
1298 * var.c (Var_Set): exporting of command line variables (VAR_CMD)
1299 is now done here. We append the name='value' to .MAKEOVERRIDES
1300 rather than directly into MAKEFLAGS as this allows a Makefile to
1301 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a
1302 very similar mechanism. Note that in adding name='value' to
1303 .MAKEOVERRIDES we do the moral equivalent of:
1304 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
1306 Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1308 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
1310 * Merged with NetBSD make
1311 make -dx can now be used to run commands via sh -x
1312 better error messages on exec failures.
1314 Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1316 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
1317 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION,
1318 MACHINE etc otherwise they propagate from the previous bmake.
1320 * configure.in (machine): allow --with-machine=generic to make
1321 configure use machine.sh to set MACHINE.
1323 * job.c (JobInterrupt): convert to using WAIT_T and friends.
1325 * Makefile.in: mention in bmake.1 that we use autoconf.
1327 * make.1: mention MAKE_PRINT_VAR_ON_ERROR.
1329 Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1331 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
1332 as that rather defeats the usefulness of ${MAKEFILE}.
1334 * main.c (MainParseArgs): append command line variable assignments
1335 to MAKEFLAGS so that they get propagated to child make's.
1336 Apparently this is required POSIX behaviour? Its useful anyway.
1338 Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1340 * compat.c (CompatRunCommand): don't use perror() since stdio may
1341 cause problems in child of vfork().
1343 * compat.c, main.c: Call PrintOnError() when we are going to bail.
1344 This routine prints out the .curdir where we stopped and will also
1345 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
1347 * main.c: add ${.newline} to hold a "\n" - sometimes handy in
1350 * var.c: VarLoopExpand: ignore addSpace if a \n is present.
1352 * Added RCSid's for the files we've touched.
1354 Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1356 * configure.in: Thanks to some clues from mdb@juniper.net,
1357 added autoconf magic to control setting of MACHINE, MACHINE_ARCH
1358 as well as what ends up in _PATH_DEFSYSPATH. We now have:
1360 --with-machine=MACHINE explicitly set MACHINE
1361 --with-force-machine=MACHINE set FORCE_MACHINE
1362 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH
1363 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH
1364 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH
1365 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX
1367 If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
1369 * makefile: added a pathetically simple makefile to drive
1370 bootstrapping. Running configure by hand is more useful.
1372 * Makefile.in: added MAKE_VERSION, and reworked things to be less
1373 dependent on NetBSD bsd.*.mk
1375 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
1376 _PATH_OBJDIRPREFIX for those that don't want a default.
1377 construct _PATH_DEFSYSPATH from the info we get from configure.
1379 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
1380 if MAKE_VERSION is defined.
1382 * compat.c: when we bail, print out the .CURDIR we were in.
1384 Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1386 * Merged with NetBSD make
1388 * var.c: fixed a bug in the handling of the modifier :P
1389 if the node as found but the path was null, we segfault trying to
1392 Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1394 * Merged with NetBSD make
1396 * make.c: Make_OODate's test for a library out of date was using
1397 cmtime where it should have used mtime (my bug).
1399 * compat.c: Use perror() to tell us what really went wrong when we
1400 cannot exec a command.
1402 Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1404 * Merged with NetBSD make
1406 Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1408 * Merged with NetBSD make
1410 Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1412 * Merged with NetBSD make
1414 Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1416 * Merged with NetBSD make
1418 Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1420 * util.c: don't provide signal() since we use sigcompat.c
1422 * Makefile.in: added a build target.
1424 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
1425 These allow some quite clever magic.
1427 * main.c (main): added support for getenv(MAKESYSPATH).
1429 Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1431 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
1432 This avoids objdir having a different value depending on how a
1433 directory was reached (via command line, or subdir.mk).
1435 * If FORCE_MACHINE is defined, ignore getenv("MACHINE").
1437 Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1439 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
1440 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
1441 I've been testing this in NetBSD's make for some weeks.
1443 * Turn Makefile into Makefile.in and make it useful.
1445 Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1447 * Imported NetBSD's -current make(1) and resolve conflicts.
1449 * Applied autoconf patches from bmake v2
1451 * Imported clean code base from NetBSD-1.0