* ldgram.y (OPTION_Lfile): New token.
[external/binutils.git] / ld / ChangeLog
1 Fri Jul 16 14:14:32 1993  Ian Lance Taylor  (ian@cygnus.com)
2
3         * ldgram.y (OPTION_Lfile): New token.
4         (command_line_option): Accept OPTION_L NAME (whitespace after -L).
5         * ldlex.l (<COMMAND>): Accept -L without FILENAME.
6
7 Fri Jul 16 13:44:26 1993  Doug Evans  (dje@canuck.cygnus.com)
8
9         * configure.in: h8/300h support needs own .mt file.
10         config/coff-h8300h.mt: New file.
11
12 Thu Jul 15 12:44:35 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
13
14         * ldmain.c: Don't include sys/stat.h; it already got included
15         somewhere along the way.
16
17 Thu Jul 15 14:43:34 1993  Doug Evans  (dje@canuck.cygnus.com)
18
19         * Makefile.in: Add h8300h support.
20         emulparams/h8300h.sh: New file.
21         scripttempl/h8300h.sc: New file.
22
23 Thu Jul 15 12:44:35 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
24
25         * ldfile.c (ldfile_open_file): In error message, use the name the
26         user gave (e.g., "-lc"), rather than the base file name.
27
28         * ldexp.c (exp_fold_tree): Don't assign an int to an enum.
29
30         * ldmain.[ch]: Remove initial Q_ from function names.
31         * ldexp.c, ldindr.c, ldlang.c: Change callers.
32
33         * ldfile.c, ldmain.c, ldgram.y: Rename option_v to trace_file_tries.
34
35         * ldlang.c (lang_process): Move loading of default script from
36         here to main.  Add a "/" to start of script name to prevent
37         finding it in "." first.
38
39         * ldmain.c (set_scripts_dir): Don't look in "." first.
40
41         * ldgram.y, ldlang.c, ldsym.c: Remove traces of unused var
42         option_longmap. 
43
44 Thu Jul 15 10:55:59 1993  Ian Lance Taylor  (ian@cygnus.com)
45
46         * Makefile.in (em_m88kbcs.c): Correct dependency.
47         * scripttempl/m88kbcs.sc: It's ARCH, not arch.  Removed TARGET
48         statement.  Changed OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
49         * emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
50
51 Wed Jul 14 21:42:53 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
52
53         * ldfile.c (ldlang_open_file, ldfile_open_command_file),
54         main.c (main): Print the errno string in the error message.
55
56 Tue Jul 13 20:00:30 1993  Doug Evans  (dje@canuck.cygnus.com)
57
58         * configure.in: Accept h8300h for target cpu.
59
60         * ldmisc.c (vfinfo): Have demangle remove leading underscore if
61         present (demangle is smart enough to know whether to do it or not).
62
63 Mon Jul 12 11:45:48 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
64
65         * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
66         ldscripts, as well as <ld bin dir> and SCRIPTDIR.
67
68         * ldlang.c (lang_process): Use sizeof instead of magic constant.
69
70         * ldmain.c (get_emulation, check_for_scripts_dir,
71         set_scripts_dir):  New functions.
72         (main): Call them.
73
74 Mon Jul 12 10:57:03 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
75
76         * scripttempl/elf.sc: Include .init, .fini, .rodata sections.
77         Create symbol "end" instead of "__end".  Comment out some parts
78         that may not be needed (yet) for elf.
79
80         * configure.in: Accept sparc-elf and sparc-solaris2 configs.
81
82 Thu Jul  8 15:33:32 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
83
84         * Makefile.in (ALL_EMULATIONS): Include $(OTHER_EMULATIONS).
85
86         * ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro
87         when no prototype is being supplied.
88         (ldmalloc, ldrealloc): Size argument is now size_t.
89
90         * ldmisc.c (finfo): New function, accepts FILE* argument.
91         (vfinfo, case 'v'): New format character; displays bfd_vma in hex
92         without leading zeros.
93         (vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a
94         bfd_vma value, instead of fprintf(%x) which won't hold a long long
95         value.
96         (concat, buystring): String lengths are size_t.
97         (ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
98
99         * ldlang.c (new_statement): Size argument is now size_t.  Added
100         forward declaration with prototype.
101
102 Thu Jul  8 10:53:47 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
103
104         * ldgram.y (OPTION_v): Don't turn on verbose output.
105
106 Wed Jul  7 17:10:45 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
107
108         * ldlex.l: Get rid of local typedef for bfd_vma!  Get it from
109         bfd.h instead.
110
111 Wed Jul  7 11:33:12 1993  Ian Lance Taylor  (ian@cygnus.com)
112
113         * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
114         collect2 doesn't look for gld any more anyhow.
115
116 Mon Jul  5 14:29:48 1993  Ian Lance Taylor  (ian@cygnus.com)
117
118         * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
119         now have a non NULL srefs_chain.
120
121         * config/hp300hpux.mt: Use emulation hp3hpux rather than
122         hp300hpux, since the latter does not exist.
123
124 Fri Jul  2 18:06:05 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
125
126         * genscripts.sh: Put the scripts in the ldscripts directory, not
127         emulations. 
128         * configure.in (ldscripts): Make, instead of emulations.
129         * Makefile.in (scriptdir): Take off the "ld" part.
130         (install, clean, distclean): Use ldscripts, not emulations.
131         In tests, don't pass -Lemulations.
132         Don't pass tooldir/lib to genscripts.sh.
133         * genscripts.sh: Don't take tooldir/lib arg.
134         * ldlang.c (lang_process): Add "ldscripts/" to the name of the
135         default script file.
136
137 Fri Jul  2 17:13:35 1993  Doug Evans  (dje@canuck.cygnus.com)
138
139         * scripttempl/h8300.sc: Add .tors section for constructor/destructors.
140
141 Thu Jul  1 16:38:45 1993  Doug Evans  (dje@canuck.cygnus.com)
142
143         * config/coff-h8300.mt: EMUL=h8300hms -> h8300.
144
145 Wed Jun 30 15:45:55 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
146
147         * Makefile.in (.y.c): skip default .y.c rules. gnu make can now
148           run in parallel without colliding on yacc's static file names.
149           Without the stub rule, make will try to start two yacc's
150           concurrently which fails because of yacc's static file names.
151
152 Tue Jun 29 12:20:36 1993  Ian Lance Taylor  (ian@cygnus.com)
153
154         * ldmain.c (subfile_wanted_p): Don't dump core if there are no
155         symbols.
156
157 Mon Jun 28 12:22:11 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
158
159         * genscripts.sh (LIB_PATH): Only add /usr/local/lib if it's
160         different from libdir.
161
162         * Makefile.in (scriptdir): Base on tooldir, not datadir.
163
164 Sat Jun 26 12:03:57 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
165
166         * ldver.c (help): New function.
167         * ldver.h: Declare it.
168         * ldlex.l, ldgram.y: Recognize new options --help and --version.
169
170 Mon Jun 21 20:39:48 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
171
172         * Makefile.in (INCLUDES): Don't need ../include any more.
173
174 Mon Jun 21 16:38:35 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
175
176         * ldlex.l, ldgram.y: Support new -oformat option.
177         Remove attempt at supporting script fragments on the command line.
178         * ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
179         * mri.c (mri_format), ldgram.y: Change callers.
180         * ldlang.h: Change prototype.
181
182 Thu Jun 17 16:53:56 1993  david d `zoo' zuhn (zoo@cygnus.com)
183         
184         * Makefile.in: canonicalize install.sh; for use within
185         this directory (and subdirs)
186
187 Thu Jun 17 14:33:09 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
188
189         * ldgram.y: Tweak grammar to make reporting of invalid options work.
190
191         * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
192         and .cc.o rule.
193
194 Wed Jun 16 11:45:32 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
195
196         * ldfile.c (ldfile_open_command): Don't try .ld extension.
197         It wasn't documented (or likely used) and wastes time.
198         (try_open): If EXTEN is empty, don't try it.
199
200         * ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
201         ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
202         ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
203         with normal function declarations.
204
205         * Move *.em to emultempl/*.em.  Move *.sh to emulparams/*.sh.
206         Move *.sc-sh to scripttempl/*.sc.
207         * {emultempl,emulparams,scripttempl}/README: New files.
208         * sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
209         removed, replaced with generic.em.
210         * h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
211          h8[35]00hms.s[ch].  Change their contents to omit the "hms".
212
213         * *.em (*_get_script): Return script name instead of script contents.
214         * ldlang.c (lang_process): Change caller.
215
216         * ldlex.l, ldgram.y: Recognize -m option.
217         Check for input files after *all* options in grammar.
218         * ldmain.c (main): Check for -m options.  Add default directory
219         for -m.
220
221         * mkscript.c: File removed.
222         * genscripts.sh: Take two more parameters, tooldirlib and libdir,
223         to add to the default LIB_PATH.
224         Look for input files in the new subdirectories.
225         Create the scripts in emulations subdirectory and don't filter
226         them through mkscript.
227         * configure.in: Make the emulations subdirectory.
228
229         * Makefile.in: Account for all of the above changes.
230         Remove unused .SUFFIXES.  Get libgcc.a path with gcc
231         -print-libgcc-file-name instead of $(libdir)/libgcc.a.
232         Put CFLAGS last in the compilation rules.
233         Add -I../bfd to INCLUDES so sysdep.h is found.
234
235 Tue Jun 15 23:04:46 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
236
237         * Makefile.in (INCLUDES): Look in ../include, not ../bfd.
238
239         * aout.sc-sh: Add SHLIB_PATH like STACKZERO.  Make STACKZERO
240         dependent on RELOCATING, not RELOCATION.
241         * hp3hpux.sh (SHLIB_PATH): Define it.
242
243 Mon Jun 14 19:06:15 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
244
245         * ldfile.c (try_open): If opening without the extension fails,
246         try with the extension even if -v or -V was given.
247         had_script is imported (from ldgram.y), not exported.
248
249 Mon Jun 14 16:26:10 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
250
251         * Makefile.in: remove parentdir support, use INSTALL_XFORM
252
253 Thu Jun 10 14:00:06 1993  Ian Lance Taylor  (ian@cygnus.com)
254
255         * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
256         * ldgram.y (statement_list_opt): New nonterminal, either empty or
257         statement_list.
258         (section): Use statement_list_opt, not statement_list.
259         * m68kcoff.sc-sh: Gather constructors and destructors and define
260         __CTOR_LIST__ and __DTOR_LIST__ appropriately.
261         * sa29200.sc-sh: Gather constructors and destructors and define
262         ___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
263
264 Mon Jun  7 12:53:28 1993  Per Bothner  (bothner@rtl.cygnus.com)
265
266         * Makefile.in (INCLUDES):  Add -I../bfd for sysdep.h and bfd.h.
267         * configure.in:  No longer need to configure to get sysdep.h.
268
269 Fri Jun  4 16:18:24 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
270
271         * Makefile.in: remove install:all and install-info:info 
272         dependencies (these cause some spurious rebuilds at 'make install'
273         time)
274
275 Fri Jun  4 08:50:14 1993  Ian Lance Taylor  (ian@cygnus.com)
276
277         * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
278         (mips-idt-ecoff*): Added trailing '*'.
279         * config/mips-idtl.mt: New file; use EMUL of mipsidtl.
280         * mipsidtl.sh: New file; like mipsidt.sh, but little endian.
281         * Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
282
283         * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
284         incorrect definitions.
285
286 Tue Jun  1 14:56:10 1993  Per Bothner  (bothner@rtl.cygnus.com)
287
288         * ldsym.c (write_file_locals):  Write BSF_CONSTRUCTOR
289         symbols, unless stripping.
290
291 Tue May 25 15:34:25 1993  Ian Lance Taylor  (ian@cygnus.com)
292
293         * Makefile.in: configure looks for ####, so remove lines with many
294         '#' characters.
295         * config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
296         and HOSTING_LIBS correctly so that ``make check'' will work.
297
298 Thu May 20 13:56:16 1993  Per Bothner  (bothner@deneb.cygnus.com)
299
300         * mips.sc-sh:  Define _etext, _edata, and _end, in addition
301         to etext, edata, and end.  Needed for IRIX 4.0.5F.
302         Patch from mwp@iconix.oz.au (Michael Paddon).
303
304         * Version 2.2.1 released.
305
306 Thu May 20 11:42:06 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
307
308         * mipsbsd.sc-sh: Renamed from aout-mipsbsd.sc-sh.
309         * mipsbsd.sh (EMULATION_NAME): Use new file name.
310
311 Tue May 18 17:10:24 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
312
313         * Makefile.in (LDDISTSTUFF): Remove ld.mm since we can't build it
314         properly right now.
315
316         * Version 2.2 released.
317
318 Mon May 17 15:37:28 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
319
320         * ldver.c (ldversion): Bump version number to 2.2.
321
322 Mon May 17 12:44:31 1993  Per Bothner  (bothner@cygnus.com)
323
324         * NEWS:  New file.
325
326 Fri May 14 11:26:24 1993  Ian Lance Taylor  (ian@cygnus.com)
327
328         * mips.sc-sh: Don't define BSS_VAR unless relocating.
329
330 Wed May 12 13:33:29 1993  Ian Lance Taylor  (ian@cygnus.com)
331
332         * Makefile.in (mkscript.o, mkscript): Build mkscript via
333         mkscript.o, rather than directly from mkscript.c.
334
335 Tue May  4 21:58:56 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
336
337         * configure.in: Look for ${target_makefile_frag} relative to
338         ${srcdir}, not relative to build directory.
339
340         * hppaosf.em, hppaosf.sc-sh, hppaosf.sh: New files.
341         * configure.in: Recognize hppa*-hp-osf.
342         * Makefile.in (ALL_EMULATIONS): Include hppaosf emulation.
343         (em_hppaosf.c): Build it.
344         * config/hppaosf.mh, hppaosf.mt: New files.
345
346         * ld.h (ALIGN_N): Renamed from ALIGN, because that conflicted with
347         some system header files.  All uses changed.
348
349         * configure.in: Recognize i386-aix configurations as i386-coff
350         targets.
351
352         * configure.in: Recognize m68*-*-hpux.
353         * aout.sc-sh: If STACKZERO and RELOCATING are both defined, output
354         the value of STACKZERO.
355         * Makefile.in (ALL_EMULATIONS): Include hp300-hpux emulation.
356         (em_hp3hpux.c): Build it.
357         * hp3hpux.sh, config/hp300hpux.mt: New files.
358
359 Tue May  4 12:37:35 1993  Ian Lance Taylor  (ian@cygnus.com)
360
361         * mips.sc-sh: Put constructors in the .data section.
362         * Makefile.in (cdtest): Added dependency on ld.new.
363
364 Mon May  3 19:43:39 1993  Per Bothner  (bothner@cygnus.com)
365
366         * Makefile.in:  Change definition of $(tooldir) to match FSF.
367         * vax.sh, config/vax.mt, configure.in, Makefile.in:
368         Support VAX Ultrix and BSD.
369
370 Mon Apr 26 18:35:47 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
371
372         * sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH.
373
374 Wed Apr 14 21:01:51 1993  John Gilmore  (gnu@cygnus.com)
375
376         * ldlang.h (struct memory_region):  Change `length' and
377         `old_length' fields to bfd_size_type.  Eliminate use of bfd_offset.
378         * ldlang.c, mri.c:  Corresponding changes, plus lint.
379
380 Thu Apr  8 22:08:18 1993  Ian Lance Taylor  (ian@cygnus.com)
381
382         * configure.in: For all i386 targets, accept i486 as well.
383
384 Mon Apr  5 17:33:39 1993  Ian Lance Taylor  (ian@cygnus.com)
385
386         * ldlang.c (wild_doit): Preserve all flags for a
387         SEC_SHARED_LIBRARY section.
388         (size_input_section): Consider any SEC_HAS_CONTENTS section when
389         computing largest_section.
390
391 Fri Apr  2 14:33:52 1993  Ian Lance Taylor  (ian@cygnus.com)
392
393         * ldlang.c (lang_output_section_statement_lookup): Initialize all
394         fields of newly created structure.
395
396 Wed Mar 31 18:19:15 1993  Ian Lance Taylor  (ian@cygnus.com)
397
398         * ldmain.c (g_switch_value): New variable.
399         * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
400         (command_line_option): Accept -G and set g_switch_value.
401         * ldlex.l (COMMAND): Accept -G.
402         * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
403
404 Tue Mar 30 09:40:25 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
405
406         Support for linking and loading at different places:
407
408         * ldlex.l: Add "AT" keyword.
409         * ldgram.y: Cleanup, and parse AT.
410         * ldlang.c (print_output_section_statement): Print output address
411         of section in map. (lang_size_sections): Fill sections' lma with
412         load address.
413         * ldlang.h (lang_output_section_statement_type): Add load_base
414         information.
415
416         * ldindr.c (add_indirect): Keep more information in the alias
417         symbol chain.
418         * ldlang.c (wild_doit):  Don't inherit NEVER_LOAD section
419         attribute from an input section.
420         * ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
421         default. (Q_enter_file_symbos): Indirect symbols now are known by
422         their section, not a special symbol flag.
423         * ldsym.c (write_file_locals): Indirect symbols aren't local.
424         (write_file_globals): Write the mapping for an indirect symbol.
425         * relax.c (build_it): When forced to write a NEVER_LOAD section,
426         fill it with zeros.
427
428 Tue Mar 23 13:24:10 1993  Jeffrey Osier  (jeffrey@fowanton.cygnus.com)
429
430         * ld.texinfo:  changes for q1
431
432 Tue Mar 23 00:13:29 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
433
434         * Makefile.in: add dvi target, define & use TEXI2DVI, add installcheck
435
436 Mon Mar  8 20:30:35 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
437
438         * Makefile.in: rename HOST_CC to CC_FOR_BUILD
439
440 Thu Mar  4 12:44:33 1993  Ian Lance Taylor  (ian@cygnus.com)
441
442         * mips.sc-sh: Added variables which may be overridden by a
443         specific emulation.
444         * mipsidt.sh: New file; emulation for IDT MIPS board.
445         * Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
446         (em_mipsidt.c): New target.  Uses mipsidt.sh and mips.sc-sh.
447         * config/mips-idt.mt: New file; sets EMUL to mipsidt.
448         * configure.in (mips-idt-ecoff): New target; uses mips-idt.
449
450 Sat Feb 27 00:00:14 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
451
452         * aout-mipsbsd.sc-sh, mipsbsd.sh: New files from Ralph Campbell,
453         ralphc@pyramid.com.
454         * i386bsd.sh, config/i386bsd.mt: New files.
455         * configure.in, Makefile.in: Added support for mipsbsd and 386bsd.
456
457 Thu Feb 25 15:33:10 1993  Per Bothner  (bothner@rtl.cygnus.com)
458
459         * mri.c:  Add extern declaration of strdup.
460         * ldsym.c (KEEP macro):  Add spaces around '=' for the
461         sake of old (e.g. PCC) compilers.
462
463 Wed Feb 24 19:49:31 1993  Per Bothner  (bothner@rtl.cygnus.com)
464
465         * ldver.c:  Bump to version 2.1.
466
467 Fri Feb 12 08:09:11 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
468
469         * ldgram.y: allow section types without address  expressions.
470         * ldlang.c (lang_relocate_globals): avoid possible hang with
471         undefined but unreferenced symbols.
472         * relax.c (relax_section): don't complain if the script file isn't
473         relaxable but -relax is set
474
475 Thu Feb 18 17:58:45 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
476
477         * configure.in: go32 is the 3rd part of the triple, not the 2nd
478
479 Wed Feb  3 09:05:56 1993  Ian Lance Taylor  (ian@cygnus.com)
480
481         * mipsbig.sh: New file.  Big endian MIPS emulation.
482         * config/mips-big.mt: New file.  Use mipsbig emulation.
483         * configure.in (mips-sgi-irix*): Use target mips-big.
484         * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
485         (em_mipsbig.c): New target.  Uses mipsbig.sh.
486
487 Tue Feb  2 11:32:27 1993  Ian Lance Taylor  (ian@cygnus.com)
488
489         * mips.sc-sh: Put .scommon sections into .sbss section.
490
491         * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
492         rather than always putting them in bfd_com_section.
493         * ldlang.c (lang_common): If a common symbol is not in
494         bfd_com_section, put in a section of the same name, rather than
495         always putting it in section COMMON.
496
497 Fri Jan 29 09:57:58 1993  Ian Lance Taylor  (ian@cygnus.com)
498
499         * ldmain.c (subfile_wanted_p): If we already have a common
500         definition of a symbol, don't necessarily pull in an object file
501         that provides a non-common definition.
502
503         * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
504         returning OPTION_EB and OPTION_EL.  gcc passes these to a MIPS
505         linker.
506         * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
507         (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
508
509 Thu Jan 28 15:12:04 1993  Ian Lance Taylor  (ian@cygnus.com)
510
511         * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
512         the link to it.
513
514 Tue Jan 26 11:49:50 1993  Ian Lance Taylor  (ian@cygnus.com)
515
516         * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
517         checking for equality to bfd_com_section.
518
519 Fri Jan 22 14:22:44 1993  Ian Lance Taylor  (ian@cygnus.com)
520
521         * mips.sc-sh: New file.  Ultrix, and hopefully other MIPS ECOFF
522         targets, linker script.
523         * mipslit.sh: New file.  Little endian MIPS emulation.
524         * config/mips-lit.mt: New file.  Use mipslit emulation.
525         * configure.in (mips-dec-ultrix*): Use target mips-lit.
526         * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
527         (em_mipslit.c): New target.  Uses mipslit.sh.
528
529 Thu Jan 14 15:30:27 1993  Ian Lance Taylor  (ian@cygnus.com)
530
531         * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
532         $(tooldir)/bin/gld, so that gcc can find it with or without
533         collect2.
534
535 Mon Jan 11 18:50:07 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
536
537         * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
538         write_norel.  All linking is now done via write_relax.  Call
539         ldsym_write before calling write_relax.
540         * relax.c: Added copyright.
541         (write_relax): Renamed from write_relaxnorel.  Added relocateable
542         argument.  seclet_dump renamed to bfd_seclet_link.
543         * relax.h: Added copyright.
544
545 Mon Jan 11 15:41:56 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
546
547         * ldmain.c (decode_library_subfile): Patch from
548         hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
549
550 Fri Jan  8 18:04:33 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
551
552         * config/vxworks960.mt renamed to config/i960.mt
553
554         * configure.in: sparc-aout emulates a sun4, as does
555         sparc*-vxworks, i960-nindy uses gld960 emulation
556
557 Fri Jan  8 14:39:07 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
558
559          Fix support for NOLOAD, add INCLUDE
560         * ldfile.c (ldfile_open_command_file): pass file name to
561         lex_push_file.
562         * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD 
563         * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
564         attribute.
565
566 Thu Jan  7 10:22:19 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
567
568         * Makefile.in, config.h: no more default emulation.  Make the lack
569         of emulation a compile time error
570
571 Wed Jan  6 01:08:37 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
572
573         * configure.in: recognise all sparclite variants, not just 'sparclite'
574
575 Mon Dec 28 11:15:35 1992  Ian Lance Taylor  (ian@cygnus.com)
576
577         * m68kcoff.sc-sh: define _end as well as end, for consistency with
578         aout.sc-sh.
579
580         * configure.in: accept *-ericsson-ose for any m68k CPU.
581
582         * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
583         for each output section.
584
585 Mon Dec 21 16:06:59 1992  Per Bothner  (bothner@rtl.cygnus.com)
586
587         * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c:  Use new
588         macro bfd_asymbol_bfd as appropriate.
589         * Makefile.in:  Un-duplicate ldlex.c dependency.
590         * condigure.in:  Replace my_host case table by sourcing
591         ../bfd/configure.host.  Allow std-host as the default.
592         * ldmisc.c:  Change logic for C++ name demangling:  There is
593         no initial '_' to remove from stab-derived function names.
594
595 Sun Dec 13 16:31:26 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
596
597         * ldlang.c (lang_init_script_file): don't attach the output file
598         sections to the script file.
599
600 Wed Dec  9 08:38:05 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
601         * ldlang.c (wild): run expansion loop over command line bfd too.
602         (lang_ini_script_file): initialize more parts of the command line
603         bfd.
604         * ldlex.l: fix DEFINED start states.
605
606 Mon Dec  7 08:43:41 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
607          -y support
608         * ld.texinfo: new doc.
609         * ldgram.y, ldlex.l: understand -y<symbol>
610         * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
611         print info. (add_ysym): new function.
612         * ldsym.h: (ldsym_type): new define SYM_Y.
613
614 Sat Nov 21 03:15:27 1992  John Gilmore  (gnu@cygnus.com)
615
616         * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
617         ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
618         ldwrite.h, relax.h:  Replace all uses of EXFUN and PROTO ansi-glue
619         macros with PARAMS.  Recreational cleanup.  Update copyrights.
620
621 Tue Nov 10 00:23:37 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
622
623         * Makefile.in: pass down the bfd source directory for includes
624
625 Thu Nov  5 15:41:55 1992  Ian Lance Taylor  (ian@cygnus.com)
626
627         * ldlang.c (lang_size_sections): don't change size and address for
628         SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
629         sections.
630
631 Thu Nov  5 11:33:57 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
632
633         * relax.c (build_it): re-enable the processing of data_statements
634         in scripts, makes counted contructor lists work again.
635
636 Thu Nov  5 05:43:01 1992  John Gilmore  (gnu@cygnus.com)
637
638         * ldemul.h:  Remove uses of SDEF and PROTO macros (use PARAMS).
639
640 Tue Oct 20 10:56:06 1992  Ian Lance Taylor  (ian@cygnus.com)
641
642         * m68kcoff.sc-sh: don't use initial underscores for etext, edata
643         and end.
644
645 Mon Oct 19 09:45:38 1992  Ian Lance Taylor  (ian@cygnus.com)
646
647         * Support for i386-sysv.
648         configure.in: check for i386-*-sysv* and i386-*-sco*.
649         i386coff.sc-sh: rewrote to support SVR3 by default.
650         ldctor.c (find_constructors): preserve stat_ptr.
651         ldlang.c (wild_doit): initialize vma and size of new output
652         section to corresponding input section.  This is required for
653         shared library support.
654         (lang_size_sections): don't modify vma and size of sections which
655         are never loaded (for shared libraries).
656         ldwrite.c (copy_and_relocate): copy the contents of any section
657         which has contents, not just sections which are loaded (for shared
658         libraries).
659
660 Thu Oct 15 15:20:26 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
661
662         * ldlang.c (size_input_section): count the sizes of all sections
663         we allocate.
664
665 Thu Oct  8 09:05:25 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
666
667         * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to 
668         to demangle symbols better
669
670 Tue Oct  6 13:08:54 1992  Ian Lance Taylor  (ian@cygnus.com)
671
672         * ldlang.c (lang_finish): don't warn if -e start symbol does not
673         exist when linking with -r.
674
675 Mon Oct  5 14:07:37 1992  Ian Lance Taylor  (ian@cygnus.com)
676
677         * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
678         .bss segment.
679
680 Mon Oct  5 08:55:14 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
681
682         * ldmain.c (linear_library): don't even think about processing 
683         an object file if it's already been done
684
685 Thu Oct  1 23:14:59 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
686
687         * configure.in: the hp9000/300 config file is now hp300
688
689 Wed Sep 30 07:34:09 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
690
691         * config/z8ksim.mt: new file
692
693 Fri Sep 25 13:49:52 1992  Ken Raeburn  (raeburn@kyriath.cygnus.com)
694
695         * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
696         lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
697
698         * ld.h (strip_symbols_type): Add value STRIP_SOME.
699         * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
700         * ldlang.c (lang_add_keepsyms_file): New function.
701         * ldlex.l: Handle "-retain-symbols-file".
702         * ldsym.c (keepsyms_file, kept_syms): New vars.
703         (process_keepsyms): New functihon; reads file, marks symbols for
704         saving.
705         (write_file_locals): File symbols should always be kept.
706         (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
707         and "-s".  Process retain-symbols file before setting symtab.
708         * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
709         (keepsyms_file, kept_syms): Declare them.
710
711         * ldmain.c (main): Non-fatal errors should still cause non-zero
712         exit status even with -r.
713
714 Fri Sep 25 11:08:01 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
715
716         Added initial support for the z8k
717         * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
718         * configure.in, Makefile.in: modified to reflect above
719
720         * ldlang.c (lang_check): when linking conflicting architectures,
721         make the output file reflect at least one of the bad inputs.
722
723 Tue Sep 15 15:35:38 1992  Ian Lance Taylor  (ian@cygnus.com)
724
725         * Makefile.in (install): if $(tooldir) exists, install ld in
726         $(tooldir)/bin.
727
728 Fri Sep 11 10:24:22 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
729
730         * Makefile.in, configure.in: modified to support i386-coff
731         * i386coff.sh: new file
732
733 Wed Sep  9 11:52:58 1992  Ian Lance Taylor  (ian@cygnus.com)
734
735         * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
736         added m68k-coff emulation mode, stolen from a29k emulation.
737         Almost certainly wrong, but perhaps better than sun3.
738
739 Thu Sep  3 14:19:30 1992  Per Bothner  (bothner@rtl.cygnus.com)
740
741         * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
742         gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
743         vanilla.em:  Rename all (generated) ld__*.c files to em_.c.
744         This is one character shorter, and lets people build on
745         SVR3 system. (ld__h8300xray.[co] was the killer there;
746         h8300xray.sc-sh is also overlong, but seems harmless.)
747         Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
748         * Makefile.in (clean):  Fix typo mostclean -> mostlyclean.
749         * configure.in:  Add host isc.
750
751         * ldver.c:  Call it version 2.0.
752
753 Wed Sep  2 00:21:33 1992  Per Bothner  (bothner@rtl.cygnus.com)
754
755         * ldver.c:  Bump to version 0.98.
756         * TODO:  New file.
757
758         * Makefile.in:  Added mostlyclean, distclean, realclean rules.
759
760 Tue Sep  1 23:42:16 1992  Per Bothner  (bothner@rtl.cygnus.com)
761
762         * ldmisc.c (xrealloc):  New (needed by ../libiberty/cplus.dem.c).
763         * ldlex.l: Moved comment() to end, since some compilers
764         otherwise have problems with input() used before it is defined.
765
766 Tue Sep  1 17:45:51 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
767
768         * configure.in: added Solaris 2 and Irix 4 host support.
769
770 Mon Aug 31 19:27:11 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
771
772         * Makefile.in: remove -S flag from the FLEX definition
773
774         * configure.in: rewrote, using new style case statement.  use
775         m68k.mt for m68k-aout systems
776
777 Sun Aug 30 21:38:53 1992  Ian Lance Taylor  (ian@cygnus.com)
778
779         * Makefile.in: map "ld" through program_transform_name when
780         installing.
781
782 Sun Aug 30 18:12:13 1992  Per Bothner  (bothner@rtl.cygnus.com)
783
784         * cplus-dem.c:  Removed.  Use the version in libiberty now.
785         * ldmisc.c:  Use new libiberty version of cplus_demangle().
786
787 Thu Aug 27 16:38:42 1992  Ian Lance Taylor  (ian@cygnus.com)
788
789         * gld960.em (gld960_choose_target): default to little endian, not
790         big endian.
791
792 Wed Aug 26 17:28:51 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
793
794         * ldlang.c (lang_process): don't pass null pointers when
795         abs_output_section is what is required.
796         * ldwrite.c (ldwrite): use malloc to allocate the largest space
797         used, and pass that down.
798         * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
799         than alloca. 
800         
801 Mon Aug 24 14:42:06 1992  Ian Lance Taylor  (ian@cygnus.com)
802
803         * configure.in, config/ose68.mt: renamed OSE to ose.
804
805 Thu Aug 20 19:55:22 1992  Ken Raeburn  (raeburn@cygnus.com)
806
807         * ldsym.c (write_file_locals): Reorder check for common or
808         undefined symbols so that it works.
809
810 Tue Aug 18 13:41:36 1992  Ian Lance Taylor  (ian@cygnus.com)
811
812         * configure.in: accept all m68K family members.
813
814         * Makefile.in: always create installation directories.
815
816 Thu Aug 13 11:49:34 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
817
818         * ldlex.l: now parses comment correctly, added ~ to acceptable
819         chars in filenames
820         
821         * ldexp.c (exp_unop): pass down abs_output_section - now can have
822         unary -ve constants.
823
824         * ldlang.c (lang_finish): warn when an entry symbol supplied on
825         the command line can't be found.
826
827 Fri Aug  7 12:31:10 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
828
829         * ldlang.h: add new field "loadable" to output_section_statement.
830         * ldlang.c (lang_output_section_statement_lookup): initilize new
831         field. (wild_doit): if new field is not set, then stop output
832         section from being loadable.
833         (lang_enter_output_section_statement): set the field from the
834         NOLOAD keyword
835         * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
836         * h8300hms.sc-sh, h8300hms.em: get -r right.
837
838 Thu Aug  6 18:35:21 1992  Per Bothner  (bothner@rtl.cygnus.com)
839
840         * ldint.texinfo:  New internals manual (beginnings thereof).
841         * PORTING:  Removed, merged into ldint.texinfo.
842
843 Tue Aug  4 21:12:29 1992  Per Bothner  (bothner@rtl.cygnus.com)
844
845         * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
846         cdtest.exp:  A test program (copied from libg++/test-install)
847         that tests that constructor and destructors are handled
848         corrrectly.
849
850 Mon Aug  3 14:58:19 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
851
852         * Makefile.in (install): install from ld.new, renaming during the
853         copy, or else the next 'make install' needs to re-link ld.
854
855 Mon Jul 20 03:37:06 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
856
857         * configure.in: generalise hp recognition (from sef).
858
859 Sat Jul 18 14:46:04 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
860
861         * configure.in: recognize bsd and hpux hppa configurations.
862         error messages echo to stderr, not stdout
863
864 Fri Jul 17 22:06:11 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
865
866         * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
867           ldmisc.c: removed rcsid's.
868
869 Tue Jul 14 08:34:34 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
870
871         * ldlang.c (lang_map): print changes in sizes due to relaxing
872         (size_input_section): maintain the delta information. 
873         * ldlang.h: add new field to struct to contain delta info.
874         * relax.c  (relax_section): complain if input not relaxable.
875         * ldlex.l : add '_', ',' and '$' to chars which can appear at the
876         start of a filename
877
878 Mon Jul 13 17:33:00 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
879
880         * ldmain.c(main): prevent -r and -relax from being on at the same
881         time.
882
883 Wed Jul  1 17:51:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
884
885         * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
886         aliasing problems
887         
888
889 Thu Jun 18 09:38:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
890
891         * h8300hms.em, h8300hms.sc-sh:  do the right thing for -r
892         * ldexp.c:  lint
893         * ldlang.c(open_output): set the target arch and machine as soon
894         as we can. (lang_size_sections): use new macros for setting vma
895         * ldwrite.c: lint
896
897 Mon Jun 15 08:47:43 1992  Michael Tiemann  (tiemann@rtl.cygnus.com)
898
899         * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
900         Also deleted an unreachable path to wrs.
901
902 Wed May 27 23:24:19 1992  Michael Tiemann  (tiemann@rtl.cygnus.com)
903
904         * Makefile.in (install): use -d test for $tooldir before
905         installing ld there so that $tooldir can be inherited from
906         top-level Makefile.
907
908 Wed May 27 16:56:48 1992  Per Bothner  (bothner@rtl.cygnus.com)
909
910         * ldlang.c:  Two non-substantial changes for the sake of
911         the old Portable C Compiler.
912
913 Wed May 27 15:15:58 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
914
915         * ldgram.y, ldlex.l: parse ABSOLUTE
916         * ldexp.c: add support for ABSOLUTE
917
918 Wed May 27 13:07:20 1992  Per Bothner  (bothner@rtl.cygnus.com)
919
920         * Makefile.in:  Added default definitions for HOSTING_CRT0,
921         HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
922         * config/*.mh:  Miscellaneous clean-up:  Removed definitions
923         of YACC (since it is not longer used in the Makefile).
924         Remove HOSTING_* definitions that are subsumed by the
925         ones added to Makefile.in.  Removed most definitions of CC.
926         * config/{sparc,news,hp300bsd,decstation}.mh:  Removed;
927         These are no longer needed.
928
929 Fri May 22 13:47:19 1992  Per Bothner  (bothner@cygnus.com)
930
931         * Makefile.in:  Use srcdir instead of VPATH in ldgram/ldlex
932         rules, since these are used when building a distribution.
933         * Makefile.in (ldlex.c):  Don't re-direct output, since that
934         leaves a bogus output files if it fails.
935
936         * config/sparc.mh:  Fix HOSTING_LIBS so it has a chance of working.
937         * ldlex.c:  Fix some unnecessary flex-specific-isms.
938
939 Fri May  8 11:49:43 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
940
941         * ldgram.y: move spurious semicolon
942         * ldexp.h: fix prototype
943
944 Thu May  7 17:01:12 1992  Roland H. Pesch  (pesch@fowanton.cygnus.com)
945
946         * ld.texinfo: references to linker now say "ld" not "gld".
947
948 Wed May  6 13:26:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
949
950         changed calling convention for Q_enter_global_ref
951         * ldexp.c, ldlang.c, ldmain.c: reflect this
952         * ldver.c: bump version to 1.97.1
953         * ldindr.c (add_indirect): when an edict declaring an indirect
954         symbol is found, make sure that any ideas about the symbol being
955         common are changed if it now known to be defined.
956         * ldmain.c (linear_library): complain once if archive isn't
957         ranlibbed.
958         * ldlang.h, ldlang.c: make room for and initialize the complain
959         once field.
960
961 Wed May  6 11:07:35 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
962
963         * Makefile.in: use flex & bison from ../ if they exist.
964
965 Tue May  5 17:47:33 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
966
967         * relax.c (build_it): don't allocate space in the output file for
968         stuff if -R flag applys to it.
969         * ldfile.c: merge in VMS filename support
970         * ldmain.c (main): take out ./ from library path, and close file
971         before unlinking. Make multiple defs of a symbol create an
972         unexecable file.
973         * ldmisc.c: fatal errosrs delete output file 
974
975 Tue May  5 14:05:05 1992  Per Bothner  (bothner@rtl.cygnus.com)
976
977         * ldver.c:  Increase version number to 1.97, for consistency
978         with ../binutils.
979
980 Tue May  5 12:12:24 1992  K. Richard Pixley  (rich@cygnus.com)
981
982         * Makefile.in: FLEX -> LEX.
983
984         * ld.texinfo: {} -> @{@}.
985
986 Mon May  4 17:52:41 1992  Roland H. Pesch  (pesch@fowanton.cygnus.com)
987
988         * ld.texinfo: describe alternate, MRI-compatible linker scripts
989         (and associated change in -c option, now used for these scripts)
990
991 Mon May  4 16:10:10 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
992
993         * ldver.c: Bumped version to 1.96 - new release, resync with the
994         bfd too #.
995         * ldexp.c, ldlang.c: now build memory shape tree in obstacks
996         rather than with raw malloc, makes it easier to track where memory
997         is going.
998         * ldsym.h, ldsym.c: create obstack for all global symbols too.
999         * ldwrite.c (ldwrite): moved malloc so only used when needed.
1000         * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
1001
1002
1003 Fri May  1 18:17:52 1992  K. Richard Pixley  (rich@cygnus.com)
1004
1005         * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
1006
1007         * Makefile.in: use bootstrap for check.
1008
1009 Fri May  1 13:03:41 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1010
1011         * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
1012         PUBLIC.
1013         * Makefile.in: now use flex, not lex
1014         * ldlex.l, ldlang.c, ldctor.c: lint
1015
1016 Wed Apr 22 12:48:42 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1017
1018         * ldlex.l: added CMDFILENAMECHAR state so that you can lex
1019         different sorts of filenames on the command line than in a script.
1020
1021 Mon Apr 20 22:37:04 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
1022
1023         * Makefile.in: rework CFLAGS so that they can be passed on the
1024           make command line.  Remove MINUS_G.  Default CFLAGS to -g.
1025
1026 Fri Apr 17 08:57:17 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1027
1028         * relax.c: added handling for new "padding" seclet type, used to
1029         fill out gaps between section.
1030         * ldgram.y, ldlex.l: now -defsym on the command line is done
1031         properly.
1032
1033 Wed Apr 15 21:20:07 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
1034
1035         * Makefile.in: the tooldir copy of ld goes directly in tooldir.
1036
1037 Wed Apr 15 16:09:33 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1038
1039         * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
1040         scripts.
1041
1042 Thu Apr  9 05:52:02 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
1043
1044         * Makefile.in (install): Install second copy in $(tooldir)/bin
1045         without $(program_prefix), since that's what gcc expects.
1046
1047 Sat Apr  4 17:44:06 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1048
1049         * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer. 
1050         * h8300*: fix bit rot and add support for h8300xray target
1051         * go32.sh: target emulation for go32.
1052
1053 Mon Mar 16 14:53:29 1992  Steve Chamberlain  (sac@rtl.cygnus.com)
1054
1055         * gld960.em, i960.sc-sh. Fix i960 bit rot
1056
1057 Fri Mar 13 19:47:22 1992  K. Richard Pixley  (rich@cygnus.com)
1058
1059         * Makefile.in: install man page.
1060
1061 Fri Mar 13 08:23:59 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1062
1063         * config/mt-<foo> renamed to <foo>.mt
1064         * config/mh-<foo> renamed to <foo>.mt
1065         * configure.in changed to reflect this
1066         * genscripts.sh now make .xbn files rather than .xN files
1067
1068 Sat Mar  7 03:40:40 1992  K. Richard Pixley  (rich@cygnus.com)
1069
1070         * ldver.h: fix decl of ldversion.
1071
1072 Fri Mar  6 22:00:35 1992  K. Richard Pixley  (rich@cygnus.com)
1073
1074         * Makefile.in: added check target.
1075
1076 Fri Mar  6 06:59:04 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1077
1078         * ldmain.c (Q_enter_file_symbols): now aliases work again
1079
1080 Thu Mar  5 21:39:29 1992  K. Richard Pixley  (rich@cygnus.com)
1081
1082         * Makefile.in: added clean-info target.
1083
1084 Thu Mar  5 16:55:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
1085
1086         * ldexp.c (exp_print_tree): don't try and follow null pointers
1087         around.
1088         * ldgram.y: remove 11 shift reduce errors
1089
1090 Tue Mar  3 15:46:39 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
1091
1092         * Makefile.in: added tooldir and program_prefix.
1093
1094 Fri Feb 28 08:17:45 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
1095
1096         * ldlang.c (size_input_section): don't move absolute sections
1097         around!
1098
1099
1100 Thu Feb 27 09:20:41 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
1101     
1102         * cplus-dem.c: yet another copy of this - maybe it should go into
1103         libiberty ?
1104         * ldgram.y: now -V and -v have different actions
1105         * ldver.c: if -V, prints list of emulations compiled in
1106         * ldmisc.c: support for cplus demangling
1107
1108
1109 Wed Feb 26 18:04:40 1992  K. Richard Pixley  (rich@cygnus.com)
1110
1111         * Makefile.in, configure.in: removed traces of namesubdir,
1112           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
1113           copyrights to '92, changed some from Cygnus to FSF.
1114
1115 Thu Feb 20 17:43:46 1992  Per Bothner  (bothner at cygnus.com)
1116
1117         * Makefile.in:  Change mkscript rule into one for ./mkscript
1118         (for the sake of makes that don't realize they're the same).
1119         * PORTING:  Add more details.
1120         * genscripts.sh:  Add more tailorability of DATA_ALIGNMENT.
1121
1122 Mon Feb 17 12:04:36 1992  Per Bothner  (bothner at cygnus.com)
1123
1124         * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
1125         config/mt-hp300bsd:  New port to hp300 running BSD.
1126
1127 Sat Feb 15 13:59:54 1992  Per Bothner  (bothner at cygnus.com)
1128
1129         Major rewrite of how ld is configured.  The major idea
1130         is to use shell scripts to generate everything.
1131         * generic.em replaces ldtemplate.
1132         * Other *.em files replace various *.c files.
1133         A *.em file is a shell script that generates the corresponding
1134         ld__*.c file that implements an emulation.  This is usually
1135         a straight 'cat' of a here-document, possibly with substitutions.
1136         * Script files (*.sc) are places by *.sc-sh scripts.
1137         Again, these are simple shell scripts that 'cat'
1138         here-documents, usually with some substitutions.
1139         The output a *.sc-sh is a script file.
1140         * Each emulation is defined by a short shell script with
1141         extension *.sh that specifies the emulation-specific
1142         parameters (such as the name of the *.sh-sc and *.em
1143         files to use).
1144         * genscript.sh is the master shell script used to generate
1145         an emulation.  It is passed various argument, including
1146         the name a the emulation-speciic *.sh file that it
1147         "sources" to set variables to emulation-specifc parameters.
1148         * config/mt-foo:  Changed EMUL=GLDFOO_EMULATION_NAME
1149         to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
1150         * config/mh-foo:  Rename LDEMULATION names as appropriate
1151         (usually 'gldfoo' -> plain 'foo').
1152         * ldwrite.c:  Fixed a typo in a comment.
1153         * Makefile.in:  Major changes.  Removed some the sed
1154         magic to converts scripts, since that is now handled
1155         by genscripts.sh and the *.sc-sh scipt generators.
1156         * config.h:  Remove a bunch of macros defining emulations
1157         and targets.  This becomes one less file to edit when
1158         adding emulations or targets.
1159         * ldemul.h (struct ld_emulation_xfer_struct):  Add
1160         emulation_name and target_name fields.
1161         * ldemul.c, ldemul.h:  Define some default functions used
1162         by most emulations (and remove from the *.em scripts).
1163         * ldemul.c (ldemul_choose_target):  Search the new
1164         ld_emulations array using a loop (instead of a hardwired
1165         nested if statement).
1166         Define the ld_emulation from the automatically-geenrated
1167         ldemul-list.h.  This means you no longer have to edit ldemul.c
1168         to add a new emulation.
1169         * ldmain.c:  Replace {GLD,LNK}960_EMULATION_NAME by
1170         their expansions, since the former no longer exist.
1171         * PORTING:  A very rough first draft of a porting guide.
1172
1173         * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
1174         to be terminated by a new-line (instead of requiring a semicolon).
1175
1176 Mon Feb 10 16:21:02 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
1177
1178         * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
1179         tests for NULL pointers all over the place.
1180         * ldlang.c (lang_process): remember to relocate global symbols
1181         *after* relaxing has done it stuff.
1182
1183 Thu Feb  6 11:40:15 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
1184
1185         * config/mt-coff-h8300: use EMUL like everything else
1186         * ldlang.c: (print_padding_statement): print the right address.
1187         * Makefile.in, config.h, ldemul.c: renamed  h8300hds to h8300hms
1188         
1189
1190 Tue Feb  4 15:28:01 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
1191
1192         * ldlex.l: Put pack -noinhibit-exec and -sort-common
1193         * ldlang.c (print_data_statement): print the right address.
1194
1195 Thu Jan 30 17:51:53 1992  Per Bothner  (bothner at cygnus.com)
1196
1197         * Makefile.in:  The rule for testing ld by re-linking itself
1198         via an intermediate -r link was moved to the ld1 rule
1199         instead of the ld2 rule.  This allows ld2 and ld3 to be identical,
1200         which allows the bootstrap rule to work.
1201         * ldctor.c (find_constructors):  Don't create a constructor
1202         list if it is already defined (as would happen if ld is
1203         invoked by collect).
1204
1205 Wed Jan 29 08:35:39 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
1206
1207         * config/mh-sparc.h: now uses libgcc.a
1208         * ldmain.c: quit using exit
1209         * *sc: use *(COMMON) rather than [COMMON]
1210         * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
1211         to allow preprocessing of .l file.
1212         * Makefile.in: New ldlex.l mangling
1213         * ldexp.c (fold_binary): perform expressions with % and / in
1214         integer.
1215         * ldfile.c (open_a): open archives on VMS in a special way
1216
1217
1218 Tue Jan 28 10:18:16 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
1219
1220         * ldgram.y: map -M behave in the same way as -Map (sets file name
1221         to be "-".
1222         * ldsym.c, ldlang.c: remember that size of a section is dependent on
1223         whether or not relaxing has been done.
1224         * ldmain.c: don't open a map file if it doesn't have a name
1225         * relax.c: all the brains have moved into bfd.
1226         * ldwrite.c: ammend comment
1227
1228 Fri Jan 24 14:23:46 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
1229
1230         * Makefile.in: added relax, also made three stage go through a
1231         partial link stage.
1232         * relax.c : added
1233         * config.h: if GNU960 defined, then default emulation mode is
1234         GLD960
1235         * ldexp.h, ldexp.c: map to file hooks
1236         * ldlang.c: map to file hooks
1237         * ldgram.y: added -Map -relax
1238         * ldlex.l: added -relax, -Map
1239         * ldmain.c: open map file
1240         * ldmisc.c: support for map file
1241         * ldwrite.c: new relax magic
1242
1243 Thu Dec 19 18:49:51 1991  John Gilmore  (gnu at cygnus.com)
1244
1245         * Makefile.in, config/tm-*.h:  Clean up make output, only
1246         pass DEFAULT_EMULATION to ldmain.c.
1247
1248 Wed Dec 18 15:02:47 1991  Per Bothner  (bothner at cygnus.com)
1249
1250         * ldver.c:  Bump to version 1.94.
1251
1252 Tue Dec 10 04:07:23 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
1253
1254         * Makefile.in: infodir belongs in datadir.
1255
1256 Mon Dec  9 16:26:43 1991  Per Bothner  (bothner at cygnus.com)
1257
1258         * Makefile.in:  Pass -y to bison.  (Again;
1259         accidentally deleted by Rich.)
1260         * news.sc, ldgld68k.sc:  Define __end as well as _end.
1261
1262 Sat Dec  7 17:19:26 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
1263
1264         * ldindr.h: added to contain prototypes of ldindr.c
1265         * ldfile.c: include ctype.h
1266         * ldmain.c: include the requried prototype headers
1267         * ldwrite.c: get_reloc_upper_bound has been renamed
1268         bfd_get_reloc_upper_bound 
1269
1270 Fri Dec  6 23:29:26 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
1271
1272         * Makefile.in: punt "fundamental" mode because it breaks my emacs
1273           macros.  install using INSTALL_PROGRAM and INSTALL_DATA.  remove
1274           spaces following hyphens, bsd make can't cope.  added
1275           standards.text support and made it look like all the other
1276           makefiles.
1277
1278         * configure.in: configure now runs entirely in objdir so make file
1279           existence checks against ${srcdir}.  Mark this directory as
1280           target dependent.
1281
1282 Thu Dec  5 22:46:16 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
1283
1284         * Makefile.in: idestdir and ddestdir go away.  Added copyrights
1285           and shift gpl to v2.  Added ChangeLog if it didn't exist. docdir
1286           and mandir now keyed off datadir by default.
1287
1288 Wed Dec  4 23:36:55 1991  Per Bothner  (bothner at cygnus.com)
1289
1290         * ldver.c:  Bumped version to 1.93.
1291         * Makefile.in:  Pass -y to bison.
1292
1293 Mon Nov 25 18:28:40 1991  Steve Chamberlain  (sac at cygnus.com)
1294
1295         * config.h: h8 is now coff, not ieee
1296         * h8300hds.sc: reflect the same
1297
1298 Thu Nov 14 19:55:09 1991  Per Bothner  (bothner at cygnus.com)
1299
1300         * ldver.c (ldversion()):  Update to 1.92.
1301         * ldctor.c: There are two places constructor sets
1302         can be defined.  One of them checked for an existing
1303         duplicate, the other didn't.  Unfortunately, the latter
1304         was called after the former ...
1305         So, factor out code for inserting a new element into
1306         constructor_name_list (after checking for a duplicate)
1307         into a new function add_constructor_name, and call
1308         it from both aforementioned places (ldlang_add_constructor
1309         and ldlang_check_for_constructors).
1310
1311 Wed Nov 13 15:17:43 1991  Per Bothner  (bothner at cygnus.com)
1312
1313         * Makefile.in:  Rename .c files generated from ldtemplate
1314         to have names starting with ld__.  This helps 'make clean'.     
1315
1316 Tue Nov 12 18:36:50 1991  Steve Chamberlain  (sac at cygnus.com)
1317
1318         * Makefile.in: Take out the version number for install
1319         * m88kbcs.sc: put in contructor blocks.
1320
1321 Mon Nov 11 18:47:33 1991  Per Bothner  (bothner at cygnus.com)
1322
1323         * ldmisc.c, ldmisc.h:  Re-write info() to take a filename
1324         parameter, a format, and an arg pointer, and rename it to
1325         vfinfo().  Write info() in terms of new vfinfo().
1326         New einfo() is the same as info(), except it writes to stderr.
1327         * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
1328         ldmisc.c:  Replace "error" calls to info() by new einfo().
1329
1330 Mon Nov 11 09:57:32 1991  Steve Chamberlain  (steve at cygnus.com)
1331
1332         * ldlex.l ldgram.y: made -V option do same as -v
1333         * Makefile.in: Added $(MINUS_G) flag so debugging can be
1334         turned off
1335
1336 Sun Nov  3 16:37:37 1991  Steve Chamberlain  (steve at cygnus.com)
1337          i386 aout changes from Bob Kukura
1338         * Makefile.in, config.h: added i386aout support
1339         * configure.in: fixed /h-{myhost} typo
1340         * ldgram.y: -MM now gives more boring map.
1341         * ldlang.c: now does D_PAGED flag the right way.
1342         * ldsym.c: -MM flags does the right thing.
1343
1344 Sun Nov  3 15:00:03 1991  Per Bothner  (bothner at cygnus.com)
1345
1346         * configure.in:  Fixed typo.  Also, a fix for hp300bsd.
1347         * ldlang.c (init_os):  Compensate for BFD change,
1348         where bfd_make_section now returns NULL for a duplicate
1349         section request, instead of the old section.
1350
1351 Thu Oct 17 15:27:13 1991  Per Bothner  (bothner at cygnus.com)
1352
1353         * ldver.c: Bump to version 1.91 (consistent with binutils).
1354
1355 Wed Oct 16 12:27:08 1991  Per Bothner  (bothner at cygnus.com)
1356
1357         * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
1358         ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
1359         ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
1360         ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
1361         Add or update copyright notices.        
1362
1363 Mon Oct 14 23:55:27 1991  Per Bothner  (bothner at cygnus.com)
1364
1365         * README: New file.
1366         * Makefile.in:  Changed installation directory name scheme
1367         to be consistent with gcc.  Also changed 'install'.
1368
1369 Mon Oct 14 17:30:02 1991  Roland H. Pesch  (pesch at cygnus.com)
1370
1371         * Makefile.in: new targets ld.mm, ld.me
1372
1373 Mon Oct 14 17:27:24 1991  Per Bothner  (bothner at cygnus.com)
1374
1375         * Makefile.in, ldtemplate:  Need to use separate scripts
1376         for -n and -N options.  Yet more complication.
1377
1378 Fri Oct 11 22:40:46 1991  John Gilmore  (gnu at cygnus.com)
1379
1380         * Makefile.in:  Avoid using $< in explicit Make rules (it doesn't
1381         work).  Add some lines to avoid Sun Make VPATH bugs.
1382
1383 Fri Oct 11 16:42:22 1991  Per Bothner  (bothner at cygnus.com)
1384
1385         * news.sc: Add alignment for data segment.
1386         * ldtemplate: Add (yet another) script to get for -n or -N
1387         options.  (These need different alignment than ZMAGIC files.)
1388         * Makefile.in:  Add stuff for new foo.xn scripts.
1389         These are generated by replacing "ALIGN(0x...00)" by ".".
1390
1391 Fri Oct 11 15:43:04 1991  Roland H. Pesch  (pesch at cygnus.com)
1392
1393         * Makefile.in: new targets ld.ms, ld-index.ms
1394         ld.texinfo: remove tabs, other cleanups for texi2roff
1395
1396 Fri Oct 11 13:51:54 1991  Per Bothner  (bothner at cygnus.com)
1397
1398         * ldmain.c (main): Make config.magic_demand_paged be true
1399         by default.  Don't the WP_TEXT and D_PAGED flags of
1400         output_bfd here; it's too late, so set it when output_bfd
1401         is created (in ldlang.c).  Also fix setting of EXEC_P flag
1402         * ldlang.c (ldlang_open_output):  Set output_bfd->flags here.
1403         * ldlang.c: Remove some duplicate extern declarations.
1404         * ldgram.y: Fixes to -N and -n options.
1405         * Makefile.in:  Recognize upper case letters in sed script
1406         to remove assignments from script files.
1407         * ldtemplate:  Don't assukme that -N or -n options
1408         imply use of -r script.
1409         * mkscript.c:  Tweaking to correctly handle \n and \\ in input.
1410
1411 Fri Oct 11 10:29:27 1991  Steve Chamberlain  (steve at cygnus.com)
1412
1413         * ldtemplate: include bfd.h before sysdep.h.
1414
1415 Fri Oct 11 04:24:45 1991  John Gilmore  (gnu at cygnus.com)
1416
1417         Restructure configuration scheme for bfd, binutils, ld.
1418
1419         * include/sys/h-*.h:  Move to bfd/hosts/h-*.h.
1420         * configure.in:  Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
1421         Change some config names to match other dirs.
1422         * *.c:  Include bfd.h before sysdep.h, so ansidecl and PROTO()
1423         get defined first.
1424         * config/:  Rename some config files to match up h-*.h names.
1425         Remove all the HOST_SYS definitions from the config files.
1426
1427 Tue Oct  8 16:00:57 1991  Per Bothner  (bothner at cygnus.com)
1428
1429         * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
1430         * ldtemplate: Remove ldfile_add_library_path calls;
1431         just use the SEARCH_DIR commands in the script files.
1432         * Makefile.in: Add LIB_PATH macro, which if set is used to replace
1433         the SEARCH_DIR commands in the scripts (using ugly sed magic).
1434         This is primarily intended for cross-linking, where you would
1435         place libaries in a different place than native libraries.
1436         Also, emulations made from ldtemplate now use $(srcdir).
1437         * ldglda29k.sc:  Change SEARCH_DIR commands to a conventional
1438         form; people can use the Makefile's LIB_PATH to override.
1439
1440 Tue Oct  8 14:51:21 1991  Roland H. Pesch  (pesch at cygnus.com)
1441
1442         * Makefile.in: fix target ld.dvi, add target ld.info
1443         ld.texinfo: make info filename ld.info
1444
1445 Fri Oct  4 21:51:58 1991  John Gilmore  (gnu at cygnus.com)
1446
1447         * Makefile.in:  Avoid using $< in non-suffix rules (breaks on Sun
1448         Make). 
1449         * ldfile.c, ldlang.c, ldmain.c, ldwrite.c:  Cope with renames of a
1450         few BFD types & enums.
1451