* scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
[deliverable/binutils-gdb.git] / ld / ChangeLog
1 2000-12-06 Mark Elbrecht <snowball3@bigfoot.com>
2
3 * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
4 Set DWARF2 sections to a VMA of zero.
5
6 2000-12-01 Joel Sherrill <joel@OARcorp.com>
7
8 * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
9 New targets.
10 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
11 (sparc*-*-rtems*): Switched from a.out to ELF.
12
13 2000-11-30 Jan Hubicka <jh@suse.cz>
14
15 * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
16 (eelf_x86_64.c): New.
17 * Makefile.in: Regenerate.
18 * configure.tgt: Add support for x86_64-*-linux-gnu*.
19 * emulparams/elf_x86_64.sh: New.
20
21 2000-11-30 Hans-Peter Nilsson <hp@axis.com>
22
23 * emulparams/crislinux.sh (ENTRY): Change back to _start.
24 (TEXT_START_SYMBOLS): Remove conditional setting of __start.
25
26 * scripttempl/crisaout.sc: Change all RELOCATING not related to
27 merging non-a.out sections into CONSTRUCTING.
28
29 2000-11-28 Nick Clifton <nickc@redhat.com>
30
31 * ld.1 (COPYING): Mention that the GNU Free Documentation
32 License is present in the sources, but not the output, and
33 also available from the GNU website.
34 (GNU Free Documentation License): Comment out this section.
35
36 2000-11-28 David O'Brien <obrien@dragon.nuxi.com>
37
38 * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
39 does not use them.
40
41 2000-11-25 David O'Brien <obrien@FreeBSD.org>
42
43 * ld.1: Remove old date so it does not give the impression the manpage
44 is way out of date.
45
46 2000-11-24 Nick Clifton <nickc@redhat.com>
47
48 * configure.tgt (xscale-coff): Add target.
49 (xscale-elf): Add target.
50
51 2000-11-24 Fred Fish <fnf@be.com>
52
53 * ldmain.c (main): Remove redundant init of config.make_executable
54 to true.
55
56 2000-11-15 Richard Henderson <rth@redhat.com>
57
58 * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
59
60 2000-11-14 Kazu Hirata <kazu@hxi.com>
61
62 * scripttempl/h8300.sc: Fix formatting.
63 * scripttempl/h8300h.sc: Likewise.
64 * scripttempl/h8300s.sc: Likewise.
65
66 Tue Nov 14 00:59:19 2000 Denis Chertykov <denisc@overta.ru>
67
68 * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
69
70 2000-11-09 Philip Blundell <pb@futuretv.com>
71
72 * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
73 around orphan sections whose names can be represented in C.
74
75 2000-11-07 Jim Wilson <wilson@redhat.com>
76
77 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
78 hold_sdata. If SEC_SMALL_DATA set, set place to hold_sdata.
79
80 2000-11-06 Nick Clifton <nickc@redhat.com>
81
82 * ld.texinfo: Add GNU Free Documentation License.
83 * ldint.texinfo: Add GNU Free Documentation License.
84 * ld.1: Add GNU Free Documentation License.
85
86 2000-11-05 Alan Modra <alan@linuxcare.com.au>
87
88 * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
89 yy_is_interactive, yy_at_bol, and yy_fill_buffer.
90
91 * Makefile.am (DISTCLEANFILES): Add stringify.sed.
92 Move 2000-11-02 Makefile.in changes to this file.
93 * Makefile.in: Regenerate.
94
95 2000-11-03 Nick Clifton <nickc@redhat.com>
96
97 * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
98 constructors and destructors.
99 * scripttempl/h8300h.sc: Ditto.
100 * scripttempl/h8300s.sc: Ditto.
101 * scripttempl/h8500.sc: Ditto.
102 * scripttempl/h8500b.sc: Ditto.
103 * scripttempl/h8500c.sc: Ditto.
104 * scripttempl/h8500m.sc: Ditto.
105 * scripttempl/h8500s.sc: Ditto.
106 * scripttempl/v850.sc: Ditto.
107 * scripttempl/w65.sc: Ditto.
108 * scripttempl/z8000.sc: Ditto.
109
110 2000-11-02 Per Lundberg <plundis@chaosdev.org>
111
112 * Makefile.in (e_i386_chaos.c): New rule.
113 (ALL_EMULATIONS): Added e_i386_chaos.o.
114 * emulparams/elf_i386_chaos.sh: New file.
115 * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
116
117 2000-10-20 Jakub Jelinek <jakub@redhat.com>
118
119 * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
120 NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
121 Fix sed invocation, so that it coped with '/' in Solaris 64bit
122 library path suffix.
123 Based on patch by Andrew Macleod <amacleod@cygnus.com>.
124
125 2000-10-18 Hans-Peter Nilsson <hp@axis.com>
126
127 * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
128 for consecutive sections.
129
130 2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
131
132 * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
133 options.
134 * ld.texinfo: Added notes about this new option.
135
136 2000-10-16 Nick Clifton <nickc@redhat.com>
137
138 * emultempl/pe.em (_after_open): Add tests of return values from
139 bfd functions. Emit appropriate error messages if necessary.
140
141 2000-10-13 Nick Clifton <nickc@redhat.com>
142
143 * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
144 local variables - they are not used, but leave in the call to
145 bfd_canonicalize_symtab.
146 (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
147 pe_dll_search_prefix.
148
149 2000-10-12 Charles Wilson <cwilson@ece.gatech.edu>
150
151 * emultempl/pe.em (pe_dll_search_prefix): New variable,
152 (longopts): New --dll-search-prefix option.
153 (gld_${EMULATION_NAME}_list_options): Document.
154 (gld_${EMULATION_NAME}_parse_args): Handle.
155 (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
156 dynamically, search for a dll named '<prefix><basename>.dll'
157 in preference to 'lib<basename>.dll' if --dll-search-prefix
158 is specified.
159
160 2000-10-12 Alan Modra <alan@linuxcare.com.au>
161
162 * ldlang.c (section_already_linked): Set kept_section instead of
163 sec->comdat->sec.
164
165 2000-10-10 Kazu Hirata <kazu@hxi.com>
166
167 * deffile.h: Fix formatting.
168 * lexsup.c: Likewise.
169 * mri.c: Likewise.
170
171 2000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
172
173 * pe-dll.c (make_one): Do not generate code thunk for DATA
174 exports.
175 (process_def_file): deduce DATA flag for auto-export sumbols.
176
177 2000-10-09 Kazu Hirata <kazu@hxi.com>
178
179 * ld.h: Fix formatting.
180 * ldcref.c: Likewise.
181 * ldctor.h: Likewise.
182 * ldemul.c: Likewise.
183 * ldemul.h: Likewise.
184 * ldexp.c: Likewise.
185 * ldexp.h: Likewise.
186 * ldfile.c: Likewise.
187 * ldfile.h: Likewise.
188 * ldlang.c: Likewise.
189 * ldlang.h: Likewise.
190 * ldmain.c: Likewise.
191 * pe-dll.c: Likewise.
192
193 * pe-dll.c: Revert some formatting fixes.
194
195 2000-10-08 Kazu Hirata <kazu@hxi.com>
196
197 * pe-dll.c: Fix formatting.
198
199 2000-10-05 Kazu Hirata <kazu@hxi.com>
200
201 * ldlang.c: Fix formatting.
202
203 2000-10-03 DJ Delorie <dj@redhat.com>
204
205 * pe-dll.c (fill_edata): initialize entire block
206 (make_one): fill in correct section.
207
208 2000-10-03 Kazu Hirata <kazu@hxi.com>
209
210 * ldexp.c: Fix formatting.
211
212 2000-10-02 DJ Delorie <dj@redhat.com>
213
214 * emultempl/pe.em (gld_*_after_open): detect case where there two
215 import libraries for same dll; rename one to ensure proper link
216 order.
217
218 * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
219 typo
220 (generate_edata): fix typo
221
222 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
223
224 * scripttempl/crisaout.sc (ENTRY): Now __start.
225 (.text): Add default setting for __start.
226 Remove CONSTRUCTORS handling.
227 (/DISCARD/): Add .gnu.warning.*.
228 * emulparams/crislinux.sh (ENTRY): Now __start.
229 (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
230 * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
231 (ENTRY): Now __start.
232 (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
233 (EXECUTABLE_SYMBOLS): Add default setting for __start.
234
235 2000-09-29 Kazu Hirata <kazu@hxi.com>
236
237 * deffile.h: Fix formatting.
238 * ld.h: Likewise.
239 * ldcref.c: Likewise.
240 * ldctor.c: Likewise.
241 * ldctor.h: Likewise.
242 * ldemul.c: Likewise.
243 * ldemul.h: Likewise.
244 * ldexp.c: Likewise.
245 * ldexp.h: Likewise.
246 * ldfile.c: Likewise.
247 * ldfile.h: Likewise.
248 * ldlang.c: Likewise.
249 * ldlang.h: Likewise.
250 * lexsup.c: Likewise.
251 * mri.c: Likewise.
252 * pe-dll.c: Likewise.
253
254 2000-09-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
255
256 * pe-dll.c (process_def_file): Uninitialized data wasn't
257 exported with --export-all-symbols switch.
258
259 2000-09-28 DJ Delorie <dj@redhat.com>
260
261 * pe-dll.c (fill_edata): rearrange the data so that ordinals and
262 noname work properly.
263
264 2000-09-28 Alan Modra <alan@linuxcare.com.au>
265
266 * ld.texinfo (HPPA ELF32): New section.
267
268 * emultempl/hppaelf.em (group_size): New.
269 (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
270 (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
271 (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size. Duplicate
272 options to prevent abbreviations matching.
273 (PARSE_AND_LIST_OPTIONS): Describe the above. Reformat.
274 (PARSE_AND_LIST_ARGS_CASES): Handle it.
275
276 2000-09-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
277
278 * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
279 on the m68*-*-elf target. Make it support COFF input objects.
280
281 2000-09-21 Kazu Hirata <kazu@hxi.com>
282
283 * ldmain.c: Fix formatting.
284 * ldmisc.c: Likewise.
285 * ldver.c: Likewise.
286 * ldwrite.c: Likewise.
287
288 2000-09-21 Alan Modra <alan@linuxcare.com.au>
289
290 * ldwrite.c (clone_section): Silence gcc warnings.
291
292 2000-09-20 Alan Modra <alan@linuxcare.com.au>
293
294 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
295 out of memory failure.
296
297 * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
298 (clone_section): Handle out of memory failures. Rename var to
299 avoid c++ reserved word.
300
301 2000-09-18 Alan Modra <alan@linuxcare.com.au>
302
303 * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
304 stub_name param to stub_sec_name.
305 (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
306
307 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
308
309 * emultempl/m68kelf.em: New file.
310 * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
311 * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
312 * Makefile.in: Regenerate.
313
314 2000-09-15 Alan Modra <alan@linuxcare.com.au>
315
316 * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
317 only as needed.
318
319 2000-09-13 Nick Clifton <nickc@redhat.com>
320
321 * ldmain.c (multiple_definition): Disable relaxation if
322 multiple symbol definitions are encountered - otherwise the
323 linker could abort with an assertion failure.
324
325 2000-09-10 Nick Clifton <nickc@redhat.com>
326
327 * mri.c: Fix formatting.
328
329 2000-09-07 H.J. Lu <hjl@gnu.org>
330
331 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
332 * configure: Rebuild.
333
334 2000-09-07 H.J. Lu <hjl@gnu.org>
335
336 * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
337 * Makefile.in: Rebuild.
338
339 2000-09-07 Alan Modra <alan@linuxcare.com.au>
340
341 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
342 broken list handling. Create __start_SECNAME and __stop_SECNAME
343 when no place-holder. Add some comments. Test both SEC_CODE and
344 SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
345 Handle case where no output section statement created.
346
347 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
348
349 * configure.tgt (sh-*-linux*): Added.
350 * Makefile.am: Added eshelf_linux and eshlelf_linux.
351 * Makefile.in: Rebuilt.
352 * emulparams/shelf_linux.sh: New file.
353 * emulparams/shlelf_linux.sh: New file.
354
355 2000-09-06 Alan Modra <alan@linuxcare.com.au>
356
357 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
358 try shuffling sections when the orphan happens to be the place
359 holder. Keep count of unique section names generated so we speed
360 the search for a new name.
361
362 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
363
364 * configure: Rebuilt with new libtool.m4.
365
366 2000-09-05 Nick Clifton <nickc@redhat.com>
367
368 * Makefile.in: Regenerate.
369 * aclocal.m4: Regenerate.
370 * configure: Regenerate.
371 * config.in: Regenerate.
372 * po/ld.pot: Regenerate.
373
374 * ldint.texinfo: Remove CVS revision marker - it foils local
375 comparisons.
376
377 * emultempl/ticoff.em: Remove extraneous comma.
378
379 2000-09-05 Alan Modra <alan@linuxcare.com.au>
380
381 * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
382 to stub section flags.
383 (hppa_for_each_input_file_wrapper): New.
384 (hppa_lang_for_each_input_file): New.
385 (lang_for_each_input_file): Define to call above.
386 (multi_subspace): New.
387 (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
388 (PARSE_AND_LIST_PROLOGUE): Define.
389 (PARSE_AND_LIST_LONGOPTS): Define.
390 (PARSE_AND_LIST_OPTIONS): Define.
391 (PARSE_AND_LIST_ARGS_CASES): Define.
392 (hppaelf_finish): Call elf32_hppa_set_gp.
393 (hppaelf_set_output_arch): Remove.
394 (LDEMUL_SET_OUTPUT_ARCH): Remove.
395
396 * emulparams/hppalinux.sh (ELFSIZE): Define.
397 (MACHINE): Define.
398 (OTHER_READONLY_SECTIONS): Define.
399 (DATA_PLT): Define.
400 (GENERATE_SHLIB_SCRIPT): Define.
401
402 * ldlang.c: Add missing prototypes, and tidy others. Change CONST
403 to const throughout. Change `void *' to `PTR' throughout.
404 (lang_memory_default): Function is local to file, add `static'.
405
406 * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
407 (ehppalinux.c): Likewise.
408 (earmelf.c): Likewise.
409 (earmelf_linux.c): Likewise.
410 (earmelf_linux26.c): Likewise.
411 * Makefile.in: Regenerate.
412
413 * ld.h (ld_config_type): Add unique_orphan_sections.
414 * lexsup.c (OPTION_UNIQUE): Define.
415 (ld_options): Add "--unique".
416 (parse_args): Handle it.
417 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
418 search for an existing output section if unique_orphan_sections is
419 set. Make use of bfd_get_unique_section_name rather than
420 duplicating code here.
421 * ld.texinfo: Describe --unique.
422
423 * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
424 optional arg to split-by-file.
425 (parse_args): Handle them.
426 * ld.texinfo: Update description of these options.
427 * ldwrite.c (clone_section): Pass in the section name. Replace
428 local code with bfd_get_unique_section_name.
429 (split_sections): Tidy code and comments. Use a list traversal
430 more appropriate to the list construction. Handle cooked section
431 sizes. Split when split_by_reloc reached rather than exceeded.
432 Track section size and split when split_by_file reached. Fix
433 link_order_tail (even though it's not used).
434 (ldwrite): Modify condition for calling split_sections to suit
435 changed split_by_reloc and split_by_file.
436 * ldmain.c (main): Init config.split_by_reloc and
437 config.split_by_file to -1.
438 * ld.h (ld_config_type): Change split_by_reloc to unsigned.
439 Change split_by_file to bfd_size_type.
440
441 2000-09-02 Nick Clifton <nickc@redhat.com>
442
443 * configure.in: Increase version number to 2.10.91.
444 * NEWS: Mention new ability to support removal of duplicate DWARF2
445 debug information.
446 * configure: Regenerate.
447 * aclocal.m4: Regenerate.
448 * config.in: Regenerate.
449
450 2000-09-02 Daniel Berlin <dberlin@redhat.com>
451
452 * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
453 sections.
454 * scripttempl/elf32var.sc: Ditto.
455 * scripttempl/elfd10v.sc: Ditto.
456 * scripttempl/elfd30v.sc: Ditto.
457 * scripttempl/elfi370.sc: Ditto.
458 * scripttempl/elfm68hc11.sc: Ditto.
459 * scripttempl/elfm68hc12.sc: Ditto.
460 * scripttempl/elfi386beos.sc: Ditto.
461 * scripttempl/v850.sc: Ditto.
462
463 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
464
465 * acinclude.m4: Include libtool and gettext macros from the
466 top level.
467 * aclocal.m4, configure: Rebuilt.
468
469 2000-08-25 Nick Clifton <nickc@redhat.com>
470
471 * ldlang.c (open_output): When choosing the target for a
472 particular endianness, do nothing if the target is not
473 supported.
474
475 2000-08-25 H.J. Lu <hjl@gnu.org>
476
477 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
478 check -rpath nor LD_RUN_PATH for cross link.
479 * ld.texinfo: Document the change.
480
481 2000-08-24 Hans-Peter Nilsson <hp@axis.com>
482
483 * NEWS: Mention support for CRIS.
484
485 2000-08-23 H.J. Lu <hjl@gnu.org>
486
487 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
488 the current runpath list from bfd_elf_get_runpath_list ()
489 before search.
490
491 2000-08-22 H.J. Lu <hjl@gnu.org>
492
493 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
494 the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
495 LD_LIBRARY_PATH for native linker. Display the needed DSO if
496 trace_file_tries is non-zero.
497 (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
498 if trace_file_tries is non-zero.
499
500 * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
501 * NEWS: Mention it.
502
503 2000-08-14 Jason Eckhardt <jle@cygnus.com>
504
505 * NEWS: Mention i860 support.
506
507 2000-08-14 Andreas Schwab <schwab@suse.de>
508
509 * scripttempl/elf.sc: Fix last change to use correct comment
510 syntax.
511
512 2000-08-10 Geoff Keating <geoffk@cygnus.com>
513
514 * scripttempl/elf.sc: Add a comment giving the correspondence
515 between sections, per-datum sections, and linkonce sections. Make
516 the comment true even for .bss, .sdata, .sdata2, .sbss, and
517 .sbss2.
518
519 2000-08-10 Jason Eckhardt <jle@cygnus.com>
520
521 * emulparams/elf32_i860.sh: New file.
522 * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
523 * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
524 (eelf32_i860.c): New rule.
525 * Makefile.in: Regenerate.
526
527 2000-08-10 Nick Clifton <nickc@cygnus.com>
528
529 * emulparams/mipspe.sh (ENTRY): Add definition.
530
531 2000-08-08 Peter Jeremy <peter.jeremy@alcatel.com.au>
532
533 * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
534 in error message.
535
536 2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
537
538 * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
539 the final size of .bss section.
540 * scripttempl/elfm68hc12.sc: Likewise.
541
542 2000-08-04 Alan Modra <alan@linuxcare.com.au>
543
544 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
545 gld${EMULATION_NAME}_parse_args for consistency. Combine
546 lastoptind and prevoptind vars, and keep track of last optind.
547 (gld_${EMULATION_NAME}_list_options): Rename to
548 gld${EMULATION_NAME}_list_options.
549
550 2000-08-03 Rodney Brown <RodneyBrown@pmsc.com>
551
552 * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
553 (i586-sco-sysv5uw7.1.0).
554
555 2000-07-27 H.J. Lu <hjl@gnu.org>
556
557 * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
558 (PARSE_AND_LIST_PROLOGUE): New.
559 (PARSE_AND_LIST_LONGOPTS): Likewise.
560 (PARSE_AND_LIST_OPTIONS): Likewise.
561 (PARSE_AND_LIST_ARGS_CASES): Likewise.
562 (PARSE_AND_LIST_EPILOGUE): Likewise.
563
564 2000-07-28 Alan Modra <alan@linuxcare.com.au>
565
566 * emultempl/armelf.em: Elide functions common to elf32.em,
567 ie. most of the file.
568 (arm_elf_after_open): New. Do arm specific things then call
569 gld${EMULATION_NAME}_after_open.
570 (arm_elf_before_allocation): New. Call
571 gld${EMULATION_NAME}_before_allocation then do arm specifics.
572 (PARSE_AND_LIST_PROLOGUE): Define.
573 (PARSE_AND_LIST_SHORTOPTS): Define.
574 (PARSE_AND_LIST_LONGOPTS): Define.
575 (PARSE_AND_LIST_OPTIONS): Define.
576 (PARSE_AND_LIST_ARGS_CASES): Define.
577 (LDEMUL_AFTER_OPEN): Define.
578 (LDEMUL_BEFORE_ALLOCATION): Define.
579 (LDEMUL_BEFORE_PARSE): Define.
580 (LDEMUL_FINISH): Define.
581
582 * emultempl/hppaelf.em: Similarly zap most of this file.
583 (hppaelf_add_stub_section): Prototype.
584 (hppaelf_layaout_sections_again): Prototype.
585 (hook_in_stub): Prototype.
586 (LDEMUL_SET_OUTPUT_ARCH): Define.
587 (LDEMUL_FINISH): Define.
588 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
589
590 * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
591 (EXTRA_EM_FILE): New.
592 * emulparams/armelf_linux.sh: Likewise.
593 * emulparams/armelf_linux26.sh: Likewise.
594 * emulparams/hppalinux.sh: Likewise.
595 * emulparams/hppaelf.sh: Likewise.
596 (NOP): Define.
597
598 * emultempl/elf32.em: Fix formatting.
599 (EXTRA_EM_FILE): Source it.
600 (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
601 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
602 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
603 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
604 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
605 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
606 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
607 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
608 LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars. Add code to
609 allow functions in this file to be overridden.
610 (PARSE_AND_LIST_SHORTOPTS): Handle it.
611
612 * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
613
614 * emultempl/elf32.em: Reorganize file.
615
616 2000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru>
617
618 * emulparams/elf64alpha.sh: Implement "-taso" emulation
619 specific option to fit 64-bit executable in the lower
620 31-bit address range. This is done by changing start
621 address of .interp (the very first section of executable)
622 and then setting EF_ALPHA_32BIT elf header flag.
623
624 2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
625
626 * emultempl/m68kcoff.em: New file.
627 * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
628 * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
629 generic.em.
630 * Makefile.in: Regenerate.
631
632 2000-07-20 H.J. Lu <hjl@gnu.org>
633
634 * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
635 and "disable-new-dtags" to stop getopt from treating -d/-e as
636 abbreviations for these options.
637
638 2000-07-20 H.J. Lu <hjl@gnu.org>
639
640 * ld.texinfo: Add documentation for --disable-new-dtags and
641 --enable-new-dtags.
642
643 * ldmain.c (main): Initialize link_info.new_dtags to false.
644
645 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
646 --disable-new-dtags and --enable-new-dtags.
647 (gld_${EMULATION_NAME}_list_options): Likewise.
648
649 2000-07-05 Kenneth Block <krblock@computer.org>
650
651 * ld/lexsup.c: Add optional style to demangle switch
652 * ld/ld.texinfo: Document optional style to demangle switch.
653
654 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
655
656 * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
657 ecrislinux.o.
658 (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
659 Regenerate dependencies.
660 * Makefile.in: Rebuild.
661 * configure.tgt (cris-*-*): New target.
662 * emulparams/crisaout.sh, emulparams/criself.sh,
663 emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
664 * po/POTFILES.in, po/ld.pot: Regenerate.
665
666 2000-07-20 H.J. Lu <hjl@gnu.org>
667
668 * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
669 Print out ignored -z options.
670
671 2000-07-19 H.J. Lu <hjl@gnu.org>
672
673 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
674 (PARSE_AND_LIST_PROLOGUE): New.
675 (PARSE_AND_LIST_LONGOPTS): Likewise.
676 (PARSE_AND_LIST_OPTIONS): Likewise.
677 (PARSE_AND_LIST_ARGS_CASES): Likewise.
678
679 * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
680
681 * lexsup.c (ld_options): Comment out 'z'.
682 (parse_args): Likewise.
683
684 * emultempl/elf32.em: Include "elf/common.h".
685 (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
686 options.
687 (gld_${EMULATION_NAME}_list_options): Likewise.
688
689 * ld.texinfo: Add documentation for the recognized -z options.
690
691 2000-07-19 H.J. Lu <hjl@gnu.org>
692
693 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
694 bfd_elf_set_dt_needed_soname ().
695
696 2000-07-18 DJ Delorie <dj@cygnus.com>
697
698 * pe-dll.c (pe_dll_id_target): check object target name also
699
700 2000-07-18 Hans-Peter Nilsson <hp@axis.com>
701
702 * scripttempl/elf.sc (.init): Only do ${INIT_START} and
703 ${INIT_END} if relocating.
704 (.fini): Likewise ${FINI_START} and ${FINI_END}.
705
706 2000-07-16 Charles Wilson <cwilson@ece.gatech.edu>
707
708 * src/ld/emultempl/pe.em (gld_*_open_dynamic_archive): New search
709 order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
710 foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
711 errors introduced by the old dynamic lib search order.
712
713 2000-07-17 DJ Delorie <dj@cygnus.com>
714
715 * pe-dll.c (process_def_file): auto-export data items also
716 (pe_process_import_defs): also see if _imp_ form needed
717
718 2000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
719
720 * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
721 for dll import libraries
722
723 2000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
724
725 * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
726 gcc 2.95.2 and later.
727
728 2000-07-11 Kazu Hirata <kazu@hxi.com>
729
730 * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
731 message.
732
733 2000-07-10 Alan Modra <alan@linuxcare.com.au>
734
735 * ldemul.h (struct lang_input_statement_struct): Remove forward
736 declaration.
737 (struct search_dirs): Likewise.
738 * ldfile.h (struct lang_input_statement_struct): Likewise.
739 Protect file from multiple inclusion.
740 * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
741 declaration from macro to file scope.
742
743 * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
744 * ldgram.y: Likewise here.
745 * ldlang.c: And here.
746 * ldmain.c: And here.
747 * mpw-elfmips.c: And here.
748 * mpw-eppcmac.c: And here.
749 * emultempl/aix.em: And here.
750 * emultempl/armcoff.em: And here.
751 * emultempl/armelf.em: And here.
752 * emultempl/armelf_oabi.em: And here.
753 * emultempl/beos.em: And here.
754 * emultempl/elf32.em: And here.
755 * emultempl/hppaelf.em: And here.
756 * emultempl/linux.em: And here.
757 * emultempl/lnk960.em: And here.
758 * emultempl/pe.em: And here.
759 * emultempl/sunos.em: And here.
760 * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
761 * mpw-idtmips.c: Ditto.
762 * emultempl/generic.em: Ditto.
763 * emultempl/gld960.em: Ditto.
764 * emultempl/gld960c.em: Ditto.
765 * emultempl/mipsecoff.em: Ditto.
766 * emultempl/ticoff.em: Ditto.
767 * emultempl/vanilla.em: Ditto.
768
769 * pe-dll.c: Include ldfile.h
770 * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
771
772 * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
773 arguments to bfd_elf32_size_dynamic_sections call.
774 (gldelf32ebmip_place_orphan): Add missing arguments to
775 lang_leave_output_section_statement call.
776
777 2000-07-10 H.J. Lu <hjl@gnu.org>
778
779 * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
780 DLL_SUPPORT.
781 (strhash): Likewise.
782 (compute_dll_image_base): Likewise.
783 (pe_undef_found_sym): Likewise.
784 (pe_undef_cdecl_match): Likewise.
785 (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
786 argument "arch" with ATTRIBUTE_UNUSED.
787
788 2000-07-10 Alan Modra <alan@linuxcare.com.au>
789
790 * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
791
792 From Ryan Bradetich <rbradetich@uswest.net>
793 * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
794
795 2000-07-09 Alan Modra <alan@linuxcare.com.au>
796
797 Changes to create multiple linker stubs, positioned immediately
798 before the section where they are required.
799 * emultempl/hppaelf.em: Include elf32-hppa.h.
800 (stub_sec, file_chain): Delete.
801 (hppaelf_create_output_section_statements): Don't make a stub
802 section here.
803 (hook_stub_info): New struct.
804 (hook_in_stub): New function.
805 (hppaelf_add_stub_section): New function.
806 (hppaelf_finish): Do nothing for relocateable links. Modify the
807 call to elf32_hppa_size_stubs. Move code for updating section
808 layout from here...
809 (hppaelf_layaout_sections_again): ..to here, a new function.
810
811 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
812 broken list handling. Pass in a pointer to the list.
813 (hppaelf_finish): Update call to hppaelf_delete_padding_statements
814 for above changes.
815 (hppaelf_before_parse): Prototype.
816 (hppaelf_set_output_arch): Prototype.
817 (hppaelf_create_output_section_statements): Prototype.
818 (hppaelf_delete_padding_statements): Prototype.
819 (hppaelf_finish): Prototype.
820
821 Merge from elf32.em
822 * emultempl/hppaelf.em: Include ctype.h.
823 (struct orphan_save): New.
824 (gld${EMULATION_NAME}_place_orphan): New.
825 (output_rel_find): New.
826 (hppaelf_get_script): Update from elf32.em.
827 (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
828 Change emulation_name field to "${EMULATION_NAME}". Add
829 gld${EMULATION_NAME}_place_orphan.
830
831 * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o, add
832 ehppalinux.o, sort it. Regenerate dependencies.
833 (ehppalinux.c): Depend on hppaelf.em
834 * Makefile.in: Regenerate.
835
836 * configure.tgt: targ_emul=hppalinux for hppa*linux
837
838 * emulparams/hppalinux.sh: New.
839 * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
840
841 2000-07-08 Alan Modra <alan@linuxcare.com.au>
842
843 * lexsup.c (parse_args): Copy section name.
844
845 2000-07-07 Charles Wilson <cwilson@ece.gatech.edu>
846
847 * emultempl/pe.em: institute the following search order for
848 dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
849 libs), libfoo.dll, foo.dll (link direct to dll). Fall back to
850 static lib (libfoo.a) if none of the above are found.
851
852 2000-07-07 Mumit Khan <khan@xraylith.wisc.edu>
853
854 * emultempl/pe.em (pe_enable_auto_image_base): New variable.
855 (longopts): New --{enable,disable}-auto-image-base options.
856 (gld_${EMULATION_NAME}_list_options): Document.
857 (gld_${EMULATION_NAME}_parse): Handle.
858 (strhash): New static function.
859 (compute_dll_image_base): New static function.
860 (gld_${EMULATION_NAME}_set_symbols): Use.
861
862 2000-07-05 DJ Delorie <dj@redhat.com>
863
864 * MAINTAINERS: new
865
866 2000-07-01 Koundinya K <kk@ddeorg.soft.net>
867
868 * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
869 * emulparams/elf32btsmip.sh: New file.
870 * Makefile.am: Add traditional mips target.
871 * Makefile.in: Rebuild.
872
873 2000-07-01 H.J. Lu <hjl@gnu.org>
874
875 * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
876 automake to use YLWRAP.
877 * Makefile.in: Rebuild.
878
879 2000-07-01 Alan Modra <alan@linuxcare.com.au>
880
881 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
882 (CLEANFILES): Add DEPA.
883 * Makefile.in: Regenerate.
884
885 2000-06-30 Timothy Wall <twall@ppc>
886
887 * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
888 the page in the upper octet of the address.
889
890 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
891
892 * emulparams/avrmega161.sh (ARCH): Change to avr:5.
893
894 2000-06-24 Alan Modra <alan@linuxcare.com.au>
895
896 * NEWS: arm-elf does --gc-sections too.
897
898 2000-06-22 Alan Modra <alan@linuxcare.com.au>
899
900 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
901 find one.
902 * Makefile.in: Regenerate.
903
904 2000-06-21 H.J. Lu <hjl@gnu.org>
905
906 * Makefile.am: Rebuild dependency.
907 * Makefile.in: Rebuild.
908
909 2000-06-20 H.J. Lu <hjl@gnu.org>
910
911 * Makefile.am: Rebuild dependency.
912 * Makefile.in: Rebuild.
913
914 2000-06-20 Timothy Wall <twall@cygnus.com>
915
916 * scripttempl/tic54xcoff.sc: New.
917 * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
918 * gen-doc.texi: Add flag for TI COFF.
919 * ld.texinfo: Add documentation for TI COFF handling switches.
920 * emultempl/ticoff.em: New. TI COFF handling.
921 * configure.tgt: Add tic54x target.
922 * Makefile.am: Add tic54x target.
923 * Makefile.in: Ditto.
924
925 2000-06-20 Alan Modra <alan@linuxcare.com.au>
926
927 * ldmain.c (set_scripts_dir): Correct pointer comparison when
928 checking for backslashes.
929
930 2000-06-19 Alan Modra <alan@linuxcare.com.au>
931
932 * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
933
934 2000-06-18 Alan Modra <alan@linuxcare.com.au>
935
936 * NEWS: Update list of targets supporting --gc-sections.
937
938 * scripttempl/elf.sc: KEEP .eh_frame contents.
939 * scripttempl/elfd30v.sc: Same here.
940
941 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
942
943 * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
944 and m68hc11 (elf).
945 * Makefile.in: Rebuild.
946 * configure.tgt: Recognize m68hc12 and m68hc11.
947 * scripttempl/elfm68hc12.sc: New file.
948 * emulparams/m68hc12elfb: New emulation.
949 * emulparams/m68hc12elf: New emulation.
950 * emulparams/m68hc11elfb.sh: New file. User configurable emulation
951 (includes a memory.x script to define the ROM and RAM banks).
952 * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
953 New configuration files for support of Motorola 68hc11
954
955 2000-06-15 Alan Modra <alan@linuxcare.com.au>
956
957 * ldmain.c (main): Only change SEC_READONLY for final link.
958
959 2000-06-13 H.J. Lu <hjl@gnu.org>
960
961 * configure: Regenerate.
962
963 2000-06-08 David O'Brien <obrien@FreeBSD.org>
964
965 * configure.in (VERSION): Update to show this is the CVS mainline.
966
967 2000-06-07 Michael Sokolov <msokolov@ivan.Harhan.ORG>
968
969 * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
970 input objects to be ECOFF.
971 (check_sections): einfo takes %B, not %P, to print a BFD name.
972
973 2000-06-05 Michael Matz <matz@ifh.de>
974
975 * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
976 version scripts.
977
978 * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
979
980 2000-05-23 Marek Michalkiewicz <marekm@linux.org.pl>
981
982 * emulparams/avr1200.sh (STACK): Define as 0.
983 * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
984 * emulparams/avr4433.sh (STACK): Likewise.
985 * emulparams/avr44x4.sh (STACK): Likewise.
986 * emulparams/avr85xx.sh (STACK): Likewise.
987 * emulparams/avrmega103.sh (STACK): Likewise.
988 * emulparams/avrmega161.sh (STACK): Likewise.
989 * emulparams/avrmega603.sh (STACK): Likewise.
990 * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
991 (__stack): Define from ${STACK} for main().
992
993 2000-05-26 Alan Modra <alan@linuxcare.com.au>
994
995 * Makefile.am: Update dependencies with "make dep-am"
996 * Makefile.in: Regenerate.
997
998 2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
999
1000 * ldmain.c: Include filenames.h.
1001 (set_scripts_dir): Support backslashes in program name.
1002
1003 2000-05-22 Igor Shevlyakov <igor@windriver.com>
1004
1005 * ldmain.c (main): When deciding if ".text" section should be
1006 read-only, don't forget to reset SEC_READONLY because it
1007 could be already set.
1008
1009 2000-05-22 Thomas de Lellis <tdel@windriver.com>
1010
1011 * ld.1: Add documentation for new command line option:
1012 --section-start <sectionname>=<sectionorg>
1013 This is a generic version of -Ttext etc. which accepts
1014 any section name as a parameter instead of just text/data/
1015 bss.
1016 * ld.texinfo: More docs.
1017 * NEWS: More docs.
1018 * lexsup.c: (parse_args): Recognize new command line option.
1019 (ld_options): Add new option.
1020
1021 2000-05-18 H.J. Lu <hjl@gnu.org>
1022
1023 * lexsup.c (parse_args): `i' == `r', not `q'.
1024
1025 Thu May 18 10:47:57 2000 Jeffrey A Law (law@cygnus.com)
1026
1027 * configure.tgt (hppa*64*-*-*): Enable PA64 target.
1028
1029 2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
1030 Rick Gorton <gorton@scrugs.lkg.dec.com>
1031
1032 Add support for '-q' == '--emit-relocs' switch.
1033 * ldmain.c (main): Default to false.
1034 * lexsup.c (parse_args): Turn on emitrelocations flag if set.
1035 * NEWS: Describe the emitrelocations switch.
1036 * ld.texinfo: Describe the emitrelocations switch.
1037
1038 2000-05-16 Charles Wilson <cwilson@ece.gatech.edu>
1039
1040 * ld/emultempl/pe.em (_open_dynamic_archive): New function: Search
1041 the library path for "foo.dll" and "libfoo.dll" dynamic libraries
1042 before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
1043 link options.
1044
1045 2000-05-15 David O'Brien <obrien@FreeBSD.org>
1046
1047 * lexsup.c (parse_args): Update the year in the copyright notice.
1048
1049 2000-05-13 Alan Modra <alan@linuxcare.com.au>
1050
1051 * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
1052 Replace defines with those from intl/libgettext.h to quieten gcc
1053 warnings.
1054
1055 2000-05-10 H.J. Lu <hjl@gnu.org>
1056
1057 * ldlang.c (open_input_bfds): Don't load the same file within
1058 a group again if the whole archive has been loaded already.
1059
1060 2000-05-03 Alan Modra <alan@linuxcare.com.au>
1061
1062 From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
1063 * lexsup.c (set_section_start): Use bfd_scan_vma rather than
1064 strtoul.
1065
1066 Mon May 1 17:34:34 2000 Jim Wilson <wilson@cygnus.com>
1067
1068 * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
1069
1070 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
1071 host "ia64-*-linux-gnu*".
1072
1073 2000-04-29 Andreas Jaeger <aj@suse.de>
1074
1075 * ld.h: Correctly check GCC version.
1076
1077 Tue Apr 25 11:20:43 2000 Jeffrey A Law (law@cygnus.com)
1078
1079 * Makefile.am: Add PA64 support. Add missing dependencies for
1080 PA32 elf support.
1081 * Makefile.in: Rebuilt.
1082 * configure.tgt: Add PA64 support (currently disabled).
1083
1084 2000-04-25 Alan Modra <alan@linuxcare.com.au>
1085
1086 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
1087 (output_rel_find): New function.
1088 (hold_section, hold_use): Delete.
1089 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
1090 hold_interp): Make local to place_orphan.
1091 (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
1092 rather than place_section to find possible previous use of orphan.
1093 Similarly find the place-holder output sections. Use returned
1094 value from lang_enter_output_section_statement rather than calling
1095 lang_output_section_statement_lookup.
1096 * emultempl/armelf.em: Same here.
1097 * emultempl/pe.em: Similar to above, but no need for output_rel_find.
1098
1099 * ldlang.c (lang_enter_output_section_statement): Return output
1100 section statement.
1101 * ldlang.h (lang_enter_output_section_statement): Change
1102 declaration too.
1103
1104 * ldlang.h (lang_output_section_statement): Export it.
1105 * ldlang.c (lang_output_section_statement): Ditto.
1106
1107 2000-04-24 Nick Clifton <nickc@cygnus.com>
1108
1109 * ld.texinfo (Output Section Data): Add note that section data
1110 commands cannot appear outside of section directives.
1111
1112 2000-04-2 Matthew Green <mrg@cygnus.com>
1113
1114 * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
1115
1116 Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
1117 David Mosberger <davidm@hpl.hp.com>
1118
1119 * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
1120 (eelf64_ia64.c): New rule.
1121 * Makefile.in: Rebuild.
1122 * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
1123 * emulparams/elf64_ia64.sh: New file.
1124
1125 2000-04-21 Richard Henderson <rth@cygnus.com>
1126
1127 * scripttempl/elfd30v.sc: Place .gcc_except_table.
1128
1129 2000-04-19 Alan Modra <alan@linuxcare.com.au>
1130
1131 * dep-in.sed: Match space at start of file name, not at end.
1132
1133 2000-04-18 H.J. Lu <hjl@gnu.org>
1134
1135 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
1136 lang_leave_output_section_statement () after calling
1137 lang_enter_output_section_statement ().
1138 * emultempl/armelf.em: Likewise.
1139
1140 2000-04-18 Alan Modra <alan@linuxcare.com.au>
1141
1142 * emultempl/elf32.em (struct orphan_save): Add section field.
1143 (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
1144 better order, and place first orphan section as we did before the
1145 2000-04-12 patch. Ignore ~SEC_ALLOC sections when choosing place.
1146 Don't call make_bfd_section here, let wild_doit do the job for us.
1147 Don't build a statement list when we'll only throw it away.
1148 * emultempl/armelf.em: Ditto.
1149 * emultempl/pe.em: Similarly.
1150
1151 2000-04-14 Geoff Keating <geoffk@cygnus.com>
1152
1153 * scripttempl/elfppc.sc: Remove.
1154 * emulparams/elf32ppc.sh: Use elf.sc.
1155 * emulparams/elf32lppc.sh: Use elf.sc.
1156 * emulparams/elf32ppclinux.sh: Use elf.sc.
1157 * emulparams/elf32ppcsim.sh: New file.
1158 * emulparams/elf32lppcsim.sh: New file.
1159 * Makefile.am: Update dependencies. Add elf32ppcsim ad elf32lppcsim.
1160 (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
1161 * Makefile.in: Regenerate.
1162 * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
1163
1164 2000-04-14 Alan Modra <alan@linuxcare.com.au>
1165
1166 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
1167 ~SEC_ALLOC sections too. Init start address of debug sections.
1168 * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
1169 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
1170 Also set all relocateable section start addresses.
1171
1172 2000-04-13 Geoff Keating <geoffk@cygnus.com>
1173
1174 * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
1175 Add new BSS_PLT variable for when .plt need not be contained in
1176 the file. Move _etext so that it is also after .fini, and provide
1177 both etext and _etext with a leading underscore. Mark the start
1178 and end of .sbss.
1179
1180 2000-04-12 Alan Modra <alan@linuxcare.com.au>
1181
1182 * emultempl/elf32.em (struct orphan_save): New.
1183 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
1184 hold_interp): Make them struct orphan_save.
1185 (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
1186 (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
1187 the end of the relevant section list. Also add associated section
1188 statements to the end of any previous orphan statements.
1189 * emultempl/armelf.em: Similarly.
1190 * emultempl/pe.em: Similarly.
1191
1192 2000-04-11 Alan Modra <alan@linuxcare.com.au>
1193
1194 * ld.texinfo (Simple Example): Remove extraneous paragraph.
1195
1196 Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
1197
1198 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
1199 --enable-build-warnings option.
1200 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
1201 * Makefile.in, configure: Re-generate.
1202
1203 2000-04-04 Alan Modra <alan@linuxcare.com.au>
1204
1205 * po/ld.pot: Regenerate.
1206
1207 * lexsup.c (help): Restore translated part of bug string.
1208
1209 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
1210 (DEP): Quote when passing vars to sub-make. Add warning message
1211 to end.
1212 (DEP1): Rewrite for "gcc -MM".
1213 (CLEANFILES): Add DEP2.
1214 Update dependencies.
1215 * Makefile.in: Regenerate.
1216
1217 2000-04-03 Alan Modra <alan@linuxcare.com.au>
1218
1219 * ld.h: #include "bin-bugs.h"
1220 * lexsup.c (help): Use REPORT_BUGS_TO.
1221
1222 2000-03-27 Denis Chertykov <denisc@overta.ru>
1223
1224 * configure.tgt (avr-*-*): New target support.
1225 * Makefile.am: Likewise.
1226 * scripttempl/elf32avr.sc: New script file.
1227 * emulparams/avr1200.sh: New file.
1228 * emulparams/avr23xx.sh: New file.
1229 * emulparams/avr4433.sh New file.
1230 * emulparams/avr44x4.sh New file.
1231 * emulparams/avr85xx.sh New file.
1232 * emulparams/avrmega103.sh New file.
1233 * emulparams/avrmega161.sh New file.
1234 * emulparams/avrmega603.sh New file.
1235 * Makefile.in: Regenerate.
1236
1237 2000-03-09 Andreas Jaeger <aj@suse.de>
1238
1239 * Makefile.am (check-DEJAGNU): Also unset LANG.
1240 * Makefile.in: Rebuild.
1241
1242 2000-03-06 Ian Lance Taylor <ian@zembu.com>
1243
1244 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
1245 archive.
1246
1247 2000-03-02 H.J. Lu <hjl@gnu.org>
1248
1249 * emulparams/elf32mcore.sh: Include "getopt.h".
1250
1251 2000-03-01 Ian Lance Taylor <ian@zembu.com>
1252
1253 * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
1254
1255 2000-03-01 H.J. Lu <hjl@gnu.org>
1256
1257 * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
1258 * emulparams/shpe.sh: Likewise.
1259
1260 2000-03-01 Nick Clifton <nickc@cygnus.com>
1261
1262 * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
1263 to unused parameters.
1264
1265 * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
1266 functions only used by DLL code.
1267 (_place_orphan): Initialise 'dollar'.
1268
1269 2000-03-01 H.J. Lu <hjl@gnu.org>
1270
1271 * ldmain.c (undefined_symbol): Take one more arg, fatal, to
1272 indicate if the undefined symbol is a fatal error or not.
1273 Don't delete the output file if "fatal" is false.
1274
1275 2000-02-29 H.J. Lu <hjl@gnu.org>
1276
1277 * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
1278 Set LC_COLLATE and LC_ALL to null and export them. It is for
1279 sort which expects the C locale.
1280 Add $(LIBS) to all $(HOSTING_LIBS).
1281 * Makefile.in: Rebuild.
1282
1283 2000-02-29 Alan Modra <alan@spri.levels.unisa.edu.au>
1284
1285 * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
1286 beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
1287 linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
1288 (ld_emulation_xfer_struct): Add missing NULL initialiser for
1289 find_potential_libraries.
1290
1291 2000-02-28 Jim Blandy <jimb@redhat.com>
1292
1293 * ldgram.y (exclude_name_list): Don't require a comma to separate
1294 list entries; the lexer considers commas to be valid part of a
1295 filename, so in something like `foo, bar' the comma is considered
1296 part of the first filename, `foo,'.
1297 * ld.texinfo: Update section on EXCLUDE_FILE lists.
1298
1299 2000-02-27 Loren J. Rittle <ljrittle@acm.org>
1300
1301 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
1302 host "i[3456]86-*-freebsdelf*".
1303
1304 2000-02-27 Mark Elbrecht <snowball3@bigfoot.com>
1305
1306 * scripttempl/i386go32.sc: Move misplaced semicolons.
1307
1308 2000-02-25 Ian Lance Taylor <ian@zembu.com>
1309
1310 * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
1311 (ALL_64_EMULATIONS): Remove eelf64hppa.o.
1312 (eelf64hppa.c, ehppaelf.c): Remove targets.
1313 * Makefile.in: Rebuild.
1314
1315 2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
1316
1317 * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
1318 GNU/Linux/sparc, but keep the default as 32.
1319
1320 * configure.tgt: Enable elf64_sparc on Solaris7+/sparc. And make
1321 it default if sparcv9 or sparc64.
1322
1323 2000-02-24 Nick Clifton <nickc@cygnus.com>
1324
1325 * Makefile.am: Add rules to build emipspe.o and earmpe.o.
1326 * Makefile.in: Regenerate.
1327 * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
1328
1329 * ldemul.h (ld_emulation_xfer_struct): Add new field:
1330 find_potential_libraries.
1331 * ldemul.c (ldemul_find_potential_libraries): New function.
1332
1333 * ldfile.c (ldfile_open_file_search): Allow function to be
1334 exported.
1335 (ldfile_open_file): Call ldemul_find_potential_libraries.
1336 * ldfile.h: Add prototype for ldfile_open_file_search.
1337
1338 * pe-dll.c: Add support for ARM, MIPS and SH targets.
1339
1340 * emulparams/mipspe.sh: New file. Parameters for mips-pe target.
1341 * emulparams/shpe.sh: New file. Parameters for sh-pe target.
1342
1343 * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
1344 (gld_X_find_potential_libraries): New function. Search for
1345 libraries called "*.lib".
1346
1347 * scriptempl/pe.sc: Add .pdata section.
1348
1349 2000-02-23 Richard Henderson <rth@cygnus.com>
1350
1351 * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
1352 Add and use memory regions.
1353
1354 2000-02-23 Linas Vepstas (linas@linas.org)
1355
1356 * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
1357
1358 * Makefile.am: Add support for Linux/IBM 370.
1359 * configure.tgt: Likewise.
1360
1361 * Makefile.in: Regenerate.
1362
1363 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
1364
1365 * ldlang.c (print_input_section, print_data_statement,
1366 print_reloc_statement, print_padding_statement, insert_pad,
1367 size_input_section, lang_check_section_addresses,
1368 lang_size_sections, lang_do_assignments, lang_set_startof,
1369 lang_one_common): Change `opb' to unsigned.
1370 (lang_do_assignments): Also change `size' to unsigned.
1371
1372 2000-02-16 Richard Henderson <rth@cygnus.com>
1373
1374 * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
1375
1376 2000-02-16 Timothy Wall <twall@cygnus.com>
1377
1378 * mri.c (mri_draw_tree): Add default LMA region argument to call
1379 to lang_leave_output_section_statement.
1380 * ldlang.h: Update prototypes with LMA region arguments.
1381 * ldlang.c (lang_size_sections): Encapsulate region bounds
1382 checking in os_check_region call.
1383 (os_check_region): New function.
1384 (lang_output_section_statement_lookup): Initialize lma_region.
1385 (lang_leave_output_section_statement): Add LMA region argument.
1386 (lang_leave_overlay): Ditto.
1387 * ldgram.y: Handle LMA region syntax.
1388 * ld.texinfo (Output Section Description): Describe LMA region usage.
1389 * emultempl/armelf.em (gld$place_orphan): Add default value for
1390 lma region in call to lang_leave_output_section_statement.
1391 * emultempl/elf32.em (gld$place_orphan): Add default value for
1392 lma region in call to lang_leave_output_section_statement.
1393 * emultempl/pe.em (gld$place_orphan): Add default value for
1394 lma region in call to lang_leave_output_section_statement.
1395
1396
1397 2000-02-04 Timothy Wall <twall@redhat.com>
1398
1399 * ldlang.c (lang_check_section_addresses): Use bytes instead of
1400 octets when calculating section end addresses.
1401
1402 2000-02-04 Timothy Wall <twall@redhat.com>
1403
1404 * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
1405
1406 2000-02-03 Timothy Wall <twall@redhat.com>
1407
1408 * ld/ldexp.c (fold_name): Make SIZEOF operator return byte count, not
1409 octet count.
1410 * ld/ldlang.c (print_input_section, print_data_statement,
1411 print_reloc_statement, print_padding_statement): Print target
1412 address values and section sizes as bytes, not octets.
1413 (insert_pad) Calculate padding size in octets, and adjust "dot"
1414 by bytes.
1415 (size_input_section) Always adjust "dot" by bytes, not octets.
1416 (lang_check_section_addresses, lang_do_assignments) Adjust
1417 "dot" by bytes, not octets. Use the larger of the directive size
1418 or octets_per_byte for the number of octets actually allocated in
1419 the output section.
1420 (lang_set_startof) Make sure STARTOF returns a target address.
1421 (lang_one_common) Record size changes in octets.
1422 (lang_abs_symbol_at_end_of) Section end symbol's value is
1423 recorded in target bytes.
1424 * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
1425 to be clear about behavior when an octet is smaller than one byte.
1426
1427 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
1428
1429 * ldcref.c (output_cref): Don't pass message strings to printf
1430 as format arg.
1431 Update copyright.
1432
1433 * ldmisc.c (vfinfo): Same here.
1434 Update copyright.
1435
1436 2000-01-23 Alan Modra <alan@spri.levels.unisa.edu.au>
1437
1438 * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
1439 generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
1440 mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
1441 Add missing NULL initialisers, and comments.
1442
1443 * testsuite/ld-srec/sr3.cc (__rethrow): New.
1444
1445 2000-01-21 Nick Clifton <nickc@cygnus.com>
1446
1447 * ldlang.c (lang_size_sections): Fix typo in comment.
1448
1449 2000-01-18 H.J. Lu <hjl@gnu.org>
1450
1451 * ldlang.c (lang_size_sections): Also update the current
1452 address of a region if the SEC_NEVER_LOAD bit is not set.
1453
1454 2000-01-10 Philip Blundell <pb@futuretv.com>
1455
1456 * configure.tgt (arm*-*-conix*): New target.
1457
1458 2000-01-07 Nick Clifton <nickc@cygnus.com>
1459
1460 * ld.texinfo (Options): Remind users to preceed linker command
1461 line switches with -Wl, (or whatever is appropriate) if it is
1462 being invoked by a comnpiler driver program.
1463 Fix description of the behaviour of the -n command line switch.
1464
1465 Wed Jan 5 08:02:12 2000 Catherine Moore <clm@cygnus.com>
1466
1467 * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
1468 (name_list): New.
1469 * ld.texinfo (EXCLUDE_FILE): Update documentation.
1470 * ldgram.y (wildcard_spec): Support a list of excluded_files.
1471 (exclude_name_list): New.
1472 ldlang.c (walk_wild_section): Support list of excluded files.
1473 (print_wild_statement): Likewise.
1474 (lang_add_wild): Likewise.
1475 * ldlang.h (lang_wild_statement_type): Likewise.
1476 * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
1477
1478 2000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
1479
1480 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
1481 (process_def_file): Use.
1482 (pe_dll_compat_implib): New variable.
1483 (make_one): Use.
1484
1485 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
1486 pe_dll_compat_implib.
1487
1488 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
1489 compat-implib options.
1490 (gld_${EMULATION_NAME}_list_options): List new options.
1491 (gld_${EMULATION_NAME}_parse_args): Handle.
1492
1493 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
1494 dll.
1495
1496 * deffilep.y (opt_name): Allow "." in name.
1497
1498 1999-12-02 Nick Clifton <nickc@cygnus.com>
1499
1500 * Makefile.am: Fix arm-epoc-pe dependencies.
1501 * Makefile.in: Regenerate.
1502
1503 * emulparams/arm_epoc_pe.sh (SCRIPT_NAME): Set to epocpe.
1504
1505 * scripttempl/epocpe.sc: New file: copy of pe.sc, customised for
1506 EPOC by placing .rdata into .text.
1507
1508 1999-11-26 Andreas Schwab <schwab@suse.de>
1509
1510 * configure.in: Put AC_MSG_CHECKING/AC_MSG_RESULT around check for
1511 STRINGIFY. Use yes/no instead of true/false as value for cache
1512 variable.
1513 * configure: Regenerate.
1514
1515 1999-11-24 Nick Clifton <nickc@cygnus.com>
1516
1517 * ldlang.c (IGNORE_SECTION): Section must have both ALLOC and LOAD
1518 attributes in order to be checked.
1519
1520 1999-11-22 Nick Clifton <nickc@cygnus.com>
1521
1522 * ldlang.c (lang_check_section_addresses): Fix test to determine
1523 if a section should be tested.
1524 (IGNORE_SECTION): New macro.
1525
1526 Wed Nov 3 23:31:19 1999 Jeffrey A Law (law@cygnus.com)
1527
1528 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1529 Clean up code to use EXTRA_SHLIB_EXTENSION.
1530
1531 1999-11-03 Nick Clifton <nickc@cygnus.com>
1532
1533 * emulparams/elf32mcore.sh (OUTPUT_FORMAT): Change to little endian.
1534 * emulparams/mcorepe.sh (OUTPUT_FORMAT): Change to little endian.
1535
1536 1999-11-01 Steve Chamberlain <sac@pobox.com>
1537
1538 * ldlang.c (section_already_linked): Rework to use hash table.
1539 (already_linked_newfunc): New function.
1540 (already_linked_table_init): New function.
1541 (already_linked_table_free): New function.
1542 (lang_process): Initialize and free the already_linked hash table.
1543
1544 1999-10-27 Andreas Jaeger <aj@suse.de>
1545
1546 * ld/configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
1547 target "mips*-*-linux-gnu*".
1548
1549 1999-10-27 Scott Bambrough <scottb@netwinder.org>
1550
1551 * emultempl/armelf.em: Include ctype.h to prevent compile time
1552 warnings.
1553
1554 1999-10-26 Nick Clifton <nickc@cygnus.com>
1555
1556 * emultempl/armcoff.em (gld{}_finish): Remove extraneous
1557 underscore from prototype.
1558 * emultempl/armelf.em (gld{}_finish): Remove extraneous
1559 underscore from prototype.
1560
1561 1999-10-07 Geoffrey Keating <geoffk@cygnus.com>
1562
1563 * scripttempl/elf.sc (.rel.sdata): Combine all the sdata relocs
1564 being .rel.sdata, .rel.sdata.*, .rel.gnu.linkonce.s*.
1565 (.rela.sdata): Likewise for .rela.sdata.* and .rela.gnu.linkonce.s*.
1566 (.rel.sbss): Make like .rel.bss.
1567 (.rela.sbss): Make like .rel.bss.
1568 (.sdata): Don't include .gnu.linkonce.s.* or .sdata.* when
1569 ld -r.
1570 (.sbss): Do the same things as for .bss: include SDATA_START_SYMBOLS,
1571 .dynsbss.
1572
1573 1999-09-29 Andrew Haley <aph@cygnus.com>
1574
1575 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Defer
1576 merging sections when not relocating.
1577
1578 1999-09-28 Mumit Khan <khan@xraylith.wisc.edu>
1579
1580 * pe-dll.c (process_def_file): Move the offset lookup from here to
1581 (fill_exported_offsets): here. New static function.
1582 (fill_edata): Use.
1583
1584 1999-09-28 Mumit Khan <khan@xraylith.wisc.edu>
1585
1586 * deffilep.y (tokens): Add upper and lower case versions of DATA,
1587 CONSTANT, NONAME and PRIVATE tokens.
1588 (command): Use DATAU.
1589 (expline): Allow for drectve syntax as well.
1590 (exp_opt_list): Likewise.
1591 (exp_opt): Likewise.
1592 * pe-dll.c (make_one): Only generate the idata entries for data
1593 symbols.
1594
1595 1999-09-28 Geoffrey Keating <geoffk@cygnus.com>
1596
1597 * scripttempl/elf.sc (.sdata): Include .gnu.linkonce.s.* sections
1598 in .sdata too.
1599
1600 1999-09-26 Nick Clifton <nickc@cygnus.com>
1601
1602 * scripttempl/elf.sc (.bss): Accept sections named .bss.*
1603 (.sbss): Accept sections names .sbss.*
1604
1605 1999-09-22 Nick Clifton <nickc@cygnus.com>
1606
1607 * Makefile.am: Add earm_epoc_pe.c build target.
1608
1609 Sat Sep 18 07:57:10 1999 Jeffrey A Law (law@cygnus.com)
1610
1611 * emulparms/elf64hppa.sh (OTHER_READONLY_SYMBOLS): Remove ".stubs",
1612 they've been renamed to ".stub", which is handled automatically
1613 by elf.sc.
1614
1615 Fri Sep 17 11:00:33 1999 Jeffrey A Law (law@cygnus.com)
1616
1617 * emulparms/elf64hppa.sh (TEXT_START_SYMBOLS): Kill completely.
1618 (DATA_START_SYMBOLS): Kill __hp_load_map definition
1619
1620 Thu Sep 16 10:59:56 1999 Jeffrey A Law (law@cygnus.com)
1621
1622 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1623 Use the same filename extension for the bfd_elf_dt_needed_name call
1624 as we did for finding the library.
1625
1626 * emulparms/elf64hppa.sh (DATA_START_SYMBOLS): Define.
1627 (OTHER_READWRITE_SECTIONS): No longer define __hp_load_map.
1628
1629 * emulparms/elf64hppa.sh (TEXT_START_SYMBOLS): Define.
1630
1631 Wed Sep 15 02:47:43 1999 Jeffrey A Law (law@cygnus.com)
1632
1633 * emulparms/elf64hppa.sh (SHLIB_TEXT_START_ADDR): Define.
1634 (SHLIB_DATA_ADDR): Likewise.
1635
1636 * emulparms/elf64hppa.sh (TEXT_DYNAMIC): Define.
1637
1638 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): No longer combine
1639 the .plt, .dlt, .opd into a single output section. Provide values
1640 for __gp and __hp_load_map.
1641
1642 1999-09-14 Michael Meissner <meissner@cygnus.com>
1643
1644 * configure.in (Canonicalization of target names): Remove adding
1645 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
1646 generates $ac_config_sub with a ${CONFIG_SHELL} already.
1647 * configure: Regenerate.
1648
1649 1999-09-14 Donn Terry <donn@interix.com>
1650
1651 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): allow for
1652 terminating null.
1653
1654 1999-09-14 Ulrich Drepper <drepper@cygnus.com>
1655
1656 * configure.in: Define EXTRA_SHLIB_EXTENSION to ".sl" for HP target.
1657 * config.in: Add EXTRA_SHLIB_EXTENSION.
1658
1659 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1660 Search for second shared lib extension only if EXTRA_SHLIB_EXTENSION
1661 is defined.
1662
1663 1999-09-14 Nick Clifton <nickc@cygnus.com>
1664
1665 * Makefile.in: Add earm_epoc_pe.c build target.
1666
1667 Tue Sep 14 05:26:34 1999 Jeffrey A Law (law@cygnus.com)
1668
1669 * emulparms/elf64hppa.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.dlt.
1670
1671 1999-09-13 Donn Terry <donn@interix.com>
1672
1673 * emultempl/pe.em: Remove the output file at the start, in case it
1674 is not writable.
1675
1676 Mon Sep 13 00:17:18 1999 Jeffrey A Law (law@cygnus.com)
1677
1678 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1679 Search for file with .sl extension if no file with a .so extension
1680 is found.
1681
1682 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): Put .plt
1683 at the start of the .dlt output section.
1684
1685 1999-09-12 Ian Lance Taylor <ian@zembu.com>
1686
1687 * pe.em: Don't include "../bfd/libbfd.h".
1688 (gld_${EMULATION_NAME}_after_open): Use xmalloc rather than
1689 bfd_alloc.
1690
1691 * pe-dll.h: New file.
1692 * pe-dll.c: Include "pe-dll.h". Mark unused arguments as needed
1693 to avoid warnings.
1694 (edata_sz, reloc_sz): Change from int to size_t.
1695 (pe_details_type): Change type of imagebase_reloc from int to
1696 unsigned int.
1697 (pe_detail_list): Fully initialize last entry.
1698 (pe_dll_id_target): Change parameter to const.
1699 (pe_dll_generate_def_file): Likewise.
1700 (pe_dll_generate_implib): Likewise.
1701 (pe_implied_import_dll): Likewise. Change dll_name to const.
1702 * emultempl/pe.em: Include "pe-dll.h". Remove declarations now in
1703 pe-dll.h.
1704 (init): Fully initialize __dll__ entry.
1705 (gld_${EMULATION_NAME}_after_open): Remove unused variables
1706 sequence, elt, and i.
1707 * deffile.h: Add preprocessor guard.
1708 * deffilep.y (def_debug): Remove.
1709 * Makefile.am: Rebuild dependencies.
1710 (HFILES): Add pe-dll.h.
1711
1712 1999-09-12 Donn Terry <donn@interix.com>
1713
1714 * ld.h (ld_abort): Declare.
1715 (abort): Define.
1716 * ldmisc.c (ld_abort): Define.
1717
1718 * scripttempl/pe.sc: Use ${ENTRY} rather than _mainCRTStartup.
1719 Move .bss section after .rdata. Move .reloc section after .rsrc.
1720
1721 * lexsup.c (parse_args): Use strtoul for --split-by-reloc
1722 argument.
1723
1724 * lexsup.c (parse_args): If we get an unrecognized argument,
1725 mention --help.
1726
1727 * ldlang.c (section_already_linked): Use comdat information if it
1728 is available.
1729
1730 * emultempl/pe.em (PE_DEF_SECTION_ALIGNMENT): If
1731 OVERRIDE_SECTION_ALIGNMENT is defined, change to that.
1732 (gld_${EMULATION_NAME}_before_parse): Use EXECUTABLE_NAME if it is
1733 defined, rather than a.exe.
1734 (init): Define __subsystem__ as ${SUBSYSTEM}.
1735 (set_pe_subsystem): Add ${INITIAL_SYMBOL_CHAR} before entry symbol
1736 name.
1737
1738 1999-09-12 Ian Lance Taylor <ian@zembu.com>
1739
1740 * ldlang.c (open_output): Change local variable desired_endian
1741 from int to enum bfd_endian.
1742
1743 * emulparams/arm_epoc_pe.sh: Define ENTRY, SUBSYSTEM and
1744 INITIAL_SYMBOL_CHAR.
1745 * emulparams/armpe.sh: Likewise.
1746 * emulparams/morepe.sh: Likewise.
1747 * emulparams/ppcpe.sh: Likewise.
1748 * emulparams/i386pe.sh (ENTRY): Define as _mainCRTStartup.
1749 (SUBSYSTEM): Define as PE_DEF_SUBSYSTEM.
1750
1751 Fri Sep 10 00:22:50 1999 Jeffrey A Law (law@cygnus.com)
1752
1753 * emulparms/elf64hppa.sh (LIB_PATH): Define.
1754
1755 * emulparms/elf64hppa.sh (OTHER_READONLY_SECTIONS): Put stubs before
1756 unwinders so that they are closer to the text section.
1757 (OTHER_BSS_SECTIONS): Define.
1758 (EXECUTABLE_SYMBOLS): Provide __SYSTEM_ID and _FPU_STATUS.
1759 (INIT_START, INIT_END): Define.
1760 (FINI_START, FINI_END): Define.
1761 * scripttempl/elf.sc: Add support for INIT_START, INIT_END,
1762 FINI_START, FINI_END and OTHER_BSS_SECTIONS.
1763
1764 Thu Sep 9 21:43:58 1999 Jeffrey A Law (law@cygnus.com)
1765
1766 * emulparms/elf64hppa.sh (TEXT_START_ADDR): Move up one page.
1767 (DATA_ADDR): Define.
1768
1769 1999-09-09 Stan Shebs <shebs@andros.cygnus.com>
1770
1771 * emulparams/d10velf.sh (READONLY_START_ADDR): Set to 0x2000004.
1772
1773 1999-09-09 Andreas Schwab <schwab@suse.de>
1774
1775 * ld.texinfo: Fix arguments of @var to not contain punctuation.
1776
1777 Thu Sep 9 05:52:34 1999 Jeffrey A Law (law@cygnus.com)
1778
1779 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): Define.
1780
1781 1999-09-08 Ulrich Drepper <drepper@cygnus.com>
1782
1783 * emulparams/elf64hppa.sh (ELFSIZE): New. Set to 64.
1784
1785 Wed Sep 8 00:07:39 1999 Jeffrey A Law (law@cygnus.com)
1786
1787 * emulparms/elf64hppa.sh (ENTRY): Define to main.
1788
1789 1999-09-03 Scott Bambrough <scottb@netwinder.org>
1790
1791 * ld/configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
1792 target "arm*-*-linux-gnu*"
1793
1794 1999-09-04 Steve Chamberlain <sac@pobox.com>
1795
1796 * configure.tgt (pjl-*-*, pj-*-*): New targets.
1797 * emulparams/pjelf.sh: New file.
1798 * emulparams/pjlelf.sh: New file.
1799 * scripttempl/pj.sc: New file.
1800 * Makefile.am (ALL_EMULATIONS): Add epjelf.o and epjlelf.o.
1801 (epjelf.o, epjlelf.o): New targets.
1802 * Makefile.in: Rebuild.
1803
1804 Fri Sep 3 20:17:08 1999 Jeffrey A Law (law@cygnus.com)
1805
1806 * emulparams/elf64hppa.sh (MAXPAGESIZE): Define.
1807 (OTHER_READONLY_SECTIONS, DATA_PLT): Likewise.
1808
1809 Thu Sep 2 14:32:03 1999 Jeffrey A Law (law@cygnus.com)
1810
1811 * emulparams/elf64hppa.sh: New file.
1812 * configure.tgt (hppa*w-*-*): Use elf64hppa emulation.
1813 * Makefile.am (ALL_64_EMULATIONS): Add eelf64hppa.o
1814 (eelf64hppa.c): Add dependencies.
1815 * Makefile.in: Rebuilt.
1816
1817 1999-08-25 Philip Blundell <pb@nexus.co.uk>
1818
1819 * emulparams/armelf.sh (OTHER_BSS_SYMBOLS): Add __end__.
1820 * emulparams/armelf_linux.sh: Likewise.
1821 * emulparams/armelf_linux26.sh: Likewise.
1822
1823 1999-08-24 Nick Clifton <nickc@cygnus.com>
1824
1825 From a patch submitted by Roland McGrath <roland@baalperazim.frob.com>
1826
1827 * configure.tgt (arm-*-netbsd*): New target.
1828 * Makefile.am (ALL_EMULATIONS): Add earmnbsd.o.
1829 (earmnbsd.c): New rule with deps.
1830 * Makefile.on: Regenerate.
1831 * emulparams/armnbsd.sh: New file.
1832
1833 1999-08-23 Nick Clifton <nickc@cygnus.com>
1834
1835 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Define.
1836 Implement --base-file command line switch.
1837
1838 * emultempl/elf32.em: Add ability for individual targets to have
1839 their own command line switches by defining PARSE_AND_LIST_ARGS.
1840
1841 1999-08-19 Andreas Schwab <schwab@suse.de>
1842
1843 * configure.host: Use ${CC} instead of gcc for finding compiler
1844 related files.
1845
1846 1999-08-11 Nick Clifton <nickc@cygnus.com>
1847
1848 * scripttempl/mcorepe.sc (OUTPUT_FORMAT): Fix typo.
1849
1850 1999-08-09 Mark Elbrecht <snowball3@bigfoot.com>
1851
1852 * scripttempl/i386go32.sc: Handle g++ exception sections.
1853
1854 1999-08-09 Ian Lance Taylor <ian@zembu.com>
1855
1856 From Wally Iimura <iimura@microunity.com>:
1857 * ldlang.c (lang_size_sections): When checking whether an address
1858 is within a region, don't get confused by wrapping around at the
1859 end of the address space.
1860
1861 1999-08-08 Ian Lance Taylor <ian@zembu.com>
1862
1863 * ldlang.c (wild_doit): Update for renaming of SEC_SHORT to
1864 SEC_SMALL_DATA.
1865
1866 * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to
1867 MKDEP. Rebuild dependencies.
1868 * Makefile.in: Rebuild.
1869
1870 1999-08-08 Jakub Jelinek <jj@ultra.linux.cz>
1871
1872 * configure.host (sparc-*-linux-gnu*): New host.
1873 (sparc64-*-linux-gnu*): New host.
1874
1875 1999-08-06 Ian Lance Taylor <ian@zembu.com>
1876
1877 * lexsup.c (is_num): Reindent.
1878 (parse_args): Mention program name in error message.
1879
1880 * emultempl/ostring.sed: Rename from stringify.sed.
1881 * emultempl/astring.sed: New file.
1882 * Makefile.am (stringify.sed): New target.
1883 (GEN_DEPENDS): Change $(srcdir)/emultempl/stringify.sed to
1884 stringify.sed.
1885 * configure.in: Define and substitute STRINGIFY.
1886 * emultempl/*.em: Use stringify.sed from build directory rather
1887 than source directory.
1888 * emultempl/elf32.em: Use stringify.sed rather than inline sed
1889 script.
1890 * emultempl/gld960.em, emultempl/gld960c.em: Likewise.
1891 * emultempl/hppaelf.em, emultempl/linux.em: Likewise.
1892 * emultempl/lnk960.em, emultempl/sunos.em: Likewise.
1893 * configure, Makefile.in: Rebuild.
1894
1895 1999-08-05 Donn Terry <donn@interix.com>
1896
1897 * emulparams/i386pe.sh: Define ENTRY, SUBSYSTEM, and
1898 INITIAL_SYMBOL_CHAR.
1899 * emulparams/i386pe_posix.sh: New file.
1900 * Makefile.am (YACC): If bison is not in the source tree, use
1901 @YACC@ rather than bison -y.
1902 (LEX): If flex is not in the source tree, use @LEX@ rather than
1903 flex.
1904 (ALL_EMULATIONS): Add ei386pe_posix.o.
1905 (ei386pe_posix.c): New target.
1906 * configure.tgt (i[3456]86-*-interix*): New target.
1907 * configure.host (i[3456]86-pc-interix*): New host.
1908 * Makefile.in: Rebuild.
1909
1910 1999-08-03 Ian Lance Taylor <ian@zembu.com>
1911
1912 * emulparams/elf32ppc.sh (MAXPAGESIZE): Change to 0x10000.
1913 * emulparams/elf32ppclinux.sh (MAXPAGESIZE): Likewise.
1914
1915 1999-08-03 H.J. Lu <hjl@gnu.org>
1916
1917 * Makefile.am (ALL_EMULATIONS): Remove ego32.o.
1918 (ego32.c): Remove.
1919 * Makefile.in: Rebuild.
1920
1921 1999-07-22 Philip Blundell <pb@nexus.co.uk>
1922
1923 * emulparams/armelf_linux26.sh (DATA_START_SYMBOLS): Define.
1924 (OTHER_BSS_SYMBOLS, OTHER_BSS_END_SYMBOLS): Likewise.
1925 * emulparams/armelf_linux.sh (DATA_START_SYMBOLS): Define.
1926
1927 * configure.tgt (arm*-*-uclinux*, thumb-*-uclinux*,
1928 thumb-*-linux-gnu*): New targets.
1929
1930 1999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
1931
1932 * scripttempl/i386go32.sc: Add handling of linkonce sections.
1933
1934 * configure.bat: Remove; obsolete.
1935 * emulparams/go32.sh: Remove; obsolete.
1936 * scripttempl/go32coff.sc: Remove; obsolete.
1937
1938 1999-07-21 H.J. Lu <hjl@gnu.org>
1939
1940 * configure.tgt (mips*el-*-vxworks*): New target.
1941
1942 1999-07-21 Brad M. Garcia <bgarcia@fore.com>
1943
1944 * configure.tgt (i[3456]86-*-vxworks*): New target.
1945
1946 Tue Jul 20 15:18:46 1999 Bob Manson <manson@charmed.cygnus.com>
1947
1948 * ldlang.c (lang_gc_sections): Only handle the start symbol
1949 specially if there is one.
1950
1951 Mon Jul 19 14:19:14 1999 Mark P. Mitchell <mark@codesourcery.com>
1952
1953 * emulparams/elf32bmipn32.sh (OTHER_RELOCATING_SECTIONS): Add
1954 .MIPS.events and .MIPS.content handling.
1955 * emulparams/elf64bmip.sh (OTHER_RELOCATING_SECTIONS): Likewise.
1956
1957 1999-07-17 Nick Clifton <nickc@cygnus.com>
1958
1959 * ldlang.c (get_target): New function: Return true iff the
1960 given target is the target being sought.
1961 (stricpy): New function: Like strcpy but convert to lower
1962 case as well.
1963 (strcut): New function: Like strstr but remove the located
1964 substring as well.
1965 (name_compare): New function: Compute a compatability rating
1966 for two target names.
1967 (winner): New variable: Best target found by
1968 closest_target_match() so far.
1969 (closest_target_match): New function: Find the target which is
1970 the closest match to the original target.
1971 (get_first_input_target): New function: Find the target format
1972 of the first of the linker's input file.
1973 (open_output): Be more clever about deciding the output target
1974 format.
1975
1976 1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
1977
1978 * emulparams/elf64_sparc.sh: Add 64-bit directories to native LIB_PATH.
1979
1980 Thu Jul 15 15:55:15 1999 Mark P. Mitchell <mark@codesourcery.com>
1981
1982 * configure.host: Set up HOSTING_CRT0 and HOSTING_LIBS for IRIX6.
1983
1984 1999-07-15 Ian Lance Taylor <ian@zembu.com>
1985
1986 * configure.in: Bump version number to 2.9.5.
1987 * configure: Rebuild.
1988
1989 1999-07-14 Richard Henderson <rth@cygnus.com>
1990
1991 * ldlang.c (wild_doit): Copy SEC_SHORT to output section.
1992
1993 * scripttempl/elf.sc: Re-order .rel[a].foo outputs to the
1994 same order seen for the main sections. Add
1995 OTHER_READONLY_RELOC_SECTIONS and OTHER_GOT_RELOC_SECTIONS.
1996
1997 1999-07-12 Andreas Schwab <schwab@suse.de>
1998
1999 * emultempl/linux.em (ld_${EMULATION_NAME}_emulation): Fill in
2000 structure initializations.
2001
2002 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Add missing
2003 comma in initializer.
2004
2005 1999-07-11 Ian Lance Taylor <ian@zembu.com>
2006
2007 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
2008 as appropriate. Fill in structure initializations.
2009
2010 1999-07-10 Ian Lance Taylor <ian@zembu.com>
2011
2012 * ldfile.c: Revert patch of 1999-07-08.
2013 (ldfile_try_open_bfd): If we are searching for the file, skip
2014 files with an incompatible architecture.
2015
2016 1999-07-09 Nick Clifton <nickc@cygnus.com>
2017
2018 * scripttempl/armcoff.sc (OUTPUT_FORMAT): Include big endian and
2019 little endian formats.
2020
2021 1999-07-08 Felix Lee <flee@cygnus.com>
2022
2023 * scripttempl/mcorepe.sc: fix quoting problem, for bash 2.x
2024
2025 1999-07-08 Jakub Jelinek <jj@ultra.linux.cz>
2026
2027 * ldfile.c (ldfile_open_file_search): Skip libraries made for
2028 incompatible architectures in the search path. Let the user know
2029 about any such skips.
2030
2031 Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
2032
2033 * configure.tgt (hppa*-linux-gnu*): New target.
2034
2035 1999-07-07 Mark Mitchell <mark@codesourcery.com>
2036
2037 * Makefile.am (ALL_64_EMULATIONS): Add eelf64bmip.
2038 (eelf64bmip): New target.
2039 * Makefile.in: Regenerated.
2040 * configure.tgt (mips-sgi-irix6*): Add 64-bit emulation.
2041 * emulparams/elf64bmip.sh: New file.
2042
2043 1999-07-05 Nick Clifton <nickc@cygnus.com>
2044
2045 * emultempl/pe.em (after_open): Abort if input format is ARM and
2046 output format is not.
2047 * emultempl/armcoff.em (after_open): Abort if input format is ARM
2048 and output format is not.
2049 * emultempl/armelf.em (after_open): Abort if input format is ARM
2050 and output format is not.
2051
2052 1999-07-02 Ian Lance Taylor <ian@zembu.com>
2053
2054 * ldlang.c: Revert change of 1999-06-23.
2055
2056 1999-06-30 Mark Mitchell <mark@codesourcery.com>
2057
2058 * Makefile.am (ALL_EMULATIONS): Add eelf32bmipn32.o.
2059 (eelf32bmipn32.c): New target.
2060 * Makefile.in: Regenerated.
2061 * configure.tgt (mips-sgi-irix6*): Make n32 the default
2062 emulation.
2063 * emulparams/elf32bmipn32.sh: New file.
2064
2065 1999-06-28 Jim Pick <jim@jimpick.com>
2066
2067 * emultempl/armelf.em: Added code so that .xs linker scripts are
2068 called so that ARM shared libraries are built correctly.
2069
2070 1999-06-22 Mark Mitchell <mark@codesourcery.com>
2071
2072 * ldmain.c (main): Initialize link_info.init_function and
2073 link_info.fini_function.
2074 * lexsup.c (OPTION_INIT): New macro.
2075 (OPTION_FINI): Likewise.
2076 (ld_options): Add descriptions for them.
2077 (parse_args): Handle them.
2078
2079 1999-06-23 Ian Lance Taylor <ian@zembu.com>
2080
2081 * ldlang.c (section_already_linked): Only discard link once
2082 sections if we are building constructors.
2083
2084 1999-06-22 Nick Clifton <nickc@cygnus.com>
2085
2086 * ld.texinfo (Location Counter): Describe behaviour of
2087 location counter inside section statements.
2088
2089 1999-06-20 Mark Mitchell <mark@codesourcery.com>
2090
2091 * scripttempl/elf.sc (WRITABLE_RODATA): New variable for
2092 controlling whether or not .rodata is in the data segment or the
2093 text segment.
2094
2095 1999-06-18 Nick Clifton <nickc@cygnus.com>
2096
2097 * emultempl/pe.em: Add new command line switch --thumb-entry.
2098 * emultempl/armelf.em: Add new command line switch --thumb-entry.
2099 * emultempl/armcoff.em: Add new command line switch --thumb-entry.
2100 * ld.texinfo: Document new ARM command line switch: --thumb-entry.
2101
2102 1999-06-20 H.J. Lu <hjl@gnu.org>
2103
2104 * configure.in (all_libpath): Accumulate across all enabled targets.
2105
2106 Sun Jun 20 14:10:33 1999 Richard Henderson <rth@cygnus.com>
2107
2108 * emultempl/armelf.em: Watch EMULATION_LIBPATH instead of
2109 DEFAULT_EMULATION.
2110 * emultempl/elf32.em: Likewise.
2111 * emultempl/sunos.em: Likewise.
2112
2113 Fri Jun 18 15:24:48 1999 Richard Henderson <rth@cygnus.com>
2114
2115 * Makefile.am (GENSCRIPTS): Pass EMULATION_LIBPATH, not EMUL.
2116 * configure.in (all_emuls): Add targ_extra_libpath.
2117 (all_libpath, EMULATION_LIBPATH): Define.
2118 * configure.tgt (powerpc-*-linux-gnu*): Define targ_extra_libpath.
2119 * genscripts.sh (LIB_PATH): Define if emulation in EMULATION_LIBPATH.
2120
2121 Mon Jun 14 10:38:36 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2122
2123 * ld.texinfo: Fix use of @item vs. @itemx.
2124
2125 1999-06-13 Ian Lance Taylor <ian@zembu.com>
2126
2127 From Thomas Zenker <thz@lennartz-electronic.de>:
2128 * ldgram.y (attributes_opt): Use attributes_list instead of NAME.
2129 (attributes_list, attributes_string): New nonterminals.
2130 * ldlang.c (lang_set_flags): Add invert parameter. Don't handle
2131 '!'.
2132 * ldlang.c (lang_set_flags): Update declaration.
2133
2134 1999-06-12 Ian Lance Taylor <ian@zembu.com>
2135
2136 * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Don't add
2137 entry_symbol as an undefined symbol when doing a relocateable
2138 link. From <jeffdb@goodnet.com>.
2139
2140 1999-06-12 David O'Brien <obrien@freebsd.org>
2141
2142 * configure.tgt: (i[3456]86-*-freebsd*): Now defaults to ELF.
2143
2144 1999-06-09 Nick Clifton <nickc@cygnus.com>
2145
2146 * lexsup.c (help): Restore previous format of output.
2147
2148 1999-06-04 Nick Clifton <nickc@cygnus.com>
2149
2150 * emultempl/pe.em: If compiling for arm_epoc_pe rename
2151 interworking functions to avoid a name space clash.
2152
2153 1999-06-02 Jason Merrill <jason@yorick.cygnus.com>
2154
2155 * scripttempl/v850.sc: Add initp support.
2156
2157 1999-06-02 Nick Clifton <nickc@cygnus.com>
2158
2159 * emultempl/pe.em: Rename global arm interworking functions to
2160 avoid name collision when all targets BFD is built.
2161
2162 1999-05-30 Cort Dougan <cort@attis.cs.nmt.edu>
2163
2164 * Makefile.am (ALL_EMULATIONS): Add eelf32ppclinux.o.
2165 * configure.tgt (powerpc-*-linux-gnu): Use it.
2166 * emulparams/elf32ppclinux.sh: New file.
2167
2168 1999-05-29 Ian Lance Taylor <ian@zembu.com>
2169
2170 * ld.texinfo (Options): Clarify that options which refer to files
2171 must be properly ordered.
2172
2173 1999-05-29 Nick Clifton <nickc@cygnus.com>
2174
2175 * emultempl/armelf.em (..._parse_args): New function: Parse
2176 command line option. Accept arm-elf specific command line option
2177 '-p' or '--no-pipeline-knowledge'.
2178 (..._list_options): New function: Describe the new command line
2179 option.
2180 (..._before_allocation): Pass the value of the new variable
2181 no_pipeline_knowledge to bfd_elf32_arm_process_before_allocation.
2182
2183 * emultemp/armelf_oabi.em (..._before_allocation): Pass zero as
2184 the third parameter to bfd_elf32_arm_process_before_allocation.
2185
2186 1999-05-28 Nick Clifton <nickc@cygnus.com>
2187
2188 * lexsup.c (help): Minor formatting changes.
2189
2190 1999-05-28 Martin Dorey <mdorey@madge.com>
2191
2192 * configure.tgt (i960-*-elf*): New target.
2193 * emulparams/elf32_i960.sh: New file.
2194 * Makefile.am (ALL_EMULATIONS): Add eelf32_i960.o.
2195 (eelf32_i960.c): New target.
2196 * Makefile.in: Rebuild.
2197
2198 1999-05-26 Nick Clifton <nickc@cygnus.com>
2199
2200 * emulparams/armelf_oabi.sh (TEMPLATE_NAME): Set to armelf_oabi.
2201
2202 1999-05-24 Philip Blundell <philb@gnu.org>
2203
2204 * emultempl/armelf.em (before_parse): Set config.dynamic_link and
2205 config.has_shared.
2206 * emulparams/armelf.sh (GENERATE_SHLIB_SCRIPT): Define.
2207 * emulparams/armelf_linux.sh (GENERATE_SHLIB_SCRIPT): Likewise.
2208
2209 1999-04-13 Philip Blundell <philb@gnu.org>
2210
2211 * emultempl/armelf.em: Add definitions related to shared objects
2212 (copied from elf32.em).
2213
2214 Wed May 19 12:44:26 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2215
2216 * Makefile.am (ALL_EMULATIONS): Remove earmlinux.o and
2217 earm26linux.o, add earmelf_linux.o and earmelf_linux26.o.
2218 * Makefile.in: Regenerated.
2219
2220 1999-05-16 Nick Clifton <nickc@cygnus.com>
2221
2222 * emulparams/elf32mcore.sh (GENERATE_SHLIB_SCRIPT): Define.
2223 (TEMPLATE_NAME): Define.
2224
2225 Thu May 13 09:48:09 1999 Joel Sherrill (joel@OARcorp.com)
2226
2227 * configure.tgt (i386-*-rtemself*, sh-*-rtemself*): New targets.
2228 (mips*el-*-rtems*, powerpcle-*-rtems*): New targets.
2229
2230 1999-05-10 DJ Delorie <dj@cygnus.com>
2231
2232 * scripttempl/pe.sc: Specify the output arch, which Ian says is
2233 the Right Thing to do.
2234
2235 * emultempl/pe.em: various changes to parameterize the
2236 target-specific information.
2237 (gld_i386pe_after_open): Detect and fix MS import libraries
2238 by renaming the member objects (which are all named the same).
2239
2240 * pe-dll.c: various changes to parameterize the target-specific
2241 information.
2242 (generate_reloc): support relocs more generically to allow for
2243 expansion.
2244 (pe_exe_build_sections): new; used to add .relocs to .exes
2245 (pe_exe_fill_sections): ditto
2246
2247 1999-05-10 Catherine Moore <clm@cygnus.com>
2248
2249 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
2250 Check for TARGET_IS_arm_epoc_pe.
2251 (gld_${EMULATION_NAME}_before_allocation): Likewise.
2252
2253 1999-05-12 Anthony Green <green@cygnus.com>
2254
2255 * ldlang.c (walk_wild, walk_wild_file, walk_wild_section,
2256 output_section_callback, gc_section_callback): New functions for
2257 generic section walks.
2258 (wild, lang_gc_wild): Use walk_wild.
2259 (wild_file, lang_gc_wild_file): Deleted. Common logic moved to
2260 walk_wild_file.
2261 (wild_section, lang_gc_wild_section): Deleted. Common logic moved
2262 to walk_fild_section. Unique logic moved into callbacks
2263 output_section_callback and gc_section_callback.
2264
2265 1999-04-26 Tom Tromey <tromey@cygnus.com>
2266
2267 * aclocal.m4, configure: Updated for new version of libtool.
2268
2269 1999-04-12 Philip Blundell <pb@nexus.co.uk>
2270
2271 * emulparams/armelf_linux.sh: New file. Support for ARM
2272 GNU/Linux ELF ABI.
2273 * emulparams/armelf_linux26.sh: New file. APCS-26 version of above.
2274 * configure.tgt: For arm*-*-linux-gnu*, set default emulation to
2275 `armelf_linux', and also include `armelf_linux26' and `armelf'.
2276 * Makefile.am: Add rules to make earmlinux.c and earmlinux26.c.
2277 (ALL_EMULATIONS): Add earmlinux.o and earmlinux26.o.
2278 * Makefile.in: Regenerate.
2279
2280 1999-04-11 Richard Henderson <rth@cygnus.com>
2281
2282 * Makefile.am (ALL_EMULATIONS): Add elf_i386_be.o.
2283 * configure.tgt (i[3456]86-*-beos*): Use it.
2284 * emulparams/elf_i386_be.sh: New file.
2285 * Makefile.in: Rebuild.
2286
2287 * configure.in (environ): Detect declaration.
2288 * ldmain.c (main): Don't declare environ.
2289 * sysdep.h (environ): Declare if needed.
2290 * configure, config.in: Rebuild.
2291
2292 1999-04-11 Richard Henderson <rth@cygnus.com>
2293
2294 * ldgram.y (ldgram_vers_current_lang): New.
2295 (vers_defns): Accept `extern "lang" { }' syntax.
2296 * ldlex.l (vers_node_nesting): New.
2297 (V_IDENTIFIER): Accept . and $ in symbols.
2298 (VERS_NODE): Accept `extern "lang" { }' tokens. Nest VERS_NODE states.
2299 * ldlang.c (lang_new_vers_regex): New `lang' argument. Update callers.
2300 (lang_vers_match_lang_c): New function.
2301 (lang_vers_match_lang_cplusplus): New function.
2302 (lang_vers_match_lang_java): New function.
2303 (lang_do_version_exports_section): Fix iteration. Don't free
2304 section contents, as it is still in use by the patterns.
2305
2306 1999-04-10 Richard Henderson <rth@cygnus.com>
2307
2308 * ldmain.c (main): Init link_info.no_undefined.
2309 * lexsup.c: Add command-line option --no-undefined.
2310
2311 1999-04-06 Ian Lance Taylor <ian@zembu.com>
2312
2313 * ld.h (LC_MESSAGES): Never define.
2314 * ldmain.c (main): Don't pass LC_MESSAGES to setlocale if the
2315 system does not define it.
2316
2317 1999-04-06 H.J. Lu <hjl@gnu.org>
2318
2319 * ldmain.h (demangling): Declare.
2320 * ldmain.c (demangling): New global variable.
2321 (main): Initialize demangling.
2322 * ldmisc.c (vfinfo): Don't demangle symbol if ! demangling.
2323 * lexsup.c (ld_options, parse_args): Handle --demangle and
2324 --no-demangle.
2325 * ld.texinfo, ld.1: Document --demangle/--no-demangle.
2326
2327 * ldlex.l (V_IDENTIFIER): Allow '.' in symbol.
2328
2329 1999-04-05 Chris Torek <torek@BSDI.COM>
2330
2331 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Check that
2332 a shared library really exists, avoiding broken symlinks.
2333
2334 * ldfile.c (ldfile_open_file): Generate a better error message if
2335 we can't find a -l file.
2336
2337 1999-04-05 DJ Delorie <dj@cygnus.com>
2338
2339 * configure.tgt (i386-*-pe): add targ_extra_ofiles for other PE
2340 targets (i386-pe and i386-winnt)
2341
2342 1999-04-04 Ian Lance Taylor <ian@zembu.com>
2343
2344 * deffilep.y: Include "sysdep.h" and "ldmisc.h".
2345 (def_file_add_directive): Change return type to void. Remove
2346 unused locals sh_reserve, sh_commit, and j.
2347 (def_ungetc): Always return a value.
2348 (def_lex): Correct parenthesization of || within &&.
2349 * deffile.h (def_file_add_directive): Update declaration.
2350 * pe-dll.c: Include <time.h>, <ctype.h>, and "ldemul.h".
2351 (generate_edata): Remove unused local i.
2352 (quoteput): Add cast to avoid warning.
2353 (pe_dll_generate_def_file): Fix type in format string.
2354 (quick_symbol): Remove unused local blhe.
2355 (pe_dll_generate_implib): Add cast to avoid warning.
2356 (pe_process_import_defs): Remove unused locals ar_head, ar_tail,
2357 and n.
2358 (pe_as16): Comment out.
2359
2360 1999-04-04 Don Bowman <don@pixsci.com>
2361
2362 * configure.tgt: Add mips*-*-vxworks* target.
2363
2364 1999-03-31 Nick Clifton <nickc@cygnus.com>
2365
2366 * Makefile.in (ALL_EMULATIONS): Add earm_epoc_pe.o
2367 Add build rule and dependencies for earm_epoc_pe.c.
2368
2369 * emulparams/arm_epoc_pe.sh: New file.
2370
2371 * configure.tgt: Add 'targ_extra_ofiles' for ARM based PE
2372 targets.
2373
2374 1999-03-31 Philip Blundell <pb@nexus.co.uk>
2375
2376 * configure.tgt: Match `arm*-*-linux-gnu*' not
2377 `armv*-*-linux-gnu'.
2378
2379 1999-03-26 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2380
2381 * scripttempl/elf.sc: Put the .eh_frame and .gcc_except_table
2382 sections in the data segment.
2383
2384 Fri Mar 26 12:05:51 1999 Catherine Moore <clm@cygnus.com>
2385
2386 * ld.h (wildcard_spec): Add exclude_name.
2387 * ldgram.y (EXCLUDE_FILE): New token.
2388 (wildcard_spec): Set exclude_name.
2389 (file_NAME_list): Recognize EXCLUDE_FILE.
2390 * ldlang.c (wild_section): Check for excluded files.
2391 (print_wild_statement): Print excluded files.
2392 (lang_add_wild): New argument exclude_filename.
2393 Set exclude_filename.
2394 * ldlang.h (lang_wild_statement_type): Add exclude_filename.
2395 * ldlex.l: New token EXCLUDE_FILE.
2396 * mri.c (mri_draw_tree): Add argument to lang_add_wild.
2397 * scripttempl/elf.sc (CTOR, DTOR): Exclude crtend.o from ctor wildcard.
2398 Reorder sorted and unsorted ctors.
2399 * scripttempl/elfd10v.sc (CTOR, DTOR): Likewise.
2400 * scripttempl/elfd30v.sc (CTOR, DTOR): Likewise.
2401 * scripttempl/elfppc.sc (CTOR, DTOR): Likewise.
2402
2403 1999-03-26 Nick Clifton <nickc@cygnus.com>
2404
2405 * ldlang.c (lang_gc_sections): If entry_symbol is not defined,
2406 default to "start".
2407
2408 1999-03-03 Nick Clifton <nickc@cygnus.com>
2409
2410 * scripttempl/elf.sc: Add explicit placements for the .eh_frame
2411 and .gcc_except_table sections.
2412
2413 Wed Mar 3 09:13:34 1999 Catherine Moore <clm@cygnus.clm>
2414
2415 * scripttempl/elf.sc: Remove .end.ctors and .end.dtors
2416 sections. Reorder .ctors section entries.
2417 * scripttempl/elfd10v.sc: Likewise.
2418 * scripttempl/elfd30v.sc: Likewise.
2419 * scripttempl/elfppc.sc: Likewise.
2420
2421 1999-02-26 Jim Lemke <jlemke@cygnus.com>
2422
2423 * ldmain.c (main): Wrong error msg for -r and --mpc860c0.
2424
2425 1999-02-25 Nick Clifton <nickc@cygnus.com>
2426
2427 * ldlang.c (lang_check_section_addresses): Remove extraneous
2428 backslash.
2429
2430 Thu Feb 25 15:07:24 1999 Catherine Moore <clm@cygnus.com>
2431
2432 * scripttempl/elf.sc: Don't gather .ctor and .dtor sections
2433 for relocateable links.
2434 * scripttempl/elfd10v.sc: Likewise.
2435 * scripttempl/elfd30v.sc: Likewise.
2436 * scripttempl/elfppc.sc: Likewise.
2437
2438 1999-02-22 Jim Lemke <jlemke@cygnus.com>
2439
2440 * ldint.texinfo: remove extraneous right brace.
2441 * ldmain.c (main): initialize and check option "mpc860c0".
2442 * lexsup.c (ld_options, parse_args): add option "mpc860c0".
2443
2444 Wed Feb 17 12:10:06 1999 Stan Cox <scox@cygnus.com>
2445
2446 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Remove special
2447 .reginfo section handling.
2448 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Likewise.
2449 * emulparams/elf32elmip.sh (INITIAL_READONLY_SECTIONS): Removed
2450 * emulparams/elf32ebmip.sh (INITIAL_READONLY_SECTIONS): Removed
2451
2452 1999-02-17 Nick Clifton <nickc@cygnus.com>
2453
2454 Patch from: Scott Bambrough <scottb@corelcomputer.com>
2455
2456 * configure.tgt: Added armv*-*-linux-gnu to $targ_emul
2457 recognition.
2458
2459 Wed Feb 17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2460
2461 * emultempl/armelf_oabi.em
2462 (bfd_elf32_arm_allocate_interworking_sections,
2463 bfd_elf32_arm_get_bfd_for_interworking,
2464 bfd_elf32_arm_process_before_allocation): Define them to use the
2465 old ABI versions of the functions.
2466
2467 Tue Feb 16 16:48:19 1999 Ian Lance Taylor <ian@cygnus.com>
2468
2469 * configure.in: Change AC_PREREQ to 2.13. Change AM_PROG_INSTALL
2470 to AC_PROG_INSTALL. Change AM_EXEEXT to AC_EXEEXT.
2471 * Makefile.am (earmelf_oabi.c): Changes spaces to tab.
2472 * acconfig.h: Remove.
2473 * aclocal.m4: Rebuild.
2474 * configure: Rebuild.
2475 * Makefile.in: Rebuild.
2476
2477 Mon Feb 15 18:21:48 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
2478
2479 * ldexp.h (struct etree_value_type): Change valid onto valid_p.
2480
2481 * ldexp.c (new_abs): Ditto.
2482 (new_rel, new_rel_from_section, fold_binary, invalid, fold_name,
2483 exp_fold_tree, exp_binop, exp_trinop, stat_alloc,
2484 exp_get_abs_int): Ditto
2485
2486 * ldlang.c (print_assignment, lang_size_sections,
2487 lang_do_assignments): Ditto.
2488
2489 1999-02-11 Nick Clifton <nickc@cygnus.com>
2490
2491 * ldlang.c (lang_check_section_addresses): New function: Check
2492 addresses assigned to section for overlaps.
2493 (lang_process): Call lang_check_section_addresses if suitable.
2494
2495 * ld.h: Add new boolean field to args_type structure:
2496 'check_section_addresses'.
2497
2498 * ldmain.c: Initialise check_section_addresses field to true.
2499
2500 * lexsup.c: Add new command line options '--no-check-sections' and
2501 '--check-sections'.
2502
2503 * ld.texinfo: Document new command line options '--check-sections'
2504 and '--no-check-sections'.
2505
2506 1999-02-08 Nick Clifton <nickc@cygnus.com>
2507
2508 * configure.tgt: Add support for StrongARM target.
2509
2510 Wed Feb 3 19:41:01 1999 Ian Lance Taylor <ian@cygnus.com>
2511
2512 * ldctor.c (ldctor_build_sets): Just set SEC_KEEP once. Check for
2513 an owner of a section before using it to look up a reloc type.
2514 Don't set SEC_KEEP for the absolute section.
2515
2516 Mon Feb 1 11:39:46 1999 Catherine Moore <clm@cygnus.com>
2517
2518 * Makefile.am (earmelf_oabi.o): New.
2519 * Makefile.in: Regenerate.
2520 * configure.tgt (arm-*-oabi): New.
2521 (thumb-*-oabi): New.
2522 * emulparams/armelf_oabi.sh: New.
2523 * emultempl/armelf_oabi.em: New.
2524
2525 1999-01-31 17:57:31 1998 Michael Meissner <meissner@cygnus.com>
2526
2527 * scripttempl/elfppc.sc: Add support for -fleading-underscores
2528 switch in all linker generated symbols.
2529
2530 * configure.tgt (powerpc{,le}*-*-vxworks): Add as aliases for
2531 powerpc{,le}-*-eabi.
2532
2533 Wed Jan 20 17:01:48 1999 Ian Lance Taylor <ian@cygnus.com>
2534
2535 * configure.tgt (i[3456]86-*-solaris2*): New target. From Pavel
2536 Roskin <pavel_roskin@geocities.com>.
2537
2538 1999-01-19 Nick Clifton <nickc@cygnus.com>
2539
2540 * ldlang.c (lang_size_sections): Count loadable sections as
2541 contributing to the size of the current segment.
2542
2543 1999-01-15 Nick Clifton <nickc@cygnus.com>
2544
2545 * ldlang.c (lang_size_sections): Only update the current
2546 address of a region if the section just placed into it is an
2547 allocated section.
2548
2549 1999-01-12 Nick Clifton <nickc@cygnus.com>
2550
2551 * Makefile.am: Replace efr30.o with eelf32fr30.o.
2552 * Makefile.in: Regenerate.
2553
2554 * configure.tgt: Replace fr30 with elf32fr30.
2555
2556 * emulparams/elf32fr30.sh: New file: Replaces fr30.sh, and uses
2557 generic elf.sc script. Also replaces the .stack section with a
2558 user definable symbol __stack.
2559
2560 1999-01-11 Nick Clifton <nickc@cygnus.com>
2561
2562 * scripttempl/fr30.sc: Fill .init and .fini sections with NOP
2563 pattern.
2564
2565 1999-01-03 Ken Raeburn <raeburn@cygnus.com>
2566
2567 * Makefile.am (check-DEJAGNU): No longer provide HOSTING_EMU,
2568 HOSTING_CRT0, HOSTING_LIBS; the test suite can extract them from
2569 configure.host and configure.tgt now.
2570 * Makefile.in: Rebuild.
2571
2572 1998-12-27 Ulrich Drepper <drepper@cygnus.com>
2573
2574 * lexsup.c (parse_args, case OPTION_RPATH): Avoid adding duplicate
2575 elements to rpath.
2576
2577 Thu Dec 10 11:12:28 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2578
2579 * Makefile.am (ALL_EMULATIONS): Remove pe-dll.o and deffilep.o.
2580 (ALL_EMUL_EXTRA_OFILES): New variable. Put them here instead.
2581 * configure.in: Set EMUL_EXTRA_OFILES to $(ALL_EMUL_EXTRA_OFILES)
2582 if configuring with all targets.
2583 * configure, Makefile.in, aclocal.m4: Rebuild.
2584
2585 * emultempl/pe.em (pe_enable_stdcall_fixup): Make static.
2586 (pe_dll_do_default_excludes): Removed, unused.
2587 (pe_def_file, pe_dll_export_everything, pe_dll_kill_ats,
2588 pe_dll_stdcall_aliases): Don't initialize them, this file may be
2589 compiled more than once.
2590 * pe-dll.c (pe_def_file, pe_dll_export_everything,
2591 pe_dll_do_default_excludes, pe_dll_kill_ats,
2592 pe_dll_stdcall_aliases): Define and initialize them here instead.
2593 (generate_reloc): Fix allocation of reloc_addresses array to use
2594 bfd_vma instead of unsigned long. Fix element size in qsort call.
2595 (reloc_sort): Compare pointers to bfd_vma instead of unsigned
2596 long.
2597
2598 Mon Dec 7 21:10:09 1998 J.J. van der Heijden <j.j.vanderheijden@student.utwente.nl>
2599
2600 * configure.tgt (i[3456]86-*-mingw32*): Add cygwin target specific
2601 files.
2602
2603 Sun Dec 6 16:33:33 1998 Ian Lance Taylor <ian@cygnus.com>
2604
2605 * configure.tgt (m68*-*-gnu*): New target. From Aymeric Vincent
2606 <aymeric.vincent@emi.u-bordeaux.fr>.
2607
2608 1998-12-04 Nick Clifton <nickc@cygnus.com>
2609
2610 * emulparams/fr30.sh (TEXT_START_ADDR): Change TEXT_START_ADDR
2611 from 0x100000 to 0x10000 so that it fits in 20 bits.
2612
2613 Sat Nov 28 22:32:20 1998 Ian Lance Taylor <ian@cygnus.com>
2614
2615 * ldemul.h (ldemul_recognized_file): Declare.
2616
2617 Sat Nov 28 22:30:55 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2618
2619 * ldlang.c (lang_add_wild): Don't pretend that there is an input
2620 file if the filename is a wildcard pattern.
2621
2622 1998-11-25 DJ Delorie <dj@cygnus.com>
2623
2624 * ldemul.h (ld_emulation_xfer_struct): new hook "recognized_file"
2625 * ldemul.c (ldemul_recognized_file): new function, new hook
2626 * ldint.texinfo: document new hook.
2627 * ldlang.c (load_symbols): call recognized_hook for all objects we
2628 do recognize, in case the emulation needs to handle them
2629 specially. PE DLLs use this.
2630 * pe-dll.c (pe_dll_generate_def_file): take out hack and debug
2631 printfs
2632 * emultempl/pe.em (gld_i386_recognized_file): new function
2633 (gld_i486_unrecognized_file): take out hack
2634
2635 1998-11-23 DJ Delorie <dj@cygnus.com>
2636
2637 * pe-dll.c (fill_edata): fill in timestamp
2638 (make_head): name object files sequentially to ensure
2639 they link in the right order.
2640 (make_tail): same here
2641 (pe_process_import_defs): use sequential names for bfds to ensure
2642 proper link order.
2643 (pe_implied_import_dll): new function; handles linking directly
2644 against DLLs by simulating IMPORTS directives. * emultempl/pe.em
2645 (gld_i386pe_before_parse): hack bfd to not recognize .dll files
2646 via bfd_pe_dll_not_recognized_hack
2647
2648 1998-11-23 DJ Delorie <dj@cygnus.com>
2649
2650 * emultempl/pe.em (gld_i386pe_parse_args): Conditionalize call to
2651 pe_dll_add_excludes
2652
2653 Mon Nov 23 14:36:18 1998 Nick Clifton <nickc@cygnus.com>
2654
2655 * emultempl/pe.em (after_parse): Only create an undefined entry
2656 symbol if one has been specified.
2657
2658 1998-11-23 DJ Delorie <dj@cygnus.com>
2659
2660 * emultempl/pe.em (gld_i386pe_after_open): call
2661 pe_process_import_defs
2662 * pe-dll.c (pe_dll_generate_def_file): calculate BASE from
2663 pe_data, only print if actually set. Print version only if
2664 set.
2665 (save_relocs): save relocs for both input and output.
2666 (make_one): support internal/external different names.
2667 (pe_dll_generate_implib): support new make_one
2668 (pe_process_import_defs): new function; handles IMPORT
2669 directives in .def files.
2670
2671 Fri Nov 20 13:06:49 1998 Nick Clifton <nickc@cygnus.com>
2672
2673 * ldmisc.c (vfinfo): Cope with empty symbol names.
2674
2675 Thu Nov 19 13:31:15 1998 Nick Clifton <nickc@cygnus.com>
2676
2677 * scripttempl/pe.sc: Add provision of '_end' symbol.
2678
2679 Wed Nov 18 18:18:43 1998 Geoffrey Noer <noer@cygnus.com>
2680
2681 * configure.tgt: change refs from cygwin32* to cygwin*.
2682 * aclocal.m4: regenerate
2683 * configure.in: don't need to call AM_CYGWIN32.
2684 * configure: regenerate
2685
2686 Mon Nov 16 22:14:07 1998 DJ Delorie <dj@cygnus.com>
2687
2688 * emultempl/pe.em (gld_i386_finish): generate import library
2689 * deffile.h: add hint member.
2690 * pe-dll.c (pe_dll_generate_implib): New function with helpers;
2691 generates the import library directly from the export table.
2692 (fill_edata): remember the actual hint for the import library.
2693
2694 Sat Nov 14 14:36:24 1998 Ian Lance Taylor <ian@cygnus.com>
2695
2696 * ld.1: Some cleanups from NOKUBI Hirotaka <hnokubi@yyy.or.jp>.
2697
2698 Thu Nov 12 19:21:57 1998 Dave Brolley <brolley@cygnus.com>
2699
2700 * po/ld.pot: Regenerated.
2701 * po/POTFILES.in: Regenerated.
2702 * configure: Regenerated.
2703 * aclocal.m4: Regenerated.
2704 * Makefile.in: Regenerated.
2705
2706 Wed Nov 11 18:10:15 1998 DJ Delorie <dj@cygnus.com>
2707
2708 * pe-dll.c (generate_reloc): don't output PE relocs for sections
2709 that won't be loaded.
2710
2711 Wed Nov 11 13:44:54 1998 DJ Delorie <dj@cygnus.com>
2712
2713 * pe-dll.c (fill_edata): don't strip underscores
2714
2715 Tue Nov 10 21:28:19 1998 DJ Delorie <dj@cygnus.com>
2716
2717 * ld.texinfo: added i386pe option summary
2718
2719 Tue Nov 10 17:53:17 1998 DJ Delorie <dj@cygnus.com>
2720
2721 * pe-dll.c (process_def_file): properly note undefined exported
2722 symbols, clean up old code.
2723 (pe_dll_generate_def_file): don't crash if pe_def_file is NULL
2724 * emultempl/pe.em (gld_i386_parse_args): add
2725 (en/dis)able-stdcall-fixups
2726 (pe_fixup_stdcalls): warn about stdcall fixups
2727 (gld_i386_unrecognized_file): make exported symbols undefs so that
2728 archive members get pulled in
2729
2730 Tue Nov 10 14:50:51 1998 Catherine Moore <clm@cygnus.com>
2731
2732 * scripttempl/elfd10v.sc: Add KEEP attribute to .init,
2733 .fini, .dtors and .ctors. Add .data and .text
2734 wildcards to support section garbage collection.
2735
2736 Mon Nov 9 22:52:50 1998 DJ Delorie <dj@indy.delorie.com>
2737
2738 * deffilep.y: properly handle relocs with multiple def_files,
2739 cache import module names
2740
2741 Mon Nov 9 22:44:58 1998 DJ Delorie <dj@cygnus.com>
2742
2743 * pe-dll.c (process_def_file): don't assume exports won't move
2744 during a realloc
2745
2746 Mon Nov 9 16:41:30 1998 DJ Delorie <dj@cygnus.com>
2747
2748 * pe-dll.c: New file; direct support for PE DLLs
2749 * deffile.h: New file; direct support for PE DLLs
2750 * deffilep.y: New file; direct support for PE DLLs
2751 * emultempl/pe.em: add direct support for PE DLLs
2752 * configure.tgt: allow target-specific extra files
2753 * configure.in: allow target-specific extra files
2754 * ldlang.c (lang_add_assignment): return the assignment so that
2755 one can change the value later based on the object files (pe-dll
2756 DEF files do this)
2757 * ldint.texinfo: add section for emulation walkthrough
2758 * Makefile.am: add new files and target-specific extra files
2759 * emultempl/pe.em (gld_i386_list_options): list dll-specific
2760 options.
2761 * pe-dll.c (process_def_file): auto-export everything if
2762 nothing is otherwise exported.
2763
2764 Wed Nov 4 16:39:18 1998 Nick Clifton <nickc@cygnus.com>
2765
2766 * Makefile.am: Add support for FR30 target.
2767 * configure.tgt: Add support for FR30 target.
2768 * Makefile.in: Regenerate.
2769 * emulparams/fr30.sh: New file.
2770 * scripttemp/fr30.sc: New file.
2771
2772 Mon Nov 2 14:47:15 1998 Catherine Moore <clm@cygnus.com>
2773
2774 * ldmain.c (main): Don't report error for dynamic links and
2775 --gc-sections.
2776
2777 1998-10-26 16:05 Ulrich Drepper <drepper@cygnus.com>
2778
2779 * lexsup.c (ld_options): Change text of -O to Optimize output file".
2780 (parse_args): Set link_info.optimize based on -O argument.
2781 * ldmain.c (main): Initialize link_info.optimze to false.
2782 * ld.texinfo: Describe -O option.
2783 * ld.1: Likewise.
2784
2785 Mon Oct 12 14:29:56 1998 Nick Clifton <nickc@cygnus.com>
2786
2787 * scripttempl/v850.sc: Move .sbss and .scommon sections into their
2788 own segment, so that they can be next to the .bss section and so
2789 initialised by the same piece of code.
2790
2791 Fri Oct 9 15:59:52 1998 Catherine Moore <clm@cygnus.com>
2792
2793 * scripttempl/elf.sc: Merge .sdata.* etc sections.
2794 * ldctor.c (ldctor_build_sets): Set SEC_KEEP for
2795 ctor sections.
2796
2797 Mon Oct 5 09:40:43 1998 Catherine Moore <clm@cygnus.com>
2798
2799 * ldmain.c (main): Error if --gc-sections and
2800 dyanmic linking.
2801 * scripttempl/v850.sc: Add KEEP attribute to .init,
2802 .fini, .dtors and .ctors. Add .data and .text
2803 wildcards to support section garbage collection.
2804
2805 Wed Sep 30 11:19:15 1998 Nick Clifton <nickc@cygnus.com>
2806
2807 * scripttempl/v850.sc: Rename .call_table section to
2808 .call_table_data and create a new section called
2809 .call_table_text.
2810
2811 Sun Sep 20 00:43:26 1998 Ian Lance Taylor <ian@cygnus.com>
2812
2813 * scripttempl/elf.sc: Add alignment at the end of the .bss
2814 section, so that it is included in the memsize of the segment.
2815
2816 Fri Sep 18 13:42:42 1998 Catherine Moore <clm@cygnus.com>
2817
2818 * emultempl/elf32.em (gld_place_orphan): Don't process for
2819 sections with SEC_EXCLUDE flag.
2820
2821 Fri Sep 4 09:24:02 1998 Nick Clifton <nickc@cygnus.com>
2822
2823 * emulparams/d30velf.sh (TEXT_SIZE): Increased to 2000K.
2824 (DATA_SIZE): Increased to 2000K.
2825
2826 Thu Sep 3 17:30:58 1998 Richard Henderson <rth@cygnus.com>
2827
2828 * emulparams/d10velf.sh (TEMPLATE_NAME): Use elf32.
2829
2830 Mon Aug 31 01:06:00 1998 Catherine Moore <clm@cygnus.com>
2831
2832 * Makefile.am: Change armelf.sc to elf.sc
2833 * Makefile.in: Regenerate.
2834
2835 Mon Aug 31 11:12:04 1998 Catherine Moore <clm@cygnus.com>
2836
2837 * emulparams/armelf.sh: Change SCRIPT_NAME to
2838 elf. Change TEXT_START_ADDR to 0x8000. Define
2839 OTHER_TEXT_SECTIONS, OTHER_BSS_SYMBOLS and
2840 OTHER_BSS_END_SYMBOLS.
2841 * scripttempl/elf.sc: Modify to use
2842 OTHER_BSS_END_SYMBOLS.
2843 * scripttempl/elfarm.sc: Remove file.
2844
2845 Tue Aug 18 12:05:34 1998 Catherine Moore <clm@cygnus.com>
2846
2847 * emultempl/armelf.em (gld_armelf_before_allocation):
2848 Add bfd_ prefix to elf32_arm_process_before_allocation
2849 and elf32_arm_allocate_interworking_sections.
2850 (gld_armelf_after_open): Add bfd_ prefix to
2851 elf32_arm_get_bfd_for_interworking.
2852
2853 Fri Aug 14 15:34:29 1998 Ian Lance Taylor <ian@cygnus.com>
2854
2855 * Makefile.am: Rebuild dependencies.
2856 * Makefile.in: Rebuild.
2857
2858 * ldgram.y: Include "ldctor.h".
2859 (statement): Accept SORT around CONSTRUCTORS.
2860 * ldctor.c: Include <ctype.h>.
2861 (constructors_sorted): New global variable.
2862 (ctor_prio, ctor_cmp): New static functions.
2863 (ldctor_build_sets): Sort constructors if requested.
2864 * ldctor.h (constructors_sorted): Declare.
2865 * ldlang.c (print_statement): Print sorted CONSTRUCTORS
2866 correctly.
2867 * scripttempl/elf.sc: Add sort around CONSTRUCTORS.
2868 * ld.texinfo (Output Section Keywords): Document SORT
2869 (CONSTRUCTORS).
2870
2871 Thu Aug 13 12:20:39 1998 Catherine Moore <clm@cygnus.com>
2872
2873 * emulparams/armelf.sh: Define TEMPLATE_NAME to armelf.
2874 * scripttempl/elfarm.sc: Include .glue_7t and .glue7
2875 sections.
2876 * emultempl/armelf.em: New file.
2877
2878 Thu Aug 13 12:52:45 1998 H.J. Lu <hjl@gnu.org>
2879
2880 * Makefile.am (ld.dvi): Use " instead of ' for MAKEINFO.
2881 * Makefile.in: Rebuild.
2882
2883 Tue Aug 11 16:17:01 1998 Catherine Moore <clm@cygnus.com>
2884
2885 * scripttempl/elfarm.sc: Change text start address
2886 back to zero.
2887
2888 Tue Aug 11 10:01:12 1998 Jeffrey A Law (law@cygnus.com)
2889
2890 * emulparms/mn10200.sh (MAX_PAGESIZE): Define to 1.
2891 * emulparms/mn10300.sh (MAX_PAGESIZE): Define to 1.
2892
2893 Sun Aug 9 20:31:27 1998 Catherine Moore <clm@cygnus.com>
2894
2895 * scripttempl/elfarm.sc: Set text start address to
2896 0x8000. Add __bss_end definition.
2897
2898 Sat Aug 1 11:47:37 1998 Catherine Moore <clm@cygnus.com>
2899
2900 * scripttempl/elfarm.sc: New file.
2901 * emulparams/armelf.sh: Set SCRIPT_NAME to elfarm.
2902
2903 Fri Jul 31 15:56:16 1998 Catherine Moore <clm@cygnus.com>
2904
2905 * emulparams/armelf.sh: New file.
2906 * configure.tgt: Recognize thumb-elf and arm-elf.
2907 * Makefile.am (earmelf.o): New.
2908 * Makefile.in: Rebuild.
2909
2910 Fri Jul 24 12:00:57 1998 Ian Lance Taylor <ian@cygnus.com>
2911
2912 * Makefile.am (install-exec-local): Don't remove the file before
2913 checking whether $(bindir) == $(tooldir)/bin. From Maciej
2914 W. Rozycki <macro@ds2.pg.gda.pl>.
2915 * Makefile.in: Rebuild.
2916
2917 * configure.tgt: Recognize h8[35]00*-coff* as well as -hms*.
2918
2919 Thu Jul 23 11:15:12 1998 Ian Lance Taylor <ian@cygnus.com>
2920
2921 * scripttempl/aout.sc: If ALIGNMENT is defined, use it to set
2922 alignment of end symbol.
2923 * scripttempl/elf.sc: Likewise.
2924 * emulparams/sun4.sh (ALIGNMENT): Define.
2925 * emulparams/elf32_sparc.sh (ALIGNMENT): Define.
2926 * ldint.texinfo (emulation parameters): Document ALIGNMENT.
2927
2928 * lexsup.c (parse_args): Add missing break statement.
2929
2930 * ldlang.c (lang_gc_sections_1): Add default case to switch to
2931 avoid warnings.
2932
2933 Tue Jul 14 15:42:17 1998 Richard Henderson <rth@cygnus.com>
2934
2935 * configure.tgt (i?86-*-beos{pe,elf,}*): Recognize.
2936 * Makefile.am (ei386beos.o): New.
2937 * emulparams/i386beos.sh: New file.
2938 * emultempl/beos.em, scripttempl/i386beos.sc: New file.
2939
2940 Tue Jul 14 15:35:42 1998 Richard Henderson <rth@cygnus.com>
2941
2942 * lexsup.c: New option --version-exports-section.
2943 * ld.h (struct args_type): Add version_exports_section.
2944 * ldlang.c (lang_do_version_exports_section): New function.
2945 (lang_process): Call it.
2946
2947 Mon Jul 13 13:20:23 1998 Steve Chamberlain <sac@transmeta.com>
2948
2949 * ldlex.l: Accept ASSERT.
2950 * ldgram.y (exp): Add ASSERT_K case.
2951 * ldexp.h (node_type): Add etree_assert to node_class enum.
2952 (etree_type): Add assert_s field.
2953 (exp_assert): Declare.
2954 * ldexp.c (exp_fold_tree): Handle etree_assert.
2955 (exp_assert): New function.
2956 (exp_print_tree): Handle etree_assert.
2957 * ld.texinfo (Miscellaneous Commands): Document ASSERT.
2958
2959 Wed Jul 8 14:03:12 1998 Ian Lance Taylor <ian@cygnus.com>
2960
2961 * ldgram.y: Change MAX to MAX_K and MIN to MIN_K, to avoid
2962 conflicts with system header files. Change all uses.
2963
2964 * Makefile.am (MAINTAINERCLEANFILES): Define.
2965 * Makefile.in: Rebuild.
2966
2967 Tue Jul 7 18:03:22 1998 Ian Lance Taylor <ian@cygnus.com>
2968
2969 * Makefile.am (ldver.texi): New target.
2970 (ld.info, ld.dvi): Depend upon ldver.texi.
2971 * ld.texinfo: Include ldver.texi. Mention version number on title
2972 page and in top node.
2973 * Makefile.in: Rebuild.
2974
2975 Mon Jul 6 14:55:13 1998 Ian Lance Taylor <ian@cygnus.com>
2976
2977 * configure.tgt (i[3456]86-*-solaris*): New target.
2978
2979 Fri Jul 3 14:19:06 1998 Ian Lance Taylor <ian@cygnus.com>
2980
2981 * ldlang.c (wild_section): Don't get an assertion failure if the
2982 section is discarded.
2983
2984 * scripttempl/pe.sc: Use SORT to sort sections appropriately.
2985 * emultempl/pe.em (sort_by_file_name): Remove.
2986 (sort_by_section_name): Remove.
2987 (sort_sections_1, sort_sections): Remove.
2988 (gld_${EMULATION_NAME}_before_allocation): Don't call
2989 sort_sections.
2990 (hold_section, hold_section_name): New static variables.
2991 (hold_use, hold_text, hold_rdata, hold_data, hold_bss): Likewise.
2992 (gld_${EMULATION_NAME}_place_orphan): Rewrite. Look for a good
2993 place to put the section. Align the section. Sort the input
2994 sections by name.
2995 (gld_${EMULATION_NAME}_place_section): New static function.
2996
2997 * ldlang.c (wild_sort): When sorting by file name, sort by archive
2998 name first.
2999
3000 * emultempl/pe.em (set_pe_subsystem): Don't call
3001 ldlang_add_undef.
3002 (gld_${EMULATION_NAME}_after_parse): New static function.
3003 (ld_${EMULATION_NAME}_emulation): Use new after_parse function
3004 rather than after_parse_default.
3005
3006 * ldgram.y (extern_name_list): Do not require symbols to be
3007 separated by commas.
3008 (ifile_p1): Add EXTERN.
3009 * ldlex.l: Accept EXTERN in BOTH and SCRIPT mode as well as MRI
3010 mode.
3011 * ld.texinfo (Options): Mention that EXTERN is equivalent to -u.
3012 (Miscellaneous Commands): Document EXTERN.
3013
3014 Wed Jul 1 19:40:34 1998 Richard Henderson <rth@cygnus.com>
3015
3016 * ld.h (args_type): Add gc_sections.
3017 * ldgram.y (ldgram_had_keep, KEEP): New.
3018 (input_section_spec_no_keep): Rename from old input_section_spec.
3019 (input_section_spec): New. Recognize KEEP.
3020 * ldlang.c (wild_section): Handle keep sections.
3021 (lang_gc_wild_section, lang_gc_wild_file, lang_gc_wild): New.
3022 (lang_gc_sections_1, lang_gc_sections): New.
3023 (lang_process): Invoke lang_gc_sections.
3024 (lang_add_wild): Add keep argument. Update all callers.
3025 * ldlang.h (lang_wild_statement_struct): Add keep_sections.
3026 * ldlex.l (KEEP): Match it.
3027 * ldmain.c (main): Error on -r and --gc-sections.
3028 * lexsup.c: Add --gc-sections.
3029
3030 * scripttempl/elf.sc: Merge .text.* etc sections appropriately.
3031 Mark startup sections with KEEP.
3032 * scripttempl/elfppc.sc: Likewise.
3033
3034 * ld.texinfo: Update for --gc-sections and KEEP.
3035
3036 Wed Jul 1 15:21:20 1998 Ian Lance Taylor <ian@cygnus.com>
3037
3038 From Peter Jordan <pjordan@chla.usc.edu>:
3039 * scripttempl/i386go32.sc: Correct constructor handling for -u.
3040
3041 Tue Jun 23 15:17:27 1998 Ian Lance Taylor <ian@cygnus.com>
3042
3043 * Makefile.am (install-data-local): Make ldscripts subdirectory.
3044 * Makefile.in: Rebuild.
3045
3046 Tue Jun 23 15:17:04 1998 Mike Stump <mrs@wrs.com>
3047
3048 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
3049 with the program transform name.
3050 * Makefile.in: Rebuild.
3051
3052 Sun Jun 21 23:55:16 1998 Jeffrey A Law (law@cygnus.com)
3053
3054 * ld.texinfo: Note that -relax may make symbolic debugging
3055 impossible on some platforms.
3056
3057 Tue Jun 16 12:51:13 1998 Geoff Keating <geoffk@ozemail.com.au>
3058
3059 * Makefile.am (Makefile): Remove target.
3060 (config.status): New target.
3061 * Makefile.in: Rebuild.
3062
3063 * configure.host (powerpc*-*-linux-gnu*): New host.
3064
3065 Fri Jun 12 17:38:07 1998 Doug Evans <devans@seba.cygnus.com>
3066
3067 * scripttempl/elf.sc (INPUT_FILES): Optional INPUT spec.
3068
3069 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Change top of
3070 stack to 8MB.
3071
3072 Fri Jun 12 19:33:17 1998 Ian Lance Taylor <ian@cygnus.com>
3073
3074 * Makefile.am (HFILES): Remove config.h.
3075 (EMULATION_OFILES, POTFILES): Move patch of May 14 from
3076 Makefile.in to Makefile.am.
3077 (earmcoff.c): Depend upon armcoff.em, not generic.em.
3078 * po/Make-in (all-yes): Correct misspelling in $(PACKAGE).
3079 ($(srcdir)/$(PACKAGE).pot): Pass -C to $(XGETTEXT).
3080 * Makefile.in, po/POTFILES.in, po/ld.pot: Rebuild.
3081
3082 Fri Jun 12 13:43:17 1998 Tom Tromey <tromey@cygnus.com>
3083
3084 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
3085 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
3086
3087 Tue Jun 9 09:36:48 1998 Nick Clifton <nickc@cygnus.com>
3088
3089 * ldlang.c (lang_finish): Add CONST type modifier to declaration
3090 of 'send'.
3091
3092 Fri Jun 5 18:19:59 1998 Ian Lance Taylor <ian@cygnus.com>
3093
3094 * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
3095 config.has_shared to true.
3096 * emultempl/linux.em (gld${EMULATION_NAME}_before_parse):
3097 Likewise.
3098 * emultempl/sunos.em (gld${EMULATION_NAME}_before_parse):
3099 Likewise.
3100
3101 Tue Jun 2 12:55:03 1998 Ian Lance Taylor <ian@cygnus.com>
3102
3103 * ldlang.c (lang_finish): If the entry symbol is not found, try
3104 parsing it as a number.
3105 * ld.texinfo (Options): Document this.
3106
3107 Mon Jun 1 14:01:20 1998 Ian Lance Taylor <ian@cygnus.com>
3108
3109 * ld.texinfo (Input Section Wildcards): Document SORT keyword.
3110
3111 Mon May 18 12:42:53 1998 Doug Evans <devans@canuck.cygnus.com>
3112
3113 * ld.h (ld_config_type): New member has_shared.
3114 * ldmain.c (main): Initialize it.
3115 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set it.
3116 * lexsup.c (parse_args): Treat -shared as error if not supported.
3117
3118 Mon May 18 13:14:43 1998 Ian Lance Taylor <ian@cygnus.com>
3119
3120 From Jason Merrill <jason@cygnus.com>:
3121 * ldlang.c (wild_sort): Correct order of sort.
3122 * scripttempl/elf.sc: Put *crtbegin.o before other .ctors and
3123 .dtors.
3124 * scripttempl/elfd10v.sc: Likewise.
3125 * scripttempl/elfd30v.sc: Likewise.
3126 * scripttempl/elfppc.sc: Likewise.
3127
3128 Fri May 15 00:22:35 1998 Ian Lance Taylor <ian@cygnus.com>
3129
3130 * ldlex.l: Recognize keyword SORT.
3131 * ldgram.y (current_file): Change to struct wildcard_spec.
3132 (%union): Add new fields cname and wildcard.
3133 (wildcard_name, wildcard_spec): New nonterminals.
3134 (file_NAME_list): Use wildcard_spec.
3135 (input_section_spec): Change current_file usage.
3136 * ld.h (struct wildcard_spec): Define.
3137 * ldlang.h (lang_wild_statement_struct): Add new fields
3138 sections_sorted and filenames_sorted.
3139 (lang_add_wild): Update declaration.
3140 * ldlang.c (wild_sort): New static function.
3141 (wild_section): Use wild_sort.
3142 (print_wild_statement): Print sorting information.
3143 (lang_add_wild): Add new parameters sections_sorted and
3144 filenames_sorted. Change all callers.
3145 * mri.c (mri_draw_tree): Update calls to lang_add_wild.
3146 * scripttempl/elf.sc: Sort .ctors.* and .dtors.* by section name.
3147 * scripttempl/elfd10v.sc: Likewise.
3148 * scripttempl/elfd30v.sc: Likewise.
3149 * scripttempl/elfppc.sc: Likewise.
3150
3151 Thu May 14 18:39:16 1998 Richard Henderson <rth@cygnus.com>
3152
3153 * emulparams/m32relf.sh (TEMPLATE_NAME): Define.
3154
3155 Thu May 14 14:51:24 1998 Nick Clifton <nickc@cygnus.com>
3156
3157 * ldemul.h: Add new prototype: ldemul_list_emulation_options.
3158 (ld_emulation_xfer_struct): Add new field: list_options.
3159 * ldemul.c (ldemul_list_options): New function. Call the
3160 list_options field of the ld_emulation_xfer_struct for each
3161 supported emulation, if such a function is present.
3162 * lexsup.c (help): Call ldemul_list_emulation_options.
3163 * emultempl/pe.em (gld_<>_list_options): New function. Describe
3164 the pe emulation specific command line options.
3165 * emultempl/armcoff.em (gld<>_list_options): New function.
3166 Describe the armcoff emulation specific command line options.
3167
3168 * emultempl/pe.em: Add a new command line option:
3169 --support-old-code.
3170 * emultempl/armcoff.em: Ditto.
3171 * ld.texinfo: Document the --support-old-code option.
3172
3173 * Makefile.in: Add emulation files for POTFILES.in target.
3174 * emultempl/pe.em: Internationalise suitable strings.
3175 * emultempl/armcoff.em: Internationalise suitable strings.
3176 * po/POTFILES.in: Rebuilt.
3177
3178 Sun May 10 22:36:30 1998 Jeffrey A Law (law@cygnus.com)
3179
3180 * po/Make-in (install-info): New target.
3181
3182 Tue Apr 28 19:18:30 1998 Tom Tromey <tromey@cygnus.com>
3183
3184 * ldmain.c (main): Conditionally call setlocale.
3185 * ld.h: Include <locale.h> if HAVE_LOCALE_H.
3186 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
3187
3188 Mon Apr 27 11:56:21 1998 Ian Lance Taylor <ian@cygnus.com>
3189
3190 * configure.in: Change version number to 2.9.4
3191 * configure: Rebuild.
3192
3193 * ld.texinfo (Options) [-rpath-link]: Mention ld.so.conf.
3194
3195 Based on patch from H.J. Lu <hjl@gnu.org>:
3196 * emultempl/elf32.em (global_vercheck_needed): New file static
3197 variable.
3198 (global_vercheck_failed): New file static variable.
3199 (gld${EMULATION_NAME}_after_open): Check for shared libraries
3200 twice, once with force set to 0 and once with it set to 1.
3201 (gld${EMULATION_NAME}_check_ld_so_conf): Add force parameter.
3202 Change all callers.
3203 (gld${EMULATION_NAME}_search_needed): Likewise.
3204 (gld${EMULATION_NAME}_try_needed): Likewise. If not force, check
3205 whether the libraries needs any incompatible versions.
3206 (gld${EMULATION_NAME}_vercheck): New static function.
3207
3208 Wed Apr 22 16:01:35 1998 Tom Tromey <tromey@cygnus.com>
3209
3210 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
3211
3212 Wed Apr 22 12:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
3213
3214 * Makefile.am (check-DEJAGNU): Add $(INTLLIBS) to LIBIBERTY when
3215 invoking runtest.
3216 * Makefile.in: Rebuild.
3217
3218 * lexsup.c (parse_args): Change -l options into --library options
3219 to avoid confusion between -li and -library.
3220
3221 * ld.texinfo (MEMORY): Clarify use of >REGION.
3222
3223 Tue Apr 21 23:12:40 1998 Tom Tromey <tromey@scribbles.cygnus.com>
3224
3225 * Many files: Added gettext invocations around user-visible
3226 strings.
3227 * ld.h: Added gettext-related includes and defines.
3228 * ldmain.c: Call setlocale, bindtextdomain, textdomain.
3229 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
3230 HAVE_LC_MESSAGES): Define.
3231 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
3232 po/Makefile. Use AM_PROG_LEX.
3233 (TDIRS): AC_SUBST early on, to avoid having value split when it
3234 happens to cross line 90 of the generated sed script.
3235 * Makefile.am (SUBDIRS): New macro.
3236 (POTFILES): Likewise.
3237 (po/POTFILES.in): New target.
3238 (ld_new_LDADD): Added INTLLIBS.
3239 (ld_new_DEPENDENCIES): Added INTLDEPS.
3240 * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
3241
3242 Tue Apr 21 23:07:07 1998 Ian Lance Taylor <ian@cygnus.com>
3243
3244 * ld.texinfo (Simple Example): Rewrite a few things as suggested
3245 by Nick Clifton <nickc@cygnus.com>.
3246 (PROVIDE): Likewise.
3247
3248 Tue Apr 21 09:55:06 1998 Nick Clifton <nickc@cygnus.com>
3249
3250 * emultempl/pe.em: Rename external arm interworking functions
3251 to conform to BFD naming conventions. Add code to _after_open()
3252 function to obtain a bfd for use by the interworking code.
3253
3254 * emultempl/armcoff.em: Rename external arm interworking functions
3255 to conform to BFD naming conventions. Add new _after_open()
3256 function to obtain a bfd for use by the interworking code.
3257
3258 Sun Apr 19 19:23:09 1998 Richard Henderson <rth@cygnus.com>
3259
3260 * ldlang.c (lang_size_sections) [case lang_assignment_statement_enum]:
3261 Update dot and the default memory section even when relaxing.
3262
3263 Sat Apr 18 18:41:12 1998 Richard Henderson <rth@cygnus.com>
3264
3265 * ldlang.c (lang_one_common): Manipulate the section's cooked size
3266 rather than its raw size.
3267
3268 Tue Apr 7 13:35:29 1998 H.J. Lu <hjl@gnu.org>
3269
3270 * configure.in (TESTBFDLIB): New. Defined and substituted.
3271 * Makefile.am (TESTBFDLIB): Changed to @TESTBFDLIB@.
3272 * configure, Makefile.in: Rebuild.
3273
3274 Mon Apr 6 15:33:39 1998 Ian Lance Taylor <ian@cygnus.com>
3275
3276 * Makefile.am (ld.info): Invoke makeinfo with -I options directly
3277 rather than relying on default rule. Don't depend upon
3278 bfdsumm.texi.
3279 (ld.dvi): Likewise.
3280 (bfdsumm.texi): Remove target.
3281 (CLEANFILES): Take bfdsumm.texi out of value.
3282 * Makefile.in: Rebuild.
3283
3284 Sun Apr 5 13:07:57 1998 Ian Lance Taylor <ian@cygnus.com>
3285
3286 * scripttempl/pe.sc: Use shell variables to avoid depending upon
3287 how $ is handled when expanding a shell substitution.
3288
3289 Fri Apr 3 00:56:50 1998 Ian Lance Taylor <ian@cygnus.com>
3290
3291 * Makefile.am (MOSTLYCLEANFILES): Add ld.log and ld.sum.
3292 (DISTCLEANFILES): Add site.exp and site.bak.
3293 * Makefile.in: Rebuild.
3294
3295 * configure.in: Put the tdirs in a file and use AC_SUBST_FILE,
3296 rather than in a shell variable and using AC_SUBST.
3297 * Makefile.am (DISTCLEANFILES): Remove ldscripts. Add tdirs.
3298 (distclean-local): New target.
3299 * configure, Makefile.in: Rebuild.
3300
3301 * ld.texinfo: Completely rewrite linker script documentation.
3302
3303 Mon Mar 30 12:47:33 1998 Ian Lance Taylor <ian@cygnus.com>
3304
3305 * configure.in: Set version to 2.9.1.
3306 * configure: Rebuild.
3307
3308 * Branched binutils 2.9.
3309
3310 Sat Mar 28 16:48:19 1998 Ian Lance Taylor <ian@cygnus.com>
3311
3312 * Makefile.am (MOSTLYCLEANFILES): Remove tmpdir.
3313 (mostlyclean-local): New target to remove tmpdir.
3314 * Makefile.in: Rebuild.
3315
3316 Fix some gcc -Wall warnings:
3317 * ldcref.c (output_cref): Add casts to avoid warnings.
3318 * ldfile.c (ldfile_add_arch): Likewise.
3319 * ldlang.c (lang_leave_overlay_section): Likewise.
3320 * lexsup.c (OPTION_COUNT): Likewise.
3321 (parse_args): Likewise.
3322 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan):
3323 Likewise.
3324 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Likewise.
3325 * ldlang.c (lang_check): Initialize variables to avoid warnings.
3326 * ldwrite.c (build_link_order): Likewise.
3327 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Likewise.
3328 * emultempl/armcoff.em (gld${EMULATION_NAME}_before_allocation):
3329 Remove unused variables.
3330
3331 * Makefile.am (MOSTLYCLEANFILES): Correct name (was
3332 MOSTCLEANFILES).
3333 * Makefile.in: Rebuild.
3334
3335 Fri Mar 27 16:39:25 1998 Ian Lance Taylor <ian@cygnus.com>
3336
3337 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Put
3338 ARM code inside ifdef TARGET_IS_armpe.
3339
3340 Wed Mar 25 11:34:13 1998 Ian Lance Taylor <ian@cygnus.com>
3341
3342 Based on patch from H.J. Lu <hjl@gnu.org>:
3343 * Makefile.am (LDDISTSTUFF): New variable.
3344 (diststuff): New target.
3345 * Makefile.in: Rebuild.
3346
3347 * scripttempl/pe.sc: Only include .idata\$[0-7] in .idata when
3348 relocating.
3349
3350 Tue Mar 24 15:59:29 1998 Nick Clifton <nickc@cygnus.com>
3351
3352 * scripttempl/pe.sc (.text): Add .glue_7 and .glue_7t sections to
3353 hold Arm/Thumb stubs.
3354
3355 * emultempl/pe.em (gld_pe_before_allocation): Call
3356 arm_process_before_allocation (for ARM/Thumb targets) in order to
3357 gather interworking stb information.
3358
3359 Mon Mar 23 18:54:15 1998 Joel Sherrill <joel@OARcorp.com>
3360
3361 * configure.tgt: (sh*-*-rtems*): Switched from ELF to COFF.
3362
3363 Fri Mar 20 19:17:13 1998 Ian Lance Taylor <ian@cygnus.com>
3364
3365 * aclocal.m4, configure: Rebuild with libtool 1.2.
3366
3367 Thu Mar 19 14:54:45 1998 Geoffrey Noer <noer@cygnus.com>
3368
3369 * scripttempl/pe.sc: The Cygwin32 library uses a .data$nocopy
3370 section to avoid copying certain data on fork. The linker used to
3371 include this between __data_start__ and __data_end__, but that
3372 breaks building the cygwin32 dll. The fix is to rename the
3373 section ".data_cygwin_nocopy" and explictly include it after
3374 __data_end__.
3375
3376 Wed Mar 18 09:42:24 1998 Nick Clifton <nickc@cygnus.com>
3377
3378 * configure.tgt (targ_extra_emuls): Add thumb-pe target.
3379
3380 Sun Mar 8 23:34:14 1998 Stan Cox <scox@equinox.cygnus.com>
3381
3382 * configure.tgt (sparclite*-*-elf): Added.
3383
3384 Mon Mar 2 19:24:08 1998 Michael Meissner <meissner@cygnus.com>
3385
3386 * ldlang.c (lang_size_sections): If the default memory region is
3387 *default*, see if there is a memory region that could be used.
3388
3389 Thu Feb 26 17:09:53 1998 Michael Meissner <meissner@cygnus.com>
3390
3391 * scripttempl/elfd30v.sc: Add support for .eit_v section and put
3392 it at 0xfffff020.
3393 * emulparams/d30v{elf,_o,_e}.sh: Ditto.
3394
3395 Mon Feb 23 17:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
3396
3397 * emultempl/pe.em (sort_sections): Permit the wildcard to include
3398 a trailing '*' when sorting grouped sections.
3399 * scripttempl/pe.sc: Include grouped sections using NAME\$*. Only
3400 include them when relocating.
3401
3402 Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
3403
3404 * Makefile.am (install-exec-local): Install properly when ln
3405 fails or tooldir == prefix.
3406
3407 Fri Feb 13 15:24:06 1998 Ian Lance Taylor <ian@cygnus.com>
3408
3409 * Makefile.am (AUTOMAKE_OPTIONS): Define.
3410 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
3411
3412 Thu Feb 12 14:10:44 1998 Ian Lance Taylor <ian@cygnus.com>
3413
3414 * scripttempl/elf.sc: Align the _end symbol according to the ELF
3415 format size. From Gordon W. Ross <gwr@mc.com>.
3416
3417 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3418 * configure.host (alpha*-*-netbsd*): New host.
3419 * configure.tgt (alpha*-*-netbsd*, powerpc-*-netbsd*): New
3420 targets.
3421
3422 * lexsup.c (help): Update bug-gnu-utils address.
3423 * ld.texinfo (Bug Reporting): Likewise.
3424
3425 Tue Feb 10 18:05:56 1998 Ian Lance Taylor <ian@cygnus.com>
3426
3427 * ldlang.c (lang_size_sections): Warn if some memory regions were
3428 defined, but a loadable section is going into the default memory
3429 region.
3430
3431 Tue Feb 10 16:17:20 1998 H.J. Lu <hjl@gnu.org>
3432
3433 * ldlex.l (V_IDENTIFIER): Allow '.' as symbol prefix.
3434
3435 Tue Feb 10 15:09:45 1998 Ian Lance Taylor <ian@cygnus.com>
3436
3437 * Makefile.am (Makefile): Add target, for dependencies on
3438 configure.host and configure.tgt.
3439 * configure.host, configure.tgt: Change -linux* to -linux-gnu*.
3440 * Makefile.in: Rebuild.
3441
3442 Mon Feb 9 13:44:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
3443
3444 * scripttempl/elfd10v.sc (.stack): Move stack to 0x00..7FFE.
3445
3446 * emulparams/d10velf.sh (READONLY_START_ADDR): Read only section
3447 moved to 0x00.....4.
3448
3449 Sat Feb 7 15:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
3450
3451 * configure, aclocal.m4: Rebuild with new libtool.
3452
3453 Thu Feb 5 12:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
3454
3455 * scripttempl/pe.sc: Remove ${RELOCATING-0} from all sections.
3456 From Thomas de Lellis <tdel@wrs.com>.
3457
3458 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
3459
3460 Wed Feb 4 13:02:32 1998 Ian Lance Taylor <ian@cygnus.com>
3461
3462 * Makefile.am (ld_new_LDADD): Remove @LEXLIB@.
3463 * Makefile.in: Rebuild.
3464
3465 Mon Feb 2 19:34:54 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
3466
3467 Add tms320c30 support:
3468 * configure.tgt (tic30-*-*aout*, tic30-*-*coff*): New targets.
3469 * emulparams/tic30aout.sh: New file.
3470 * emulparams/tic30coff.sh: New file.
3471 * scripttempl/tic30aout.sc: New file.
3472 * scripttempl/tic30coff.sc: New file.
3473 * Makefile.am (ALL_EMULATIONS): Add etic30aout.o and
3474 etic30coff.o.
3475 (etic30aout.c, etic30coff.c): New targets.
3476 * Makefile.in: Rebuild.
3477
3478 Mon Feb 2 14:10:59 1998 Ian Lance Taylor <ian@cygnus.com>
3479
3480 * configure.host: Correct HOSTING_CRT0 in alpha*-*-linux* case to
3481 accept either ld.so or ld-linux.so.
3482
3483 Fri Jan 30 19:16:28 1998 Doug Evans <devans@canuck.cygnus.com>
3484
3485 * Makefile.am ({CC,CXX}_FOR_TARGET): Change program_transform_name
3486 to transform.
3487 * Makefile.in: Regenerate.
3488
3489 Fri Jan 30 19:15:17 1998 Geoff Keating <geoffk@ozemail.com.au>
3490
3491 * scripttempl/elfppc.sc: Put .dynsbss in .sbss.
3492
3493 Fri Jan 30 11:43:49 1998 H.J. Lu <hjl@gnu.ai.mit.edu>
3494
3495 * Makefile.am (eelf32bsmip.c, eelf32lsmip.c): New targets.
3496 * Makefile.in: Rebuild.
3497
3498 Thu Jan 29 16:04:21 1998 Mumit Khan <khan@xraylith.wisc.edu>
3499
3500 * ldfile.c (slash): Set to backslash if _WIN32 but not
3501 __CYGWIN32__.
3502 (ldfile_open_file_search): If __MSDOS__ or _WIN32, accept a
3503 leading backslash or a leading x: as an absolute path.
3504 (ldfile_find_command_file): Use slash rather than / when
3505 generating name to try.
3506 * lexsup.c (PATH_SEPARATOR): Define.
3507 (set_default_dirlist): Use PATH_SEPARATOR rather than ':'.
3508
3509 Wed Jan 28 14:06:30 1998 Richard Henderson <rth@cygnus.com>
3510
3511 * emulparams/elf64_sparc.sh (ELFSIZE): 64
3512 (TEXT_START_ADDR): Round off, since SIZEOF_HEADERS is added later.
3513 (DATA_PLT): Needed by v9 abi.
3514
3515 Wed Jan 28 16:37:27 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
3516
3517 * configure.tgt (i[3456]86-*-mingw32*): New entry.
3518
3519 Wed Jan 28 15:51:58 1998 Ian Lance Taylor <ian@cygnus.com>
3520
3521 * scripttempl/elf.sc: Only include linkonce sections in final
3522 sections when relocating.
3523
3524 Wed Jan 28 14:10:01 1998 Ian Lance Taylor <ian@cygnus.com>
3525
3526 * ld.texinfo (Options): Add a brief description of the types of
3527 information included in a link map.
3528
3529 * ld.texinfo (Options): Mention LDEMULATION in description of -m.
3530 (Environment): Mention LDEMULATION.
3531
3532 * ld.texinfo (Options): Clarify --export-dynamic a bit.
3533
3534 Thu Jan 22 16:07:23 1998 Richard Henderson <rth@cygnus.com>
3535
3536 * ldlex.l (<SCRIPT>{WILDCHAR}*): Take care for the comments this
3537 pattern could match.
3538
3539 Wed Jan 21 22:26:46 1998 Ian Lance Taylor <ian@cygnus.com>
3540
3541 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): When doing
3542 a relocateable link, set the image base to 0, and don't define the
3543 various symbols.
3544 * emulparams/i386pe.sh (RELOCATEABLE_OUTPUT_FORMAT): Define.
3545 * scripttempl/pe.sc: Swap the .data and .bss sections so that
3546 .data comes first. If doing a relocateable link, use
3547 RELOCATEABLE_OUTPUT_FORMAT if it is defined, and start the
3548 sections at 0, and don't define any symbols.
3549
3550 * ldlang.c (lang_memory_default): Correct parenthisization of
3551 expression.
3552
3553 Wed Jan 21 21:20:32 1998 Manfred Hollstein <manfred@s-direktnet.de>
3554
3555 * emultempl/sunos.em: Don't include sys/types.h and sys/stat.h
3556 here; they are included already via sysdep.h.
3557
3558 Tue Jan 6 13:40:02 1998 Richard Henderson <rth@cygnus.com>
3559
3560 * scripttempl/i960.sc: Don't explicitly set .data and .bss start.
3561
3562 Fri Jan 2 20:15:37 1998 Michael Meissner <meissner@cygnus.com>
3563
3564 * ldgram.y (attributes_opt): Pass region pointer to
3565 lang_set_flags, not &region->flags.
3566
3567 * ldlang.c (lang_memory_default): New function to figure out a
3568 default memory region for a section if it was not specified.
3569 (lang_memory_region_lookup): Zero flags, not_flags field.
3570 (lang_map{,_flags}): Print attribute flags in memory map.
3571 (lang_size_sections): Call lang_memory_default to get default
3572 memory region.
3573 (lang_set_flags): Implement attribute flags for real. Take new
3574 argument to give the flags we are to skip for this region.
3575
3576 * ldlang.h (memory_region_struct): Add not_flags field, make both
3577 flags fields flagword type.
3578 (lang_output_section_state): Make flags field flagword type.
3579 (lang_set_flags): Update prototype to match new calling sequence.
3580 (lang_memory_region_default): Add prototype.
3581
3582 * emulparams/d30v{_e,_o,elf}.sh ({TEXT,DATA,EMEM}_DEF_SECTION):
3583 Define whether or not the region gets default sections, and if so,
3584 what sections.
3585
3586 * scripttempl/elfd30v.sc (MEMORY): Set up which of the regions get
3587 default sections.
3588
3589 Thu Jan 1 22:58:04 1998 Michael Meissner <meissner@cygnus.com>
3590
3591 * scripttempl/elfd30v.sc (.eh_frame): Link into the data section.
3592
3593 Thu Jan 1 18:04:51 1998 Jeffrey A Law (law@cygnus.com)
3594
3595 * scripttempl/h8300h.sc: Fix typo.
3596 * scripttempl/h8300s.sc: Likewise.
3597
3598 Sun Dec 21 12:51:49 1997 Ian Lance Taylor <ian@cygnus.com>
3599
3600 * ldexp.c (fold_name): Don't crash if the symbol is defined in a
3601 section with no output section, such as a shared library section.
3602
3603 Wed Dec 17 12:14:11 1997 Ian Lance Taylor <ian@cygnus.com>
3604
3605 * lexsup.c (parse_args): Keep track of where we are in the option
3606 parsing before calling ldemul_parse_args, so that we don't call it
3607 multiple times on the same argument and confuse the getopt
3608 internals.
3609
3610 Thu Dec 11 09:00:15 1997 Michael Meissner <meissner@cygnus.com>
3611
3612 * configure.tgt (d30v-elf-*): Rename d30velf_e to d30v_e and
3613 d30velf_o to d30v_o to work in DOS environments.
3614 * Makefile.{am,in}: Ditto.
3615
3616 * emulparams/d30v_{o,e}: Rename from d30velf_{o,e}.
3617 * emulparams/d30velf_{o,e}: Deleted.
3618
3619 Wed Dec 10 17:40:08 1997 Nick Clifton <nickc@cygnus.com>
3620
3621 * scripttempl/armcoff.sc: Add glue sections (code taken from Arm
3622 branch).
3623
3624 * emulparams/armcoff.sh (TEMPLATE_NAME): Set to armcoff.
3625
3626 * emultempl/armcoff.em: New file, imported from Arm branch.
3627
3628 Wed Dec 10 14:10:44 1997 Michael Meissner <meissner@cygnus.com>
3629
3630 * scripttempl/elfd30v.sc: Add .rel and .rela sections for all
3631 defined sections. Set up __{D,C}TOR_{LIST,END}__. Add onchip and
3632 external memory sections for rodata. Delete .string, .rodata1,
3633 and .data1 sections.
3634
3635 Tue Dec 9 15:28:17 1997 Michael Meissner <meissner@cygnus.com>
3636
3637 * Makefile.am: Add Oct 23 changes to Makefile.in here.
3638
3639 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed10velf.o.
3640
3641 * Makefile.{am,in}: (ALL_EMULATIONS): Add etic80coff.o.
3642
3643 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed30velf{,_e,_o}.o.
3644 (ed30velf_e.c): Like d30velf, except .text/.data/etc always go in
3645 external memory.
3646 (ed30velf_o.c): Like d30velf, except .text/.data/etc always go in
3647 onchip memory.
3648
3649 * emulparams/d30velf.sh (STACK_START_ADDR): Top of default
3650 stack.
3651 ({TEXT,DATA,EMEM}_SIZE): Sizes of the 3 memory areas.
3652 ({TEXT,DATA,BSS}_MEMORY): Which memory region .text, .data, and
3653 .bss should go in.
3654
3655 * emulparams/d30velf_{e,o}.sh: New files to be explicit whether
3656 .text, .data, etc go in external memory or onchip memory.
3657
3658 * configure.tgt (d30v-*-*ext*): New configuration to default
3659 .text, .data, etc. in external memory.
3660 (d30v-*-*onchip*): New configuration to default .text, .data,
3661 etc. in onchip memory.
3662 (d30v-*-*): Add d30velf_{e,o} emulations.
3663
3664 * scripttempl/elfd30v.sc: Allow .text, .data, .bss to be put in
3665 either the onchip text/data areas or the external memory area.
3666 (MEMORY): Get sizes from d30velf.sh.
3667 (.e{data,text,bss}): Put sections in the external memory region.
3668 (.stext): Put section in the onchip text region.
3669 (.s{data,bss}): Put sections in the onchip data region.
3670 (__stack): Assign from ${STACK_START_ADDR}.
3671 (.text): Put in ${TEXT_MEMORY} memory region.
3672 (.data{,1}/.strings/.rodata{,1}): Put in ${DATA_MEMORY} memory
3673 region.
3674 (.bss): Put in ${BSS_MEMORY} memory region.
3675
3676 Tue Dec 2 10:14:47 1997 Nick Clifton <nickc@cygnus.com>
3677
3678 * configure.tgt (targ_extra_emuls): Add support for Thumb target.
3679
3680 Sat Nov 22 15:23:19 1997 Ian Lance Taylor <ian@cygnus.com>
3681
3682 * ldlex.l: Don't define hex_mode. Correct number regexp to not
3683 accept hex digits without a leading $ or 0x. Handle leading $
3684 correctly. Pass 0 rather than hex_mode to bfd_scan_vma.
3685 * ldlex.h (hex_mode): Don't declare.
3686
3687 Sun Nov 16 20:16:45 1997 Michael Meissner <meissner@cygnus.com>
3688
3689 * emulparams/d30velf.sh ({DATA,EMEM}_START_ADDR): Define as start
3690 of internal data area and external memory on chip.
3691
3692 * scripttempl/elfd30v.sc: Define a MEMORY region that describes
3693 the 3 regions of memory on the chip. Put .text/.init/.fini into
3694 the text memory region, put other segments into the data memory
3695 region. Add more of the standard elf sections. Default __stack
3696 to be 0x20008000, which is 1 byte beyond end of the internal data
3697 region.
3698
3699 Thu Nov 13 13:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
3700
3701 * configure.tgt (targ_extra_emuls): Make FreeBSD a i386bsd
3702 variant.
3703
3704 Sun Nov 2 14:51:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
3705
3706 * configure.host (alpha*-*-linux*): Correct HOSTING_CRT0. Set
3707 HOSTING_LIBS.
3708
3709 Thu Oct 30 12:25:55 1997 Ian Lance Taylor <ian@cygnus.com>
3710
3711 * ld.h (args_type): Add warn_mismatch field.
3712 * ldmain.c (main): Initialize warn_mismatch field.
3713 * lexsup.c (parse_args): Handle --no-warn-mismatch option.
3714 * ldlang.c (ignore_bfd_error): New static function.
3715 (lang_check): If warn_mismatch is false, don't warn about
3716 mismatched input files.
3717 * ld.texinfo, ld.1: Document new option.
3718
3719 Thu Oct 23 14:38:18 1997 Nick Clifton <nickc@cygnus.com>
3720
3721 * scripttempl/v850.sc: Rename linker symbol '_stack' to '__stack'
3722 to avoid conflicts with C code which is defining a variable called
3723 'stack'.
3724
3725 Thu Oct 23 00:57:45 1997 Richard Henderson <rth@dot.cygnus.com>
3726
3727 * Makefile.in (ALL_EMULATIONS): Move eelf64_sparc.o ...
3728 (ALL_64_EMULATIONS): ... here.
3729 (eelf64_sparc.c): Template should be elf32 not generic.
3730 * emulparams/elf64_sparc.sh (TEMPLATE_NAME): New definition.
3731
3732 Thu Oct 23 00:44:20 1997 Richard Henderson <rth@dot.cygnus.com>
3733
3734 * configure.tgt: Add sparc64-*-linux*.
3735 * emulparams/elf64_sparc.sh (GENERATE_SHLIB_SCRIPT, NOP): New.
3736
3737 Wed Oct 22 11:29:25 1997 Ian Lance Taylor <ian@cygnus.com>
3738
3739 * scripttempl/pe.sc: Put .eh_frame in .rdata.
3740
3741 Fri Oct 17 00:00:13 1997 Richard Henderson <rth@cygnus.com>
3742
3743 * ldlang.c (lang_register_vers_node): Only check globals<=>locals,
3744 since we need to be able to export different versions of the same
3745 symbol.
3746
3747 Wed Oct 15 14:52:36 1997 Ian Lance Taylor <ian@cygnus.com>
3748
3749 * scripttempl/pe.sc: Put .stab and .stabstr sections at end.
3750
3751 Wed Oct 8 12:37:05 1997 Richard Henderson <rth@cygnus.com>
3752
3753 * configure.tgt, configure.host: Change alpha-*-* to alpha*-*-*;
3754 config.guess now recognizes alphaev5 etc.
3755
3756 Fri Oct 3 14:23:02 1997 Ian Lance Taylor <ian@cygnus.com>
3757
3758 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Don't treat
3759 -s and -u as -static and -unix.
3760
3761 Thu Oct 2 18:40:28 1997 Ian Lance Taylor <ian@cygnus.com>
3762
3763 * ldlang.c (wild_doit): Rewrite flag handling for clarity. If we
3764 are not adding the first input section, and SEC_READONLY is clear
3765 on the output section, then don't copy it from the input section.
3766 If SEC_READONLY is not set on the input section, then clear it on
3767 the output section.
3768
3769 * configure.tgt (mips*-sgi-irix[56]*): Use elf32bsmip rather than
3770 elf32bmip.
3771 (mips*el-*-linux*): Change elf32lmip to elf32lsmip and elf32bmip
3772 to elf32bsmip.
3773 (mips*-*-linux*): Likewise.
3774 * emulparams/elf32bsmip.sh: New file; just like elf32bmip.sh, but
3775 setting ENTRY to __start.
3776 * emulparams/elf32lsmip.sh: New file; just like elf32lmip.sh, but
3777 setting ENTRY to __start.
3778 * scripttempl/elf.sc: Always set ENTRY to _start if it was not
3779 already set.
3780
3781 Wed Oct 1 16:41:00 1997 Nick Clifton <nickc@cygnus.com>
3782
3783 * emulparams/v850.sh (ROZDATA_START_ADDR, ROSDATA_START_ADDR): New
3784 Variables.
3785
3786 * scripttempl/v850.sc: Move read only areas out of zero and small
3787 data sections and into their own sections.
3788
3789 Wed Sep 24 16:59:15 1997 Joel Sherrill <joel@oarcorp.com>
3790
3791 * configure.tgt (sh*-*-rtems*): New target, like sh-*-elf*.
3792
3793 Wed Sep 24 11:33:14 1997 Ian Lance Taylor <ian@cygnus.com>
3794
3795 * ld.texinfo (Section Options): Improve documentation of NOLOAD
3796 directive.
3797
3798 * aclocal.m4: Rebuild with new libtool.
3799 * configure: Rebuild.
3800
3801 Mon Sep 22 17:24:06 1997 Ian Lance Taylor <ian@cygnus.com>
3802
3803 * ldlang.c (wild_doit): Revert patch of September 3.
3804
3805 Wed Sep 17 16:45:34 1997 Nick Clifton <nickc@cygnus.com>
3806
3807 * Makefile.am, Makefile.in: Add rule for ev850.c
3808 * configure.tgt (targ_extra_emuls): Add v850 target.
3809
3810 Wed Sep 17 16:43:39 1997 Nick Clifton <nickc@cygnus.com>
3811
3812 * emulparams/v850.sh (CALL_TABLE_START_ADDR): New entry.
3813 * scripttempl/v850.sc: Add call table data area
3814
3815 Mon Sep 15 11:29:13 1997 Ken Raeburn <raeburn@cygnus.com>
3816
3817 Merge change from Martin Hunt:
3818
3819 * scripttempl/elfd30v.sc: Put .rodata in the .text section.
3820
3821 Tue Sep 9 07:49:56 1997 Fred Fish <fnf@ninemoons.com>
3822
3823 * ldlang.c (lang_memory_region_lookup): Remove extraneous
3824 initialization of p.
3825
3826 Thu Sep 4 09:03:33 1997 Ian Lance Taylor <ian@cygnus.com>
3827
3828 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): In
3829 expression produced for -bpT and -bpD options, align to a 32 byte
3830 boundary rather than an 8 byte boundary.
3831 * scripttempl/aix.sc: Put .tocbss at start of .bss section.
3832
3833 * ldmisc.h, ldmisc.c, ldcref.c: Rename finfo to lfinfo, to avoid
3834 function name conflict with AIX 4.2 unistd.h header file.
3835
3836 Wed Sep 3 15:12:32 1997 Ian Lance Taylor <ian@cygnus.com>
3837
3838 * ldlang.c (wild_doit): Clear SEC_HAS_CONTENTS from a
3839 noload_section.
3840
3841 Fri Aug 29 00:32:31 1997 Ian Lance Taylor <ian@cygnus.com>
3842
3843 * Makefile.am (ld_new_DEPENDENCIES): Remove @LEXLIB@.
3844 * Makefile.in: Rebuild.
3845
3846 Thu Aug 28 10:12:10 1997 Doug Evans <dje@canuck.cygnus.com>
3847
3848 * configure.tgt (arc-*-elf*): Recognize.
3849 * Makefile.am (ALL_EMULATIONS): Add earcelf.o.
3850 * Makefile.in: Regenerate.
3851 * emulparams/arcelf.sh: New file.
3852
3853 Wed Aug 20 11:14:13 1997 Ian Lance Taylor <ian@cygnus.com>
3854
3855 * ldlang.c (wildcardp): Don't let a backslash by itself cause a
3856 pattern to be treated as a wildcard pattern.
3857
3858 * ldgram.y (atype): Accept parentheses with no type.
3859
3860 * ld.texinfo (Section Definition): Clarify use of whitespace.
3861 (Section Placement): Likewise.
3862
3863 Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
3864
3865 * configure.tgt (targ_extra_emuls): Add support for v850e target.
3866
3867 Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
3868
3869 * configure.tgt (targ_extra_emuls): Add support for v850e target.
3870
3871 Sat Aug 9 00:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
3872
3873 * Makefile.am (ld.info): Change dependency from
3874 $(BFDDIR)/doc/bfdsumm.texi to bfdsumm.texi.
3875 (ld.dvi): Likewise.
3876 (bfdsumm.texi): New target.
3877 (CLEANFILES): Add bfdsumm.texi.
3878 * Makefile.in: Rebuild.
3879
3880 * Makefile.am: New file, based on old Makefile.in.
3881 * acinclude.m4: New file, from old aclocal.m4.
3882 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
3883 shared library handling; now handled by libtool. Replace
3884 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
3885 AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
3886 AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
3887 * configure.host: Don't set HLDFLAGS, HLDENV, or RPATH_ENVVAR.
3888 * acconfig.h: Mention PACKAGE and VERSION.
3889 * stamp-h.in: New file.
3890 * ldver.c (ld_program_version): Set ld_program_version from
3891 VERSION.
3892 * ldgram.y, ldlex.l: Replace VERSION with VERSIONK.
3893 * Makefile.in: Now built with automake.
3894 * aclocal.m4: Now built with aclocal.
3895 * configure, config.in: Rebuild.
3896
3897 Mon Jul 28 19:04:50 1997 Rob Savoye <rob@chinadoll.cygnus.com>
3898
3899 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
3900 win32 dependencies.
3901 * configure: Regenerated with autoconf 2.12.
3902 * Makefile.in: Add $(EXEEXT) to executable.
3903
3904 Tue Jul 22 18:50:38 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
3905
3906 * emulparams/i386go32.sh (OUTPUT_FORMAT): Set to "coff-go32".
3907 (SEGMENT_SIZE): Set to 0x200.
3908 * scripttempl/i386go32.sc: Rewrite.
3909 * configure.tgt (i[3456]86-*-msdosdjgpp*): New target.
3910
3911 Mon Jul 7 12:39:42 1997 Ian Lance Taylor <ian@cygnus.com>
3912
3913 From Manfred Hollstein <manfred@s-direktnet.de>:
3914 * configure.host (i[3456]86-*-linux*libc1*): Renamed from
3915 i[3456]86-*-linux*.
3916 (i[3456]86-*-linux*): New host.
3917
3918 Thu Jun 26 13:54:03 1997 Ian Lance Taylor <ian@cygnus.com>
3919
3920 * scripttempl/pe.sc: Put .rsrc after .reloc. Put input .rsrc
3921 sections in the output .rsrc section.
3922
3923 Wed Jun 25 12:48:41 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3924
3925 * configure.host (m68*-*-linux*libc1*): Renamed from
3926 `m68*-*-linux*'.
3927 (m68*-*-linux*): New configuration for use with GNU libc 2.
3928
3929 Mon Jun 16 19:18:21 1997 Geoff Keating <geoffk@ozemail.com.au>
3930
3931 * scripttempl/elfppc.sc: Correct .rela.sdata entries.
3932
3933 * scripttempl/elfppc.sc: Put the PLT between the small and large
3934 BSS segments.
3935 * emulparams/elf32ppc.sh (TEXT_START_ADDR): The ABI says `A
3936 program base of 0x02000000 is recommended...' because otherwise
3937 shared libraries are less efficient. We use 0x01800000 because
3938 otherwise it's impossible to branch to location 0, for instance if
3939 you have an undefined weak symbol.
3940
3941 Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
3942
3943 * ldlang.c (lang_place_undefineds): Add \n in einfo call.
3944 (lang_size_sections): Likewise.
3945 * ldlex.l: Likewise.
3946 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise.
3947 * emultempl/mipsecoff.em (gld${EMULATION_NAME}_after_open):
3948 Likewise.
3949 (check_sections): Likewise.
3950 (gld${EMULATION_NAME}_after_allocation): Likewise.
3951 * emultempl/pe.em (gld_$${EMULATION_NAME}_before_allocation):
3952 Likewise.
3953 * mpw-eppcmac.c (gldppcmacos_read_file): Likewise.
3954 * mpw-idtmips.c (gldmipsidt_after_open): Likewise.
3955 (check_sections): Likewise.
3956 (gldmipsidt_after_allocation): Likewise.
3957
3958 * ldemul.c (ldemul_choose_mode): Remove unused einfo argument.
3959
3960 Fri Jun 6 23:47:42 1997 Ian Lance Taylor <ian@cygnus.com>
3961
3962 * scripttempl/pe.sc: Add zeroes after .idata$3 to mark the end of
3963 the import list.
3964
3965 Thu May 29 13:13:22 1997 Ian Lance Taylor <ian@cygnus.com>
3966
3967 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Don't
3968 crash if an output section has no BFD section.
3969
3970 Fri May 23 15:23:25 1997 Fred Fish <fnf@cygnus.com>
3971
3972 * lexsup.c (ld_options): Add entry for the new "task-link" option.
3973 (parse_args): Handle the "task-link" option.
3974 (OPTION_TASK_LINK): Add define.
3975
3976 Wed May 21 17:44:15 1997 Ian Lance Taylor <ian@cygnus.com>
3977
3978 * ldmain.c (main): Correct check of fclose return value when
3979 handling --force-exe-suffix.
3980
3981 Thu May 15 11:35:29 1997 Nick Clifton <nickc@cygnus.com>
3982
3983 * ldlang.c (lang_check): Add test of the return value from the
3984 call to bfd_merge_private_bfd_data().
3985
3986 Mon May 12 23:22:58 1997 Ian Lance Taylor <ian@cygnus.com>
3987
3988 * scripttempl/elfmips.sc: Remove.
3989 * scripttempl/elf.sc: Set ENTRY based on target. Permit
3990 TEXT_DYNAMIC to control .dynamic segment. Permit
3991 SHLIB_TEXT_START_ADDR to set start of shared object. Support
3992 INITIAL_READONLY_SECTIONS. Put .stub in .text. Only put
3993 .gnu.linkonce.t* in .text when relocating. Support
3994 OTHER_TEXT_SECTIONS. Support SHLIB_DATA_ADDR as well as
3995 DATA_ADDR. Support OTHER_GOT_SYMBOLS and OTHER_GOT_SECTIONS.
3996 * emulparams/elf32b4300.sh (SCRIPT_NAME): Set to elf.
3997 (DATA_ADDR): Don't set.
3998 (INITIAL_READONLY_SECTIONS): Rename from OTHER_READONLY_SECTIONS.
3999 (OTHER_TEXT_SECTIONS): Set.
4000 (OTHER_GOT_SECTIONS): Rename from OTHER_READWRITE_SECTIONS.
4001 (MACHINE): Set to empty string.
4002 * emulparams/elf32l4300.sh: Likewise.
4003 * emulparams/elf32ebmip.sh: Likewise.
4004 * emulparams/elf32elmip.sh: Likewise.
4005 * emulparams/elf32bmip.sh: Likewise. Also:
4006 (TEXT_DYNAMIC): Set.
4007 * emulparams/elf32lmips.sh: Likewise.
4008 * Makefile.in (eelf32bmips.c): Depend upon elf.sc rather than
4009 elfmips.sc.
4010 (eelf32ebmips.c, eelf32elmips.c, eelf32lmip.c): Likewise.
4011
4012 Mon May 12 11:11:06 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4013
4014 * scripttempl/elf.sc: Don't align the data segment on the next 8
4015 byte boundary, instead let the linker use whatever the individual
4016 sections require.
4017
4018 Fri May 9 17:45:46 1997 Ian Lance Taylor <ian@cygnus.com>
4019
4020 * configure.tgt (i[3456]86-*-gnu*): Don't include Mach support.
4021
4022 Tue May 6 13:21:19 1997 Ian Lance Taylor <ian@cygnus.com>
4023
4024 From Sean McNeil <sean@mcneil.com>:
4025 * emultempl/pe.em (sort_by_file_name): Sort by archive name
4026 first.
4027 (sort_sections): Sort all sections, not just sections in the same
4028 archive.
4029
4030 Mon May 5 18:19:55 1997 Philip Blundell <pjb27@cam.ac.uk>
4031
4032 * configure.tgt, configure.host: cope with '*-*-linux-gnuaout'
4033 targets.
4034
4035 Fri May 2 15:54:28 1997 Mike Meissner <meissner@cygnus.com>
4036
4037 * scripttempl/tic80coff.sc (.text): Add a leading underscore to
4038 __{D,C}TOR_{LIST,END}__ definations. Rearrange the order of items
4039 in the .text section. Move .const, .ctors, .dtors into separate
4040 sections.
4041
4042 Wed Apr 30 12:23:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
4043
4044 * scripttempl/m88kbcs.sc (__.initp.end, _etext): Added whitespace
4045 around assignment of current location pointer.
4046
4047 Thu Apr 17 13:07:18 1997 Ian Lance Taylor <ian@cygnus.com>
4048
4049 * ldctor.c (ldctor_build_sets): Make sure the set is aligned
4050 appropriately.
4051
4052 Tue Apr 15 13:19:26 1997 Ian Lance Taylor <ian@cygnus.com>
4053
4054 * Makefile.in (INSTALL): Set to @INSTALL@.
4055 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
4056 (install): Depend upon ld.new and installdirs. Use
4057 $(program_transform_name) directly, rather than using
4058 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
4059 (installdirs): New target.
4060 (install-info): Run mkinstalldirs.
4061
4062 Mon Apr 14 12:06:15 1997 Ian Lance Taylor <ian@cygnus.com>
4063
4064 * Makefile.in (INSTALL): Change install.sh to install-sh.
4065
4066 From Thomas Graichen <graichen@rzpd.de>:
4067 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
4068 * configure: Rebuild.
4069
4070 Fri Apr 4 11:42:41 1997 Ian Lance Taylor <ian@cygnus.com>
4071
4072 * emultempl/pe.em: Include "libiberty.h".
4073 (sort_sections_1): Use xmalloc rather than alloca.
4074
4075 * ldlex.l: Recognize SQUAD.
4076 * ldgram.y (length): Add SQUAD.
4077 * ldctor.c (ldctor_build_sets): Use SQUAD for a signed 8 byte
4078 reloc.
4079 * ldlang.c (print_data_statement): Handle SQUAD.
4080 (lang_size_sections, lang_do_assignments): Likewise.
4081 * ldexp.c (exp_print_token): Add SQUAD to table.
4082 * ldwrite.c (build_link_order): Handle SQUAD.
4083 * ld.texinfo (Section Data Expressions): Document SQUAD.
4084
4085 Thu Apr 3 13:19:40 1997 Ian Lance Taylor <ian@cygnus.com>
4086
4087 * ldver.c (ld_program_version): Set to 2.8.1.
4088
4089 * Branched binutils 2.8.
4090
4091 Wed Apr 2 11:55:27 1997 Ian Lance Taylor <ian@cygnus.com>
4092
4093 * mpw-idtmips.c: Rename from mpw-emipsidt.c.
4094 * mpw-elfmips.c: Rename from mpw-emipself.c.
4095 * mpw-config.in: Update accordingly.
4096
4097 * ldlang.c (lang_process): Call lang_check immediately after
4098 opening the input files, rather than at the end of the link.
4099
4100 Mon Mar 31 23:44:00 1997 Ian Lance Taylor <ian@cygnus.com>
4101
4102 * emultempl/pe.em (init): Fully bracket initializer.
4103 (set_pe_stack_heap): Remove locals begin_commit and end.
4104 (gld_${EMULATION_NAME}_after_open): Remove unused local i.
4105 (gld${EMULATION_NAME}_place_orphan): Remove unused local ptr.
4106
4107 Mon Mar 31 16:35:51 1997 Joel Sherrill <joel@oarcorp.com>
4108
4109 * configure.tgt (hppa*-*-rtems*): New target, like hppa-*-*elf*.
4110
4111 Fri Mar 28 15:29:23 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
4112
4113 Contributed by David S. Miller <davem@caip.rutgers.edu>:
4114 * configure.tgt (sparc*-*-linuxaout*): New target.
4115 (sparc*-*-linux*): New target.
4116 * emulparams/sparclinux.sh: New file.
4117 * Makefile.in (ALL_EMULATIONS): Add esparclinux.o.
4118 (esparclinux.c): New target.
4119
4120 Fri Mar 28 14:30:12 1997 Ian Lance Taylor <ian@cygnus.com>
4121
4122 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
4123 * configure.tgt: Set targ_extra_emuls for mips*el-*-linux* and
4124 mips*-*-linux*. Use elf32bmip and elf32lmip, not elf32ebmip and
4125 elf32elmip.
4126
4127 Thu Mar 27 17:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
4128
4129 * lexsup.c (parse_args): Update copyright date in version
4130 message.
4131
4132 Fri Mar 21 12:28:41 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
4133
4134 * emulparams/delta68.sh (OUTPUT_FORMAT): Set to "coff-m68k-sysv".
4135
4136 Tue Mar 18 11:16:23 1997 Ian Lance Taylor <ian@cygnus.com>
4137
4138 * Makefile.in: Rebuild dependencies.
4139
4140 * emultempl/aix.em: Include "obstack.h".
4141
4142 Mon Mar 17 19:26:06 1997 Ian Lance Taylor <ian@cygnus.com>
4143
4144 * ldlang.c: Include "obstack.h".
4145
4146 Sat Mar 15 23:23:46 1997 Fred Fish <fnf@cygnus.com>
4147
4148 * configure.tgt (powerpc-*-beos*): Use aixppc for targ_emul.
4149
4150 Sat Mar 15 18:10:38 1997 H.J. Lu <hjl@lucon.org>
4151
4152 * ldemul.h (ldemul_list_emulations): Use full prototype.
4153 * ldlang.c (print_one_symbol): Add declaration.
4154 * ldlang.h (dprint_statements): Declare.
4155 * ldmain.c (remove_output): Declare.
4156 * ldmisc.c (vfinfo): Declare.
4157 * ldwrite.c (clone_section): Declare.
4158 (split_sections): Make static. Declare.
4159 * mri.c: Include libiberty.h.
4160 (strdup): Don't declare.
4161 (mri_alias): Use xstrdup rather than strdup.
4162
4163 Fri Mar 14 21:30:06 1997 Ian Lance Taylor <ian@cygnus.com>
4164
4165 * scripttempl/elfmips.sc: Change handling of data area when
4166 generating a shared library to not skip a large block of memory.
4167 From Per Fogelstrom <pefo@cvs.openbsd.org>.
4168
4169 Wed Mar 12 21:33:09 1997 Ian Lance Taylor <ian@cygnus.com>
4170
4171 * ldmain.c (multiple_definition): Only skip the warning if the
4172 output section is absolute when the input section is not
4173 absolute.
4174
4175 * ldlex.l: Accept whitespace in VERS_START state. Warn about
4176 invalid characters in VERS_* states.
4177
4178 Tue Mar 11 13:51:31 1997 Ian Lance Taylor <ian@cygnus.com>
4179
4180 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Don't let a
4181 trailing space lead us to think that there is a zero address.
4182
4183 Sun Mar 9 23:06:35 1997 Eric Youngdale <eric@andante.jic.com>
4184
4185 * ldgram.y (vers_node): Correct typo of '(' for '{'.
4186
4187 Fri Mar 7 18:40:12 1997 Fred Fish <fnf@cygnus.com>
4188
4189 * scripttempl/tic80coff.sc (ENTRY): Entry symbol is __start
4190 rather than _start.
4191 (__edata): Define this rather than "edata".
4192 (__end): Define this rather than "end".
4193
4194 Tue Mar 4 17:18:35 1997 Michael Meissner <meissner@cygnus.com>
4195
4196 * configure.tgt (tic80-*-*): Allow dropping of -coff.
4197
4198 Sun Mar 2 22:59:49 1997 Fred Fish <fnf@cygnus.com>
4199
4200 * Makefile.in (ld.dvi): Set MAKEINFO environment variable as well
4201 as TEXINPUTS. Needed for building in separate build dir.
4202 * ldint.texinfo (SCRIPT_NAME): Fix typo.
4203 * emulparams/tic80coff.sh: Rewrite to include internal documentation
4204 about each shell variable that is set (or not set).
4205 * scripttempl/tic80coff.sc: Complete rewrite.
4206
4207 Fri Feb 28 17:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
4208
4209 * ldmain.c (main): Call bfd_set_default_target.
4210 * Makefile.in (ldmain.o): Define TARGET when compiling.
4211
4212 Thu Feb 27 11:41:03 1997 Ian Lance Taylor <ian@cygnus.com>
4213
4214 * ldmain.c (main): Don't initialize link_info.lprefix or
4215 link_info.lprefix_len.
4216 * emultempl/hppaelf.em (hppaelf_before_parse): Likewise.
4217
4218 * emultempl/m88kbcs.em: Remove.
4219 * emulparams/m88kbcs.sh (TEMPLATE_NAME): Don't set.
4220 * Makefile.in (em88kbcs.c): Depend upon generic.em rather than
4221 m88kbcs.em.
4222
4223 * mri.c (mri_draw_tree): Pass noload_section, not SEC_NEVER_LOAD,
4224 to lang_enter_output_section_statement. From Mark Rasin
4225 <mark.rasin@telrad.co.il>.
4226
4227 Wed Feb 26 11:51:44 1997 Ian Lance Taylor <ian@cygnus.com>
4228
4229 * ldlang.c (lang_one_common): Clear SEC_IS_COMMON from common
4230 section.
4231
4232 Tue Feb 25 20:38:11 1997 Stan Shebs <shebs@andros.cygnus.com>
4233
4234 * configure.tgt (mips*-*-lnews*): New target.
4235 * Makefile.in (emipslnews.c): New target.
4236 * emulparams/mipslnews.sh: New file.
4237
4238 Tue Feb 25 16:04:09 1997 Ian Lance Taylor <ian@cygnus.com>
4239
4240 * emultempl/elf32.em (hold_interp): New static variable.
4241 (gld${EMULATION_NAME}_place_orphan): Put loadable .note sections
4242 after hold_interp. Choose a unique output section name.
4243 (gld${EMULATION_NAME}_place_section): Don't set hold_use if the
4244 SEC_LOAD or SEC_ALLOC flags differ. Set hold_interp.
4245
4246 Mon Feb 24 18:16:09 1997 Ian Lance Taylor <ian@cygnus.com>
4247
4248 From Eric Youngdale <eric@andante.jic.com>:
4249 * ldlex.l (V_TAG, V_IDENTIFIER): New macros.
4250 (VERS_START, VERS_SCRIPT, VERS_NODE): New states to parse version
4251 information.
4252 (ldlex_version_script, ldlex_version_file): New functions.
4253 * ldlex.h (enum input_enum): Add input_version_script.
4254 (ldlex_version_script): Declare.
4255 (ldlex_version_file): Declare.
4256 * ldgram.y (%union): Add deflist, versyms, and versnode.
4257 (VERS_TAG, VERS_IDENTIFIER): New terminals.
4258 (GLOBAL, LOCAL, VERSION, INPUT_VERSION_SCRIPT): New terminals.
4259 (file): Accept INPUT_VERSION_SCRIPT.
4260 (ifile_p1): Accept version.
4261 (version_script_file): New nonterminal.
4262 (version, vers_nodes, vers_node): Likewise.
4263 (verdep, vers_tag, ver_defns): Likewise.
4264 * ldlang.c (lang_elf_version_info): New global variable.
4265 (lang_new_vers_regex): New function.
4266 (lang_new_vers_node): New function.
4267 (version_index): New static variable.
4268 (lang_register_vers_node): New function.
4269 (lang_add_vers_depend): New function.
4270 * ldlang.h (lang_elf_version_info): Declare.
4271 (lang_new_vers_regex, lang_new_vers_node): Declare.
4272 (lang_add_vers_depend, lang_register_vers_node): Declare.
4273 * lexsup.c (OPTION_VERSION_SCRIPT): Define.
4274 (ld_options): Add "version-script".
4275 (parse_args): Handle OPTION_VERSION_SCRIPT.
4276 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
4277 Pass lang_elf_version_info to size_dynamic_sections.
4278 * scripttempl/elf.sc: Add .gnu.version sections.
4279 * ld.texinfo: Document symbol versioning.
4280
4281 Fri Feb 21 17:37:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
4282
4283 * Makefile.in (ed30velf.c): New target.
4284 * configure.tgt (d30v-*-*): New target.
4285 * emulparams/d30velf.sh: New file.
4286 * scripttempl/elfd30v.sc: New file.
4287
4288 Fri Feb 14 18:28:31 1997 Ian Lance Taylor <ian@cygnus.com>
4289
4290 * ld.texinfo (Option Commands): Document the INCLUDE command.
4291
4292 Thu Feb 13 20:31:37 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
4293
4294 * configure.in: Call BFD_NEED_DECLARATION on getenv.
4295 * acconfig.h (NEED_DECLARATION_GETENV): New macro.
4296 * sysdep.h (getenv): Declare if NEED_DECLARATION_GETENV.
4297 * ldemul.c (ld_emul_default_target): Do not cast getenv return
4298 value.
4299 * ldmain.c (get_emulation): Likewise.
4300 * configure, config.in: Rebuild.
4301
4302 Tue Feb 11 15:34:26 1997 Ian Lance Taylor <ian@cygnus.com>
4303
4304 * scripttempl/elfmips.sc: When relocating, put .mips16.fn.* and
4305 .mips16.call.* in .text.
4306
4307 Sun Feb 9 18:09:13 1997 Fred Fish <fnf@cygnus.com>
4308
4309 * emulparams/tic80coff.sh: New (dummy) file for TIc80.
4310 * scripttempl/tic80coff.sc: New (dummy) file for TIc80.
4311 * Makefile.in (etic80coff.c): Add target and rule to build it.
4312 * configure.tgt (tic80-*-coff): Set targ_emul to tic80coff.
4313
4314 Fri Jan 31 13:16:53 1997 Ian Lance Taylor <ian@cygnus.com>
4315
4316 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Search for
4317 ".so" in the name, not ".so.".
4318 (gld${EMULATION_NAME}_search_dir): Accept a plain .so file.
4319
4320 * Makefile.in (ld.info): Add -I$(srcdir). From Alan Modra
4321 <alan@spri.levels.unisa.edu.au>.
4322
4323 Thu Jan 30 11:31:52 1997 Ian Lance Taylor <ian@cygnus.com>
4324
4325 * emultempl/sunos.em: Include <ctype.h>.
4326 (gld${EMULATION_NAME}_find_so): Skip the directory name when
4327 searching for ".so.".
4328 (gld${EMULATION_NAME}_search_dir): Make sure that the library name
4329 has a version number, and that only version numbers follow .so.
4330
4331 Wed Jan 29 18:15:00 1997 Geoffrey Noer <noer@cygnus.com>
4332
4333 * scripttempl/pe.sc:
4334 * scripttempl/ppcpe.sc: add *(.gcc_except_table) to the text
4335 section so Win32 executables are valid.
4336
4337 Mon Jan 27 12:28:43 1997 Ian Lance Taylor <ian@cygnus.com>
4338
4339 * scripttempl/elf.sc: Put linkonce reloc section in other
4340 appropriate reloc sections.
4341 * scripttempl/elfmips.sc: Add linkonce support.
4342 * scripttempl/elfppc.sc: Likewise.
4343
4344 Fri Jan 24 10:44:09 1997 Jeffrey A Law (law@cygnus.com)
4345
4346 * emulparms/mn10200.sh (OTHER_RELOCATING_SECTIONS): Move the
4347 stack up to 0x80000.
4348 * emulparms/mn10300.sh (OTHER_RELOCATING_SECTIONS): Likewise.
4349
4350 Tue Jan 21 12:11:10 1997 Doug Evans <dje@seba.cygnus.com>
4351
4352 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Use PROVIDE
4353 to define `_stack'.
4354
4355 Thu Jan 16 17:07:52 1997 Ian Lance Taylor <ian@cygnus.com>
4356
4357 * ld.h (args_type): Rename auxiliary_filter_shlib to
4358 auxiliary_filters, and make it char **.
4359 * lexsup.c (parse_args): Handle -f by setting up an array.
4360 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
4361 new name of auxiliary_filters.
4362
4363 * ld.texinfo (Options): Improve documentation of --filter and
4364 --auxiliary.
4365
4366 Tue Jan 14 15:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
4367
4368 * ld.texinfo (Options): Clarify that the normal usage is -T.
4369 (Commands): Likewise.
4370
4371 Thu Jan 9 11:26:27 1997 Ian Lance Taylor <ian@cygnus.com>
4372
4373 * scripttempl/armcoff.sc: Correct mask used for .data address.
4374
4375 Wed Jan 8 15:14:59 1997 Geoffrey Noer <noer@cygnus.com>
4376
4377 * emultempl/pe.em: make default executable a.exe instead of
4378 a.out
4379
4380 Fri Jan 3 17:33:34 1997 Richard Henderson <rth@tamu.edu>
4381
4382 * scripttempl/elf.sc: Move .got closer to .sdata and .sbss by
4383 shifting .plt back. Rumour has it that the NetBSD ld.so depends
4384 on .dynamic being after .got, so we leave that.
4385
4386 Fri Jan 3 14:04:40 1997 Ian Lance Taylor <ian@cygnus.com>
4387
4388 * Makefile.in (clean): Don't remove configdoc.texi.
4389 (maintainer-clean): Do remove configdoc.texi.
4390
4391 * ld.texinfo (Operators): Remove '@' from @smallexmple in comment
4392 to avoid confusing texi2roff.
4393
4394 Fri Jan 3 11:27:02 1997 Michael Meissner <meissner@tiktok.cygnus.com>
4395
4396 * scripttempl/v850.sc (.zdata): Add .zcommon section.
4397 (.tdata): Add .tcommon and .tcommon_byte sections.
4398
4399 Thu Jan 2 18:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
4400
4401 * configure.tgt (mips*el-*-linux*, mips*-*-linux*): New targets.
4402 * scripttempl/elfmips.sc: Use __start as the entry address for
4403 mips*-*-linux*.
4404
4405 Tue Dec 31 14:48:30 1996 Ian Lance Taylor <ian@cygnus.com>
4406
4407 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
4408
4409 * ld.h (args_type): Add filter_shlib and auxiliary_filter_shlib
4410 fields.
4411 * lexsup.c (parse_args): Recognize --auxiliary/-f and
4412 --filter/-F.
4413 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
4414 Pass filter_shlib and auxiliary_filter_shlib to
4415 size_dynamic_sections.
4416 * ld.texinfo, ld.1: Document --filter/-F and --auxiliary/-f.
4417
4418 Mon Dec 30 13:55:57 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4419
4420 * scripttempl/v850.sc (.tdata) Add .tbss and .tbyte sections.
4421
4422 Wed Dec 18 22:57:35 1996 Stan Shebs <shebs@andros.cygnus.com>
4423
4424 * mpw-make.sed: Use NewFolderRecursive for installation.
4425
4426 Fri Dec 13 14:08:50 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4427
4428 * scripttempl/v850.sc: Make sure __{e,g}p start relative to the
4429 {s,t}data sections. Do not emit any linker generated symbols if
4430 -r. Use {TEXT,{Z,S,T}DATA}_START_ADDR variables to initialize
4431 where the different sections go. Change some whitespace.
4432
4433 * emulparams/v850.sh ({TEXT,{Z,S,T}DATA}_START_ADDR): Define
4434 appropriately. Remove crud not used anymore.
4435
4436 Fri Dec 13 10:19:57 1996 Jeffrey A Law (law@cygnus.com)
4437
4438 * Makefile.in (emn10200.c): Add dependencies.
4439 * configure.tgt: Handle mn10200.
4440 * emulparms/mn10200.sh: New file.
4441
4442 Thu Dec 12 17:04:55 1996 Ian Lance Taylor <ian@cygnus.com>
4443
4444 * emultempl/gld960c.em: Include <ctype.h>.
4445 (gld960_set_output_arch): Get the machine type from the -A option
4446 if there is one, rather than always using core.
4447
4448 Sat Dec 7 10:07:51 1996 Jeffrey A Law (law@cygnus.com)
4449
4450 * emulparms/mn10300.sh: Handle leading underscores.
4451
4452 Thu Dec 5 13:45:58 1996 Ian Lance Taylor <ian@cygnus.com>
4453
4454 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Only
4455 set hold_rel if SEC_ALLOC is set.
4456
4457 Tue Dec 3 11:29:20 1996 Ian Lance Taylor <ian@cygnus.com>
4458
4459 * ldlang.c (section_already_linked): Set the output_offset as well
4460 as the output_section when only reading symbols from a file.
4461
4462 Mon Dec 2 11:43:50 1996 Ian Lance Taylor <ian@cygnus.com>
4463
4464 * emulparams/*.sh: Make sure that each set of parameters which
4465 uses the elf.sc script sets MACHINE.
4466
4467 Wed Nov 27 03:22:05 1996 Jason Merrill <jason@yorick.cygnus.com>
4468
4469 * scripttempl/elf{,mips,ppc}.sc: Add the remaining DWARF sections.
4470 * scripttempl/elfd10v.sc: Likewise.
4471 * scripttempl/v850.sc: Likewise.
4472
4473 Tue Nov 26 16:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
4474
4475 * configure: Rebuild with autoconf 2.12.
4476
4477 Mon Nov 25 12:17:55 1996 Jim Wilson <wilson@cygnus.com>
4478
4479 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Add case
4480 for bfd_vma to init loop.
4481
4482 Mon Nov 25 09:55:07 1996 Jeffrey A Law (law@cygnus.com)
4483
4484 * emulparms/mn10300.sh: Remove bogus '_' prefix for
4485 entry symbol and ctor/dtor stuff.
4486
4487 Fri Nov 15 13:00:18 1996 Jeffrey A Law (law@cygnus.com)
4488
4489 * Makefile.in (emn10300.c): Add dependencies.
4490 * configure.tgt: Handle mn10300.
4491 * emulparms/mn10300.sh: New file.
4492
4493 Tue Nov 5 10:57:50 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4494
4495 * emulparams/d10velf.sh (READONLY_START_ADDR): Changed to 0x2000004.
4496 (EMBEDDED): Define.
4497
4498 Fri Nov 1 10:01:27 1996 Ian Lance Taylor <ian@cygnus.com>
4499
4500 * ld.texinfo: Add section on reporting bugs.
4501
4502 * scripttempl/m68kcoff.sc: Make sure the etext and __CTOR_LIST__
4503 symbols are correctly aligned.
4504
4505 Thu Oct 31 09:28:59 1996 Jeffrey A Law (law@cygnus.com)
4506
4507 * scriptempl/v850.sc (zdata): Handle reszdata, romzdata and
4508 romzbss too.
4509
4510 Tue Oct 29 12:33:05 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4511
4512 * emulparams/d10velf.sh: Changes needed for D10V-EVA board.
4513 Set TEXT_START_ADDR to 0x1000000. Set READONLY_START_ADDR to
4514 0x2000000.
4515
4516 * scripttempl/elfd10v.sc: Fix calculation of .text. Change
4517 .stack to start at 0x2007ffe.
4518
4519 Mon Oct 28 15:37:00 1996 Doug Evans <dje@canuck.cygnus.com>
4520
4521 * configure.tgt (sparclet*-*-aout*): Delete, use sparc*-*-aout*.
4522
4523 Wed Oct 23 16:17:22 1996 Jeffrey A Law (law@cygnus.com)
4524
4525 * scriptempl/v850.sc (zdata): Fix typo "zrodata" -> "rozdata".
4526
4527 * scriptempl/v850.sc (zdata): Make sure this stays
4528 in lo-memory.
4529
4530 Tue Oct 22 11:36:47 1996 Jeffrey A Law (law@cygnus.com)
4531
4532 * scripttempl/v850.sc (__ep): Put it at the start
4533 of the tda section.
4534
4535 * scriptempl/v850.sc: Move all "normal" sections into
4536 the external memory region (0x100000 - 0x200000).
4537
4538 Mon Oct 21 17:16:59 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4539
4540 * scripttempl/elfd10v.sc: Clone from elf.sc, move .text to
4541 0x10000, so that is more room for data.
4542
4543 * emulparams/d10velf.sh (TEXT_START_ADDR): Now 0x100000.
4544 (READONLY_START_ADDR): Now 0x0.
4545 (SCRIPT_NAME): Now elfd10v.
4546
4547 * Makefile.in (ed10velf.c): Depend on elfd10v.sc, not elf.sc.
4548
4549 Fri Oct 18 22:12:49 1996 Doug Evans <dje@canuck.cygnus.com>
4550
4551 * emulparams/m32relf.sh (TEXT_START_ADDR): Change from 0 to 0x100.
4552
4553 Fri Oct 18 15:43:38 1996 Ian Lance Taylor <ian@cygnus.com>
4554
4555 * Makefile.in (ALL_EMULATIONS): Remove eelf64alpha.o.
4556 (ALL_64_EMULATIONS): New variable.
4557 * configure.in: Accept --enable-64-bit-bfd option. If it is set
4558 with --enable-targets=all, include ALL_64_EMULATIONS in
4559 EMULATION_OFILES.
4560 * configure: Rebuild.
4561
4562 Fri Oct 18 12:58:35 1996 Jeffrey A Law (law@cygnus.com)
4563
4564 * scripttempl/v850.sc (__gp, __ep): Define.
4565
4566 Thu Oct 17 18:14:07 1996 Ian Lance Taylor <ian@cygnus.com>
4567
4568 * ld.texinfo: Try to consistently use a single or a double dash
4569 for each option.
4570
4571 Thu Oct 17 10:17:20 1996 Doug Evans <dje@canuck.cygnus.com>
4572
4573 * emulparams/m32relf.sh (EMBEDDED): Define.
4574
4575 Thu Oct 17 10:56:49 1996 Jeffrey A Law (law@cygnus.com)
4576
4577 * scripttempl/v850.sc (.zdata): Add this before .text.
4578 (.sdata): Also include .rosdata as part of the .sdata.
4579 (.tdata): Include this just before .sdata.
4580
4581 * emulparms/v850.sh (SCRIPT_NAME): Use "v850" not "elf".
4582 * scripttempl/v850.sc: Wrap script with a "cat << EOF".
4583
4584 Wed Oct 16 23:10:01 1996 Jeffrey A Law (law@cygnus.com)
4585
4586 * scripttempl/v850.sc: New linker script for the V850.
4587 * Makefile.in: Use it.
4588
4589 Thu Oct 10 17:57:00 1996 Ian Lance Taylor <ian@cygnus.com>
4590
4591 * emulparams/elf32b4300.sh: Define _gp in OTHER_GOT_SYMBOLS, not
4592 OTHER_READWRITE_SECTIONS.
4593 * emulparams/elf32l4300.sh: Likewise.
4594
4595 Wed Oct 9 14:36:18 1996 Ian Lance Taylor <ian@cygnus.com>
4596
4597 * ld.h (ld_config_type): Add warn_section_align field.
4598 * lexsup.c (OPTION_WARN_SECTION_ALIGN): Define.
4599 (ld_options): Add --warn-section-align.
4600 (parse_args): Handle --warn-section-align.
4601 * ldlang.c (lang_size_sections): If warn_section_align, warn if
4602 the start of a section changes due to alignment.
4603 * ld.texinfo, ld.1: Document --warn-section-align.
4604 * ld.texinfo: Change some single dashes to double dashes.
4605
4606 * emultempl/pe.em (set_pe_subsystem): Record entry symbol for each
4607 subsystem type. Ifdef out os2 type. Recognize a version number.
4608
4609 Tue Oct 8 12:07:13 1996 Ian Lance Taylor <ian@cygnus.com>
4610
4611 * emultempl/pe.em (set_pe_subsystem): When setting the subsystem
4612 to windows, set the entry point.
4613
4614 * Makefile.in (ldlex.c): Don't pass any options to $(LEX).
4615
4616 Mon Oct 7 17:29:05 1996 Ian Lance Taylor <ian@cygnus.com>
4617
4618 * ld.texinfo (Options): Mention .so extensions for shared
4619 libraries.
4620
4621 Sun Oct 6 22:35:36 1996 Jason Merrill <jason@yorick.cygnus.com>
4622
4623 * scripttempl/elf{,mips,ppc}.sc: Add DWARF 2 sections.
4624
4625 Fri Oct 4 18:49:31 1996 Ian Lance Taylor <ian@cygnus.com>
4626
4627 * scripttempl/m68kcoff.sc: Only set the address of .text if
4628 RELOCATING.
4629
4630 Fri Oct 4 10:59:52 1996 Doug Evans <dje@canuck.cygnus.com>
4631
4632 * emulparams/sparcaout.sh ({BIG,LITTLE}_OUTPUT_FORMAT): Define.
4633 * scripttempl/aout.sc ({BIG,LITTLE}_OUTPUT_FORMAT): Provide default.
4634 (OUTPUT_FORMAT): Support bi-endian targets.
4635
4636 Thu Oct 3 13:52:03 1996 Ian Lance Taylor <ian@cygnus.com>
4637
4638 * fnmatch.h, fnmatch.c: Remove (now in libiberty).
4639 * Makefile.in: Rebuild dependencies.
4640 (CFILES): Remove fnmatch.c.
4641 (HFILES): Remove fnmatch.h.
4642 (OFILES): Remove fnmatch.o.
4643
4644 Thu Oct 3 15:41:24 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
4645
4646 * Makefile.in (mostlyclean): Move config.log to distclean.
4647
4648 Wed Oct 2 23:45:25 1996 Geoffrey Noer <noer@cygnus.com>
4649
4650 * emultmpl/pe.em: increase size of stack reserve to 0x2000000
4651 (necessary in order to compile parse.c in gcc sources under NT)
4652
4653 Wed Oct 2 14:49:10 1996 Ian Lance Taylor <ian@cygnus.com>
4654
4655 * lexsup.c (ld_options): Fix typo in --rpath-link description.
4656 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Suggest
4657 --rpath if a needed library is not found.
4658
4659 Tue Oct 1 16:17:33 1996 Joel Sherrill <joel@oarcorp.com>
4660
4661 * configure.tgt (mips*-*-rtems*): New target, like mips*-*-elf*.
4662
4663 Tue Oct 1 15:50:34 1996 Ian Lance Taylor <ian@cygnus.com>
4664
4665 * ld.texinfo (Options): Give more detail on -l option.
4666
4667 * scripttempl/elfmips.sc: Handle CREATE_SHLIB the same way that
4668 elf.sc does, so that glibc works better.
4669
4670 * ldver.c (ld_program_version): New variable.
4671 (ldversion): Use it.
4672 * ldver.h (ld_program_version): Declare.
4673 * lexsup.c (ld_options): Handle --dll-verbose like --verbose, not
4674 --version. Change --version handling to match current GNU
4675 standards.
4676 (help): Print bug report address.
4677
4678 Mon Sep 30 12:14:43 1996 Doug Evans <dje@canuck.cygnus.com>
4679
4680 * Makefile.in (em32relf.c): Add rule for.
4681 * configure.tgt (m32r-*-*): Recognize.
4682 * emulparams/m32relf.sh: New file.
4683
4684 Thu Sep 26 13:58:47 1996 Stan Shebs <shebs@andros.cygnus.com>
4685
4686 * mpw-make.sed: Add symbolic doublequoting to ldmain compile edit.
4687 * mpw-config.in: Add mips-*-* case as mips-elf, and use more
4688 wildcards in matching.
4689 * mpw-emipself.c: New file, pregenerated mips elf emulation.
4690
4691 Tue Sep 17 12:18:21 1996 Ian Lance Taylor <ian@cygnus.com>
4692
4693 * ldint.texinfo: Rewrote.
4694
4695 * configure.tgt: Add cases for MIPS 5000 like MIPS 4300.
4696
4697 Mon Sep 16 17:55:21 1996 Ian Lance Taylor <ian@cygnus.com>
4698
4699 * scripttempl/armcoff.sc: Only define symbols if RELOCATING. Fix
4700 syntax error on __end__ line.
4701
4702 * scripttempl/armcoff.sc: For -N or -n, don't align .data. From
4703 Chris Hadley <Christopher.Hadley@cl.cam.ac.uk>
4704
4705 Sun Sep 15 22:09:56 1996 Jeffrey A Law (law@cygnus.com)
4706
4707 * emulparms/v850.sh: Fix OTHER_RELOCATING_SECTIONS.
4708
4709 Sun Sep 15 10:38:16 1996 Mark Alexander <marka@cygnus.com>
4710
4711 * emulparms/d10v.sh: Set OTHER_RELOCATING_SECTIONS to put
4712 stack at top of simulator memory.
4713
4714 Fri Sep 13 15:49:45 1996 Ian Lance Taylor <ian@cygnus.com>
4715
4716 * ldlex.l (SYMBOLCHARN): Add $, _, and ~.
4717
4718 Wed Sep 11 23:30:42 1996 Ian Lance Taylor <ian@cygnus.com>
4719
4720 * ldmain.c (get_emulation): Check for -mips4 like -mips1, et. al.
4721
4722 Thu Sep 5 15:24:12 1996 Ian Lance Taylor <ian@cygnus.com>
4723
4724 * ldlang.c (section_already_linked): Accept a lang_input_statement
4725 as the PTR argument. If the file is symbols only, discard all
4726 input sections.
4727 (ldlang_add_file): Pass entry to bfd_map_over_sections.
4728
4729 Wed Sep 4 15:53:43 1996 Ian Lance Taylor <ian@cygnus.com>
4730
4731 * configure.tgt (alpha-*-gnu*): New target. From Fila Kolodny
4732 <fila@ibi.com>.
4733
4734 Tue Sep 3 00:52:54 1996 Jeffrey A Law (law@cygnus.com)
4735
4736 * emulparms/v850.sh: Set OTHER_RELOCATING_SECTIONS
4737
4738 Sun Sep 1 21:48:58 1996 Jeffrey A Law (law@cygnus.com)
4739
4740 * emulparms/v850.sh: Set EMBEDDED.
4741
4742 Fri Aug 30 22:30:30 1996 Jeffrey A Law (law@cygnus.com)
4743
4744 * emulparms/v850.sh: Entry symbol is "_start", tweak
4745 ctor/dtor support.
4746
4747 Fri Aug 30 18:32:31 1996 Ian Lance Taylor <ian@cygnus.com>
4748
4749 * configure.tgt (sh-*-elf*): New target.
4750 * emulparams/shelf.sh: New file.
4751 * emulparams/shlelf.sh: New file.
4752 * Makefile.in (ALL_EMULATIONS): Add eshelf.o and eshlelf.o.
4753 (eshelf.c, eshlelf.c): New targets.
4754 * scripttempl/elf.sc: If EMBEDDED is defined, then don't add
4755 SIZEOF_HEADERS to TEXT_START_ADDR. Expand CTOR_START and CTOR_END
4756 around .ctors, and DTOR_START and DTOR_END around .dtors. Expand
4757 OTHER_RELOCATING_SECTIONS if RELOCATING.
4758
4759 Thu Aug 29 16:57:46 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4760
4761 * configure.{host,tgt} (i[345]86-*-*): Recognize i686 for pentium
4762 pro.
4763
4764 Mon Aug 26 12:58:11 1996 Ian Lance Taylor <ian@cygnus.com>
4765
4766 * ldgram.y (section): Add opt_nocrossrefs; pass value to
4767 lang_enter_overlay.
4768 (opt_nocrossrefs): New nonterminal.
4769 * ldlex.l: Recognize NOCROSSREFS keyword in EXPRESSION mode.
4770 * ldlang.c (overlay_nocrossrefs): New static variable.
4771 (lang_enter_overlay): Add nocrossrefs parameter.
4772 (lang_leave_overlay): Only add nocrossrefs if overlay_nocrossrefs
4773 is set. Initialize overlay_nocrossrefs.
4774 * ldlang.h (lang_enter_overlay): Update declaration.
4775 * ld.texinfo (Overlays): Update documentation.
4776
4777 * ldver.c (ldversion): Print GNU ld in the version message.
4778
4779 Thu Aug 22 17:10:40 1996 Ian Lance Taylor <ian@cygnus.com>
4780
4781 * configure.host: Set HLDENV.
4782 * configure.in: Substitute HLDENV.
4783 * configure: Rebuild.
4784 * Makefile.in (HLDENV): New variable.
4785 ($(LD_PROG)): Use $(HLDENV).
4786
4787 Thu Aug 22 16:29:28 1996 Jeffrey A Law (law@cygnus.com)
4788
4789 * Makefile.in (ev850.c): New target.
4790 * configure.tgt (v850-*-*): New target.
4791 * emulparams/v850.sh: New file.
4792
4793 Thu Aug 22 11:16:02 1996 Stan Shebs <shebs@andros.cygnus.com>
4794
4795 * mpw-make.sed: Add @DASH_C_FLAG@ to compiler edit.
4796
4797 Wed Aug 21 11:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
4798
4799 * scripttempl/elf.sc: Put .gnu.linkonce* sections in appropriate
4800 containing sections.
4801
4802 Mon Aug 19 13:01:42 1996 Ian Lance Taylor <ian@cygnus.com>
4803
4804 * fnmatch.c: Include sysdep.h.
4805
4806 Mon Aug 19 11:28:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4807
4808 * genscripts.sh: Undo 8/16 change.
4809
4810 * emulparams/d10velf.sh (MACHINE): Explicitly set to nothing.
4811
4812 Fri Aug 16 19:18:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4813
4814 * genscripts.sh: Explicitly reset any shell variables set or used
4815 by the various .sc scripts to allow inadvertant use of these
4816 names as normal environment variables by the person running
4817 configure.
4818
4819 * Makefile.in (ed10velf.c): Use tdir_d10v, not tdir_arcelf.
4820
4821 Fri Aug 16 14:15:41 1996 James G. Smith <jsmith@cygnus.co.uk>
4822
4823 * scripttempl/armcoff.sc (__bss_start__, __bss_end__,
4824 __data_start__, __data_end__): Added to keep in sync. with the
4825 default ARM crt0.s. Added __CTOR_LIST__ and __DTOR_LIST__ support.
4826
4827 Thu Aug 8 14:24:56 1996 Ian Lance Taylor <ian@cygnus.com>
4828
4829 * ldcref.c (check_reloc_refs): If info->same, look for any symbol
4830 defined in info->defsec, not just the section symbol.
4831
4832 Wed Aug 7 14:40:48 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
4833
4834 * configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
4835 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
4836 (NEED_DECLARATION_SBRK): New macro.
4837 * configure, config.in: Rebuild.
4838 * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
4839 * ldmain.c (sbrk): Declare if HAVE_SBRK and
4840 NEED_DECLARATION_SBRK.
4841
4842 * ldlang.c (lang_record_phdrs): Cast xmalloc and xrealloc return.
4843
4844 Mon Aug 5 16:26:14 1996 Ian Lance Taylor <ian@cygnus.com>
4845
4846 * ldlex.l: Recognize OVERLAY.
4847 * ldgram.y: Add section_phdr field to %union.
4848 (section): Handle phdr_opt result. Add OVERLAY case.
4849 (opt_exp_without_type): New nonterminal.
4850 (phdr_opt): Return list of phdrs.
4851 (overlay_section): New nonterminal.
4852 * ldlang.c: Include <ctype.h>.
4853 (lang_leave_output_section_statement): Add phdrs parameter.
4854 Change all callers.
4855 (lang_section_in_phdr): Remove.
4856 (overlay_vma, overlay_lmn, overlay_max): New static variables.
4857 (struct overlay_list): Define.
4858 (overlay_list): New static variable.
4859 (lang_enter_overlay, lang_enter_overlay_section): New functions.
4860 (lang_leave_overlay_section, lang_leave_overlay): New functions.
4861 * ldlang.h (lang_leave_output_section_statement): Update
4862 declaration for new parameter.
4863 (lang_section_in_phdr): Don't declare.
4864 (lang_enter_overlay, lang_enter_overlay_section): Declare.
4865 (lang_leave_overlay_section, lang_leave_overlay): Declare.
4866 * ld.texinfo (Overlays): New node under SECTIONS, documenting
4867 overlays.
4868
4869 * ldlex.l: Recognize MAX and MIN.
4870 * ldgram.y (MAX, MIN): New terminals.
4871 (exp): Recognize MAX and MIN.
4872 * ldexp.c (fold_binary): Handle MAX and MIN.
4873 * ld.texinfo (Arithmetic Functions): Document MAX and MIN.
4874
4875 * ld.texinfo (PHDRS): Use @cindex, not @kindex, for program header
4876 index entries.
4877
4878 * ldgram.y (SIZEOF, ADDR): Do not specify type.
4879
4880 * ldcref.c (check_nocrossref): Skip symbols with no output
4881 sections.
4882
4883 Fri Aug 2 14:57:49 1996 Ian Lance Taylor <ian@cygnus.com>
4884
4885 * ldgram.y (LOADADDR): New terminal.
4886 (exp): Handle LOADADDR.
4887 * ldlex.l: Recognize LOADADDR.
4888 * ldexp.c (exp_print_token): Add LOADADDR.
4889 (fold_name): Implement LOADADDR.
4890 * ldlang.c (exp_init_os): Treat LOADADDR like ADDR.
4891 * ld.texinfo (Arithmetic Functions): Document LOADADDR.
4892
4893 Thu Aug 1 12:52:19 1996 Ian Lance Taylor <ian@cygnus.com>
4894
4895 * ld.h (check_nocrossrefs): Declare.
4896 * ldlang.h (struct lang_nocrossref): Define.
4897 (struct lang_nocrossrefs): Define.
4898 (nocrossref_list): Declare.
4899 (lang_add_nocrossref): Declare.
4900 * ldlex.l: Recognize NOCROSSREFS keyword.
4901 * ldgram.y (%union): Add nocrossref field.
4902 (NOCROSSREFS): New terminal.
4903 (ifile_p1): Recognize NOCROSSREFS.
4904 (nocrossref_list): New nonterminal.
4905 * ldlang.c (nocrossref_list): Define.
4906 (lang_add_nocrossref): New function.
4907 * ldmain.c (main): If nocrossref_list is not NULL, call
4908 check_nocrossrefs.
4909 (warning_callback): Free symbols if there is no place to store
4910 them.
4911 (notice): Call add_cref if nocrossref_list is not NULL.
4912 * ldcref.c: Include "ldexp.h" and "ldlang.h".
4913 (check_nocrossrefs): New function.
4914 (check_nocrossref): New static function.
4915 (struct check_refs_info): Define.
4916 (check_refs, check_reloc_refs): New static functions.
4917 * Makefile.in: Rebuild dependencies.
4918 * ld.texinfo (Option Commands): Document NOCROSSREFS.
4919
4920 * ld.texinfo (Section Placement): Improve the wording of the
4921 wildcard documentation. Mention that wildcards are only searched
4922 for on the command line, not in the file system.
4923
4924 * emultempl/sunos.em (gld${EMULATION_NAME}_after_open): Move
4925 definition of lib_path inside condition where it is used.
4926
4927 Wed Jul 31 13:17:10 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4928
4929 * emulparams/d10velf.sh: Now works with elf.sc.
4930
4931 Wed Jul 31 11:52:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4932
4933 * emulparams/d10velf.sh (SCRIPT_NAME): Change to vanilla.
4934
4935 Tue Jul 30 14:46:42 1996 Ian Lance Taylor <ian@cygnus.com>
4936
4937 * ldlang.c (lang_size_sections): Add the section VMA to the result
4938 value when computing the address of a section.
4939
4940 * ld.h (args_type): Add cref field.
4941 * lexsup.c (parse_args): Set command_line.cref.
4942 * ldmain.c (main): Check command_line.cref rather than
4943 link_info.notice_all.
4944 (notice): Likewise.
4945
4946 * ldcref.c (output_one_cref): Don't crash if a symbol is defined
4947 in a section without an owner.
4948
4949 Mon Jul 29 17:23:33 1996 Ian Lance Taylor <ian@cygnus.com>
4950
4951 * fnmatch.h, fnmatch.c: New files.
4952 * ldlex.l: Remove unused definition of FILENAME. Add definition
4953 of WILDCHAR. In SCRIPT mode, accept any sequence of WILDCHAR as a
4954 NAME.
4955 * ldgram.y (file_NAME_list): Accept '*' and '?' specially.
4956 (input_section_spec): Accept '?' specially.
4957 (statement): Change exp to mustbe_exp in length and FILL cases.
4958 (section): Call ldlex_script before section statements, and call
4959 ldlex_popstate after them.
4960 * ldlang.c: Include "fnmatch.h".
4961 (wildcardp): New static function.
4962 (wild_section): Permit the section name to be a wildcard.
4963 (wild_file): New static function, broken out of wild.
4964 (wild): Call wild_file. Permit the file name to be a wildcard.
4965 (open_input_bfds): Don't call lookup_name for a wildcard pattern.
4966 * Makefile.in: Rebuild dependencies.
4967 (CFILES): Add fnmatch.c.
4968 (HFILES): Add fnmatch.h.
4969 (OFILES): Add fnmatch.o.
4970 * ld.texinfo: Document that file and section names can now be
4971 wildcard patterns.
4972
4973 * ldlang.c (lang_place_orphans): Correct condition: place a common
4974 section if not relocateable or if common definitions are forced.
4975
4976 Wed Jul 24 12:16:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4977
4978 * emulparams/d10velf.sh (SCRIPT_NAME): Change to elf.
4979
4980 Wed Jul 24 13:38:22 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4981
4982 * configure.tgt (d10v-*-*): Don't require the -elf, allow plain d10v.
4983
4984 Tue Jul 23 10:36:19 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4985
4986 * Makefile.in (ed10velf.c): New target.
4987 * configure.tgt (d10v-*-elf*): New target.
4988 * emulparams/d10velf.sh: New file.
4989
4990 Thu Jul 18 16:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
4991
4992 * configure.tgt (sparc*-*-sysv4*): New target. From Andrew Gierth
4993 <ANDREWG@microlise.co.uk>.
4994
4995 * configure.host: Change irix5 to irix[56]*.
4996 * configure.tgt: Likewise.
4997
4998 Wed Jul 17 10:52:46 1996 Kim Knuttila <krk@cygnus.com>
4999
5000 * emultempl/pe.em (sort_sections): Pay attention to return code.
5001
5002 * ldmisc.c (demangle): Remove all prefix '.'s from a name.
5003
5004 Mon Jul 15 11:49:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5005
5006 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Round
5007 the value of __start_SECNAME to the alignment required by the
5008 section to be placed.
5009
5010 Tue Jul 9 12:09:02 1996 Ian Lance Taylor <ian@cygnus.com>
5011
5012 * configure.tgt (mips*el-*-elf*): Use elf32elmip.
5013 (mips*-*-elf*): Use elf32ebmip.
5014 * emulparams/elf32bmip.sh (EMBEDDED): Don't define.
5015 * emulparams/elf32lmip.sh (EMBEDDED): Don't define.
5016 * emulparams/elf32elmip.sh: New file; copy of elf32lmip.sh with
5017 EMBEDDED defined.
5018 * emulparams/elf32ebmip.sh: New file; copy of elf32bmip.sh with
5019 EMBEDDED defined.
5020 * emulparams/elf32b4300.sh (EMBEDDED): Define.
5021 * emulparams/elf32l4300.sh (EMBEDDED): Define.
5022 * Makefile.in (ALL_EMULATIONS): Add eelf32ebmip.o eelf32elmip.o.
5023 (eelf32ebmip.c, eelf32elmip.c): New targets.
5024
5025 Thu Jul 4 12:01:03 1996 Ian Lance Taylor <ian@cygnus.com>
5026
5027 * ldver.c (ldversion): Set version to cygnus-2.7.1.
5028
5029 * Released binutils 2.7.
5030
5031 * emulparams/pc532macha.sh: Rename from pc532machaout.sh to avoid
5032 System V file name limitations.
5033 * configure.tgt (nc32k-pc532-mach*, ns32k-pc532-ux*): Use
5034 pc532macha rather than pc532machaout.
5035 * Makefile.in (ALL_EMULATIONS): Change epc532machaout.o to
5036 epc532macha.o.
5037 (epc532macha.c): Rename target from epc532machaout.c.
5038
5039 Wed Jul 3 11:40:10 1996 Ian Lance Taylor <ian@cygnus.com>
5040
5041 * ldlang.c (print_padding_statement): Use %u, not %x, to print
5042 fill value.
5043
5044 Sun Jun 30 11:16:43 1996 Stan Shebs <shebs@andros.cygnus.com>
5045
5046 * mpw-eppcmac.c: Update to reflect May 23 change to aix.em.
5047
5048 Thu Jun 27 14:03:42 1996 Ian Lance Taylor <ian@cygnus.com>
5049
5050 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Put the .sa
5051 file just before the .so file, rather than just after.
5052
5053 * configure.host: Use -print-file-name=FILE rather than piping
5054 -print-libgcc-file-name through sed.
5055 (i[345]86*-*-sco*, i[345]86-*-isc*): Create crtbegin.o and
5056 crtend.o files, in case gcc doesn't use them.
5057 * Makefile.in (mostlyclean): Remove crtbegin.o and crtend.o.
5058
5059 Wed Jun 26 15:57:21 1996 Ian Lance Taylor <ian@cygnus.com>
5060
5061 * configure.tgt (mips*-dec-osf*): New target.
5062
5063 Tue Jun 25 22:15:29 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
5064
5065 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
5066 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
5067 (docdir): Removed.
5068 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
5069 (AC_PROG_INSTALL): Added.
5070 * configure: Rebuilt.
5071
5072 Mon Jun 24 18:48:16 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5073
5074 * scripttempl/elfppc.sc (_GLOBAL_OFFSET_TABLE_): Don't do a
5075 PROVIDE of _GLOBAL_OFFSET_TABLE_, since it needs to be at a
5076 non-fixed location.
5077
5078 Mon Jun 24 17:55:31 1996 Jouke Numan <jnuman@bazis.nl>
5079
5080 * ldlang.h (enum section_type): Define.
5081 (lang_output_section_statement_type): Remove loadable field. Add
5082 sectype field.
5083 (lang_enter_output_section_statement): Change flags parameter in
5084 prototype to sectype.
5085 * ldgram.y (typebits): Remove.
5086 (sectype): New static variable.
5087 (opt_at): Use sectype rather than typebits.
5088 (type): Set sectype rather than typebits.
5089 (atype): Likewise.
5090 * ldlex.l: Recognize DSECT, COPY, INFO, and OVERLAY in
5091 EXPRESSION mode.
5092 * ldlang.c (lang_output_section_statement_lookup): Set sectype
5093 field rather than loadable field.
5094 (wild_doit): Check sectype rather than loadable.
5095 (lang_record_phdrs): Likewise.
5096 (lang_enter_output_section_statement): Rename flags parameter to
5097 sectype. Set sectype field rather than loadable field. Set flags
5098 field based on sectype.
5099
5100 Mon Jun 24 12:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
5101
5102 * scripttempl/elf.sc: Force .stab* and .comment sections to start
5103 at 0.
5104
5105 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
5106 using shared libraries.
5107 * configure: Rebuild with autoconf 2.10.
5108
5109 Fri Jun 21 17:40:56 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
5110
5111 * configure.tgt: Add support for *-*-rtems* configurations.
5112
5113 Fri Jun 21 13:05:51 1996 Richard Henderson <rth@tamu.edu>
5114
5115 * configure.tgt (alpha-*-linuxecoff*): New target.
5116 (alpha-*-linux*): Use elf64alpha.
5117 * emulparams/elf64alpha.sh: New file.
5118 * emultempl/elf32.em: If ELFSIZE is not set, set it to 32. Use
5119 ${ELFSIZE} rather than 32 when calling BFD routines.
5120 (hold_rodata): New static variable.
5121 (gld${EMULATION_NAME}_place_orphan): Use hold_rodata for a
5122 readonly section that is not code.
5123 (gld${EMULATION_NAME}_place_section): Set hold_rodata. Don't use
5124 a .rel section unless its bfd_section field is not NULL.
5125 * Makefile.in (ALL_EMULATIONS): Add eelf64alpha.o.
5126 (eelf64alpha.c): New target.
5127
5128 Fri Jun 21 12:45:46 1996 Ian Lance Taylor <ian@cygnus.com>
5129
5130 * ldmisc.c (vfinfo): Correct handling of 0 in %W case.
5131
5132 Thu Jun 20 13:55:28 1996 Ian Lance Taylor <ian@cygnus.com>
5133
5134 Add enough support to understand the gcc svr3.ifile script:
5135 * ldlex.l: Recognize BLOCK and GROUP in EXPRESSION context. Add
5136 BIND keyword.
5137 * ldgram.y: Add BIND token.
5138 (section): Recognize GROUP.
5139 (opt_ext_with_type): Recognize a couple of cases of BIND.
5140 * ldlang.c (init_os): Don't do anything if section is already
5141 initialized. Call exp_init_os on addr_tree field.
5142 (exp_init_os): New static function.
5143 (map_input_to_output_sections): Call exp_init_os on assignment
5144 expression.
5145 (lang_place_orphans): Check for common sections by name COMMON
5146 rather than by common_section field. Don't warn about absence of
5147 [COMMON] command.
5148
5149 * ldlang.h (lang_input_statement_type): Remove useless fields
5150 common_section, common_output_section, and complained, as well as
5151 all references to them.
5152
5153 * ldexp.c: Reindent a lot of code.
5154 (exp_fold_tree): Call FAIL rather than einfo in default case.
5155
5156 Wed Jun 19 11:40:14 1996 Ian Lance Taylor <ian@cygnus.com>
5157
5158 * configure.host (m88*-*-dgux*): Quote HOSTING_CRT0. From
5159 <randall.hron@medaphis.com>.
5160
5161 Tue Jun 18 15:53:09 1996 Jeffrey A. Law <law@rtl.cygnus.com>
5162
5163 * scripttempl/h8300s.sc: New file for H8/S.
5164 * emulpararms/h8300s.sh: New file for H8/S.
5165 * Makefile.in (ALL_EMULATIONS): Add H8/S.
5166 (e_h8300s.c): Add dependencies.
5167 * configure.tgt: Add H8/S to targ_extra_emuls.
5168
5169 Tue Jun 18 17:55:39 1996 Ian Lance Taylor <ian@cygnus.com>
5170
5171 * configure.tgt (i[345]86*-*-isc*): New target. From
5172 <uddeborg@carmen.se>.
5173
5174 Wed Jun 12 12:46:21 1996 Ian Lance Taylor <ian@cygnus.com>
5175
5176 * lexsup.c: Include "libiberty.h".
5177 (parse_args): Copy the -Y argument into memory.
5178 (set_default_dirlist): Don't put the ':' back into the directory
5179 list.
5180
5181 Fri Jun 7 11:27:42 1996 Ian Lance Taylor <ian@cygnus.com>
5182
5183 * emultempl/sunos.em: Include libiberty.h.
5184 (gld${EMULATION_NAME}_set_symbols): New static function to add
5185 LD_LIBRARY_PATH to the list of search directories.
5186 (ld_${EMULATION_NAME}_emulation): Add new set_symbols routine.
5187
5188 Thu Jun 6 11:50:31 1996 Ian Lance Taylor <ian@cygnus.com>
5189
5190 * emulparams/elf32bmip.sh (OTHER_GOT_SYMBOLS): Use ALIGN(16)
5191 rather than . when computing _gp value. From Per Fogelstrom.
5192 * emulparams/elf32lmip.sh (OTHER_GOT_SYMBOLS): Likewise.
5193
5194 * ldmain.c (main): Don't close and unlink the file on error, since
5195 remove_output will do it anyhow.
5196 * ldlang.c (open_output): Set boolean variable to true, not 1.
5197
5198 Wed Jun 5 18:34:14 1996 James G. Smith <jsmith@cygnus.co.uk>
5199
5200 * emulparams/{elf32b4300.sh,elf32l4300.sh} (SCRIPT_NAME): Use
5201 elfmips instead of elf.
5202
5203 Tue Jun 4 18:43:07 1996 Ian Lance Taylor <ian@cygnus.com>
5204
5205 * ldcref.c: New file.
5206 * ld.h (add_cref, output_cref): Declare.
5207 * ldmain.c (main): Initialize notice_all field. If it is set at
5208 end of link, call output_cref.
5209 (notice): Rename from notice_ysym. Check notice_all.
5210 * ldmisc.c (finfo): Make globally visible.
5211 * ldmisc.h (finfo): Declare.
5212 * lexsup.c (OPTION_CREF): Define.
5213 (ld_options): Add "cref".
5214 (parse_args): Handle OPTION_CREF.
5215 * Makefile.in: Rebuild dependencies.
5216 (CFILES): Add ldcref.c.
5217 (OFILES): Add ldcref.o.
5218 * ld.texinfo, ld.1: Document --cref.
5219
5220 Tue Jun 4 12:12:25 1996 Tom Tromey <tromey@csk3.cygnus.com>
5221
5222 * Makefile.in (install): Make $(tooldir) and $(tooldir)/bin.
5223
5224 Fri May 31 12:40:55 1996 Ian Lance Taylor <ian@cygnus.com>
5225
5226 * emultempl/pe.em (sort_sections): Don't assume that a
5227 wild_statement has a section name.
5228
5229 Wed May 29 13:13:35 1996 Ian Lance Taylor <ian@cygnus.com>
5230
5231 * scripttempl/elfmips.sc: Quote test -z argument.
5232
5233 * ld.texinfo: Clarify the CONSTRUCTORS command.
5234
5235 Thu May 23 16:07:44 1996 Ian Lance Taylor <ian@cygnus.com>
5236
5237 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Initialize
5238 file, not impfile.
5239
5240 Wed May 22 11:31:30 1996 Doug Evans <dje@seba.cygnus.com>
5241
5242 * ldlang.c (wild_doit): Don't copy over SEC_LINK_{ONCE,DUPLICATES}
5243 if final link.
5244 * emultempl/pe.em (sfunc): Renamed to sort_by_file_name.
5245 (sort_by_section_name, sort_sections_1): New functions.
5246 (sort_sections): Only sort by file name sections in .idata.
5247 Add "Grouped Sections" support.
5248 (gld${EMULATION_NAME}_place_orphan): Rewrite to support Grouped
5249 Sections.
5250 (gld${EMULATION_NAME}_place_section): Delete.
5251 * scripttempl/pe.sc (.text,.data,.rdata): Add *(.foo\$).
5252 (.CRT,.rsrc): Rewrite to use Grouped Section support.
5253
5254 Tue May 21 14:31:48 1996 Stan Shebs <shebs@andros.cygnus.com>
5255
5256 * mpw-eppcmac.c: Update to reflect changes to aix.em.
5257
5258 Sun May 19 16:59:44 1996 Doug Evans <dje@seba.cygnus.com>
5259
5260 * ldlang.c (dprint_statement): Stop printing at end of list.
5261
5262 Sat May 18 13:12:05 1996 Steve Chamberlain <sac@slash.cygnus.com>
5263
5264 Support for --force-exe-suffix
5265 * ld.h (args_type): Add force_exe_suffix.
5266 * ld.texinfo: Add documentation.
5267 * ldmain.c (main): Add support for option.
5268 * lexsup.c (OPTION_FORCE_EXE_SUFFIX): New.
5269 (ld_options, parse_args): Add support for option.
5270
5271 Wed May 15 12:50:25 1996 Jim Wilson <wilson@chestnut.cygnus.com>
5272
5273 * emultempl/pe.em (set_pe_value): Pass 0 not 16 to strtoul call.
5274
5275 Fri May 10 16:28:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5276
5277 * scripttempl/elfppc.sc (__stack): Make __stack 0 if it was
5278 referenced but not defined.
5279
5280 Thu May 9 08:52:23 1996 Rob Savoye <rob@chinadoll.cygnus.com>
5281
5282 * emulparams/{elf32bmip.sh,elf32lmip.sh,mipsidt.sh,mipsidtl.sh}:
5283 Set a new variable to signify if the final target is an embedded
5284 system.
5285 * scripttempl/{mips.sc,elfmips.sc}: Don't add SIZEOF_HEADERS to
5286 .text for an embedded system.
5287
5288 Tue May 7 10:56:11 1996 Doug Evans <dje@canuck.cygnus.com>
5289
5290 * scripttempl/pe.em (gld${EMULATION_NAME}_place_orphan): New function.
5291 (gld${EMULATION_NAME}_place_section): New function.
5292 (hold_{section,use,text,rdata,data}): New static locals.
5293 (ld_${EMULATION_NAME}_emulation): Update orphan field.
5294 * scripttempl/pe.sc: Whitespace cleanup. Semicolon usage cleanup.
5295 (INIT,FINI): Delete, unused.
5296 (.text): Document orphan .text.foo sections.
5297 (.rdata): Document orphan .rdata.foo sections.
5298 (.data): Document orphan .data.foo sections.
5299
5300 Tue May 7 11:35:46 1996 Jeffrey A Law (law@cygnus.com)
5301
5302 * scripttempl/h8300.sc: Place ".tiny" sections right
5303 after ".data" sections.
5304 * scripttempl/h8300h.sc: Place ".tiny" sections into
5305 the "tiny" memory region, 0xff8000 through 0xffff00.
5306
5307 * scripttempl/h8300.sc: Set the entry point to the value of
5308 "_start" rather than the start of the text segment.
5309 * scripttempl/h8300h.sc: Likewise.
5310
5311 * scripttempl/h8300.sc: Place .rodata sections before .text
5312 sections in main ram.
5313 * scripttempl/h8300h.sc: Likewise.
5314
5315 Mon May 6 23:32:30 1996 Jeffrey A Law (law@cygnus.com)
5316
5317 * scripttempl/h8300h.sc: Use "eight", not "eightbit" for the
5318 8-bit region and 8-bit sections.
5319
5320 Wed May 1 17:50:06 1996 Doug Evans <dje@canuck.cygnus.com>
5321
5322 * ldlang.c (section_already_linked): Fix typos.
5323
5324 Mon Apr 29 20:31:06 1996 Doug Evans <dje@canuck.cygnus.com>
5325
5326 * scripttempl/pe.sc (.endjunk): Define __end__.
5327
5328 Mon Apr 29 17:05:13 1996 Ian Lance Taylor <ian@cygnus.com>
5329
5330 * ldlang.c (longest_section_name): Remove.
5331 (SECTION_NAME_MAP_LENGTH): Define.
5332 (print_size, print_alignment, print_fill, print_section): Remove.
5333 (print_flags): Remove.
5334 (lang_map): Rewrite.
5335 (print_output_section_statement): Rewrite.
5336 (print_assignment): Rewrite.
5337 (print_one_symbol): Rewrite.
5338 (print_input_section): Rewrite.
5339 (print_fill_statement): Rewrite.
5340 (print_data_statement): Rewrite.
5341 (print_address_statement): New static function.
5342 (print_reloc_statement): Rewrite.
5343 (print_padding_statement): Rewrite.
5344 (print_wild_statement): Rewrite.
5345 (print_statement_list): Clean up.
5346 (print_statement): Clean up. Some minor output changes.
5347 (print_statements): Clean up.
5348 (load_symbols): Put another - before -whole-archive.
5349 * ldexp.c (exp_print_tree): Change etree_value and etree_rel to
5350 print 0x and to omit leading zeroes. For etree_rel, use %B to
5351 print the BFD. For etree_assign, remove the space after the
5352 destination name.
5353 * ldwrite.c: Include "libiberty.h".
5354 (clone_section): Call xstrdup, not strdup.
5355 (ldwrite): Don't print any map information.
5356 (print_symbol_table, print_file_stuff, print_symbol): Remove.
5357 * ldmain.c (main): Call lang_map when appropriate.
5358 * ldmisc.c (vfinfo): Add support for %W.
5359 (print_address): Remove.
5360 * ldmisc.h (print_address): Don't declare.
5361 * Makefile.in: Rebuild dependencies.
5362
5363 Mon Apr 29 10:29:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5364
5365 * configure.host (m68*-*-linux*): Add -dynamic-linker to
5366 HOSTING_CRT0. Search -lgcc both before and after -lc in
5367 HOSTING_LIBS. Look for crt{begin,end}.o in the compiler directory
5368 at first.
5369 (i[345]86-*-linux*): Look for crt{begin,end}.o in the compiler
5370 directory at first.
5371
5372 Fri Apr 26 14:42:27 1996 Ian Lance Taylor <ian@cygnus.com>
5373
5374 * ldmisc.h (demangle): Declare.
5375 * ldmisc.c: Include "libiberty.h". Include demangle.h with "",
5376 not <>.
5377 (demangle): Make non-static. Remove remove_underscore paramter.
5378 Always return an allocated string.
5379 (vfinfo): Free result of demangle. Add case 'G'. Use %T to print
5380 functionname, rather than calling demangle. Print a colon between
5381 the BFD(section+offset) and the line number.
5382 * ldmain.c (add_archive_element): Improve format of archive
5383 information in map file.
5384 (constructor_callback): Don't print anything to the map file.
5385 * ldlang.c (lang_one_common): Improve format of common symbol
5386 information in map file.
5387 * ldctor.c (ldctor_build_sets): If producing a map file, print set
5388 information.
5389 * ldwrite.c (print_symbol_table): Print a newline before the
5390 header in the map file.
5391 * Makefile.in: Rebuild dependencies.
5392
5393 * ldmisc.c (vfinfo): Reindent.
5394
5395 Mon Apr 22 12:07:32 1996 Ian Lance Taylor <ian@cygnus.com>
5396
5397 * ldlang.c (lang_size_sections): If _cooked_size is not 0, then
5398 don't clobber it when not relaxing.
5399
5400 * ld.h (ld_config_type): Remove traditional_format field.
5401 * ldmain.c (main): Use link_info.traditional_format rather than
5402 config.traditional_format.
5403 * ldlang.c (ldlang_open_output): Likewise.
5404 * lexsup.c (parse_args): Likewise.
5405 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Likewise.
5406 * mpw-eppcmac.c (gldppcmacos_parse_args): Likewise.
5407
5408 * ldlang.c (wild_doit): Discard debugging sections if we are
5409 stripping debugging information.
5410
5411 * emulparams/z8002.sh (ARCH): Set to z8002, not z8k.
5412
5413 Tue Apr 16 16:38:32 1996 Ian Lance Taylor <ian@cygnus.com>
5414
5415 * ldexp.c (fold_binary): Correct handling of subtraction with
5416 absolute values.
5417 (fold_name): Permit symbols in lang_allocating_phase_enum.
5418
5419 * scripttempl/aout.sc: Only PROVIDE __stack when RELOCATING. Undo
5420 accidental changes in last patch.
5421
5422 Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5423
5424 * configure.tgt (powerpc*-*-{sysv,linux}): Add aliases.
5425 (powerpcle*-*-{sysv,solaris}): Ditto.
5426
5427 Mon Apr 15 14:50:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
5428
5429 * scripttempl/aout.sc: Add PROVIDE (__stack = 0) so I can use it
5430 in m68k/crt0.S without things blowing up.
5431
5432 Fri Apr 12 16:40:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
5433
5434 * scripttempl/m68kcoff.sc: Remove default address for .data so
5435 .text, .data, and .bss are all sequential.
5436
5437 Thu Apr 11 12:05:35 1996 Ian Lance Taylor <ian@cygnus.com>
5438
5439 * scripttempl/m68kcoff.sc: Remove regions and simplify.
5440
5441 Wed Apr 10 14:41:53 1996 Jeffrey A Law (law@cygnus.com)
5442
5443 * scripttempl/h8300.sc: Add the "8-bit area" in the upper 256
5444 bytes of the address space. Put data from the ".eight" sections
5445 into the 8-bit area.
5446 * scripttempl/h8300h.sc: Likewise.
5447
5448 Tue Apr 9 14:10:42 1996 Doug Evans <dje@canuck.cygnus.com>
5449
5450 * emultempl/generic.em (gld${EMULATION_NAME}_before_parse):
5451 Pass $ARCH to ldfile_set_output_arch instead of setting
5452 ldfile_output_architecture directly.
5453
5454 Tue Apr 9 14:22:15 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5455
5456 * scripttempl/elfppc.sc (.init,.fini): Put .init, .fini section
5457 next to .text. Put _etext after .text, .init, .fini, and
5458 .rodata{,2} sections.
5459
5460 Tue Apr 9 12:18:57 1996 Ian Lance Taylor <ian@cygnus.com>
5461
5462 * ld.texinfo: Rearrange option documentation.
5463
5464 * lexsup.c (ld_options): New static array.
5465 (parse_args): Build shortopts and longopts from ld_options array.
5466 (help): New static function.
5467 * ldver.h (help): Don't declare.
5468 * ldver.c (ldversion): Reindent.
5469 (help): Remove.
5470
5471 * ld.texinfo, ld.1: Mention -E as a synonym for -export-dynamic.
5472
5473 Mon Apr 8 11:56:23 1996 Ian Lance Taylor <ian@cygnus.com>
5474
5475 * emultempl/elf32.em: When checking for a native emulation, check
5476 that the current emulation is the default emulation.
5477 * emultempl/sunos.em: Likewise.
5478
5479 * configure.in: Permit --enable-shared to specify a list of
5480 directories.
5481 * configure: Rebuild.
5482
5483 * lexsup.c (parse_args): Add -E as a synonym for -export-dynamic,
5484 for HP/UX compatibility.
5485
5486 Fri Apr 5 14:30:14 1996 Ian Lance Taylor <ian@cygnus.com>
5487
5488 * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): New
5489 static function, if ${host} = ${target}.
5490 (gld${EMULATION_NAME}_after_open): Call check_ld_so_conf to find a
5491 needed shared library if ${host} = $[target}.
5492
5493 * configure.host (i[345]86-*-linux*): Add -dynamic-linker to
5494 HOSTING_CRT0. Search -lgcc both before and after -lc in
5495 HOSTING_LIBS.
5496
5497 * configure.tgt: Add i[345]86-*-freebsdelf* target; from John
5498 Polstra <jdp@polstra.com>.
5499
5500 Fri Apr 5 18:11:25 1996 James G. Smith <jsmith@cygnus.co.uk>
5501
5502 * emulparams/elf32{b,l}4300.sh (MACHINE): Add explicit
5503 architecture number.
5504 * scripttempl/elf.sc: Use $MACHINE definition if present.
5505 * configure.tgt (targ_extra_emuls): Force 4100 build to use same
5506 template as 4300.
5507
5508 Mon Apr 1 17:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
5509
5510 * ldlang.c (lang_size_sections): Change region check to handle
5511 regions which end at the highest possible address correctly.
5512 From Roland Weber <roweber@ira.uka.de>.
5513
5514 * ldlang.c (section_already_linked): New static function.
5515 (wild_doit): Discard sections with SEC_EXCLUDE set if not doing a
5516 relocateable link. Don't worry about section being NULL, since it
5517 never should be. Don't call init_os unless the section is going
5518 to be added.
5519 (ldlang_add_file): Call section_already_linked for each section.
5520 * ldmain.c (multiple_definition): Don't warn about multiple
5521 definitions in sections which are being discarded.
5522
5523 Sun Mar 31 00:30:47 1996 steve chamberlain <sac@slash.cygnus.com>
5524
5525 * scripttempl/{ppcpe.sc, pe.sc} (.junk): Remove and use /DISCARD/.
5526 * emultempl/pe.em (init): Remove special case PPC code.
5527
5528 Fri Mar 29 00:01:29 1996 Jeffrey A Law (law@cygnus.com)
5529
5530 * scripttempl/h8300.sc: Make vectors section 0xc4 bytes long
5531 so as not to overwrite the magic syscall entry at 0xc4.
5532 * scripttempl/h8300h.sc: Likewise.
5533
5534 Thu Mar 28 11:05:47 1996 Doug Evans <dje@canuck.cygnus.com>
5535
5536 * configure.tgt (sparc64-*-solaris2*): Delete.
5537 Stick with sparc-*-solaris2*.
5538
5539 Wed Mar 27 12:33:24 1996 Ian Lance Taylor <ian@cygnus.com>
5540
5541 * ld.h (DISCARD_SECTION_NAME): Define to "/DISCARD/".
5542 * ldlang.c (init_os): Fail on an attempt to initialize any section
5543 named DISCARD_SECTION_NAME.
5544 (wild_doit): Discard input sections assigned to an output section
5545 named DISCARD_SECTION_NAME.
5546 * ld.texinfo: Document use of /DISCARD/.
5547
5548 * ldlang.c: Fix some indentation and comments.
5549
5550 Tue Mar 26 18:14:49 1996 Ian Lance Taylor <ian@cygnus.com>
5551
5552 * ldmain.c (main): Call bfd_set_error_program_name.
5553
5554 Thu Mar 21 13:17:34 1996 Ian Lance Taylor <ian@cygnus.com>
5555
5556 * ld.texinfo: Fix a couple of indexing entries. Mention that
5557 --verbose displays builtin linker scripts.
5558
5559 * ldmisc.c (vfinfo): case 'I': If the file is not in an archive,
5560 and the local symbol name does not match the filename, print the
5561 filename as well.
5562
5563 Patches from John Polstra <jdp@polstra.com> for FreeBSD ELF:
5564 * lexsup.c (parse_args): -Bshareable is a synonym for -shared.
5565 * emulparams/elf_i386.sh (NONPAGED_TEXT_START_ADDR): Make the same
5566 as TEXT_START_ADDR.
5567
5568 Wed Mar 20 18:18:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5569
5570 * ld.texinfo: Fix typos. Use @pxref only inside parentheses.
5571
5572 Wed Mar 20 16:56:15 1996 Ian Lance Taylor <ian@cygnus.com>
5573
5574 * ldmain.c (add_wrap): New function.
5575 * ldmain.h (add_wrap): Declare.
5576 * lexsup.c (parse_args): Call add_wrap.
5577
5578 Tue Mar 19 16:44:20 1996 Doug Evans <dje@canuck.cygnus.com>
5579
5580 * configure.host (sparc*-*-solaris2* host): Accept any sparc variant.
5581
5582 Wed Mar 13 17:47:31 1996 Jeffrey A Law (law@cygnus.com)
5583
5584 * scripttempl/h8300.sc: Change name of page zero memory
5585 from "null" to "vectors". Create an output section for
5586 vectors. Add comments on how to explicitly place items
5587 in the vector table.
5588 * scripttempl/h8300h.sc: Likewise.
5589
5590 Wed Mar 13 12:40:18 1996 Ian Lance Taylor <ian@cygnus.com>
5591
5592 * emultempl/lnk960.em (machine_table): Add jx and hx.
5593
5594 * genscripts.sh: Don't use ${9:-xx}, since Ultrix /bin/sh doesn't
5595 support it.
5596
5597 Tue Mar 12 12:43:59 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
5598
5599 * ld.h (ld_config_type): Add warn_multiple_gp field.
5600 * lexsup.c (parse_args): Handle --warn-multiple-gp.
5601 * ldmain.c (warning_callback): Suppress multiple gp values warning
5602 if --warn_multiple_gp was not used.
5603 * ld.texinfo, ld.1: Document --warn-multiple-gp.
5604
5605 Tue Mar 12 12:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
5606
5607 * lexsup.c (parse_args): Handle --wrap.
5608 * ldmain.c (main): Initialize link_info.wrap_hash.
5609 * ldexp.c (fold_name): Use bfd_wrapped_link_hash_lookup in DEFINED
5610 and NAME cases.
5611 * ld.texinfo, ld.1: Document --wrap.
5612
5613 * configure: Rebuild with autoconf 2.8.
5614
5615 Don't do SunOS style dynamic linking for sparc-aout:
5616 * configure.tgt (sparc64-*-aout*): Use sparcaout, not sun4.
5617 (sparclite*-fujitsu-*, sparc*-*-aout): Likewise.
5618 (sparc*-wrs-vxworks*): Likewise.
5619 * emulparams/sparcaout.sh: New file.
5620 * Makefile.in (ALL_EMULATIONS): Add esparcaout.o.
5621 (esparcaout.c): New target.
5622
5623 Wed Mar 6 16:06:52 1996 J.T. Conklin <jtc@rtl.cygnus.com>
5624
5625 * scripttempl/elfppc.sc (.sdata2, .sbss2): Implement Feb 2 change
5626 in a different manner to work around differences in shell variable
5627 expansion.
5628
5629 Wed Mar 6 18:08:18 1996 Ian Lance Taylor <ian@cygnus.com>
5630
5631 * ldemul.h (ldemul_unrecognized_file): Declare.
5632 (ldemulation_xfer_type): Add unrecognized_file field.
5633 * ldemul.c (ldemul_unrecognized_file): New function.
5634 * ldlang.c (load_symbols): If a file can not be recognized, call
5635 ldemul_unrecognized_file before trying it as a linker script.
5636 * aix.em (gld${EMULATION_NAME}_unrecognized_file): New static
5637 function.
5638 (gld${EMULATION_NAME}_read_file): Use FOPEN_RT, not "r".
5639 (ld_${EMULATION_NAME}_emulation): Initialize unrecognized_file.
5640
5641 Mon Mar 4 14:11:17 1996 Ian Lance Taylor <ian@cygnus.com>
5642
5643 * ldlang.c (wild): Handle foo.a(.text) by mapping each included
5644 member of foo.a separately. From Jouke Numan <jnuman@bazis.nl>.
5645
5646 Fri Mar 1 10:24:59 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5647
5648 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
5649 Search trinary.cond rather than searching trinary.lhs twice.
5650
5651 Tue Feb 27 15:08:43 1996 Stan Shebs <shebs@andros.cygnus.com>
5652
5653 * mpw-make.sed: Edit out shared library support.
5654 (@TDIRS@): Edit out, can't use genscripts.
5655
5656 Tue Feb 27 15:09:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5657
5658 * configure.tgt (m68k-*-linuxaout*, m68k-*-linux*): New targets.
5659 * emulparams/m68klinux.sh: New file.
5660 * emultempl/linux.em (gld${EMULATION_NAME}_before_allocation):
5661 Call bfd_${EMULATION_NAME}_size_dynamic_sections instead of
5662 bfd_linux_size_dynamic_sections.
5663 * Makefile.in (ALL_EMULATIONS): Add em68klinux.o.
5664 (em68klinux.c): New target.
5665 * configure.host (m68*-*-linuxaout*, m68*-*-linux*): New hosts.
5666
5667 Tue Feb 27 12:55:46 1996 Ian Lance Taylor <ian@cygnus.com>
5668
5669 * Makefile.in (ALL_EMULATIONS): Sort into alphabetical order.
5670 Fill in missing entries.
5671
5672 * lexsup.c (parse_args): Recognize --no-whole-archive.
5673 * ldlang.h (lang_input_statement_type): Add whole_archive field.
5674 * ldlang.c (new_afile): Set whole_archive field.
5675 (load_symbols): Check input file specific whole_archive field
5676 rather than global variable.
5677 * ld.texinfo, ld.1: Document --no-whole-archive.
5678
5679 Tue Feb 20 16:07:00 1996 Ian Lance Taylor <ian@cygnus.com>
5680
5681 * configure.tgt: Correct gldi960 to gld960.
5682
5683 Mon Feb 19 11:16:44 1996 Ian Lance Taylor <ian@cygnus.com>
5684
5685 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Check
5686 the SONAME if it is available.
5687 (gld${EMULATION_NAME}_stat_needed): Use the SONAME, not the
5688 filename, when checking for conflicting library versions. Don't
5689 assume that the suffix is only numbers and dots.
5690
5691 * ld.texinfo: Mention that -R can be used for -rpath.
5692
5693 Sun Feb 18 15:05:17 1996 Ian Lance Taylor <ian@cygnus.com>
5694
5695 * configure.host: Check for 'do not mix' from native linker before
5696 trying to use -rpath.
5697
5698 Thu Feb 15 13:58:06 1996 Ian Lance Taylor <ian@cygnus.com>
5699
5700 * configure.in: Remove explicit substitution of CFLAGS; autoconf
5701 does it anyhow.
5702 * configure: Rebuild.
5703 * Makefile.in (LDFLAGS): Set to @LDFLAGS@.
5704
5705 * configure.in: Call AC_PROG_CC before configure.host.
5706 * configure: Rebuild.
5707 * configure.host: Remove go32 host, since it should no longer be
5708 necessary. Don't set CC for romp host.
5709
5710 * scripttempl/elf.sc: Don't skip a page in virtual memory space if
5711 the text segment ends exactly on a page boundary.
5712
5713 * configure.in: Substitute RPATH_ENVVAR.
5714 * configure: Rebuild.
5715 * configure.host: Set RPATH_ENVVAR.
5716 * Makefile.in (RPATH_ENVVAR): New variable.
5717 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
5718
5719 Wed Feb 14 18:49:01 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
5720
5721 * configure.in: Redo emulation handling so that each emulation
5722 searches the correct tool directory, based on the target alias.
5723 For example, "configure --enable-targets=m68k-coff i386-linux"
5724 will search /usr/local/i386-linux/lib for linux and
5725 /usr/local/m68k-coff/lib for m68k-coff.
5726 * configure: Rebuild.
5727 * configure.tgt: Add special tdir settings for Linux.
5728 * Makefile.in: Add @TDIRS@. Pass "$(tdir_EMUL)" to ${GENSCRIPTS}
5729 for each eEMUL.c target.
5730 * genscripts.sh: Accept specific alias as 9th argument, and use it
5731 in LIB_PATH.
5732
5733 Wed Feb 14 16:38:36 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
5734
5735 * ldlang.c (lang_set_startof): Don't do anything for a
5736 relocateable link.
5737
5738 * ldgram.y (mri_script_file): Call mri_draw_tree.
5739 * mri.c (mri_draw_tree): Make globally visible. Don't bother to
5740 create memory regions.
5741 (mri_load): Don't call mri_draw_tree.
5742 * mri.h (mri_draw_tree): Declare.
5743
5744 * configure.tgt (m68*-*-psos): New target.
5745 * emulparams/m68kpsos.sh: New file.
5746 * scripttempl/psos.sc: New file.
5747 * Makefile.in (ALL_EMULATIONS): Add em68kpsos.o.
5748 (em68kpsos.c): New target.
5749
5750 Wed Feb 14 11:09:25 1996 Ian Lance Taylor <ian@cygnus.com>
5751
5752 * configure.tgt (*-*-ieee*): New target; use vanilla.
5753
5754 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Strip
5755 `:foo' from ${ARCH}.
5756
5757 Tue Feb 13 15:58:58 1996 Bryan Ford <baford@snake.cs.utah.edu>
5758
5759 * scripttempl/i386msdos.sc: Don't pad the .text section. Put
5760 .rodata in .data.
5761
5762 Tue Feb 13 14:04:19 1996 Ian Lance Taylor <ian@cygnus.com>
5763
5764 * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
5765
5766 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Warn if
5767 it looks like we might be linking in two different versions of the
5768 same shared library. Based on a patch from H J Lu <hjl@zoom.com>.
5769
5770 Thu Feb 8 19:25:54 1996 Ian Lance Taylor <ian@cygnus.com>
5771
5772 * ldlang.c (lang_size_sections): Increment the section size when a
5773 padding statement is encountered.
5774
5775 Wed Feb 7 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
5776
5777 * configure.in: Look for --enable-shared. Change the value of
5778 BFDLIB when linking against a shared library on SunOS.
5779 * configure: Rebuild.
5780 * configure.host: If using a shared BFD library, try to pass a
5781 reasonable -rpath option when linking.
5782 * Makefile.in (BFDLIB): Set to @BFDLIB@.
5783
5784 Tue Feb 6 12:29:14 1996 Doug Evans <dje@charmed.cygnus.com>
5785
5786 * emulparams/elf64_sparc.sh (ARCH): Change to `sparc:v9'.
5787 * emultempl/generic.em: Strip `:foo' from ${ARCH}.
5788
5789 Mon Feb 5 16:25:30 1996 Ian Lance Taylor <ian@cygnus.com>
5790
5791 Support for building bfd and opcodes as shared libraries, based on
5792 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
5793 * configure.in (HLDFLAGS): New substitution.
5794 * configure: Rebuild.
5795 * configure.host: Set HLDFLAGS on SunOS.
5796 * Makefile.in (HLDFLAGS): New variable.
5797 (BFDDEP): New variable.
5798 (BFDLIB): Change to -L../bfd -lbfd.
5799 ($(LD_PROG)): Depend upon $(BFDDEP) rathern than $(BFDLIB). Use
5800 $(HLDFLAGS) in link.
5801 (check): Set LD_LIBRARY_PATH in the environment.
5802
5803 Fri Feb 2 19:26:25 1996 Michael Meissner <meissner@wogglebug.tiac.net>
5804
5805 * scripttempl/elfppc.sc (.sdata2, .sbss2): Put .sdata2 and .sbss
5806 in the read-only section, not read/write unless we are making a
5807 shared library.
5808 (.debug*): Add dwarf debug sections.
5809 (.rela.{sdata*,sbss*}): Add sections.
5810
5811 Fri Feb 2 16:50:21 1996 Ian Lance Taylor <ian@cygnus.com>
5812
5813 * configure: Regenerate.
5814
5815 Thu Feb 1 10:50:46 1996 Ian Lance Taylor <ian@cygnus.com>
5816
5817 * emulparams/elf_i386.sh (TEXT_START_ADDR): Change to 0x8048000,
5818 for SVR4 compatibility.
5819
5820 * ldexp.c (exp_fold_tree): Correct handling of ABSOLUTE.
5821
5822 Wed Jan 31 17:30:19 1996 Steve Chamberlain <sac@slash.cygnus.com>
5823
5824 * configure.tgt (i[345]86-*-cygwin32, powerpcle-*-cygwin32): New.
5825 * emultempl/pe.em (definfo init): Make the default stack reserve
5826 of a PPC larger.
5827
5828 Wed Jan 31 14:34:23 1996 Richard Henderson <rth@tamu.edu>
5829
5830 * configure.tgt (m68*-apple-aux*): New target.
5831 * emulparams/m68kaux.sh: New file.
5832 * scripttempl/m68kaux.sc: New file.
5833 * Makefile.in (ALL_EMULATIONS): Add em68kaux.o.
5834 (em68kaux.c): New target.
5835
5836 Tue Jan 30 13:18:56 1996 Ian Lance Taylor <ian@cygnus.com>
5837
5838 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Ignore
5839 -bnoentry, since the right thing tends to happen anyhow.
5840
5841 Mon Jan 29 12:29:26 1996 Ian Lance Taylor <ian@cygnus.com>
5842
5843 * ld.texinfo, ld.1: Document -export-dynamic.
5844
5845 Fri Jan 26 11:11:55 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5846
5847 * emultempl/sunos.em: Check for native compile by comparing
5848 ${target} and ${host}.
5849
5850 Thu Jan 25 16:46:58 1996 James G. Smith <jsmith@cygnus.co.uk>
5851
5852 * emulparams/{elf32b4300.sh, elf32l4300.sh}: Changed
5853 TEXT_START_ADDR to allow use on IDT and PMON systems.
5854
5855 Wed Jan 24 20:59:40 1996 Steve Chamberlain <sac@slash.cygnus.com>
5856
5857 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
5858 correct spelling.
5859
5860 Wed Jan 24 16:59:19 1996 Doug Evans <dje@charmed.cygnus.com>
5861
5862 * configure.tgt (sparc64-*-solaris2*): New configuration.
5863 (sparc64-*-aout*): Renamed from sparc64*.
5864
5865 Mon Jan 22 13:01:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5866
5867 * Makefile.in (GENSCRIPTS): Pass @host@ @target@ @target_alias@.
5868 * genscripts.sh: Set host, target and target_alias variables.
5869 Check for native compile by comparing ${target} and ${host}.
5870 * emultempl/elf32.em: Likewise.
5871 * scripttempl/elfmips.sc: Test ${target}, not ${target_alias}.
5872
5873 Mon Jan 22 11:03:23 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5874
5875 * scripttempl/elfppc.sc: Refine eabi support to better support
5876 .sdata, .sdata2, .sbss, etc. sections.
5877
5878 Tue Jan 16 15:16:58 1996 Ian Lance Taylor <ian@cygnus.com>
5879
5880 * ldgram.y (%union): Add phdr field.
5881 (phdr): Use phdr_qualifiers rather than opt_hdrs and opt_at.
5882 (phdr_qualifiers): New nonterminal. Add support for FLAGS.
5883 (opt_hdrs, hdr): Remove.
5884 (phdr_val): New nonterminal.
5885 * ldlang.c (lang_new_phdr): Replace hdrs parameter with filehdr
5886 and phdrs parameters. Add flags parameter.
5887 (lang_record_phdrs): Update for changes to lang_phdr. Pass flags
5888 to bfd_record_phdr.
5889 * ldlang.h (struct lang_phdr): Replace hdrs field with filehdr and
5890 phdrs fields. Add flags field.
5891 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Remove.
5892 (lang_new_phdr): Update declaration.
5893 * ld.texinfo: Document FLAGS.
5894
5895 Mon Jan 15 15:07:19 1996 Ian Lance Taylor <ian@cygnus.com>
5896
5897 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation):
5898 Don't make a shared library because of an undefined reference to
5899 __GLOBAL_OFFSET_TABLE_.
5900
5901 Add some Irix 5 support, mostly from Kazumoto Kojima
5902 <kkojima@info.kanagawa-u.ac.jp>:
5903 * emulparams/elf32bmip.sh (SCRIPT_NAME): Change to elfmips.
5904 (SHLIB_TEXT_START_ADDR): Define.
5905 (OTHER_GOT_SYMBOLS): Define.
5906 (OTHER_READWRITE_SECTIONS): Remove initialization of _gp.
5907 (EXECUTABLE_SYMBOLS): Don't define.
5908 (DYNAMIC_LINK): Don't define.
5909 * emulparams/elf32lmip.sh: Same changes as elf32bmip.sh.
5910 * scripttempl/elfmips.sc: New file.
5911 * configure.host (mips*-dec-bsd*): Change mips to mips*.
5912 (mips*-sgi-irix4*): Likewise.
5913 (mips*-sgi-irix5*): New entry.
5914 * Makefile.in (eelf32bmip.c): Depend upon elfmips.sc rather than
5915 elf.sc.
5916 (eelf32lmip.c): Likewise.
5917
5918 Sat Jan 13 09:41:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5919
5920 * scripttempl/elfppc.sc: Remove support for .rel.* sections. Add
5921 .rela.got.neg section.
5922
5923 Fri Jan 12 14:56:19 1996 Ian Lance Taylor <ian@cygnus.com>
5924
5925 * scripttempl/sh.sc: Only build constructors when CONSTRUCTING.
5926
5927 * ldmisc.c: Include <stdarg.h> rather than <varargs.h> if
5928 ANSI_PROTOTYPES is defined. Remove special handling of
5929 WINDOWS_NT. Various indendation fixes.
5930 (vfinfo): Change fmt parameter to const char *.
5931 (info_msg): Write <stdarg.h> version.
5932 (einfo, minfo, finfo): Likewise.
5933 (info_assert): Change file parameter to const char *.
5934 * ldmisc.h (einfo, minfo, info_msg): If ANSI_PROTOTYPES is
5935 defined, use a real prototype.
5936 (info_assert): Change first parameter to be const char *.
5937
5938 Fri Jan 12 13:29:55 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5939
5940 * scripttempl/elfppc.sc: Add support for .sdata2/.sbss2, etc. Add
5941 in old support that 2.7.2 needs, but the current compiler does
5942 not.
5943
5944 * Makefile.in (eelf32{,l}ppc.c): Fix up dependencies to use the
5945 correct Linker script template.
5946
5947 * emulparams/elf32{,l}ppc.sh (TEXT_START_ADDR): Set to 0x40000,
5948 not 0x400000.
5949 (DATA_ADDR,NONPAGED_TEXT_START_ADDR): Delete.
5950
5951 Tue Jan 9 15:53:02 1996 Ian Lance Taylor <ian@cygnus.com>
5952
5953 * scripttempl/alpha.sc: Put .rconst right after .rdata.
5954
5955 Fri Jan 5 14:07:45 1996 Steve Chamberlain <sac@slash.cygnus.com>
5956
5957 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation):
5958 sort using right pointer.
5959
5960 Fri Jan 5 12:25:47 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5961
5962 * scripttempl/elfppc.sc: Remove support for creating special
5963 labels for eabi section begin/end here. The compiler now uses
5964 crt{i,n}.o to create these symbols.
5965
5966 Thu Jan 4 17:08:58 1996 Ian Lance Taylor <ian@cygnus.com>
5967
5968 * configure.host: Change existing Linux HOSTING_CRT0 to be used
5969 for a.out only, and put in appropriate HOSTING_CRT0 and
5970 HOSTING_LIBS values for Linux ELF.
5971
5972 Thu Jan 4 12:02:05 1996 Doug Evans <dje@canuck.cygnus.com>
5973
5974 * scripttempl/h8300.sc: Use all 64K for ram.
5975 * scripttempl/h8300h.sc: Define 256K ram size.
5976
5977 Thu Dec 21 15:57:18 1995 Ian Lance Taylor <ian@cygnus.com>
5978
5979 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Pass
5980 export_defines as true to bfd_xcoff_size_dynamic_sections if -unix
5981 was used, regardless of whether -bE was used.
5982
5983 Tue Dec 19 17:35:38 1995 Ian Lance Taylor <ian@cygnus.com>
5984
5985 * emultempl/aix.em (gld${EMULATION_NAME}_after_open): Only set
5986 relocateable before calling ldctor_build_sets if the output file
5987 is in an XCOFF format.
5988
5989 Fri Dec 15 16:34:36 1995 Ian Lance Taylor <ian@cygnus.com>
5990
5991 * ldwrite.c (build_link_order): When handling a data statement, if
5992 the endianness of the output file is unknown, use the endianness
5993 of the input file.
5994
5995 Tue Dec 12 13:55:41 1995 Stan Shebs <shebs@andros.cygnus.com>
5996
5997 * mpw-config.in: Recognize mips-*-* as equivalent to
5998 mips-idt-ecoff.
5999 * mpw-eppcmacos.c: Rename to shorter mpw-eppcmac.c.
6000 * mpw-ld.r: Add version resources.
6001 (cfrg): Use symbolic instead of literal name for executable.
6002
6003 Mon Dec 11 15:13:41 1995 Kim Knuttila <krk@cygnus.com>
6004
6005 * scripttempl/ppcpe.sc (FINI): Moved the .reloc section.
6006
6007 Wed Dec 6 14:33:50 1995 Doug Evans <dje@canuck.cygnus.com>
6008
6009 * ldlang.c (print_statement{,s}): Delete duplicate prototype.
6010 (print_statement_list): Renamed from print_statement. All callers
6011 updated.
6012 (print_statement): New function to print just one statement.
6013 (print_{data,reloc,padding}_statement): Don't crash if
6014 output_section == NULL.
6015 (dprint_statement): New function.
6016
6017 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix
6018 call to sort_sections.
6019
6020 Wed Dec 6 14:59:06 1995 Ian Lance Taylor <ian@cygnus.com>
6021
6022 * emultempl/aix.em (unix_ld): New static variable.
6023 (gld${EMULATION_NAME}_parse_args): Handle -unix.
6024 (gld${EMULATION_NAME}_before_allocation): If unix_ld, pass
6025 gc as false and export_defineds as true to size_dynamic_sections.
6026
6027 * ldexp.c (exp_fold_tree): Permit assignments to dot in the final
6028 phase if the current section is abs_output_section.
6029
6030
6031 Tue Dec 5 09:49:39 1995 Doug Evans <dje@canuck.cygnus.com>
6032
6033 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix call
6034 to sort_sections.
6035
6036 Fri Dec 1 16:48:36 1995 Ian Lance Taylor <ian@cygnus.com>
6037
6038 * ldgram.y (PHDRS): New token.
6039 (ifile_p1): Accept phdrs.
6040 (section): Accept phdr_opt at the end of the section definition.
6041 (phdr_op): New nonterminal.
6042 (phdrs, phdr_list, phdr, phdr_type, opt_hdrs, hdr): Likewise.
6043 * ldlex.l: Accept PHDRS.
6044 * ldlang.h (struct lang_output_section_phdr_list): Define.
6045 (lang_output_section_statement_type): Add phdrs field.
6046 (struct lang_phdr): Define.
6047 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Define.
6048 (lang_new_phdr): Declare.
6049 * ldlang.c (lang_phdr_list): New static variable.
6050 (lang_output_section_statement_lookup): Initialize phdrs field.
6051 (lang_process): Call lang_record_phdrs.
6052 (lang_new_phdr): New function.
6053 (lang_section_in_phdr): New function.
6054 (lang_record_phdrs): New static function.
6055 * ld.texinfo: Document PHDRS.
6056
6057 Thu Nov 30 13:14:30 1995 Kim Knuttila <krk@cygnus.com>
6058
6059 * scripttempl/ppcpe.sc: Moved .edata into its own section to
6060 expose it.
6061
6062 Thu Nov 30 11:32:34 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
6063
6064 * configure.host (m68*-motorola-sysv): Define HOSTING_CRT0 and
6065 HOSTING_LIBS for testing.
6066 (m88*-motorola-sysv3): Define HOSTING_CRT0 and HOSTING_LIBS for
6067 testing.
6068
6069 Tue Nov 28 12:14:53 1995 Ian Lance Taylor <ian@cygnus.com>
6070
6071 * lexsup.c (parse_args): Set config.dynamic_link to false for -N
6072 and -n.
6073
6074 Mon Nov 27 13:12:09 1995 Ian Lance Taylor <ian@cygnus.com>
6075
6076 * configure: Rebuild with autoconf 2.7.
6077
6078 Fri Nov 24 18:35:35 1995 Doug Evans <dje@canuck.cygnus.com>
6079
6080 * scripttempl/pe.sc: Two .junk's is too much junk.
6081
6082 Tue Nov 21 16:14:32 1995 Ian Lance Taylor <ian@cygnus.com>
6083
6084 * configure.in: Use BFD_NEED_DECLARATION.
6085 * acconfig.h: Put NEED_DECLARATION_FREE in @TOP@ section.
6086 * configure, config.in: Rebuild with autoconf 2.6.
6087
6088 * ldmain.c (constructor_callback): Don't warn about BFD_RELOC_CTOR
6089 being unsupported if this is not a relocateable link and the input
6090 BFD supports it, since ldctor_build_sets can cope with that case.
6091
6092 Fri Nov 17 16:23:15 1995 Stan Shebs <shebs@andros.cygnus.com>
6093
6094 * configure.tgt (powerpc-*-macos*): New target.
6095 * emulparams/ppcmacos.sh: New file, PowerMac emulation.
6096 * Makefile.in (ALL_EMULATIONS): Add eppcmacos.o.
6097 (eppcmacos.c): New target.
6098 * mpw-eppcmacos.c: Update.
6099 * mpw-make.sed: Edit out attempts to use {GENSCRIPTS}.
6100
6101 Fri Nov 17 10:37:27 1995 Ian Lance Taylor <ian@cygnus.com>
6102
6103 * Makefile.in (CC_FOR_TARGET): Use @host@ and @target@, not
6104 $(host_canonical) and $(target_canonical).
6105 (CXX_FOR_TARGET): Likewise.
6106
6107 Thu Nov 16 11:23:42 1995 Doug Evans <dje@canuck.cygnus.com>
6108
6109 * scripttempl/pe.sc (.endjunk): Move definition of `end' to here
6110 so the malloc heap begins at a sane place.
6111
6112 Thu Nov 16 03:09:32 1995 Ken Raeburn <raeburn@cygnus.com>
6113
6114 Version 2.6 released.
6115 * ldver.c (ldversion): Update to 2.6.
6116
6117 * Makefile.in (mostlyclean): Delete ldemul-list.h here, but not
6118 $(GENERATED_*FILES), since they need to be retained by distclean.
6119 (maintainer-clean, realclean): Delete them here.
6120
6121 Tue Nov 14 17:08:06 1995 Ian Lance Taylor <ian@cygnus.com>
6122
6123 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Open the
6124 base file with FOPEN_WB, not "w".
6125
6126 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Use the
6127 environment variable LD_RUN_PATH if neither -rpath nor -rpath-link
6128 were used.
6129 (gld${EMULATION_NAME}_before_allocation): Use the environment
6130 variable LD_RUN_PATH if -rpath was not used.
6131 * ld.texinfo, ld.1: Document LD_RUN_PATH.
6132
6133 Thu Nov 9 13:09:29 1995 Ian Lance Taylor <ian@cygnus.com>
6134
6135 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Recognize
6136 -bl and -bloadmap options.
6137
6138 * ldfile.c (ldfile_try_open_bfd): If bfd_error_invalid_target,
6139 report a better error.
6140
6141 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Add
6142 new local variable special_sections, and pass it to
6143 size_dynamic_sections. Look through the results, and move the
6144 sections around in the mapping so that they are defined correctly.
6145
6146 Wed Nov 8 11:40:59 1995 Ian Lance Taylor <ian@cygnus.com>
6147
6148 * ldemul.c (ldemul_default_target): Cast getenv return value.
6149
6150 Tue Nov 7 11:15:36 1995 Kim Knuttila <krk@cygnus.com>
6151
6152 * emulparams/ppcpe.sh (ARCH): New file for PowerPC Portable
6153 Executable support.
6154 * scripttempl/ppcpe.sc: New file for PowerPC Portable Executable
6155 support.
6156
6157 * configure.tgt (targ_extra_emuls): Added powerpcle-pe target.
6158 * Makefile.in (ALL_EMULATIONS): Added eppcpe.o target.
6159
6160 * emultempl/pe.em (TARGET_IS_ppcpe): file tailoring macro
6161 (gld_$_before_allocation): added hooks for toc construction based
6162 on the above macro.
6163
6164 Tue Nov 7 11:47:23 1995 Ian Lance Taylor <ian@cygnus.com>
6165
6166 * ld.texinfo: The linker does not use _main as an entry point.
6167
6168 Tue Nov 7 11:46:11 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
6169
6170 * scripttempl/m88kbcs.sc (.data): Calculate next boundary modulo
6171 0x2000 not 0x200.
6172
6173 Mon Nov 6 10:59:21 1995 Ian Lance Taylor <ian@cygnus.com>
6174
6175 * configure.in: Add test for whether free must be declared.
6176 * sysdep.h: Declare free if necessary. Include "ansidecl.h".
6177 * acconfig.h: Explain NEED_DECLARATION_FREE.
6178 * configure, config.in: Rebuild.
6179
6180 * lexsup.c (parse_args): Take B:: out of shortopts.
6181
6182 Sun Nov 5 03:08:28 1995 Ken Raeburn <raeburn@cygnus.com>
6183
6184 * emulparams/i386nbsd.sh (EXECUTABLE_SYMBOLS): Set __DYNAMIC to 0
6185 for now, as with m68k4kbsd, until shared library support gets
6186 done.
6187
6188 * configure.host: For i386 BSD variants, crt0.o lives in
6189 /usr/lib. (True for NetBSD at least, unconfirmed for others.)
6190
6191 Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
6192
6193 * Makefile.in (ALL_EMULATIONS): Add edelta68.o.
6194 (edelta68.c): New target.
6195 * configure.tgt (m68*-motorola-sysv*): New target.
6196 * emulparams/delta68.sh: New file.
6197 * scripttempl/delta68.sc: New file.
6198
6199 * scripttempl/m88kbcs.sc: Handle .init and .fini. Change section
6200 addresses.
6201
6202 Wed Nov 1 11:41:56 1995 Ian Lance Taylor <ian@cygnus.com>
6203
6204 * ldgram.y (mri_script_command): Accept ',' as well as '=' in
6205 ALIGN and ALIGNMOD statements.
6206
6207 * emultempl/aix.em: Include ldgram.h.
6208 (gld${EMULATION_NAME}_parse_args): Handle -pD and -pT, as used on
6209 AIX 4.1.
6210 * Makefile.in ($(EMULATION_OFILES)): Depend upon ldgram.h.
6211
6212 Tue Oct 31 18:22:24 1995 David Mosberger-Tang <davidm@azstarnet.com>
6213
6214 * configure.host (alpha-*-linux*): New host.
6215 * configure.tgt (alpha-*-linux*): New target.
6216
6217 Tue Oct 31 12:36:52 1995 Ian Lance Taylor <ian@cygnus.com>
6218
6219 * emultempl/aix.em (export_files): Remove.
6220 (import_files): Make static.
6221 (struct export_symbol_list): Define.
6222 (export_symbols): New static variable.
6223 (gld${EMULATION_NAME}_parse_args): Handle an initial -b option
6224 correctly. Call read_file for an export file.
6225 (gld${EMULATION_NAME}_before_allocation): Call
6226 bfd_xcoff_export_symbol for each export symbol, rather than
6227 calling read_file for each export file.
6228 (gld${EMULATION_NAME}_read_file): For an export file, make the
6229 exported symbols undefined, and store them on the export_symbols
6230 list.
6231
6232 Sat Oct 28 00:10:03 1995 steve chamberlain <sac@slash.cygnus.com>
6233
6234 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
6235 Don't hang if last option is unrecognised.
6236 (gld_${EMULATION_NAME}_set_symbols): Insert created
6237 symbols into ABS output section.
6238
6239 Fri Oct 27 18:03:17 1995 Niklas Hallqvist <niklas@appli.se>
6240
6241 * Makefile.in (ALL_EMULATIONS): Added support for the NetBSD
6242 m68k4k arch.
6243 (em68k4knbsd.c): New rule.
6244
6245 * configure.tgt: Added support for the NetBSD m68k4k arch.
6246
6247 * genscripts.sh, ldint.texinfo,
6248 emulparams/{a29k,armaoutb,armaoutl,coff_sparc,ebmon29k,gld960,
6249 gld960coff,go32,h8300,h8300h,h8500,h8500b,h8500c,h8500m,h8500s,
6250 hp300bsd,hp3hpux,hppaelf.sh,i386aout,i386bsd,i386coff,i386go32,
6251 i386linux,i386lynx,i386nbsd,lnk960,m68kaout,m68kcoff,m68klynx,
6252 m88kbcs,mipsbig,mipsbsd,mipsidt,mipsidtl,mipslit,news,ns32knbsd,
6253 pc532machaout,riscix,sa29200,sh,shl,sparclynx,sparcnbsd,
6254 st2000,sun3,sun4,vanilla,vax,vsta,w65,z8001,z8002}.sh: Changed
6255 PAGE_SIZE to TARGET_PAGE_SIZE.
6256
6257 * emulparams/m68knbsd.h: Ditto.
6258 (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR): We have 8K pagesize.
6259 (EXECUTABLE_SYMBOLS): Hardcode __DYNAMIC to zero for the time
6260 being.
6261
6262 * emulparams/m68k4knbsd.sh: New file.
6263
6264 * scripttempl/aout.sc: Expand EXECUTABLE_SYMBOLS if relocating.
6265
6266 Fri Oct 27 17:59:09 1995 Ian Lance Taylor <ian@cygnus.com>
6267
6268 * emultempl/aix.em: Include ldctor.h.
6269 (gld${EMULATION_NAME}_after_open): New static function.
6270 (gld${EMULATION_NAME}_before_allocation): Call find_relocs.
6271 (gld${EMULATION_NAME}_find_relocs): New static function.
6272 (gld${EMULATION_NAME}_find_exp_assignment): New static function.
6273 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
6274 * scripttempl/aix.sc: Use CONSTRUCTORS in .data.
6275 * ldctor.c (struct set_info): Move definition into ldctor.h.
6276 (struct set_element): Likewise.
6277 (sets): Make non-static.
6278 (ldctor_add_set_entry): Add name parameter. Save it in the new
6279 set element.
6280 (ldctor_build_sets): Avoid being called twice. Pass set element
6281 name to lang_add_reloc.
6282 * ldctor.h (struct set_info): Move definition here from ldctor.c.
6283 (struct set_element): Likewise. Add new field name.
6284 (sets): Declare.
6285 (ldctor_add_set_entry): Declare new name parameter.
6286 * ldwrite.c (build_link_order): Don't insist that either name or
6287 section be NULL in a lang_reloc_statement.
6288 * ldmain.c (add_to_set): Pass NULL to ldctor_add_new_set_entry for
6289 new name parameter.
6290 (constructor_callback): Pass name to ldctor_add_new_set_entry for
6291 new name parameter.
6292
6293 * ldmisc.c (demangle): Fix indentation. Remove a leading period.
6294
6295 Thu Oct 26 22:22:49 1995 Stan Shebs <shebs@andros.cygnus.com>
6296
6297 * mpw-config.in: Add PowerMac target support, generate config.h.
6298 * mac-ld.r: New file, Mac resources.
6299 * mpw-make.sed: New file, edits Makefile.in into MPW syntax.
6300 * mpw-make.in: Remove.
6301 * mpw-eppcmacos.c: Prebuilt version of PowerMac linking script.
6302
6303 Thu Oct 26 14:11:26 1995 Ian Lance Taylor <ian@cygnus.com>
6304
6305 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Treat
6306 -static as a synonym for -bnso.
6307
6308 * scripttempl/aix.sc: Move special symbols inside sections.
6309 Always start .data at 0.
6310
6311 Wed Oct 25 11:52:12 1995 Per Bothner <bothner@kalessin.cygnus.com>
6312
6313 * Makefile.in (diststuff): Also make info.
6314 (maintainer-clean realclean): Also delete *.info*.
6315
6316 Wed Oct 25 11:27:25 1995 Ian Lance Taylor <ian@cygnus.com>
6317
6318 * emultempl/aix.em: Add support for various AIX linker options,
6319 for AIX import and export files, and for AIX shared objects.
6320 * scripttempl/aix.sc: Add .pad. Put .ds just before the TOC.
6321
6322 * ldmain.c (main): Initialize new field link_info.static_link.
6323
6324 * ldmain.c (add_keepsyms_file): Add \n at end of einfo calls.
6325 (constructor_callback): Likewise.
6326 * ldmisc.c (vfinfo): Likewise.
6327 * ldwrite.c (build_link_order): Likewise.
6328
6329 * ld.texinfo: The MRI ALIGN directive is supported.
6330
6331 Mon Oct 23 11:46:43 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
6332
6333 * emulparams/elf32vr4300.sh: Deleted.
6334 * emulparams/elf32vr4300el.sh: Deleted.
6335 * emulparams/elf32b4300.sh: Added.
6336 * emulparams/elf32l4300.sh: Added.
6337 * configure.tgt, Makefile.in: Updated the build to use the
6338 new 8.3 unique names.
6339
6340 Thu Oct 19 17:41:46 1995 Ian Lance Taylor <ian@cygnus.com>
6341
6342 * ldlang.c (entry_symbol): Make non-static.
6343 * ldlang.h (entry_symbol): Declare.
6344
6345 * ldlex.l: Treat PROVIDE as a keyword in expression state.
6346
6347 Wed Oct 18 17:34:06 1995 steve chamberlain <sac@slash.cygnus.com>
6348
6349 * scripttempl/pe.sc (.bss): Move to be after .text
6350
6351 Tue Oct 17 12:22:05 1995 Ian Lance Taylor <ian@cygnus.com>
6352
6353 * emultempl/sunos.em (gld${EMULATION_NAME}_find_exp_assignment):
6354 Search trinary.cond rather than searching trinary.lhs twice. From
6355 linli@ihp.PHys.ethz.CH.
6356
6357 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Move
6358 directory searching code into gld${EMULATION_NAME}_search_dir.
6359 (gld${EMULATION_NAME}_search_dir): New static function, extracted
6360 from gld${EMULATION_NAME}_find_so.
6361 (global_needed, global_found): New static variables.
6362 (gld${EMULATION_NAME}_after_open): New static function.
6363 (gld${EMULATION_NAME}_search_needed): New static function.
6364 (gld${EMULATION_NAME}_try_needed): New static function.
6365 (gld${EMULATION_NAME}_check_needed): New static function.
6366 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
6367 * ld.texinfo, ld.1: Mention -rpath-link on SunOS.
6368
6369 * Makefile.in (eelf32ppc.c): Depend upon elf32.em, not generic.em.
6370 (eelf32lppc.c): Likewise.
6371 * emulparams/elf32lppc.sh (TEMPLATE_NAME): Define as elf32.
6372 (GENERATE_SHLIB_SCRIPT): Define as yes.
6373
6374 Mon Oct 16 19:11:13 1995 Ian Lance Taylor <ian@cygnus.com>
6375
6376 * emultempl/elf32.em: Struct bfd_elf_link_needed_list is now named
6377 bfd_link_needed-list; make appropriate changes.
6378
6379 * configure.tgt (powerpc-*-aix*): New target; use aixppc.
6380 (rs6000-*-aix*): New target; use aixrs6.
6381 * emulparams/aixppc.sh, emulparams/aixrs6.sh: New files.
6382 * emultempl/aix.em: New file.
6383 * scripttempl/aix.sc: New file.
6384 * Makefile.in (ALL_EMULATIONS): Add eaixppc.o and eaixrs6.o.
6385 (eaixppc.c, eaixrs6.c): New targets.
6386
6387 Fri Oct 13 14:00:37 1995 steve chamberlain <sac@slash.cygnus.com>
6388
6389 * scripttemp/pe.sc (.reloc): Move to the end.
6390
6391 Tue Oct 10 17:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
6392
6393 * ldlang.c (lang_finish): Don't try to use an entry_symbol from a
6394 section which was not linked into the final output.
6395
6396 Tue Oct 10 10:17:22 1995 steve chamberlain <sac@slash.cygnus.com>
6397
6398 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Fix
6399 fatal typos.
6400
6401 Tue Oct 10 01:01:51 1995 Ian Lance Taylor <ian@cygnus.com>
6402
6403 * ld.h (args_type): Add rpath_link field.
6404 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search for
6405 required dependencies in rpath_link path. Only search
6406 LD_LIBRARY_PATH when configured native.
6407 * lexsup.c (parse_args): Recognize -rpath-link.
6408 * ld.1, ld.texinfo: Document -rpath-link.
6409
6410 Sat Oct 7 17:07:17 1995 Ian Lance Taylor <ian@cygnus.com>
6411
6412 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
6413 bother searching for needed libraries unless doing a final link.
6414
6415 Fri Oct 6 16:26:16 1995 Ken Raeburn <raeburn@cygnus.com>
6416
6417 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6418
6419 * ld/ld.1: Fix formatting bugs.
6420
6421 Wed Oct 4 17:37:46 1995 Ian Lance Taylor <ian@cygnus.com>
6422
6423 * ldexp.c (exp_get_abs_int): Return bfd_vma, not int.
6424 * ldexp.h (exp_get_abs_int): Update declaration.
6425 * ldlang.c (print_output_section_statement): Use fprintf_vma to
6426 print return value of exp_get_abs_int.
6427
6428 Mon Oct 2 13:56:09 1995 Ian Lance Taylor <ian@cygnus.com>
6429
6430 * emultempl/elf32.em (global_stat): New file static variable.
6431 (gld${EMULATION_NAME}_try_needed): Call stat_needed to make sure
6432 that the file has not already been included under another name.
6433 (gld${EMULATION_NAME}_stat_needed): New static function.
6434
6435 Fri Sep 29 12:00:18 1995 Doug Evans <dje@deneb.cygnus.com>
6436
6437 * scripttempl/armcoff.sc: Start .text at 0x8000.
6438 Start .data at 0x40000.
6439
6440 Fri Sep 29 11:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
6441
6442 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): If
6443 command_line.rpath is set, use it, rather than the -L options, to
6444 build the rules section.
6445 * ld.texinfo: Document this use of -rpath.
6446
6447 * lexsup.c (parse_args): Don't set link_info.shared for -assert
6448 pure-text. Pass true, not 1, to lang_add_entry.
6449 * emultempl/sunos.em (find_assign): New static variable.
6450 (found_assign): New static variable.
6451 (gld${EMULATION_NAME}_before_allocation): Rename local h to hdyn.
6452 If not a relocateable link, and no start symbol was specified on
6453 the command line, and there are any undefined symbols, set
6454 link_info.shared. If link_info.shared is set, set the address of
6455 the .text section to 0x20.
6456 (gld${EMULATION_NAME}_find_assignment): Rename from
6457 gld${EMULATION_NAME}_find_statement_assignment. If find_assign is
6458 set, then just set found_assign based on whether an assignment is
6459 found to find_assign.
6460 (gld${EMULATION_NAME}_get_script): Don't use a special script when
6461 producing a shared library.
6462 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Remove.
6463 * scripttempl/aout.sc: Remove CREATE_SHLIB tests.
6464 * ldlang.c (entry_from_cmdline): New global variable.
6465 (lang_add_entry): Change cmdline parameter from int to boolean.
6466 Use global entry_from_cmdline rather than function static
6467 from_cmdline.
6468 * ldlang.h (entry_from_cmdline): Declare.
6469 (lang_add_entry): Change declaration of second parameter from int
6470 to boolean.
6471 * ldgram.y: Pass false, not 0, to lang_add_entry.
6472
6473 Thu Sep 28 12:34:13 1995 Ian Lance Taylor <ian@cygnus.com>
6474
6475 * ld.h (parsing_defsym): Declare.
6476 * ldlex.h (lex_string): Declare.
6477 * ldlex.l (lex_string): Define.
6478 * lexsup.c (parsing_defsym): Define.
6479 (parse_args): In OPTION_DEFSYM case, set lex_string before calling
6480 lex_redirect, and clear it after calling yyparse. Set
6481 parsing_defsym around call to yyparse.
6482 * ldmain.c (main): Set lex_string before calling lex_redirect, and
6483 clear it after calling yyparse.
6484 * ldmisc.c (vfinfo): For %S, handle --defsym arguments and built
6485 in linker scripts correctly.
6486
6487 * scripttempl/sparccoff.sc: Add .ctors/.dtors handling like other
6488 COFF targets, allowing for the leading underscore used on SPARC
6489 COFF.
6490
6491 * lexsup.c (parse_args): Handle -assert.
6492 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Define.
6493 * emultempl/sunos.em (gld${EMULATION_NAME}_get_script): Use the
6494 shared library script when appropriate.
6495 * scripttempl/aout.sc: If CREATE_SHLIB is set, start the .text
6496 section at SIZEOF_HEADERS.
6497
6498 Thu Sep 28 01:40:37 1995 Doug Evans <dje@deneb.cygnus.com>
6499
6500 * Makefile.in (earmcoff.c): Build.
6501 * configure.tgt (arm-*-coff): New target
6502 * emulparms/armcoff.sh: New file.
6503 * scripttempl/armcoff.sc: New file.
6504
6505 Tue Sep 26 10:59:32 1995 Ian Lance Taylor <ian@cygnus.com>
6506
6507 * scripttempl/i386coff.sc: Remove .data2; no longer needed.
6508
6509 Fri Sep 22 18:09:02 1995 Ian Lance Taylor <ian@cygnus.com>
6510
6511 * ldfile.c (ldfile_set_output_arch): Make arch const.
6512
6513 Thu Sep 21 17:55:24 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6514
6515 * scripttempl/elfppc.sc: Correctly locate __bss_start at the
6516 beginning of the .bss area, not at the end of data. Add
6517 __sbss_{start,end} symbols.
6518
6519 Wed Sep 20 12:29:36 1995 Ian Lance Taylor <ian@cygnus.com>
6520
6521 * Makefile.in (CC_FOR_TARGET): Quote $(program_transform_name).
6522 (CXX_FOR_TARGET, install): Likewise.
6523
6524 Mon Sep 18 14:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
6525
6526 Based on patches by Alan Modra <alan@spri.levels.unisa.edu.au>:
6527 * Makefile.in (CC_FOR_TARGET): Remove brokensed stuff.
6528 (CXX_FOR_TARGET): Likewise.
6529 (install): Likewise.
6530 (GENERATED_HFILES): Remove config.h.
6531 (.dep): Depend upon config.h.
6532
6533 Mon Sep 18 14:39:38 1995 Arne H. Juul <arnej@pvv.unit.no>
6534
6535 * configure.tgt (mips*-dec-netbsd*): New target.
6536
6537 Fri Sep 15 20:01:52 1995 Ken Raeburn <raeburn@cygnus.com>
6538
6539 * configure.host (m88*-*-dgux*): Fix another shell syntax error.
6540
6541 Fri Sep 15 23:28:05 1995 Andrew Cagney <cagney@highland.com.au>
6542
6543 * configure.host (i[345]86-*-bsd*): Fix shell syntax error.
6544
6545 Thu Sep 12 12:50:49 1995 steve chamberlain <sac@slash.cygnus.com>
6546
6547 * scripttemp/pe.sc: Allow both spellings of .ctors/.dtors.
6548 Start .text section on the right boundary. Always align
6549 stabs.
6550
6551 Tue Sep 12 12:24:17 1995 Ian Lance Taylor <ian@cygnus.com>
6552
6553 * Makefile.in (maintainer-clean): New target.
6554
6555 * ldmain.c (struct warning_callback_info): Define.
6556 (warning_callback): Add new parameter symbol. Call
6557 warning_find_reloc to try to find the section and VMA.
6558 (warning_find_reloc): New static function.
6559 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
6560 Pass NULL as symbol parameter to warning callback.
6561
6562 * ld.texinfo: Clarify -L option.
6563
6564 * ldlang.c (lang_one_common): Add cast to avoid warning.
6565 (topower): Likewise. Also, reindent.
6566 * ldwrite.c (clone_section): Change i to unsigned int.
6567 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Add
6568 cast to avoid warning.
6569
6570 Fri Sep 8 16:32:43 1995 Ian Lance Taylor <ian@cygnus.com>
6571
6572 * Makefile.in (config.status): Depend upon configure.tgt.
6573
6574 * ldemul.h (ldemul_set_symbols): Declare.
6575 (ldemul_parse_args): Declare.
6576 * ldemul.c (ldemul_parse_args): Fix indentation.
6577
6578 * configure.in: Call AC_HEADER_DIRENT.
6579 * configure, config.in: Rebuild.
6580 * emultempl/sunos.em: Use autoconf recommend mechanism to define
6581 DIR and struct dirent.
6582
6583 * configure.tgt (mips*-*-bsd*): New case.
6584
6585 * configure.host (i[345]86-sequent-ptx* | i[345]86-sequent-sysv*)
6586 New case.
6587 * configure.tgt (i[345]86-*-ptx*): New case.
6588
6589 Thu Sep 7 10:48:26 1995 Ian Lance Taylor <ian@cygnus.com>
6590
6591 * config.in: Rename from config.h.in.
6592 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
6593 Check for config.h:config.in when creating stamp-h.
6594 * configure: Rebuild.
6595 * Makefile.in (stamp-h): Depend upon config.in rather than
6596 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
6597 calling config.status.
6598
6599 * Makefile.in (distclean): Remove config.h and stamp-h.
6600
6601 * configure.host (sparc-*-sunos64*): Remove.
6602 * ldlang.c (lang_map): Check BFD64, not HOST_64_BIT.
6603
6604 * ldexp.c (exp_fold_tree): Don't warn about moving the location
6605 counter backward in the absolute section.
6606
6607 Wed Sep 6 14:42:11 1995 Ian Lance Taylor <ian@cygnus.com>
6608
6609 * configure.in: Rewrite to use autoconf.
6610 * configure.host: New file.
6611 * configure.tgt: New file.
6612 * aclocal.m4: New file.
6613 * configure: New file, built by autoconf.
6614 * acconfig.h: New file.
6615 * config.h.in: New file, built by autoheader.
6616 * sysdep.h: New file.
6617 * ld.h: Incorporate old contents of config.h.
6618 * config.h: Remove.
6619 * Makefile.in: Various changes for new configure script. Also:
6620 (CC_FOR_BUILD): Remove.
6621 (ldmain.o): Don't bother to ensure that EMUL is non-empty.
6622 (dep.sed): Use @SRCDIR@, not @srcdir@.
6623 * dep-in.sed: Use @SRCDIR@, not @srcdir@.
6624 * genscripts.sh: Create ldscripts if it does not exist.
6625 * ldemul.c, lexsup.c, mpw-emipsidt.c: Don't include "config.h".
6626 * mpw-esh.c, emultemp/*.em: Likewise.
6627 * ldmain.c: Likewise. Include <ctype.h>. Don't try to set
6628 HAVE_SBRK here.
6629 * config/*.mt, config/*.mh: Remove.
6630
6631 Tue Sep 5 14:55:24 1995 Ken Raeburn <raeburn@cygnus.com>
6632
6633 * configure.in: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
6634 ns32k-pc532-lites* like ns32k-pc532-netbsd*. From Ian Dall.
6635
6636 Fri Sep 1 22:29:52 1995 Doug Evans <dje@canuck.cygnus.com>
6637
6638 * scripttempl/pe.sc: Fix typo in spelling of .ctors/.dtors.
6639
6640 Fri Sep 1 13:13:29 1995 Ian Lance Taylor <ian@cygnus.com>
6641
6642 * ldmain.c (warning_callback): Add abfd, section, and address
6643 parameters.
6644 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
6645 Change call to warning accordingly.
6646
6647 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): If not
6648 relocateable and not shared, put .gnu.warning.SYMBOL sections into
6649 the .text section.
6650
6651 Fri Sep 1 08:35:16 1995 James G. Smith <jsmith@beauty.cygnus.com>
6652
6653 * configure.in: Added mips*vr4300-idt-elf* and
6654 mips*vr4300el-idt-elf* targets.
6655 * Makefile.in: Added eelf32vr4300* targets.
6656 * emulparams/{elf32vr4300.sh, elf32vr4300el.sh}: Added.
6657 * config/{mips-vr4300.mt, mips-vr4300el.mt}: Added.
6658
6659 Fri Sep 1 10:51:45 1995 Ian Lance Taylor <ian@cygnus.com>
6660
6661 * scripttempl/a29k.sc: Fix to be reasonable. From Brendan Kehoe
6662 <brendan@cygnus.com>.
6663
6664 Thu Aug 31 16:37:07 1995 steve chamberlain <sac@slash.cygnus.com>
6665
6666 * ldemul.c (ldemul_parse_args): New.
6667 * ldemul.h (ld_emulation_xfer_struct): Add parse_args.
6668 * lexsup.c (all pe stuff): Moved into pe.em
6669 (parse_args): Call emulation arg parser.
6670 * emultempl/pe.em (parse_args): handle PE specfic args.
6671
6672 Thu Aug 31 17:01:37 1995 Ian Lance Taylor <ian@cygnus.com>
6673
6674 * ldlang.c (lang_memory_region_lookup): Don't use the first region
6675 as the default region. Create a new region instead.
6676
6677 Tue Aug 29 14:21:41 1995 steve chamberlain <sac@slash.cygnus.com>
6678
6679 * ldemul.c (ldemul_set_symbols): New function.
6680 * ldemul.h (ld_emulation_xfer_struct): Add set_symbols.
6681 * ldmain.c (main): Add call to ldemul_set_symbols.
6682 * lexsup.c (set_pe_value): New args.
6683 (set_pe_name): New.
6684 (parse_args): Cope with new set_pe_value args.
6685 * emultempl/pe.em (set_symbols): New function.
6686 (ld_emulation_xfer_struct): Add set_symbols.
6687 * scripttempl/pe.sc: Use new symbols.
6688
6689 Thu Aug 24 18:12:18 1995 Ian Lance Taylor (ian@cygnus.com)
6690
6691 * lexsup.c (parse_args): Don't call set_default_dirlist for -O.
6692 For -Y, ignore a leading `P,', and only call set_default_dirlist
6693 after processing all the other arguments.
6694
6695 Tue Aug 22 07:36:58 1995 steve chamberlain <sac@slash.cygnus.com>
6696
6697 * scripttempl/pe.sc: Keep .edata, don't base stabs at 0.
6698 * emulparams/armpe.sh: Run PE script.
6699
6700 Mon Aug 21 18:30:42 1995 steve chamberlain <sac@slash.cygnus.com>
6701
6702 * ldmain.c (main): Remove PE stuff.
6703 * lexsup.c (options): Load more PE options.
6704 (set_pe_value): New function.
6705
6706 Thu Aug 17 13:35:49 1995 steve chamberlain <sac@slash.cygnus.com>
6707
6708
6709 * emultempl/{armpe.sc, i386pe.sc}: Deleted.
6710 * emultempl/pe.sc: New file performs generic PE support and sorts
6711 archive members.
6712 * emulparams/{armpe.sh,i386pe.sh}: Use new file.
6713 * scripttempl/{armpe.sc, i386pe.sc}: Deleted
6714 * scripttempl/pe.sc: New.
6715 * Makefile.in: Use new files.
6716
6717 Thu Aug 17 14:46:34 1995 Doug Evans <dje@canuck.cygnus.com>
6718
6719 * scripttempl/h8500s.sc (.rdata): All data must go in data segment.
6720 (.strings,.ctors,.dtors): Likewise.
6721
6722 Wed Aug 16 11:38:59 1995 steve chamberlain <sac@slash.cygnus.com>
6723
6724 * scripttempl/armpe.sc: Always start code at 0x401000, even
6725 if -r.
6726 * ldwrite.c (strdup): New extern declaration.
6727 * ldgram.y (atype): New rule to clarify type parsing.
6728 * ldlang.c (init_os): Remove commented out code.
6729 (lang_size_sections): Set SEC_ALLOC and SEC_LOAD bits
6730 unless told not to by the link script.
6731
6732 Wed Aug 16 11:45:11 1995 Ian Lance Taylor <ian@cygnus.com>
6733
6734 * ldlang.c (lang_set_startof): New static function.
6735 (lang_process): Call it.
6736
6737 * ldgram.y: Tweak casesymlist to avoid bison errors.
6738
6739 * lexsup.c (parse_args): Accept -h as a synonym for --soname, for
6740 Solaris compatibility.
6741
6742 Tue Aug 15 17:31:16 1995 Ian Lance Taylor <ian@cygnus.com>
6743
6744 * ldgram.y (YYDEBUG): If not defined, define as 1.
6745 (CASE, EXTERN, START): New tokens.
6746 (mri_script_command): Handle CASE, EXTERN, INCLUDE, START.
6747 (casesymlist): New nonterminal.
6748 (extern_name_list): New nonterminal.
6749 * ldlex.l: Accept lower case trailing base specifiers. Don't
6750 ignore the first digit when the base is a suffix. Accept many
6751 EXPRESSION state tokens in MRI state. Support MRI continuation
6752 lines and MRI semicolon comments. Accept all MRI keywords in
6753 lower case. Add CASE, EXTERN, and START MRI keywords.
6754
6755 Tue Aug 8 19:14:58 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
6756
6757 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Use xmalloc
6758 instead of alloca.
6759
6760 Tue Aug 8 15:24:05 1995 J.T. Conklin <jtc@rtl.cygnus.com>
6761
6762 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Don't use
6763 $r/../gcc/xgcc unless it is present.
6764
6765 Thu Aug 3 11:56:22 1995 Ian Lance Taylor <ian@cygnus.com>
6766
6767 * scripttempl/m68kcoff.sc: Only put .ctors and .dtors in .text
6768 when CONSTRUCTING.
6769 * scripttempl/m68klynx.sc: Likewise.
6770 * scripttempl/nw.sc: Likewise.
6771 * scripttempl/sa29200.sc: Likewise.
6772 * scripttempl/sparclynx.sc: Likewise.
6773
6774 Fri Jul 28 12:02:23 1995 steve chamberlain <sac@slash.cygnus.com>
6775
6776 * emulparams/{z8001.sh, z8002.sh}: Fix typo.
6777
6778 Thu Jul 27 21:06:21 1995 Ken Raeburn <raeburn@cygnus.com>
6779
6780 * configure.in (i[345]86-*-linuxoldld): Treat like linuxaout*.
6781
6782 Thu Jul 27 15:26:28 1995 steve chamberlain <sac@slash.cygnus.com>
6783
6784 * scripttempl/i386pe.sc: Cope with constructors.
6785 * scripttempl/z8ksim.sc: Deleted.
6786 * scripttempl/z8000.sc: Resurrected as this, but
6787 can handle z8001 and z8002 formats.
6788 * emulparams/z8ksim.sh: Deleted.
6789 * emulparams/{z8001.sh, z8002.sh}: New files.
6790 * config/z8ksim.mt: Deleted
6791 * config/z8k-coff.mt: New, generates both emulations.
6792
6793 Tue Jul 25 14:53:02 1995 Ian Lance Taylor <ian@cygnus.com>
6794
6795 * ldmisc.c (vfinfo): In %C and %D case, always print the BFD using
6796 %B, in case it is in an archive.
6797
6798 Mon Jul 24 15:23:39 1995 Ian Lance Taylor <ian@cygnus.com>
6799
6800 * ldlang.c (lang_process): Call reset_memory_regions for each
6801 relaxation pass.
6802
6803 Fri Jul 21 22:49:44 1995 Michael Meissner <meissner@cygnus.com>
6804
6805 * scripttempl/elfppc.sc: Add support for .sdata, .sbss, and
6806 _SDA_BASE.
6807
6808 Thu Jul 20 16:26:55 1995 Ken Raeburn <raeburn@cygnus.com>
6809
6810 * ldmain.c (constructor_callback): Allocate set_name in stack
6811 frame, rather than always calling alloca with a fixed size.
6812
6813 Wed Jul 19 16:21:43 1995 Doug Evans <dje@canuck.cygnus.com>
6814
6815 * emulparams/armpe.sh (OUTPUT_FORMAT): Change to pei-arm-little.
6816 (LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
6817
6818 Mon Jul 17 13:57:00 1995 Ian Lance Taylor <ian@cygnus.com>
6819
6820 * ldwrite.c (clone_section): Set the alignment of the clone
6821 section to that of the section being cloned.
6822
6823 * ldwrite.c (split_sections): Don't split the first input section
6824 into a new output section.
6825
6826 Sat Jul 15 00:26:35 1995 Michael Meissner <meissner@cygnus.com>
6827
6828 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Define as elf32.
6829 (GENERATE_SHLIB_SCRIPT): Define as yes.
6830
6831 Fri Jul 14 12:11:46 1995 Ian Lance Taylor <ian@cygnus.com>
6832
6833 * emultempl/mipsecoff.em (check_sections): Use %P, not %F.
6834
6835 * ldver.c (help): Update list of options to match currently
6836 supported list.
6837
6838 Thu Jul 13 13:52:10 1995 Ian Lance Taylor <ian@cygnus.com>
6839
6840 * emultempl/lnk960.em (ld_lnk960_emulation): Initialize
6841 after_open field.
6842
6843 * ldexp.c (exp_intop): Don't cast stat_alloc arg to bfd_size_type;
6844 it takes a size_t anyhow.
6845 (exp_binop): Likewise.
6846 (exp_trinop): Likewise.
6847 (exp_unop): Likewise.
6848 (exp_nameop): Likewise.
6849 (exp_assop): Likewise.
6850 * ldlang.c (lang_memory_region_lookup): Likewise.
6851 (init_os): Likewise.
6852 (ldlang_add_undef): Likewise.
6853 (insert_pad): Likewise.
6854 * ldfile.c (ldfile_add_arch): Don't cast xmalloc arg to
6855 bfd_size_type.
6856
6857 * Makefile.in (ALL_EMULATIONS): It's earmaoutb.o, not earmoutb.o.
6858
6859 Wed Jul 12 11:32:22 1995 Ian Lance Taylor <ian@cygnus.com>
6860
6861 * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to
6862 declaration.
6863 (ld_emulation_xfer_type): Add search parameter to
6864 open_dynamic_archive entry point.
6865 * ldemul.c (ldemul_open_dynamic_archive): Add search parameter.
6866 * ldfile.c (ldfile_try_open_bfd): Rename from try_open_bfd, and
6867 make non-static. Change all callers to use new name.
6868 (ldfile_open_file_search): Make static. If entry is dynamic, call
6869 ldemul_open_dynamic_archive.
6870 (ldfile_open_file): Don't call ldemul_open_dynamic_archive.
6871 * ldfile.h (ldfile_open_file_search): Don't declare.
6872 (ldfile_try_open_bfd): Declare.
6873 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
6874 Accept search parameter. Don't search for a library, just look in
6875 a single place.
6876 * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
6877 Likewise.
6878
6879 Tue Jul 11 16:44:21 1995 Ian Lance Taylor <ian@cygnus.com>
6880
6881 * ldmain.c (set_scripts_dir): Don't base script directory on
6882 current directory.
6883
6884 Tue Jul 11 12:29:02 1995 Rick Sladkey <jrs@world.std.com>
6885
6886 * ldmisc.c (vfinfo): Don't print the line number if it isn't
6887 meaningful.
6888
6889 Mon Jul 10 13:38:28 1995 Ian Lance Taylor <ian@cygnus.com>
6890
6891 * ld.h (ld_config_type): Add field warn_constructors.
6892 * ldmain.c (add_to_set): Warn if config.warn_constructors.
6893 (constructor_callback): Likewise.
6894 * lexsup.c (parse_args): Handle -warn-constructors.
6895 * ld.texinfo, ld.1: Document -warn-constructors.
6896
6897 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Don't
6898 get confused by directory names if we searched for the file.
6899
6900 Based on patches from H.J. Lu <hjl@nynexst.com>:
6901 * ldlang.h (lang_input_statement_type): Add new field dynamic.
6902 * ldlang.c (new_afile): Set dynamic from config.dynamic_link.
6903 * ldfile.c: Include bfdlink.h.
6904 (ldfile_open_file): Check dynamic field of entry, not global
6905 dynamic_link field. Don't do a dynamic search when doing a
6906 relocateable link.
6907 * ldmain.c (main): Don't warn about dynamic_link for a
6908 relocateable link.
6909 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Skip file if
6910 dynamic is false.
6911 (gld${EMULATION_NAME}_create_output_section_statements): Always
6912 loop over input files.
6913 * Makefile.in: Rebuild dependencies.
6914
6915 * ld.texinfo, ld.1: Document -Bstatic, -Bdynamic, -Bshared, and
6916 -shared.
6917
6918 Mon Jul 10 13:29:43 1995 Eric Youngdale <eric@aib.com>
6919
6920 * ldmain.c (main): Set link_info.symbolic to false.
6921 * lexsup.c (parse_args): Handle -Bsymbolic.
6922
6923 Wed Jul 5 00:12:11 1995 Fred Fish (fnf@cygnus.com)
6924
6925 * ldmain.c (HAVE_SBRK): Define for everything except
6926 specific systems that are known to not support sbrk.
6927 (main): Use HAVE_SBRK to decide whether or not to use sbrk.
6928
6929 Tue Jul 4 12:55:48 1995 Ian Lance Taylor <ian@cygnus.com>
6930
6931 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
6932 Handle etree_provide.
6933
6934 * emultempl/elf32.em (global_needed): New static variable.
6935 (global_found): Likewise.
6936 (gld${EMULATION_NAME}_after_open): New static function.
6937 (gld${EMULATION_NAME}_search_needed): Likewise.
6938 (gld${EMULATION_NAME}_try_needed): Likewise.
6939 (gld${EMULATION_NAME}_check_needed): Likewise.
6940 (ld_${EMULATION_NAME}_emulation): Replace after_open_default with
6941 gld${EMULATION_NAME}_after_open.
6942
6943 Mon Jul 3 14:26:37 1995 Steve Chamberlain <sac@slash.cygnus.com>
6944
6945 * configure.in (i386-*-win32): New target.
6946
6947 Mon Jul 3 14:39:22 1995 Ian Lance Taylor <ian@cygnus.com>
6948
6949 * lexsup.c (parse_args): Let -G either set the small data size or
6950 be equivalent to --shared, depending on the next argument. Accept
6951 and ignore -z for Solaris compatibility.
6952
6953 Sun Jul 2 17:52:34 1995 Ian Lance Taylor <ian@cygnus.com>
6954
6955 * lexsup.c (parse_args): Cast fopen result to PTR before storing
6956 it in link_info.base_file. Fix indentation.
6957
6958 Wed Jun 28 17:11:25 1995 Steve Chamberlain <sac@slash.cygnus.com>
6959
6960 * ldmain.c (main): Always initialize PE info in link_info.
6961 * lexsup.c (OPTION_BASE_FILE): New option.
6962 (parse_args): Handle new option.
6963 * emulparams/armpe.sh: Output pei.
6964 * emultempl/i386pe.em: Add newline to end.
6965 * scripttempl/armpe.sc: Change output and quote the $s.
6966 * scripttempl/i386pe.sc: Change output and quote the $s.
6967
6968 Thu Jun 22 19:55:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
6969
6970 Sun May 7 11:53:41 MDT 1995 Bryan Ford <baford@cs.utah.edu>
6971
6972 * configure.in (i386-*-msdos*, i386-*-moss*): New targets.
6973 * Makefile.in (ALL_EMULATIONS): Added i386msdos.o.
6974 (i386msdos.o): New target.
6975 * config/i386-msdos.mt: Created.
6976 * emulparams/i386msdos.sh: Created.
6977 * scripttempl/i386msdos.sc: Created.
6978
6979 Thu Jun 22 15:06:35 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6980
6981 * scripttempl/elfppc.sc (.fixup): Add support for a .fixup section
6982 that contains pointers to be relocated.
6983
6984 Tue Jun 20 17:47:20 1995 Stan Shebs <shebs@andros.cygnus.com>
6985
6986 * mpw-esh.c: New file, modified for MPW from esh.c.
6987 * scripttempl/sh.sc: Reformatted to simplify MPWification,
6988 use *() to concat stab sections instead of [].
6989
6990 Thu Jun 15 08:48:16 1995 Steve Chamberlain <sac@slash.cygnus.com>
6991
6992 * scripttempl/armpe.sc: Add constructor support.
6993
6994 Tue Jun 13 09:11:20 1995 Steve Chamberlain <sac@slash.cygnus.com>
6995
6996 * ldlang.c (lang_size_sections): Any section with a DATA
6997 statement has contents.
6998
6999 Sun Jun 11 15:20:46 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7000
7001 * emulparams/m68kelf.sh (NOP): Define.
7002 (DYNAMIC_LINK): Don't define.
7003 (TEXT_START_ADDR): Set to 0x80000000; the extra 0x100 for headers
7004 will come from the linker script.
7005
7006 Thu Jun 8 14:17:33 1995 Steve Chamberlain <sac@slash.cygnus.com>
7007
7008 * emulparams/armpe.sh, scriptempl/armpe.sc: Add end and stack.
7009
7010 Mon Jun 5 02:16:24 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
7011
7012 * configure.in (i[345]86-*-gnu*): Use GNU elf config.
7013
7014 Thu May 25 11:49:28 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7015
7016 From Andrew Cagney <cagney@highland.com.au>
7017 * Makefile.in: Fixup more gotchas from renaming elf32ppcle to
7018 elf32lppc.
7019
7020 Wed May 24 11:23:21 1995 Steve Chamberlain <sac@slash.cygnus.com>
7021
7022 Add support for ARM-PE.
7023 * Makefile.in (ALL_EMULATIONS): Add armpe.o
7024 * configure.in: Recognize armpe.
7025 * config/arm-pe.mt: New file.
7026 * emulparams/armpe.sh: New file.
7027 * scripttempl/armpe.sc: New file.
7028
7029
7030 Mon May 22 15:19:26 1995 Doug Evans <dje@chestnut.cygnus.com>
7031
7032 * configure.in (h8300h-*-hms): Deleted
7033 * config/cf-h8300h.mt: Deleted.
7034
7035 Thu May 18 04:26:10 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
7036
7037 Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
7038
7039 From David Taylor (dtaylor@armltd.co.uk)
7040 * Makefile.in (ALL_EMULATIONS): Add earmout[lb].o
7041 * configure.in: Recognize arm{,e[lb]-*-aout.
7042 * config/arm[lb]-aout.mt: New files.
7043 * emulparams/armaout[lb].sh: New files.
7044 * scripttempl/armaout.sc: New file.
7045
7046 Tue May 16 18:27:11 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7047
7048 * config/ppcle-elf32.mt (EMUL): Use elf32lppc, not elf32ppcle, to
7049 be unique in 8 characters for DOS.
7050
7051 * emulparams/elf32lppc.sh: New file, renamed from elf32ppcle.sh.
7052 * emulparams/elf32ppcle.sh: Deleted.
7053
7054 Fri May 12 11:03:55 1995 Steve Chamberlain <sac@slash.cygnus.com>
7055 Tom Griest <griest@cs.yale.edu>
7056
7057 Initial support for PE executables (eg NT, win32)
7058
7059 * Makefile.in (configure.in, ei386pe): Add support.
7060 * ldmain.c (main): Initialize PE argument info.
7061 * ldwrite.c (print_file_stuff): Don't print out .drectve
7062 and .debug section info.
7063 * lexsup.c (set_subsystem, set_stack_heap, OPTION_HEAP,
7064 OPTION_SUBSYSTEM, parse_argsm set_subsystem, set_stack_heap):
7065 Handle new arguments.
7066 * config/i386-pe.mt, emultempl/i386pe.em, scripttempl/i386pe.sc:
7067 New files
7068
7069 Wed May 10 18:37:59 1995 Stu Grossman (grossman@andros.cygnus.com)
7070
7071 * scripttempl/hppaelf.sc: Remove .PARISC.unwind section from text
7072 segment. This allows ld -r to preserve unwind sections.
7073
7074 Tue May 9 17:19:57 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7075
7076 * configure.in: Add little endian PowerPC support.
7077
7078 * Makefile.in (ALL_EMULATIONS): Add eelf32ppcle.o.
7079 (eelf32ppcle.c): Support for little endian PowerPC.
7080
7081 * config/ppcle-elf32.mt: New file for little endian PowerPC.
7082 * emulparams/elf32ppcle.sh: Ditto.
7083
7084 Wed May 3 12:56:32 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7085
7086 * ldlang.c (print_output_section_statement): Check
7087 subsection_alignment, instead of checking section_alignment twice.
7088 Noticed by Alan Modra <alan@spri.levels.unisa.edu.au>.
7089
7090 Tue May 2 16:36:07 1995 Jeff Law (law@snake.cs.utah.edu)
7091
7092 * configure.in (hppa*-*-lites*): Handle like hppa*-*-*elf*.
7093
7094 Mon Apr 24 19:21:02 1995 Michael Meissner <meissner@cygnus.com>
7095
7096 * ldwrite.c (ldwrite): Before doing anything, reset the error
7097 code. If bfd_final_link returns an error, but the error code is
7098 unset, don't issue an extra message. Assume a correct error
7099 message was already set.
7100
7101 Fri Apr 14 16:31:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7102
7103 * Makefile.in (ALL_EMULATIONS): Added em68kelf.o.
7104 (em68kelf.o): New target.
7105 * config/m68k-elf.mt, emulparams/m68kelf.sh: New files.
7106 * configure.in: Use them for m68*-*-elf.
7107
7108 Tue Apr 11 12:02:03 1995 Stan Shebs <shebs@andros.cygnus.com>
7109
7110 Merge in support for Mac MPW as a host.
7111 (Old change descriptions retained for informational value.)
7112
7113 * mpw-config.in (i386-unknown-aout): Change to i386-unknown-go32.
7114 (i386-unknown-coff): Remove.
7115 (sh-hitachi-hms): New target.
7116 (emulation_ofiles): Set correctly for each target.
7117 (version, TDEFINES): Add to makefile fragment.
7118 * mpw-make.in (BISON): Use byacc instead of bison.
7119 (em_*.c): Replace with e*.c everywhere.
7120 (ldgram.h): Separate action from ldgram.c generation.
7121 (LD_PROG): Depend on Version.r.
7122 (Version.r): generate from version info.
7123 * mpw-emipsidt.c: New file, modified for MPW from emipsidt.c.
7124
7125 * mpw-config.in (m68k-apple-macos, ppc-apple-macos,
7126 i386-unknown-aout, i386-unknown-coff): New targets.
7127 (m68k-aout, m68k-coff): Remove targets.
7128 (mk.tmp): Add definition of EMUL.
7129
7130 * mpw-config.in (emulname): Set based on target.
7131 (ldemul-list.h): Construct.
7132 * mpw-make.in (install-only): New target.
7133 (install): Depend on install-only.
7134
7135 * mpw-make.in (bindir): Fix pathname.
7136 (install): Move here from mpw-build.in.
7137
7138 * mpw-config.in: New file, MPW configuration fragment.
7139 * mpw-make.in: New file, MPW makefile fragment.
7140 (This file is semi-automatically generated from Makefile.in.)
7141 * ldfile.c (slash): If MPW, set to `:'.
7142 * ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
7143 prevent redefinition errors.
7144
7145 Tue Apr 4 17:55:18 1995 Steve Chamberlain <sac@bang.hack.com>
7146
7147 * ldwrite.c (clone_section): Align clone sections on even
7148 boundaries.
7149
7150 Thu Mar 30 14:32:26 1995 H.J. Lu (hjl@nynexst.com)
7151
7152 * configure.in: Change linux to default to elf. Using
7153 i[345]86-*-linuxaout will build a linker which defaults to a.out.
7154 * config/i386-laout.mt: Rename from old config/i386-linux.mt.
7155 * config/i386-linux.mt: Rename from old config/i386-lelf.mt.
7156 * config/i386-lelf.mt: Remove.
7157
7158 Thu Mar 30 13:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
7159
7160 * ldmain.c (main): If opening the map file fails, call
7161 bfd_set_error before calling einfo.
7162
7163 * ld.texinfo, ld.1: Document the -no-keep-memory option.
7164
7165 Mon Mar 27 11:10:08 1995 Ian Lance Taylor <ian@cygnus.com>
7166
7167 * ldmain.c (main): Revert patch of March 10, since the SVR4 linker
7168 does mark shared libraries as executable.
7169
7170 Tue Mar 21 15:15:38 1995 Ian Lance Taylor <ian@cygnus.com>
7171
7172 * ldlang.c (lang_common): Change power to int. Pass larger values
7173 before smaller values.
7174 (lang_one_common): Treat info as int *. Don't bother to check for
7175 last value, since it is now zero.
7176
7177 Sat Mar 18 01:49:14 1995 Ian Lance Taylor <ian@cygnus.com>
7178
7179 * ldlang.c (load_symbols): An empty archive is OK.
7180
7181 Fri Mar 17 16:15:31 1995 Stan Shebs <shebs@andros.cygnus.com>
7182
7183 * ldmain.c (progress.h): Include.
7184 (main): Call START_PROGRESS and END_PROGRESS.
7185
7186 Thu Mar 16 17:17:33 1995 Michael Meissner <meissner@cygnus.com>
7187
7188 * scripttempl/elfppc.sc: Move _GOT2_END_ after the .ctors and
7189 .dtors sections, so that these pointers get relocated also.
7190 Define the symbols __{C,D}TOR_{LIST,END}__ to mark the beginning
7191 and end of the constructors/destructors.
7192
7193 Thu Mar 16 13:59:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
7194
7195 * ldlang.c (load_symbols): If whole_archive is true and ENTRY
7196 describes an archive, call bfd_link_add_symbols on each member.
7197 * ldmain.c (whole_archive): New variable.
7198 (main): Initialize it to false.
7199 * ldmain.h: Declare whole_archive.
7200 * lexsup.c (parse_args): Grok --whole-archive switch.
7201 * ld.texinfo, ld.1: Document --whole-archive.
7202
7203 Thu Mar 16 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
7204
7205 * genscripts.sh (EMULATION_NAME): Set LIB_PATH to empty when not
7206 using the default emulation.
7207
7208 * config/dgux.mh (HOSTING_EMU): Use -m rather than trying to set
7209 LDEMULATION.
7210 * config/hppaelf.mh (HOSTING_EMU): Likewise.
7211
7212 Tue Mar 14 12:28:03 1995 Ian Lance Taylor <ian@cygnus.com>
7213
7214 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Set force_maj
7215 for -lc.N. From H.J. Lu <hjl@nynexst.com>.
7216
7217 Fri Mar 10 14:43:48 1995 Ian Lance Taylor <ian@cygnus.com>
7218
7219 * ldmain.c (main): Don't set EXEC_P if link_info.shared is set.
7220
7221 * ldlex.l: Return -lFILENAME as the token LNAME.
7222 * ldgram.y: Add token LNAME.
7223 (input_list): Treat LNAME like NAME, but pass it to
7224 lang_add_input_file as lang_input_file_is_l_enum.
7225 * ld.texinfo: Document using -lFILENAME in INPUT.
7226
7227 Thu Mar 9 12:21:51 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7228
7229 * ldlang.c (lang_check): If the architectures are compatible call
7230 bfd_merge_private_bfd_data to let the backend do additional
7231 checks.
7232
7233 Tue Mar 7 00:53:08 1995 Ian Lance Taylor <ian@cygnus.com>
7234
7235 * ldemul.c (ldemul_choose_mode): If emulation not recognized, list
7236 all supported emulations.
7237
7238 Mon Mar 6 14:03:50 1995 Ian Lance Taylor <ian@cygnus.com>
7239
7240 * ldemul.c (ldemul_list_emulations): New function.
7241 * ldemul.h (ldemul_list_emulations): Declare.
7242 * ldver.c (help): List supported targets and emulations.
7243
7244 Fri Mar 3 15:40:36 1995 Doug Evans <dje@canuck.cygnus.com>
7245
7246 * scripttempl/elf.sc (.debug): Relocate to address 0.
7247 (.debug_srcinfo, .debug_aranges, .debug_pubnames,
7248 .debug_sfnames, .line): Likewise.
7249
7250 Fri Mar 3 17:07:14 1995 Ian Lance Taylor <ian@cygnus.com>
7251
7252 * emultempl/elf32.em (hold_rel): New static variable.
7253 (gld${EMULATION_NAME}_place_orphan): Place readonly sections with
7254 contents whose names begin with ".rel" after hold_rel. Remove the
7255 assertion which checked for unplaced .rel sections. Don't try to
7256 sort the section into place if place->bfd_section is NULL.
7257 (gld${EMULATION_NAME}_place_section): Set hold_rel to the first
7258 section beginning with ".rel".
7259
7260 Thu Mar 2 14:34:43 1995 Ian Lance Taylor <ian@cygnus.com>
7261
7262 Doc note from pierre@phi.la.tce.com (Pierre Willard):
7263 * ld.texinfo: -X and -x work even if -s or -S are not specified.
7264 * ld.1: Similar change.
7265
7266 Wed Mar 1 13:51:16 1995 Ian Lance Taylor <ian@cygnus.com>
7267
7268 * emulparams/gld960coff.sh (COFF_CTORS): Define.
7269 * scripttempl/i960.sc: Use COFF_CTORS if CONSTRUCTING.
7270
7271 Tue Feb 28 12:42:56 1995 Ian Lance Taylor <ian@cygnus.com>
7272
7273 * configure.in (i[345]86-*-linuxelf*): New target. Use i386-lelf.
7274 (i[345]86-*-gnuelf*): New target. Use i386-gelf.
7275 * config/i386-lelf.mt: New file.
7276 * config/i386-gelf.mt: New file.
7277
7278 Tue Feb 28 10:27:54 1995 Rob Savoye <rob@darkstar.cygnus.com>
7279
7280 * configure.in: Match on mips-ecoff, and default to the IDT
7281 configuration.
7282
7283 Fri Feb 17 13:06:47 1995 Michael Meissner <meissner@cygnus.com>
7284
7285 * scripttempl/elfppc.sc: Add support for .got1 and .got2 sections.
7286 Offset _GLOBAL_OFFSET_TABLE_ 32768 from the start of the GOT area
7287 to double the size of the table.
7288
7289 Thu Feb 9 18:29:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7290
7291 * Makefile.in (distclean): Do recursive deletion, since ldscripts
7292 is a directory.
7293
7294 Thu Feb 9 11:38:22 1995 Ian Lance Taylor <ian@cygnus.com>
7295
7296 * ldmain.c (main): If trace_file_tries is true, and we are using
7297 an internal linker script, print out the script.
7298 * ldfile.c (try_open): Reindent function. Make the messages about
7299 opening script files more informative.
7300
7301 * lexsup.c (parse_args): For -V, call ldversion with 1, not 0.
7302 * ld.texinfo, ld.1: Update accordingly.
7303
7304 Wed Feb 8 17:34:45 1995 Ian Lance Taylor <ian@cygnus.com>
7305
7306 * ldlang.c (lang_one_common): Adjust references to common symbol
7307 information for new structure.
7308
7309 Mon Feb 6 12:17:24 1995 Ian Lance Taylor <ian@cygnus.com>
7310
7311 * ldmain.c (undefined_symbol): Handle section being NULL.
7312
7313 * ldctor.c (ldctor_build_sets): Handle bfd_link_hash_defweak.
7314 * ldexp.c (fold_name): Likewise.
7315 * ldlang.c (print_one_symbol): Likewise.
7316 (lang_finish): Likewise.
7317 * ldmain.c (multiple_common): Likewise.
7318 * ldwrite.c (print_symbol): Likewise. Also, bfd_link_hash_weak
7319 renamed to bfd_link_hash_undefweak.
7320
7321 * scripttempl/alpha.sc: Set address of .data section correctly
7322 when -n or -N is used. Patch from Chris G Demetriou
7323 <Chris_G_Demetriou@LAGAVULIN.PDL.CS.CMU.EDU>.
7324 * scripttempl/mips.sc: Similar change.
7325
7326 Tue Jan 31 16:20:52 1995 Doug Evans <dje@canuck.cygnus.com>
7327
7328 * ldlang.c (lang_size_sections): Clarify error message when user
7329 specified start addr conflicts with region. Fix resetting of
7330 region pointer.
7331
7332 Tue Jan 31 12:37:09 1995 Ian Lance Taylor <ian@cygnus.com>
7333
7334 * ldexp.c (fold_name): In case NAME, permit an absolute symbol
7335 in lang_allocating_phase_enum.
7336
7337 Mon Jan 30 11:33:25 1995 Ian Lance Taylor <ian@cygnus.com>
7338
7339 * Makefile.in (distclean): Depend upon clean. Don't bother to
7340 remove files which will be removed by clean. From patch by
7341 alan@SPRI.Levels.UniSA.Edu.Au (Alan Modra).
7342
7343 Fri Jan 27 16:27:34 1995 Ian Lance Taylor <ian@cygnus.com>
7344
7345 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): For
7346 a MIPS target, clobber the size of all but the first input
7347 .reginfo section to be 0, so that lang_size_sections sets the
7348 correct size for the output .reginfo section.
7349
7350 Thu Jan 26 19:53:37 1995 Ian Lance Taylor <ian@cygnus.com>
7351
7352 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
7353 Remove unused variable is.
7354
7355 Thu Jan 26 12:33:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7356
7357 * configure.in: Add support for powerpc-*-eabi.
7358
7359 * scripttempl/elfppc.sc: New file for PowerPC embedded ABI
7360 support.
7361
7362 * emulparams/elf32ppc.sh (SCRIPT_NAME): Use elfppc.sc instead of
7363 elf.sc, which defines some new symbols PowerPC elf needs.
7364
7365 Tue Jan 24 10:32:15 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7366
7367 * ldctor.c (ldctor_add_set_entry): Don't dump core if a
7368 constructor entry is in the absolute section.
7369
7370 Mon Jan 23 13:58:13 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7371
7372 * configure.in (i[345]86-*-gnu*): Set ld_target to i386-gnu.
7373 * config/i386-gnu.mt: New file. Include ELF support.
7374
7375 Thu Jan 19 16:22:11 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7376
7377 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): If
7378 there are any input sections named .gnu.warning, treat them as
7379 containing a warning message to be printed by the linker, and
7380 clobber the size so that the message is not copied into the output
7381 file.
7382 * scripttempl/elf.sc: Put .gnu.warning sections into the .text
7383 section.
7384
7385 Sun Jan 15 16:45:00 1995 Steve Chamberlain <sac@splat>
7386
7387 * configure.in (w65-*-*): New target.
7388 * Makefile.in: Update.
7389 * scripttempl/w65.sc: New.
7390 * config/coff-w65.mt: New.
7391
7392 Thu Jan 12 01:32:25 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
7393
7394 * ldlang.c (lang_place_orphans): Don't ignore files with
7395 just_syms_flag set. Instead, put all their sections in
7396 bfd_abs_section_ptr, using the section VMA as the output_offset.
7397
7398 Wed Jan 11 22:59:09 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7399
7400 * ldctor.c (ldctor_build_sets): Don't use `const' with typedef
7401 name `reloc_howto_type', since it's now defined to be const.
7402 * ldlang.c (lang_add_reloc): Ditto.
7403 * ldlang.h (lang_reloc_statement_type, lang_add_reloc): Ditto.
7404
7405 Wed Jan 11 11:24:45 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7406
7407 * ldexp.c (fold_binary): Adding or subtracting an absolute value
7408 to a relative value does not require forcing the relative value to
7409 be absolute. Also, reindent function.
7410
7411 Wed Dec 28 22:05:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7412
7413 * ldwrite.c (clone_section): Create a symbol with the
7414 same name as the section.
7415
7416 Mon Dec 19 14:02:13 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7417
7418 * ld.h (split_by_reloc, split_by_file): New flags.
7419 * ldwrite.c (clone_section, split_sections): New functions.
7420 * lexsup.c (parse_args): Understand new split options.
7421
7422 Fri Dec 9 17:22:55 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7423
7424 * scripttempl/elf.sc: Move .ctors and .dtors from .text segment to
7425 .data segment. They must be writable when creating a shared
7426 library. From H.J. Lu <hjl@nynexst.com>.
7427
7428 Fri Dec 2 14:09:00 1994 Ian Lance Taylor <ian@rtl.cygnus.com>
7429
7430 * emultempl/miposecoff.em: New file.
7431 * emulparams/mipsidt.sh (TEMPLATE_NAME): Set to mipsecoff.
7432 * emulparams/mipsidtl.sh (TEMPLATE_NAME): Likewise.
7433 * scripttempl/mips.sc: Put .rel.sdata sections in .text, and
7434 provide __runtime_reloc_start and __runtime_reloc_stop if they are
7435 used. Align _fdata to a 16 byte boundary.
7436 * Makefile.in (emipsidt.c): Depend upon mipsecoff.em rather than
7437 generic.em.
7438 (emipsidtl.c): Likewise.
7439 (check): Pass CC_FOR_HOST and CFLAGS_FOR_HOST to runtest.
7440
7441 * ld.h (args_type): Add new field embedded_relocs.
7442 * ldemul.h (ldemul_after_open, after_open_default): Declare.
7443 (ld_emulation_xfer_struct): Add new field after_open.
7444 * ldemul.c (ldemul_after_open): New function.
7445 (after_open_default): New function.
7446 * ldlang.c (lang_process): Call ldemul_after_open.
7447 * lexsup.c (parse_args): Handle --embedded-relocs.
7448 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Initialize
7449 new after_open field to after_open_default.
7450 * emultempl/generic.em, emultempl/gld960.em: Likewise.
7451 * emultempl/gld960c.em, emultempl/hppaelf.em: Likewise.
7452 * emultempl/linux.em, emultempl/m88kbcs.em: Likewise.
7453 * emultempl/sunos.em, emultempl/vanilla.em: Likewise.
7454 * ld.texinfo, ld.1: Mention -embedded-relocs.
7455
7456 Wed Nov 23 22:04:47 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7457
7458 * Makefile.in: Add eshl.o.
7459 * config/coff-sh.mt: Add shl emulation.
7460
7461 Tue Nov 22 11:55:37 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7462
7463 * scripttempl/elf.sc: Fill .text section with NOPS. From Eric
7464 Youngdale <eric@aib.com>.
7465
7466 Thu Nov 17 14:39:48 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7467
7468 Patches from pirker@eiunix.tuwien.ac.at (Martin Pirker).
7469 * config/i386linux.mh: New file; set HOSTING_CRT0.
7470 * genscripts.sh: Don't put ${libdir} in LIB_PATH if it is
7471 /usr/lib, since that is already in LIB_PATH.
7472
7473 Wed Nov 16 10:03:03 1994 Jeff Law (law@snake.cs.utah.edu)
7474
7475 * scripttempl/hppaelf.sc (.text): Handle a use rdefined text start
7476 address.
7477 (.data, .bss): If "-N", then place the data/bss just after the end
7478 of the .text section rather than at the default 0x40000000.
7479
7480 * scripttempl/hppaelf.sc (.text): Place unwind descriptors in the
7481 text segment.
7482
7483 Sat Nov 12 15:55:56 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7484
7485 Patches from Eric Youngdale <eric@aib.com>:
7486 * ldlang.c (lang_finish): Don't warn if entry symbol not found
7487 when generating a shared library.
7488 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Warn if
7489 attempting to place an orphaned relocation section when generating
7490 a dynamically linked object.
7491
7492 * scripttempl/elf.sc: Add ENTRY(${ENTRY}), and default ${ENTRY} to
7493 _start.
7494
7495 Fri Nov 11 14:27:23 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7496
7497 * ld.h (args_type): Add field export_dynamic.
7498 * lexsup.c (parse_args): Recognize --export-dynamic.
7499 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
7500 Pass export_dynamic argument to bfd_elf32_size_dynamic_sections.
7501
7502 Wed Nov 9 12:47:11 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7503
7504 * ldlang.c (lang_one_common): Set SEC_ALLOC in any section where
7505 we allocate common symbols.
7506
7507 Tue Nov 8 17:50:43 1994 Eric Youngdale (eric@aib.com)
7508
7509 * scripttempl/elf.sc: Add .rel.init, .rela.init, .rel.fini, and
7510 .rela.fini to the list of .rel* sections.
7511
7512 Tue Nov 8 17:47:45 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7513
7514 * ldlang.c (load_symbols): Add new argument place. Only accept
7515 linker scripts if place is not NULL. Put commands found in an
7516 assumed linker script into place.
7517 (lookup_name): Pass NULL as place argument to load_symbols.
7518 (open_input_bfds): In lang_input_statement_enum case, pass a place
7519 argument to load_symbols, and store any new statements after the
7520 current one.
7521
7522 Mon Nov 7 15:53:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7523
7524 * ldver.c (ldversion): Bump to 2.5.3.
7525
7526 Fri Nov 4 15:11:26 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7527
7528 * Makefile.in (e*nbsd.c): Fix typo in dependencies.
7529
7530 Thu Nov 3 19:35:44 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7531
7532 * Makefile.in (check): Add missing "else true" clause.
7533
7534 * emulparams/vax.sh (OUTPUT_FORMAT): Use "a.out".
7535
7536 * scripttempl/go32coff.sc: Changes from DJ Delorie: Change default
7537 entry point to "start". Align at end of each section to 0x200.
7538 Start .text section 0x1000 later. Add _etext, _edata, _end
7539 symbols.
7540
7541 Wed Nov 2 12:17:49 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7542
7543 * ldctor.c (ldctor_add_set_entry): Don't permit a set to be
7544 composed of different object file formats.
7545 (ldctor_build_sets): If the output format does not support the
7546 reloc, and we are not generating a relocateable link, try getting
7547 the reloc from the input format.
7548
7549 Tue Nov 1 10:30:19 1994 J.T. Conklin (jtc@rtl.cygnus.com)
7550
7551 * Makefile.in (ALL_EMULATIONS): Added em68knbsd.o.
7552 (em68knbsd.c): New target.
7553
7554 * config/m68k-nbsd.mt: New file.
7555 * emulparams/m68knbsd.sh: New file.
7556 * configure.in (m68*-*-netbsd*): Use above configs.
7557
7558 Mon Oct 31 19:35:17 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7559
7560 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): If we find an
7561 appropriately named static library, stop the search at that
7562 directory.
7563
7564 Wed Oct 26 13:59:12 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
7565
7566 * Makefile.in (ALL_EMULATIONS): Added ei386nbsd.o, ens32knbsd.o
7567 and esparcnbsd.o; sorted entries.
7568 (ei386nbsd.c,ens32knbsd.c,esparcnbsd.c): New targets.
7569
7570 * config/netbsd532.mt: Removed.
7571 * emulparams/netbsd532.sh: Removed.
7572
7573 * config/{i386-nbsd.mt,ns32k-nbsd.mt,sparc-nbsd.mt}: New files.
7574 * emulparams/{i386nbsd.sh,ns32knbsd.sh,sparcnbsd.sh}: New files.
7575 * configure.in (i[345]86-*-netbsd*, ns32k-pc532-netbsd*,
7576 sparc*-*-netbsd*): Use above configs.
7577
7578 Tue Oct 25 11:47:10 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7579
7580 * ldmain.c (multiple_common): One of the types may now be
7581 bfd_link_hash_indirect. The old BFD argument may be NULL.
7582
7583 Thu Oct 20 22:01:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7584
7585 * configure.in: Add * at the end of m68k-hp-hpux.
7586
7587 Tue Oct 18 15:58:39 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7588
7589 * ldlex.l: Cast assignment to yy_ch_buf field to char *, not to
7590 YY_CHAR *.
7591
7592 Mon Oct 17 14:53:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
7593
7594 * scripttempl/nw.sc: Gather constructors and destructors and
7595 define __CTOR__LIST__ and __DTOR_LIST__ appropriately.
7596
7597 Fri Oct 14 14:35:38 1994 J.T. Conklin (jtc@rtl.cygnus.com)
7598
7599 * Makefile.in (ALL_EMULATIONS): Add ei386nw.o and eppcnw.o.
7600 (ei386nw.c, eppcnw.c): New targets.
7601
7602 * config/{i386,ppc}-nw.mt, emulparams/{i386,ppc}nw.sh,
7603 scripttempl/nw.sc: New files, for i386 and powerpc netware.
7604
7605 * configure.in: Changed netware ld_target name to be {i386,ppc}-nw
7606 instead of {i386,ppc}-elf.
7607
7608 * configure.in (sparc*-*-netware): Removed. There is no such
7609 thing anymore.
7610
7611 * ldint.texinfo: Move misplaced `@end iftex'.
7612
7613 Fri Oct 14 12:02:18 1994 Eric Youngdale (eric@aib.com)
7614
7615 * scripttempl/elf.sc: Add .rel.ctors, .rela.ctors, .rel.dtors, and
7616 .rela.dtors to the list of .rel* sections.
7617
7618 Thu Oct 13 14:16:27 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7619
7620 * ldver.c (ldversion): Update to version 2.5.
7621 * Version 2.5 released.
7622
7623 * configure.in (all_targets): Handle i386-linux*.
7624
7625 Thu Oct 13 11:24:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7626
7627 * scripttempl/aout.sc: Set _etext and __etext to ., not
7628 ${DATA_ALIGNMENT}. This is compatible with SunOS, and, with luck,
7629 will not break any other system. From Eric Valette
7630 <ev@chorus.fr>.
7631
7632 Wed Oct 12 16:22:58 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7633
7634 * lexsup.c (parse_args): Change -V to be a synonym for -v. Add
7635 --verbose to get the old -V behaviour.
7636 * ld.1, ld.texinfo: Document this change.
7637
7638 Tue Sep 27 14:56:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7639
7640 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Remove
7641 assertion, since it could fail with a user defined linker script.
7642
7643 * ldexp.c (fold_name): For DEFINED case, don't try to look up the
7644 name in the hash table during the first phase--the hash table does
7645 not even exist at that point, much less have the right value.
7646
7647 * Makefile.in (CC): Define.
7648 (CXX): Move definition, change from g++ to gcc.
7649 (EXPECT, RUNTEST): Copy definitions from top level Makefile.in.
7650 (RUNTEST_CC, RUNTEST_CFLAGS): Remove.
7651 (RUNTEST_CXX, RUNTEST_CXXFLAGS): Remove.
7652 (CC_FOR_TARGET, CXX_FOR_TARGET): Copy from top level Makefile.in.
7653 (.cc.o): Comment out.
7654 (testdir): Remove.
7655 (site.exp): Don't create testdir or set tmpdir.
7656 (check): Run checks even if not running native. Use CC_FOR_TARGET
7657 instead of RUNTEST_CC, and likewise for CXX.
7658 (cdtest targets): Comment out.
7659 * config/solaris2.mh (HOSTING_LIBS): Only mention crtend.o once.
7660 * cdtest-bar.cc, cdtest-foo.cc, cdtest-foo.h: Remove.
7661 * cdtest-main.cc, cdtest.exp: Remove.
7662
7663 Mon Sep 26 11:40:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7664
7665 * emulparams/elf32bmip.sh: Rename from elf32mipb.sh to avoid DOS
7666 file naming problems.
7667 * emulparams/elf32lmip.sh: Rename from elf32mipl.sh.
7668 * Makefile.in (ALL_EMULATIONS): Rename eelf32mipb.o to
7669 eelf32bmip.o and eelf32mipl.o to eelf32lmip.o.
7670 (eelf32bmip.c): Rename from eelf32mipb.c. Use elf32bmip.sh.
7671 (eelf32lmip.c): Rename from eelf32mipl.c. Use elf32lmip.sh.
7672 * config/mipsb-elf32.mt (EMUL): Use elf32bmip, not elf32mipb.
7673 * config/mipsl-elf32.mt (EMUL): Use elf32lmip, not elf32mipl.
7674
7675 * genscripts.sh: Always search /usr/local/TARGET/lib.
7676
7677 * scripttempl/elf.sc: If -N is set, force DATA_ADDR to be ".".
7678
7679 Fri Sep 23 15:05:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7680
7681 * configure.in: Handle i386-bsdi* targets like i386-bsd.
7682
7683 Fri Sep 23 00:06:59 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7684
7685 * lexsup.c (parse_args): Add support for -a for HP/UX
7686 compatibility.
7687
7688 * lexsup.c (parse_args): -c takes an argument.
7689
7690 Tue Sep 20 14:35:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7691
7692 * ld.h (args_type): Add new field endian.
7693 * lexsup.c (parse_args): Handle -EB and -EL by setting
7694 command_line.endian.
7695 * ldgram.y (ifile_p1): Accept OUTPUT_FORMAT with three arguments.
7696 * ldlang.c (lang_add_output_format): Add arguments big and little.
7697 If command_line.endian is set, use it to select big or little
7698 rather than the default. Changed all callers.
7699 * ldlang.h (lang_add_output_format): Update declaration.
7700 * emulparams/elf32mipb.sh: Define BIG_OUTPUT_FORMAT and
7701 LITTLE_OUTPUT_FORMAT.
7702 * emulparams/elf32mipl.sh: Likewise.
7703 * emulparams/mipsbig.sh: Likewise.
7704 * emulparams/mipsbsd.sh: Likewise.
7705 * emulparams/mipsidt.sh: Likewise.
7706 * emulparams/mipsidtl.sh: Likewise.
7707 * emulparams/mipslit.sh: Likewise.
7708 * scripttempl/elf.sc: Define BIG_OUTPUT_FORMAT and
7709 LITTLE_OUTPUT_FORMAT if not already defined. Pass them to
7710 OUTPUT_FORMAT.
7711 * scripttempl/mips.sc: Pass BIG_OUTPUT_FORMAT and
7712 LITTLE_OUTPUT_FORMAT to OUTPUT_FORMAT.
7713 * scripttempl/mipsbsd.sc: Likewise.
7714
7715 * Makefile.in (ldgram.h): Make separate target from ldgram.c,
7716 depending upon ldgram.c, so that a parallel make does not try to
7717 build both at once.
7718
7719 * configure.in (mips*el-elf*): New target.
7720 * Makefile.in (ALL_EMULATIONS): Add eelf32mipb.o and eelf32mipl.o.
7721 (eelf32mipl.c): New target.
7722
7723 * config/mipsl-elf32.mt: New file.
7724 * emulparams/elf32mipl.sh: New file.
7725
7726 Fri Sep 16 12:16:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7727
7728 * ldmain.c (main): Rather than prohibiting ld -r -s, treat it as
7729 ld -r -S -x.
7730
7731 Thu Sep 15 13:05:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7732
7733 * ldmisc.c (vfinfo): Print BFD file name as well as file name
7734 returned by find_nearest_line, in case the file name is something
7735 unhelpful such as a .h file. Handle %u.
7736
7737 Wed Sep 14 12:49:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7738
7739 * ldlang.c (lang_do_assignments): Make sure output statement
7740 has an attached bfd_section before trying to dereference it.
7741
7742 Wed Sep 14 12:48:09 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7743
7744 * ld.h (ld_config_type): Add new field warn_once.
7745 * ldmain.c (undefined_symbol): Handle -warn-once.
7746 * lexsup.c (parse_args): Recognize -warn-once.
7747 * ld.texinfo (Options): Document -warn-once.
7748 * ld.1: Likewise.
7749
7750 * ldmisc.c (vfinfo): Handle %D as %C, but never print the function
7751 name. For %C, print the function name on a separate line, to keep
7752 the length of error messages under control.
7753 * ldmain.c (multiple_definition): Use %D for ``first defined
7754 here.''
7755 (undefined_symbol): Use %D for ``more undefined references
7756 follow''.
7757
7758 * ldmisc.c (multiple_warn): Remove; no longer used.
7759 * ldmisc.h (multiple_warn): Don't declare.
7760
7761 Tue Sep 13 20:47:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7762
7763 * ldlang.c (print_output_section_statement): Print all lines
7764 to the map file.
7765
7766 Tue Sep 13 16:30:11 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7767
7768 * ldlang.c (load_symbols): Check for archive before object. Use
7769 bfd_check_format_matches, and, if ambiguous, print a list of
7770 matching formats. If file format is not recognized, treat file as
7771 a linker script.
7772 * ldgram.y (yyerror): If assuming an object file is a script,
7773 mention that. Tweak the format of the error messages.
7774 * ldlex.l (lex_warn_invalid): If assuming an object is a script,
7775 guess that this is not actually a script, and just report that the
7776 file format was not recognized.
7777 * ld.texinfo (Options): Admit that -( may be used more than once.
7778 Add note that unrecognized object files are now treated as linker
7779 scripts.
7780
7781 * ldfile.c (ldfile_input_filename): Make const.
7782 (ldfile_assumed_script): New variable.
7783 (try_open): Change arguments types to const.
7784 (ldfile_find_command_file): Likewise.
7785 (ldfile_open_command_file): Likewise. Also, set lineno to 1.
7786 * ldfile.h: Update declarations for ldfile.c changes.
7787 * ldlex.l: Include <ctype.h>.
7788 (file_name_stack): Change to be const char *.
7789 (lineno_stack): New static variable.
7790 (<<EOF>>): Set lineno as well as ldfile_input_filename.
7791 (lex_push_file): Make name argument const. Initialize
7792 lineno_stack entry.
7793 (lex_redirect): Initialize lineno_stack entry.
7794 (lex_warn_invalid): Handle non printable characters nicely.
7795 * ldlex.h (lex_push_file): Declare second argument as const.
7796
7797 * ldgram.y (ifile_p1): Recognize GROUP.
7798 * ldlex.l: Recognize GROUP.
7799 * ld.texinfo (Option Commands): Document GROUP.
7800
7801 Mon Sep 12 17:04:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7802
7803 * config/m68klynx.mh: New file.
7804
7805 Mon Sep 12 01:50:03 1994 Jeff Law (law@snake.cs.utah.edu)
7806
7807 * emultempl/hppaelf.em: Add newlines to the error messages.
7808
7809 Sat Sep 10 16:05:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7810
7811 * config/i386lynx.mh: New file.
7812 * scripttempl/i386lynx.sc: Don't put .ctors and .dtors in .text
7813 unless CONSTRUCTING.
7814
7815 Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7816
7817 * emulparams/elf32mipb.sh (TEMPLATE_NAME): Define as elf32.
7818 (GENERATE_SHLIB_SCRIPT): Define as yes.
7819 (DYNAMIC_LINK): Define as false.
7820 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse):
7821 Initialize config.dynamic_link to DYNAMIC_LINK if it is defined.
7822 (gld${EMULATION_NAME}_place_orphan): Reset stat_ptr at end.
7823 * Makefile.in (eelf32mipb.c): Depend upon elf32.em rather than
7824 generic.em.
7825
7826 Thu Sep 8 16:30:37 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7827
7828 * scripttempl/h8500b.sc: Put rdata stuff into own segment.
7829
7830 Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7831
7832 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Don't define;
7833 .got section is now explicitly handled in elf.sc.
7834
7835 Wed Sep 7 13:08:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7836
7837 * scripttempl/alpha.sc: Redo script to set . outside of sections
7838 and not bother to explicitly specify section addresses.
7839 Explicitly place .sdata section.
7840
7841 Tue Sep 6 23:51:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7842
7843 * scripttempl/m68kcoff.sc: Put .bss in data segment.
7844
7845 * scripttempl/h8300.sc: Change .stab and .stabstr to use a VMA of
7846 0, and to only be marked as NOLOAD if relocating.
7847 * scripttempl/h8500.sc, scripttempl/h8500b.sc: Likewise.
7848 * scripttempl/h8500c.sc, scripttempl/h8500m.sc: Likewise.
7849 * scripttempl/h8500s.sc, scripttempl/i386coff.sc: Likewise.
7850 * scripttempl/i386go32.sc, scripttempl/i386lynx.sc: Likewise.
7851 * scripttempl/m68kcoff.sc, scripttempl/m68klynx.sc: Likewise.
7852 * scripttempl/sh.sc, scripttempl/sparccoff.sc: Likewise.
7853 * scripttempl/sparclynx.sc: Likewise.
7854
7855 Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
7856
7857 * Makefile.in, configure.in: Add support (disabled) the ARM/RISCiX.
7858 * config/riscix.mt, emulparams/riscix.sh, scripttempl/riscix.sc:
7859 New files.
7860
7861 Tue Aug 30 11:48:08 1994 Eric Youngdale (ericy@cais.cais.com)
7862
7863 * ld.h (args_type): Add field soname.
7864 * lexsup.c (parse_args): Handle -soname argument.
7865 * emultempl/elf32.em: In call to bfd_elf32_size_dynamic_sections,
7866 pass soname.
7867 * ld.texinfo: Document -soname.
7868
7869 Mon Aug 29 15:21:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7870
7871 * ldlang.c (lang_check): Don't try to set the architecture if the
7872 input and output files are incompatible. Just warn.
7873
7874 Wed Aug 24 12:52:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7875
7876 * configure.in: Change i[34]86 to i[345]86.
7877
7878 Sun Aug 21 16:17:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7879
7880 * emulparams/hp3hpux.sh: Define __DYNAMIC to be 0.
7881
7882 Thu Aug 18 15:37:45 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7883
7884 Make the ELF linker handle orphaned sections reasonably. Also,
7885 define __start_SECNAME and __stop_SECNAME around sections whose
7886 names can be represented in C, for the benefit of symbol sets in
7887 glibc.
7888 * ldemul.h (ldemul_place_orphan): Declare.
7889 (ld_emulation_xfer_type): Add place_orphan field.
7890 * ldemul.c (ldemul_place_orphan): New function.
7891 * ldlang.h (wild_doit): Declare.
7892 * ldlang.c (wild_doit): Make nonstatic.
7893 (lang_place_orphans): Call ldemul_place_orphan.
7894 * emultempl/elf32.em: Include <ctype.h> and "ldgram.h".
7895 (hold_section, hold_use, hold_text, hold_data, hold_bss): New
7896 static variables.
7897 (gld${EMULATION_NAME}_place_orphan): New static function.
7898 (gld${EMULATION_NAME}_place_section): New static function.
7899 (ld_${EMULATION_NAME}_emulation): Initialize place_orphan field.
7900
7901 Tue Aug 16 00:17:20 1994 Eric Youngdale (ericy@cais.cais.com)
7902
7903 * scripttempl/aout.sc: Add .linux-dynamic after .data.
7904
7905 Tue Aug 16 00:08:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7906
7907 * lexsup.c (parse_args) Treat --dll-verbose as --version, for
7908 Linux compatibility. From hjl@nynexst.com (H.J. Lu).
7909
7910 Mon Aug 15 17:17:33 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7911
7912 * ldexp.h (exp_get_abs_int): Declare.
7913
7914 Sat Aug 6 01:45:39 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7915
7916 * ldlang.c (lang_do_assignments): Handle complex AT's better.
7917 * ldexp.c (exp_get_abs_int): New function.
7918
7919 Fri Aug 5 20:55:55 1994 Jason Molenda (crash@phydeaux.cygnus.com)
7920
7921 * configure.in: add i960-nindy-coff support.
7922
7923 Thu Aug 4 14:45:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7924
7925 * ldlex.l (yy_create_string_buffer): Handle change to internal
7926 interface in flex 2.4.7.
7927
7928 Tue Aug 2 11:52:06 1994 Eric Youngdale (ericy@cais.cais.com)
7929
7930 * emultempl/linux.em (gld${EMULATION_NAME}_find_address_statement):
7931 New function; add 0x20 to any use of -Ttext.
7932 (gld${EMULATION_NAME}_create_output_section_statements): New
7933 function.
7934 (ld_${EMULATION_NAME}_emulation): Use the new function
7935 gld${EMULATION_NAME}_create_output_section_statements.
7936
7937 Mon Aug 1 15:50:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7938
7939 * scripttempl/mips.sc: Redo script to set . outside of sections
7940 and not bother to explicitly specify section addresses.
7941
7942 Tue Jul 26 11:02:35 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7943
7944 * scripttempl/elf.sc: Copy several more relocation sections into
7945 the output. Put .got.plt sections into .got.
7946
7947 Fri Jul 22 12:15:36 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7948
7949 * scripttempl/elf.sc: Use PROVIDE to define etext, edata, and end.
7950
7951 Add a new script operator, PROVIDE, to define a symbol only if it
7952 is needed.
7953 * ldgram.y (PROVIDE): New token.
7954 (assignment): Accept PROVIDE.
7955 * ldlex.l (PROVIDE): New token.
7956 * ldexp.h (node_type): Add etree_provide to node_class enum.
7957 (exp_provide): Declare.
7958 * ldexp.c (exp_fold_tree): Handle etree_provide.
7959 (exp_provide): New function.
7960 (exp_print_tree): Handle etree_provide.
7961 * ld.texinfo: Document PROVIDE.
7962
7963 * ldlang.c (lang_common): Pass desired alignment to
7964 lang_one_common as power of two.
7965 (lang_one_common): Get common symbol alignment from linker hash
7966 table entry. Treat desired alignment as a power of two.
7967
7968 * ldlang.c (wild_section): Attach all section with the given name,
7969 not just the first one. If there is no name, attach all sections
7970 even if the SEC_IS_COMMON flag is set.
7971
7972 Wed Jul 20 15:49:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7973
7974 * ld.h (args_type): Add field rpath.
7975 * lexsup.c (S_ISDIR): Define if not already defined.
7976 (parse_args): Add support for -rpath. If -R is used to name a
7977 directory, treat it as -rpath for Solaris compatibility.
7978 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
7979 Pass command_line.rpath to bfd_elf32_size_dynamic_sections.
7980 * ldmain.c (main): Initialize command_line.rpath to NULL.
7981 * ld.texinfo: Document -rpath option.
7982
7983 Sun Jul 10 00:33:24 1994 Ian Dall (dall@hfrd.dsto.gov.au)
7984
7985 * emulparams/pc532machaout.sh: New file. Pc532 mach script
7986 parameters.
7987
7988 * emulparams/netbsd532.sh: New file. Netbsd 532 script parameters.
7989
7990 * config/pc532mach.mt: New file. Pc532 mach target support.
7991
7992 * config/pc532mach.mh: New file. Pc532 mach host support.
7993
7994 * config/netbsd532.mt: New file. Netbsd 532 target support.
7995
7996 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd support.
7997
7998 * Makefile.in: Add epcmachaout.c dependency and enetbsd532.c
7999 dependency.
8000
8001 Fri Jul 8 10:57:02 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
8002
8003 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Use
8004 bfd_abs_section_ptr, not &bfd_abs_section.
8005
8006 * lexsup.c (parse_args): Changed "retain-symbols-file" from
8007 no_argument to required_argument. From djm.
8008
8009 Thu Jul 7 12:29:53 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
8010
8011 * scripttempl/elf.sc: Explicitly mention .stab and .stabstr
8012 sections to force a VMA of 0; needed for ELF backends which have
8013 not been converted to the new linker style.
8014
8015 Mon Jul 4 19:35:45 1994 Jeff Law (law@snake.cs.utah.edu)
8016
8017 * scripttempl/hppaelf.sc (__stack_zero): Don't define this name,
8018 it was for the HPUX dynamic loader's use and it creates problems
8019 with ELF GDB.
8020
8021 Fri Jul 1 12:53:47 1994 Jeff Law (law@snake.cs.utah.edu)
8022
8023 * ldlang.c (lang_do_assignments): No longer static. Delete decl.
8024 * ldlang.h (lang_do_assignments): Put external decl here.
8025 * emultempl/hppaelf.em: Minor cleanups throughout file.
8026 (hppa_elf_create_output_section_statements): Rewrite.
8027 (hppaelf_finish): Rewrite.
8028
8029 Wed Jun 29 16:50:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
8030
8031 * config/solaris2.mh (NATIVE_LIB_DIRS): Define as /usr/ccs/lib.
8032
8033 * lexsup.c (parse_args): Accept -Bstatic and -Bdynamic. Do not
8034 accept plain -B.
8035 * ld.texinfo: -Bstatic is not ignored.
8036
8037 Tue Jun 28 12:13:34 1994 Stan Shebs (shebs@andros.cygnus.com)
8038
8039 * ldlex.l: Recognize \r the same as \n.
8040
8041 Thu Jun 23 17:53:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
8042
8043 Preliminary support for generating shared libraries, from Eric
8044 Youngdale <ericy@cais.cais.com>.
8045 * genscripts.sh: If the emulation parameter file sets
8046 GENERATE_SHLIB_SCRIPT, generate a .xs script file with
8047 CREATE_SHLIB defined.
8048 * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): If
8049 link_info.shared is set, use the .xs script file.
8050 * scripttempl/elf.sc: If CREATE_SHLIB is set, don't create a
8051 .interp section, and don't include TEXT_START_ADDR in the starting
8052 address of the first section.
8053 * emulparams/elf_i386.sh (GENERATE_SHLIB_SCRIPT): Likewise.
8054 * emulparams/elf32_sparc.sh (GENERATE_SHLIB_SCRIPT): Define.
8055
8056 Thu Jun 23 12:52:22 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8057
8058 * configure.in: Change --with-targets to --enable-targets.
8059
8060 Wed Jun 22 13:42:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
8061
8062 * lexsup.c (parse_args): Add support for new options -( -) with
8063 synonyms --start-group --end-group.
8064 * ldlang.h (enum statement_enum): Add lang_group_statement_enum.
8065 (lang_group_statement_type): Define new struct.
8066 (lang_statement_union_type): Add group_statement field.
8067 (lang_enter_group, lang_leave_group): Declare.
8068 * ldlang.c (lang_for_each_statement_worker): Handle
8069 lang_group_statement_enum.
8070 (map_input_to_output_sections, print_statement): Likewise.
8071 (lang_size_sections, lang_do_assignments): Likewise.
8072 (open_input_bfds): Completely rewrite. Now does its own looping,
8073 rather than using lang_for_each_statement. Handle groups.
8074 (lang_process): Update call to open_input_bfds.
8075 (print_group): New static function.
8076 (lang_enter_group, lang_leave_group): New static functions.
8077 * ldfile.c (ldfile_open_file): If the file has already been
8078 opened, just return rather than taking an assertion failure.
8079 * ldver.c (help): Mention new options.
8080 * ld.texinfo: Document new options.
8081
8082 * ldlang.c (end_of_data_section_statement_list): Don't define.
8083 (lang_leave_output_section_statement): Don't set obsolete variable
8084 end_of_data_section_statement_list.
8085
8086 * scripttempl/go32coff.sc: Don't put ${DATA_ALIGNMENT} inside an
8087 ALIGN.
8088
8089 * ldlang.c (lang_size_sections): Adjust current region address
8090 even for sections with an explicit address. From
8091 ralphc@pyramid.com (Ralph Campbell).
8092
8093 * emulparams/i386linux.sh (NONPAGED_TEXT_START_ADDR): Set to 0.
8094 From jrs@world.std.com (Rick Sladkey).
8095
8096 * scripttempl/mipsbsd.sc: Let sections align to their natural
8097 boundaries.
8098
8099 Tue Jun 21 11:27:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
8100
8101 * ldlang.c (lang_init): Use new bfd_abs_section_ptr, not
8102 &bfd_abs_section.
8103 (lang_abs_symbol_at_beginning_of): Likewise.
8104 (lang_abs_symbol_at_end_of): Likewise.
8105 (lang_size_sections): Use bfd_is_abs_section to check for the
8106 absolute section. Don't try to set the VMA or output_offset or
8107 size of the absolute section.
8108 * ldmain.c (notice_ysym): Use bfd_is_und_section to check for the
8109 undefined section.
8110
8111 Thu Jun 16 22:48:41 1994 Jeff Law (law@snake.cs.utah.edu)
8112
8113 * scripttempl/hppaelf.sc: Place .data and .bss at 0x40000000
8114 when generating relocatable objects.
8115
8116 Thu Jun 16 14:25:22 1994 Eric Youngdale (ericy@cais.cais.com)
8117
8118 * emultempl/linux.em: New file providing support for linking
8119 against Linux shared libraries.
8120 * config/i386-linux.mt (ei386linux.c): Depend upon linux.em.
8121 * emulparams/i386linux.sh (TEMPLATE_NAME): Define as linux.
8122
8123 Thu Jun 16 12:22:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8124
8125 * lexsup.c (parse_args): Add -shared to longopts, and handle it.
8126 * ldmain.c (main): Initialize link_info.shared to false. Give
8127 error if link_info.relocateable and link_info.shared are both set.
8128
8129 * configure.in: If EMUL_EXTRA* is defined in a config file, treat
8130 it as naming an emulation to be added to EMULATION_OFILES.
8131 * config/i386-linux.mt (EMUL_EXTRA1): Define as elf_i386.
8132
8133 * Makefile.in: Rebuilt dependencies.
8134 (ALL_EMULATIONS): Add ei386linux.o, eelf32_sparc.o,
8135 eelf64_sparc.o. Remove $(OTHER_EMULATIONS).
8136 (ei386linux.c, eelf32_sparc.c, eelf64_sparc.c): New targets.
8137 * config/i386-linux.mt (OTHER_EMULATIONS): Don't define.
8138 (ei386linux.c): Remove; now in Makefile.in.
8139 * config/i386-lynx.mt (OTHER_EMULATIONS): Don't define.
8140 * config/m68k-lynx.mt (OTHER_EMULATIONS): Don't define.
8141 * config/sparc-lynx.mt (OTHER_EMULATIONS): Don't define.
8142 * config/sparc64-elf.mt (OTHER_EMULATIONS): Don't define.
8143 (eelf64_sparc.c): Remove; now in Makefile.in.
8144 * config/sun4sol2.mt (OTHER_EMULATIONS): Don't define.
8145 (eelf32_sparc.c): Remove; now in Makefile.in.
8146
8147 * ldexp.c (exp_print_tree): Don't crash if etree_rel section has
8148 no owner--it might be bfd_abs_section. From Eric Youngdale
8149 <ericy@cais.cais.com>.
8150
8151 * scripttempl/aout.sc: Let sections align to their natural
8152 boundaries.
8153
8154 Wed Jun 15 01:54:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8155
8156 * ldemul.h (ldemul_open_dynamic_archive): Declare.
8157 (ld_emulation_xfer_type): Add new field open_dynamic_archive.
8158 * ldemul.c: Include ldexp.h and ldlang.h.
8159 (ldemul_open_dynamic_archive): New function.
8160 * ldfile.h (ldfile_open_file_search): Declare.
8161 * ldfile.c: Include ldemul.h.
8162 (try_open_bfd): Rename from cache_bfd_openr. Return boolean
8163 argument, not bfd *. Change all callers.
8164 (ldfile_open_file_search): Rename from open_a. Return boolean
8165 argument, not bfd *. Clean up. Change all callers.
8166 (ldfile_open_file): If doing a dynamic link, call
8167 ldemul_open_dynamic_archive rather than assuming the extension of
8168 a dynamic object is ".so".
8169 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
8170 New function.
8171 (ld_${EMULATION_NAME}_emulation): Initialize open_dynamic_archive
8172 field.
8173 * emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise.
8174
8175 * ldmain.c (get_emulation): Ignore -m486 for Linux compatibility.
8176 * lexsup.c (parse_args): Ignore -qmagic for Linux compatibility.
8177 Accept -static as a synonym for -non_shared.
8178
8179 Let the user change the dynamic linker used by ELF code.
8180 * ld.h (args_type): Add new field interpreter.
8181 * lexsup.c (parse_args): Add dynamic-linker to longopts, and
8182 handle it.
8183 * ldmain.c (main): Initialize command_line.interpreter to NULL.
8184 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Get
8185 the ELF backend to return the .interp section. If
8186 command_line.interpreter is not NULL, set the contents of .interp
8187 to it.
8188 * ld.texinfo: Mention -dynamic-linker.
8189
8190 * config/sun4sol2.mt (eelf32_sparc.c): Depend upon elf32.em, not
8191 generic.em.
8192
8193 * lexsup.c (parse_args): Sort out the option macros and change the
8194 definitions to make it easier to add a new option.
8195
8196 * scripttempl/aout.sc: Define __etext and __edata to go along with
8197 _etext and _edata.
8198
8199 * ld.h (ld_config_type): Add new field traditional_format.
8200 * lexsup.c (parse_args): Add traditional-format to longopts, and
8201 handle it.
8202 * ldmain.c (main): Initialize config.traditional_format to false.
8203 * ldlang.c (ldlang_open_output): Set BFD_TRADITIONAL_FORMAT in BFD
8204 flags of output_bfd according to config.traditional_format.
8205 * ldver.c (help): Mention -traditional-format.
8206 * ld.texinfo: Document -traditional-format.
8207
8208 Tue Jun 14 23:10:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8209
8210 * ldctor.c (ldctor_add_entry): Add entries to a set in the order
8211 they are encountered.
8212
8213 Tue Jun 14 18:05:09 1994 Eric Youngdale (ericy@cais.cais.com)
8214
8215 * emulparams/i386linux.sh (TEXT_START_ADDR): Define as 0x1000.
8216 (NONPAGED_TEXT_START_ADDR): Define as 0x20.
8217
8218 Mon Jun 13 15:46:09 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8219
8220 * scripttempl/alpha.sc: Define _ftext, _etext and _fdata insted of
8221 _FTEXT, _ETEXT and _FDATA. Dont define _END.
8222
8223 * ldfile.c (open_a): If this is not an archive, try to open it in
8224 the current directory before searching for it.
8225
8226 * lexsup.c (parse_args): Treat -i as a synonym for -r.
8227
8228 * ldgram.y (exp): Treat BLOCK as a synonym for ALIGN, so that
8229 BLOCK works in a section address as documented.
8230
8231 * ldgram.y (YYDEBUG): Don't define.
8232
8233 Fri Jun 10 16:45:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8234
8235 * emultempl/gld960.em: Pass false for new argument to
8236 ldfile_add_library_path.
8237 * emultempl/gld960c.em, emultempl/lnk960.em: Likewise.
8238
8239 * emultempl/sunos.em: Only look for .so files if doing a dynamic
8240 link.
8241
8242 Thu Jun 9 08:35:17 1994 Ian Lance Taylor (ian@cygnus.com)
8243
8244 * scripttempl/i960.sc: Add CONSTRUCTORS to .data.
8245
8246 Thu Jun 9 06:52:29 1994 Bill Cox (bill@rtl.cygnus.com)
8247
8248 * Makefile.in (check): Delete ld.new dependency so that a regression
8249 test doesn't trigger a rebuild of the linker.
8250
8251 Thu Jun 9 00:17:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8252
8253 * ldlang.c (map_input_to_output_sections): For lang_address, call
8254 init_os if it hasn't already been called.
8255
8256 Thu Jun 2 17:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8257
8258 Add support for SunOS shared libraries.
8259 * aout.sc: Don't define __DYNAMIC here. Add new sections used by
8260 shared library support code.
8261 * emultempl/sunos.em: New file.
8262 * emulparams/sun4.sh (TEMPLATE_NAME): Define as sunos.
8263 * emulparams/sun3.sh (TEMPLATE_NAME): Likewise.
8264 * Makefile.in (esun4.c): Depend upon sunos.em, not generic.em.
8265 (esun3.c): Likewise.
8266
8267 * ldlang.c: Minor formatting cleanups.
8268 (lang_for_each_input_file): New function.
8269 * ldlang.h (lang_for_each_input_file): Declare.
8270
8271 * ldfile.h (search_dirs_type): Move from ldfile.c, and add cmdline
8272 field.
8273 (search_head): Declare.
8274 (ldfile_add_library_path): Add new cmdline argument in prototype.
8275 * ldfile.c (search_head): Make non-static.
8276 (search_dirs_type): Move to ldfile.h.
8277 (ldfile_add_library_path): Accept cmdline argument, and save it.
8278 * lexsup.c (parse_args): Pass true for new cmdline argument of
8279 ldfile_add_library_path.
8280 (set_default_dirlist): Likewise.
8281 * ldmain.c (check_for_scripts_dir): Pass false for new cmdline
8282 argument of ldfile_add_library_path.
8283 * ldgram.y (ifile_p1): Likewise.
8284
8285 Wed Jun 1 14:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8286
8287 * ldlang.h (lang_input_statement_type): Remove fields subfiles,
8288 total_size, superfile and chain.
8289 * ldfile.c (open_a): Don't clear search_dirs_flag.
8290 (ldfile_open_file): Don't try to open superfile. Assert that file
8291 has not already been opened.
8292 * ldlang.c (new_afile): Don't initialize superfile.
8293 * ldmain.c (add_archive_element): Don't initialize subfiles or
8294 chain or superfile. Initialize search_dirs_flag to false.
8295
8296 Fri May 27 12:25:33 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8297
8298 * ldver.c (ldversion): Changed version to "cygnus-2.4.1".
8299
8300 Changes from binutils-2.4 release:
8301
8302 * genscripts.sh (RELOCATING, CONSTRUCTING): When setting
8303 variables, use whitespace, so scripts don't break.
8304
8305 * config/alphaosf.mh (HDEFINES, CFLAGS): Deleted.
8306
8307 * emultempl/generic.em: Find emultempl/stringify.sed in ${srcdir}.
8308
8309 * cdtest-bar.cc: Renamed from cdtest-func.cc.
8310 * Makefile.in: Noted change.
8311
8312 * scripttempl/a29k.sc: Don't include /lab3/u3/..../segments.o; I
8313 don't know where that's supposed to come from, or why it's
8314 necessary.
8315
8316 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
8317
8318 * configure.bat: update to latest makefile.in
8319 * emulpara/go32.sh: set to coff-go32 not aout
8320 * emultemp/generic.em: strength-reduce the structure of
8321 this shell script, since the only available shell for
8322 DOS can't handle complex syntax.
8323 * emultemp/stringify.sed: for "sed -f" instead of inline.
8324 * makefile.in: depend on stringify.sed as well as genscripts.sh
8325 * scripttemp/go32coff.sc: correct for djgpp 1.11's COFF format
8326 * genscripts.sh: empty variables aren't always considered "set",
8327 so set them to "y" instead.
8328
8329 Fri May 27 01:08:14 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8330
8331 * ldlang.c (entry_symbol): Make static.
8332 (lang_add_entry): Add cmdline argument.
8333 * ldlang.h (lang_add_entry): Change prototype.
8334 * ldgram.y (statement_anywhere): Change lang_add_entry call.
8335 * lexsup.c (parse_args): Likewise.
8336
8337 Tue May 24 16:13:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8338
8339 * emulparams/elf32mipb.sh (OTHER_READONLY_SECTIONS): Don't give
8340 .reginfo an address.
8341 (OTHER_READWRITE_SECTIONS): Don't give .lit4 or .lit8 an address.
8342 (OTHER_SECTIONS): Define for .gptab.sdata and .gptab.sbss.
8343 * scripttempl/elf.sc: Use OTHER_SECTIONS at end of script.
8344
8345 Thu May 19 13:31:33 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8346
8347 Add support for ELF shared libraries.
8348 * ld.h (ld_config_type): Add field dynamic_link.
8349 * ldmain.c (main): Initialize config.dynamic_link to false. Warn
8350 on attempts to use -r with -relax, -call_shared or -s.
8351 * lexsup.c (longopts): Separate OPTION_CALL_SHARED from
8352 OPTION_NON_SHARED. Add OPTION_IGNORE. Adjust macro values
8353 accordingly. Add "dy" and "non_shared" options. Change "Qy" to
8354 OPTION_IGNORE for now. Handle OPTION_CALL_SHARED and
8355 OPTION_NON_SHARED by setting dynamic_link field accordingly.
8356 Handle OPTION_IGNORE by ignoring it. Clear dynamic_link field for
8357 -r and -Ur.
8358 * ldfile.c (ldfile_open_file): If config.dynamic_link is true, try
8359 opening a file with a .so extension first.
8360 * emultempl/elf32.em: New file.
8361 * emulparams/elf32_sparc.sh (TEXT_START_ADDR): Change to 0x10000.
8362 (NONPAGED_TEXT_START_ADDR): Likewise.
8363 (TEMPLATE_NAME): Define as elf32.
8364 (DATA_PLT): Define.
8365 * emulparams/elf_i386.sh (TEMPLATE_NAME): Define as elf32.
8366 * scripttempl/elf.sc: Add placement for new dynamic sections.
8367 Don't use CREATE_OBJECT_SYMBOLS. Define _etext, _edata and _end
8368 outside of any section. Don't use ALIGN(8); just let one section
8369 VMA follow another. Put .dynbss in .bss. Don't mention debugging
8370 sections; they'll be handled correctly anyhow.
8371 * Makefile.in (eelf_i386.c): Depend upon elf32.em, not generic.em.
8372
8373 Wed May 18 10:15:39 1994 Ian Lance Taylor (ian@cygnus.com)
8374
8375 * Makefile.in (install): Redirect output of ln to /dev/null.
8376
8377 Mon May 16 13:35:08 1994 Jeff Law (law@snake.cs.utah.edu)
8378
8379 * emultempl/hppaelf.em: Change all references of
8380 .hppa_linker_stubs to .PARISC.stubs.
8381 * scripttempl/hppaelf.sc: Likewise.
8382
8383 Fri May 13 13:00:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8384
8385 * ldlang.c (print_output_section_statement): Change ``no attached
8386 output section'' message slightly.
8387 (lang_do_assignments): Don't recurse down if there is no real
8388 section.
8389
8390 * config/i386-linux.mt (OTHER_EMULATIONS): Change em_ to e to
8391 match corresponding change in emulation templates.
8392 * config/i386-lynx.mt, config/m68k-lynx.mt: Likewise.
8393 * config/sparc-lynx.mt, config/sun4sol2.mt: Likewise.
8394
8395 Wed May 11 18:16:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8396
8397 * ldver.c (ldversion): Updated version number.
8398
8399 * cdtest-foo.cc: Use explicit "#pragma implementation".
8400 * cdtest-bar.cc: Renamed from cdtest-func.cc.
8401 * Makefile.in: References to cdtest-func.o changed to
8402 cdtest-bar.o.
8403
8404 Wed May 11 16:24:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8405
8406 Don't create unnecessary output sections.
8407 * ldlang.c (out_bfd_get_section_by_name): Remove.
8408 (wild_section): Call bfd_get_section_by_name rather than
8409 our_bfd_get_section_by_name. Don't call wild_doit if there is no
8410 section.
8411 (lang_create_output_section_statements): Remove.
8412 (map_input_to_output_sections): For several cases, call init_os if
8413 it has not already been called.
8414 (lang_size_sections): If output section was not created, skip it.
8415 (lang_process): Don't call lan_create_output_section_statements.
8416 (lang_place_orphans): Skip files with just_syms_flags set to true.
8417 * ld.texinfo: Document change.
8418
8419 Tue May 10 14:31:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8420
8421 * ldlang.c (wild_doit): Don't bother initializing the vma and
8422 section size. Don't special case SEC_SHARED_LIBRARY.
8423 (lang_size_sections): Handle SEC_COFF_SHARED_LIBRARY sections
8424 specially.
8425
8426 Fri May 6 12:24:27 1994 Steve Chamberlain (sac@cygnus.com)
8427
8428 * config/go32.mh : New file for Xgo32X.
8429
8430 Fri May 6 15:15:35 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8431
8432 * ldfile.c (ldfile_open_command_file): Set bfd_error_system_call
8433 before calling einfo, since we are reporting an fopen failure.
8434 From jrs@world.std.com (Rick Sladkey).
8435
8436 * configure.in: Use "e" rather than "em_" as prefix for
8437 emulations.
8438
8439 Fri May 6 01:08:14 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
8440
8441 * emultempl/generic.em: Use "e" rather than "em_" as prefix for
8442 filename.
8443 * emultempl/gld960.em, emultempl/gld960c.em, emultempl/lnk960.em,
8444 emultempl/hppaelf.em, emultempl/m88kbcs.em, emultempl/vanilla.em:
8445 Ditto.
8446 * Makefile.in: Changed all generated file names.
8447 (ldemul-list.h): Depend on Makefile, not config.status. Changed
8448 sed patterns to handle new filenames.
8449
8450 * config/mipsl-idt.mt: Renamed from mips-idtl.mt.
8451 * configure.in: Adjusted.
8452
8453 Thu May 5 15:07:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8454
8455 * Makefile.in (install-info): Don't use "$<*", it doesn't always
8456 work. Instead, check build dir and $srcdir explicitly, and use
8457 `echo' to get all the filenames.
8458
8459 * configure.in (h8300h-*-hms): Changed ld_target name to
8460 cf-h8300h.
8461 * config/cf-h8300h.mt: Renamed from coff-h8300h.mt, to make it
8462 unique in 8.3.
8463
8464 * config/i960coff.mt: New file.
8465 * emulparams/gld960coff.sh: New file.
8466 * emultempl/gld960c.em: New file.
8467 * configure.in (i960-*-vxworks5* except -vxworks5.0*): Use
8468 i960coff configuration.
8469 * Makefile.in (em_gld960coff.c): Added dependencies, build rule.
8470
8471 * Makefile.in (ALL_EMULATIONS): Remove em_delta68.o, since the
8472 code isn't included in FSF releases, and it can still be
8473 explicitly selected.
8474 (distclean): Remove site.bak and tmpdir.
8475 (STAGESTUFF): Removed $(GENERATED_CFILES) $(GENERATED_HFILES).
8476 (mostlyclean): Delete them explicitly here. Also remove tmpdir.
8477
8478 Patches from Ralph Campbell:
8479 * config/mipsbsd.mh: New file.
8480 * Makefile.in (em_mipsbsd.c): Use mipsbsd.sc, not aout.sc.
8481 * scripttempl/mipsbsd.sc: Don't define __DYNAMIC.
8482 * emulparams/mipsbsd.sh (OUTPUT_FORMAT): Fix name to have `a.out'
8483 instead of `aout'.
8484
8485 * configure.in (i386-*-gnu*): Treat like i386-*-mach*.
8486
8487 Wed May 4 11:59:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8488
8489 * config/m68k.mt (EMUL): Set to m68kaout.
8490 * emulparams/m68kaout.sh: New file.
8491 * Makefile.in (ALL_EMULATIONS): Add em_m68kaout.o.
8492 (em_m68kaout.c): New target.
8493
8494 * ldlang.c (lang_size_sections): If dot moves because of an
8495 assignment, don't try to insert a pad into the absolute output
8496 section, just change the address of the default memory region
8497 instead.
8498
8499 * Makefile.in (mostlyclean): Remove cdtest.tmp, cdtest-ur,
8500 cdtest-ur.out, and cdtest-ur.tmp.
8501
8502 Wed Apr 27 16:03:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8503
8504 * scripttempl/sa29200.sc: Align all sections to four byte
8505 boundaries.
8506
8507 Wed Apr 27 10:48:03 1994 Steve Chamberlain (sac@cygnus.com)
8508
8509 * Makefile.in, configure.in: Support for go32 coff.
8510 * config/i386-go32.mt: New file
8511 * emulparams/i386go32.sh: New file
8512 * scripttempl/i386go32.sc: New file
8513
8514 Tue Apr 26 17:20:03 1994 Stan Shebs (shebs@andros.cygnus.com)
8515
8516 * Makefile.in (em_m68klynx.c, em_i386lynx.c, em_sparclynx.c): Use
8517 Lynx-specific script templates.
8518 * configure.in (sparclite*-*-coff): Use coff-sparc.
8519 * emulparams/i386lynx.sh (SCRIPT_NAME): Set to i386lynx.
8520 * emulparams/sparclynx.sh (SCRIPT_NAME): Set to sparclynx.
8521 (ENTRY): Set to __main.
8522 * scripttempl/i386lynx.sc: New file, script for I386 Lynx.
8523 * scripttempl/m68klynx.sc: Add insertion of ctor/dtor sections.
8524 * scripttempl/sparclynx.sc: New file, script for uSparc Lynx.
8525
8526 Tue Apr 26 12:41:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8527
8528 * scripttempl/mips.sc: Force _gp and .lit8 to be aligned to a 16
8529 byte boundary, in case the global constructors do not take up an
8530 even 16 bytes.
8531
8532 * config/i386v4.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
8533 exist, get crtbegin based on gcc -print-libgcc-file-name.
8534 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
8535
8536 Mon Apr 25 15:27:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8537
8538 * ldlang.c (lang_size_sections): When no address is given for a
8539 section, align it according to its requirements.
8540
8541 Thu Apr 21 17:24:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8542
8543 * Makefile.in (clean, distclean): Remove configdoc.texi.
8544
8545 Tue Apr 19 12:12:15 1994 Bill Cox (bill@rtl.cygnus.com)
8546
8547 * configure.in: Add i[34]86-*-bsd386 to the patterns recognized.
8548
8549 Fri Apr 15 14:35:42 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8550
8551 * ldlang.c (lang_size_sections): When relaxing, adjust the
8552 position of a padding statement, and adjust dot accordingly.
8553
8554 Mon Apr 11 17:37:09 1994 Bill Cox (bill@rtl.cygnus.com)
8555
8556 * Makefile.in (EXPECT, RUNTEST): Set these for the check goal.
8557
8558 Mon Apr 11 12:32:57 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8559
8560 * scripttempl/i386coff.sc: If relocating, don't put .init and
8561 .fini sections into .text; keep them separate.
8562 * config/i386sco.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
8563 exist, get crtbegin based on gcc -print-libgcc-file-name.
8564 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
8565
8566 Mon Apr 11 10:31:00 1994 Bill Cox (bill@rtl.cygnus.com)
8567
8568 * Makefile.in (check): Set TCL_LIBRARY for runtest.
8569
8570 Wed Apr 6 00:09:37 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8571
8572 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
8573 manufacturer.
8574
8575 * emultempl/hppaelf.em (hppaelf_finish): Only resize sections
8576 if building a final executable.
8577
8578 Tue Apr 5 12:17:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8579
8580 * ldmain.c (main): Check the return value of bfd_close.
8581
8582 Thu Mar 31 18:07:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8583
8584 * scripttempl/alpha.sc: Clean up section alignment to ensure that
8585 sections never overlap when using -r.
8586
8587 Wed Mar 30 15:51:15 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8588
8589 * ldmisc.c (vfinfo): Change symbol reading slightly for recent BFD
8590 changes: get_symtab_upper_bound renamed and returns long,
8591 bfd_canonicalize_symtab returns long, check for error indications.
8592
8593 Fri Mar 25 17:20:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8594
8595 * ldlang.c (print_input_section): For section size, use
8596 _cooked_size if it is non-zero, size otherwise.
8597 (size_input_section): Likewise.
8598 (lang_do_assignments): Likewise (case lang_input_section_enum).
8599
8600 Thu Mar 24 15:20:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8601
8602 * ldlang.c (new_afile): Add new argument add_to_list. Don't set
8603 real to true for lang_input_file_is_marker_enum. Clear the_bfd.
8604 (lang_add_input_file): Pass true to new_afile for add_to_list.
8605 (lookup_name): Remove force_load argument. Changed all callers.
8606 Pass false to new_afile for add_to_list. Split loading of symbols
8607 out into separate function.
8608 (load_symbols): New function split out of lookup_name. Don't load
8609 the symbols if they are already loaded.
8610 (open_input_bfds): For lang_input_statement_enum call load_symbols
8611 rather than lookup_name.
8612 (lang_process): Pass abs_output_section rather than NULL to
8613 lang_size_sections.
8614 (lang_startup): Set real field of first_file to true.
8615
8616 Wed Mar 23 14:15:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8617
8618 * ldlang.c (had_relax): Removed.
8619 (relax_again): New static variable.
8620 (lang_size_sections): Change call to bfd_relax_section to
8621 correspond to BFD changes. Set relax_again appropriately.
8622 (lang_process): Remove #if 0 code. When relaxing, keep calling
8623 lang_do_assignments and lang_size_sections until relax_again
8624 becomes false.
8625
8626 * emultemp/gld960.em: Include libiberty.h
8627 (gld960_before_parse): Pass NULL as final argument to concat.
8628
8629 Tue Mar 22 13:08:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8630
8631 * scripttempl/aout.sc: Force _end and __end to be aligned to a
8632 four byte boundary.
8633
8634 * ldwrite.c (build_link_order): Handle lang_data_statement_enum by
8635 building a bfd_data_link_order, rather than by setting the section
8636 contents immediately.
8637
8638 Mon Mar 21 18:28:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8639
8640 Changes to make -Ur work again.
8641 * ldmain.c (add_to_set): Now takes reloc argument rather than
8642 bitsize. Check config.build_constructors here. If an new hash
8643 table entry is created, mark it as undefined.
8644 (constructor_callback): No longer takes bitsize argument. Pass
8645 BFD_RELOC_CTOR to ldctor_add_set_entry, but first make sure the
8646 BFD backend supports it.
8647 (reloc_overflow): Handle a NULL abfd argument.
8648 (reloc_dangerous, unattached_reloc): Likewise.
8649 * ldctor.c: Include ldmain.h.
8650 (struct set_info): Change bitsize field to reloc.
8651 (ldctor_add_set_entry): Now takes reloc argument rather than
8652 bitsize. Don't bother to check config.build_constructors here.
8653 (ldctor_build_sets): Get the size from the reloc howto. If
8654 generating relocateable output, call lang_add_reloc rather than
8655 lang_add_data.
8656 * ldctor.h (ldctor_add_set_entry): Change declaration to use reloc
8657 instead of bitsize.
8658 * ldlang.h (statement_enum): Add lang_reloc_statement_enum.
8659 (lang_reloc_statement_type): New structure.
8660 (lang_statement_union_type): Add reloc_statement field.
8661 (lang_add_reloc): Declare new function.
8662 * ldlang.c (lang_for_each_statement_worker): Handle
8663 lang_reloc_statement_enum.
8664 (map_input_to_output_sections, print_statement): Likewise.
8665 (lang_size_sections, lang_do_assignments): Likewise.
8666 (print_reloc_statement): New function.
8667 (lang_add_reloc): New function.
8668 * ldwrite.c (build_link_order): Handle lang_reloc_statement_enum.
8669
8670 * Makefile.in (cdtest.out, cdtest-ur.o): New targets.
8671 (cdtest-ur, cdtest-ur.out): New targets.
8672 (check-cdtest): Now also check that -Ur works correctly.
8673
8674 * scripttemp/alpha.sc: Align all sections to 16 byte boundaries.
8675
8676 Thu Mar 17 12:45:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8677
8678 * ldlang.c (lang_process): Move lang_common call before
8679 map_input_to_output_sections, to ensure that any alignment
8680 constraints set by common symbols are copied over to the output
8681 sections.
8682
8683 Fri Mar 11 22:17:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8684
8685 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Don't define.
8686 (OTHER_READWRITE_SECTIONS): Rename .toc to .got.
8687 * Makefile.in (em_elf32ppc.c): Depend upon generic.em, not ppc.em.
8688 * emultempl/ppc.em: Remove ugly stub code; turns out not to be
8689 needed for ELF.
8690
8691 Tue Mar 8 04:22:27 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8692
8693 * config/i386bsd.mh: New file.
8694
8695 Mon Mar 7 15:23:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8696
8697 * elf.sc: Permit TEXT_START_SYMBOLS and DATA_START_SYMBOLS to be
8698 defined.
8699 * emulparams/elf32mipb.s (TEXT_START_SYMBOLS): Define _ftext.
8700 (DATA_START_SYMBOLS): Define _fdata.
8701
8702 Mon Feb 28 10:59:14 1994 Stan Shebs (shebs@andros.cygnus.com)
8703
8704 * ldlang.c (cat): Define using ANSI style if ALMOST_STDC defined.
8705
8706 Sun Feb 27 16:29:38 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8707
8708 * emultempl/hppaelf.em (hppaelf_finish): Update comments. This
8709 works again. Attach some output symbols to the stub file bfd.
8710
8711 * emultempl/hppaelf.em: Include elf32-hppa.h.
8712 (file_chain): Add decl.
8713 (hppa_look_for_stubs_in_section): Delete decl.
8714 (hppaelf_finish): Reenable code. Do not pass symbols
8715 down to hppa_look_for_stubs_in_section.
8716
8717 Sat Feb 26 10:58:25 1994 Ian Lance Taylor (ian@cygnus.com)
8718
8719 * ldmain.c (write_map): Don't define. Removed all references.
8720 Just use map_file or map_filename instead.
8721 (add_archive_element): Use minfo to write map information, not
8722 info_msg.
8723 (constructor_callback): Use fprintf to write map information, not
8724 info_msg.
8725 * ldmain.h (write_map): Don't declare.
8726 * ldgram.y (mri_script_command): Removed reference to write_map.
8727 * ldlang.c (lang_one_common): Likewise.
8728 * lexsup.c (parse_args): Likewise.
8729
8730 Fri Feb 25 19:12:03 1994 Ian Lance Taylor (ian@cygnus.com)
8731
8732 * scripttempl/elf.sc: Force all sections to be aligned.
8733
8734 * ldgram.y (section): Reverse the order of memspec_opt and
8735 fill_opt to avoid an ambiguity when both are used.
8736 * ld.texinfo: Changed accordingly.
8737
8738 * ldgram.y: Move include of ldlex.h back with other includes.
8739 * ldlex.h (input_type): Don't initialize enum constants to
8740 particular values.
8741 * ldlex.l: Use a switch to return the right token based on
8742 input_type, rather than knowing that input_type has a value based
8743 on a token type.
8744
8745 * ldgram.y (dirlist_ptr): Removed; not used.
8746 * lexsup.c: Include ldver.h.
8747 * Makefile.in: Rebuilt dependencies.
8748
8749 Fri Feb 25 18:55:54 1994 Ted Lemon (mellon@pepper.ncd.com)
8750
8751 * ldlang.c (lookup_name): don't call bfd_set_gp_size.
8752 (ldlang_add_file): call it here instead.
8753
8754 Fri Feb 25 18:13:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8755
8756 * ldgram.y: Include ldlex.h after %token decls, for byacc.
8757
8758 Fri Feb 25 10:47:25 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8759
8760 * emultempl/hppaelf.em: First attempt to clean this file up.
8761 Add comments in several functions as to their purpose and
8762 how they function (or my current best guess). Clean up horrible
8763 spacing and indention that never should have been accepted in the
8764 first place. Add FIXMEs for issues which need to be resolved.
8765 Disable linker-stub generation until it gets fixed. This allows
8766 the linker to at least work on simple code for testing purposes.
8767
8768 * ldlang.c (lang_size_sections): No longer static (PA ELF calls
8769 it via hppaelf_finish). Prototype moved into ldlang.h.
8770 (lang_process): Move problematic extra call to lang_size_sections
8771 into the PA ELF specific code.
8772 * emultempl/hppaelf.em (hppaelf_finish): Extra call to
8773 lang_size_sections moved here.
8774
8775 Thu Feb 24 16:47:33 1994 Ian Lance Taylor (ian@cygnus.com)
8776
8777 * configure.in (powerpc-*-elf*): New target; use ppc-elf32.
8778 * config/ppc-elf32.mt: New file.
8779 * emulparams/elf32ppc.sh: New file.
8780 * emultempl/ppc.em: New file.
8781 * Makefile.in (ALL_EMULATIONS): Added em_elf32ppc.o.
8782 (em_elf32ppc.c): New target; uses elf32ppc.sh, ppc.em and elf.sc.
8783 (EMULATION_OFILES): Added dependencies on ldexp.h and ldlang.h.
8784
8785 Thu Feb 24 12:27:07 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8786
8787 * lexsup.c (parse_args): Use symbolic numbers for long options.
8788 Fix misunderstanding in -Y and -call_shared et al.
8789
8790 Use getopt instead of lex and yacc to parse the command line.
8791
8792 * ld.texinfo (Options): Document changes to option syntax.
8793 * Makefile.in: Update dependencies.
8794 * ldver.c (help): Tweak dashes in usage message.
8795 * ldgram.y (%union): Remove unused members.
8796 Remove %tokens for command line options; add ones for input types.
8797 (command_line): Rules removed.
8798 (file): Instead of command line, recognize an
8799 input type indicator, then use the nonterminal for that type.
8800 (defsym_expr): New nonterminal from code formerly in command_line.
8801 * ldlex.h: Declare parser input type enum and variable.
8802 Don't declare parse_line.
8803 * ldlex.l: Remove unused variables. Make some used ones static
8804 and comment them.
8805 (COMMAND): Start state and its rules removed.
8806 At start of yylex, return input state token if at start of input.
8807 (lex_redirect): Don't need to set yyout.
8808 (ldlex_command): Function removed.
8809 * ldmain.c (main): Instead of calling parse_line, set up the
8810 redirections and call yyparse directly.
8811 * ldmisc.c (vfinfo): If there's no input filename, print nothing, not
8812 "command line".
8813 * lexsup.c: Remove #if 0'd code.
8814 (parse_line): Function removed.
8815 (parse_args): Rewrite to use getopt_long_only.
8816 (set_default_dirlist): New function from code formerly in
8817 ldgram.y:command_line.
8818 (set_section_start): New function.
8819 * emultempl/generic.em, emultempl/gld960.em, emultempl/hppaelf.em,
8820 emultempl/lnk960.em, emultempl/m88kbcs.em: Don't enclose
8821 compiled-in link scripts in "{" and "}", as the grammar no longer
8822 wants them to be.
8823
8824 Thu Feb 24 08:43:26 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
8825
8826 * Makefile.in (ld.dvi): Depend on configdoc.texi, but don't
8827 require that it be in $(srcdir).
8828
8829 Tue Feb 22 09:21:18 1994 Ian Lance Taylor (ian@cygnus.com)
8830
8831 * ldlang.c (lang_size_sections): Only align section to alignment
8832 required by linker script, not to maximum alignment of input
8833 sections.
8834
8835 * ldlang.h (largest_section): Don't declare.
8836 * ldlang.c (largest_section): Don't define.
8837 (size_input_section): Don't set largest_section; not used.
8838
8839 Mon Feb 21 15:15:29 1994 Ian Lance Taylor (ian@cygnus.com)
8840
8841 * ldlang.c (new_afile): Pass NULL as last argument to concat.
8842
8843 Thu Feb 17 15:51:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8844
8845 * ldlang.c, ldmain.c: Include libiberty.h.
8846
8847 * ldmisc.h (concat): Don't declare.
8848 * ldmisc.c (concat): Don't define; just use the one in libiberty.
8849
8850 * ld.h (as_output_section_statement): Removed; not used.
8851
8852 Thu Feb 17 09:32:14 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8853
8854 * ldlang.c, ldmain.c, ldmisc.c: Use bfd_get_error and
8855 bfd_set_error and new error names.
8856
8857 Tue Feb 15 20:14:53 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8858
8859 * ldwrite.c (build_link_order): If the cooked size of the section
8860 has been set, use it, for determining link_order size.
8861 (ldwrite): In the error message displayed if bfd_final_link fails,
8862 indicate that it was in fact the final link step that failed.
8863
8864 * ldlang.c (lang_size_sections): Clear bfd_error before calling
8865 bfd_relax_section, in case it returns false but doesn't flag an
8866 error. If an error is returned, indicate which one it is in the
8867 error message.
8868
8869 * Makefile.in (install-info): Depend on ld.info, and use "$<*" so
8870 it'll get picked up from $(srcdir) if appropriate.
8871
8872 Tue Feb 15 16:32:04 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8873
8874 * scripttempl/aout.sc: Only pad .text if PAD_TEXT is set.
8875 * emulparams/i386mach.sh (PAD_TEXT): Set PAD_TEXT.
8876
8877 Fri Feb 11 17:02:49 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8878
8879 * ldlex.l (comment): Increment line number when newline is read.
8880
8881 Fri Feb 11 17:36:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8882
8883 * ldlang.c (lookup_name): Take new argument, force_load. If true,
8884 reload the file even if it is already loaded.
8885 (wild): Call lookup_name with force_load argument of 0.
8886 (open_input_bfds): Call lookup_name with force_load argument of 1.
8887 (print_symbol): Remove declaration of non-existent function.
8888 (print_one_symbol): Return true rather than falling off end.
8889
8890 Thu Feb 10 11:52:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8891
8892 * ldmain.c (main): Use %ld when printing long values.
8893
8894 * scripttempl/elf.sc: Move _edata after the .sdata section.
8895 Permit OTHER_BSS_SYMBOLS to be defined.
8896 * emulparams/elf32mipb.s (OTHER_BSS_SYMBOLS): Define _fbss.
8897
8898 Mon Feb 7 16:31:15 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8899
8900 * Rename all "hppaosf" files to "hppaelf".
8901 * Change all "osf" references to "elf" in hppaelf files.
8902 * Makefile.in: Likewise.
8903 * configure.in: Likewise.
8904
8905 Sun Feb 6 20:31:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8906
8907 * ldmain.c (main): Call xatexit, not atexit.
8908 Call xmalloc_set_program_name.
8909
8910 * ldlang.c (lang_size_sections): Check if bfd_relax_section set
8911 bfd_errno.
8912
8913 Sat Feb 5 03:54:34 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8914
8915 * emultempl/lnk960.em (append), emultempl/hppaosf.em
8916 (hppaosf_finish): Call xmalloc, not ldmalloc.
8917 * ldmain.c (preserve_output): Function removed.
8918 (main): Do it here instead.
8919
8920 Fri Feb 4 23:02:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8921
8922 * ldlang.h (LANG_FOR_EACH_{INPUT,OUTPUT}_SECTION): Delete (unused)
8923 GNU C specific macros.
8924
8925 * emultempl/hppaosf.em (hppaosf_finish): Expand the only remaining
8926 call to LANG_FOR_EACH_INPUT_SECTION.
8927
8928 Fri Feb 4 16:26:08 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8929
8930 * ldmisc.c (ldmalloc, xmalloc, ldrealloc, xrealloc): Functions
8931 deleted; will use libiberty versions instead.
8932 * ldctor.c ldfile.c ldlang.c ldmain.c ldmisc.c ldmisc.h lexsup.c
8933 mri.c Makefile.in: Change callers.
8934
8935 * ldmisc.c (vfinfo): Remove cleanup code.
8936 * ldmain.c (remove_output): Put it here (new function).
8937 (preserve_output): New function.
8938 (main): Register remove_output and preserve_output with atexit.
8939 * ldmain.c ldgram.y: Call xexit instead of exit.
8940 * ldmisc.h: Declare xexit.
8941
8942 Fri Feb 4 15:19:01 1994 Steve Chamberlain (sac@cygnus.com)
8943
8944 * Makefile.in: Lots of new H8/500 memory models.
8945
8946 Sun Jan 30 14:33:40 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8947
8948 * ldlex.l: Removed duplicate rules.
8949 (yywrap): Provide default definition, needed with some versions of
8950 flex.
8951
8952 Fri Jan 28 09:12:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8953
8954 * ldmisc.c (vfinfo): For `%I', if the file is in an archive, print
8955 the archive filename too.
8956
8957 * ldlex.l: Add rule to catch invalid input characters instead of
8958 printing them. Include "ldmain.h" for program_name decl.
8959 (lex_warn_invalid): New function.
8960 * Makefile.in: Add dependency.
8961
8962 Fri Jan 28 12:58:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8963
8964 * Makefile.in (check): Don't bother running any tests of
8965 cross-linker until the test suite no longer assumes native mode.
8966
8967 Thu Jan 27 17:19:54 1994 Steve Chamberlain (sac@jonny.cygnus.com)
8968
8969 * ldlang.c (print_one_symbol, print_input_section): Print
8970 global symbols in symbol table again.
8971
8972 Thu Jan 27 12:35:01 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8973
8974 * ldmain.c ldmain.h ldgram.y: If -v -V or --version was given,
8975 exit successfully instead of complaining if no input files are
8976 given.
8977
8978 Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)
8979
8980 * Makefile.in: Format variable definitions consistently.
8981 (LD_PROG): Remove unnecessary variables from link command,
8982 change variable LOADLIBES to EXTRALIBS.
8983
8984 * ldmain.c (main): Compute and display total execution time.
8985 * ld.texinfo (-stats): Document the option.
8986
8987 Mon Jan 24 12:56:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8988
8989 * ldmain.c (reloc_overflow): Added name, reloc_name and addend
8990 arguments.
8991
8992 * ldlang.c (lookup_name): Set BFD GP size to -G argument value
8993 after opening BFD.
8994
8995 * ldlang.c (relaxing): Removed global variable.
8996 (lang_size_sections): If the canonical symbols have not already
8997 been read in, read them in before relaxing.
8998 * ldlang.h (relaxing): Removed declaration.
8999
9000 Fri Jan 21 00:44:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9001
9002 * ldlang.c (new_afile): Initialize loaded field to false.
9003 (lookup_name): If file was already loaded, don't call the
9004 add_symbols entry point again.
9005
9006 Wed Jan 19 13:57:00 1994 David J. Mackenzie (djm@thepub.cygnus.com)
9007
9008 * ld.texinfo: Clarify what -T option does.
9009
9010 Tue Jan 18 16:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
9011
9012 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that's
9013 for a.out.
9014
9015 Tue Jan 11 13:22:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9016
9017 * ldmain.c (add_archive_element): If trace_files or
9018 trace_file_tries, print file name.
9019 * ldlang.c (lookup_name): Likewise.
9020 (ldlang_add_file): Don't put files on input_bfds list in reverse
9021 order.
9022
9023 * scripttempl/elf.sc: Correct typo.
9024
9025 Mon Jan 10 19:49:05 1994 David J. Mackenzie (djm@thepub.cygnus.com)
9026
9027 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y and
9028 their arguments optional, for compatibility with the old GNU ld.
9029
9030 Fri Jan 7 20:00:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9031
9032 * scripttempl/elf.c: Define __bss_start before the .sbss section.
9033
9034 Thu Jan 6 00:13:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9035
9036 * ldmain.c (add_to_set): Add bitsize argument.
9037 (constructor_callback): New function.
9038 (link_callbacks): Add constructor_callback.
9039 * ldctor.c (struct set_info): Add bitsize field.
9040 (ldctor_add_set_entry): Add bitsize argument.
9041 (ldctor_build_sets): Base the size of the elements of the set on
9042 the bitsize, rather than always using LONG.
9043 * ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
9044
9045 * ld.h (QUAD_SIZE): Define.
9046 * ldgram.y (QUAD): New token.
9047 (length): Handle it.
9048 * ldlex.l: Return QUAD.
9049 * lexsup.c (keywords): Add QUAD.
9050 * ldwrite.c (build_link_order): Handle QUAD.
9051 * ldlang.c (print_data_statement): Handle QUAD.
9052 (lang_size_sections): Likewise.
9053 (lang_do_assignments): Likewise.
9054 * ldexp.c (exp_print_token): Add QUAD to table.
9055 * ld.texinfo: Describe QUAD.
9056
9057 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
9058 since the Alpha doesn't use them.
9059
9060 Wed Jan 5 17:42:16 1994 David J. Mackenzie (djm@thepub.cygnus.com)
9061
9062 * ldemul.h (ld_emulation_xfer_struct): Comment the members.
9063
9064 Sat Jan 1 13:39:31 1994 Rob Savoye (rob@darkstar.cygnus.com)
9065
9066 * Makefile.in, configure.in: Add support for VSTa micro-kernel.
9067 * config/vsta.mt, emulparams/vsta.sh: New files for VSTa.
9068
9069 Sat Jan 1 10:53:35 1994 David J. Mackenzie (djm@thepub.cygnus.com)
9070
9071 * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
9072 needed for i386mach. (Should be a no-op on other systems.)
9073
9074 * emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
9075 (PAGE_SIZE): Don't define; not used.
9076
9077 Fri Dec 31 16:12:06 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9078
9079 * ldgram.y (yyerror): Make argument const char *, and actually
9080 print it out rather than assuming it is a syntax error.
9081 * ldmisc.h: Change declaration of yyerror.
9082 * ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
9083
9084 Fri Dec 31 11:37:28 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9085
9086 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
9087 exec header offset, since the exec header isn't loaded.
9088 (PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
9089
9090 Thu Dec 30 13:01:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9091
9092 A major rewrite to move the bulk of the linker into BFD so that
9093 more efficient backend code can be written for specific object
9094 files.
9095 * lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
9096 ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
9097 * ldctor.c, ldctor.h: Complete rewrite.
9098 * ldwrite.c, ldwrite.h: Complete rewrite.
9099 * ld.h (strip_symbols_type, strip_symbols): Removed. Use
9100 link_info.strip instead. Changed all uses.
9101 (discard_locals_type, discard_locals): Removed. Use
9102 link_info.discard instead. Changed all uses.
9103 (ld_config_type): Removed relocateable_output field; use
9104 link_info.relocateable instead; changed all uses. Added stats
9105 field.
9106 (set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
9107 set_loader_symbol): Removed.
9108 * ldexp.h (node_class): Added etree_rel.
9109 (etree_type): Added rel field.
9110 * ldexp.c (exp_print_token): Bracketed table initialization.
9111 (exp_relop): New function.
9112 (fold_name): Use linker hash table rather than ldsym functions.
9113 (exp_fold_tree): Likewise. Also, handle etree_rel case.
9114 (exp_print_tree): Handle etree_rel.
9115 * ldgram.y (strip_symbols, discard_locals): Removed.
9116 (OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them.
9117 (REL): New token. Does not appear in grammar, but needed for
9118 expression code.
9119 (file): Don't call lang_final; it's called by main anyhow.
9120 * ldlex.l: Accept -stats and -no-keep-memory options.
9121 * ldlang.h (fill_type): Make unsigned int, not unsigned short.
9122 * ldlang.c: Consistently use fill_type for fill argument.
9123 (lang_init_script_file, script_file): Removed.
9124 (create_object_symbols): Removed. Use
9125 link_info.create_object_symbols_section instead. Changed all
9126 uses.
9127 (lang_add_keepsyms_file): Removed.
9128 (lookup_name): Call bfd_link_add_symbols instead of
9129 ldmain_open_file_read_symbol.
9130 (wild): Don't iterate over script_file.
9131 (open_output): Create link hash table.
9132 (lang_place_undefineds): Rewrote.
9133 (lang_size_sections): Handle relaxing (doesn't work yet).
9134 (lang_relocate_globals): Removed.
9135 (lang_finish): Use link hash table rather than ldsym functions.
9136 (lang_common): Rewrote.
9137 (lang_one_common): New function.
9138 (ldlang_add_file): Add file to link_info.input_bfds list. Set
9139 usrdata.
9140 (create_symbol): Removed.
9141 (lang_process): Don't call lang_init_script_file. Call
9142 ldctor_build_sets rather than find_constructors. Don't call
9143 lang_relocate_globals.
9144 (lang_abs_symbol_at_beginning_of): Rewrote.
9145 (lang_abs_symbol_at_end_of): Rewrote.
9146 * ldmain.c (had_y): Removed.
9147 (lprefix, lprefix_len): Removed; use link_info fields instead.
9148 Changed all uses.
9149 (multiple_def_count, commons_pending, undefined_global_sym_count,
9150 total_symbols_seen, total_files_seen): Removed.
9151 (link_callbacks, link_info): New variables.
9152 (main): Initialize link_info. Don't call init_bfd_error_vector or
9153 ldsym_init. Don't set now unused variables. Handle -stats.
9154 (get_emulation): Removed obsolete and nonfunctional GNU960 code.
9155 (add_ysym): Rewrote.
9156 (read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
9157 search_library, gnu960_check_format, decode_library_subfile,
9158 linear_library, symdef_library, clear_syms, subfile_wanted_p):
9159 Removed.
9160 (add_keepsyms_file, add_archive_element, multiple_definition,
9161 multiple_common, add_to_set, warning_callback, undefined_symbol,
9162 reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
9163 New functions.
9164 * ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't
9165 require symbols for %C; look them up instead.
9166 * emultempl/hppaosf.em: Pass link_info to
9167 hppa_look_for_stubs_in_section.
9168 * Makefile.in: Rebuilt dependencies.
9169 (CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
9170 relax.c.
9171 (HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
9172 relax.h.
9173 (EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
9174 ldlang.h and ldctor.h.
9175
9176 * Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove
9177 declarations of free and malloc from flex output. Change malloc
9178 to ldmalloc in flex output.
9179
9180 Thu Dec 16 21:19:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
9181
9182 * ldmain.c (lprefix): Change default from a char to a string
9183 with only one character.
9184 (lprefix_len): Set default to one.
9185
9186 * ldmain.h (lprefix_len): Declare.
9187
9188 * ldsym.c (write_file_locals): Use strncmp rather than a character
9189 comparison for lprefix.
9190
9191 * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len
9192 correctly.
9193
9194 * emultmpl/hppaosf.em: Include ldexp.h.
9195 (before_parse): Set lprefix and lprefix_len correctly.
9196
9197 Tue Dec 14 17:19:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9198
9199 * ldlex.h: Don't declare yywrap if it is a macro.
9200 * ldlex.l: Include sysdep.h.
9201 * ldlang.c (lang_for_each_statement_worker,
9202 lang_for_each_statement): Forgot to use PARAMS.
9203
9204 Mon Dec 13 14:30:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9205
9206 * Makefile.in: Added .PHONY targets where appropriate. Added some
9207 comments. Also:
9208 (gcclibdir, version): Removed unused variables.
9209 (DEP): New variable, set to mkdep.
9210 (ALL_CFLAGS): New variable. Used in .c.o target.
9211 (CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New
9212 variables.
9213 (HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES,
9214 GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed
9215 mostly obsolete variables. Adjusted remaining uses.
9216 (DEF_EMUL): Removed variable.
9217 (ldmain.o): Handle undefined EMUL error correctly.
9218 (ldemul-list.h): Depend on config.status rather than Makefile.
9219 Create via temporary file.
9220 (ver960.c, roll, make): Removed obsolete targets.
9221 (.dep, .dep1, dep.sed, dep, dep-in): New targets. Used to rebuild
9222 dependencies.
9223 * dep-in.sed: New file, used when rebuilding dependencies.
9224
9225 Sat Dec 11 14:43:44 1993 Ian Lance Taylor (ian@deneb.cygnus.com)
9226
9227 Made many changes to eliminate gcc warnings. Made various
9228 cosmetic changes, declared various things in header files, removed
9229 various extern declarations from .c files. No substantive
9230 changes.
9231
9232 * ldlang.c (lang_process): Ifdef out final call to
9233 lang_size_sections again (reverting change of Nove 2), since it
9234 breaks the Sun4 linker.
9235
9236 Thu Dec 2 16:31:47 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9237
9238 * configure.in (alpha-*-netware*): New target; use alpha.
9239
9240 Wed Dec 1 14:04:20 1993 Ken Raeburn (raeburn@cygnus.com)
9241
9242 * configure.in: Group targets by CPU. Merge some m68k target
9243 entries with different CPU specs that use the same ld_target
9244 values.
9245
9246 * configure.in: Add sparc*-*-coff.
9247 * config/coff-sparc.mt, emulparams/coff_sparc.sh: New files.
9248 * Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o.
9249 (em_coff_sparc.c): Add dependencies and build rules.
9250
9251 * ldmisc.c (errno, sys_nerr, sys_errlist): Don't declare.
9252
9253 Wed Dec 1 12:19:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9254
9255 * ldgram.y (OPTION_call_shared, OPTION_non_shared, OPTION_Oval):
9256 New tokens.
9257 (command_line_option): Accept and ignore them (for now).
9258 * ldlex.l (<COMMAND>): Handle -non_shared, -call_shared, and -On
9259 where n is a number.
9260
9261 Mon Nov 22 14:14:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9262
9263 * ldmain.c (subfile_wanted_p): If merging a common symbol which is
9264 not in bfd_com_section, create the section in the BFD so that it
9265 can be placed in the right output section.
9266
9267 Fri Nov 19 14:12:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9268
9269 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.
9270 * emulparams/elf32mipsb.sh (DATA_ADDR): Define.
9271 (OTHER_READONLY_SECTIONS): Define for .reginfo.
9272 (EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK.
9273 * scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating.
9274 Move OTHER_READONLY_SECTIONS after all the other readonly
9275 sections. Don't use DATA_ADDR twice.
9276
9277 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. If
9278 p is in a common section, make sure the BFD has a section of that
9279 name.
9280
9281 * ldlang.c (lang_common): Add newline to error message.
9282
9283 Thu Nov 11 15:54:41 1993 Stan Shebs (shebs@rtl.cygnus.com)
9284
9285 * emulparams/m68klynx.sh (SCRIPT_NAME): Define to use a
9286 Lynx-specific script instead of m68kcoff.
9287 (OUTPUT_FORMAT): Define as "coff-m68k-lynx".
9288 (ENTRY): Define as __main.
9289 (TEXT_START_ADDR): Define as 0.
9290 (PAGE_SIZE): Define as 0x1000.
9291 * emulparams/i386lynx.sh, emulparams/sparclynx.sh: Fix comment.
9292 * scripttempl/m68klynx.sc: New file.
9293
9294 Mon Nov 8 12:00:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9295
9296 * ldmain.c (get_emulation): Ignore -mips1, -mips2 and -mips3
9297 arguments rather than treating them as emulation names.
9298
9299 Fri Nov 5 09:02:52 1993 D. V. Henkel-Wallace (gumby@blues.cygnus.com)
9300
9301 * configure.in: Support x86 unixware and netware plus generic netware.
9302
9303 Fri Nov 5 21:47:55 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9304
9305 * emulparams/i386mach.sh (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR):
9306 Correct values (?).
9307
9308 Wed Nov 3 15:10:15 1993 Ken Raeburn (raeburn@rover.cygnus.com)
9309
9310 * Makefile.in (distclean): Don't delete dvi or info files.
9311 (ld.info): Update dependency list.
9312 (ld.dvi): Ditto. Extend TEXINPUTS to get bfdsumm.texi.
9313
9314 Wed Nov 3 12:07:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9315
9316 * ldlang.c (lang_add_output): Take new arg, FROM_SCRIPT.
9317 Set output_filename instead of creating a new node.
9318 (open_output): Don't set output_filename.
9319 (lang_final): Create the new node here.
9320 * ldlang.c, ldlang.h, ldgram.y, mri.c: pass FROM_SCRIPT.
9321
9322 Tue Nov 2 15:45:51 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
9323
9324 From Pete Hoogenboom (hoogen@cs.utah.edu):
9325
9326 * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,
9327 edata, _edata, end): Add definitions of these symbols.
9328 (__end): Remove definition of this symbol.
9329 (__data_start): Move definition of this symbol.
9330
9331 * emultempl/hppaosf.em: Various fixes and support for linker stub
9332 generation.
9333 (hppaosf_finish, hppaosf_search_for_padding_statements,
9334 hppaosf_create_output_section_statements): New functions in
9335 support of linker stub generation.
9336 (ld_hppaosf_emulation): Redefine to include new
9337 emulation-specific routines.
9338
9339 * ldlang.c (lang_process): Re-enable last call lang_size_sections.
9340 Pass abs_output_section rather than NULL to avoid invalidating
9341 absolute symbols.
9342
9343 Thu Oct 28 21:16:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9344
9345 * Makefile.in (ALL_EMULATIONS): Add em_i386mach.o.
9346 (em_i386mach.c): New rule.
9347 * configure.in (i[34]86-*-mach*): New case.
9348 * config/i386-mach.mt: New file.
9349 * emulparams/i386mach.sh: New file.
9350
9351 Fri Oct 29 14:55:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9352
9353 * ld.h (flag_is_*): Removed macros.
9354 * ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
9355 Consistently check the BFD symbol flags directly, rather than
9356 using file_is_* macros.
9357
9358 Thu Oct 28 19:08:42 1993 Stan Shebs (shebs@rtl.cygnus.com)
9359
9360 * configure.in (sparc*-*-lynxos*): New target.
9361 * Makefile.in: Add rule for em_sparclynx.c.
9362 (ALL_EMULATIONS): Add Lynx emulations.
9363 * config/sparc-lynx.mt: New file.
9364 * emulparams/sparclynx.sh: New file.
9365 * scripttempl/sparccoff.sc: New file.
9366
9367 Thu Oct 28 13:50:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9368
9369 * Makefile.in: Add dependency for $(EMULATION_OFILES).
9370
9371 Mon Oct 25 16:09:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9372
9373 * relax.c (write_relax): Check return value of bfd_seclet_link.
9374
9375 Mon Oct 25 09:31:21 1993 Ken Raeburn (raeburn@cygnus.com)
9376
9377 * ldlang.c (delete_output_file_on_failure): New variable.
9378 (open_output): Set it after bfd open succeeds.
9379 * ldmisc.c (vfinfo): Test it.
9380
9381 Changes from Peter Hoogenboom, hoogen@cs.utah.edu:
9382
9383 * ldsym.c (write_file_locals): Set the BSF_FILE flag for object
9384 symbols.
9385
9386 * ldemul.c: Support was added to allow emulation-specific
9387 processing to occur. This support was added primarily for linker
9388 stub generation in the elf32-hppa gld.
9389 (ldemul_finish, ldemul_create_output_section_statements): New
9390 functions.
9391 * ldemul.h: Support was added to allow emulation-specific
9392 processing to occur. (As described above.) Added finish and
9393 create_output_section_statements fields to
9394 ld_emulation_xfer_struct structure.
9395 * ldlang.c: Add calls to emulation-specific routines.
9396 (lang_process): Add call to
9397 ldemul_create_output_section_statements function.
9398 (lang_process): Add call to a emulation-specific routine (and
9399 some processing after the call).
9400
9401 Fri Oct 22 20:54:13 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9402
9403 * configure.in: mips*- instead of mips-, mips*el changes
9404
9405 Tue Oct 19 15:46:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9406
9407 * configure.in (alpha-*-osf*): New target; use alpha.mt.
9408 * Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
9409 (em_alpha.c): New target; use alpha.sh and alpha.sc.
9410 * config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
9411 * config/alpha.mt: New file.
9412 * emulparams/alpha.sh: New file.
9413 * scripttempl/alpha.sc: New file.
9414
9415 Fri Oct 15 02:20:04 1993 Doug Evans (dje@canuck.cygnus.com)
9416
9417 * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
9418 types of different sizes (eg: 64 and 32 bits), so coerce.
9419 * ld.h (ALIGN_N): Add warning about usage.
9420
9421 Wed Oct 13 16:02:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9422
9423 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
9424 which we already have a definition, rather than checking in
9425 several different places whether the symbol is weak.
9426
9427 Tue Oct 12 17:30:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9428
9429 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
9430 * scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
9431 OTHER_READWRITE_SECTIONS if relocating. Shell variables are not
9432 expanded within them.
9433 * config/mipsb-elf32.mt: New file.
9434 * emulparams/elf32mipb.sh: New file.
9435 * Makefile.in (em_elf32mipb.c): New target.
9436
9437 Thu Sep 30 17:00:36 1993 Rob Savoye (rob@darkstar.cygnus.com)
9438
9439 * ldgram.y: In input_list, change lang_input_file_is_file_enum to
9440 lang_input_file_is_search_file_enum so objects brought in using
9441 INPUT() do a path lookup.
9442
9443 Tue Sep 28 13:31:23 1993 Stan Shebs (shebs@rtl.cygnus.com)
9444
9445 * configure.in: Change Lynx ld_target to be {i386,m68k}-lynx
9446 instead of {i386,m68k}-coff.
9447 * Makefile.in (em_i386lynx.c, em_m68klynx.c): New targets.
9448 * config/i386-lynx.mt: New file.
9449 * config/m68k-lynx.mt: New file.
9450 * emulparams/i386lynx.sh: New file.
9451 * emulparams/m68klynx.sh: New file.
9452
9453 * scripttempl/i386coff.sc: Make ENTRY get its value from ${ENTRY},
9454 but defaulting to _start.
9455
9456 * ldemul.c, ldfile.c, ldlang.c, ldmain.c, ldmisc.c, ldmisc.h,
9457 ldsym.c, ldwarn.c: Rename info to info_msg, to avoid conflict with
9458 LynxOS libc.
9459
9460 Thu Sep 23 14:51:03 1993 Ian Lance Taylor (ian@cygnus.com)
9461
9462 * config/solaris2.mh: New file. Define HOSTING_CRT0 and
9463 HOSTING_LIBS for testing.
9464
9465 Fri Sep 17 17:52:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9466
9467 Finish up support for i386-sysv4 (without shared libraries):
9468 * ld.h (flag_is_weak): Define.
9469 * ldlang.c (print_symbol): Mention whether symbol is weak.
9470 (print_input_section): Print weak symbols as globals.
9471 * ldmain.c (refize): Do not zero out BSF_WEAK flag.
9472 (enter_global_ref): Do not warn if a weak symbol redefines a
9473 global symbol. Do not let a weak symbol redefine a common symbol.
9474 (enter_file_symbols): Treat weak symbols as global symbols.
9475 (subfile_wanted_p): Do not pull in an object file from a archive
9476 just to resolve an undefined weak symbol.
9477 * ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
9478 error; the error might be that malloc has run out of space.
9479 * ldsym.c (write_file_locals): Treat weak symbols as global.
9480 * configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
9481 use i386-elf.
9482 * config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
9483 * config/i386-elf.mt: New file; set EMUL to elf_i386.
9484 * emulparams/elf_i386.sh: New file.
9485 * scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
9486 * Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
9487 (ALL_EMULATIONS): Add em_elf_i386.o.
9488 (GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
9489 (em_elf_i386.c): New target, like other em_*.c targets.
9490 ($(LD_PROG)): Pass $(CFLAGS) to $(CC).
9491 * genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument. If
9492 nonempty, and configured for native, add it to LIB_PATH.
9493
9494 Fri Sep 17 13:07:39 1993 Stan Shebs (shebs@rtl.cygnus.com)
9495
9496 * scripttempl/{h8300.sc,h8500.sc,i386coff.sc,m68kcoff.sc,sh.sc}:
9497 Added statements to pass stab and stabstr sections through and
9498 mark them as NOLOAD, which makes GDB happier.
9499
9500 Wed Sep 15 16:02:29 1993 Stan Shebs (shebs@rtl.cygnus.com)
9501
9502 * configure.in: Accept m68k-lynx-lynxos config.
9503
9504 * Makefile.in: Use $(SHELL) to run genscripts.sh.
9505
9506 Sun Sep 12 16:04:40 1993 Doug Evans (dje@cygnus.com)
9507
9508 * config/coff-h8300.mt: Add EMUL=h8300h.
9509
9510 * ldmain.c (main): Call set_scripts_dir after argv has been processed.
9511
9512 Fri Sep 10 09:36:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
9513
9514 * Makefile.in: Changed CXX back to g++.
9515
9516 Fri Sep 10 09:34:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
9517
9518 * Makefile.in: Fixed RUNTEST* CXX CXXFLAGS macros and check rule.
9519
9520 Fri Sep 10 07:26:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9521
9522 * Makefile.in (TAGS): Use shell wildcards.
9523
9524 Tue Sep 7 18:04:54 1993 Jeffrey Osier (jeffrey@cygnus.com)
9525
9526 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target
9527
9528 Fri Sep 3 16:46:41 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
9529
9530 * ld.texinfo: re-enable included config file; conditionalize doc
9531 for -oformat to interact properly with SingleFormat doc config
9532 var; rename @up/@down to @raisesections/@lowersections.
9533
9534 Wed Aug 25 16:29:56 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9535
9536 * configure.in: recognize m88110.
9537
9538 Tue Aug 24 18:49:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9539
9540 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
9541 * emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
9542 ELF emulation is "elf32-hppa" not "elf-big".
9543 (hppaosf_before_parse): Remove unneeded processing of environment
9544 variables.
9545 * scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
9546 .text segment of output file.
9547 * emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
9548
9549 Tue Aug 24 16:17:00 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9550
9551 * ld.h: define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no
9552 longer in bfd.h.
9553
9554 * ldlang.c, ld.h: updated copyright.
9555
9556 Tue Aug 17 15:22:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9557
9558 * ldlang.c (open_output, lang_check): Check return value of
9559 bfd_set_arch_mach.
9560
9561 Tue Aug 17 07:02:19 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
9562
9563 * scripttempl/h8500.sc: Start all sections in a different segment.
9564 * scripttempl/z8ksim.sc: Handle constructors
9565
9566 Thu Aug 12 16:05:37 1993 Jeffrey Wheat (cassidy@cygnus.com)
9567
9568 * Makefile.in: revert earlier changes back to execute runtest
9569 with make check. cdtest and bootstrap now function as they
9570 did within the Makefile.
9571
9572 Thu Aug 12 10:20:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9573
9574 * Makefile.in: Update dependencies.
9575
9576 * configure.in: Set EMULATION_OFILES in Makefile based on
9577 --with-targets option.
9578
9579 Thu Aug 12 08:52:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
9580
9581 * Makefile.in: check targets reimplemented to old way.
9582
9583 Wed Aug 11 08:26:11 1993 Ian Lance Taylor (ian@cygnus.com)
9584
9585 * config/i386v.mh, config/irix4.mh: Use gcc
9586 -print-libgcc-file-name rather than $(libdir)/libgcc.a.
9587 * config/i386sco.mh: New file; copy of i386v.mh to correspond to
9588 bfd/configure.host change.
9589
9590 Mon Aug 9 14:25:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9591
9592 * scripttempl/elf.sc: Handle .line and .debug* sections.
9593
9594 * ldlex.l: Use bfd_scan_vma, not strtoul.
9595
9596 Fri Aug 6 08:57:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9597
9598 * ldexp.c, ldfile.c, ldlang.c, lexsup.c, ldmain.c, ldemul.c:
9599 Remove inital caps in some error messages, change "can't" to
9600 "cannot", add missing colons.
9601 * ldmisc.c (vfinfo): Print "%%" as a single %.
9602 For '%' followed by unrecognized character, print them both
9603 verbatim instead of expecting a char * arg.
9604 For '%C', don't put the function name in parens.
9605
9606 * ldexp.c (invalid): Pass "%%", not "% ".
9607
9608 Fri Aug 6 14:31:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9609
9610 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
9611 (BSS_VAR): Removed; now always define _fbss.
9612 * emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
9613 Removed.
9614
9615 Thu Aug 5 15:55:19 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9616
9617 * configure.in: z8k-coff is the same as z8k-sim
9618
9619 Wed Aug 4 21:00:18 1993 Jeffrey Wheat (cassidy@cygnus.com)
9620
9621 * testsuite/lib/ld.exp: new file
9622 * testsuite/config/unix-ld.exp: new file
9623 * testsuite/ld.bootstrap/bootstrap.exp: new file
9624 * Makefile.in: add dejagnu support for make check
9625
9626 Wed Aug 4 17:52:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9627
9628 * ldlex.l (comment): Add missing newline in message.
9629 * ldindr.c (add_indirect): Ditto.
9630 * ldexp.c (exp_fold_tree): Ditto.
9631
9632 Tue Aug 3 10:57:41 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9633
9634 * ldgram.y, ldlex.l, mri.c, ldwrite.c: Change multiple commons
9635 into externs.
9636
9637 * ldmisc.c (multiple_warn): New function.
9638 * ldmisc.h: Declare it.
9639 * ldmain.c (enter_global_ref): Call it.
9640 * ld.h (ld_config_type): Add warn_common.
9641 * ldlex.l, ldgram.y: Set it with -warn-common option.
9642 * ldver.c (help): Document it.
9643
9644 Mon Aug 2 12:04:36 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9645
9646 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
9647 target-specific sections, and for changing data section vma.
9648
9649 Mon Jul 26 14:00:02 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
9650
9651 * ldgram.y (OPTION_Qy, OPTION_Y, OPTION_dn, OPTION_YP): New
9652 terminals, for Solaris.
9653 (dirlist_ptr): New static variable.
9654 (command_line_option): Accept new options.
9655
9656 * ldlex.l: Accept command-line options "-Qy", "-dn", "-Y", and
9657 "-YP,...".
9658
9659 * config/sun4sol2.mt: Pass emulation name without ".sh".
9660
9661 * emulparams/elf32_sparc.c: Renamed from elf32-sparc.c.
9662 * config/sun4sol2.mt (em_elf32_sparc.c): Adjusted accordingly.
9663
9664 Fri Jul 23 13:51:09 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9665
9666 * scripttempl/elf.sc: Add support for .init, .fini, .ctors,
9667 .dtors, .data1, .rodata1 sections, instead of combining them into
9668 other sections. For `-r', set all section start addresses to
9669 zero.
9670
9671 * emulparams/elf32-sparc.sh (TEXT_START_ADDR,
9672 NONPAGED_TEXT_START_ADDR): Value should be 0x10100.
9673 (MAXPAGESIZE): Renamed from PAGE_SIZE.
9674
9675 Wed Jul 21 14:28:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9676
9677 * genscripts.sh: If this is the default emulation, set
9678 COMPILE_IN.
9679 * emultempl/*.em: Use it to determine whether to compile in the
9680 scripts.
9681
9682 * Makefile.in (GENSCRIPTS): Pass the default emulation name to
9683 genscripts.sh. Pass the current emulation name without ".sh" on
9684 the end.
9685 * genscripts.sh: Take an default emulation arg.
9686 Use the current emulation name as EMULATION_NAME.
9687 Make default lib path for cross-compiling ':', not null.
9688 * emulparams/*.sh: Don't set EMULATION_NAME.
9689 * ldemul.c (ldemul_get_script): Take isfile arg.
9690 Pass it to emulation's get_script function.
9691 * ldemul.h: Adjust get_script prototypes.
9692 * ldfile.c (ldfile_find_command_file): Renamed from find_a_name.
9693 No longer static.
9694 * ldfile.h: Declare it.
9695 * ldgram.y: Accept a script on the command line again,
9696 for parsing compiled-in scripts.
9697 * ldmain.c (main): If ld script is a file, parse it as a -T
9698 option, otherwise parse it directly.
9699 * emultempl/*.em (*get_script): Return the scripts themselves if
9700 this is the default emulation; otherwise return their file names.
9701 * emultempl/m88kbcs.em: New file, to take m88kbcs #ifdef out of
9702 generic.em.
9703 * emulparams/m88kbcs.sh: Use it.
9704
9705 * ld.h (ld_config_type::unix_relocate): Remove unused element.
9706
9707 Tue Jul 20 12:01:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9708
9709 * Makefile.in (ALL_EMULATIONS): Delete em_i386linux.o (for which
9710 there's no change log entry yet, tsk tsk) from the list of
9711 emulations compiled in until Mark gets around to checking in
9712 emulparams/i386linux.sh.
9713 (ldemul-list.h): Depend on Makefile, so if EMULATION_OFILES is
9714 changed, this file gets updated.
9715
9716 Fri Jul 16 14:14:32 1993 Ian Lance Taylor (ian@cygnus.com)
9717
9718 * ldgram.y (OPTION_Lfile): New token.
9719 (command_line_option): Accept OPTION_L NAME (whitespace after -L).
9720 * ldlex.l (<COMMAND>): Accept -L without FILENAME.
9721
9722 Fri Jul 16 13:44:26 1993 Doug Evans (dje@canuck.cygnus.com)
9723
9724 * configure.in: h8/300h support needs own .mt file.
9725 config/coff-h8300h.mt: New file.
9726
9727 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9728
9729 * ldmain.c: Don't include sys/stat.h; it already got included
9730 somewhere along the way.
9731
9732 Thu Jul 15 14:43:34 1993 Doug Evans (dje@canuck.cygnus.com)
9733
9734 * Makefile.in: Add h8300h support.
9735 emulparams/h8300h.sh: New file.
9736 scripttempl/h8300h.sc: New file.
9737
9738 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9739
9740 * ldfile.c (ldfile_open_file): In error message, use the name the
9741 user gave (e.g., "-lc"), rather than the base file name.
9742
9743 * ldexp.c (exp_fold_tree): Don't assign an int to an enum.
9744
9745 * ldmain.[ch]: Remove initial Q_ from function names.
9746 * ldexp.c, ldindr.c, ldlang.c: Change callers.
9747
9748 * ldfile.c, ldmain.c, ldgram.y: Rename option_v to trace_file_tries.
9749
9750 * ldlang.c (lang_process): Move loading of default script from
9751 here to main. Add a "/" to start of script name to prevent
9752 finding it in "." first.
9753
9754 * ldmain.c (set_scripts_dir): Don't look in "." first.
9755
9756 * ldgram.y, ldlang.c, ldsym.c: Remove traces of unused var
9757 option_longmap.
9758
9759 Thu Jul 15 10:55:59 1993 Ian Lance Taylor (ian@cygnus.com)
9760
9761 * Makefile.in (em_m88kbcs.c): Correct dependency.
9762 * scripttempl/m88kbcs.sc: It's ARCH, not arch. Removed TARGET
9763 statement. Changed OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
9764 * emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
9765
9766 Wed Jul 14 21:42:53 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9767
9768 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
9769 main.c (main): Print the errno string in the error message.
9770
9771 Tue Jul 13 20:00:30 1993 Doug Evans (dje@canuck.cygnus.com)
9772
9773 * configure.in: Accept h8300h for target cpu.
9774
9775 * ldmisc.c (vfinfo): Have demangle remove leading underscore if
9776 present (demangle is smart enough to know whether to do it or not).
9777
9778 Mon Jul 12 11:45:48 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9779
9780 * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
9781 ldscripts, as well as <ld bin dir> and SCRIPTDIR.
9782
9783 * ldlang.c (lang_process): Use sizeof instead of magic constant.
9784
9785 * ldmain.c (get_emulation, check_for_scripts_dir,
9786 set_scripts_dir): New functions.
9787 (main): Call them.
9788
9789 Mon Jul 12 10:57:03 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
9790
9791 * scripttempl/elf.sc: Include .init, .fini, .rodata sections.
9792 Create symbol "end" instead of "__end". Comment out some parts
9793 that may not be needed (yet) for elf.
9794
9795 * configure.in: Accept sparc-elf and sparc-solaris2 configs.
9796
9797 Thu Jul 8 15:33:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9798
9799 * Makefile.in (ALL_EMULATIONS): Include $(OTHER_EMULATIONS).
9800
9801 * ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro
9802 when no prototype is being supplied.
9803 (ldmalloc, ldrealloc): Size argument is now size_t.
9804
9805 * ldmisc.c (finfo): New function, accepts FILE* argument.
9806 (vfinfo, case 'v'): New format character; displays bfd_vma in hex
9807 without leading zeros.
9808 (vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a
9809 bfd_vma value, instead of fprintf(%x) which won't hold a long long
9810 value.
9811 (concat, buystring): String lengths are size_t.
9812 (ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
9813
9814 * ldlang.c (new_statement): Size argument is now size_t. Added
9815 forward declaration with prototype.
9816
9817 Thu Jul 8 10:53:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9818
9819 * ldgram.y (OPTION_v): Don't turn on verbose output.
9820
9821 Wed Jul 7 17:10:45 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9822
9823 * ldlex.l: Get rid of local typedef for bfd_vma! Get it from
9824 bfd.h instead.
9825
9826 Wed Jul 7 11:33:12 1993 Ian Lance Taylor (ian@cygnus.com)
9827
9828 * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
9829 collect2 doesn't look for gld any more anyhow.
9830
9831 Mon Jul 5 14:29:48 1993 Ian Lance Taylor (ian@cygnus.com)
9832
9833 * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
9834 now have a non NULL srefs_chain.
9835
9836 * config/hp300hpux.mt: Use emulation hp3hpux rather than
9837 hp300hpux, since the latter does not exist.
9838
9839 Fri Jul 2 18:06:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9840
9841 * genscripts.sh: Put the scripts in the ldscripts directory, not
9842 emulations.
9843 * configure.in (ldscripts): Make, instead of emulations.
9844 * Makefile.in (scriptdir): Take off the "ld" part.
9845 (install, clean, distclean): Use ldscripts, not emulations.
9846 In tests, don't pass -Lemulations.
9847 Don't pass tooldir/lib to genscripts.sh.
9848 * genscripts.sh: Don't take tooldir/lib arg.
9849 * ldlang.c (lang_process): Add "ldscripts/" to the name of the
9850 default script file.
9851
9852 Fri Jul 2 17:13:35 1993 Doug Evans (dje@canuck.cygnus.com)
9853
9854 * scripttempl/h8300.sc: Add .tors section for constructor/destructors.
9855
9856 Thu Jul 1 16:38:45 1993 Doug Evans (dje@canuck.cygnus.com)
9857
9858 * config/coff-h8300.mt: EMUL=h8300hms -> h8300.
9859
9860 Wed Jun 30 15:45:55 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9861
9862 * Makefile.in (.y.c): skip default .y.c rules. gnu make can now
9863 run in parallel without colliding on yacc's static file names.
9864 Without the stub rule, make will try to start two yacc's
9865 concurrently which fails because of yacc's static file names.
9866
9867 Tue Jun 29 12:20:36 1993 Ian Lance Taylor (ian@cygnus.com)
9868
9869 * ldmain.c (subfile_wanted_p): Don't dump core if there are no
9870 symbols.
9871
9872 Mon Jun 28 12:22:11 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9873
9874 * genscripts.sh (LIB_PATH): Only add /usr/local/lib if it's
9875 different from libdir.
9876
9877 * Makefile.in (scriptdir): Base on tooldir, not datadir.
9878
9879 Sat Jun 26 12:03:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9880
9881 * ldver.c (help): New function.
9882 * ldver.h: Declare it.
9883 * ldlex.l, ldgram.y: Recognize new options --help and --version.
9884
9885 Mon Jun 21 20:39:48 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
9886
9887 * Makefile.in (INCLUDES): Don't need ../include any more.
9888
9889 Mon Jun 21 16:38:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9890
9891 * ldlex.l, ldgram.y: Support new -oformat option.
9892 Remove attempt at supporting script fragments on the command line.
9893 * ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
9894 * mri.c (mri_format), ldgram.y: Change callers.
9895 * ldlang.h: Change prototype.
9896
9897 Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
9898
9899 * Makefile.in: canonicalize install.sh; for use within
9900 this directory (and subdirs)
9901
9902 Thu Jun 17 14:33:09 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9903
9904 * ldgram.y: Tweak grammar to make reporting of invalid options work.
9905
9906 * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
9907 and .cc.o rule.
9908
9909 Wed Jun 16 11:45:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9910
9911 * ldfile.c (ldfile_open_command): Don't try .ld extension.
9912 It wasn't documented (or likely used) and wastes time.
9913 (try_open): If EXTEN is empty, don't try it.
9914
9915 * ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
9916 ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
9917 ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
9918 with normal function declarations.
9919
9920 * Move *.em to emultempl/*.em. Move *.sh to emulparams/*.sh.
9921 Move *.sc-sh to scripttempl/*.sc.
9922 * {emultempl,emulparams,scripttempl}/README: New files.
9923 * sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
9924 removed, replaced with generic.em.
9925 * h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
9926 h8[35]00hms.s[ch]. Change their contents to omit the "hms".
9927
9928 * *.em (*_get_script): Return script name instead of script contents.
9929 * ldlang.c (lang_process): Change caller.
9930
9931 * ldlex.l, ldgram.y: Recognize -m option.
9932 Check for input files after *all* options in grammar.
9933 * ldmain.c (main): Check for -m options. Add default directory
9934 for -m.
9935
9936 * mkscript.c: File removed.
9937 * genscripts.sh: Take two more parameters, tooldirlib and libdir,
9938 to add to the default LIB_PATH.
9939 Look for input files in the new subdirectories.
9940 Create the scripts in emulations subdirectory and don't filter
9941 them through mkscript.
9942 * configure.in: Make the emulations subdirectory.
9943
9944 * Makefile.in: Account for all of the above changes.
9945 Remove unused .SUFFIXES. Get libgcc.a path with gcc
9946 -print-libgcc-file-name instead of $(libdir)/libgcc.a.
9947 Put CFLAGS last in the compilation rules.
9948 Add -I../bfd to INCLUDES so sysdep.h is found.
9949
9950 Tue Jun 15 23:04:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9951
9952 * Makefile.in (INCLUDES): Look in ../include, not ../bfd.
9953
9954 * aout.sc-sh: Add SHLIB_PATH like STACKZERO. Make STACKZERO
9955 dependent on RELOCATING, not RELOCATION.
9956 * hp3hpux.sh (SHLIB_PATH): Define it.
9957
9958 Mon Jun 14 19:06:15 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9959
9960 * ldfile.c (try_open): If opening without the extension fails,
9961 try with the extension even if -v or -V was given.
9962 had_script is imported (from ldgram.y), not exported.
9963
9964 Mon Jun 14 16:26:10 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
9965
9966 * Makefile.in: remove parentdir support, use INSTALL_XFORM
9967
9968 Thu Jun 10 14:00:06 1993 Ian Lance Taylor (ian@cygnus.com)
9969
9970 * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
9971 * ldgram.y (statement_list_opt): New nonterminal, either empty or
9972 statement_list.
9973 (section): Use statement_list_opt, not statement_list.
9974 * m68kcoff.sc-sh: Gather constructors and destructors and define
9975 __CTOR_LIST__ and __DTOR_LIST__ appropriately.
9976 * sa29200.sc-sh: Gather constructors and destructors and define
9977 ___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
9978
9979 Mon Jun 7 12:53:28 1993 Per Bothner (bothner@rtl.cygnus.com)
9980
9981 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
9982 * configure.in: No longer need to configure to get sysdep.h.
9983
9984 Fri Jun 4 16:18:24 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9985
9986 * Makefile.in: remove install:all and install-info:info
9987 dependencies (these cause some spurious rebuilds at 'make install'
9988 time)
9989
9990 Fri Jun 4 08:50:14 1993 Ian Lance Taylor (ian@cygnus.com)
9991
9992 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
9993 (mips-idt-ecoff*): Added trailing '*'.
9994 * config/mips-idtl.mt: New file; use EMUL of mipsidtl.
9995 * mipsidtl.sh: New file; like mipsidt.sh, but little endian.
9996 * Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
9997
9998 * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
9999 incorrect definitions.
10000
10001 Tue Jun 1 14:56:10 1993 Per Bothner (bothner@rtl.cygnus.com)
10002
10003 * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR
10004 symbols, unless stripping.
10005
10006 Tue May 25 15:34:25 1993 Ian Lance Taylor (ian@cygnus.com)
10007
10008 * Makefile.in: configure looks for ####, so remove lines with many
10009 '#' characters.
10010 * config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
10011 and HOSTING_LIBS correctly so that ``make check'' will work.
10012
10013 Thu May 20 13:56:16 1993 Per Bothner (bothner@deneb.cygnus.com)
10014
10015 * mips.sc-sh: Define _etext, _edata, and _end, in addition
10016 to etext, edata, and end. Needed for IRIX 4.0.5F.
10017 Patch from mwp@iconix.oz.au (Michael Paddon).
10018
10019 * Version 2.2.1 released.
10020
10021 Thu May 20 11:42:06 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10022
10023 * mipsbsd.sc-sh: Renamed from aout-mipsbsd.sc-sh.
10024 * mipsbsd.sh (EMULATION_NAME): Use new file name.
10025
10026 Tue May 18 17:10:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10027
10028 * Makefile.in (LDDISTSTUFF): Remove ld.mm since we can't build it
10029 properly right now.
10030
10031 * Version 2.2 released.
10032
10033 Mon May 17 15:37:28 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
10034
10035 * ldver.c (ldversion): Bump version number to 2.2.
10036
10037 Mon May 17 12:44:31 1993 Per Bothner (bothner@cygnus.com)
10038
10039 * NEWS: New file.
10040
10041 Fri May 14 11:26:24 1993 Ian Lance Taylor (ian@cygnus.com)
10042
10043 * mips.sc-sh: Don't define BSS_VAR unless relocating.
10044
10045 Wed May 12 13:33:29 1993 Ian Lance Taylor (ian@cygnus.com)
10046
10047 * Makefile.in (mkscript.o, mkscript): Build mkscript via
10048 mkscript.o, rather than directly from mkscript.c.
10049
10050 Tue May 4 21:58:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10051
10052 * configure.in: Look for ${target_makefile_frag} relative to
10053 ${srcdir}, not relative to build directory.
10054
10055 * hppaosf.em, hppaosf.sc-sh, hppaosf.sh: New files.
10056 * configure.in: Recognize hppa*-hp-osf.
10057 * Makefile.in (ALL_EMULATIONS): Include hppaosf emulation.
10058 (em_hppaosf.c): Build it.
10059 * config/hppaosf.mh, hppaosf.mt: New files.
10060
10061 * ld.h (ALIGN_N): Renamed from ALIGN, because that conflicted with
10062 some system header files. All uses changed.
10063
10064 * configure.in: Recognize i386-aix configurations as i386-coff
10065 targets.
10066
10067 * configure.in: Recognize m68*-*-hpux.
10068 * aout.sc-sh: If STACKZERO and RELOCATING are both defined, output
10069 the value of STACKZERO.
10070 * Makefile.in (ALL_EMULATIONS): Include hp300-hpux emulation.
10071 (em_hp3hpux.c): Build it.
10072 * hp3hpux.sh, config/hp300hpux.mt: New files.
10073
10074 Tue May 4 12:37:35 1993 Ian Lance Taylor (ian@cygnus.com)
10075
10076 * mips.sc-sh: Put constructors in the .data section.
10077 * Makefile.in (cdtest): Added dependency on ld.new.
10078
10079 Mon May 3 19:43:39 1993 Per Bothner (bothner@cygnus.com)
10080
10081 * Makefile.in: Change definition of $(tooldir) to match FSF.
10082 * vax.sh, config/vax.mt, configure.in, Makefile.in:
10083 Support VAX Ultrix and BSD.
10084
10085 Mon Apr 26 18:35:47 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10086
10087 * sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH.
10088
10089 Wed Apr 14 21:01:51 1993 John Gilmore (gnu@cygnus.com)
10090
10091 * ldlang.h (struct memory_region): Change `length' and
10092 `old_length' fields to bfd_size_type. Eliminate use of bfd_offset.
10093 * ldlang.c, mri.c: Corresponding changes, plus lint.
10094
10095 Thu Apr 8 22:08:18 1993 Ian Lance Taylor (ian@cygnus.com)
10096
10097 * configure.in: For all i386 targets, accept i486 as well.
10098
10099 Mon Apr 5 17:33:39 1993 Ian Lance Taylor (ian@cygnus.com)
10100
10101 * ldlang.c (wild_doit): Preserve all flags for a
10102 SEC_SHARED_LIBRARY section.
10103 (size_input_section): Consider any SEC_HAS_CONTENTS section when
10104 computing largest_section.
10105
10106 Fri Apr 2 14:33:52 1993 Ian Lance Taylor (ian@cygnus.com)
10107
10108 * ldlang.c (lang_output_section_statement_lookup): Initialize all
10109 fields of newly created structure.
10110
10111 Wed Mar 31 18:19:15 1993 Ian Lance Taylor (ian@cygnus.com)
10112
10113 * ldmain.c (g_switch_value): New variable.
10114 * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
10115 (command_line_option): Accept -G and set g_switch_value.
10116 * ldlex.l (COMMAND): Accept -G.
10117 * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
10118
10119 Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10120
10121 Support for linking and loading at different places:
10122
10123 * ldlex.l: Add "AT" keyword.
10124 * ldgram.y: Cleanup, and parse AT.
10125 * ldlang.c (print_output_section_statement): Print output address
10126 of section in map. (lang_size_sections): Fill sections' lma with
10127 load address.
10128 * ldlang.h (lang_output_section_statement_type): Add load_base
10129 information.
10130
10131 * ldindr.c (add_indirect): Keep more information in the alias
10132 symbol chain.
10133 * ldlang.c (wild_doit): Don't inherit NEVER_LOAD section
10134 attribute from an input section.
10135 * ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
10136 default. (Q_enter_file_symbos): Indirect symbols now are known by
10137 their section, not a special symbol flag.
10138 * ldsym.c (write_file_locals): Indirect symbols aren't local.
10139 (write_file_globals): Write the mapping for an indirect symbol.
10140 * relax.c (build_it): When forced to write a NEVER_LOAD section,
10141 fill it with zeros.
10142
10143 Tue Mar 23 13:24:10 1993 Jeffrey Osier (jeffrey@fowanton.cygnus.com)
10144
10145 * ld.texinfo: changes for q1
10146
10147 Tue Mar 23 00:13:29 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10148
10149 * Makefile.in: add dvi target, define & use TEXI2DVI, add installcheck
10150
10151 Mon Mar 8 20:30:35 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10152
10153 * Makefile.in: rename HOST_CC to CC_FOR_BUILD
10154
10155 Thu Mar 4 12:44:33 1993 Ian Lance Taylor (ian@cygnus.com)
10156
10157 * mips.sc-sh: Added variables which may be overridden by a
10158 specific emulation.
10159 * mipsidt.sh: New file; emulation for IDT MIPS board.
10160 * Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
10161 (em_mipsidt.c): New target. Uses mipsidt.sh and mips.sc-sh.
10162 * config/mips-idt.mt: New file; sets EMUL to mipsidt.
10163 * configure.in (mips-idt-ecoff): New target; uses mips-idt.
10164
10165 Sat Feb 27 00:00:14 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10166
10167 * aout-mipsbsd.sc-sh, mipsbsd.sh: New files from Ralph Campbell,
10168 ralphc@pyramid.com.
10169 * i386bsd.sh, config/i386bsd.mt: New files.
10170 * configure.in, Makefile.in: Added support for mipsbsd and 386bsd.
10171
10172 Thu Feb 25 15:33:10 1993 Per Bothner (bothner@rtl.cygnus.com)
10173
10174 * mri.c: Add extern declaration of strdup.
10175 * ldsym.c (KEEP macro): Add spaces around '=' for the
10176 sake of old (e.g. PCC) compilers.
10177
10178 Wed Feb 24 19:49:31 1993 Per Bothner (bothner@rtl.cygnus.com)
10179
10180 * ldver.c: Bump to version 2.1.
10181
10182 Fri Feb 12 08:09:11 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10183
10184 * ldgram.y: allow section types without address expressions.
10185 * ldlang.c (lang_relocate_globals): avoid possible hang with
10186 undefined but unreferenced symbols.
10187 * relax.c (relax_section): don't complain if the script file isn't
10188 relaxable but -relax is set
10189
10190 Thu Feb 18 17:58:45 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10191
10192 * configure.in: go32 is the 3rd part of the triple, not the 2nd
10193
10194 Wed Feb 3 09:05:56 1993 Ian Lance Taylor (ian@cygnus.com)
10195
10196 * mipsbig.sh: New file. Big endian MIPS emulation.
10197 * config/mips-big.mt: New file. Use mipsbig emulation.
10198 * configure.in (mips-sgi-irix*): Use target mips-big.
10199 * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
10200 (em_mipsbig.c): New target. Uses mipsbig.sh.
10201
10202 Tue Feb 2 11:32:27 1993 Ian Lance Taylor (ian@cygnus.com)
10203
10204 * mips.sc-sh: Put .scommon sections into .sbss section.
10205
10206 * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
10207 rather than always putting them in bfd_com_section.
10208 * ldlang.c (lang_common): If a common symbol is not in
10209 bfd_com_section, put in a section of the same name, rather than
10210 always putting it in section COMMON.
10211
10212 Fri Jan 29 09:57:58 1993 Ian Lance Taylor (ian@cygnus.com)
10213
10214 * ldmain.c (subfile_wanted_p): If we already have a common
10215 definition of a symbol, don't necessarily pull in an object file
10216 that provides a non-common definition.
10217
10218 * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
10219 returning OPTION_EB and OPTION_EL. gcc passes these to a MIPS
10220 linker.
10221 * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
10222 (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
10223
10224 Thu Jan 28 15:12:04 1993 Ian Lance Taylor (ian@cygnus.com)
10225
10226 * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
10227 the link to it.
10228
10229 Tue Jan 26 11:49:50 1993 Ian Lance Taylor (ian@cygnus.com)
10230
10231 * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
10232 checking for equality to bfd_com_section.
10233
10234 Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com)
10235
10236 * mips.sc-sh: New file. Ultrix, and hopefully other MIPS ECOFF
10237 targets, linker script.
10238 * mipslit.sh: New file. Little endian MIPS emulation.
10239 * config/mips-lit.mt: New file. Use mipslit emulation.
10240 * configure.in (mips-dec-ultrix*): Use target mips-lit.
10241 * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
10242 (em_mipslit.c): New target. Uses mipslit.sh.
10243
10244 Thu Jan 14 15:30:27 1993 Ian Lance Taylor (ian@cygnus.com)
10245
10246 * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
10247 $(tooldir)/bin/gld, so that gcc can find it with or without
10248 collect2.
10249
10250 Mon Jan 11 18:50:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
10251
10252 * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
10253 write_norel. All linking is now done via write_relax. Call
10254 ldsym_write before calling write_relax.
10255 * relax.c: Added copyright.
10256 (write_relax): Renamed from write_relaxnorel. Added relocateable
10257 argument. seclet_dump renamed to bfd_seclet_link.
10258 * relax.h: Added copyright.
10259
10260 Mon Jan 11 15:41:56 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10261
10262 * ldmain.c (decode_library_subfile): Patch from
10263 hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
10264
10265 Fri Jan 8 18:04:33 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10266
10267 * config/vxworks960.mt renamed to config/i960.mt
10268
10269 * configure.in: sparc-aout emulates a sun4, as does
10270 sparc*-vxworks, i960-nindy uses gld960 emulation
10271
10272 Fri Jan 8 14:39:07 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10273
10274 Fix support for NOLOAD, add INCLUDE
10275 * ldfile.c (ldfile_open_command_file): pass file name to
10276 lex_push_file.
10277 * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD
10278 * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
10279 attribute.
10280
10281 Thu Jan 7 10:22:19 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10282
10283 * Makefile.in, config.h: no more default emulation. Make the lack
10284 of emulation a compile time error
10285
10286 Wed Jan 6 01:08:37 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10287
10288 * configure.in: recognise all sparclite variants, not just 'sparclite'
10289
10290 Mon Dec 28 11:15:35 1992 Ian Lance Taylor (ian@cygnus.com)
10291
10292 * m68kcoff.sc-sh: define _end as well as end, for consistency with
10293 aout.sc-sh.
10294
10295 * configure.in: accept *-ericsson-ose for any m68k CPU.
10296
10297 * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
10298 for each output section.
10299
10300 Mon Dec 21 16:06:59 1992 Per Bothner (bothner@rtl.cygnus.com)
10301
10302 * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c: Use new
10303 macro bfd_asymbol_bfd as appropriate.
10304 * Makefile.in: Un-duplicate ldlex.c dependency.
10305 * condigure.in: Replace my_host case table by sourcing
10306 ../bfd/configure.host. Allow std-host as the default.
10307 * ldmisc.c: Change logic for C++ name demangling: There is
10308 no initial '_' to remove from stab-derived function names.
10309
10310 Sun Dec 13 16:31:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10311
10312 * ldlang.c (lang_init_script_file): don't attach the output file
10313 sections to the script file.
10314
10315 Wed Dec 9 08:38:05 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10316 * ldlang.c (wild): run expansion loop over command line bfd too.
10317 (lang_ini_script_file): initialize more parts of the command line
10318 bfd.
10319 * ldlex.l: fix DEFINED start states.
10320
10321 Mon Dec 7 08:43:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10322 -y support
10323 * ld.texinfo: new doc.
10324 * ldgram.y, ldlex.l: understand -y<symbol>
10325 * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
10326 print info. (add_ysym): new function.
10327 * ldsym.h: (ldsym_type): new define SYM_Y.
10328
10329 Sat Nov 21 03:15:27 1992 John Gilmore (gnu@cygnus.com)
10330
10331 * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
10332 ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
10333 ldwrite.h, relax.h: Replace all uses of EXFUN and PROTO ansi-glue
10334 macros with PARAMS. Recreational cleanup. Update copyrights.
10335
10336 Tue Nov 10 00:23:37 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10337
10338 * Makefile.in: pass down the bfd source directory for includes
10339
10340 Thu Nov 5 15:41:55 1992 Ian Lance Taylor (ian@cygnus.com)
10341
10342 * ldlang.c (lang_size_sections): don't change size and address for
10343 SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
10344 sections.
10345
10346 Thu Nov 5 11:33:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10347
10348 * relax.c (build_it): re-enable the processing of data_statements
10349 in scripts, makes counted contructor lists work again.
10350
10351 Thu Nov 5 05:43:01 1992 John Gilmore (gnu@cygnus.com)
10352
10353 * ldemul.h: Remove uses of SDEF and PROTO macros (use PARAMS).
10354
10355 Tue Oct 20 10:56:06 1992 Ian Lance Taylor (ian@cygnus.com)
10356
10357 * m68kcoff.sc-sh: don't use initial underscores for etext, edata
10358 and end.
10359
10360 Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com)
10361
10362 * Support for i386-sysv.
10363 configure.in: check for i386-*-sysv* and i386-*-sco*.
10364 i386coff.sc-sh: rewrote to support SVR3 by default.
10365 ldctor.c (find_constructors): preserve stat_ptr.
10366 ldlang.c (wild_doit): initialize vma and size of new output
10367 section to corresponding input section. This is required for
10368 shared library support.
10369 (lang_size_sections): don't modify vma and size of sections which
10370 are never loaded (for shared libraries).
10371 ldwrite.c (copy_and_relocate): copy the contents of any section
10372 which has contents, not just sections which are loaded (for shared
10373 libraries).
10374
10375 Thu Oct 15 15:20:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10376
10377 * ldlang.c (size_input_section): count the sizes of all sections
10378 we allocate.
10379
10380 Thu Oct 8 09:05:25 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10381
10382 * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to
10383 to demangle symbols better
10384
10385 Tue Oct 6 13:08:54 1992 Ian Lance Taylor (ian@cygnus.com)
10386
10387 * ldlang.c (lang_finish): don't warn if -e start symbol does not
10388 exist when linking with -r.
10389
10390 Mon Oct 5 14:07:37 1992 Ian Lance Taylor (ian@cygnus.com)
10391
10392 * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
10393 .bss segment.
10394
10395 Mon Oct 5 08:55:14 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10396
10397 * ldmain.c (linear_library): don't even think about processing
10398 an object file if it's already been done
10399
10400 Thu Oct 1 23:14:59 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10401
10402 * configure.in: the hp9000/300 config file is now hp300
10403
10404 Wed Sep 30 07:34:09 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10405
10406 * config/z8ksim.mt: new file
10407
10408 Fri Sep 25 13:49:52 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
10409
10410 * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
10411 lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
10412
10413 * ld.h (strip_symbols_type): Add value STRIP_SOME.
10414 * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
10415 * ldlang.c (lang_add_keepsyms_file): New function.
10416 * ldlex.l: Handle "-retain-symbols-file".
10417 * ldsym.c (keepsyms_file, kept_syms): New vars.
10418 (process_keepsyms): New functihon; reads file, marks symbols for
10419 saving.
10420 (write_file_locals): File symbols should always be kept.
10421 (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
10422 and "-s". Process retain-symbols file before setting symtab.
10423 * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
10424 (keepsyms_file, kept_syms): Declare them.
10425
10426 * ldmain.c (main): Non-fatal errors should still cause non-zero
10427 exit status even with -r.
10428
10429 Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10430
10431 Added initial support for the z8k
10432 * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
10433 * configure.in, Makefile.in: modified to reflect above
10434
10435 * ldlang.c (lang_check): when linking conflicting architectures,
10436 make the output file reflect at least one of the bad inputs.
10437
10438 Tue Sep 15 15:35:38 1992 Ian Lance Taylor (ian@cygnus.com)
10439
10440 * Makefile.in (install): if $(tooldir) exists, install ld in
10441 $(tooldir)/bin.
10442
10443 Fri Sep 11 10:24:22 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10444
10445 * Makefile.in, configure.in: modified to support i386-coff
10446 * i386coff.sh: new file
10447
10448 Wed Sep 9 11:52:58 1992 Ian Lance Taylor (ian@cygnus.com)
10449
10450 * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
10451 added m68k-coff emulation mode, stolen from a29k emulation.
10452 Almost certainly wrong, but perhaps better than sun3.
10453
10454 Thu Sep 3 14:19:30 1992 Per Bothner (bothner@rtl.cygnus.com)
10455
10456 * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
10457 gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
10458 vanilla.em: Rename all (generated) ld__*.c files to em_.c.
10459 This is one character shorter, and lets people build on
10460 SVR3 system. (ld__h8300xray.[co] was the killer there;
10461 h8300xray.sc-sh is also overlong, but seems harmless.)
10462 Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
10463 * Makefile.in (clean): Fix typo mostclean -> mostlyclean.
10464 * configure.in: Add host isc.
10465
10466 * ldver.c: Call it version 2.0.
10467
10468 Wed Sep 2 00:21:33 1992 Per Bothner (bothner@rtl.cygnus.com)
10469
10470 * ldver.c: Bump to version 0.98.
10471 * TODO: New file.
10472
10473 * Makefile.in: Added mostlyclean, distclean, realclean rules.
10474
10475 Tue Sep 1 23:42:16 1992 Per Bothner (bothner@rtl.cygnus.com)
10476
10477 * ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
10478 * ldlex.l: Moved comment() to end, since some compilers
10479 otherwise have problems with input() used before it is defined.
10480
10481 Tue Sep 1 17:45:51 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10482
10483 * configure.in: added Solaris 2 and Irix 4 host support.
10484
10485 Mon Aug 31 19:27:11 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10486
10487 * Makefile.in: remove -S flag from the FLEX definition
10488
10489 * configure.in: rewrote, using new style case statement. use
10490 m68k.mt for m68k-aout systems
10491
10492 Sun Aug 30 21:38:53 1992 Ian Lance Taylor (ian@cygnus.com)
10493
10494 * Makefile.in: map "ld" through program_transform_name when
10495 installing.
10496
10497 Sun Aug 30 18:12:13 1992 Per Bothner (bothner@rtl.cygnus.com)
10498
10499 * cplus-dem.c: Removed. Use the version in libiberty now.
10500 * ldmisc.c: Use new libiberty version of cplus_demangle().
10501
10502 Thu Aug 27 16:38:42 1992 Ian Lance Taylor (ian@cygnus.com)
10503
10504 * gld960.em (gld960_choose_target): default to little endian, not
10505 big endian.
10506
10507 Wed Aug 26 17:28:51 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10508
10509 * ldlang.c (lang_process): don't pass null pointers when
10510 abs_output_section is what is required.
10511 * ldwrite.c (ldwrite): use malloc to allocate the largest space
10512 used, and pass that down.
10513 * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
10514 than alloca.
10515
10516 Mon Aug 24 14:42:06 1992 Ian Lance Taylor (ian@cygnus.com)
10517
10518 * configure.in, config/ose68.mt: renamed OSE to ose.
10519
10520 Thu Aug 20 19:55:22 1992 Ken Raeburn (raeburn@cygnus.com)
10521
10522 * ldsym.c (write_file_locals): Reorder check for common or
10523 undefined symbols so that it works.
10524
10525 Tue Aug 18 13:41:36 1992 Ian Lance Taylor (ian@cygnus.com)
10526
10527 * configure.in: accept all m68K family members.
10528
10529 * Makefile.in: always create installation directories.
10530
10531 Thu Aug 13 11:49:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10532
10533 * ldlex.l: now parses comment correctly, added ~ to acceptable
10534 chars in filenames
10535
10536 * ldexp.c (exp_unop): pass down abs_output_section - now can have
10537 unary -ve constants.
10538
10539 * ldlang.c (lang_finish): warn when an entry symbol supplied on
10540 the command line can't be found.
10541
10542 Fri Aug 7 12:31:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10543
10544 * ldlang.h: add new field "loadable" to output_section_statement.
10545 * ldlang.c (lang_output_section_statement_lookup): initilize new
10546 field. (wild_doit): if new field is not set, then stop output
10547 section from being loadable.
10548 (lang_enter_output_section_statement): set the field from the
10549 NOLOAD keyword
10550 * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
10551 * h8300hms.sc-sh, h8300hms.em: get -r right.
10552
10553 Thu Aug 6 18:35:21 1992 Per Bothner (bothner@rtl.cygnus.com)
10554
10555 * ldint.texinfo: New internals manual (beginnings thereof).
10556 * PORTING: Removed, merged into ldint.texinfo.
10557
10558 Tue Aug 4 21:12:29 1992 Per Bothner (bothner@rtl.cygnus.com)
10559
10560 * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
10561 cdtest.exp: A test program (copied from libg++/test-install)
10562 that tests that constructor and destructors are handled
10563 corrrectly.
10564
10565 Mon Aug 3 14:58:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10566
10567 * Makefile.in (install): install from ld.new, renaming during the
10568 copy, or else the next 'make install' needs to re-link ld.
10569
10570 Mon Jul 20 03:37:06 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
10571
10572 * configure.in: generalise hp recognition (from sef).
10573
10574 Sat Jul 18 14:46:04 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10575
10576 * configure.in: recognize bsd and hpux hppa configurations.
10577 error messages echo to stderr, not stdout
10578
10579 Fri Jul 17 22:06:11 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10580
10581 * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
10582 ldmisc.c: removed rcsid's.
10583
10584 Tue Jul 14 08:34:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10585
10586 * ldlang.c (lang_map): print changes in sizes due to relaxing
10587 (size_input_section): maintain the delta information.
10588 * ldlang.h: add new field to struct to contain delta info.
10589 * relax.c (relax_section): complain if input not relaxable.
10590 * ldlex.l : add '_', ',' and '$' to chars which can appear at the
10591 start of a filename
10592
10593 Mon Jul 13 17:33:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10594
10595 * ldmain.c(main): prevent -r and -relax from being on at the same
10596 time.
10597
10598 Wed Jul 1 17:51:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10599
10600 * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
10601 aliasing problems
10602
10603
10604 Thu Jun 18 09:38:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10605
10606 * h8300hms.em, h8300hms.sc-sh: do the right thing for -r
10607 * ldexp.c: lint
10608 * ldlang.c(open_output): set the target arch and machine as soon
10609 as we can. (lang_size_sections): use new macros for setting vma
10610 * ldwrite.c: lint
10611
10612 Mon Jun 15 08:47:43 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
10613
10614 * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
10615 Also deleted an unreachable path to wrs.
10616
10617 Wed May 27 23:24:19 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
10618
10619 * Makefile.in (install): use -d test for $tooldir before
10620 installing ld there so that $tooldir can be inherited from
10621 top-level Makefile.
10622
10623 Wed May 27 16:56:48 1992 Per Bothner (bothner@rtl.cygnus.com)
10624
10625 * ldlang.c: Two non-substantial changes for the sake of
10626 the old Portable C Compiler.
10627
10628 Wed May 27 15:15:58 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10629
10630 * ldgram.y, ldlex.l: parse ABSOLUTE
10631 * ldexp.c: add support for ABSOLUTE
10632
10633 Wed May 27 13:07:20 1992 Per Bothner (bothner@rtl.cygnus.com)
10634
10635 * Makefile.in: Added default definitions for HOSTING_CRT0,
10636 HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
10637 * config/*.mh: Miscellaneous clean-up: Removed definitions
10638 of YACC (since it is not longer used in the Makefile).
10639 Remove HOSTING_* definitions that are subsumed by the
10640 ones added to Makefile.in. Removed most definitions of CC.
10641 * config/{sparc,news,hp300bsd,decstation}.mh: Removed;
10642 These are no longer needed.
10643
10644 Fri May 22 13:47:19 1992 Per Bothner (bothner@cygnus.com)
10645
10646 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
10647 rules, since these are used when building a distribution.
10648 * Makefile.in (ldlex.c): Don't re-direct output, since that
10649 leaves a bogus output files if it fails.
10650
10651 * config/sparc.mh: Fix HOSTING_LIBS so it has a chance of working.
10652 * ldlex.c: Fix some unnecessary flex-specific-isms.
10653
10654 Fri May 8 11:49:43 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10655
10656 * ldgram.y: move spurious semicolon
10657 * ldexp.h: fix prototype
10658
10659 Thu May 7 17:01:12 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
10660
10661 * ld.texinfo: references to linker now say "ld" not "gld".
10662
10663 Wed May 6 13:26:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10664
10665 changed calling convention for Q_enter_global_ref
10666 * ldexp.c, ldlang.c, ldmain.c: reflect this
10667 * ldver.c: bump version to 1.97.1
10668 * ldindr.c (add_indirect): when an edict declaring an indirect
10669 symbol is found, make sure that any ideas about the symbol being
10670 common are changed if it now known to be defined.
10671 * ldmain.c (linear_library): complain once if archive isn't
10672 ranlibbed.
10673 * ldlang.h, ldlang.c: make room for and initialize the complain
10674 once field.
10675
10676 Wed May 6 11:07:35 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10677
10678 * Makefile.in: use flex & bison from ../ if they exist.
10679
10680 Tue May 5 17:47:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10681
10682 * relax.c (build_it): don't allocate space in the output file for
10683 stuff if -R flag applys to it.
10684 * ldfile.c: merge in VMS filename support
10685 * ldmain.c (main): take out ./ from library path, and close file
10686 before unlinking. Make multiple defs of a symbol create an
10687 unexecable file.
10688 * ldmisc.c: fatal errosrs delete output file
10689
10690 Tue May 5 14:05:05 1992 Per Bothner (bothner@rtl.cygnus.com)
10691
10692 * ldver.c: Increase version number to 1.97, for consistency
10693 with ../binutils.
10694
10695 Tue May 5 12:12:24 1992 K. Richard Pixley (rich@cygnus.com)
10696
10697 * Makefile.in: FLEX -> LEX.
10698
10699 * ld.texinfo: {} -> @{@}.
10700
10701 Mon May 4 17:52:41 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
10702
10703 * ld.texinfo: describe alternate, MRI-compatible linker scripts
10704 (and associated change in -c option, now used for these scripts)
10705
10706 Mon May 4 16:10:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10707
10708 * ldver.c: Bumped version to 1.96 - new release, resync with the
10709 bfd too #.
10710 * ldexp.c, ldlang.c: now build memory shape tree in obstacks
10711 rather than with raw malloc, makes it easier to track where memory
10712 is going.
10713 * ldsym.h, ldsym.c: create obstack for all global symbols too.
10714 * ldwrite.c (ldwrite): moved malloc so only used when needed.
10715 * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
10716
10717
10718 Fri May 1 18:17:52 1992 K. Richard Pixley (rich@cygnus.com)
10719
10720 * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
10721
10722 * Makefile.in: use bootstrap for check.
10723
10724 Fri May 1 13:03:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10725
10726 * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
10727 PUBLIC.
10728 * Makefile.in: now use flex, not lex
10729 * ldlex.l, ldlang.c, ldctor.c: lint
10730
10731 Wed Apr 22 12:48:42 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10732
10733 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
10734 different sorts of filenames on the command line than in a script.
10735
10736 Mon Apr 20 22:37:04 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10737
10738 * Makefile.in: rework CFLAGS so that they can be passed on the
10739 make command line. Remove MINUS_G. Default CFLAGS to -g.
10740
10741 Fri Apr 17 08:57:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10742
10743 * relax.c: added handling for new "padding" seclet type, used to
10744 fill out gaps between section.
10745 * ldgram.y, ldlex.l: now -defsym on the command line is done
10746 properly.
10747
10748 Wed Apr 15 21:20:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10749
10750 * Makefile.in: the tooldir copy of ld goes directly in tooldir.
10751
10752 Wed Apr 15 16:09:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10753
10754 * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
10755 scripts.
10756
10757 Thu Apr 9 05:52:02 1992 Ken Raeburn (Raeburn@Cygnus.COM)
10758
10759 * Makefile.in (install): Install second copy in $(tooldir)/bin
10760 without $(program_prefix), since that's what gcc expects.
10761
10762 Sat Apr 4 17:44:06 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10763
10764 * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer.
10765 * h8300*: fix bit rot and add support for h8300xray target
10766 * go32.sh: target emulation for go32.
10767
10768 Mon Mar 16 14:53:29 1992 Steve Chamberlain (sac@rtl.cygnus.com)
10769
10770 * gld960.em, i960.sc-sh. Fix i960 bit rot
10771
10772 Fri Mar 13 19:47:22 1992 K. Richard Pixley (rich@cygnus.com)
10773
10774 * Makefile.in: install man page.
10775
10776 Fri Mar 13 08:23:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10777
10778 * config/mt-<foo> renamed to <foo>.mt
10779 * config/mh-<foo> renamed to <foo>.mt
10780 * configure.in changed to reflect this
10781 * genscripts.sh now make .xbn files rather than .xN files
10782
10783 Sat Mar 7 03:40:40 1992 K. Richard Pixley (rich@cygnus.com)
10784
10785 * ldver.h: fix decl of ldversion.
10786
10787 Fri Mar 6 22:00:35 1992 K. Richard Pixley (rich@cygnus.com)
10788
10789 * Makefile.in: added check target.
10790
10791 Fri Mar 6 06:59:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10792
10793 * ldmain.c (Q_enter_file_symbols): now aliases work again
10794
10795 Thu Mar 5 21:39:29 1992 K. Richard Pixley (rich@cygnus.com)
10796
10797 * Makefile.in: added clean-info target.
10798
10799 Thu Mar 5 16:55:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10800
10801 * ldexp.c (exp_print_tree): don't try and follow null pointers
10802 around.
10803 * ldgram.y: remove 11 shift reduce errors
10804
10805 Tue Mar 3 15:46:39 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10806
10807 * Makefile.in: added tooldir and program_prefix.
10808
10809 Fri Feb 28 08:17:45 1992 Steve Chamberlain (sac at thepub.cygnus.com)
10810
10811 * ldlang.c (size_input_section): don't move absolute sections
10812 around!
10813
10814
10815 Thu Feb 27 09:20:41 1992 Steve Chamberlain (sac at thepub.cygnus.com)
10816
10817 * cplus-dem.c: yet another copy of this - maybe it should go into
10818 libiberty ?
10819 * ldgram.y: now -V and -v have different actions
10820 * ldver.c: if -V, prints list of emulations compiled in
10821 * ldmisc.c: support for cplus demangling
10822
10823
10824 Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
10825
10826 * Makefile.in, configure.in: removed traces of namesubdir,
10827 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
10828 copyrights to '92, changed some from Cygnus to FSF.
10829
10830 Thu Feb 20 17:43:46 1992 Per Bothner (bothner at cygnus.com)
10831
10832 * Makefile.in: Change mkscript rule into one for ./mkscript
10833 (for the sake of makes that don't realize they're the same).
10834 * PORTING: Add more details.
10835 * genscripts.sh: Add more tailorability of DATA_ALIGNMENT.
10836
10837 Mon Feb 17 12:04:36 1992 Per Bothner (bothner at cygnus.com)
10838
10839 * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
10840 config/mt-hp300bsd: New port to hp300 running BSD.
10841
10842 Sat Feb 15 13:59:54 1992 Per Bothner (bothner at cygnus.com)
10843
10844 Major rewrite of how ld is configured. The major idea
10845 is to use shell scripts to generate everything.
10846 * generic.em replaces ldtemplate.
10847 * Other *.em files replace various *.c files.
10848 A *.em file is a shell script that generates the corresponding
10849 ld__*.c file that implements an emulation. This is usually
10850 a straight 'cat' of a here-document, possibly with substitutions.
10851 * Script files (*.sc) are places by *.sc-sh scripts.
10852 Again, these are simple shell scripts that 'cat'
10853 here-documents, usually with some substitutions.
10854 The output a *.sc-sh is a script file.
10855 * Each emulation is defined by a short shell script with
10856 extension *.sh that specifies the emulation-specific
10857 parameters (such as the name of the *.sh-sc and *.em
10858 files to use).
10859 * genscript.sh is the master shell script used to generate
10860 an emulation. It is passed various argument, including
10861 the name a the emulation-speciic *.sh file that it
10862 "sources" to set variables to emulation-specifc parameters.
10863 * config/mt-foo: Changed EMUL=GLDFOO_EMULATION_NAME
10864 to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
10865 * config/mh-foo: Rename LDEMULATION names as appropriate
10866 (usually 'gldfoo' -> plain 'foo').
10867 * ldwrite.c: Fixed a typo in a comment.
10868 * Makefile.in: Major changes. Removed some the sed
10869 magic to converts scripts, since that is now handled
10870 by genscripts.sh and the *.sc-sh scipt generators.
10871 * config.h: Remove a bunch of macros defining emulations
10872 and targets. This becomes one less file to edit when
10873 adding emulations or targets.
10874 * ldemul.h (struct ld_emulation_xfer_struct): Add
10875 emulation_name and target_name fields.
10876 * ldemul.c, ldemul.h: Define some default functions used
10877 by most emulations (and remove from the *.em scripts).
10878 * ldemul.c (ldemul_choose_target): Search the new
10879 ld_emulations array using a loop (instead of a hardwired
10880 nested if statement).
10881 Define the ld_emulation from the automatically-geenrated
10882 ldemul-list.h. This means you no longer have to edit ldemul.c
10883 to add a new emulation.
10884 * ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
10885 their expansions, since the former no longer exist.
10886 * PORTING: A very rough first draft of a porting guide.
10887
10888 * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
10889 to be terminated by a new-line (instead of requiring a semicolon).
10890
10891 Mon Feb 10 16:21:02 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10892
10893 * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
10894 tests for NULL pointers all over the place.
10895 * ldlang.c (lang_process): remember to relocate global symbols
10896 *after* relaxing has done it stuff.
10897
10898 Thu Feb 6 11:40:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10899
10900 * config/mt-coff-h8300: use EMUL like everything else
10901 * ldlang.c: (print_padding_statement): print the right address.
10902 * Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
10903
10904
10905 Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10906
10907 * ldlex.l: Put pack -noinhibit-exec and -sort-common
10908 * ldlang.c (print_data_statement): print the right address.
10909
10910 Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
10911
10912 * Makefile.in: The rule for testing ld by re-linking itself
10913 via an intermediate -r link was moved to the ld1 rule
10914 instead of the ld2 rule. This allows ld2 and ld3 to be identical,
10915 which allows the bootstrap rule to work.
10916 * ldctor.c (find_constructors): Don't create a constructor
10917 list if it is already defined (as would happen if ld is
10918 invoked by collect).
10919
10920 Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10921
10922 * config/mh-sparc.h: now uses libgcc.a
10923 * ldmain.c: quit using exit
10924 * *sc: use *(COMMON) rather than [COMMON]
10925 * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
10926 to allow preprocessing of .l file.
10927 * Makefile.in: New ldlex.l mangling
10928 * ldexp.c (fold_binary): perform expressions with % and / in
10929 integer.
10930 * ldfile.c (open_a): open archives on VMS in a special way
10931
10932
10933 Tue Jan 28 10:18:16 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10934
10935 * ldgram.y: map -M behave in the same way as -Map (sets file name
10936 to be "-".
10937 * ldsym.c, ldlang.c: remember that size of a section is dependent on
10938 whether or not relaxing has been done.
10939 * ldmain.c: don't open a map file if it doesn't have a name
10940 * relax.c: all the brains have moved into bfd.
10941 * ldwrite.c: ammend comment
10942
10943 Fri Jan 24 14:23:46 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10944
10945 * Makefile.in: added relax, also made three stage go through a
10946 partial link stage.
10947 * relax.c : added
10948 * config.h: if GNU960 defined, then default emulation mode is
10949 GLD960
10950 * ldexp.h, ldexp.c: map to file hooks
10951 * ldlang.c: map to file hooks
10952 * ldgram.y: added -Map -relax
10953 * ldlex.l: added -relax, -Map
10954 * ldmain.c: open map file
10955 * ldmisc.c: support for map file
10956 * ldwrite.c: new relax magic
10957
10958 Thu Dec 19 18:49:51 1991 John Gilmore (gnu at cygnus.com)
10959
10960 * Makefile.in, config/tm-*.h: Clean up make output, only
10961 pass DEFAULT_EMULATION to ldmain.c.
10962
10963 Wed Dec 18 15:02:47 1991 Per Bothner (bothner at cygnus.com)
10964
10965 * ldver.c: Bump to version 1.94.
10966
10967 Tue Dec 10 04:07:23 1991 K. Richard Pixley (rich at rtl.cygnus.com)
10968
10969 * Makefile.in: infodir belongs in datadir.
10970
10971 Mon Dec 9 16:26:43 1991 Per Bothner (bothner at cygnus.com)
10972
10973 * Makefile.in: Pass -y to bison. (Again;
10974 accidentally deleted by Rich.)
10975 * news.sc, ldgld68k.sc: Define __end as well as _end.
10976
10977 Sat Dec 7 17:19:26 1991 Steve Chamberlain (sac at rtl.cygnus.com)
10978
10979 * ldindr.h: added to contain prototypes of ldindr.c
10980 * ldfile.c: include ctype.h
10981 * ldmain.c: include the requried prototype headers
10982 * ldwrite.c: get_reloc_upper_bound has been renamed
10983 bfd_get_reloc_upper_bound
10984
10985 Fri Dec 6 23:29:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
10986
10987 * Makefile.in: punt "fundamental" mode because it breaks my emacs
10988 macros. install using INSTALL_PROGRAM and INSTALL_DATA. remove
10989 spaces following hyphens, bsd make can't cope. added
10990 standards.text support and made it look like all the other
10991 makefiles.
10992
10993 * configure.in: configure now runs entirely in objdir so make file
10994 existence checks against ${srcdir}. Mark this directory as
10995 target dependent.
10996
10997 Thu Dec 5 22:46:16 1991 K. Richard Pixley (rich at rtl.cygnus.com)
10998
10999 * Makefile.in: idestdir and ddestdir go away. Added copyrights
11000 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
11001 and mandir now keyed off datadir by default.
11002
11003 Wed Dec 4 23:36:55 1991 Per Bothner (bothner at cygnus.com)
11004
11005 * ldver.c: Bumped version to 1.93.
11006 * Makefile.in: Pass -y to bison.
11007
11008 Mon Nov 25 18:28:40 1991 Steve Chamberlain (sac at cygnus.com)
11009
11010 * config.h: h8 is now coff, not ieee
11011 * h8300hds.sc: reflect the same
11012
11013 Thu Nov 14 19:55:09 1991 Per Bothner (bothner at cygnus.com)
11014
11015 * ldver.c (ldversion()): Update to 1.92.
11016 * ldctor.c: There are two places constructor sets
11017 can be defined. One of them checked for an existing
11018 duplicate, the other didn't. Unfortunately, the latter
11019 was called after the former ...
11020 So, factor out code for inserting a new element into
11021 constructor_name_list (after checking for a duplicate)
11022 into a new function add_constructor_name, and call
11023 it from both aforementioned places (ldlang_add_constructor
11024 and ldlang_check_for_constructors).
11025
11026 Wed Nov 13 15:17:43 1991 Per Bothner (bothner at cygnus.com)
11027
11028 * Makefile.in: Rename .c files generated from ldtemplate
11029 to have names starting with ld__. This helps 'make clean'.
11030
11031 Tue Nov 12 18:36:50 1991 Steve Chamberlain (sac at cygnus.com)
11032
11033 * Makefile.in: Take out the version number for install
11034 * m88kbcs.sc: put in contructor blocks.
11035
11036 Mon Nov 11 18:47:33 1991 Per Bothner (bothner at cygnus.com)
11037
11038 * ldmisc.c, ldmisc.h: Re-write info() to take a filename
11039 parameter, a format, and an arg pointer, and rename it to
11040 vfinfo(). Write info() in terms of new vfinfo().
11041 New einfo() is the same as info(), except it writes to stderr.
11042 * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
11043 ldmisc.c: Replace "error" calls to info() by new einfo().
11044
11045 Mon Nov 11 09:57:32 1991 Steve Chamberlain (steve at cygnus.com)
11046
11047 * ldlex.l ldgram.y: made -V option do same as -v
11048 * Makefile.in: Added $(MINUS_G) flag so debugging can be
11049 turned off
11050
11051 Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
11052 i386 aout changes from Bob Kukura
11053 * Makefile.in, config.h: added i386aout support
11054 * configure.in: fixed /h-{myhost} typo
11055 * ldgram.y: -MM now gives more boring map.
11056 * ldlang.c: now does D_PAGED flag the right way.
11057 * ldsym.c: -MM flags does the right thing.
11058
11059 Sun Nov 3 15:00:03 1991 Per Bothner (bothner at cygnus.com)
11060
11061 * configure.in: Fixed typo. Also, a fix for hp300bsd.
11062 * ldlang.c (init_os): Compensate for BFD change,
11063 where bfd_make_section now returns NULL for a duplicate
11064 section request, instead of the old section.
11065
11066 Thu Oct 17 15:27:13 1991 Per Bothner (bothner at cygnus.com)
11067
11068 * ldver.c: Bump to version 1.91 (consistent with binutils).
11069
11070 Wed Oct 16 12:27:08 1991 Per Bothner (bothner at cygnus.com)
11071
11072 * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
11073 ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
11074 ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
11075 ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
11076 Add or update copyright notices.
11077
11078 Mon Oct 14 23:55:27 1991 Per Bothner (bothner at cygnus.com)
11079
11080 * README: New file.
11081 * Makefile.in: Changed installation directory name scheme
11082 to be consistent with gcc. Also changed 'install'.
11083
11084 Mon Oct 14 17:30:02 1991 Roland H. Pesch (pesch at cygnus.com)
11085
11086 * Makefile.in: new targets ld.mm, ld.me
11087
11088 Mon Oct 14 17:27:24 1991 Per Bothner (bothner at cygnus.com)
11089
11090 * Makefile.in, ldtemplate: Need to use separate scripts
11091 for -n and -N options. Yet more complication.
11092
11093 Fri Oct 11 22:40:46 1991 John Gilmore (gnu at cygnus.com)
11094
11095 * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
11096 work). Add some lines to avoid Sun Make VPATH bugs.
11097
11098 Fri Oct 11 16:42:22 1991 Per Bothner (bothner at cygnus.com)
11099
11100 * news.sc: Add alignment for data segment.
11101 * ldtemplate: Add (yet another) script to get for -n or -N
11102 options. (These need different alignment than ZMAGIC files.)
11103 * Makefile.in: Add stuff for new foo.xn scripts.
11104 These are generated by replacing "ALIGN(0x...00)" by ".".
11105
11106 Fri Oct 11 15:43:04 1991 Roland H. Pesch (pesch at cygnus.com)
11107
11108 * Makefile.in: new targets ld.ms, ld-index.ms
11109 ld.texinfo: remove tabs, other cleanups for texi2roff
11110
11111 Fri Oct 11 13:51:54 1991 Per Bothner (bothner at cygnus.com)
11112
11113 * ldmain.c (main): Make config.magic_demand_paged be true
11114 by default. Don't set the WP_TEXT and D_PAGED flags of
11115 output_bfd here; it's too late, so set it when output_bfd
11116 is created (in ldlang.c). Also fix setting of EXEC_P flag
11117 * ldlang.c (ldlang_open_output): Set output_bfd->flags here.
11118 * ldlang.c: Remove some duplicate extern declarations.
11119 * ldgram.y: Fixes to -N and -n options.
11120 * Makefile.in: Recognize upper case letters in sed script
11121 to remove assignments from script files.
11122 * ldtemplate: Don't assukme that -N or -n options
11123 imply use of -r script.
11124 * mkscript.c: Tweaking to correctly handle \n and \\ in input.
11125
11126 Fri Oct 11 10:29:27 1991 Steve Chamberlain (steve at cygnus.com)
11127
11128 * ldtemplate: include bfd.h before sysdep.h.
11129
11130 Fri Oct 11 04:24:45 1991 John Gilmore (gnu at cygnus.com)
11131
11132 Restructure configuration scheme for bfd, binutils, ld.
11133
11134 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
11135 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
11136 Change some config names to match other dirs.
11137 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
11138 get defined first.
11139 * config/: Rename some config files to match up h-*.h names.
11140 Remove all the HOST_SYS definitions from the config files.
11141
11142 Tue Oct 8 16:00:57 1991 Per Bothner (bothner at cygnus.com)
11143
11144 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
11145 * ldtemplate: Remove ldfile_add_library_path calls;
11146 just use the SEARCH_DIR commands in the script files.
11147 * Makefile.in: Add LIB_PATH macro, which if set is used to replace
11148 the SEARCH_DIR commands in the scripts (using ugly sed magic).
11149 This is primarily intended for cross-linking, where you would
11150 place libaries in a different place than native libraries.
11151 Also, emulations made from ldtemplate now use $(srcdir).
11152 * ldglda29k.sc: Change SEARCH_DIR commands to a conventional
11153 form; people can use the Makefile's LIB_PATH to override.
11154
11155 Tue Oct 8 14:51:21 1991 Roland H. Pesch (pesch at cygnus.com)
11156
11157 * Makefile.in: fix target ld.dvi, add target ld.info
11158 ld.texinfo: make info filename ld.info
11159
11160 Fri Oct 4 21:51:58 1991 John Gilmore (gnu at cygnus.com)
11161
11162 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun
11163 Make).
11164 * ldfile.c, ldlang.c, ldmain.c, ldwrite.c: Cope with renames of a
11165 few BFD types & enums.
11166
11167 \f
11168 Local Variables:
11169 mode: change-log
11170 left-margin: 8
11171 fill-column: 74
11172 version-control: never
11173 End:
This page took 0.325316 seconds and 5 git commands to generate.