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