Bump to version 2.1.
[external/binutils.git] / ld / ChangeLog
1 Wed Feb 24 19:49:31 1993  Per Bothner  (bothner@rtl.cygnus.com)
2
3         * ldver.c:  Bump to version 2.1.
4
5 Fri Feb 12 08:09:11 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
6
7         * ldgram.y: allow section types without address  expressions.
8         * ldlang.c (lang_relocate_globals): avoid possible hang with
9         undefined but unreferenced symbols.
10         * relax.c (relax_section): don't complain if the script file isn't
11         relaxable but -relax is set
12
13 Thu Feb 18 17:58:45 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
14
15         * configure.in: go32 is the 3rd part of the triple, not the 2nd
16
17 Wed Feb  3 09:05:56 1993  Ian Lance Taylor  (ian@cygnus.com)
18
19         * mipsbig.sh: New file.  Big endian MIPS emulation.
20         * config/mips-big.mt: New file.  Use mipsbig emulation.
21         * configure.in (mips-sgi-irix*): Use target mips-big.
22         * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
23         (em_mipsbig.c): New target.  Uses mipsbig.sh.
24
25 Tue Feb  2 11:32:27 1993  Ian Lance Taylor  (ian@cygnus.com)
26
27         * mips.sc-sh: Put .scommon sections into .sbss section.
28
29         * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
30         rather than always putting them in bfd_com_section.
31         * ldlang.c (lang_common): If a common symbol is not in
32         bfd_com_section, put in a section of the same name, rather than
33         always putting it in section COMMON.
34
35 Fri Jan 29 09:57:58 1993  Ian Lance Taylor  (ian@cygnus.com)
36
37         * ldmain.c (subfile_wanted_p): If we already have a common
38         definition of a symbol, don't necessarily pull in an object file
39         that provides a non-common definition.
40
41         * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
42         returning OPTION_EB and OPTION_EL.  gcc passes these to a MIPS
43         linker.
44         * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
45         (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
46
47 Thu Jan 28 15:12:04 1993  Ian Lance Taylor  (ian@cygnus.com)
48
49         * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
50         the link to it.
51
52 Tue Jan 26 11:49:50 1993  Ian Lance Taylor  (ian@cygnus.com)
53
54         * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
55         checking for equality to bfd_com_section.
56
57 Fri Jan 22 14:22:44 1993  Ian Lance Taylor  (ian@cygnus.com)
58
59         * mips.sc-sh: New file.  Ultrix, and hopefully other MIPS ECOFF
60         targets, linker script.
61         * mipslit.sh: New file.  Little endian MIPS emulation.
62         * config/mips-lit.mt: New file.  Use mipslit emulation.
63         * configure.in (mips-dec-ultrix*): Use target mips-lit.
64         * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
65         (em_mipslit.c): New target.  Uses mipslit.sh.
66
67 Thu Jan 14 15:30:27 1993  Ian Lance Taylor  (ian@cygnus.com)
68
69         * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
70         $(tooldir)/bin/gld, so that gcc can find it with or without
71         collect2.
72
73 Mon Jan 11 18:50:07 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
74
75         * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
76         write_norel.  All linking is now done via write_relax.  Call
77         ldsym_write before calling write_relax.
78         * relax.c: Added copyright.
79         (write_relax): Renamed from write_relaxnorel.  Added relocateable
80         argument.  seclet_dump renamed to bfd_seclet_link.
81         * relax.h: Added copyright.
82
83 Mon Jan 11 15:41:56 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
84
85         * ldmain.c (decode_library_subfile): Patch from
86         hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
87
88 Fri Jan  8 18:04:33 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
89
90         * config/vxworks960.mt renamed to config/i960.mt
91
92         * configure.in: sparc-aout emulates a sun4, as does
93         sparc*-vxworks, i960-nindy uses gld960 emulation
94
95 Fri Jan  8 14:39:07 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
96
97          Fix support for NOLOAD, add INCLUDE
98         * ldfile.c (ldfile_open_command_file): pass file name to
99         lex_push_file.
100         * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD 
101         * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
102         attribute.
103
104 Thu Jan  7 10:22:19 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
105
106         * Makefile.in, config.h: no more default emulation.  Make the lack
107         of emulation a compile time error
108
109 Wed Jan  6 01:08:37 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
110
111         * configure.in: recognise all sparclite variants, not just 'sparclite'
112
113 Mon Dec 28 11:15:35 1992  Ian Lance Taylor  (ian@cygnus.com)
114
115         * m68kcoff.sc-sh: define _end as well as end, for consistency with
116         aout.sc-sh.
117
118         * configure.in: accept *-ericsson-ose for any m68k CPU.
119
120         * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
121         for each output section.
122
123 Mon Dec 21 16:06:59 1992  Per Bothner  (bothner@rtl.cygnus.com)
124
125         * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c:  Use new
126         macro bfd_asymbol_bfd as appropriate.
127         * Makefile.in:  Un-duplicate ldlex.c dependency.
128         * condigure.in:  Replace my_host case table by sourcing
129         ../bfd/configure.host.  Allow std-host as the default.
130         * ldmisc.c:  Change logic for C++ name demangling:  There is
131         no initial '_' to remove from stab-derived function names.
132
133 Sun Dec 13 16:31:26 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
134
135         * ldlang.c (lang_init_script_file): don't attach the output file
136         sections to the script file.
137
138 Wed Dec  9 08:38:05 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
139         * ldlang.c (wild): run expansion loop over command line bfd too.
140         (lang_ini_script_file): initialize more parts of the command line
141         bfd.
142         * ldlex.l: fix DEFINED start states.
143 Mon Dec  7 08:43:41 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
144          -y support
145         * ld.texinfo: new doc.
146         * ldgram.y, ldlex.l: understand -y<symbol>
147         * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
148         print info. (add_ysym): new function.
149         * ldsym.h: (ldsym_type): new define SYM_Y.
150
151 Sat Nov 21 03:15:27 1992  John Gilmore  (gnu@cygnus.com)
152
153         * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
154         ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
155         ldwrite.h, relax.h:  Replace all uses of EXFUN and PROTO ansi-glue
156         macros with PARAMS.  Recreational cleanup.  Update copyrights.
157
158 Tue Nov 10 00:23:37 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
159
160         * Makefile.in: pass down the bfd source directory for includes
161
162 Thu Nov  5 15:41:55 1992  Ian Lance Taylor  (ian@cygnus.com)
163
164         * ldlang.c (lang_size_sections): don't change size and address for
165         SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
166         sections.
167
168 Thu Nov  5 11:33:57 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
169
170         * relax.c (build_it): re-enable the processing of data_statements
171         in scripts, makes counted contructor lists work again.
172
173 Thu Nov  5 05:43:01 1992  John Gilmore  (gnu@cygnus.com)
174
175         * ldemul.h:  Remove uses of SDEF and PROTO macros (use PARAMS).
176
177 Tue Oct 20 10:56:06 1992  Ian Lance Taylor  (ian@cygnus.com)
178
179         * m68kcoff.sc-sh: don't use initial underscores for etext, edata
180         and end.
181
182 Mon Oct 19 09:45:38 1992  Ian Lance Taylor  (ian@cygnus.com)
183
184         * Support for i386-sysv.
185         configure.in: check for i386-*-sysv* and i386-*-sco*.
186         i386coff.sc-sh: rewrote to support SVR3 by default.
187         ldctor.c (find_constructors): preserve stat_ptr.
188         ldlang.c (wild_doit): initialize vma and size of new output
189         section to corresponding input section.  This is required for
190         shared library support.
191         (lang_size_sections): don't modify vma and size of sections which
192         are never loaded (for shared libraries).
193         ldwrite.c (copy_and_relocate): copy the contents of any section
194         which has contents, not just sections which are loaded (for shared
195         libraries).
196
197 Thu Oct 15 15:20:26 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
198
199         * ldlang.c (size_input_section): count the sizes of all sections
200         we allocate.
201
202 Thu Oct  8 09:05:25 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
203
204         * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to 
205         to demangle symbols better
206
207 Tue Oct  6 13:08:54 1992  Ian Lance Taylor  (ian@cygnus.com)
208
209         * ldlang.c (lang_finish): don't warn if -e start symbol does not
210         exist when linking with -r.
211
212 Mon Oct  5 14:07:37 1992  Ian Lance Taylor  (ian@cygnus.com)
213
214         * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
215         .bss segment.
216
217 Mon Oct  5 08:55:14 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
218
219         * ldmain.c (linear_library): don't even think about processing 
220         an object file if it's already been done
221
222 Thu Oct  1 23:14:59 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
223
224         * configure.in: the hp9000/300 config file is now hp300
225
226 Wed Sep 30 07:34:09 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
227
228         * config/z8ksim.mt: new file
229
230 Fri Sep 25 13:49:52 1992  Ken Raeburn  (raeburn@kyriath.cygnus.com)
231
232         * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
233         lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
234
235         * ld.h (strip_symbols_type): Add value STRIP_SOME.
236         * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
237         * ldlang.c (lang_add_keepsyms_file): New function.
238         * ldlex.l: Handle "-retain-symbols-file".
239         * ldsym.c (keepsyms_file, kept_syms): New vars.
240         (process_keepsyms): New functihon; reads file, marks symbols for
241         saving.
242         (write_file_locals): File symbols should always be kept.
243         (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
244         and "-s".  Process retain-symbols file before setting symtab.
245         * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
246         (keepsyms_file, kept_syms): Declare them.
247
248         * ldmain.c (main): Non-fatal errors should still cause non-zero
249         exit status even with -r.
250
251 Fri Sep 25 11:08:01 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
252
253         Added initial support for the z8k
254         * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
255         * configure.in, Makefile.in: modified to reflect above
256
257         * ldlang.c (lang_check): when linking conflicting architectures,
258         make the output file reflect at least one of the bad inputs.
259
260 Tue Sep 15 15:35:38 1992  Ian Lance Taylor  (ian@cygnus.com)
261
262         * Makefile.in (install): if $(tooldir) exists, install ld in
263         $(tooldir)/bin.
264
265 Fri Sep 11 10:24:22 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
266
267         * Makefile.in, configure.in: modified to support i386-coff
268         * i386coff.sh: new file
269
270 Wed Sep  9 11:52:58 1992  Ian Lance Taylor  (ian@cygnus.com)
271
272         * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
273         added m68k-coff emulation mode, stolen from a29k emulation.
274         Almost certainly wrong, but perhaps better than sun3.
275
276 Thu Sep  3 14:19:30 1992  Per Bothner  (bothner@rtl.cygnus.com)
277
278         * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
279         gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
280         vanilla.em:  Rename all (generated) ld__*.c files to em_.c.
281         This is one character shorter, and lets people build on
282         SVR3 system. (ld__h8300xray.[co] was the killer there;
283         h8300xray.sc-sh is also overlong, but seems harmless.)
284         Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
285         * Makefile.in (clean):  Fix typo mostclean -> mostlyclean.
286         * configure.in:  Add host isc.
287
288         * ldver.c:  Call it version 2.0.
289
290 Wed Sep  2 00:21:33 1992  Per Bothner  (bothner@rtl.cygnus.com)
291
292         * ldver.c:  Bump to version 0.98.
293         * TODO:  New file.
294
295         * Makefile.in:  Added mostlyclean, distclean, realclean rules.
296
297 Tue Sep  1 23:42:16 1992  Per Bothner  (bothner@rtl.cygnus.com)
298
299         * ldmisc.c (xrealloc):  New (needed by ../libiberty/cplus.dem.c).
300         * ldlex.l: Moved comment() to end, since some compilers
301         otherwise have problems with input() used before it is defined.
302
303 Tue Sep  1 17:45:51 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
304
305         * configure.in: added Solaris 2 and Irix 4 host support.
306
307 Mon Aug 31 19:27:11 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
308
309         * Makefile.in: remove -S flag from the FLEX definition
310
311         * configure.in: rewrote, using new style case statement.  use
312         m68k.mt for m68k-aout systems
313
314 Sun Aug 30 21:38:53 1992  Ian Lance Taylor  (ian@cygnus.com)
315
316         * Makefile.in: map "ld" through program_transform_name when
317         installing.
318
319 Sun Aug 30 18:12:13 1992  Per Bothner  (bothner@rtl.cygnus.com)
320
321         * cplus-dem.c:  Removed.  Use the version in libiberty now.
322         * ldmisc.c:  Use new libiberty version of cplus_demangle().
323
324 Thu Aug 27 16:38:42 1992  Ian Lance Taylor  (ian@cygnus.com)
325
326         * gld960.em (gld960_choose_target): default to little endian, not
327         big endian.
328
329 Wed Aug 26 17:28:51 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
330
331         * ldlang.c (lang_process): don't pass null pointers when
332         abs_output_section is what is required.
333         * ldwrite.c (ldwrite): use malloc to allocate the largest space
334         used, and pass that down.
335         * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
336         than alloca. 
337         
338 Mon Aug 24 14:42:06 1992  Ian Lance Taylor  (ian@cygnus.com)
339
340         * configure.in, config/ose68.mt: renamed OSE to ose.
341
342 Thu Aug 20 19:55:22 1992  Ken Raeburn  (raeburn@cygnus.com)
343
344         * ldsym.c (write_file_locals): Reorder check for common or
345         undefined symbols so that it works.
346
347 Tue Aug 18 13:41:36 1992  Ian Lance Taylor  (ian@cygnus.com)
348
349         * configure.in: accept all m68K family members.
350
351         * Makefile.in: always create installation directories.
352
353 Thu Aug 13 11:49:34 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
354
355         * ldlex.l: now parses comment correctly, added ~ to acceptable
356         chars in filenames
357         
358         * ldexp.c (exp_unop): pass down abs_output_section - now can have
359         unary -ve constants.
360
361         * ldlang.c (lang_finish): warn when an entry symbol supplied on
362         the command line can't be found.
363
364 Fri Aug  7 12:31:10 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
365
366         * ldlang.h: add new field "loadable" to output_section_statement.
367         * ldlang.c (lang_output_section_statement_lookup): initilize new
368         field. (wild_doit): if new field is not set, then stop output
369         section from being loadable.
370         (lang_enter_output_section_statement): set the field from the
371         NOLOAD keyword
372         * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
373         * h8300hms.sc-sh, h8300hms.em: get -r right.
374
375 Thu Aug  6 18:35:21 1992  Per Bothner  (bothner@rtl.cygnus.com)
376
377         * ldint.texinfo:  New internals manual (beginnings thereof).
378         * PORTING:  Removed, merged into ldint.texinfo.
379
380 Tue Aug  4 21:12:29 1992  Per Bothner  (bothner@rtl.cygnus.com)
381
382         * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
383         cdtest.exp:  A test program (copied from libg++/test-install)
384         that tests that constructor and destructors are handled
385         corrrectly.
386
387 Mon Aug  3 14:58:19 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
388
389         * Makefile.in (install): install from ld.new, renaming during the
390         copy, or else the next 'make install' needs to re-link ld.
391
392 Mon Jul 20 03:37:06 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
393
394         * configure.in: generalise hp recognition (from sef).
395
396 Sat Jul 18 14:46:04 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
397
398         * configure.in: recognize bsd and hpux hppa configurations.
399         error messages echo to stderr, not stdout
400
401 Fri Jul 17 22:06:11 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
402
403         * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
404           ldmisc.c: removed rcsid's.
405
406 Tue Jul 14 08:34:34 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
407
408         * ldlang.c (lang_map): print changes in sizes due to relaxing
409         (size_input_section): maintain the delta information. 
410         * ldlang.h: add new field to struct to contain delta info.
411         * relax.c  (relax_section): complain if input not relaxable.
412         * ldlex.l : add '_', ',' and '$' to chars which can appear at the
413         start of a filename
414
415 Mon Jul 13 17:33:00 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
416
417         * ldmain.c(main): prevent -r and -relax from being on at the same
418         time.
419
420 Wed Jul  1 17:51:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
421
422         * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
423         aliasing problems
424         
425
426 Thu Jun 18 09:38:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
427
428         * h8300hms.em, h8300hms.sc-sh:  do the right thing for -r
429         * ldexp.c:  lint
430         * ldlang.c(open_output): set the target arch and machine as soon
431         as we can. (lang_size_sections): use new macros for setting vma
432         * ldwrite.c: lint
433
434 Mon Jun 15 08:47:43 1992  Michael Tiemann  (tiemann@rtl.cygnus.com)
435
436         * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
437         Also deleted an unreachable path to wrs.
438
439 Wed May 27 23:24:19 1992  Michael Tiemann  (tiemann@rtl.cygnus.com)
440
441         * Makefile.in (install): use -d test for $tooldir before
442         installing ld there so that $tooldir can be inherited from
443         top-level Makefile.
444
445 Wed May 27 16:56:48 1992  Per Bothner  (bothner@rtl.cygnus.com)
446
447         * ldlang.c:  Two non-substantial changes for the sake of
448         the old Portable C Compiler.
449
450 Wed May 27 15:15:58 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
451
452         * ldgram.y, ldlex.l: parse ABSOLUTE
453         * ldexp.c: add support for ABSOLUTE
454
455 Wed May 27 13:07:20 1992  Per Bothner  (bothner@rtl.cygnus.com)
456
457         * Makefile.in:  Added default definitions for HOSTING_CRT0,
458         HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
459         * config/*.mh:  Miscellaneous clean-up:  Removed definitions
460         of YACC (since it is not longer used in the Makefile).
461         Remove HOSTING_* definitions that are subsumed by the
462         ones added to Makefile.in.  Removed most definitions of CC.
463         * config/{sparc,news,hp300bsd,decstation}.mh:  Removed;
464         These are no longer needed.
465
466 Fri May 22 13:47:19 1992  Per Bothner  (bothner@cygnus.com)
467
468         * Makefile.in:  Use srcdir instead of VPATH in ldgram/ldlex
469         rules, since these are used when building a distribution.
470         * Makefile.in (ldlex.c):  Don't re-direct output, since that
471         leaves a bogus output files if it fails.
472
473         * config/sparc.mh:  Fix HOSTING_LIBS so it has a chance of working.
474         * ldlex.c:  Fix some unnecessary flex-specific-isms.
475
476 Fri May  8 11:49:43 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
477
478         * ldgram.y: move spurious semicolon
479         * ldexp.h: fix prototype
480
481 Thu May  7 17:01:12 1992  Roland H. Pesch  (pesch@fowanton.cygnus.com)
482
483         * ld.texinfo: references to linker now say "ld" not "gld".
484
485 Wed May  6 13:26:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
486
487         changed calling convention for Q_enter_global_ref
488         * ldexp.c, ldlang.c, ldmain.c: reflect this
489         * ldver.c: bump version to 1.97.1
490         * ldindr.c (add_indirect): when an edict declaring an indirect
491         symbol is found, make sure that any ideas about the symbol being
492         common are changed if it now known to be defined.
493         * ldmain.c (linear_library): complain once if archive isn't
494         ranlibbed.
495         * ldlang.h, ldlang.c: make room for and initialize the complain
496         once field.
497
498 Wed May  6 11:07:35 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
499
500         * Makefile.in: use flex & bison from ../ if they exist.
501
502 Tue May  5 17:47:33 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
503
504         * relax.c (build_it): don't allocate space in the output file for
505         stuff if -R flag applys to it.
506         * ldfile.c: merge in VMS filename support
507         * ldmain.c (main): take out ./ from library path, and close file
508         before unlinking. Make multiple defs of a symbol create an
509         unexecable file.
510         * ldmisc.c: fatal errosrs delete output file 
511
512 Tue May  5 14:05:05 1992  Per Bothner  (bothner@rtl.cygnus.com)
513
514         * ldver.c:  Increase version number to 1.97, for consistency
515         with ../binutils.
516
517 Tue May  5 12:12:24 1992  K. Richard Pixley  (rich@cygnus.com)
518
519         * Makefile.in: FLEX -> LEX.
520
521         * ld.texinfo: {} -> @{@}.
522
523 Mon May  4 17:52:41 1992  Roland H. Pesch  (pesch@fowanton.cygnus.com)
524
525         * ld.texinfo: describe alternate, MRI-compatible linker scripts
526         (and associated change in -c option, now used for these scripts)
527
528 Mon May  4 16:10:10 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
529
530         * ldver.c: Bumped version to 1.96 - new release, resync with the
531         bfd too #.
532         * ldexp.c, ldlang.c: now build memory shape tree in obstacks
533         rather than with raw malloc, makes it easier to track where memory
534         is going.
535         * ldsym.h, ldsym.c: create obstack for all global symbols too.
536         * ldwrite.c (ldwrite): moved malloc so only used when needed.
537         * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
538
539
540 Fri May  1 18:17:52 1992  K. Richard Pixley  (rich@cygnus.com)
541
542         * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
543
544         * Makefile.in: use bootstrap for check.
545
546 Fri May  1 13:03:41 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
547
548         * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
549         PUBLIC.
550         * Makefile.in: now use flex, not lex
551         * ldlex.l, ldlang.c, ldctor.c: lint
552
553 Wed Apr 22 12:48:42 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
554
555         * ldlex.l: added CMDFILENAMECHAR state so that you can lex
556         different sorts of filenames on the command line than in a script.
557
558 Mon Apr 20 22:37:04 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
559
560         * Makefile.in: rework CFLAGS so that they can be passed on the
561           make command line.  Remove MINUS_G.  Default CFLAGS to -g.
562
563 Fri Apr 17 08:57:17 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
564
565         * relax.c: added handling for new "padding" seclet type, used to
566         fill out gaps between section.
567         * ldgram.y, ldlex.l: now -defsym on the command line is done
568         properly.
569
570 Wed Apr 15 21:20:07 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
571
572         * Makefile.in: the tooldir copy of ld goes directly in tooldir.
573
574 Wed Apr 15 16:09:33 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
575
576         * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
577         scripts.
578
579 Thu Apr  9 05:52:02 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
580
581         * Makefile.in (install): Install second copy in $(tooldir)/bin
582         without $(program_prefix), since that's what gcc expects.
583
584 Sat Apr  4 17:44:06 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
585
586         * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer. 
587         * h8300*: fix bit rot and add support for h8300xray target
588         * go32.sh: target emulation for go32.
589
590 Mon Mar 16 14:53:29 1992  Steve Chamberlain  (sac@rtl.cygnus.com)
591
592         * gld960.em, i960.sc-sh. Fix i960 bit rot
593
594 Fri Mar 13 19:47:22 1992  K. Richard Pixley  (rich@cygnus.com)
595
596         * Makefile.in: install man page.
597
598 Fri Mar 13 08:23:59 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
599
600         * config/mt-<foo> renamed to <foo>.mt
601         * config/mh-<foo> renamed to <foo>.mt
602         * configure.in changed to reflect this
603         * genscripts.sh now make .xbn files rather than .xN files
604
605 Sat Mar  7 03:40:40 1992  K. Richard Pixley  (rich@cygnus.com)
606
607         * ldver.h: fix decl of ldversion.
608
609 Fri Mar  6 22:00:35 1992  K. Richard Pixley  (rich@cygnus.com)
610
611         * Makefile.in: added check target.
612
613 Fri Mar  6 06:59:04 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
614
615         * ldmain.c (Q_enter_file_symbols): now aliases work again
616
617 Thu Mar  5 21:39:29 1992  K. Richard Pixley  (rich@cygnus.com)
618
619         * Makefile.in: added clean-info target.
620
621 Thu Mar  5 16:55:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
622
623         * ldexp.c (exp_print_tree): don't try and follow null pointers
624         around.
625         * ldgram.y: remove 11 shift reduce errors
626
627 Tue Mar  3 15:46:39 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
628
629         * Makefile.in: added tooldir and program_prefix.
630
631 Fri Feb 28 08:17:45 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
632
633         * ldlang.c (size_input_section): don't move absolute sections
634         around!
635
636
637 Thu Feb 27 09:20:41 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
638     
639         * cplus-dem.c: yet another copy of this - maybe it should go into
640         libiberty ?
641         * ldgram.y: now -V and -v have different actions
642         * ldver.c: if -V, prints list of emulations compiled in
643         * ldmisc.c: support for cplus demangling
644
645
646 Wed Feb 26 18:04:40 1992  K. Richard Pixley  (rich@cygnus.com)
647
648         * Makefile.in, configure.in: removed traces of namesubdir,
649           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
650           copyrights to '92, changed some from Cygnus to FSF.
651
652 Thu Feb 20 17:43:46 1992  Per Bothner  (bothner at cygnus.com)
653
654         * Makefile.in:  Change mkscript rule into one for ./mkscript
655         (for the sake of makes that don't realize they're the same).
656         * PORTING:  Add more details.
657         * genscripts.sh:  Add more tailorability of DATA_ALIGNMENT.
658
659 Mon Feb 17 12:04:36 1992  Per Bothner  (bothner at cygnus.com)
660
661         * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
662         config/mt-hp300bsd:  New port to hp300 running BSD.
663
664 Sat Feb 15 13:59:54 1992  Per Bothner  (bothner at cygnus.com)
665
666         Major rewrite of how ld is configured.  The major idea
667         is to use shell scripts to generate everything.
668         * generic.em replaces ldtemplate.
669         * Other *.em files replace various *.c files.
670         A *.em file is a shell script that generates the corresponding
671         ld__*.c file that implements an emulation.  This is usually
672         a straight 'cat' of a here-document, possibly with substitutions.
673         * Script files (*.sc) are places by *.sc-sh scripts.
674         Again, these are simple shell scripts that 'cat'
675         here-documents, usually with some substitutions.
676         The output a *.sc-sh is a script file.
677         * Each emulation is defined by a short shell script with
678         extension *.sh that specifies the emulation-specific
679         parameters (such as the name of the *.sh-sc and *.em
680         files to use).
681         * genscript.sh is the master shell script used to generate
682         an emulation.  It is passed various argument, including
683         the name a the emulation-speciic *.sh file that it
684         "sources" to set variables to emulation-specifc parameters.
685         * config/mt-foo:  Changed EMUL=GLDFOO_EMULATION_NAME
686         to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
687         * config/mh-foo:  Rename LDEMULATION names as appropriate
688         (usually 'gldfoo' -> plain 'foo').
689         * ldwrite.c:  Fixed a typo in a comment.
690         * Makefile.in:  Major changes.  Removed some the sed
691         magic to converts scripts, since that is now handled
692         by genscripts.sh and the *.sc-sh scipt generators.
693         * config.h:  Remove a bunch of macros defining emulations
694         and targets.  This becomes one less file to edit when
695         adding emulations or targets.
696         * ldemul.h (struct ld_emulation_xfer_struct):  Add
697         emulation_name and target_name fields.
698         * ldemul.c, ldemul.h:  Define some default functions used
699         by most emulations (and remove from the *.em scripts).
700         * ldemul.c (ldemul_choose_target):  Search the new
701         ld_emulations array using a loop (instead of a hardwired
702         nested if statement).
703         Define the ld_emulation from the automatically-geenrated
704         ldemul-list.h.  This means you no longer have to edit ldemul.c
705         to add a new emulation.
706         * ldmain.c:  Replace {GLD,LNK}960_EMULATION_NAME by
707         their expansions, since the former no longer exist.
708         * PORTING:  A very rough first draft of a porting guide.
709
710         * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
711         to be terminated by a new-line (instead of requiring a semicolon).
712
713 Mon Feb 10 16:21:02 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
714
715         * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
716         tests for NULL pointers all over the place.
717         * ldlang.c (lang_process): remember to relocate global symbols
718         *after* relaxing has done it stuff.
719
720 Thu Feb  6 11:40:15 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
721
722         * config/mt-coff-h8300: use EMUL like everything else
723         * ldlang.c: (print_padding_statement): print the right address.
724         * Makefile.in, config.h, ldemul.c: renamed  h8300hds to h8300hms
725         
726
727 Tue Feb  4 15:28:01 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
728
729         * ldlex.l: Put pack -noinhibit-exec and -sort-common
730         * ldlang.c (print_data_statement): print the right address.
731
732 Thu Jan 30 17:51:53 1992  Per Bothner  (bothner at cygnus.com)
733
734         * Makefile.in:  The rule for testing ld by re-linking itself
735         via an intermediate -r link was moved to the ld1 rule
736         instead of the ld2 rule.  This allows ld2 and ld3 to be identical,
737         which allows the bootstrap rule to work.
738         * ldctor.c (find_constructors):  Don't create a constructor
739         list if it is already defined (as would happen if ld is
740         invoked by collect).
741
742 Wed Jan 29 08:35:39 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
743
744         * config/mh-sparc.h: now uses libgcc.a
745         * ldmain.c: quit using exit
746         * *sc: use *(COMMON) rather than [COMMON]
747         * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
748         to allow preprocessing of .l file.
749         * Makefile.in: New ldlex.l mangling
750         * ldexp.c (fold_binary): perform expressions with % and / in
751         integer.
752         * ldfile.c (open_a): open archives on VMS in a special way
753
754
755 Tue Jan 28 10:18:16 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
756
757         * ldgram.y: map -M behave in the same way as -Map (sets file name
758         to be "-".
759         * ldsym.c, ldlang.c: remember that size of a section is dependent on
760         whether or not relaxing has been done.
761         * ldmain.c: don't open a map file if it doesn't have a name
762         * relax.c: all the brains have moved into bfd.
763         * ldwrite.c: ammend comment
764
765 Fri Jan 24 14:23:46 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
766
767         * Makefile.in: added relax, also made three stage go through a
768         partial link stage.
769         * relax.c : added
770         * config.h: if GNU960 defined, then default emulation mode is
771         GLD960
772         * ldexp.h, ldexp.c: map to file hooks
773         * ldlang.c: map to file hooks
774         * ldgram.y: added -Map -relax
775         * ldlex.l: added -relax, -Map
776         * ldmain.c: open map file
777         * ldmisc.c: support for map file
778         * ldwrite.c: new relax magic
779
780 Thu Dec 19 18:49:51 1991  John Gilmore  (gnu at cygnus.com)
781
782         * Makefile.in, config/tm-*.h:  Clean up make output, only
783         pass DEFAULT_EMULATION to ldmain.c.
784
785 Wed Dec 18 15:02:47 1991  Per Bothner  (bothner at cygnus.com)
786
787         * ldver.c:  Bump to version 1.94.
788
789 Tue Dec 10 04:07:23 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
790
791         * Makefile.in: infodir belongs in datadir.
792
793 Mon Dec  9 16:26:43 1991  Per Bothner  (bothner at cygnus.com)
794
795         * Makefile.in:  Pass -y to bison.  (Again;
796         accidentally deleted by Rich.)
797         * news.sc, ldgld68k.sc:  Define __end as well as _end.
798
799 Sat Dec  7 17:19:26 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
800
801         * ldindr.h: added to contain prototypes of ldindr.c
802         * ldfile.c: include ctype.h
803         * ldmain.c: include the requried prototype headers
804         * ldwrite.c: get_reloc_upper_bound has been renamed
805         bfd_get_reloc_upper_bound 
806
807 Fri Dec  6 23:29:26 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
808
809         * Makefile.in: punt "fundamental" mode because it breaks my emacs
810           macros.  install using INSTALL_PROGRAM and INSTALL_DATA.  remove
811           spaces following hyphens, bsd make can't cope.  added
812           standards.text support and made it look like all the other
813           makefiles.
814
815         * configure.in: configure now runs entirely in objdir so make file
816           existence checks against ${srcdir}.  Mark this directory as
817           target dependent.
818
819 Thu Dec  5 22:46:16 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
820
821         * Makefile.in: idestdir and ddestdir go away.  Added copyrights
822           and shift gpl to v2.  Added ChangeLog if it didn't exist. docdir
823           and mandir now keyed off datadir by default.
824
825 Wed Dec  4 23:36:55 1991  Per Bothner  (bothner at cygnus.com)
826
827         * ldver.c:  Bumped version to 1.93.
828         * Makefile.in:  Pass -y to bison.
829
830 Mon Nov 25 18:28:40 1991  Steve Chamberlain  (sac at cygnus.com)
831
832         * config.h: h8 is now coff, not ieee
833         * h8300hds.sc: reflect the same
834
835 Thu Nov 14 19:55:09 1991  Per Bothner  (bothner at cygnus.com)
836
837         * ldver.c (ldversion()):  Update to 1.92.
838         * ldctor.c: There are two places constructor sets
839         can be defined.  One of them checked for an existing
840         duplicate, the other didn't.  Unfortunately, the latter
841         was called after the former ...
842         So, factor out code for inserting a new element into
843         constructor_name_list (after checking for a duplicate)
844         into a new function add_constructor_name, and call
845         it from both aforementioned places (ldlang_add_constructor
846         and ldlang_check_for_constructors).
847
848 Wed Nov 13 15:17:43 1991  Per Bothner  (bothner at cygnus.com)
849
850         * Makefile.in:  Rename .c files generated from ldtemplate
851         to have names starting with ld__.  This helps 'make clean'.     
852
853 Tue Nov 12 18:36:50 1991  Steve Chamberlain  (sac at cygnus.com)
854
855         * Makefile.in: Take out the version number for install
856         * m88kbcs.sc: put in contructor blocks.
857
858 Mon Nov 11 18:47:33 1991  Per Bothner  (bothner at cygnus.com)
859
860         * ldmisc.c, ldmisc.h:  Re-write info() to take a filename
861         parameter, a format, and an arg pointer, and rename it to
862         vfinfo().  Write info() in terms of new vfinfo().
863         New einfo() is the same as info(), except it writes to stderr.
864         * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
865         ldmisc.c:  Replace "error" calls to info() by new einfo().
866
867 Mon Nov 11 09:57:32 1991  Steve Chamberlain  (steve at cygnus.com)
868
869         * ldlex.l ldgram.y: made -V option do same as -v
870         * Makefile.in: Added $(MINUS_G) flag so debugging can be
871         turned off
872
873 Sun Nov  3 16:37:37 1991  Steve Chamberlain  (steve at cygnus.com)
874          i386 aout changes from Bob Kukura
875         * Makefile.in, config.h: added i386aout support
876         * configure.in: fixed /h-{myhost} typo
877         * ldgram.y: -MM now gives more boring map.
878         * ldlang.c: now does D_PAGED flag the right way.
879         * ldsym.c: -MM flags does the right thing.
880
881 Sun Nov  3 15:00:03 1991  Per Bothner  (bothner at cygnus.com)
882
883         * configure.in:  Fixed typo.  Also, a fix for hp300bsd.
884         * ldlang.c (init_os):  Compensate for BFD change,
885         where bfd_make_section now returns NULL for a duplicate
886         section request, instead of the old section.
887
888 Thu Oct 17 15:27:13 1991  Per Bothner  (bothner at cygnus.com)
889
890         * ldver.c: Bump to version 1.91 (consistent with binutils).
891
892 Wed Oct 16 12:27:08 1991  Per Bothner  (bothner at cygnus.com)
893
894         * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
895         ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
896         ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
897         ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
898         Add or update copyright notices.        
899
900 Mon Oct 14 23:55:27 1991  Per Bothner  (bothner at cygnus.com)
901
902         * README: New file.
903         * Makefile.in:  Changed installation directory name scheme
904         to be consistent with gcc.  Also changed 'install'.
905
906 Mon Oct 14 17:30:02 1991  Roland H. Pesch  (pesch at cygnus.com)
907
908         * Makefile.in: new targets ld.mm, ld.me
909
910 Mon Oct 14 17:27:24 1991  Per Bothner  (bothner at cygnus.com)
911
912         * Makefile.in, ldtemplate:  Need to use separate scripts
913         for -n and -N options.  Yet more complication.
914
915 Fri Oct 11 22:40:46 1991  John Gilmore  (gnu at cygnus.com)
916
917         * Makefile.in:  Avoid using $< in explicit Make rules (it doesn't
918         work).  Add some lines to avoid Sun Make VPATH bugs.
919
920 Fri Oct 11 16:42:22 1991  Per Bothner  (bothner at cygnus.com)
921
922         * news.sc: Add alignment for data segment.
923         * ldtemplate: Add (yet another) script to get for -n or -N
924         options.  (These need different alignment than ZMAGIC files.)
925         * Makefile.in:  Add stuff for new foo.xn scripts.
926         These are generated by replacing "ALIGN(0x...00)" by ".".
927
928 Fri Oct 11 15:43:04 1991  Roland H. Pesch  (pesch at cygnus.com)
929
930         * Makefile.in: new targets ld.ms, ld-index.ms
931         ld.texinfo: remove tabs, other cleanups for texi2roff
932
933 Fri Oct 11 13:51:54 1991  Per Bothner  (bothner at cygnus.com)
934
935         * ldmain.c (main): Make config.magic_demand_paged be true
936         by default.  Don't the WP_TEXT and D_PAGED flags of
937         output_bfd here; it's too late, so set it when output_bfd
938         is created (in ldlang.c).  Also fix setting of EXEC_P flag
939         * ldlang.c (ldlang_open_output):  Set output_bfd->flags here.
940         * ldlang.c: Remove some duplicate extern declarations.
941         * ldgram.y: Fixes to -N and -n options.
942         * Makefile.in:  Recognize upper case letters in sed script
943         to remove assignments from script files.
944         * ldtemplate:  Don't assukme that -N or -n options
945         imply use of -r script.
946         * mkscript.c:  Tweaking to correctly handle \n and \\ in input.
947
948 Fri Oct 11 10:29:27 1991  Steve Chamberlain  (steve at cygnus.com)
949
950         * ldtemplate: include bfd.h before sysdep.h.
951
952 Fri Oct 11 04:24:45 1991  John Gilmore  (gnu at cygnus.com)
953
954         Restructure configuration scheme for bfd, binutils, ld.
955
956         * include/sys/h-*.h:  Move to bfd/hosts/h-*.h.
957         * configure.in:  Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
958         Change some config names to match other dirs.
959         * *.c:  Include bfd.h before sysdep.h, so ansidecl and PROTO()
960         get defined first.
961         * config/:  Rename some config files to match up h-*.h names.
962         Remove all the HOST_SYS definitions from the config files.
963
964 Tue Oct  8 16:00:57 1991  Per Bothner  (bothner at cygnus.com)
965
966         * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
967         * ldtemplate: Remove ldfile_add_library_path calls;
968         just use the SEARCH_DIR commands in the script files.
969         * Makefile.in: Add LIB_PATH macro, which if set is used to replace
970         the SEARCH_DIR commands in the scripts (using ugly sed magic).
971         This is primarily intended for cross-linking, where you would
972         place libaries in a different place than native libraries.
973         Also, emulations made from ldtemplate now use $(srcdir).
974         * ldglda29k.sc:  Change SEARCH_DIR commands to a conventional
975         form; people can use the Makefile's LIB_PATH to override.
976
977 Tue Oct  8 14:51:21 1991  Roland H. Pesch  (pesch at cygnus.com)
978
979         * Makefile.in: fix target ld.dvi, add target ld.info
980         ld.texinfo: make info filename ld.info
981
982 Fri Oct  4 21:51:58 1991  John Gilmore  (gnu at cygnus.com)
983
984         * Makefile.in:  Avoid using $< in non-suffix rules (breaks on Sun
985         Make). 
986         * ldfile.c, ldlang.c, ldmain.c, ldwrite.c:  Cope with renames of a
987         few BFD types & enums.
988