-
Notifications
You must be signed in to change notification settings - Fork 83
/
ChangeLog.1
4997 lines (3350 loc) · 183 KB
/
ChangeLog.1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Tue Oct 29 20:57:36 1991 Roland McGrath ([email protected])
* Version 3.62.
* remake.c (update_file_1): Check for deps still running before
giving up if any dep has failed.
Sat Oct 26 16:20:00 1991 Roland McGrath ([email protected])
* make.h [uts]: #undef S_ISREG and S_ISDIR if defined.
Fri Oct 25 19:50:39 1991 Roland McGrath ([email protected])
* Version 3.60.17.
Thu Oct 24 16:58:36 1991 Roland McGrath ([email protected])
* job.c (start_job): Don't check for empty cmds before tweaking the
command_ptr. Just let construct_command_argv do it.
Tue Oct 22 20:21:03 1991 Roland McGrath ([email protected])
* remake.c, arscan.c [POSIX]: <fcntl.h> instead of <sys/file.h>.
* make.h [POSIX]: Declare vfork as pid_t.
Mon Oct 21 15:37:30 1991 Roland McGrath ([email protected])
* Version 3.60.16.
* job.c (construct_command_argv, construct_command_argv_internal):
Take new 2nd arg RESTP. If non-NULL, stop parsing at newline, and
store addr of the NL in *RESTP.
(start_job): Don't chop expanded cmd lines up; use above code to do it.
* function.c (expand_function: `shell'): Pass RESTP==NULL.
Sat Oct 19 15:36:34 1991 Roland McGrath ([email protected])
* Version 3.60.15.
Fri Oct 18 15:26:55 1991 Roland McGrath ([email protected])
* job.c (start_job): If on the same cmds->command_lines elt, look
at cmds->lines_recurse[CHILD->command_line - 1] instead of
[CHILD->command_line].
* dir.c [sgi]: <sys/dir.h>, not ndir or anything else.
Thu Oct 17 16:28:55 1991 Roland McGrath ([email protected])
* file.c (print_file_data_base): Remove unused var.
* make.h [NeXT]: No #define ANSI_STRING.
Tue Oct 15 20:08:41 1991 Roland McGrath ([email protected])
* Version 3.60.14.
Fri Oct 11 16:23:52 1991 Roland McGrath ([email protected])
* make.h: Use PATH_MAX for getwd defn.
* make.h: Move getcwd/getwd outside of #ifndef POSIX, and make it
#if USG||POSIX.
Thu Oct 10 11:53:31 1991 Roland McGrath ([email protected])
* Version 3.60.13.
* read.c (read_all_makefiles): When processing MAKEFILES, save the
malloc'd ptr to be freed, instead of freeing part-way thru it.
* remake.c (update_file_1): Don't tweak FILE->also_make.
(update_file): Do it here. After calling update_file_1, set the
command_state, update_status, and updated members of each also_make
elt to FILE's values.
Tue Oct 8 14:56:04 1991 Roland McGrath ([email protected])
* Version 3.60.12.
* remake.c (notice_finished_file): Set command_state of FILE and
its also_make chain to cs_finished here.
* commands.c (execute_file_commands), job.c (child_handler),
remake.c (remake_file): Don't set it before calling
notice_finished_file.
* file.h (struct file): Changed `also_make' to struct dep *.
* job.c (delete_child_targets), file.c (print_file_data_base),
remake.c (notice_finished_file), implicit.c (pattern_search):
Use dep chain instead of array of file names.
Mon Oct 7 17:04:33 1991 Roland McGrath ([email protected])
* Version 3.60.11.
* arscan.c: Declare open.
* misc.c: Declare {get,set}{re,}[ug]id.
* variable.c (target_environment): Declare getenv.
Sat Oct 5 15:13:03 1991 Roland McGrath ([email protected])
* make.h [NeXT]: <string.h> instead of <strings.h>.
Fri Oct 4 16:05:41 1991 Roland McGrath ([email protected])
* default.c (default_suffixes, defualt_suffix_rules): Add .texi
just like .texinfo.
* Version 3.60.10.
* job.c: Move vfork decl into make.h.
Fri Sep 27 18:45:30 1991 Roland McGrath ([email protected])
* compatMakefile (glob/libglob.a): Pass CC value to submake.
Thu Sep 26 00:08:15 1991 Roland McGrath ([email protected])
* load.c (load_average): Made not static.
* load.c [ultrix && vax]: Define LDAV_TYPE and LDAV_CVT for Ultrix 4.2.
Tue Sep 24 00:17:20 1991 Roland McGrath ([email protected])
* Version 3.60.9.
* read.c (record_files): Warn about extra cmds even if the target's
name begins with a dot. I think the lusers can handle this.
Mon Sep 23 22:33:26 1991 Roland McGrath ([email protected])
* make.h, arscan.c: Don't declare bcmp, bzero, or bcopy if they're
#define'd.
* make.h: Declare write and open.
* default.c (default_suffixes, default_suffix_rules,
default_variables): Add .C just like .cc.
* make.texinfo (Catalogue of Rules): Document .C.
* make.man (-w): Fix gramo.
Fri Sep 20 17:18:16 1991 Roland McGrath ([email protected])
* make.h: No text after #endif.
Sun Sep 15 16:20:46 1991 Roland McGrath ([email protected])
* Version 3.60.8.
* implicit.c (pattern_search): In the second pass, recurse on rule
deps that don't have a %. Why did I make it not do this?
Fri Sep 14 18:29:39 1991 Roland McGrath ([email protected])
* read.c (record_files): For extra cmds, use the last ones given.
If the target's name doesn't begin with a dot (bletch!!), emit a
two-line warning, one line giving the old cmds' location and the
other the new cmds' location.
* misc.c (makefile_error, makefile_fatal): New fns.
* make.h: Declare them.
* Use them instead of error/fatal for all msgs including a file
name and line number.
Thu Sep 13 16:35:54 1991 Roland McGrath ([email protected])
* make.h: Declare define_default_variables.
Declare ar_parse_name, instead of ar_name_parse (M-t).
Mon Sep 10 18:35:40 1991 Roland McGrath ([email protected])
* Version 3.60.7.
* make.texinfo (Variables: Setting): Say whitespace is removed if
"immediately after =", rather than simply "after =".
* job.c: Don't declare wait #ifdef POSIX.
* make.h [__GNUC__]: #undef alloca and then #define it.
* main.c (main): When pruning makefiles which might loop from the
read_makefiles chain, look at all `prev' entries of double-colon rules.
Fri Sep 7 00:41:53 1991 Roland McGrath ([email protected])
* main.c (main): Only remove makefiles with cmds but no deps from
the list of makefiles to be rebuilt if they are :: targets.
: targets with cmds and no deps are not dangerous.
Wed Sep 5 17:35:51 1991 Roland McGrath ([email protected])
* compatMakefile (defines): Add comment that some compilers take
ENUM_BITFIELDS but produce bogus code.
(LOAD_AVG): Fix examples to \ "s.
(LOADLIBES): Add comment that SGI Irix needs -lmld for nlist.
Tue Sep 4 20:26:26 1991 Roland McGrath ([email protected])
* Version 3.60.6.
Fri Aug 30 19:34:04 1991 Roland McGrath ([email protected])
* remake.c (update_file_1): When checking the command_state of
deps, check through the prev chain.
(update_goal_chain): When a target is finished, start checking its
prev (if it has one) instead.
Wed Aug 7 17:32:03 1991 Roland McGrath ([email protected])
* rule.c (convert_to_pattern): Allow files with deps to define
suffix rules (really this time).
Mon Aug 5 17:09:21 1991 Roland McGrath ([email protected])
* misc.c (user_access, make_access): Do saved-IDs (USG) flavor
#ifdef POSIX.
* file.c (enter_file): Strip ./s here.
* read.c (parse_file_seq): Not here.
Tue Jul 23 23:34:30 1991 Roland McGrath ([email protected])
* compatMakefile: Added comment that -lPW alloca is broken on HPUX.
Thu Jul 18 03:10:41 1991 Roland McGrath ([email protected])
* Version 3.60.5.
* read.c (read_makefile): Ignore lines containing chars that are
all isspace, not just all isblank.
* make.texinfo (Copying): @include gpl.texinfo, rather than copying
the text.
* gpl.texinfo: New file (symlink to /gd/gnu/doc/gpl.texinfo).
* GNUmakefile: Put gpl.texinfo in distribution.
Tue Jul 16 12:50:35 1991 Roland McGrath ([email protected])
* make.h: #define _GNU_SOURCE before including headers.
Include <ctype.h> and define isblank if <ctype.h> doesn't.
* commands.c: Don't include <ctype.h> here.
* *.c: Use isblank instead of explicit ' ' || '\t'.
Mon Jul 15 17:43:38 1991 Roland McGrath ([email protected])
* function.c (expand_function: `filter'/`filter-out'): Fixed to not
loop infinitely.
Fri Jul 12 12:18:12 1991 Roland McGrath ([email protected])
* function.c (expand_function: `filter'/`filter-out'): Rewritten to
handle filter-out of multiple patterns properly. Also no longer
mallocs and reallocs for temp array; uses alloca and a linked-list
instead.
Wed Jul 10 22:34:54 1991 Roland McGrath ([email protected])
* Version 3.60.4.
* make.texinfo: Moved some @groups that were outside @examples to
be inside them.
* load.c [apollo] (load_average): Define using special syscall for
Apollo DOMAIN/OS SR10.n.
Thu Jul 4 12:32:53 1991 Roland McGrath ([email protected])
* make.texinfo (Missing): Added Unix excessive implicit rule
search; mention that POSIX.2 doesn't require any of the missing
features.
(Top): Updated printed manual price to $15.
Wed Jul 3 18:17:50 1991 Roland McGrath ([email protected])
* file.c (rename_file): Carry over last_mtime when merging files.
* remake.c (f_mtime): Tail-recurse after renaming VPATH file, to
check for saved date in existing renamed-to file.
* remote-cstms.c (start_remote_job): Use PATH_VAR.
* commands.c [POSIX || __GNU_LIBRARY__]: Don't declare getpid.
* compatMakefile (glob-{clean,realclean}): Run clean/realclean in glob.
(clean, realclean): Require those.
* make.h: Always declare environ.
Don't declare old glob functions.
* GNUmakefile: Make no-lib deps for load.c and remote.c.
Tue Jul 2 18:35:20 1991 Roland McGrath ([email protected])
* Version 3.60.3.
Mon Jul 1 16:58:30 1991 Roland McGrath ([email protected])
* read.c (multi_glob): Don't pass GLOB_QUOTE flag to glob.
* make.h [POSIX]: Include <unistd.h>, and don't declare things that
should be there.
* main.c (main) [USG && sgi]: malloc a buffer for broken sgi stdio.
Sat Jun 29 11:22:21 1991 Roland McGrath ([email protected])
* function.c (expand_function: `shell'): Use alloca for the error
msg buffer, instead of assuming an arbitrary max size.
Fri Jun 28 18:15:08 1991 Roland McGrath ([email protected])
* job.c [POSIX] (search_path): Do real 1003.1 goop to get NGROUPS_MAX.
Wed Jun 26 11:04:44 1991 Roland McGrath ([email protected])
* default.c (define_default_variables): New fn.
(install_default_implicit_rules): Code for above fn moved there.
* main.c (main): Do define_default_variables before reading the
makefile.
Tue Jun 25 17:30:46 1991 Roland McGrath ([email protected])
* main.c (main): Quote ; in MAKEOVERRIDES.
Tue Jun 18 13:56:30 1991 Roland McGrath ([email protected])
* compatMakefile: Fixed typo in comment.
Tue Jun 11 00:14:59 1991 Roland McGrath ([email protected])
* Version 3.60.2.
Mon Jun 10 14:46:37 1991 Roland McGrath ([email protected])
* make.h: Always include <sys/types.h>.
[POSIX]: Include <limits.h> and #define MAXPATHLEN to be PATH_MAX.
* default.c (default_suffix_rules: .texinfo.dvi): Use $(TEXI2DVI).
(default_variables): Define TEXI2DVI.
Thu Jun 6 16:49:19 1991 Roland McGrath ([email protected])
* Version 3.60.1.
* make.h (SIGNAL): Cast handler arg to SIGHANDLER type.
Wed Jun 5 06:00:43 1991 Roland McGrath ([email protected])
* read.c (multi_glob): Use POSIX.2 `glob' function.
If a glob pattern matches nothing, leave it as is (a la sh, bash).
Also, if can't find USER for ~USER, leave it as is (a la bash).
Mon Jun 3 16:36:00 1991 Roland McGrath ([email protected])
* compatMakefile: Rewrote comments about -Ds to be easier to use.
* make.h, arscan.c, remake.c, main.c, dir.c, job.c: Changed tests
of _POSIX_SOURCE to POSIX.
* job.c: Take getdtablesize out of #ifdef __GNU_LIBRARY__.
Put separately #ifdef USG.
* COPYING: Replaced with version 2.
* Changed copyright notices to refer to GPL v2.
Thu May 30 00:31:11 1991 Roland McGrath ([email protected])
* make.h: Don't declare sigblock for POSIX.
* main.c (main, log_working_directory) [USG]: Get getcwd failure
mode from errno, not passed buffer like BSD getwd.
* misc.c (child_access): New fn to set access for a child process;
like user_access, but you can't change back.
* make.h: Declare it.
* job.c (exec_command): Use it in place of user_access.
Wed May 29 23:28:48 1991 Roland McGrath ([email protected])
* default.c (default_variables) [pyr]: PC = pascal.
Tue May 28 20:24:56 1991 Roland McGrath ([email protected])
* variable.c (print_variable): Put a newline before `endef'.
Sat May 25 02:39:52 1991 Roland McGrath ([email protected])
* Version 3.60.
Wed May 22 19:41:37 1991 Roland McGrath ([email protected])
* Version 3.59.5.
Thu May 16 13:59:24 1991 Roland McGrath ([email protected])
* main.c (main): Do USGr3 setvbuf behavior #ifdef APOLLO.
Don't handle SIGCHLD #ifdef USG (Apollo is USG but defines SIGCHLD).
Fri May 10 14:59:33 1991 Roland McGrath ([email protected])
* remake.c [sgi]: Don't include <sys/file.h>.
Wed May 8 01:54:08 1991 Roland McGrath ([email protected])
* make.h (SIGHANDLER): #define as (void *) #if __STDC__,
else (int (*)()).
(SIGNAL): Use it to cast return value.
* main.c (main): Cast SIG_IGN to SIGHANDLER when comparing.
* job.c (block_signals, unblock_signals): Use SIGNAL instead of signal.
* main.c: Declare mktemp to return char*, not int.
* job.c (new_job): Don't increment files_remade.
* remake.c (notice_finished_file): Do it here.
* read.c (do_define): Don't clobber DEFINITION[-1] on empty defns.
Free storage that is no longer needed.
Wed Apr 24 20:49:48 1991 Roland McGrath (roland at churchy.gnu.ai.mit.edu)
* misc.c (message): New fn to print informational msgs with
leading "make: " or "make[N]: ".
* make.h: Declare it.
* remake.c (update_file): Use it instead of printf.
Fri Apr 19 05:52:45 1991 Roland McGrath (roland at churchy.gnu.ai.mit.edu)
* main.c (main): When there are no targets, if there were no
makefiles, print a different error message, which mentions makefiles.
Tue Apr 16 03:22:45 1991 Roland McGrath (roland at geech.gnu.ai.mit.edu)
* remake.c (update_file): Print "nothing to be done" instead of "is
up to date" if FILE->cmds == 0.
* job.c [!WIFEXITED]: Define if not already defined.
Thu Apr 11 18:00:50 1991 Roland McGrath (roland at wookumz.gnu.ai.mit.edu)
* arscan.c (ar_name_equal): Fixed truncation comparison.
Tue Apr 2 16:17:35 1991 Roland McGrath (roland at churchy.gnu.ai.mit.edu)
* glob.c: Use common version from djm.
* dir.c: Snarfed #ifdef mess for <dirent.h> or whatever from glob.c.
(dir_file_exists_p): Ignore directory entries with d_ino==0.
Mon Apr 1 20:49:45 1991 Roland McGrath (roland at albert.gnu.ai.mit.edu)
* Version 3.59.4.
Fri Mar 29 19:16:18 1991 Roland McGrath (roland at albert.gnu.ai.mit.edu)
* job.c (free_child): Free CHILD->environment and its elts.
Sat Mar 23 14:08:09 1991 Roland McGrath (roland at albert.gnu.ai.mit.edu)
* read.c (read_makefile): Don't ignore lines containing only
comments if they start with a tab. Such lines should be passed to
the shell for it to decide about the comments.
* job.c (free_child): Free CHILD->command_lines and its elts, not
CHILD->commands (which is obsolete).
* job.h, job.c: Remove obsolete `commands' member of `struct child'.
Sun Mar 17 18:40:53 1991 Roland McGrath (roland at albert.ai.mit.edu)
* remake.c (update_file): Print a msg for a top-level up-to-date
phony target (a different one than for a real file).
* read.c (conditional_line): Boundary check so we don't check the
value of the -1th elt of the stack (which is bogus).
Sat Mar 16 16:58:47 1991 Roland McGrath (roland at albert.ai.mit.edu)
* read.c (conditional_line): Don't evaluate an if* when we're
already ignoring. Instead, just push a new level, with a value of
1, to keep ignoring.
Tue Mar 12 00:16:52 1991 Roland McGrath (roland at geech.ai.mit.edu)
* Version 3.59.3.
Mon Mar 11 23:56:57 1991 Roland McGrath (roland at geech.ai.mit.edu)
* job.c (construct_command_argv_internal): Quote backslashes
when building the shell -c line.
Fri Mar 8 01:40:18 1991 Roland McGrath (roland at geech.ai.mit.edu)
* job.c (exec_command): Call user_access rather than setgid(getgid()).
* misc.c (remove_comments): Renamed from collapse_line; took out
collapse_continuations call.
* make.h: Change decl.
* read.c (read_makefile): Collapse continuations on the line buffer
immediately after reading it. Call remove_comments rather than
collapse_line (which is now defunct).
Thu Feb 21 18:06:51 1991 Roland McGrath (mcgrath at cygint.cygnus.com)
* misc.c (user_access, make_access): New fns to toggle btwn permissions
for user data (files and spawning children), and permissions for make
(for taking the load average, mostly).
* make.h: Declare them.
* job.c (start_job): Call make_access before wait_to_start_job, and
user_access after.
* main.c (main): Call user_access before doing much.
Mon Feb 3 15:02:03 1991 Roland McGrath (roland at albert.ai.mit.edu)
* Version 3.59.2.
Tue Jan 29 20:30:50 1991 Roland McGrath (roland at cygint.cygnus.com)
* read.c (read_all_makefiles): Use allocated_variable_expand to expand
`$(MAKEFILES)', since the results are used across calls to
read_makefile, which could clobber them.
Wed Jan 23 00:24:10 1991 Roland McGrath (roland at cygint.cygnus.com)
* main.c (main): Call install_default_implicit_rules after reading
makefiles, not before.
* default.c (install_default_implicit_rules): If a suffix-rule file
entry has cmds, don't give it any from default_suffix_rules.
Fri Jan 17 17:39:49 1991 Roland McGrath (roland at albert.ai.mit.edu)
* arscan.c: Added support for AIX archives.
* remake.c: Don't include ar.h.
* main.c: Removed unused atol decl.
* arscan.c (ar_scan): Declare arg FUNCTION to return long int.
* ar.c (ar_touch): Don't perror for an invalid archive.
* make.h: Declare lseek as long int.
* job.c [hpux]: Define getdtablesize a la USG.
Sun Jan 12 21:08:34 1991 Roland McGrath (roland at albert.ai.mit.edu)
* Version 3.59.1.
Fri Jan 10 03:48:08 1991 Roland McGrath (roland at albert.ai.mit.edu)
* job.c (search_path): Take new arg, place to put full pathname (rather
than mallocing it).
(exec_command): Pass it, using auto storage.
* main.c (print_version): Updated copyright years.
Wed Jan 8 19:46:19 1991 Roland McGrath (roland at albert.ai.mit.edu)
* job.c [_POSIX_SOURCE]: Just #include <sys/wait.h>, and define macro
WAIT_NOHANG in terms of waitpid.
[!_POSIX_SOURCE && (HAVE_SYS_WAIT || !USG)]: Don't #include <signal.h>
(make.h does).
Define macro WAIT_NOHANG in terms of wait3.
(child_handler): #ifdef on WAIT_NOHANG, not HAVE_SYS_WAIT || !USG.
Use WAIT_NOHANG macro instead of wait3.
* file.h (struct file.command_state): Remove unused elt.
Wed Dec 26 18:10:26 1990 Roland McGrath (roland at albert.ai.mit.edu)
* commands.c (set_file_variables): If FILE got its commands from
.DEFAULT, make $< == $@ (4.3 BSD/POSIX.2d11 compat).
Mon Dec 24 17:36:27 1990 Roland McGrath (roland at albert.ai.mit.edu)
* default.c (default_variables): Rename 2nd LINK.s defn to LINK.S.
Fri Dec 14 15:05:25 1990 Roland McGrath (roland at albert.ai.mit.edu)
* vpath.c (selective_vpath_search): Check for makefile-mentioned before
checking for actual existence. The old order loses if the containing
directory doesn't exist (but a rule might make it).
* make.h [__GNUC__]: Don't #define alloca if already #define'd.
* rule.c (convert_to_pattern): Don't look at the target constructed for
the empty rule when making the null-suffix rule. Construct it over
again, since the former may have been freed already.
Thu Dec 13 17:21:03 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* make.h [__GNU_LIBRARY__]: Include <unistd.h> to get random fn decls.
Wed Dec 12 17:12:59 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* make.h, arscan.c, glob.c: Only include <memory.h> #ifdef USG.
* variable.c (define_variable_in_set): Replace env_overrides check that
wasn't really redundant (undoing Sep 28 change). Add comment saying
why this check is necessary.
* job.c, main.c [DGUX]: Needs siglist like USG.
Mon Dec 11 01:19:29 1990 Roland McGrath (roland at albert.ai.mit.edu)
* default.c [M_XENIX]: For rules that are different for Xenix, use the
generic Unix version #ifdef __GNUC__.
* main.c [M_XENIX]: Use USGr3-style setvbuf call.
* read.c (find_percent): Do backslash folding correctly, not leaving
extra crud on the end of the string.
Sun Dec 10 21:48:36 1990 Roland McGrath (roland at albert.ai.mit.edu)
* job.c: Don't declare wait3 if it's #defined.
* GNUmakefile, compatMakefile, make.texinfo: Change make-info
to make.info.
Thu Dec 7 21:20:01 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* make.h [STDC_HEADERS || __GNU_LIBRARY__ || _POSIX_SOURCE]: Use
ANSI <string.h> and names for str/mem functions.
Use <stdlib.h> to declare misc fns rather than explicit decls.
[_POSIX_SOURCE]: Don't declare kill (<signal.h> will).
Include <sys/types.h> before <signal.h> because some braindead
nonconformant 1003.1 implementation needs it.
* misc.c: Don't declare malloc, realloc. Do it in make.h.
* arscan.c, glob.c: Use sequence for string fns from make.h verbatim.
* make.h (S_ISDIR, S_ISREG): Declare if necessary.
* commands.c (delete_child_targets), job.c (search_path), read.c
(construct_include_path): Use S_ISfoo(m) instead of
(m & S_IFMT) == S_IFfoo.
* dir.c, glob.c [_POSIX_SOURCE]: Use dirent.
Wed Nov 29 22:53:32 1990 Roland McGrath (roland at geech.ai.mit.edu)
* Version 3.59.
Tue Nov 28 16:00:04 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* arscan.c (ar_name_equal) [APOLLO]: Don't do `.o' hacking. On Apollos
the full file name is elsewhere, and there is no length restriction (or
so I'm told).
Thu Nov 23 17:33:11 1990 Roland McGrath (roland at albert.ai.mit.edu)
* load.c [hp300 && BSD] (LDAV_CVT): Define for this system.
Tue Nov 21 07:58:40 1990 Roland McGrath (roland at albert.ai.mit.edu)
* read.c (record_files): Fix trivial bug with deciding to free storage
for a file name.
Thu Nov 16 06:21:38 1990 Roland McGrath (roland at geech.ai.mit.edu)
* compatMakefile ($(bindir)/make): Install it setgid kmem.
Thu Nov 1 16:12:55 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* GNUmakefile (make-*.tar.Z): Use `h' option to tar (dereference
symlinks), to grab texinfo.tex from wherever it lives.
Tue Oct 30 16:15:20 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* Version 3.58.13.
Fri Oct 26 14:33:34 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* GNUmakefile: make-*.tar.Z: Include texinfo.tex.
Tue Oct 23 19:34:33 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* main.c (define_makeflags): When there are no flags to write, make
sure the array has two leading nulls, since `MAKEFLAGS' is defined from
&flags[1].
* main.c (default_keep_going_flag): New variable (constant one).
(command_switches: -k, -S): Use above for default value.
(define_makeflags): Only write flag/flag_off switches if they are on,
and either there is no default value, or they are not the default.
Mon Oct 22 16:14:44 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* main.c (struct command_switch): New member `no_makefile'.
(command_switches: -n, -q, -t): Set no_makefile == 1.
(define_makeflags): Take new arg MAKEFILE: if nonzero, don't use
options whose `no_makefile' flags are set.
(main): Call define_makeflags with MAKEFILE==1 before remaking
makefiles, and again with MAKEFILE==0 before remaking goals.
Tue Oct 2 17:16:45 1990 Roland McGrath (roland at geech.ai.mit.edu)
* Version 3.58.12.
Mon Oct 1 15:43:23 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* arscan.c [HPUX]: Use PORTAR==1 format.
Sat Sep 29 16:38:05 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* make.h, remake.c, arscan.c: Don't declare `open'.
Fri Sep 28 04:46:23 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* variable.c (define_variable_in_set): Remove redundant -e check.
Wed Sep 26 00:28:59 1990 Roland McGrath (roland at geech.ai.mit.edu)
* job.c (start_job): Set RECURSIVE from the right elt of
CHILD->file->cmds->lines_recurse.
* commands.c (chop_commands): Don't botch the line count for allocating
CMDS->lines_recurse.
* Version 3.58.11.
* job.c (start_job): Don't always increment CHILD->command_line! Only
do it when CHILD->command_ptr has run out! (Dumb bug. Sigh.)
Thu Sep 20 02:18:51 1990 Roland McGrath (roland at geech.ai.mit.edu)
* GNUmakefile [ARCH]: Give explicit rule for remote.{c,dep} to use
variable `REMOTE' for more flags.
($(prog)): Link in $(LOADLIBES).
Wed Sep 19 02:30:36 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* commands.h (struct commands): New member `ncommand_lines', the number
of elts in `command_lines' et al.
* commands.c (chop_commands): Set `ncommand_lines' elt of CMDS, and
don't put a nil pointer at the end of `command_lines'.
* job.h (struct child): New member `command_lines' to hold
variable-expanded command lines.
* job.c (new_job): Store expanded command lines in `command_lines'
member of new child. Don't clobber FILE->cmds.
(start_job): Use CHILD->command_lines in place of
CHILD->file->cmds->command_lines.
* variable.h, variable.c, job.c, expand.c: Undo yesterday's change,
which is no longer necessary since we have cleverly avoided the issue.
* job.c (start_job): Don't variable-expand each command line.
(new_job): Do them all here, storing the expansions in the array.
Tue Sep 18 01:23:13 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* variable.h (struct variable): Remove `expanding' member.
* variable.c (define_variable_in_set): Don't initialize it.
* expand.c (struct variable_expanding): New type, a linked list
containing `struct variable' pointers.
(variables_expanding): New variable, the chain of variables currently
being expanded.
(recursively_expand): Don't test and set `expanding' member.
Instead, run through the `variables_expanding' chain looking for a link
referring to V to find self-reference. Add a new link to the chain,
describing V, before recursive expansion, and pop it off afterward.
* job.c (child_handler): Save `variables_expanding' and clear it before
calling start_job, and restore it afterward. This avoids major lossage
when the SIGCHLD comes in the middle of variable expansion.
Mon Sep 17 14:46:26 1990 Roland McGrath (roland at geech.ai.mit.edu)
* job.c, commands.c: Don't define sigmask.
* make.h: Put it here instead.
* variable.c (target_environment): If `.NOEXPORT' was specified as a
target, only export command-line and environment variables, and
file-origin variables that were in the original environment.
* make.man: Add missing ?roff control for `-I' option description.
Thu Sep 13 14:10:02 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* load.c [UMAX]: Move #include <sys/sysdefs.h> to [not UMAX_43].
Wed Sep 12 15:10:15 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* expand.c (recursively_expand): Don't use `reading_filename' and
`reading_lineno_ptr' if they're nil.
Thu Aug 30 17:32:50 1990 Roland McGrath (roland at geech)
* Version 3.58.10.
Tue Aug 28 04:06:29 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* job.c [USG] (unknown_children_possible): New variable, set nonzero
when it's possible for children not in the `children' chain to die.
(block_signals) [USG]: Set it.
(unblock_signals) [USG]: Clear it.
(child_handler) [USG]: Don't complain about unknown children if
`unknown_children_possible' is set.
* read.c (do_define): Make sure there's enough space for the newline,
so we don't write off the end of allocated space.
* arscan.c (ar_name_equal): Fixed to work when MEM is AR_NAMELEN-1 but
NAME is not the same length.
Sat Aug 25 16:17:14 1990 Roland McGrath (roland at geech)
* job.c (construct_command_argv_internal): Use a static char array for
a constant, since old C has no auto aggregate initializers.
Thu Aug 23 16:11:03 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* job.c (search_path): If PATH is nil or "" use a default path.
Wed Aug 22 01:05:32 1990 Roland McGrath (roland at churchy.ai.mit.edu)
* Version 3.58.9.
* job.c (exec_command): Don't take PATH and SHELL args. Get them from
ENVP.
(child_execute_job): Don't take FILE arg, and don't pass path and shell
to exec_command.
(start_job): Don't pass FILE arg to child_execute_job.
* function.c (expand_function: `shell'): Ditto.
* main.c (main): Don't pass path and shell to exec_command.
Fri Aug 17 23:17:27 1990 Roland McGrath (roland at geech)
* job.c (construct_command_argv_internal): New fn broken out of
construct_command_argv. Takes strings SHELL and IFS instead of doing
variable expansion for them. Recurse to make an argv for SHELL,
passing SHELL==0. When SHELL==0, don't recurse for shell argv; make a
simple one using /bin/sh.
(construct_command_argv): Do the variable expansions and call above.
Thu Aug 16 19:03:14 1990 Roland McGrath (roland at geech)
* read.c (multi_glob): For ~USER/FILE, if USER isn't found, don't
change the file name at all.
Tue Aug 7 18:33:28 1990 Roland McGrath (mcgrath at homer.Berkeley.EDU)
* function.c (expand_function: `suffix'/`notdir'): Don't kill the last
space if we never wrote one.
* function.c (expand_function: `suffix'): Retain the dot, like the
documentation says.
Mon Aug 6 14:35:06 1990 Roland McGrath (mcgrath at paris.Berkeley.EDU)
* Version 3.58.8.
* main.c (decode_switches): For positive_int and floating cases, move
SW past the arg (and don't set it to ""), so another switch can follow.
Fri Aug 3 00:43:15 1990 Roland McGrath (mcgrath at paris.Berkeley.EDU)
* job.c (child_execute_job): Use unblock_signals instead of
push_signals_blocked_p (0).
* main.c (fatal_signal_mask): New variable, mask of signals caught with
fatal_error_signal.
(main): Set it.
* job.c ({block,unblock}_children): Renamed to {block,unblock}_signals.
Block/unblock both child signal and signals in fatal_signal_mask.
(children_blocked_p_{stack,max,depth}, {push,pop}_children_blocked_p):
Renamed from children to signals. Use {block,unblock}_signals instead
of {block,unblock}_children.
* commands.c (fatal_error_signal), job.c (wait_for_children, new_job,
child_execute_job, main, log_working_directory), function.c
(expand_function: `shell'), job.h: Rename {push,pop}_children_blocked_p
to {push,pop}_signals_blocked_p.
* job.c (child_handler): Call {block,unblock}_signals instead of just
{block,unblock}_remote_children. We need to block the fatal signals.
Thu Aug 2 22:41:06 1990 Roland McGrath (mcgrath at paris.Berkeley.EDU)
* main.c, function.c: Fixed typos in comments.
* file.c (print_file_data_base): Fix computation of avg files/bucket.
Tue Jul 31 22:11:14 1990 Roland McGrath (mcgrath at paris.Berkeley.EDU)
* Version 3.58.7.
Wed Jul 25 16:32:38 1990 Roland McGrath (mcgrath at tully.Berkeley.EDU)
* arscan.c (ar_name_equal): Fixed to really do it right.
(ar_member_pos): Fixed order of args.
* ar.c (ar_member_date_1): Ditto.
Fri Jul 20 15:30:26 1990 Roland McGrath (mcgrath at tully.Berkeley.EDU)
* arscan.c (ar_name_equal): Rewritten. Accounts for a possible
trailing slash in MEM.
* remake.c (f_mtime): Keep track of whether ARNAME is used and free it
if not. Also free MEMNAME.
* ar.c (ar_member_date, ar_touch): Ditto.
* arscan.c (arscan) [HPUX or hpux]: Treat same as USGr3 PORTAR==1.
* make.h: If NSIG is not defined, but _NSIG is, #define NSIG _NSIG.
* compatMakefile: Don't use $* in explicit rules.
* default.c (default_variables: "PREPROCESS.S"): Include $(CPPFLAGS).
* remake.c (f_mtime): If FILE is an ar ref, get the member modtime.
* function.c (string_glob): Terminate the string properly when it's
empty.
Wed Jul 18 11:26:56 1990 Roland McGrath (mcgrath at paris.Berkeley.EDU)
* Version 3.58.6.
* commands.c (set_file_variables): Fixed computation for ^F/?F elt len.
Sat Jul 14 13:41:24 1990 Roland McGrath (mcgrath at paris.Berkeley.EDU)
* job.c (construct_command_argv): Always use
allocated_variable_expand_for_file instead of variable_expand_for_file
because we might be called from inside a variable expansion (for the
`shell' function).
* function.c (expand_function: `shell'): Free the arglist's storage
correctly. construct_command_argv only allocates ARGV and ARGV[0].
* job.c (children_blocked_p_idx): Renamed to children_blocked_p_depth.
(push_children_blocked_p, pop_children_blocked_p): Use ..._depth
instead of ..._idx, and do it right!
Wed Jul 11 15:35:43 1990 Roland McGrath (mcgrath at paris.Berkeley.EDU)
* make.h (SIGNAL): New macro to replace `signal' calls. Does arg and
ret value casts to (void *) #ifdef __STDC__ to avoid conflicts btwn
ANSI and BSD `signal' and handler types.
* main.c (main), job.c (child_handler): Use it.
Fri Jul 6 00:00:38 1990 Roland McGrath (mcgrath at homer.Berkeley.EDU)
* ar.c (ar_member_date, ar_touch): Pass 2nd arg to f_mtime.
* read.c (read_makefile): Search the include path for MAKEFILES
variable makefiles (TYPE == 1), like it says in the manual.
* file.h (struct file), main.c (struct command_switch): Remove trailing
commas from enums.
* commands.c (execute_file_commands): Remove unused variables.
* commands.h: Declare chop_commands.
* make.h: Declare uniquize_deps.
* main.c (main): Remove unused variable.
(decode_switches): Remove unused label.
* remake.c: Include "ar.h" for ar_parse_name decl.
* implicit.c (try_implicit_rule): Remove unused variable.
* function.c (expand_function: `shell'): Declare fork, pipe.
* ar.c: Declare ar_name_equal.
* GNUmakefile: If using gcc, add warning flags to CFLAGS.
* remake.c: Remove decl of ar_member_date, since it's done in make.h.
* remake.c (f_mtime): For ar refs, allow the archive to be found via
VPATH search if we're searching, and change the ar ref accordingly.
* ar.c (ar_parse_name): New global fn to parse archive-member
references into the archive and member names.
(ar_member_date, ar_touch): Use it.
* make.h: Declare it.
* remake.c (f_mtime): After doing rename_file, do check_renamed instead
of assuming rename_file will always set FILE->renamed (which it won't).
* vpath.c (selective_vpath_search): Only accept prospective files that
don't actually exist yet are mentioned in a makefile if the file we are
searching for isn't a target.
Wed Jul 4 04:11:55 1990 Roland McGrath (mcgrath at helen.Berkeley.EDU)
* remake.c (update_goal_chain): Do check_renamed after calling
file_mtime.
(check_dep): Ditto after update_file.
* file.c (rename_file): Prettied up long message for merging cmds.
* remake.c (update_file_1): Get each dep file's modtime, and allow for
it being renamed, before checking for a circular dep, since a renaming
may have introduced one.
Tue Jul 3 18:15:01 1990 Roland McGrath (mcgrath at homer.Berkeley.EDU)
* ar.c (ar_touch): Don't free ARNAME since enter_file holds onto the
storage.
* function.c (string_glob): Don't leave a trailing space.
* read.c (do_define): Allow leading whitespace before `endef'.
Mon Jul 2 14:10:16 1990 Roland McGrath (mcgrath at homer.Berkeley.EDU)
* implicit.c (pattern_search): No longer take NAME arg. Instead take
ARCHIVE flag. If ARCHIVE is nonzero, FILE->name is of the form
"LIB(MEMBER)"; rule for "(MEMBER)" is searched for, and LASTSLASH is
set to nil. Since NAME was only non-nil when it was the archive member
name passed by try_implicit_rule, this change easily allows turning off
LASTSLASH checking for archive members without excessive kludgery.
(try_implicit_rule): Pass ARCHIVE flag instead of file name.