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