1 |
2000-06-22 Paul D. Smith <psmith@gnu.org> |
2 |
|
3 |
* job.c (start_job_command): Increment commands_started before the |
4 |
special check for ":" (empty command) to avoid spurious "is up to |
5 |
date" messages. Also move the test for question_flag after we |
6 |
expand arguments, and only stop if the expansion provided an |
7 |
actual command to run, not just whitespace. This fixes PR/1780. |
8 |
|
9 |
2000-06-21 Paul D. Smith <psmith@gnu.org> |
10 |
|
11 |
* read.c (read_makefile): If we find a semicolon in the target |
12 |
definition, remember where it was. If the line turns out to be a |
13 |
target-specific variable, add back the semicolon and everything |
14 |
after it. Fixes PR/1709. |
15 |
|
16 |
2000-06-19 Paul D. Smith <psmith@gnu.org> |
17 |
|
18 |
* config.h-vms.template: #define uintmax_t for this system. |
19 |
* config.ami.template: Ditto. |
20 |
* config.h.W32.template: Ditto. |
21 |
|
22 |
* configure.in: We don't use select(2) anymore, so don't bother |
23 |
checking for it. |
24 |
* acconfig.h: Ditto. |
25 |
* acinclude.m4: Ditto. |
26 |
|
27 |
* file.c (all_secondary): New static global; if 1 it means |
28 |
.SECONDARY with no prerequisites was seen in the makefile. |
29 |
(snap_deps): Set it appropriately. |
30 |
(remove_intermediates): Check it. |
31 |
(num_intermediates): Remove this global, it's not used anywhere. |
32 |
(considered): Move this to remake.c and make it static. |
33 |
|
34 |
* NEWS: Document the change to .SECONDARY. |
35 |
* make.texinfo (Special Targets): Document the change to .SECONDARY. |
36 |
|
37 |
* implicit.c (pattern_search): Remove the increment of |
38 |
num_intermediates; it's not used. |
39 |
* filedef.h: Remove num_intermediates and considered. |
40 |
|
41 |
* function.c (handle_function): If the last argument was empty, we |
42 |
were pretending it didn't exist rather than providing an empty |
43 |
value. Keep looking until we're past the end, not just at the end. |
44 |
|
45 |
* implicit.c (pattern_search): Multi-target implicit rules weren't |
46 |
expanding the "also made" targets correctly if the pattern didn't |
47 |
contain a slash but the target did; in that case the directory |
48 |
part wasn't being added back to the stem on the "also made" |
49 |
targets. Reported by Seth M LaForge <sethml@newtonlabs.com>, with |
50 |
a patch. |
51 |
|
52 |
2000-06-17 Eli Zaretskii <eliz@is.elta.co.il> |
53 |
|
54 |
* Makefile.DOS.template (DESTDIR, bindir, datadir, libdir) |
55 |
(infodir, mandir, includedir): Support installation under a |
56 |
non-default DESTDIR. |
57 |
|
58 |
* remake.c (f_mtime): Fix the spelling of __MSDOS__. |
59 |
|
60 |
* configh.DOS.template (HAVE_FDOPEN, HAVE_MKSTEMP): Define. |
61 |
|
62 |
2000-06-14 Paul D. Smith <psmith@gnu.org> |
63 |
|
64 |
* acinclude.m4 (pds_WITH_GETTEXT): rewrite fp_WITH_GETTEXT and |
65 |
rename it to avoid confusion. This version is very specific: it |
66 |
won't accept any gettext that isn't GNU. If the user doesn't |
67 |
explicitly ask for the included gettext, we look to see if the |
68 |
system gettext is GNU (testing both the actual libintl library, |
69 |
and the libintl.h header file). Only if the system gettext is |
70 |
really GNU gettext will we allow it to be used. |
71 |
(pds_CHECK_SYSTEM_GETTEXT): A helper function. |
72 |
|
73 |
2000-06-13 Paul D. Smith <psmith@gnu.org> |
74 |
|
75 |
* gettext.h: If we have libintl.h, use that instead of any of the |
76 |
contents of gettext.h. We won't check for libintl.h unless we're |
77 |
using the system gettext. |
78 |
|
79 |
* function.c (func_word): Clarify error message. |
80 |
|
81 |
2000-06-10 Paul Eggert <eggert@twinsun.com> |
82 |
|
83 |
Support nanosecond resolution on hosts with 64-bit time_t and |
84 |
uintmax_t (e.g. 64-bit Sparc Solaris), by splitting |
85 |
FILE_TIMESTAMP into a 30-bit part for nanoseconds, with the |
86 |
rest for seconds, if FILE_TIMESTAMP is at least 64 bits wide. |
87 |
|
88 |
* make.h: Always define FILE_TIMESTAMP to be uintmax_t, for |
89 |
simplicity. |
90 |
|
91 |
* filedef.h (FILE_TIMESTAMP_HI_RES, FILE_TIMESTAMP_LO_BITS) |
92 |
(UNKNOWN_MTIME, NONEXISTENT_MTIME, OLD_MTIME) |
93 |
(ORDINARY_MTIME_MIN, ORDINARY_MTIME_MAX): New macros. |
94 |
(FILE_TIMESTAMP_STAT_MODTIME): Now takes fname arg. All uses changed. |
95 |
(FILE_TIMESTAMP_DIV, FILE_TIMESTAMP_MOD) |
96 |
(FILE_TIMESTAMP_FROM_S_AND_NS): Remove. |
97 |
(FILE_TIMESTAMP_S, FILE_TIMESTAMP_NS): Use shifts instead of |
98 |
multiplication and division. Offset the timestamps by |
99 |
ORDINARY_MTIME_MIN. |
100 |
(file_timestamp_cons): New decl. |
101 |
(NEW_MTIME): Now just the maximal timestamp value, as we no longer use |
102 |
-1 to refer to nonexistent files. |
103 |
|
104 |
* file.c (snap_deps, print_file): Use NONEXISTENT_MTIME, |
105 |
UNKNOWN_MTIME, and OLD_MTIME instead of magic constants. |
106 |
* filedef.h (file_mtime_1): Likewise. |
107 |
* main.c (main): Likewise. |
108 |
* remake.c (update_file_1, notice_finished_file, check_dep) |
109 |
(f_mtime, name_mtime, library_search): Likewise. |
110 |
* vpath.c (selective_vpath_search): Likewise. |
111 |
|
112 |
* remake.c (f_mtime): Do not assume that (time_t) -1 equals |
113 |
NONEXISTENT_MTIME. When futzing with time stamps, adjust by |
114 |
multiples of 2**30, not 10**9. Do not calculate timestamp |
115 |
adjustments on DOS unless they are needed. |
116 |
|
117 |
* commands.c (delete_target): Do not assume that |
118 |
FILE_TIMESTAMP_S yields -1 for a nonexistent file, as that is |
119 |
no longer true with the new representation. |
120 |
|
121 |
* file.c (file_timestamp_cons): New function, replacing |
122 |
FILE_TIMESTAMP_FROM_S_AND_NS. All uses changed. |
123 |
(file_timestamp_now): Use FILE_TIMESTAMP_HI_RES instead of 1 < |
124 |
FILE_TIMESTAMPS_PER_S to determine whether we're using hi-res |
125 |
timestamps. |
126 |
(print_file): Print OLD_MTIME values as "very old" instead of |
127 |
as a timestamp. |
128 |
|
129 |
2000-05-31 Paul Eggert <eggert@twinsun.com> |
130 |
|
131 |
* remake.c (name_mtime): Check for stat failures. Retry if EINTR. |
132 |
|
133 |
2000-05-24 Paul D. Smith <psmith@gnu.org> |
134 |
|
135 |
* main.c (decode_switches): The "positive_int" switch uses atoi() |
136 |
which succeeds for any input, and doesn't notice if extra, |
137 |
non-digit text is after the number. This causes make to mis-parse |
138 |
command lines like "make -j 5foo" as "make -j5" (ignoring "foo" |
139 |
completely) instead of "make -j0 5foo" (where "5foo" is a |
140 |
target). Fix this by checking the value by hand. We could use |
141 |
strtol() if we were sure of having it; this is the only |
142 |
questionable use of atoi() I found so we'll just stick with that. |
143 |
Fixes PR/1716. |
144 |
|
145 |
* i18n/ja.po, i18n/nl.po, i18n/pt_BR.po: New translation files. |
146 |
* configure.in (ALL_LINGUAS): Added pt_BR. |
147 |
|
148 |
2000-05-22 Paul Eggert <eggert@twinsun.com> |
149 |
|
150 |
* remake.c (f_mtime): Fix bug when handling future odd |
151 |
timestamps in the WINDOWS32 case. Do not bother initializing |
152 |
static var to zero. Simplify code that works around WINDOWS32 |
153 |
and __MSDOS__ time skew brain damage. |
154 |
|
155 |
2000-05-22 Paul Eggert <eggert@twinsun.com> |
156 |
|
157 |
* job.c: Don't include time.h, as make.h already does this. |
158 |
|
159 |
2000-05-22 Paul Eggert <eggert@twinsun.com> |
160 |
|
161 |
* configure.in (AC_CHECK_HEADERS): Add sys/time.h. |
162 |
(AC_HEADER_TIME): Add. |
163 |
(clock_gettime): Prefer -lrt to -lposix4, for Solaris 7. |
164 |
(gettimeofday): Add check for standard version of gettimeofday. |
165 |
This merges changes written by Paul D. Smith. |
166 |
|
167 |
* file.c (file_timestamp_now): Use gettimeofday if available |
168 |
and if clock_gettime does not work. Don't bother with |
169 |
high-resolution clocks if file timestamps have only one-second |
170 |
resolution. |
171 |
|
172 |
* make.h <sys/time.h>: Include, conditionally on the usual |
173 |
TIME_WITH_SYS_TIME and HAVE_SYS_TIME_H macros. This is needed |
174 |
for gettimeofday. |
175 |
|
176 |
2000-05-20 Paul D. Smith <psmith@gnu.org> |
177 |
|
178 |
* read.c (read_makefile): We weren't keeping makefile names around |
179 |
unless there was a rule defined in them; but now we need to keep |
180 |
them for variables as well. Forget trying to be fancy: just keep |
181 |
every makefile name we successfully open. |
182 |
|
183 |
* remote-cstms.c (start_remote_job_p): Change DB_EXTRA (?) to DB_JOBS. |
184 |
|
185 |
2000-05-17 Paul Eggert <eggert@twinsun.com> |
186 |
|
187 |
* commands.c (chop_commands): Ensure ctype macro args are nonnegative. |
188 |
* expand.c (variable_expand_string): Likewise. |
189 |
* function.c (subst_expand, lookup_function, msdos_openpipe): |
190 |
Likewise. |
191 |
* job.c (vms_redirect, start_job_command, new_job, child_execute_job, |
192 |
construct_command_argv_internal, construct_command_argv): Likewise. |
193 |
* main.c (decode_env_switches, quote_for_env): Likewise. |
194 |
* misc.c (collapse_continuations, end_of_token, end_of_token_w32, |
195 |
next_token): Likewise. |
196 |
* read.c (read_makefile, do_define, conditional_line, |
197 |
find_char_unquote,get_next_mword): Likewise. |
198 |
* variable.c (try_variable_definition): Likewise. |
199 |
* vpath.c (construct_vpath_list): Likewise. |
200 |
* w32/pathstuff.c (convert_vpath_to_windows32): Likewise. |
201 |
|
202 |
2000-05-10 Eli Zaretskii <eliz@is.elta.co.il> |
203 |
|
204 |
* main.c (main) [__MSDOS__]: Add SIGFPE to signals we block when |
205 |
running child programs, to prevent Make from dying on Windows 9X |
206 |
when the child triggers an FP exception. |
207 |
|
208 |
2000-05-08 Paul D. Smith <psmith@gnu.org> |
209 |
|
210 |
* dir.c (find_directory) [WINDOWS32]: If we strip a trailing "\" |
211 |
from the directory name, remember to add it back. The argument |
212 |
might really be inside a longer string (e.g. %Path%) and if you |
213 |
don't restore the "\" it'll be truncated permanently. Fixes PR/1722. |
214 |
Reported by <steven@surfcast.com> |
215 |
|
216 |
2000-05-02 Paul D. Smith <psmith@gnu.org> |
217 |
|
218 |
* job.c (construct_command_argv_internal) [WINDOWS32]: Added "rd" |
219 |
and "rmdir" to the list of command.com commands. |
220 |
Reported by Elod Horvath <Elod_Horvath@lnotes5.bankofny.com> |
221 |
|
222 |
2000-04-24 Paul D. Smith <psmith@gnu.org> |
223 |
|
224 |
* i18n/ja.po: New translation file from the Japanese language team. |
225 |
|
226 |
2000-04-18 Paul D. Smith <psmith@gnu.org> |
227 |
|
228 |
* remake.c (f_mtime): If ar_member_date() returns -1 (the member |
229 |
doesn't exist), then return (FILE_TIMESTAMP)-1 rather than |
230 |
returning the timestamp calculated from the value -1. Fixes PR/1696. |
231 |
Reported by Gilles Bourhis <Gilles.Bourhis@univ-rennes1.fr>. |
232 |
|
233 |
2000-04-17 Paul D. Smith <psmith@gnu.org> |
234 |
|
235 |
* config.h.W32.template: Add LOCALEDIR macro resolving to "". |
236 |
* w32/subproc/sub_proc.c (process_begin): Remove reference to |
237 |
debug_flag; change it to a DB() call. Fixes PR/1700. |
238 |
Reported by Jim Smith <jwksmith@attglobal.net> |
239 |
|
240 |
2000-04-17 Bruno Haible <haible@clisp.cons.org> |
241 |
|
242 |
* arscan.c [BeOS]: Add replacement for nonexistent <ar.h> from GNU |
243 |
binutils. |
244 |
|
245 |
2000-04-11 Paul D. Smith <psmith@gnu.org> |
246 |
|
247 |
* function.c (expand_builtin_function): If no arguments were |
248 |
provided, just quit early rather than changing each function to |
249 |
test for this. |
250 |
(function_table[]): Change the min # of arguments to 0 for all |
251 |
those functions for which it makes sense (currently everything |
252 |
that used to take a minimum of 1 argument, except $(call ...)). |
253 |
Fixes PR/1689. |
254 |
|
255 |
2000-04-09 Eli Zaretskii <eliz@is.elta.co.il> |
256 |
|
257 |
* README.DOS: Add instructions to install a binary distro. |
258 |
Mention latest versions of Windows. |
259 |
|
260 |
2000-04-07 Eli Zaretskii <eliz@is.elta.co.il> |
261 |
|
262 |
* main.c (main): Rename TMP_TEMPLATE into DEFAULT_TMPDIR, and use |
263 |
it for the directory of the temporary file. If P_tmpdir is |
264 |
defined, use it in preference to "/tmp/". Try $TMPDIR, $TEMP, and |
265 |
$TMP in the environment before defaulting to DEFAULT_TMPDIR. |
266 |
(print_version): Add year 2000 to the Copyright line. |
267 |
|
268 |
2000-04-04 Paul D. Smith <psmith@gnu.org> |
269 |
|
270 |
* Version 3.79 released. |
271 |
|
272 |
* make.texinfo: Update documentation with new features for 3.79. |
273 |
|
274 |
* function.c (func_wordlist): Don't re-order arguments to |
275 |
wordlist. |
276 |
|
277 |
2000-04-03 Paul D. Smith <psmith@gnu.org> |
278 |
|
279 |
* remake.c (f_mtime): Archive member timestamps are stored as |
280 |
time_t, without nanoseconds. But, f_mtime() wants to return |
281 |
nanosecond info on those systems that support it. So, convert the |
282 |
return value of ar_member_date() into a FILE_TIMESTAMP, using 0 as |
283 |
the nanoseconds. |
284 |
|
285 |
2000-03-28 Paul D. Smith <psmith@gnu.org> |
286 |
|
287 |
* Version 3.78.92 released. |
288 |
|
289 |
* build.template: Updates for gettext support; some bugs fixed. |
290 |
|
291 |
2000-03-27 Paul D. Smith <psmith@gnu.org> |
292 |
|
293 |
* config.guess, config.sub: Updated from config CVS archive at |
294 |
:pserver:anoncvs@subversions.gnu.org:/home/cvs as of today. |
295 |
|
296 |
* read.c (record_files): Check if expanding a static pattern |
297 |
rule's prerequisite pattern leaves an empty string as the |
298 |
prerequisite, and issue an error if so. Fixes PR/1670. |
299 |
(read_makefile): Store the starting linenumber for a rule in |
300 |
TGTS_STARTED. |
301 |
(record_waiting_files): Use the TGTS_STARTED value for the file |
302 |
location passed to record_file() instead of the current |
303 |
linenumber, so error messages list the line where the target was |
304 |
defined instead of the line after the end of the rule definition. |
305 |
|
306 |
* remake.c (start_updating, finish_updating, is_updating): Fix |
307 |
PR/1671; circular dependencies in double-colon rules are not |
308 |
diagnosed. These macros set the updating flag in the root |
309 |
double-colon file instead of the current one, if it's part of a |
310 |
double-colon list. This solution provided by Tim Magill |
311 |
<magill@gate.net>; I just changed the macro names :). |
312 |
(update_file_1): Call them. |
313 |
(check_dep): Call them. |
314 |
|
315 |
The change to not automatically evaluate the $(call ...) |
316 |
function's arguments breaks recursive use of call. Although using |
317 |
$(if ...) and $(foreach ...) in $(call ...) macros is important, |
318 |
the error conditions generated are simply to obscure for me to |
319 |
feel comfortable with. If a method is devised to get both |
320 |
working, we'll revisit. For now, remove this change. |
321 |
|
322 |
* function.c (function_table): Turn on the expand bit for func_call. |
323 |
(func_call): Don't expand arguments for builtin functions; that |
324 |
will have already been done. |
325 |
|
326 |
2000-03-26 Paul D. Smith <psmith@gnu.org> |
327 |
|
328 |
* file.c (remove_intermediates): Never remove targets explicitly |
329 |
requested on the command-line by checking the cmd_target flag. |
330 |
Fixed PR/1669. |
331 |
|
332 |
2000-03-23 Paul Eggert <eggert@twinsun.com> |
333 |
|
334 |
* filedef.h (FILE_TIMESTAMP_STAT_MODTIME): Use st_mtime instead of |
335 |
st_mtim.tv_sec; the latter doesn't work on Unixware. |
336 |
|
337 |
2000-03-18 Paul D. Smith <psmith@gnu.org> |
338 |
|
339 |
* file.c (file_hash_enter): If we're trying to change a file into |
340 |
itself, just return. We used to assert this wasn't true, but |
341 |
someone came up with a weird case involving archives. After |
342 |
playing with it for a while I decided it was OK to ignore it. |
343 |
|
344 |
* default.c: Define COFLAGS to empty to avoid spurious warnings. |
345 |
|
346 |
* filedef.h: Change #if ST_MTIM_NSEC to #ifdef; this is a macro |
347 |
containing the name of the nsec field, not true/false. |
348 |
* make.h: Ditto. |
349 |
Reported by Marco Franzen <Marco.Franzen@Thyron.com>. |
350 |
|
351 |
2000-03-08 Tim Magill <magill@gate.net> |
352 |
|
353 |
* remake.c (update_file): Return the exit status of the pruned |
354 |
file when pruning, not just 0. Fixes PR/1634. |
355 |
|
356 |
2000-02-24 Paul D. Smith <psmith@gnu.org> |
357 |
|
358 |
* configure.in: Close a minor potential security hole; if you're |
359 |
reading makefiles from stdin (who does that?) you could run into a |
360 |
race condition with the temp file using mktemp() or tmpnam(). Add |
361 |
a check for mkstemp() and fdopen(). |
362 |
* main.c (open_tmpfile): New function to open a temporary file. |
363 |
If we have mkstemp() (and fdopen()), use that. If not use |
364 |
mktemp() or tmpnam(). If we have fdopen(), use open() to open the |
365 |
file O_CREAT|O_EXCL. If not, fall back to normal fopen() (insecure). |
366 |
(main): Call it. |
367 |
* job.c (child_execute_job) [VMS]: Call it. |
368 |
|
369 |
* variable.c (lookup_variable): If we find a variable which is |
370 |
being expanded, then note it but keep looking through the rest of |
371 |
the set list to see if we can find one that isn't. If we do, |
372 |
return that. If we don't, return the original. Fix for PR/1610. |
373 |
|
374 |
While implementing this I realized that it also solves PR/1380 in |
375 |
a much more elegant way. I don't know what I was smoking before. |
376 |
So, remove the hackage surrounding the original fix for that (see |
377 |
below). Change this function back to lookup_variable and remove |
378 |
the extra setlist argument. |
379 |
* variable.h (recursively_expand_setlist): Remove the macro, |
380 |
rename the prototype, and remove the extra setlist argument. |
381 |
(lookup_variable): Ditto. |
382 |
* expand.c (recursively_expand): Rename and remove the extra |
383 |
setlist argument. |
384 |
(reference_variable): Use lookup_variable() again. |
385 |
(allocated_variable_append): Remove the extra setlist argument. |
386 |
|
387 |
2000-02-21 Paul D. Smith <psmith@gnu.org> |
388 |
|
389 |
* README.template: A few updates. |
390 |
|
391 |
* i18n/de.po: New version from the German translation team. |
392 |
|
393 |
2000-02-09 Paul D. Smith <psmith@gnu.org> |
394 |
|
395 |
* Version 3.78.91 released. |
396 |
|
397 |
2000-02-07 Paul D. Smith <psmith@gnu.org> |
398 |
|
399 |
* read.c (read_makefile): Reset *p2 to ':', not *colonp. If any |
400 |
filenames contained backslashes the resulting output (without |
401 |
backslashes) will be shorter, so setting *colonp doesn't change |
402 |
the right character. Fix for PR/1586. |
403 |
|
404 |
For += target-specific variables we need to remember which |
405 |
variable set we found the variable in, so we can start looking |
406 |
from there in the next iteration (otherwise we might see it again |
407 |
in recursively_expand and fail!). This is turning into a hack; if |
408 |
it gets any worse we'll have to rethink this entire algorithm... |
409 |
implementing expansion of these references separately from the |
410 |
"normal" expansion, say, instead of using the same codepath. |
411 |
Actually, it's already "worse enough" :-/. |
412 |
Fix for PR/1380. |
413 |
|
414 |
* variable.h (recursively_expand_setlist): Rename |
415 |
recursively_expand to add a struct variable_set_list argument, and |
416 |
make a macro for recursively_expand. |
417 |
(lookup_variable_setlist): Rename lookup_variable to add a struct |
418 |
variable_set_list argument, and make a macro for lookup_variable. |
419 |
|
420 |
* expand.c (recursively_expand_setlist): Take an extra struct |
421 |
variable_set_list argument and pass it to allocated_variable_append(). |
422 |
(reference_variable): Use lookup_variable_setlist() and pass the |
423 |
returned variable_set_list to recursively_expand_setlist. |
424 |
(allocated_variable_append): Take an extra setlist argument and |
425 |
use this as the starting place when searching for the appended |
426 |
expansion. If it's null, use current_variable_set_list as before. |
427 |
|
428 |
* variable.c (lookup_variable_setlist): If the LISTP argument is |
429 |
not nil, set it to the list containing the variable we found. |
430 |
|
431 |
2000-02-04 Paul D. Smith <psmith@gnu.org> |
432 |
|
433 |
* variable.c (print_variable): Write out filename/linenumber |
434 |
information for the variable definition if present. |
435 |
(define_variable_in_set): Store filename information if provided. |
436 |
(define_variable, define_variable_for_file): Removed. |
437 |
(try_variable_definition): Use define_variable_loc() to keep |
438 |
variable definition location information. |
439 |
* read.c (read_makefile): Keep variable definition location info. |
440 |
(do_define): Ditto. |
441 |
(record_target_var): Ditto. |
442 |
* variable.h (define_variable_in_set): New fileinfo argument. |
443 |
(define_variable, define_variable_loc, define_variable_for_file): |
444 |
Declare new macros. |
445 |
|
446 |
Fix PR/1407: |
447 |
|
448 |
* filedef.h (struct file): Rename patvar to pat_variables and make |
449 |
it just a variable_set_list; we need our own copy of the pattern |
450 |
variable's variable set list here to avoid overwriting the global |
451 |
one. |
452 |
* variable.c (initialize_file_variables): Move the instantiation |
453 |
of the pat_variables pointer here. Only do the search after we're |
454 |
done reading the makefiles so we don't search too early. If |
455 |
there's a pat_variables value, set up the variables next ptr. |
456 |
* expand.c (variable_expand_for_file): Remove the setup of the |
457 |
pat_variables info; it's done earlier now to ensure the parent's |
458 |
pattern variables are set up correctly as well. |
459 |
|
460 |
2000-02-03 Paul D. Smith <psmith@gnu.org> |
461 |
|
462 |
* job.c (sh_chars_dos) [WINDOWS32]: Add "&" as a shell |
463 |
metacharacter for the W32 DOS shell. |
464 |
Reported by Warren Jones <wjones@tc.fluke.com>. |
465 |
|
466 |
2000-02-02 Paul D. Smith <psmith@gnu.org> |
467 |
|
468 |
Fixes for the OpenVMS port from Hartmut Becker <becker@rto.dec.com> |
469 |
|
470 |
* config.h-vms [VMS]: Define LOCALEDIR to something; needed for |
471 |
the expansion of bindtextdomain() even though it's a no-op. |
472 |
* vmsfunctions.c (strcmpi): Remove duplicate definition of strcmpi(). |
473 |
(readdir): Use DB() instead of testing debug_flag. |
474 |
* dir.c (file_impossible) [VMS]: Search "p" not "name". |
475 |
* job.c [VMS]: Switch from debug_flag to the new DB macro. Add |
476 |
some i18n _() macros (even though VMS doesn't yet support it). |
477 |
|
478 |
* function.c (patsubst_expand): Change "len" to not be unsigned to |
479 |
avoid type mismatches. |
480 |
|
481 |
* main.c (main): Declare signame_init() if we're going to call it. |
482 |
|
483 |
2000-01-29 Eli Zaretskii <eliz@is.elta.co.il> |
484 |
|
485 |
* Makefile.DOS.template: Track changes in Makefile.in |
486 |
(install-recursive, uninstall-recursive): Add missing targets. |
487 |
(DESTDIR): Define. |
488 |
(install-binPROGRAMS, uninstall-binPROGRAMS): Use $(DESTDIR). |
489 |
|
490 |
* default.c (default_variables) [__MSDOS__]: Define CXX to gpp. |
491 |
|
492 |
2000-01-27 Paul D. Smith <psmith@gnu.org> |
493 |
|
494 |
* gettext.c: Some warning cleanups, and a fix for systems which |
495 |
don't define HAVE_ALLOCA (the workaround code was included |
496 |
twice). |
497 |
|
498 |
2000-01-26 Paul D. Smith <psmith@gnu.org> |
499 |
|
500 |
* Version 3.78.90 released. |
501 |
|
502 |
2000-01-25 Paul D. Smith <psmith@gnu.org> |
503 |
|
504 |
Change gettext support to use the simplified version in libit 0.7. |
505 |
|
506 |
* getopt.c, make.h: Use gettext.h instead of libintl.h. |
507 |
* ABOUT-NLS, gettext.h, gettext.c: New files from libit 0.7. |
508 |
Modified to remove some static declarations which aren't defined. |
509 |
* acconfig.h: Use new gettext #defines. |
510 |
* acinclude.m4: Add fp_WITH_GETTEXT; remove AM_GNU_GETTEXT. |
511 |
* configure.in: Call fp_WITH_GETTEXT instead. |
512 |
* Makefile.am: New gettext stuff. Also force inclusion of glob |
513 |
files for systems which have LIBC glob. |
514 |
|
515 |
* i18n/Makefile.am, i18n/.cvsignore: New dir for translation files. |
516 |
* i18n/de.po, i18n/es.po, i18n/fr.po, i18n/ko.po, i18n/nl.po: |
517 |
* i18n/pl.po, i18n/ru.po: Import translations already done for |
518 |
earlier versions of GNU make. Thanks for that work!! |
519 |
|
520 |
* po/Makefile.in.in, po/POTFILES.in: Removed. |
521 |
|
522 |
2000-01-23 Paul D. Smith <psmith@gnu.org> |
523 |
|
524 |
* main.c (decode_debug_flags): If debug_flag is set, enable all |
525 |
debugging levels. |
526 |
(debug_flag): Resurrect this flag variable. |
527 |
(switches): Make -d give the old behavior of turning on all |
528 |
debugging. Change --debug alone to emit basic debugging and take |
529 |
optional arguments to expand debugging. |
530 |
* NEWS: Document the new debugging options. |
531 |
|
532 |
* remake.c (no_rule_error): Remove this function. This tries to |
533 |
fix a real problem--see the description with the introduction of |
534 |
this function below. However, the cure is worse than the disease |
535 |
and this approach won't work. |
536 |
(remake_file): Put the code from no_rule_error back here. |
537 |
(update_file_1): Remove call to no_rule_error. |
538 |
|
539 |
* filedef.h (struct file): Remove mfile_status field. |
540 |
|
541 |
2000-01-22 Paul D. Smith <psmith@gnu.org> |
542 |
|
543 |
Integrate GNU gettext support. |
544 |
|
545 |
* configure.in: Add AM_GNU_GETTEXT. |
546 |
* Makefile.am: Add options for setting LOCALEDIR, -Iintl, etc. |
547 |
* acinclude.m4: Add gettext autoconf macros. |
548 |
* acconfig.h: Add new gettext #defines. |
549 |
* make.h: Include libintl.h. Make sure _() and N_() macros are |
550 |
declared. Make gettext() an empty macro is NLS is disabled. |
551 |
* main.c (struct command_switch switches[]): Can't initialize |
552 |
static data with _() (gettext calls), so use N_() there then use |
553 |
gettext() directly when printing the strings. |
554 |
* remake.c (no_rule_error): The string constants can't be static |
555 |
when initializing _() macros. |
556 |
* file.c (print_file): Reformat a few strings to work better for |
557 |
translation. |
558 |
* po/POTFILES.in, po/Makefile.in.in: New files. Take |
559 |
Makefile.in.in from the latest GNU tar distribution, as that |
560 |
version works better than the one that comes with gettext. |
561 |
* NEWS: Mention i18n ability. |
562 |
|
563 |
2000-01-21 Paul D. Smith <psmith@gnu.org> |
564 |
|
565 |
Installed patches for the VMS port. |
566 |
Patches provided by: Hartmut Becker <Hartmut.Becker@compaq.com> |
567 |
|
568 |
* readme.vms, arscan.c, config.h-vms, default.c, dir.c, file.c: |
569 |
* implicit.c, job.c, make.h, makefile.com, makefile.vms, rule.c: |
570 |
* variable.c, vmsdir.h, vmsfunctions.c, vmsify.c, glob/glob.c: |
571 |
* glob/glob.h: Installed patches. See readme.vms for details. |
572 |
|
573 |
2000-01-14 Andreas Schwab <schwab@suse.de> |
574 |
|
575 |
* dir.c (read_dirstream): Initialize d_type if it exists. |
576 |
|
577 |
2000-01-11 Paul D. Smith <psmith@gnu.org> |
578 |
|
579 |
Resolve PR/xxxx: don't automatically evaluate the $(call ...) |
580 |
function's arguments. While we're here, clean up argument passing |
581 |
protocol to always use simple nul-terminated strings, instead of |
582 |
sometimes using offset pointers to mark the end of arguments. |
583 |
This change also fixes PR/1517. |
584 |
Reported by Damien GIBOU <damien.gibou@st.com>. |
585 |
|
586 |
* function.c (struct function_table_entry): Remove the negative |
587 |
required_args hack; put in explicit min and max # of arguments. |
588 |
(function_table): Add in the max value. Turn off the expand bit |
589 |
for func_call. |
590 |
(expand_builtin_function): Test against minimum_args instead of |
591 |
the obsolete required_args. |
592 |
(handle_function): Rewrite this. We don't try to be fancy and |
593 |
pass one style of arguments to expanded functions and another |
594 |
style to non-expanded functions: pass pointers to nul-terminated |
595 |
strings to all functions. |
596 |
(func_call): Rewrite this. If we are invoking a builtin function |
597 |
and it's supposed to have its arguments expanded, do that (since |
598 |
it's not done by handle_function for $(call ...) anymore). For |
599 |
non-builtins, just add the variables as before but mark them as |
600 |
recursive so they'll be expanded later, as needed. |
601 |
(func_if): All arguments are vanilla nul-terminated strings: |
602 |
remove trickery with "argv[1]-1". |
603 |
(func_foreach): Ditto. |
604 |
|
605 |
* expand.c (expand_argument): If the second arg is NULL, expand |
606 |
the entire first argument. |
607 |
|
608 |
* job.c (new_job): Zero the child struct. This change was just |
609 |
made to keep some heap checking software happy, not because there |
610 |
was an actual bug (the important memory was being cleared properly). |
611 |
|
612 |
1999-12-15 Paul D. Smith <psmith@gnu.org> |
613 |
|
614 |
* variable.c (print_variable): Print the variable with += if the |
615 |
append flag is set. |
616 |
|
617 |
* implicit.c (pattern_search): Remove the extra check of the |
618 |
implicit flag added on 8/24/1998. This causes problems and the |
619 |
reason for the change was better resolved by the change made to |
620 |
check_deps() on 1998-08-26. This fixes PR/1423. |
621 |
|
622 |
1999-12-08 Paul D. Smith <psmith@gnu.org> |
623 |
|
624 |
* dir.c (dir_setup_glob): On 64 bit ReliantUNIX (5.44 and above) |
625 |
in LFS mode, stat() is actually a macro for stat64(). Assignment |
626 |
doesn't work in that case. So, stat is a macro, make a local |
627 |
wrapper function to invoke it. |
628 |
(local_stat): Wrapper function, if needed. |
629 |
Reported by Andrej Borsenkow <Andrej.Borsenkow@mow.siemens.ru>. |
630 |
|
631 |
1999-12-02 Paul D. Smith <psmith@gnu.org> |
632 |
|
633 |
* remake.c (update_file): Move the considered test outside the |
634 |
double-colon loop, _but_ make sure we test the double_colon target |
635 |
not the "current" target. If we stop early because one |
636 |
double-colon target is running, mark all the rest considered and |
637 |
try to start their prerequisites (so they're marked considered). |
638 |
Fix for PR/1476 suggested by Tim Magill <tim.magill@telops.gte.com>. |
639 |
|
640 |
1999-11-22 Rob Tulloh <rob_tulloh@dev.tivoli.com> |
641 |
|
642 |
* function.c (windows32_openpipe, func_shell): Correct Windows32 |
643 |
problem where $(shell nosuchfile) would incorrectly exit make. The |
644 |
fix is to print the error and let make continue. |
645 |
Reported by David Masterson <David.Masterson@kla-tencor.com>. |
646 |
|
647 |
* w32/subproc/misc.c (arr2envblk): Memory leak fix. |
648 |
|
649 |
1999-11-21 Paul D. Smith <psmith@gnu.org> |
650 |
|
651 |
Rework GNU make debugging to provide different levels of output. |
652 |
|
653 |
* NEWS: mention it. |
654 |
* debug.h: New file. Define various debugging levels and macros. |
655 |
* function.c, implicit.c, job.c, main.c, misc.c, read.c, remake.c |
656 |
* remote-cstms.c, vmsfunctions.c: Replace all code depending on |
657 |
debug_flag with invocations of debugging macros. |
658 |
* make.h: Remove debug_flag and DEBUGPR, add db_level. |
659 |
|
660 |
1999-11-18 Paul Eggert <eggert@twinsun.com> |
661 |
|
662 |
* acinclude.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a problem |
663 |
with the QNX 4.25 shell, which doesn't propagate exit status of |
664 |
failed commands inside shell assignments. |
665 |
|
666 |
1999-11-17 Paul D. Smith <psmith@gnu.org> |
667 |
|
668 |
* function.c (func_if): Find the end of the arg list by testing |
669 |
the next item for NULL; any other test is not correct. |
670 |
Reported by Graham Reed <grahamr@algorithmics.com> (PR/1429). |
671 |
|
672 |
Fix += when used in a target-specific variable context. |
673 |
|
674 |
* variable.h: New bitfield APPEND set if we have a += |
675 |
target-specific variable. |
676 |
|
677 |
* variable.c (try_variable_definition): Add an argument to specify |
678 |
if we're trying a target-specific variable. If we are and it's an |
679 |
append style, don't append it, record it as normal recursive, but |
680 |
set the APPEND flag so it'll be expanded later. |
681 |
* main.c (handle_non_switch_argument): Use new |
682 |
try_variable_definition() signature. |
683 |
* read.c (read_makefile,record_target_var): Ditto. |
684 |
|
685 |
* expand.c (allocated_variable_append): New function: like |
686 |
allocated_variable_expand(), but we expand the same variable name |
687 |
in the context of the ``next'' variable set, then we append this |
688 |
expanded value. |
689 |
(recursively_expand): Invoke it, if the APPEND bit is set. |
690 |
|
691 |
1999-11-10 Paul D. Smith <psmith@gnu.org> |
692 |
|
693 |
* file.c (snap_deps): If the .NOTPARALLEL target is defined, turn |
694 |
off parallel builds for this make only (still allow submakes to be |
695 |
run in parallel). |
696 |
* main.c: New variable, ``not_parallel''. |
697 |
* make.h: Add an extern for it. |
698 |
* job.c (new_job): Test NOT_PARALLEL as well as JOB_SLOTS. |
699 |
* NEWS: Add info on .NOTPARALLEL. |
700 |
* make.texinfo (Special Targets): Document it. |
701 |
|
702 |
* configure.in (GLOBDIR): Set to "glob" if we need to build the |
703 |
glob library. |
704 |
* Makefile.am (SUBDIRS): Use the GLOBDIR variable instead of |
705 |
"glob" so we don't try to build glob if we don't need to (if we |
706 |
have GLIBC glob). Reported by Lars Hecking <lhecking@nmrc.ucc.ie>. |
707 |
|
708 |
* main.c (main): Don't put "***" in the clock skew warning |
709 |
message. Reported by karl@gnu.org. |
710 |
|
711 |
* make.h: Remove unneeded signal setup. |
712 |
|
713 |
* signame.c: Remove extraneous #includes; some versions of Ultrix |
714 |
don't protect against multiple inclusions and it causes compile |
715 |
errors. Reported by Simon Burge <simonb@thistledown.com.au>. |
716 |
|
717 |
1999-10-15 Paul D. Smith <psmith@gnu.org> |
718 |
|
719 |
* main.c (quote_for_env): Rename from quote_as_word(). |
720 |
|
721 |
* make.h, *.c: Prefer strchr() and strrchr() in the code |
722 |
rather than index() and rindex(). Define strchr/strrchr in terms |
723 |
of index/rindex if the former aren't supported. |
724 |
|
725 |
* default.c (CHECKOUT,v): Replace the fancy, complicated |
726 |
patsubst/filter expression with a simple $(if ...) expression. |
727 |
|
728 |
* main.c (print_usage): Add the bug reporting mailing address to |
729 |
the --help output, as per the GNU coding standards. |
730 |
Reported by Paul Eggert <eggert@twinsun.com>. |
731 |
|
732 |
* README.customs: Installed information on running Customs-ized |
733 |
GNU make and setuid root, collected by Ted Stern <stern@tera.com>. |
734 |
|
735 |
* read.c (read_all_makefiles): PR/1394: Mark the end of the next |
736 |
token in the MAKEFILES value string _before_ we dup it. |
737 |
|
738 |
1999-10-13 Paul D. Smith <psmith@gnu.org> |
739 |
|
740 |
* configure.in (make_cv_sys_gnu_glob): We used to add the -Iglob |
741 |
flag to CPPFLAGS, but that loses if the user specifies his own |
742 |
CPPFLAGS; this one gets added _after_ his and if he happens to |
743 |
have an old or broken glob.h--boom. Instead, put it in GLOBINC |
744 |
and SUBST it. |
745 |
|
746 |
* Makefile.am (INCLUDES): Add @GLOBINC@ to the INCLUDES macro; |
747 |
these things get on the compile line well before the user's |
748 |
CPPFLAGS. |
749 |
|
750 |
1999-10-12 Paul D. Smith <psmith@gnu.org> |
751 |
|
752 |
* remake.c (notice_finished_file): If we get here and -n is set, |
753 |
see if all the command lines are marked recursive. If so, then we |
754 |
ran every command there is, so check the mtime on this file just |
755 |
like we would normally. If not, we assume the command we didn't |
756 |
run would updates the target and set mtime of the target to "very new". |
757 |
|
758 |
* job.c (start_job_command): Update lines_flags in the file's cmds |
759 |
structure with any per-line tokens we found (`@', `-', `+'). |
760 |
|
761 |
1999-10-08 Paul D. Smith <psmith@gnu.org> |
762 |
|
763 |
* variable.c (initialize_file_variables): Always recurse to |
764 |
initialize the parent's file variables: the parent might not have |
765 |
any rules to run so it might not have been initialized before |
766 |
this--we need this to set up the chain properly for |
767 |
target-specific variables. |
768 |
|
769 |
1999-09-29 Paul Eggert <eggert@twinsun.com> |
770 |
|
771 |
* main.c (quote_as_word): Always quote for decode_env_switches |
772 |
instead of for the shell, so that arguments with strange |
773 |
characters are are passed to submakes correctly. Remove |
774 |
double_dollars arg; we always double dollars now. All callers |
775 |
changed. |
776 |
(decode_env_switches): Don't run off the end of an environment |
777 |
variable whose contents ends in a unescaped backslash. |
778 |
|
779 |
1999-09-23 Paul D. Smith <psmith@gnu.org> |
780 |
|
781 |
* commands.c, function.c, job.c, read.c: Cast arguments to |
782 |
ctype.h functions/macros to _unsigned_ char for portability. |
783 |
|
784 |
* remake.c, function.c: Compiler warning fixes: the second |
785 |
argument to find_next_token() should be an _unsigned_ int*. |
786 |
Reported by Han-Wen Nienhuys <hanwen@cs.uu.nl>. |
787 |
|
788 |
1999-09-23 Paul D. Smith <psmith@gnu.org> |
789 |
|
790 |
* Version 3.78.1 released. |
791 |
|
792 |
* make.texinfo: Update version/date stamp. |
793 |
|
794 |
* main.c (main): Argh. For some reason we were closing _all_ the |
795 |
jobserver pipes before we re-exec'd due to changed makefiles. |
796 |
This means that any re-exec got a "jobserver unavailable" error :-/. |
797 |
I can't believe we didn't notice this before. |
798 |
|
799 |
1999-09-22 Paul D. Smith <psmith@gnu.org> |
800 |
|
801 |
* Version 3.78 released. |
802 |
|
803 |
* main.c (main): Only fail on multiple --jobserver-fds options if |
804 |
they aren't all the same. Some makefiles use things like |
805 |
$(MAKE) $(MFLAGS) which will cause multiple, identical copies of |
806 |
--jobserver-fds to show up. |
807 |
|
808 |
1999-09-16 Paul D. Smith <psmith@gnu.org> |
809 |
|
810 |
* main.c (define_makeflags): Zero out FLAGSTRING to avoid |
811 |
uninitialized memory reads when checking *p != '-' in the loop. |
812 |
|
813 |
1999-09-15 Paul D. Smith <psmith@gnu.org> |
814 |
|
815 |
* Version 3.77.97 released. |
816 |
|
817 |
* configure.in (MAKE_HOST): AC_SUBST this so it will go into the |
818 |
makefile. |
819 |
* Makefile.am (check-local): Print a success banner if the check |
820 |
succeeds. |
821 |
(check-regression): A bit of fine-tuning. |
822 |
|
823 |
1999-09-15 Eli Zaretskii <eliz@is.elta.co.il> |
824 |
|
825 |
* README.DOS.template: Document requirements for the test suite. |
826 |
* Makefile.DOS.template: Updates to allow the test suite to run |
827 |
from "make check". |
828 |
|
829 |
* main.c (main): Handle it if argv[0] isn't an absolute path. |
830 |
|
831 |
1999-09-13 Paul D. Smith <psmith@gnu.org> |
832 |
|
833 |
* Version 3.77.96 released. |
834 |
|
835 |
* Makefile.am (loadavg): Use CPPFLAGS, etc. to make sure we get |
836 |
all the right #defines to compile. |
837 |
(check-regression): Look for the regression test suite in the make |
838 |
package itself. If we're building remotely, use symlinks to make |
839 |
a local copy. |
840 |
(dist-hook): Put the test suite into the tar file. |
841 |
|
842 |
* configure.in: Look for perl for the test suite. |
843 |
|
844 |
1999-09-10 Paul Eggert <eggert@twinsun.com> |
845 |
|
846 |
* acinclude.m4 (AC_SYS_LARGEFILE_FLAGS): If on HP-UX 10.20 or |
847 |
later, and using GCC, define __STDC_EXT__; this works around a |
848 |
bug in GCC 2.95.1. |
849 |
|
850 |
1999-09-08 Paul D. Smith <psmith@gnu.org> |
851 |
|
852 |
* main.c (print_version): Ugh. GLIBC's configure tries to check |
853 |
make version strings and is too aggressive with their matching |
854 |
expressions. I've struck a deal with them to leave the version |
855 |
output as-is for 3.78, and they'll change their configure checks |
856 |
so that I can change this back in the future. |
857 |
|
858 |
1999-09-07 Eli Zaretskii <eliz@is.elta.co.il> |
859 |
|
860 |
* job.c (construct_command_argv_internal) [__MSDOS__]: Add "echo" |
861 |
and "unset" to the list of builtin shell commands. |
862 |
|
863 |
* configh.DOS.template (MAKE_HOST): Define to "i386-pc-msdosdjgpp" |
864 |
which is the canonical name of the DJGPP host. |
865 |
|
866 |
1999-09-05 Paul D. Smith <psmith@gnu.org> |
867 |
|
868 |
* Version 3.77.95 released. |
869 |
|
870 |
* make.texinfo (Make Errors): Document some new jobserver error |
871 |
messages. |
872 |
|
873 |
1999-09-04 Eli Zaretskii <eliz@is.elta.co.il> |
874 |
|
875 |
* make.texinfo (Make Errors): Document the hint about 8 spaces |
876 |
instead of a TAB. |
877 |
(Call Function, Quick Reference): Use @code{$(1)}, not @var. |
878 |
|
879 |
* main.c (main) [__MSDOS__]: Say "on this platform" instead of "on |
880 |
MS-DOS", since the MSDOS version could run on Windows. |
881 |
|
882 |
1999-09-03 Paul D. Smith <psmith@gnu.org> |
883 |
|
884 |
* remake.c (notice_finished_file): Always set mtime_before_update |
885 |
if it's not been set, not just if we ran some rules. Otherwise we |
886 |
may have a situation where a target's prerequisite was rebuilt but |
887 |
not changed, so this target's rules weren't run, then |
888 |
update_goal_chain() sees mtime_before_update != last_mtime and |
889 |
thinks that the top-level target changed when it really didn't. |
890 |
This can cause an infinite loop when remaking makefiles. |
891 |
(update_goal_chain): If we get back to the top and we don't know |
892 |
what the goal's last_mtime was, find it now. We need to know so |
893 |
we can compare it to mtime_before_update later (this is only |
894 |
crucial when remaking makefiles--should we only do it then?) |
895 |
|
896 |
1999-09-02 Paul D. Smith <psmith@gnu.org> |
897 |
|
898 |
* read.c (read_makefile): If "override" appears as the first |
899 |
prerequisite, look further to ensure this is really a |
900 |
target-specific variable definition, and not just some |
901 |
prerequisite named "override". |
902 |
|
903 |
1999-09-01 Paul D. Smith <psmith@gnu.org> |
904 |
|
905 |
* function.c (IS_PATHSEP) [WINDOWS32]: Allow backslash separators |
906 |
for W32 platforms. |
907 |
* read.c (record_files) [WINDOWS32]: Allow backslash separators |
908 |
for W32 platforms. |
909 |
* implicit.c (pattern_search) [WINDOWS32]: Allow backslash |
910 |
separators for W32 platforms. |
911 |
|
912 |
* configure.in (MAKE_HOST): Define it to be the canonical build |
913 |
host info, now that we need AC_CANONICAL_HOST anyway (for large |
914 |
file support). |
915 |
* version.c (make_host): Define a variable to MAKE_HOST so we're |
916 |
sure to get it from the local config.h. |
917 |
* main.c (print_version): Use it in the version information. |
918 |
* config.ami.template: Add MAKE_HOST. |
919 |
* configh.dos.template: Ditto. |
920 |
* config.h.W32.template: Ditto. |
921 |
* config.h-vms.template: Ditto. |
922 |
|
923 |
* main.c (main): Close the jobserver file descriptors if we need |
924 |
to re-exec ourselves. |
925 |
Also print more reasonable error if users force -jN for submakes. |
926 |
This may be common for a while until people use the jobserver |
927 |
feature. If it happens, we ignore the existing jobserver stuff |
928 |
and use whatever they specified on the commandline. |
929 |
(define_makeflags): Fixed a long-standing bug: if a long name |
930 |
only option comes immediately after a single letter option with no |
931 |
argument, then the option string is constructed incorrectly. For |
932 |
example, with -w and --jobserver-fds you get "-w-jobserver-fds..." |
933 |
instead of "-w --jobserver-fds..."; add in an extra " -". |
934 |
|
935 |
* make.texinfo (Phony Targets): Add another example of using |
936 |
.PHONY with subdirectories/recursive make. |
937 |
|
938 |
1999-08-30 Paul D. Smith <psmith@gnu.org> |
939 |
|
940 |
* README.W32.template: Renamed from README.W32 so it's |
941 |
autogenerated during the dist. A few minor modifications. |
942 |
|
943 |
* configure.in: Check for kstat_open before AC_FUNC_GETLOADAVG |
944 |
since the latter needs to know whether the former exists to give |
945 |
an accurate result. |
946 |
|
947 |
1999-08-26 Rob Tulloh <rob_tulloh@dev.tivoli.com> |
948 |
|
949 |
* NMakefile [WINDOWS32]: Now more robust. If you change a file |
950 |
under w32/subproc, the make.exe will be relinked. Also added some |
951 |
tests to make sure erase commands won't fail when executed in a |
952 |
pristine build environment. |
953 |
|
954 |
* w32/subproc/sub_proc.c [WINDOWS32]: Added support for |
955 |
HAVE_CYGWIN_SHELL. If you are using the Cygwin B20.1 release, it |
956 |
is now possible to have have native support for this shell without |
957 |
having to rely on klutzy BATCH_MODE_ONLY_SHELL. |
958 |
|
959 |
* config.h.W32 [WINDOWS32]: Added HAVE_CYGWIN_SHELL macro which |
960 |
users can define if they want to build make to use this shell. |
961 |
|
962 |
* README.W32 [WINDOWS32]: Added informaton about |
963 |
HAVE_CYGWIN_SHELL. Cleaned up text a bit to make it more current. |
964 |
|
965 |
1999-08-26 Paul Eggert <eggert@twinsun.com> |
966 |
|
967 |
Support large files in AIX, HP-UX, and IRIX. |
968 |
|
969 |
* acinclude.m4 (AC_LFS): Remove. Superseded by AC_SYS_LARGEFILE. |
970 |
(AC_SYS_LARGEFILE_FLAGS, AC_SYS_LARGEFILE_SPACE_APPEND, |
971 |
AC_SYS_LARGEFILE_MACRO_VALUE, AC_SYS_LARGEFILE): New macros. |
972 |
(jm_AC_TYPE_UINTMAX_T): Check for busted compilers that can't |
973 |
shift or divide unsigned long long. |
974 |
(AM_PROG_CC_STDC): New macro; a temporary workaround of a bug in |
975 |
automake 1.4. |
976 |
|
977 |
* configure.in (AC_CANONICAL_HOST): Add; required by new |
978 |
AC_SYS_LARGEFILE. |
979 |
(AC_SYS_LARGEFILE): Renamed from AC_LFS. |
980 |
(AM_PROG_CC_STDC): Add. |
981 |
|
982 |
* config.guess, config.sub: New files, needed for AC_CANONICAL_HOST. |
983 |
|
984 |
1999-08-25 Paul Eggert <eggert@twinsun.com> |
985 |
|
986 |
* make.h (CHAR_MAX): New macro. |
987 |
* main.c (struct command_switch): c is now int, |
988 |
so that it can store values greater than CHAR_MAX. |
989 |
(switches): Replace small numbers N with CHAR_MAX+N-1, |
990 |
to avoid problems with non-ASCII character sets. |
991 |
(short_option): New macro. |
992 |
(init_switches, print_usage, define_makeflags): Use it instead of |
993 |
isalnum. |
994 |
|
995 |
1999-08-25 Paul D. Smith <psmith@gnu.org> |
996 |
|
997 |
* Version 3.77.94 released. |
998 |
|
999 |
* main.c (main) [__MSDOS__]: If the user uses -j, warn that it's |
1000 |
not supported and reset it. |
1001 |
|
1002 |
* make.h (ISDIGIT): Obtained this from the textutils distribution. |
1003 |
* main.c (decode_switches): Use it. |
1004 |
* function.c (is_numeric): Use it. |
1005 |
|
1006 |
* main.c (struct command_switch): Store the switch char in an |
1007 |
unsigned char to shut up GCC about using it with ctype.h macros. |
1008 |
Besides, it _is_ always unsigned. |
1009 |
|
1010 |
1999-08-24 Paul D. Smith <psmith@gnu.org> |
1011 |
|
1012 |
* make.texinfo: Change "dependency" to "prerequisite" and |
1013 |
"dependencies" to "prerequisites". Various other cleanups related |
1014 |
to the terminology change. |
1015 |
* file.c: Change debugging and error messages to use |
1016 |
"prerequisite" instead of "dependency". |
1017 |
* implicit.c: Ditto. |
1018 |
* remake.c: Ditto. |
1019 |
* NEWS: Document it. |
1020 |
|
1021 |
1999-08-23 Paul D. Smith <psmith@gnu.org> |
1022 |
|
1023 |
* remake.c (update_file): Move the considered check into the |
1024 |
double-colon rule loop, so we consider double-colon rules |
1025 |
individually (otherwise after the first is pruned, the rest won't |
1026 |
get run). |
1027 |
|
1028 |
* README.template: Minor changes. |
1029 |
|
1030 |
Remove the debugging features of the jobserver, so it no longer |
1031 |
writes distinct tokens to the pipe. Thus, we don't need to store |
1032 |
the token we get. A side effect of this is to remove a potential |
1033 |
"unavailable token" situation: make-1 invokes make-2 with its |
1034 |
special token and make-3 with a normal token; make-2 completes. |
1035 |
Now we're waiting for make-3 but using 2 tokens; our special token |
1036 |
is idle. In the new version we don't have special tokens per se, |
1037 |
we merely decide if we already have a child or not. If we don't, |
1038 |
we don't need a token. If we do, we have to get one to run the |
1039 |
next child. Similar for putting tokens back: if we're cleaning up |
1040 |
the last child, we don't put a token back. Otherwise, we do. |
1041 |
|
1042 |
* main.c: Add a new, internal flag --jobserver-fds instead of |
1043 |
overloading the meaning of -j. Remove job_slots_str and add the |
1044 |
stringlist jobserver_fds. |
1045 |
(struct command_switch): We don't need the int_string type. |
1046 |
(switches[]): Add a new option for --jobserver-fds and remove |
1047 |
conditions around -j. Make the description for the former 0 so it |
1048 |
doesn't print during "make --help". |
1049 |
(main): Rework jobserver parsing. If we got --jobserver-fds |
1050 |
make sure it's valid. We only get one and job_slots must be 0. |
1051 |
If we're the toplevel make (-jN without --jobserver-fds) create |
1052 |
the pipe and write generic tokens. |
1053 |
Create the stringlist struct for the submakes. |
1054 |
Clean up the stringlist where necessary. |
1055 |
(init_switches): Remove int_string handling. |
1056 |
(print_usage): Don't print internal flags (description ptr is 0). |
1057 |
(decode_switches): Remove int_string handling. |
1058 |
(define_makeflags): Remove int_string handling. |
1059 |
|
1060 |
* job.c: Remove my_job_token flag and all references to the |
1061 |
child->job_token field. |
1062 |
(free_job_token): Remove this and merge it into free_child(). |
1063 |
(reap_children): Rework the "reaped a child" logic slightly. |
1064 |
Don't call defunct free_job_token anymore. Always call |
1065 |
free_child, even if we're dying. |
1066 |
(free_child): If we're not freeing the only child, put a token |
1067 |
back in the pipe. Then, if we're dying, don't bother to free. |
1068 |
(new_job): If we are using the jobserver, loop checking to see if |
1069 |
a) there are no children or b) we get a token from the pipe. |
1070 |
|
1071 |
* job.h (struct child): Remove the job_token field. |
1072 |
|
1073 |
1999-08-20 Paul D. Smith <psmith@gnu.org> |
1074 |
|
1075 |
* variable.c (try_variable_definition): Allocate for variable |
1076 |
expansion in f_append with a simple variable: if we're looking at |
1077 |
target-specific variables we don't want to trash the buffer. |
1078 |
Noticed by Reiner Beninga <Reiner.Beninga@mchp.siemens.de>. |
1079 |
|
1080 |
1999-08-16 Eli Zaretskii <eliz@is.elta.co.il> |
1081 |
|
1082 |
* main.c (main) [__MSDOS__]: Mirror any backslashes in argv[0], to |
1083 |
avoid problems in shell commands that use backslashes as escape |
1084 |
characters. |
1085 |
|
1086 |
1999-08-16 Paul D. Smith <psmith@gnu.org> |
1087 |
|
1088 |
* Version 3.77.93 released. |
1089 |
|
1090 |
1999-08-13 Paul D. Smith <psmith@gnu.org |
1091 |
|
1092 |
* function.c (func_if): New function $(if ...) based on the |
1093 |
original by Han-Wen but reworked quite a bit. |
1094 |
(function_table): Add it. |
1095 |
* NEWS: Introduce it. |
1096 |
* make.texinfo (If Function): Document it. |
1097 |
|
1098 |
* job.c (free_job_token): Check for EINTR when writing tokens to |
1099 |
the jobserver pipe. |
1100 |
|
1101 |
1999-08-12 Paul D. Smith <psmith@gnu.org> |
1102 |
|
1103 |
Another jobserver algorithm change. We conveniently forgot that |
1104 |
the blocking bit is shared by all users of the pipe, it's not a |
1105 |
per-process setting. Since we have many make processes all |
1106 |
sharing the pipe we can't use the blocking bit as a signal handler |
1107 |
flag. Instead, we'll dup the pipe's read FD and have the SIGCHLD |
1108 |
handler close the dup'd FD. This will cause the read() to fail |
1109 |
with EBADF the next time we invoke it, so we know we need to reap |
1110 |
children. We then re-dup and reap. |
1111 |
|
1112 |
* main.c (main): Define the job_rfd variable to hold the dup'd FD. |
1113 |
Actually dup the read side of the pipe. Don't bother setting the |
1114 |
blocking bit on the file descriptor. |
1115 |
* make.h: Declare the job_rfd variable. |
1116 |
* job.c (child_handler): If the dup'd jobserver pipe is open, |
1117 |
close it and assign -1 to job_rfd to notify the main program that |
1118 |
we got a SIGCHLD. |
1119 |
(start_job_command): Close the dup'd FD before exec'ing children. |
1120 |
Since we open and close this thing so often it doesn't seem |
1121 |
worth it to use the close-on-exec bit. |
1122 |
(new_job): Remove code for testing/setting the blocking bit. |
1123 |
Instead of EAGAIN, test for EBADF. If the dup'd FD has been |
1124 |
closed, re-dup it before we reap children. |
1125 |
|
1126 |
* function.c (func_shell): Be a little more accurate about the |
1127 |
length of the error string to allocate. |
1128 |
|
1129 |
* expand.c (variable_expand_for_file): If there's no filenm info |
1130 |
(say, from a builtin command) then reset reading_file to 0. |
1131 |
|
1132 |
1999-08-09 Paul D. Smith <psmith@gnu.org> |
1133 |
|
1134 |
* maintMakefile: Use g in sed (s///g) to replace >1 variable per |
1135 |
line. |
1136 |
|
1137 |
* Makefile.DOS.template [__MSDOS__]: Fix mostlyclean-aminfo to |
1138 |
remove the right files. |
1139 |
|
1140 |
1999-08-01 Eli Zaretskii <eliz@is.elta.co.il> |
1141 |
|
1142 |
* function.c (msdos_openpipe) [__MSDOS__]: *Really* return a FILE |
1143 |
ptr. |
1144 |
|
1145 |
1999-08-01 Paul D. Smith <psmith@gnu.org> |
1146 |
|
1147 |
New jobserver algorithm to avoid a possible hole where we could |
1148 |
miss SIGCHLDs and get into a deadlock. The original algorithm was |
1149 |
suggested by Roland McGrath with a nice refinement by Paul Eggert. |
1150 |
Many thanks as well to Tim Magill and Howard Chu, who also |
1151 |
provided many viable ideas and critiques. We all had a fun week |
1152 |
dreaming up interesting ways to use and abuse UNIX syscalls :). |
1153 |
|
1154 |
Previously we could miss a SIGCHLD if it happened after we reaped |
1155 |
the children but before we re-entered the blocking read. If this |
1156 |
happened to all makes and/or all children, make would never wake |
1157 |
up. |
1158 |
|
1159 |
We avoid this by having the SIGCHLD handler reset the blocking bit |
1160 |
on the jobserver pipe read FD (normally read does block in this |
1161 |
algorithm). Now if the handler is called between the time we reap |
1162 |
and the time we read(), and there are no tokens available, the |
1163 |
read will merely return with EAGAIN instead of blocking. |
1164 |
|
1165 |
* main.c (main): Set the blocking bit explicitly here. |
1166 |
* job.c (child_handler): If we have a jobserver pipe, set the |
1167 |
non-blocking bit for it. |
1168 |
(start_waiting_job): Move the token stuff back to new_job; if we |
1169 |
do it here then we're not controlling the number of remote jobs |
1170 |
started! |
1171 |
(new_job): Move the check for job slots to _after_ we've created a |
1172 |
child structure. If the read returns without getting a token, set |
1173 |
the blocking bit then try to reap_children. |
1174 |
|
1175 |
* make.h (EINTR_SET): Define to test errno if EINTR is available, |
1176 |
or 0 otherwise. Just some code cleanup. |
1177 |
* arscan.c (ar_member_touch): Use it. |
1178 |
* function.c (func_shell): Use it. |
1179 |
* job.c (reap_children): Use it. |
1180 |
* remake.c (touch_file): Use it. |
1181 |
|
1182 |
1999-07-28 Paul D. Smith <psmith@gnu.org> |
1183 |
|
1184 |
* make.h: Define _() and N_() macros as passthrough to initiate |
1185 |
NLS support. |
1186 |
* <all>: Add _()/N_() around translatable strings. |
1187 |
|
1188 |
1999-07-27 Paul D. Smith <psmith@gnu.org> |
1189 |
|
1190 |
* read.c: Make sure make.h comes before other headers. |
1191 |
|
1192 |
1999-07-26 Paul D. Smith <psmith@gnu.org> |
1193 |
|
1194 |
* make.texinfo (Quick Reference): Update with the new features. |
1195 |
|
1196 |
1999-07-25 Eli Zaretskii <eliz@is.elta.co.il> |
1197 |
|
1198 |
* remake.c [__MSDOS__]: Don't include variables.h, it's already |
1199 |
included. |
1200 |
|
1201 |
* function.c (msdos_openpipe) [__MSDOS__]: Return FILE ptr. |
1202 |
(func_shell) [__MSDOS__]: Fix the argument list. |
1203 |
|
1204 |
* Makefile.DOS.template: Update from Makefile.in. |
1205 |
|
1206 |
* README.DOS.template: Configure command fixed. |
1207 |
|
1208 |
* configh.dos.template: Update to provide definitions for |
1209 |
uintmax_t, fd_set_size_t, and HAVE_SELECT. |
1210 |
|
1211 |
1999-07-24 Paul D. Smith <psmith@gnu.org> |
1212 |
|
1213 |
* Version 3.77.91 released. |
1214 |
|
1215 |
* configure.in: Changes to the boostrapping code: if build.sh.in |
1216 |
doesn't exist configure spits an error and generates an empty |
1217 |
build.sh file which causes make to be confused. |
1218 |
* maintMakefile: Don't build README early. |
1219 |
|
1220 |
1999-07-23 Paul D. Smith <psmith@gnu.org> |
1221 |
|
1222 |
* job.c (my_job_token): This variable controls whether we've |
1223 |
handed our personal token to a subprocess or not. Note we could |
1224 |
probably infer this from the value of job_slots_used, but it's |
1225 |
clearer to just keep it separately. Job_slots_used isn't really |
1226 |
relevant when running the job server. |
1227 |
(free_job_token): New function: free a job token. If we don't |
1228 |
have one, no-op. If we have the personal token, reclaim it. If |
1229 |
we have another token, write it back to the pipe. |
1230 |
(reap_children): Call free_job_token. |
1231 |
(free_child): Call free_job_token. |
1232 |
(start_job_command): Remove duplicate test for '+' in the command. |
1233 |
If we don't appear to be running a recursive make, close the |
1234 |
jobserver filedescriptors. |
1235 |
(start_waiting_job): If our personal token is available, use that |
1236 |
instead of going to the server pipe. |
1237 |
(*): Add the token value to many debugging statements, and print |
1238 |
the child target name in addition to the ptr hex value. |
1239 |
Change the default "no token" value from '\0' to '-' so it looks |
1240 |
better in the output. |
1241 |
|
1242 |
* main.c (main): Install the child_handler with sigaction() |
1243 |
instead of signal() if we have it. On SysV systems, signal() uses |
1244 |
SysV semantics which are a pain. But sigaction() always does what |
1245 |
we want. |
1246 |
(main): If we got job server FDs from the environment, test them |
1247 |
to see if they're open. If not, the parent make closed them |
1248 |
because it didn't think we were a submake. Print a warning and |
1249 |
suggestion to use "+" on the submake invocation, and hard-set to |
1250 |
-j1 for this instance of make. |
1251 |
(main): Change the algorithm for assigning slots to be more |
1252 |
robust. Previously make checked to see if it thought a subprocess |
1253 |
was a submake and if so, didn't give it a token. Since make's |
1254 |
don't consume tokens we could spawn many of makes fighting for a |
1255 |
small number of tokens. Plus this is unreliable because submakes |
1256 |
might not be recognized by the parent (see above) then all the |
1257 |
tokens could be used up by unrecognized makes, and no one could |
1258 |
run. Now every make consumes a token from its parent. However, |
1259 |
the make can also use this token to spawn a child. If the make |
1260 |
wants more than one, it goes to the jobserver pipe. Thus there |
1261 |
will never be more than N makes running for -jN, and N*2 processes |
1262 |
(N makes and their N children). Every make can always run at |
1263 |
least one job, and we'll never deadlock. (Note the closing of the |
1264 |
pipe for non-submakes also solves this, but this is still a better |
1265 |
algorithm.) So! Only put N-1 tokens into the pipe, since the |
1266 |
topmost make keeps one for itself. |
1267 |
|
1268 |
* configure.in: Find sigaction. Disable job server support unless |
1269 |
the system provides it, in addition to either waitpid() or |
1270 |
wait3(). |
1271 |
|
1272 |
1999-07-22 Rob Tulloh <rob_tulloh@dev.tivoli.com> |
1273 |
|
1274 |
* arscan.c (ar_member_touch) [WINDOWS32]: The ar_date field is a |
1275 |
string on Windows, not a timestamp. |
1276 |
|
1277 |
1999-07-21 Paul D. Smith <psmith@gnu.org> |
1278 |
|
1279 |
* Version 3.77.90 released. |
1280 |
|
1281 |
* Makefile.am (AUTOMAKE_OPTIONS): Require automake 1.4. |
1282 |
|
1283 |
* function.c: Rearrange so we don't need to predeclare the |
1284 |
function_table array; K&R C compilers don't like that. |
1285 |
|
1286 |
* acinclude.m4 (AC_FUNC_SELECT): Ouch; this requires an ANSI C |
1287 |
compiler! Change to work with K&R compilers as well. |
1288 |
|
1289 |
* configure.in (AC_OUTPUT): Put build.sh back. I don't know how I |
1290 |
thought it would work this way :-/. We'll have to think of |
1291 |
something else. |
1292 |
* Makefile.am: Remove rule to create build.sh. |
1293 |
|
1294 |
* default.c (default_suffix_rules): Rearrange the default command |
1295 |
lines to conform to POSIX rules (put the filename argument $< |
1296 |
_after_ the OUTPUT_OPTION, not before it). |
1297 |
|
1298 |
* various: Changed !strncmp() calls to strneq() macros. |
1299 |
|
1300 |
* misc.c (sindex): Make slightly more efficient. |
1301 |
|
1302 |
* dir.c (file_impossible): Change savestring(X,strlen(X)) to xstrdup(). |
1303 |
* implicit.c (pattern_search): Ditto. |
1304 |
* main.c (enter_command_line_file): Ditto. |
1305 |
(main): Ditto. |
1306 |
* misc.c (copy_dep_chain): Ditto. |
1307 |
* read.c (read_makefile): Ditto. |
1308 |
(parse_file_seq): Ditto. |
1309 |
(tilde_expand): Ditto. |
1310 |
(multi_glob): Ditto. |
1311 |
* rule.c (install_pattern_rule): Ditto. |
1312 |
* variable.c (define_variable_in_set): Ditto. |
1313 |
(define_automatic_variables): Ditto. |
1314 |
* vpath.c (construct_vpath_list): Ditto. |
1315 |
|
1316 |
* misc.c (xrealloc): Some reallocs are non-standard: work around |
1317 |
them in xrealloc by calling malloc if PTR is NULL. |
1318 |
* main.c (main): Call xrealloc() directly instead of testing for |
1319 |
NULL. |
1320 |
|
1321 |
* function.c (func_sort): Don't try to free NULL; some older, |
1322 |
non-standard versions of free() don't like it. |
1323 |
|
1324 |
* configure.in (--enable-dmalloc): Install some support for using |
1325 |
dmalloc (http://www.dmalloc.com/) with make. Use --enable-dmalloc |
1326 |
with configure to enable it. |
1327 |
|
1328 |
* function.c (function_table_entry): Whoops! The function.c |
1329 |
rewrite breaks backward compatibility: all text to a function is |
1330 |
broken into arguments, and extras are ignored. So $(sort a,b,c) |
1331 |
returns "a"! Etc. Ouch. Fix it by making a positive value in |
1332 |
the REQUIRED_ARGS field mean exactly that many arguments to the |
1333 |
function; any "extras" are considered part of the last argument as |
1334 |
before. A negative value means at least that many, but may be |
1335 |
more: in this case all text is broken on commas. |
1336 |
(handle_function): Stop when we've seen REQUIRED_ARGS args, if >0. |
1337 |
(expand_builtin_function): Compare number of args to the absolute |
1338 |
value of REQUIRED_ARGS. |
1339 |
|
1340 |
1999-07-20 Paul D. Smith <psmith@gnu.org> |
1341 |
|
1342 |
* job.c (start_job_command): Ensure that the state of the target |
1343 |
is cs_running. It might not be if we skipped all the lines due to |
1344 |
-n (for example). |
1345 |
|
1346 |
* commands.c (execute_file_commands): If we discover that the |
1347 |
command script is empty and succeed early, set cs_running so the |
1348 |
modtime of the target is still rechecked. |
1349 |
|
1350 |
* rule.c (freerule): Free the dependency list for the rule. |
1351 |
|
1352 |
* implicit.c (pattern_search): When turning an intermediate file |
1353 |
into a real target, keep the also_make list. |
1354 |
Free the dep->name if we didn't use it during enter_file(). |
1355 |
|
1356 |
1999-07-16 Paul D. Smith <psmith@gnu.org> |
1357 |
|
1358 |
* read.c (read_makefile): Don't allocate the commands buffer until |
1359 |
we're sure we found a makefile and won't return early (mem leak). |
1360 |
|
1361 |
* job.c (start_job_command): Broken #ifdef test: look for F_SETFD, |
1362 |
not FD_SETFD. Close-on-exec isn't getting set on the bad_stdin |
1363 |
file descriptor and it's leaking :-/. |
1364 |
* getloadavg.c (getloadavg): Ditto. |
1365 |
|
1366 |
1999-07-15 Paul D. Smith <psmith@gnu.org> |
1367 |
|
1368 |
* read.c (read_makefile): Fix some potential memory stomps parsing |
1369 |
`define' directives where no variable name is given. |
1370 |
|
1371 |
* function.c (func_call): Rename from func_apply. Various code |
1372 |
cleanup and tightening. |
1373 |
(function_table): Add "call" as a valid builtin function. |
1374 |
|
1375 |
* make.texinfo (Call Function): Document it. |
1376 |
|
1377 |
* NEWS: Announce it. |
1378 |
|
1379 |
1999-07-09 Eli Zaretskii <eliz@is.elta.co.il> |
1380 |
|
1381 |
* variable.c (try_variable_definition) [__MSDOS__, WINDOWS32]: |
1382 |
Treat "override SHELL=" the same as just "SHELL=". |
1383 |
|
1384 |
1999-07-09 Paul D. Smith <psmith@gnu.org> |
1385 |
|
1386 |
* job.c (start_waiting_job): Don't get a second job token if we |
1387 |
already have one; if we're waiting on the load to go down |
1388 |
start_waiting_job() might get called twice on the same file. |
1389 |
|
1390 |
* filedef.h (struct file): Add new field, mtime_before_update. |
1391 |
When notice_finished_file runs it assigns the cached last_mtime to |
1392 |
this field. |
1393 |
* remake.c (update_goal_chain): Notice that a file wasn't updated |
1394 |
by asking if it changed (g->changed) and comparing the current |
1395 |
cached time (last_mtime) with the previous one, stored in |
1396 |
mtime_before_update. The previous check ("did last_mtime changed |
1397 |
during the run of update_file?") fails for parallel builds because |
1398 |
last_mtime is set during reap_children, before update_file is run. |
1399 |
This causes update_goal_chain to always return -1 (nothing |
1400 |
rebuilt) when running parallel (-jN). This is OK during "normal" |
1401 |
builds since our caller (main) treats these cases identically in |
1402 |
that case, but if when rebuilding makefiles the difference is very |
1403 |
important, as it controls whether we re-exec or not. |
1404 |
* file.c (file_hash_enter): Copy the mtime_before_update field. |
1405 |
(snap_deps): Initialize mtime_before_update to -1. |
1406 |
* main.c (main): Initialize mtime_before_update on old (-o) and |
1407 |
new (-W) files. |
1408 |
|
1409 |
1999-07-08 Paul D. Smith <psmith@gnu.org> |
1410 |
|
1411 |
* main.c (switches): Define a new switch -R (or |
1412 |
--no-builtin-variables). This option disables the defining of all |
1413 |
the GNU make builtin variables. |
1414 |
(main): If -R was given, force -r as well. |
1415 |
* default.c (define_default_variables): Test the new flag. |
1416 |
* make.h: Declare global flag. |
1417 |
* make.texinfo (Options Summary): Document the new option. |
1418 |
(Implicit Variables): Ditto. |
1419 |
|
1420 |
1999-07-06 Paul D. Smith <psmith@gnu.org> |
1421 |
|
1422 |
* make.texinfo (Options Summary): Correct examples in |
1423 |
--print-data-base option summary (problem reported by David Morse |
1424 |
<morse@nichimen.com>). |
1425 |
|
1426 |
* arscan.c: Add support for archives in Windows (VC++). Frank |
1427 |
Libbrecht <frankl@abzx.belgium.hp.com> provided info on how to do |
1428 |
this. |
1429 |
* NMakefile.template (CFLAGS_any): Remove NO_ARCHIVES from the |
1430 |
compile line. |
1431 |
* build_w32.bat: Ditto. |
1432 |
|
1433 |
* remake.c (no_rule_error): Fix -include/sinclude so it doesn't |
1434 |
give errors if you try to -include the same file twice. |
1435 |
(updating_makefiles): New variable: we need to know this info in |
1436 |
no_rule_error() so we know whether to print an error or not. |
1437 |
(update_file_1): Unconditionally call no_rule_error(), don't try |
1438 |
to play games with the dontcare flag. |
1439 |
|
1440 |
1999-06-14 Paul D. Smith <psmith@gnu.org> |
1441 |
|
1442 |
* make.texinfo (Remaking Makefiles): Add a description of how to |
1443 |
prevent implicit rule searches for makefiles. |
1444 |
|
1445 |
* make.1: Remove statement that make continues processing when -v |
1446 |
is given. |
1447 |
|
1448 |
1999-06-14 Paul D. Smith <psmith@gnu.org> |
1449 |
|
1450 |
* read.c (read_makefile): Cast -1 arguments to |
1451 |
variable_expand_string() to long. Alexandre Sauve |
1452 |
<Alexandre.SAUVE@ifp.fr> reports that without casts, this breaks |
1453 |
on a NEC SUPER-UX SX-4 system (and it's wrong without a cast |
1454 |
anyway). Of course, (a) I'd really love to start using function |
1455 |
prototypes, and (b) there's a whole slew of issues related to int |
1456 |
vs. long and signed vs. unsigned in the length handling of |
1457 |
variable buffers, etc. Gross. Needs a complete mucking-out. |
1458 |
* expand.c (variable_expand): Ditto. |
1459 |
|
1460 |
* acinclude.m4 (AC_FUNC_SELECT): Slight enhancement for AIX 3.2 by |
1461 |
Lars Hecking <lhecking@nmrc.ucc.ie>. |
1462 |
|
1463 |
* read.c (get_next_mword): Allow colons to be escaped in target |
1464 |
names: fix for regression failure. |
1465 |
|
1466 |
1999-04-26 Paul D. Smith <psmith@gnu.org> |
1467 |
|
1468 |
* main.c (main): Reset read_makefiles to empty after processing so |
1469 |
we get the right error message. |
1470 |
|
1471 |
1999-04-25 Paul D. Smith <psmith@gnu.org> |
1472 |
|
1473 |
* make.texinfo: Updates to @dircategory and @direntry suggested by |
1474 |
Karl Berry <karl@cs.umb.edu>. |
1475 |
|
1476 |
1999-04-23 Eli Zaretskii <eliz@is.elta.co.il> |
1477 |
|
1478 |
* job.c (start_job_command) [__MSDOS__]: Call unblock_sigs before |
1479 |
turning off dos_command_running, so child's signals produce the |
1480 |
right effect. |
1481 |
|
1482 |
* commands.c (fatal_error_signal) [__MSDOS__]: Use EXIT_FAILURE |
1483 |
instead of 1. |
1484 |
|
1485 |
1999-04-18 Eli Zaretskii <eliz@is.elta.co.il> |
1486 |
|
1487 |
* configh.dos.template: Update to recognize that version 2.02 of |
1488 |
DJGPP contains sys_siglist stuff. |
1489 |
|
1490 |
1999-04-14 Paul D. Smith <psmith@gnu.org> |
1491 |
|
1492 |
* make.texinfo (Options/Recursion): Document the job server. |
1493 |
(Parallel): Tweaks. |
1494 |
|
1495 |
1999-04-13 Paul D. Smith <psmith@gnu.org> |
1496 |
|
1497 |
Implement a new "job server" feature; the implementation was |
1498 |
suggested by Howard Chu <hyc@highlandsun.com>. |
1499 |
|
1500 |
* configure.in (job-server): New disable option for job server |
1501 |
support--it's enabled by default. If it works well this will go |
1502 |
away. |
1503 |
|
1504 |
* NEWS: Summarize the new feature. |
1505 |
|
1506 |
* acconfig.h: New definition MAKE_JOBSERVER if job server support |
1507 |
is enabled. |
1508 |
* config.h-vms.template: Undef MAKE_JOBSERVER for this port. |
1509 |
* config.h.W32.template: Ditto. |
1510 |
* config.ami.template: Ditto. |
1511 |
|
1512 |
* main.c (struct command_switch): Add a new type: int_string. |
1513 |
(switches[]) Use int_string for -j if MAKE_JOBSERVER. |
1514 |
(init_switches): Initialize the new int_string switch type. |
1515 |
(print_usage): New function, extracted from decode_switches(). |
1516 |
(decode_switches): Call it. Decode the new int_string switch type. |
1517 |
(define_makeflags): Add new int_string switch data to MAKEFLAGS. |
1518 |
(job_fds[]) Array to contain the pipe file descriptors. |
1519 |
(main): Parse the job_slots_str option results. If necessary, |
1520 |
create the pipe and seed it with tokens. Set the non-blocking bit |
1521 |
for the read fd. Enable the signal handler for SIGCHLD even if we |
1522 |
have a non-hanging wait; it's needed to interrupt the select() in |
1523 |
job.c:start_waiting_job(). |
1524 |
|
1525 |
* make.h: Declare job_fds[]. |
1526 |
|
1527 |
* job.h (struct child): Add job_token field to store the token for |
1528 |
this job (if any). |
1529 |
|
1530 |
* job.c (reap_children): When a child is fully reaped, release the |
1531 |
token back into the pipe. |
1532 |
(free_child): If the child to be freed still has a token, put it |
1533 |
back. |
1534 |
(new_job): Initialize the job_token member. |
1535 |
(start_waiting_job): For local jobs, if we're using the pipe, get |
1536 |
a token before we check the load, etc. We do this by performing a |
1537 |
non-blocking read in a loop. If the read fails, no token is |
1538 |
available. Do a select on the fd to wait for a token. We need to |
1539 |
re-enable the signal handler for SIGCHLD even if we have a |
1540 |
non-hanging waitpid() or wait3(), so that the signal will |
1541 |
interrupt the select() and we can wake up to reap children. |
1542 |
(child_handler): Re-enable the signal handler. The count is still |
1543 |
kept although it's not needed or used unless you don't have |
1544 |
waitpid() or wait3(). |
1545 |
|
1546 |
1999-04-10 Paul D. Smith <psmith@gnu.org> |
1547 |
|
1548 |
* main.c (main): Reset the considered bit on all the makefiles if |
1549 |
something failed to update; we need to examine them again if they |
1550 |
appear as normal targets in order to get the proper error message. |
1551 |
|
1552 |
1999-04-09 Paul D. Smith <psmith@gnu.org> |
1553 |
|
1554 |
Performance enhancement from Tim Magill <tim.magill@telops.gte.com>. |
1555 |
|
1556 |
* remake.c (update_file): If you have large numbers of |
1557 |
dependencies and you run in parallel, make can spend considerable |
1558 |
time each pass through the graph looking at branches it has |
1559 |
already seen. Since we only reap_children() when starting a pass, |
1560 |
not in the middle, if a branch has been seen already in that pass |
1561 |
nothing interesting can happen until the next pass. So, we toggle |
1562 |
a bit saying whether we've seen this target in this pass or not. |
1563 |
(update_goal_chain): Initially set the global considered toggle to |
1564 |
1, since all targets initialize their boolean to 0. At the end of |
1565 |
each pass, toggle the global considered variable. |
1566 |
* filedef.h (struct file): Per-file considered toggle bit. |
1567 |
* file.c: New global toggle variable considered. |
1568 |
|
1569 |
1999-04-05 Paul D. Smith <psmith@gnu.org> |
1570 |
|
1571 |
* arscan.c (ar_scan): Added support for ARFZMAG (compressed |
1572 |
archives?) for Digital UNIX C++. Information provided by |
1573 |
Patrick E. Krogel <pekrogel@mtu.edu>. |
1574 |
(ar_member_touch): Ditto. |
1575 |
|
1576 |
1999-04-03 Paul D. Smith <psmith@gnu.org> |
1577 |
|
1578 |
* remake.c (f_mtime): If: a) we found a file and b) we didn't |
1579 |
create it and c) it's not marked as an implicit target and d) it |
1580 |
is marked as an intermediate target, then it was so marked due to |
1581 |
an .INTERMEDIATE special target, but it already existed in the |
1582 |
directory. In this case, unset the intermediate flag so we won't |
1583 |
delete it when make is done. It feels like it would be cleaner to |
1584 |
put this check in update_file_1() but I worry it'll get missed... |
1585 |
|
1586 |
1999-04-01 Paul D. Smith <psmith@gnu.org> |
1587 |
|
1588 |
* job.c (construct_command_argv_internal): Use bcopy() to copy |
1589 |
overlapping strings, rather than strcpy(). ISO C says the latter |
1590 |
is undefined. Found this in a bug report from 1996! Ouch! |
1591 |
|
1592 |
1999-03-31 Paul D. Smith <psmith@gnu.org> |
1593 |
|
1594 |
* read.c (readline): Ignore carriage returns at the end of the |
1595 |
line, to allow Windows-y CRLF line terminators. |
1596 |
|
1597 |
1999-03-30 Paul D. Smith <psmith@gnu.org> |
1598 |
|
1599 |
* configure.in: Don't put build.sh here, since build.sh.in doesn't |
1600 |
exist initially. This cause autoreconf and automake to fail when |
1601 |
run on a clean CVS checkout. Instead, we create build.sh in the |
1602 |
Makefile (see below). |
1603 |
|
1604 |
* Makefile.am: Remove BUILT_SOURCES; this is no longer relevant. |
1605 |
Put those files directly into EXTRA_DIST so they're distributed. |
1606 |
Create a local build rule to create build.sh. |
1607 |
Create a local maintainer-clean rule to delete all the funky |
1608 |
maintainers files. |
1609 |
|
1610 |
* maintMakefile: Makefile.in depends on README, since automake |
1611 |
fails if it doesn't exist. Also don't remove glob/Makefile.in |
1612 |
here, as it causes problems. |
1613 |
|
1614 |
1999-03-26 Paul D. Smith <psmith@gnu.org> |
1615 |
|
1616 |
* configure.in: Substitute GLOBLIB if we need the link the |
1617 |
glob/libglob.a library. |
1618 |
* Makefile.am (make_LDADD): Use the subst variable GLOBLIB so we |
1619 |
don't link the local libglob.a at all if we don't need it. |
1620 |
* build.template: Don't compile glob/*.o unless we want globlib. |
1621 |
* maintMakefile (build.sh.in): Substitute the glob/*.o files |
1622 |
separately. |
1623 |
|
1624 |
1999-03-25 Paul D. Smith <psmith@gnu.org> |
1625 |
|
1626 |
* make.texinfo: Various typos and additions, pointed out by James |
1627 |
G. Sack <jsack@dornfeld.com>. |
1628 |
|
1629 |
1999-03-22 Paul D. Smith <psmith@gnu.org> |
1630 |
|
1631 |
* make.texinfo (Functions): Add a new section documenting the new |
1632 |
$(error ...) and $(warning ...) functions. Also updated copyright |
1633 |
dates. |
1634 |
* NEWS: Updated for the new functions. |
1635 |
* function.c (func_error): Implement the new $(error ...) and |
1636 |
$(warning ...) functions. |
1637 |
(function_table): Insert new functions into the table. |
1638 |
(func_firstword): Don't call find_next_token() with argv[0] |
1639 |
itself, since that function modifies the pointer. |
1640 |
* function.c: Cleanups and slight changes to the new method of |
1641 |
calling functions. |
1642 |
|
1643 |
1999-03-20 Han-Wen Nienhuys <hanwen@cs.uu.nl> |
1644 |
|
1645 |
* function.c: Rewrite to use one C function per make function, |
1646 |
instead of a huge switch statement. Also allows some cleanup of |
1647 |
multi-architecture issues, and a cleaner API which makes things |
1648 |
like func_apply() simple. |
1649 |
|
1650 |
* function.c (func_apply): Initial implementation. Expand either |
1651 |
a builtin function or a make variable in the context of some |
1652 |
arguments, provided as $1, $2, ... $N. |
1653 |
|
1654 |
1999-03-19 Eli Zaretskii <eliz@is.elta.co.il> |
1655 |
1999-03-19 Rob Tulloh <rob_tulloh@dev.tivoli.com> |
1656 |
|
1657 |
* job.c (construct_command_argv_internal): Don't treat _all_ |
1658 |
backslashes as escapes, only those which really escape a special |
1659 |
character. This allows most normal "\" directory separators to be |
1660 |
treated normally. |
1661 |
|
1662 |
1999-03-05 Paul D. Smith <psmith@gnu.org> |
1663 |
|
1664 |
* configure.in: Check for a system strdup(). |
1665 |
* misc.c (xstrdup): Created. Suggestion by Han-Wen Nienhuys |
1666 |
<hanwen@cs.uu.nl>. |
1667 |
* make.h: Prototype xstrdup(). |
1668 |
* remake.c (library_search): Use it. |
1669 |
* main.c (main): Use it. |
1670 |
(find_and_set_default_shell): Use it. |
1671 |
* job.c (construct_command_argv_internal): Use it. |
1672 |
* dir.c (find_directory): Use it. |
1673 |
|
1674 |
* Makefile.am, configure.in: Use AC_SUBST_FILE to insert the |
1675 |
maintMakefile instead of "include", to avoid automake 1.4 |
1676 |
incompatibility. |
1677 |
|
1678 |
1999-03-04 Paul D. Smith <psmith@gnu.org> |
1679 |
|
1680 |
* amiga.c, amiga.h, ar.c, arscan.c, commands.c, commands.h, |
1681 |
* default.c, dep.h, dir.c, expand.c, file.c, filedef.h, function.c, |
1682 |
* implicit.c, job.c, job.h, main.c, make.h, misc.c, read.c, remake.c |
1683 |
* remote-cstms.c, remote-stub.c, rule.h, variable.c, variable.h, |
1684 |
* vpath.c, Makefile.ami, NMakefile.template, build.template, |
1685 |
* makefile.vms: Updated FSF address in the copyright notice. |
1686 |
|
1687 |
* variable.c (try_variable_definition): If we see a conditional |
1688 |
variable and we decide to set it, re-type it as recursive so it |
1689 |
will be expanded properly later. |
1690 |
|
1691 |
1999-02-22 Paul D. Smith <psmith@gnu.org> |
1692 |
|
1693 |
* NEWS: Mention new .LIBPATTERNS feature. |
1694 |
|
1695 |
* make.texinfo (Libraries/Search): Describe the use and |
1696 |
ramifications of the new .LIBPATTERNS variable. |
1697 |
|
1698 |
* remake.c (library_search): Instead of searching only for the |
1699 |
hardcoded expansion "libX.a" for a library reference "-lX", we |
1700 |
obtain a list of patterns from the .LIBPATTERNS variable and |
1701 |
search those in order. |
1702 |
|
1703 |
* default.c: Added a new default variable .LIBPATTERNS. The |
1704 |
default for UNIX is "lib%.so lib%.a". Amiga and DOS values are |
1705 |
also provided. |
1706 |
|
1707 |
* read.c: Remove bogus HAVE_GLOB_H references; always include |
1708 |
vanilla glob.h. |
1709 |
|
1710 |
1999-02-21 Paul D. Smith <psmith@gnu.org> |
1711 |
|
1712 |
* function.c (expand_function): Set value to 0 to avoid freeing it. |
1713 |
* variable.c (pop_variable_scope): Free the value of the variable. |
1714 |
(try_variable_definition): For simple variables, use |
1715 |
allocated_variable_expand() to avoid stomping on the variable |
1716 |
buffer when we still need it for other things. |
1717 |
|
1718 |
* arscan.c: Modified to support AIX 4.3 big archives. The changes |
1719 |
are based on information provided by Phil Adams |
1720 |
<padams@austin.ibm.com>. |
1721 |
|
1722 |
1999-02-19 Paul D. Smith <psmith@gnu.org> |
1723 |
|
1724 |
* configure.in: Check to see if the GNU glob library is already |
1725 |
installed on the system. If so, _don't_ add -I./glob to the |
1726 |
compile line. Using the system glob code with the local headers |
1727 |
is very bad mojo! |
1728 |
Rewrite SCCS macros to use more autoconf facilities. |
1729 |
|
1730 |
* Makefile.am: Move -Iglob out of INCLUDES; it'll get added to |
1731 |
CPPFLAGS by configure now. |
1732 |
Automake 1.4 introduced its own "include" feature which conflicts |
1733 |
with the maintMakefile stuff. A hack that seems to work is add a |
1734 |
space before the include :-/. |
1735 |
|
1736 |
* build.template: Move -Iglob out of the compile line; it'll get |
1737 |
added to CPPFLAGS by configure now. |
1738 |
|
1739 |
1999-02-16 Glenn D. Wolf <Glenn_Wolf@email.sps.mot.com> |
1740 |
|
1741 |
* arscan.c (ar_scan) [VMS]: Initialized VMS_member_date before |
1742 |
calling lbr$get_index since if the archive is empty, |
1743 |
VMS_get_member_info won't get called at all, and any leftover date |
1744 |
will be used. This bug shows up if any member of any archive is |
1745 |
made, followed by a dependency check on a different, empty |
1746 |
archive. |
1747 |
|
1748 |
1998-12-13 Martin Zinser <zinser@decus.decus.de> |
1749 |
|
1750 |
* config.h-vms [VMS]: Set _POSIX_C_SOURCE. Redefine the getopt |
1751 |
functions so we don't use the broken VMS versions. |
1752 |
* makefile.com [VMS]: Allow debugging. |
1753 |
* dir.c (dir_setup_glob) [VMS]: Don't extern stat() on VMS. |
1754 |
|
1755 |
1998-11-30 Paul D. Smith <psmith@gnu.org> |
1756 |
|
1757 |
* signame.c (init_sig): Check the sizes of signals being set up to |
1758 |
avoid array overwrites (if the system headers have problems). |
1759 |
|
1760 |
1998-11-17 Paul D. Smith <psmith@gnu.org> |
1761 |
|
1762 |
* read.c (record_files): Clean up some indentation. |
1763 |
|
1764 |
1998-11-08 Han-Wen Nienhuys <hanwen@cs.uu.nl> |
1765 |
|
1766 |
* rule.c (print_rule_data_base): Fix arguments to fatal() call. |
1767 |
|
1768 |
1998-10-13 Paul D. Smith <psmith@gnu.org> |
1769 |
|
1770 |
* job.c (start_job_command): If the command list resolves to no |
1771 |
chars at all (e.g.: "foo:;$(empty)") then command_ptr is NULL; |
1772 |
quit early. |
1773 |
|
1774 |
1998-10-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> |
1775 |
|
1776 |
* rule.c (print_rule_data_base): Ignore num_pattern_rules if it is |
1777 |
zero. |
1778 |
|
1779 |
1998-10-09 Paul D. Smith <psmith@gnu.org> |
1780 |
|
1781 |
* read.c (read_makefile): Allow non-empty lines to expand to the |
1782 |
empty string after variable, etc., expansion, and be ignored. |
1783 |
|
1784 |
1998-09-21 Paul D. Smith <psmith@gnu.org> |
1785 |
|
1786 |
* job.c (construct_command_argv_internal): Only add COMMAND.COM |
1787 |
"@echo off" line for non-UNIXy shells. |
1788 |
|
1789 |
1998-09-09 Paul D. Smith <psmith@gnu.org> |
1790 |
|
1791 |
* w32/subproc/sub_proc.c: Add in missing HAVE_MKS_SHELL tests. |
1792 |
|
1793 |
1998-09-04 Paul D. Smith <psmith@gnu.org> |
1794 |
|
1795 |
* read.c (read_makefile): If we hit the "missing separator" error, |
1796 |
check for the common case of 8 spaces instead of a TAB and give an |
1797 |
extra comment to help people out. |
1798 |
|
1799 |
1998-08-29 Paul Eggert <eggert@twinsun.com> |
1800 |
|
1801 |
* configure.in (AC_STRUCT_ST_MTIM_NSEC): |
1802 |
Renamed from AC_STRUCT_ST_MTIM. |
1803 |
|
1804 |
* acinclude.m4 (AC_STRUCT_ST_MTIM_NSEC): Likewise. |
1805 |
Port to UnixWare 2.1.2 and pedantic Solaris 2.6. |
1806 |
|
1807 |
* acconfig.h (ST_MTIM_NSEC): |
1808 |
Renamed from HAVE_ST_MTIM, with a new meaning. |
1809 |
|
1810 |
* filedef.h (FILE_TIMESTAMP_FROM_S_AND_NS): |
1811 |
Use new ST_MTIM_NSEC macro. |
1812 |
|
1813 |
1998-08-26 Paul D. Smith <psmith@gnu.org> |
1814 |
|
1815 |
* remake.c (check_dep): For any intermediate file, not just |
1816 |
secondary ones, try implicit and default rules if no explicit |
1817 |
rules are given. I'm not sure why this was restricted to |
1818 |
secondary rules in the first place. |
1819 |
|
1820 |
1998-08-24 Paul D. Smith <psmith@gnu.org> |
1821 |
|
1822 |
* make.texinfo (Special Targets): Update documentation for |
1823 |
.INTERMEDIATE: if used with no dependencies, then it does nothing; |
1824 |
old docs said it marked all targets as intermediate, which it |
1825 |
didn't... and which would be silly :). |
1826 |
|
1827 |
* implicit.c (pattern_search): If we find a dependency in our |
1828 |
internal tables, make sure it's not marked intermediate before |
1829 |
accepting it as a found_file[]. |
1830 |
|
1831 |
1998-08-20 Paul D. Smith <psmith@gnu.org> |
1832 |
|
1833 |
* ar.c (ar_glob): Use existing alpha_compare() with qsort. |
1834 |
(ar_glob_alphacompare): Remove it. |
1835 |
|
1836 |
Modify Paul Eggert's patch so we don't abandon older systems: |
1837 |
|
1838 |
* configure.in: Warn the user if neither waitpid() nor wait3() is |
1839 |
available. |
1840 |
|
1841 |
* job.c (WAIT_NOHANG): Don't syntax error on ancient hosts. |
1842 |
(child_handler, dead_children): Define these if WAIT_NOHANG is not |
1843 |
available. |
1844 |
(reap_children): Only track the dead_children count if no |
1845 |
WAIT_NOHANG. Otherwise, it's a boolean. |
1846 |
|
1847 |
* main.c (main): Add back signal handler if no WAIT_NOHANG is |
1848 |
available; only use default signal handler if it is. |
1849 |
|
1850 |
1998-08-20 Paul Eggert <eggert@twinsun.com> |
1851 |
|
1852 |
Install a more robust signal handling mechanism for systems which |
1853 |
support it. |
1854 |
|
1855 |
* job.c (WAIT_NOHANG): Define to a syntax error if our host |
1856 |
is truly ancient; this should never happen. |
1857 |
(child_handler, dead_children): Remove. |
1858 |
(reap_children): Don't try to keep separate track of how many |
1859 |
dead children we have, as this is too bug-prone. |
1860 |
Just ask the OS instead. |
1861 |
(vmsHandleChildTerm): Fix typo in error message; don't mention |
1862 |
child_handler. |
1863 |
|
1864 |
* main.c (main): Make sure we're not ignoring SIGCHLD/SIGCLD; |
1865 |
do this early, before we could possibly create a subprocess. |
1866 |
Just use the default behavior; don't have our own handler. |
1867 |
|
1868 |
1998-08-18 Eli Zaretskii <eliz@is.elta.co.il> |
1869 |
|
1870 |
* read.c (read_makefile) [__MSDOS__, WINDOWS32]: Add code to |
1871 |
recognize library archive members when dealing with drive spec |
1872 |
mess. Discovery and initial fix by George Racz <gracz@mincom.com>. |
1873 |
|
1874 |
1998-08-18 Paul D. Smith <psmith@gnu.org> |
1875 |
|
1876 |
* configure.in: Check for stdlib.h explicitly (some hosts have it |
1877 |
but don't have STDC_HEADERS). |
1878 |
* make.h: Use HAVE_STDLIB_H. Clean up some #defines. |
1879 |
* config.ami: Re-compute based on new config.h.in contents. |
1880 |
* config.h-vms: Ditto. |
1881 |
* config.h.W32: Ditto. |
1882 |
* configh.dos: Ditto. |
1883 |
|
1884 |
* dir.c (find_directory) [WINDOWS32]: Windows stat() fails if |
1885 |
directory names end with `\' so strip it. |
1886 |
|
1887 |
1998-08-17 Paul D. Smith <psmith@gnu.org> |
1888 |
|
1889 |
* make.texinfo: Added copyright year to the printed copy. Removed |
1890 |
the price from the manual. Change the top-level reference to |
1891 |
running make to be "Invoking make" instead of "make Invocation", |
1892 |
to comply with GNU doc standards. |
1893 |
|
1894 |
* make.h (__format__, __printf__): Added support for these in |
1895 |
__attribute__ macro. |
1896 |
(message, error, fatal): Use ... prototype form under __STDC__. |
1897 |
Add __format__ attributes for printf-style functions. |
1898 |
|
1899 |
* configure.in (AC_FUNC_VPRINTF): Check for vprintf()/_doprnt(). |
1900 |
|
1901 |
* misc.c (message, error, fatal): Add preprocessor stuff to enable |
1902 |
creation of variable-argument functions with appropriate |
1903 |
prototypes, that works with ANSI, pre-ANSI, varargs.h, stdarg.h, |
1904 |
v*printf(), _doprnt(), or none of the above. Culled from GNU |
1905 |
fileutils and slightly modified. |
1906 |
(makefile_error, makefile_error): Removed (merged into error() and |
1907 |
fatal(), respectively). |
1908 |
* amiga.c: Use them. |
1909 |
* ar.c: Use them. |
1910 |
* arscan.c: Use them. |
1911 |
* commands.c: Use them. |
1912 |
* expand.c: Use them. |
1913 |
* file.c: Use them. |
1914 |
* function.c: Use them. |
1915 |
* job.c: Use them. |
1916 |
* main.c: Use them. |
1917 |
* misc.c: Use them. |
1918 |
* read.c: Use them. |
1919 |
* remake.c: Use them. |
1920 |
* remote-cstms.c: Use them. |
1921 |
* rule.c: Use them. |
1922 |
* variable.c: Use them. |
1923 |
|
1924 |
* make.h (struct floc): New structure to store file location |
1925 |
information. |
1926 |
* commands.h (struct commands): Use it. |
1927 |
* variable.c (try_variable_definition): Use it. |
1928 |
* commands.c: Use it. |
1929 |
* default.c: Use it. |
1930 |
* file.c: Use it. |
1931 |
* function.c: Use it. |
1932 |
* misc.c: Use it. |
1933 |
* read.c: Use it. |
1934 |
* rule.c: Use it. |
1935 |
|
1936 |
1998-08-16 Paul Eggert <eggert@twinsun.com> |
1937 |
|
1938 |
* filedef.h (FILE_TIMESTAMP_PRINT_LEN_BOUND): Add 10, for nanoseconds. |
1939 |
|
1940 |
1998-08-16 Paul Eggert <eggert@twinsun.com> |
1941 |
|
1942 |
* filedef.h (FLOOR_LOG2_SECONDS_PER_YEAR): New macro. |
1943 |
(FILE_TIMESTAMP_PRINT_LEN_BOUND): Tighten bound, and try to |
1944 |
make it easier to understand. |
1945 |
|
1946 |
1998-08-14 Paul D. Smith <psmith@gnu.org> |
1947 |
|
1948 |
* read.c (read_makefile): We've already unquoted any colon chars |
1949 |
by the time we're done reading the targets, so arrange for |
1950 |
parse_file_seq() on the target list to not do so again. |
1951 |
|
1952 |
1998-08-05 Paul D. Smith <psmith@gnu.org> |
1953 |
|
1954 |
* configure.in: Added glob/configure.in data. We'll have the glob |
1955 |
code include the regular make config.h, rather than creating its |
1956 |
own. |
1957 |
|
1958 |
* getloadavg.c (main): Change return type to int. |
1959 |
|
1960 |
1998-08-01 Paul Eggert <eggert@twinsun.com> |
1961 |
|
1962 |
* job.c (reap_children): Ignore unknown children. |
1963 |
|
1964 |
1998-07-31 Paul D. Smith <psmith@gnu.org> |
1965 |
|
1966 |
* make.h, filedef.h, dep.h, rule.h, commands.h, remake.c: |
1967 |
Add prototypes for functions. Some prototypes needed to be moved |
1968 |
in order to get #include order reasonable. |
1969 |
|
1970 |
1998-07-30 Paul D. Smith <psmith@gnu.org> |
1971 |
|
1972 |
* make.h: Added MIN/MAX. |
1973 |
* filedef.h: Use them; remove FILE_TIMESTAMP_MIN. |
1974 |
|
1975 |
1998-07-30 Paul Eggert <eggert@twinsun.com> |
1976 |
|
1977 |
Add support for sub-second timestamp resolution on hosts that |
1978 |
support it (just Solaris 2.6, so far). |
1979 |
|
1980 |
* acconfig.h (HAVE_ST_MTIM, uintmax_t): New undefs. |
1981 |
* acinclude.m4 (jm_AC_HEADER_INTTYPES_H, AC_STRUCT_ST_MTIM, |
1982 |
jm_AC_TYPE_UINTMAX_T): New defuns. |
1983 |
* commands.c (delete_target): Convert file timestamp to |
1984 |
seconds before comparing to archive timestamp. Extract mod |
1985 |
time from struct stat using FILE_TIMESTAMP_STAT_MODTIME. |
1986 |
* configure.in (C_STRUCT_ST_MTIM, jm_AC_TYPE_UINTMAX_T): Add. |
1987 |
(AC_CHECK_LIB, AC_CHECK_FUNCS): Add clock_gettime. |
1988 |
* file.c (snap_deps): Use FILE_TIMESTAMP, not time_t. |
1989 |
(file_timestamp_now, file_timestamp_sprintf): New functions. |
1990 |
(print_file): Print file timestamps as FILE_TIMESTAMP, not |
1991 |
time_t. |
1992 |
* filedef.h: Include <inttypes.h> if available and if HAVE_ST_MTIM. |
1993 |
(FILE_TIMESTAMP, FILE_TIMESTAMP_STAT_MODTIME, FILE_TIMESTAMP_MIN, |
1994 |
FILE_TIMESTAMPS_PER_S, FILE_TIMESTAMP_FROM_S_AND_NS, |
1995 |
FILE_TIMESTAMP_DIV, FILE_TIMESTAMP_MOD, FILE_TIMESTAMP_S, |
1996 |
FILE_TIMESTAMP_NS, FILE_TIMESTAMP_PRINT_LEN_BOUND): New macros. |
1997 |
(file_timestamp_now, file_timestamp_sprintf): New decls. |
1998 |
(struct file.last_mtime, f_mtime, file_mtime_1, NEW_MTIME): |
1999 |
time_t -> FILE_TIMESTAMP. |
2000 |
* implicit.c (pattern_search): Likewise. |
2001 |
* vpath.c (vpath_search, selective_vpath_search): Likewise. |
2002 |
* main.c (main): Likewise. |
2003 |
* remake.c (check_dep, name_mtime, library_search, f_mtime): Likewise. |
2004 |
(f_mtime): Use file_timestamp_now instead of `time'. |
2005 |
Print file timestamp with file_timestamp_sprintf. |
2006 |
* vpath.c (selective_vpath_search): Extract file time stamp from |
2007 |
struct stat with FILE_TIMESTAMP_STAT_MODTIME. |
2008 |
|
2009 |
1998-07-28 Paul D. Smith <psmith@gnu.org> |
2010 |
|
2011 |
* Version 3.77 released. |
2012 |
|
2013 |
* dosbuild.bat: Change to DOS CRLF line terminators. |
2014 |
|
2015 |
* make-stds.texi: Update from latest version. |
2016 |
|
2017 |
* make.texinfo (Options Summary): Clarify that the -r option |
2018 |
affects only rules, not builtin variables. |
2019 |
|
2020 |
1998-07-27 Paul D. Smith <psmith@gnu.org> |
2021 |
|
2022 |
* make.h: Make __attribute__ resolve to empty for non-GCC _and_ |
2023 |
for GCC pre-2.5.x. |
2024 |
|
2025 |
* misc.c (log_access): Print UID/GID's as unsigned long int for |
2026 |
maximum portability. |
2027 |
|
2028 |
* job.c (reap_children): Print PIDs as long int for maximum |
2029 |
portability. |
2030 |
|
2031 |
1998-07-24 Eli Zaretskii <eliz@is.elta.co.il> |
2032 |
|
2033 |
* Makefile.DOS (*_INSTALL, *_UNINSTALL): Replace `true' with `:'. |
2034 |
|
2035 |
1998-07-25 Paul D. Smith <psmith@gnu.org> |
2036 |
|
2037 |
* Version 3.76.94 released. |
2038 |
|
2039 |
1998-07-23 Paul D. Smith <psmith@gnu.org> |
2040 |
|
2041 |
* config.h.W32.template: Make sure all the #defines of macros here |
2042 |
have a value (e.g., use ``#define HAVE_STRING_H 1'' instead of |
2043 |
just ``#define HAVE_STRING_H''. Keeps the preprocessor happy in |
2044 |
some contexts. |
2045 |
|
2046 |
* make.h: Remove __attribute__((format...)) stuff; using it with |
2047 |
un-prototyped functions causes older GCC's to fail. |
2048 |
|
2049 |
* Version 3.76.93 released. |
2050 |
|
2051 |
1998-07-22 Paul D. Smith <psmith@gnu.org> |
2052 |
|
2053 |
* file.c (print_file_data_base): Fix average calculation. |
2054 |
|
2055 |
1998-07-20 Paul D. Smith <psmith@gnu.org> |
2056 |
|
2057 |
* main.c (die): Postpone the chdir() until after |
2058 |
remove_intermediates() so that intermediate targets with relative |
2059 |
pathnames are removed properly. |
2060 |
|
2061 |
1998-07-17 Paul D. Smith <psmith@gnu.org> |
2062 |
|
2063 |
* filedef.h (struct file): New flag: did we print an error or not? |
2064 |
|
2065 |
* remake.c (no_rule_error): New function to print error messages, |
2066 |
extraced from remake_file(). |
2067 |
|
2068 |
* remake.c (remake_file): Invoke the new error print function. |
2069 |
(update_file_1): Invoke the error print function if we see that we |
2070 |
already tried this target and it failed, but that an error wasn't |
2071 |
printed for it. This can happen if a file is included with |
2072 |
-include or sinclude and couldn't be built, then later is also |
2073 |
the dependency of another target. Without this change, make just |
2074 |
silently stops :-/. |
2075 |
|
2076 |
1998-07-16 Paul D. Smith <psmith@gnu.org> |
2077 |
|
2078 |
* make.texinfo: Removed "beta" version designator. |
2079 |
Updated ISBN for the next printing. |
2080 |
|
2081 |
1998-07-13 Paul Eggert <eggert@twinsun.com> |
2082 |
|
2083 |
* acinclude.m4: New AC_LFS macro to determine if special compiler |
2084 |
flags are needed to allow access to large files (e.g., Solaris 2.6). |
2085 |
* configure.in: Invoke it. |
2086 |
|
2087 |
1998-07-08 Eli Zaretskii <eliz@is.elta.co.il> |
2088 |
|
2089 |
* Makefile.DOS: track changes in Makefile.in. |
2090 |
|
2091 |
1998-07-07 Paul D. Smith <psmith@gnu.org> |
2092 |
|
2093 |
* remote-cstms.c (start_remote_job): Move gethostbyaddr() to the |
2094 |
top so host is initialized early enough. |
2095 |
|
2096 |
* acinclude.m4: New file. Need some special autoconf macros to |
2097 |
check for network libraries (-lsocket, -lnsl, etc.) when |
2098 |
configuring Customs. |
2099 |
|
2100 |
* configure.in (make_try_customs): Invoke new network libs macro. |
2101 |
|
2102 |
1998-07-06 Paul D. Smith <psmith@gnu.org> |
2103 |
|
2104 |
* Version 3.76.92 released. |
2105 |
|
2106 |
* README.customs: Added to the distribution. |
2107 |
|
2108 |
* configure.in (make_try_customs): Rewrite to require an installed |
2109 |
Customs library, rather than looking at the build directory. |
2110 |
|
2111 |
* Makefile.am (man_MANS): Install make.1. |
2112 |
* make.1: Renamed from make.man. |
2113 |
|
2114 |
* make.texinfo (Bugs): New mailing list address for GNU make bug |
2115 |
reports. |
2116 |
|
2117 |
1998-07-02 Paul D. Smith <psmith@gnu.org> |
2118 |
|
2119 |
* Version 3.76.91 released. |
2120 |
|
2121 |
* default.c: Added default rule for new-style RCS master file |
2122 |
storage; ``% :: RCS/%''. |
2123 |
Added default rules for DOS-style C++ files with suffix ".cpp". |
2124 |
They use the new LINK.cpp and COMPILE.cpp macros, which are set by |
2125 |
default to be equal to LINK.cc and COMPILE.cc. |
2126 |
|
2127 |
1998-06-19 Eli Zaretskii <eliz@is.elta.co.il> |
2128 |
|
2129 |
* job.c (start_job_command): Reset execute_by_shell after an empty |
2130 |
command was skipped. |
2131 |
|
2132 |
1998-06-09 Paul D. Smith <psmith@gnu.org> |
2133 |
|
2134 |
* main.c (main): Keep track of the temporary filename created when |
2135 |
reading a makefile from stdin (-f-) and attempt to remove it |
2136 |
as soon as we know we're not going to re-exec. If we are, add it |
2137 |
to the exec'd make's cmd line with "-o" so the exec'd make doesn't |
2138 |
try to rebuild it. We still have a hole: if make re-execs then |
2139 |
the temporary file will never be removed. To fix this we'd need |
2140 |
a brand new option that meant "really delete this". |
2141 |
* AUTHORS, getopt.c, getopt1.c, getopt.h, main.c (print_version): |
2142 |
Updated mailing addresses. |
2143 |
|
2144 |
1998-06-08 Paul D. Smith <psmith@gnu.org> |
2145 |
|
2146 |
* main.c (main): Andreas Luik <luik@isa.de> points out that the |
2147 |
check for makefile :: rules with commands but no dependencies |
2148 |
causing a loop terminates incorrectly. |
2149 |
|
2150 |
* maintMakefile: Make a template for README.DOS to update version |
2151 |
numbers. |
2152 |
|
2153 |
1998-05-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
2154 |
|
2155 |
* remake.c (update_file_1): Don't free the memory for the |
2156 |
dependency structure when dropping a circular dependency. |
2157 |
|
2158 |
1998-05-30 Eli Zaretskii <eliz@is.elta.co.il> |
2159 |
|
2160 |
* dir.c (file_exists_p, file_impossible_p, file_impossible) |
2161 |
[__MSDOS__, WINDOWS32]: Retain trailing slash in "d:/", and make |
2162 |
dirname of "d:foo" be "d:". |
2163 |
|
2164 |
1998-05-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
2165 |
|
2166 |
* read.c (read_makefile): Avoid running past EOS when scanning |
2167 |
file name after `include'. |
2168 |
|
2169 |
1998-05-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
2170 |
|
2171 |
* make.texinfo (Flavors): Correct description of conditional |
2172 |
assignment, which is not equivalent to ifndef. |
2173 |
(Setting): Likewise. |
2174 |
|
2175 |
1998-05-24 Paul D. Smith <psmith@gnu.org> |
2176 |
|
2177 |
* arscan.c (ar_name_equal): strncmp() might be implemented as a |
2178 |
macro, so don't put preprocessor conditions inside the arguments |
2179 |
list. |
2180 |
|
2181 |
1998-05-23 Eli Zaretskii <eliz@is.elta.co.il> |
2182 |
|
2183 |
* read.c (read_makefile) [__MSDOS__, WINDOWS32]: Skip colons in |
2184 |
drive specs when parsing targets, target-specific variables and |
2185 |
static pattern rules. A colon can only be part of drive spec if |
2186 |
it is after the first letter in a token. |
2187 |
|
2188 |
1998-05-22 Eli Zaretskii <eliz@is.elta.co.il> |
2189 |
|
2190 |
* remake.c (f_mtime) [__MSDOS__]: Allow up to 3 sec of skew before |
2191 |
yelling bloody murder. |
2192 |
|
2193 |
* dosbuild.bat: Use -DINCLUDEDIR= and -DLIBDIR= where appropriate. |
2194 |
|
2195 |
* read.c (parse_file_seq): Combine the special file-handling code |
2196 |
for WINDOWS32 and __MSDOS__ into a single snippet. |
2197 |
(get_next_mword) [__MSDOS__, WINDOWS32]: Allow a word to include a |
2198 |
colon as part of a drive spec. |
2199 |
|
2200 |
* job.c (batch_mode_shell) [__MSDOS__]: Declare. |
2201 |
|
2202 |
1998-05-20 Paul D. Smith <psmith@gnu.org> |
2203 |
|
2204 |
* Version 3.76.90 released. |
2205 |
|
2206 |
1998-05-19 Paul D. Smith <psmith@gnu.org> |
2207 |
|
2208 |
* make.texinfo (Make Errors): Added a new appendix describing |
2209 |
common errors make might generate and how to resolve them (or at |
2210 |
least more information on what they mean). |
2211 |
|
2212 |
* maintMakefile (NMAKEFILES): Use the new automake 1.3 feature |
2213 |
to create a dependency file to construct Makefile.DOS, SMakefile, |
2214 |
and NMakefile. |
2215 |
(.dep_segment): Generate the dependency fragment file. |
2216 |
|
2217 |
1998-05-14 Paul D. Smith <psmith@gnu.org> |
2218 |
|
2219 |
* make.man: Minor changes. |
2220 |
|
2221 |
1998-05-13 Paul D. Smith <psmith@gnu.org> |
2222 |
|
2223 |
* function.c (pattern_matches,expand_function): Change variables |
2224 |
and types named "word" to something else, to avoid compilation |
2225 |
problems on Cray C90 Unicos. |
2226 |
* variable.h: Modify the function prototype. |
2227 |
|
2228 |
1998-05-11 Rob Tulloh <rob_tulloh@tivoli.com> |
2229 |
|
2230 |
* job.c (construct_command_argv_internal) [WINDOWS32]: Turn off |
2231 |
echo when using a batch file, and make sure the command ends in a |
2232 |
newline. |
2233 |
|
2234 |
1998-05-03 Paul D. Smith <psmith@gnu.org> |
2235 |
|
2236 |
* configure.in (make_try_customs): Add some customs flags if the |
2237 |
user configures custom support. |
2238 |
|
2239 |
* job.c, remote-cstms.c: Merge in changes for custom library. |
2240 |
|
2241 |
* remote-stub.c: Add option to stub start_remote_job_p(). |
2242 |
|
2243 |
1998-05-01 Paul D. Smith <psmith@gnu.org> |
2244 |
|
2245 |
* remake.c (f_mtime): Install VPATH+ handling for archives; use |
2246 |
the hname field instead of the name field, and rehash when |
2247 |
appropriate. |
2248 |
|
2249 |
1998-04-30 Paul D. Smith <psmith@gnu.org> |
2250 |
|
2251 |
* rule.c (print_rule_data_base): Print out any pattern-specific |
2252 |
variable values into the rules database. |
2253 |
|
2254 |
* variable.c (print_variable_set): Make this variable extern, to |
2255 |
be called by print_rule_data_base() for pattern-specific variables. |
2256 |
|
2257 |
* make.texinfo (Pattern-specific): Document pattern-specific |
2258 |
variables. |
2259 |
|
2260 |
1998-04-29 Paul D. Smith <psmith@gnu.org> |
2261 |
|
2262 |
* expand.c (variable_expand_for_file): Make static; its only |
2263 |
called internally. Look up this target in the list of |
2264 |
pattern-specific variables and insert the variable set into the |
2265 |
queue to be searched. |
2266 |
|
2267 |
* filedef.h (struct file): Add a new field to hold the |
2268 |
previously-found pattern-specific variable reference. Add a new |
2269 |
flag to remember whether we already searched for this file. |
2270 |
|
2271 |
* rule.h (struct pattern_var): New structure for storing |
2272 |
pattern-specific variable values. Define new function prototypes. |
2273 |
|
2274 |
* rule.c: New variables pattern_vars and last_pattern_var for |
2275 |
storage and handling of pattern-specific variable values. |
2276 |
(create_pattern_var): Create a new pattern-specific variable value |
2277 |
structure. |
2278 |
(lookup_pattern_var): Try to match a target to one of the |
2279 |
pattern-specific variable values. |
2280 |
|
2281 |
1998-04-22 Paul D. Smith <psmith@gnu.org> |
2282 |
|
2283 |
* make.texinfo (Target-specific): Document target-specific |
2284 |
variables. |
2285 |
|
2286 |
1998-04-21 Paul D. Smith <psmith@gnu.org> |
2287 |
|
2288 |
* variable.c (define_variable_in_set): Made globally visible. |
2289 |
(lookup_variable_in_set): New function: like lookup_variable but |
2290 |
look only in a specific variable set. |
2291 |
(target_environment): Use lookup_variable_in_set() to get the |
2292 |
correct export rules for a target-specific variable. |
2293 |
(create_new_variable_set): Create a new variable set, and just |
2294 |
return it without installing it anywhere. |
2295 |
(push_new_variable_scope): Reimplement in terms of |
2296 |
create_new_variable_set. |
2297 |
|
2298 |
* read.c (record_target_var): Like record_files, but instead of |
2299 |
files create a target-specific variable value for each of the |
2300 |
listed targets. Invoked from read_makefile() when the target line |
2301 |
turns out to be a target-specific variable assignment. |
2302 |
|
2303 |
1998-04-19 Paul D. Smith <psmith@gnu.org> |
2304 |
|
2305 |
* read.c (read_makefile): Rewrite the entire target parsing |
2306 |
section to implement target-specific variables. In particular, we |
2307 |
cannot expand the entire line as soon as it's read in, since we |
2308 |
may want to evaluate parts of it with different variable contexts |
2309 |
active. Instead, start expanding from the beginning until we find |
2310 |
the `:' (or `::'), then determine what kind of line this is and |
2311 |
continue appropriately. |
2312 |
|
2313 |
* read.c (get_next_mword): New function to parse a makefile line |
2314 |
by "words", considering an entire variable or function as one |
2315 |
word. Return the type read in, along with its starting position |
2316 |
and length. |
2317 |
(enum make_word_type): The types of words that are recognized by |
2318 |
get_next_mword(). |
2319 |
|
2320 |
* variable.h (struct variable): Add a flag to specify a per-target |
2321 |
variable. |
2322 |
|
2323 |
* expand.c: Make variable_buffer global. We need this during the |
2324 |
new parsing of the makefile. |
2325 |
(variable_expand_string): New function. Like variable_expand(), |
2326 |
but start at a specific point in the buffer, not the beginning. |
2327 |
(variable_expand): Rewrite to simply call variable_expand_string(). |
2328 |
|
2329 |
1998-04-13 Paul D. Smith <psmith@gnu.org> |
2330 |
|
2331 |
* remake.c (update_goal_chain): Allow the rebuilding makefiles |
2332 |
step to use parallel jobs. Not sure why this was disabled: |
2333 |
hopefully we won't find out :-/. |
2334 |
|
2335 |
1998-04-11 Paul D. Smith <psmith@gnu.org> |
2336 |
|
2337 |
* main.c (main): Set the CURDIR makefile variable. |
2338 |
* make.texinfo (Recursion): Document it. |
2339 |
|
2340 |
1998-03-17 Paul D. Smith <psmith@gnu.org> |
2341 |
|
2342 |
* misc.c (makefile_fatal): If FILE is nil, invoke plain fatal(). |
2343 |
* variable.c (try_variable_definition): Use new feature. |
2344 |
|
2345 |
1998-03-10 Paul D. Smith <psmith@gnu.org> |
2346 |
|
2347 |
* main.c (main): Don't pass included, rebuilt makefiles to |
2348 |
re-exec'd makes with -o. Reopens a possible loop, but it caused |
2349 |
too many problems. |
2350 |
|
2351 |
1998-03-02 Paul D. Smith <psmith@gnu.org> |
2352 |
|
2353 |
* variable.c (try_variable_definition): Implement ?=. |
2354 |
* make.texinfo (Setting): Document it. |
2355 |
|
2356 |
1998-02-28 Eli Zaretskii <eliz@is.elta.co.il> |
2357 |
|
2358 |
* job.c (start_job_command): Reset execute_by_shell after an empty |
2359 |
command, like ":", has been seen. |
2360 |
|
2361 |
Tue Oct 07 15:00:00 1997 Phil Brooks <phillip_brooks@hp.com> |
2362 |
|
2363 |
* make.h [WINDOWS32]: make case sensitivity configurable |
2364 |
* dir.c [WINDOWS32]: make case sensitivity configurable |
2365 |
* README.W32: Document case sensitivity |
2366 |
* config.ami: Share case warping code with Windows |
2367 |
|
2368 |
Mon Oct 6 18:48:45 CDT 1997 Rob Tulloh <rob_tulloh@dev.tivoli.com> |
2369 |
|
2370 |
* w32/subproc/sub_proc.c: Added support for MKS toolkit shell |
2371 |
(turn on HAVE_MKS_SHELL). |
2372 |
* read.c [WINDOWS32]: Fixed a problem with multiple target rules |
2373 |
reported by Gilbert Catipon (gcatipon@tibco.com). If multiple |
2374 |
path tokens in a rule did not have drive letters, make would |
2375 |
incorrectly concatenate the 2 tokens together. |
2376 |
* main.c/variable.c [WINDOWS32]: changed SHELL detection code to |
2377 |
follow what MSDOS did. In addition to watching for SHELL variable |
2378 |
updates, make's main will attempt to default the value of SHELL |
2379 |
before and after makefiles are parsed. |
2380 |
* job.c/job.h [WINDOWS32]: The latest changes made to enable use |
2381 |
of the GNUWIN32 shell from make could cause make to fail due to a |
2382 |
concurrency condition between parent and child processes. Make |
2383 |
now creates a batch file per job instead of trying to reuse the |
2384 |
same singleton batch file. |
2385 |
* job.c/job.h/function.c/config.h.W32 [WINDOWS32]: Renamed macro |
2386 |
from HAVE_CYGNUS_GNUWIN32_TOOLS to BATCH_MODE_ONLY_SHELL. Reworked |
2387 |
logic to reduce complexity. WINDOWS32 now uses the unixy_shell |
2388 |
variable to detect Bourne-shell compatible environments. There is |
2389 |
also a batch_mode_shell variable that determines whether not |
2390 |
command lines should be executed via script files. A WINDOWS32 |
2391 |
system with no sh.exe installed would have unixy_shell set to |
2392 |
FALSE and batch_mode_shell set to TRUE. If you have a unixy shell |
2393 |
that does not behave well when invoking things via 'sh -c xxx', |
2394 |
you may want to turn on BATCH_MODE_ONLY_SHELL and see if things |
2395 |
improve. |
2396 |
* NMakefile: Added /D DEBUG to debug build flags so that unhandled |
2397 |
exceptions could be debugged. |
2398 |
|
2399 |
Mon Oct 6 00:04:25 1997 Rob Tulloh <rob_tulloh@dev.tivoli.com> |
2400 |
|
2401 |
* main.c [WINDOWS32]: The function define_variable() does not |
2402 |
handle NULL. Test before calling it to set Path. |
2403 |
* main.c [WINDOWS32]: Search Path again after makefiles have been |
2404 |
parsed to detect sh.exe. |
2405 |
* job.c [WINDOWS32]: Added support for Cygnus GNU WIN32 tools. |
2406 |
To use, turn on HAVE_CYGNUS_GNUWIN32_TOOLS in config.h.W32. |
2407 |
* config.h.W32: Added HAVE_CYGNUS_GNUWIN32_TOOLS macro. |
2408 |
|
2409 |
Sun Oct 5 22:43:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2410 |
|
2411 |
* glob/glob.c (glob_in_dir) [VMS]: Globbing shouldn't be |
2412 |
case-sensitive. |
2413 |
* job.c (child_execute_job) [VMS]: Use a VMS .com file if the |
2414 |
command contains a newline (e.g. from a define/enddef block). |
2415 |
* vmsify.c (vmsify): Return relative pathnames wherever possible. |
2416 |
* vmsify.c (vmsify): An input string like "../.." returns "[--]". |
2417 |
|
2418 |
Wed Oct 1 15:45:09 1997 Rob Tulloh <rob_tulloh@tivoli.com> |
2419 |
|
2420 |
* NMakefile: Changed nmake to $(MAKE). |
2421 |
* subproc.bat: Take the make command name from the command |
2422 |
line. If no command name was given, default to nmake. |
2423 |
* job.c [MSDOS, WINDOWS32]: Fix memory stomp: temporary file names |
2424 |
are now always created in heap memory. |
2425 |
* w32/subproc/sub_proc.c: New implementation of make_command_line() |
2426 |
which is more compatible with different Bourne shell implementations. |
2427 |
Deleted the now obsolete fix_command_line() function. |
2428 |
* main.c [WINDOWS32]: Any arbitrary spelling of Path can be |
2429 |
detected. Make will ensure that the special spelling `Path' is |
2430 |
inserted into the environment when the path variable is propagated |
2431 |
within itself and to make's children. |
2432 |
* main.c [WINDOWS32]: Detection of sh.exe was occurring too |
2433 |
soon. The 2nd check for the existence of sh.exe must come after |
2434 |
the call to read_all_makefiles(). |
2435 |
|
2436 |
Fri Sep 26 01:14:18 1997 <zinser@axp602.gsi.de> |
2437 |
|
2438 |
* makefile.com [VMS]: Fixed definition of sys. |
2439 |
* readme.vms: Comments on what's changed lately. |
2440 |
|
2441 |
Fri Sep 26 01:14:18 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2442 |
|
2443 |
* read.c (read_all_makefiles): Allow make to find files named |
2444 |
"MAKEFILE" with no extension on VMS. |
2445 |
* file.c (lookup_file): Lowercase filenames on VMS. |
2446 |
|
2447 |
1997-09-29 Paul D. Smith <psmith@baynetworks.com> |
2448 |
|
2449 |
* read.c (read_makefile): Reworked target detection again; the old |
2450 |
version had an obscure quirk. |
2451 |
|
2452 |
Fri Sep 19 09:20:49 1997 Paul D. Smith <psmith@baynetworks.com> |
2453 |
|
2454 |
* Version 3.76.1 released. |
2455 |
|
2456 |
* Makefile.am: Add loadavg files to clean rules. |
2457 |
|
2458 |
* configure.in (AC_OUTPUT): Remove stamp-config; no longer needed. |
2459 |
* Makefile.ami (distclean): Ditto. |
2460 |
* SMakefile (distclean): Ditto. |
2461 |
|
2462 |
* main.c (main): Arg count should be int, not char! Major braino. |
2463 |
|
2464 |
Tue Sep 16 10:18:22 1997 Paul D. Smith <psmith@baynetworks.com> |
2465 |
|
2466 |
* Version 3.76 released. |
2467 |
|
2468 |
Tue Sep 2 10:07:39 1997 Paul D. Smith <psmith@baynetworks.com> |
2469 |
|
2470 |
* function.c (expand_function): When processing $(shell...) |
2471 |
translate a CRLF (\r\n) sequence as well as a newline (\n) to a |
2472 |
space. Also remove an ending \r\n sequence. |
2473 |
* make.texinfo (Shell Function): Document it. |
2474 |
|
2475 |
Fri Aug 29 12:59:06 1997 Rob Tulloh <rob_tulloh@tivoli.com> |
2476 |
|
2477 |
* w32/pathstuff.c (convert_Path_to_windows32): Fix problem where |
2478 |
paths which contain single character entries like `.' are not |
2479 |
handled correctly. |
2480 |
|
2481 |
* README.W32: Document path handling issues on Windows systems. |
2482 |
|
2483 |
Fri Aug 29 02:01:27 1997 Paul D. Smith <psmith@baynetworks.com> |
2484 |
|
2485 |
* Version 3.75.93. |
2486 |
|
2487 |
Thu Aug 28 19:39:06 1997 Rob Tulloh <rob_tulloh@tivoli.com> |
2488 |
|
2489 |
* job.c (exec_command) [WINDOWS32]: If exec_command() is invoked |
2490 |
from main() to re-exec make, the call to execvp() would |
2491 |
incorrectly return control to parent shell before the exec'ed |
2492 |
command could run to completion. I believe this is a feature of |
2493 |
the way that execvp() is implemented on top of WINDOWS32 APIs. To |
2494 |
alleviate the problem, use the supplied process launch function in |
2495 |
the sub_proc library and suspend the parent process until the |
2496 |
child process has run. When the child exits, exit the parent make |
2497 |
with the exit code of the child make. |
2498 |
|
2499 |
Thu Aug 28 17:04:47 1997 Paul D. Smith <psmith@baynetworks.com> |
2500 |
|
2501 |
* Makefile.DOS.template (distdir): Fix a line that got wrapped in |
2502 |
email. |
2503 |
|
2504 |
* Makefile.am (loadavg): Give the necessary cmdline options when |
2505 |
linking loadavg. |
2506 |
|
2507 |
* configure.in: Check for pstat_getdynamic for getloadvg on HP. |
2508 |
|
2509 |
* job.c (start_job_command) [VMS, _AMIGA]: Don't perform empty |
2510 |
command optimization on these systems; it doesn't make sense. |
2511 |
|
2512 |
Wed Aug 27 17:09:32 1997 Paul D. Smith <psmith@baynetworks.com> |
2513 |
|
2514 |
* Version 3.75.92 |
2515 |
|
2516 |
Tue Aug 26 11:59:15 1997 Paul D. Smith <psmith@baynetworks.com> |
2517 |
|
2518 |
* main.c (print_version): Add '97 to copyright years. |
2519 |
|
2520 |
* read.c (do_define): Check the length of the array before looking |
2521 |
at a particular offset. |
2522 |
|
2523 |
* job.c (construct_command_argv_internal): Examine the last byte |
2524 |
of the previous arg, not the byte after that. |
2525 |
|
2526 |
Sat Aug 23 1997 Eli Zaretskii <eliz@is.elta.co.il> |
2527 |
|
2528 |
* Makefile.DOS.template: New file (converted to Makefile.DOS in |
2529 |
the distribution). |
2530 |
|
2531 |
* configure.bat: Rewrite to use Makefile.DOS instead of editing |
2532 |
Makefile.in. Add support for building from outside of the source |
2533 |
directory. Fail if the environment block is too small. |
2534 |
|
2535 |
* configh.dos: Use <sys/config.h>. |
2536 |
|
2537 |
* README.DOS: Update instructions. |
2538 |
|
2539 |
Fri Aug 22 1997 Eli Zaretskii <eliz@is.elta.co.il> |
2540 |
|
2541 |
* job.c (start_job_command) [__MSDOS__]: Don't test for "/bin/sh" |
2542 |
literally, use value of unixy_shell instead. |
2543 |
|
2544 |
* filedef.h (NEW_MTIME): Use 1 less than maximum possible value if |
2545 |
time_t is unsigned. |
2546 |
|
2547 |
Sat Aug 16 00:56:15 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2548 |
|
2549 |
* vmsify.c (vmsify, case 11): After translating `..' elements, set |
2550 |
nstate to N_OPEN if there are still more elements to process. |
2551 |
(vmsify, case 2): After translating `foo/bar' up to the slash, |
2552 |
set nstate to N_OPEN, not N_DOT. |
2553 |
|
2554 |
Fri Aug 8 15:18:09 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2555 |
|
2556 |
* dir.c (vmsstat_dir): Leave name unmodified on exit. |
2557 |
* make.h (PATH_SEPARATOR_CHAR): Set to comma for VMS. |
2558 |
* vpath.c: Fix comments to refer to path separator, not colon. |
2559 |
(selective_vpath_search): Avoid Unixy slash handling for VMS. |
2560 |
|
2561 |
Thu Aug 7 22:24:03 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2562 |
|
2563 |
* ar.c [VMS]: Don't declare ar_member_touch. |
2564 |
Delete VMS version of ar_member_date. |
2565 |
Enable non-VMS versions of ar_member_date and ar_member_date_1 for |
2566 |
VMS too. |
2567 |
* arscan.c (VMS_get_member_info): New function. |
2568 |
(ar_scan): Provide version for VMS systems. |
2569 |
(ar_name_equal): Simply compare name and mem on VMS systems. |
2570 |
Don't define ar_member_pos or ar_member_touch on VMS systems. |
2571 |
|
2572 |
* config.h-vms (pid_t, uid_t): Don't define. |
2573 |
|
2574 |
* remake.c: Delete declaration of vms_stat. |
2575 |
(name_mtime): Don't call vms_stat. |
2576 |
(f_mtime) [VMS]: Funky time value manipulation no longer necessary. |
2577 |
|
2578 |
* file.c (print_file): [VMS] Use ctime, not cvt_time. |
2579 |
|
2580 |
* make.h [VMS]: Don't define POSIX. |
2581 |
|
2582 |
* makefile.com (filelist): Include ar and arscan. |
2583 |
Also include them in the link commands. |
2584 |
Don't define NO_ARCHIVES in cc command. |
2585 |
|
2586 |
* makefile.vms (ARCHIVES, ARCHIVES_SRC): Uncomment. |
2587 |
(defines): Delete NO_ARCHIVES from list. |
2588 |
|
2589 |
* remake.c (f_mtime): Only check to see if intermediate file is |
2590 |
out of date if it also exists (i.e., mtime != (time_t) -1). |
2591 |
|
2592 |
* vmsdir.h (u_long, u_short): Skip typedefs if using DEC C. |
2593 |
|
2594 |
Fri Jun 20 23:02:07 1997 Rob Tulloh <rob_tulloh@tivoli.com> |
2595 |
|
2596 |
* w32/subproc/sub_proc.c: Get W32 sub_proc to handle shebang |
2597 |
(#!/bin/sh) in script files correctly. |
2598 |
Fixed a couple of memory leaks. |
2599 |
Fixed search order in find_file() (w32/subproc/sub_proc.c) so that |
2600 |
files with extensions are preferred over files without extensions. |
2601 |
Added search for files with .cmd extension too. |
2602 |
* w32/subproc/misc.c (arr2envblk): Fixed memory leak. |
2603 |
|
2604 |
Mon Aug 18 09:41:08 1997 Paul D. Smith <psmith@baynetworks.com> |
2605 |
|
2606 |
* Version 3.75.91 |
2607 |
|
2608 |
Fri Aug 15 13:50:54 1997 Paul D. Smith <psmith@baynetworks.com> |
2609 |
|
2610 |
* read.c (do_define): Remember to count the newline after the endef. |
2611 |
|
2612 |
Thu Aug 14 23:14:37 1997 Paul D. Smith <psmith@baynetworks.com> |
2613 |
|
2614 |
* many: Rewrote builds to use Automake 1.2. |
2615 |
|
2616 |
* AUTHORS: New file. |
2617 |
* maintMakefile: Contains maintainer-only make snippets. |
2618 |
* GNUmakefile: This now only runs the initial auto* tools. |
2619 |
* COPYING,texinfo.tex,mkinstalldirs,install-sh: Removed (obtained |
2620 |
automatically by automake). |
2621 |
* compatMakefile: Removed (not needed anymore). |
2622 |
* README,build.sh.in: Removed (built from templates). |
2623 |
* config.h.in,Makefile.in: Removed (built by tools). |
2624 |
|
2625 |
Wed Aug 13 02:22:08 1997 Paul D. Smith <psmith@baynetworks.com> |
2626 |
|
2627 |
* make.texinfo: Updates for DOS/Windows information (Eli Zaretskii) |
2628 |
* README,README.DOS: Ditto. |
2629 |
|
2630 |
* remake.c (update_file_1,f_mtime): Fix GPATH handling. |
2631 |
* vpath.c (gpath_search): Ditto. |
2632 |
|
2633 |
* file.c (rename_file): New function: rehash, but also rename to |
2634 |
the hashname. |
2635 |
* filedef.h: Declare it. |
2636 |
|
2637 |
* variable.c (merge_variable_set_lists): Remove free() of variable |
2638 |
set; since various files can share variable sets we don't want to |
2639 |
free them here. |
2640 |
|
2641 |
Tue Aug 12 10:51:54 1997 Paul D. Smith <psmith@baynetworks.com> |
2642 |
|
2643 |
* configure.in: Require autoconf 2.12 |
2644 |
|
2645 |
* make.texinfo: Replace all "cd subdir; $(MAKE)" examples with a |
2646 |
more stylistically correct "cd subdir && $(MAKE)". |
2647 |
|
2648 |
* main.c: Global variable `clock_skew_detected' defined. |
2649 |
(main): Print final warning if it's set. |
2650 |
* make.h: Declare it. |
2651 |
* remake.c (f_mtime): Test and set it. |
2652 |
|
2653 |
* job.c (start_job_command): Add special optimizations for |
2654 |
"do-nothing" rules, containing just the shell no-op ":". This is |
2655 |
useful for timestamp files and can make a real difference if you |
2656 |
have a lot of them (requested by Fergus Henderson <fjh@cs.mu.oz.au>). |
2657 |
|
2658 |
* configure.in,Makefile.in: Rewrote to use the new autoconf |
2659 |
program_transform_name macro. |
2660 |
|
2661 |
* function.c (function_strip): Strip newlines as well as spaces |
2662 |
and TABs. |
2663 |
|
2664 |
Fri Jun 6 23:41:04 1997 Rob Tulloh <rob_tulloh@tivoli.com> |
2665 |
|
2666 |
* remake.c (f_mtime): Datestamps on FAT-based files are rounded to |
2667 |
even seconds when stored, so if the date check fails on WINDOWS32 |
2668 |
systems, see if this "off-by-one" error is the problem. |
2669 |
|
2670 |
* General: If your TZ environment variable is not set correctly |
2671 |
then all your timestamps will be off by hours. So, set it! |
2672 |
|
2673 |
Mon Apr 7 02:06:22 1997 Paul D. Smith <psmith@baynetworks.com> |
2674 |
|
2675 |
* Version 3.75.1 |
2676 |
|
2677 |
* compatMakefile (objs): Define & use the $(GLOB) variable so |
2678 |
that it's removed correctly from build.sh.in when it's built. |
2679 |
|
2680 |
* configure.in: On Solaris we can use the kstat_*() functions to |
2681 |
get load averages without needing special permissions. Add a |
2682 |
check for -lkstat to see if we have it. |
2683 |
|
2684 |
* getloadavg.c (getloadavg): Use HAVE_LIBKSTAT instead of SUN5 as |
2685 |
the test to enable kstat_open(), etc. processing. |
2686 |
|
2687 |
Fri Apr 4 20:21:18 1997 Eli Zaretskii <eliz@is.elta.co.il> |
2688 |
|
2689 |
* <lots>: Fixes to work in the DJGPP DOS environment. |
2690 |
|
2691 |
Mon Mar 31 02:42:52 1997 Paul D. Smith <psmith@baynetworks.com> |
2692 |
|
2693 |
* function.c (expand_function): Added new function $(wordlist). |
2694 |
|
2695 |
* make.texinfo (Filename Functions): Document $(wordlist) function. |
2696 |
|
2697 |
* vpath.c (build_vpath_lists): Construct the GPATH variable |
2698 |
information in the same manner we used to construct VPATH. |
2699 |
(gpath_search): New function to search GPATH. |
2700 |
|
2701 |
* make.h: Declare the new function. |
2702 |
|
2703 |
* remake.c (update_file_1): Call it, and keep VPATH if it's found. |
2704 |
|
2705 |
* make.texinfo (Search Algorithm): Document GPATH variable. |
2706 |
|
2707 |
Sun Mar 30 20:57:16 1997 Paul D. Smith <psmith@baynetworks.com> |
2708 |
|
2709 |
* main.c (handle_non_switch_argument): Defined the MAKECMDGOALS |
2710 |
variable to contain the user options passed in on the cmd line. |
2711 |
|
2712 |
* make.texinfo (Goals): Document MAKECMDGOALS variable. |
2713 |
|
2714 |
* remake.c (f_mtime): Print a warning if we detect a clock skew |
2715 |
error, rather than failing. |
2716 |
|
2717 |
* main.c (main): If we rebuild any makefiles and need to re-exec, |
2718 |
add "-o<mkfile>" options for each makefile rebuilt to avoid |
2719 |
infinite looping. |
2720 |
|
2721 |
Fri Mar 28 15:26:05 1997 Paul D. Smith <psmith@baynetworks.com> |
2722 |
|
2723 |
* job.c (construct_command_argv_internal): Track whether the last |
2724 |
arg in the cmd string was empty or not (Roland). |
2725 |
(construct_command_argv_internal): If the shell line is empty, |
2726 |
don't do anything (Roland). |
2727 |
|
2728 |
* glob/glob.h,glob/glob.c,glob/fnmatch.c,glob/fnmatch.h: Install |
2729 |
the latest changes from the GLIBC version of glob (Ulrich Drepper). |
2730 |
|
2731 |
* getloadavg.c,make-stds.texi: New version (Roland). |
2732 |
|
2733 |
* (ALL): Changed WIN32 to W32 or WINDOWS32 (RMS). |
2734 |
|
2735 |
Mon Mar 24 15:33:34 1997 Rob Tulloh <rob_tulloh@tivoli.com> |
2736 |
|
2737 |
* README.W32: Describe preliminary FAT support. |
2738 |
|
2739 |
* build_w32.bat: Use a variable for the final exe name. |
2740 |
|
2741 |
* dir.c (find_directory): W32: Find the filesystem type. |
2742 |
(dir_contents_file_exists_p): W32: for FAT filesystems, always |
2743 |
rehash since FAT doesn't change directory mtime on change. |
2744 |
|
2745 |
* main.c (handle_runtime_exceptions): W32: Add an |
2746 |
UnhandledExceptionFilter so that when make bombs due to ^C or a |
2747 |
bug, it won't cause a GUI requestor to pop up unless debug is |
2748 |
turned on. |
2749 |
(main): Call it. |
2750 |
|
2751 |
Mon Mar 24 00:57:34 1997 Paul D. Smith <psmith@baynetworks.com> |
2752 |
|
2753 |
* configure.in, config.h.in, config.ami, config.h-vms, config.h.w32: |
2754 |
Check for memmove() function. |
2755 |
|
2756 |
* make.h (bcopy): If memmove() available, define bcopy() to use it. |
2757 |
Otherwise just use bcopy(). Don't use memcpy(); it's not guaranteed |
2758 |
to handle overlapping moves. |
2759 |
|
2760 |
* read.c (read_makefile): Fix some uninitialized memory reads |
2761 |
(reported by Purify). |
2762 |
|
2763 |
* job.c (construct_command_argv_internal): Use bcopy() not |
2764 |
strcpy(); strcpy() isn't guaranteed to handle overlapping moves. |
2765 |
|
2766 |
* Makefile.in: Change install-info option ``--infodir'' to |
2767 |
``--info-dir'' for use with new texinfo. |
2768 |
|
2769 |
* function.c (expand_function): $(basename) and $(suffix) should |
2770 |
only search for suffixes as far back as the last directory (e.g., |
2771 |
only the final filename in the path). |
2772 |
|
2773 |
Sun Mar 23 00:13:05 1997 Paul D. Smith <psmith@baynetworks.com> |
2774 |
|
2775 |
* make.texinfo: Add @dircategory/@direntry information. |
2776 |
(Top): Remove previous reference to (dir) (from RMS). |
2777 |
(Static Usage): Add "all:" rule to example. |
2778 |
(Automatic Dependencies): fix .d file creation example. |
2779 |
|
2780 |
* Install VPATH+ patch: |
2781 |
|
2782 |
* filedef.h (struct file): Add in hname field to store the hashed |
2783 |
filename, and a flag to remember if we're using the vpath filename |
2784 |
or not. Renamed a few functions for more clarity. |
2785 |
|
2786 |
* file.c (lookup_file,enter_file,file_hash_enter): Store filenames |
2787 |
in the hash table based on their "hash name". We can change this |
2788 |
while keeping the original target in "name". |
2789 |
(rehash_file): Renamed from "rename_file" to be more accurate. |
2790 |
Changes the hash name, but not the target name. |
2791 |
|
2792 |
* remake.c (update_file_1): Modify -d output for more detailed |
2793 |
VPATH info. If we don't need to rebuild, use the VPATH name. |
2794 |
(f_mtime): Don't search for vpath if we're ignoring it. Call |
2795 |
renamed function rehash_file. Call name_mtime instead of |
2796 |
file_mtime, to avoid infinite recursion since the file wasn't |
2797 |
actually renamed. |
2798 |
|
2799 |
* implicit.c (pattern_search): if we find an implicit file in |
2800 |
VPATH, save the original name not the VPATH name. |
2801 |
|
2802 |
* make.texinfo (Directory Search): Add a section on the new VPATH |
2803 |
functionality. |
2804 |
|
2805 |
Sun Dec 1 18:36:04 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
2806 |
|
2807 |
* dir.c (file_exists_p, file_impossible, file_impossible_p): If |
2808 |
dirname is empty replace it by the name of the root directory. |
2809 |
Note that this doesn't work (yet) for W32, Amiga, or VMS. |
2810 |
|
2811 |
Tue Oct 08 13:57:03 1996 Rob Tulloh <tulloh@tivoli.com> |
2812 |
|
2813 |
* main.c (main): W32 bug fix for PATH vars. |
2814 |
|
2815 |
Tue Sep 17 1996 Paul Eggert <eggert@twinsun.com> |
2816 |
|
2817 |
* filedef.h (NEW_MTIME): Don't assume that time_t is a signed |
2818 |
32-bit quantity. |
2819 |
|
2820 |
* make.h: (CHAR_BIT, INTEGER_TYPE_SIGNED, INTEGER_TYPE_MAXIMUM, |
2821 |
INTEGER_TYPE_MINIMUM): New macros. |
2822 |
|
2823 |
Tue Aug 27 01:06:34 1996 Roland McGrath <roland@baalperazim.frob.com> |
2824 |
|
2825 |
* Version 3.75 released. |
2826 |
|
2827 |
* main.c (print_version): Print out bug-reporting address. |
2828 |
|
2829 |
Mon Aug 26 19:55:47 1996 Roland McGrath <roland@baalperazim.frob.com> |
2830 |
|
2831 |
* main.c (print_data_base): Don't declare ctime; headers do it for us |
2832 |
already. |
2833 |
|
2834 |
Sun Jul 28 15:37:09 1996 Rob Tulloh (tulloh@tivoli.com) |
2835 |
|
2836 |
* w32/pathstuff.c: Turned convert_vpath_to_w32() into a |
2837 |
real function. This was done so that VPATH could contain |
2838 |
white space separated pathnames. Please note that directory |
2839 |
paths (in VPATH/vpath context) containing white space are not |
2840 |
supported (just as they are not under Unix). See README.W32 |
2841 |
for suggestions. |
2842 |
|
2843 |
* w32/include/pathstuff.h: Added prototype for the new |
2844 |
function convert_vpath_to_w32. Deleted macro for same. |
2845 |
|
2846 |
* README.W32: Added some notes about why I chose not to try |
2847 |
and support pathnames which contain white space and some |
2848 |
workaround suggestions. |
2849 |
|
2850 |
Thu Jul 25 19:53:31 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2851 |
|
2852 |
* GNUmakefile (mkdep-nolib): Use -MM option unconditionally. |
2853 |
|
2854 |
* Version 3.74.7. |
2855 |
|
2856 |
* main.c (define_makeflags): Back up P to point at null terminator |
2857 |
when killing final space and dash before setting MFLAGS. |
2858 |
|
2859 |
From Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>: |
2860 |
* dir.c [__MSDOS__ && DJGPP > 1]: Include <libc/dosio.h> and defin |
2861 |
`__opendir_flags' initialized to 0. |
2862 |
(dosify) [__MSDOS__ && DJGPP > 1]: Return name unchanged if _USE_LFN. |
2863 |
(find_directory) [__MSDOS__ && DJGPP > 1]: If _USE_LGN, set |
2864 |
__opendir_flags to __OPENDIR_PRESERVE_CASE. |
2865 |
|
2866 |
* vmsfunctions.c (vms_stat): `sys$dassgn (DevChan);' added by kkaempf. |
2867 |
|
2868 |
* GNUmakefile (w32files): Add NMakefile. |
2869 |
|
2870 |
* NMakefile (LDFLAGS_debug): Value fixed by tulloh. |
2871 |
|
2872 |
Sat Jul 20 12:32:10 1996 Klaus Kämpf (kkaempf@progis.de) |
2873 |
|
2874 |
* remake.c (f_mtime) [VMS]: Add missing `if' conditional for future |
2875 |
modtime check. |
2876 |
* config.h-vms, makefile.vms, readme.vms, vmsify.c: Update address. |
2877 |
|
2878 |
Sat Jul 20 05:29:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2879 |
|
2880 |
* configure.in: Require autoconf 2.10 or later. |
2881 |
|
2882 |
Fri Jul 19 16:57:27 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2883 |
|
2884 |
* Version 3.74.6. |
2885 |
|
2886 |
* GNUmakefile (w32files): New variable. |
2887 |
(distfiles): Add it. |
2888 |
* w32: Updated by Rob Tulloh. |
2889 |
|
2890 |
* makefile.vms (LOADLIBES): Fix typo. |
2891 |
|
2892 |
Sun Jul 14 12:59:27 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2893 |
|
2894 |
* job.c (construct_command_argv_internal): Fix up #else, #endifs. |
2895 |
|
2896 |
* configh.dos: Define HAVE_DIRENT_H instead of DIRENT. |
2897 |
|
2898 |
* remake.c (f_mtime): Don't compare MTIME to NOW if MTIME == -1. |
2899 |
|
2900 |
* Version 3.74.5. |
2901 |
|
2902 |
* main.c (main): Exit with status 2 when update_goal_chain returns 2. |
2903 |
|
2904 |
Sat Jun 22 14:56:05 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2905 |
|
2906 |
* configure.in: Don't check for _sys_siglist. |
2907 |
* make.h [HAVE__SYS_SIGLIST]: Don't test this; just punt if there is |
2908 |
no strsignal or sys_siglist. |
2909 |
|
2910 |
* read.c (conditional_line): Strip ws in `ifeq (a , b)' so it is the |
2911 |
same as `ifeq (a, b)'. |
2912 |
|
2913 |
* job.c (reap_children): Don't call die if handling_fatal_signal. |
2914 |
|
2915 |
* file.c (file_hash_enter): Allow renaming :: to : when latter is |
2916 |
non-target, or : to :: when former is non-target. |
2917 |
|
2918 |
* job.c (start_job_command): Call block_sigs. |
2919 |
(block_sigs): New function, broken out of start_job_command. |
2920 |
(reap_children): Block fatal signals around removing dead child from |
2921 |
chain and adjusting job_slots_used. |
2922 |
* job.h: Declare block_sigs. |
2923 |
|
2924 |
* remote-stub.c (remote_setup, remote_cleanup): New (empty) functions. |
2925 |
* main.c (main): Call remote_setup. |
2926 |
(die): Call remote_cleanup. |
2927 |
|
2928 |
* job.c (reap_children): Quiescent value of shell_function_pid is |
2929 |
zero, not -1. |
2930 |
|
2931 |
* main.c (print_version): Add 96 to copyright years. |
2932 |
|
2933 |
Sat Jun 15 20:30:01 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
2934 |
|
2935 |
* read.c (find_char_unquote): Avoid calling strlen on every call |
2936 |
just to throw away the value most of the time. |
2937 |
|
2938 |
Sun Jun 2 12:24:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2939 |
|
2940 |
* main.c (decode_env_switches): Prepend '-' to ARGV[1] if it contains |
2941 |
no '=', regardless of ARGC. |
2942 |
(define_makeflags): Elide leading '-' from MAKEFLAGS value if first |
2943 |
word is short option, regardless of WORDS. |
2944 |
|
2945 |
Wed May 22 17:24:51 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2946 |
|
2947 |
* makefile.vms: Set LOADLIBES. |
2948 |
* makefile.com (link_using_library): Fix typo. |
2949 |
|
2950 |
Wed May 15 17:37:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
2951 |
|
2952 |
* dir.c (print_dir_data_base): Use %ld dev and ino and cast them to |
2953 |
long. |
2954 |
|
2955 |
Wed May 15 10:14:14 CDT 1996 Rob Tulloh <tulloh@tivoli.com> |
2956 |
|
2957 |
* dir.c: W32 does not support inode. For now, fully qualified |
2958 |
pathname along with st_mtime will be keys for files. |
2959 |
Fixed problem where vpath can be confused when files |
2960 |
are added to a directory after the directory has already been |
2961 |
read in. The code now attempts to reread the directory if it |
2962 |
discovers that the datestamp on the directory has changed since |
2963 |
it was cached by make. This problem only seems to occur on W32 |
2964 |
right now so it is lumped under port #ifdef WINDOWS32. |
2965 |
|
2966 |
* function.c: W32: call subproc library (CreateProcess()) instead of |
2967 |
fork/exec. |
2968 |
|
2969 |
* job.c: W32: Added the code to do fork/exec/waitpid style processing |
2970 |
on W32 systems via calls to subproc library. |
2971 |
|
2972 |
* main.c: W32: Several things added here. First, there is code |
2973 |
for dealing with PATH and SHELL defaults. Make tries to figure |
2974 |
out if the user has %PATH% set in the environment and sets it to |
2975 |
%Path% if it is not set already. Make also looks to see if sh.exe |
2976 |
is anywhere to be found. Code path through job.c will change |
2977 |
based on existence of a working Bourne shell. The checking for |
2978 |
default shell is done twice: once before makefiles are read in |
2979 |
and again after. Fall back to MSDOS style execution mode if no sh.exe |
2980 |
is found. Also added some debug support that allows user to pause make |
2981 |
with -D switch and attach a debugger. This is especially useful for |
2982 |
debugging recursive calls to make where problems appear only in the |
2983 |
sub-make. |
2984 |
|
2985 |
* make.h: W32: A few macros and header files for W32 support. |
2986 |
|
2987 |
* misc.c: W32: Added a function end_of_token_w32() to assist |
2988 |
in parsing code in read.c. |
2989 |
|
2990 |
* read.c: W32: Fixes similar to MSDOS which allow colon to |
2991 |
appear in filenames. Use of colon in filenames would otherwise |
2992 |
confuse make. |
2993 |
|
2994 |
* remake.c: W32: Added include of io.h to eliminate compiler |
2995 |
warnings. Added some code to default LIBDIR if it is not set |
2996 |
on W32. |
2997 |
|
2998 |
* variable.c: W32: Added support for detecting Path/PATH |
2999 |
and converting them to semicolon separated lists for make's |
3000 |
internal use. New function sync_Path_environment() |
3001 |
which is called in job.c and function.c before creating a new |
3002 |
process. Caller must set Path in environment since we don't |
3003 |
have fork() to do this for us. |
3004 |
|
3005 |
* vpath.c: W32: Added detection for filenames containing |
3006 |
forward or backward slashes. |
3007 |
|
3008 |
* NMakefile: W32: Visual C compatible makefile for use with nmake. |
3009 |
Use this to build GNU make the first time on Windows NT or Windows 95. |
3010 |
|
3011 |
* README.W32: W32: Contains some helpful notes. |
3012 |
|
3013 |
* build_w32.bat: W32: If you don't like nmake, use this the first |
3014 |
time you build GNU make on Windows NT or Windows 95. |
3015 |
|
3016 |
* config.h.W32: W32 version of config.h |
3017 |
|
3018 |
* subproc.bat: W32: A bat file used to build the |
3019 |
subproc library from the top-level NMakefile. Needed because |
3020 |
WIndows 95 (nmake) doesn't allow you to cd in a make rule. |
3021 |
|
3022 |
* w32/include/dirent.h |
3023 |
* w32/compat/dirent.c: W32: opendir, readdir, closedir, etc. |
3024 |
|
3025 |
* w32/include/pathstuff.h: W32: used by files needed functions |
3026 |
defined in pathstuff.c (prototypes). |
3027 |
|
3028 |
* w32/include/sub_proc.h: W32: prototypes for subproc.lib functions. |
3029 |
|
3030 |
* w32/include/w32err.h: W32: prototypes for w32err.c. |
3031 |
|
3032 |
* w32/pathstuff.c: W32: File and Path/Path conversion functions. |
3033 |
|
3034 |
* w32/subproc/build.bat: W32: build script for subproc library |
3035 |
if you don't wish to use nmake. |
3036 |
|
3037 |
* w32/subproc/NMakefile: W32: Visual C compatible makefile for use |
3038 |
with nmake. Used to build subproc library. |
3039 |
|
3040 |
* w32/subproc/misc.c: W32: subproc library support code |
3041 |
* w32/subproc/proc.h: W32: subproc library support code |
3042 |
* w32/subproc/sub_proc.c: W32: subproc library source code |
3043 |
* w32/subproc/w32err.c: W32: subproc library support code |
3044 |
|
3045 |
Mon May 13 14:37:42 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
3046 |
|
3047 |
* Version 3.74.4. |
3048 |
|
3049 |
* GNUmakefile (vmsfiles): Fix typo. |
3050 |
|
3051 |
* GNUmakefile (amigafiles): Add amiga.h. |
3052 |
|
3053 |
Sun May 12 19:19:43 1996 Aaron Digulla <digulla@fh-konstanz.de> |
3054 |
|
3055 |
* dir.c: New function: amigafy() to fold filenames |
3056 |
Changes HASH() to HASHI() to fold filenames on Amiga. |
3057 |
Stringcompares use strieq() instead of streq() |
3058 |
The current directory on Amiga is "" instead of "." |
3059 |
* file.c: Likewise. |
3060 |
|
3061 |
* amiga.c: New function wildcard_expansion(). Allows to use |
3062 |
Amiga wildcards with $(wildcard ) |
3063 |
|
3064 |
* amiga.h: New file. Prototypes for amiga.c |
3065 |
|
3066 |
* function.c: Use special function wildcard_expansion() for |
3067 |
$(wildcard ) to allow Amiga wildcards |
3068 |
The current directory on Amiga is "" instead of "." |
3069 |
|
3070 |
* job.c: No Pipes on Amiga, too |
3071 |
(load_too_high) Neither on Amiga |
3072 |
ENV variable on Amiga are in a special directory and are not |
3073 |
passed as third argument to main(). |
3074 |
|
3075 |
* job.h: No envp on Amiga |
3076 |
|
3077 |
* make.h: Added HASHI(). This is the same as HASH() but converts |
3078 |
it's second parameter to lowercase on Amiga to fold filenames. |
3079 |
|
3080 |
* main.c: (main), variable.c Changed handling of ENV-vars. Make |
3081 |
stores now the names of the variables only and reads their contents |
3082 |
when they are accessed to reflect that these variables are really |
3083 |
global (ie. they CAN change WHILE make runs !) This handling is |
3084 |
made in lookup_variable() |
3085 |
|
3086 |
* Makefile.ami: renamed file.h to filedep.h |
3087 |
Updated dependencies |
3088 |
|
3089 |
* read.c: "find_semicolon" is declared as static but never defined. |
3090 |
No difference between Makefile and makefile on Amiga; added |
3091 |
SMakefile to *default_makefiles[]. |
3092 |
(read_makefile) SAS/C want's two_colon and pattern_percent be set |
3093 |
before use. |
3094 |
The current directory on Amiga is "" instead of "." |
3095 |
Strange #endif moved. |
3096 |
|
3097 |
* README.Amiga: updated feature list |
3098 |
|
3099 |
* SMakefile: Updated dependencies |
3100 |
|
3101 |
* variable.c: Handling of ENV variable happens inside lookup_variable() |
3102 |
|
3103 |
Sat May 11 17:58:32 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
3104 |
|
3105 |
* variable.c (try_variable_definition): Count parens in lhs variable |
3106 |
refs to avoid seeing =/:=/+= inside a ref. |
3107 |
|
3108 |
Thu May 9 13:54:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
3109 |
|
3110 |
* commands.c (fatal_error_signal) [SIGQUIT]: Make SIGQUIT check |
3111 |
conditional. |
3112 |
|
3113 |
* main.c (main): Use unsigned for fread return. |
3114 |
|
3115 |
* read.c (parse_file_seq): Use `int' for char arg to avoid widening |
3116 |
conflict issues. |
3117 |
* dep.h: Fix prototype. |
3118 |
|
3119 |
* function.c (expand_function) [_AMIGA]: Fix some typos. |
3120 |
(patsubst_expand): Make len vars unsigned. |
3121 |
|
3122 |
* GNUmakefile (globfiles): Add AmigaDOS support files. |
3123 |
(distfiles): Add $(amigafiles). |
3124 |
(amigafiles): New variable. |
3125 |
|
3126 |
Thu Nov 7 10:18:16 1995 Aaron Digulla <digulla@fh-konstanz.de> |
3127 |
|
3128 |
* Added Amiga support in commands.c, dir.c, function.c, |
3129 |
job.c, main.c, make.h, read.c, remake.c |
3130 |
* commands.c: Amiga has neither SIGHUP nor SIGQUIT |
3131 |
* dir.c: Amiga has filenames with Upper- and Lowercase, |
3132 |
but "FileName" is the same as "filename". Added strieq() |
3133 |
which is use to compare filenames. This is like streq() |
3134 |
on all other systems. Also there is no such thing as |
3135 |
"." under AmigaDOS. |
3136 |
* function.c: On Amiga, the environment is not passed as envp, |
3137 |
there are no pipes and Amiga can't fork. Use my own function |
3138 |
to create a new child. |
3139 |
* job.c: default_shell is "" (The system automatically chooses |
3140 |
a shell for me). Have to use the same workaround as MSDOS for |
3141 |
running batch commands. Added HAVE_SYS_PARAM_H. NOFILE isn't |
3142 |
known on Amiga. Cloned code to run children from MSDOS. Own |
3143 |
version of sh_chars[] and sh_cmds[]. No dup2() or dup() on Amiga. |
3144 |
* main.c: Force stack to 20000 bytes. Read environment from ENV: |
3145 |
device. On Amiga, exec_command() does return, so I exit() |
3146 |
afterwards. |
3147 |
* make.h: Added strieq() to compare filenames. |
3148 |
* read.c: Amiga needs special extension to have passwd. Only |
3149 |
one include-dir. "Makefile" and "makefile" are the same. |
3150 |
Added "SMakefile". Added special code to handle device names (xxx:) |
3151 |
and "./" in rules. |
3152 |
* remake.c: Only one lib-dir. Amiga link-libs are named "%s.lib" |
3153 |
instead of "lib%s.a". |
3154 |
* main.c, rule.c, variable.c: Avoid floats at all costs. |
3155 |
* vpath.c: Get rid of as many alloca()s as possible. |
3156 |
|
3157 |
Thu May 9 13:20:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> |
3158 |
|
3159 |
* read.c (read_makefile): Grok `sinclude' as alias for `-include'. |
3160 |
|
3161 |
Wed Mar 20 09:52:27 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> |
3162 |
|
3163 |
* GNUmakefile (vmsfiles): New variable. |
3164 |
(distfiles): Include $(vmsfiles). |
3165 |
|
3166 |
Tue Mar 19 20:21:34 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> |
3167 |
|
3168 |
Merged VMS port from Klaus Kaempf <kkaempf@didymus.rmi.de>. |
3169 |
* make.h (PARAMS): New macro. |
3170 |
* config.h-vms: New file. |
3171 |
* makefile.com: New file. |
3172 |
* makefile.vms: New file. |
3173 |
* readme.vms: New file. |
3174 |
* vmsdir.h: New file. |
3175 |
* vmsfunctions.c: New file. |
3176 |
* vmsify.c: New file. |
3177 |
* file.h: Renamed to filedef.h to avoid conflict with VMS system hdr. |
3178 |
* ar.c: Added prototypes and changes for VMS. |
3179 |
* commands.c: Likewise. |
3180 |
* commands.h: Likewise. |
3181 |
* default.c: Likewise. |
3182 |
* dep.h: Likewise. |
3183 |
* dir.c: Likewise. |
3184 |
* expand.c: Likewise. |
3185 |
* file.c: Likewise. |
3186 |
* function.c: Likewise. |
3187 |
* implicit.c: Likewise. |
3188 |
* job.c: Likewise. |
3189 |
* job.h: Likewise. |
3190 |
* main.c: Likewise. |
3191 |
* make.h: Likewise. |
3192 |
* misc.c: Likewise. |
3193 |
* read.c: Likewise. |
3194 |
* remake.c: Likewise. |
3195 |
* remote-stub.c: Likewise. |
3196 |
* rule.c: Likewise. |
3197 |
* rule.h: Likewise. |
3198 |
* variable.c: Likewise. |
3199 |
* variable.h: Likewise. |
3200 |
* vpath.c: Likewise. |
3201 |
* compatMakefile (srcs): Rename file.h to filedef.h. |
3202 |
|
3203 |
Sat Aug 19 23:11:00 1995 Richard Stallman <rms@mole.gnu.ai.mit.edu> |
3204 |
|
3205 |
* remake.c (check_dep): For a secondary file, try implicit and |
3206 |
default rules if appropriate. |
3207 |
|
3208 |
Wed Aug 2 04:29:42 1995 Richard Stallman <rms@mole.gnu.ai.mit.edu> |
3209 |
|
3210 |
* remake.c (check_dep): If an intermediate file exists, |
3211 |
do consider its actual date. |
3212 |
|
3213 |
Sun Jul 30 00:49:53 1995 Richard Stallman <rms@mole.gnu.ai.mit.edu> |
3214 |
|
3215 |
* file.h (struct file): New field `secondary'. |
3216 |
* file.c (snap_deps): Check for .INTERMEDIATE and .SECONDARY. |
3217 |
(remove_intermediates): Don't delete .SECONDARY files. |
3218 |
|
3219 |
Sat Mar 2 16:26:52 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> |
3220 |
|
3221 |
* compatMakefile (srcs): Add getopt.h; prepend $(srcdir)/ to getopt*. |
3222 |
|
3223 |
Fri Mar 1 12:04:47 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> |
3224 |
|
3225 |
* Version 3.74.3. |
3226 |
|
3227 |
* remake.c (f_mtime): Move future modtime check before FILE is |
3228 |
clobbered by :: loop. |
3229 |
|
3230 |
* dir.c: Use canonical code from autoconf manual for dirent include. |
3231 |
[_D_NAMLEN]: Redefine NAMLEN using this. |
3232 |
(dir_contents_file_exists_p): Use NAMLEN macro. |
3233 |
(read_dirstream) [_DIRENT_HAVE_D_NAMLEN]: Only set d_namlen #if this. |
3234 |
|
3235 |
* compatMakefile (objs): Add missing backslash. |
3236 |
|
3237 |
Wed Feb 28 03:56:20 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> |
3238 |
|
3239 |
* default.c (default_terminal_rules): Remove + prefix from RCS cmds. |
3240 |
(default_variables): Put + prefix in $(CHECKOUT,v) value instead. |
3241 |
|
3242 |
* remake.c (f_mtime): Check for future timestamps; give error and mark |
3243 |
file as "failed to update". |
3244 |
|
3245 |
Fri Jan 12 18:09:36 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3246 |
|
3247 |
* job.c: Don't declare unblock_sigs; job.h already does. |
3248 |
|
3249 |
Sat Jan 6 16:24:44 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3250 |
|
3251 |
* acconfig.h (HAVE_SYSCONF_OPEN_MAX): #undef removed. |
3252 |
|
3253 |
* job.c (NGROUPS_MAX): Don't try to define this macro. |
3254 |
|
3255 |
Fri Dec 22 18:44:44 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3256 |
|
3257 |
* compatMakefile (GETOPT, GETOPT_SRC, GLOB): Variables removed. |
3258 |
(objs, srcs): Include their values here instead of references. |
3259 |
|
3260 |
Thu Dec 14 06:21:29 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3261 |
|
3262 |
* Version 3.74.2. |
3263 |
|
3264 |
* job.c (reap_children): Call unblock_sigs after start_job_command. |
3265 |
|
3266 |
Thu Dec 14 07:22:03 1995 Roland McGrath <roland@duality.gnu.ai.mit.edu> |
3267 |
|
3268 |
* dir.c (dir_setup_glob): Don't use lstat; glob never calls it anyway. |
3269 |
Avoid & before function names to silence bogus sunos4 compiler. |
3270 |
|
3271 |
* configure.in: Remove check for `sysconf (_SC_OPEN_MAX)'. |
3272 |
|
3273 |
Tue Dec 12 00:48:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3274 |
|
3275 |
* Version 3.74.1. |
3276 |
|
3277 |
* dir.c (read_dirstream): Fix braino: fill in the buffer when not |
3278 |
reallocating it! |
3279 |
|
3280 |
Mon Dec 11 22:26:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3281 |
|
3282 |
* misc.c (collapse_continuations): Fix skipping of trailing \s so |
3283 |
it can never dereference before the beginning of the array. |
3284 |
|
3285 |
* read.c (find_semicolon): Function removed. |
3286 |
(read_makefile): Don't use find_semicolon or remove_comments for |
3287 |
rule lines. Use find_char_unquote directly and handle quoted comments |
3288 |
properly. |
3289 |
|
3290 |
* default.c: Remove all [M_XENIX] code. |
3291 |
|
3292 |
* dir.c [HAVE_D_NAMLEN]: Define this for __GNU_LIBRARY__ > 1. |
3293 |
(D_NAMLEN): Macro removed. |
3294 |
(FAKE_DIR_ENTRY): New macro. |
3295 |
(dir_contents_file_exists_p): Test HAVE_D_NAMLEN instead of using |
3296 |
D_NAMLEN. |
3297 |
(read_dirstream): Return a struct dirent * for new glob interface. |
3298 |
(init_dir): Function removed. |
3299 |
(dir_setup_glob): New function. |
3300 |
* main.c (main): Don't call init_dir. |
3301 |
* read.c (multi_glob): Call dir_setup_glob on our glob_t and use |
3302 |
GLOB_ALTDIRFUNC flag. |
3303 |
|
3304 |
* misc.c (safe_stat): Function removed. |
3305 |
* read.c, commands.c, remake.c, vpath.c: Use plain stat instead of |
3306 |
safe_stat. |
3307 |
|
3308 |
Sat Nov 25 20:35:18 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3309 |
|
3310 |
* job.c [HAVE_UNION_WAIT]: Include sys/wait.h. |
3311 |
|
3312 |
* main.c (log_working_directory): Made global. |
3313 |
Print entering msg only once. |
3314 |
* make.h (log_working_directory): Declare it. |
3315 |
* misc.c (message): Take new arg PREFIX. Print "make: " only if |
3316 |
nonzero. Call log_working_directory. |
3317 |
* remake.c: Pass new arg in `message' calls. |
3318 |
* job.c (start_job_command): Pass new arg to `message'; fix |
3319 |
inverted test in that call. |
3320 |
|
3321 |
Tue Nov 21 19:01:12 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3322 |
|
3323 |
* job.c (start_job_command): Use `message' to print the command, |
3324 |
and call it with null if the command is silent. |
3325 |
* remake.c (touch_file): Use message instead of printf. |
3326 |
|
3327 |
Tue Oct 10 14:59:30 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3328 |
|
3329 |
* main.c (enter_command_line_file): Barf if NAME is "". |
3330 |
|
3331 |
Sat Sep 9 06:33:20 1995 Roland McGrath <roland@whiz-bang.gnu.ai.mit.edu> |
3332 |
|
3333 |
* commands.c (delete_target): Ignore unlink failure if it is ENOENT. |
3334 |
|
3335 |
Thu Aug 17 15:08:57 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3336 |
|
3337 |
* configure.in: Don't check for getdtablesize. |
3338 |
* job.c (getdtablesize): Remove decls and macros. |
3339 |
|
3340 |
Thu Aug 10 19:10:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3341 |
|
3342 |
* main.c (define_makeflags): Omit command line variable |
3343 |
definitions from MFLAGS value. |
3344 |
|
3345 |
* arscan.c (ar_scan) [AIAMAG]: Check for zero MEMBER_OFFSET, |
3346 |
indicating a valid, but empty, archive. |
3347 |
|
3348 |
Mon Aug 7 15:40:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3349 |
|
3350 |
* dir.c (file_impossible_p): Correctly reset FILENAME to name |
3351 |
within directory before hash search. |
3352 |
|
3353 |
* job.c (child_error): Do nothing if IGNORED under -s. |
3354 |
|
3355 |
* job.c (exec_command): Correctly use ARGV[0] for script name when |
3356 |
running shell directly. |
3357 |
|
3358 |
Tue Aug 1 14:39:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3359 |
|
3360 |
* job.c (child_execute_job): Close STDIN_FD and STDOUT_FD after |
3361 |
dup'ing from them. Don't try to close all excess descriptors; |
3362 |
getdtablesize might return a huge value. Any open descriptors in |
3363 |
the parent should have FD_CLOEXEC set. |
3364 |
(start_job_command): Set FD_CLOEXEC flag on BAD_STDIN descriptor. |
3365 |
|
3366 |
Tue Jun 20 03:47:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3367 |
|
3368 |
* read.c (read_all_makefiles): Properly append default makefiles |
3369 |
to the end of the `read_makefiles' chain. |
3370 |
|
3371 |
Fri May 19 16:36:32 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3372 |
|
3373 |
* Version 3.74 released. |
3374 |
|
3375 |
Wed May 10 17:43:34 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3376 |
|
3377 |
* Version 3.73.3. |
3378 |
|
3379 |
Tue May 9 17:15:23 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3380 |
|
3381 |
* compatMakefile ($(infodir)/make.info): Make sure $$dir is set in |
3382 |
install-info cmd. |
3383 |
|
3384 |
Wed May 3 15:56:06 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3385 |
|
3386 |
* file.c (print_file): Grok update_status of 1 for -q. |
3387 |
|
3388 |
Thu Apr 27 12:39:35 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3389 |
|
3390 |
* Version 3.73.2. |
3391 |
|
3392 |
Wed Apr 26 17:15:57 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3393 |
|
3394 |
* file.c (remove_intermediates): Fix inverted test to bail under |
3395 |
-n for signal case. Bail under -q or -t. |
3396 |
Skip files with update_status==-1. |
3397 |
|
3398 |
* job.c (job_next_command): Skip empty lines. |
3399 |
(new_job): Don't test the return of job_next_command. |
3400 |
Just let start_waiting_job handle the case of empty commands. |
3401 |
|
3402 |
Wed Apr 19 03:25:54 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3403 |
|
3404 |
* function.c [__MSDOS__]: Include <fcntl.h>. From DJ Delorie. |
3405 |
|
3406 |
* Version 3.73.1. |
3407 |
|
3408 |
Sat Apr 8 14:53:24 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3409 |
|
3410 |
* remake.c (notice_finished_file): Set FILE->update_status to zero |
3411 |
if it's -1. |
3412 |
|
3413 |
Wed Apr 5 00:20:24 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3414 |
|
3415 |
* Version 3.73 released. |
3416 |
|
3417 |
Tue Mar 28 13:25:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3418 |
|
3419 |
* main.c (main): Fixed braino in assert. |
3420 |
|
3421 |
* Version 3.72.13. |
3422 |
|
3423 |
Mon Mar 27 05:29:12 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3424 |
|
3425 |
* main.c: Avoid string in assert expression. Some systems are broken. |
3426 |
|
3427 |
Fri Mar 24 00:32:32 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3428 |
|
3429 |
* main.c (main): Handle 1 and 2 returns from update_goal_chain |
3430 |
makefile run properly. |
3431 |
|
3432 |
* Version 3.72.12. |
3433 |
|
3434 |
* main.c (handle_non_switch_argument): New function, broken out of |
3435 |
decode_switches. |
3436 |
(decode_switches): Set optind to 0 to reinitialize getopt, not to 1. |
3437 |
When getopt_long returns EOF, break the loop and handle remaining args |
3438 |
with a simple second loop. |
3439 |
|
3440 |
* remake.c (remake_file): Set update_status to 2 instead of 1 for |
3441 |
no rule to make. Mention parent (dependent) in error message. |
3442 |
(update_file_1): Handle FILE->update_status == 2 in -d printout. |
3443 |
* job.c (start_job_command, reap_children): Set update_status to 2 |
3444 |
instead of 1 for failed commands. |
3445 |
|
3446 |
Tue Mar 21 16:23:38 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3447 |
|
3448 |
* job.c (search_path): Function removed (was already #if 0'd out). |
3449 |
* configure.in: Remove AC_TYPE_GETGROUPS; nothing needs it any more. |
3450 |
|
3451 |
Fri Mar 17 15:57:40 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3452 |
|
3453 |
* configure.bat: Write @CPPFLAGS@ translation. |
3454 |
|
3455 |
Mon Mar 13 00:45:59 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3456 |
|
3457 |
* read.c (parse_file_seq): Rearranged `l(a b)' -> `l(a) l(b)' loop |
3458 |
to not skip the elt immediately preceding `l(...'. |
3459 |
|
3460 |
Fri Mar 10 13:56:49 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3461 |
|
3462 |
* Version 3.72.11. |
3463 |
|
3464 |
* read.c (find_char_unquote): Make second arg a string of stop |
3465 |
chars instead of a single stop char. Stop when any char in the |
3466 |
string is hit. All callers changed. |
3467 |
(find_semicolon): Pass stop chars "#;" to one find_char_unquote call, |
3468 |
instead of using two calls. If the match is not a ; but a #, |
3469 |
return zero. |
3470 |
* misc.c: Changed find_char_unquote callers here too. |
3471 |
|
3472 |
* Version 3.72.10. |
3473 |
|
3474 |
* read.c (read_makefile, parse_file_seq): Fix typo __MS_DOS__ -> |
3475 |
__MSDOS__. |
3476 |
|
3477 |
* GNUmakefile (globfiles): Add glob/configure.bat. |
3478 |
(distfiles): Add configh.dos, configure.bat. |
3479 |
|
3480 |
Wed Mar 8 13:10:57 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3481 |
|
3482 |
Fixes for MS-DOS from DJ Delorie. |
3483 |
* read.c (read_makefile, parse_file_seq) [__MS_DOS__]: Don't see : |
3484 |
as separator in "C:\...". |
3485 |
* configh.dos (STDC_HEADERS): Define only if undefined. |
3486 |
(HAVE_SYS_PARAM_H): Don't define this. |
3487 |
(HAVE_STRERROR): Define this. |
3488 |
* job.c (construct_command_argv_internal) [__MSDOS__]: Fix typos. |
3489 |
|
3490 |
* Version 3.72.9. |
3491 |
|
3492 |
* main.c (decode_switches): Reset optind to 1 instead of 0. |
3493 |
|
3494 |
Tue Mar 7 17:31:06 1995 Roland McGrath <roland@geech.gnu.ai.mit.edu> |
3495 |
|
3496 |
* main.c (decode_switches): If non-option arg is "-", ignore it. |
3497 |
|
3498 |
Mon Mar 6 23:57:38 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3499 |
|
3500 |
* Version 3.72.8. |
3501 |
|
3502 |
Wed Feb 22 21:26:36 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3503 |
|
3504 |
* Version 3.72.7. |
3505 |
|
3506 |
Tue Feb 21 22:10:43 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3507 |
|
3508 |
* main.c (main): Pass missing arg to tmpnam. |
3509 |
|
3510 |
* configure.in: Check for strsignal. |
3511 |
* job.c (child_error): Use strsignal. |
3512 |
* main.c (main): Don't call signame_init #ifdef HAVE_STRSIGNAL. |
3513 |
|
3514 |
* misc.c (strerror): Fix swapped args in sprintf. |
3515 |
|
3516 |
Mon Feb 13 11:50:08 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3517 |
|
3518 |
* configure.in (CFLAGS, LDFLAGS): Don't set these variables. |
3519 |
|
3520 |
Fri Feb 10 18:44:12 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3521 |
|
3522 |
* main.c (print_version): Add 95 to copyright years. |
3523 |
|
3524 |
* Version 3.72.6. |
3525 |
|
3526 |
* job.c (start_job_command): Remember to call notice_finished_file |
3527 |
under -n when not recursing. To do this, consolidate that code |
3528 |
under the empty command case and goto there for the -n case. |
3529 |
|
3530 |
Tue Feb 7 13:36:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3531 |
|
3532 |
* make.h [! STDC_HEADERS]: Don't declare qsort. Sun headers |
3533 |
declare it int. |
3534 |
|
3535 |
Mon Feb 6 17:37:01 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3536 |
|
3537 |
* read.c (read_makefile): For bogus line starting with tab, ignore |
3538 |
it if blank after removing comments. |
3539 |
|
3540 |
* main.c: Cast results of `alloca' to `char *'. |
3541 |
* expand.c: Likewise. |
3542 |
|
3543 |
Sun Feb 5 18:35:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3544 |
|
3545 |
* Version 3.72.5. |
3546 |
|
3547 |
* configure.in: Check for mktemp. |
3548 |
* main.c (main) [! HAVE_MKTEMP]: Use tmpnam instead of mktemp. |
3549 |
|
3550 |
* configure.in (make_cv_sysconf_open_max): New check for `sysconf |
3551 |
(_SC_OPEN_MAX)'. |
3552 |
* acconfig.h: Added #undef HAVE_SYSCONF_OPEN_MAX. |
3553 |
* job.c [HAVE_SYSCONF_OPEN_MAX] (getdtablesize): Define as macro |
3554 |
using sysconf. |
3555 |
|
3556 |
Fri Jan 27 04:42:09 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3557 |
|
3558 |
* remake.c (update_file_1): When !MUST_MAKE, don't set |
3559 |
FILE->update_status to zero before calling notice_finished_file. |
3560 |
(notice_finished_file): Touch only when FILE->update_status is zero. |
3561 |
(remake_file): Set FILE->update_status to zero after not calling |
3562 |
execute_file_command and deciding to touch instead. |
3563 |
|
3564 |
Thu Jan 26 01:29:32 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3565 |
|
3566 |
* main.c (debug_signal_handler): New function; toggles debug_flag. |
3567 |
(main): Handle SIGUSR1 with that. |
3568 |
|
3569 |
Mon Jan 16 15:46:56 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3570 |
|
3571 |
* compatMakefile (realclean): Remove Info files. |
3572 |
|
3573 |
Sun Jan 15 08:23:09 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3574 |
|
3575 |
* Version 3.72.4. |
3576 |
|
3577 |
* job.c (start_job_command): Save and restore environ around vfork |
3578 |
call. |
3579 |
(search_path): Function #if 0'd out. |
3580 |
(exec_command): Use execvp instead of search_path. |
3581 |
|
3582 |
* expand.c (variable_expand): Rewrote computed variable name and |
3583 |
substitution reference handling to be simpler. First expand the |
3584 |
entire text between the parens if it contains any $s, then examine |
3585 |
the result of that for subtitution references and do no further |
3586 |
expansion while parsing them. |
3587 |
|
3588 |
* job.c (construct_command_argv_internal): Handle " quoting too, |
3589 |
when no backslash, $ or ` characters appear inside the quotes. |
3590 |
|
3591 |
* configure.in (union wait check): If WEXITSTATUS and WTERMSIG are |
3592 |
defined, just use int. |
3593 |
|
3594 |
Tue Jan 10 06:27:27 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3595 |
|
3596 |
* default.c (default_variables) [__hpux]: Remove special |
3597 |
definition of ARFLAGS. Existence of the `f' flag is not |
3598 |
consistent across HPUX versions; and one might be using GNU ar |
3599 |
anyway. |
3600 |
|
3601 |
* compatMakefile (clean): Don't remove Info files. |
3602 |
|
3603 |
* compatMakefile (check): Remove gratuitous target declaration. |
3604 |
|
3605 |
Sat Jan 7 11:38:23 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3606 |
|
3607 |
* compatMakefile (ETAGS, CTAGS): Don't use -t. |
3608 |
|
3609 |
* arscan.c (ar_name_equal) [cray]: Subtract 1 like [__hpux]. |
3610 |
|
3611 |
* main.c (decode_switches): For --help, print usage to stdout. |
3612 |
|
3613 |
Mon Dec 5 12:42:18 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3614 |
|
3615 |
* Version 3.72.3. |
3616 |
|
3617 |
* remake.c (update_file_1): Do set_command_state (FILE, |
3618 |
cs_not_started) only if old state was deps_running. |
3619 |
|
3620 |
Mon Nov 28 14:24:03 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3621 |
|
3622 |
* job.c (start_waiting_job): Use set_command_state. |
3623 |
|
3624 |
* build.template (CPPFLAGS): New variable. |
3625 |
(prefix, exec_prefix): Set from @...@. |
3626 |
(compilation loop): Pass $CPPFLAGS to compiler. |
3627 |
|
3628 |
* GNUmakefile (build.sh.in): Make it executable. |
3629 |
|
3630 |
* GNUmakefile (globfiles): Add configure.in, configure. |
3631 |
|
3632 |
* Version 3.72.2. |
3633 |
|
3634 |
* configure.in (AC_OUTPUT): Don't write glob/Makefile. |
3635 |
|
3636 |
* configure.in (AC_CHECK_SYMBOL): Use AC_DEFINE_UNQUOTED. |
3637 |
|
3638 |
* configure.in: Don't check for ranlib. |
3639 |
|
3640 |
Tue Nov 22 22:42:40 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3641 |
|
3642 |
* remake.c (notice_finished_file): Only mark also_make's as |
3643 |
updated if really ran cmds. |
3644 |
|
3645 |
Tue Nov 15 06:32:46 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3646 |
|
3647 |
* configure.in: Put dnls before random whitespace. |
3648 |
|
3649 |
Sun Nov 13 05:02:25 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3650 |
|
3651 |
* compatMakefile (CPPFLAGS): New variable, set from @CPPFLAGS@. |
3652 |
(RANLIB): Variable removed. |
3653 |
(prefix, exec_prefix): Set these from @...@. |
3654 |
(.c.o): Use $(CPPFLAGS). |
3655 |
(glob/libglob.a): Don't pass down variables to sub-make. |
3656 |
glob/Makefile should be configured properly by configure. |
3657 |
(distclean): Remove config.log and config.cache (autoconf stuff). |
3658 |
|
3659 |
Mon Nov 7 13:58:06 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3660 |
|
3661 |
* acconfig.h: Add #undef HAVE_UNION_WAIT. |
3662 |
* configure.in: Converted to Autoconf v2. |
3663 |
* dir.c: Test HAVE_DIRENT_H, HAVE_SYS_DIR_H, HAVE_NDIR_H instead |
3664 |
of DIRENT, SYSDIR, NDIR. |
3665 |
* build.sh.in (prefix, exec_prefix): Set these from @...@. |
3666 |
(CPPFLAGS): New variable, set from @CPPFLAGS@. |
3667 |
(compiling loop): Pass $CPPFLAGS before $CFLAGS. |
3668 |
* install.sh: File renamed to install-sh. |
3669 |
|
3670 |
* main.c (define_makeflags): When no flags, set WORDS to zero. |
3671 |
|
3672 |
Sun Nov 6 18:34:01 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3673 |
|
3674 |
* Version 3.72.1. |
3675 |
|
3676 |
* main.c (define_makeflags): Terminate properly when FLAGSTRING is |
3677 |
empty. |
3678 |
|
3679 |
Fri Nov 4 16:02:51 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3680 |
|
3681 |
* Version 3.72. |
3682 |
|
3683 |
Tue Nov 1 01:18:10 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3684 |
|
3685 |
* Version 3.71.5. |
3686 |
|
3687 |
* job.c (start_job_command): When ARGV is nil, only set |
3688 |
update_state and call notice_finished_file if job_next_command |
3689 |
returns zero. |
3690 |
|
3691 |
* job.c (start_job_command): Call notice_finished_file for empty |
3692 |
command line. |
3693 |
|
3694 |
Thu Oct 27 02:02:45 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3695 |
|
3696 |
* file.c (snap_deps): Set COMMANDS_SILENT for .SILENT, not |
3697 |
COMMANDS_NOERROR. |
3698 |
|
3699 |
Wed Oct 26 02:14:10 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3700 |
|
3701 |
* Version 3.71.4. |
3702 |
|
3703 |
Tue Oct 25 22:49:24 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3704 |
|
3705 |
* file.c (snap_deps): Set command_flags bits in all :: entries. |
3706 |
|
3707 |
Mon Oct 24 18:47:50 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3708 |
|
3709 |
* make.h (posix_pedantic): Declare it. |
3710 |
* main.c (main): Move checks .IGNORE, .SILENT, .POSIX to |
3711 |
snap_deps. |
3712 |
* file.c (snap_deps): Check .IGNORE, .SILENT, .POSIX here instead |
3713 |
of in main. If .IGNORE has deps, OR COMMANDS_NOERROR into their |
3714 |
command_flags and don't set -i. Likewise .SILENT. |
3715 |
* job.c (start_job_command): In FLAGS initialization, OR in |
3716 |
CHILD->file->command_flags. |
3717 |
* file.h (struct file): New member `command_flags'. |
3718 |
|
3719 |
Sun Oct 16 01:01:51 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3720 |
|
3721 |
* main.c (switches): Bump flag values for --no-print-directory and |
3722 |
--warn-undefined-variables, so neither is 1 (which indicates a |
3723 |
nonoption argument). |
3724 |
|
3725 |
Sat Oct 15 23:39:48 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3726 |
|
3727 |
* main.c (main): Add missing code in .IGNORE test. |
3728 |
|
3729 |
Mon Oct 10 04:09:03 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3730 |
|
3731 |
* variable.c (define_automatic_variables): Define +D and +F. |
3732 |
|
3733 |
Sat Oct 1 04:07:48 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3734 |
|
3735 |
* main.c (main): Define hidden automatic variable with command |
3736 |
vars, and MAKEOVERRIDES to a reference to that. |
3737 |
(define_makeflags): If posix_pedantic, write a reference to that |
3738 |
instead. |
3739 |
|
3740 |
Thu Sep 29 00:14:26 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3741 |
|
3742 |
* main.c (posix_pedantic): New variable. |
3743 |
(main): Set posix_pedantic if .POSIX is a target. |
3744 |
Fix .IGNORE and .SILENT checks to require is_target. |
3745 |
|
3746 |
* commands.c (set_file_variables): Define new automatic variable |
3747 |
$+, like $^ but before calling uniquize_deps. |
3748 |
|
3749 |
* job.c (reap_children): Call delete_child_targets for non-signal |
3750 |
error if .DELETE_ON_ERROR is a target. |
3751 |
|
3752 |
Tue Sep 27 01:57:14 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3753 |
|
3754 |
* Version 3.71.3. |
3755 |
|
3756 |
Mon Sep 26 18:16:55 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3757 |
|
3758 |
* job.c (reap_children): Don't change C->file->command_state when |
3759 |
dying. Test it only after calling start_job_command for a new |
3760 |
command line. When no more cmds, just set C->file->update_status. |
3761 |
(start_job_command): When the last line is empty or under -n, set |
3762 |
C->file->update_status. |
3763 |
(start_waiting_job): Grok cs_not_started after start_job_command |
3764 |
as success. |
3765 |
(new_job): Set C->file->update_status when there are no cmds. |
3766 |
(job_next_command): When out of lines, don't set |
3767 |
CHILD->file->update_status or CHILD->file->command_state. |
3768 |
|
3769 |
* main.c (quote_as_word): Renamed from shell_quote. Take new arg; |
3770 |
if nonzero, also double $s. |
3771 |
(main): Define MAKEOVERRIDES from command_variables here. |
3772 |
(define_makeflags): Don't use command_variables here; instead write a |
3773 |
reference $(MAKEOVERRIDES) in MAKEFLAGS. Make vars recursive. |
3774 |
|
3775 |
* dir.c [__MSDOS__]: Fixed typo. |
3776 |
|
3777 |
* vpath.c (selective_vpath_search): Reset EXISTS when stat fails. |
3778 |
|
3779 |
Sat Sep 10 03:01:35 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3780 |
|
3781 |
* remake.c: Include <assert.h> and use assert instead of printfs |
3782 |
and abort. |
3783 |
|
3784 |
* main.c (decode_switches): Loop until optind hits ARGC, not just |
3785 |
until getopt_long returns EOF. Initialize C to zero before loop; |
3786 |
in loop if C is EOF, set optarg from ARGV[optind++], else call |
3787 |
getopt_long. |
3788 |
(decode_env_switches): Use variable_expand instead of |
3789 |
allocated_variable_expand. Allocate a fresh buffer to copy split |
3790 |
words into; scan characters by hand to break words and |
3791 |
debackslashify. |
3792 |
(shell_quote): New function. |
3793 |
(define_makeflags): Allocate doubled space for switch args, and command |
3794 |
variable names and values; use shell_quote to quote those things. |
3795 |
|
3796 |
Fri Sep 9 01:37:47 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3797 |
|
3798 |
* Version 3.71.2. |
3799 |
|
3800 |
* acconfig.h: Add HAVE_SYS_SIGLIST and HAVE__SYS_SIGLIST. |
3801 |
|
3802 |
* main.c (decode_switches): The non-option return from getopt is |
3803 |
1, not 0. |
3804 |
(command_variables): New type and variable. |
3805 |
(decode_switches, decode_env_switches): After making a variable |
3806 |
definition, record the struct variable pointer in the |
3807 |
command_variables chain. |
3808 |
(define_makeflags): If ALL, write variable definitions for |
3809 |
command_variables. |
3810 |
|
3811 |
* main.c (other_args): Variable removed. |
3812 |
(goals, lastgoal): New static variables (moved from auto in main). |
3813 |
(main): Don't process OTHER_ARGS at all. |
3814 |
Don't set variable MAKEOVERRIDES at all; define MAKE to just |
3815 |
$(MAKE_COMMAND). |
3816 |
(init_switches): Prepend a - {return in order} instead of a + |
3817 |
{require order}. |
3818 |
(decode_switches): Don't set OTHER_ARGS at all. |
3819 |
Grok '\0' return from getopt_long as non-option argument; try |
3820 |
variable definition and (if !ENV) enter goal targets here. |
3821 |
(decode_env_switches): Use allocated_variable_expand to store value. |
3822 |
Use find_next_token to simplify word-splitting loop. Don't |
3823 |
prepend a dash to uninterpreted value. Instead, if split into |
3824 |
only one word, try variable definition and failing that prepend a |
3825 |
dash to the word and pass it to decode_switches as a single arg. |
3826 |
|
3827 |
Wed Sep 7 03:02:46 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3828 |
|
3829 |
* remake.c (notice_finished_file): Only recheck modtimes if |
3830 |
FILE->command_state was cs_running on entry (meaning the commands |
3831 |
actually just ran). |
3832 |
(update_file_1): Whenever we set FILE->update_status, call |
3833 |
notice_finished_file instead of just set_command_state. |
3834 |
* job.c (start_job_command): Whenever we set |
3835 |
CHILD->file->update_status, call notice_finished_file instead of |
3836 |
just set_command_state. |
3837 |
|
3838 |
Tue Sep 6 19:13:54 1994 Roland McGrath <roland@geech.gnu.ai.mit.edu> |
3839 |
|
3840 |
* default.c: Add missing ". |
3841 |
|
3842 |
* job.c: Changed all assignments of command_state members to calls |
3843 |
to set_command_state. |
3844 |
* remake.c: Likewise. |
3845 |
* file.c (set_command_state): New function. |
3846 |
* file.h: Declare set_command_state. |
3847 |
|
3848 |
* main.c (init_switches): Put a + first in options. |
3849 |
|
3850 |
Mon Jul 25 18:07:46 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu> |
3851 |
|
3852 |
Merge MSDOS/GO32 port from DJ Delorie <dj@ctron.com>. |
3853 |
* vpath.c: Changed all uses of ':' to PATH_SEPARATOR_CHAR. |
3854 |
* main.c (directory_before_chdir): New variable, moved out of main |
3855 |
(was local). |
3856 |
(main) [__MSDOS__]: Look for \ or : to delimit last component of |
3857 |
PROGRAM. Don't frob ARGV[0] before setting MAKE_COMMAND variable. |
3858 |
(die): Change back to `directory_before_chdir' before dying. |
3859 |
* make.h (PATH_SEPARATOR_CHAR): New macro; differing defns for |
3860 |
[__MSDOS__] and not. |
3861 |
* job.c [__MSDOS__]: Include <process.h>. |
3862 |
[__MSDOS__] (dos_pid, dos_status, dos_bname, dos_bename, |
3863 |
dos_batch_file): New variables. |
3864 |
(reap_children) [__MSDOS__]: Don't call wait; just examine those vars. |
3865 |
(unblock_sigs) [__MSDOS__]: Do nothing. |
3866 |
(start_job_command) [__MSDOS__]: Use spawnvpe instead of vfork & exec. |
3867 |
(load_too_high) [__MSDOS__]: Always return true. |
3868 |
(search_path) [__MSDOS__]: Check for : or / in FILE to punt. |
3869 |
Use PATH_SEPARATOR_CHAR instead of ':'. |
3870 |
(construct_command_argv_internal) [__MSDOS__]: Wholly different |
3871 |
values for sh_chars and sh_cmds. Wholly new code to handle shell |
3872 |
scripts. |
3873 |
* function.c (expand_function: `shell') [__MSDOS__]: Wholly new |
3874 |
implementation. |
3875 |
* dir.c [__MSDOS__] (dosify): New function. |
3876 |
(dir_contents_file_exists_p) [__MSDOS__]: Call it on FILENAME and |
3877 |
process the result instead of FILENAME itself. |
3878 |
(file_impossible_p) [__MSDOS__]: Likewise. |
3879 |
* default.c [__MSDOS__]: Define GCC_IS_NATIVE. |
3880 |
(default_suffix_rules) [__MSDOS__]: Use `y_tab.c' instead of `y.tab.c'. |
3881 |
(default_variables) [GCC_IS_NATIVE]: Set CC and CXX to `gcc', YACC to |
3882 |
`bison -y', and LEX to `flex'. |
3883 |
* configure.bat, configh.dos: New files. |
3884 |
* commands.c (fatal_error_signal) [__MSDOS__]: Just remove |
3885 |
intermediates and exit. |
3886 |
|
3887 |
* commands.c (set_file_variables): Add parens in length |
3888 |
computation in .SUFFIXES dep loop to quiet compiler warning. From |
3889 |
Jim Meyering. |
3890 |
|
3891 |
* read.c (read_makefile): Free FILENAME if we allocated it. From |
3892 |
Jim Meyering. |
3893 |
|
3894 |
Mon Jul 4 17:47:08 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3895 |
|
3896 |
* misc.c (safe_stat): New function, EINTR-safe wrapper around stat. |
3897 |
* vpath.c (selective_vpath_search): Use safe_stat in place of stat. |
3898 |
* read.c (construct_include_path): Use safe_stat in place of stat. |
3899 |
* job.c (search_path): Use safe_stat in place of stat. |
3900 |
* dir.c (find_directory): Use safe_stat in place of stat. |
3901 |
* commands.c (delete_target): Use safe_stat in place of stat. |
3902 |
* arscan.c (ar_member_touch) [EINTR]: Do EINTR looping around fstat. |
3903 |
* remake.c (name_mtime): Use safe_stat in place of stat. |
3904 |
(touch_file) [EINTR]: Do EINTR looping around fstat. |
3905 |
|
3906 |
Fri Jun 24 05:40:24 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3907 |
|
3908 |
* read.c (read_makefile): Check for a shell command first, and |
3909 |
then strip leading tabs before further checking if it's not a |
3910 |
shell command line. |
3911 |
|
3912 |
* make.h [__arm]: Undefine POSIX. |
3913 |
[!__GNU_LIBRARY__ && !POSIX && !_POSIX_VERSION]: Don't declare system |
3914 |
functions that return int. |
3915 |
|
3916 |
* job.c (construct_command_argv_internal): After swallowing a |
3917 |
backslash-newline combination, if INSTRING is set goto string_char |
3918 |
(new label) for normal INSTRING handling code. |
3919 |
|
3920 |
Sat Jun 4 01:11:20 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
3921 |
|
3922 |
* configure.in: Don't check for sys_siglist and _sys_siglist with |
3923 |
AC_HAVE_FUNCS. Instead use two AC_COMPILE_CHECKs. |
3924 |
|
3925 |
Mon May 23 18:20:38 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3926 |
|
3927 |
* Version 3.71.1 released. |
3928 |
|
3929 |
* make.h [!__GNU_LIBRARY__ && !POSIX]: Also test #ifndef |
3930 |
_POSIX_VERSION for these declarations. |
3931 |
|
3932 |
* misc.c [GETLOADAVG_PRIVILEGED] [POSIX]: Remove bogus #ifndefs |
3933 |
around #undefs of HAVE_SETREUID and HAVE_SETREGID. |
3934 |
|
3935 |
Sat May 21 16:26:38 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3936 |
|
3937 |
* Version 3.71 released. |
3938 |
|
3939 |
* misc.c [GETLOADAVG_PRIVILEGED] [POSIX]: Don't test [HAVE_SETUID] |
3940 |
and [HAVE_SETGID]. Every system has those, and configure doesn't |
3941 |
check for them. |
3942 |
|
3943 |
* make.h [_POSIX_VERSION]: Don't #define POSIX #ifdef ultrix. |
3944 |
|
3945 |
* compatMakefile (loadavg): Depend on and use loadavg.c instead of |
3946 |
getloadavg.c. |
3947 |
(loadavg.c): Link or copy it from getloadavg.c. |
3948 |
(distclean): Remove loadavg.c. |
3949 |
|
3950 |
Mon May 16 22:59:04 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3951 |
|
3952 |
* Version 3.70.4. |
3953 |
|
3954 |
* misc.c [GETLOADAVG_PRIVILEGED] [! POSIX]: Undefine HAVE_SETEUID |
3955 |
and HAVE_SETEGID. |
3956 |
|
3957 |
* default.c (default_terminal_rules): In SCCS rules, put |
3958 |
$(SCCS_OUTPUT_OPTION) before $<. On some systems -G is grokked |
3959 |
only before the file name. |
3960 |
* configure.in (SCCS_GET_MINUS_G check): Put -G flag before file name. |
3961 |
|
3962 |
Tue May 10 16:27:38 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3963 |
|
3964 |
* job.c (construct_command_argv_internal): Swallow |
3965 |
backslash-newline combinations inside '' strings too. |
3966 |
|
3967 |
Thu May 5 04:15:10 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3968 |
|
3969 |
* read.c (do_define): Call collapse_continuations on each line |
3970 |
before all else. |
3971 |
|
3972 |
Mon Apr 25 19:32:02 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
3973 |
|
3974 |
* job.c (construct_command_argv_internal): Notice newline inside |
3975 |
'' string when RESTP is non-null. |
3976 |
|
3977 |
Fri Apr 22 17:33:30 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
3978 |
|
3979 |
* Version 3.70.3. |
3980 |
|
3981 |
* remake.c (update_goal_chain): Reset FILE to G->file after the |
3982 |
double-colon loop so it is never null for following code. |
3983 |
|
3984 |
* read.c (read_makefile): Fix `override define' parsing to skip |
3985 |
whitespace after `define' properly. |
3986 |
|
3987 |
* compatMakefile (srcdir): Define as @srcdir@; don't reference |
3988 |
$(VPATH). |
3989 |
(glob/Makefile): New target. |
3990 |
|
3991 |
Thu Apr 21 16:16:55 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
3992 |
|
3993 |
* Version 3.70.2. |
3994 |
|
3995 |
* misc.c (remove_comments): Use find_char_unquote. |
3996 |
* make.h (find_char_unquote): Declare it. |
3997 |
* read.c (find_char_unquote): New function, generalized from |
3998 |
find_percent. |
3999 |
(find_percent, find_semicolon, parse_file_seq): Use that. |
4000 |
|
4001 |
Wed Apr 20 18:42:39 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4002 |
|
4003 |
* implicit.c (pattern_search): Always allocate new storage for |
4004 |
FILE->stem. It is not safe to store STEM's address because it |
4005 |
might be auto storage. |
4006 |
|
4007 |
* configure.in: Check for seteuid and setegid. |
4008 |
* misc.c [HAVE_SETEUID]: Declare seteuid. |
4009 |
[HAVE_SETEGID]: Declare setegid. |
4010 |
(make_access, user_access) [HAVE_SETEUID]: Use seteuid. |
4011 |
[HAVE_SETEGID]: Use setegid. |
4012 |
|
4013 |
* remake.c (update_goal_chain): Set STATUS to FILE->update_status, |
4014 |
to preserve whether it's 2 for error or 1 for -q trigger. When |
4015 |
STATUS gets nonzero and -q is set, always stop immediately. |
4016 |
* main.c (main, decode_switches): Die with 2 for errors. |
4017 |
(main): Accept 2 return from update_goal_chain and die with that. |
4018 |
* misc.c (fatal, makefile_fatal): Die with 2; 1 is reserved for -q |
4019 |
answer. |
4020 |
* job.c (reap_children): Die with 2 for error. |
4021 |
(start_job_command): Set update_status to 2 for error. Set it to |
4022 |
1 when we would run a command and question_flag is set. |
4023 |
|
4024 |
* read.c (read_makefile): Don't mark makefiles as precious. Just |
4025 |
like other targets, they can be left inconsistent and in need of |
4026 |
remaking by aborted commands. |
4027 |
|
4028 |
* read.c (read_makefile): Write no error msg for -include file. |
4029 |
|
4030 |
Tue Apr 5 05:22:19 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4031 |
|
4032 |
* commands.c (fatal_error_signal): Don't unblock signals. |
4033 |
|
4034 |
* file.h (struct file): Change member `double_colon' from flag to |
4035 |
`struct file *'. |
4036 |
* read.c (record_files): Set double_colon pointer instead of flag. |
4037 |
* main.c (main): When disqualifying makefiles for updating, use |
4038 |
double_colon pointer to find all entries for a file. |
4039 |
* file.c (enter_file): If there is already a double-colon entry |
4040 |
for the file, set NEW->double_colon to that pointer. |
4041 |
(file_hash_enter): Use FILE->double_colon to find all entries to |
4042 |
set name. |
4043 |
* remake.c (update_goal_chain): Do inner loop on double-colon entries. |
4044 |
(update_file): Use FILE->double_colon pointer to find all entries. |
4045 |
(f_mtime): Likewise. |
4046 |
(notice_finished_file): Propagate mtime change to all entries. |
4047 |
|
4048 |
* variable.c (try_variable_definition): Return after abort. |
4049 |
|
4050 |
Fri Apr 1 18:44:15 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4051 |
|
4052 |
* read.c (read_makefile): Remove unused variable. |
4053 |
(parse_file_seq): When removing an elt that is just `)', properly |
4054 |
fix up the previous elt's next pointer. |
4055 |
|
4056 |
Mon Mar 28 18:31:49 1994 Roland McGrath (roland@mole.gnu.ai.mit.edu) |
4057 |
|
4058 |
* configure.in: Do AC_SET_MAKE. |
4059 |
* GNUmakefile (Makefile.in): Edit MAKE assignment into @SET_MAKE@. |
4060 |
|
4061 |
Fri Mar 4 00:02:32 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4062 |
|
4063 |
* function.c (subst_expand): If BY_WORD or SUFFIX_ONLY is set and |
4064 |
the search string is the empty string, find a match at the end of |
4065 |
each word (using end_of_token in place of sindex). |
4066 |
|
4067 |
* misc.c (end_of_token): Don't treat backslashes specially; you |
4068 |
can no longer escape blanks with backslashes in export, unexport, |
4069 |
and vpath. This was never documented anyway. |
4070 |
|
4071 |
Thu Mar 3 23:53:46 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4072 |
|
4073 |
* read.c (read_makefile): Variable name for `define' is not just |
4074 |
first token; use whole rest of line and strip trailing blanks. |
4075 |
|
4076 |
Wed Feb 16 16:03:45 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4077 |
|
4078 |
* Version 3.70.1. |
4079 |
|
4080 |
* read.c (read_makefile): Add -d msg stating args. |
4081 |
|
4082 |
* read.c (read_makefile): Use isspace to skip over leading |
4083 |
whitespace, and explicitly avoid skipping over tabs. Don't want |
4084 |
to skip just spaces though; formfeeds et al should be skipped. |
4085 |
|
4086 |
* default.c (default_variables) [__hpux]: Add f in ARFLAGS. |
4087 |
|
4088 |
* arscan.c (ar_name_equal) [__hpux]: Subtract 2 instead of 1 from |
4089 |
sizeof ar_name for max length to compare. |
4090 |
|
4091 |
* misc.c [GETLOADAVG_PRIVILEGED] [POSIX]: Undefine HAVE_SETREUID |
4092 |
#ifdef HAVE_SETUID; likewise HAVE_SETREGID and HAVE_SETGID. |
4093 |
|
4094 |
* main.c (main): Call user_access after setting `program', in case |
4095 |
it needs to use it in an error message. |
4096 |
|
4097 |
* read.c (read_makefile): Ignore an empty line starting with a tab. |
4098 |
|
4099 |
Thu Feb 10 21:45:31 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4100 |
|
4101 |
* configure.in (AC_SYS_SIGLIST_DECLARED): Use this instead of |
4102 |
AC_COMPILE_CHECK that is now its contents. |
4103 |
|
4104 |
Fri Feb 4 16:28:54 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4105 |
|
4106 |
* make.h: #undef strerror after #include <string.h>. |
4107 |
[! ANSI_STRING]: Declare strerror. |
4108 |
|
4109 |
Thu Feb 3 02:21:22 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4110 |
|
4111 |
* misc.c (strerror): #undef any macro before function definition. |
4112 |
|
4113 |
Mon Jan 31 19:07:23 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4114 |
|
4115 |
* variable.c (try_variable_definition): Calculate BEG before loop |
4116 |
to strip blanks by decrementing END. Don't decr END to before BEG. |
4117 |
|
4118 |
* read.c (read_makefile): Skip over leading space characters, but |
4119 |
not tabs, after removing continuations and comments (it used to |
4120 |
use isspace). |
4121 |
|
4122 |
Tue Jan 25 16:45:05 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4123 |
|
4124 |
* variable.c (define_automatic_variables): In $(@D) et al, use |
4125 |
patsubst to remove trailing slash. |
4126 |
|
4127 |
* commands.c (delete_target): New function, broken out of |
4128 |
delete_child_targets. Check for archive members and give special msg. |
4129 |
(delete_child_targets): Use delete_target. |
4130 |
|
4131 |
Mon Jan 17 17:03:22 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4132 |
|
4133 |
* default.c (default_suffix_rules): Use $(TEXI2DVI_FLAGS) in |
4134 |
texi2dvi rules. Use $(MAKEINFO_FLAGS) in makeinfo rules. |
4135 |
|
4136 |
Tue Jan 11 19:29:55 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4137 |
|
4138 |
* GNUmakefile (tarfiles): Omit make-doc. |
4139 |
(make-$(version).tar): Include make.info*. |
4140 |
|
4141 |
Fri Jan 7 16:27:00 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4142 |
|
4143 |
* compatMakefile (configure, config.h.in): Comment out rules. |
4144 |
|
4145 |
Thu Jan 6 18:08:08 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4146 |
|
4147 |
* compatMakefile (binprefix, manprefix): New variables. |
4148 |
(instname): Variable removed. |
4149 |
(install): Use $({bin,man}prefix)make in place of $(instname). |
4150 |
File targets likewised renamed. |
4151 |
|
4152 |
Mon Jan 3 17:50:25 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4153 |
|
4154 |
* Version 3.70 released. |
4155 |
|
4156 |
Thu Dec 23 14:46:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4157 |
|
4158 |
* Version 3.69.3. |
4159 |
|
4160 |
* read.c (parse_file_seq): Inside multi-word archive ref |
4161 |
translation loop, check NEW1==0 at end and break out of the loop. |
4162 |
|
4163 |
* GNUmakefile (make-$(version).tar): Distribute install.sh. |
4164 |
* install.sh: New file. |
4165 |
|
4166 |
* configure.in (SCCS_GET_MINUS_G check): Put redirection for admin |
4167 |
cmds outside subshell parens, to avoid "command not found" msgs |
4168 |
from the shell. |
4169 |
|
4170 |
Wed Dec 22 17:00:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4171 |
|
4172 |
* configure.in (SCCS_GET_MINUS_G check): Put -G flag last in get cmd. |
4173 |
Redirect output & error from get to /dev/null. |
4174 |
Fix reversed sense of test. |
4175 |
|
4176 |
Fri Dec 17 15:31:36 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4177 |
|
4178 |
* configure.in (SCCS_GET_MINUS_G check): Use parens instead of |
4179 |
braces inside if condition command; some shells lose. |
4180 |
|
4181 |
Thu Dec 16 15:10:23 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4182 |
|
4183 |
* Version 3.69.2. |
4184 |
|
4185 |
* arscan.c [M_UNIX]: Move #undef M_XENIX for PORTAR stuff. |
4186 |
(PORTAR) [M_XENIX]: Define to 0 instead of 1. |
4187 |
|
4188 |
* main.c (define_makeflags): Only export MAKEFLAGS if !ALL. |
4189 |
|
4190 |
Wed Dec 15 17:47:48 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4191 |
|
4192 |
* main.c (main): Cast result of pointer arith to unsigned int |
4193 |
before passing to define_variable for envars. Matters when |
4194 |
sizeof(unsigned)!=sizeof(ptrdiff_t). |
4195 |
|
4196 |
Tue Dec 14 14:21:16 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4197 |
|
4198 |
* configure.in: Add new check for SCCS_GET_MINUS_G. |
4199 |
* config.h.in: Add #undef SCCS_GET_MINUS_G. |
4200 |
* default.c (default_terminal_rules): Use `$(SCCS_OUTPUT_OPTION)' in |
4201 |
place of `-G $@' in SCCS commands. |
4202 |
(default_variables) [SCCS_GET_MINUS_G]: Define SCCS_OUTPUT_OPTION |
4203 |
to "-G$@". |
4204 |
|
4205 |
* configure.in (AC_OUTPUT): Put touch stamp-config in second arg |
4206 |
(so it goes in config.status), rather than afterward. |
4207 |
|
4208 |
* ar.c (ar_member_date): Don't call enter_file on the archive file |
4209 |
if it doesn't exist (by file_exists_p). |
4210 |
|
4211 |
* compatMakefile ($(infodir)/make.info): Replace `$$d/foo.info' |
4212 |
with `$$dir/make.info' in install-info invocation (oops). |
4213 |
|
4214 |
* vpath.c (construct_vpath_list): Only set LASTPATH set PATH when |
4215 |
we do not unlink and free PATH. |
4216 |
|
4217 |
* file.c (print_file_data_base): Fix inverted calculation for |
4218 |
average files per hash bucket. |
4219 |
|
4220 |
* read.c (readline): When we see a NUL, give only a warning and |
4221 |
synthesize a newline to terminate the building line (used to |
4222 |
fatal). Move fgets call into the loop condition, and after the |
4223 |
loop test ferror (used to test !feof in the loop). |
4224 |
|
4225 |
Fri Dec 3 16:40:31 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4226 |
|
4227 |
* configure.in: Check for strerror in AC_HAVE_FUNCS. |
4228 |
|
4229 |
Thu Dec 2 15:37:50 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4230 |
|
4231 |
Differentiate different flavors of missing makefile error msgs, |
4232 |
removing gratuitous `fopen: ' and giving caller for included makefiles. |
4233 |
* misc.c [! HAVE_STRERROR]: Define our own strerror here. |
4234 |
(perror_with_name, pfatal_with_name): Use strerror instead of |
4235 |
replicating its functionality. |
4236 |
* read.c (read_makefile): Return int instead of void. |
4237 |
(read_all_makefiles, read_makefile): Change callers to notice zero |
4238 |
return and give error msg. |
4239 |
|
4240 |
Thu Nov 11 11:47:36 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4241 |
|
4242 |
* Version 3.69.1. |
4243 |
|
4244 |
* default.c: Put `-G $@' before $< in SCCS cmds. |
4245 |
|
4246 |
Wed Nov 10 06:06:14 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4247 |
|
4248 |
* read.c (read_makefile): After trying a variable defn, notice if |
4249 |
the line begins with a tab, and diagnose an error. |
4250 |
|
4251 |
Sun Nov 7 08:07:37 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4252 |
|
4253 |
* Version 3.69. |
4254 |
|
4255 |
Wed Nov 3 06:54:33 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4256 |
|
4257 |
* Version 3.68.10. |
4258 |
|
4259 |
* implicit.c (try_implicit_rule): Look for a normal rule before an |
4260 |
archive rule. |
4261 |
|
4262 |
Fri Oct 29 16:45:28 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4263 |
|
4264 |
* function.c (expand_function: `sort'): Double NWORDS when it |
4265 |
overflows, instead of adding five. |
4266 |
|
4267 |
* compatMakefile (clean): Remove loadavg. |
4268 |
|
4269 |
Wed Oct 27 17:58:33 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4270 |
|
4271 |
* Version 3.68.9. |
4272 |
|
4273 |
* file.h (NEW_MTIME): Define new macro. |
4274 |
* main.c (main): Set time of NEW_FILES to NEW_MTIME, not to |
4275 |
current time returned from system. Removed variable NOW. |
4276 |
* remake.c (notice_finished_file): Use NEW_MTIME in place of |
4277 |
current time here too. |
4278 |
|
4279 |
Tue Oct 26 19:45:35 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4280 |
|
4281 |
* Version 3.68.8. |
4282 |
|
4283 |
* remake.c (update_file_1): Don't clear MUST_MAKE when FILE has no |
4284 |
cmds and !DEPS_CHANGED unless also !NOEXIST. |
4285 |
|
4286 |
Mon Oct 25 15:25:21 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4287 |
|
4288 |
* read.c (parse_file_seq): When converting multi-word archive |
4289 |
refs, ignore a word beginning with a '('. |
4290 |
|
4291 |
Fri Oct 22 02:53:38 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4292 |
|
4293 |
* configure.in: Check for sys/timeb.h. |
4294 |
* make.h [HAVE_SYS_TIMEB_H]: Test this before including it. |
4295 |
|
4296 |
Thu Oct 21 16:48:17 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4297 |
|
4298 |
* Version 3.68.7. |
4299 |
|
4300 |
* rule.c (convert_suffix_rule): New local TARGPERCENT. Set it to |
4301 |
TARGNAME+1 for "(%.o)", to TARGNAME for "%.?". Use it in place of |
4302 |
TARGNAME to initialize PERCENTS[0]. |
4303 |
|
4304 |
Mon Oct 18 06:49:35 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4305 |
|
4306 |
* configure.in: Use AC_HAVE_HEADERS(unistd.h) instead of AC_UNISTD_H. |
4307 |
Remove AC_USG; it is no longer used. |
4308 |
|
4309 |
* file.c (print_file): New function, broken out of |
4310 |
print_file_data_base. |
4311 |
(print_file_data_base): Call it. |
4312 |
* rule.c (print_rule): New function, broken out of |
4313 |
print_rule_data_base. |
4314 |
(print_rule_data_base): Call it. |
4315 |
|
4316 |
Thu Oct 14 14:54:03 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4317 |
|
4318 |
* default.c (install_default_suffix_rules): New function, broken |
4319 |
out of install_default_implicit_rules. |
4320 |
(install_default_implicit_rules): Move suffix rule code there. |
4321 |
* make.h: Declare install_default_suffix_rules. |
4322 |
* main.c (main): Call install_default_suffix_rules before reading |
4323 |
makefiles. Move convert_to_pattern call before |
4324 |
install_default_implicit_rules. |
4325 |
|
4326 |
* job.h (struct child): Make `pid' member type `pid_t' instead of |
4327 |
`int'. |
4328 |
|
4329 |
* compatMakefile (RANLIB): New variable, set by configure. |
4330 |
(glob/libglob.a): Pass RANLIB value down to submake. |
4331 |
|
4332 |
Fixes for SCO 3.2 "devsys 4.2" from pss@tfn.com (Peter Salvitti). |
4333 |
* make.h: Include <sys/timeb.h> before <time.h> for SCO lossage. |
4334 |
* job.c [! getdtablesize] [! HAVE_GETDTABLESIZE]: If NOFILE is not |
4335 |
defined but NOFILES_MAX is, define it to be that. |
4336 |
|
4337 |
Mon Oct 11 19:47:33 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4338 |
|
4339 |
* GNUmakefile (make-$(version).tar): Depend on acconfig.h, so it |
4340 |
is distributed. |
4341 |
|
4342 |
Sun Oct 3 15:15:33 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4343 |
|
4344 |
* default.c (default_terminal_rules): Add `-G $@' to SCCS get cmds. |
4345 |
|
4346 |
Tue Sep 28 14:18:20 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4347 |
|
4348 |
* job.c (construct_command_argv_internal): Add ^ to SH_CHARS; it |
4349 |
is another symbol for | in some shells. |
4350 |
* main.c (main): Add it to CMD_DEFS quoting list as well. |
4351 |
|
4352 |
Mon Sep 20 18:05:24 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4353 |
|
4354 |
* job.c (construct_command_argv_internal): Remove '=' from |
4355 |
SH_CHARS. Only punt on '=' if it is unquoted in a word before the |
4356 |
first word without an unquoted '='. |
4357 |
|
4358 |
* main.c (define_makeflags): Set v_export for MAKEFLAGS. |
4359 |
|
4360 |
Fri Sep 17 00:37:18 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4361 |
|
4362 |
* remake.c (update_file_1): Use .DEFAULT cmds for phony targets. |
4363 |
|
4364 |
* make.h [_AIX && _POSIX_SOURCE]: Define POSIX. |
4365 |
|
4366 |
* commands.c (delete_child_targets): Don't delete phony files. |
4367 |
|
4368 |
* job.c (start_job_command): Set COMMANDS_RECURSE in FLAGS if we |
4369 |
see a `+' at the beginning of the command line. |
4370 |
|
4371 |
Thu Sep 9 17:57:14 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4372 |
|
4373 |
* Version 3.68.6. |
4374 |
|
4375 |
Wed Sep 8 20:14:21 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4376 |
|
4377 |
* main.c (define_makeflags): Define MAKEFLAGS with o_file, not o_env. |
4378 |
|
4379 |
Mon Aug 30 12:31:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4380 |
|
4381 |
* expand.c (variable_expand): Fatal on an unterminated reference. |
4382 |
|
4383 |
Thu Aug 19 16:27:53 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4384 |
|
4385 |
* Version 3.68.5. |
4386 |
|
4387 |
* variable.c (define_automatic_variables): Define new o_default |
4388 |
variable `MAKE_VERSION' from version_string and remote_description. |
4389 |
|
4390 |
* make.h (version_string, remote_description): Declare these here. |
4391 |
* main.c: Don't declare version_string. |
4392 |
(print_version): Don't declare remote_description. |
4393 |
|
4394 |
Wed Aug 18 15:01:24 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4395 |
|
4396 |
* read.c (read_makefile): Free space pointed to by CONDITIONALS |
4397 |
before restoring the old pointer. |
4398 |
|
4399 |
Mon Aug 16 17:33:36 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4400 |
|
4401 |
* compatMakefile ($(objs)): Depend on config.h. |
4402 |
|
4403 |
* GNUmakefile (build.sh.in): Depend on compatMakefile. |
4404 |
|
4405 |
* configure.in: Touch stamp-config after AC_OUTPUT. |
4406 |
|
4407 |
Fri Aug 13 16:04:22 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4408 |
|
4409 |
* Version 3.68.4. |
4410 |
|
4411 |
Thu Aug 12 17:18:57 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4412 |
|
4413 |
* make.h: Include <config.h> instead of "config.h". |
4414 |
|
4415 |
Wed Aug 11 02:35:25 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4416 |
|
4417 |
* main.c (main): Make all variables interned from ENVP be v_export. |
4418 |
* variable.c (try_variable_definition): In v_default case, don't |
4419 |
check for an o_file variable that `getenv' finds. |
4420 |
|
4421 |
* job.c (reap_children): New local variable ANY_LOCAL; set it |
4422 |
while setting ANY_REMOTE. If !ANY_LOCAL, don't wait for local kids. |
4423 |
|
4424 |
* main.c (main): Don't call decode_env_switches on MFLAGS. DOC THIS. |
4425 |
|
4426 |
* function.c (expand_function): #if 0 out freeing of ENVP since it |
4427 |
is environ. |
4428 |
|
4429 |
Mon Aug 9 17:37:20 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4430 |
|
4431 |
* Version 3.68.3. |
4432 |
|
4433 |
* remote-stub.c (remote_status): Set errno to ECHILD before return. |
4434 |
* job.c (reap_children): Scan the chain for remote children and |
4435 |
never call remote_status if there are none. |
4436 |
|
4437 |
* function.c (expand_function: `shell'): #if 0 out calling |
4438 |
target_environment; just set ENVP to environ instead. |
4439 |
|
4440 |
* job.c (reap_children): Check for negative return from |
4441 |
remote_status and fatal for it. |
4442 |
When blocking local child wait returns 0, then try a blocking call |
4443 |
to remote_status. |
4444 |
|
4445 |
Tue Aug 3 00:19:00 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4446 |
|
4447 |
* compatMakefile (clean): Delete make.info* and make.dvi here. |
4448 |
(distclean): Not here. |
4449 |
|
4450 |
* dep.h (RM_*): Use #defines instead of enum to avoid lossage from |
4451 |
compilers that don't like enum values used as ints. |
4452 |
|
4453 |
Mon Aug 2 16:46:34 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4454 |
|
4455 |
* compatMakefile (loadavg): Add $(LOADLIBES). |
4456 |
|
4457 |
Sun Aug 1 16:01:15 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4458 |
|
4459 |
* Version 3.68.2. |
4460 |
|
4461 |
* compatMakefile (loadavg, check-loadavg): New targets. |
4462 |
(check): Depend on check-loadavg. |
4463 |
|
4464 |
* compatMakefile (glob/libglob.a): Depend on config.h. |
4465 |
|
4466 |
* misc.c (log_access): Write to stderr instead of stdout. |
4467 |
|
4468 |
Fri Jul 30 00:07:02 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4469 |
|
4470 |
* Version 3.68.1. |
4471 |
|
4472 |
Thu Jul 29 23:26:40 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4473 |
|
4474 |
* configure.in (SYS_SIGLIST_DECLARED): In test program include |
4475 |
<unistd.h> #ifdef HAVE_UNISTD_H. |
4476 |
|
4477 |
* compatMakefile (.PHONY): Put after `all' et al. |
4478 |
|
4479 |
* configure.in: Add AC_IRIX_SUN. |
4480 |
|
4481 |
Wed Jul 28 17:41:12 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4482 |
|
4483 |
* Version 3.68. |
4484 |
|
4485 |
Mon Jul 26 14:36:49 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4486 |
|
4487 |
* Version 3.67.8. |
4488 |
|
4489 |
Sun Jul 25 22:09:08 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4490 |
|
4491 |
* Version 3.67.7. |
4492 |
|
4493 |
* compatMakefile ($(infodir)/make.info): Don't use $(instname). |
4494 |
Run install-info script if present. |
4495 |
|
4496 |
Fri Jul 23 16:03:50 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4497 |
|
4498 |
* make.h [STAT_MACROS_BROKEN]: Test this instead of [uts]. |
4499 |
|
4500 |
* configure.in: Add AC_STAT_MACROS_BROKEN. |
4501 |
|
4502 |
Wed Jul 14 18:48:11 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4503 |
|
4504 |
* Version 3.67.6. |
4505 |
|
4506 |
* read.c (read_makefile): Recognize directive `-include', like |
4507 |
`include' but sets RM_DONTCARE flag. |
4508 |
|
4509 |
* variable.c (target_environment): If FILE is nil, use |
4510 |
current_variable_set_list in place of FILE->variables. |
4511 |
* function.c (expand_function: `shell'): Get an environment for |
4512 |
the child from target_environment instead of using environ. |
4513 |
|
4514 |
* dep.h: Declare read_all_makefiles here. |
4515 |
(RM_*): Define new enum constants. |
4516 |
* read.c (read_makefile): Second arg is FLAGS instead of TYPE. |
4517 |
Treat it as a bit mask containing RM_*. |
4518 |
(read_all_makefiles): For default makefiles, set D->changed to |
4519 |
RM_DONTCARE instead of 1. |
4520 |
* main.c: Don't declare read_all_makefiles here. |
4521 |
(main): Check `changed' member of read_makefiles elts for RM_* |
4522 |
flags instead of specific integer values. |
4523 |
|
4524 |
Mon Jul 12 22:42:17 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4525 |
|
4526 |
* make.h [sequent && i386]: #undef POSIX. From trost@cse.ogi.edu. |
4527 |
|
4528 |
Thu Jul 8 19:51:23 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4529 |
|
4530 |
* vpath.c (construct_vpath_list): If ELEM is zero 0, free PATTERN |
4531 |
as well as VPATH. |
4532 |
(build_vpath_lists): Empty `vpaths' around construct_vpath_list |
4533 |
call for $(VPATH). Expand $(strip $(VPATH)), not just $(VPATH). |
4534 |
|
4535 |
* rule.c (convert_suffix_rule): Use alloca instead of xmalloc for |
4536 |
PERCENTS, whose storage is not consumed by create_pattern_rule. |
4537 |
|
4538 |
* make.h [__mips && _SYSTYPE_SVR3]: #undef POSIX. |
4539 |
|
4540 |
Wed Jun 30 18:11:40 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4541 |
|
4542 |
* Version 3.67.5. |
4543 |
|
4544 |
* rule.c (max_pattern_targets): New variable. |
4545 |
(count_implicit_rule_limits): Compute its value. |
4546 |
* rule.h: Declare it. |
4547 |
* implicit.c (pattern_search): Make TRYRULES max_target_patterns |
4548 |
times bigger. Move adding new TRYRULES elt inside the inner |
4549 |
targets loop, so each matching target gets its own elt in MATCHES |
4550 |
and CHECKED_LASTSLASH. |
4551 |
|
4552 |
* file.c (remove_intermediates): If SIG!=0 say `intermediate file' |
4553 |
instead of just `file' in error msg. |
4554 |
|
4555 |
Fri Jun 25 14:55:15 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4556 |
|
4557 |
* job.c (construct_command_argv): Turn off |
4558 |
--warn-undefined-variables around expansion of SHELL and IFS. |
4559 |
* read.c (tilde_expand): Likewise for HOME. |
4560 |
(read_all_makefiles): Likewise for MAKEFILES. |
4561 |
* vpath.c (build_vpath_lists): Likewise for VPATH. |
4562 |
|
4563 |
* main.c (warn_undefined_variables_flag): New flag variable. |
4564 |
(switches): Add --warn-undefined-variables. |
4565 |
* make.h (warn_undefined_variables_flag): Declare it. |
4566 |
* expand.c (warn_undefined): New function. |
4567 |
(reference_variable): Call it if the variable is undefined. |
4568 |
(variable_expand): In substitution ref, call warn_undefined if the |
4569 |
variable is undefined. |
4570 |
|
4571 |
* default.c (default_pattern_rules): Add `%.c: %.w %.ch' and |
4572 |
`%.tex: %.w %.ch' rules. |
4573 |
(default_suffix_rules: .w.c, .w.tex): Pass three args: $< - $@. |
4574 |
(default_suffixes): Add `.ch'. |
4575 |
|
4576 |
Mon Jun 21 17:55:39 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4577 |
|
4578 |
* default.c (default_suffixes): Replace `.cweb' with `.w'. |
4579 |
(default_suffix_rules): Rename `.cweb.c' and `.cweb.tex' to `.w.c' |
4580 |
and `.w.tex'. |
4581 |
|
4582 |
Fri Jun 11 14:42:09 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4583 |
|
4584 |
* compatMakefile ($(bindir)/$(instname)): Add missing backslash. |
4585 |
|
4586 |
Thu Jun 10 18:14:08 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4587 |
|
4588 |
* Version 3.67.4. |
4589 |
|
4590 |
* read.c (multi_glob): Don't free OLD and OLD->name in the |
4591 |
FOUND!=0 fork. Use new block-local variable F instead of |
4592 |
clobbering OLD. |
4593 |
|
4594 |
* ar.c (glob_pattern_p): New function, snarfed from glob/glob.c. |
4595 |
(ar_glob): Call it; return nil immediately if MEMBER_PATTERN |
4596 |
contains no metacharacters. |
4597 |
|
4598 |
Wed Jun 9 16:25:35 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4599 |
|
4600 |
* ar.c (ar_glob{_match,_alphacompare}): New function. |
4601 |
|
4602 |
* dep.h [! NO_ARCHIVES]: Declare it. |
4603 |
* read.c (multi_glob) [! NO_ARCHIVES]: Use it on archive member elts. |
4604 |
|
4605 |
* read.c (read_makefile): Pass flag (1) to parse_file_seq, not to |
4606 |
multi_glob (which doesn't take a 3rd arg). |
4607 |
* rule.c (install_pattern_rule): Likewise. |
4608 |
* default.c (set_default_suffixes): Here too. |
4609 |
* function.c (string_glob): Don't pass gratuitous arg to multi_glob. |
4610 |
|
4611 |
* read.c (parse_file_seq) [! NO_ARCHIVES]: Add post-processing |
4612 |
loop to translate archive refs "lib(a b)" into "lib(a) lib(b)". |
4613 |
|
4614 |
Mon Jun 7 19:26:51 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4615 |
|
4616 |
* compatMakefile (installdirs): Actually pass directory names. |
4617 |
($(bindir)/$(instname)): Test chgrp&&chmod exit status with `if'; |
4618 |
if it fails, echo a warning msg, but don't make the rule fail. |
4619 |
|
4620 |
* read.c (tilde_expand): New function, broken out of tilde_expand. |
4621 |
(multi_glob): Call it. |
4622 |
(construct_include_path): Expand ~ in directory names. |
4623 |
* dep.h: Declare tilde_expand. |
4624 |
* main.c (enter_command_line_file): Expand ~ at the start of NAME. |
4625 |
(main): Expand ~ in -C args. |
4626 |
* read.c (read_makefile): Expand ~ in FILENAME unless TYPE==2. |
4627 |
|
4628 |
Fri Jun 4 13:34:47 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4629 |
|
4630 |
* main.c (decode_env_switches): Use xmalloc instead of alloca for ARGS. |
4631 |
|
4632 |
* main.c (main): Put result of alloca in temporary variable with |
4633 |
simple assignment, to make SGI compiler happy. |
4634 |
|
4635 |
Thu Jun 3 20:15:46 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4636 |
|
4637 |
* Version 3.67.3. |
4638 |
|
4639 |
* main.c (main): Before re-execing, remove intermediate files, and |
4640 |
print the data base under -p. Sexier debugging message. |
4641 |
|
4642 |
* implicit.c (pattern_search): Allocate an extra copy of the name |
4643 |
of a winning intermediate file when putting it in FOUND_FILES. |
4644 |
|
4645 |
Wed Jun 2 16:38:08 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4646 |
|
4647 |
* read.c (read_makefile): Pass flag (1) to parse_file_seq, not to |
4648 |
multi_glob (which doesn't take a 3rd arg). |
4649 |
|
4650 |
* dir.c (dir_contents_file_exists_p): When reading dirents, ignore |
4651 |
chars within D_NAMLEN that are NULs. |
4652 |
|
4653 |
* main.c (decode_switches): Don't savestring ARGV[0] to put it |
4654 |
into `other_args'. |
4655 |
For string switch, don't savestring `optarg'. |
4656 |
(main): Don't free elts of makefiles->list that are "-". |
4657 |
Use alloca'd rather than savestring'd storage for elts of |
4658 |
makefiles->list that are temporary file names. |
4659 |
* read.c (read_all_makefiles): Don't free *MAKEFILES. |
4660 |
* file.c (enter_file): Don't strip `./'s. |
4661 |
* main.c (enter_command_line_file): New function. |
4662 |
(main): Use it in place of enter_file for command-line goals from |
4663 |
other_files, and for old_files and new_files. |
4664 |
|
4665 |
Mon May 31 18:41:40 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4666 |
|
4667 |
* Version 3.67.2. |
4668 |
|
4669 |
* compatMakefile (.SUFFIXES): Add .info. |
4670 |
($(infodir)/$(instname).info): Find make.info* in cwd if there, |
4671 |
else in $srcdir. Use basename to remove dir name from installed name. |
4672 |
|
4673 |
Thu May 27 17:35:02 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4674 |
|
4675 |
* implicit.c (pattern_search): When interning FOUND_FILES, try |
4676 |
lookup_file first; if found, free the storage for our copy of the name. |
4677 |
|
4678 |
Wed May 26 14:31:20 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4679 |
|
4680 |
* Version 3.67.1. |
4681 |
|
4682 |
* main.c (decode_switches): In usage msg, write `--switch=ARG' or |
4683 |
`--switch[=OPTARG]' rather than `--switch ARG' or `--switch [ARG]'. |
4684 |
|
4685 |
Mon May 24 16:17:31 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4686 |
|
4687 |
* rule.c (convert_suffix_rule): New function. |
4688 |
(convert_to_pattern): Use it instead of doing all the work here |
4689 |
several times. |
4690 |
For target suffix `.a', generate both the archive magic rule and |
4691 |
the normal rule. |
4692 |
|
4693 |
* compatMakefile (distclean): Remove stamp-config. |
4694 |
|
4695 |
Sat May 22 16:15:18 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4696 |
|
4697 |
* Version 3.67. |
4698 |
|
4699 |
* file.c (remove_intermediates): Don't write extra space after `rm'. |
4700 |
|
4701 |
* main.c (struct command_switch.type): Remove `usage_and_exit'. |
4702 |
(print_usage_flag): New variable. |
4703 |
(switches: --help): Make type `flag', to set print_usage_flag. |
4704 |
(init_switches): Remove `usage_and_exit' case. |
4705 |
(decode_switches): Likewise. |
4706 |
(decode_switches): Print usage if print_usage_flag is set. |
4707 |
When printing usage, die with status of BAD. |
4708 |
(main): Die with 0 if print_version_flag. |
4709 |
|
4710 |
Fri May 21 16:09:28 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4711 |
|
4712 |
* Version 3.66. |
4713 |
|
4714 |
Wed May 19 21:30:44 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4715 |
|
4716 |
* compatMakefile (installdirs): New target. |
4717 |
(install): Depend on it. |
4718 |
|
4719 |
Sun May 16 20:15:07 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4720 |
|
4721 |
* Version 3.65.2. |
4722 |
|
4723 |
Fri May 14 16:40:09 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4724 |
|
4725 |
* vpath.c (construct_vpath_list): In removal loop for DIRPATH==0, |
4726 |
set LASTPATH to PATH, not NEXT. |
4727 |
|
4728 |
* dir.c (read_dirstream): Break out of loop after incrementing |
4729 |
DS->buckets such that it reaches DIRFILE_BUCKETS; avoid trying to |
4730 |
dereference DS->contents->files[DIRFILE_BUCKETS]. |
4731 |
|
4732 |
* read.c (read_makefile): Clear no_targets after reading a |
4733 |
targetful rule line. |
4734 |
|
4735 |
* main.c (main): If print_version_flag is set, exit after printing |
4736 |
the version. |
4737 |
(switches): Change --version docstring to say it exits. |
4738 |
|
4739 |
* make.h [butterfly]: #undef POSIX. |
4740 |
|
4741 |
Wed May 12 15:20:21 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
4742 |
|
4743 |
* Version 3.65.1. |
4744 |
|
4745 |
* arscan.c (ar_scan) [! AIAMAG]: Don't declare LONG_NAME. |
4746 |
[AIAMAG]: Pass TRUNCATE flag arg to (*FUNCTION), always zero. |
4747 |
|
4748 |
* function.c (handle_function): Use fatal instead of |
4749 |
makefile_fatal when reading_filename is nil. |
4750 |
|
4751 |
* configure.in: Add AC_GETGROUPS_T. |
4752 |
* job.c (search_path): Use GETGROUPS_T in place of gid_t. |
4753 |
|
4754 |
Sun May 9 15:41:25 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4755 |
|
4756 |
* Version 3.65. |
4757 |
|
4758 |
Fri May 7 18:34:56 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4759 |
|
4760 |
* function.c (handle_function): Fatal for unmatched paren. |
4761 |
|
4762 |
Thu May 6 16:13:41 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4763 |
|
4764 |
* Version 3.64.3. |
4765 |
|
4766 |
* commands.c (handling_fatal_signal): New variable. |
4767 |
(fatal_error_signal): Set it. |
4768 |
* job.c (reap_children): Avoid nonreentrant operations if that is set. |
4769 |
* make.h: Declare handling_fatal_signal. |
4770 |
|
4771 |
* expand.c (reference_variable): New function, snippet of code |
4772 |
broken out of simple-reference case of variable_expand. |
4773 |
(variable_expand): Use it for simple refs. |
4774 |
(variable_expand): When checking for a computed variable name, |
4775 |
notice a colon that comes before the final CLOSEPAREN. Expand |
4776 |
only up to the colon, and then replace the pending text with a |
4777 |
copy containing the expanded name and fall through to subst ref |
4778 |
handling. |
4779 |
(variable_expand): Don't bother expanding the name if a colon |
4780 |
appears before the first $. |
4781 |
(expand_argument): Use alloca instead of savestring. |
4782 |
(variable_expand): For subst ref, expand both sides of = before |
4783 |
passing to [pat]subst_expand. Use find_percent instead of lindex |
4784 |
to check the lhs for a %. |
4785 |
|
4786 |
Wed May 5 14:45:52 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4787 |
|
4788 |
* Version 3.64.2. |
4789 |
|
4790 |
Mon May 3 17:00:32 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4791 |
|
4792 |
* arscan.c (ar_name_equal) [AIAMAG]: Abort if TRUNCATED is nonzero. |
4793 |
|
4794 |
* read.c (read_makefile): Pass extra arg of 1 to parse_file_seq, |
4795 |
not to multi_glob. |
4796 |
|
4797 |
Thu Apr 29 19:47:33 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4798 |
|
4799 |
* Version 3.64.1. |
4800 |
|
4801 |
* arscan.c (ar_scan): New local flag var LONG_NAME. Set it when |
4802 |
we read the member name in any of the fashions that allow it to be |
4803 |
arbitrarily long. Pass its negation to FUNCTION. |
4804 |
(describe_member): Take TRUNCATED from ar_scan and print it. |
4805 |
(ar_name_equal): Take new arg TRUNCATED; if nonzero, compare only |
4806 |
the first sizeof (struct ar_hdr.ar_name) chars. |
4807 |
(ar_member_pos): Take TRUNCATED from ar_scan, pass to ar_name_equal. |
4808 |
* ar.c (ar_member_date_1): Likewise. |
4809 |
|
4810 |
Wed Apr 28 21:18:22 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4811 |
|
4812 |
* job.c (reap_children): Before calling start_job_command to start |
4813 |
the next command line, reset C->remote by calling start_remote_job_p. |
4814 |
|
4815 |
Mon Apr 26 15:56:15 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
4816 |
|
4817 |
* arscan.c (ar_scan): New local var NAMEMAP. |
4818 |
In loop, rename NAME to NAMEBUF; new var NAME is a pointer; new |
4819 |
flag IS_NAMEMAP. When extracting the member name, always put a |
4820 |
null at its end first. If the name is "//" or "/ARFILENAMES", set |
4821 |
IS_NAMEMAP. If we have already read in NAMEMAP, and NAME looks |
4822 |
like " /N", get full name from NAMEMAP+N. |
4823 |
Else if NAME looks like "#1/N", read N chars from the |
4824 |
elt data to be the full name. At end of loop, if IS_NAMEMAP, read |
4825 |
the elt's data into alloca'd NAMEMAP. |
4826 |
(ar_name_equal): #if 0 truncating code. |
4827 |
|
4828 |
* make.h: Don't declare vfork at all. It returns int anyway, |
4829 |
unless <unistd.h> declared it; and we conflicted with some systems. |
4830 |
|
4831 |
* main.c (define_makeflags): If FLAGSTRING[1] is '-', define |
4832 |
MAKEFLAGS to all of FLAGSTRING, not &FLAGSTRING[1]. Don't want to |
4833 |
define it to something like "-no-print-directory". |
4834 |
Use %g format instead of %f for floating-valued things. |
4835 |
|
4836 |
Thu Apr 22 18:40:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4837 |
|
4838 |
* GNUmakefile (Makefile.in): Use a substitution ref on nolib-deps |
4839 |
to change remote-%.dep to remote-stub.dep. |
4840 |
|
4841 |
Wed Apr 21 15:17:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4842 |
|
4843 |
* Version 3.64. |
4844 |
|
4845 |
Fri Apr 16 14:22:22 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4846 |
|
4847 |
* compatMakefile (install): Remove - prefix from chgrp+chmod. |
4848 |
|
4849 |
* Version 3.63.8. |
4850 |
|
4851 |
Thu Apr 15 18:24:07 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4852 |
|
4853 |
* acconfig.h: New file; contains "#undef SCCS_GET" for autoheader. |
4854 |
* configure.in: If /usr/sccs/get exists, define SCCS_GET to that, |
4855 |
else to "get". |
4856 |
* default.c (default_variables): Set GET to macro SCCS_GET. |
4857 |
|
4858 |
* read.c (parse_file_seq): Take extra arg STRIP; strip `./' only |
4859 |
if nonzero. I hope this is the last time this argument is added |
4860 |
or removed. |
4861 |
(read_makefile): Pass it 1 when parsing include file names. |
4862 |
Pass it 1 when parsing target file names. |
4863 |
Pass it 1 when parsing static pattern target pattern names. |
4864 |
* rule.c (install_pattern_rule): Pass it 1 when parsing rule deps. |
4865 |
* default.c (set_default_suffixes): Pass it 1 when parsing |
4866 |
default_suffixes. |
4867 |
* function.c (string_glob): Pass it 0 here. |
4868 |
|
4869 |
Wed Apr 14 11:32:05 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4870 |
|
4871 |
* misc.c (log_access): New function. |
4872 |
({init,user,make,child}_access): Call it. |
4873 |
(child_access): Abort if !access_inited. |
4874 |
|
4875 |
* main.c (switches: --no-print-directory): Use 1 instead of -1 for |
4876 |
single-letter option. |
4877 |
(init_switches, decode_switches, define_makeflags): An option with |
4878 |
no single-letter version is no longer indicated by a value of -1; |
4879 |
instead a value that is !isalnum. |
4880 |
(init_switches): Don't put such switches into the string, only |
4881 |
into the long_option table. |
4882 |
|
4883 |
* make.h [!NSIG] [!_NSIG]: #define NSIG 32. |
4884 |
|
4885 |
* job.c [HAVE_WAITPID]: Remove #undef HAVE_UNION_WAIT. AIX's |
4886 |
bsdcc defined WIF* to use union wait. |
4887 |
|
4888 |
* main.c (struct command_switch): Change member `c' to type int. |
4889 |
(switches): Make const. |
4890 |
(decode_switches): Use `const struct command_switch *'. |
4891 |
(define_makeflags): Likewise. |
4892 |
|
4893 |
* default.c (default_suffix_rules): Add `-o $@' to makeinfo rules. |
4894 |
|
4895 |
Mon Apr 12 12:30:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4896 |
|
4897 |
* Version 3.63.7. |
4898 |
|
4899 |
* configure.in (AC_HAVE_HEADERS): Check for string.h and memory.h. |
4900 |
Removed AC_MEMORY_H. |
4901 |
* make.h [USG, NeXT]: Don't test these. |
4902 |
[HAVE_STRING_H]: Test this to include string.h and define ANSI_STRING. |
4903 |
[HAVE_MEMORY_H]: Test this instead of NEED_MEMORY_H. |
4904 |
[! ANSI_STRING]: Put decls of bcopy et al here. |
4905 |
[sparc]: Don't test this for alloca.h; HAVE_ALLOCA_H is sufficient. |
4906 |
[HAVE_SIGSETMASK]: Test this rather than USG. |
4907 |
[__GNU_LIBRARY__ || POSIX]: Don't #include <unistd.h> again. |
4908 |
* main.c (main): Handle SIGCHLD if defined, and SIGCLD if defined. |
4909 |
It doesn't hurt to do both if they are both defined, and testing |
4910 |
USG is useless. |
4911 |
* dir.c: Rationalize directory header conditionals. |
4912 |
* arscan.c [HAVE_FCNTL_H]: Test this rather than USG || POSIX. |
4913 |
|
4914 |
* default.c (default_suffixes): Add `.txinfo'. |
4915 |
(default_suffix_rules): Add `.txinfo.info' and `.txinfo.dvi' rules. |
4916 |
|
4917 |
* variable.c (try_variable_definition): Replace RECURSIVE flag |
4918 |
with enum FLAVOR, which can be simple, recursive, or append. |
4919 |
Recognize += as append flavor. Set new variable VALUE in a switch |
4920 |
on FLAVOR. For append flavor, prepend the variable's old value. |
4921 |
If the variable was previously defined recursive, set FLAVOR to |
4922 |
recursive; if it was defined simple, expand the new value before |
4923 |
appending it to the old value. Pass RECURSIVE flag to |
4924 |
define_variable iff FLAVOR == recursive. |
4925 |
|
4926 |
* variable.c (try_variable_definition): Use alloca and bcopy for |
4927 |
NAME, instead of savestring. Might as well use stack storage |
4928 |
since we free it immediately anyway. |
4929 |
|
4930 |
Thu Apr 8 18:04:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4931 |
|
4932 |
* job.c (start_waiting_jobs): Move decl of JOB outside of loop. |
4933 |
|
4934 |
* main.c (define_makeflags): Rename `struct flag' member `switch' |
4935 |
to `cs', which is not a reserved word. |
4936 |
|
4937 |
Wed Apr 7 15:30:51 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4938 |
|
4939 |
* job.c (new_job): Call start_waiting_jobs first thing. |
4940 |
(start_waiting_job): Changed return type from void to int. |
4941 |
Return 0 when putting the child on the waiting_jobs chain. |
4942 |
(start_waiting_jobs): Don't check load and job_slots here. |
4943 |
Always take a job off the chain and call start_waiting_job on it; |
4944 |
give up and return when start_waiting_job returns zero. |
4945 |
|
4946 |
* main.c (define_makeflags: struct flag): Change member `char c' to |
4947 |
`struct command_switch *switch'. |
4948 |
(ADD_FLAG): Set that to CS instead of CS->c. |
4949 |
If CS->c is -1, increment FLAGSLEN for the long name. |
4950 |
When writing out FLAGS, handle FLAGS->switch->c == -1 and write |
4951 |
the long name instead. |
4952 |
|
4953 |
* compatMakefile (stamp-config): New target of old config.h rule. |
4954 |
Touch stamp-config after running config.status. |
4955 |
(config.h): Just depend on stamp-config, and have empty commands. |
4956 |
|
4957 |
Mon Apr 5 20:14:02 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4958 |
|
4959 |
* job.c [HAVE_WAITPID]: #undef HAVE_UNION_WAIT. |
4960 |
|
4961 |
* configure.in (AC_HAVE_FUNCS): Check for psignal. |
4962 |
|
4963 |
Fri Apr 2 17:15:46 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4964 |
|
4965 |
* main.c (long_option_aliases): Remove "new"; it is already an |
4966 |
unambiguous prefix of "new-file". |
4967 |
|
4968 |
Sun Mar 28 16:57:17 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
4969 |
|
4970 |
* Version 3.63.6. |
4971 |
|
4972 |
Wed Mar 24 14:26:19 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4973 |
|
4974 |
* vpath.c (selective_vpath_search): When adding the |
4975 |
name-within-directory at the end of NAME, and we don't add a |
4976 |
slash, don't copy FILENAME in one char too far into NAME. |
4977 |
|
4978 |
* variable.c (define_automatic_variables): Find default_shell's |
4979 |
length with strlen, not numerology. |
4980 |
|
4981 |
Wed Mar 17 20:02:27 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
4982 |
|
4983 |
* main.c (define_makeflags): Add the elts of a string option in |
4984 |
reverse order, so they come out right when reversed again. |
4985 |
|
4986 |
Fri Mar 12 15:38:45 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
4987 |
|
4988 |
* compatMakefile (make.info): Use `-o make.info'. |
4989 |
|
4990 |
Thu Mar 11 14:13:00 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
4991 |
|
4992 |
* compatMakefile (REMOTE): Set to @REMOTE@; change comments to |
4993 |
reflect new use. |
4994 |
(objs): Replace remote.o with remote-$(REMOTE).o. |
4995 |
(srcs): Replace remote.c with remote-$(REMOTE).c. |
4996 |
(remote.o): Rule removed. |
4997 |
|
4998 |
* configure.in (REMOTE): Subst this in Makefile et al; default "stub". |
4999 |
Use AC_WITH to grok --with-customs arg to set REMOTE=cstms. |
5000 |
* GNUmakefile (build.sh.in): Filter out remote-% from objs list. |
5001 |
* build.template (REMOTE): New var; set to @REMOTE@. |
5002 |
(objs): Add remote-${REMOTE}.o. |
5003 |
|
5004 |
Wed Mar 10 15:12:24 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5005 |
|
5006 |
* Version 3.63.5. |
5007 |
|
5008 |
* implicit.c (pattern_search): Fix "dependent"->"dependency" in |
5009 |
"Rejecting impossible" -d msg. |
5010 |
|
5011 |
* file.c (file_hash_enter): New local vars {OLD,NEW}BUCKET. Store |
5012 |
mod'd values there; never mod {OLD,NEW}HASH. |
5013 |
|
5014 |
Mon Mar 8 13:32:48 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5015 |
|
5016 |
* remake.c [eta10]: Include <fcntl.h> instead of <sys/file.h>. |
5017 |
|
5018 |
* compatMakefile (VPATH): Set this to @srcdir@. |
5019 |
(srcdir): Set this to $(VPATH). |
5020 |
|
5021 |
* main.c (main): New local var DIRECTORY_BEFORE_CHDIR. Save in it |
5022 |
a copy of CURRENT_DIRECTORY after the first getcwd. Use it |
5023 |
instead of CURRENT_DIRECTORY when chdir'ing back before re-execing. |
5024 |
|
5025 |
* remake.c (notice_finished_file): Pass missing SEARCH arg to f_mtime. |
5026 |
|
5027 |
* read.c (read_makefile): Remove extraneous arg to parse_file_seq. |
5028 |
|
5029 |
Mon Feb 22 14:19:38 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5030 |
|
5031 |
* compatMakefile ($(infodir)/$(instname).info): Use , instead of / |
5032 |
as the sed delimiter char. |
5033 |
|
5034 |
Sun Feb 21 14:11:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5035 |
|
5036 |
* Version 3.63.4. |
5037 |
|
5038 |
* rule.h (struct rule): Removed `subdir' member. |
5039 |
* rule.c (new_pattern_rule): No need to clear it. |
5040 |
(count_implicit_rule_limits): Set the `changed' flag in each dep |
5041 |
that refers to a nonexistent directory. No longer set rule-global |
5042 |
`subdir' flag with that information. |
5043 |
(print_rule_data_base): Don't record info on `subdir' flags. |
5044 |
|
5045 |
* implicit.c (pattern_search): Check the DEP->changed flag rather |
5046 |
than the (now gone) RULE->subdir flag. Also test CHECK_LASTSLASH; |
5047 |
if it is set, the file might exist even though the DEP->changed |
5048 |
flag is set. |
5049 |
|
5050 |
* rule.c (count_implicit_rule_limits): Pass "", not ".", as file |
5051 |
name arg to dir_file_exists_p to check for existence of directory. |
5052 |
|
5053 |
* implicit.c (pattern_search): Inside dep-finding loop, set |
5054 |
CHECK_LASTSLASH from the value recorded in CHECKED_LASTSLASH[I], |
5055 |
rather than computing it anew. |
5056 |
|
5057 |
* commands.c (set_file_variables): Must alloca space for PERCENT |
5058 |
and copy it, to avoid leaving the trailing `)' in the value. |
5059 |
|
5060 |
* misc.c (remove_comments): Fixed backslash-checking loop |
5061 |
condition to allow it to look at the first char on the line. |
5062 |
P2 >= LINE, not P2 > LINE. |
5063 |
|
5064 |
* compatMakefile ($(bindir)/$(instname)): Before moving $@.new to |
5065 |
$@, rm $@.old and mv $@ to $@.old. |
5066 |
|
5067 |
* variable.c (try_variable_definition): Take new args FILENAME and |
5068 |
LINENO. Fatal if the variable name is empty. |
5069 |
* read.c (read_makefile): Change callers. |
5070 |
* main.c (main): Likewise. |
5071 |
|
5072 |
* compatMakefile (group): Define to @KMEM_GROUP@, autoconf magic |
5073 |
that configure will replace with the group owning /dev/kmem. |
5074 |
|
5075 |
Mon Feb 8 14:26:43 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5076 |
|
5077 |
* vpath.c (vpath_search): Take second arg MTIME_PTR, pass thru to |
5078 |
selective_vpath_search. |
5079 |
(selective_vpath_search): Take second arg MTIME_PTR. |
5080 |
If the dir cache thinks a file exists, stat it to make sure, and |
5081 |
put the modtime in *MTIME_PTR. |
5082 |
* remake.c (library_search): Take second arg MTIME_PTR. |
5083 |
When we find a match, record its mtime there. |
5084 |
Pass MTIME_PTR through to vpath_search to do same. |
5085 |
(f_mtime): Pass &MTIME as new 2nd arg to {vpath,library}_search; |
5086 |
store it in FILE->last_mtime if set nonzero. |
5087 |
* implicit.c (pattern_search): Pass nil 2nd arg to vpath_search. |
5088 |
|
5089 |
* compatMakefile (remote.o): Prepend `$(srcdir)/' to `remote-*.c', |
5090 |
so globbing looks somewhere it will find things. |
5091 |
|
5092 |
* compatMakefile ($(infodir)/$(instname).info): Install `make.info*' |
5093 |
not `$(srcdir)/make.info*'; no need to use basename. |
5094 |
|
5095 |
Fri Feb 5 12:52:43 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5096 |
|
5097 |
* Version 3.63.3. |
5098 |
|
5099 |
* compatMakefile (install): Add missing ;\s. |
5100 |
|
5101 |
Make -, @, and + prefixes on a pre-expanded command line affect |
5102 |
all lines in the expansion, not just the first. |
5103 |
* commands.h (struct commands): Replace `lines_recurse' member |
5104 |
with `lines_flags'. |
5105 |
(COMMANDS_{RECURSE,SILENT,NOERROR}): New macros, bits to set in |
5106 |
that flag byte. |
5107 |
* commands.c (chop_commands): Set `lines_flags' instead of |
5108 |
`lines_recurse'. Record not only + but also @ and - prefixes. |
5109 |
* remake.c (notice_finished_file): Check the COMMANDS_RECURSE bit |
5110 |
in FILE->cmds->lines_flags, rather than FILE->cmds->lines_recurse. |
5111 |
* job.c (start_job_command): Replaced RECURSIVE and NOPRINT local |
5112 |
var with FLAGS; initialize it to the appropriate `lines_flags' byte. |
5113 |
Set CHILD->noerror if the COMMANDS_NOERROR bit is set in FLAGS. |
5114 |
Set the COMMANDS_SILENT bit in FLAGS for a @ prefix. |
5115 |
|
5116 |
* remake.c (update_goal_chain): Set G->file to its prev after |
5117 |
checking for G being finished, since that check needs to examine |
5118 |
G->file. |
5119 |
|
5120 |
* configure.in (union wait check) [HAVE_WAITPID]: Try using |
5121 |
waitpid with a `union wait' STATUS arg. If waitpid and union wait |
5122 |
don't work together, we should not use union wait. |
5123 |
|
5124 |
* Version 3.63.2. |
5125 |
|
5126 |
* remake.c (update_goal_chain): When G->file->updated, move |
5127 |
G->file to its prev. We aren't finished until G->file is nil. |
5128 |
|
5129 |
Thu Feb 4 12:53:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5130 |
|
5131 |
* main.c (starting_directory): New global variable. |
5132 |
(main): Set it to cwd after doing -Cs. |
5133 |
(log_working_directory): Use it, rather than computing each time. |
5134 |
* make.h: Declare it. |
5135 |
|
5136 |
* compatMakefile (SHELL): Define to /bin/sh for losing Unix makes. |
5137 |
|
5138 |
* main.c (decode_env_switches): Allocate (1 + LEN + 1) words for |
5139 |
ARGV, rather than LEN words plus one byte. |
5140 |
|
5141 |
Wed Feb 3 18:13:52 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5142 |
|
5143 |
* compatMakefile ($(bindir)/$(instname)): Put - before |
5144 |
install_setgid command line, so its failure won't be an error. |
5145 |
(infodir): New variable. |
5146 |
(install): Depend on $(infodir)/$(instname).info. |
5147 |
($(infodir)/$(instname).info): New target. |
5148 |
|
5149 |
* read.c (read_makefile): If FILENAMES is nil when we see a line |
5150 |
starting with a tab, don't treat it as a command. Just fall |
5151 |
through, rather than giving an error. |
5152 |
|
5153 |
* read.c (read_makefile): If the NO_TARGETS flag is set when we see a |
5154 |
command line, don't clear it before continuing. We want |
5155 |
subsequent command lines to be ignored as well. |
5156 |
|
5157 |
* job.c (new_job): Before expanding each command line, collapse |
5158 |
backslash-newline combinations that are inside var or fn references. |
5159 |
|
5160 |
Mon Feb 1 16:00:13 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5161 |
|
5162 |
* compatMakefile (exec_prefix): Default to $(prefix), not /usr/local. |
5163 |
|
5164 |
* compatMakefile (make.info): Pass -I$(srcdir) to makeinfo. |
5165 |
|
5166 |
* job.c [POSIX] (unblock_sigs): Made global. |
5167 |
[!POSIX] (unblock_sigs): Move defns to job.h. |
5168 |
* job.h [POSIX] (unblock_sigs): Declare. |
5169 |
|
5170 |
Sun Jan 31 19:11:05 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5171 |
|
5172 |
* read.c (read_makefile): In vpath parsing, after finding the |
5173 |
pattern token, take entire rest of line as the search path, not |
5174 |
just the next token. |
5175 |
|
5176 |
* compatMakefile (remote.o): Depend on remote-*.c. |
5177 |
|
5178 |
Thu Jan 28 16:40:29 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5179 |
|
5180 |
* commands.c (set_file_variables): Don't define any F or D versions. |
5181 |
* variable.c (define_automatic_variables): Define them here as |
5182 |
recursively-expanded variables that use the dir and notdir funcs. |
5183 |
|
5184 |
* variable.c (target_environment): In v_default case, don't export |
5185 |
o_default or o_automatic variables. |
5186 |
|
5187 |
* configure.in (union wait check): Remove ` and ' inside C code; |
5188 |
they confuse the shell script. |
5189 |
|
5190 |
Mon Jan 25 13:10:42 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5191 |
|
5192 |
* Version 3.63.1. |
5193 |
|
5194 |
* vpath.c (construct_vpath_list): When skipping further processing |
5195 |
of an elt that is ".", don't also skip the code that pushes P past |
5196 |
the next separator. |
5197 |
|
5198 |
* compatMakefile (distclean): Don't remove make-*. |
5199 |
|
5200 |
* configure.in (HAVE_UNION_WAIT): Try to use WEXITSTATUS if it's |
5201 |
defined. If one cannot use WEXITSTATUS with a `union wait' |
5202 |
argument, we don't want to believe the system has `union wait' at all. |
5203 |
|
5204 |
* remake.c (update_file): Do nothing to print "up to date" msgs. |
5205 |
(update_goal_chain): Do it here instead. |
5206 |
Use the `changed' flag of each goal's `struct dep' to keep track |
5207 |
of whether files_remade (now commands_started) changed around a |
5208 |
call to update_file for that goal. |
5209 |
When a goal is finished, and its file's update_status is zero (i.e., |
5210 |
success or nothing done), test the `changed' flag and give an "up |
5211 |
to date" msg iff it is clear. |
5212 |
* make.h (files_remade): Renamed to commands_started. |
5213 |
* remake.c: Changed defn. |
5214 |
(update_goal_chain): Changed uses. |
5215 |
* job.c (start_job_command): Increment commands_started here. |
5216 |
(reap_children): Not here. |
5217 |
|
5218 |
* remake.c (update_goal_chain): Don't do anything with files' |
5219 |
`prev' members. update_file now completely handles this. |
5220 |
|
5221 |
* variable.c (target_environment): Don't expand recursive |
5222 |
variables if they came from the environment. |
5223 |
|
5224 |
* main.c (define_makeflags): For flags with omitted optional args, |
5225 |
store {"", 0} with ADD_FLAG. When constructing FLAGSTRING, a flag |
5226 |
so stored cannot have more flags appended to the same word. |
5227 |
|
5228 |
Fri Jan 22 14:46:16 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5229 |
|
5230 |
* variable.c (print_variable_set): In vars/bucket calculation, |
5231 |
don't spuriously multiply by 100. |
5232 |
|
5233 |
* Version 3.63. |
5234 |
|
5235 |
* job.c [!HAVE_UNION_WAIT] (WTERMSIG, WCOREDUMP, WEXITSTATUS): |
5236 |
Don't define if already defined. |
5237 |
|
5238 |
* remake.c (update_file): Don't keep track of the command_state before |
5239 |
calling update_file_1. Remove local variable COMMANDS_FINISHED, |
5240 |
and don't test it to decide to print the "is up to date" msg. |
5241 |
Testing for files_remade having changed should always be sufficient. |
5242 |
The old method lost when we are called in the goal chain run on a |
5243 |
makefile, because the makefile's command_state is already |
5244 |
`cs_finished' from the makefile chain run. |
5245 |
|
5246 |
* misc.c [HAVE_SETRE[GU]ID]: Test these to decl setre[gu]id. |
5247 |
|
5248 |
* configure.in: Rewrote wait checking. |
5249 |
Use AC_HAVE_HEADERS to check for <sys/wait.h>. |
5250 |
Use AC_HAVE_FUNCS to check for waitpid and wait3. |
5251 |
Use a compile check to test just for `union wait'. |
5252 |
* job.c: Rewrote conditionals accordingly. |
5253 |
[HAVE_WAITPID]: Test this only to define WAIT_NOHANG. |
5254 |
[HAVE_WAIT3]: Likewise. |
5255 |
[HAVE_UNION_WAIT]: Test this to define WAIT_T and W*. |
5256 |
|
5257 |
* configure.in: Set CFLAGS and LDFLAGS before all checks. |
5258 |
|
5259 |
* dir.c: Add static forward decls of {open,read}_dirstream. |
5260 |
|
5261 |
Thu Jan 21 17:18:00 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5262 |
|
5263 |
* Version 3.62.31. |
5264 |
|
5265 |
* job.c [NGROUPS_MAX && NGROUPS_MAX==0]: #undef NGROUPS_MAX. |
5266 |
|
5267 |
* compatMakefile (CFLAGS, LDFLAGS): Set to @CFLAGS@/@LDFLAGS@. |
5268 |
* build.template (CFLAGS, LDFLAGS): Same here. |
5269 |
* configure.in: AC_SUBST(CFLAGS) and LDFLAGS. |
5270 |
Set them to -g if not defined in the environment. |
5271 |
|
5272 |
* remake.c (library_search): Use LIBNAME consistently, setting it |
5273 |
only once, to be the passed name sans `-l'. |
5274 |
Pass new var FILE to be modified by vpath_search. |
5275 |
|
5276 |
Mon Jan 18 14:53:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5277 |
|
5278 |
* Version 3.62.30. |
5279 |
|
5280 |
* job.c (start_waiting_jobs): Return when job_slots_used is equal to |
5281 |
job_slots. |
5282 |
|
5283 |
* configure.in: Add AC_CONST for the sake of getopt. |
5284 |
|
5285 |
* read.c (read_makefile): Continue after parsing `override' |
5286 |
directive, rather than falling through to lossage. |
5287 |
Check for EOL or blank after "override define". |
5288 |
|
5289 |
* compatMakefile (.c.o, remote.o): Put $(CFLAGS) after other switches. |
5290 |
|
5291 |
Fri Jan 15 12:52:52 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5292 |
|
5293 |
* Version 3.62.29. |
5294 |
|
5295 |
* main.c (define_makeflags): After writing everything into |
5296 |
FLAGSTRING, only back up two chars if [-1] is a dash, meaning we |
5297 |
just wrote " -". Always terminate the string at *P. |
5298 |
|
5299 |
* remake.c (library_search): When constructing names in std dirs, |
5300 |
use &(*LIB)[2] for the stem, not LIBNAME (which points at the |
5301 |
buffer we are writing into!). |
5302 |
|
5303 |
Thu Jan 14 13:50:06 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5304 |
|
5305 |
* read.c (read_makefile): Set IN_IGNORED_DEFINE for "override |
5306 |
define" when IGNORING is true. |
5307 |
|
5308 |
* compatMakefile (distclean): Remove config.status and build.sh. |
5309 |
|
5310 |
Wed Jan 13 16:01:12 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5311 |
|
5312 |
* Version 3.62.28. |
5313 |
|
5314 |
* misc.c (xmalloc, xrealloc): Cast result of malloc/realloc to |
5315 |
(char *). |
5316 |
|
5317 |
* arscan.c (ar_scan) [AIAMAG]: Cast read arg to (char *). |
5318 |
|
5319 |
* variable.c (define_automatic_variables): Override SHELL value for |
5320 |
origin o_env_override as well as o_env. |
5321 |
|
5322 |
* GNUmakefile (build.sh.in): Don't replace %globobjs%. Instead, |
5323 |
add the names of the glob objects (w/subdir) to %objs%. |
5324 |
* build.template (globobjs): Removed. |
5325 |
Take basename of $objs before linking. |
5326 |
|
5327 |
Tue Jan 12 12:31:06 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5328 |
|
5329 |
* Version 3.62.27. |
5330 |
|
5331 |
* configure.in (AC_OUTPUT): Also edit build.sh. |
5332 |
* build.template: New file. |
5333 |
* GNUmakefile (build.sh.in): New rule to create it from build.template. |
5334 |
(make-$(version).tar.Z): Depend on build.sh.in. |
5335 |
|
5336 |
* main.c (die): Call print_data_base if -p. |
5337 |
(main): Don't call it here. |
5338 |
|
5339 |
* compatMakefile (defines): Add @DEFS@. configure should turn this |
5340 |
into -DHAVE_CONFIG_H. |
5341 |
|
5342 |
Mon Jan 11 14:39:23 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5343 |
|
5344 |
* Version 3.62.26. |
5345 |
|
5346 |
* misc.c (init_access): Surround with #ifdef GETLOADAVG_PRIVILEGED. |
5347 |
({make,user,child}_access) [! GETLOADAVG_PRIVILEGED]: Make no-op. |
5348 |
* compatMakefile (install_setgid): New var, set by configure. |
5349 |
(install): Install setgid $(group) only if $(install_setgid) is true. |
5350 |
|
5351 |
Fri Jan 8 15:31:55 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5352 |
|
5353 |
* job.c (load_too_high): If getloadavg fails with errno==0, give a |
5354 |
message saying that load limits are not supported. |
5355 |
|
5356 |
* vpath.c (construct_vpath_list): Rewrote path deletion code to |
5357 |
not try to use PATH's next link after freeing PATH. |
5358 |
|
5359 |
* main.c (define_makeflags): Rewritten; now handles string-valued |
5360 |
option, and has no arbitrary limits. |
5361 |
(switches): Set `toenv' flag for -I and -v. |
5362 |
|
5363 |
* main.c (decode_env_switches): Cast return value of alloca to char *. |
5364 |
|
5365 |
* misc.c (child_access) [HAVE_SETREUID, HAVE_SETREGID]: Use |
5366 |
setre[gu]id in place of set[gu]id. |
5367 |
|
5368 |
Wed Jan 6 15:06:12 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5369 |
|
5370 |
* main.c (main): Define MAKEOVERRIDES, MAKE, and MAKE_COMMAND with |
5371 |
origin o_default. |
5372 |
|
5373 |
* make.h [POSIX]: Don't test this to use ANSI_STRING. |
5374 |
Testing STDC_HEADERS should be sufficient. |
5375 |
|
5376 |
* job.h: Declare start_waiting_jobs. |
5377 |
|
5378 |
* read.c (read_makefile): Add missing parens in if stmt that find |
5379 |
conditional directives. |
5380 |
|
5381 |
* main.c (main): Declare init_dir. |
5382 |
* implicit.c (pattern_search): Always use two % specs in a |
5383 |
DEBUGP2, and always pass two non-nil args. |
5384 |
Cast field width args to int. |
5385 |
Add missing parens in !RULE->subdir if stmt. |
5386 |
* function.c (expand_function, patsubst_expand): Add parens around |
5387 |
assignments inside `while' stmts. |
5388 |
* commands.c (print_commands): Cast field width args to int. |
5389 |
|
5390 |
* read.c (do_define): Cast return value of alloca to (char *). |
5391 |
|
5392 |
* main.c (init_switches): New function, broken out of decode_switches. |
5393 |
(decode_switches): Take new arg ENV. If set, ignore non-option |
5394 |
args; print no error msgs; ignore options with clear `env' flags. |
5395 |
(decode_env_switches): Rewritten to chop envar value into words |
5396 |
and pass them to decode_switches. |
5397 |
(switches): Set `env' flag for -I and -v. |
5398 |
|
5399 |
* dir.c (init_dir): Cast free to __glob_closedir_hook's type. |
5400 |
|
5401 |
Tue Jan 5 14:52:15 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5402 |
|
5403 |
* Version 3.62.25. |
5404 |
|
5405 |
* job.c [HAVE_SYS_WAIT || !USG]: Don't #include <sys/time.h> and |
5406 |
<sys/resource.h>. <sys/time.h> interacts badly with <time.h>, and |
5407 |
we don't need these anyway. |
5408 |
|
5409 |
* configure.in (AC_HAVE_FUNCS): Check for setre[gu]id. |
5410 |
* misc.c ({user,make}_access): Test #ifndef HAVE_SETRE[GU]ID, not |
5411 |
#ifdef POSIX || USG. SunOS 4.1 is supposedly POSIX.1 compliant, |
5412 |
but its set[gu]id functions aren't; its setre[gu]id functions work. |
5413 |
|
5414 |
* misc.c ({user,make,child}_access): Give name of caller in error msgs. |
5415 |
|
5416 |
* job.c (load_too_high): Say "cannot enforce load limit" in error msg. |
5417 |
|
5418 |
* configure.in: Call AC_PROG_CC. |
5419 |
* compatMakefile (CC): Define to @CC@ (autoconf magic). |
5420 |
|
5421 |
* compatMakefile: Add .NOEXPORT magic target. |
5422 |
|
5423 |
Mon Jan 4 17:00:03 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5424 |
|
5425 |
* main.c (print_version): Updated copyright to include 93. |
5426 |
|
5427 |
Thu Dec 31 12:26:15 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5428 |
|
5429 |
* make.h [_AIX]: Don't declare alloca. |
5430 |
|
5431 |
Tue Dec 29 13:45:13 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5432 |
|
5433 |
* Version 3.62.24. |
5434 |
|
5435 |
* compatMakefile (objs): Add signame.o. |
5436 |
(srcs): Add signame.[ch]. |
5437 |
|
5438 |
* compatMakefile (srcs): Add config.h.in. |
5439 |
(remote.o): Add -I. before -I$(srcdir). |
5440 |
|
5441 |
Mon Dec 28 15:51:26 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5442 |
|
5443 |
* Version 3.62.23. |
5444 |
|
5445 |
* read.c (readline): Fatal when LEN==0, indicating a line starting |
5446 |
with a NUL. |
5447 |
(readline): Take new arg LINENO, for use in error msg. |
5448 |
(read_makefile, do_define): Pass it. |
5449 |
|
5450 |
* compatMakefile (glob/libglob.a): Pass -DHAVE_CONFIG_H in CPPFLAGS. |
5451 |
(.c.o): Add -I. before -I$(srcdir). |
5452 |
|
5453 |
Wed Dec 23 12:12:04 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5454 |
|
5455 |
* read.c (read_makefile): Accept and ignore a rule with no targets. |
5456 |
|
5457 |
* compatMakefile (ALLOCA_SRC): New variable. |
5458 |
(srcs): Include its value. |
5459 |
|
5460 |
* read.c (struct conditional): Renamed member `max_ignoring' to |
5461 |
`allocated'; added new member `seen_else'. |
5462 |
(conditional_line): Initialize seen_else flag when starting an `if...'; |
5463 |
set it when we see an `else'; fatal if set when we see `else'. |
5464 |
(read_makefile): Fatal "missing `endif'" if there are any pending |
5465 |
conditionals, not just if we are still ignoring. |
5466 |
|
5467 |
Tue Dec 22 15:36:28 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5468 |
|
5469 |
* compatMakefile (manext): Set to 1, not l. |
5470 |
($(mandir)/$(instname).$(manext)): Use $(srcdir) for make.man in cmds. |
5471 |
|
5472 |
* file.c (file_hash_enter): Don't call uniquize_deps here. |
5473 |
* read.c (record_files): Likewise. |
5474 |
* implicit.c (pattern_search): Likewise. |
5475 |
* commands.c (set_file_variables): Call it only here. |
5476 |
|
5477 |
* default.c (default_variables) [__convex__]: FC=fc. |
5478 |
|
5479 |
* variable.c (target_environment): Expand the values of recursively |
5480 |
expanded variables when putting them into the environment. |
5481 |
* expand.c (recursively_expand): Made global. |
5482 |
* make.h (recursively_expand): Declare it. |
5483 |
|
5484 |
* remake.c (check_dep): Set FILE->command_state to cs_deps_running |
5485 |
when a dep's command_state is cs_running or cs_deps_running. |
5486 |
|
5487 |
* read.c (read_makefile): Changed error msg for spurious cmds to |
5488 |
not say "first target". |
5489 |
|
5490 |
Sun Dec 20 17:56:09 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
5491 |
|
5492 |
* configure.in: Do AC_CONFIG_HEADER right after AC_INIT. |
5493 |
* make.h (HAVE_CONFIG_H): #include "config.h", then #define this. |
5494 |
* compatMakefile (config.h, configure, config.h.in): New rules. |
5495 |
(defines): Removed @DEFS@. |
5496 |
|
5497 |
Thu Dec 17 16:11:40 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5498 |
|
5499 |
* compatMakefile (realclean): Just depend on distclean; no cmds. |
5500 |
(distclean): Do what realclean did before; also remove Makefile and |
5501 |
config.h; don't remove configure. |
5502 |
(info, dvi): New targets; depend on make.{info,dvi}. |
5503 |
(doc): Removed target. |
5504 |
(MAKEINFO, TEXI2DVI): New vars. |
5505 |
(make.info, make.dvi): Use them instead of explicit cmds. |
5506 |
|
5507 |
Wed Dec 16 16:25:24 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5508 |
|
5509 |
* configure.in: Added fcntl.h to AC_HAVE_HEADERS. getloadavg cares. |
5510 |
|
5511 |
Wed Dec 9 15:21:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5512 |
|
5513 |
* main.c (long_option_aliases): Add --new-file alias for -W. |
5514 |
|
5515 |
* default.c (default_variables): Change all C++ to CXX and C++FLAGS |
5516 |
to CXXFLAGS. |
5517 |
|
5518 |
* read.c (do_define): Expand the variable name before using it. |
5519 |
|
5520 |
* main.c (main): Define variable "MAKE_COMMAND" to argv[0]; |
5521 |
define "MAKE=$(MAKE_COMMAND) $(MAKEOVERRIDES)" always. |
5522 |
|
5523 |
* remake.c (library_search): Search for libNAME.a in cwd; look in |
5524 |
vpath before looking in standard dirs, not after. |
5525 |
Changed order of std dirs to: /lib, /usr/lib, ${prefix}/lib. |
5526 |
|
5527 |
Mon Nov 23 14:57:34 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5528 |
|
5529 |
* default.c (default_pattern_rules, default_terminal_rules): Added |
5530 |
brackets around initializers. |
5531 |
|
5532 |
* variable.c (try_variable_definition): Don't check for LINE[0]=='\t'. |
5533 |
(try_variable_definition): Expand the name before defining the var. |
5534 |
|
5535 |
* job.c (init_siglist): Removed function. |
5536 |
Removed decl of `sys_siglist'. |
5537 |
* make.h [! HAVE_SYS_SIGLIST]: #include "signame.h". |
5538 |
[HAVE_SYS_SIGLIST && !SYS_SIGLIST_DECLARED]: Declare sys_siglist |
5539 |
only under these conditions. |
5540 |
* main.c (main): Don't declare init_siglist. |
5541 |
(main) [! HAVE_SYS_SIGLIST]: Call signame_init instead of init_siglist. |
5542 |
|
5543 |
Wed Nov 18 14:52:51 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5544 |
|
5545 |
* read.c (record_files): Don't try to append to FIRSTDEPS if it's |
5546 |
nil; instead just set it to MOREDEPS. |
5547 |
|
5548 |
Mon Nov 16 17:49:17 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5549 |
|
5550 |
* vpath.c (construct_vpath_list): Initialize P to DIRPATH before |
5551 |
loop that sets MAXELEM. |
5552 |
|
5553 |
Fri Nov 13 18:23:18 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5554 |
|
5555 |
* Version 3.62.22. |
5556 |
|
5557 |
Thu Nov 12 15:45:31 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5558 |
|
5559 |
* job.c (start_job_command): Under -n, increment files_remade after |
5560 |
processing (i.e., printing) all command lines. |
5561 |
|
5562 |
Tue Nov 10 15:33:53 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5563 |
|
5564 |
* read.c (record_files): Append new deps if this rule has no |
5565 |
commands; prepend them to existing deps if this rule has no commands. |
5566 |
|
5567 |
* dir.c (open_dirstream): Return nil if DIR->contents->files is nil. |
5568 |
|
5569 |
* read.c (parse_file_seq): Removed last arg STRIP. Always strip `./'s. |
5570 |
(read_makefile): Changed callers. |
5571 |
* function.c (string_glob): Likewise. |
5572 |
* rule.c (install_pattern_rule): Likewise. |
5573 |
|
5574 |
Mon Nov 9 17:50:16 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5575 |
|
5576 |
* remake.c (files_remade): Made global. |
5577 |
(notice_finished_file): Don't increment files_remade here; this |
5578 |
function gets called in many situations where no remaking was in |
5579 |
fact done. |
5580 |
* job.c (reap_children): Do it here instead, when we know that |
5581 |
actual commands have been run for the file. |
5582 |
* make.h (files_remade): Declare it. |
5583 |
|
5584 |
Thu Nov 5 18:26:10 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5585 |
|
5586 |
* vpath.c (construct_vpath_list): Allow blanks as well as colons to |
5587 |
separate elts in the search path. |
5588 |
|
5589 |
* read.c (read_makefile): Don't fatal on extra tokens in `vpath'. |
5590 |
The search path can contain spaces now. |
5591 |
|
5592 |
Tue Nov 3 20:44:32 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5593 |
|
5594 |
* compatMakefile (check): New target; no-op. |
5595 |
|
5596 |
* file.c (file_hash_enter): Mod OLDHASH by FILE_BUCKETS after |
5597 |
testing for OLDHASH==0 but before using the value. |
5598 |
(rename_file): Don't mod OLDHASH by FILE_BUCKETS before passing it |
5599 |
to file_hash_enter. |
5600 |
|
5601 |
* file.c (rename_file): Notice when OLDFILE->cmds came from |
5602 |
default.c, and don't try to print ->filename in that case. |
5603 |
|
5604 |
Sun Oct 25 01:48:23 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5605 |
|
5606 |
* remake.c (update_file): Don't process F->also_make here. |
5607 |
(notice_finished_file): Don't process FILE->also_make if no attempt |
5608 |
to update FILE was actually made. |
5609 |
Fixed to call f_mtime directly to refresh their modtimes. |
5610 |
|
5611 |
Sat Oct 24 22:08:59 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5612 |
|
5613 |
* read.c (find_percent): Don't increment P again after skipping |
5614 |
an escaped %. |
5615 |
|
5616 |
* expand.c (variable_expand): In call to patsubst_expand, don't |
5617 |
find `%'s ourselves; let that function do it. |
5618 |
|
5619 |
* read.c (read_makefile: record_waiting_files): Don't call |
5620 |
record_files if FILENAMES is nil. |
5621 |
(read_makefile): All alternatives in the parsing, except for rule |
5622 |
lines, fall through to the end of the loop. At the end of the |
5623 |
loop, do record_waiting_files so we notice later spurious cmds. |
5624 |
|
5625 |
Fri Oct 23 15:57:37 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5626 |
|
5627 |
* variable.c (define_automatic_variables): Free old value of SHELL |
5628 |
before replacing it. |
5629 |
|
5630 |
Thu Oct 15 18:57:56 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5631 |
|
5632 |
* compatMakefile (.c.o): Add -I$(srcdir)/glob to flags. |
5633 |
|
5634 |
* dir.c (open_dirstream): Cast return value to __ptr_t. |
5635 |
|
5636 |
* default.c (default_variables: "GET") [_IBMR2]: Use USG defn. |
5637 |
|
5638 |
* make.h (MAXPATHLEN): Moved out of #ifndef POSIX. |
5639 |
(GET_PATH_MAX): Moved from #ifdef POSIX to #ifdef PATH_MAX #else. |
5640 |
Define as (get_path_max ()). |
5641 |
[! PATH_MAX] (NEED_GET_PATH_MAX): Define. |
5642 |
[! PATH_MAX] (get_path_max): Declare fn. |
5643 |
* misc.c [NEED_GET_PATH_MAX] (get_path_max): New function. |
5644 |
|
5645 |
Mon Oct 12 13:34:45 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5646 |
|
5647 |
* Version 3.62.21. |
5648 |
|
5649 |
* job.c (sys_siglist): Only declare #ifndef SYS_SIGLIST_DECLARED. |
5650 |
* make.h [! HAVE_SYS_SIGLIST && HAVE__SYS_SIGLIST]: #define |
5651 |
SYS_SIGLIST_DECLARED. |
5652 |
|
5653 |
* dir.c (file_impossible): When initializing DIR->contents, set |
5654 |
DIR->contents->dirstream to nil. |
5655 |
|
5656 |
* compatMakefile (GLOB): Define new variable. |
5657 |
(objs): Use it, rather than glob/libglob.a explicitly. |
5658 |
|
5659 |
* read.c (parse_file_seq): When stripping "./", handle cases like |
5660 |
".///foo" and "./////". |
5661 |
* file.c (lookup_file, enter_file): Likewise. |
5662 |
|
5663 |
Sun Oct 11 17:00:35 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5664 |
|
5665 |
* dir.c (struct dirstream, {open,read}_dirstream): New |
5666 |
data type and functions to read a directory sequentially. |
5667 |
(init_dir): New function to hook it into glob. |
5668 |
* main.c (main): Call init_dir. |
5669 |
|
5670 |
* compatMakefile (objs): Added glob/libglob.a. |
5671 |
* configure.in: Remove code to test for glob. |
5672 |
|
5673 |
Fri Oct 9 12:08:30 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5674 |
|
5675 |
* read.c (record_files): Generalized test for NAME pointing |
5676 |
somewhere into F->name. |
5677 |
|
5678 |
* variable.c (define_variable_in_set): Free old value when replacing. |
5679 |
|
5680 |
* read.c (do_define): Free the linebuffer before returning. |
5681 |
(record_files): When clearing .SUFFIXES deps, free their data. |
5682 |
(multi_glob): Free OLD and its data when replacing it with results |
5683 |
of glob run. |
5684 |
|
5685 |
* commands.c (set_file_variables): Use alloca in place of xmalloc |
5686 |
for temp space for $^, $?, et al. |
5687 |
|
5688 |
* dir.c (struct directory): New member `contents' replaces `files' |
5689 |
and `dirstream'. |
5690 |
(struct directory_contents): New type. |
5691 |
(directories_contents): New hash table. |
5692 |
(dir_struct_file_exists_p): Take a struct directory_contents. |
5693 |
(dir_file_exists_p): Pass it the `contents' member of the dir found. |
5694 |
(dir_struct_file_exists_p): Renamed to dir_contents_file_exists_p; |
5695 |
made static. Return 0 if DIR is nil (meaning it couldn't be stat'd). |
5696 |
(dir_file_exists_p, find_directory): Change all callers. |
5697 |
(file_impossible): Use DIR->contents, initializing it if nil. |
5698 |
(print_dir_data_base): Use DIR->contents, and print out device and |
5699 |
inode numbers with each directory. |
5700 |
|
5701 |
* Changes for performance win from John Gilmore <gnu@cygnus.com>: |
5702 |
* dir.c (DIRECTORY_BUCKETS): Increase to 199. |
5703 |
(DIRFILE_BUCKETS): Decrease to 107. |
5704 |
(find_directory): Allocate and zero a multiple of |
5705 |
sizeof (struct dirfile *), not of sizeof (struct dirfile). |
5706 |
(dir_struct_file_exists_p): New function, nearly all code from |
5707 |
dir_file_exists_p. |
5708 |
(dir_file_exists_p): Just call find_directory+dir_struct_file_exists_p. |
5709 |
* vpath.c (selective_vpath_search): Remove redundant |
5710 |
dir_file_exists_p call. |
5711 |
|
5712 |
* configure.in: Comment out glob check; always use our code. |
5713 |
|
5714 |
Fri Oct 2 19:41:20 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5715 |
|
5716 |
* make.h [! HAVE_SYS_SIGLIST && HAVE__SYS_SIGLIST]: #define |
5717 |
HAVE_SYS_SIGLIST; after doing #define sys_siglist _sys_siglist, we |
5718 |
do have it. |
5719 |
|
5720 |
Wed Sep 30 19:21:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5721 |
|
5722 |
* main.c (main): Don't do -w automatically if -s. |
5723 |
|
5724 |
Tue Sep 29 21:07:55 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5725 |
|
5726 |
* main.c (printed_version): Move variable inside print_version. |
5727 |
(print_version): Return immediately if printed_version is set. |
5728 |
(die): Don't test printed_version here. |
5729 |
(decode_switches): Under -v, do print_version before giving usage. |
5730 |
(DESCRIPTION_COLUMN): New macro. |
5731 |
(decode_switches): Use it when printing the usage message. |
5732 |
Leave at least two spaces between options and their descriptions. |
5733 |
|
5734 |
Fri Sep 25 13:12:42 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5735 |
|
5736 |
* Version 3.62.20. |
5737 |
|
5738 |
Wed Sep 16 16:15:22 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5739 |
|
5740 |
* read.c (read_makefile): Save errno value from trying to open |
5741 |
FILENAME, and restore it before erring; otherwise we get the errno |
5742 |
value from the last elt of the search path. |
5743 |
|
5744 |
Tue Sep 15 15:12:47 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5745 |
|
5746 |
* main.c (long_option_aliases): Add --stop for -S. |
5747 |
|
5748 |
* read.c (word1eq): Do strncmp before dereferencing someplace that |
5749 |
may be out in space. |
5750 |
|
5751 |
Wed Sep 9 15:50:41 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5752 |
|
5753 |
* remake.c (notice_finished_file): If all the command lines were |
5754 |
recursive, don't do the touching. |
5755 |
|
5756 |
* job.c (start_job_command): Don't check for + here. |
5757 |
* commands.c (chop_commands): Do it here instead. |
5758 |
|
5759 |
* default.c (default_terminal_rules): Prepend + to cmds for RCS. |
5760 |
|
5761 |
Wed Sep 2 17:53:08 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5762 |
|
5763 |
* compatMakefile (objs): Include $(ALLOCA). |
5764 |
|
5765 |
* make.h [CRAY]: Move #define signal bsdsignal to before #includes. |
5766 |
|
5767 |
Thu Aug 27 17:45:43 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
5768 |
|
5769 |
* read.c (default_include_directories): Add INCLUDEDIR first. |
5770 |
* compatMakefile (includedir): Define. |
5771 |
(defines): Add -D for INCLUDEDIR="$(includedir)". |
5772 |
|
5773 |
* read.c (read_makefile): Grok multiple files in `include'; |
5774 |
globbing too. |
5775 |
|
5776 |
* remake.c (library_search): New function. |
5777 |
(library_file_mtime): Remove function. |
5778 |
(f_mtime): Use library_search instead of library_file_mtime. |
5779 |
* compatMakefile (libdir): Define. |
5780 |
(defines): Add -D for LIBDIR="$(libdir)". |
5781 |
* make.texinfo (Libraries/Search): Document change. |
5782 |
|
5783 |
* file.c (rename_file): Fix file_hash_enter call with missing arg. |
5784 |
|
5785 |
Wed Aug 26 17:10:46 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5786 |
|
5787 |
* Version 3.62.19. |
5788 |
|
5789 |
* main.c (main): Set command_state to cs_finished for temp files |
5790 |
made for stdin makefiles. |
5791 |
|
5792 |
* main.c (decode_switches): Don't tell getopt to return non-option |
5793 |
args in order. |
5794 |
Ignore an argument of `-'. |
5795 |
|
5796 |
Thu Aug 20 13:36:04 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5797 |
|
5798 |
* job.c (start_job_command): If (touch_flag && !RECURSIVE), ignore |
5799 |
the command line and go to the next. |
5800 |
(notice_finished_file): Under -t, touch FILE. |
5801 |
* remake.c (remake_file): Don't touch it here. |
5802 |
|
5803 |
Wed Aug 19 16:06:09 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5804 |
|
5805 |
* function.c (pattern_matches): Use temporary for strlen (WORD) |
5806 |
instead of two function calls. |
5807 |
|
5808 |
* compatMakefile (LOAD_AVG): Remove variable and comments. |
5809 |
|
5810 |
Tue Aug 18 14:58:58 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5811 |
|
5812 |
* make.texinfo (Running): Node renamed to `make Invocation'. |
5813 |
|
5814 |
Fri Aug 14 12:27:10 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5815 |
|
5816 |
* arscan.c (ar_name_equal): Don't compare [MAX-3..MAX] if |
5817 |
NAMELEN != MEMLEN. |
5818 |
|
5819 |
Thu Aug 13 17:50:09 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5820 |
|
5821 |
* Version 3.62.18. |
5822 |
|
5823 |
* main.c: Don't #include <time.h>; make.h already does. |
5824 |
|
5825 |
Mon Aug 10 17:03:01 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5826 |
|
5827 |
* implicit.c (pattern_search): Fixed copying of suffix when building |
5828 |
also_make elts. |
5829 |
|
5830 |
* function.c (expand_function: `shell'): Make sure BUFFER is |
5831 |
null-terminated before replacing newlines. |
5832 |
|
5833 |
* compatMakefile (mandir): Use man$(manext), not always manl. |
5834 |
|
5835 |
Sun Aug 2 01:42:50 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5836 |
|
5837 |
* rule.c (new_pattern_rule): Not static. |
5838 |
* rule.h: Declare it. |
5839 |
|
5840 |
* file.c (file_hash_enter): New function, most code from rename_file. |
5841 |
(rename_file): Call it. |
5842 |
* file.h (file_hash_enter): Declare it. |
5843 |
|
5844 |
* dep.h: Doc fix. |
5845 |
|
5846 |
Thu Jul 30 15:40:48 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5847 |
|
5848 |
* main.c (decode_switches): Handle usage_and_exit when building |
5849 |
long options vector. |
5850 |
|
5851 |
* default.c (default_terminal_rules): Make RCS rules use $(CHECKOUT,v). |
5852 |
(default_variables): Define CHECKOUT,v (hairy). |
5853 |
|
5854 |
* make.h [!HAVE_SYS_SIGLIST && HAVE__SYS_SIGLIST]: #define |
5855 |
sys_siglist to _sys_siglist. |
5856 |
|
5857 |
Sun Jul 26 16:56:32 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5858 |
|
5859 |
* NEWS: Add header and tail copyright info like Emacs NEWS. |
5860 |
|
5861 |
* make.h [ANSI_STRING]: Don't #define index, rindex, bcmp, bzero, |
5862 |
bcopy if already #define'd. |
5863 |
[STDC_HEADERS] (qsort, abort, exit): Declare here. |
5864 |
[! __GNU_LIBRARY__ && !POSIX]: Not here. |
5865 |
|
5866 |
* make.h [_AIX]: #pragma alloca first thing. |
5867 |
|
5868 |
* job.c (start_waiting_job): Set the command_state to cs_running |
5869 |
when we queue a job on waiting_jobs. |
5870 |
|
5871 |
Fri Jul 24 02:16:28 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5872 |
|
5873 |
* variable.c (define_automatic_variables): Use "" instead of nil |
5874 |
for empty value. |
5875 |
|
5876 |
Thu Jul 23 22:31:18 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5877 |
|
5878 |
* Version 3.62.17. |
5879 |
|
5880 |
* main.c (struct command_switch.type): Add alternative usage_and_exit. |
5881 |
(command_switches): Add -h/--help. |
5882 |
|
5883 |
Thu Jul 16 14:27:50 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5884 |
|
5885 |
* GNUmakefile (make-$(version).tar.Z): Include NEWS, not CHANGES. |
5886 |
* README.template: Mention NEWS. |
5887 |
* CHANGES: Renamed to NEWS. |
5888 |
|
5889 |
* main.c [! STDC_HEADERS] [sun]: Don't declare exit. |
5890 |
|
5891 |
Tue Jul 14 18:48:41 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5892 |
|
5893 |
* main.c (main): Set -o files' command_states to cs_finished. |
5894 |
|
5895 |
* rule.c (count_implicit_rule_limits): Decrement num_pattern_rules |
5896 |
when tossing a rule. |
5897 |
|
5898 |
* main.c (main): Use alloca only in simple local var assignment, |
5899 |
for braindead SGI compiler. |
5900 |
|
5901 |
* rule.c (print_rule_data_base): Barf if num_pattern_rules is |
5902 |
inconsistent with the number computed when listing them. |
5903 |
|
5904 |
Mon Jul 13 17:51:53 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5905 |
|
5906 |
* commands.c (set_file_variables): For $? and $^ elts that are archive |
5907 |
member refs, use member name only. |
5908 |
|
5909 |
Fri Jul 10 00:05:04 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5910 |
|
5911 |
* variable.h (struct variable.export): Add new alternative v_ifset. |
5912 |
* variable.c (target_environment): Check for it. |
5913 |
(define_automatic_variables): Set it for MAKEFILES. |
5914 |
|
5915 |
Thu Jul 9 21:24:28 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5916 |
|
5917 |
* compatMakefile (objs): Remove getloadavg.o; $(extras) gets it. |
5918 |
(remote.o): Use $(srcdir)/remote.c, not $remote.c<. |
5919 |
(distclean, mostlyclean): New targets. |
5920 |
|
5921 |
Tue Jul 7 19:12:49 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5922 |
|
5923 |
* Version 3.62.16. |
5924 |
|
5925 |
* compatMakefile (config.status): Remove rule. |
5926 |
|
5927 |
* job.c (start_waiting_job): Free C after using C->file, not before. |
5928 |
|
5929 |
Sat Jul 4 20:51:49 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5930 |
|
5931 |
* commands.c, job.c, main.c, make.h, remote-cstms.c: Use #ifdef |
5932 |
HAVE_* instead of #ifndef *_MISSING. |
5933 |
* configure.in: Use AC_HAVE_FUNCS instead of AC_MISSING_FUNCS (gone). |
5934 |
|
5935 |
Thu Jul 2 18:47:52 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5936 |
|
5937 |
* main.c (main): makelevel>0 or -C implies -w. |
5938 |
|
5939 |
Tue Jun 30 20:50:17 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5940 |
|
5941 |
* file.c, job.c, function.c: Don't #include <errno.h>. |
5942 |
make.h: Do it here instead. |
5943 |
* arscan.c (ar_member_touch): Don't declare errno. |
5944 |
|
5945 |
Thu Jun 25 17:06:55 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5946 |
|
5947 |
* GNUmakefile (make-$(version).tar.Z): Depend on INSTALL, configure.in. |
5948 |
|
5949 |
* remake.c (update_file): If commands or deps are running after |
5950 |
update_file_1 returns, break out of the :: rule (->prev) loop and |
5951 |
just return. |
5952 |
|
5953 |
* job.c (job_next_command): New function; code from start_job. |
5954 |
(start_job_command): Renamed from start_job. Call job_next_command |
5955 |
and recurse for empty command lines and -n. |
5956 |
(start_waiting_job): Call start_job_command, not start_job. |
5957 |
(new_job): Call job_next_command to prime the child structure, and |
5958 |
then call start_waiting_job. |
5959 |
(reap_children): Use job_next_command and start_job_command. |
5960 |
(start_waiting_job): Call start_remote_job_p here, and store its |
5961 |
result in C->remote. If zero, check the load average and |
5962 |
maybe put C on waiting_jobs. |
5963 |
(start_job_command): Test CHILD->remote rather than calling |
5964 |
start_remote_job_p. Don't do load avg checking at all here. |
5965 |
|
5966 |
* main.c (main): Don't handle SIGILL, SIGIOT, SIGEMT, SIGBUS, |
5967 |
SIGSEGV, SIGFPE or SIGTRAP. |
5968 |
|
5969 |
* compatMakefile (glob/libglob.a): Don't pass srcdir to sub-make. |
5970 |
configure will set it in glob/Makefile. |
5971 |
|
5972 |
Wed Jun 24 19:40:34 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5973 |
|
5974 |
* dir.c [DIRENT] (direct): Don't define to dirent. |
5975 |
[! DIRENT] (direct): Define to dirent. |
5976 |
(dir_file_exists_p): Use struct dirent instead of struct direct. |
5977 |
|
5978 |
* make.h (getcwd): No space between macro and ( for args! |
5979 |
|
5980 |
* job.c (start_job): Don't put the job on waiting_jobs if |
5981 |
job_slots_used==0. |
5982 |
|
5983 |
* make.texinfo (Missing): Shortened title. |
5984 |
|
5985 |
Tue Jun 23 18:42:21 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5986 |
|
5987 |
* file.c (remove_intermediates): Print "rm" commands under -n. |
5988 |
|
5989 |
Mon Jun 22 16:20:02 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5990 |
|
5991 |
* Version 3.62.15. |
5992 |
|
5993 |
Fri Jun 19 16:20:26 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
5994 |
|
5995 |
* arscan.c [M_UNIX]: #undef M_XENIX. |
5996 |
|
5997 |
Wed Jun 17 17:59:28 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
5998 |
|
5999 |
* default.c (default_terminal_rules): Put @ prefix on RCS cmds. |
6000 |
|
6001 |
Tue Jun 16 19:24:17 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6002 |
|
6003 |
* compatMakefile (getloadavg.o): Removed special rule. |
6004 |
(CFLAGS): Don't include $(defines). |
6005 |
(.c.o): Define suffix rule. |
6006 |
(glob/libglob.a): Pass CPPFLAGS=$(defines) to submake. |
6007 |
(GETOPT_SRC, srcs, tagsrcs): Prefix files with $(srcdir)/. |
6008 |
|
6009 |
* arscan.c (ar_name_equal): Moved local vars inside #if'd block. |
6010 |
|
6011 |
* make.h (max): Removed. |
6012 |
* expand.c (variable_buffer_output): Don't use it. |
6013 |
|
6014 |
* compatMakefile (INSTALL): Define. |
6015 |
(Makefile): New rule to make from Makefile.in. |
6016 |
(srcdir): Define. |
6017 |
(VPATH): Define. |
6018 |
(getloadavg.o, remote.o): Use autoconf $foo< hack. |
6019 |
|
6020 |
* commands.c (fatal_error_signal): Removed return. |
6021 |
|
6022 |
Mon Jun 15 17:42:51 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6023 |
|
6024 |
* Version 3.62.14. |
6025 |
|
6026 |
* make.texinfo (Summary): New node. |
6027 |
(Special Targets): Mention .EXPORT_ALL_VARIABLES here. |
6028 |
|
6029 |
* variable.c (max): Moved to make.h. |
6030 |
|
6031 |
* compatMakefile (objs, srcs): Added ar & arscan. |
6032 |
|
6033 |
* job.c (start_waiting_job): New function, 2nd half of new_job. |
6034 |
(new_job): Call it. |
6035 |
(start_waiting_jobs): New function. |
6036 |
* remake.c (update_goal_chain): Call start_waiting_jobs at the top |
6037 |
of the main loop. |
6038 |
* compatMakefile (objs, srcs): Removed load, added getloadavg. |
6039 |
|
6040 |
Fri Jun 12 19:33:16 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6041 |
|
6042 |
* job.c (load_too_high): New function. Uses getloadavg. |
6043 |
(waiting_jobs): New variable. |
6044 |
(start_job): Don't call wait_to_start_job. Instead, if |
6045 |
load_too_high returns nonzero, add the child to the |
6046 |
`waiting_jobs' chain and return without starting the job. |
6047 |
|
6048 |
Thu Jun 11 00:05:28 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6049 |
|
6050 |
* expand.c (variable_buffer_output): Made global again. |
6051 |
* variable.h: And declare it. |
6052 |
|
6053 |
* arscan.c (PORTAR): Define for all systems if PORT5AR is not defined. |
6054 |
(AR_NAMELEN, AR_TRAILING_SLASH): Removed. |
6055 |
(ar_scan): Don't use it. Don't #ifdef AR_TRAILING_SLASH; just look |
6056 |
for a slash in the archive at run time. |
6057 |
(ar_name_equal): Rewrote .o hacking to not use AR_NAMELEN, and to |
6058 |
cope with trailing-slash and non-trailing-slash archives. |
6059 |
|
6060 |
* main.c (main) [! SETVBUF_REVERSED]: Test this instead of USGr3 et al. |
6061 |
[SETVBUF_REVERSED]: Always allocate a buffer ourselves. |
6062 |
|
6063 |
* load.c (load_average) [sgi]: Use sysmp call. |
6064 |
|
6065 |
* compatMakefile (INSTALL_DATA, INSTALL_PROGRAM): Define. |
6066 |
($(bindir)/$(instname), $(mandir)/make.$(manext)): Use them. |
6067 |
|
6068 |
* make.h [HAVE_VFORK_H]: #include <vfork.h>. |
6069 |
(vfork, VFORK_NAME): Don't define. |
6070 |
* job.c (start_job): Use "vfork" in place of VFORK_NAME. |
6071 |
|
6072 |
* make.h [HAVE_LIMITS_H, HAVE_SYS_PARAM_H]: If #define'd, #include |
6073 |
the each file. Rearranged PATH_MAX hacking. |
6074 |
* job.c: Rearranged NGROUPS_MAX hacking. |
6075 |
|
6076 |
* remake.c (fstat, time): Don't declare. |
6077 |
|
6078 |
* compatMakefile (defines): Value is @DEFS@. |
6079 |
(LOADLIBES): Value is @LIBS@. |
6080 |
(extras): Value is @LIBOBJS@. |
6081 |
(ARCHIVES, ARCHIVES_SRC, ALLOCASRC): Removed. |
6082 |
* arscan.c, ar.c: Surround body with #ifndef NO_ARCHIVES. |
6083 |
|
6084 |
* misc.c [! HAVE_UNISTD_H]: Test instead of !POSIX to decl get*id. |
6085 |
|
6086 |
* make.h [GETCWD_MISSING]: Test instead of !USG && !POSIX et al. |
6087 |
(getcwd): Just declare if present. If not, declare as a macro |
6088 |
using getwd, and declare getwd. |
6089 |
[PATH_MAX] (GET_PATH_MAX): #define to PATH_MAX. |
6090 |
* main.c (main, log_working_directory): Use getcwd instead of getwd. |
6091 |
|
6092 |
* main.c (main) [SETLINEBUF_MISSING]: Test this instead of USG. |
6093 |
|
6094 |
* make.h (SIGHANDLER, SIGNAL): Removed. |
6095 |
(RETSIGTYPE): Define if not #define'd. |
6096 |
* main.c (main): Use signal in place of SIGNAL. |
6097 |
|
6098 |
* main.c [SYS_SIGLIST_MISSING]: Test instead of USG. |
6099 |
|
6100 |
* job.c (search_path) [GETGROUPS_MISSING]: Test instead of USG. |
6101 |
[HAVE_UNISTD_H]: Test instead of POSIX to not decl getgroups. |
6102 |
|
6103 |
* main.c [! HAVE_UNISTD_H]: Test instead of !POSIX to decl chdir. |
6104 |
[! STDC_HEADERS]: Test instead of !POSIX to decl exit & atof. |
6105 |
|
6106 |
* job.c (child_handler), commands.c (fatal_error_signal): Return |
6107 |
RETSIGTYPE instead of int. |
6108 |
* main.c (main): Declare fatal_error_signal and child_handler here |
6109 |
to return RETSIGTYPE; removed top-level decl of former. |
6110 |
|
6111 |
* commands.c (fatal_error_signal), job.c (unblock_sigs, start_job), |
6112 |
main.c [SIGSETMASK_MISSING]: Test this instead of USG. |
6113 |
|
6114 |
Wed Jun 10 22:06:13 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6115 |
|
6116 |
* job.c [HAVE_WAITPID]: Test this instead of USG. |
6117 |
[! HAVE_UNISTD_H]: Test this instead of !POSIX to declare misc fns. |
6118 |
(GID_T): Don't #define. |
6119 |
(search_path): Use gid_t instead of GID_T. |
6120 |
[GETDTABLESIZE_MISSING, SYS_SIGLIST_MISSING, DUP2_MISSING]: Test |
6121 |
these individually instead of USG for all. |
6122 |
* make.h (ctime): Don't declare. #include time.h instead. |
6123 |
[HAVE_UNISTD_H]: #include <unistd.h> and #define POSIX #ifdef |
6124 |
_POSIX_VERSION. |
6125 |
* dir.c [__GNU_LIBRARY__] (D_NAMLEN): Define to use d_namlen member. |
6126 |
* make.h [NEED_MEMORY_H]: Only include memory.h #ifdef this. |
6127 |
|
6128 |
* arscan.c: Removed #ifdef mess about string.h et al. |
6129 |
Just #include make.h instead. |
6130 |
* make.h (fstat, atol): Declare. |
6131 |
|
6132 |
* commands.c (fatal_error_signal): Don't use sigmask to check for |
6133 |
propagated signals; use ||s instead. |
6134 |
(PROPAGATED_SIGNAL_MASK): Removed. |
6135 |
(fatal_error_signal) [POSIX]: Use sigprocmask in place of sigsetmask. |
6136 |
|
6137 |
* variable.c (variable_buffer, variable_buffer_length, |
6138 |
initialize_variable_output, variable_output): Moved to expand.c; |
6139 |
made all static. |
6140 |
(struct output_state, save_variable_output, |
6141 |
restore_variable_output): Removed. |
6142 |
* expand.c (initialize_variable_output): Put a NUL at the beginning |
6143 |
of the new buffer after allocating it. |
6144 |
(allocated_variable_expand_for_file): Don't use |
6145 |
{save,restore}_variable_output. Do it by hand instead, keeping |
6146 |
state on the stack instead of malloc'ing it. |
6147 |
(allocated_variable_expand): Removed. |
6148 |
* variable.h (allocated_variable_expand): Define here as macro. |
6149 |
(variable_buffer_output, initialize_variable_output, |
6150 |
save_variable_output, restore_variable_output): Removed decls. |
6151 |
|
6152 |
* read.c (conditional_line): For an if cmd, if any elt of the |
6153 |
conditionals stack is ignoring, just push a new level that ignores |
6154 |
and return 1; don't evaluate the condition. |
6155 |
|
6156 |
Thu Jun 4 21:01:20 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6157 |
|
6158 |
* main.c (main): Put #ifdef's around frobbing SIGSYS and SIGBUS. |
6159 |
|
6160 |
* job.c (getdtablesize): Don't declare or #define if already #define'd. |
6161 |
|
6162 |
Wed Jun 3 23:42:36 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6163 |
|
6164 |
* file.c (snap_deps): If `.EXPORT_ALL_VARIABLES' is a target, set |
6165 |
export_all_variables. |
6166 |
* make.texinfo (Variables/Recursion): Document .EXPORT_ALL_VARIABLES. |
6167 |
|
6168 |
Tue Jun 2 21:08:35 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6169 |
|
6170 |
* Version 3.62.13. |
6171 |
|
6172 |
* commands.c (set_file_variables): Calculate length for ^D and ?D |
6173 |
individually, making sure to give them at least enough space for "./". |
6174 |
|
6175 |
* make.h [CRAY]: #define signal to bsdsignal. |
6176 |
|
6177 |
* default.c (default_variables) [CRAY]: Define PC, SEGLDR, |
6178 |
CF77PPFLAGS, CF77PP, CFT, CF, and FC. |
6179 |
|
6180 |
* arscan.c (AR_HDR_SIZE): Define to sizeof (struct ar_hdr), if it |
6181 |
wasn't defined by <ar.h>. |
6182 |
|
6183 |
Thu May 28 00:56:53 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6184 |
|
6185 |
* Version 3.62.12. |
6186 |
|
6187 |
Tue May 26 01:26:30 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6188 |
|
6189 |
* rule.c (new_pattern_rule): Initialize LASTRULE to nil, not |
6190 |
pattern_rules. |
6191 |
|
6192 |
Mon May 25 19:02:15 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6193 |
|
6194 |
* main.c (decode_switches): Initialize all the long_option elt members. |
6195 |
|
6196 |
Thu May 21 16:34:24 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6197 |
|
6198 |
* make.texinfo (Text Functions): Correct filter-out description. |
6199 |
|
6200 |
Tue May 19 20:50:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6201 |
|
6202 |
* compatMakefile (realclean): Don't remove backup files. |
6203 |
|
6204 |
* main.c (decode_switches): Allocate ARGC+1 elts in `other_args'. |
6205 |
|
6206 |
Sun May 17 16:38:48 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6207 |
|
6208 |
* Version 3.62.11. |
6209 |
|
6210 |
Thu May 14 16:42:33 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6211 |
|
6212 |
* job.c (reap_children): Don't die if wait returns EINTR. |
6213 |
|
6214 |
Wed May 13 18:28:25 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6215 |
|
6216 |
* job.c (reap_children): Always run the next command for a |
6217 |
successful target. If we are going to die, we don't want to leave |
6218 |
the target partially made. |
6219 |
|
6220 |
Tue May 12 00:39:19 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6221 |
|
6222 |
* job.c (construct_command_argv_internal): After loop, if we only |
6223 |
have one word, check it for being a shell command. |
6224 |
|
6225 |
* main.c (decode_switches): Allocate ARGC slots in other_args to |
6226 |
begin with, so we never need to worry about growing it. |
6227 |
If we get a non-option arg and POSIXLY_CORRECT is in the |
6228 |
environment, break out of the loop. After the loop, add all remaining |
6229 |
args to other_args list. |
6230 |
|
6231 |
* main.c (decode_switches): For positive_int and floating switches |
6232 |
when optarg is nil, use next arg if it looks right (start with a |
6233 |
digit, or maybe decimal point for floating). |
6234 |
|
6235 |
* variable.c (define_automatic_variables): Always set SHELL to |
6236 |
default if it comes from the environment. Set its export bit. |
6237 |
* make.texinfo (Environment): Document change. |
6238 |
|
6239 |
Mon May 11 00:32:46 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6240 |
|
6241 |
* Version 3.62.10. |
6242 |
|
6243 |
* compatMakefile (tags, TAGS): Use vars for cmds. |
6244 |
(ETAGS, CTAGS): Define. |
6245 |
|
6246 |
* main.c (decode_switches): If a switches elt has a nil long_name, |
6247 |
make the long option name elt be "". |
6248 |
Fixed loop to not ignore all the options. |
6249 |
|
6250 |
* make.texinfo (Option Summary): Added long options. |
6251 |
|
6252 |
* main.c (switches): Changed -m's description to "-b". |
6253 |
(decode_switches): When printing the usage message, don't print |
6254 |
switches whose descriptions start with -. |
6255 |
When constructing the list of names for switch -C, search the |
6256 |
switches vector for switches whose descriptions are "-C". |
6257 |
|
6258 |
* main.c (switches): Call -S --no-keep-going, not --dont-keep-going. |
6259 |
Call -I --include-dir, not --include-path. |
6260 |
(long_option_aliases): Added --new == -W, --assume-new == -W, |
6261 |
--assume-old == -o, --max-load == -l, --dry-run == -n, --recon == -n, |
6262 |
--makefile == -f. |
6263 |
|
6264 |
* main.c (switches): Removed bogus "silent" elt. |
6265 |
(long_option_aliases): Define new var. |
6266 |
(decode_switches): Add long_option_aliases onto the end of the long |
6267 |
options vector created for getopt_long. |
6268 |
Look through long_option_aliases for extra names to list |
6269 |
in usage message. |
6270 |
|
6271 |
Sat May 9 00:21:05 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6272 |
|
6273 |
* main.c (log_working_directory): Fixed to properly not print the |
6274 |
leaving message when we haven't printed the entering message. |
6275 |
|
6276 |
Fri May 8 21:55:35 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6277 |
|
6278 |
* main.c (struct command_switch): Added elts `long_name', |
6279 |
`description', and `argdesc'. |
6280 |
(switches): Added initializers for new members. |
6281 |
(decode_switches): Rewritten to use getopt_long. |
6282 |
* compatMakefile (GETOPT, GETOPT_SRC): Define. |
6283 |
(objs, srcs): Include them. |
6284 |
|
6285 |
* job.c (child_died): Renamed to dead_children; made static. |
6286 |
(child_handler): Increment dead_children instead of setting child_died. |
6287 |
(reap_children): Decrement dead_children instead of clearing |
6288 |
child_died. The point of all this is to avoid printing "waiting |
6289 |
for unfinished jobs" when we don't actually need to block. |
6290 |
This happened when multiple SIGCHLDs before reap_children was called. |
6291 |
|
6292 |
* job.c (reap_children): If ERR is set, so we don't call start_job |
6293 |
on the child being reaped, instead set its command_state to |
6294 |
cs_finished. |
6295 |
(reap_children, child_handler, new_job): I added several |
6296 |
debugging printf's while fixing this. I left them in if (debug_flag) |
6297 |
because they may be useful for debugging this stuff again. |
6298 |
|
6299 |
Wed May 6 22:02:37 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6300 |
|
6301 |
* read.c (read_makefile): v_export is not 1. |
6302 |
|
6303 |
Mon May 4 17:27:37 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6304 |
|
6305 |
* Version 3.62.9. |
6306 |
|
6307 |
* variable.c (export_all_variables): New variable. |
6308 |
(target_environment): Export variables whose `export' member is |
6309 |
v_default if export_all_variables is set and their names are benign. |
6310 |
* variable.h: Declare export_all_variables. |
6311 |
* read.c (read_makefile): If export or unexport is given with no |
6312 |
args, set or clear export_all_variables, respectively. |
6313 |
|
6314 |
* variable.c (target_environment): Exclude MAKELEVEL in the loop, |
6315 |
so it isn't duplicated when we add it at the end. |
6316 |
|
6317 |
Sun May 3 17:44:48 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6318 |
|
6319 |
* Version 3.62.8. |
6320 |
|
6321 |
* variable.h (struct variable): Added new member `export'. |
6322 |
* variable.c (define_variable_in_set): Initialize it to v_default. |
6323 |
(target_environment): Don't check for .NOEXPORT. |
6324 |
Export variables whose `export' member is v_default and that would |
6325 |
have been exported under .NOEXPORT, and variables whose `export' |
6326 |
member is v_export. |
6327 |
(try_variable_definition): Return the variable defined. |
6328 |
* variable.h (try_variable_definition): Changed decl. |
6329 |
* read.c (read_makefile): Recognize `export' and `unexport' directives. |
6330 |
|
6331 |
Fri May 1 11:39:38 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6332 |
|
6333 |
* main.c (main) [POSIX]: Reversed args to sigaddset. |
6334 |
|
6335 |
Thu Apr 30 17:33:32 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6336 |
|
6337 |
* job.c [POSIX || !USG] (unblock_sigs): New fn. |
6338 |
(start_job): Block signals before forking. |
6339 |
(new_job): Unblock signals after putting the new child on the chain. |
6340 |
* main.c (main) [POSIX]: Use sigset_t fatal_signal_set instead of |
6341 |
int fatal_signal_mask. |
6342 |
|
6343 |
* load.c [sgi] (LDAV_CVT): Define. |
6344 |
|
6345 |
Wed Apr 29 17:15:59 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6346 |
|
6347 |
* Version 3.62.7. |
6348 |
|
6349 |
* load.c (load_average) [sgi]: Clear the high bit of the address |
6350 |
from the symbol table before looking it up in kmem. |
6351 |
|
6352 |
* misc.c (fatal, makefile_fatal): Put *** in fatal error messages. |
6353 |
(remake_file): No longer needed in message here. |
6354 |
|
6355 |
* main.c (die): Call reap_children with BLOCK==1. |
6356 |
|
6357 |
Tue Apr 28 20:44:35 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6358 |
|
6359 |
* rule.c (freerule): Don't set LASTRULE->next if LASTRULE is nil. |
6360 |
|
6361 |
Sun Apr 26 15:09:51 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6362 |
|
6363 |
* rule.c (count_implicit_rule_limits): Initialize LASTRULE to nil, |
6364 |
not to head of chain. Extract next ptr before we might do |
6365 |
freerule, and use that for next iteration. |
6366 |
(freerule): Still do next ptr frobbing if LASTRULE is nil. |
6367 |
|
6368 |
Tue Apr 21 03:16:29 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6369 |
|
6370 |
* job.c (child_error): Removed extra %s from error msg format. |
6371 |
|
6372 |
* Version 3.62.6. |
6373 |
|
6374 |
* job.c (reap_children): Don't start later commands in a sequence |
6375 |
if ERR is nonzero. |
6376 |
|
6377 |
* job.c (new_job): Always call reap_children with BLOCK==0 first thing. |
6378 |
|
6379 |
* job.c (reap_children): New function; work that used to be done in |
6380 |
child_handler. |
6381 |
(child_died): New global var. |
6382 |
(child_handler): Now just sets child_died. |
6383 |
(wait_for_children): Removed. |
6384 |
(unknown_children_possible, block_signals, unblock_signals, |
6385 |
push_signals_blocked_p, pop_signals_blocked_p): Removed. |
6386 |
(child_execute_job): Removed call to unblock_signals. |
6387 |
(new_job): Removed calls to push_signals_blocked_p and |
6388 |
pop_signals_blocked_p. |
6389 |
* job.h: Declare reap_children, not wait_for_children. |
6390 |
* commands.c (fatal_error_signal), job.c (new_job), |
6391 |
load.c [LDAV_BASED] (wait_to_start_job), main.c (die), |
6392 |
remake.c (update_goal_chain), function.c (expand_function: `shell'): |
6393 |
Changed wait_for_children calls to reap_children. |
6394 |
Some needed to be loops to wait for all children to die. |
6395 |
* commands.c (fatal_error_signal), main.c (main, |
6396 |
log_working_directory), function.c (expand_function): Removed calls |
6397 |
to push_signals_blocked_p and pop_signals_blocked_p. |
6398 |
* job.h: Removed decls. |
6399 |
|
6400 |
* job.h: Added copyright notice. |
6401 |
|
6402 |
Wed Apr 15 02:02:40 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6403 |
|
6404 |
* job.c (child_error): No *** for ignored error. |
6405 |
|
6406 |
Tue Apr 14 18:31:21 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6407 |
|
6408 |
* implicit.c (DEBUGP2): Use do ... while (0) instead of if ... else to |
6409 |
avoid compiler warnings. |
6410 |
|
6411 |
* read.c (parse_file_seq): Don't remove ./ when it is followed by a |
6412 |
blank. |
6413 |
|
6414 |
Mon Apr 13 21:56:15 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6415 |
|
6416 |
* make.h (DEBUGPR): Use do ... while (0) instead of if ... else to |
6417 |
avoid compiler warnings. |
6418 |
|
6419 |
* remake.c (notice_finished_file): Run file_mtime on the also_make |
6420 |
files, so vpath_search can happen. |
6421 |
|
6422 |
* GNUmakefile (tests): Use perl test suite from csa@sw.stratus.com. |
6423 |
(alpha-files): Include test suite tar file. |
6424 |
|
6425 |
Fri Apr 3 00:50:13 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6426 |
|
6427 |
* Version 3.62.5. |
6428 |
|
6429 |
Wed Apr 1 05:31:18 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6430 |
|
6431 |
* remake.c (update_file, update_file_1): Do check_renamed on elts |
6432 |
of dep chains when traversing them. Something unrelated might have |
6433 |
renamed one of the files the dep chain points to. |
6434 |
|
6435 |
* file.c (rename_file): If FILE has been renamed, follow its |
6436 |
`renamed' ptr, so we get to the final real FILE. Using the renamed |
6437 |
ones loses because they are not in the hash table, so the removal |
6438 |
code loops infinitely. |
6439 |
|
6440 |
* read.c (read_all_makefiles): Clobber null terminator into |
6441 |
MAKEFILES expansion, so string passed to read_makefile is properly |
6442 |
terminated. |
6443 |
|
6444 |
Mon Mar 30 20:18:02 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6445 |
|
6446 |
* commands.c (set_file_variables): $* for archive member with |
6447 |
explicit cmds is stem of member, not of whole `lib(member)'. |
6448 |
|
6449 |
Thu Mar 26 15:24:38 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6450 |
|
6451 |
* Version 3.62.4. |
6452 |
|
6453 |
Tue Mar 24 05:20:51 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6454 |
|
6455 |
* rule.c (new_pattern_rule): Rules are identical only if all their |
6456 |
targets match (regardless of order). |
6457 |
|
6458 |
Wed Mar 11 13:49:54 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) |
6459 |
|
6460 |
* remake.c (remake_file): Changed error "no way to make" to "no |
6461 |
rule to make". Fiat Hugh. |
6462 |
|
6463 |
* make.texinfo (Last Resort): Describe %:: rules and new .DEFAULT |
6464 |
behavior. |
6465 |
|
6466 |
* remake.c (update_file_1): Only use .DEFAULT cmds if FILE is not a |
6467 |
target. |
6468 |
|
6469 |
Tue Mar 10 18:13:13 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6470 |
|
6471 |
* remote-stub.c, remote-cstms.c (start_remote_job): Take new arg, |
6472 |
environment to pass to child. |
6473 |
* job.c (start_job): Pass it. |
6474 |
|
6475 |
Mon Mar 9 19:00:11 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6476 |
|
6477 |
* file.c (enter_file): Also strip ./s here, to get command-line |
6478 |
target names. |
6479 |
|
6480 |
* remote-cstms.c: Add comment telling people to leave me alone. |
6481 |
|
6482 |
* compatMakefile (manpage install): Remove target before copying. |
6483 |
|
6484 |
Tue Mar 3 18:43:21 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6485 |
|
6486 |
* make.texinfo (Missing): Renamed to "Incompatibilities and ...". |
6487 |
Added paragraph describing $? incompatibility with Unix and POSIX.2. |
6488 |
|
6489 |
Sun Mar 1 15:50:54 1992 Roland McGrath (roland@nutrimat.gnu.ai.mit.edu) |
6490 |
|
6491 |
* function.c (expand_function: `shell'): Don't declare fork or pipe. |
6492 |
Use vfork instead of fork. |
6493 |
|
6494 |
Tue Feb 25 22:05:32 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6495 |
|
6496 |
* make.texinfo (Chained Rules): Clarify .PRECIOUS to save |
6497 |
intermediate files. |
6498 |
|
6499 |
* load.c [sun] (LDAV_CVT): Define to divide by FSCALE. |
6500 |
|
6501 |
Sun Feb 16 02:05:16 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6502 |
|
6503 |
* Version 3.62.3. |
6504 |
|
6505 |
Sat Feb 15 17:12:20 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6506 |
|
6507 |
* compatMakefile (makeinfo): Use emacs batch-texinfo-format fn. |
6508 |
|
6509 |
Fri Feb 14 00:11:55 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6510 |
|
6511 |
* read.c (read_makefile): Correctly handle define & endef in ifdefs. |
6512 |
|
6513 |
* read.c (record_files): Pass arg for %s in error msg. |
6514 |
|
6515 |
* main.c (main) [__IBMR2, POSIX]: Use correct (a la USGr3) setvbuf |
6516 |
call. |
6517 |
|
6518 |
Wed Feb 12 12:07:39 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6519 |
|
6520 |
* make.texinfo (Libraries/Search): Say it does /usr/local/lib too. |
6521 |
|
6522 |
Sun Feb 9 23:06:24 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6523 |
|
6524 |
* read.c (read_makefile): Check for extraneous `endef' when ignoring. |
6525 |
|
6526 |
Thu Feb 6 16:15:48 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6527 |
|
6528 |
* Version 3.62.2. |
6529 |
|
6530 |
Tue Feb 4 20:04:46 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6531 |
|
6532 |
* job.c (construct_command_argv_internal): Correctly ignore |
6533 |
whitespace after backslash-NL. |
6534 |
|
6535 |
Fri Jan 31 18:30:05 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6536 |
|
6537 |
* compatMakefile: Ignore errors from chgrp and chmod when installing. |
6538 |
|
6539 |
Wed Jan 29 18:13:30 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6540 |
|
6541 |
* main.c (main): When setting MAKELEVEL in the env to re-exec, |
6542 |
allocate space so as not to clobber past the end of the old string. |
6543 |
|
6544 |
* make.h [HAVE_ALLOCA_H]: Include <alloca.h> |
6545 |
* compatMakefile (defines): Document HAVE_ALLOCA_H. |
6546 |
|
6547 |
Mon Jan 20 13:40:05 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6548 |
|
6549 |
* make.h [VFORK_MISSING]: Use fork instead. |
6550 |
* compatMakefile (defines): Document same. |
6551 |
|
6552 |
* job.c (construct_command_argv_internal): Don't create an empty |
6553 |
arg if backslash-NL is at beginning of word. |
6554 |
|
6555 |
Sun Jan 19 16:26:53 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6556 |
|
6557 |
* main.c [DGUX]: Call setvbuf as for USGr3. |
6558 |
|
6559 |
* job.c (construct_command_argv_internal): Notice correctly that |
6560 |
backslash-NL is the end of the arg (because it is replaced with a |
6561 |
space). |
6562 |
|
6563 |
Thu Jan 16 18:42:38 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6564 |
|
6565 |
* job.c (construct_command_argv_internal): If SHELL is nil, set it |
6566 |
to default_shell before proceeding. |
6567 |
|
6568 |
* make.h [sgi]: No alloca.h, after all. |
6569 |
|
6570 |
Wed Jan 15 12:30:04 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6571 |
|
6572 |
* read.c (multi_glob): Cons up the chain of the results of glob |
6573 |
from back to front, so it comes out in forward order. |
6574 |
|
6575 |
* job.c (construct_command_argv_internal): Don't eat char following |
6576 |
backslash-NL. |
6577 |
|
6578 |
Mon Jan 13 19:16:56 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6579 |
|
6580 |
* Version 3.62.1. |
6581 |
|
6582 |
* default.c (default_variables) [ultrix]: GET=get, like USG. |
6583 |
|
6584 |
* job.c (construct_command_argv_internal): Remove tabs following |
6585 |
backslash-NL combos in the input line, so they don't show up when |
6586 |
that line is printed. |
6587 |
|
6588 |
* read.c (read_makefile): Don't collapse_continuations the line on |
6589 |
input; do it on the copy we do remove_comments on. |
6590 |
For rule lines, collapse_continuations the line after chopping |
6591 |
";cmds" off the end, so we don't eat conts in the cmds. |
6592 |
Give error for ";cmds" with no rule. |
6593 |
* job.c (construct_command_argv_internal): Eat backslash-NL combos |
6594 |
when constructing the line to recurse on for slow, too. |
6595 |
|
6596 |
Sat Jan 11 02:20:27 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) |
6597 |
|
6598 |
* file.c (enter_file): Don't strip leading `./'s. |
6599 |
* read.c (parse_file_seq): Take new arg STRIP; if nonzero, do it here. |
6600 |
* default.c (set_default_suffixes), function.c (string_glob), |
6601 |
read.c (read_makefile), rule.c (install_pattern_rule): Change callers. |
6602 |
|
6603 |
* default.c (default_variables) [_IBMR2]: FC=xlf |
6604 |
|
6605 |
* job.c (construct_command_argv_internal): Turn backslash-NL and |
6606 |
following whitespace into a single space, rather than just eating |
6607 |
the backslash. |
6608 |
|
6609 |
* make.texinfo (Copying): @include gpl.texinfo, rather than |
6610 |
duplicating its contents. |
6611 |
|
6612 |
Fri Nov 8 20:06:03 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6613 |
|
6614 |
* job.c (construct_command_argv_internal): Make sure not to bother |
6615 |
processing an empty line. |
6616 |
|
6617 |
* Version 3.62.0. |
6618 |
|
6619 |
* job.c (construct_command_argv_internal): Always recurse for slow; |
6620 |
simple case didn't handle finding newlines. |
6621 |
|
6622 |
Tue Nov 5 18:51:10 1991 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) |
6623 |
|
6624 |
* job.c (construct_command_argv_internal): Set RESTP properly when |
6625 |
slow; don't \ify past a newline. |
6626 |
|
6627 |
Fri Nov 1 19:34:28 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) |
6628 |
|
6629 |
* make.h [sgi]: #include <alloca.h>. |
6630 |
|
6631 |
|
6632 |
|
6633 |
See ChangeLog.1 for earlier changes. |