1 Tue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net>
3 * Merge with NetBSD make
4 pick up fix for .END failure in compat mode.
5 pick up fix for extra va_end() in ParseVErrorInternal.
7 Thu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net>
9 * configure.in: for systems that have sys/cdefs.h check if it is
10 compatible. If not, include the one under missing, but tell it to
11 include the native one too - necessary on Linux.
13 * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use
14 include_next (for gcc) to get the native sys/cdefs.h
16 Tue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
18 * job.c (JobFinish): Fix an earlier merge bug that resulted in
19 leaking descriptors when using -jN.
21 * job.c (JobPrintCommand): See if "curdir" exists before
22 attempting to chdir(). Doing the chdir directly in make (when in
23 compat mode) fails silently, so let the -jN version do the same.
24 This can happen when building kernels in an object tree and
25 playing clever games to reset .CURDIR.
27 * Merged with NetBSD make
30 Tue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
32 * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work.
34 Tue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
36 * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell
37 us not to export the iterator variable when using VAR_CMD context.
39 Sun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
41 * job.c (Job_CatchChildren): don't call Job_CatchOutput() here,
44 Sat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
46 * Redesigned export of VAR_CMD's via MAKEFLAGS.
47 We now simply append the variable names to .MAKEOVERRIDES, and
48 handle duplicate suppression and quoting in ExportMAKEFLAGS using:
49 ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@}
50 Apart from fixing quoting bugs in previous version, this allows us
51 to export vars to the environment by simply doing:
53 Merged again with NetBSD make, but the above is the only change.
56 --disable-pwd-override disable $PWD overriding getcwd()
57 --disable-check-make-chdir disable make trying to guess
58 when it should automatically cd ${.CURDIR}
60 * Merge with NetBSD make, changes include:
61 parse.c (ParseDoDependency): Spot that the syntax error is
62 caused by an unresolved cvs/rcs conflict and say so.
63 var.c: most of Var* functions now take a ctxt as 1st arg.
64 now does variable substituion on rhs of sysv style modifiers.
66 * var.c (Var_Set): exporting of command line variables (VAR_CMD)
67 is now done here. We append the name='value' to .MAKEOVERRIDES
68 rather than directly into MAKEFLAGS as this allows a Makefile to
69 use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a
70 very similar mechanism. Note that in adding name='value' to
71 .MAKEOVERRIDES we do the moral equivalent of:
72 .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val'
74 Fri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
76 * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H
78 * Merged with NetBSD make
79 make -dx can now be used to run commands via sh -x
80 better error messages on exec failures.
82 Thu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
84 * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that
85 MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION,
86 MACHINE etc otherwise they propagate from the previous bmake.
88 * configure.in (machine): allow --with-machine=generic to make
89 configure use machine.sh to set MACHINE.
91 * job.c (JobInterrupt): convert to using WAIT_T and friends.
93 * Makefile.in: mention in bmake.1 that we use autoconf.
95 * make.1: mention MAKE_PRINT_VAR_ON_ERROR.
97 Wed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
99 * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend"
100 as that rather defeats the usefulness of ${MAKEFILE}.
102 * main.c (MainParseArgs): append command line variable assignments
103 to MAKEFLAGS so that they get propagated to child make's.
104 Apparently this is required POSIX behaviour? Its useful anyway.
106 Tue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
108 * compat.c (CompatRunCommand): don't use perror() since stdio may
109 cause problems in child of vfork().
111 * compat.c, main.c: Call PrintOnError() when we are going to bail.
112 This routine prints out the .curdir where we stopped and will also
113 display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}.
115 * main.c: add ${.newline} to hold a "\n" - sometimes handy in
118 * var.c: VarLoopExpand: ignore addSpace if a \n is present.
120 * Added RCSid's for the files we've touched.
122 Thu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
124 * configure.in: Thanks to some clues from mdb@juniper.net,
125 added autoconf magic to control setting of MACHINE, MACHINE_ARCH
126 as well as what ends up in _PATH_DEFSYSPATH. We now have:
128 --with-machine=MACHINE explicitly set MACHINE
129 --with-force-machine=MACHINE set FORCE_MACHINE
130 --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH
131 --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH
132 --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH
133 --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX
135 If _PATH_OBJDIRPREFIX is set to "no" we won't define it.
137 * makefile: added a pathetically simple makefile to drive
138 bootstrapping. Running configure by hand is more useful.
140 * Makefile.in: added MAKE_VERSION, and reworked things to be less
141 dependent on NetBSD bsd.*.mk
143 * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining
144 _PATH_OBJDIRPREFIX for those that don't want a default.
145 construct _PATH_DEFSYSPATH from the info we get from configure.
147 * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION}
148 if MAKE_VERSION is defined.
150 * compat.c: when we bail, print out the .CURDIR we were in.
152 Sat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
154 * Merged with NetBSD make
156 * var.c: fixed a bug in the handling of the modifier :P
157 if the node as found but the path was null, we segfault trying to
160 Mon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au>
162 * Merged with NetBSD make
164 * make.c: Make_OODate's test for a library out of date was using
165 cmtime where it should have used mtime (my bug).
167 * compat.c: Use perror() to tell us what really went wrong when we
168 cannot exec a command.
170 Fri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
172 * Merged with NetBSD make
174 Sat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
176 * Merged with NetBSD make
178 Thu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
180 * Merged with NetBSD make
182 Tue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
184 * Merged with NetBSD make
186 Thu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
188 * util.c: don't provide signal() since we use sigcompat.c
190 * Makefile.in: added a build target.
192 * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :!
193 These allow some quite clever magic.
195 * main.c (main): added support for getenv(MAKESYSPATH).
197 Mon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
199 * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set.
200 This avoids objdir having a different value depending on how a
201 directory was reached (via command line, or subdir.mk).
203 * If FORCE_MACHINE is defined, ignore getenv("MACHINE").
205 Mon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
207 * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if
208 MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not.
209 I've been testing this in NetBSD's make for some weeks.
211 * Turn Makefile into Makefile.in and make it useful.
213 Tue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au>
215 * Imported NetBSD's -current make(1) and resolve conflicts.
217 * Applied autoconf patches from bmake v2
219 * Imported clean code base from NetBSD-1.0