1 2012-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
3 * Makefile.in (MAKE_VERSION): 20121010
4 o protect syntax that only bmake parses correctly.
5 o remove auto setting of FORCE_MACHINE, use configure's
6 --with-force-machine=whatever if that is desired.
8 2012-10-08 Simon J. Gerraty <sjg@bad.crufty.net>
10 * Makefile.in: do not lose history from make.1 when generating bmake.1
12 2012-10-07 Simon J. Gerraty <sjg@bad.crufty.net>
14 * Makefile.in (MAKE_VERSION): 20121007
15 Merge with NetBSD make, pick up
16 o compat.c: ignore empty commands - same as jobs mode.
17 o make.1: document meta chars that cause use of shell
19 2012-09-11 Simon J. Gerraty <sjg@bad.crufty.net>
21 * Makefile.in (MAKE_VERSION): bump version to 20120911
22 * bsd.after-import.mk: include Makefile.inc early and allow it to
25 2012-08-31 Simon J. Gerraty <sjg@bad.crufty.net>
27 * Makefile.in (MAKE_VERSION): bump version to 20120831
28 Merge with NetBSD make, pick up
29 o cast sizeof() to int for comparison
32 2012-08-30 Simon J. Gerraty <sjg@bad.crufty.net>
34 * Makefile.in (MAKE_VERSION): bump version to 20120830
35 Merge with NetBSD make, pick up
36 o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V
37 o debug flag -dV causes -V to show raw value regardless.
39 2012-07-05 Simon J. Gerraty <sjg@bad.crufty.net>
41 * bsd.after-import.mk (after-import): ensure unit-tests/Makefile
44 2012-07-04 Simon J. Gerraty <sjg@bad.crufty.net>
46 * Makefile.in (MAKE_VERSION): bump version to 20120704
47 Merge with NetBSD make, pick up
48 o Job_ParseShell should call Shell_Init if it has been
50 * Makefile.in: set USE_META based on configure result.
51 also .PARSEDIR is safer indicator of bmake.
53 2012-06-26 Simon J. Gerraty <sjg@bad.crufty.net>
55 * Makefile.in: bump version to 20120626
56 ensure CPPFLAGS is in CFLAGS
57 * meta.c: avoid nested externs
58 * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target
60 2012-06-20 Simon J. Gerraty <sjg@bad.crufty.net>
62 * Makefile.in (MAKE_VERSION): bump version to 20120620
63 Merge with NetBSD make, pick up
64 o make_malloc.c: avoid including make_malloc.h again
66 * Makefile.in: avoid bmake only syntax or protect with
67 .if defined(.MAKE.LEVEL)
68 * bsd.after-import.mk: replace .-include with .sinclude
69 ensure? SRCTOP gets a value
70 * configure.in: look for filemon.h in /usr/include/dev/filemon first.
72 2012-06-19 Simon J. Gerraty <sjg@bad.crufty.net>
74 * Makefile.in (MAKE_VERSION): bump version to 20120612
75 Merge with NetBSD make, pick up
76 o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler
77 for greater portability.
78 o unit-tests/forloop: check that .for works as expected wrt
79 number of times and with "quoted strings".
81 2012-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
83 * Makefile.in (MAKE_VERSION): bump version to 20120606
84 Merge with NetBSD make, pick up
85 o compat.c: use kill(2) rather than raise(3).
86 * configure.in: look for sys/dev/filemon
87 * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile
88 and pass BOOTSTRAP_XTRAS to boot-strap.
90 2012-06-04 Simon J. Gerraty <sjg@bad.crufty.net>
92 * Makefile.in (MAKE_VERSION): bump version to 20120604
93 Merge with NetBSD make, pick up
94 o util.c and var.c share same var for tracking if environ
96 o util.c provide getenv with setenv.
97 * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL
98 when the shell actively strips .MAKE.* from the environment.
99 We still refer to the variable always as .MAKE.LEVEL
100 * util.c fix bug in findenv() was finding prefix of name.
101 * compat.c: re-raising SIGINT etc after running .INTERRUPT
102 results in more reliable termination of all activity on many
105 2012-06-02 Simon J. Gerraty <sjg@bad.crufty.net>
107 * Makefile.in (MAKE_VERSION): bump version to 20120602
108 Merge with NetBSD make, pick up
109 o for.c: handle quoted items in .for list
111 2012-05-30 Simon J. Gerraty <sjg@bad.crufty.net>
113 * Makefile.in (MAKE_VERSION): bump version to 20120530
114 Merge with NetBSD make, pick up
115 o compat.c: ignore empty command.
117 2012-05-24 Simon J. Gerraty <sjg@bad.crufty.net>
119 * Makefile.in (MAKE_VERSION): bump version to 20120524
120 * FILES: add bsd.after-import.mk:
121 A simple means of integrating bmake into a BSD build system.
123 2012-05-20 Simon J. Gerraty <sjg@bad.crufty.net>
125 * Makefile.in (MAKE_VERSION): bump version to 20120520
126 Merge with NetBSD make, pick up
127 o increased limit for nested conditionals.
129 2012-05-18 Simon J. Gerraty <sjg@bad.crufty.net>
131 * Makefile.in (MAKE_VERSION): bump version to 20120518
132 Merge with NetBSD make, pick up
133 o use _exit(2) in signal hanlder
134 o Don't use the [dir] cache when building nodes that might have
135 changed since the last exec.
136 o Avoid nested extern declaration warnings.
138 2012-04-27 Simon J. Gerraty <sjg@bad.crufty.net>
140 * meta.c (fgetLine): avoid %z - not portable.
141 * parse.c: Since we moved include of sys/mman.h
142 and def's of MAP_COPY etc. we got dups from a merge.
144 2012-04-24 Simon J. Gerraty <sjg@bad.crufty.net>
146 * Makefile.in (MAKE_VERSION): bump version to 20120420
147 Merge with NetBSD make, pick up
148 o restore duplicate supression in .MAKE.MAKEFILES
149 runtime saving can be significant.
150 o Var_Subst() uses Buf_DestroyCompact() to reduce memory
151 consumption up to 20%.
153 2012-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
155 * Makefile.in (MAKE_VERSION): bump version to 20120420
156 Merge with NetBSD make, pick up
157 o remove duplicate supression in .MAKE.MAKEFILES
158 o improved dir cache behavior
159 o gmake'ish export command
161 2012-03-25 Simon J. Gerraty <sjg@bad.crufty.net>
163 * Makefile.in (MAKE_VERSION): bump version to 20120325
164 Merge with NetBSD make, pick up
165 o fix parsing of :[#] in conditionals.
167 2012-02-10 Simon J. Gerraty <sjg@bad.crufty.net>
169 * Makefile.in: replace use of .Nx in bmake.1 with NetBSD
170 since some systems cannot cope with .Nx <version>
172 2011-11-14 Simon J. Gerraty <sjg@bad.crufty.net>
174 * Makefile.in (MAKE_VERSION): bump version to 20111111
175 Merge with NetBSD make, pick up
176 o debug output for .PARSEDIR and .PARSEFILE
178 2011-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
180 * Makefile.in (MAKE_VERSION): bump version to 20111010
182 2011-10-09 Simon J. Gerraty <sjg@bad.crufty.net>
184 * boot-strap: check for an expected file in the dirs we look for.
185 * make-bootstrap.sh: pass on LDSTATIC
187 2011-10-01 Simon J. Gerraty <sjg@bad.crufty.net>
189 * Makefile.in (MAKE_VERSION): bump version to 20111001
190 Merge with NetBSD make, pick up
191 o ensure .PREFIX is set for .PHONY
192 and .TARGET set for .PHONY run via .END
193 o __dead used consistently
195 2011-09-10 Simon J. Gerraty <sjg@bad.crufty.net>
197 * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-)
199 2011-09-05 Simon J. Gerraty <sjg@bad.crufty.net>
201 * Makefile.in (MAKE_VERSION): bump version to 20110905
202 Merge with NetBSD make, pick up
203 o meta_oodate: ignore makeDependfile
205 2011-08-28 Simon J. Gerraty <sjg@bad.crufty.net>
207 * Makefile.in (MAKE_VERSION): bump version to 20110828
208 Merge with NetBSD make, pick up
209 o silent=yes in .MAKE.MODE causes meta mode to mark targets
210 as SILENT if a .meta file is created
212 2011-08-18 Simon J. Gerraty <sjg@bad.crufty.net>
214 * Makefile.in (MAKE_VERSION): bump version to 20110818
215 Merge with NetBSD make, pick up
216 o in meta mode, if target flagged .META a missing .meta file
217 means target is out-of-date
218 o fixes for gcc 4.5 warnings
219 o simplify job printing code
221 2011-08-09 Simon J. Gerraty <sjg@bad.crufty.net>
223 * Makefile.in (MAKE_VERSION): bump version to 20110808
224 Merge with NetBSD make, pick up
225 o do not touch OP_SPECIAL targets when doing make -t
227 2011-06-22 Simon J. Gerraty <sjg@bad.crufty.net>
229 * Makefile.in (MAKE_VERSION): bump version to 20110622
230 Merge with NetBSD make, pick up
231 o meta_oodate detect corrupted .meta file and declare oodate.
232 * configure.in: add check for setsid
234 2011-06-07 Simon J. Gerraty <sjg@bad.crufty.net>
236 * Merge with NetBSD make, pick up
237 o unit-tests/modts now works on MirBSD
239 2011-06-04 Simon J. Gerraty <sjg@bad.crufty.net>
241 * Makefile.in (MAKE_VERSION): bump version to 20110606
242 Merge with NetBSD make, pick up
243 o ApplyModifiers: when we parse a variable which is not
244 the entire modifier string, or not followed by ':', do not
245 consider it as containing modifiers.
246 o loadfile: ensure newline at end of mapped file.
248 2011-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
250 * Makefile.in (MAKE_VERSION): bump version to 20110505
251 Merge with NetBSD make, pick up
252 o .MAKE.META.BAILIWICK - list of prefixes which define the scope
253 of make's control. In meta mode, any generated file within
254 said bailiwick, which is found to be missing, causes current
255 target to be out-of-date.
257 2011-04-11 Simon J. Gerraty <sjg@bad.crufty.net>
259 * Makefile.in (MAKE_VERSION): bump version to 20110411
260 Merge with NetBSD make, pick up
261 o when long modifiers fail to match, check sysV style.
264 2011-04-10 Simon J. Gerraty <sjg@bad.crufty.net>
266 * Makefile.in (MAKE_VERSION): bump version to 20110410
267 Merge with NetBSD make, pick up
268 o :hash - cheap 32bit hash of value
269 o :localtime, :gmtime - use value as format string for strftime.
271 2011-03-30 Simon J. Gerraty <sjg@bad.crufty.net>
273 * Makefile.in (MAKE_VERSION): bump version to 20110330
274 mostly because its a cooler version.
275 Merge with NetBSD make, pick up
276 o NetBSD tags for meta.[ch]
277 o job.c call meta_job_finish() after meta_job_error().
278 o meta_job_error() should call meta_job_finish() to ensure
279 .meta file is closed, and safe to copy - if .ERROR target wants.
280 meta_job_finish() is safe to call repeatedly.
282 2011-03-29 Simon J. Gerraty <sjg@bad.crufty.net>
284 * unit-tests/modts: use printf if it is a builtin,
285 to save us from MirBSD
287 * Makefile.in (MAKE_VERSION): bump version to 20110329
288 Merge with NetBSD make, pick up
289 o fix for use after free() in CondDoExists().
290 o meta_oodate() report extra commands and return earlier.
292 2011-03-27 Simon J. Gerraty <sjg@bad.crufty.net>
294 * Makefile.in (MAKE_VERSION): bump version to 20110327
295 Merge with NetBSD make, pick up
296 o meta.c, if .MAKE.MODE contains curdirOk=yes
297 allow creating .meta files in .CURDIR
298 * boot-strap (TOOL_DIFF): aparently at least on linux distro
299 formats the output of 'type' differently - so eat any "()"
301 2011-03-06 Simon J. Gerraty <sjg@bad.crufty.net>
303 * Makefile.in (MAKE_VERSION): bump version to 20110306
304 Merge with NetBSD make, pick up
305 o meta.c, only do getcwd() once
307 2011-03-05 Simon J. Gerraty <sjg@bad.crufty.net>
309 * Makefile.in (MAKE_VERSION): bump version to 20110305
310 Merge with NetBSD make, pick up
311 o correct sysV substitution handling of empty lhs and variable
312 o correct exists() check for dir with trailing /
313 o correct handling of modifiers for non-existant variables
314 during evaluation of conditionals.
315 o ensure MAP_FILE is defined.
316 o meta.c use curdir[] now exported by main.c
318 2011-02-25 Simon J. Gerraty <sjg@bad.crufty.net>
320 * Makefile.in (MAKE_VERSION): bump version to 20110225
321 Merge with NetBSD make, pick up
322 o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after
323 makefiles have been read.
324 o fix example of :? modifier in man page.
326 2011-02-13 Simon J. Gerraty <sjg@bad.crufty.net>
328 * Makefile.in (MAKE_VERSION): bump version to 20110214
329 Merge with NetBSD make, pick up
330 o meta.c handle realpath() failing when generating meta file
333 * sigcompat.c: convert to ansi so we can use higher warning levels.
336 2011-02-07 Simon J. Gerraty <sjg@bad.crufty.net>
338 * Makefile.in (MAKE_VERSION): bump version to 20110207
339 Merge with NetBSD make, pick up
340 o fix for bug in meta mode.
342 2011-01-03 Simon J. Gerraty <sjg@bad.crufty.net>
344 * parse.c: SunOS 5.8 at least does not have MAP_FILE
346 2011-01-01 Simon J. Gerraty <sjg@bad.crufty.net>
348 * Makefile.in (MAKE_VERSION): bump version to 20110101
349 Merge with NetBSD make, pick up
350 o use mmap(2) if available, for reading makefiles
352 2010-12-15 Simon J. Gerraty <sjg@bad.crufty.net>
354 * Makefile.in (MAKE_VERSION): bump version to 20101215
355 Merge with NetBSD make, pick up
356 o ensure meta_job_error() does not report a previous .meta file
359 2010-12-10 Simon J. Gerraty <sjg@bad.crufty.net>
361 * Makefile.in (MAKE_VERSION): bump version to 20101210
362 Merge with NetBSD make, pick up
363 o meta_oodate: track cwd per process, and only consider target
364 out-of-date if missing file is outside make's CWD.
365 Ignore files in /tmp/ etc.
366 o to ensure unit-tests results match, need to control LC_ALL
368 o fix for parsing bug in var.c
370 2010-11-26 Simon J. Gerraty <sjg@bad.crufty.net>
372 * Makefile.in (MAKE_VERSION): bump version to 20101126
373 Merge with NetBSD make, pick up
374 o if stale dependency is an IMPSRC, search via .PATH
375 o meta_oodate: if a referenced file is missing, target is
377 o meta_oodate: if a target uses .OODATE in its commands,
378 it (.OODATE) needs to be recomputed.
379 o keep a pointer to youngest child node, rather than just its
382 2010-11-02 Simon J. Gerraty <sjg@bad.crufty.net>
384 * Makefile.in (MAKE_VERSION): bump version to 20101101
386 2010-10-16 Simon J. Gerraty <sjg@bad.crufty.net>
388 * machine.sh: like os.sh,
389 allow for uname -p producing useless drivel
391 2010-09-13 Simon J. Gerraty <sjg@bad.crufty.net>
393 * boot-strap: document configure knobs for meta and filemon.
395 * Makefile.in (MAKE_VERSION): bump version to 20100911
396 Merge with NetBSD make, pick up
399 * make-bootstrap.sh.in: handle meta.c
400 * configure.in: add knobs for use_meta and filemon_h
401 also, look for dirname, str[e]sep and strlcpy
402 * util.c: add simple err[x] and warn[x]
404 2010-08-08 Simon J. Gerraty <sjg@bad.crufty.net>
406 * boot-strap (TOOL_DIFF): set this to ensure tests use
407 the same version of diff that configure tested
409 * Makefile.in (MAKE_VERSION): bump version to 20100808
410 Merge with NetBSD make, pick up
411 o in jobs mode, when we discover we cannot make something,
412 call PrintOnError before exit.
414 2010-08-06 Simon J. Gerraty <sjg@bad.crufty.net>
416 * Makefile.in (MAKE_VERSION): bump version to 20100806
417 Merge with NetBSD make, pick up
418 o formatting fixes for ignored errors
419 o ensure jobs are cleaned up regardless of where wait() was called.
421 2010-06-28 Simon J. Gerraty <sjg@bad.crufty.net>
423 * Makefile.in (MAKE_VERSION): bump version to 20100618
424 * os.sh (MACHINE_ARCH): watch out for drivel from uname -p
426 2010-06-16 Simon J. Gerraty <sjg@bad.crufty.net>
428 * Makefile.in (MAKE_VERSION): bump version to 20100616
429 Merge with NetBSD make, pick up
431 o call PrintOnError from JobFinish when we detect an error we
434 2010-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
436 * Makefile.in (MAKE_VERSION): bump version to 20100606
437 Merge with NetBSD make, pick up
440 2010-06-05 Simon J. Gerraty <sjg@bad.crufty.net>
442 * Makefile.in (MAKE_VERSION): bump version to 20100605
443 Merge with NetBSD make, pick up
444 o use bmake_signal() which is a wrapper around sigaction()
446 o add .export-env to allow exporting variables to environment
447 without tracking (so no re-export when the internal value is
450 2010-05-24 Simon J. Gerraty <sjg@bad.crufty.net>
452 * Makefile.in (MAKE_VERSION): bump version to 20100524
453 Merge with NetBSD make, pick up
454 o fix for .info et al being greedy.
456 2010-05-23 Simon J. Gerraty <sjg@bad.crufty.net>
458 * Makefile.in (MAKE_VERSION): bump version to 20100520
459 Merge with NetBSD make, pick up
460 o back to using realpath on argv[0]
461 but only if contains '/' and does not start with '/'.
463 2010-05-10 Simon J. Gerraty <sjg@bad.crufty.net>
465 * boot-strap: use absolute path for bmake when running tests.
467 * Makefile.in (MAKE_VERSION): bump version to 20100510
468 Merge with NetBSD make, pick up
469 o revert use of realpath on argv[0]
470 too many corner cases.
471 o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target.
473 2010-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
475 * Makefile.in (MAKE_VERSION): bump version to 20100505
476 Merge with NetBSD make, pick up
477 o fix for missed SIGCHLD when compiled with SunPRO
478 actually for bmake, defining FORCE_POSIX_SIGNALS would have
481 2010-04-30 Simon J. Gerraty <sjg@bad.crufty.net>
483 * Makefile.in (MAKE_VERSION): bump version to 20100430
484 Merge with NetBSD make, pick up
485 o fflush stdout before writing to stdout
487 2010-04-23 Simon J. Gerraty <sjg@bad.crufty.net>
489 * Makefile.in (MAKE_VERSION): bump version to 20100423
490 Merge with NetBSD make, pick up
491 o updated unit tests for Haiku (this time for sure).
492 * boot-strap: based on patch from joerg
493 honor --with-default-sys-path better.
494 * boot-strap: remove mention of --with-prefix-sys-path
496 2010-04-22 Simon J. Gerraty <sjg@bad.crufty.net>
498 * Makefile.in (MAKE_VERSION): bump version to 20100422
499 * Merge with NetBSD make, pick up
500 o fix for vfork() on Darwin.
501 o fix for bogus $TMPDIR.
502 o set .MAKE.MODE=compat for -B
503 o set .MAKE.JOBS=max_jobs for -j max_jobs
504 o allow unit-tests to run without any *.mk
505 o unit-tests/modmisc be more conservative in dirs presumed to exist.
506 * boot-strap: ignore /usr/share/mk except on NetBSD.
507 * unit-tests/Makefile.in: set LANG=C when running unit-tests to
508 ensure sort(1) behaves as expected.
510 2010-04-21 Simon J. Gerraty <sjg@bad.crufty.net>
512 * boot-strap: add FindHereOrAbove so we can use -m .../mk
514 2010-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
516 * Makefile.in (MAKE_VERSION): bump version to 20100420
517 * Merge with NetBSD make, pick up
518 o fix for variable realpath() behavior.
519 we have to stat(2) the result to be sure.
520 o fix for .export (all) when nested vars use :sh
522 2010-04-14 Simon J. Gerraty <sjg@bad.crufty.net>
524 * Makefile.in (MAKE_VERSION): bump version to 20100414
525 * Merge with NetBSD make, pick up
526 o use realpath to resolve argv[0] (for .MAKE) if needed.
527 o add realpath from libc.
528 o add :tA to resolve variable via realpath(3) if possible.
530 2010-04-08 Simon J. Gerraty <sjg@bad.crufty.net>
532 * Makefile.in (MAKE_VERSION): bump version to 20100408
533 * Merge with NetBSD make, pick up
534 o unit tests for .ERROR, .error
535 o fix for .ERROR to ensure it cannot be default target.
537 2010-04-06 Simon J. Gerraty <sjg@bad.crufty.net>
539 * Makefile.in (MAKE_VERSION): bump version to 20100406
540 * Merge with NetBSD make, pick up
541 o fix for compat mode "Error code" going to debug_file.
542 o fix for .ALLSRC being populated twice.
543 o support for .info, .warning and .error directives
544 o .MAKE.MODE to control make's operational mode
545 o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile
547 o .MAKE.DEPENDFILE to control the name of the depend file
548 o .ERROR target - run on failure.
550 2010-03-18 Simon J. Gerraty <sjg@bad.crufty.net>
552 * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile
554 * os.sh,arch.c: patch for Haiku from joerg at netbsd
556 2010-03-17 Simon J. Gerraty <sjg@bad.crufty.net>
558 * Makefile.in (MAKE_VERSION): bump version to 20100222
559 * Merge with NetBSD make, pick up
560 o better error msg for .for with mutiple inter vars
563 o use make-bootstrap.sh from joerg at netbsd
564 to avoid the need for a native make when bootstrapping.
565 o add "" everywhere ;-)
566 o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1
567 otherwise the pre-formated version.
569 2010-01-04 Simon J. Gerraty <sjg@bad.crufty.net>
571 * Makefile.in (MAKE_VERSION): bump version to 20100102
572 * Merge with NetBSD make, pick up:
575 2009-11-18 Simon J. Gerraty <sjg@void.crufty.net>
577 * Makefile.in (MAKE_VERSION): bump version to 20091118
578 * Merge with NetBSD make, pick up:
580 o report lines that start with '.' and should have ':'
581 (catch typo's of .el*if).
583 2009-10-30 Simon J. Gerraty <sjg@void.crufty.net>
585 * configure.in: Ensure that srcdir and mksrc are absolute paths.
587 2009-10-09 Simon J. Gerraty <sjg@void.crufty.net>
589 * Makefile.in (MAKE_VERSION): fix version to 20091007
591 2009-10-07 Simon J. Gerraty <sjg@void.crufty.net>
593 * Makefile.in (MAKE_VERSION): bump version to 200910007
594 * Merge with NetBSD make, pick up:
595 o fix for parsing of :S;...;...; applied to .for loop iterator
596 appearing in a dependency line.
598 2009-09-09 Simon J. Gerraty <sjg@void.crufty.net>
600 * Makefile.in (MAKE_VERSION): bump version to 20090909
601 * Merge with NetBSD make, pick up:
602 o fix for -C, .CURDIR and .OBJDIR
604 o allow share_dir to be set independent of prefix.
605 o select default share_dir better when prefix ends in $HOST_TARGET
606 o if FORCE_BSD_MK etc were set, include them in the suggested
609 2009-09-08 Simon J. Gerraty <sjg@void.crufty.net>
611 * Makefile.in (MAKE_VERSION): bump version to 20090908
612 * Merge with NetBSD make, pick up:
613 o .MAKE.LEVEL for recursion tracking
614 o fix for :M scanning \:
616 2009-09-03 Simon J. Gerraty <sjg@void.crufty.net>
618 * configure.in: Don't -D__EXTENSIONS__ if
619 AC_USE_SYSTEM_EXTENSIONS says "no".
621 2009-08-26 Simon J. Gerraty <sjg@void.crufty.net>
623 * Makefile.in (MAKE_VERSION): bump version to 20090826
624 Simplify MAKE_VERSION to just the bare date.
625 * Merge with NetBSD make, pick up:
626 o -C directory support.
627 o support for SIGINFO
628 o use $TMPDIR for temp files.
629 o child of vfork should be careful about modifying parent's state.
632 2009-03-26 Simon J. Gerraty <sjg@void.crufty.net>
634 * Appy some patches for MiNT from David Brownlee
636 2009-02-26 Simon J. Gerraty <sjg@void.crufty.net>
638 * Makefile.in (BMAKE_VERSION): bump version to 20090222
639 * Merge with NetBSD make, pick up:
640 o Possible null pointer de-ref in Var_Set.
642 2009-02-08 Simon J. Gerraty <sjg@void.crufty.net>
644 * Makefile.in (BMAKE_VERSION): bump version to 20090204
645 * Merge with NetBSD make, pick up:
646 o bmake_malloc et al moved to their own .c
647 o Count both () and {} when looking for the end of a :M pattern
648 o Change 'Buffer' so that it is the actual struct, not a pointer to it.
649 o strlist.c - functions for processing extendable arrays of pointers to strings.
650 o ClientData replaced with void *, so const void * can be used.
651 o New debug flag C for DEBUG_CWD
653 2008-11-11 Simon J. Gerraty <sjg@void.crufty.net>
655 * Makefile.in (BMAKE_VERSION): bump version to 20081111
656 Apply patch from Joerg Sonnenberge to
658 o remove some redundant checks
659 o check for emlloc etc only in libutil and require the whole family.
661 o remove [v]asprintf which is no longer used.
663 2008-11-04 Simon J. Gerraty <sjg@void.crufty.net>
665 * Makefile.in (BMAKE_VERSION): bump version to 20081101
666 * Merge with NetBSD make, pick up:
667 o util.c: avoid use of putenv() - christos
669 2008-10-30 Simon J. Gerraty <sjg@void.crufty.net>
671 * Makefile.in (BMAKE_VERSION): bump version to 20081030
672 pick up man page tweaks.
674 2008-10-29 Simon J. Gerraty <sjg@void.crufty.net>
676 * Makefile.in: move processing of LIBOBJS to after is definition!
677 thus we'll have getenv.c in SRCS only if needed.
679 * make.1: add examples of how to use :?
681 * Makefile.in (BMAKE_VERSION): bump version to 20081029
682 * Merge with NetBSD make, pick up:
683 o fix for .END processing with -j
684 o segfault from Parse_Error when no makefile is open
685 o handle numeric expressions in any variable expansion
686 o debug output now defaults to stderr, -dF to change it - apb
687 o make now uses bmake_malloc etc so that it can build natively
688 on A/UX - wasn't an issue for bmake, but we want to keep in sync.
690 2008-09-27 Simon J. Gerraty <sjg@void.crufty.net>
692 * Makefile.in (BMAKE_VERSION): bump version to 20080808
693 * Merge with NetBSD make, pick up:
694 o fix for PR/38840: Pierre Pronchery: make crashes while parsing
695 long lines in Makefiles
696 o optimizations for VarQuote by joerg
697 o fix for PR/38756: dominik: make dumps core on invalid makefile
699 2008-05-15 Simon J. Gerraty <sjg@void.crufty.net>
701 * Makefile.in (BMAKE_VERSION): bump version to 20080515
702 * Merge with NetBSD make, pick up:
703 o fix skip setting vars in VAR_GLOBAL context, to handle
704 cases where VAR_CMD is used for other than command line vars.
706 2008-05-14 Simon J. Gerraty <sjg@void.crufty.net>
708 * boot-strap (make_version): we may need to look in
709 $prefix/share/mk for sys.mk
711 * Makefile.in (BMAKE_VERSION): bump version to 20080514
712 * Merge with NetBSD make, pick up:
713 o skip setting vars in VAR_GLOBAL context, when already set in
714 VAR_CMD which takes precedence.
716 2008-03-30 Simon J. Gerraty <sjg@void.crufty.net>
718 * Makefile.in (BMAKE_VERSION): bump version to 20080330
719 * Merge with NetBSD make, pick up:
720 o fix for ?= when LHS contains variable reference.
722 2008-02-15 Simon J. Gerraty <sjg@void.crufty.net>
724 * merge some patches from NetBSD pkgsrc.
726 * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of
727 the MAKSYSPATH used during bootstrap.
729 * Makefile.in (BMAKE_VERSION): bump version to 20080215
730 * Merge with NetBSD make, pick up:
731 o warn if non-space chars follow 'empty' in a conditional.
733 2008-01-18 Simon J. Gerraty <sjg@void.crufty.net>
735 * Makefile.in (BMAKE_VERSION): bump version to 20080118
736 * Merge with NetBSD make, pick up:
737 o consider dependencies read from .depend as optional - dsl
738 o remember when buffer for reading makefile grows - dsl
739 o add -dl (aka LOUD) - David O'Brien
741 2007-10-22 Simon J. Gerraty <sjg@void.crufty.net>
743 * Makefile.in (BMAKE_VERSION): bump version to 20071022
744 * Merge with NetBSD make, pick up:
745 o Allow .PATH<suffix> to be used for .include ""
747 * boot-strap: source default settings from .bmake-boot-strap.rc
749 2007-10-16 Simon J. Gerraty <sjg@void.crufty.net>
751 * Makefile.in: fix maninstall on various systems
752 provided that our man.mk is used.
753 For non-BSD systems we install the preformatted page
756 2007-10-15 Simon J. Gerraty <sjg@void.crufty.net>
758 * boot-strap: make bmake.1 too, so maninstall works.
760 2007-10-14 Simon J. Gerraty <sjg@void.crufty.net>
762 * Makefile.in (BMAKE_VERSION): bump version to 20071014
763 * Merge with NetBSD make, pick up:
764 o revamped handling of defshell - configure no longer needs to
765 know the content of the shells array - apb
766 o stop Var_Subst modifying its input - apb
767 o avoid calling ParseTrackInput too often - dsl
769 2007-10-11 Simon J. Gerraty <sjg@void.crufty.net>
771 * Makefile.in (BMAKE_VERSION): bump version to 20071011
772 * Merge with NetBSD make, pick up:
773 o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path.
775 * sigcompat.c: some tweaks for HP-UX 11.x based on
776 patch from Tobias Nygren
778 * configure.in: update handling of --with-defshell to match
779 new make behavior. --with-defshell=/usr/xpg4/bin/sh
780 will now do what one might hope - provided the chosen shell
781 behaves enough like sh.
783 2007-10-08 Simon J. Gerraty <sjg@void.crufty.net>
785 * Makefile.in (BMAKE_VERSION): bump to 20071008
786 * Merge with NetBSD make, pick up:
787 o .MAKE.JOB.PREFIX - control the token output before jobs - sjg
788 o .export/.MAKE.EXPORTED - export of variables - sjg
789 o .MAKE.MAKEFILES - track all makefiles read - sjg
790 o performance improvements - dsl
791 o revamp parallel job scheduling - dsl
793 2006-07-28 Simon J. Gerraty <sjg@void.crufty.net>
795 * Makefile.in (BMAKE_VERSION): bump to 20060728
796 * Merge with NetBSD make, pick up:
797 o extra debug info during variable and cond processing - sjg
798 o shell definition now covers newline - rillig
799 o minor mem leak in PrintOnError - sjg
801 2006-05-11 Simon J. Gerraty <sjg@void.crufty.net>
803 * Makefile.in (BMAKE_VERSION): bump to 20060511
804 * Merge with NetBSD make, pick up:
805 o more memory leaks - coverity
806 o possible overflow in ArchFindMember - coverity
807 o extract variable modifier code out of Var_Parse()
808 so it can be called recursively - sjg
809 o unit-tests/moderrs - sjg
811 2006-04-12 Simon J. Gerraty <sjg@void.crufty.net>
813 * Makefile.in (BMAKE_VERSION): bump to 20060412
814 * Merge with NetBSD make, pick up:
815 o fixes for some memory leaks - coverity
816 o only read first sys.mk etc when searching sysIncPath - sjg
818 * main.c (ReadMakefile): remove hack for __INTERIX that prevented
819 setting ${MAKEFILE} - OBATA Akio
821 2006-03-18 Simon J. Gerraty <sjg@void.crufty.net>
823 * Makefile.in (BMAKE_VERSION): bump to 20060318
824 * Merge with NetBSD make, pick up:
825 o cleanup of job.c to remove remote handling, distcc is more
826 useful and this code was likely bit-rotting - dsl
827 o fix for :P modifier - sjg
828 * boot-strap: set default prefix to something reasonable
831 2006-03-01 Simon J. Gerraty <sjg@void.crufty.net>
833 * Makefile.in (BMAKE_VERSION): bump to 20060301
834 * Merge with NetBSD make, pick up:
835 o make .WAIT apply recursively, document and test case - apb
836 o allow variable modifiers in a variable appear anywhere in
837 modifier list, document and test case - sjg
839 2006-02-22 Simon J. Gerraty <sjg@void.crufty.net>
841 * Makefile.in (BMAKE_VERSION): bump to 20060222
842 * Merge with NetBSD make, pick up:
843 o improved job token handling - dsl
844 o SIG_DFL the correct signal before exec - dsl
845 o more debug info during parsing - dsl
846 o allow variable modifiers to be specified via variable - sjg
847 * boot-strap: explain why we died if no mksrc
849 2005-11-05 Simon J. Gerraty <sjg@void.crufty.net>
851 * Makefile.in (BMAKE_VERSION): bump to 20051105
852 * configure.in: always set default_sys_path
853 default is ${prefix}/share/mk
854 - remove prefix_sys_path, anyone wanting more than above
855 needs to set it manually.
857 2005-11-04 Simon J. Gerraty <sjg@void.crufty.net>
859 * boot-strap: make this a bit easier for pkgsrc folk.
860 bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to
861 'mips' while pkgsrc wants 'mipseb' or 'mipsel'
863 2005-11-02 Simon J. Gerraty <sjg@void.crufty.net>
865 * Makefile.in (BMAKE_VERSION): bump to 20051102
866 * job.c (JobFinish): fix likely ancient merge lossage
867 fix from Todd Vierling.
868 * boot-strap (srcdir): allow setting mksrc=none
870 2005-10-31 Simon J. Gerraty <sjg@void.crufty.net>
872 * Makefile.in (BMAKE_VERSION): bump to 20051031
873 * ranlib.h: skip on OSF too.
876 2005-10-10 Simon J. Gerraty <sjg@void.crufty.net>
878 * Makefile.in (BMAKE_VERSION): bump to 20051002
881 2005-10-09 Simon J. Gerraty <sjg@void.crufty.net>
883 * Makefile.in (BMAKE_VERSION): bump to 20051001
884 support for UnixWare and some other systems,
885 based on patches from pkgsrc/bootstrap
887 2005-09-03 Simon J. Gerraty <sjg@void.crufty.net>
889 * Makefile.in (BMAKE_VERSION): bump to 20050901
890 * Merge with NetBSD make, pick up:
891 o possible parse error causing us to wander off.
893 2005-06-06 Simon J. Gerraty <sjg@void.crufty.net>
895 * Makefile.in (BMAKE_VERSION): bump to 20050606
896 * Merge with NetBSD make, pick up:
897 o :0x modifier for randomizing a list
898 o fixes for a number of -Wuninitialized issues.
900 2005-05-30 Simon J. Gerraty <sjg@void.crufty.net>
902 * Makefile.in (BMAKE_VERSION): bump to 20050530
903 * Merge with NetBSD make, pick up:
904 o Handle dependencies for .BEGIN, .END and .INTERRUPT
906 * README: was seriously out of date.
908 2005-03-22 Simon J. Gerraty <sjg@void.crufty.net>
910 * Important to use .MAKE rather than MAKE.
912 2005-03-15 Simon J. Gerraty <sjg@void.crufty.net>
914 * Makefile.in (BMAKE_VERSION): bump to 20050315
915 * Merge with NetBSD make, pick up:
916 o don't mistake .elsefoo for .else
917 o use suffix-specific search path correctly
918 o bunch of style nits
920 2004-05-11 Simon J. Gerraty <sjg@void.crufty.net>
923 o ensure that args to --src and --with-mksrc
924 are resolved before giving them to configure.
925 o add -o "objdir" so that builder can control it,
926 default is $OS as determined by os.sh
927 o add -q to suppress all the install instructions.
929 2004-05-08 Simon J. Gerraty <sjg@void.crufty.net>
931 * Remove __IDSTRING()
933 * Makefile.in (BMAKE_VERSION): bump to 20040508
934 * Merge with NetBSD make, pick up:
936 - remove '-e' from compat mode
937 - add support for '+' command-line prefix.
938 o fix for handling '--' on command-line.
939 o fix include in lst.lib/lstInt.h to simplify '-I's
940 o we also picked up replacement of MAKE_BOOTSTRAP
941 with !MAKE_NATIVE which is a noop, but possibly confusing.
943 2004-04-14 Simon J. Gerraty <sjg@void.crufty.net>
945 * Makefile.in (BMAKE_VERSION): bump to 20040414
946 * Merge with NetBSD make, pick up:
947 o allow quoted strings on lhs of conditionals
948 o issue warning when extra .else is seen
949 o print line numer when errors encountered during parsing from
952 2004-02-20 Simon J. Gerraty <sjg@void.crufty.net>
954 * Makefile.in (BMAKE_VERSION): bump to 20040220
955 * Merge with NetBSD make, pick up:
956 o fix for old :M parsing bug.
957 o re-jigged unit-tests
959 2004-02-15 Simon J. Gerraty <sjg@void.crufty.net>
961 * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,}
962 so that './bmake -f Makefile test' works.
964 2004-02-14 Simon J. Gerraty <sjg@void.crufty.net>
966 * Makefile.in: (BMAKE_VERSION): bump to 20040214
967 * Merge with NetBSD make, pick up:
968 o search upwards for *.mk
969 o fix for double free of var substitution buffers
970 o use of getopt replaced with custom code, since the usage
971 (re-scanning) isn't posix compatible.
973 2004-02-12 Simon J. Gerraty <sjg@void.crufty.net>
975 * arch.c: don't include ranlib.h on ELF systems
976 (thanks to Chuck Cranor <chuck@ece.cmu.edu>).
978 2004-01-18 Simon J. Gerraty <sjg@void.crufty.net>
980 * Makefile.in (BMAKE_VERSION): bump to 20040118
982 * boot-strap (while): export vars we assign to on cmdline
983 * unit-test/Makefile.in: ternary is .PHONY
985 2004-01-08 Simon J. Gerraty <sjg@void.crufty.net>
987 * Makefile.in (BMAKE_VERSION): bump version to 20040108
988 * Merge with NetBSD make, pick up:
989 o fix for ternary modifier
991 2004-01-06 Simon J. Gerraty <sjg@void.crufty.net>
993 * Makefile.in (BMAKE_VERSION): bump version to 20040105
994 * Merge with NetBSD make, pick up:
995 o fix for cond.c to handle compound expressions better
996 o variable expansion within sysV style replacements
998 2003-12-22 Simon J. Gerraty <sjg@void.crufty.net>
1000 * Make portable snprintf safer - output to /dev/null first to
1003 * Makefile.in (BMAKE_VERSION): bump version to 20031222
1004 * Merge with NetBSD make, pick up:
1005 o -dg3 to show input graph when things go wrong.
1006 o explicitly look for makefiles in objdir if not found in curdir so
1007 that errors in .depend etc will be reported accurarely.
1008 o avoid use of -e in shell scripts in jobs mode, use '|| exit $?'
1009 instead as it more accurately reflects the expected behavior and
1010 is more consistently implemented.
1011 o avoid use of asprintf.
1013 2003-09-28 Simon J. Gerraty <sjg@void.crufty.net>
1015 * util.c: Add asprintf and vasprintf.
1017 * Makefile.in (BMAKE_VERSION): bump version to 20030928
1018 * Merge with NetBSD make, pick up:
1019 :[] modifier - allows picking words from a variable.
1020 :tW modifier - allows treating value as one big word.
1021 W flag for :C and :S - allows treating value as one big word.
1023 2003-09-12 Simon J. Gerraty <sjg@void.crufty.net>
1025 * Merge with NetBSD make
1026 pick up -de flag to enable printing failed command.
1027 don't skip 1st two dir entries (normally . and ..) since
1028 coda does not have them.
1030 2003-09-09 Simon J. Gerraty <sjg@void.crufty.net>
1032 * Makefile.in (BMAKE_VERSION): bump version to 20030909
1033 * Merge with NetBSD make, pick up:
1034 - changes for -V '${VAR}' to print fully expanded value
1036 - CompatRunCommand now prints the command that failed.
1037 - several files got updated 3 clause Berkeley license.
1039 2003-08-02 Simon J. Gerraty <sjg@void.crufty.net>
1041 * boot-strap: Allow setting configure args on command line.
1043 2003-07-31 Simon J. Gerraty <sjg@void.crufty.net>
1045 * configure.in: add --with-defshell to allow sh or ksh
1046 to be selected as default shell.
1048 * Makefile.in: bump version to 20030731
1050 * Merge with NetBSD make
1051 Pick up .SHELL spec for ksh and associate man page changes.
1052 Also compat mode now uses the same shell specs.
1054 2003-07-29 Simon J. Gerraty <sjg@void.crufty.net>
1056 * var.c (Var_Parse): ensure delim is initialized.
1058 * unit-tests/Makefile.in: use single quotes to avoid problems from
1062 Run the unit-tests as part of the bootstrap procedure.
1064 2003-07-28 Simon J. Gerraty <sjg@void.crufty.net>
1066 * unit-tests/Makefile.in: always force complaints from
1067 ${TEST_MAKE} to be from 'make'.
1069 * configure.in: add check for 'diff -u'
1070 also fix some old autoconf'isms
1072 * Makefile.in (BMAKE_VERSION): bump version to 20030728.
1073 if using GCC add -Wno-cast-qual to CFLAGS for var.o
1075 * Merge with NetBSD make
1076 Pick up fix for :ts parsing error in some cases.
1079 2003-07-23 Simon J. Gerraty <sjg@void.crufty.net>
1081 * Makefile.in (BMAKE_VERSION): bump version to 20030723.
1083 * var.c (Var_Parse): fix bug in :ts modifier, after const
1084 correctness fixes, must pass nstr to VarModify.
1086 2003-07-14 Simon J. Gerraty <sjg@void.crufty.net>
1088 * Makefile.in: BMAKE_VERSION switch to a date based version.
1089 We'll generally use the date of last import from NetBSD.
1091 * Merge with NetBSD make
1092 Pick up fixes for const-correctness, now passes WARNS=3 on
1094 Pick up :ts modifier, allows controlling the separator used
1095 between words in variable expansion.
1097 2003-07-11 Simon J. Gerraty <sjg@void.crufty.net>
1099 * FILES: include boot-strap and os.sh
1101 * Makefile.in: only set WARNS if we are NetBSD, the effect on
1102 FreeBSD is known to be bad.
1104 * makefile.boot.in (bootstrap): make this the default target.
1106 * Makefile.in: bump version to 3.1.19
1108 * machine.sh: avoid A-Z with tr as it is bound to lose.
1110 2003-07-10 Simon J. Gerraty <sjg@void.crufty.net>
1112 * Merge with NetBSD make
1113 Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo
1114 Plus some doc fixes.
1116 2003-04-27 Simon J. Gerraty <sjg@void.crufty.net>
1118 * Merge with NetBSD make
1119 Pick up fix for PR/1523 - don't count a library as built, if there
1120 is no way to build it
1122 * Bump version to 3.1.18
1124 2003-03-23 Simon J. Gerraty <sjg@void.crufty.net>
1126 * Merge with NetBSD make
1127 Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT
1128 appears in src list.
1130 2003-03-21 Simon J. Gerraty <sjg@void.crufty.net>
1132 * Merge with NetBSD make (mmm 10th anniversary!)
1133 pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828)
1134 pick up -X which tells us to not export VAR=val via setenv if
1135 we are already doing so via MAKEFLAGS. This saves valuable env
1136 space on systems like Darwin.
1137 set MAKE_VERSION to 3.1.17
1139 * parse.c: pix up fix for suffix rules
1141 2003-03-06 Simon J. Gerraty <sjg@void.crufty.net>
1143 * Merge with NetBSD make.
1144 pick up fix for propagating -B via MAKEFLAGS.
1145 set MAKE_VERSION to 3.1.16
1147 * Apply some patches from pkgsrc-bootstrap/bmake
1148 Originally by Grant Beattie <grant@netbsd.org>
1149 I may have missed some - since they are based on bmake-3.1.12
1151 2002-12-03 Simon J. Gerraty <sjg@void.crufty.net>
1153 * makefile.boot.in (bmake): update install targets for those that
1154 use them, also clear MAKEFLAGS when invoking bmake.boot to avoid
1155 havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>.
1157 * bmake.cat1: update the pre-formatted man page!
1159 2002-11-30 Simon J. Gerraty <sjg@void.crufty.net>
1161 * Merge with NetBSD make.
1162 pick up fix for premature free of pointer used in call
1164 set MAKE_VERSION to 3.1.15
1166 2002-11-26 Simon J. Gerraty <sjg@void.crufty.net>
1168 * configure.in: determine suitable value for MKSRC.
1169 override using --with-mksrc=PATH.
1171 * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems.
1172 configs(8) will use 'sun4' as an alias for 'sparc'.
1174 2002-11-25 Simon J. Gerraty <sjg@void.crufty.net>
1176 * Merge with NetBSD make.
1178 pick up fix for finding ../cat.c via .PATH when .CURDIR=..
1179 set MAKE_VERSION to 3.1.14
1180 add configure checks for killpg and sys/socket.h
1182 2002-09-16 Simon J. Gerraty <sjg@void.crufty.net>
1186 * makefile.boot.in (bmake): use install-mk
1187 Also setup ./mk before trying to invoke bmake.boot incase we
1188 needed install-mk to create a sys.mk for us.
1190 * configure.in: If we need to add -I${srcdir}/missing, make it an
1191 absolute path so that it works for lst.lib too.
1193 * make.h: always include sys/cdefs.h since we provide one if the
1196 * Makefile.in (install-mk):
1197 use MKSRC/install-mk which will do the right thing.
1198 use uname -p for ARCH if possible.
1199 since install-mk will setup links bsd.prog.mk -> prog.mk if
1200 needed, just .include bsd.prog.mk
1202 * Merge with NetBSD make (NetBSD-1.6)
1203 Code is ansi-C only now.
1204 Bug in handling of dotLast is fixed.
1205 Can now assign .OBJDIR and make will reset its notions of life.
1206 New modifiers :tu :tl for toUpper and toLower.
1208 Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net>
1210 * Merge with NetBSD make
1211 pick up fix for .END failure in compat mode.
1212 pick up fix for extra va_end() in ParseVErrorInternal.
1214 Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net>
1216 * configure.in: for systems that have sys/cdefs.h check if it is
1217 compatible. If not, include the one under missing, but tell it to
1218 include the native one too - necessary on Linux.
1220 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
1221 include_next (for gcc) to get the native sys/cdefs.h
1223 Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1225 * job.c (JobFinish): Fix an earlier merge bug that resulted in
1226 leaking descriptors when using -jN.
1228 * job.c (JobPrintCommand): See if "curdir" exists before
1229 attempting to chdir(). Doing the chdir directly in make (when in
1230 compat mode) fails silently, so let the -jN version do the same.
1231 This can happen when building kernels in an object tree and
1232 playing clever games to reset .CURDIR.
1234 * Merged with NetBSD make
1237 Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1239 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
1241 Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1243 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
1244 us not to export the iterator variable when using VAR_CMD context.
1246 Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1248 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
1249 its the wrong "fix".
1251 Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1253 * Redesigned export of VAR_CMD's via MAKEFLAGS.
1254 We now simply append the variable names to .MAKEOVERRIDES, and
1255 handle duplicate suppression and quoting in ExportMAKEFLAGS using:
1256 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
1257 Apart from fixing quoting bugs in previous version, this allows us
1258 to export vars to the environment by simply doing:
1259 .MAKEOVERRIDES+= PATH
1260 Merged again with NetBSD make, but the above is the only change.
1262 * configure.in: added
1263 --disable-pwd-override disable $PWD overriding getcwd()
1264 --disable-check-make-chdir disable make trying to guess
1265 when it should automatically cd ${.CURDIR}
1267 * Merge with NetBSD make, changes include:
1268 parse.c (ParseDoDependency): Spot that the syntax error is
1269 caused by an unresolved cvs/rcs conflict and say so.
1270 var.c: most of Var* functions now take a ctxt as 1st arg.
1271 now does variable substituion on rhs of sysv style modifiers.
1273 * var.c (Var_Set): exporting of command line variables (VAR_CMD)
1274 is now done here. We append the name='value' to .MAKEOVERRIDES
1275 rather than directly into MAKEFLAGS as this allows a Makefile to
1276 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a
1277 very similar mechanism. Note that in adding name='value' to
1278 .MAKEOVERRIDES we do the moral equivalent of:
1279 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
1281 Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1283 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
1285 * Merged with NetBSD make
1286 make -dx can now be used to run commands via sh -x
1287 better error messages on exec failures.
1289 Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1291 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
1292 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION,
1293 MACHINE etc otherwise they propagate from the previous bmake.
1295 * configure.in (machine): allow --with-machine=generic to make
1296 configure use machine.sh to set MACHINE.
1298 * job.c (JobInterrupt): convert to using WAIT_T and friends.
1300 * Makefile.in: mention in bmake.1 that we use autoconf.
1302 * make.1: mention MAKE_PRINT_VAR_ON_ERROR.
1304 Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1306 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
1307 as that rather defeats the usefulness of ${MAKEFILE}.
1309 * main.c (MainParseArgs): append command line variable assignments
1310 to MAKEFLAGS so that they get propagated to child make's.
1311 Apparently this is required POSIX behaviour? Its useful anyway.
1313 Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1315 * compat.c (CompatRunCommand): don't use perror() since stdio may
1316 cause problems in child of vfork().
1318 * compat.c, main.c: Call PrintOnError() when we are going to bail.
1319 This routine prints out the .curdir where we stopped and will also
1320 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
1322 * main.c: add ${.newline} to hold a "\n" - sometimes handy in
1325 * var.c: VarLoopExpand: ignore addSpace if a \n is present.
1327 * Added RCSid's for the files we've touched.
1329 Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1331 * configure.in: Thanks to some clues from mdb@juniper.net,
1332 added autoconf magic to control setting of MACHINE, MACHINE_ARCH
1333 as well as what ends up in _PATH_DEFSYSPATH. We now have:
1335 --with-machine=MACHINE explicitly set MACHINE
1336 --with-force-machine=MACHINE set FORCE_MACHINE
1337 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH
1338 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH
1339 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH
1340 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX
1342 If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
1344 * makefile: added a pathetically simple makefile to drive
1345 bootstrapping. Running configure by hand is more useful.
1347 * Makefile.in: added MAKE_VERSION, and reworked things to be less
1348 dependent on NetBSD bsd.*.mk
1350 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
1351 _PATH_OBJDIRPREFIX for those that don't want a default.
1352 construct _PATH_DEFSYSPATH from the info we get from configure.
1354 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
1355 if MAKE_VERSION is defined.
1357 * compat.c: when we bail, print out the .CURDIR we were in.
1359 Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1361 * Merged with NetBSD make
1363 * var.c: fixed a bug in the handling of the modifier :P
1364 if the node as found but the path was null, we segfault trying to
1367 Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
1369 * Merged with NetBSD make
1371 * make.c: Make_OODate's test for a library out of date was using
1372 cmtime where it should have used mtime (my bug).
1374 * compat.c: Use perror() to tell us what really went wrong when we
1375 cannot exec a command.
1377 Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1379 * Merged with NetBSD make
1381 Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1383 * Merged with NetBSD make
1385 Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1387 * Merged with NetBSD make
1389 Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1391 * Merged with NetBSD make
1393 Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1395 * util.c: don't provide signal() since we use sigcompat.c
1397 * Makefile.in: added a build target.
1399 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
1400 These allow some quite clever magic.
1402 * main.c (main): added support for getenv(MAKESYSPATH).
1404 Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1406 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
1407 This avoids objdir having a different value depending on how a
1408 directory was reached (via command line, or subdir.mk).
1410 * If FORCE_MACHINE is defined, ignore getenv("MACHINE").
1412 Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1414 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
1415 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
1416 I've been testing this in NetBSD's make for some weeks.
1418 * Turn Makefile into Makefile.in and make it useful.
1420 Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
1422 * Imported NetBSD's -current make(1) and resolve conflicts.
1424 * Applied autoconf patches from bmake v2
1426 * Imported clean code base from NetBSD-1.0