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