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