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