2000-11-13 H.J. Lu <hjl@gnu.org>
[deliverable/binutils-gdb.git] / ld / ChangeLog
CommitLineData
2e418547
PB
12000-11-09 Philip Blundell <pb@futuretv.com>
2
3 * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
4 around orphan sections whose names can be represented in C.
5
c940e6fc
JW
62000-11-07 Jim Wilson <wilson@redhat.com>
7
8 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
9 hold_sdata. If SEC_SMALL_DATA set, set place to hold_sdata.
10
704c465c
NC
112000-11-06 Nick Clifton <nickc@redhat.com>
12
13 * ld.texinfo: Add GNU Free Documentation License.
14 * ldint.texinfo: Add GNU Free Documentation License.
cf055d54 15 * ld.1: Add GNU Free Documentation License.
704c465c 16
dca7760f
AM
172000-11-05 Alan Modra <alan@linuxcare.com.au>
18
19 * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
20 yy_is_interactive, yy_at_bol, and yy_fill_buffer.
21
22 * Makefile.am (DISTCLEANFILES): Add stringify.sed.
23 Move 2000-11-02 Makefile.in changes to this file.
24 * Makefile.in: Regenerate.
25
40a633d5
NC
262000-11-03 Nick Clifton <nickc@redhat.com>
27
28 * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
29 constructors and destructors.
30 * scripttempl/h8300h.sc: Ditto.
31 * scripttempl/h8300s.sc: Ditto.
32 * scripttempl/h8500.sc: Ditto.
33 * scripttempl/h8500b.sc: Ditto.
34 * scripttempl/h8500c.sc: Ditto.
35 * scripttempl/h8500m.sc: Ditto.
36 * scripttempl/h8500s.sc: Ditto.
37 * scripttempl/v850.sc: Ditto.
38 * scripttempl/w65.sc: Ditto.
39 * scripttempl/z8000.sc: Ditto.
40
59ff2774
NC
412000-11-02 Per Lundberg <plundis@chaosdev.org>
42
43 * Makefile.in (e_i386_chaos.c): New rule.
44 (ALL_EMULATIONS): Added e_i386_chaos.o.
45 * emulparams/elf_i386_chaos.sh: New file.
46 * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
47
645571e1
JJ
482000-10-20 Jakub Jelinek <jakub@redhat.com>
49
50 * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
51 NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
52 Fix sed invocation, so that it coped with '/' in Solaris 64bit
53 library path suffix.
54 Based on patch by Andrew Macleod <amacleod@cygnus.com>.
55
c5975a45
HPN
562000-10-18 Hans-Peter Nilsson <hp@axis.com>
57
58 * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
59 for consecutive sections.
60
ea20a7da
CC
612000-10-17 Chandrakala Chavva <cchavva@redhat.com>
62
63 * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
64 options.
65 * ld.texinfo: Added notes about this new option.
66
6e45556a
NC
672000-10-16 Nick Clifton <nickc@redhat.com>
68
69 * emultempl/pe.em (_after_open): Add tests of return values from
70 bfd functions. Emit appropriate error messages if necessary.
71
b9a69188
NC
722000-10-13 Nick Clifton <nickc@redhat.com>
73
74 * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
102c86f8
NC
75 local variables - they are not used, but leave in the call to
76 bfd_canonicalize_symtab.
b9a69188
NC
77 (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
78 pe_dll_search_prefix.
79
627427de
DD
802000-10-12 Charles Wilson <cwilson@ece.gatech.edu>
81
82 * emultempl/pe.em (pe_dll_search_prefix): New variable,
83 (longopts): New --dll-search-prefix option.
84 (gld_${EMULATION_NAME}_list_options): Document.
85 (gld_${EMULATION_NAME}_parse_args): Handle.
86 (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
87 dynamically, search for a dll named '<prefix><basename>.dll'
88 in preference to 'lib<basename>.dll' if --dll-search-prefix
89 is specified.
90
24376d1b
AM
912000-10-12 Alan Modra <alan@linuxcare.com.au>
92
93 * ldlang.c (section_already_linked): Set kept_section instead of
94 sec->comdat->sec.
95
e47d05ad
KH
962000-10-10 Kazu Hirata <kazu@hxi.com>
97
98 * deffile.h: Fix formatting.
99 * lexsup.c: Likewise.
100 * mri.c: Likewise.
101
23a87948
DD
1022000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
103
104 * pe-dll.c (make_one): Do not generate code thunk for DATA
105 exports.
106 (process_def_file): deduce DATA flag for auto-export sumbols.
107
86b1cc60
KH
1082000-10-09 Kazu Hirata <kazu@hxi.com>
109
89cdebba
KH
110 * ld.h: Fix formatting.
111 * ldcref.c: Likewise.
112 * ldctor.h: Likewise.
113 * ldemul.c: Likewise.
114 * ldemul.h: Likewise.
115 * ldexp.c: Likewise.
116 * ldexp.h: Likewise.
117 * ldfile.c: Likewise.
118 * ldfile.h: Likewise.
119 * ldlang.c: Likewise.
120 * ldlang.h: Likewise.
121 * ldmain.c: Likewise.
7bfd51a3
KH
122 * pe-dll.c: Likewise.
123
124 * pe-dll.c: Revert some formatting fixes.
86b1cc60 125
d643799d
KH
1262000-10-08 Kazu Hirata <kazu@hxi.com>
127
128 * pe-dll.c: Fix formatting.
129
08da4cac
KH
1302000-10-05 Kazu Hirata <kazu@hxi.com>
131
132 * ldlang.c: Fix formatting.
133
c2a94a7a
DD
1342000-10-03 DJ Delorie <dj@redhat.com>
135
136 * pe-dll.c (fill_edata): initialize entire block
137 (make_one): fill in correct section.
138
8c95a62e
KH
1392000-10-03 Kazu Hirata <kazu@hxi.com>
140
141 * ldexp.c: Fix formatting.
142
486e80e2
DD
1432000-10-02 DJ Delorie <dj@redhat.com>
144
145 * emultempl/pe.em (gld_*_after_open): detect case where there two
146 import libraries for same dll; rename one to ensure proper link
147 order.
148
149 * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
150 typo
151 (generate_edata): fix typo
152
24dd9f75
HPN
1532000-09-29 Hans-Peter Nilsson <hp@axis.com>
154
155 * scripttempl/crisaout.sc (ENTRY): Now __start.
156 (.text): Add default setting for __start.
157 Remove CONSTRUCTORS handling.
158 (/DISCARD/): Add .gnu.warning.*.
159 * emulparams/crislinux.sh (ENTRY): Now __start.
160 (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
161 * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
162 (ENTRY): Now __start.
163 (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
164 (EXECUTABLE_SYMBOLS): Add default setting for __start.
165
4de2d33d
KH
1662000-09-29 Kazu Hirata <kazu@hxi.com>
167
5cc18311
KH
168 * deffile.h: Fix formatting.
169 * ld.h: Likewise.
170 * ldcref.c: Likewise.
4de2d33d 171 * ldctor.c: Likewise.
5cc18311 172 * ldctor.h: Likewise.
4de2d33d 173 * ldemul.c: Likewise.
5cc18311 174 * ldemul.h: Likewise.
4de2d33d 175 * ldexp.c: Likewise.
5cc18311 176 * ldexp.h: Likewise.
4de2d33d 177 * ldfile.c: Likewise.
5cc18311 178 * ldfile.h: Likewise.
4de2d33d 179 * ldlang.c: Likewise.
5cc18311
KH
180 * ldlang.h: Likewise.
181 * lexsup.c: Likewise.
182 * mri.c: Likewise.
183 * pe-dll.c: Likewise.
4de2d33d 184
45b1f63c
DD
1852000-09-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
186
187 * pe-dll.c (process_def_file): Uninitialized data wasn't
188 exported with --export-all-symbols switch.
189
1902000-09-28 DJ Delorie <dj@redhat.com>
191
192 * pe-dll.c (fill_edata): rearrange the data so that ordinals and
193 noname work properly.
194
47d89dba
AM
1952000-09-28 Alan Modra <alan@linuxcare.com.au>
196
197 * ld.texinfo (HPPA ELF32): New section.
198
199 * emultempl/hppaelf.em (group_size): New.
200 (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
201 (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
202 (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size. Duplicate
203 options to prevent abbreviations matching.
204 (PARSE_AND_LIST_OPTIONS): Describe the above. Reformat.
205 (PARSE_AND_LIST_ARGS_CASES): Handle it.
206
36bdbeec
NC
2072000-09-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
208
209 * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
210 on the m68*-*-elf target. Make it support COFF input objects.
211
6d5e62f8
KH
2122000-09-21 Kazu Hirata <kazu@hxi.com>
213
214 * ldmain.c: Fix formatting.
215 * ldmisc.c: Likewise.
216 * ldver.c: Likewise.
217 * ldwrite.c: Likewise.
218
e2eb67d9
AM
2192000-09-21 Alan Modra <alan@linuxcare.com.au>
220
221 * ldwrite.c (clone_section): Silence gcc warnings.
222
b3ea3584
AM
2232000-09-20 Alan Modra <alan@linuxcare.com.au>
224
225 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
226 out of memory failure.
227
228 * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
229 (clone_section): Handle out of memory failures. Rename var to
230 avoid c++ reserved word.
231
25f72752
AM
2322000-09-18 Alan Modra <alan@linuxcare.com.au>
233
234 * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
235 stub_name param to stub_sec_name.
236 (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
237
0752970e
NC
2382000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
239
240 * emultempl/m68kelf.em: New file.
241 * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
242 * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
243 * Makefile.in: Regenerate.
244
92b7e9d8
AM
2452000-09-15 Alan Modra <alan@linuxcare.com.au>
246
247 * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
248 only as needed.
249
9b14b192
NC
2502000-09-13 Nick Clifton <nickc@redhat.com>
251
252 * ldmain.c (multiple_definition): Disable relaxation if
253 multiple symbol definitions are encountered - otherwise the
254 linker could abort with an assertion failure.
255
891fa266
NC
2562000-09-10 Nick Clifton <nickc@redhat.com>
257
258 * mri.c: Fix formatting.
259
5d64ca4e
L
2602000-09-07 H.J. Lu <hjl@gnu.org>
261
262 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
263 * configure: Rebuild.
264
dd94604f
L
2652000-09-07 H.J. Lu <hjl@gnu.org>
266
267 * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
268 * Makefile.in: Rebuild.
269
71bfc0ae
AM
2702000-09-07 Alan Modra <alan@linuxcare.com.au>
271
272 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
273 broken list handling. Create __start_SECNAME and __stop_SECNAME
274 when no place-holder. Add some comments. Test both SEC_CODE and
275 SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
ed15ac6a 276 Handle case where no output section statement created.
71bfc0ae 277
4a428502
AO
2782000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
279
280 * configure.tgt (sh-*-linux*): Added.
281 * Makefile.am: Added eshelf_linux and eshlelf_linux.
282 * Makefile.in: Rebuilt.
283 * emulparams/shelf_linux.sh: New file.
284 * emulparams/shlelf_linux.sh: New file.
285
f9989030
AM
2862000-09-06 Alan Modra <alan@linuxcare.com.au>
287
288 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
289 try shuffling sections when the orphan happens to be the place
290 holder. Keep count of unique section names generated so we speed
291 the search for a new name.
292
58cccadb
AO
2932000-09-06 Alexandre Oliva <aoliva@redhat.com>
294
295 * configure: Rebuilt with new libtool.m4.
296
5b343f5a
NC
2972000-09-05 Nick Clifton <nickc@redhat.com>
298
299 * Makefile.in: Regenerate.
300 * aclocal.m4: Regenerate.
301 * configure: Regenerate.
302 * config.in: Regenerate.
303 * po/ld.pot: Regenerate.
304
305 * ldint.texinfo: Remove CVS revision marker - it foils local
306 comparisons.
307
308 * emultempl/ticoff.em: Remove extraneous comma.
50bbae35 309
a854a4a7
AM
3102000-09-05 Alan Modra <alan@linuxcare.com.au>
311
3231d22e
AM
312 * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
313 to stub section flags.
314 (hppa_for_each_input_file_wrapper): New.
315 (hppa_lang_for_each_input_file): New.
316 (lang_for_each_input_file): Define to call above.
317 (multi_subspace): New.
318 (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
319 (PARSE_AND_LIST_PROLOGUE): Define.
320 (PARSE_AND_LIST_LONGOPTS): Define.
321 (PARSE_AND_LIST_OPTIONS): Define.
322 (PARSE_AND_LIST_ARGS_CASES): Define.
323 (hppaelf_finish): Call elf32_hppa_set_gp.
324 (hppaelf_set_output_arch): Remove.
325 (LDEMUL_SET_OUTPUT_ARCH): Remove.
326
327 * emulparams/hppalinux.sh (ELFSIZE): Define.
328 (MACHINE): Define.
329 (OTHER_READONLY_SECTIONS): Define.
330 (DATA_PLT): Define.
331 (GENERATE_SHLIB_SCRIPT): Define.
332
5f992e62
AM
333 * ldlang.c: Add missing prototypes, and tidy others. Change CONST
334 to const throughout. Change `void *' to `PTR' throughout.
335 (lang_memory_default): Function is local to file, add `static'.
336
337 * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
338 (ehppalinux.c): Likewise.
339 (earmelf.c): Likewise.
340 (earmelf_linux.c): Likewise.
341 (earmelf_linux26.c): Likewise.
342 * Makefile.in: Regenerate.
343
a854a4a7
AM
344 * ld.h (ld_config_type): Add unique_orphan_sections.
345 * lexsup.c (OPTION_UNIQUE): Define.
346 (ld_options): Add "--unique".
347 (parse_args): Handle it.
348 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
349 search for an existing output section if unique_orphan_sections is
350 set. Make use of bfd_get_unique_section_name rather than
351 duplicating code here.
352 * ld.texinfo: Describe --unique.
353
354 * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
355 optional arg to split-by-file.
356 (parse_args): Handle them.
357 * ld.texinfo: Update description of these options.
358 * ldwrite.c (clone_section): Pass in the section name. Replace
359 local code with bfd_get_unique_section_name.
360 (split_sections): Tidy code and comments. Use a list traversal
361 more appropriate to the list construction. Handle cooked section
362 sizes. Split when split_by_reloc reached rather than exceeded.
363 Track section size and split when split_by_file reached. Fix
364 link_order_tail (even though it's not used).
365 (ldwrite): Modify condition for calling split_sections to suit
366 changed split_by_reloc and split_by_file.
367 * ldmain.c (main): Init config.split_by_reloc and
368 config.split_by_file to -1.
369 * ld.h (ld_config_type): Change split_by_reloc to unsigned.
370 Change split_by_file to bfd_size_type.
371
18e03609
NC
3722000-09-02 Nick Clifton <nickc@redhat.com>
373
374 * configure.in: Increase version number to 2.10.91.
375 * NEWS: Mention new ability to support removal of duplicate DWARF2
376 debug information.
377 * configure: Regenerate.
378 * aclocal.m4: Regenerate.
379 * config.in: Regenerate.
380
3a9d486c
NC
3812000-09-02 Daniel Berlin <dberlin@redhat.com>
382
383 * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
384 sections.
385 * scripttempl/elf32var.sc: Ditto.
386 * scripttempl/elfd10v.sc: Ditto.
387 * scripttempl/elfd30v.sc: Ditto.
388 * scripttempl/elfi370.sc: Ditto.
389 * scripttempl/elfm68hc11.sc: Ditto.
390 * scripttempl/elfm68hc12.sc: Ditto.
391 * scripttempl/elfi386beos.sc: Ditto.
392 * scripttempl/v850.sc: Ditto.
50bbae35 393
ac48eca1
AO
3942000-08-31 Alexandre Oliva <aoliva@redhat.com>
395
396 * acinclude.m4: Include libtool and gettext macros from the
397 top level.
398 * aclocal.m4, configure: Rebuilt.
399
c13b1b77
NC
4002000-08-25 Nick Clifton <nickc@redhat.com>
401
402 * ldlang.c (open_output): When choosing the target for a
403 particular endianness, do nothing if the target is not
404 supported.
405
dcb0bd0e
L
4062000-08-25 H.J. Lu <hjl@gnu.org>
407
408 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
409 check -rpath nor LD_RUN_PATH for cross link.
410 * ld.texinfo: Document the change.
411
5bcac8a4
HPN
4122000-08-24 Hans-Peter Nilsson <hp@axis.com>
413
414 * NEWS: Mention support for CRIS.
415
6dd8c765
L
4162000-08-23 H.J. Lu <hjl@gnu.org>
417
418 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
419 the current runpath list from bfd_elf_get_runpath_list ()
420 before search.
421
ec4eb78a
L
4222000-08-22 H.J. Lu <hjl@gnu.org>
423
424 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
425 the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
426 LD_LIBRARY_PATH for native linker. Display the needed DSO if
427 trace_file_tries is non-zero.
428 (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
429 if trace_file_tries is non-zero.
430
431 * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
a8175964 432 * NEWS: Mention it.
ec4eb78a 433
22b36938
JE
4342000-08-14 Jason Eckhardt <jle@cygnus.com>
435
436 * NEWS: Mention i860 support.
437
d73e9da0
AS
4382000-08-14 Andreas Schwab <schwab@suse.de>
439
440 * scripttempl/elf.sc: Fix last change to use correct comment
50bbae35 441 syntax.
d73e9da0 442
9ac4db9c
GK
4432000-08-10 Geoff Keating <geoffk@cygnus.com>
444
445 * scripttempl/elf.sc: Add a comment giving the correspondence
446 between sections, per-datum sections, and linkonce sections. Make
447 the comment true even for .bss, .sdata, .sdata2, .sbss, and
448 .sbss2.
449
165589e4
JE
4502000-08-10 Jason Eckhardt <jle@cygnus.com>
451
452 * emulparams/elf32_i860.sh: New file.
453 * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
454 * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
455 (eelf32_i860.c): New rule.
456 * Makefile.in: Regenerate.
457
345a835d
NC
4582000-08-10 Nick Clifton <nickc@cygnus.com>
459
460 * emulparams/mipspe.sh (ENTRY): Add definition.
461
e374f1d9
NC
4622000-08-08 Peter Jeremy <peter.jeremy@alcatel.com.au>
463
464 * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
465 in error message.
466
236d5abf
NC
4672000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
468
469 * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
470 the final size of .bss section.
471 * scripttempl/elfm68hc12.sc: Likewise.
472
4b209b22
AM
4732000-08-04 Alan Modra <alan@linuxcare.com.au>
474
475 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
476 gld${EMULATION_NAME}_parse_args for consistency. Combine
477 lastoptind and prevoptind vars, and keep track of last optind.
478 (gld_${EMULATION_NAME}_list_options): Rename to
479 gld${EMULATION_NAME}_list_options.
480
28423a68
AM
4812000-08-03 Rodney Brown <RodneyBrown@pmsc.com>
482
483 * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
484 (i586-sco-sysv5uw7.1.0).
485
b2009ff7
L
4862000-07-27 H.J. Lu <hjl@gnu.org>
487
488 * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
489 (PARSE_AND_LIST_PROLOGUE): New.
490 (PARSE_AND_LIST_LONGOPTS): Likewise.
491 (PARSE_AND_LIST_OPTIONS): Likewise.
492 (PARSE_AND_LIST_ARGS_CASES): Likewise.
493 (PARSE_AND_LIST_EPILOGUE): Likewise.
494
04925e1e
AM
4952000-07-28 Alan Modra <alan@linuxcare.com.au>
496
41392f03
AM
497 * emultempl/armelf.em: Elide functions common to elf32.em,
498 ie. most of the file.
499 (arm_elf_after_open): New. Do arm specific things then call
500 gld${EMULATION_NAME}_after_open.
501 (arm_elf_before_allocation): New. Call
502 gld${EMULATION_NAME}_before_allocation then do arm specifics.
503 (PARSE_AND_LIST_PROLOGUE): Define.
504 (PARSE_AND_LIST_SHORTOPTS): Define.
505 (PARSE_AND_LIST_LONGOPTS): Define.
506 (PARSE_AND_LIST_OPTIONS): Define.
507 (PARSE_AND_LIST_ARGS_CASES): Define.
508 (LDEMUL_AFTER_OPEN): Define.
509 (LDEMUL_BEFORE_ALLOCATION): Define.
510 (LDEMUL_BEFORE_PARSE): Define.
511 (LDEMUL_FINISH): Define.
512
513 * emultempl/hppaelf.em: Similarly zap most of this file.
514 (hppaelf_add_stub_section): Prototype.
515 (hppaelf_layaout_sections_again): Prototype.
516 (hook_in_stub): Prototype.
517 (LDEMUL_SET_OUTPUT_ARCH): Define.
518 (LDEMUL_FINISH): Define.
519 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
520
521 * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
522 (EXTRA_EM_FILE): New.
523 * emulparams/armelf_linux.sh: Likewise.
524 * emulparams/armelf_linux26.sh: Likewise.
525 * emulparams/hppalinux.sh: Likewise.
526 * emulparams/hppaelf.sh: Likewise.
527 (NOP): Define.
528
529 * emultempl/elf32.em: Fix formatting.
530 (EXTRA_EM_FILE): Source it.
531 (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
532 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
533 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
534 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
535 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
536 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
537 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
538 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
539 LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars. Add code to
540 allow functions in this file to be overridden.
541 (PARSE_AND_LIST_SHORTOPTS): Handle it.
542
543 * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
544
04925e1e
AM
545 * emultempl/elf32.em: Reorganize file.
546
88cdf297
NC
5472000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru>
548
549 * emulparams/elf64alpha.sh: Implement "-taso" emulation
550 specific option to fit 64-bit executable in the lower
551 31-bit address range. This is done by changing start
552 address of .interp (the very first section of executable)
553 and then setting EF_ALPHA_32BIT elf header flag.
554
20bccb34
NC
5552000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
556
557 * emultempl/m68kcoff.em: New file.
558 * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
559 * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
560 generic.em.
561 * Makefile.in: Regenerate.
562
699845ef
L
5632000-07-20 H.J. Lu <hjl@gnu.org>
564
565 * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
566 and "disable-new-dtags" to stop getopt from treating -d/-e as
567 abbreviations for these options.
568
6c1439be
L
5692000-07-20 H.J. Lu <hjl@gnu.org>
570
571 * ld.texinfo: Add documentation for --disable-new-dtags and
572 --enable-new-dtags.
573
574 * ldmain.c (main): Initialize link_info.new_dtags to false.
575
576 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
577 --disable-new-dtags and --enable-new-dtags.
578 (gld_${EMULATION_NAME}_list_options): Likewise.
579
28c309a2
NC
5802000-07-05 Kenneth Block <krblock@computer.org>
581
50bbae35
AM
582 * ld/lexsup.c: Add optional style to demangle switch
583 * ld/ld.texinfo: Document optional style to demangle switch.
584
9d06555c
HPN
5852000-07-20 Hans-Peter Nilsson <hp@axis.com>
586
587 * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
588 ecrislinux.o.
589 (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
590 Regenerate dependencies.
591 * Makefile.in: Rebuild.
592 * configure.tgt (cris-*-*): New target.
593 * emulparams/crisaout.sh, emulparams/criself.sh,
594 emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
595 * po/POTFILES.in, po/ld.pot: Regenerate.
596
19e3be22
L
5972000-07-20 H.J. Lu <hjl@gnu.org>
598
599 * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
600 Print out ignored -z options.
601
e0ee487b
L
6022000-07-19 H.J. Lu <hjl@gnu.org>
603
19e3be22
L
604 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
605 (PARSE_AND_LIST_PROLOGUE): New.
606 (PARSE_AND_LIST_LONGOPTS): Likewise.
607 (PARSE_AND_LIST_OPTIONS): Likewise.
608 (PARSE_AND_LIST_ARGS_CASES): Likewise.
609
610 * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
611
612 * lexsup.c (ld_options): Comment out 'z'.
613 (parse_args): Likewise.
614
615 * emultempl/elf32.em: Include "elf/common.h".
616 (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
617 options.
618 (gld_${EMULATION_NAME}_list_options): Likewise.
619
620 * ld.texinfo: Add documentation for the recognized -z options.
e0ee487b 621
49e56c49
L
6222000-07-19 H.J. Lu <hjl@gnu.org>
623
624 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
625 bfd_elf_set_dt_needed_soname ().
626
9d68bc82
DD
6272000-07-18 DJ Delorie <dj@cygnus.com>
628
629 * pe-dll.c (pe_dll_id_target): check object target name also
630
53db15ed
HPN
6312000-07-18 Hans-Peter Nilsson <hp@axis.com>
632
633 * scripttempl/elf.sc (.init): Only do ${INIT_START} and
634 ${INIT_END} if relocating.
635 (.fini): Likewise ${FINI_START} and ${FINI_END}.
636
0ad8cf4c
DD
6372000-07-16 Charles Wilson <cwilson@ece.gatech.edu>
638
639 * src/ld/emultempl/pe.em (gld_*_open_dynamic_archive): New search
640 order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
641 foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
642 errors introduced by the old dynamic lib search order.
643
874c8c99
DD
6442000-07-17 DJ Delorie <dj@cygnus.com>
645
646 * pe-dll.c (process_def_file): auto-export data items also
647 (pe_process_import_defs): also see if _imp_ form needed
648
5b4cf3f4
DD
6492000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
650
651 * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
652 for dll import libraries
653
062739d1
NC
6542000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
655
656 * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
657 gcc 2.95.2 and later.
658
1c64c4ed
NC
6592000-07-11 Kazu Hirata <kazu@hxi.com>
660
50bbae35
AM
661 * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
662 message.
1c64c4ed 663
b71e2778
AM
6642000-07-10 Alan Modra <alan@linuxcare.com.au>
665
666 * ldemul.h (struct lang_input_statement_struct): Remove forward
667 declaration.
668 (struct search_dirs): Likewise.
669 * ldfile.h (struct lang_input_statement_struct): Likewise.
670 Protect file from multiple inclusion.
671 * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
672 declaration from macro to file scope.
673
674 * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
675 * ldgram.y: Likewise here.
676 * ldlang.c: And here.
677 * ldmain.c: And here.
678 * mpw-elfmips.c: And here.
679 * mpw-eppcmac.c: And here.
680 * emultempl/aix.em: And here.
681 * emultempl/armcoff.em: And here.
682 * emultempl/armelf.em: And here.
683 * emultempl/armelf_oabi.em: And here.
684 * emultempl/beos.em: And here.
685 * emultempl/elf32.em: And here.
686 * emultempl/hppaelf.em: And here.
687 * emultempl/linux.em: And here.
688 * emultempl/lnk960.em: And here.
689 * emultempl/pe.em: And here.
690 * emultempl/sunos.em: And here.
691 * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
692 * mpw-idtmips.c: Ditto.
693 * emultempl/generic.em: Ditto.
694 * emultempl/gld960.em: Ditto.
695 * emultempl/gld960c.em: Ditto.
696 * emultempl/mipsecoff.em: Ditto.
697 * emultempl/ticoff.em: Ditto.
698 * emultempl/vanilla.em: Ditto.
699
700 * pe-dll.c: Include ldfile.h
701 * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
702
703 * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
704 arguments to bfd_elf32_size_dynamic_sections call.
705 (gldelf32ebmip_place_orphan): Add missing arguments to
706 lang_leave_output_section_statement call.
707
2ef53d66
L
7082000-07-10 H.J. Lu <hjl@gnu.org>
709
710 * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
711 DLL_SUPPORT.
712 (strhash): Likewise.
713 (compute_dll_image_base): Likewise.
714 (pe_undef_found_sym): Likewise.
715 (pe_undef_cdecl_match): Likewise.
716 (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
717 argument "arch" with ATTRIBUTE_UNUSED.
718
9a8cbb09
AM
7192000-07-10 Alan Modra <alan@linuxcare.com.au>
720
721 * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
722
723 From Ryan Bradetich <rbradetich@uswest.net>
724 * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
50bbae35 725
4900fc06
AM
7262000-07-09 Alan Modra <alan@linuxcare.com.au>
727
728 Changes to create multiple linker stubs, positioned immediately
729 before the section where they are required.
730 * emultempl/hppaelf.em: Include elf32-hppa.h.
731 (stub_sec, file_chain): Delete.
732 (hppaelf_create_output_section_statements): Don't make a stub
733 section here.
734 (hook_stub_info): New struct.
735 (hook_in_stub): New function.
736 (hppaelf_add_stub_section): New function.
737 (hppaelf_finish): Do nothing for relocateable links. Modify the
738 call to elf32_hppa_size_stubs. Move code for updating section
739 layout from here...
740 (hppaelf_layaout_sections_again): ..to here, a new function.
741
742 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
743 broken list handling. Pass in a pointer to the list.
744 (hppaelf_finish): Update call to hppaelf_delete_padding_statements
745 for above changes.
746 (hppaelf_before_parse): Prototype.
747 (hppaelf_set_output_arch): Prototype.
748 (hppaelf_create_output_section_statements): Prototype.
749 (hppaelf_delete_padding_statements): Prototype.
750 (hppaelf_finish): Prototype.
751
752 Merge from elf32.em
753 * emultempl/hppaelf.em: Include ctype.h.
754 (struct orphan_save): New.
755 (gld${EMULATION_NAME}_place_orphan): New.
756 (output_rel_find): New.
757 (hppaelf_get_script): Update from elf32.em.
758 (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
759 Change emulation_name field to "${EMULATION_NAME}". Add
50bbae35 760 gld${EMULATION_NAME}_place_orphan.
4900fc06
AM
761
762 * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o, add
763 ehppalinux.o, sort it. Regenerate dependencies.
764 (ehppalinux.c): Depend on hppaelf.em
765 * Makefile.in: Regenerate.
766
767 * configure.tgt: targ_emul=hppalinux for hppa*linux
768
769 * emulparams/hppalinux.sh: New.
770 * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
771
227aeb07
AM
7722000-07-08 Alan Modra <alan@linuxcare.com.au>
773
774 * lexsup.c (parse_args): Copy section name.
775
28609fd4 7762000-07-07 Charles Wilson <cwilson@ece.gatech.edu>
602e90d3 777
2ef53d66 778 * emultempl/pe.em: institute the following search order for
602e90d3
DD
779 dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
780 libs), libfoo.dll, foo.dll (link direct to dll). Fall back to
781 static lib (libfoo.a) if none of the above are found.
782
5f577f7d
DD
7832000-07-07 Mumit Khan <khan@xraylith.wisc.edu>
784
50bbae35 785 * emultempl/pe.em (pe_enable_auto_image_base): New variable.
5f577f7d 786 (longopts): New --{enable,disable}-auto-image-base options.
50bbae35 787 (gld_${EMULATION_NAME}_list_options): Document.
5f577f7d
DD
788 (gld_${EMULATION_NAME}_parse): Handle.
789 (strhash): New static function.
50bbae35 790 (compute_dll_image_base): New static function.
5f577f7d
DD
791 (gld_${EMULATION_NAME}_set_symbols): Use.
792
9a8cbb09 7932000-07-05 DJ Delorie <dj@redhat.com>
302ab118
DD
794
795 * MAINTAINERS: new
796
3548145d 7972000-07-01 Koundinya K <kk@ddeorg.soft.net>
50bbae35
AM
798
799 * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
800 * emulparams/elf32btsmip.sh: New file.
801 * Makefile.am: Add traditional mips target.
802 * Makefile.in: Rebuild.
803
67798033
L
8042000-07-01 H.J. Lu <hjl@gnu.org>
805
806 * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
807 automake to use YLWRAP.
808 * Makefile.in: Rebuild.
809
0bdaf48b
AM
8102000-07-01 Alan Modra <alan@linuxcare.com.au>
811
812 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
813 (CLEANFILES): Add DEPA.
814 * Makefile.in: Regenerate.
815
c9e769c2
TW
8162000-06-30 Timothy Wall <twall@ppc>
817
818 * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
819 the page in the upper octet of the address.
820
65aa24b6
NC
8212000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
822
823 * emulparams/avrmega161.sh (ARCH): Change to avr:5.
824
4667035e
AM
8252000-06-24 Alan Modra <alan@linuxcare.com.au>
826
827 * NEWS: arm-elf does --gc-sections too.
828
1581f8c9
AM
8292000-06-22 Alan Modra <alan@linuxcare.com.au>
830
831 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
832 find one.
833 * Makefile.in: Regenerate.
834
01580992
L
8352000-06-21 H.J. Lu <hjl@gnu.org>
836
837 * Makefile.am: Rebuild dependency.
838 * Makefile.in: Rebuild.
839
bbeb2e03
L
8402000-06-20 H.J. Lu <hjl@gnu.org>
841
842 * Makefile.am: Rebuild dependency.
843 * Makefile.in: Rebuild.
844
74459f0e
TW
8452000-06-20 Timothy Wall <twall@cygnus.com>
846
847 * scripttempl/tic54xcoff.sc: New.
848 * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
849 * gen-doc.texi: Add flag for TI COFF.
850 * ld.texinfo: Add documentation for TI COFF handling switches.
851 * emultempl/ticoff.em: New. TI COFF handling.
852 * configure.tgt: Add tic54x target.
853 * Makefile.am: Add tic54x target.
854 * Makefile.in: Ditto.
855
2ab47eed
AM
8562000-06-20 Alan Modra <alan@linuxcare.com.au>
857
858 * ldmain.c (set_scripts_dir): Correct pointer comparison when
859 checking for backslashes.
860
919e4093
AM
8612000-06-19 Alan Modra <alan@linuxcare.com.au>
862
863 * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
864
987fd5b4
AM
8652000-06-18 Alan Modra <alan@linuxcare.com.au>
866
867 * NEWS: Update list of targets supporting --gc-sections.
868
869 * scripttempl/elf.sc: KEEP .eh_frame contents.
870 * scripttempl/elfd30v.sc: Same here.
871
60bcf0fa
NC
8722000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
873
874 * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
875 and m68hc11 (elf).
876 * Makefile.in: Rebuild.
877 * configure.tgt: Recognize m68hc12 and m68hc11.
878 * scripttempl/elfm68hc12.sc: New file.
879 * emulparams/m68hc12elfb: New emulation.
880 * emulparams/m68hc12elf: New emulation.
881 * emulparams/m68hc11elfb.sh: New file. User configurable emulation
882 (includes a memory.x script to define the ROM and RAM banks).
883 * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
884 New configuration files for support of Motorola 68hc11
885
c7c54483
AM
8862000-06-15 Alan Modra <alan@linuxcare.com.au>
887
888 * ldmain.c (main): Only change SEC_READONLY for final link.
889
bcef29e6
L
8902000-06-13 H.J. Lu <hjl@gnu.org>
891
892 * configure: Regenerate.
893
946efd95
DB
8942000-06-08 David O'Brien <obrien@FreeBSD.org>
895
896 * configure.in (VERSION): Update to show this is the CVS mainline.
897
57a6fd07
DB
8982000-06-07 Michael Sokolov <msokolov@ivan.Harhan.ORG>
899
900 * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
901 input objects to be ECOFF.
902 (check_sections): einfo takes %B, not %P, to print a BFD name.
903
e06cae36
L
9042000-06-05 Michael Matz <matz@ifh.de>
905
906 * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
907 version scripts.
908
909 * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
910
2f0b56c0
DC
9112000-05-23 Marek Michalkiewicz <marekm@linux.org.pl>
912
913 * emulparams/avr1200.sh (STACK): Define as 0.
914 * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
915 * emulparams/avr4433.sh (STACK): Likewise.
916 * emulparams/avr44x4.sh (STACK): Likewise.
917 * emulparams/avr85xx.sh (STACK): Likewise.
918 * emulparams/avrmega103.sh (STACK): Likewise.
919 * emulparams/avrmega161.sh (STACK): Likewise.
920 * emulparams/avrmega603.sh (STACK): Likewise.
921 * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
922 (__stack): Define from ${STACK} for main().
923
2114f57b
AM
9242000-05-26 Alan Modra <alan@linuxcare.com.au>
925
926 * Makefile.am: Update dependencies with "make dep-am"
927 * Makefile.in: Regenerate.
928
5af11cab
AM
9292000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
930
931 * ldmain.c: Include filenames.h.
932 (set_scripts_dir): Support backslashes in program name.
933
1f0df59a
NC
9342000-05-22 Igor Shevlyakov <igor@windriver.com>
935
936 * ldmain.c (main): When deciding if ".text" section should be
50bbae35
AM
937 read-only, don't forget to reset SEC_READONLY because it
938 could be already set.
1f0df59a 939
176355da
NC
9402000-05-22 Thomas de Lellis <tdel@windriver.com>
941
50bbae35
AM
942 * ld.1: Add documentation for new command line option:
943 --section-start <sectionname>=<sectionorg>
944 This is a generic version of -Ttext etc. which accepts
945 any section name as a parameter instead of just text/data/
946 bss.
947 * ld.texinfo: More docs.
948 * NEWS: More docs.
949 * lexsup.c: (parse_args): Recognize new command line option.
176355da 950 (ld_options): Add new option.
50bbae35 951
8c5ff972
L
9522000-05-18 H.J. Lu <hjl@gnu.org>
953
954 * lexsup.c (parse_args): `i' == `r', not `q'.
955
0b76fe77
JL
956Thu May 18 10:47:57 2000 Jeffrey A Law (law@cygnus.com)
957
958 * configure.tgt (hppa*64*-*-*): Enable PA64 target.
959
a712da20
NC
9602000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
961 Rick Gorton <gorton@scrugs.lkg.dec.com>
50bbae35 962
a712da20
NC
963 Add support for '-q' == '--emit-relocs' switch.
964 * ldmain.c (main): Default to false.
965 * lexsup.c (parse_args): Turn on emitrelocations flag if set.
966 * NEWS: Describe the emitrelocations switch.
967 * ld.texinfo: Describe the emitrelocations switch.
968
690a460e
NC
9692000-05-16 Charles Wilson <cwilson@ece.gatech.edu>
970
971 * ld/emultempl/pe.em (_open_dynamic_archive): New function: Search
972 the library path for "foo.dll" and "libfoo.dll" dynamic libraries
973 before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
974 link options.
50bbae35 975
c2f1343c
AM
9762000-05-15 David O'Brien <obrien@FreeBSD.org>
977
978 * lexsup.c (parse_args): Update the year in the copyright notice.
979
897083bd
AM
9802000-05-13 Alan Modra <alan@linuxcare.com.au>
981
982 * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
983 Replace defines with those from intl/libgettext.h to quieten gcc
984 warnings.
985
cd4c806a
L
9862000-05-10 H.J. Lu <hjl@gnu.org>
987
988 * ldlang.c (open_input_bfds): Don't load the same file within
989 a group again if the whole archive has been loaded already.
990
93697284
AM
9912000-05-03 Alan Modra <alan@linuxcare.com.au>
992
993 From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
994 * lexsup.c (set_section_start): Use bfd_scan_vma rather than
995 strtoul.
996
ebd6fc29
JW
997Mon May 1 17:34:34 2000 Jim Wilson <wilson@cygnus.com>
998
99a4150f 999 * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
50bbae35 1000
ebd6fc29
JW
1001 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
1002 host "ia64-*-linux-gnu*".
1003
a1934524
AM
10042000-04-29 Andreas Jaeger <aj@suse.de>
1005
1006 * ld.h: Correctly check GCC version.
1007
730a39a0
JL
1008Tue Apr 25 11:20:43 2000 Jeffrey A Law (law@cygnus.com)
1009
1010 * Makefile.am: Add PA64 support. Add missing dependencies for
1011 PA32 elf support.
1012 * Makefile.in: Rebuilt.
1013 * configure.tgt: Add PA64 support (currently disabled).
1014
aea4bd9d
AM
10152000-04-25 Alan Modra <alan@linuxcare.com.au>
1016
1017 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
1018 (output_rel_find): New function.
1019 (hold_section, hold_use): Delete.
1020 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
1021 hold_interp): Make local to place_orphan.
1022 (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
1023 rather than place_section to find possible previous use of orphan.
1024 Similarly find the place-holder output sections. Use returned
1025 value from lang_enter_output_section_statement rather than calling
1026 lang_output_section_statement_lookup.
1027 * emultempl/armelf.em: Same here.
1028 * emultempl/pe.em: Similar to above, but no need for output_rel_find.
1029
1030 * ldlang.c (lang_enter_output_section_statement): Return output
1031 section statement.
1032 * ldlang.h (lang_enter_output_section_statement): Change
1033 declaration too.
1034
1035 * ldlang.h (lang_output_section_statement): Export it.
1036 * ldlang.c (lang_output_section_statement): Ditto.
1037
2b5fc1f5
NC
10382000-04-24 Nick Clifton <nickc@cygnus.com>
1039
1040 * ld.texinfo (Output Section Data): Add note that section data
1041 commands cannot appear outside of section directives.
1042
d8475ff6
JL
10432000-04-2 Matthew Green <mrg@cygnus.com>
1044
1045 * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
1046
800eeca4
JW
1047Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
1048 David Mosberger <davidm@hpl.hp.com>
1049
1050 * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
1051 (eelf64_ia64.c): New rule.
1052 * Makefile.in: Rebuild.
1053 * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
1054 * emulparams/elf64_ia64.sh: New file.
50bbae35 1055
c9637625
RH
10562000-04-21 Richard Henderson <rth@cygnus.com>
1057
1058 * scripttempl/elfd30v.sc: Place .gcc_except_table.
1059
28ea9521
AM
10602000-04-19 Alan Modra <alan@linuxcare.com.au>
1061
1062 * dep-in.sed: Match space at start of file name, not at end.
1063
20d04697
L
10642000-04-18 H.J. Lu <hjl@gnu.org>
1065
1066 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
1067 lang_leave_output_section_statement () after calling
1068 lang_enter_output_section_statement ().
1069 * emultempl/armelf.em: Likewise.
1070
5ba47421
AM
10712000-04-18 Alan Modra <alan@linuxcare.com.au>
1072
1073 * emultempl/elf32.em (struct orphan_save): Add section field.
1074 (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
1075 better order, and place first orphan section as we did before the
1076 2000-04-12 patch. Ignore ~SEC_ALLOC sections when choosing place.
1077 Don't call make_bfd_section here, let wild_doit do the job for us.
1078 Don't build a statement list when we'll only throw it away.
1079 * emultempl/armelf.em: Ditto.
1080 * emultempl/pe.em: Similarly.
1081
bdbe5705
GK
10822000-04-14 Geoff Keating <geoffk@cygnus.com>
1083
1084 * scripttempl/elfppc.sc: Remove.
1085 * emulparams/elf32ppc.sh: Use elf.sc.
1086 * emulparams/elf32lppc.sh: Use elf.sc.
1087 * emulparams/elf32ppclinux.sh: Use elf.sc.
1088 * emulparams/elf32ppcsim.sh: New file.
1089 * emulparams/elf32lppcsim.sh: New file.
1090 * Makefile.am: Update dependencies. Add elf32ppcsim ad elf32lppcsim.
1091 (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
1092 * Makefile.in: Regenerate.
1093 * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
1094
01cc8ff8
AM
10952000-04-14 Alan Modra <alan@linuxcare.com.au>
1096
5ba47421 1097 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
01cc8ff8 1098 ~SEC_ALLOC sections too. Init start address of debug sections.
5ba47421
AM
1099 * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
1100 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
01cc8ff8
AM
1101 Also set all relocateable section start addresses.
1102
6c86c541
GK
11032000-04-13 Geoff Keating <geoffk@cygnus.com>
1104
1105 * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
1106 Add new BSS_PLT variable for when .plt need not be contained in
1107 the file. Move _etext so that it is also after .fini, and provide
1108 both etext and _etext with a leading underscore. Mark the start
1109 and end of .sbss.
1110
6a345e87
AM
11112000-04-12 Alan Modra <alan@linuxcare.com.au>
1112
1113 * emultempl/elf32.em (struct orphan_save): New.
1114 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
1115 hold_interp): Make them struct orphan_save.
1116 (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
1117 (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
1118 the end of the relevant section list. Also add associated section
1119 statements to the end of any previous orphan statements.
1120 * emultempl/armelf.em: Similarly.
1121 * emultempl/pe.em: Similarly.
1122
8be86746
AM
11232000-04-11 Alan Modra <alan@linuxcare.com.au>
1124
1125 * ld.texinfo (Simple Example): Remove extraneous paragraph.
1126
a2d91340 1127Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
50bbae35 1128
a2d91340 1129 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
50bbae35 1130 --enable-build-warnings option.
a2d91340
AC
1131 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
1132 * Makefile.in, configure: Re-generate.
1133
41b49281
AM
11342000-04-04 Alan Modra <alan@linuxcare.com.au>
1135
8ad3436c
AM
1136 * po/ld.pot: Regenerate.
1137
1138 * lexsup.c (help): Restore translated part of bug string.
1139
41b49281
AM
1140 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
1141 (DEP): Quote when passing vars to sub-make. Add warning message
1142 to end.
1143 (DEP1): Rewrite for "gcc -MM".
1144 (CLEANFILES): Add DEP2.
1145 Update dependencies.
1146 * Makefile.in: Regenerate.
1147
c20f4f8c
AM
11482000-04-03 Alan Modra <alan@linuxcare.com.au>
1149
1150 * ld.h: #include "bin-bugs.h"
1151 * lexsup.c (help): Use REPORT_BUGS_TO.
1152
adde6300
AM
11532000-03-27 Denis Chertykov <denisc@overta.ru>
1154
1155 * configure.tgt (avr-*-*): New target support.
1156 * Makefile.am: Likewise.
1157 * scripttempl/elf32avr.sc: New script file.
1158 * emulparams/avr1200.sh: New file.
1159 * emulparams/avr23xx.sh: New file.
1160 * emulparams/avr4433.sh New file.
1161 * emulparams/avr44x4.sh New file.
1162 * emulparams/avr85xx.sh New file.
1163 * emulparams/avrmega103.sh New file.
1164 * emulparams/avrmega161.sh New file.
1165 * emulparams/avrmega603.sh New file.
1166 * Makefile.in: Regenerate.
1167
9282ff41
L
11682000-03-09 Andreas Jaeger <aj@suse.de>
1169
1170 * Makefile.am (check-DEJAGNU): Also unset LANG.
1171 * Makefile.in: Rebuild.
1172
a9998805
ILT
11732000-03-06 Ian Lance Taylor <ian@zembu.com>
1174
1175 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
1176 archive.
1177
f9bc20e7
NC
11782000-03-02 H.J. Lu <hjl@gnu.org>
1179
1180 * emulparams/elf32mcore.sh: Include "getopt.h".
1181
4e277b38
ILT
11822000-03-01 Ian Lance Taylor <ian@zembu.com>
1183
1184 * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
1185
f0c87f88
NC
11862000-03-01 H.J. Lu <hjl@gnu.org>
1187
1188 * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
1189 * emulparams/shpe.sh: Likewise.
1190
11912000-03-01 Nick Clifton <nickc@cygnus.com>
1192
1193 * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
1194 to unused parameters.
1195
1196 * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
1197 functions only used by DLL code.
1198 (_place_orphan): Initialise 'dollar'.
1199
b6f29aaa
L
12002000-03-01 H.J. Lu <hjl@gnu.org>
1201
1202 * ldmain.c (undefined_symbol): Take one more arg, fatal, to
1203 indicate if the undefined symbol is a fatal error or not.
1204 Don't delete the output file if "fatal" is false.
1205
af28fce3
L
12062000-02-29 H.J. Lu <hjl@gnu.org>
1207
50bbae35 1208 * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
af28fce3
L
1209 Set LC_COLLATE and LC_ALL to null and export them. It is for
1210 sort which expects the C locale.
1211 Add $(LIBS) to all $(HOSTING_LIBS).
1212 * Makefile.in: Rebuild.
1213
40d109bf
AM
12142000-02-29 Alan Modra <alan@spri.levels.unisa.edu.au>
1215
1216 * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
1217 beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
1218 linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
1219 (ld_emulation_xfer_struct): Add missing NULL initialiser for
1220 find_potential_libraries.
1221
db5be682
JB
12222000-02-28 Jim Blandy <jimb@redhat.com>
1223
1224 * ldgram.y (exclude_name_list): Don't require a comma to separate
50bbae35 1225 list entries; the lexer considers commas to be valid part of a
db5be682
JB
1226 filename, so in something like `foo, bar' the comma is considered
1227 part of the first filename, `foo,'.
1228 * ld.texinfo: Update section on EXCLUDE_FILE lists.
1229
3558ff4c
ILT
12302000-02-27 Loren J. Rittle <ljrittle@acm.org>
1231
1232 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
1233 host "i[3456]86-*-freebsdelf*".
1234
4eee2681
ILT
12352000-02-27 Mark Elbrecht <snowball3@bigfoot.com>
1236
1237 * scripttempl/i386go32.sc: Move misplaced semicolons.
1238
8d75d12d
ILT
12392000-02-25 Ian Lance Taylor <ian@zembu.com>
1240
1241 * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
1242 (ALL_64_EMULATIONS): Remove eelf64hppa.o.
1243 (eelf64hppa.c, ehppaelf.c): Remove targets.
1244 * Makefile.in: Rebuild.
1245
a1836d49
AO
12462000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
1247
ad51fb57
AO
1248 * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
1249 GNU/Linux/sparc, but keep the default as 32.
1250
a1836d49
AO
1251 * configure.tgt: Enable elf64_sparc on Solaris7+/sparc. And make
1252 it default if sparcv9 or sparc64.
1253
344a211f
NC
12542000-02-24 Nick Clifton <nickc@cygnus.com>
1255
1256 * Makefile.am: Add rules to build emipspe.o and earmpe.o.
1257 * Makefile.in: Regenerate.
1258 * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
1259
1260 * ldemul.h (ld_emulation_xfer_struct): Add new field:
1261 find_potential_libraries.
1262 * ldemul.c (ldemul_find_potential_libraries): New function.
1263
1264 * ldfile.c (ldfile_open_file_search): Allow function to be
50bbae35 1265 exported.
344a211f
NC
1266 (ldfile_open_file): Call ldemul_find_potential_libraries.
1267 * ldfile.h: Add prototype for ldfile_open_file_search.
1268
1269 * pe-dll.c: Add support for ARM, MIPS and SH targets.
1270
1271 * emulparams/mipspe.sh: New file. Parameters for mips-pe target.
1272 * emulparams/shpe.sh: New file. Parameters for sh-pe target.
1273
1274 * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
1275 (gld_X_find_potential_libraries): New function. Search for
1276 libraries called "*.lib".
1277
1278 * scriptempl/pe.sc: Add .pdata section.
1279
eaba1dd3
RH
12802000-02-23 Richard Henderson <rth@cygnus.com>
1281
1282 * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
1283 Add and use memory regions.
1284
5b93d8bb
AM
12852000-02-23 Linas Vepstas (linas@linas.org)
1286
1287 * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
1288
1289 * Makefile.am: Add support for Linux/IBM 370.
1290 * configure.tgt: Likewise.
1291
1292 * Makefile.in: Regenerate.
1293
f6af82bd
AM
12942000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
1295
1296 * ldlang.c (print_input_section, print_data_statement,
1297 print_reloc_statement, print_padding_statement, insert_pad,
1298 size_input_section, lang_check_section_addresses,
1299 lang_size_sections, lang_do_assignments, lang_set_startof,
50bbae35 1300 lang_one_common): Change `opb' to unsigned.
f6af82bd
AM
1301 (lang_do_assignments): Also change `size' to unsigned.
1302
9e673ad1
RH
13032000-02-16 Richard Henderson <rth@cygnus.com>
1304
1305 * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
1306
562d3460
TW
13072000-02-16 Timothy Wall <twall@cygnus.com>
1308
1309 * mri.c (mri_draw_tree): Add default LMA region argument to call
1310 to lang_leave_output_section_statement.
1311 * ldlang.h: Update prototypes with LMA region arguments.
1312 * ldlang.c (lang_size_sections): Encapsulate region bounds
1313 checking in os_check_region call.
1314 (os_check_region): New function.
1315 (lang_output_section_statement_lookup): Initialize lma_region.
1316 (lang_leave_output_section_statement): Add LMA region argument.
1317 (lang_leave_overlay): Ditto.
1318 * ldgram.y: Handle LMA region syntax.
1319 * ld.texinfo (Output Section Description): Describe LMA region usage.
1320 * emultempl/armelf.em (gld$place_orphan): Add default value for
01cc8ff8 1321 lma region in call to lang_leave_output_section_statement.
562d3460 1322 * emultempl/elf32.em (gld$place_orphan): Add default value for
01cc8ff8 1323 lma region in call to lang_leave_output_section_statement.
562d3460 1324 * emultempl/pe.em (gld$place_orphan): Add default value for
01cc8ff8 1325 lma region in call to lang_leave_output_section_statement.
50bbae35
AM
1326
1327
9e4ed18c
TW
13282000-02-04 Timothy Wall <twall@redhat.com>
1329
1330 * ldlang.c (lang_check_section_addresses): Use bytes instead of
1331 octets when calculating section end addresses.
1332
32edc927
TW
13332000-02-04 Timothy Wall <twall@redhat.com>
1334
1335 * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
1336
4cbfc3ac
TW
13372000-02-03 Timothy Wall <twall@redhat.com>
1338
1339 * ld/ldexp.c (fold_name): Make SIZEOF operator return byte count, not
1340 octet count.
1341 * ld/ldlang.c (print_input_section, print_data_statement,
1342 print_reloc_statement, print_padding_statement): Print target
1343 address values and section sizes as bytes, not octets.
1344 (insert_pad) Calculate padding size in octets, and adjust "dot"
1345 by bytes.
1346 (size_input_section) Always adjust "dot" by bytes, not octets.
1347 (lang_check_section_addresses, lang_do_assignments) Adjust
1348 "dot" by bytes, not octets. Use the larger of the directive size
1349 or octets_per_byte for the number of octets actually allocated in
1350 the output section.
1351 (lang_set_startof) Make sure STARTOF returns a target address.
1352 (lang_one_common) Record size changes in octets.
1353 (lang_abs_symbol_at_end_of) Section end symbol's value is
1354 recorded in target bytes.
1355 * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
1356 to be clear about behavior when an octet is smaller than one byte.
50bbae35 1357
305c7206
AM
13582000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
1359
1360 * ldcref.c (output_cref): Don't pass message strings to printf
1361 as format arg.
1362 Update copyright.
1363
1364 * ldmisc.c (vfinfo): Same here.
1365 Update copyright.
1366
e1c47aa4
AM
13672000-01-23 Alan Modra <alan@spri.levels.unisa.edu.au>
1368
1369 * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
1370 generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
1371 mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
1372 Add missing NULL initialisers, and comments.
1373
1374 * testsuite/ld-srec/sr3.cc (__rethrow): New.
1375
13392b77
NC
13762000-01-21 Nick Clifton <nickc@cygnus.com>
1377
1378 * ldlang.c (lang_size_sections): Fix typo in comment.
1379
cce4c4c5
NC
13802000-01-18 H.J. Lu <hjl@gnu.org>
1381
1382 * ldlang.c (lang_size_sections): Also update the current
1383 address of a region if the SEC_NEVER_LOAD bit is not set.
1384
0decc840
NC
13852000-01-10 Philip Blundell <pb@futuretv.com>
1386
1387 * configure.tgt (arm*-*-conix*): New target.
1388
4e53152f
NC
13892000-01-07 Nick Clifton <nickc@cygnus.com>
1390
1391 * ld.texinfo (Options): Remind users to preceed linker command
fa19fce0
NC
1392 line switches with -Wl, (or whatever is appropriate) if it is
1393 being invoked by a comnpiler driver program.
50bbae35 1394 Fix description of the behaviour of the -n command line switch.
4e53152f 1395
18625d54
CM
1396Wed Jan 5 08:02:12 2000 Catherine Moore <clm@cygnus.com>
1397
1398 * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
1399 (name_list): New.
1400 * ld.texinfo (EXCLUDE_FILE): Update documentation.
1401 * ldgram.y (wildcard_spec): Support a list of excluded_files.
1402 (exclude_name_list): New.
1403 ldlang.c (walk_wild_section): Support list of excluded files.
1404 (print_wild_statement): Likewise.
1405 (lang_add_wild): Likewise.
1406 * ldlang.h (lang_wild_statement_type): Likewise.
1407 * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
6ddeca85 1408
5aaace27
NC
14092000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
1410
870df5dc
NC
1411 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
1412 (process_def_file): Use.
1413 (pe_dll_compat_implib): New variable.
1414 (make_one): Use.
50bbae35 1415
870df5dc
NC
1416 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
1417 pe_dll_compat_implib.
50bbae35
AM
1418
1419 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
870df5dc
NC
1420 compat-implib options.
1421 (gld_${EMULATION_NAME}_list_options): List new options.
1422 (gld_${EMULATION_NAME}_parse_args): Handle.
1423
50bbae35 1424 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
5aaace27 1425 dll.
50bbae35
AM
1426
1427 * deffilep.y (opt_name): Allow "." in name.
5aaace27 1428
e6869249
NC
14291999-12-02 Nick Clifton <nickc@cygnus.com>
1430
1431 * Makefile.am: Fix arm-epoc-pe dependencies.
1432 * Makefile.in: Regenerate.
50bbae35 1433
e6869249
NC
1434 * emulparams/arm_epoc_pe.sh (SCRIPT_NAME): Set to epocpe.
1435
1436 * scripttempl/epocpe.sc: New file: copy of pe.sc, customised for
1437 EPOC by placing .rdata into .text.
1438
e4dabd0e
AS
14391999-11-26 Andreas Schwab <schwab@suse.de>
1440
1441 * configure.in: Put AC_MSG_CHECKING/AC_MSG_RESULT around check for
1442 STRINGIFY. Use yes/no instead of true/false as value for cache
1443 variable.
1444 * configure: Regenerate.
1445
50e05050
NC
14461999-11-24 Nick Clifton <nickc@cygnus.com>
1447
1448 * ldlang.c (IGNORE_SECTION): Section must have both ALLOC and LOAD
1449 attributes in order to be checked.
1450
33275c22
NC
14511999-11-22 Nick Clifton <nickc@cygnus.com>
1452
1453 * ldlang.c (lang_check_section_addresses): Fix test to determine
1454 if a section should be tested.
1455 (IGNORE_SECTION): New macro.
1456
93a6d436
JL
1457Wed Nov 3 23:31:19 1999 Jeffrey A Law (law@cygnus.com)
1458
1459 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1460 Clean up code to use EXTRA_SHLIB_EXTENSION.
1461
829ce307
NC
14621999-11-03 Nick Clifton <nickc@cygnus.com>
1463
1464 * emulparams/elf32mcore.sh (OUTPUT_FORMAT): Change to little endian.
1465 * emulparams/mcorepe.sh (OUTPUT_FORMAT): Change to little endian.
1466
9503fd87
ILT
14671999-11-01 Steve Chamberlain <sac@pobox.com>
1468
1469 * ldlang.c (section_already_linked): Rework to use hash table.
1470 (already_linked_newfunc): New function.
1471 (already_linked_table_init): New function.
1472 (already_linked_table_free): New function.
1473 (lang_process): Initialize and free the already_linked hash table.
1474
d7498c1e
ILT
14751999-10-27 Andreas Jaeger <aj@suse.de>
1476
50bbae35 1477 * ld/configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
d7498c1e
ILT
1478 target "mips*-*-linux-gnu*".
1479
29c4c6b5
NC
14801999-10-27 Scott Bambrough <scottb@netwinder.org>
1481
1482 * emultempl/armelf.em: Include ctype.h to prevent compile time
50bbae35 1483 warnings.
29c4c6b5 1484
1ac6a752
NC
14851999-10-26 Nick Clifton <nickc@cygnus.com>
1486
1487 * emultempl/armcoff.em (gld{}_finish): Remove extraneous
1488 underscore from prototype.
1489 * emultempl/armelf.em (gld{}_finish): Remove extraneous
1490 underscore from prototype.
1491
cfd0966c
GK
14921999-10-07 Geoffrey Keating <geoffk@cygnus.com>
1493
1494 * scripttempl/elf.sc (.rel.sdata): Combine all the sdata relocs
1495 being .rel.sdata, .rel.sdata.*, .rel.gnu.linkonce.s*.
1496 (.rela.sdata): Likewise for .rela.sdata.* and .rela.gnu.linkonce.s*.
1497 (.rel.sbss): Make like .rel.bss.
1498 (.rela.sbss): Make like .rel.bss.
1499 (.sdata): Don't include .gnu.linkonce.s.* or .sdata.* when
1500 ld -r.
1501 (.sbss): Do the same things as for .bss: include SDATA_START_SYMBOLS,
1502 .dynsbss.
1503
6eec49fc
DD
15041999-09-29 Andrew Haley <aph@cygnus.com>
1505
1506 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Defer
1507 merging sections when not relocating.
1508
8a5b676c
DD
15091999-09-28 Mumit Khan <khan@xraylith.wisc.edu>
1510
1511 * pe-dll.c (process_def_file): Move the offset lookup from here to
1512 (fill_exported_offsets): here. New static function.
1513 (fill_edata): Use.
50bbae35 1514
7c9e78f8
DD
15151999-09-28 Mumit Khan <khan@xraylith.wisc.edu>
1516
1517 * deffilep.y (tokens): Add upper and lower case versions of DATA,
1518 CONSTANT, NONAME and PRIVATE tokens.
1519 (command): Use DATAU.
1520 (expline): Allow for drectve syntax as well.
1521 (exp_opt_list): Likewise.
1522 (exp_opt): Likewise.
1523 * pe-dll.c (make_one): Only generate the idata entries for data
1524 symbols.
1525
13d92f2c
GK
15261999-09-28 Geoffrey Keating <geoffk@cygnus.com>
1527
1528 * scripttempl/elf.sc (.sdata): Include .gnu.linkonce.s.* sections
1529 in .sdata too.
1530
3c9cf3a3
NC
15311999-09-26 Nick Clifton <nickc@cygnus.com>
1532
1533 * scripttempl/elf.sc (.bss): Accept sections named .bss.*
1534 (.sbss): Accept sections names .sbss.*
1535
be2153ad
NC
15361999-09-22 Nick Clifton <nickc@cygnus.com>
1537
690a460e 1538 * Makefile.am: Add earm_epoc_pe.c build target.
be2153ad 1539
26040066
JL
1540Sat Sep 18 07:57:10 1999 Jeffrey A Law (law@cygnus.com)
1541
1542 * emulparms/elf64hppa.sh (OTHER_READONLY_SYMBOLS): Remove ".stubs",
1543 they've been renamed to ".stub", which is handled automatically
1544 by elf.sc.
1545
1546Fri Sep 17 11:00:33 1999 Jeffrey A Law (law@cygnus.com)
1547
1548 * emulparms/elf64hppa.sh (TEXT_START_SYMBOLS): Kill completely.
1549 (DATA_START_SYMBOLS): Kill __hp_load_map definition
1550
42d106a8
JL
1551Thu Sep 16 10:59:56 1999 Jeffrey A Law (law@cygnus.com)
1552
d3cc5bd6
JL
1553 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1554 Use the same filename extension for the bfd_elf_dt_needed_name call
1555 as we did for finding the library.
1556
88e99a39
JL
1557 * emulparms/elf64hppa.sh (DATA_START_SYMBOLS): Define.
1558 (OTHER_READWRITE_SECTIONS): No longer define __hp_load_map.
1559
42d106a8
JL
1560 * emulparms/elf64hppa.sh (TEXT_START_SYMBOLS): Define.
1561
833be1c7
JL
1562Wed Sep 15 02:47:43 1999 Jeffrey A Law (law@cygnus.com)
1563
97444aea
JL
1564 * emulparms/elf64hppa.sh (SHLIB_TEXT_START_ADDR): Define.
1565 (SHLIB_DATA_ADDR): Likewise.
1566
1567 * emulparms/elf64hppa.sh (TEXT_DYNAMIC): Define.
1568
6ddeca85 1569 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): No longer combine
833be1c7
JL
1570 the .plt, .dlt, .opd into a single output section. Provide values
1571 for __gp and __hp_load_map.
1572
a8100d5b
MM
15731999-09-14 Michael Meissner <meissner@cygnus.com>
1574
1575 * configure.in (Canonicalization of target names): Remove adding
1576 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
1577 generates $ac_config_sub with a ${CONFIG_SHELL} already.
1578 * configure: Regenerate.
1579
e4e24acb
DD
15801999-09-14 Donn Terry <donn@interix.com>
1581
50bbae35 1582 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): allow for
e4e24acb
DD
1583 terminating null.
1584
93a6d436
JL
15851999-09-14 Ulrich Drepper <drepper@cygnus.com>
1586
1587 * configure.in: Define EXTRA_SHLIB_EXTENSION to ".sl" for HP target.
1588 * config.in: Add EXTRA_SHLIB_EXTENSION.
1589
1590 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1591 Search for second shared lib extension only if EXTRA_SHLIB_EXTENSION
1592 is defined.
1593
cf865442
NC
15941999-09-14 Nick Clifton <nickc@cygnus.com>
1595
1596 * Makefile.in: Add earm_epoc_pe.c build target.
1597
2491f110
JL
1598Tue Sep 14 05:26:34 1999 Jeffrey A Law (law@cygnus.com)
1599
1600 * emulparms/elf64hppa.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.dlt.
1601
361d94e7
ILT
16021999-09-13 Donn Terry <donn@interix.com>
1603
1604 * emultempl/pe.em: Remove the output file at the start, in case it
1605 is not writable.
1606
9169713a
JL
1607Mon Sep 13 00:17:18 1999 Jeffrey A Law (law@cygnus.com)
1608
070f1aed
JL
1609 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
1610 Search for file with .sl extension if no file with a .so extension
1611 is found.
1612
9169713a
JL
1613 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): Put .plt
1614 at the start of the .dlt output section.
1615
1069dd8d
ILT
16161999-09-12 Ian Lance Taylor <ian@zembu.com>
1617
45455cdd
ILT
1618 * pe.em: Don't include "../bfd/libbfd.h".
1619 (gld_${EMULATION_NAME}_after_open): Use xmalloc rather than
1620 bfd_alloc.
1621
1069dd8d
ILT
1622 * pe-dll.h: New file.
1623 * pe-dll.c: Include "pe-dll.h". Mark unused arguments as needed
1624 to avoid warnings.
1625 (edata_sz, reloc_sz): Change from int to size_t.
1626 (pe_details_type): Change type of imagebase_reloc from int to
1627 unsigned int.
1628 (pe_detail_list): Fully initialize last entry.
1629 (pe_dll_id_target): Change parameter to const.
1630 (pe_dll_generate_def_file): Likewise.
1631 (pe_dll_generate_implib): Likewise.
1632 (pe_implied_import_dll): Likewise. Change dll_name to const.
1633 * emultempl/pe.em: Include "pe-dll.h". Remove declarations now in
1634 pe-dll.h.
1635 (init): Fully initialize __dll__ entry.
1636 (gld_${EMULATION_NAME}_after_open): Remove unused variables
1637 sequence, elt, and i.
1638 * deffile.h: Add preprocessor guard.
1639 * deffilep.y (def_debug): Remove.
1640 * Makefile.am: Rebuild dependencies.
1641 (HFILES): Add pe-dll.h.
1642
2be9b2c7
ILT
16431999-09-12 Donn Terry <donn@interix.com>
1644
45455cdd
ILT
1645 * ld.h (ld_abort): Declare.
1646 (abort): Define.
1647 * ldmisc.c (ld_abort): Define.
1648
be4514d3
ILT
1649 * scripttempl/pe.sc: Use ${ENTRY} rather than _mainCRTStartup.
1650 Move .bss section after .rdata. Move .reloc section after .rsrc.
1651
d98dd8ba
ILT
1652 * lexsup.c (parse_args): Use strtoul for --split-by-reloc
1653 argument.
1654
03983865
ILT
1655 * lexsup.c (parse_args): If we get an unrecognized argument,
1656 mention --help.
1657
bb8fe706
ILT
1658 * ldlang.c (section_already_linked): Use comdat information if it
1659 is available.
1660
2be9b2c7
ILT
1661 * emultempl/pe.em (PE_DEF_SECTION_ALIGNMENT): If
1662 OVERRIDE_SECTION_ALIGNMENT is defined, change to that.
1663 (gld_${EMULATION_NAME}_before_parse): Use EXECUTABLE_NAME if it is
1664 defined, rather than a.exe.
1665 (init): Define __subsystem__ as ${SUBSYSTEM}.
1666 (set_pe_subsystem): Add ${INITIAL_SYMBOL_CHAR} before entry symbol
1667 name.
1668
1b69a0bf
ILT
16691999-09-12 Ian Lance Taylor <ian@zembu.com>
1670
1671 * ldlang.c (open_output): Change local variable desired_endian
1672 from int to enum bfd_endian.
1673
be4514d3 1674 * emulparams/arm_epoc_pe.sh: Define ENTRY, SUBSYSTEM and
1b69a0bf
ILT
1675 INITIAL_SYMBOL_CHAR.
1676 * emulparams/armpe.sh: Likewise.
1677 * emulparams/morepe.sh: Likewise.
1678 * emulparams/ppcpe.sh: Likewise.
be4514d3
ILT
1679 * emulparams/i386pe.sh (ENTRY): Define as _mainCRTStartup.
1680 (SUBSYSTEM): Define as PE_DEF_SUBSYSTEM.
1b69a0bf 1681
904ecb2d
JL
1682Fri Sep 10 00:22:50 1999 Jeffrey A Law (law@cygnus.com)
1683
e5b08bf0
JL
1684 * emulparms/elf64hppa.sh (LIB_PATH): Define.
1685
904ecb2d
JL
1686 * emulparms/elf64hppa.sh (OTHER_READONLY_SECTIONS): Put stubs before
1687 unwinders so that they are closer to the text section.
1688 (OTHER_BSS_SECTIONS): Define.
1689 (EXECUTABLE_SYMBOLS): Provide __SYSTEM_ID and _FPU_STATUS.
1690 (INIT_START, INIT_END): Define.
1691 (FINI_START, FINI_END): Define.
1692 * scripttempl/elf.sc: Add support for INIT_START, INIT_END,
1693 FINI_START, FINI_END and OTHER_BSS_SECTIONS.
1694
7e4d694e
JL
1695Thu Sep 9 21:43:58 1999 Jeffrey A Law (law@cygnus.com)
1696
1697 * emulparms/elf64hppa.sh (TEXT_START_ADDR): Move up one page.
1698 (DATA_ADDR): Define.
1699
2f2bc1bb
RH
17001999-09-09 Stan Shebs <shebs@andros.cygnus.com>
1701
1702 * emulparams/d10velf.sh (READONLY_START_ADDR): Set to 0x2000004.
1703
1d0a3c9c
AS
17041999-09-09 Andreas Schwab <schwab@suse.de>
1705
1706 * ld.texinfo: Fix arguments of @var to not contain punctuation.
1707
040266ab
JL
1708Thu Sep 9 05:52:34 1999 Jeffrey A Law (law@cygnus.com)
1709
1710 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): Define.
1711
17121999-09-08 Ulrich Drepper <drepper@cygnus.com>
1713
1714 * emulparams/elf64hppa.sh (ELFSIZE): New. Set to 64.
1715
1716Wed Sep 8 00:07:39 1999 Jeffrey A Law (law@cygnus.com)
1717
1718 * emulparms/elf64hppa.sh (ENTRY): Define to main.
1719
1c56fb87
NC
17201999-09-03 Scott Bambrough <scottb@netwinder.org>
1721
6ddeca85 1722 * ld/configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
1c56fb87
NC
1723 target "arm*-*-linux-gnu*"
1724
c6c8c6dc
ILT
17251999-09-04 Steve Chamberlain <sac@pobox.com>
1726
1727 * configure.tgt (pjl-*-*, pj-*-*): New targets.
1728 * emulparams/pjelf.sh: New file.
1729 * emulparams/pjlelf.sh: New file.
50bbae35 1730 * scripttempl/pj.sc: New file.
c6c8c6dc
ILT
1731 * Makefile.am (ALL_EMULATIONS): Add epjelf.o and epjlelf.o.
1732 (epjelf.o, epjlelf.o): New targets.
1733 * Makefile.in: Rebuild.
1734
4b69d4ad
JL
1735Fri Sep 3 20:17:08 1999 Jeffrey A Law (law@cygnus.com)
1736
1737 * emulparams/elf64hppa.sh (MAXPAGESIZE): Define.
1738 (OTHER_READONLY_SECTIONS, DATA_PLT): Likewise.
1739
f6e143a1
JL
1740Thu Sep 2 14:32:03 1999 Jeffrey A Law (law@cygnus.com)
1741
1742 * emulparams/elf64hppa.sh: New file.
1743 * configure.tgt (hppa*w-*-*): Use elf64hppa emulation.
1744 * Makefile.am (ALL_64_EMULATIONS): Add eelf64hppa.o
1745 (eelf64hppa.c): Add dependencies.
1746 * Makefile.in: Rebuilt.
1747
0f1ee889
NC
17481999-08-25 Philip Blundell <pb@nexus.co.uk>
1749
1750 * emulparams/armelf.sh (OTHER_BSS_SYMBOLS): Add __end__.
1751 * emulparams/armelf_linux.sh: Likewise.
1752 * emulparams/armelf_linux26.sh: Likewise.
1753
8959586a
NC
17541999-08-24 Nick Clifton <nickc@cygnus.com>
1755
1756 From a patch submitted by Roland McGrath <roland@baalperazim.frob.com>
1757
1758 * configure.tgt (arm-*-netbsd*): New target.
1759 * Makefile.am (ALL_EMULATIONS): Add earmnbsd.o.
1760 (earmnbsd.c): New rule with deps.
1761 * Makefile.on: Regenerate.
1762 * emulparams/armnbsd.sh: New file.
1763
3b108066
NC
17641999-08-23 Nick Clifton <nickc@cygnus.com>
1765
093505ad
NC
1766 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Define.
1767 Implement --base-file command line switch.
1768
3b108066
NC
1769 * emultempl/elf32.em: Add ability for individual targets to have
1770 their own command line switches by defining PARSE_AND_LIST_ARGS.
1771
cd5d26f2
AS
17721999-08-19 Andreas Schwab <schwab@suse.de>
1773
1774 * configure.host: Use ${CC} instead of gcc for finding compiler
1775 related files.
1776
0811443a
NC
17771999-08-11 Nick Clifton <nickc@cygnus.com>
1778
1779 * scripttempl/mcorepe.sc (OUTPUT_FORMAT): Fix typo.
1780
9c9ef45f
ILT
17811999-08-09 Mark Elbrecht <snowball3@bigfoot.com>
1782
1783 * scripttempl/i386go32.sc: Handle g++ exception sections.
1784
fe9edd22
ILT
17851999-08-09 Ian Lance Taylor <ian@zembu.com>
1786
1787 From Wally Iimura <iimura@microunity.com>:
1788 * ldlang.c (lang_size_sections): When checking whether an address
1789 is within a region, don't get confused by wrapping around at the
1790 end of the address space.
1791
f4162f5c
ILT
17921999-08-08 Ian Lance Taylor <ian@zembu.com>
1793
667f5177
ILT
1794 * ldlang.c (wild_doit): Update for renaming of SEC_SHORT to
1795 SEC_SMALL_DATA.
1796
f4162f5c
ILT
1797 * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to
1798 MKDEP. Rebuild dependencies.
1799 * Makefile.in: Rebuild.
1800
ae97059c
ILT
18011999-08-08 Jakub Jelinek <jj@ultra.linux.cz>
1802
1803 * configure.host (sparc-*-linux-gnu*): New host.
1804 (sparc64-*-linux-gnu*): New host.
1805
597e2591
ILT
18061999-08-06 Ian Lance Taylor <ian@zembu.com>
1807
3d9f6277
ILT
1808 * lexsup.c (is_num): Reindent.
1809 (parse_args): Mention program name in error message.
1810
597e2591
ILT
1811 * emultempl/ostring.sed: Rename from stringify.sed.
1812 * emultempl/astring.sed: New file.
1813 * Makefile.am (stringify.sed): New target.
1814 (GEN_DEPENDS): Change $(srcdir)/emultempl/stringify.sed to
1815 stringify.sed.
1816 * configure.in: Define and substitute STRINGIFY.
1817 * emultempl/*.em: Use stringify.sed from build directory rather
1818 than source directory.
1819 * emultempl/elf32.em: Use stringify.sed rather than inline sed
1820 script.
1821 * emultempl/gld960.em, emultempl/gld960c.em: Likewise.
1822 * emultempl/hppaelf.em, emultempl/linux.em: Likewise.
1823 * emultempl/lnk960.em, emultempl/sunos.em: Likewise.
1824 * configure, Makefile.in: Rebuild.
1825
a7e78dae
ILT
18261999-08-05 Donn Terry <donn@interix.com>
1827
1828 * emulparams/i386pe.sh: Define ENTRY, SUBSYSTEM, and
3d9f6277 1829 INITIAL_SYMBOL_CHAR.
a7e78dae
ILT
1830 * emulparams/i386pe_posix.sh: New file.
1831 * Makefile.am (YACC): If bison is not in the source tree, use
1832 @YACC@ rather than bison -y.
1833 (LEX): If flex is not in the source tree, use @LEX@ rather than
1834 flex.
1835 (ALL_EMULATIONS): Add ei386pe_posix.o.
1836 (ei386pe_posix.c): New target.
1837 * configure.tgt (i[3456]86-*-interix*): New target.
1838 * configure.host (i[3456]86-pc-interix*): New host.
1839 * Makefile.in: Rebuild.
1840
18069efc
ILT
18411999-08-03 Ian Lance Taylor <ian@zembu.com>
1842
1843 * emulparams/elf32ppc.sh (MAXPAGESIZE): Change to 0x10000.
1844 * emulparams/elf32ppclinux.sh (MAXPAGESIZE): Likewise.
1845
f7cc0a4d
ILT
18461999-08-03 H.J. Lu <hjl@gnu.org>
1847
1848 * Makefile.am (ALL_EMULATIONS): Remove ego32.o.
1849 (ego32.c): Remove.
1850 * Makefile.in: Rebuild.
1851
5fa803d3
NC
18521999-07-22 Philip Blundell <pb@nexus.co.uk>
1853
1854 * emulparams/armelf_linux26.sh (DATA_START_SYMBOLS): Define.
1855 (OTHER_BSS_SYMBOLS, OTHER_BSS_END_SYMBOLS): Likewise.
1856 * emulparams/armelf_linux.sh (DATA_START_SYMBOLS): Define.
1857
1858 * configure.tgt (arm*-*-uclinux*, thumb-*-uclinux*,
1859 thumb-*-linux-gnu*): New targets.
1860
b4089fdd 18611999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
8f36e47c 1862
5a1bd109
ILT
1863 * scripttempl/i386go32.sc: Add handling of linkonce sections.
1864
8f36e47c 1865 * configure.bat: Remove; obsolete.
b4089fdd
ILT
1866 * emulparams/go32.sh: Remove; obsolete.
1867 * scripttempl/go32coff.sc: Remove; obsolete.
8f36e47c 1868
41d390a7
ILT
18691999-07-21 H.J. Lu <hjl@gnu.org>
1870
1871 * configure.tgt (mips*el-*-vxworks*): New target.
1872
18731999-07-21 Brad M. Garcia <bgarcia@fore.com>
1874
1875 * configure.tgt (i[3456]86-*-vxworks*): New target.
1876
7c83b342
DE
1877Tue Jul 20 15:18:46 1999 Bob Manson <manson@charmed.cygnus.com>
1878
1879 * ldlang.c (lang_gc_sections): Only handle the start symbol
1880 specially if there is one.
1881
0ca63823
MM
1882Mon Jul 19 14:19:14 1999 Mark P. Mitchell <mark@codesourcery.com>
1883
1884 * emulparams/elf32bmipn32.sh (OTHER_RELOCATING_SECTIONS): Add
1885 .MIPS.events and .MIPS.content handling.
1886 * emulparams/elf64bmip.sh (OTHER_RELOCATING_SECTIONS): Likewise.
1887
e50d8076
NC
18881999-07-17 Nick Clifton <nickc@cygnus.com>
1889
1890 * ldlang.c (get_target): New function: Return true iff the
1891 given target is the target being sought.
1892 (stricpy): New function: Like strcpy but convert to lower
1893 case as well.
1894 (strcut): New function: Like strstr but remove the located
1895 substring as well.
1896 (name_compare): New function: Compute a compatability rating
1897 for two target names.
1898 (winner): New variable: Best target found by
1899 closest_target_match() so far.
1900 (closest_target_match): New function: Find the target which is
1901 the closest match to the original target.
1902 (get_first_input_target): New function: Find the target format
1903 of the first of the linker's input file.
1904 (open_output): Be more clever about deciding the output target
6ddeca85 1905 format.
e50d8076 1906
e76d716a
RH
19071999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
1908
1909 * emulparams/elf64_sparc.sh: Add 64-bit directories to native LIB_PATH.
1910
88659ef5
MM
1911Thu Jul 15 15:55:15 1999 Mark P. Mitchell <mark@codesourcery.com>
1912
1913 * configure.host: Set up HOSTING_CRT0 and HOSTING_LIBS for IRIX6.
1914
2844ed43
ILT
19151999-07-15 Ian Lance Taylor <ian@zembu.com>
1916
1917 * configure.in: Bump version number to 2.9.5.
1918 * configure: Rebuild.
1919
0eaf9820
RH
19201999-07-14 Richard Henderson <rth@cygnus.com>
1921
1922 * ldlang.c (wild_doit): Copy SEC_SHORT to output section.
1923
1924 * scripttempl/elf.sc: Re-order .rel[a].foo outputs to the
1925 same order seen for the main sections. Add
1926 OTHER_READONLY_RELOC_SECTIONS and OTHER_GOT_RELOC_SECTIONS.
1927
5d341b0e
AS
19281999-07-12 Andreas Schwab <schwab@suse.de>
1929
49bdcdba
AS
1930 * emultempl/linux.em (ld_${EMULATION_NAME}_emulation): Fill in
1931 structure initializations.
1932
5d341b0e
AS
1933 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Add missing
1934 comma in initializer.
1935
87f2a346
ILT
19361999-07-11 Ian Lance Taylor <ian@zembu.com>
1937
1938 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
1939 as appropriate. Fill in structure initializations.
1940
b90d1146
ILT
19411999-07-10 Ian Lance Taylor <ian@zembu.com>
1942
1943 * ldfile.c: Revert patch of 1999-07-08.
1944 (ldfile_try_open_bfd): If we are searching for the file, skip
1945 files with an incompatible architecture.
1946
6da0974a
NC
19471999-07-09 Nick Clifton <nickc@cygnus.com>
1948
1949 * scripttempl/armcoff.sc (OUTPUT_FORMAT): Include big endian and
1950 little endian formats.
1951
7a274639
NC
19521999-07-08 Felix Lee <flee@cygnus.com>
1953
1954 * scripttempl/mcorepe.sc: fix quoting problem, for bash 2.x
1955
99f8f232
RH
19561999-07-08 Jakub Jelinek <jj@ultra.linux.cz>
1957
1958 * ldfile.c (ldfile_open_file_search): Skip libraries made for
1959 incompatible architectures in the search path. Let the user know
1960 about any such skips.
1961
5c61c5ab
JL
1962Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
1963
6ddeca85 1964 * configure.tgt (hppa*-linux-gnu*): New target.
5c61c5ab 1965
22c675a7
MM
19661999-07-07 Mark Mitchell <mark@codesourcery.com>
1967
1968 * Makefile.am (ALL_64_EMULATIONS): Add eelf64bmip.
1969 (eelf64bmip): New target.
1970 * Makefile.in: Regenerated.
1971 * configure.tgt (mips-sgi-irix6*): Add 64-bit emulation.
1972 * emulparams/elf64bmip.sh: New file.
1973
f11523b0
NC
19741999-07-05 Nick Clifton <nickc@cygnus.com>
1975
1976 * emultempl/pe.em (after_open): Abort if input format is ARM and
6ddeca85 1977 output format is not.
f11523b0 1978 * emultempl/armcoff.em (after_open): Abort if input format is ARM
6ddeca85 1979 and output format is not.
f11523b0 1980 * emultempl/armelf.em (after_open): Abort if input format is ARM
6ddeca85 1981 and output format is not.
f11523b0 1982
39e878bf
ILT
19831999-07-02 Ian Lance Taylor <ian@zembu.com>
1984
1985 * ldlang.c: Revert change of 1999-06-23.
1986
dc831978
MM
19871999-06-30 Mark Mitchell <mark@codesourcery.com>
1988
1989 * Makefile.am (ALL_EMULATIONS): Add eelf32bmipn32.o.
1990 (eelf32bmipn32.c): New target.
1991 * Makefile.in: Regenerated.
1992 * configure.tgt (mips-sgi-irix6*): Make n32 the default
1993 emulation.
1994 * emulparams/elf32bmipn32.sh: New file.
6ddeca85 1995
a0290afa
NC
19961999-06-28 Jim Pick <jim@jimpick.com>
1997
1998 * emultempl/armelf.em: Added code so that .xs linker scripts are
1999 called so that ARM shared libraries are built correctly.
2000
3dbf70a2
MM
20011999-06-22 Mark Mitchell <mark@codesourcery.com>
2002
2003 * ldmain.c (main): Initialize link_info.init_function and
2004 link_info.fini_function.
2005 * lexsup.c (OPTION_INIT): New macro.
2006 (OPTION_FINI): Likewise.
2007 (ld_options): Add descriptions for them.
2008 (parse_args): Handle them.
2009
7b9eea34
ILT
20101999-06-23 Ian Lance Taylor <ian@zembu.com>
2011
2012 * ldlang.c (section_already_linked): Only discard link once
2013 sections if we are building constructors.
2014
5c6bbab8
NC
20151999-06-22 Nick Clifton <nickc@cygnus.com>
2016
2017 * ld.texinfo (Location Counter): Describe behaviour of
2018 location counter inside section statements.
2019
a8e53fb0
MM
20201999-06-20 Mark Mitchell <mark@codesourcery.com>
2021
2022 * scripttempl/elf.sc (WRITABLE_RODATA): New variable for
2023 controlling whether or not .rodata is in the data segment or the
2024 text segment.
2025
6f798e5c
NC
20261999-06-18 Nick Clifton <nickc@cygnus.com>
2027
2028 * emultempl/pe.em: Add new command line switch --thumb-entry.
2029 * emultempl/armelf.em: Add new command line switch --thumb-entry.
2030 * emultempl/armcoff.em: Add new command line switch --thumb-entry.
6ddeca85 2031 * ld.texinfo: Document new ARM command line switch: --thumb-entry.
50bbae35 2032
ba2be581
RH
20331999-06-20 H.J. Lu <hjl@gnu.org>
2034
2035 * configure.in (all_libpath): Accumulate across all enabled targets.
2036
f97f7300
RH
2037Sun Jun 20 14:10:33 1999 Richard Henderson <rth@cygnus.com>
2038
2039 * emultempl/armelf.em: Watch EMULATION_LIBPATH instead of
2040 DEFAULT_EMULATION.
2041 * emultempl/elf32.em: Likewise.
2042 * emultempl/sunos.em: Likewise.
2043
3336653a
RH
2044Fri Jun 18 15:24:48 1999 Richard Henderson <rth@cygnus.com>
2045
2046 * Makefile.am (GENSCRIPTS): Pass EMULATION_LIBPATH, not EMUL.
2047 * configure.in (all_emuls): Add targ_extra_libpath.
2048 (all_libpath, EMULATION_LIBPATH): Define.
2049 * configure.tgt (powerpc-*-linux-gnu*): Define targ_extra_libpath.
2050 * genscripts.sh (LIB_PATH): Define if emulation in EMULATION_LIBPATH.
2051
308b1ffd
AS
2052Mon Jun 14 10:38:36 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2053
2054 * ld.texinfo: Fix use of @item vs. @itemx.
2055
aa8804e4
ILT
20561999-06-13 Ian Lance Taylor <ian@zembu.com>
2057
2058 From Thomas Zenker <thz@lennartz-electronic.de>:
2059 * ldgram.y (attributes_opt): Use attributes_list instead of NAME.
2060 (attributes_list, attributes_string): New nonterminals.
2061 * ldlang.c (lang_set_flags): Add invert parameter. Don't handle
2062 '!'.
2063 * ldlang.c (lang_set_flags): Update declaration.
2064
2a275620
ILT
20651999-06-12 Ian Lance Taylor <ian@zembu.com>
2066
2067 * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Don't add
2068 entry_symbol as an undefined symbol when doing a relocateable
2069 link. From <jeffdb@goodnet.com>.
2070
2641b0c9
ILT
20711999-06-12 David O'Brien <obrien@freebsd.org>
2072
2073 * configure.tgt: (i[3456]86-*-freebsd*): Now defaults to ELF.
2074
f75692fe
NC
20751999-06-09 Nick Clifton <nickc@cygnus.com>
2076
2077 * lexsup.c (help): Restore previous format of output.
2078
434d1125
NC
20791999-06-04 Nick Clifton <nickc@cygnus.com>
2080
2081 * emultempl/pe.em: If compiling for arm_epoc_pe rename
2082 interworking functions to avoid a name space clash.
2083
4305932a
RH
20841999-06-02 Jason Merrill <jason@yorick.cygnus.com>
2085
2086 * scripttempl/v850.sc: Add initp support.
2087
46d23b7c
NC
20881999-06-02 Nick Clifton <nickc@cygnus.com>
2089
2090 * emultempl/pe.em: Rename global arm interworking functions to
2091 avoid name collision when all targets BFD is built.
2092
cd785be6
RH
20931999-05-30 Cort Dougan <cort@attis.cs.nmt.edu>
2094
2095 * Makefile.am (ALL_EMULATIONS): Add eelf32ppclinux.o.
2096 * configure.tgt (powerpc-*-linux-gnu): Use it.
2097 * emulparams/elf32ppclinux.sh: New file.
2098
511ab9e9
ILT
20991999-05-29 Ian Lance Taylor <ian@zembu.com>
2100
2101 * ld.texinfo (Options): Clarify that options which refer to files
2102 must be properly ordered.
2103
7ca69e9e
NC
21041999-05-29 Nick Clifton <nickc@cygnus.com>
2105
2106 * emultempl/armelf.em (..._parse_args): New function: Parse
2107 command line option. Accept arm-elf specific command line option
2108 '-p' or '--no-pipeline-knowledge'.
2109 (..._list_options): New function: Describe the new command line
2110 option.
2111 (..._before_allocation): Pass the value of the new variable
2112 no_pipeline_knowledge to bfd_elf32_arm_process_before_allocation.
6ddeca85 2113
7ca69e9e
NC
2114 * emultemp/armelf_oabi.em (..._before_allocation): Pass zero as
2115 the third parameter to bfd_elf32_arm_process_before_allocation.
2116
b3043ee4
NC
21171999-05-28 Nick Clifton <nickc@cygnus.com>
2118
2119 * lexsup.c (help): Minor formatting changes.
2120
0ccf812a
ILT
21211999-05-28 Martin Dorey <mdorey@madge.com>
2122
2123 * configure.tgt (i960-*-elf*): New target.
2124 * emulparams/elf32_i960.sh: New file.
2125 * Makefile.am (ALL_EMULATIONS): Add eelf32_i960.o.
2126 (eelf32_i960.c): New target.
2127 * Makefile.in: Rebuild.
2128
a13cba0d
NC
21291999-05-26 Nick Clifton <nickc@cygnus.com>
2130
6ddeca85 2131 * emulparams/armelf_oabi.sh (TEMPLATE_NAME): Set to armelf_oabi.
a13cba0d 2132
31ce0628
NC
21331999-05-24 Philip Blundell <philb@gnu.org>
2134
2135 * emultempl/armelf.em (before_parse): Set config.dynamic_link and
50bbae35 2136 config.has_shared.
31ce0628
NC
2137 * emulparams/armelf.sh (GENERATE_SHLIB_SCRIPT): Define.
2138 * emulparams/armelf_linux.sh (GENERATE_SHLIB_SCRIPT): Likewise.
2139
1220a729
NC
21401999-04-13 Philip Blundell <philb@gnu.org>
2141
2142 * emultempl/armelf.em: Add definitions related to shared objects
2143 (copied from elf32.em).
2144
3699964a
AS
2145Wed May 19 12:44:26 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2146
2147 * Makefile.am (ALL_EMULATIONS): Remove earmlinux.o and
2148 earm26linux.o, add earmelf_linux.o and earmelf_linux26.o.
2149 * Makefile.in: Regenerated.
2150
06f2f02a
NC
21511999-05-16 Nick Clifton <nickc@cygnus.com>
2152
2153 * emulparams/elf32mcore.sh (GENERATE_SHLIB_SCRIPT): Define.
2154 (TEMPLATE_NAME): Define.
2155
de24ad21
RH
2156Thu May 13 09:48:09 1999 Joel Sherrill (joel@OARcorp.com)
2157
2158 * configure.tgt (i386-*-rtemself*, sh-*-rtemself*): New targets.
2159 (mips*el-*-rtems*, powerpcle-*-rtems*): New targets.
2160
c6c37250
DD
21611999-05-10 DJ Delorie <dj@cygnus.com>
2162
2163 * scripttempl/pe.sc: Specify the output arch, which Ian says is
2164 the Right Thing to do.
2165
2166 * emultempl/pe.em: various changes to parameterize the
2167 target-specific information.
2168 (gld_i386pe_after_open): Detect and fix MS import libraries
2169 by renaming the member objects (which are all named the same).
2170
2171 * pe-dll.c: various changes to parameterize the target-specific
2172 information.
2173 (generate_reloc): support relocs more generically to allow for
2174 expansion.
2175 (pe_exe_build_sections): new; used to add .relocs to .exes
2176 (pe_exe_fill_sections): ditto
2177
626e0105
CM
21781999-05-10 Catherine Moore <clm@cygnus.com>
2179
2180 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
2181 Check for TARGET_IS_arm_epoc_pe.
2182 (gld_${EMULATION_NAME}_before_allocation): Likewise.
2183
4dec4d4e
RH
21841999-05-12 Anthony Green <green@cygnus.com>
2185
2186 * ldlang.c (walk_wild, walk_wild_file, walk_wild_section,
2187 output_section_callback, gc_section_callback): New functions for
2188 generic section walks.
2189 (wild, lang_gc_wild): Use walk_wild.
2190 (wild_file, lang_gc_wild_file): Deleted. Common logic moved to
2191 walk_wild_file.
2192 (wild_section, lang_gc_wild_section): Deleted. Common logic moved
2193 to walk_fild_section. Unique logic moved into callbacks
2194 output_section_callback and gc_section_callback.
2195
252b5132
RH
21961999-04-26 Tom Tromey <tromey@cygnus.com>
2197
2198 * aclocal.m4, configure: Updated for new version of libtool.
2199
252b5132
RH
22001999-04-12 Philip Blundell <pb@nexus.co.uk>
2201
6ddeca85 2202 * emulparams/armelf_linux.sh: New file. Support for ARM
252b5132
RH
2203 GNU/Linux ELF ABI.
2204 * emulparams/armelf_linux26.sh: New file. APCS-26 version of above.
2205 * configure.tgt: For arm*-*-linux-gnu*, set default emulation to
2206 `armelf_linux', and also include `armelf_linux26' and `armelf'.
2207 * Makefile.am: Add rules to make earmlinux.c and earmlinux26.c.
2208 (ALL_EMULATIONS): Add earmlinux.o and earmlinux26.o.
2209 * Makefile.in: Regenerate.
2210
22111999-04-11 Richard Henderson <rth@cygnus.com>
2212
2213 * Makefile.am (ALL_EMULATIONS): Add elf_i386_be.o.
2214 * configure.tgt (i[3456]86-*-beos*): Use it.
2215 * emulparams/elf_i386_be.sh: New file.
2216 * Makefile.in: Rebuild.
2217
2218 * configure.in (environ): Detect declaration.
2219 * ldmain.c (main): Don't declare environ.
2220 * sysdep.h (environ): Declare if needed.
2221 * configure, config.in: Rebuild.
2222
22231999-04-11 Richard Henderson <rth@cygnus.com>
2224
2225 * ldgram.y (ldgram_vers_current_lang): New.
2226 (vers_defns): Accept `extern "lang" { }' syntax.
2227 * ldlex.l (vers_node_nesting): New.
2228 (V_IDENTIFIER): Accept . and $ in symbols.
2229 (VERS_NODE): Accept `extern "lang" { }' tokens. Nest VERS_NODE states.
2230 * ldlang.c (lang_new_vers_regex): New `lang' argument. Update callers.
2231 (lang_vers_match_lang_c): New function.
2232 (lang_vers_match_lang_cplusplus): New function.
2233 (lang_vers_match_lang_java): New function.
2234 (lang_do_version_exports_section): Fix iteration. Don't free
2235 section contents, as it is still in use by the patterns.
2236
22371999-04-10 Richard Henderson <rth@cygnus.com>
2238
2239 * ldmain.c (main): Init link_info.no_undefined.
2240 * lexsup.c: Add command-line option --no-undefined.
2241
252b5132
RH
22421999-04-06 Ian Lance Taylor <ian@zembu.com>
2243
2244 * ld.h (LC_MESSAGES): Never define.
2245 * ldmain.c (main): Don't pass LC_MESSAGES to setlocale if the
2246 system does not define it.
2247
22481999-04-06 H.J. Lu <hjl@gnu.org>
2249
2250 * ldmain.h (demangling): Declare.
2251 * ldmain.c (demangling): New global variable.
2252 (main): Initialize demangling.
2253 * ldmisc.c (vfinfo): Don't demangle symbol if ! demangling.
2254 * lexsup.c (ld_options, parse_args): Handle --demangle and
2255 --no-demangle.
2256 * ld.texinfo, ld.1: Document --demangle/--no-demangle.
2257
2258 * ldlex.l (V_IDENTIFIER): Allow '.' in symbol.
2259
22601999-04-05 Chris Torek <torek@BSDI.COM>
2261
2262 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Check that
2263 a shared library really exists, avoiding broken symlinks.
2264
2265 * ldfile.c (ldfile_open_file): Generate a better error message if
2266 we can't find a -l file.
2267
22681999-04-05 DJ Delorie <dj@cygnus.com>
2269
2270 * configure.tgt (i386-*-pe): add targ_extra_ofiles for other PE
2271 targets (i386-pe and i386-winnt)
2272
22731999-04-04 Ian Lance Taylor <ian@zembu.com>
2274
2275 * deffilep.y: Include "sysdep.h" and "ldmisc.h".
2276 (def_file_add_directive): Change return type to void. Remove
2277 unused locals sh_reserve, sh_commit, and j.
2278 (def_ungetc): Always return a value.
2279 (def_lex): Correct parenthesization of || within &&.
2280 * deffile.h (def_file_add_directive): Update declaration.
2281 * pe-dll.c: Include <time.h>, <ctype.h>, and "ldemul.h".
2282 (generate_edata): Remove unused local i.
2283 (quoteput): Add cast to avoid warning.
2284 (pe_dll_generate_def_file): Fix type in format string.
2285 (quick_symbol): Remove unused local blhe.
2286 (pe_dll_generate_implib): Add cast to avoid warning.
2287 (pe_process_import_defs): Remove unused locals ar_head, ar_tail,
2288 and n.
2289 (pe_as16): Comment out.
2290
22911999-04-04 Don Bowman <don@pixsci.com>
2292
2293 * configure.tgt: Add mips*-*-vxworks* target.
2294
22951999-03-31 Nick Clifton <nickc@cygnus.com>
2296
2297 * Makefile.in (ALL_EMULATIONS): Add earm_epoc_pe.o
2298 Add build rule and dependencies for earm_epoc_pe.c.
2299
2300 * emulparams/arm_epoc_pe.sh: New file.
2301
2302 * configure.tgt: Add 'targ_extra_ofiles' for ARM based PE
6ddeca85 2303 targets.
252b5132
RH
2304
23051999-03-31 Philip Blundell <pb@nexus.co.uk>
2306
2307 * configure.tgt: Match `arm*-*-linux-gnu*' not
50bbae35 2308 `armv*-*-linux-gnu'.
252b5132
RH
2309
23101999-03-26 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2311
2312 * scripttempl/elf.sc: Put the .eh_frame and .gcc_except_table
2313 sections in the data segment.
2314
2315Fri Mar 26 12:05:51 1999 Catherine Moore <clm@cygnus.com>
2316
2317 * ld.h (wildcard_spec): Add exclude_name.
6ddeca85 2318 * ldgram.y (EXCLUDE_FILE): New token.
252b5132
RH
2319 (wildcard_spec): Set exclude_name.
2320 (file_NAME_list): Recognize EXCLUDE_FILE.
50bbae35 2321 * ldlang.c (wild_section): Check for excluded files.
252b5132
RH
2322 (print_wild_statement): Print excluded files.
2323 (lang_add_wild): New argument exclude_filename.
2324 Set exclude_filename.
2325 * ldlang.h (lang_wild_statement_type): Add exclude_filename.
2326 * ldlex.l: New token EXCLUDE_FILE.
2327 * mri.c (mri_draw_tree): Add argument to lang_add_wild.
2328 * scripttempl/elf.sc (CTOR, DTOR): Exclude crtend.o from ctor wildcard.
2329 Reorder sorted and unsorted ctors.
2330 * scripttempl/elfd10v.sc (CTOR, DTOR): Likewise.
2331 * scripttempl/elfd30v.sc (CTOR, DTOR): Likewise.
2332 * scripttempl/elfppc.sc (CTOR, DTOR): Likewise.
50bbae35 2333
252b5132
RH
23341999-03-26 Nick Clifton <nickc@cygnus.com>
2335
2336 * ldlang.c (lang_gc_sections): If entry_symbol is not defined,
2337 default to "start".
2338
23391999-03-03 Nick Clifton <nickc@cygnus.com>
2340
2341 * scripttempl/elf.sc: Add explicit placements for the .eh_frame
50bbae35 2342 and .gcc_except_table sections.
252b5132
RH
2343
2344Wed Mar 3 09:13:34 1999 Catherine Moore <clm@cygnus.clm>
50bbae35
AM
2345
2346 * scripttempl/elf.sc: Remove .end.ctors and .end.dtors
2347 sections. Reorder .ctors section entries.
2348 * scripttempl/elfd10v.sc: Likewise.
2349 * scripttempl/elfd30v.sc: Likewise.
2350 * scripttempl/elfppc.sc: Likewise.
252b5132
RH
2351
23521999-02-26 Jim Lemke <jlemke@cygnus.com>
2353
2354 * ldmain.c (main): Wrong error msg for -r and --mpc860c0.
2355
23561999-02-25 Nick Clifton <nickc@cygnus.com>
2357
2358 * ldlang.c (lang_check_section_addresses): Remove extraneous
50bbae35 2359 backslash.
252b5132
RH
2360
2361Thu Feb 25 15:07:24 1999 Catherine Moore <clm@cygnus.com>
2362
2363 * scripttempl/elf.sc: Don't gather .ctor and .dtor sections
50bbae35 2364 for relocateable links.
252b5132
RH
2365 * scripttempl/elfd10v.sc: Likewise.
2366 * scripttempl/elfd30v.sc: Likewise.
2367 * scripttempl/elfppc.sc: Likewise.
50bbae35 2368
252b5132
RH
23691999-02-22 Jim Lemke <jlemke@cygnus.com>
2370
2371 * ldint.texinfo: remove extraneous right brace.
2372 * ldmain.c (main): initialize and check option "mpc860c0".
2373 * lexsup.c (ld_options, parse_args): add option "mpc860c0".
2374
2375Wed Feb 17 12:10:06 1999 Stan Cox <scox@cygnus.com>
2376
2377 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Remove special
50bbae35 2378 .reginfo section handling.
252b5132
RH
2379 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Likewise.
2380 * emulparams/elf32elmip.sh (INITIAL_READONLY_SECTIONS): Removed
2381 * emulparams/elf32ebmip.sh (INITIAL_READONLY_SECTIONS): Removed
2382
23831999-02-17 Nick Clifton <nickc@cygnus.com>
2384
2385 Patch from: Scott Bambrough <scottb@corelcomputer.com>
50bbae35 2386
252b5132 2387 * configure.tgt: Added armv*-*-linux-gnu to $targ_emul
50bbae35 2388 recognition.
252b5132
RH
2389
2390Wed Feb 17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
50bbae35
AM
2391
2392 * emultempl/armelf_oabi.em
2393 (bfd_elf32_arm_allocate_interworking_sections,
2394 bfd_elf32_arm_get_bfd_for_interworking,
2395 bfd_elf32_arm_process_before_allocation): Define them to use the
2396 old ABI versions of the functions.
252b5132
RH
2397
2398Tue Feb 16 16:48:19 1999 Ian Lance Taylor <ian@cygnus.com>
2399
2400 * configure.in: Change AC_PREREQ to 2.13. Change AM_PROG_INSTALL
2401 to AC_PROG_INSTALL. Change AM_EXEEXT to AC_EXEEXT.
2402 * Makefile.am (earmelf_oabi.c): Changes spaces to tab.
2403 * acconfig.h: Remove.
2404 * aclocal.m4: Rebuild.
2405 * configure: Rebuild.
2406 * Makefile.in: Rebuild.
2407
2408Mon Feb 15 18:21:48 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
2409
2410 * ldexp.h (struct etree_value_type): Change valid onto valid_p.
2411
2412 * ldexp.c (new_abs): Ditto.
2413 (new_rel, new_rel_from_section, fold_binary, invalid, fold_name,
50bbae35
AM
2414 exp_fold_tree, exp_binop, exp_trinop, stat_alloc,
2415 exp_get_abs_int): Ditto
252b5132
RH
2416
2417 * ldlang.c (print_assignment, lang_size_sections,
2418 lang_do_assignments): Ditto.
50bbae35 2419
252b5132
RH
24201999-02-11 Nick Clifton <nickc@cygnus.com>
2421
2422 * ldlang.c (lang_check_section_addresses): New function: Check
2423 addresses assigned to section for overlaps.
2424 (lang_process): Call lang_check_section_addresses if suitable.
2425
2426 * ld.h: Add new boolean field to args_type structure:
2427 'check_section_addresses'.
2428
2429 * ldmain.c: Initialise check_section_addresses field to true.
2430
2431 * lexsup.c: Add new command line options '--no-check-sections' and
2432 '--check-sections'.
2433
2434 * ld.texinfo: Document new command line options '--check-sections'
2435 and '--no-check-sections'.
2436
24371999-02-08 Nick Clifton <nickc@cygnus.com>
2438
2439 * configure.tgt: Add support for StrongARM target.
2440
2441Wed Feb 3 19:41:01 1999 Ian Lance Taylor <ian@cygnus.com>
2442
2443 * ldctor.c (ldctor_build_sets): Just set SEC_KEEP once. Check for
2444 an owner of a section before using it to look up a reloc type.
2445 Don't set SEC_KEEP for the absolute section.
2446
2447Mon Feb 1 11:39:46 1999 Catherine Moore <clm@cygnus.com>
2448
50bbae35
AM
2449 * Makefile.am (earmelf_oabi.o): New.
2450 * Makefile.in: Regenerate.
2451 * configure.tgt (arm-*-oabi): New.
2452 (thumb-*-oabi): New.
2453 * emulparams/armelf_oabi.sh: New.
2454 * emultempl/armelf_oabi.em: New.
252b5132
RH
2455
24561999-01-31 17:57:31 1998 Michael Meissner <meissner@cygnus.com>
2457
2458 * scripttempl/elfppc.sc: Add support for -fleading-underscores
2459 switch in all linker generated symbols.
2460
2461 * configure.tgt (powerpc{,le}*-*-vxworks): Add as aliases for
2462 powerpc{,le}-*-eabi.
2463
2464Wed Jan 20 17:01:48 1999 Ian Lance Taylor <ian@cygnus.com>
2465
2466 * configure.tgt (i[3456]86-*-solaris2*): New target. From Pavel
2467 Roskin <pavel_roskin@geocities.com>.
2468
24691999-01-19 Nick Clifton <nickc@cygnus.com>
2470
2471 * ldlang.c (lang_size_sections): Count loadable sections as
50bbae35 2472 contributing to the size of the current segment.
252b5132
RH
2473
24741999-01-15 Nick Clifton <nickc@cygnus.com>
2475
2476 * ldlang.c (lang_size_sections): Only update the current
50bbae35
AM
2477 address of a region if the section just placed into it is an
2478 allocated section.
252b5132
RH
2479
24801999-01-12 Nick Clifton <nickc@cygnus.com>
2481
2482 * Makefile.am: Replace efr30.o with eelf32fr30.o.
2483 * Makefile.in: Regenerate.
2484
2485 * configure.tgt: Replace fr30 with elf32fr30.
2486
2487 * emulparams/elf32fr30.sh: New file: Replaces fr30.sh, and uses
2488 generic elf.sc script. Also replaces the .stack section with a
2489 user definable symbol __stack.
2490
24911999-01-11 Nick Clifton <nickc@cygnus.com>
2492
2493 * scripttempl/fr30.sc: Fill .init and .fini sections with NOP
50bbae35 2494 pattern.
252b5132
RH
2495
24961999-01-03 Ken Raeburn <raeburn@cygnus.com>
2497
2498 * Makefile.am (check-DEJAGNU): No longer provide HOSTING_EMU,
2499 HOSTING_CRT0, HOSTING_LIBS; the test suite can extract them from
2500 configure.host and configure.tgt now.
2501 * Makefile.in: Rebuild.
2502
25031998-12-27 Ulrich Drepper <drepper@cygnus.com>
2504
2505 * lexsup.c (parse_args, case OPTION_RPATH): Avoid adding duplicate
2506 elements to rpath.
2507
2508Thu Dec 10 11:12:28 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2509
2510 * Makefile.am (ALL_EMULATIONS): Remove pe-dll.o and deffilep.o.
2511 (ALL_EMUL_EXTRA_OFILES): New variable. Put them here instead.
2512 * configure.in: Set EMUL_EXTRA_OFILES to $(ALL_EMUL_EXTRA_OFILES)
2513 if configuring with all targets.
2514 * configure, Makefile.in, aclocal.m4: Rebuild.
2515
2516 * emultempl/pe.em (pe_enable_stdcall_fixup): Make static.
2517 (pe_dll_do_default_excludes): Removed, unused.
2518 (pe_def_file, pe_dll_export_everything, pe_dll_kill_ats,
2519 pe_dll_stdcall_aliases): Don't initialize them, this file may be
2520 compiled more than once.
2521 * pe-dll.c (pe_def_file, pe_dll_export_everything,
2522 pe_dll_do_default_excludes, pe_dll_kill_ats,
2523 pe_dll_stdcall_aliases): Define and initialize them here instead.
2524 (generate_reloc): Fix allocation of reloc_addresses array to use
2525 bfd_vma instead of unsigned long. Fix element size in qsort call.
2526 (reloc_sort): Compare pointers to bfd_vma instead of unsigned
2527 long.
2528
2529Mon Dec 7 21:10:09 1998 J.J. van der Heijden <j.j.vanderheijden@student.utwente.nl>
2530
2531 * configure.tgt (i[3456]86-*-mingw32*): Add cygwin target specific
2532 files.
2533
2534Sun Dec 6 16:33:33 1998 Ian Lance Taylor <ian@cygnus.com>
2535
2536 * configure.tgt (m68*-*-gnu*): New target. From Aymeric Vincent
2537 <aymeric.vincent@emi.u-bordeaux.fr>.
2538
25391998-12-04 Nick Clifton <nickc@cygnus.com>
2540
2541 * emulparams/fr30.sh (TEXT_START_ADDR): Change TEXT_START_ADDR
2542 from 0x100000 to 0x10000 so that it fits in 20 bits.
2543
2544Sat Nov 28 22:32:20 1998 Ian Lance Taylor <ian@cygnus.com>
2545
2546 * ldemul.h (ldemul_recognized_file): Declare.
2547
2548Sat Nov 28 22:30:55 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2549
2550 * ldlang.c (lang_add_wild): Don't pretend that there is an input
2551 file if the filename is a wildcard pattern.
2552
25531998-11-25 DJ Delorie <dj@cygnus.com>
2554
2555 * ldemul.h (ld_emulation_xfer_struct): new hook "recognized_file"
2556 * ldemul.c (ldemul_recognized_file): new function, new hook
2557 * ldint.texinfo: document new hook.
2558 * ldlang.c (load_symbols): call recognized_hook for all objects we
2559 do recognize, in case the emulation needs to handle them
2560 specially. PE DLLs use this.
2561 * pe-dll.c (pe_dll_generate_def_file): take out hack and debug
2562 printfs
2563 * emultempl/pe.em (gld_i386_recognized_file): new function
2564 (gld_i486_unrecognized_file): take out hack
2565
25661998-11-23 DJ Delorie <dj@cygnus.com>
2567
2568 * pe-dll.c (fill_edata): fill in timestamp
2569 (make_head): name object files sequentially to ensure
2570 they link in the right order.
2571 (make_tail): same here
2572 (pe_process_import_defs): use sequential names for bfds to ensure
2573 proper link order.
2574 (pe_implied_import_dll): new function; handles linking directly
2575 against DLLs by simulating IMPORTS directives. * emultempl/pe.em
2576 (gld_i386pe_before_parse): hack bfd to not recognize .dll files
2577 via bfd_pe_dll_not_recognized_hack
2578
25791998-11-23 DJ Delorie <dj@cygnus.com>
2580
2581 * emultempl/pe.em (gld_i386pe_parse_args): Conditionalize call to
2582 pe_dll_add_excludes
2583
2584Mon Nov 23 14:36:18 1998 Nick Clifton <nickc@cygnus.com>
2585
2586 * emultempl/pe.em (after_parse): Only create an undefined entry
2587 symbol if one has been specified.
2588
25891998-11-23 DJ Delorie <dj@cygnus.com>
2590
2591 * emultempl/pe.em (gld_i386pe_after_open): call
2592 pe_process_import_defs
2593 * pe-dll.c (pe_dll_generate_def_file): calculate BASE from
2594 pe_data, only print if actually set. Print version only if
2595 set.
2596 (save_relocs): save relocs for both input and output.
2597 (make_one): support internal/external different names.
2598 (pe_dll_generate_implib): support new make_one
2599 (pe_process_import_defs): new function; handles IMPORT
2600 directives in .def files.
2601
2602Fri Nov 20 13:06:49 1998 Nick Clifton <nickc@cygnus.com>
2603
2604 * ldmisc.c (vfinfo): Cope with empty symbol names.
2605
2606Thu Nov 19 13:31:15 1998 Nick Clifton <nickc@cygnus.com>
2607
2608 * scripttempl/pe.sc: Add provision of '_end' symbol.
2609
2610Wed Nov 18 18:18:43 1998 Geoffrey Noer <noer@cygnus.com>
2611
2612 * configure.tgt: change refs from cygwin32* to cygwin*.
2613 * aclocal.m4: regenerate
2614 * configure.in: don't need to call AM_CYGWIN32.
2615 * configure: regenerate
2616
2617Mon Nov 16 22:14:07 1998 DJ Delorie <dj@cygnus.com>
2618
2619 * emultempl/pe.em (gld_i386_finish): generate import library
2620 * deffile.h: add hint member.
2621 * pe-dll.c (pe_dll_generate_implib): New function with helpers;
50bbae35 2622 generates the import library directly from the export table.
252b5132
RH
2623 (fill_edata): remember the actual hint for the import library.
2624
2625Sat Nov 14 14:36:24 1998 Ian Lance Taylor <ian@cygnus.com>
2626
2627 * ld.1: Some cleanups from NOKUBI Hirotaka <hnokubi@yyy.or.jp>.
2628
2629Thu Nov 12 19:21:57 1998 Dave Brolley <brolley@cygnus.com>
2630
2631 * po/ld.pot: Regenerated.
2632 * po/POTFILES.in: Regenerated.
2633 * configure: Regenerated.
2634 * aclocal.m4: Regenerated.
2635 * Makefile.in: Regenerated.
2636
2637Wed Nov 11 18:10:15 1998 DJ Delorie <dj@cygnus.com>
2638
2639 * pe-dll.c (generate_reloc): don't output PE relocs for sections
50bbae35 2640 that won't be loaded.
252b5132
RH
2641
2642Wed Nov 11 13:44:54 1998 DJ Delorie <dj@cygnus.com>
2643
2644 * pe-dll.c (fill_edata): don't strip underscores
2645
2646Tue Nov 10 21:28:19 1998 DJ Delorie <dj@cygnus.com>
2647
2648 * ld.texinfo: added i386pe option summary
2649
2650Tue Nov 10 17:53:17 1998 DJ Delorie <dj@cygnus.com>
2651
2652 * pe-dll.c (process_def_file): properly note undefined exported
50bbae35 2653 symbols, clean up old code.
252b5132
RH
2654 (pe_dll_generate_def_file): don't crash if pe_def_file is NULL
2655 * emultempl/pe.em (gld_i386_parse_args): add
50bbae35 2656 (en/dis)able-stdcall-fixups
252b5132
RH
2657 (pe_fixup_stdcalls): warn about stdcall fixups
2658 (gld_i386_unrecognized_file): make exported symbols undefs so that
50bbae35 2659 archive members get pulled in
252b5132
RH
2660
2661Tue Nov 10 14:50:51 1998 Catherine Moore <clm@cygnus.com>
2662
50bbae35
AM
2663 * scripttempl/elfd10v.sc: Add KEEP attribute to .init,
2664 .fini, .dtors and .ctors. Add .data and .text
2665 wildcards to support section garbage collection.
252b5132
RH
2666
2667Mon Nov 9 22:52:50 1998 DJ Delorie <dj@indy.delorie.com>
2668
2669 * deffilep.y: properly handle relocs with multiple def_files,
2670 cache import module names
2671
2672Mon Nov 9 22:44:58 1998 DJ Delorie <dj@cygnus.com>
2673
2674 * pe-dll.c (process_def_file): don't assume exports won't move
2675 during a realloc
2676
2677Mon Nov 9 16:41:30 1998 DJ Delorie <dj@cygnus.com>
2678
2679 * pe-dll.c: New file; direct support for PE DLLs
2680 * deffile.h: New file; direct support for PE DLLs
2681 * deffilep.y: New file; direct support for PE DLLs
2682 * emultempl/pe.em: add direct support for PE DLLs
2683 * configure.tgt: allow target-specific extra files
2684 * configure.in: allow target-specific extra files
2685 * ldlang.c (lang_add_assignment): return the assignment so that
50bbae35
AM
2686 one can change the value later based on the object files (pe-dll
2687 DEF files do this)
252b5132
RH
2688 * ldint.texinfo: add section for emulation walkthrough
2689 * Makefile.am: add new files and target-specific extra files
2690 * emultempl/pe.em (gld_i386_list_options): list dll-specific
2691 options.
2692 * pe-dll.c (process_def_file): auto-export everything if
2693 nothing is otherwise exported.
50bbae35 2694
252b5132
RH
2695Wed Nov 4 16:39:18 1998 Nick Clifton <nickc@cygnus.com>
2696
2697 * Makefile.am: Add support for FR30 target.
2698 * configure.tgt: Add support for FR30 target.
2699 * Makefile.in: Regenerate.
2700 * emulparams/fr30.sh: New file.
2701 * scripttemp/fr30.sc: New file.
50bbae35 2702
252b5132
RH
2703Mon Nov 2 14:47:15 1998 Catherine Moore <clm@cygnus.com>
2704
50bbae35
AM
2705 * ldmain.c (main): Don't report error for dynamic links and
2706 --gc-sections.
252b5132
RH
2707
27081998-10-26 16:05 Ulrich Drepper <drepper@cygnus.com>
2709
2710 * lexsup.c (ld_options): Change text of -O to Optimize output file".
2711 (parse_args): Set link_info.optimize based on -O argument.
2712 * ldmain.c (main): Initialize link_info.optimze to false.
2713 * ld.texinfo: Describe -O option.
2714 * ld.1: Likewise.
2715
2716Mon Oct 12 14:29:56 1998 Nick Clifton <nickc@cygnus.com>
2717
2718 * scripttempl/v850.sc: Move .sbss and .scommon sections into their
2719 own segment, so that they can be next to the .bss section and so
2720 initialised by the same piece of code.
2721
2722Fri Oct 9 15:59:52 1998 Catherine Moore <clm@cygnus.com>
2723
50bbae35
AM
2724 * scripttempl/elf.sc: Merge .sdata.* etc sections.
2725 * ldctor.c (ldctor_build_sets): Set SEC_KEEP for
2726 ctor sections.
252b5132
RH
2727
2728Mon Oct 5 09:40:43 1998 Catherine Moore <clm@cygnus.com>
2729
50bbae35
AM
2730 * ldmain.c (main): Error if --gc-sections and
2731 dyanmic linking.
2732 * scripttempl/v850.sc: Add KEEP attribute to .init,
2733 .fini, .dtors and .ctors. Add .data and .text
2734 wildcards to support section garbage collection.
252b5132
RH
2735
2736Wed Sep 30 11:19:15 1998 Nick Clifton <nickc@cygnus.com>
2737
2738 * scripttempl/v850.sc: Rename .call_table section to
2739 .call_table_data and create a new section called
2740 .call_table_text.
2741
2742Sun Sep 20 00:43:26 1998 Ian Lance Taylor <ian@cygnus.com>
2743
2744 * scripttempl/elf.sc: Add alignment at the end of the .bss
2745 section, so that it is included in the memsize of the segment.
2746
2747Fri Sep 18 13:42:42 1998 Catherine Moore <clm@cygnus.com>
2748
50bbae35
AM
2749 * emultempl/elf32.em (gld_place_orphan): Don't process for
2750 sections with SEC_EXCLUDE flag.
252b5132
RH
2751
2752Fri Sep 4 09:24:02 1998 Nick Clifton <nickc@cygnus.com>
2753
2754 * emulparams/d30velf.sh (TEXT_SIZE): Increased to 2000K.
2755 (DATA_SIZE): Increased to 2000K.
2756
2757Thu Sep 3 17:30:58 1998 Richard Henderson <rth@cygnus.com>
2758
2759 * emulparams/d10velf.sh (TEMPLATE_NAME): Use elf32.
2760
2761Mon Aug 31 01:06:00 1998 Catherine Moore <clm@cygnus.com>
2762
50bbae35
AM
2763 * Makefile.am: Change armelf.sc to elf.sc
2764 * Makefile.in: Regenerate.
252b5132
RH
2765
2766Mon Aug 31 11:12:04 1998 Catherine Moore <clm@cygnus.com>
2767
50bbae35
AM
2768 * emulparams/armelf.sh: Change SCRIPT_NAME to
2769 elf. Change TEXT_START_ADDR to 0x8000. Define
2770 OTHER_TEXT_SECTIONS, OTHER_BSS_SYMBOLS and
2771 OTHER_BSS_END_SYMBOLS.
2772 * scripttempl/elf.sc: Modify to use
2773 OTHER_BSS_END_SYMBOLS.
2774 * scripttempl/elfarm.sc: Remove file.
252b5132
RH
2775
2776Tue Aug 18 12:05:34 1998 Catherine Moore <clm@cygnus.com>
2777
50bbae35
AM
2778 * emultempl/armelf.em (gld_armelf_before_allocation):
2779 Add bfd_ prefix to elf32_arm_process_before_allocation
2780 and elf32_arm_allocate_interworking_sections.
2781 (gld_armelf_after_open): Add bfd_ prefix to
2782 elf32_arm_get_bfd_for_interworking.
252b5132
RH
2783
2784Fri Aug 14 15:34:29 1998 Ian Lance Taylor <ian@cygnus.com>
2785
2786 * Makefile.am: Rebuild dependencies.
2787 * Makefile.in: Rebuild.
2788
2789 * ldgram.y: Include "ldctor.h".
2790 (statement): Accept SORT around CONSTRUCTORS.
2791 * ldctor.c: Include <ctype.h>.
2792 (constructors_sorted): New global variable.
2793 (ctor_prio, ctor_cmp): New static functions.
2794 (ldctor_build_sets): Sort constructors if requested.
2795 * ldctor.h (constructors_sorted): Declare.
2796 * ldlang.c (print_statement): Print sorted CONSTRUCTORS
2797 correctly.
2798 * scripttempl/elf.sc: Add sort around CONSTRUCTORS.
2799 * ld.texinfo (Output Section Keywords): Document SORT
50bbae35 2800 (CONSTRUCTORS).
252b5132
RH
2801
2802Thu Aug 13 12:20:39 1998 Catherine Moore <clm@cygnus.com>
2803
50bbae35
AM
2804 * emulparams/armelf.sh: Define TEMPLATE_NAME to armelf.
2805 * scripttempl/elfarm.sc: Include .glue_7t and .glue7
2806 sections.
2807 * emultempl/armelf.em: New file.
252b5132
RH
2808
2809Thu Aug 13 12:52:45 1998 H.J. Lu <hjl@gnu.org>
2810
2811 * Makefile.am (ld.dvi): Use " instead of ' for MAKEINFO.
2812 * Makefile.in: Rebuild.
2813
2814Tue Aug 11 16:17:01 1998 Catherine Moore <clm@cygnus.com>
2815
50bbae35
AM
2816 * scripttempl/elfarm.sc: Change text start address
2817 back to zero.
252b5132
RH
2818
2819Tue Aug 11 10:01:12 1998 Jeffrey A Law (law@cygnus.com)
2820
2821 * emulparms/mn10200.sh (MAX_PAGESIZE): Define to 1.
2822 * emulparms/mn10300.sh (MAX_PAGESIZE): Define to 1.
2823
2824Sun Aug 9 20:31:27 1998 Catherine Moore <clm@cygnus.com>
2825
50bbae35
AM
2826 * scripttempl/elfarm.sc: Set text start address to
2827 0x8000. Add __bss_end definition.
252b5132
RH
2828
2829Sat Aug 1 11:47:37 1998 Catherine Moore <clm@cygnus.com>
2830
50bbae35
AM
2831 * scripttempl/elfarm.sc: New file.
2832 * emulparams/armelf.sh: Set SCRIPT_NAME to elfarm.
252b5132
RH
2833
2834Fri Jul 31 15:56:16 1998 Catherine Moore <clm@cygnus.com>
2835
50bbae35
AM
2836 * emulparams/armelf.sh: New file.
2837 * configure.tgt: Recognize thumb-elf and arm-elf.
2838 * Makefile.am (earmelf.o): New.
2839 * Makefile.in: Rebuild.
252b5132
RH
2840
2841Fri Jul 24 12:00:57 1998 Ian Lance Taylor <ian@cygnus.com>
2842
2843 * Makefile.am (install-exec-local): Don't remove the file before
2844 checking whether $(bindir) == $(tooldir)/bin. From Maciej
2845 W. Rozycki <macro@ds2.pg.gda.pl>.
2846 * Makefile.in: Rebuild.
2847
2848 * configure.tgt: Recognize h8[35]00*-coff* as well as -hms*.
2849
2850Thu Jul 23 11:15:12 1998 Ian Lance Taylor <ian@cygnus.com>
2851
2852 * scripttempl/aout.sc: If ALIGNMENT is defined, use it to set
2853 alignment of end symbol.
2854 * scripttempl/elf.sc: Likewise.
2855 * emulparams/sun4.sh (ALIGNMENT): Define.
2856 * emulparams/elf32_sparc.sh (ALIGNMENT): Define.
2857 * ldint.texinfo (emulation parameters): Document ALIGNMENT.
2858
2859 * lexsup.c (parse_args): Add missing break statement.
2860
2861 * ldlang.c (lang_gc_sections_1): Add default case to switch to
2862 avoid warnings.
2863
2864Tue Jul 14 15:42:17 1998 Richard Henderson <rth@cygnus.com>
2865
2866 * configure.tgt (i?86-*-beos{pe,elf,}*): Recognize.
2867 * Makefile.am (ei386beos.o): New.
2868 * emulparams/i386beos.sh: New file.
2869 * emultempl/beos.em, scripttempl/i386beos.sc: New file.
2870
2871Tue Jul 14 15:35:42 1998 Richard Henderson <rth@cygnus.com>
2872
2873 * lexsup.c: New option --version-exports-section.
2874 * ld.h (struct args_type): Add version_exports_section.
2875 * ldlang.c (lang_do_version_exports_section): New function.
2876 (lang_process): Call it.
2877
2878Mon Jul 13 13:20:23 1998 Steve Chamberlain <sac@transmeta.com>
2879
2880 * ldlex.l: Accept ASSERT.
2881 * ldgram.y (exp): Add ASSERT_K case.
2882 * ldexp.h (node_type): Add etree_assert to node_class enum.
2883 (etree_type): Add assert_s field.
2884 (exp_assert): Declare.
2885 * ldexp.c (exp_fold_tree): Handle etree_assert.
2886 (exp_assert): New function.
2887 (exp_print_tree): Handle etree_assert.
2888 * ld.texinfo (Miscellaneous Commands): Document ASSERT.
2889
2890Wed Jul 8 14:03:12 1998 Ian Lance Taylor <ian@cygnus.com>
2891
2892 * ldgram.y: Change MAX to MAX_K and MIN to MIN_K, to avoid
2893 conflicts with system header files. Change all uses.
2894
2895 * Makefile.am (MAINTAINERCLEANFILES): Define.
2896 * Makefile.in: Rebuild.
2897
2898Tue Jul 7 18:03:22 1998 Ian Lance Taylor <ian@cygnus.com>
2899
2900 * Makefile.am (ldver.texi): New target.
2901 (ld.info, ld.dvi): Depend upon ldver.texi.
2902 * ld.texinfo: Include ldver.texi. Mention version number on title
2903 page and in top node.
2904 * Makefile.in: Rebuild.
2905
2906Mon Jul 6 14:55:13 1998 Ian Lance Taylor <ian@cygnus.com>
2907
2908 * configure.tgt (i[3456]86-*-solaris*): New target.
2909
2910Fri Jul 3 14:19:06 1998 Ian Lance Taylor <ian@cygnus.com>
2911
2912 * ldlang.c (wild_section): Don't get an assertion failure if the
2913 section is discarded.
2914
2915 * scripttempl/pe.sc: Use SORT to sort sections appropriately.
2916 * emultempl/pe.em (sort_by_file_name): Remove.
2917 (sort_by_section_name): Remove.
2918 (sort_sections_1, sort_sections): Remove.
2919 (gld_${EMULATION_NAME}_before_allocation): Don't call
2920 sort_sections.
2921 (hold_section, hold_section_name): New static variables.
2922 (hold_use, hold_text, hold_rdata, hold_data, hold_bss): Likewise.
2923 (gld_${EMULATION_NAME}_place_orphan): Rewrite. Look for a good
2924 place to put the section. Align the section. Sort the input
2925 sections by name.
2926 (gld_${EMULATION_NAME}_place_section): New static function.
2927
2928 * ldlang.c (wild_sort): When sorting by file name, sort by archive
2929 name first.
2930
2931 * emultempl/pe.em (set_pe_subsystem): Don't call
2932 ldlang_add_undef.
2933 (gld_${EMULATION_NAME}_after_parse): New static function.
2934 (ld_${EMULATION_NAME}_emulation): Use new after_parse function
2935 rather than after_parse_default.
2936
2937 * ldgram.y (extern_name_list): Do not require symbols to be
2938 separated by commas.
2939 (ifile_p1): Add EXTERN.
2940 * ldlex.l: Accept EXTERN in BOTH and SCRIPT mode as well as MRI
2941 mode.
2942 * ld.texinfo (Options): Mention that EXTERN is equivalent to -u.
2943 (Miscellaneous Commands): Document EXTERN.
2944
2945Wed Jul 1 19:40:34 1998 Richard Henderson <rth@cygnus.com>
2946
2947 * ld.h (args_type): Add gc_sections.
2948 * ldgram.y (ldgram_had_keep, KEEP): New.
2949 (input_section_spec_no_keep): Rename from old input_section_spec.
2950 (input_section_spec): New. Recognize KEEP.
2951 * ldlang.c (wild_section): Handle keep sections.
2952 (lang_gc_wild_section, lang_gc_wild_file, lang_gc_wild): New.
2953 (lang_gc_sections_1, lang_gc_sections): New.
2954 (lang_process): Invoke lang_gc_sections.
2955 (lang_add_wild): Add keep argument. Update all callers.
2956 * ldlang.h (lang_wild_statement_struct): Add keep_sections.
2957 * ldlex.l (KEEP): Match it.
2958 * ldmain.c (main): Error on -r and --gc-sections.
2959 * lexsup.c: Add --gc-sections.
2960
2961 * scripttempl/elf.sc: Merge .text.* etc sections appropriately.
2962 Mark startup sections with KEEP.
2963 * scripttempl/elfppc.sc: Likewise.
2964
2965 * ld.texinfo: Update for --gc-sections and KEEP.
2966
2967Wed Jul 1 15:21:20 1998 Ian Lance Taylor <ian@cygnus.com>
2968
2969 From Peter Jordan <pjordan@chla.usc.edu>:
2970 * scripttempl/i386go32.sc: Correct constructor handling for -u.
2971
2972Tue Jun 23 15:17:27 1998 Ian Lance Taylor <ian@cygnus.com>
2973
2974 * Makefile.am (install-data-local): Make ldscripts subdirectory.
2975 * Makefile.in: Rebuild.
2976
2977Tue Jun 23 15:17:04 1998 Mike Stump <mrs@wrs.com>
2978
2979 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
2980 with the program transform name.
2981 * Makefile.in: Rebuild.
2982
2983Sun Jun 21 23:55:16 1998 Jeffrey A Law (law@cygnus.com)
2984
2985 * ld.texinfo: Note that -relax may make symbolic debugging
2986 impossible on some platforms.
2987
2988Tue Jun 16 12:51:13 1998 Geoff Keating <geoffk@ozemail.com.au>
2989
2990 * Makefile.am (Makefile): Remove target.
2991 (config.status): New target.
2992 * Makefile.in: Rebuild.
2993
2994 * configure.host (powerpc*-*-linux-gnu*): New host.
2995
2996Fri Jun 12 17:38:07 1998 Doug Evans <devans@seba.cygnus.com>
2997
2998 * scripttempl/elf.sc (INPUT_FILES): Optional INPUT spec.
2999
3000 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Change top of
3001 stack to 8MB.
3002
3003Fri Jun 12 19:33:17 1998 Ian Lance Taylor <ian@cygnus.com>
3004
3005 * Makefile.am (HFILES): Remove config.h.
3006 (EMULATION_OFILES, POTFILES): Move patch of May 14 from
3007 Makefile.in to Makefile.am.
3008 (earmcoff.c): Depend upon armcoff.em, not generic.em.
3009 * po/Make-in (all-yes): Correct misspelling in $(PACKAGE).
3010 ($(srcdir)/$(PACKAGE).pot): Pass -C to $(XGETTEXT).
3011 * Makefile.in, po/POTFILES.in, po/ld.pot: Rebuild.
3012
3013Fri Jun 12 13:43:17 1998 Tom Tromey <tromey@cygnus.com>
3014
3015 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
3016 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
3017
3018Tue Jun 9 09:36:48 1998 Nick Clifton <nickc@cygnus.com>
3019
3020 * ldlang.c (lang_finish): Add CONST type modifier to declaration
3021 of 'send'.
3022
3023Fri Jun 5 18:19:59 1998 Ian Lance Taylor <ian@cygnus.com>
3024
3025 * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
3026 config.has_shared to true.
3027 * emultempl/linux.em (gld${EMULATION_NAME}_before_parse):
3028 Likewise.
3029 * emultempl/sunos.em (gld${EMULATION_NAME}_before_parse):
3030 Likewise.
3031
3032Tue Jun 2 12:55:03 1998 Ian Lance Taylor <ian@cygnus.com>
3033
3034 * ldlang.c (lang_finish): If the entry symbol is not found, try
3035 parsing it as a number.
3036 * ld.texinfo (Options): Document this.
3037
3038Mon Jun 1 14:01:20 1998 Ian Lance Taylor <ian@cygnus.com>
3039
3040 * ld.texinfo (Input Section Wildcards): Document SORT keyword.
3041
3042Mon May 18 12:42:53 1998 Doug Evans <devans@canuck.cygnus.com>
3043
3044 * ld.h (ld_config_type): New member has_shared.
3045 * ldmain.c (main): Initialize it.
3046 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set it.
3047 * lexsup.c (parse_args): Treat -shared as error if not supported.
3048
3049Mon May 18 13:14:43 1998 Ian Lance Taylor <ian@cygnus.com>
3050
3051 From Jason Merrill <jason@cygnus.com>:
3052 * ldlang.c (wild_sort): Correct order of sort.
3053 * scripttempl/elf.sc: Put *crtbegin.o before other .ctors and
3054 .dtors.
3055 * scripttempl/elfd10v.sc: Likewise.
3056 * scripttempl/elfd30v.sc: Likewise.
3057 * scripttempl/elfppc.sc: Likewise.
3058
3059Fri May 15 00:22:35 1998 Ian Lance Taylor <ian@cygnus.com>
3060
3061 * ldlex.l: Recognize keyword SORT.
3062 * ldgram.y (current_file): Change to struct wildcard_spec.
3063 (%union): Add new fields cname and wildcard.
3064 (wildcard_name, wildcard_spec): New nonterminals.
3065 (file_NAME_list): Use wildcard_spec.
3066 (input_section_spec): Change current_file usage.
3067 * ld.h (struct wildcard_spec): Define.
3068 * ldlang.h (lang_wild_statement_struct): Add new fields
3069 sections_sorted and filenames_sorted.
3070 (lang_add_wild): Update declaration.
3071 * ldlang.c (wild_sort): New static function.
3072 (wild_section): Use wild_sort.
3073 (print_wild_statement): Print sorting information.
3074 (lang_add_wild): Add new parameters sections_sorted and
3075 filenames_sorted. Change all callers.
3076 * mri.c (mri_draw_tree): Update calls to lang_add_wild.
3077 * scripttempl/elf.sc: Sort .ctors.* and .dtors.* by section name.
3078 * scripttempl/elfd10v.sc: Likewise.
3079 * scripttempl/elfd30v.sc: Likewise.
3080 * scripttempl/elfppc.sc: Likewise.
3081
3082Thu May 14 18:39:16 1998 Richard Henderson <rth@cygnus.com>
3083
3084 * emulparams/m32relf.sh (TEMPLATE_NAME): Define.
3085
3086Thu May 14 14:51:24 1998 Nick Clifton <nickc@cygnus.com>
3087
3088 * ldemul.h: Add new prototype: ldemul_list_emulation_options.
3089 (ld_emulation_xfer_struct): Add new field: list_options.
3090 * ldemul.c (ldemul_list_options): New function. Call the
3091 list_options field of the ld_emulation_xfer_struct for each
3092 supported emulation, if such a function is present.
3093 * lexsup.c (help): Call ldemul_list_emulation_options.
3094 * emultempl/pe.em (gld_<>_list_options): New function. Describe
3095 the pe emulation specific command line options.
3096 * emultempl/armcoff.em (gld<>_list_options): New function.
3097 Describe the armcoff emulation specific command line options.
3098
3099 * emultempl/pe.em: Add a new command line option:
3100 --support-old-code.
3101 * emultempl/armcoff.em: Ditto.
3102 * ld.texinfo: Document the --support-old-code option.
3103
3104 * Makefile.in: Add emulation files for POTFILES.in target.
3105 * emultempl/pe.em: Internationalise suitable strings.
3106 * emultempl/armcoff.em: Internationalise suitable strings.
3107 * po/POTFILES.in: Rebuilt.
3108
3109Sun May 10 22:36:30 1998 Jeffrey A Law (law@cygnus.com)
3110
50bbae35 3111 * po/Make-in (install-info): New target.
252b5132
RH
3112
3113Tue Apr 28 19:18:30 1998 Tom Tromey <tromey@cygnus.com>
3114
3115 * ldmain.c (main): Conditionally call setlocale.
3116 * ld.h: Include <locale.h> if HAVE_LOCALE_H.
3117 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
3118
3119Mon Apr 27 11:56:21 1998 Ian Lance Taylor <ian@cygnus.com>
3120
3121 * configure.in: Change version number to 2.9.4
3122 * configure: Rebuild.
3123
3124 * ld.texinfo (Options) [-rpath-link]: Mention ld.so.conf.
3125
3126 Based on patch from H.J. Lu <hjl@gnu.org>:
3127 * emultempl/elf32.em (global_vercheck_needed): New file static
3128 variable.
3129 (global_vercheck_failed): New file static variable.
3130 (gld${EMULATION_NAME}_after_open): Check for shared libraries
3131 twice, once with force set to 0 and once with it set to 1.
50bbae35 3132 (gld${EMULATION_NAME}_check_ld_so_conf): Add force parameter.
252b5132
RH
3133 Change all callers.
3134 (gld${EMULATION_NAME}_search_needed): Likewise.
3135 (gld${EMULATION_NAME}_try_needed): Likewise. If not force, check
3136 whether the libraries needs any incompatible versions.
3137 (gld${EMULATION_NAME}_vercheck): New static function.
3138
3139Wed Apr 22 16:01:35 1998 Tom Tromey <tromey@cygnus.com>
3140
3141 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
3142
3143Wed Apr 22 12:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
3144
3145 * Makefile.am (check-DEJAGNU): Add $(INTLLIBS) to LIBIBERTY when
3146 invoking runtest.
3147 * Makefile.in: Rebuild.
3148
3149 * lexsup.c (parse_args): Change -l options into --library options
3150 to avoid confusion between -li and -library.
3151
3152 * ld.texinfo (MEMORY): Clarify use of >REGION.
3153
3154Tue Apr 21 23:12:40 1998 Tom Tromey <tromey@scribbles.cygnus.com>
3155
3156 * Many files: Added gettext invocations around user-visible
3157 strings.
3158 * ld.h: Added gettext-related includes and defines.
3159 * ldmain.c: Call setlocale, bindtextdomain, textdomain.
3160 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
3161 HAVE_LC_MESSAGES): Define.
3162 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
3163 po/Makefile. Use AM_PROG_LEX.
3164 (TDIRS): AC_SUBST early on, to avoid having value split when it
3165 happens to cross line 90 of the generated sed script.
3166 * Makefile.am (SUBDIRS): New macro.
3167 (POTFILES): Likewise.
3168 (po/POTFILES.in): New target.
3169 (ld_new_LDADD): Added INTLLIBS.
3170 (ld_new_DEPENDENCIES): Added INTLDEPS.
3171 * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
3172
3173Tue Apr 21 23:07:07 1998 Ian Lance Taylor <ian@cygnus.com>
3174
3175 * ld.texinfo (Simple Example): Rewrite a few things as suggested
3176 by Nick Clifton <nickc@cygnus.com>.
3177 (PROVIDE): Likewise.
3178
3179Tue Apr 21 09:55:06 1998 Nick Clifton <nickc@cygnus.com>
3180
3181 * emultempl/pe.em: Rename external arm interworking functions
3182 to conform to BFD naming conventions. Add code to _after_open()
3183 function to obtain a bfd for use by the interworking code.
3184
3185 * emultempl/armcoff.em: Rename external arm interworking functions
3186 to conform to BFD naming conventions. Add new _after_open()
3187 function to obtain a bfd for use by the interworking code.
3188
3189Sun Apr 19 19:23:09 1998 Richard Henderson <rth@cygnus.com>
3190
3191 * ldlang.c (lang_size_sections) [case lang_assignment_statement_enum]:
3192 Update dot and the default memory section even when relaxing.
3193
3194Sat Apr 18 18:41:12 1998 Richard Henderson <rth@cygnus.com>
3195
3196 * ldlang.c (lang_one_common): Manipulate the section's cooked size
3197 rather than its raw size.
3198
3199Tue Apr 7 13:35:29 1998 H.J. Lu <hjl@gnu.org>
3200
3201 * configure.in (TESTBFDLIB): New. Defined and substituted.
3202 * Makefile.am (TESTBFDLIB): Changed to @TESTBFDLIB@.
3203 * configure, Makefile.in: Rebuild.
3204
3205Mon Apr 6 15:33:39 1998 Ian Lance Taylor <ian@cygnus.com>
3206
3207 * Makefile.am (ld.info): Invoke makeinfo with -I options directly
3208 rather than relying on default rule. Don't depend upon
3209 bfdsumm.texi.
3210 (ld.dvi): Likewise.
3211 (bfdsumm.texi): Remove target.
3212 (CLEANFILES): Take bfdsumm.texi out of value.
3213 * Makefile.in: Rebuild.
3214
3215Sun Apr 5 13:07:57 1998 Ian Lance Taylor <ian@cygnus.com>
3216
3217 * scripttempl/pe.sc: Use shell variables to avoid depending upon
3218 how $ is handled when expanding a shell substitution.
3219
3220Fri Apr 3 00:56:50 1998 Ian Lance Taylor <ian@cygnus.com>
3221
3222 * Makefile.am (MOSTLYCLEANFILES): Add ld.log and ld.sum.
3223 (DISTCLEANFILES): Add site.exp and site.bak.
3224 * Makefile.in: Rebuild.
3225
3226 * configure.in: Put the tdirs in a file and use AC_SUBST_FILE,
3227 rather than in a shell variable and using AC_SUBST.
3228 * Makefile.am (DISTCLEANFILES): Remove ldscripts. Add tdirs.
50bbae35 3229 (distclean-local): New target.
252b5132
RH
3230 * configure, Makefile.in: Rebuild.
3231
3232 * ld.texinfo: Completely rewrite linker script documentation.
3233
3234Mon Mar 30 12:47:33 1998 Ian Lance Taylor <ian@cygnus.com>
3235
3236 * configure.in: Set version to 2.9.1.
3237 * configure: Rebuild.
3238
3239 * Branched binutils 2.9.
3240
3241Sat Mar 28 16:48:19 1998 Ian Lance Taylor <ian@cygnus.com>
3242
3243 * Makefile.am (MOSTLYCLEANFILES): Remove tmpdir.
3244 (mostlyclean-local): New target to remove tmpdir.
3245 * Makefile.in: Rebuild.
3246
3247 Fix some gcc -Wall warnings:
3248 * ldcref.c (output_cref): Add casts to avoid warnings.
3249 * ldfile.c (ldfile_add_arch): Likewise.
3250 * ldlang.c (lang_leave_overlay_section): Likewise.
3251 * lexsup.c (OPTION_COUNT): Likewise.
3252 (parse_args): Likewise.
3253 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan):
3254 Likewise.
3255 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Likewise.
3256 * ldlang.c (lang_check): Initialize variables to avoid warnings.
3257 * ldwrite.c (build_link_order): Likewise.
3258 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Likewise.
3259 * emultempl/armcoff.em (gld${EMULATION_NAME}_before_allocation):
3260 Remove unused variables.
3261
3262 * Makefile.am (MOSTLYCLEANFILES): Correct name (was
3263 MOSTCLEANFILES).
3264 * Makefile.in: Rebuild.
3265
3266Fri Mar 27 16:39:25 1998 Ian Lance Taylor <ian@cygnus.com>
3267
3268 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Put
3269 ARM code inside ifdef TARGET_IS_armpe.
3270
3271Wed Mar 25 11:34:13 1998 Ian Lance Taylor <ian@cygnus.com>
3272
3273 Based on patch from H.J. Lu <hjl@gnu.org>:
3274 * Makefile.am (LDDISTSTUFF): New variable.
3275 (diststuff): New target.
3276 * Makefile.in: Rebuild.
3277
3278 * scripttempl/pe.sc: Only include .idata\$[0-7] in .idata when
3279 relocating.
3280
3281Tue Mar 24 15:59:29 1998 Nick Clifton <nickc@cygnus.com>
3282
3283 * scripttempl/pe.sc (.text): Add .glue_7 and .glue_7t sections to
3284 hold Arm/Thumb stubs.
3285
3286 * emultempl/pe.em (gld_pe_before_allocation): Call
3287 arm_process_before_allocation (for ARM/Thumb targets) in order to
3288 gather interworking stb information.
3289
3290Mon Mar 23 18:54:15 1998 Joel Sherrill <joel@OARcorp.com>
3291
3292 * configure.tgt: (sh*-*-rtems*): Switched from ELF to COFF.
3293
3294Fri Mar 20 19:17:13 1998 Ian Lance Taylor <ian@cygnus.com>
3295
3296 * aclocal.m4, configure: Rebuild with libtool 1.2.
3297
3298Thu Mar 19 14:54:45 1998 Geoffrey Noer <noer@cygnus.com>
3299
3300 * scripttempl/pe.sc: The Cygwin32 library uses a .data$nocopy
3301 section to avoid copying certain data on fork. The linker used to
3302 include this between __data_start__ and __data_end__, but that
3303 breaks building the cygwin32 dll. The fix is to rename the
3304 section ".data_cygwin_nocopy" and explictly include it after
3305 __data_end__.
3306
3307Wed Mar 18 09:42:24 1998 Nick Clifton <nickc@cygnus.com>
3308
3309 * configure.tgt (targ_extra_emuls): Add thumb-pe target.
3310
3311Sun Mar 8 23:34:14 1998 Stan Cox <scox@equinox.cygnus.com>
3312
3313 * configure.tgt (sparclite*-*-elf): Added.
3314
3315Mon Mar 2 19:24:08 1998 Michael Meissner <meissner@cygnus.com>
3316
3317 * ldlang.c (lang_size_sections): If the default memory region is
3318 *default*, see if there is a memory region that could be used.
3319
3320Thu Feb 26 17:09:53 1998 Michael Meissner <meissner@cygnus.com>
3321
3322 * scripttempl/elfd30v.sc: Add support for .eit_v section and put
3323 it at 0xfffff020.
3324 * emulparams/d30v{elf,_o,_e}.sh: Ditto.
3325
3326Mon Feb 23 17:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
3327
3328 * emultempl/pe.em (sort_sections): Permit the wildcard to include
3329 a trailing '*' when sorting grouped sections.
3330 * scripttempl/pe.sc: Include grouped sections using NAME\$*. Only
3331 include them when relocating.
3332
3333Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
3334
3335 * Makefile.am (install-exec-local): Install properly when ln
3336 fails or tooldir == prefix.
3337
3338Fri Feb 13 15:24:06 1998 Ian Lance Taylor <ian@cygnus.com>
3339
3340 * Makefile.am (AUTOMAKE_OPTIONS): Define.
3341 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
3342
3343Thu Feb 12 14:10:44 1998 Ian Lance Taylor <ian@cygnus.com>
3344
3345 * scripttempl/elf.sc: Align the _end symbol according to the ELF
50bbae35 3346 format size. From Gordon W. Ross <gwr@mc.com>.
252b5132
RH
3347
3348 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3349 * configure.host (alpha*-*-netbsd*): New host.
3350 * configure.tgt (alpha*-*-netbsd*, powerpc-*-netbsd*): New
3351 targets.
3352
3353 * lexsup.c (help): Update bug-gnu-utils address.
3354 * ld.texinfo (Bug Reporting): Likewise.
3355
3356Tue Feb 10 18:05:56 1998 Ian Lance Taylor <ian@cygnus.com>
3357
3358 * ldlang.c (lang_size_sections): Warn if some memory regions were
3359 defined, but a loadable section is going into the default memory
3360 region.
3361
3362Tue Feb 10 16:17:20 1998 H.J. Lu <hjl@gnu.org>
3363
3364 * ldlex.l (V_IDENTIFIER): Allow '.' as symbol prefix.
3365
3366Tue Feb 10 15:09:45 1998 Ian Lance Taylor <ian@cygnus.com>
3367
3368 * Makefile.am (Makefile): Add target, for dependencies on
3369 configure.host and configure.tgt.
3370 * configure.host, configure.tgt: Change -linux* to -linux-gnu*.
3371 * Makefile.in: Rebuild.
3372
3373Mon Feb 9 13:44:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
3374
3375 * scripttempl/elfd10v.sc (.stack): Move stack to 0x00..7FFE.
3376
3377 * emulparams/d10velf.sh (READONLY_START_ADDR): Read only section
50bbae35 3378 moved to 0x00.....4.
252b5132
RH
3379
3380Sat Feb 7 15:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
3381
3382 * configure, aclocal.m4: Rebuild with new libtool.
3383
3384Thu Feb 5 12:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
3385
3386 * scripttempl/pe.sc: Remove ${RELOCATING-0} from all sections.
3387 From Thomas de Lellis <tdel@wrs.com>.
3388
3389 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
3390
3391Wed Feb 4 13:02:32 1998 Ian Lance Taylor <ian@cygnus.com>
3392
3393 * Makefile.am (ld_new_LDADD): Remove @LEXLIB@.
3394 * Makefile.in: Rebuild.
3395
3396Mon Feb 2 19:34:54 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
3397
3398 Add tms320c30 support:
3399 * configure.tgt (tic30-*-*aout*, tic30-*-*coff*): New targets.
3400 * emulparams/tic30aout.sh: New file.
3401 * emulparams/tic30coff.sh: New file.
3402 * scripttempl/tic30aout.sc: New file.
3403 * scripttempl/tic30coff.sc: New file.
3404 * Makefile.am (ALL_EMULATIONS): Add etic30aout.o and
3405 etic30coff.o.
3406 (etic30aout.c, etic30coff.c): New targets.
3407 * Makefile.in: Rebuild.
3408
3409Mon Feb 2 14:10:59 1998 Ian Lance Taylor <ian@cygnus.com>
3410
3411 * configure.host: Correct HOSTING_CRT0 in alpha*-*-linux* case to
3412 accept either ld.so or ld-linux.so.
3413
3414Fri Jan 30 19:16:28 1998 Doug Evans <devans@canuck.cygnus.com>
3415
3416 * Makefile.am ({CC,CXX}_FOR_TARGET): Change program_transform_name
3417 to transform.
3418 * Makefile.in: Regenerate.
3419
3420Fri Jan 30 19:15:17 1998 Geoff Keating <geoffk@ozemail.com.au>
3421
3422 * scripttempl/elfppc.sc: Put .dynsbss in .sbss.
3423
3424Fri Jan 30 11:43:49 1998 H.J. Lu <hjl@gnu.ai.mit.edu>
3425
3426 * Makefile.am (eelf32bsmip.c, eelf32lsmip.c): New targets.
3427 * Makefile.in: Rebuild.
3428
3429Thu Jan 29 16:04:21 1998 Mumit Khan <khan@xraylith.wisc.edu>
3430
3431 * ldfile.c (slash): Set to backslash if _WIN32 but not
3432 __CYGWIN32__.
3433 (ldfile_open_file_search): If __MSDOS__ or _WIN32, accept a
3434 leading backslash or a leading x: as an absolute path.
3435 (ldfile_find_command_file): Use slash rather than / when
3436 generating name to try.
3437 * lexsup.c (PATH_SEPARATOR): Define.
3438 (set_default_dirlist): Use PATH_SEPARATOR rather than ':'.
3439
3440Wed Jan 28 14:06:30 1998 Richard Henderson <rth@cygnus.com>
3441
3442 * emulparams/elf64_sparc.sh (ELFSIZE): 64
3443 (TEXT_START_ADDR): Round off, since SIZEOF_HEADERS is added later.
3444 (DATA_PLT): Needed by v9 abi.
3445
3446Wed Jan 28 16:37:27 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
3447
3448 * configure.tgt (i[3456]86-*-mingw32*): New entry.
3449
3450Wed Jan 28 15:51:58 1998 Ian Lance Taylor <ian@cygnus.com>
3451
3452 * scripttempl/elf.sc: Only include linkonce sections in final
3453 sections when relocating.
3454
3455Wed Jan 28 14:10:01 1998 Ian Lance Taylor <ian@cygnus.com>
3456
3457 * ld.texinfo (Options): Add a brief description of the types of
3458 information included in a link map.
3459
3460 * ld.texinfo (Options): Mention LDEMULATION in description of -m.
3461 (Environment): Mention LDEMULATION.
3462
3463 * ld.texinfo (Options): Clarify --export-dynamic a bit.
3464
3465Thu Jan 22 16:07:23 1998 Richard Henderson <rth@cygnus.com>
3466
3467 * ldlex.l (<SCRIPT>{WILDCHAR}*): Take care for the comments this
3468 pattern could match.
3469
3470Wed Jan 21 22:26:46 1998 Ian Lance Taylor <ian@cygnus.com>
3471
3472 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): When doing
3473 a relocateable link, set the image base to 0, and don't define the
3474 various symbols.
3475 * emulparams/i386pe.sh (RELOCATEABLE_OUTPUT_FORMAT): Define.
3476 * scripttempl/pe.sc: Swap the .data and .bss sections so that
3477 .data comes first. If doing a relocateable link, use
3478 RELOCATEABLE_OUTPUT_FORMAT if it is defined, and start the
3479 sections at 0, and don't define any symbols.
3480
3481 * ldlang.c (lang_memory_default): Correct parenthisization of
3482 expression.
3483
3484Wed Jan 21 21:20:32 1998 Manfred Hollstein <manfred@s-direktnet.de>
3485
3486 * emultempl/sunos.em: Don't include sys/types.h and sys/stat.h
3487 here; they are included already via sysdep.h.
3488
3489Tue Jan 6 13:40:02 1998 Richard Henderson <rth@cygnus.com>
3490
3491 * scripttempl/i960.sc: Don't explicitly set .data and .bss start.
3492
3493Fri Jan 2 20:15:37 1998 Michael Meissner <meissner@cygnus.com>
3494
3495 * ldgram.y (attributes_opt): Pass region pointer to
3496 lang_set_flags, not &region->flags.
3497
3498 * ldlang.c (lang_memory_default): New function to figure out a
3499 default memory region for a section if it was not specified.
3500 (lang_memory_region_lookup): Zero flags, not_flags field.
3501 (lang_map{,_flags}): Print attribute flags in memory map.
3502 (lang_size_sections): Call lang_memory_default to get default
3503 memory region.
3504 (lang_set_flags): Implement attribute flags for real. Take new
3505 argument to give the flags we are to skip for this region.
3506
3507 * ldlang.h (memory_region_struct): Add not_flags field, make both
3508 flags fields flagword type.
3509 (lang_output_section_state): Make flags field flagword type.
3510 (lang_set_flags): Update prototype to match new calling sequence.
3511 (lang_memory_region_default): Add prototype.
3512
3513 * emulparams/d30v{_e,_o,elf}.sh ({TEXT,DATA,EMEM}_DEF_SECTION):
3514 Define whether or not the region gets default sections, and if so,
3515 what sections.
3516
3517 * scripttempl/elfd30v.sc (MEMORY): Set up which of the regions get
3518 default sections.
3519
3520Thu Jan 1 22:58:04 1998 Michael Meissner <meissner@cygnus.com>
3521
3522 * scripttempl/elfd30v.sc (.eh_frame): Link into the data section.
3523
3524Thu Jan 1 18:04:51 1998 Jeffrey A Law (law@cygnus.com)
3525
3526 * scripttempl/h8300h.sc: Fix typo.
3527 * scripttempl/h8300s.sc: Likewise.
3528
3529Sun Dec 21 12:51:49 1997 Ian Lance Taylor <ian@cygnus.com>
3530
3531 * ldexp.c (fold_name): Don't crash if the symbol is defined in a
3532 section with no output section, such as a shared library section.
3533
3534Wed Dec 17 12:14:11 1997 Ian Lance Taylor <ian@cygnus.com>
3535
3536 * lexsup.c (parse_args): Keep track of where we are in the option
3537 parsing before calling ldemul_parse_args, so that we don't call it
3538 multiple times on the same argument and confuse the getopt
3539 internals.
3540
3541Thu Dec 11 09:00:15 1997 Michael Meissner <meissner@cygnus.com>
3542
3543 * configure.tgt (d30v-elf-*): Rename d30velf_e to d30v_e and
3544 d30velf_o to d30v_o to work in DOS environments.
3545 * Makefile.{am,in}: Ditto.
3546
3547 * emulparams/d30v_{o,e}: Rename from d30velf_{o,e}.
3548 * emulparams/d30velf_{o,e}: Deleted.
3549
3550Wed Dec 10 17:40:08 1997 Nick Clifton <nickc@cygnus.com>
3551
3552 * scripttempl/armcoff.sc: Add glue sections (code taken from Arm
3553 branch).
3554
3555 * emulparams/armcoff.sh (TEMPLATE_NAME): Set to armcoff.
3556
3557 * emultempl/armcoff.em: New file, imported from Arm branch.
3558
3559Wed Dec 10 14:10:44 1997 Michael Meissner <meissner@cygnus.com>
3560
3561 * scripttempl/elfd30v.sc: Add .rel and .rela sections for all
3562 defined sections. Set up __{D,C}TOR_{LIST,END}__. Add onchip and
3563 external memory sections for rodata. Delete .string, .rodata1,
3564 and .data1 sections.
3565
3566Tue Dec 9 15:28:17 1997 Michael Meissner <meissner@cygnus.com>
3567
3568 * Makefile.am: Add Oct 23 changes to Makefile.in here.
3569
3570 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed10velf.o.
3571
3572 * Makefile.{am,in}: (ALL_EMULATIONS): Add etic80coff.o.
3573
3574 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed30velf{,_e,_o}.o.
3575 (ed30velf_e.c): Like d30velf, except .text/.data/etc always go in
3576 external memory.
3577 (ed30velf_o.c): Like d30velf, except .text/.data/etc always go in
3578 onchip memory.
3579
3580 * emulparams/d30velf.sh (STACK_START_ADDR): Top of default
3581 stack.
3582 ({TEXT,DATA,EMEM}_SIZE): Sizes of the 3 memory areas.
3583 ({TEXT,DATA,BSS}_MEMORY): Which memory region .text, .data, and
3584 .bss should go in.
3585
3586 * emulparams/d30velf_{e,o}.sh: New files to be explicit whether
3587 .text, .data, etc go in external memory or onchip memory.
3588
3589 * configure.tgt (d30v-*-*ext*): New configuration to default
3590 .text, .data, etc. in external memory.
3591 (d30v-*-*onchip*): New configuration to default .text, .data,
3592 etc. in onchip memory.
3593 (d30v-*-*): Add d30velf_{e,o} emulations.
3594
3595 * scripttempl/elfd30v.sc: Allow .text, .data, .bss to be put in
3596 either the onchip text/data areas or the external memory area.
3597 (MEMORY): Get sizes from d30velf.sh.
3598 (.e{data,text,bss}): Put sections in the external memory region.
3599 (.stext): Put section in the onchip text region.
3600 (.s{data,bss}): Put sections in the onchip data region.
3601 (__stack): Assign from ${STACK_START_ADDR}.
3602 (.text): Put in ${TEXT_MEMORY} memory region.
3603 (.data{,1}/.strings/.rodata{,1}): Put in ${DATA_MEMORY} memory
3604 region.
3605 (.bss): Put in ${BSS_MEMORY} memory region.
3606
3607Tue Dec 2 10:14:47 1997 Nick Clifton <nickc@cygnus.com>
3608
3609 * configure.tgt (targ_extra_emuls): Add support for Thumb target.
3610
3611Sat Nov 22 15:23:19 1997 Ian Lance Taylor <ian@cygnus.com>
3612
3613 * ldlex.l: Don't define hex_mode. Correct number regexp to not
3614 accept hex digits without a leading $ or 0x. Handle leading $
3615 correctly. Pass 0 rather than hex_mode to bfd_scan_vma.
3616 * ldlex.h (hex_mode): Don't declare.
3617
3618Sun Nov 16 20:16:45 1997 Michael Meissner <meissner@cygnus.com>
3619
3620 * emulparams/d30velf.sh ({DATA,EMEM}_START_ADDR): Define as start
3621 of internal data area and external memory on chip.
3622
3623 * scripttempl/elfd30v.sc: Define a MEMORY region that describes
3624 the 3 regions of memory on the chip. Put .text/.init/.fini into
3625 the text memory region, put other segments into the data memory
3626 region. Add more of the standard elf sections. Default __stack
3627 to be 0x20008000, which is 1 byte beyond end of the internal data
3628 region.
3629
3630Thu Nov 13 13:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
3631
3632 * configure.tgt (targ_extra_emuls): Make FreeBSD a i386bsd
50bbae35 3633 variant.
252b5132
RH
3634
3635Sun Nov 2 14:51:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
3636
3637 * configure.host (alpha*-*-linux*): Correct HOSTING_CRT0. Set
3638 HOSTING_LIBS.
3639
3640Thu Oct 30 12:25:55 1997 Ian Lance Taylor <ian@cygnus.com>
3641
3642 * ld.h (args_type): Add warn_mismatch field.
3643 * ldmain.c (main): Initialize warn_mismatch field.
3644 * lexsup.c (parse_args): Handle --no-warn-mismatch option.
3645 * ldlang.c (ignore_bfd_error): New static function.
3646 (lang_check): If warn_mismatch is false, don't warn about
3647 mismatched input files.
3648 * ld.texinfo, ld.1: Document new option.
3649
3650Thu Oct 23 14:38:18 1997 Nick Clifton <nickc@cygnus.com>
3651
3652 * scripttempl/v850.sc: Rename linker symbol '_stack' to '__stack'
3653 to avoid conflicts with C code which is defining a variable called
3654 'stack'.
3655
3656Thu Oct 23 00:57:45 1997 Richard Henderson <rth@dot.cygnus.com>
3657
3658 * Makefile.in (ALL_EMULATIONS): Move eelf64_sparc.o ...
3659 (ALL_64_EMULATIONS): ... here.
3660 (eelf64_sparc.c): Template should be elf32 not generic.
3661 * emulparams/elf64_sparc.sh (TEMPLATE_NAME): New definition.
3662
3663Thu Oct 23 00:44:20 1997 Richard Henderson <rth@dot.cygnus.com>
3664
3665 * configure.tgt: Add sparc64-*-linux*.
3666 * emulparams/elf64_sparc.sh (GENERATE_SHLIB_SCRIPT, NOP): New.
3667
3668Wed Oct 22 11:29:25 1997 Ian Lance Taylor <ian@cygnus.com>
3669
3670 * scripttempl/pe.sc: Put .eh_frame in .rdata.
3671
3672Fri Oct 17 00:00:13 1997 Richard Henderson <rth@cygnus.com>
3673
3674 * ldlang.c (lang_register_vers_node): Only check globals<=>locals,
3675 since we need to be able to export different versions of the same
3676 symbol.
3677
3678Wed Oct 15 14:52:36 1997 Ian Lance Taylor <ian@cygnus.com>
3679
3680 * scripttempl/pe.sc: Put .stab and .stabstr sections at end.
3681
3682Wed Oct 8 12:37:05 1997 Richard Henderson <rth@cygnus.com>
3683
3684 * configure.tgt, configure.host: Change alpha-*-* to alpha*-*-*;
3685 config.guess now recognizes alphaev5 etc.
3686
3687Fri Oct 3 14:23:02 1997 Ian Lance Taylor <ian@cygnus.com>
3688
3689 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Don't treat
3690 -s and -u as -static and -unix.
3691
3692Thu Oct 2 18:40:28 1997 Ian Lance Taylor <ian@cygnus.com>
3693
3694 * ldlang.c (wild_doit): Rewrite flag handling for clarity. If we
50bbae35
AM
3695 are not adding the first input section, and SEC_READONLY is clear
3696 on the output section, then don't copy it from the input section.
3697 If SEC_READONLY is not set on the input section, then clear it on
3698 the output section.
252b5132
RH
3699
3700 * configure.tgt (mips*-sgi-irix[56]*): Use elf32bsmip rather than
3701 elf32bmip.
3702 (mips*el-*-linux*): Change elf32lmip to elf32lsmip and elf32bmip
3703 to elf32bsmip.
3704 (mips*-*-linux*): Likewise.
3705 * emulparams/elf32bsmip.sh: New file; just like elf32bmip.sh, but
3706 setting ENTRY to __start.
3707 * emulparams/elf32lsmip.sh: New file; just like elf32lmip.sh, but
3708 setting ENTRY to __start.
3709 * scripttempl/elf.sc: Always set ENTRY to _start if it was not
3710 already set.
3711
3712Wed Oct 1 16:41:00 1997 Nick Clifton <nickc@cygnus.com>
3713
3714 * emulparams/v850.sh (ROZDATA_START_ADDR, ROSDATA_START_ADDR): New
3715 Variables.
3716
3717 * scripttempl/v850.sc: Move read only areas out of zero and small
3718 data sections and into their own sections.
3719
3720Wed Sep 24 16:59:15 1997 Joel Sherrill <joel@oarcorp.com>
3721
50bbae35 3722 * configure.tgt (sh*-*-rtems*): New target, like sh-*-elf*.
252b5132
RH
3723
3724Wed Sep 24 11:33:14 1997 Ian Lance Taylor <ian@cygnus.com>
3725
3726 * ld.texinfo (Section Options): Improve documentation of NOLOAD
3727 directive.
3728
3729 * aclocal.m4: Rebuild with new libtool.
3730 * configure: Rebuild.
3731
3732Mon Sep 22 17:24:06 1997 Ian Lance Taylor <ian@cygnus.com>
3733
3734 * ldlang.c (wild_doit): Revert patch of September 3.
3735
3736Wed Sep 17 16:45:34 1997 Nick Clifton <nickc@cygnus.com>
3737
3738 * Makefile.am, Makefile.in: Add rule for ev850.c
3739 * configure.tgt (targ_extra_emuls): Add v850 target.
3740
3741Wed Sep 17 16:43:39 1997 Nick Clifton <nickc@cygnus.com>
3742
3743 * emulparams/v850.sh (CALL_TABLE_START_ADDR): New entry.
3744 * scripttempl/v850.sc: Add call table data area
3745
3746Mon Sep 15 11:29:13 1997 Ken Raeburn <raeburn@cygnus.com>
3747
3748 Merge change from Martin Hunt:
3749
3750 * scripttempl/elfd30v.sc: Put .rodata in the .text section.
3751
3752Tue Sep 9 07:49:56 1997 Fred Fish <fnf@ninemoons.com>
3753
3754 * ldlang.c (lang_memory_region_lookup): Remove extraneous
3755 initialization of p.
3756
3757Thu Sep 4 09:03:33 1997 Ian Lance Taylor <ian@cygnus.com>
3758
3759 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): In
3760 expression produced for -bpT and -bpD options, align to a 32 byte
3761 boundary rather than an 8 byte boundary.
3762 * scripttempl/aix.sc: Put .tocbss at start of .bss section.
3763
3764 * ldmisc.h, ldmisc.c, ldcref.c: Rename finfo to lfinfo, to avoid
3765 function name conflict with AIX 4.2 unistd.h header file.
3766
3767Wed Sep 3 15:12:32 1997 Ian Lance Taylor <ian@cygnus.com>
3768
3769 * ldlang.c (wild_doit): Clear SEC_HAS_CONTENTS from a
3770 noload_section.
3771
3772Fri Aug 29 00:32:31 1997 Ian Lance Taylor <ian@cygnus.com>
3773
3774 * Makefile.am (ld_new_DEPENDENCIES): Remove @LEXLIB@.
3775 * Makefile.in: Rebuild.
3776
3777Thu Aug 28 10:12:10 1997 Doug Evans <dje@canuck.cygnus.com>
3778
3779 * configure.tgt (arc-*-elf*): Recognize.
3780 * Makefile.am (ALL_EMULATIONS): Add earcelf.o.
3781 * Makefile.in: Regenerate.
3782 * emulparams/arcelf.sh: New file.
3783
3784Wed Aug 20 11:14:13 1997 Ian Lance Taylor <ian@cygnus.com>
3785
3786 * ldlang.c (wildcardp): Don't let a backslash by itself cause a
3787 pattern to be treated as a wildcard pattern.
3788
3789 * ldgram.y (atype): Accept parentheses with no type.
3790
3791 * ld.texinfo (Section Definition): Clarify use of whitespace.
3792 (Section Placement): Likewise.
3793
3794Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
3795
3796 * configure.tgt (targ_extra_emuls): Add support for v850e target.
3797
3798Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
3799
3800 * configure.tgt (targ_extra_emuls): Add support for v850e target.
3801
3802Sat Aug 9 00:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
3803
3804 * Makefile.am (ld.info): Change dependency from
3805 $(BFDDIR)/doc/bfdsumm.texi to bfdsumm.texi.
3806 (ld.dvi): Likewise.
3807 (bfdsumm.texi): New target.
3808 (CLEANFILES): Add bfdsumm.texi.
3809 * Makefile.in: Rebuild.
3810
3811 * Makefile.am: New file, based on old Makefile.in.
3812 * acinclude.m4: New file, from old aclocal.m4.
3813 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
3814 shared library handling; now handled by libtool. Replace
3815 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
3816 AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
3817 AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
3818 * configure.host: Don't set HLDFLAGS, HLDENV, or RPATH_ENVVAR.
3819 * acconfig.h: Mention PACKAGE and VERSION.
3820 * stamp-h.in: New file.
3821 * ldver.c (ld_program_version): Set ld_program_version from
3822 VERSION.
3823 * ldgram.y, ldlex.l: Replace VERSION with VERSIONK.
3824 * Makefile.in: Now built with automake.
3825 * aclocal.m4: Now built with aclocal.
3826 * configure, config.in: Rebuild.
3827
3828Mon Jul 28 19:04:50 1997 Rob Savoye <rob@chinadoll.cygnus.com>
3829
50bbae35
AM
3830 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
3831 win32 dependencies.
3832 * configure: Regenerated with autoconf 2.12.
3833 * Makefile.in: Add $(EXEEXT) to executable.
252b5132
RH
3834
3835Tue Jul 22 18:50:38 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
3836
3837 * emulparams/i386go32.sh (OUTPUT_FORMAT): Set to "coff-go32".
3838 (SEGMENT_SIZE): Set to 0x200.
3839 * scripttempl/i386go32.sc: Rewrite.
3840 * configure.tgt (i[3456]86-*-msdosdjgpp*): New target.
3841
3842Mon Jul 7 12:39:42 1997 Ian Lance Taylor <ian@cygnus.com>
3843
3844 From Manfred Hollstein <manfred@s-direktnet.de>:
3845 * configure.host (i[3456]86-*-linux*libc1*): Renamed from
3846 i[3456]86-*-linux*.
3847 (i[3456]86-*-linux*): New host.
3848
3849Thu Jun 26 13:54:03 1997 Ian Lance Taylor <ian@cygnus.com>
3850
3851 * scripttempl/pe.sc: Put .rsrc after .reloc. Put input .rsrc
3852 sections in the output .rsrc section.
3853
3854Wed Jun 25 12:48:41 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3855
3856 * configure.host (m68*-*-linux*libc1*): Renamed from
3857 `m68*-*-linux*'.
3858 (m68*-*-linux*): New configuration for use with GNU libc 2.
3859
3860Mon Jun 16 19:18:21 1997 Geoff Keating <geoffk@ozemail.com.au>
3861
3862 * scripttempl/elfppc.sc: Correct .rela.sdata entries.
3863
3864 * scripttempl/elfppc.sc: Put the PLT between the small and large
3865 BSS segments.
3866 * emulparams/elf32ppc.sh (TEXT_START_ADDR): The ABI says `A
3867 program base of 0x02000000 is recommended...' because otherwise
3868 shared libraries are less efficient. We use 0x01800000 because
3869 otherwise it's impossible to branch to location 0, for instance if
3870 you have an undefined weak symbol.
3871
3872Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
3873
3874 * ldlang.c (lang_place_undefineds): Add \n in einfo call.
3875 (lang_size_sections): Likewise.
3876 * ldlex.l: Likewise.
3877 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise.
3878 * emultempl/mipsecoff.em (gld${EMULATION_NAME}_after_open):
3879 Likewise.
3880 (check_sections): Likewise.
3881 (gld${EMULATION_NAME}_after_allocation): Likewise.
3882 * emultempl/pe.em (gld_$${EMULATION_NAME}_before_allocation):
3883 Likewise.
3884 * mpw-eppcmac.c (gldppcmacos_read_file): Likewise.
3885 * mpw-idtmips.c (gldmipsidt_after_open): Likewise.
3886 (check_sections): Likewise.
3887 (gldmipsidt_after_allocation): Likewise.
3888
3889 * ldemul.c (ldemul_choose_mode): Remove unused einfo argument.
3890
3891Fri Jun 6 23:47:42 1997 Ian Lance Taylor <ian@cygnus.com>
3892
3893 * scripttempl/pe.sc: Add zeroes after .idata$3 to mark the end of
3894 the import list.
3895
3896Thu May 29 13:13:22 1997 Ian Lance Taylor <ian@cygnus.com>
3897
3898 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Don't
3899 crash if an output section has no BFD section.
3900
3901Fri May 23 15:23:25 1997 Fred Fish <fnf@cygnus.com>
3902
3903 * lexsup.c (ld_options): Add entry for the new "task-link" option.
3904 (parse_args): Handle the "task-link" option.
3905 (OPTION_TASK_LINK): Add define.
3906
3907Wed May 21 17:44:15 1997 Ian Lance Taylor <ian@cygnus.com>
3908
3909 * ldmain.c (main): Correct check of fclose return value when
3910 handling --force-exe-suffix.
3911
3912Thu May 15 11:35:29 1997 Nick Clifton <nickc@cygnus.com>
3913
3914 * ldlang.c (lang_check): Add test of the return value from the
3915 call to bfd_merge_private_bfd_data().
3916
3917Mon May 12 23:22:58 1997 Ian Lance Taylor <ian@cygnus.com>
3918
3919 * scripttempl/elfmips.sc: Remove.
3920 * scripttempl/elf.sc: Set ENTRY based on target. Permit
3921 TEXT_DYNAMIC to control .dynamic segment. Permit
3922 SHLIB_TEXT_START_ADDR to set start of shared object. Support
3923 INITIAL_READONLY_SECTIONS. Put .stub in .text. Only put
3924 .gnu.linkonce.t* in .text when relocating. Support
3925 OTHER_TEXT_SECTIONS. Support SHLIB_DATA_ADDR as well as
3926 DATA_ADDR. Support OTHER_GOT_SYMBOLS and OTHER_GOT_SECTIONS.
3927 * emulparams/elf32b4300.sh (SCRIPT_NAME): Set to elf.
3928 (DATA_ADDR): Don't set.
3929 (INITIAL_READONLY_SECTIONS): Rename from OTHER_READONLY_SECTIONS.
3930 (OTHER_TEXT_SECTIONS): Set.
3931 (OTHER_GOT_SECTIONS): Rename from OTHER_READWRITE_SECTIONS.
3932 (MACHINE): Set to empty string.
3933 * emulparams/elf32l4300.sh: Likewise.
3934 * emulparams/elf32ebmip.sh: Likewise.
3935 * emulparams/elf32elmip.sh: Likewise.
3936 * emulparams/elf32bmip.sh: Likewise. Also:
3937 (TEXT_DYNAMIC): Set.
3938 * emulparams/elf32lmips.sh: Likewise.
3939 * Makefile.in (eelf32bmips.c): Depend upon elf.sc rather than
3940 elfmips.sc.
3941 (eelf32ebmips.c, eelf32elmips.c, eelf32lmip.c): Likewise.
3942
3943Mon May 12 11:11:06 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3944
3945 * scripttempl/elf.sc: Don't align the data segment on the next 8
3946 byte boundary, instead let the linker use whatever the individual
3947 sections require.
3948
3949Fri May 9 17:45:46 1997 Ian Lance Taylor <ian@cygnus.com>
3950
3951 * configure.tgt (i[3456]86-*-gnu*): Don't include Mach support.
3952
3953Tue May 6 13:21:19 1997 Ian Lance Taylor <ian@cygnus.com>
3954
3955 From Sean McNeil <sean@mcneil.com>:
3956 * emultempl/pe.em (sort_by_file_name): Sort by archive name
3957 first.
3958 (sort_sections): Sort all sections, not just sections in the same
3959 archive.
3960
3961Mon May 5 18:19:55 1997 Philip Blundell <pjb27@cam.ac.uk>
3962
3963 * configure.tgt, configure.host: cope with '*-*-linux-gnuaout'
3964 targets.
3965
3966Fri May 2 15:54:28 1997 Mike Meissner <meissner@cygnus.com>
3967
3968 * scripttempl/tic80coff.sc (.text): Add a leading underscore to
3969 __{D,C}TOR_{LIST,END}__ definations. Rearrange the order of items
3970 in the .text section. Move .const, .ctors, .dtors into separate
3971 sections.
3972
3973Wed Apr 30 12:23:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
3974
3975 * scripttempl/m88kbcs.sc (__.initp.end, _etext): Added whitespace
3976 around assignment of current location pointer.
3977
3978Thu Apr 17 13:07:18 1997 Ian Lance Taylor <ian@cygnus.com>
3979
3980 * ldctor.c (ldctor_build_sets): Make sure the set is aligned
3981 appropriately.
3982
3983Tue Apr 15 13:19:26 1997 Ian Lance Taylor <ian@cygnus.com>
3984
3985 * Makefile.in (INSTALL): Set to @INSTALL@.
3986 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
3987 (install): Depend upon ld.new and installdirs. Use
3988 $(program_transform_name) directly, rather than using
3989 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
3990 (installdirs): New target.
3991 (install-info): Run mkinstalldirs.
3992
3993Mon Apr 14 12:06:15 1997 Ian Lance Taylor <ian@cygnus.com>
3994
3995 * Makefile.in (INSTALL): Change install.sh to install-sh.
3996
3997 From Thomas Graichen <graichen@rzpd.de>:
3998 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
3999 * configure: Rebuild.
4000
4001Fri Apr 4 11:42:41 1997 Ian Lance Taylor <ian@cygnus.com>
4002
4003 * emultempl/pe.em: Include "libiberty.h".
4004 (sort_sections_1): Use xmalloc rather than alloca.
4005
4006 * ldlex.l: Recognize SQUAD.
4007 * ldgram.y (length): Add SQUAD.
4008 * ldctor.c (ldctor_build_sets): Use SQUAD for a signed 8 byte
4009 reloc.
4010 * ldlang.c (print_data_statement): Handle SQUAD.
4011 (lang_size_sections, lang_do_assignments): Likewise.
4012 * ldexp.c (exp_print_token): Add SQUAD to table.
4013 * ldwrite.c (build_link_order): Handle SQUAD.
4014 * ld.texinfo (Section Data Expressions): Document SQUAD.
4015
4016Thu Apr 3 13:19:40 1997 Ian Lance Taylor <ian@cygnus.com>
4017
4018 * ldver.c (ld_program_version): Set to 2.8.1.
4019
4020 * Branched binutils 2.8.
4021
4022Wed Apr 2 11:55:27 1997 Ian Lance Taylor <ian@cygnus.com>
4023
4024 * mpw-idtmips.c: Rename from mpw-emipsidt.c.
4025 * mpw-elfmips.c: Rename from mpw-emipself.c.
4026 * mpw-config.in: Update accordingly.
4027
4028 * ldlang.c (lang_process): Call lang_check immediately after
4029 opening the input files, rather than at the end of the link.
4030
4031Mon Mar 31 23:44:00 1997 Ian Lance Taylor <ian@cygnus.com>
4032
4033 * emultempl/pe.em (init): Fully bracket initializer.
4034 (set_pe_stack_heap): Remove locals begin_commit and end.
4035 (gld_${EMULATION_NAME}_after_open): Remove unused local i.
4036 (gld${EMULATION_NAME}_place_orphan): Remove unused local ptr.
4037
4038Mon Mar 31 16:35:51 1997 Joel Sherrill <joel@oarcorp.com>
4039
50bbae35 4040 * configure.tgt (hppa*-*-rtems*): New target, like hppa-*-*elf*.
252b5132
RH
4041
4042Fri Mar 28 15:29:23 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
4043
4044 Contributed by David S. Miller <davem@caip.rutgers.edu>:
4045 * configure.tgt (sparc*-*-linuxaout*): New target.
4046 (sparc*-*-linux*): New target.
4047 * emulparams/sparclinux.sh: New file.
4048 * Makefile.in (ALL_EMULATIONS): Add esparclinux.o.
4049 (esparclinux.c): New target.
4050
4051Fri Mar 28 14:30:12 1997 Ian Lance Taylor <ian@cygnus.com>
4052
4053 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
4054 * configure.tgt: Set targ_extra_emuls for mips*el-*-linux* and
4055 mips*-*-linux*. Use elf32bmip and elf32lmip, not elf32ebmip and
4056 elf32elmip.
4057
4058Thu Mar 27 17:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
4059
4060 * lexsup.c (parse_args): Update copyright date in version
4061 message.
4062
4063Fri Mar 21 12:28:41 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
4064
4065 * emulparams/delta68.sh (OUTPUT_FORMAT): Set to "coff-m68k-sysv".
4066
4067Tue Mar 18 11:16:23 1997 Ian Lance Taylor <ian@cygnus.com>
4068
4069 * Makefile.in: Rebuild dependencies.
4070
4071 * emultempl/aix.em: Include "obstack.h".
4072
4073Mon Mar 17 19:26:06 1997 Ian Lance Taylor <ian@cygnus.com>
4074
4075 * ldlang.c: Include "obstack.h".
4076
4077Sat Mar 15 23:23:46 1997 Fred Fish <fnf@cygnus.com>
4078
4079 * configure.tgt (powerpc-*-beos*): Use aixppc for targ_emul.
4080
4081Sat Mar 15 18:10:38 1997 H.J. Lu <hjl@lucon.org>
4082
4083 * ldemul.h (ldemul_list_emulations): Use full prototype.
4084 * ldlang.c (print_one_symbol): Add declaration.
4085 * ldlang.h (dprint_statements): Declare.
4086 * ldmain.c (remove_output): Declare.
4087 * ldmisc.c (vfinfo): Declare.
4088 * ldwrite.c (clone_section): Declare.
4089 (split_sections): Make static. Declare.
4090 * mri.c: Include libiberty.h.
4091 (strdup): Don't declare.
4092 (mri_alias): Use xstrdup rather than strdup.
4093
4094Fri Mar 14 21:30:06 1997 Ian Lance Taylor <ian@cygnus.com>
4095
4096 * scripttempl/elfmips.sc: Change handling of data area when
4097 generating a shared library to not skip a large block of memory.
4098 From Per Fogelstrom <pefo@cvs.openbsd.org>.
4099
4100Wed Mar 12 21:33:09 1997 Ian Lance Taylor <ian@cygnus.com>
4101
4102 * ldmain.c (multiple_definition): Only skip the warning if the
4103 output section is absolute when the input section is not
4104 absolute.
4105
4106 * ldlex.l: Accept whitespace in VERS_START state. Warn about
4107 invalid characters in VERS_* states.
4108
4109Tue Mar 11 13:51:31 1997 Ian Lance Taylor <ian@cygnus.com>
4110
4111 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Don't let a
4112 trailing space lead us to think that there is a zero address.
4113
4114Sun Mar 9 23:06:35 1997 Eric Youngdale <eric@andante.jic.com>
4115
4116 * ldgram.y (vers_node): Correct typo of '(' for '{'.
4117
4118Fri Mar 7 18:40:12 1997 Fred Fish <fnf@cygnus.com>
4119
4120 * scripttempl/tic80coff.sc (ENTRY): Entry symbol is __start
4121 rather than _start.
4122 (__edata): Define this rather than "edata".
4123 (__end): Define this rather than "end".
4124
4125Tue Mar 4 17:18:35 1997 Michael Meissner <meissner@cygnus.com>
4126
4127 * configure.tgt (tic80-*-*): Allow dropping of -coff.
4128
4129Sun Mar 2 22:59:49 1997 Fred Fish <fnf@cygnus.com>
4130
4131 * Makefile.in (ld.dvi): Set MAKEINFO environment variable as well
4132 as TEXINPUTS. Needed for building in separate build dir.
4133 * ldint.texinfo (SCRIPT_NAME): Fix typo.
4134 * emulparams/tic80coff.sh: Rewrite to include internal documentation
4135 about each shell variable that is set (or not set).
4136 * scripttempl/tic80coff.sc: Complete rewrite.
4137
4138Fri Feb 28 17:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
4139
4140 * ldmain.c (main): Call bfd_set_default_target.
4141 * Makefile.in (ldmain.o): Define TARGET when compiling.
4142
4143Thu Feb 27 11:41:03 1997 Ian Lance Taylor <ian@cygnus.com>
4144
4145 * ldmain.c (main): Don't initialize link_info.lprefix or
4146 link_info.lprefix_len.
4147 * emultempl/hppaelf.em (hppaelf_before_parse): Likewise.
4148
4149 * emultempl/m88kbcs.em: Remove.
4150 * emulparams/m88kbcs.sh (TEMPLATE_NAME): Don't set.
4151 * Makefile.in (em88kbcs.c): Depend upon generic.em rather than
4152 m88kbcs.em.
4153
4154 * mri.c (mri_draw_tree): Pass noload_section, not SEC_NEVER_LOAD,
4155 to lang_enter_output_section_statement. From Mark Rasin
4156 <mark.rasin@telrad.co.il>.
4157
4158Wed Feb 26 11:51:44 1997 Ian Lance Taylor <ian@cygnus.com>
4159
4160 * ldlang.c (lang_one_common): Clear SEC_IS_COMMON from common
4161 section.
4162
4163Tue Feb 25 20:38:11 1997 Stan Shebs <shebs@andros.cygnus.com>
4164
4165 * configure.tgt (mips*-*-lnews*): New target.
4166 * Makefile.in (emipslnews.c): New target.
4167 * emulparams/mipslnews.sh: New file.
4168
4169Tue Feb 25 16:04:09 1997 Ian Lance Taylor <ian@cygnus.com>
4170
4171 * emultempl/elf32.em (hold_interp): New static variable.
4172 (gld${EMULATION_NAME}_place_orphan): Put loadable .note sections
4173 after hold_interp. Choose a unique output section name.
4174 (gld${EMULATION_NAME}_place_section): Don't set hold_use if the
4175 SEC_LOAD or SEC_ALLOC flags differ. Set hold_interp.
4176
4177Mon Feb 24 18:16:09 1997 Ian Lance Taylor <ian@cygnus.com>
4178
4179 From Eric Youngdale <eric@andante.jic.com>:
4180 * ldlex.l (V_TAG, V_IDENTIFIER): New macros.
4181 (VERS_START, VERS_SCRIPT, VERS_NODE): New states to parse version
4182 information.
4183 (ldlex_version_script, ldlex_version_file): New functions.
4184 * ldlex.h (enum input_enum): Add input_version_script.
4185 (ldlex_version_script): Declare.
4186 (ldlex_version_file): Declare.
4187 * ldgram.y (%union): Add deflist, versyms, and versnode.
4188 (VERS_TAG, VERS_IDENTIFIER): New terminals.
4189 (GLOBAL, LOCAL, VERSION, INPUT_VERSION_SCRIPT): New terminals.
4190 (file): Accept INPUT_VERSION_SCRIPT.
4191 (ifile_p1): Accept version.
4192 (version_script_file): New nonterminal.
4193 (version, vers_nodes, vers_node): Likewise.
4194 (verdep, vers_tag, ver_defns): Likewise.
4195 * ldlang.c (lang_elf_version_info): New global variable.
4196 (lang_new_vers_regex): New function.
4197 (lang_new_vers_node): New function.
4198 (version_index): New static variable.
4199 (lang_register_vers_node): New function.
4200 (lang_add_vers_depend): New function.
4201 * ldlang.h (lang_elf_version_info): Declare.
4202 (lang_new_vers_regex, lang_new_vers_node): Declare.
4203 (lang_add_vers_depend, lang_register_vers_node): Declare.
4204 * lexsup.c (OPTION_VERSION_SCRIPT): Define.
4205 (ld_options): Add "version-script".
4206 (parse_args): Handle OPTION_VERSION_SCRIPT.
4207 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
4208 Pass lang_elf_version_info to size_dynamic_sections.
4209 * scripttempl/elf.sc: Add .gnu.version sections.
4210 * ld.texinfo: Document symbol versioning.
4211
4212Fri Feb 21 17:37:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
4213
4214 * Makefile.in (ed30velf.c): New target.
4215 * configure.tgt (d30v-*-*): New target.
4216 * emulparams/d30velf.sh: New file.
4217 * scripttempl/elfd30v.sc: New file.
4218
4219Fri Feb 14 18:28:31 1997 Ian Lance Taylor <ian@cygnus.com>
4220
4221 * ld.texinfo (Option Commands): Document the INCLUDE command.
4222
4223Thu Feb 13 20:31:37 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
4224
4225 * configure.in: Call BFD_NEED_DECLARATION on getenv.
4226 * acconfig.h (NEED_DECLARATION_GETENV): New macro.
4227 * sysdep.h (getenv): Declare if NEED_DECLARATION_GETENV.
4228 * ldemul.c (ld_emul_default_target): Do not cast getenv return
4229 value.
4230 * ldmain.c (get_emulation): Likewise.
4231 * configure, config.in: Rebuild.
4232
4233Tue Feb 11 15:34:26 1997 Ian Lance Taylor <ian@cygnus.com>
4234
4235 * scripttempl/elfmips.sc: When relocating, put .mips16.fn.* and
4236 .mips16.call.* in .text.
4237
4238Sun Feb 9 18:09:13 1997 Fred Fish <fnf@cygnus.com>
4239
4240 * emulparams/tic80coff.sh: New (dummy) file for TIc80.
4241 * scripttempl/tic80coff.sc: New (dummy) file for TIc80.
4242 * Makefile.in (etic80coff.c): Add target and rule to build it.
4243 * configure.tgt (tic80-*-coff): Set targ_emul to tic80coff.
4244
4245Fri Jan 31 13:16:53 1997 Ian Lance Taylor <ian@cygnus.com>
4246
4247 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Search for
4248 ".so" in the name, not ".so.".
4249 (gld${EMULATION_NAME}_search_dir): Accept a plain .so file.
4250
4251 * Makefile.in (ld.info): Add -I$(srcdir). From Alan Modra
4252 <alan@spri.levels.unisa.edu.au>.
4253
4254Thu Jan 30 11:31:52 1997 Ian Lance Taylor <ian@cygnus.com>
4255
4256 * emultempl/sunos.em: Include <ctype.h>.
4257 (gld${EMULATION_NAME}_find_so): Skip the directory name when
4258 searching for ".so.".
4259 (gld${EMULATION_NAME}_search_dir): Make sure that the library name
4260 has a version number, and that only version numbers follow .so.
4261
4262Wed Jan 29 18:15:00 1997 Geoffrey Noer <noer@cygnus.com>
4263
4264 * scripttempl/pe.sc:
4265 * scripttempl/ppcpe.sc: add *(.gcc_except_table) to the text
4266 section so Win32 executables are valid.
4267
4268Mon Jan 27 12:28:43 1997 Ian Lance Taylor <ian@cygnus.com>
4269
4270 * scripttempl/elf.sc: Put linkonce reloc section in other
50bbae35 4271 appropriate reloc sections.
252b5132
RH
4272 * scripttempl/elfmips.sc: Add linkonce support.
4273 * scripttempl/elfppc.sc: Likewise.
4274
4275Fri Jan 24 10:44:09 1997 Jeffrey A Law (law@cygnus.com)
4276
4277 * emulparms/mn10200.sh (OTHER_RELOCATING_SECTIONS): Move the
4278 stack up to 0x80000.
4279 * emulparms/mn10300.sh (OTHER_RELOCATING_SECTIONS): Likewise.
4280
4281Tue Jan 21 12:11:10 1997 Doug Evans <dje@seba.cygnus.com>
4282
4283 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Use PROVIDE
4284 to define `_stack'.
4285
4286Thu Jan 16 17:07:52 1997 Ian Lance Taylor <ian@cygnus.com>
4287
4288 * ld.h (args_type): Rename auxiliary_filter_shlib to
4289 auxiliary_filters, and make it char **.
4290 * lexsup.c (parse_args): Handle -f by setting up an array.
4291 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
4292 new name of auxiliary_filters.
4293
4294 * ld.texinfo (Options): Improve documentation of --filter and
4295 --auxiliary.
4296
4297Tue Jan 14 15:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
4298
4299 * ld.texinfo (Options): Clarify that the normal usage is -T.
4300 (Commands): Likewise.
4301
4302Thu Jan 9 11:26:27 1997 Ian Lance Taylor <ian@cygnus.com>
4303
4304 * scripttempl/armcoff.sc: Correct mask used for .data address.
4305
4306Wed Jan 8 15:14:59 1997 Geoffrey Noer <noer@cygnus.com>
4307
4308 * emultempl/pe.em: make default executable a.exe instead of
4309 a.out
4310
4311Fri Jan 3 17:33:34 1997 Richard Henderson <rth@tamu.edu>
4312
4313 * scripttempl/elf.sc: Move .got closer to .sdata and .sbss by
4314 shifting .plt back. Rumour has it that the NetBSD ld.so depends
4315 on .dynamic being after .got, so we leave that.
4316
4317Fri Jan 3 14:04:40 1997 Ian Lance Taylor <ian@cygnus.com>
4318
4319 * Makefile.in (clean): Don't remove configdoc.texi.
50bbae35 4320 (maintainer-clean): Do remove configdoc.texi.
252b5132
RH
4321
4322 * ld.texinfo (Operators): Remove '@' from @smallexmple in comment
4323 to avoid confusing texi2roff.
4324
4325Fri Jan 3 11:27:02 1997 Michael Meissner <meissner@tiktok.cygnus.com>
4326
4327 * scripttempl/v850.sc (.zdata): Add .zcommon section.
4328 (.tdata): Add .tcommon and .tcommon_byte sections.
4329
4330Thu Jan 2 18:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
4331
4332 * configure.tgt (mips*el-*-linux*, mips*-*-linux*): New targets.
4333 * scripttempl/elfmips.sc: Use __start as the entry address for
4334 mips*-*-linux*.
4335
4336Tue Dec 31 14:48:30 1996 Ian Lance Taylor <ian@cygnus.com>
4337
4338 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
4339
4340 * ld.h (args_type): Add filter_shlib and auxiliary_filter_shlib
4341 fields.
4342 * lexsup.c (parse_args): Recognize --auxiliary/-f and
4343 --filter/-F.
4344 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
4345 Pass filter_shlib and auxiliary_filter_shlib to
4346 size_dynamic_sections.
4347 * ld.texinfo, ld.1: Document --filter/-F and --auxiliary/-f.
4348
4349Mon Dec 30 13:55:57 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4350
4351 * scripttempl/v850.sc (.tdata) Add .tbss and .tbyte sections.
4352
4353Wed Dec 18 22:57:35 1996 Stan Shebs <shebs@andros.cygnus.com>
4354
4355 * mpw-make.sed: Use NewFolderRecursive for installation.
4356
4357Fri Dec 13 14:08:50 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4358
4359 * scripttempl/v850.sc: Make sure __{e,g}p start relative to the
4360 {s,t}data sections. Do not emit any linker generated symbols if
4361 -r. Use {TEXT,{Z,S,T}DATA}_START_ADDR variables to initialize
4362 where the different sections go. Change some whitespace.
4363
4364 * emulparams/v850.sh ({TEXT,{Z,S,T}DATA}_START_ADDR): Define
4365 appropriately. Remove crud not used anymore.
4366
4367Fri Dec 13 10:19:57 1996 Jeffrey A Law (law@cygnus.com)
4368
4369 * Makefile.in (emn10200.c): Add dependencies.
4370 * configure.tgt: Handle mn10200.
4371 * emulparms/mn10200.sh: New file.
4372
4373Thu Dec 12 17:04:55 1996 Ian Lance Taylor <ian@cygnus.com>
4374
4375 * emultempl/gld960c.em: Include <ctype.h>.
50bbae35 4376 (gld960_set_output_arch): Get the machine type from the -A option
252b5132
RH
4377 if there is one, rather than always using core.
4378
4379Sat Dec 7 10:07:51 1996 Jeffrey A Law (law@cygnus.com)
4380
4381 * emulparms/mn10300.sh: Handle leading underscores.
4382
4383Thu Dec 5 13:45:58 1996 Ian Lance Taylor <ian@cygnus.com>
4384
4385 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Only
4386 set hold_rel if SEC_ALLOC is set.
4387
4388Tue Dec 3 11:29:20 1996 Ian Lance Taylor <ian@cygnus.com>
4389
4390 * ldlang.c (section_already_linked): Set the output_offset as well
4391 as the output_section when only reading symbols from a file.
4392
4393Mon Dec 2 11:43:50 1996 Ian Lance Taylor <ian@cygnus.com>
4394
4395 * emulparams/*.sh: Make sure that each set of parameters which
4396 uses the elf.sc script sets MACHINE.
4397
4398Wed Nov 27 03:22:05 1996 Jason Merrill <jason@yorick.cygnus.com>
4399
4400 * scripttempl/elf{,mips,ppc}.sc: Add the remaining DWARF sections.
4401 * scripttempl/elfd10v.sc: Likewise.
4402 * scripttempl/v850.sc: Likewise.
4403
4404Tue Nov 26 16:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
4405
4406 * configure: Rebuild with autoconf 2.12.
4407
4408Mon Nov 25 12:17:55 1996 Jim Wilson <wilson@cygnus.com>
4409
4410 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Add case
4411 for bfd_vma to init loop.
4412
4413Mon Nov 25 09:55:07 1996 Jeffrey A Law (law@cygnus.com)
4414
4415 * emulparms/mn10300.sh: Remove bogus '_' prefix for
4416 entry symbol and ctor/dtor stuff.
4417
4418Fri Nov 15 13:00:18 1996 Jeffrey A Law (law@cygnus.com)
4419
4420 * Makefile.in (emn10300.c): Add dependencies.
4421 * configure.tgt: Handle mn10300.
4422 * emulparms/mn10300.sh: New file.
4423
4424Tue Nov 5 10:57:50 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4425
4426 * emulparams/d10velf.sh (READONLY_START_ADDR): Changed to 0x2000004.
4427 (EMBEDDED): Define.
4428
4429Fri Nov 1 10:01:27 1996 Ian Lance Taylor <ian@cygnus.com>
4430
4431 * ld.texinfo: Add section on reporting bugs.
4432
4433 * scripttempl/m68kcoff.sc: Make sure the etext and __CTOR_LIST__
4434 symbols are correctly aligned.
4435
4436Thu Oct 31 09:28:59 1996 Jeffrey A Law (law@cygnus.com)
4437
4438 * scriptempl/v850.sc (zdata): Handle reszdata, romzdata and
4439 romzbss too.
4440
4441Tue Oct 29 12:33:05 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4442
4443 * emulparams/d10velf.sh: Changes needed for D10V-EVA board.
4444 Set TEXT_START_ADDR to 0x1000000. Set READONLY_START_ADDR to
4445 0x2000000.
4446
4447 * scripttempl/elfd10v.sc: Fix calculation of .text. Change
4448 .stack to start at 0x2007ffe.
4449
4450Mon Oct 28 15:37:00 1996 Doug Evans <dje@canuck.cygnus.com>
4451
4452 * configure.tgt (sparclet*-*-aout*): Delete, use sparc*-*-aout*.
4453
4454Wed Oct 23 16:17:22 1996 Jeffrey A Law (law@cygnus.com)
4455
4456 * scriptempl/v850.sc (zdata): Fix typo "zrodata" -> "rozdata".
4457
4458 * scriptempl/v850.sc (zdata): Make sure this stays
4459 in lo-memory.
4460
4461Tue Oct 22 11:36:47 1996 Jeffrey A Law (law@cygnus.com)
4462
4463 * scripttempl/v850.sc (__ep): Put it at the start
4464 of the tda section.
4465
4466 * scriptempl/v850.sc: Move all "normal" sections into
4467 the external memory region (0x100000 - 0x200000).
4468
4469Mon Oct 21 17:16:59 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4470
4471 * scripttempl/elfd10v.sc: Clone from elf.sc, move .text to
4472 0x10000, so that is more room for data.
4473
4474 * emulparams/d10velf.sh (TEXT_START_ADDR): Now 0x100000.
4475 (READONLY_START_ADDR): Now 0x0.
4476 (SCRIPT_NAME): Now elfd10v.
4477
4478 * Makefile.in (ed10velf.c): Depend on elfd10v.sc, not elf.sc.
4479
4480Fri Oct 18 22:12:49 1996 Doug Evans <dje@canuck.cygnus.com>
4481
4482 * emulparams/m32relf.sh (TEXT_START_ADDR): Change from 0 to 0x100.
4483
4484Fri Oct 18 15:43:38 1996 Ian Lance Taylor <ian@cygnus.com>
4485
4486 * Makefile.in (ALL_EMULATIONS): Remove eelf64alpha.o.
4487 (ALL_64_EMULATIONS): New variable.
4488 * configure.in: Accept --enable-64-bit-bfd option. If it is set
4489 with --enable-targets=all, include ALL_64_EMULATIONS in
4490 EMULATION_OFILES.
4491 * configure: Rebuild.
4492
4493Fri Oct 18 12:58:35 1996 Jeffrey A Law (law@cygnus.com)
4494
4495 * scripttempl/v850.sc (__gp, __ep): Define.
4496
4497Thu Oct 17 18:14:07 1996 Ian Lance Taylor <ian@cygnus.com>
4498
4499 * ld.texinfo: Try to consistently use a single or a double dash
4500 for each option.
4501
4502Thu Oct 17 10:17:20 1996 Doug Evans <dje@canuck.cygnus.com>
4503
4504 * emulparams/m32relf.sh (EMBEDDED): Define.
4505
4506Thu Oct 17 10:56:49 1996 Jeffrey A Law (law@cygnus.com)
4507
4508 * scripttempl/v850.sc (.zdata): Add this before .text.
4509 (.sdata): Also include .rosdata as part of the .sdata.
4510 (.tdata): Include this just before .sdata.
4511
4512 * emulparms/v850.sh (SCRIPT_NAME): Use "v850" not "elf".
4513 * scripttempl/v850.sc: Wrap script with a "cat << EOF".
4514
4515Wed Oct 16 23:10:01 1996 Jeffrey A Law (law@cygnus.com)
4516
4517 * scripttempl/v850.sc: New linker script for the V850.
4518 * Makefile.in: Use it.
4519
4520Thu Oct 10 17:57:00 1996 Ian Lance Taylor <ian@cygnus.com>
4521
4522 * emulparams/elf32b4300.sh: Define _gp in OTHER_GOT_SYMBOLS, not
4523 OTHER_READWRITE_SECTIONS.
4524 * emulparams/elf32l4300.sh: Likewise.
4525
4526Wed Oct 9 14:36:18 1996 Ian Lance Taylor <ian@cygnus.com>
4527
4528 * ld.h (ld_config_type): Add warn_section_align field.
4529 * lexsup.c (OPTION_WARN_SECTION_ALIGN): Define.
4530 (ld_options): Add --warn-section-align.
4531 (parse_args): Handle --warn-section-align.
4532 * ldlang.c (lang_size_sections): If warn_section_align, warn if
4533 the start of a section changes due to alignment.
4534 * ld.texinfo, ld.1: Document --warn-section-align.
4535 * ld.texinfo: Change some single dashes to double dashes.
4536
4537 * emultempl/pe.em (set_pe_subsystem): Record entry symbol for each
4538 subsystem type. Ifdef out os2 type. Recognize a version number.
4539
4540Tue Oct 8 12:07:13 1996 Ian Lance Taylor <ian@cygnus.com>
4541
4542 * emultempl/pe.em (set_pe_subsystem): When setting the subsystem
4543 to windows, set the entry point.
4544
4545 * Makefile.in (ldlex.c): Don't pass any options to $(LEX).
4546
4547Mon Oct 7 17:29:05 1996 Ian Lance Taylor <ian@cygnus.com>
4548
4549 * ld.texinfo (Options): Mention .so extensions for shared
4550 libraries.
4551
4552Sun Oct 6 22:35:36 1996 Jason Merrill <jason@yorick.cygnus.com>
4553
4554 * scripttempl/elf{,mips,ppc}.sc: Add DWARF 2 sections.
4555
4556Fri Oct 4 18:49:31 1996 Ian Lance Taylor <ian@cygnus.com>
4557
4558 * scripttempl/m68kcoff.sc: Only set the address of .text if
4559 RELOCATING.
4560
4561Fri Oct 4 10:59:52 1996 Doug Evans <dje@canuck.cygnus.com>
4562
4563 * emulparams/sparcaout.sh ({BIG,LITTLE}_OUTPUT_FORMAT): Define.
4564 * scripttempl/aout.sc ({BIG,LITTLE}_OUTPUT_FORMAT): Provide default.
4565 (OUTPUT_FORMAT): Support bi-endian targets.
4566
4567Thu Oct 3 13:52:03 1996 Ian Lance Taylor <ian@cygnus.com>
4568
4569 * fnmatch.h, fnmatch.c: Remove (now in libiberty).
4570 * Makefile.in: Rebuild dependencies.
4571 (CFILES): Remove fnmatch.c.
4572 (HFILES): Remove fnmatch.h.
4573 (OFILES): Remove fnmatch.o.
4574
4575Thu Oct 3 15:41:24 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
4576
4577 * Makefile.in (mostlyclean): Move config.log to distclean.
4578
4579Wed Oct 2 23:45:25 1996 Geoffrey Noer <noer@cygnus.com>
4580
50bbae35
AM
4581 * emultmpl/pe.em: increase size of stack reserve to 0x2000000
4582 (necessary in order to compile parse.c in gcc sources under NT)
252b5132
RH
4583
4584Wed Oct 2 14:49:10 1996 Ian Lance Taylor <ian@cygnus.com>
4585
4586 * lexsup.c (ld_options): Fix typo in --rpath-link description.
4587 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Suggest
4588 --rpath if a needed library is not found.
4589
4590Tue Oct 1 16:17:33 1996 Joel Sherrill <joel@oarcorp.com>
4591
4592 * configure.tgt (mips*-*-rtems*): New target, like mips*-*-elf*.
4593
4594Tue Oct 1 15:50:34 1996 Ian Lance Taylor <ian@cygnus.com>
4595
4596 * ld.texinfo (Options): Give more detail on -l option.
4597
4598 * scripttempl/elfmips.sc: Handle CREATE_SHLIB the same way that
4599 elf.sc does, so that glibc works better.
4600
4601 * ldver.c (ld_program_version): New variable.
4602 (ldversion): Use it.
4603 * ldver.h (ld_program_version): Declare.
4604 * lexsup.c (ld_options): Handle --dll-verbose like --verbose, not
4605 --version. Change --version handling to match current GNU
4606 standards.
4607 (help): Print bug report address.
4608
4609Mon Sep 30 12:14:43 1996 Doug Evans <dje@canuck.cygnus.com>
4610
4611 * Makefile.in (em32relf.c): Add rule for.
4612 * configure.tgt (m32r-*-*): Recognize.
4613 * emulparams/m32relf.sh: New file.
4614
4615Thu Sep 26 13:58:47 1996 Stan Shebs <shebs@andros.cygnus.com>
4616
4617 * mpw-make.sed: Add symbolic doublequoting to ldmain compile edit.
4618 * mpw-config.in: Add mips-*-* case as mips-elf, and use more
4619 wildcards in matching.
4620 * mpw-emipself.c: New file, pregenerated mips elf emulation.
4621
4622Tue Sep 17 12:18:21 1996 Ian Lance Taylor <ian@cygnus.com>
4623
4624 * ldint.texinfo: Rewrote.
4625
4626 * configure.tgt: Add cases for MIPS 5000 like MIPS 4300.
4627
4628Mon Sep 16 17:55:21 1996 Ian Lance Taylor <ian@cygnus.com>
4629
4630 * scripttempl/armcoff.sc: Only define symbols if RELOCATING. Fix
4631 syntax error on __end__ line.
4632
4633 * scripttempl/armcoff.sc: For -N or -n, don't align .data. From
50bbae35 4634 Chris Hadley <Christopher.Hadley@cl.cam.ac.uk>
252b5132
RH
4635
4636Sun Sep 15 22:09:56 1996 Jeffrey A Law (law@cygnus.com)
4637
4638 * emulparms/v850.sh: Fix OTHER_RELOCATING_SECTIONS.
4639
4640Sun Sep 15 10:38:16 1996 Mark Alexander <marka@cygnus.com>
4641
4642 * emulparms/d10v.sh: Set OTHER_RELOCATING_SECTIONS to put
4643 stack at top of simulator memory.
4644
4645Fri Sep 13 15:49:45 1996 Ian Lance Taylor <ian@cygnus.com>
4646
4647 * ldlex.l (SYMBOLCHARN): Add $, _, and ~.
4648
4649Wed Sep 11 23:30:42 1996 Ian Lance Taylor <ian@cygnus.com>
4650
4651 * ldmain.c (get_emulation): Check for -mips4 like -mips1, et. al.
4652
4653Thu Sep 5 15:24:12 1996 Ian Lance Taylor <ian@cygnus.com>
4654
4655 * ldlang.c (section_already_linked): Accept a lang_input_statement
4656 as the PTR argument. If the file is symbols only, discard all
4657 input sections.
4658 (ldlang_add_file): Pass entry to bfd_map_over_sections.
4659
4660Wed Sep 4 15:53:43 1996 Ian Lance Taylor <ian@cygnus.com>
4661
4662 * configure.tgt (alpha-*-gnu*): New target. From Fila Kolodny
4663 <fila@ibi.com>.
4664
4665Tue Sep 3 00:52:54 1996 Jeffrey A Law (law@cygnus.com)
4666
4667 * emulparms/v850.sh: Set OTHER_RELOCATING_SECTIONS
4668
4669Sun Sep 1 21:48:58 1996 Jeffrey A Law (law@cygnus.com)
4670
4671 * emulparms/v850.sh: Set EMBEDDED.
4672
4673Fri Aug 30 22:30:30 1996 Jeffrey A Law (law@cygnus.com)
4674
4675 * emulparms/v850.sh: Entry symbol is "_start", tweak
4676 ctor/dtor support.
4677
4678Fri Aug 30 18:32:31 1996 Ian Lance Taylor <ian@cygnus.com>
4679
4680 * configure.tgt (sh-*-elf*): New target.
4681 * emulparams/shelf.sh: New file.
4682 * emulparams/shlelf.sh: New file.
4683 * Makefile.in (ALL_EMULATIONS): Add eshelf.o and eshlelf.o.
4684 (eshelf.c, eshlelf.c): New targets.
4685 * scripttempl/elf.sc: If EMBEDDED is defined, then don't add
4686 SIZEOF_HEADERS to TEXT_START_ADDR. Expand CTOR_START and CTOR_END
4687 around .ctors, and DTOR_START and DTOR_END around .dtors. Expand
4688 OTHER_RELOCATING_SECTIONS if RELOCATING.
4689
4690Thu Aug 29 16:57:46 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4691
4692 * configure.{host,tgt} (i[345]86-*-*): Recognize i686 for pentium
4693 pro.
4694
4695Mon Aug 26 12:58:11 1996 Ian Lance Taylor <ian@cygnus.com>
4696
4697 * ldgram.y (section): Add opt_nocrossrefs; pass value to
4698 lang_enter_overlay.
4699 (opt_nocrossrefs): New nonterminal.
4700 * ldlex.l: Recognize NOCROSSREFS keyword in EXPRESSION mode.
4701 * ldlang.c (overlay_nocrossrefs): New static variable.
4702 (lang_enter_overlay): Add nocrossrefs parameter.
4703 (lang_leave_overlay): Only add nocrossrefs if overlay_nocrossrefs
4704 is set. Initialize overlay_nocrossrefs.
4705 * ldlang.h (lang_enter_overlay): Update declaration.
4706 * ld.texinfo (Overlays): Update documentation.
4707
4708 * ldver.c (ldversion): Print GNU ld in the version message.
4709
4710Thu Aug 22 17:10:40 1996 Ian Lance Taylor <ian@cygnus.com>
4711
4712 * configure.host: Set HLDENV.
4713 * configure.in: Substitute HLDENV.
4714 * configure: Rebuild.
4715 * Makefile.in (HLDENV): New variable.
4716 ($(LD_PROG)): Use $(HLDENV).
4717
4718Thu Aug 22 16:29:28 1996 Jeffrey A Law (law@cygnus.com)
4719
4720 * Makefile.in (ev850.c): New target.
4721 * configure.tgt (v850-*-*): New target.
4722 * emulparams/v850.sh: New file.
4723
4724Thu Aug 22 11:16:02 1996 Stan Shebs <shebs@andros.cygnus.com>
4725
4726 * mpw-make.sed: Add @DASH_C_FLAG@ to compiler edit.
4727
4728Wed Aug 21 11:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
4729
4730 * scripttempl/elf.sc: Put .gnu.linkonce* sections in appropriate
4731 containing sections.
4732
4733Mon Aug 19 13:01:42 1996 Ian Lance Taylor <ian@cygnus.com>
4734
4735 * fnmatch.c: Include sysdep.h.
4736
4737Mon Aug 19 11:28:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4738
4739 * genscripts.sh: Undo 8/16 change.
4740
4741 * emulparams/d10velf.sh (MACHINE): Explicitly set to nothing.
4742
4743Fri Aug 16 19:18:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4744
4745 * genscripts.sh: Explicitly reset any shell variables set or used
4746 by the various .sc scripts to allow inadvertant use of these
4747 names as normal environment variables by the person running
4748 configure.
4749
4750 * Makefile.in (ed10velf.c): Use tdir_d10v, not tdir_arcelf.
4751
4752Fri Aug 16 14:15:41 1996 James G. Smith <jsmith@cygnus.co.uk>
4753
4754 * scripttempl/armcoff.sc (__bss_start__, __bss_end__,
50bbae35
AM
4755 __data_start__, __data_end__): Added to keep in sync. with the
4756 default ARM crt0.s. Added __CTOR_LIST__ and __DTOR_LIST__ support.
252b5132
RH
4757
4758Thu Aug 8 14:24:56 1996 Ian Lance Taylor <ian@cygnus.com>
4759
4760 * ldcref.c (check_reloc_refs): If info->same, look for any symbol
4761 defined in info->defsec, not just the section symbol.
4762
4763Wed Aug 7 14:40:48 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
4764
4765 * configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
4766 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
4767 (NEED_DECLARATION_SBRK): New macro.
4768 * configure, config.in: Rebuild.
4769 * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
4770 * ldmain.c (sbrk): Declare if HAVE_SBRK and
4771 NEED_DECLARATION_SBRK.
4772
4773 * ldlang.c (lang_record_phdrs): Cast xmalloc and xrealloc return.
4774
4775Mon Aug 5 16:26:14 1996 Ian Lance Taylor <ian@cygnus.com>
4776
4777 * ldlex.l: Recognize OVERLAY.
4778 * ldgram.y: Add section_phdr field to %union.
4779 (section): Handle phdr_opt result. Add OVERLAY case.
4780 (opt_exp_without_type): New nonterminal.
4781 (phdr_opt): Return list of phdrs.
4782 (overlay_section): New nonterminal.
4783 * ldlang.c: Include <ctype.h>.
4784 (lang_leave_output_section_statement): Add phdrs parameter.
4785 Change all callers.
4786 (lang_section_in_phdr): Remove.
4787 (overlay_vma, overlay_lmn, overlay_max): New static variables.
4788 (struct overlay_list): Define.
4789 (overlay_list): New static variable.
4790 (lang_enter_overlay, lang_enter_overlay_section): New functions.
4791 (lang_leave_overlay_section, lang_leave_overlay): New functions.
4792 * ldlang.h (lang_leave_output_section_statement): Update
4793 declaration for new parameter.
4794 (lang_section_in_phdr): Don't declare.
4795 (lang_enter_overlay, lang_enter_overlay_section): Declare.
4796 (lang_leave_overlay_section, lang_leave_overlay): Declare.
4797 * ld.texinfo (Overlays): New node under SECTIONS, documenting
4798 overlays.
4799
4800 * ldlex.l: Recognize MAX and MIN.
4801 * ldgram.y (MAX, MIN): New terminals.
4802 (exp): Recognize MAX and MIN.
4803 * ldexp.c (fold_binary): Handle MAX and MIN.
4804 * ld.texinfo (Arithmetic Functions): Document MAX and MIN.
4805
4806 * ld.texinfo (PHDRS): Use @cindex, not @kindex, for program header
4807 index entries.
4808
4809 * ldgram.y (SIZEOF, ADDR): Do not specify type.
4810
4811 * ldcref.c (check_nocrossref): Skip symbols with no output
4812 sections.
4813
4814Fri Aug 2 14:57:49 1996 Ian Lance Taylor <ian@cygnus.com>
4815
4816 * ldgram.y (LOADADDR): New terminal.
4817 (exp): Handle LOADADDR.
4818 * ldlex.l: Recognize LOADADDR.
4819 * ldexp.c (exp_print_token): Add LOADADDR.
4820 (fold_name): Implement LOADADDR.
4821 * ldlang.c (exp_init_os): Treat LOADADDR like ADDR.
4822 * ld.texinfo (Arithmetic Functions): Document LOADADDR.
4823
4824Thu Aug 1 12:52:19 1996 Ian Lance Taylor <ian@cygnus.com>
4825
4826 * ld.h (check_nocrossrefs): Declare.
4827 * ldlang.h (struct lang_nocrossref): Define.
4828 (struct lang_nocrossrefs): Define.
4829 (nocrossref_list): Declare.
4830 (lang_add_nocrossref): Declare.
4831 * ldlex.l: Recognize NOCROSSREFS keyword.
4832 * ldgram.y (%union): Add nocrossref field.
4833 (NOCROSSREFS): New terminal.
4834 (ifile_p1): Recognize NOCROSSREFS.
4835 (nocrossref_list): New nonterminal.
4836 * ldlang.c (nocrossref_list): Define.
4837 (lang_add_nocrossref): New function.
4838 * ldmain.c (main): If nocrossref_list is not NULL, call
4839 check_nocrossrefs.
4840 (warning_callback): Free symbols if there is no place to store
4841 them.
4842 (notice): Call add_cref if nocrossref_list is not NULL.
4843 * ldcref.c: Include "ldexp.h" and "ldlang.h".
4844 (check_nocrossrefs): New function.
4845 (check_nocrossref): New static function.
4846 (struct check_refs_info): Define.
4847 (check_refs, check_reloc_refs): New static functions.
4848 * Makefile.in: Rebuild dependencies.
4849 * ld.texinfo (Option Commands): Document NOCROSSREFS.
4850
4851 * ld.texinfo (Section Placement): Improve the wording of the
4852 wildcard documentation. Mention that wildcards are only searched
4853 for on the command line, not in the file system.
4854
4855 * emultempl/sunos.em (gld${EMULATION_NAME}_after_open): Move
4856 definition of lib_path inside condition where it is used.
4857
4858Wed Jul 31 13:17:10 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4859
50bbae35 4860 * emulparams/d10velf.sh: Now works with elf.sc.
252b5132
RH
4861
4862Wed Jul 31 11:52:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4863
4864 * emulparams/d10velf.sh (SCRIPT_NAME): Change to vanilla.
4865
4866Tue Jul 30 14:46:42 1996 Ian Lance Taylor <ian@cygnus.com>
4867
4868 * ldlang.c (lang_size_sections): Add the section VMA to the result
4869 value when computing the address of a section.
4870
4871 * ld.h (args_type): Add cref field.
4872 * lexsup.c (parse_args): Set command_line.cref.
4873 * ldmain.c (main): Check command_line.cref rather than
4874 link_info.notice_all.
4875 (notice): Likewise.
4876
4877 * ldcref.c (output_one_cref): Don't crash if a symbol is defined
4878 in a section without an owner.
4879
4880Mon Jul 29 17:23:33 1996 Ian Lance Taylor <ian@cygnus.com>
4881
4882 * fnmatch.h, fnmatch.c: New files.
4883 * ldlex.l: Remove unused definition of FILENAME. Add definition
4884 of WILDCHAR. In SCRIPT mode, accept any sequence of WILDCHAR as a
4885 NAME.
4886 * ldgram.y (file_NAME_list): Accept '*' and '?' specially.
4887 (input_section_spec): Accept '?' specially.
4888 (statement): Change exp to mustbe_exp in length and FILL cases.
4889 (section): Call ldlex_script before section statements, and call
4890 ldlex_popstate after them.
4891 * ldlang.c: Include "fnmatch.h".
4892 (wildcardp): New static function.
4893 (wild_section): Permit the section name to be a wildcard.
4894 (wild_file): New static function, broken out of wild.
4895 (wild): Call wild_file. Permit the file name to be a wildcard.
4896 (open_input_bfds): Don't call lookup_name for a wildcard pattern.
4897 * Makefile.in: Rebuild dependencies.
50bbae35 4898 (CFILES): Add fnmatch.c.
252b5132
RH
4899 (HFILES): Add fnmatch.h.
4900 (OFILES): Add fnmatch.o.
4901 * ld.texinfo: Document that file and section names can now be
4902 wildcard patterns.
4903
4904 * ldlang.c (lang_place_orphans): Correct condition: place a common
4905 section if not relocateable or if common definitions are forced.
4906
4907Wed Jul 24 12:16:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4908
4909 * emulparams/d10velf.sh (SCRIPT_NAME): Change to elf.
4910
4911Wed Jul 24 13:38:22 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4912
4913 * configure.tgt (d10v-*-*): Don't require the -elf, allow plain d10v.
4914
4915Tue Jul 23 10:36:19 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4916
4917 * Makefile.in (ed10velf.c): New target.
4918 * configure.tgt (d10v-*-elf*): New target.
4919 * emulparams/d10velf.sh: New file.
4920
4921Thu Jul 18 16:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
4922
4923 * configure.tgt (sparc*-*-sysv4*): New target. From Andrew Gierth
4924 <ANDREWG@microlise.co.uk>.
4925
4926 * configure.host: Change irix5 to irix[56]*.
4927 * configure.tgt: Likewise.
4928
4929Wed Jul 17 10:52:46 1996 Kim Knuttila <krk@cygnus.com>
4930
4931 * emultempl/pe.em (sort_sections): Pay attention to return code.
4932
4933 * ldmisc.c (demangle): Remove all prefix '.'s from a name.
4934
4935Mon Jul 15 11:49:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4936
4937 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Round
50bbae35
AM
4938 the value of __start_SECNAME to the alignment required by the
4939 section to be placed.
252b5132
RH
4940
4941Tue Jul 9 12:09:02 1996 Ian Lance Taylor <ian@cygnus.com>
4942
4943 * configure.tgt (mips*el-*-elf*): Use elf32elmip.
4944 (mips*-*-elf*): Use elf32ebmip.
4945 * emulparams/elf32bmip.sh (EMBEDDED): Don't define.
4946 * emulparams/elf32lmip.sh (EMBEDDED): Don't define.
4947 * emulparams/elf32elmip.sh: New file; copy of elf32lmip.sh with
4948 EMBEDDED defined.
4949 * emulparams/elf32ebmip.sh: New file; copy of elf32bmip.sh with
4950 EMBEDDED defined.
4951 * emulparams/elf32b4300.sh (EMBEDDED): Define.
4952 * emulparams/elf32l4300.sh (EMBEDDED): Define.
4953 * Makefile.in (ALL_EMULATIONS): Add eelf32ebmip.o eelf32elmip.o.
4954 (eelf32ebmip.c, eelf32elmip.c): New targets.
4955
4956Thu Jul 4 12:01:03 1996 Ian Lance Taylor <ian@cygnus.com>
4957
4958 * ldver.c (ldversion): Set version to cygnus-2.7.1.
4959
4960 * Released binutils 2.7.
4961
4962 * emulparams/pc532macha.sh: Rename from pc532machaout.sh to avoid
4963 System V file name limitations.
4964 * configure.tgt (nc32k-pc532-mach*, ns32k-pc532-ux*): Use
4965 pc532macha rather than pc532machaout.
4966 * Makefile.in (ALL_EMULATIONS): Change epc532machaout.o to
4967 epc532macha.o.
4968 (epc532macha.c): Rename target from epc532machaout.c.
4969
4970Wed Jul 3 11:40:10 1996 Ian Lance Taylor <ian@cygnus.com>
4971
4972 * ldlang.c (print_padding_statement): Use %u, not %x, to print
4973 fill value.
4974
4975Sun Jun 30 11:16:43 1996 Stan Shebs <shebs@andros.cygnus.com>
4976
4977 * mpw-eppcmac.c: Update to reflect May 23 change to aix.em.
4978
4979Thu Jun 27 14:03:42 1996 Ian Lance Taylor <ian@cygnus.com>
4980
4981 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Put the .sa
4982 file just before the .so file, rather than just after.
4983
4984 * configure.host: Use -print-file-name=FILE rather than piping
4985 -print-libgcc-file-name through sed.
4986 (i[345]86*-*-sco*, i[345]86-*-isc*): Create crtbegin.o and
4987 crtend.o files, in case gcc doesn't use them.
4988 * Makefile.in (mostlyclean): Remove crtbegin.o and crtend.o.
4989
4990Wed Jun 26 15:57:21 1996 Ian Lance Taylor <ian@cygnus.com>
4991
4992 * configure.tgt (mips*-dec-osf*): New target.
4993
4994Tue Jun 25 22:15:29 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
4995
4996 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
4997 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
4998 (docdir): Removed.
4999 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
5000 (AC_PROG_INSTALL): Added.
5001 * configure: Rebuilt.
5002
5003Mon Jun 24 18:48:16 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5004
5005 * scripttempl/elfppc.sc (_GLOBAL_OFFSET_TABLE_): Don't do a
5006 PROVIDE of _GLOBAL_OFFSET_TABLE_, since it needs to be at a
5007 non-fixed location.
5008
5009Mon Jun 24 17:55:31 1996 Jouke Numan <jnuman@bazis.nl>
5010
5011 * ldlang.h (enum section_type): Define.
5012 (lang_output_section_statement_type): Remove loadable field. Add
5013 sectype field.
5014 (lang_enter_output_section_statement): Change flags parameter in
5015 prototype to sectype.
5016 * ldgram.y (typebits): Remove.
5017 (sectype): New static variable.
5018 (opt_at): Use sectype rather than typebits.
5019 (type): Set sectype rather than typebits.
5020 (atype): Likewise.
5021 * ldlex.l: Recognize DSECT, COPY, INFO, and OVERLAY in
5022 EXPRESSION mode.
5023 * ldlang.c (lang_output_section_statement_lookup): Set sectype
5024 field rather than loadable field.
5025 (wild_doit): Check sectype rather than loadable.
5026 (lang_record_phdrs): Likewise.
5027 (lang_enter_output_section_statement): Rename flags parameter to
5028 sectype. Set sectype field rather than loadable field. Set flags
5029 field based on sectype.
5030
5031Mon Jun 24 12:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
5032
5033 * scripttempl/elf.sc: Force .stab* and .comment sections to start
5034 at 0.
5035
5036 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
5037 using shared libraries.
5038 * configure: Rebuild with autoconf 2.10.
5039
5040Fri Jun 21 17:40:56 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
5041
5042 * configure.tgt: Add support for *-*-rtems* configurations.
5043
5044Fri Jun 21 13:05:51 1996 Richard Henderson <rth@tamu.edu>
5045
5046 * configure.tgt (alpha-*-linuxecoff*): New target.
5047 (alpha-*-linux*): Use elf64alpha.
5048 * emulparams/elf64alpha.sh: New file.
5049 * emultempl/elf32.em: If ELFSIZE is not set, set it to 32. Use
5050 ${ELFSIZE} rather than 32 when calling BFD routines.
5051 (hold_rodata): New static variable.
5052 (gld${EMULATION_NAME}_place_orphan): Use hold_rodata for a
5053 readonly section that is not code.
5054 (gld${EMULATION_NAME}_place_section): Set hold_rodata. Don't use
5055 a .rel section unless its bfd_section field is not NULL.
5056 * Makefile.in (ALL_EMULATIONS): Add eelf64alpha.o.
5057 (eelf64alpha.c): New target.
5058
5059Fri Jun 21 12:45:46 1996 Ian Lance Taylor <ian@cygnus.com>
5060
5061 * ldmisc.c (vfinfo): Correct handling of 0 in %W case.
5062
5063Thu Jun 20 13:55:28 1996 Ian Lance Taylor <ian@cygnus.com>
5064
5065 Add enough support to understand the gcc svr3.ifile script:
5066 * ldlex.l: Recognize BLOCK and GROUP in EXPRESSION context. Add
5067 BIND keyword.
5068 * ldgram.y: Add BIND token.
5069 (section): Recognize GROUP.
5070 (opt_ext_with_type): Recognize a couple of cases of BIND.
5071 * ldlang.c (init_os): Don't do anything if section is already
5072 initialized. Call exp_init_os on addr_tree field.
5073 (exp_init_os): New static function.
5074 (map_input_to_output_sections): Call exp_init_os on assignment
5075 expression.
5076 (lang_place_orphans): Check for common sections by name COMMON
5077 rather than by common_section field. Don't warn about absence of
5078 [COMMON] command.
5079
5080 * ldlang.h (lang_input_statement_type): Remove useless fields
5081 common_section, common_output_section, and complained, as well as
5082 all references to them.
5083
5084 * ldexp.c: Reindent a lot of code.
5085 (exp_fold_tree): Call FAIL rather than einfo in default case.
5086
5087Wed Jun 19 11:40:14 1996 Ian Lance Taylor <ian@cygnus.com>
5088
5089 * configure.host (m88*-*-dgux*): Quote HOSTING_CRT0. From
5090 <randall.hron@medaphis.com>.
5091
5092Tue Jun 18 15:53:09 1996 Jeffrey A. Law <law@rtl.cygnus.com>
5093
5094 * scripttempl/h8300s.sc: New file for H8/S.
5095 * emulpararms/h8300s.sh: New file for H8/S.
5096 * Makefile.in (ALL_EMULATIONS): Add H8/S.
5097 (e_h8300s.c): Add dependencies.
5098 * configure.tgt: Add H8/S to targ_extra_emuls.
5099
5100Tue Jun 18 17:55:39 1996 Ian Lance Taylor <ian@cygnus.com>
5101
5102 * configure.tgt (i[345]86*-*-isc*): New target. From
5103 <uddeborg@carmen.se>.
5104
5105Wed Jun 12 12:46:21 1996 Ian Lance Taylor <ian@cygnus.com>
5106
5107 * lexsup.c: Include "libiberty.h".
50bbae35
AM
5108 (parse_args): Copy the -Y argument into memory.
5109 (set_default_dirlist): Don't put the ':' back into the directory
252b5132
RH
5110 list.
5111
5112Fri Jun 7 11:27:42 1996 Ian Lance Taylor <ian@cygnus.com>
5113
5114 * emultempl/sunos.em: Include libiberty.h.
5115 (gld${EMULATION_NAME}_set_symbols): New static function to add
5116 LD_LIBRARY_PATH to the list of search directories.
5117 (ld_${EMULATION_NAME}_emulation): Add new set_symbols routine.
5118
5119Thu Jun 6 11:50:31 1996 Ian Lance Taylor <ian@cygnus.com>
5120
5121 * emulparams/elf32bmip.sh (OTHER_GOT_SYMBOLS): Use ALIGN(16)
5122 rather than . when computing _gp value. From Per Fogelstrom.
5123 * emulparams/elf32lmip.sh (OTHER_GOT_SYMBOLS): Likewise.
5124
5125 * ldmain.c (main): Don't close and unlink the file on error, since
5126 remove_output will do it anyhow.
5127 * ldlang.c (open_output): Set boolean variable to true, not 1.
5128
5129Wed Jun 5 18:34:14 1996 James G. Smith <jsmith@cygnus.co.uk>
5130
5131 * emulparams/{elf32b4300.sh,elf32l4300.sh} (SCRIPT_NAME): Use
5132 elfmips instead of elf.
5133
5134Tue Jun 4 18:43:07 1996 Ian Lance Taylor <ian@cygnus.com>
5135
5136 * ldcref.c: New file.
5137 * ld.h (add_cref, output_cref): Declare.
5138 * ldmain.c (main): Initialize notice_all field. If it is set at
5139 end of link, call output_cref.
5140 (notice): Rename from notice_ysym. Check notice_all.
5141 * ldmisc.c (finfo): Make globally visible.
5142 * ldmisc.h (finfo): Declare.
5143 * lexsup.c (OPTION_CREF): Define.
5144 (ld_options): Add "cref".
5145 (parse_args): Handle OPTION_CREF.
5146 * Makefile.in: Rebuild dependencies.
5147 (CFILES): Add ldcref.c.
5148 (OFILES): Add ldcref.o.
5149 * ld.texinfo, ld.1: Document --cref.
5150
5151Tue Jun 4 12:12:25 1996 Tom Tromey <tromey@csk3.cygnus.com>
5152
5153 * Makefile.in (install): Make $(tooldir) and $(tooldir)/bin.
5154
5155Fri May 31 12:40:55 1996 Ian Lance Taylor <ian@cygnus.com>
5156
5157 * emultempl/pe.em (sort_sections): Don't assume that a
5158 wild_statement has a section name.
5159
5160Wed May 29 13:13:35 1996 Ian Lance Taylor <ian@cygnus.com>
5161
5162 * scripttempl/elfmips.sc: Quote test -z argument.
5163
5164 * ld.texinfo: Clarify the CONSTRUCTORS command.
5165
5166Thu May 23 16:07:44 1996 Ian Lance Taylor <ian@cygnus.com>
5167
5168 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Initialize
5169 file, not impfile.
5170
5171Wed May 22 11:31:30 1996 Doug Evans <dje@seba.cygnus.com>
5172
5173 * ldlang.c (wild_doit): Don't copy over SEC_LINK_{ONCE,DUPLICATES}
5174 if final link.
5175 * emultempl/pe.em (sfunc): Renamed to sort_by_file_name.
5176 (sort_by_section_name, sort_sections_1): New functions.
5177 (sort_sections): Only sort by file name sections in .idata.
5178 Add "Grouped Sections" support.
5179 (gld${EMULATION_NAME}_place_orphan): Rewrite to support Grouped
5180 Sections.
5181 (gld${EMULATION_NAME}_place_section): Delete.
5182 * scripttempl/pe.sc (.text,.data,.rdata): Add *(.foo\$).
5183 (.CRT,.rsrc): Rewrite to use Grouped Section support.
5184
5185Tue May 21 14:31:48 1996 Stan Shebs <shebs@andros.cygnus.com>
5186
5187 * mpw-eppcmac.c: Update to reflect changes to aix.em.
5188
5189Sun May 19 16:59:44 1996 Doug Evans <dje@seba.cygnus.com>
5190
5191 * ldlang.c (dprint_statement): Stop printing at end of list.
5192
5193Sat May 18 13:12:05 1996 Steve Chamberlain <sac@slash.cygnus.com>
5194
5195 Support for --force-exe-suffix
5196 * ld.h (args_type): Add force_exe_suffix.
5197 * ld.texinfo: Add documentation.
5198 * ldmain.c (main): Add support for option.
5199 * lexsup.c (OPTION_FORCE_EXE_SUFFIX): New.
5200 (ld_options, parse_args): Add support for option.
5201
5202Wed May 15 12:50:25 1996 Jim Wilson <wilson@chestnut.cygnus.com>
5203
5204 * emultempl/pe.em (set_pe_value): Pass 0 not 16 to strtoul call.
5205
5206Fri May 10 16:28:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5207
5208 * scripttempl/elfppc.sc (__stack): Make __stack 0 if it was
5209 referenced but not defined.
5210
5211Thu May 9 08:52:23 1996 Rob Savoye <rob@chinadoll.cygnus.com>
5212
5213 * emulparams/{elf32bmip.sh,elf32lmip.sh,mipsidt.sh,mipsidtl.sh}:
5214 Set a new variable to signify if the final target is an embedded
5215 system.
5216 * scripttempl/{mips.sc,elfmips.sc}: Don't add SIZEOF_HEADERS to
5217 .text for an embedded system.
5218
5219Tue May 7 10:56:11 1996 Doug Evans <dje@canuck.cygnus.com>
5220
5221 * scripttempl/pe.em (gld${EMULATION_NAME}_place_orphan): New function.
5222 (gld${EMULATION_NAME}_place_section): New function.
5223 (hold_{section,use,text,rdata,data}): New static locals.
5224 (ld_${EMULATION_NAME}_emulation): Update orphan field.
5225 * scripttempl/pe.sc: Whitespace cleanup. Semicolon usage cleanup.
5226 (INIT,FINI): Delete, unused.
5227 (.text): Document orphan .text.foo sections.
5228 (.rdata): Document orphan .rdata.foo sections.
5229 (.data): Document orphan .data.foo sections.
5230
5231Tue May 7 11:35:46 1996 Jeffrey A Law (law@cygnus.com)
5232
5233 * scripttempl/h8300.sc: Place ".tiny" sections right
5234 after ".data" sections.
5235 * scripttempl/h8300h.sc: Place ".tiny" sections into
5236 the "tiny" memory region, 0xff8000 through 0xffff00.
5237
5238 * scripttempl/h8300.sc: Set the entry point to the value of
5239 "_start" rather than the start of the text segment.
5240 * scripttempl/h8300h.sc: Likewise.
5241
5242 * scripttempl/h8300.sc: Place .rodata sections before .text
5243 sections in main ram.
5244 * scripttempl/h8300h.sc: Likewise.
5245
5246Mon May 6 23:32:30 1996 Jeffrey A Law (law@cygnus.com)
5247
5248 * scripttempl/h8300h.sc: Use "eight", not "eightbit" for the
5249 8-bit region and 8-bit sections.
5250
5251Wed May 1 17:50:06 1996 Doug Evans <dje@canuck.cygnus.com>
5252
5253 * ldlang.c (section_already_linked): Fix typos.
5254
5255Mon Apr 29 20:31:06 1996 Doug Evans <dje@canuck.cygnus.com>
5256
5257 * scripttempl/pe.sc (.endjunk): Define __end__.
5258
5259Mon Apr 29 17:05:13 1996 Ian Lance Taylor <ian@cygnus.com>
5260
5261 * ldlang.c (longest_section_name): Remove.
5262 (SECTION_NAME_MAP_LENGTH): Define.
5263 (print_size, print_alignment, print_fill, print_section): Remove.
5264 (print_flags): Remove.
5265 (lang_map): Rewrite.
5266 (print_output_section_statement): Rewrite.
5267 (print_assignment): Rewrite.
5268 (print_one_symbol): Rewrite.
5269 (print_input_section): Rewrite.
5270 (print_fill_statement): Rewrite.
5271 (print_data_statement): Rewrite.
5272 (print_address_statement): New static function.
5273 (print_reloc_statement): Rewrite.
5274 (print_padding_statement): Rewrite.
5275 (print_wild_statement): Rewrite.
5276 (print_statement_list): Clean up.
5277 (print_statement): Clean up. Some minor output changes.
5278 (print_statements): Clean up.
5279 (load_symbols): Put another - before -whole-archive.
5280 * ldexp.c (exp_print_tree): Change etree_value and etree_rel to
5281 print 0x and to omit leading zeroes. For etree_rel, use %B to
5282 print the BFD. For etree_assign, remove the space after the
5283 destination name.
5284 * ldwrite.c: Include "libiberty.h".
5285 (clone_section): Call xstrdup, not strdup.
5286 (ldwrite): Don't print any map information.
5287 (print_symbol_table, print_file_stuff, print_symbol): Remove.
5288 * ldmain.c (main): Call lang_map when appropriate.
5289 * ldmisc.c (vfinfo): Add support for %W.
5290 (print_address): Remove.
5291 * ldmisc.h (print_address): Don't declare.
5292 * Makefile.in: Rebuild dependencies.
5293
5294Mon Apr 29 10:29:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5295
5296 * configure.host (m68*-*-linux*): Add -dynamic-linker to
50bbae35
AM
5297 HOSTING_CRT0. Search -lgcc both before and after -lc in
5298 HOSTING_LIBS. Look for crt{begin,end}.o in the compiler directory
5299 at first.
252b5132
RH
5300 (i[345]86-*-linux*): Look for crt{begin,end}.o in the compiler
5301 directory at first.
5302
5303Fri Apr 26 14:42:27 1996 Ian Lance Taylor <ian@cygnus.com>
5304
5305 * ldmisc.h (demangle): Declare.
5306 * ldmisc.c: Include "libiberty.h". Include demangle.h with "",
50bbae35 5307 not <>.
252b5132
RH
5308 (demangle): Make non-static. Remove remove_underscore paramter.
5309 Always return an allocated string.
5310 (vfinfo): Free result of demangle. Add case 'G'. Use %T to print
5311 functionname, rather than calling demangle. Print a colon between
5312 the BFD(section+offset) and the line number.
5313 * ldmain.c (add_archive_element): Improve format of archive
5314 information in map file.
5315 (constructor_callback): Don't print anything to the map file.
5316 * ldlang.c (lang_one_common): Improve format of common symbol
5317 information in map file.
5318 * ldctor.c (ldctor_build_sets): If producing a map file, print set
5319 information.
5320 * ldwrite.c (print_symbol_table): Print a newline before the
5321 header in the map file.
5322 * Makefile.in: Rebuild dependencies.
5323
5324 * ldmisc.c (vfinfo): Reindent.
5325
5326Mon Apr 22 12:07:32 1996 Ian Lance Taylor <ian@cygnus.com>
5327
5328 * ldlang.c (lang_size_sections): If _cooked_size is not 0, then
5329 don't clobber it when not relaxing.
5330
5331 * ld.h (ld_config_type): Remove traditional_format field.
5332 * ldmain.c (main): Use link_info.traditional_format rather than
5333 config.traditional_format.
5334 * ldlang.c (ldlang_open_output): Likewise.
5335 * lexsup.c (parse_args): Likewise.
5336 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Likewise.
5337 * mpw-eppcmac.c (gldppcmacos_parse_args): Likewise.
5338
5339 * ldlang.c (wild_doit): Discard debugging sections if we are
5340 stripping debugging information.
5341
5342 * emulparams/z8002.sh (ARCH): Set to z8002, not z8k.
5343
5344Tue Apr 16 16:38:32 1996 Ian Lance Taylor <ian@cygnus.com>
5345
5346 * ldexp.c (fold_binary): Correct handling of subtraction with
5347 absolute values.
5348 (fold_name): Permit symbols in lang_allocating_phase_enum.
5349
5350 * scripttempl/aout.sc: Only PROVIDE __stack when RELOCATING. Undo
5351 accidental changes in last patch.
5352
5353Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5354
5355 * configure.tgt (powerpc*-*-{sysv,linux}): Add aliases.
5356 (powerpcle*-*-{sysv,solaris}): Ditto.
5357
5358Mon Apr 15 14:50:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
5359
5360 * scripttempl/aout.sc: Add PROVIDE (__stack = 0) so I can use it
5361 in m68k/crt0.S without things blowing up.
5362
5363Fri Apr 12 16:40:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
5364
5365 * scripttempl/m68kcoff.sc: Remove default address for .data so
5366 .text, .data, and .bss are all sequential.
5367
5368Thu Apr 11 12:05:35 1996 Ian Lance Taylor <ian@cygnus.com>
5369
5370 * scripttempl/m68kcoff.sc: Remove regions and simplify.
5371
5372Wed Apr 10 14:41:53 1996 Jeffrey A Law (law@cygnus.com)
5373
5374 * scripttempl/h8300.sc: Add the "8-bit area" in the upper 256
5375 bytes of the address space. Put data from the ".eight" sections
5376 into the 8-bit area.
5377 * scripttempl/h8300h.sc: Likewise.
5378
5379Tue Apr 9 14:10:42 1996 Doug Evans <dje@canuck.cygnus.com>
5380
5381 * emultempl/generic.em (gld${EMULATION_NAME}_before_parse):
5382 Pass $ARCH to ldfile_set_output_arch instead of setting
5383 ldfile_output_architecture directly.
5384
5385Tue Apr 9 14:22:15 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5386
5387 * scripttempl/elfppc.sc (.init,.fini): Put .init, .fini section
5388 next to .text. Put _etext after .text, .init, .fini, and
5389 .rodata{,2} sections.
5390
5391Tue Apr 9 12:18:57 1996 Ian Lance Taylor <ian@cygnus.com>
5392
5393 * ld.texinfo: Rearrange option documentation.
5394
5395 * lexsup.c (ld_options): New static array.
5396 (parse_args): Build shortopts and longopts from ld_options array.
5397 (help): New static function.
5398 * ldver.h (help): Don't declare.
5399 * ldver.c (ldversion): Reindent.
5400 (help): Remove.
5401
5402 * ld.texinfo, ld.1: Mention -E as a synonym for -export-dynamic.
5403
5404Mon Apr 8 11:56:23 1996 Ian Lance Taylor <ian@cygnus.com>
5405
5406 * emultempl/elf32.em: When checking for a native emulation, check
5407 that the current emulation is the default emulation.
5408 * emultempl/sunos.em: Likewise.
5409
5410 * configure.in: Permit --enable-shared to specify a list of
5411 directories.
5412 * configure: Rebuild.
5413
5414 * lexsup.c (parse_args): Add -E as a synonym for -export-dynamic,
5415 for HP/UX compatibility.
5416
5417Fri Apr 5 14:30:14 1996 Ian Lance Taylor <ian@cygnus.com>
5418
5419 * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): New
5420 static function, if ${host} = ${target}.
5421 (gld${EMULATION_NAME}_after_open): Call check_ld_so_conf to find a
5422 needed shared library if ${host} = $[target}.
5423
5424 * configure.host (i[345]86-*-linux*): Add -dynamic-linker to
5425 HOSTING_CRT0. Search -lgcc both before and after -lc in
5426 HOSTING_LIBS.
5427
5428 * configure.tgt: Add i[345]86-*-freebsdelf* target; from John
5429 Polstra <jdp@polstra.com>.
5430
5431Fri Apr 5 18:11:25 1996 James G. Smith <jsmith@cygnus.co.uk>
5432
5433 * emulparams/elf32{b,l}4300.sh (MACHINE): Add explicit
50bbae35 5434 architecture number.
252b5132
RH
5435 * scripttempl/elf.sc: Use $MACHINE definition if present.
5436 * configure.tgt (targ_extra_emuls): Force 4100 build to use same
50bbae35 5437 template as 4300.
252b5132
RH
5438
5439Mon Apr 1 17:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
5440
5441 * ldlang.c (lang_size_sections): Change region check to handle
5442 regions which end at the highest possible address correctly.
5443 From Roland Weber <roweber@ira.uka.de>.
5444
5445 * ldlang.c (section_already_linked): New static function.
5446 (wild_doit): Discard sections with SEC_EXCLUDE set if not doing a
5447 relocateable link. Don't worry about section being NULL, since it
5448 never should be. Don't call init_os unless the section is going
5449 to be added.
5450 (ldlang_add_file): Call section_already_linked for each section.
5451 * ldmain.c (multiple_definition): Don't warn about multiple
5452 definitions in sections which are being discarded.
5453
5454Sun Mar 31 00:30:47 1996 steve chamberlain <sac@slash.cygnus.com>
5455
5456 * scripttempl/{ppcpe.sc, pe.sc} (.junk): Remove and use /DISCARD/.
5457 * emultempl/pe.em (init): Remove special case PPC code.
5458
5459Fri Mar 29 00:01:29 1996 Jeffrey A Law (law@cygnus.com)
5460
5461 * scripttempl/h8300.sc: Make vectors section 0xc4 bytes long
5462 so as not to overwrite the magic syscall entry at 0xc4.
5463 * scripttempl/h8300h.sc: Likewise.
5464
5465Thu Mar 28 11:05:47 1996 Doug Evans <dje@canuck.cygnus.com>
5466
5467 * configure.tgt (sparc64-*-solaris2*): Delete.
5468 Stick with sparc-*-solaris2*.
5469
5470Wed Mar 27 12:33:24 1996 Ian Lance Taylor <ian@cygnus.com>
5471
5472 * ld.h (DISCARD_SECTION_NAME): Define to "/DISCARD/".
5473 * ldlang.c (init_os): Fail on an attempt to initialize any section
5474 named DISCARD_SECTION_NAME.
5475 (wild_doit): Discard input sections assigned to an output section
5476 named DISCARD_SECTION_NAME.
5477 * ld.texinfo: Document use of /DISCARD/.
5478
5479 * ldlang.c: Fix some indentation and comments.
5480
5481Tue Mar 26 18:14:49 1996 Ian Lance Taylor <ian@cygnus.com>
5482
5483 * ldmain.c (main): Call bfd_set_error_program_name.
5484
5485Thu Mar 21 13:17:34 1996 Ian Lance Taylor <ian@cygnus.com>
5486
5487 * ld.texinfo: Fix a couple of indexing entries. Mention that
5488 --verbose displays builtin linker scripts.
5489
5490 * ldmisc.c (vfinfo): case 'I': If the file is not in an archive,
5491 and the local symbol name does not match the filename, print the
5492 filename as well.
5493
5494 Patches from John Polstra <jdp@polstra.com> for FreeBSD ELF:
5495 * lexsup.c (parse_args): -Bshareable is a synonym for -shared.
5496 * emulparams/elf_i386.sh (NONPAGED_TEXT_START_ADDR): Make the same
5497 as TEXT_START_ADDR.
5498
5499Wed Mar 20 18:18:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5500
5501 * ld.texinfo: Fix typos. Use @pxref only inside parentheses.
5502
5503Wed Mar 20 16:56:15 1996 Ian Lance Taylor <ian@cygnus.com>
5504
5505 * ldmain.c (add_wrap): New function.
5506 * ldmain.h (add_wrap): Declare.
5507 * lexsup.c (parse_args): Call add_wrap.
5508
5509Tue Mar 19 16:44:20 1996 Doug Evans <dje@canuck.cygnus.com>
5510
5511 * configure.host (sparc*-*-solaris2* host): Accept any sparc variant.
5512
5513Wed Mar 13 17:47:31 1996 Jeffrey A Law (law@cygnus.com)
5514
5515 * scripttempl/h8300.sc: Change name of page zero memory
5516 from "null" to "vectors". Create an output section for
5517 vectors. Add comments on how to explicitly place items
5518 in the vector table.
5519 * scripttempl/h8300h.sc: Likewise.
5520
5521Wed Mar 13 12:40:18 1996 Ian Lance Taylor <ian@cygnus.com>
5522
5523 * emultempl/lnk960.em (machine_table): Add jx and hx.
5524
5525 * genscripts.sh: Don't use ${9:-xx}, since Ultrix /bin/sh doesn't
5526 support it.
5527
5528Tue Mar 12 12:43:59 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
5529
5530 * ld.h (ld_config_type): Add warn_multiple_gp field.
5531 * lexsup.c (parse_args): Handle --warn-multiple-gp.
5532 * ldmain.c (warning_callback): Suppress multiple gp values warning
5533 if --warn_multiple_gp was not used.
5534 * ld.texinfo, ld.1: Document --warn-multiple-gp.
5535
5536Tue Mar 12 12:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
5537
5538 * lexsup.c (parse_args): Handle --wrap.
5539 * ldmain.c (main): Initialize link_info.wrap_hash.
5540 * ldexp.c (fold_name): Use bfd_wrapped_link_hash_lookup in DEFINED
5541 and NAME cases.
5542 * ld.texinfo, ld.1: Document --wrap.
5543
5544 * configure: Rebuild with autoconf 2.8.
5545
5546 Don't do SunOS style dynamic linking for sparc-aout:
5547 * configure.tgt (sparc64-*-aout*): Use sparcaout, not sun4.
5548 (sparclite*-fujitsu-*, sparc*-*-aout): Likewise.
5549 (sparc*-wrs-vxworks*): Likewise.
5550 * emulparams/sparcaout.sh: New file.
5551 * Makefile.in (ALL_EMULATIONS): Add esparcaout.o.
5552 (esparcaout.c): New target.
5553
5554Wed Mar 6 16:06:52 1996 J.T. Conklin <jtc@rtl.cygnus.com>
5555
5556 * scripttempl/elfppc.sc (.sdata2, .sbss2): Implement Feb 2 change
50bbae35
AM
5557 in a different manner to work around differences in shell variable
5558 expansion.
252b5132
RH
5559
5560Wed Mar 6 18:08:18 1996 Ian Lance Taylor <ian@cygnus.com>
5561
5562 * ldemul.h (ldemul_unrecognized_file): Declare.
5563 (ldemulation_xfer_type): Add unrecognized_file field.
5564 * ldemul.c (ldemul_unrecognized_file): New function.
5565 * ldlang.c (load_symbols): If a file can not be recognized, call
5566 ldemul_unrecognized_file before trying it as a linker script.
5567 * aix.em (gld${EMULATION_NAME}_unrecognized_file): New static
5568 function.
5569 (gld${EMULATION_NAME}_read_file): Use FOPEN_RT, not "r".
5570 (ld_${EMULATION_NAME}_emulation): Initialize unrecognized_file.
5571
5572Mon Mar 4 14:11:17 1996 Ian Lance Taylor <ian@cygnus.com>
5573
5574 * ldlang.c (wild): Handle foo.a(.text) by mapping each included
5575 member of foo.a separately. From Jouke Numan <jnuman@bazis.nl>.
5576
5577Fri Mar 1 10:24:59 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5578
5579 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
5580 Search trinary.cond rather than searching trinary.lhs twice.
5581
5582Tue Feb 27 15:08:43 1996 Stan Shebs <shebs@andros.cygnus.com>
5583
5584 * mpw-make.sed: Edit out shared library support.
5585 (@TDIRS@): Edit out, can't use genscripts.
5586
5587Tue Feb 27 15:09:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5588
5589 * configure.tgt (m68k-*-linuxaout*, m68k-*-linux*): New targets.
5590 * emulparams/m68klinux.sh: New file.
5591 * emultempl/linux.em (gld${EMULATION_NAME}_before_allocation):
5592 Call bfd_${EMULATION_NAME}_size_dynamic_sections instead of
5593 bfd_linux_size_dynamic_sections.
5594 * Makefile.in (ALL_EMULATIONS): Add em68klinux.o.
5595 (em68klinux.c): New target.
5596 * configure.host (m68*-*-linuxaout*, m68*-*-linux*): New hosts.
5597
5598Tue Feb 27 12:55:46 1996 Ian Lance Taylor <ian@cygnus.com>
5599
5600 * Makefile.in (ALL_EMULATIONS): Sort into alphabetical order.
5601 Fill in missing entries.
5602
5603 * lexsup.c (parse_args): Recognize --no-whole-archive.
5604 * ldlang.h (lang_input_statement_type): Add whole_archive field.
5605 * ldlang.c (new_afile): Set whole_archive field.
5606 (load_symbols): Check input file specific whole_archive field
5607 rather than global variable.
5608 * ld.texinfo, ld.1: Document --no-whole-archive.
5609
5610Tue Feb 20 16:07:00 1996 Ian Lance Taylor <ian@cygnus.com>
5611
5612 * configure.tgt: Correct gldi960 to gld960.
5613
5614Mon Feb 19 11:16:44 1996 Ian Lance Taylor <ian@cygnus.com>
5615
5616 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Check
5617 the SONAME if it is available.
5618 (gld${EMULATION_NAME}_stat_needed): Use the SONAME, not the
5619 filename, when checking for conflicting library versions. Don't
5620 assume that the suffix is only numbers and dots.
5621
5622 * ld.texinfo: Mention that -R can be used for -rpath.
5623
5624Sun Feb 18 15:05:17 1996 Ian Lance Taylor <ian@cygnus.com>
5625
5626 * configure.host: Check for 'do not mix' from native linker before
5627 trying to use -rpath.
5628
5629Thu Feb 15 13:58:06 1996 Ian Lance Taylor <ian@cygnus.com>
5630
5631 * configure.in: Remove explicit substitution of CFLAGS; autoconf
5632 does it anyhow.
5633 * configure: Rebuild.
5634 * Makefile.in (LDFLAGS): Set to @LDFLAGS@.
5635
5636 * configure.in: Call AC_PROG_CC before configure.host.
5637 * configure: Rebuild.
5638 * configure.host: Remove go32 host, since it should no longer be
5639 necessary. Don't set CC for romp host.
5640
5641 * scripttempl/elf.sc: Don't skip a page in virtual memory space if
5642 the text segment ends exactly on a page boundary.
5643
5644 * configure.in: Substitute RPATH_ENVVAR.
5645 * configure: Rebuild.
5646 * configure.host: Set RPATH_ENVVAR.
5647 * Makefile.in (RPATH_ENVVAR): New variable.
5648 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
5649
5650Wed Feb 14 18:49:01 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
5651
5652 * configure.in: Redo emulation handling so that each emulation
5653 searches the correct tool directory, based on the target alias.
5654 For example, "configure --enable-targets=m68k-coff i386-linux"
5655 will search /usr/local/i386-linux/lib for linux and
5656 /usr/local/m68k-coff/lib for m68k-coff.
5657 * configure: Rebuild.
5658 * configure.tgt: Add special tdir settings for Linux.
5659 * Makefile.in: Add @TDIRS@. Pass "$(tdir_EMUL)" to ${GENSCRIPTS}
5660 for each eEMUL.c target.
5661 * genscripts.sh: Accept specific alias as 9th argument, and use it
5662 in LIB_PATH.
5663
5664Wed Feb 14 16:38:36 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
5665
5666 * ldlang.c (lang_set_startof): Don't do anything for a
5667 relocateable link.
5668
5669 * ldgram.y (mri_script_file): Call mri_draw_tree.
5670 * mri.c (mri_draw_tree): Make globally visible. Don't bother to
5671 create memory regions.
5672 (mri_load): Don't call mri_draw_tree.
5673 * mri.h (mri_draw_tree): Declare.
5674
5675 * configure.tgt (m68*-*-psos): New target.
5676 * emulparams/m68kpsos.sh: New file.
5677 * scripttempl/psos.sc: New file.
5678 * Makefile.in (ALL_EMULATIONS): Add em68kpsos.o.
5679 (em68kpsos.c): New target.
5680
5681Wed Feb 14 11:09:25 1996 Ian Lance Taylor <ian@cygnus.com>
5682
5683 * configure.tgt (*-*-ieee*): New target; use vanilla.
5684
5685 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Strip
5686 `:foo' from ${ARCH}.
5687
5688Tue Feb 13 15:58:58 1996 Bryan Ford <baford@snake.cs.utah.edu>
5689
5690 * scripttempl/i386msdos.sc: Don't pad the .text section. Put
5691 .rodata in .data.
5692
5693Tue Feb 13 14:04:19 1996 Ian Lance Taylor <ian@cygnus.com>
5694
5695 * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
5696
5697 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Warn if
5698 it looks like we might be linking in two different versions of the
5699 same shared library. Based on a patch from H J Lu <hjl@zoom.com>.
5700
5701Thu Feb 8 19:25:54 1996 Ian Lance Taylor <ian@cygnus.com>
5702
5703 * ldlang.c (lang_size_sections): Increment the section size when a
5704 padding statement is encountered.
5705
5706Wed Feb 7 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
5707
5708 * configure.in: Look for --enable-shared. Change the value of
5709 BFDLIB when linking against a shared library on SunOS.
5710 * configure: Rebuild.
5711 * configure.host: If using a shared BFD library, try to pass a
5712 reasonable -rpath option when linking.
5713 * Makefile.in (BFDLIB): Set to @BFDLIB@.
5714
5715Tue Feb 6 12:29:14 1996 Doug Evans <dje@charmed.cygnus.com>
5716
5717 * emulparams/elf64_sparc.sh (ARCH): Change to `sparc:v9'.
5718 * emultempl/generic.em: Strip `:foo' from ${ARCH}.
5719
5720Mon Feb 5 16:25:30 1996 Ian Lance Taylor <ian@cygnus.com>
5721
5722 Support for building bfd and opcodes as shared libraries, based on
5723 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
5724 * configure.in (HLDFLAGS): New substitution.
5725 * configure: Rebuild.
5726 * configure.host: Set HLDFLAGS on SunOS.
5727 * Makefile.in (HLDFLAGS): New variable.
5728 (BFDDEP): New variable.
5729 (BFDLIB): Change to -L../bfd -lbfd.
5730 ($(LD_PROG)): Depend upon $(BFDDEP) rathern than $(BFDLIB). Use
5731 $(HLDFLAGS) in link.
5732 (check): Set LD_LIBRARY_PATH in the environment.
5733
5734Fri Feb 2 19:26:25 1996 Michael Meissner <meissner@wogglebug.tiac.net>
5735
5736 * scripttempl/elfppc.sc (.sdata2, .sbss2): Put .sdata2 and .sbss
5737 in the read-only section, not read/write unless we are making a
5738 shared library.
5739 (.debug*): Add dwarf debug sections.
5740 (.rela.{sdata*,sbss*}): Add sections.
5741
5742Fri Feb 2 16:50:21 1996 Ian Lance Taylor <ian@cygnus.com>
5743
5744 * configure: Regenerate.
5745
5746Thu Feb 1 10:50:46 1996 Ian Lance Taylor <ian@cygnus.com>
5747
5748 * emulparams/elf_i386.sh (TEXT_START_ADDR): Change to 0x8048000,
5749 for SVR4 compatibility.
5750
5751 * ldexp.c (exp_fold_tree): Correct handling of ABSOLUTE.
5752
5753Wed Jan 31 17:30:19 1996 Steve Chamberlain <sac@slash.cygnus.com>
5754
5755 * configure.tgt (i[345]86-*-cygwin32, powerpcle-*-cygwin32): New.
5756 * emultempl/pe.em (definfo init): Make the default stack reserve
5757 of a PPC larger.
5758
5759Wed Jan 31 14:34:23 1996 Richard Henderson <rth@tamu.edu>
5760
5761 * configure.tgt (m68*-apple-aux*): New target.
5762 * emulparams/m68kaux.sh: New file.
5763 * scripttempl/m68kaux.sc: New file.
5764 * Makefile.in (ALL_EMULATIONS): Add em68kaux.o.
5765 (em68kaux.c): New target.
5766
5767Tue Jan 30 13:18:56 1996 Ian Lance Taylor <ian@cygnus.com>
5768
5769 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Ignore
5770 -bnoentry, since the right thing tends to happen anyhow.
5771
5772Mon Jan 29 12:29:26 1996 Ian Lance Taylor <ian@cygnus.com>
5773
5774 * ld.texinfo, ld.1: Document -export-dynamic.
5775
5776Fri Jan 26 11:11:55 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5777
5778 * emultempl/sunos.em: Check for native compile by comparing
5779 ${target} and ${host}.
5780
5781Thu Jan 25 16:46:58 1996 James G. Smith <jsmith@cygnus.co.uk>
5782
5783 * emulparams/{elf32b4300.sh, elf32l4300.sh}: Changed
50bbae35 5784 TEXT_START_ADDR to allow use on IDT and PMON systems.
252b5132
RH
5785
5786Wed Jan 24 20:59:40 1996 Steve Chamberlain <sac@slash.cygnus.com>
5787
5788 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
5789 correct spelling.
5790
5791Wed Jan 24 16:59:19 1996 Doug Evans <dje@charmed.cygnus.com>
5792
5793 * configure.tgt (sparc64-*-solaris2*): New configuration.
5794 (sparc64-*-aout*): Renamed from sparc64*.
5795
5796Mon Jan 22 13:01:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5797
5798 * Makefile.in (GENSCRIPTS): Pass @host@ @target@ @target_alias@.
5799 * genscripts.sh: Set host, target and target_alias variables.
5800 Check for native compile by comparing ${target} and ${host}.
5801 * emultempl/elf32.em: Likewise.
5802 * scripttempl/elfmips.sc: Test ${target}, not ${target_alias}.
5803
5804Mon Jan 22 11:03:23 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5805
5806 * scripttempl/elfppc.sc: Refine eabi support to better support
5807 .sdata, .sdata2, .sbss, etc. sections.
5808
5809Tue Jan 16 15:16:58 1996 Ian Lance Taylor <ian@cygnus.com>
5810
5811 * ldgram.y (%union): Add phdr field.
5812 (phdr): Use phdr_qualifiers rather than opt_hdrs and opt_at.
5813 (phdr_qualifiers): New nonterminal. Add support for FLAGS.
5814 (opt_hdrs, hdr): Remove.
5815 (phdr_val): New nonterminal.
5816 * ldlang.c (lang_new_phdr): Replace hdrs parameter with filehdr
5817 and phdrs parameters. Add flags parameter.
5818 (lang_record_phdrs): Update for changes to lang_phdr. Pass flags
5819 to bfd_record_phdr.
5820 * ldlang.h (struct lang_phdr): Replace hdrs field with filehdr and
5821 phdrs fields. Add flags field.
5822 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Remove.
5823 (lang_new_phdr): Update declaration.
5824 * ld.texinfo: Document FLAGS.
5825
5826Mon Jan 15 15:07:19 1996 Ian Lance Taylor <ian@cygnus.com>
5827
5828 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation):
5829 Don't make a shared library because of an undefined reference to
5830 __GLOBAL_OFFSET_TABLE_.
5831
5832 Add some Irix 5 support, mostly from Kazumoto Kojima
50bbae35 5833 <kkojima@info.kanagawa-u.ac.jp>:
252b5132
RH
5834 * emulparams/elf32bmip.sh (SCRIPT_NAME): Change to elfmips.
5835 (SHLIB_TEXT_START_ADDR): Define.
5836 (OTHER_GOT_SYMBOLS): Define.
5837 (OTHER_READWRITE_SECTIONS): Remove initialization of _gp.
5838 (EXECUTABLE_SYMBOLS): Don't define.
5839 (DYNAMIC_LINK): Don't define.
5840 * emulparams/elf32lmip.sh: Same changes as elf32bmip.sh.
5841 * scripttempl/elfmips.sc: New file.
5842 * configure.host (mips*-dec-bsd*): Change mips to mips*.
5843 (mips*-sgi-irix4*): Likewise.
5844 (mips*-sgi-irix5*): New entry.
5845 * Makefile.in (eelf32bmip.c): Depend upon elfmips.sc rather than
5846 elf.sc.
5847 (eelf32lmip.c): Likewise.
5848
5849Sat Jan 13 09:41:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5850
5851 * scripttempl/elfppc.sc: Remove support for .rel.* sections. Add
5852 .rela.got.neg section.
5853
5854Fri Jan 12 14:56:19 1996 Ian Lance Taylor <ian@cygnus.com>
5855
5856 * scripttempl/sh.sc: Only build constructors when CONSTRUCTING.
5857
5858 * ldmisc.c: Include <stdarg.h> rather than <varargs.h> if
5859 ANSI_PROTOTYPES is defined. Remove special handling of
5860 WINDOWS_NT. Various indendation fixes.
5861 (vfinfo): Change fmt parameter to const char *.
5862 (info_msg): Write <stdarg.h> version.
5863 (einfo, minfo, finfo): Likewise.
5864 (info_assert): Change file parameter to const char *.
5865 * ldmisc.h (einfo, minfo, info_msg): If ANSI_PROTOTYPES is
5866 defined, use a real prototype.
5867 (info_assert): Change first parameter to be const char *.
5868
5869Fri Jan 12 13:29:55 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5870
5871 * scripttempl/elfppc.sc: Add support for .sdata2/.sbss2, etc. Add
5872 in old support that 2.7.2 needs, but the current compiler does
5873 not.
5874
5875 * Makefile.in (eelf32{,l}ppc.c): Fix up dependencies to use the
5876 correct Linker script template.
5877
5878 * emulparams/elf32{,l}ppc.sh (TEXT_START_ADDR): Set to 0x40000,
5879 not 0x400000.
5880 (DATA_ADDR,NONPAGED_TEXT_START_ADDR): Delete.
5881
5882Tue Jan 9 15:53:02 1996 Ian Lance Taylor <ian@cygnus.com>
5883
5884 * scripttempl/alpha.sc: Put .rconst right after .rdata.
5885
5886Fri Jan 5 14:07:45 1996 Steve Chamberlain <sac@slash.cygnus.com>
5887
5888 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation):
5889 sort using right pointer.
5890
5891Fri Jan 5 12:25:47 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5892
5893 * scripttempl/elfppc.sc: Remove support for creating special
5894 labels for eabi section begin/end here. The compiler now uses
5895 crt{i,n}.o to create these symbols.
5896
5897Thu Jan 4 17:08:58 1996 Ian Lance Taylor <ian@cygnus.com>
5898
5899 * configure.host: Change existing Linux HOSTING_CRT0 to be used
5900 for a.out only, and put in appropriate HOSTING_CRT0 and
5901 HOSTING_LIBS values for Linux ELF.
5902
5903Thu Jan 4 12:02:05 1996 Doug Evans <dje@canuck.cygnus.com>
5904
5905 * scripttempl/h8300.sc: Use all 64K for ram.
5906 * scripttempl/h8300h.sc: Define 256K ram size.
5907
5908Thu Dec 21 15:57:18 1995 Ian Lance Taylor <ian@cygnus.com>
5909
5910 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Pass
5911 export_defines as true to bfd_xcoff_size_dynamic_sections if -unix
5912 was used, regardless of whether -bE was used.
5913
5914Tue Dec 19 17:35:38 1995 Ian Lance Taylor <ian@cygnus.com>
5915
5916 * emultempl/aix.em (gld${EMULATION_NAME}_after_open): Only set
5917 relocateable before calling ldctor_build_sets if the output file
5918 is in an XCOFF format.
5919
5920Fri Dec 15 16:34:36 1995 Ian Lance Taylor <ian@cygnus.com>
5921
5922 * ldwrite.c (build_link_order): When handling a data statement, if
5923 the endianness of the output file is unknown, use the endianness
5924 of the input file.
5925
5926Tue Dec 12 13:55:41 1995 Stan Shebs <shebs@andros.cygnus.com>
5927
5928 * mpw-config.in: Recognize mips-*-* as equivalent to
5929 mips-idt-ecoff.
5930 * mpw-eppcmacos.c: Rename to shorter mpw-eppcmac.c.
5931 * mpw-ld.r: Add version resources.
5932 (cfrg): Use symbolic instead of literal name for executable.
5933
5934Mon Dec 11 15:13:41 1995 Kim Knuttila <krk@cygnus.com>
5935
5936 * scripttempl/ppcpe.sc (FINI): Moved the .reloc section.
5937
5938Wed Dec 6 14:33:50 1995 Doug Evans <dje@canuck.cygnus.com>
5939
5940 * ldlang.c (print_statement{,s}): Delete duplicate prototype.
5941 (print_statement_list): Renamed from print_statement. All callers
5942 updated.
5943 (print_statement): New function to print just one statement.
5944 (print_{data,reloc,padding}_statement): Don't crash if
5945 output_section == NULL.
5946 (dprint_statement): New function.
5947
5948 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix
5949 call to sort_sections.
5950
5951Wed Dec 6 14:59:06 1995 Ian Lance Taylor <ian@cygnus.com>
5952
5953 * emultempl/aix.em (unix_ld): New static variable.
5954 (gld${EMULATION_NAME}_parse_args): Handle -unix.
5955 (gld${EMULATION_NAME}_before_allocation): If unix_ld, pass
5956 gc as false and export_defineds as true to size_dynamic_sections.
5957
5958 * ldexp.c (exp_fold_tree): Permit assignments to dot in the final
5959 phase if the current section is abs_output_section.
5960
5961
5962Tue Dec 5 09:49:39 1995 Doug Evans <dje@canuck.cygnus.com>
5963
5964 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix call
5965 to sort_sections.
5966
5967Fri Dec 1 16:48:36 1995 Ian Lance Taylor <ian@cygnus.com>
5968
5969 * ldgram.y (PHDRS): New token.
5970 (ifile_p1): Accept phdrs.
5971 (section): Accept phdr_opt at the end of the section definition.
5972 (phdr_op): New nonterminal.
5973 (phdrs, phdr_list, phdr, phdr_type, opt_hdrs, hdr): Likewise.
5974 * ldlex.l: Accept PHDRS.
5975 * ldlang.h (struct lang_output_section_phdr_list): Define.
5976 (lang_output_section_statement_type): Add phdrs field.
5977 (struct lang_phdr): Define.
5978 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Define.
5979 (lang_new_phdr): Declare.
5980 * ldlang.c (lang_phdr_list): New static variable.
5981 (lang_output_section_statement_lookup): Initialize phdrs field.
5982 (lang_process): Call lang_record_phdrs.
5983 (lang_new_phdr): New function.
5984 (lang_section_in_phdr): New function.
5985 (lang_record_phdrs): New static function.
5986 * ld.texinfo: Document PHDRS.
5987
5988Thu Nov 30 13:14:30 1995 Kim Knuttila <krk@cygnus.com>
5989
5990 * scripttempl/ppcpe.sc: Moved .edata into its own section to
5991 expose it.
5992
5993Thu Nov 30 11:32:34 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
5994
5995 * configure.host (m68*-motorola-sysv): Define HOSTING_CRT0 and
5996 HOSTING_LIBS for testing.
5997 (m88*-motorola-sysv3): Define HOSTING_CRT0 and HOSTING_LIBS for
5998 testing.
5999
6000Tue Nov 28 12:14:53 1995 Ian Lance Taylor <ian@cygnus.com>
6001
6002 * lexsup.c (parse_args): Set config.dynamic_link to false for -N
6003 and -n.
6004
6005Mon Nov 27 13:12:09 1995 Ian Lance Taylor <ian@cygnus.com>
6006
6007 * configure: Rebuild with autoconf 2.7.
6008
6009Fri Nov 24 18:35:35 1995 Doug Evans <dje@canuck.cygnus.com>
6010
6011 * scripttempl/pe.sc: Two .junk's is too much junk.
6012
6013Tue Nov 21 16:14:32 1995 Ian Lance Taylor <ian@cygnus.com>
6014
6015 * configure.in: Use BFD_NEED_DECLARATION.
6016 * acconfig.h: Put NEED_DECLARATION_FREE in @TOP@ section.
6017 * configure, config.in: Rebuild with autoconf 2.6.
6018
6019 * ldmain.c (constructor_callback): Don't warn about BFD_RELOC_CTOR
6020 being unsupported if this is not a relocateable link and the input
6021 BFD supports it, since ldctor_build_sets can cope with that case.
6022
6023Fri Nov 17 16:23:15 1995 Stan Shebs <shebs@andros.cygnus.com>
6024
6025 * configure.tgt (powerpc-*-macos*): New target.
6026 * emulparams/ppcmacos.sh: New file, PowerMac emulation.
6027 * Makefile.in (ALL_EMULATIONS): Add eppcmacos.o.
6028 (eppcmacos.c): New target.
6029 * mpw-eppcmacos.c: Update.
6030 * mpw-make.sed: Edit out attempts to use {GENSCRIPTS}.
6031
6032Fri Nov 17 10:37:27 1995 Ian Lance Taylor <ian@cygnus.com>
6033
6034 * Makefile.in (CC_FOR_TARGET): Use @host@ and @target@, not
6035 $(host_canonical) and $(target_canonical).
6036 (CXX_FOR_TARGET): Likewise.
6037
6038Thu Nov 16 11:23:42 1995 Doug Evans <dje@canuck.cygnus.com>
6039
6040 * scripttempl/pe.sc (.endjunk): Move definition of `end' to here
6041 so the malloc heap begins at a sane place.
6042
6043Thu Nov 16 03:09:32 1995 Ken Raeburn <raeburn@cygnus.com>
6044
6045 Version 2.6 released.
6046 * ldver.c (ldversion): Update to 2.6.
6047
6048 * Makefile.in (mostlyclean): Delete ldemul-list.h here, but not
6049 $(GENERATED_*FILES), since they need to be retained by distclean.
6050 (maintainer-clean, realclean): Delete them here.
6051
6052Tue Nov 14 17:08:06 1995 Ian Lance Taylor <ian@cygnus.com>
6053
6054 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Open the
6055 base file with FOPEN_WB, not "w".
6056
6057 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Use the
6058 environment variable LD_RUN_PATH if neither -rpath nor -rpath-link
6059 were used.
6060 (gld${EMULATION_NAME}_before_allocation): Use the environment
6061 variable LD_RUN_PATH if -rpath was not used.
6062 * ld.texinfo, ld.1: Document LD_RUN_PATH.
6063
6064Thu Nov 9 13:09:29 1995 Ian Lance Taylor <ian@cygnus.com>
6065
6066 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Recognize
6067 -bl and -bloadmap options.
6068
6069 * ldfile.c (ldfile_try_open_bfd): If bfd_error_invalid_target,
6070 report a better error.
6071
6072 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Add
6073 new local variable special_sections, and pass it to
6074 size_dynamic_sections. Look through the results, and move the
6075 sections around in the mapping so that they are defined correctly.
6076
6077Wed Nov 8 11:40:59 1995 Ian Lance Taylor <ian@cygnus.com>
6078
6079 * ldemul.c (ldemul_default_target): Cast getenv return value.
6080
6081Tue Nov 7 11:15:36 1995 Kim Knuttila <krk@cygnus.com>
6082
6083 * emulparams/ppcpe.sh (ARCH): New file for PowerPC Portable
6084 Executable support.
6085 * scripttempl/ppcpe.sc: New file for PowerPC Portable Executable
6086 support.
6087
6088 * configure.tgt (targ_extra_emuls): Added powerpcle-pe target.
6089 * Makefile.in (ALL_EMULATIONS): Added eppcpe.o target.
6090
6091 * emultempl/pe.em (TARGET_IS_ppcpe): file tailoring macro
6092 (gld_$_before_allocation): added hooks for toc construction based
6093 on the above macro.
6094
6095Tue Nov 7 11:47:23 1995 Ian Lance Taylor <ian@cygnus.com>
6096
6097 * ld.texinfo: The linker does not use _main as an entry point.
6098
6099Tue Nov 7 11:46:11 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
6100
6101 * scripttempl/m88kbcs.sc (.data): Calculate next boundary modulo
6102 0x2000 not 0x200.
6103
6104Mon Nov 6 10:59:21 1995 Ian Lance Taylor <ian@cygnus.com>
6105
6106 * configure.in: Add test for whether free must be declared.
6107 * sysdep.h: Declare free if necessary. Include "ansidecl.h".
6108 * acconfig.h: Explain NEED_DECLARATION_FREE.
6109 * configure, config.in: Rebuild.
6110
6111 * lexsup.c (parse_args): Take B:: out of shortopts.
6112
6113Sun Nov 5 03:08:28 1995 Ken Raeburn <raeburn@cygnus.com>
6114
6115 * emulparams/i386nbsd.sh (EXECUTABLE_SYMBOLS): Set __DYNAMIC to 0
6116 for now, as with m68k4kbsd, until shared library support gets
6117 done.
6118
6119 * configure.host: For i386 BSD variants, crt0.o lives in
6120 /usr/lib. (True for NetBSD at least, unconfirmed for others.)
6121
6122Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
6123
6124 * Makefile.in (ALL_EMULATIONS): Add edelta68.o.
6125 (edelta68.c): New target.
6126 * configure.tgt (m68*-motorola-sysv*): New target.
6127 * emulparams/delta68.sh: New file.
6128 * scripttempl/delta68.sc: New file.
6129
6130 * scripttempl/m88kbcs.sc: Handle .init and .fini. Change section
6131 addresses.
6132
6133Wed Nov 1 11:41:56 1995 Ian Lance Taylor <ian@cygnus.com>
6134
6135 * ldgram.y (mri_script_command): Accept ',' as well as '=' in
6136 ALIGN and ALIGNMOD statements.
6137
6138 * emultempl/aix.em: Include ldgram.h.
6139 (gld${EMULATION_NAME}_parse_args): Handle -pD and -pT, as used on
6140 AIX 4.1.
6141 * Makefile.in ($(EMULATION_OFILES)): Depend upon ldgram.h.
6142
6143Tue Oct 31 18:22:24 1995 David Mosberger-Tang <davidm@azstarnet.com>
6144
6145 * configure.host (alpha-*-linux*): New host.
6146 * configure.tgt (alpha-*-linux*): New target.
6147
6148Tue Oct 31 12:36:52 1995 Ian Lance Taylor <ian@cygnus.com>
6149
6150 * emultempl/aix.em (export_files): Remove.
6151 (import_files): Make static.
6152 (struct export_symbol_list): Define.
6153 (export_symbols): New static variable.
6154 (gld${EMULATION_NAME}_parse_args): Handle an initial -b option
6155 correctly. Call read_file for an export file.
6156 (gld${EMULATION_NAME}_before_allocation): Call
6157 bfd_xcoff_export_symbol for each export symbol, rather than
6158 calling read_file for each export file.
6159 (gld${EMULATION_NAME}_read_file): For an export file, make the
6160 exported symbols undefined, and store them on the export_symbols
6161 list.
6162
6163Sat Oct 28 00:10:03 1995 steve chamberlain <sac@slash.cygnus.com>
6164
6165 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
6166 Don't hang if last option is unrecognised.
6167 (gld_${EMULATION_NAME}_set_symbols): Insert created
6168 symbols into ABS output section.
6169
6170Fri Oct 27 18:03:17 1995 Niklas Hallqvist <niklas@appli.se>
6171
6172 * Makefile.in (ALL_EMULATIONS): Added support for the NetBSD
6173 m68k4k arch.
6174 (em68k4knbsd.c): New rule.
6175
6176 * configure.tgt: Added support for the NetBSD m68k4k arch.
6177
6178 * genscripts.sh, ldint.texinfo,
6179 emulparams/{a29k,armaoutb,armaoutl,coff_sparc,ebmon29k,gld960,
6180 gld960coff,go32,h8300,h8300h,h8500,h8500b,h8500c,h8500m,h8500s,
6181 hp300bsd,hp3hpux,hppaelf.sh,i386aout,i386bsd,i386coff,i386go32,
6182 i386linux,i386lynx,i386nbsd,lnk960,m68kaout,m68kcoff,m68klynx,
6183 m88kbcs,mipsbig,mipsbsd,mipsidt,mipsidtl,mipslit,news,ns32knbsd,
6184 pc532machaout,riscix,sa29200,sh,shl,sparclynx,sparcnbsd,
6185 st2000,sun3,sun4,vanilla,vax,vsta,w65,z8001,z8002}.sh: Changed
6186 PAGE_SIZE to TARGET_PAGE_SIZE.
6187
6188 * emulparams/m68knbsd.h: Ditto.
6189 (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR): We have 8K pagesize.
6190 (EXECUTABLE_SYMBOLS): Hardcode __DYNAMIC to zero for the time
6191 being.
6192
6193 * emulparams/m68k4knbsd.sh: New file.
6194
6195 * scripttempl/aout.sc: Expand EXECUTABLE_SYMBOLS if relocating.
6196
6197Fri Oct 27 17:59:09 1995 Ian Lance Taylor <ian@cygnus.com>
6198
6199 * emultempl/aix.em: Include ldctor.h.
6200 (gld${EMULATION_NAME}_after_open): New static function.
6201 (gld${EMULATION_NAME}_before_allocation): Call find_relocs.
6202 (gld${EMULATION_NAME}_find_relocs): New static function.
6203 (gld${EMULATION_NAME}_find_exp_assignment): New static function.
6204 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
6205 * scripttempl/aix.sc: Use CONSTRUCTORS in .data.
6206 * ldctor.c (struct set_info): Move definition into ldctor.h.
6207 (struct set_element): Likewise.
6208 (sets): Make non-static.
6209 (ldctor_add_set_entry): Add name parameter. Save it in the new
6210 set element.
6211 (ldctor_build_sets): Avoid being called twice. Pass set element
6212 name to lang_add_reloc.
6213 * ldctor.h (struct set_info): Move definition here from ldctor.c.
6214 (struct set_element): Likewise. Add new field name.
6215 (sets): Declare.
6216 (ldctor_add_set_entry): Declare new name parameter.
6217 * ldwrite.c (build_link_order): Don't insist that either name or
6218 section be NULL in a lang_reloc_statement.
6219 * ldmain.c (add_to_set): Pass NULL to ldctor_add_new_set_entry for
6220 new name parameter.
6221 (constructor_callback): Pass name to ldctor_add_new_set_entry for
6222 new name parameter.
6223
6224 * ldmisc.c (demangle): Fix indentation. Remove a leading period.
6225
6226Thu Oct 26 22:22:49 1995 Stan Shebs <shebs@andros.cygnus.com>
6227
6228 * mpw-config.in: Add PowerMac target support, generate config.h.
6229 * mac-ld.r: New file, Mac resources.
6230 * mpw-make.sed: New file, edits Makefile.in into MPW syntax.
6231 * mpw-make.in: Remove.
6232 * mpw-eppcmacos.c: Prebuilt version of PowerMac linking script.
6233
6234Thu Oct 26 14:11:26 1995 Ian Lance Taylor <ian@cygnus.com>
6235
6236 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Treat
6237 -static as a synonym for -bnso.
6238
6239 * scripttempl/aix.sc: Move special symbols inside sections.
6240 Always start .data at 0.
6241
6242Wed Oct 25 11:52:12 1995 Per Bothner <bothner@kalessin.cygnus.com>
6243
6244 * Makefile.in (diststuff): Also make info.
6245 (maintainer-clean realclean): Also delete *.info*.
6246
6247Wed Oct 25 11:27:25 1995 Ian Lance Taylor <ian@cygnus.com>
6248
6249 * emultempl/aix.em: Add support for various AIX linker options,
6250 for AIX import and export files, and for AIX shared objects.
6251 * scripttempl/aix.sc: Add .pad. Put .ds just before the TOC.
6252
6253 * ldmain.c (main): Initialize new field link_info.static_link.
6254
6255 * ldmain.c (add_keepsyms_file): Add \n at end of einfo calls.
6256 (constructor_callback): Likewise.
6257 * ldmisc.c (vfinfo): Likewise.
6258 * ldwrite.c (build_link_order): Likewise.
6259
6260 * ld.texinfo: The MRI ALIGN directive is supported.
6261
6262Mon Oct 23 11:46:43 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
6263
6264 * emulparams/elf32vr4300.sh: Deleted.
6265 * emulparams/elf32vr4300el.sh: Deleted.
6266 * emulparams/elf32b4300.sh: Added.
6267 * emulparams/elf32l4300.sh: Added.
6268 * configure.tgt, Makefile.in: Updated the build to use the
50bbae35 6269 new 8.3 unique names.
252b5132
RH
6270
6271Thu Oct 19 17:41:46 1995 Ian Lance Taylor <ian@cygnus.com>
6272
6273 * ldlang.c (entry_symbol): Make non-static.
6274 * ldlang.h (entry_symbol): Declare.
6275
6276 * ldlex.l: Treat PROVIDE as a keyword in expression state.
6277
6278Wed Oct 18 17:34:06 1995 steve chamberlain <sac@slash.cygnus.com>
6279
6280 * scripttempl/pe.sc (.bss): Move to be after .text
6281
6282Tue Oct 17 12:22:05 1995 Ian Lance Taylor <ian@cygnus.com>
6283
6284 * emultempl/sunos.em (gld${EMULATION_NAME}_find_exp_assignment):
6285 Search trinary.cond rather than searching trinary.lhs twice. From
6286 linli@ihp.PHys.ethz.CH.
6287
6288 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Move
6289 directory searching code into gld${EMULATION_NAME}_search_dir.
6290 (gld${EMULATION_NAME}_search_dir): New static function, extracted
6291 from gld${EMULATION_NAME}_find_so.
6292 (global_needed, global_found): New static variables.
6293 (gld${EMULATION_NAME}_after_open): New static function.
6294 (gld${EMULATION_NAME}_search_needed): New static function.
6295 (gld${EMULATION_NAME}_try_needed): New static function.
6296 (gld${EMULATION_NAME}_check_needed): New static function.
6297 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
6298 * ld.texinfo, ld.1: Mention -rpath-link on SunOS.
6299
6300 * Makefile.in (eelf32ppc.c): Depend upon elf32.em, not generic.em.
6301 (eelf32lppc.c): Likewise.
6302 * emulparams/elf32lppc.sh (TEMPLATE_NAME): Define as elf32.
6303 (GENERATE_SHLIB_SCRIPT): Define as yes.
6304
6305Mon Oct 16 19:11:13 1995 Ian Lance Taylor <ian@cygnus.com>
6306
6307 * emultempl/elf32.em: Struct bfd_elf_link_needed_list is now named
6308 bfd_link_needed-list; make appropriate changes.
6309
6310 * configure.tgt (powerpc-*-aix*): New target; use aixppc.
6311 (rs6000-*-aix*): New target; use aixrs6.
6312 * emulparams/aixppc.sh, emulparams/aixrs6.sh: New files.
6313 * emultempl/aix.em: New file.
6314 * scripttempl/aix.sc: New file.
6315 * Makefile.in (ALL_EMULATIONS): Add eaixppc.o and eaixrs6.o.
6316 (eaixppc.c, eaixrs6.c): New targets.
6317
6318Fri Oct 13 14:00:37 1995 steve chamberlain <sac@slash.cygnus.com>
6319
6320 * scripttemp/pe.sc (.reloc): Move to the end.
6321
6322Tue Oct 10 17:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
6323
6324 * ldlang.c (lang_finish): Don't try to use an entry_symbol from a
6325 section which was not linked into the final output.
6326
6327Tue Oct 10 10:17:22 1995 steve chamberlain <sac@slash.cygnus.com>
6328
6329 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Fix
6330 fatal typos.
6331
6332Tue Oct 10 01:01:51 1995 Ian Lance Taylor <ian@cygnus.com>
6333
6334 * ld.h (args_type): Add rpath_link field.
6335 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search for
6336 required dependencies in rpath_link path. Only search
6337 LD_LIBRARY_PATH when configured native.
6338 * lexsup.c (parse_args): Recognize -rpath-link.
6339 * ld.1, ld.texinfo: Document -rpath-link.
6340
6341Sat Oct 7 17:07:17 1995 Ian Lance Taylor <ian@cygnus.com>
6342
6343 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
6344 bother searching for needed libraries unless doing a final link.
6345
6346Fri Oct 6 16:26:16 1995 Ken Raeburn <raeburn@cygnus.com>
6347
6348 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6349
6350 * ld/ld.1: Fix formatting bugs.
6351
6352Wed Oct 4 17:37:46 1995 Ian Lance Taylor <ian@cygnus.com>
6353
6354 * ldexp.c (exp_get_abs_int): Return bfd_vma, not int.
6355 * ldexp.h (exp_get_abs_int): Update declaration.
6356 * ldlang.c (print_output_section_statement): Use fprintf_vma to
6357 print return value of exp_get_abs_int.
6358
6359Mon Oct 2 13:56:09 1995 Ian Lance Taylor <ian@cygnus.com>
6360
6361 * emultempl/elf32.em (global_stat): New file static variable.
6362 (gld${EMULATION_NAME}_try_needed): Call stat_needed to make sure
6363 that the file has not already been included under another name.
6364 (gld${EMULATION_NAME}_stat_needed): New static function.
6365
6366Fri Sep 29 12:00:18 1995 Doug Evans <dje@deneb.cygnus.com>
6367
6368 * scripttempl/armcoff.sc: Start .text at 0x8000.
6369 Start .data at 0x40000.
6370
6371Fri Sep 29 11:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
6372
6373 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): If
6374 command_line.rpath is set, use it, rather than the -L options, to
6375 build the rules section.
6376 * ld.texinfo: Document this use of -rpath.
6377
6378 * lexsup.c (parse_args): Don't set link_info.shared for -assert
6379 pure-text. Pass true, not 1, to lang_add_entry.
6380 * emultempl/sunos.em (find_assign): New static variable.
6381 (found_assign): New static variable.
6382 (gld${EMULATION_NAME}_before_allocation): Rename local h to hdyn.
6383 If not a relocateable link, and no start symbol was specified on
6384 the command line, and there are any undefined symbols, set
6385 link_info.shared. If link_info.shared is set, set the address of
6386 the .text section to 0x20.
6387 (gld${EMULATION_NAME}_find_assignment): Rename from
6388 gld${EMULATION_NAME}_find_statement_assignment. If find_assign is
6389 set, then just set found_assign based on whether an assignment is
6390 found to find_assign.
6391 (gld${EMULATION_NAME}_get_script): Don't use a special script when
6392 producing a shared library.
6393 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Remove.
6394 * scripttempl/aout.sc: Remove CREATE_SHLIB tests.
6395 * ldlang.c (entry_from_cmdline): New global variable.
6396 (lang_add_entry): Change cmdline parameter from int to boolean.
6397 Use global entry_from_cmdline rather than function static
6398 from_cmdline.
6399 * ldlang.h (entry_from_cmdline): Declare.
6400 (lang_add_entry): Change declaration of second parameter from int
6401 to boolean.
6402 * ldgram.y: Pass false, not 0, to lang_add_entry.
6403
6404Thu Sep 28 12:34:13 1995 Ian Lance Taylor <ian@cygnus.com>
6405
6406 * ld.h (parsing_defsym): Declare.
6407 * ldlex.h (lex_string): Declare.
6408 * ldlex.l (lex_string): Define.
6409 * lexsup.c (parsing_defsym): Define.
6410 (parse_args): In OPTION_DEFSYM case, set lex_string before calling
6411 lex_redirect, and clear it after calling yyparse. Set
6412 parsing_defsym around call to yyparse.
6413 * ldmain.c (main): Set lex_string before calling lex_redirect, and
6414 clear it after calling yyparse.
6415 * ldmisc.c (vfinfo): For %S, handle --defsym arguments and built
6416 in linker scripts correctly.
6417
6418 * scripttempl/sparccoff.sc: Add .ctors/.dtors handling like other
6419 COFF targets, allowing for the leading underscore used on SPARC
6420 COFF.
6421
6422 * lexsup.c (parse_args): Handle -assert.
6423 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Define.
6424 * emultempl/sunos.em (gld${EMULATION_NAME}_get_script): Use the
6425 shared library script when appropriate.
6426 * scripttempl/aout.sc: If CREATE_SHLIB is set, start the .text
6427 section at SIZEOF_HEADERS.
6428
6429Thu Sep 28 01:40:37 1995 Doug Evans <dje@deneb.cygnus.com>
6430
6431 * Makefile.in (earmcoff.c): Build.
6432 * configure.tgt (arm-*-coff): New target
6433 * emulparms/armcoff.sh: New file.
6434 * scripttempl/armcoff.sc: New file.
6435
6436Tue Sep 26 10:59:32 1995 Ian Lance Taylor <ian@cygnus.com>
6437
6438 * scripttempl/i386coff.sc: Remove .data2; no longer needed.
6439
6440Fri Sep 22 18:09:02 1995 Ian Lance Taylor <ian@cygnus.com>
6441
6442 * ldfile.c (ldfile_set_output_arch): Make arch const.
6443
6444Thu Sep 21 17:55:24 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6445
6446 * scripttempl/elfppc.sc: Correctly locate __bss_start at the
6447 beginning of the .bss area, not at the end of data. Add
6448 __sbss_{start,end} symbols.
6449
6450Wed Sep 20 12:29:36 1995 Ian Lance Taylor <ian@cygnus.com>
6451
6452 * Makefile.in (CC_FOR_TARGET): Quote $(program_transform_name).
6453 (CXX_FOR_TARGET, install): Likewise.
6454
6455Mon Sep 18 14:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
6456
6457 Based on patches by Alan Modra <alan@spri.levels.unisa.edu.au>:
6458 * Makefile.in (CC_FOR_TARGET): Remove brokensed stuff.
6459 (CXX_FOR_TARGET): Likewise.
6460 (install): Likewise.
6461 (GENERATED_HFILES): Remove config.h.
6462 (.dep): Depend upon config.h.
6463
6464Mon Sep 18 14:39:38 1995 Arne H. Juul <arnej@pvv.unit.no>
6465
6466 * configure.tgt (mips*-dec-netbsd*): New target.
6467
6468Fri Sep 15 20:01:52 1995 Ken Raeburn <raeburn@cygnus.com>
6469
6470 * configure.host (m88*-*-dgux*): Fix another shell syntax error.
6471
6472Fri Sep 15 23:28:05 1995 Andrew Cagney <cagney@highland.com.au>
6473
6474 * configure.host (i[345]86-*-bsd*): Fix shell syntax error.
6475
6476Thu Sep 12 12:50:49 1995 steve chamberlain <sac@slash.cygnus.com>
6477
6478 * scripttemp/pe.sc: Allow both spellings of .ctors/.dtors.
6479 Start .text section on the right boundary. Always align
6480 stabs.
6481
6482Tue Sep 12 12:24:17 1995 Ian Lance Taylor <ian@cygnus.com>
6483
6484 * Makefile.in (maintainer-clean): New target.
6485
6486 * ldmain.c (struct warning_callback_info): Define.
6487 (warning_callback): Add new parameter symbol. Call
6488 warning_find_reloc to try to find the section and VMA.
6489 (warning_find_reloc): New static function.
6490 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
6491 Pass NULL as symbol parameter to warning callback.
6492
6493 * ld.texinfo: Clarify -L option.
6494
6495 * ldlang.c (lang_one_common): Add cast to avoid warning.
6496 (topower): Likewise. Also, reindent.
6497 * ldwrite.c (clone_section): Change i to unsigned int.
6498 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Add
6499 cast to avoid warning.
6500
6501Fri Sep 8 16:32:43 1995 Ian Lance Taylor <ian@cygnus.com>
6502
6503 * Makefile.in (config.status): Depend upon configure.tgt.
6504
6505 * ldemul.h (ldemul_set_symbols): Declare.
6506 (ldemul_parse_args): Declare.
6507 * ldemul.c (ldemul_parse_args): Fix indentation.
6508
6509 * configure.in: Call AC_HEADER_DIRENT.
6510 * configure, config.in: Rebuild.
6511 * emultempl/sunos.em: Use autoconf recommend mechanism to define
6512 DIR and struct dirent.
6513
6514 * configure.tgt (mips*-*-bsd*): New case.
6515
6516 * configure.host (i[345]86-sequent-ptx* | i[345]86-sequent-sysv*)
6517 New case.
6518 * configure.tgt (i[345]86-*-ptx*): New case.
6519
6520Thu Sep 7 10:48:26 1995 Ian Lance Taylor <ian@cygnus.com>
6521
6522 * config.in: Rename from config.h.in.
6523 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
6524 Check for config.h:config.in when creating stamp-h.
6525 * configure: Rebuild.
6526 * Makefile.in (stamp-h): Depend upon config.in rather than
6527 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
6528 calling config.status.
6529
6530 * Makefile.in (distclean): Remove config.h and stamp-h.
6531
6532 * configure.host (sparc-*-sunos64*): Remove.
6533 * ldlang.c (lang_map): Check BFD64, not HOST_64_BIT.
6534
6535 * ldexp.c (exp_fold_tree): Don't warn about moving the location
6536 counter backward in the absolute section.
6537
6538Wed Sep 6 14:42:11 1995 Ian Lance Taylor <ian@cygnus.com>
6539
6540 * configure.in: Rewrite to use autoconf.
6541 * configure.host: New file.
6542 * configure.tgt: New file.
6543 * aclocal.m4: New file.
6544 * configure: New file, built by autoconf.
6545 * acconfig.h: New file.
6546 * config.h.in: New file, built by autoheader.
6547 * sysdep.h: New file.
6548 * ld.h: Incorporate old contents of config.h.
6549 * config.h: Remove.
6550 * Makefile.in: Various changes for new configure script. Also:
6551 (CC_FOR_BUILD): Remove.
6552 (ldmain.o): Don't bother to ensure that EMUL is non-empty.
6553 (dep.sed): Use @SRCDIR@, not @srcdir@.
6554 * dep-in.sed: Use @SRCDIR@, not @srcdir@.
6555 * genscripts.sh: Create ldscripts if it does not exist.
6556 * ldemul.c, lexsup.c, mpw-emipsidt.c: Don't include "config.h".
6557 * mpw-esh.c, emultemp/*.em: Likewise.
6558 * ldmain.c: Likewise. Include <ctype.h>. Don't try to set
6559 HAVE_SBRK here.
6560 * config/*.mt, config/*.mh: Remove.
6561
6562Tue Sep 5 14:55:24 1995 Ken Raeburn <raeburn@cygnus.com>
6563
6564 * configure.in: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
6565 ns32k-pc532-lites* like ns32k-pc532-netbsd*. From Ian Dall.
6566
6567Fri Sep 1 22:29:52 1995 Doug Evans <dje@canuck.cygnus.com>
6568
6569 * scripttempl/pe.sc: Fix typo in spelling of .ctors/.dtors.
6570
6571Fri Sep 1 13:13:29 1995 Ian Lance Taylor <ian@cygnus.com>
6572
6573 * ldmain.c (warning_callback): Add abfd, section, and address
6574 parameters.
6575 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
6576 Change call to warning accordingly.
6577
6578 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): If not
6579 relocateable and not shared, put .gnu.warning.SYMBOL sections into
6580 the .text section.
6581
6582Fri Sep 1 08:35:16 1995 James G. Smith <jsmith@beauty.cygnus.com>
6583
6584 * configure.in: Added mips*vr4300-idt-elf* and
50bbae35 6585 mips*vr4300el-idt-elf* targets.
252b5132
RH
6586 * Makefile.in: Added eelf32vr4300* targets.
6587 * emulparams/{elf32vr4300.sh, elf32vr4300el.sh}: Added.
6588 * config/{mips-vr4300.mt, mips-vr4300el.mt}: Added.
6589
6590Fri Sep 1 10:51:45 1995 Ian Lance Taylor <ian@cygnus.com>
6591
6592 * scripttempl/a29k.sc: Fix to be reasonable. From Brendan Kehoe
6593 <brendan@cygnus.com>.
6594
6595Thu Aug 31 16:37:07 1995 steve chamberlain <sac@slash.cygnus.com>
6596
6597 * ldemul.c (ldemul_parse_args): New.
6598 * ldemul.h (ld_emulation_xfer_struct): Add parse_args.
6599 * lexsup.c (all pe stuff): Moved into pe.em
6600 (parse_args): Call emulation arg parser.
6601 * emultempl/pe.em (parse_args): handle PE specfic args.
6602
6603Thu Aug 31 17:01:37 1995 Ian Lance Taylor <ian@cygnus.com>
6604
6605 * ldlang.c (lang_memory_region_lookup): Don't use the first region
6606 as the default region. Create a new region instead.
6607
6608Tue Aug 29 14:21:41 1995 steve chamberlain <sac@slash.cygnus.com>
6609
6610 * ldemul.c (ldemul_set_symbols): New function.
6611 * ldemul.h (ld_emulation_xfer_struct): Add set_symbols.
6612 * ldmain.c (main): Add call to ldemul_set_symbols.
6613 * lexsup.c (set_pe_value): New args.
6614 (set_pe_name): New.
6615 (parse_args): Cope with new set_pe_value args.
6616 * emultempl/pe.em (set_symbols): New function.
6617 (ld_emulation_xfer_struct): Add set_symbols.
6618 * scripttempl/pe.sc: Use new symbols.
6619
6620Thu Aug 24 18:12:18 1995 Ian Lance Taylor (ian@cygnus.com)
6621
6622 * lexsup.c (parse_args): Don't call set_default_dirlist for -O.
6623 For -Y, ignore a leading `P,', and only call set_default_dirlist
6624 after processing all the other arguments.
6625
6626Tue Aug 22 07:36:58 1995 steve chamberlain <sac@slash.cygnus.com>
6627
6628 * scripttempl/pe.sc: Keep .edata, don't base stabs at 0.
6629 * emulparams/armpe.sh: Run PE script.
6630
6631Mon Aug 21 18:30:42 1995 steve chamberlain <sac@slash.cygnus.com>
6632
6633 * ldmain.c (main): Remove PE stuff.
6634 * lexsup.c (options): Load more PE options.
6635 (set_pe_value): New function.
6636
6637Thu Aug 17 13:35:49 1995 steve chamberlain <sac@slash.cygnus.com>
6638
6639
6640 * emultempl/{armpe.sc, i386pe.sc}: Deleted.
6641 * emultempl/pe.sc: New file performs generic PE support and sorts
6642 archive members.
6643 * emulparams/{armpe.sh,i386pe.sh}: Use new file.
6644 * scripttempl/{armpe.sc, i386pe.sc}: Deleted
6645 * scripttempl/pe.sc: New.
6646 * Makefile.in: Use new files.
6647
6648Thu Aug 17 14:46:34 1995 Doug Evans <dje@canuck.cygnus.com>
6649
6650 * scripttempl/h8500s.sc (.rdata): All data must go in data segment.
6651 (.strings,.ctors,.dtors): Likewise.
6652
6653Wed Aug 16 11:38:59 1995 steve chamberlain <sac@slash.cygnus.com>
6654
6655 * scripttempl/armpe.sc: Always start code at 0x401000, even
6656 if -r.
6657 * ldwrite.c (strdup): New extern declaration.
6658 * ldgram.y (atype): New rule to clarify type parsing.
6659 * ldlang.c (init_os): Remove commented out code.
6660 (lang_size_sections): Set SEC_ALLOC and SEC_LOAD bits
6661 unless told not to by the link script.
6662
6663Wed Aug 16 11:45:11 1995 Ian Lance Taylor <ian@cygnus.com>
6664
6665 * ldlang.c (lang_set_startof): New static function.
6666 (lang_process): Call it.
6667
6668 * ldgram.y: Tweak casesymlist to avoid bison errors.
6669
6670 * lexsup.c (parse_args): Accept -h as a synonym for --soname, for
6671 Solaris compatibility.
6672
6673Tue Aug 15 17:31:16 1995 Ian Lance Taylor <ian@cygnus.com>
6674
6675 * ldgram.y (YYDEBUG): If not defined, define as 1.
6676 (CASE, EXTERN, START): New tokens.
6677 (mri_script_command): Handle CASE, EXTERN, INCLUDE, START.
6678 (casesymlist): New nonterminal.
6679 (extern_name_list): New nonterminal.
6680 * ldlex.l: Accept lower case trailing base specifiers. Don't
6681 ignore the first digit when the base is a suffix. Accept many
6682 EXPRESSION state tokens in MRI state. Support MRI continuation
6683 lines and MRI semicolon comments. Accept all MRI keywords in
6684 lower case. Add CASE, EXTERN, and START MRI keywords.
6685
6686Tue Aug 8 19:14:58 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
6687
6688 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Use xmalloc
6689 instead of alloca.
6690
6691Tue Aug 8 15:24:05 1995 J.T. Conklin <jtc@rtl.cygnus.com>
6692
6693 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Don't use
6694 $r/../gcc/xgcc unless it is present.
6695
6696Thu Aug 3 11:56:22 1995 Ian Lance Taylor <ian@cygnus.com>
6697
6698 * scripttempl/m68kcoff.sc: Only put .ctors and .dtors in .text
6699 when CONSTRUCTING.
6700 * scripttempl/m68klynx.sc: Likewise.
6701 * scripttempl/nw.sc: Likewise.
6702 * scripttempl/sa29200.sc: Likewise.
6703 * scripttempl/sparclynx.sc: Likewise.
6704
6705Fri Jul 28 12:02:23 1995 steve chamberlain <sac@slash.cygnus.com>
6706
6707 * emulparams/{z8001.sh, z8002.sh}: Fix typo.
6708
6709Thu Jul 27 21:06:21 1995 Ken Raeburn <raeburn@cygnus.com>
6710
6711 * configure.in (i[345]86-*-linuxoldld): Treat like linuxaout*.
6712
6713Thu Jul 27 15:26:28 1995 steve chamberlain <sac@slash.cygnus.com>
6714
6715 * scripttempl/i386pe.sc: Cope with constructors.
6716 * scripttempl/z8ksim.sc: Deleted.
6717 * scripttempl/z8000.sc: Resurrected as this, but
6718 can handle z8001 and z8002 formats.
6719 * emulparams/z8ksim.sh: Deleted.
6720 * emulparams/{z8001.sh, z8002.sh}: New files.
6721 * config/z8ksim.mt: Deleted
6722 * config/z8k-coff.mt: New, generates both emulations.
6723
6724Tue Jul 25 14:53:02 1995 Ian Lance Taylor <ian@cygnus.com>
6725
6726 * ldmisc.c (vfinfo): In %C and %D case, always print the BFD using
6727 %B, in case it is in an archive.
6728
6729Mon Jul 24 15:23:39 1995 Ian Lance Taylor <ian@cygnus.com>
6730
6731 * ldlang.c (lang_process): Call reset_memory_regions for each
6732 relaxation pass.
6733
6734Fri Jul 21 22:49:44 1995 Michael Meissner <meissner@cygnus.com>
6735
6736 * scripttempl/elfppc.sc: Add support for .sdata, .sbss, and
6737 _SDA_BASE.
6738
6739Thu Jul 20 16:26:55 1995 Ken Raeburn <raeburn@cygnus.com>
6740
6741 * ldmain.c (constructor_callback): Allocate set_name in stack
6742 frame, rather than always calling alloca with a fixed size.
6743
6744Wed Jul 19 16:21:43 1995 Doug Evans <dje@canuck.cygnus.com>
6745
6746 * emulparams/armpe.sh (OUTPUT_FORMAT): Change to pei-arm-little.
6747 (LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
6748
6749Mon Jul 17 13:57:00 1995 Ian Lance Taylor <ian@cygnus.com>
6750
6751 * ldwrite.c (clone_section): Set the alignment of the clone
6752 section to that of the section being cloned.
6753
6754 * ldwrite.c (split_sections): Don't split the first input section
6755 into a new output section.
6756
6757Sat Jul 15 00:26:35 1995 Michael Meissner <meissner@cygnus.com>
6758
6759 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Define as elf32.
6760 (GENERATE_SHLIB_SCRIPT): Define as yes.
6761
6762Fri Jul 14 12:11:46 1995 Ian Lance Taylor <ian@cygnus.com>
6763
6764 * emultempl/mipsecoff.em (check_sections): Use %P, not %F.
6765
6766 * ldver.c (help): Update list of options to match currently
6767 supported list.
6768
6769Thu Jul 13 13:52:10 1995 Ian Lance Taylor <ian@cygnus.com>
6770
6771 * emultempl/lnk960.em (ld_lnk960_emulation): Initialize
6772 after_open field.
6773
6774 * ldexp.c (exp_intop): Don't cast stat_alloc arg to bfd_size_type;
6775 it takes a size_t anyhow.
6776 (exp_binop): Likewise.
6777 (exp_trinop): Likewise.
6778 (exp_unop): Likewise.
6779 (exp_nameop): Likewise.
6780 (exp_assop): Likewise.
6781 * ldlang.c (lang_memory_region_lookup): Likewise.
6782 (init_os): Likewise.
6783 (ldlang_add_undef): Likewise.
6784 (insert_pad): Likewise.
6785 * ldfile.c (ldfile_add_arch): Don't cast xmalloc arg to
6786 bfd_size_type.
6787
6788 * Makefile.in (ALL_EMULATIONS): It's earmaoutb.o, not earmoutb.o.
6789
6790Wed Jul 12 11:32:22 1995 Ian Lance Taylor <ian@cygnus.com>
6791
6792 * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to
6793 declaration.
6794 (ld_emulation_xfer_type): Add search parameter to
6795 open_dynamic_archive entry point.
6796 * ldemul.c (ldemul_open_dynamic_archive): Add search parameter.
6797 * ldfile.c (ldfile_try_open_bfd): Rename from try_open_bfd, and
6798 make non-static. Change all callers to use new name.
6799 (ldfile_open_file_search): Make static. If entry is dynamic, call
6800 ldemul_open_dynamic_archive.
6801 (ldfile_open_file): Don't call ldemul_open_dynamic_archive.
6802 * ldfile.h (ldfile_open_file_search): Don't declare.
6803 (ldfile_try_open_bfd): Declare.
6804 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
6805 Accept search parameter. Don't search for a library, just look in
6806 a single place.
6807 * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
6808 Likewise.
6809
6810Tue Jul 11 16:44:21 1995 Ian Lance Taylor <ian@cygnus.com>
6811
6812 * ldmain.c (set_scripts_dir): Don't base script directory on
6813 current directory.
6814
6815Tue Jul 11 12:29:02 1995 Rick Sladkey <jrs@world.std.com>
6816
6817 * ldmisc.c (vfinfo): Don't print the line number if it isn't
6818 meaningful.
6819
6820Mon Jul 10 13:38:28 1995 Ian Lance Taylor <ian@cygnus.com>
6821
6822 * ld.h (ld_config_type): Add field warn_constructors.
6823 * ldmain.c (add_to_set): Warn if config.warn_constructors.
6824 (constructor_callback): Likewise.
6825 * lexsup.c (parse_args): Handle -warn-constructors.
6826 * ld.texinfo, ld.1: Document -warn-constructors.
6827
6828 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Don't
6829 get confused by directory names if we searched for the file.
6830
6831 Based on patches from H.J. Lu <hjl@nynexst.com>:
6832 * ldlang.h (lang_input_statement_type): Add new field dynamic.
6833 * ldlang.c (new_afile): Set dynamic from config.dynamic_link.
6834 * ldfile.c: Include bfdlink.h.
6835 (ldfile_open_file): Check dynamic field of entry, not global
6836 dynamic_link field. Don't do a dynamic search when doing a
6837 relocateable link.
6838 * ldmain.c (main): Don't warn about dynamic_link for a
6839 relocateable link.
6840 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Skip file if
6841 dynamic is false.
6842 (gld${EMULATION_NAME}_create_output_section_statements): Always
6843 loop over input files.
6844 * Makefile.in: Rebuild dependencies.
6845
6846 * ld.texinfo, ld.1: Document -Bstatic, -Bdynamic, -Bshared, and
6847 -shared.
6848
6849Mon Jul 10 13:29:43 1995 Eric Youngdale <eric@aib.com>
6850
6851 * ldmain.c (main): Set link_info.symbolic to false.
6852 * lexsup.c (parse_args): Handle -Bsymbolic.
6853
6854Wed Jul 5 00:12:11 1995 Fred Fish (fnf@cygnus.com)
6855
6856 * ldmain.c (HAVE_SBRK): Define for everything except
6857 specific systems that are known to not support sbrk.
6858 (main): Use HAVE_SBRK to decide whether or not to use sbrk.
6859
6860Tue Jul 4 12:55:48 1995 Ian Lance Taylor <ian@cygnus.com>
6861
6862 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
6863 Handle etree_provide.
6864
6865 * emultempl/elf32.em (global_needed): New static variable.
6866 (global_found): Likewise.
6867 (gld${EMULATION_NAME}_after_open): New static function.
6868 (gld${EMULATION_NAME}_search_needed): Likewise.
6869 (gld${EMULATION_NAME}_try_needed): Likewise.
6870 (gld${EMULATION_NAME}_check_needed): Likewise.
6871 (ld_${EMULATION_NAME}_emulation): Replace after_open_default with
6872 gld${EMULATION_NAME}_after_open.
6873
6874Mon Jul 3 14:26:37 1995 Steve Chamberlain <sac@slash.cygnus.com>
6875
6876 * configure.in (i386-*-win32): New target.
6877
6878Mon Jul 3 14:39:22 1995 Ian Lance Taylor <ian@cygnus.com>
6879
6880 * lexsup.c (parse_args): Let -G either set the small data size or
6881 be equivalent to --shared, depending on the next argument. Accept
6882 and ignore -z for Solaris compatibility.
6883
6884Sun Jul 2 17:52:34 1995 Ian Lance Taylor <ian@cygnus.com>
6885
6886 * lexsup.c (parse_args): Cast fopen result to PTR before storing
6887 it in link_info.base_file. Fix indentation.
6888
6889Wed Jun 28 17:11:25 1995 Steve Chamberlain <sac@slash.cygnus.com>
6890
6891 * ldmain.c (main): Always initialize PE info in link_info.
6892 * lexsup.c (OPTION_BASE_FILE): New option.
6893 (parse_args): Handle new option.
6894 * emulparams/armpe.sh: Output pei.
6895 * emultempl/i386pe.em: Add newline to end.
6896 * scripttempl/armpe.sc: Change output and quote the $s.
6897 * scripttempl/i386pe.sc: Change output and quote the $s.
6898
6899Thu Jun 22 19:55:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
6900
6901 Sun May 7 11:53:41 MDT 1995 Bryan Ford <baford@cs.utah.edu>
6902
6903 * configure.in (i386-*-msdos*, i386-*-moss*): New targets.
6904 * Makefile.in (ALL_EMULATIONS): Added i386msdos.o.
6905 (i386msdos.o): New target.
6906 * config/i386-msdos.mt: Created.
6907 * emulparams/i386msdos.sh: Created.
6908 * scripttempl/i386msdos.sc: Created.
6909
6910Thu Jun 22 15:06:35 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6911
6912 * scripttempl/elfppc.sc (.fixup): Add support for a .fixup section
6913 that contains pointers to be relocated.
6914
6915Tue Jun 20 17:47:20 1995 Stan Shebs <shebs@andros.cygnus.com>
6916
6917 * mpw-esh.c: New file, modified for MPW from esh.c.
6918 * scripttempl/sh.sc: Reformatted to simplify MPWification,
6919 use *() to concat stab sections instead of [].
6920
6921Thu Jun 15 08:48:16 1995 Steve Chamberlain <sac@slash.cygnus.com>
6922
6923 * scripttempl/armpe.sc: Add constructor support.
6924
6925Tue Jun 13 09:11:20 1995 Steve Chamberlain <sac@slash.cygnus.com>
6926
6927 * ldlang.c (lang_size_sections): Any section with a DATA
6928 statement has contents.
6929
6930Sun Jun 11 15:20:46 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
6931
6932 * emulparams/m68kelf.sh (NOP): Define.
6933 (DYNAMIC_LINK): Don't define.
6934 (TEXT_START_ADDR): Set to 0x80000000; the extra 0x100 for headers
6935 will come from the linker script.
6936
6937Thu Jun 8 14:17:33 1995 Steve Chamberlain <sac@slash.cygnus.com>
6938
6939 * emulparams/armpe.sh, scriptempl/armpe.sc: Add end and stack.
6940
6941Mon Jun 5 02:16:24 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
6942
6943 * configure.in (i[345]86-*-gnu*): Use GNU elf config.
6944
6945Thu May 25 11:49:28 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6946
6947 From Andrew Cagney <cagney@highland.com.au>
6948 * Makefile.in: Fixup more gotchas from renaming elf32ppcle to
6949 elf32lppc.
6950
6951Wed May 24 11:23:21 1995 Steve Chamberlain <sac@slash.cygnus.com>
6952
6953 Add support for ARM-PE.
6954 * Makefile.in (ALL_EMULATIONS): Add armpe.o
6955 * configure.in: Recognize armpe.
6956 * config/arm-pe.mt: New file.
6957 * emulparams/armpe.sh: New file.
6958 * scripttempl/armpe.sc: New file.
6959
6960
6961Mon May 22 15:19:26 1995 Doug Evans <dje@chestnut.cygnus.com>
6962
6963 * configure.in (h8300h-*-hms): Deleted
6964 * config/cf-h8300h.mt: Deleted.
6965
6966Thu May 18 04:26:10 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
6967
6968 Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
6969
6970 From David Taylor (dtaylor@armltd.co.uk)
6971 * Makefile.in (ALL_EMULATIONS): Add earmout[lb].o
6972 * configure.in: Recognize arm{,e[lb]-*-aout.
6973 * config/arm[lb]-aout.mt: New files.
6974 * emulparams/armaout[lb].sh: New files.
6975 * scripttempl/armaout.sc: New file.
6976
6977Tue May 16 18:27:11 1995 Michael Meissner <meissner@tiktok.cygnus.com>
6978
6979 * config/ppcle-elf32.mt (EMUL): Use elf32lppc, not elf32ppcle, to
6980 be unique in 8 characters for DOS.
6981
6982 * emulparams/elf32lppc.sh: New file, renamed from elf32ppcle.sh.
6983 * emulparams/elf32ppcle.sh: Deleted.
6984
6985Fri May 12 11:03:55 1995 Steve Chamberlain <sac@slash.cygnus.com>
6986 Tom Griest <griest@cs.yale.edu>
6987
6988 Initial support for PE executables (eg NT, win32)
6989
6990 * Makefile.in (configure.in, ei386pe): Add support.
6991 * ldmain.c (main): Initialize PE argument info.
6992 * ldwrite.c (print_file_stuff): Don't print out .drectve
6993 and .debug section info.
6994 * lexsup.c (set_subsystem, set_stack_heap, OPTION_HEAP,
6995 OPTION_SUBSYSTEM, parse_argsm set_subsystem, set_stack_heap):
6996 Handle new arguments.
6997 * config/i386-pe.mt, emultempl/i386pe.em, scripttempl/i386pe.sc:
6998 New files
6999
7000Wed May 10 18:37:59 1995 Stu Grossman (grossman@andros.cygnus.com)
7001
7002 * scripttempl/hppaelf.sc: Remove .PARISC.unwind section from text
7003 segment. This allows ld -r to preserve unwind sections.
7004
7005Tue May 9 17:19:57 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7006
7007 * configure.in: Add little endian PowerPC support.
7008
7009 * Makefile.in (ALL_EMULATIONS): Add eelf32ppcle.o.
7010 (eelf32ppcle.c): Support for little endian PowerPC.
7011
7012 * config/ppcle-elf32.mt: New file for little endian PowerPC.
7013 * emulparams/elf32ppcle.sh: Ditto.
7014
7015Wed May 3 12:56:32 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7016
7017 * ldlang.c (print_output_section_statement): Check
7018 subsection_alignment, instead of checking section_alignment twice.
7019 Noticed by Alan Modra <alan@spri.levels.unisa.edu.au>.
7020
7021Tue May 2 16:36:07 1995 Jeff Law (law@snake.cs.utah.edu)
7022
7023 * configure.in (hppa*-*-lites*): Handle like hppa*-*-*elf*.
7024
7025Mon Apr 24 19:21:02 1995 Michael Meissner <meissner@cygnus.com>
7026
7027 * ldwrite.c (ldwrite): Before doing anything, reset the error
7028 code. If bfd_final_link returns an error, but the error code is
7029 unset, don't issue an extra message. Assume a correct error
7030 message was already set.
7031
7032Fri Apr 14 16:31:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7033
7034 * Makefile.in (ALL_EMULATIONS): Added em68kelf.o.
7035 (em68kelf.o): New target.
7036 * config/m68k-elf.mt, emulparams/m68kelf.sh: New files.
7037 * configure.in: Use them for m68*-*-elf.
7038
7039Tue Apr 11 12:02:03 1995 Stan Shebs <shebs@andros.cygnus.com>
7040
7041 Merge in support for Mac MPW as a host.
7042 (Old change descriptions retained for informational value.)
7043
7044 * mpw-config.in (i386-unknown-aout): Change to i386-unknown-go32.
7045 (i386-unknown-coff): Remove.
7046 (sh-hitachi-hms): New target.
7047 (emulation_ofiles): Set correctly for each target.
7048 (version, TDEFINES): Add to makefile fragment.
7049 * mpw-make.in (BISON): Use byacc instead of bison.
7050 (em_*.c): Replace with e*.c everywhere.
7051 (ldgram.h): Separate action from ldgram.c generation.
7052 (LD_PROG): Depend on Version.r.
7053 (Version.r): generate from version info.
7054 * mpw-emipsidt.c: New file, modified for MPW from emipsidt.c.
7055
7056 * mpw-config.in (m68k-apple-macos, ppc-apple-macos,
50bbae35 7057 i386-unknown-aout, i386-unknown-coff): New targets.
252b5132
RH
7058 (m68k-aout, m68k-coff): Remove targets.
7059 (mk.tmp): Add definition of EMUL.
7060
7061 * mpw-config.in (emulname): Set based on target.
7062 (ldemul-list.h): Construct.
7063 * mpw-make.in (install-only): New target.
7064 (install): Depend on install-only.
7065
7066 * mpw-make.in (bindir): Fix pathname.
7067 (install): Move here from mpw-build.in.
7068
7069 * mpw-config.in: New file, MPW configuration fragment.
7070 * mpw-make.in: New file, MPW makefile fragment.
7071 (This file is semi-automatically generated from Makefile.in.)
7072 * ldfile.c (slash): If MPW, set to `:'.
7073 * ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
7074 prevent redefinition errors.
7075
7076Tue Apr 4 17:55:18 1995 Steve Chamberlain <sac@bang.hack.com>
7077
7078 * ldwrite.c (clone_section): Align clone sections on even
7079 boundaries.
7080
7081Thu Mar 30 14:32:26 1995 H.J. Lu (hjl@nynexst.com)
7082
7083 * configure.in: Change linux to default to elf. Using
7084 i[345]86-*-linuxaout will build a linker which defaults to a.out.
7085 * config/i386-laout.mt: Rename from old config/i386-linux.mt.
7086 * config/i386-linux.mt: Rename from old config/i386-lelf.mt.
7087 * config/i386-lelf.mt: Remove.
7088
7089Thu Mar 30 13:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
7090
7091 * ldmain.c (main): If opening the map file fails, call
50bbae35 7092 bfd_set_error before calling einfo.
252b5132
RH
7093
7094 * ld.texinfo, ld.1: Document the -no-keep-memory option.
7095
7096Mon Mar 27 11:10:08 1995 Ian Lance Taylor <ian@cygnus.com>
7097
7098 * ldmain.c (main): Revert patch of March 10, since the SVR4 linker
7099 does mark shared libraries as executable.
7100
7101Tue Mar 21 15:15:38 1995 Ian Lance Taylor <ian@cygnus.com>
7102
7103 * ldlang.c (lang_common): Change power to int. Pass larger values
7104 before smaller values.
7105 (lang_one_common): Treat info as int *. Don't bother to check for
7106 last value, since it is now zero.
7107
7108Sat Mar 18 01:49:14 1995 Ian Lance Taylor <ian@cygnus.com>
7109
7110 * ldlang.c (load_symbols): An empty archive is OK.
7111
7112Fri Mar 17 16:15:31 1995 Stan Shebs <shebs@andros.cygnus.com>
7113
7114 * ldmain.c (progress.h): Include.
7115 (main): Call START_PROGRESS and END_PROGRESS.
7116
7117Thu Mar 16 17:17:33 1995 Michael Meissner <meissner@cygnus.com>
7118
7119 * scripttempl/elfppc.sc: Move _GOT2_END_ after the .ctors and
7120 .dtors sections, so that these pointers get relocated also.
7121 Define the symbols __{C,D}TOR_{LIST,END}__ to mark the beginning
7122 and end of the constructors/destructors.
7123
7124Thu Mar 16 13:59:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
7125
7126 * ldlang.c (load_symbols): If whole_archive is true and ENTRY
7127 describes an archive, call bfd_link_add_symbols on each member.
7128 * ldmain.c (whole_archive): New variable.
7129 (main): Initialize it to false.
7130 * ldmain.h: Declare whole_archive.
7131 * lexsup.c (parse_args): Grok --whole-archive switch.
7132 * ld.texinfo, ld.1: Document --whole-archive.
7133
7134Thu Mar 16 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
7135
7136 * genscripts.sh (EMULATION_NAME): Set LIB_PATH to empty when not
7137 using the default emulation.
7138
7139 * config/dgux.mh (HOSTING_EMU): Use -m rather than trying to set
7140 LDEMULATION.
7141 * config/hppaelf.mh (HOSTING_EMU): Likewise.
7142
7143Tue Mar 14 12:28:03 1995 Ian Lance Taylor <ian@cygnus.com>
7144
7145 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Set force_maj
7146 for -lc.N. From H.J. Lu <hjl@nynexst.com>.
7147
7148Fri Mar 10 14:43:48 1995 Ian Lance Taylor <ian@cygnus.com>
7149
7150 * ldmain.c (main): Don't set EXEC_P if link_info.shared is set.
7151
7152 * ldlex.l: Return -lFILENAME as the token LNAME.
7153 * ldgram.y: Add token LNAME.
7154 (input_list): Treat LNAME like NAME, but pass it to
7155 lang_add_input_file as lang_input_file_is_l_enum.
7156 * ld.texinfo: Document using -lFILENAME in INPUT.
7157
7158Thu Mar 9 12:21:51 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7159
7160 * ldlang.c (lang_check): If the architectures are compatible call
7161 bfd_merge_private_bfd_data to let the backend do additional
7162 checks.
7163
7164Tue Mar 7 00:53:08 1995 Ian Lance Taylor <ian@cygnus.com>
7165
7166 * ldemul.c (ldemul_choose_mode): If emulation not recognized, list
7167 all supported emulations.
7168
7169Mon Mar 6 14:03:50 1995 Ian Lance Taylor <ian@cygnus.com>
7170
7171 * ldemul.c (ldemul_list_emulations): New function.
7172 * ldemul.h (ldemul_list_emulations): Declare.
7173 * ldver.c (help): List supported targets and emulations.
7174
7175Fri Mar 3 15:40:36 1995 Doug Evans <dje@canuck.cygnus.com>
7176
7177 * scripttempl/elf.sc (.debug): Relocate to address 0.
7178 (.debug_srcinfo, .debug_aranges, .debug_pubnames,
7179 .debug_sfnames, .line): Likewise.
7180
7181Fri Mar 3 17:07:14 1995 Ian Lance Taylor <ian@cygnus.com>
7182
7183 * emultempl/elf32.em (hold_rel): New static variable.
7184 (gld${EMULATION_NAME}_place_orphan): Place readonly sections with
7185 contents whose names begin with ".rel" after hold_rel. Remove the
7186 assertion which checked for unplaced .rel sections. Don't try to
7187 sort the section into place if place->bfd_section is NULL.
7188 (gld${EMULATION_NAME}_place_section): Set hold_rel to the first
7189 section beginning with ".rel".
7190
7191Thu Mar 2 14:34:43 1995 Ian Lance Taylor <ian@cygnus.com>
7192
7193 Doc note from pierre@phi.la.tce.com (Pierre Willard):
7194 * ld.texinfo: -X and -x work even if -s or -S are not specified.
7195 * ld.1: Similar change.
7196
7197Wed Mar 1 13:51:16 1995 Ian Lance Taylor <ian@cygnus.com>
7198
7199 * emulparams/gld960coff.sh (COFF_CTORS): Define.
7200 * scripttempl/i960.sc: Use COFF_CTORS if CONSTRUCTING.
7201
7202Tue Feb 28 12:42:56 1995 Ian Lance Taylor <ian@cygnus.com>
7203
7204 * configure.in (i[345]86-*-linuxelf*): New target. Use i386-lelf.
7205 (i[345]86-*-gnuelf*): New target. Use i386-gelf.
7206 * config/i386-lelf.mt: New file.
7207 * config/i386-gelf.mt: New file.
7208
7209Tue Feb 28 10:27:54 1995 Rob Savoye <rob@darkstar.cygnus.com>
7210
7211 * configure.in: Match on mips-ecoff, and default to the IDT
7212 configuration.
7213
7214Fri Feb 17 13:06:47 1995 Michael Meissner <meissner@cygnus.com>
7215
7216 * scripttempl/elfppc.sc: Add support for .got1 and .got2 sections.
7217 Offset _GLOBAL_OFFSET_TABLE_ 32768 from the start of the GOT area
7218 to double the size of the table.
7219
7220Thu Feb 9 18:29:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7221
7222 * Makefile.in (distclean): Do recursive deletion, since ldscripts
7223 is a directory.
7224
7225Thu Feb 9 11:38:22 1995 Ian Lance Taylor <ian@cygnus.com>
7226
7227 * ldmain.c (main): If trace_file_tries is true, and we are using
7228 an internal linker script, print out the script.
7229 * ldfile.c (try_open): Reindent function. Make the messages about
7230 opening script files more informative.
7231
7232 * lexsup.c (parse_args): For -V, call ldversion with 1, not 0.
7233 * ld.texinfo, ld.1: Update accordingly.
7234
7235Wed Feb 8 17:34:45 1995 Ian Lance Taylor <ian@cygnus.com>
7236
7237 * ldlang.c (lang_one_common): Adjust references to common symbol
7238 information for new structure.
7239
7240Mon Feb 6 12:17:24 1995 Ian Lance Taylor <ian@cygnus.com>
7241
7242 * ldmain.c (undefined_symbol): Handle section being NULL.
7243
7244 * ldctor.c (ldctor_build_sets): Handle bfd_link_hash_defweak.
7245 * ldexp.c (fold_name): Likewise.
7246 * ldlang.c (print_one_symbol): Likewise.
7247 (lang_finish): Likewise.
7248 * ldmain.c (multiple_common): Likewise.
7249 * ldwrite.c (print_symbol): Likewise. Also, bfd_link_hash_weak
7250 renamed to bfd_link_hash_undefweak.
7251
7252 * scripttempl/alpha.sc: Set address of .data section correctly
7253 when -n or -N is used. Patch from Chris G Demetriou
7254 <Chris_G_Demetriou@LAGAVULIN.PDL.CS.CMU.EDU>.
7255 * scripttempl/mips.sc: Similar change.
7256
7257Tue Jan 31 16:20:52 1995 Doug Evans <dje@canuck.cygnus.com>
7258
7259 * ldlang.c (lang_size_sections): Clarify error message when user
7260 specified start addr conflicts with region. Fix resetting of
7261 region pointer.
7262
7263Tue Jan 31 12:37:09 1995 Ian Lance Taylor <ian@cygnus.com>
7264
7265 * ldexp.c (fold_name): In case NAME, permit an absolute symbol
7266 in lang_allocating_phase_enum.
7267
7268Mon Jan 30 11:33:25 1995 Ian Lance Taylor <ian@cygnus.com>
7269
7270 * Makefile.in (distclean): Depend upon clean. Don't bother to
7271 remove files which will be removed by clean. From patch by
7272 alan@SPRI.Levels.UniSA.Edu.Au (Alan Modra).
7273
7274Fri Jan 27 16:27:34 1995 Ian Lance Taylor <ian@cygnus.com>
7275
7276 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): For
7277 a MIPS target, clobber the size of all but the first input
7278 .reginfo section to be 0, so that lang_size_sections sets the
7279 correct size for the output .reginfo section.
7280
7281Thu Jan 26 19:53:37 1995 Ian Lance Taylor <ian@cygnus.com>
7282
7283 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
7284 Remove unused variable is.
7285
7286Thu Jan 26 12:33:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7287
7288 * configure.in: Add support for powerpc-*-eabi.
7289
7290 * scripttempl/elfppc.sc: New file for PowerPC embedded ABI
7291 support.
7292
7293 * emulparams/elf32ppc.sh (SCRIPT_NAME): Use elfppc.sc instead of
7294 elf.sc, which defines some new symbols PowerPC elf needs.
7295
7296Tue Jan 24 10:32:15 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7297
7298 * ldctor.c (ldctor_add_set_entry): Don't dump core if a
7299 constructor entry is in the absolute section.
7300
7301Mon Jan 23 13:58:13 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7302
7303 * configure.in (i[345]86-*-gnu*): Set ld_target to i386-gnu.
7304 * config/i386-gnu.mt: New file. Include ELF support.
7305
7306Thu Jan 19 16:22:11 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7307
7308 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): If
7309 there are any input sections named .gnu.warning, treat them as
7310 containing a warning message to be printed by the linker, and
7311 clobber the size so that the message is not copied into the output
7312 file.
7313 * scripttempl/elf.sc: Put .gnu.warning sections into the .text
7314 section.
7315
7316Sun Jan 15 16:45:00 1995 Steve Chamberlain <sac@splat>
7317
7318 * configure.in (w65-*-*): New target.
7319 * Makefile.in: Update.
7320 * scripttempl/w65.sc: New.
7321 * config/coff-w65.mt: New.
7322
7323Thu Jan 12 01:32:25 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
7324
7325 * ldlang.c (lang_place_orphans): Don't ignore files with
7326 just_syms_flag set. Instead, put all their sections in
7327 bfd_abs_section_ptr, using the section VMA as the output_offset.
7328
7329Wed Jan 11 22:59:09 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
7330
7331 * ldctor.c (ldctor_build_sets): Don't use `const' with typedef
7332 name `reloc_howto_type', since it's now defined to be const.
7333 * ldlang.c (lang_add_reloc): Ditto.
7334 * ldlang.h (lang_reloc_statement_type, lang_add_reloc): Ditto.
7335
7336Wed Jan 11 11:24:45 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
7337
7338 * ldexp.c (fold_binary): Adding or subtracting an absolute value
7339 to a relative value does not require forcing the relative value to
7340 be absolute. Also, reindent function.
7341
7342Wed Dec 28 22:05:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7343
7344 * ldwrite.c (clone_section): Create a symbol with the
7345 same name as the section.
7346
7347Mon Dec 19 14:02:13 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7348
7349 * ld.h (split_by_reloc, split_by_file): New flags.
7350 * ldwrite.c (clone_section, split_sections): New functions.
7351 * lexsup.c (parse_args): Understand new split options.
7352
7353Fri Dec 9 17:22:55 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7354
7355 * scripttempl/elf.sc: Move .ctors and .dtors from .text segment to
7356 .data segment. They must be writable when creating a shared
7357 library. From H.J. Lu <hjl@nynexst.com>.
7358
7359Fri Dec 2 14:09:00 1994 Ian Lance Taylor <ian@rtl.cygnus.com>
7360
7361 * emultempl/miposecoff.em: New file.
7362 * emulparams/mipsidt.sh (TEMPLATE_NAME): Set to mipsecoff.
7363 * emulparams/mipsidtl.sh (TEMPLATE_NAME): Likewise.
7364 * scripttempl/mips.sc: Put .rel.sdata sections in .text, and
7365 provide __runtime_reloc_start and __runtime_reloc_stop if they are
7366 used. Align _fdata to a 16 byte boundary.
7367 * Makefile.in (emipsidt.c): Depend upon mipsecoff.em rather than
7368 generic.em.
7369 (emipsidtl.c): Likewise.
7370 (check): Pass CC_FOR_HOST and CFLAGS_FOR_HOST to runtest.
7371
7372 * ld.h (args_type): Add new field embedded_relocs.
7373 * ldemul.h (ldemul_after_open, after_open_default): Declare.
7374 (ld_emulation_xfer_struct): Add new field after_open.
7375 * ldemul.c (ldemul_after_open): New function.
7376 (after_open_default): New function.
7377 * ldlang.c (lang_process): Call ldemul_after_open.
7378 * lexsup.c (parse_args): Handle --embedded-relocs.
7379 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Initialize
7380 new after_open field to after_open_default.
7381 * emultempl/generic.em, emultempl/gld960.em: Likewise.
7382 * emultempl/gld960c.em, emultempl/hppaelf.em: Likewise.
7383 * emultempl/linux.em, emultempl/m88kbcs.em: Likewise.
7384 * emultempl/sunos.em, emultempl/vanilla.em: Likewise.
7385 * ld.texinfo, ld.1: Mention -embedded-relocs.
7386
7387Wed Nov 23 22:04:47 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7388
7389 * Makefile.in: Add eshl.o.
7390 * config/coff-sh.mt: Add shl emulation.
7391
7392Tue Nov 22 11:55:37 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7393
7394 * scripttempl/elf.sc: Fill .text section with NOPS. From Eric
7395 Youngdale <eric@aib.com>.
7396
7397Thu Nov 17 14:39:48 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7398
7399 Patches from pirker@eiunix.tuwien.ac.at (Martin Pirker).
7400 * config/i386linux.mh: New file; set HOSTING_CRT0.
7401 * genscripts.sh: Don't put ${libdir} in LIB_PATH if it is
7402 /usr/lib, since that is already in LIB_PATH.
7403
7404Wed Nov 16 10:03:03 1994 Jeff Law (law@snake.cs.utah.edu)
7405
7406 * scripttempl/hppaelf.sc (.text): Handle a use rdefined text start
7407 address.
7408 (.data, .bss): If "-N", then place the data/bss just after the end
7409 of the .text section rather than at the default 0x40000000.
7410
7411 * scripttempl/hppaelf.sc (.text): Place unwind descriptors in the
7412 text segment.
7413
7414Sat Nov 12 15:55:56 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7415
7416 Patches from Eric Youngdale <eric@aib.com>:
7417 * ldlang.c (lang_finish): Don't warn if entry symbol not found
7418 when generating a shared library.
7419 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Warn if
7420 attempting to place an orphaned relocation section when generating
7421 a dynamically linked object.
7422
7423 * scripttempl/elf.sc: Add ENTRY(${ENTRY}), and default ${ENTRY} to
7424 _start.
7425
7426Fri Nov 11 14:27:23 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7427
7428 * ld.h (args_type): Add field export_dynamic.
7429 * lexsup.c (parse_args): Recognize --export-dynamic.
7430 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
7431 Pass export_dynamic argument to bfd_elf32_size_dynamic_sections.
7432
7433Wed Nov 9 12:47:11 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7434
7435 * ldlang.c (lang_one_common): Set SEC_ALLOC in any section where
7436 we allocate common symbols.
7437
7438Tue Nov 8 17:50:43 1994 Eric Youngdale (eric@aib.com)
7439
7440 * scripttempl/elf.sc: Add .rel.init, .rela.init, .rel.fini, and
7441 .rela.fini to the list of .rel* sections.
7442
7443Tue Nov 8 17:47:45 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7444
7445 * ldlang.c (load_symbols): Add new argument place. Only accept
7446 linker scripts if place is not NULL. Put commands found in an
7447 assumed linker script into place.
7448 (lookup_name): Pass NULL as place argument to load_symbols.
7449 (open_input_bfds): In lang_input_statement_enum case, pass a place
7450 argument to load_symbols, and store any new statements after the
7451 current one.
7452
7453Mon Nov 7 15:53:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7454
7455 * ldver.c (ldversion): Bump to 2.5.3.
7456
7457Fri Nov 4 15:11:26 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7458
7459 * Makefile.in (e*nbsd.c): Fix typo in dependencies.
7460
7461Thu Nov 3 19:35:44 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7462
7463 * Makefile.in (check): Add missing "else true" clause.
7464
7465 * emulparams/vax.sh (OUTPUT_FORMAT): Use "a.out".
7466
7467 * scripttempl/go32coff.sc: Changes from DJ Delorie: Change default
7468 entry point to "start". Align at end of each section to 0x200.
7469 Start .text section 0x1000 later. Add _etext, _edata, _end
7470 symbols.
7471
7472Wed Nov 2 12:17:49 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7473
7474 * ldctor.c (ldctor_add_set_entry): Don't permit a set to be
7475 composed of different object file formats.
7476 (ldctor_build_sets): If the output format does not support the
7477 reloc, and we are not generating a relocateable link, try getting
7478 the reloc from the input format.
7479
7480Tue Nov 1 10:30:19 1994 J.T. Conklin (jtc@rtl.cygnus.com)
7481
7482 * Makefile.in (ALL_EMULATIONS): Added em68knbsd.o.
7483 (em68knbsd.c): New target.
7484
7485 * config/m68k-nbsd.mt: New file.
7486 * emulparams/m68knbsd.sh: New file.
7487 * configure.in (m68*-*-netbsd*): Use above configs.
7488
7489Mon Oct 31 19:35:17 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7490
7491 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): If we find an
7492 appropriately named static library, stop the search at that
7493 directory.
7494
7495Wed Oct 26 13:59:12 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
7496
7497 * Makefile.in (ALL_EMULATIONS): Added ei386nbsd.o, ens32knbsd.o
7498 and esparcnbsd.o; sorted entries.
50bbae35 7499 (ei386nbsd.c,ens32knbsd.c,esparcnbsd.c): New targets.
252b5132
RH
7500
7501 * config/netbsd532.mt: Removed.
7502 * emulparams/netbsd532.sh: Removed.
7503
7504 * config/{i386-nbsd.mt,ns32k-nbsd.mt,sparc-nbsd.mt}: New files.
7505 * emulparams/{i386nbsd.sh,ns32knbsd.sh,sparcnbsd.sh}: New files.
7506 * configure.in (i[345]86-*-netbsd*, ns32k-pc532-netbsd*,
7507 sparc*-*-netbsd*): Use above configs.
7508
7509Tue Oct 25 11:47:10 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7510
7511 * ldmain.c (multiple_common): One of the types may now be
7512 bfd_link_hash_indirect. The old BFD argument may be NULL.
7513
7514Thu Oct 20 22:01:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7515
7516 * configure.in: Add * at the end of m68k-hp-hpux.
7517
7518Tue Oct 18 15:58:39 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7519
7520 * ldlex.l: Cast assignment to yy_ch_buf field to char *, not to
7521 YY_CHAR *.
7522
7523Mon Oct 17 14:53:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
7524
7525 * scripttempl/nw.sc: Gather constructors and destructors and
7526 define __CTOR__LIST__ and __DTOR_LIST__ appropriately.
7527
7528Fri Oct 14 14:35:38 1994 J.T. Conklin (jtc@rtl.cygnus.com)
7529
7530 * Makefile.in (ALL_EMULATIONS): Add ei386nw.o and eppcnw.o.
7531 (ei386nw.c, eppcnw.c): New targets.
7532
7533 * config/{i386,ppc}-nw.mt, emulparams/{i386,ppc}nw.sh,
7534 scripttempl/nw.sc: New files, for i386 and powerpc netware.
7535
7536 * configure.in: Changed netware ld_target name to be {i386,ppc}-nw
7537 instead of {i386,ppc}-elf.
7538
50bbae35 7539 * configure.in (sparc*-*-netware): Removed. There is no such
252b5132
RH
7540 thing anymore.
7541
7542 * ldint.texinfo: Move misplaced `@end iftex'.
7543
7544Fri Oct 14 12:02:18 1994 Eric Youngdale (eric@aib.com)
7545
7546 * scripttempl/elf.sc: Add .rel.ctors, .rela.ctors, .rel.dtors, and
7547 .rela.dtors to the list of .rel* sections.
7548
7549Thu Oct 13 14:16:27 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7550
7551 * ldver.c (ldversion): Update to version 2.5.
7552 * Version 2.5 released.
7553
7554 * configure.in (all_targets): Handle i386-linux*.
7555
7556Thu Oct 13 11:24:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7557
7558 * scripttempl/aout.sc: Set _etext and __etext to ., not
7559 ${DATA_ALIGNMENT}. This is compatible with SunOS, and, with luck,
7560 will not break any other system. From Eric Valette
7561 <ev@chorus.fr>.
7562
7563Wed Oct 12 16:22:58 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
7564
7565 * lexsup.c (parse_args): Change -V to be a synonym for -v. Add
7566 --verbose to get the old -V behaviour.
7567 * ld.1, ld.texinfo: Document this change.
7568
7569Tue Sep 27 14:56:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7570
7571 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Remove
7572 assertion, since it could fail with a user defined linker script.
7573
7574 * ldexp.c (fold_name): For DEFINED case, don't try to look up the
7575 name in the hash table during the first phase--the hash table does
7576 not even exist at that point, much less have the right value.
7577
7578 * Makefile.in (CC): Define.
7579 (CXX): Move definition, change from g++ to gcc.
7580 (EXPECT, RUNTEST): Copy definitions from top level Makefile.in.
7581 (RUNTEST_CC, RUNTEST_CFLAGS): Remove.
7582 (RUNTEST_CXX, RUNTEST_CXXFLAGS): Remove.
7583 (CC_FOR_TARGET, CXX_FOR_TARGET): Copy from top level Makefile.in.
7584 (.cc.o): Comment out.
7585 (testdir): Remove.
7586 (site.exp): Don't create testdir or set tmpdir.
7587 (check): Run checks even if not running native. Use CC_FOR_TARGET
7588 instead of RUNTEST_CC, and likewise for CXX.
7589 (cdtest targets): Comment out.
7590 * config/solaris2.mh (HOSTING_LIBS): Only mention crtend.o once.
7591 * cdtest-bar.cc, cdtest-foo.cc, cdtest-foo.h: Remove.
7592 * cdtest-main.cc, cdtest.exp: Remove.
7593
7594Mon Sep 26 11:40:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7595
7596 * emulparams/elf32bmip.sh: Rename from elf32mipb.sh to avoid DOS
7597 file naming problems.
7598 * emulparams/elf32lmip.sh: Rename from elf32mipl.sh.
7599 * Makefile.in (ALL_EMULATIONS): Rename eelf32mipb.o to
7600 eelf32bmip.o and eelf32mipl.o to eelf32lmip.o.
7601 (eelf32bmip.c): Rename from eelf32mipb.c. Use elf32bmip.sh.
7602 (eelf32lmip.c): Rename from eelf32mipl.c. Use elf32lmip.sh.
7603 * config/mipsb-elf32.mt (EMUL): Use elf32bmip, not elf32mipb.
7604 * config/mipsl-elf32.mt (EMUL): Use elf32lmip, not elf32mipl.
7605
7606 * genscripts.sh: Always search /usr/local/TARGET/lib.
7607
7608 * scripttempl/elf.sc: If -N is set, force DATA_ADDR to be ".".
7609
7610Fri Sep 23 15:05:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
7611
7612 * configure.in: Handle i386-bsdi* targets like i386-bsd.
7613
7614Fri Sep 23 00:06:59 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7615
7616 * lexsup.c (parse_args): Add support for -a for HP/UX
7617 compatibility.
7618
7619 * lexsup.c (parse_args): -c takes an argument.
7620
7621Tue Sep 20 14:35:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7622
7623 * ld.h (args_type): Add new field endian.
7624 * lexsup.c (parse_args): Handle -EB and -EL by setting
7625 command_line.endian.
7626 * ldgram.y (ifile_p1): Accept OUTPUT_FORMAT with three arguments.
7627 * ldlang.c (lang_add_output_format): Add arguments big and little.
7628 If command_line.endian is set, use it to select big or little
7629 rather than the default. Changed all callers.
7630 * ldlang.h (lang_add_output_format): Update declaration.
7631 * emulparams/elf32mipb.sh: Define BIG_OUTPUT_FORMAT and
7632 LITTLE_OUTPUT_FORMAT.
7633 * emulparams/elf32mipl.sh: Likewise.
7634 * emulparams/mipsbig.sh: Likewise.
7635 * emulparams/mipsbsd.sh: Likewise.
7636 * emulparams/mipsidt.sh: Likewise.
7637 * emulparams/mipsidtl.sh: Likewise.
7638 * emulparams/mipslit.sh: Likewise.
7639 * scripttempl/elf.sc: Define BIG_OUTPUT_FORMAT and
7640 LITTLE_OUTPUT_FORMAT if not already defined. Pass them to
7641 OUTPUT_FORMAT.
7642 * scripttempl/mips.sc: Pass BIG_OUTPUT_FORMAT and
7643 LITTLE_OUTPUT_FORMAT to OUTPUT_FORMAT.
7644 * scripttempl/mipsbsd.sc: Likewise.
7645
7646 * Makefile.in (ldgram.h): Make separate target from ldgram.c,
7647 depending upon ldgram.c, so that a parallel make does not try to
7648 build both at once.
7649
7650 * configure.in (mips*el-elf*): New target.
7651 * Makefile.in (ALL_EMULATIONS): Add eelf32mipb.o and eelf32mipl.o.
7652 (eelf32mipl.c): New target.
7653
7654 * config/mipsl-elf32.mt: New file.
7655 * emulparams/elf32mipl.sh: New file.
7656
7657Fri Sep 16 12:16:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7658
7659 * ldmain.c (main): Rather than prohibiting ld -r -s, treat it as
7660 ld -r -S -x.
7661
7662Thu Sep 15 13:05:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7663
7664 * ldmisc.c (vfinfo): Print BFD file name as well as file name
7665 returned by find_nearest_line, in case the file name is something
7666 unhelpful such as a .h file. Handle %u.
7667
7668Wed Sep 14 12:49:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7669
7670 * ldlang.c (lang_do_assignments): Make sure output statement
7671 has an attached bfd_section before trying to dereference it.
7672
7673Wed Sep 14 12:48:09 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7674
7675 * ld.h (ld_config_type): Add new field warn_once.
7676 * ldmain.c (undefined_symbol): Handle -warn-once.
7677 * lexsup.c (parse_args): Recognize -warn-once.
7678 * ld.texinfo (Options): Document -warn-once.
7679 * ld.1: Likewise.
7680
7681 * ldmisc.c (vfinfo): Handle %D as %C, but never print the function
7682 name. For %C, print the function name on a separate line, to keep
7683 the length of error messages under control.
7684 * ldmain.c (multiple_definition): Use %D for ``first defined
7685 here.''
7686 (undefined_symbol): Use %D for ``more undefined references
7687 follow''.
7688
7689 * ldmisc.c (multiple_warn): Remove; no longer used.
7690 * ldmisc.h (multiple_warn): Don't declare.
7691
7692Tue Sep 13 20:47:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7693
7694 * ldlang.c (print_output_section_statement): Print all lines
7695 to the map file.
7696
7697Tue Sep 13 16:30:11 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7698
7699 * ldlang.c (load_symbols): Check for archive before object. Use
7700 bfd_check_format_matches, and, if ambiguous, print a list of
7701 matching formats. If file format is not recognized, treat file as
7702 a linker script.
7703 * ldgram.y (yyerror): If assuming an object file is a script,
7704 mention that. Tweak the format of the error messages.
7705 * ldlex.l (lex_warn_invalid): If assuming an object is a script,
7706 guess that this is not actually a script, and just report that the
7707 file format was not recognized.
7708 * ld.texinfo (Options): Admit that -( may be used more than once.
7709 Add note that unrecognized object files are now treated as linker
7710 scripts.
7711
7712 * ldfile.c (ldfile_input_filename): Make const.
7713 (ldfile_assumed_script): New variable.
7714 (try_open): Change arguments types to const.
7715 (ldfile_find_command_file): Likewise.
7716 (ldfile_open_command_file): Likewise. Also, set lineno to 1.
7717 * ldfile.h: Update declarations for ldfile.c changes.
7718 * ldlex.l: Include <ctype.h>.
7719 (file_name_stack): Change to be const char *.
7720 (lineno_stack): New static variable.
7721 (<<EOF>>): Set lineno as well as ldfile_input_filename.
7722 (lex_push_file): Make name argument const. Initialize
7723 lineno_stack entry.
7724 (lex_redirect): Initialize lineno_stack entry.
7725 (lex_warn_invalid): Handle non printable characters nicely.
7726 * ldlex.h (lex_push_file): Declare second argument as const.
7727
7728 * ldgram.y (ifile_p1): Recognize GROUP.
7729 * ldlex.l: Recognize GROUP.
7730 * ld.texinfo (Option Commands): Document GROUP.
7731
7732Mon Sep 12 17:04:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7733
7734 * config/m68klynx.mh: New file.
7735
7736Mon Sep 12 01:50:03 1994 Jeff Law (law@snake.cs.utah.edu)
7737
7738 * emultempl/hppaelf.em: Add newlines to the error messages.
7739
7740Sat Sep 10 16:05:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7741
7742 * config/i386lynx.mh: New file.
7743 * scripttempl/i386lynx.sc: Don't put .ctors and .dtors in .text
7744 unless CONSTRUCTING.
7745
7746Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7747
7748 * emulparams/elf32mipb.sh (TEMPLATE_NAME): Define as elf32.
7749 (GENERATE_SHLIB_SCRIPT): Define as yes.
7750 (DYNAMIC_LINK): Define as false.
7751 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse):
7752 Initialize config.dynamic_link to DYNAMIC_LINK if it is defined.
7753 (gld${EMULATION_NAME}_place_orphan): Reset stat_ptr at end.
7754 * Makefile.in (eelf32mipb.c): Depend upon elf32.em rather than
7755 generic.em.
7756
7757Thu Sep 8 16:30:37 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7758
50bbae35 7759 * scripttempl/h8500b.sc: Put rdata stuff into own segment.
252b5132
RH
7760
7761Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7762
7763 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Don't define;
7764 .got section is now explicitly handled in elf.sc.
7765
7766Wed Sep 7 13:08:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7767
7768 * scripttempl/alpha.sc: Redo script to set . outside of sections
7769 and not bother to explicitly specify section addresses.
7770 Explicitly place .sdata section.
7771
7772Tue Sep 6 23:51:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7773
7774 * scripttempl/m68kcoff.sc: Put .bss in data segment.
7775
7776 * scripttempl/h8300.sc: Change .stab and .stabstr to use a VMA of
7777 0, and to only be marked as NOLOAD if relocating.
7778 * scripttempl/h8500.sc, scripttempl/h8500b.sc: Likewise.
7779 * scripttempl/h8500c.sc, scripttempl/h8500m.sc: Likewise.
7780 * scripttempl/h8500s.sc, scripttempl/i386coff.sc: Likewise.
7781 * scripttempl/i386go32.sc, scripttempl/i386lynx.sc: Likewise.
7782 * scripttempl/m68kcoff.sc, scripttempl/m68klynx.sc: Likewise.
7783 * scripttempl/sh.sc, scripttempl/sparccoff.sc: Likewise.
7784 * scripttempl/sparclynx.sc: Likewise.
7785
7786Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
7787
7788 * Makefile.in, configure.in: Add support (disabled) the ARM/RISCiX.
7789 * config/riscix.mt, emulparams/riscix.sh, scripttempl/riscix.sc:
7790 New files.
7791
7792Tue Aug 30 11:48:08 1994 Eric Youngdale (ericy@cais.cais.com)
7793
7794 * ld.h (args_type): Add field soname.
7795 * lexsup.c (parse_args): Handle -soname argument.
7796 * emultempl/elf32.em: In call to bfd_elf32_size_dynamic_sections,
7797 pass soname.
7798 * ld.texinfo: Document -soname.
7799
7800Mon Aug 29 15:21:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7801
7802 * ldlang.c (lang_check): Don't try to set the architecture if the
7803 input and output files are incompatible. Just warn.
7804
7805Wed Aug 24 12:52:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7806
7807 * configure.in: Change i[34]86 to i[345]86.
7808
7809Sun Aug 21 16:17:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7810
7811 * emulparams/hp3hpux.sh: Define __DYNAMIC to be 0.
7812
7813Thu Aug 18 15:37:45 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7814
7815 Make the ELF linker handle orphaned sections reasonably. Also,
7816 define __start_SECNAME and __stop_SECNAME around sections whose
7817 names can be represented in C, for the benefit of symbol sets in
7818 glibc.
7819 * ldemul.h (ldemul_place_orphan): Declare.
7820 (ld_emulation_xfer_type): Add place_orphan field.
7821 * ldemul.c (ldemul_place_orphan): New function.
7822 * ldlang.h (wild_doit): Declare.
7823 * ldlang.c (wild_doit): Make nonstatic.
7824 (lang_place_orphans): Call ldemul_place_orphan.
7825 * emultempl/elf32.em: Include <ctype.h> and "ldgram.h".
7826 (hold_section, hold_use, hold_text, hold_data, hold_bss): New
7827 static variables.
7828 (gld${EMULATION_NAME}_place_orphan): New static function.
7829 (gld${EMULATION_NAME}_place_section): New static function.
7830 (ld_${EMULATION_NAME}_emulation): Initialize place_orphan field.
7831
7832Tue Aug 16 00:17:20 1994 Eric Youngdale (ericy@cais.cais.com)
7833
7834 * scripttempl/aout.sc: Add .linux-dynamic after .data.
7835
7836Tue Aug 16 00:08:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7837
7838 * lexsup.c (parse_args) Treat --dll-verbose as --version, for
7839 Linux compatibility. From hjl@nynexst.com (H.J. Lu).
7840
7841Mon Aug 15 17:17:33 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7842
7843 * ldexp.h (exp_get_abs_int): Declare.
7844
7845Sat Aug 6 01:45:39 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7846
7847 * ldlang.c (lang_do_assignments): Handle complex AT's better.
7848 * ldexp.c (exp_get_abs_int): New function.
7849
7850Fri Aug 5 20:55:55 1994 Jason Molenda (crash@phydeaux.cygnus.com)
7851
7852 * configure.in: add i960-nindy-coff support.
7853
7854Thu Aug 4 14:45:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7855
7856 * ldlex.l (yy_create_string_buffer): Handle change to internal
7857 interface in flex 2.4.7.
7858
7859Tue Aug 2 11:52:06 1994 Eric Youngdale (ericy@cais.cais.com)
7860
7861 * emultempl/linux.em (gld${EMULATION_NAME}_find_address_statement):
7862 New function; add 0x20 to any use of -Ttext.
7863 (gld${EMULATION_NAME}_create_output_section_statements): New
7864 function.
7865 (ld_${EMULATION_NAME}_emulation): Use the new function
7866 gld${EMULATION_NAME}_create_output_section_statements.
7867
7868Mon Aug 1 15:50:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7869
7870 * scripttempl/mips.sc: Redo script to set . outside of sections
7871 and not bother to explicitly specify section addresses.
7872
7873Tue Jul 26 11:02:35 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7874
7875 * scripttempl/elf.sc: Copy several more relocation sections into
7876 the output. Put .got.plt sections into .got.
7877
7878Fri Jul 22 12:15:36 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7879
7880 * scripttempl/elf.sc: Use PROVIDE to define etext, edata, and end.
7881
7882 Add a new script operator, PROVIDE, to define a symbol only if it
7883 is needed.
7884 * ldgram.y (PROVIDE): New token.
7885 (assignment): Accept PROVIDE.
7886 * ldlex.l (PROVIDE): New token.
7887 * ldexp.h (node_type): Add etree_provide to node_class enum.
7888 (exp_provide): Declare.
7889 * ldexp.c (exp_fold_tree): Handle etree_provide.
7890 (exp_provide): New function.
7891 (exp_print_tree): Handle etree_provide.
7892 * ld.texinfo: Document PROVIDE.
7893
7894 * ldlang.c (lang_common): Pass desired alignment to
50bbae35 7895 lang_one_common as power of two.
252b5132
RH
7896 (lang_one_common): Get common symbol alignment from linker hash
7897 table entry. Treat desired alignment as a power of two.
7898
7899 * ldlang.c (wild_section): Attach all section with the given name,
7900 not just the first one. If there is no name, attach all sections
7901 even if the SEC_IS_COMMON flag is set.
7902
7903Wed Jul 20 15:49:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7904
7905 * ld.h (args_type): Add field rpath.
7906 * lexsup.c (S_ISDIR): Define if not already defined.
7907 (parse_args): Add support for -rpath. If -R is used to name a
7908 directory, treat it as -rpath for Solaris compatibility.
7909 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
7910 Pass command_line.rpath to bfd_elf32_size_dynamic_sections.
7911 * ldmain.c (main): Initialize command_line.rpath to NULL.
7912 * ld.texinfo: Document -rpath option.
7913
7914Sun Jul 10 00:33:24 1994 Ian Dall (dall@hfrd.dsto.gov.au)
7915
7916 * emulparams/pc532machaout.sh: New file. Pc532 mach script
7917 parameters.
7918
7919 * emulparams/netbsd532.sh: New file. Netbsd 532 script parameters.
7920
7921 * config/pc532mach.mt: New file. Pc532 mach target support.
7922
7923 * config/pc532mach.mh: New file. Pc532 mach host support.
7924
7925 * config/netbsd532.mt: New file. Netbsd 532 target support.
7926
7927 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd support.
7928
7929 * Makefile.in: Add epcmachaout.c dependency and enetbsd532.c
7930 dependency.
7931
7932Fri Jul 8 10:57:02 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7933
7934 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Use
7935 bfd_abs_section_ptr, not &bfd_abs_section.
7936
7937 * lexsup.c (parse_args): Changed "retain-symbols-file" from
7938 no_argument to required_argument. From djm.
7939
7940Thu Jul 7 12:29:53 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7941
7942 * scripttempl/elf.sc: Explicitly mention .stab and .stabstr
7943 sections to force a VMA of 0; needed for ELF backends which have
7944 not been converted to the new linker style.
7945
7946Mon Jul 4 19:35:45 1994 Jeff Law (law@snake.cs.utah.edu)
7947
7948 * scripttempl/hppaelf.sc (__stack_zero): Don't define this name,
7949 it was for the HPUX dynamic loader's use and it creates problems
7950 with ELF GDB.
7951
7952Fri Jul 1 12:53:47 1994 Jeff Law (law@snake.cs.utah.edu)
7953
7954 * ldlang.c (lang_do_assignments): No longer static. Delete decl.
7955 * ldlang.h (lang_do_assignments): Put external decl here.
7956 * emultempl/hppaelf.em: Minor cleanups throughout file.
7957 (hppa_elf_create_output_section_statements): Rewrite.
7958 (hppaelf_finish): Rewrite.
7959
7960Wed Jun 29 16:50:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7961
7962 * config/solaris2.mh (NATIVE_LIB_DIRS): Define as /usr/ccs/lib.
7963
7964 * lexsup.c (parse_args): Accept -Bstatic and -Bdynamic. Do not
7965 accept plain -B.
7966 * ld.texinfo: -Bstatic is not ignored.
7967
7968Tue Jun 28 12:13:34 1994 Stan Shebs (shebs@andros.cygnus.com)
7969
7970 * ldlex.l: Recognize \r the same as \n.
7971
7972Thu Jun 23 17:53:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7973
7974 Preliminary support for generating shared libraries, from Eric
7975 Youngdale <ericy@cais.cais.com>.
7976 * genscripts.sh: If the emulation parameter file sets
50bbae35 7977 GENERATE_SHLIB_SCRIPT, generate a .xs script file with
252b5132
RH
7978 CREATE_SHLIB defined.
7979 * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): If
7980 link_info.shared is set, use the .xs script file.
7981 * scripttempl/elf.sc: If CREATE_SHLIB is set, don't create a
7982 .interp section, and don't include TEXT_START_ADDR in the starting
7983 address of the first section.
7984 * emulparams/elf_i386.sh (GENERATE_SHLIB_SCRIPT): Likewise.
7985 * emulparams/elf32_sparc.sh (GENERATE_SHLIB_SCRIPT): Define.
7986
7987Thu Jun 23 12:52:22 1994 David J. Mackenzie (djm@rtl.cygnus.com)
7988
7989 * configure.in: Change --with-targets to --enable-targets.
7990
7991Wed Jun 22 13:42:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
7992
7993 * lexsup.c (parse_args): Add support for new options -( -) with
7994 synonyms --start-group --end-group.
7995 * ldlang.h (enum statement_enum): Add lang_group_statement_enum.
7996 (lang_group_statement_type): Define new struct.
7997 (lang_statement_union_type): Add group_statement field.
7998 (lang_enter_group, lang_leave_group): Declare.
7999 * ldlang.c (lang_for_each_statement_worker): Handle
8000 lang_group_statement_enum.
8001 (map_input_to_output_sections, print_statement): Likewise.
8002 (lang_size_sections, lang_do_assignments): Likewise.
8003 (open_input_bfds): Completely rewrite. Now does its own looping,
8004 rather than using lang_for_each_statement. Handle groups.
8005 (lang_process): Update call to open_input_bfds.
8006 (print_group): New static function.
8007 (lang_enter_group, lang_leave_group): New static functions.
8008 * ldfile.c (ldfile_open_file): If the file has already been
8009 opened, just return rather than taking an assertion failure.
8010 * ldver.c (help): Mention new options.
8011 * ld.texinfo: Document new options.
8012
8013 * ldlang.c (end_of_data_section_statement_list): Don't define.
8014 (lang_leave_output_section_statement): Don't set obsolete variable
8015 end_of_data_section_statement_list.
8016
8017 * scripttempl/go32coff.sc: Don't put ${DATA_ALIGNMENT} inside an
8018 ALIGN.
8019
8020 * ldlang.c (lang_size_sections): Adjust current region address
8021 even for sections with an explicit address. From
8022 ralphc@pyramid.com (Ralph Campbell).
8023
8024 * emulparams/i386linux.sh (NONPAGED_TEXT_START_ADDR): Set to 0.
8025 From jrs@world.std.com (Rick Sladkey).
8026
8027 * scripttempl/mipsbsd.sc: Let sections align to their natural
8028 boundaries.
8029
8030Tue Jun 21 11:27:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
8031
8032 * ldlang.c (lang_init): Use new bfd_abs_section_ptr, not
8033 &bfd_abs_section.
8034 (lang_abs_symbol_at_beginning_of): Likewise.
8035 (lang_abs_symbol_at_end_of): Likewise.
8036 (lang_size_sections): Use bfd_is_abs_section to check for the
8037 absolute section. Don't try to set the VMA or output_offset or
8038 size of the absolute section.
8039 * ldmain.c (notice_ysym): Use bfd_is_und_section to check for the
8040 undefined section.
8041
8042Thu Jun 16 22:48:41 1994 Jeff Law (law@snake.cs.utah.edu)
8043
8044 * scripttempl/hppaelf.sc: Place .data and .bss at 0x40000000
8045 when generating relocatable objects.
8046
8047Thu Jun 16 14:25:22 1994 Eric Youngdale (ericy@cais.cais.com)
8048
8049 * emultempl/linux.em: New file providing support for linking
8050 against Linux shared libraries.
8051 * config/i386-linux.mt (ei386linux.c): Depend upon linux.em.
8052 * emulparams/i386linux.sh (TEMPLATE_NAME): Define as linux.
8053
8054Thu Jun 16 12:22:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8055
8056 * lexsup.c (parse_args): Add -shared to longopts, and handle it.
8057 * ldmain.c (main): Initialize link_info.shared to false. Give
8058 error if link_info.relocateable and link_info.shared are both set.
8059
8060 * configure.in: If EMUL_EXTRA* is defined in a config file, treat
8061 it as naming an emulation to be added to EMULATION_OFILES.
8062 * config/i386-linux.mt (EMUL_EXTRA1): Define as elf_i386.
8063
8064 * Makefile.in: Rebuilt dependencies.
8065 (ALL_EMULATIONS): Add ei386linux.o, eelf32_sparc.o,
8066 eelf64_sparc.o. Remove $(OTHER_EMULATIONS).
8067 (ei386linux.c, eelf32_sparc.c, eelf64_sparc.c): New targets.
8068 * config/i386-linux.mt (OTHER_EMULATIONS): Don't define.
8069 (ei386linux.c): Remove; now in Makefile.in.
8070 * config/i386-lynx.mt (OTHER_EMULATIONS): Don't define.
8071 * config/m68k-lynx.mt (OTHER_EMULATIONS): Don't define.
8072 * config/sparc-lynx.mt (OTHER_EMULATIONS): Don't define.
8073 * config/sparc64-elf.mt (OTHER_EMULATIONS): Don't define.
8074 (eelf64_sparc.c): Remove; now in Makefile.in.
8075 * config/sun4sol2.mt (OTHER_EMULATIONS): Don't define.
8076 (eelf32_sparc.c): Remove; now in Makefile.in.
8077
8078 * ldexp.c (exp_print_tree): Don't crash if etree_rel section has
8079 no owner--it might be bfd_abs_section. From Eric Youngdale
8080 <ericy@cais.cais.com>.
8081
8082 * scripttempl/aout.sc: Let sections align to their natural
8083 boundaries.
8084
8085Wed Jun 15 01:54:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8086
8087 * ldemul.h (ldemul_open_dynamic_archive): Declare.
8088 (ld_emulation_xfer_type): Add new field open_dynamic_archive.
8089 * ldemul.c: Include ldexp.h and ldlang.h.
8090 (ldemul_open_dynamic_archive): New function.
8091 * ldfile.h (ldfile_open_file_search): Declare.
8092 * ldfile.c: Include ldemul.h.
8093 (try_open_bfd): Rename from cache_bfd_openr. Return boolean
8094 argument, not bfd *. Change all callers.
8095 (ldfile_open_file_search): Rename from open_a. Return boolean
8096 argument, not bfd *. Clean up. Change all callers.
8097 (ldfile_open_file): If doing a dynamic link, call
8098 ldemul_open_dynamic_archive rather than assuming the extension of
8099 a dynamic object is ".so".
8100 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
8101 New function.
8102 (ld_${EMULATION_NAME}_emulation): Initialize open_dynamic_archive
8103 field.
8104 * emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise.
8105
8106 * ldmain.c (get_emulation): Ignore -m486 for Linux compatibility.
8107 * lexsup.c (parse_args): Ignore -qmagic for Linux compatibility.
8108 Accept -static as a synonym for -non_shared.
8109
8110 Let the user change the dynamic linker used by ELF code.
8111 * ld.h (args_type): Add new field interpreter.
8112 * lexsup.c (parse_args): Add dynamic-linker to longopts, and
8113 handle it.
8114 * ldmain.c (main): Initialize command_line.interpreter to NULL.
8115 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Get
8116 the ELF backend to return the .interp section. If
8117 command_line.interpreter is not NULL, set the contents of .interp
8118 to it.
8119 * ld.texinfo: Mention -dynamic-linker.
8120
8121 * config/sun4sol2.mt (eelf32_sparc.c): Depend upon elf32.em, not
8122 generic.em.
8123
8124 * lexsup.c (parse_args): Sort out the option macros and change the
8125 definitions to make it easier to add a new option.
8126
8127 * scripttempl/aout.sc: Define __etext and __edata to go along with
8128 _etext and _edata.
8129
8130 * ld.h (ld_config_type): Add new field traditional_format.
8131 * lexsup.c (parse_args): Add traditional-format to longopts, and
8132 handle it.
8133 * ldmain.c (main): Initialize config.traditional_format to false.
8134 * ldlang.c (ldlang_open_output): Set BFD_TRADITIONAL_FORMAT in BFD
8135 flags of output_bfd according to config.traditional_format.
8136 * ldver.c (help): Mention -traditional-format.
8137 * ld.texinfo: Document -traditional-format.
8138
8139Tue Jun 14 23:10:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8140
8141 * ldctor.c (ldctor_add_entry): Add entries to a set in the order
8142 they are encountered.
8143
8144Tue Jun 14 18:05:09 1994 Eric Youngdale (ericy@cais.cais.com)
8145
8146 * emulparams/i386linux.sh (TEXT_START_ADDR): Define as 0x1000.
8147 (NONPAGED_TEXT_START_ADDR): Define as 0x20.
8148
8149Mon Jun 13 15:46:09 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8150
8151 * scripttempl/alpha.sc: Define _ftext, _etext and _fdata insted of
8152 _FTEXT, _ETEXT and _FDATA. Dont define _END.
8153
8154 * ldfile.c (open_a): If this is not an archive, try to open it in
8155 the current directory before searching for it.
8156
8157 * lexsup.c (parse_args): Treat -i as a synonym for -r.
8158
8159 * ldgram.y (exp): Treat BLOCK as a synonym for ALIGN, so that
8160 BLOCK works in a section address as documented.
8161
8162 * ldgram.y (YYDEBUG): Don't define.
8163
8164Fri Jun 10 16:45:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8165
8166 * emultempl/gld960.em: Pass false for new argument to
8167 ldfile_add_library_path.
8168 * emultempl/gld960c.em, emultempl/lnk960.em: Likewise.
8169
8170 * emultempl/sunos.em: Only look for .so files if doing a dynamic
8171 link.
8172
8173Thu Jun 9 08:35:17 1994 Ian Lance Taylor (ian@cygnus.com)
8174
8175 * scripttempl/i960.sc: Add CONSTRUCTORS to .data.
8176
8177Thu Jun 9 06:52:29 1994 Bill Cox (bill@rtl.cygnus.com)
8178
8179 * Makefile.in (check): Delete ld.new dependency so that a regression
8180 test doesn't trigger a rebuild of the linker.
8181
8182Thu Jun 9 00:17:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8183
8184 * ldlang.c (map_input_to_output_sections): For lang_address, call
8185 init_os if it hasn't already been called.
8186
8187Thu Jun 2 17:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8188
8189 Add support for SunOS shared libraries.
8190 * aout.sc: Don't define __DYNAMIC here. Add new sections used by
8191 shared library support code.
8192 * emultempl/sunos.em: New file.
8193 * emulparams/sun4.sh (TEMPLATE_NAME): Define as sunos.
8194 * emulparams/sun3.sh (TEMPLATE_NAME): Likewise.
8195 * Makefile.in (esun4.c): Depend upon sunos.em, not generic.em.
8196 (esun3.c): Likewise.
8197
8198 * ldlang.c: Minor formatting cleanups.
8199 (lang_for_each_input_file): New function.
8200 * ldlang.h (lang_for_each_input_file): Declare.
8201
8202 * ldfile.h (search_dirs_type): Move from ldfile.c, and add cmdline
8203 field.
8204 (search_head): Declare.
8205 (ldfile_add_library_path): Add new cmdline argument in prototype.
8206 * ldfile.c (search_head): Make non-static.
8207 (search_dirs_type): Move to ldfile.h.
8208 (ldfile_add_library_path): Accept cmdline argument, and save it.
8209 * lexsup.c (parse_args): Pass true for new cmdline argument of
8210 ldfile_add_library_path.
8211 (set_default_dirlist): Likewise.
8212 * ldmain.c (check_for_scripts_dir): Pass false for new cmdline
8213 argument of ldfile_add_library_path.
8214 * ldgram.y (ifile_p1): Likewise.
8215
8216Wed Jun 1 14:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8217
8218 * ldlang.h (lang_input_statement_type): Remove fields subfiles,
8219 total_size, superfile and chain.
8220 * ldfile.c (open_a): Don't clear search_dirs_flag.
8221 (ldfile_open_file): Don't try to open superfile. Assert that file
8222 has not already been opened.
8223 * ldlang.c (new_afile): Don't initialize superfile.
8224 * ldmain.c (add_archive_element): Don't initialize subfiles or
8225 chain or superfile. Initialize search_dirs_flag to false.
8226
8227Fri May 27 12:25:33 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8228
8229 * ldver.c (ldversion): Changed version to "cygnus-2.4.1".
8230
8231 Changes from binutils-2.4 release:
8232
8233 * genscripts.sh (RELOCATING, CONSTRUCTING): When setting
8234 variables, use whitespace, so scripts don't break.
8235
8236 * config/alphaosf.mh (HDEFINES, CFLAGS): Deleted.
8237
8238 * emultempl/generic.em: Find emultempl/stringify.sed in ${srcdir}.
8239
8240 * cdtest-bar.cc: Renamed from cdtest-func.cc.
8241 * Makefile.in: Noted change.
8242
8243 * scripttempl/a29k.sc: Don't include /lab3/u3/..../segments.o; I
8244 don't know where that's supposed to come from, or why it's
8245 necessary.
8246
8247 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
8248
8249 * configure.bat: update to latest makefile.in
8250 * emulpara/go32.sh: set to coff-go32 not aout
8251 * emultemp/generic.em: strength-reduce the structure of
8252 this shell script, since the only available shell for
8253 DOS can't handle complex syntax.
8254 * emultemp/stringify.sed: for "sed -f" instead of inline.
8255 * makefile.in: depend on stringify.sed as well as genscripts.sh
8256 * scripttemp/go32coff.sc: correct for djgpp 1.11's COFF format
8257 * genscripts.sh: empty variables aren't always considered "set",
8258 so set them to "y" instead.
8259
8260Fri May 27 01:08:14 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8261
8262 * ldlang.c (entry_symbol): Make static.
8263 (lang_add_entry): Add cmdline argument.
8264 * ldlang.h (lang_add_entry): Change prototype.
8265 * ldgram.y (statement_anywhere): Change lang_add_entry call.
8266 * lexsup.c (parse_args): Likewise.
8267
8268Tue May 24 16:13:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8269
8270 * emulparams/elf32mipb.sh (OTHER_READONLY_SECTIONS): Don't give
8271 .reginfo an address.
8272 (OTHER_READWRITE_SECTIONS): Don't give .lit4 or .lit8 an address.
8273 (OTHER_SECTIONS): Define for .gptab.sdata and .gptab.sbss.
8274 * scripttempl/elf.sc: Use OTHER_SECTIONS at end of script.
8275
8276Thu May 19 13:31:33 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8277
8278 Add support for ELF shared libraries.
8279 * ld.h (ld_config_type): Add field dynamic_link.
8280 * ldmain.c (main): Initialize config.dynamic_link to false. Warn
8281 on attempts to use -r with -relax, -call_shared or -s.
8282 * lexsup.c (longopts): Separate OPTION_CALL_SHARED from
8283 OPTION_NON_SHARED. Add OPTION_IGNORE. Adjust macro values
8284 accordingly. Add "dy" and "non_shared" options. Change "Qy" to
8285 OPTION_IGNORE for now. Handle OPTION_CALL_SHARED and
8286 OPTION_NON_SHARED by setting dynamic_link field accordingly.
8287 Handle OPTION_IGNORE by ignoring it. Clear dynamic_link field for
8288 -r and -Ur.
8289 * ldfile.c (ldfile_open_file): If config.dynamic_link is true, try
8290 opening a file with a .so extension first.
8291 * emultempl/elf32.em: New file.
8292 * emulparams/elf32_sparc.sh (TEXT_START_ADDR): Change to 0x10000.
8293 (NONPAGED_TEXT_START_ADDR): Likewise.
8294 (TEMPLATE_NAME): Define as elf32.
8295 (DATA_PLT): Define.
8296 * emulparams/elf_i386.sh (TEMPLATE_NAME): Define as elf32.
8297 * scripttempl/elf.sc: Add placement for new dynamic sections.
8298 Don't use CREATE_OBJECT_SYMBOLS. Define _etext, _edata and _end
8299 outside of any section. Don't use ALIGN(8); just let one section
8300 VMA follow another. Put .dynbss in .bss. Don't mention debugging
8301 sections; they'll be handled correctly anyhow.
8302 * Makefile.in (eelf_i386.c): Depend upon elf32.em, not generic.em.
8303
8304Wed May 18 10:15:39 1994 Ian Lance Taylor (ian@cygnus.com)
8305
8306 * Makefile.in (install): Redirect output of ln to /dev/null.
8307
8308Mon May 16 13:35:08 1994 Jeff Law (law@snake.cs.utah.edu)
8309
8310 * emultempl/hppaelf.em: Change all references of
8311 .hppa_linker_stubs to .PARISC.stubs.
8312 * scripttempl/hppaelf.sc: Likewise.
8313
8314Fri May 13 13:00:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8315
8316 * ldlang.c (print_output_section_statement): Change ``no attached
8317 output section'' message slightly.
8318 (lang_do_assignments): Don't recurse down if there is no real
8319 section.
8320
8321 * config/i386-linux.mt (OTHER_EMULATIONS): Change em_ to e to
8322 match corresponding change in emulation templates.
8323 * config/i386-lynx.mt, config/m68k-lynx.mt: Likewise.
8324 * config/sparc-lynx.mt, config/sun4sol2.mt: Likewise.
8325
8326Wed May 11 18:16:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8327
8328 * ldver.c (ldversion): Updated version number.
8329
8330 * cdtest-foo.cc: Use explicit "#pragma implementation".
8331 * cdtest-bar.cc: Renamed from cdtest-func.cc.
8332 * Makefile.in: References to cdtest-func.o changed to
8333 cdtest-bar.o.
8334
8335Wed May 11 16:24:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8336
8337 Don't create unnecessary output sections.
8338 * ldlang.c (out_bfd_get_section_by_name): Remove.
8339 (wild_section): Call bfd_get_section_by_name rather than
8340 our_bfd_get_section_by_name. Don't call wild_doit if there is no
8341 section.
8342 (lang_create_output_section_statements): Remove.
8343 (map_input_to_output_sections): For several cases, call init_os if
8344 it has not already been called.
8345 (lang_size_sections): If output section was not created, skip it.
8346 (lang_process): Don't call lan_create_output_section_statements.
8347 (lang_place_orphans): Skip files with just_syms_flags set to true.
8348 * ld.texinfo: Document change.
8349
8350Tue May 10 14:31:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8351
8352 * ldlang.c (wild_doit): Don't bother initializing the vma and
8353 section size. Don't special case SEC_SHARED_LIBRARY.
8354 (lang_size_sections): Handle SEC_COFF_SHARED_LIBRARY sections
8355 specially.
8356
8357Fri May 6 12:24:27 1994 Steve Chamberlain (sac@cygnus.com)
8358
8359 * config/go32.mh : New file for Xgo32X.
8360
8361Fri May 6 15:15:35 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8362
8363 * ldfile.c (ldfile_open_command_file): Set bfd_error_system_call
8364 before calling einfo, since we are reporting an fopen failure.
8365 From jrs@world.std.com (Rick Sladkey).
8366
8367 * configure.in: Use "e" rather than "em_" as prefix for
8368 emulations.
8369
8370Fri May 6 01:08:14 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
8371
8372 * emultempl/generic.em: Use "e" rather than "em_" as prefix for
8373 filename.
8374 * emultempl/gld960.em, emultempl/gld960c.em, emultempl/lnk960.em,
8375 emultempl/hppaelf.em, emultempl/m88kbcs.em, emultempl/vanilla.em:
8376 Ditto.
8377 * Makefile.in: Changed all generated file names.
8378 (ldemul-list.h): Depend on Makefile, not config.status. Changed
8379 sed patterns to handle new filenames.
8380
8381 * config/mipsl-idt.mt: Renamed from mips-idtl.mt.
8382 * configure.in: Adjusted.
8383
8384Thu May 5 15:07:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8385
8386 * Makefile.in (install-info): Don't use "$<*", it doesn't always
8387 work. Instead, check build dir and $srcdir explicitly, and use
8388 `echo' to get all the filenames.
8389
8390 * configure.in (h8300h-*-hms): Changed ld_target name to
8391 cf-h8300h.
8392 * config/cf-h8300h.mt: Renamed from coff-h8300h.mt, to make it
8393 unique in 8.3.
8394
8395 * config/i960coff.mt: New file.
8396 * emulparams/gld960coff.sh: New file.
8397 * emultempl/gld960c.em: New file.
8398 * configure.in (i960-*-vxworks5* except -vxworks5.0*): Use
8399 i960coff configuration.
8400 * Makefile.in (em_gld960coff.c): Added dependencies, build rule.
8401
8402 * Makefile.in (ALL_EMULATIONS): Remove em_delta68.o, since the
8403 code isn't included in FSF releases, and it can still be
8404 explicitly selected.
8405 (distclean): Remove site.bak and tmpdir.
8406 (STAGESTUFF): Removed $(GENERATED_CFILES) $(GENERATED_HFILES).
8407 (mostlyclean): Delete them explicitly here. Also remove tmpdir.
8408
8409 Patches from Ralph Campbell:
8410 * config/mipsbsd.mh: New file.
8411 * Makefile.in (em_mipsbsd.c): Use mipsbsd.sc, not aout.sc.
8412 * scripttempl/mipsbsd.sc: Don't define __DYNAMIC.
8413 * emulparams/mipsbsd.sh (OUTPUT_FORMAT): Fix name to have `a.out'
8414 instead of `aout'.
8415
8416 * configure.in (i386-*-gnu*): Treat like i386-*-mach*.
8417
8418Wed May 4 11:59:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8419
8420 * config/m68k.mt (EMUL): Set to m68kaout.
8421 * emulparams/m68kaout.sh: New file.
8422 * Makefile.in (ALL_EMULATIONS): Add em_m68kaout.o.
8423 (em_m68kaout.c): New target.
8424
8425 * ldlang.c (lang_size_sections): If dot moves because of an
8426 assignment, don't try to insert a pad into the absolute output
8427 section, just change the address of the default memory region
8428 instead.
8429
8430 * Makefile.in (mostlyclean): Remove cdtest.tmp, cdtest-ur,
8431 cdtest-ur.out, and cdtest-ur.tmp.
8432
8433Wed Apr 27 16:03:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8434
8435 * scripttempl/sa29200.sc: Align all sections to four byte
8436 boundaries.
8437
8438Wed Apr 27 10:48:03 1994 Steve Chamberlain (sac@cygnus.com)
8439
8440 * Makefile.in, configure.in: Support for go32 coff.
8441 * config/i386-go32.mt: New file
8442 * emulparams/i386go32.sh: New file
8443 * scripttempl/i386go32.sc: New file
8444
8445Tue Apr 26 17:20:03 1994 Stan Shebs (shebs@andros.cygnus.com)
8446
8447 * Makefile.in (em_m68klynx.c, em_i386lynx.c, em_sparclynx.c): Use
8448 Lynx-specific script templates.
8449 * configure.in (sparclite*-*-coff): Use coff-sparc.
8450 * emulparams/i386lynx.sh (SCRIPT_NAME): Set to i386lynx.
8451 * emulparams/sparclynx.sh (SCRIPT_NAME): Set to sparclynx.
8452 (ENTRY): Set to __main.
8453 * scripttempl/i386lynx.sc: New file, script for I386 Lynx.
8454 * scripttempl/m68klynx.sc: Add insertion of ctor/dtor sections.
8455 * scripttempl/sparclynx.sc: New file, script for uSparc Lynx.
8456
8457Tue Apr 26 12:41:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8458
8459 * scripttempl/mips.sc: Force _gp and .lit8 to be aligned to a 16
8460 byte boundary, in case the global constructors do not take up an
8461 even 16 bytes.
8462
8463 * config/i386v4.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
8464 exist, get crtbegin based on gcc -print-libgcc-file-name.
8465 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
8466
8467Mon Apr 25 15:27:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8468
8469 * ldlang.c (lang_size_sections): When no address is given for a
8470 section, align it according to its requirements.
8471
8472Thu Apr 21 17:24:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8473
8474 * Makefile.in (clean, distclean): Remove configdoc.texi.
8475
8476Tue Apr 19 12:12:15 1994 Bill Cox (bill@rtl.cygnus.com)
8477
8478 * configure.in: Add i[34]86-*-bsd386 to the patterns recognized.
8479
8480Fri Apr 15 14:35:42 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8481
8482 * ldlang.c (lang_size_sections): When relaxing, adjust the
8483 position of a padding statement, and adjust dot accordingly.
8484
8485Mon Apr 11 17:37:09 1994 Bill Cox (bill@rtl.cygnus.com)
8486
8487 * Makefile.in (EXPECT, RUNTEST): Set these for the check goal.
8488
8489Mon Apr 11 12:32:57 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8490
8491 * scripttempl/i386coff.sc: If relocating, don't put .init and
8492 .fini sections into .text; keep them separate.
8493 * config/i386sco.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
8494 exist, get crtbegin based on gcc -print-libgcc-file-name.
8495 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
8496
8497Mon Apr 11 10:31:00 1994 Bill Cox (bill@rtl.cygnus.com)
8498
8499 * Makefile.in (check): Set TCL_LIBRARY for runtest.
8500
8501Wed Apr 6 00:09:37 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8502
8503 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
8504 manufacturer.
8505
8506 * emultempl/hppaelf.em (hppaelf_finish): Only resize sections
8507 if building a final executable.
8508
8509Tue Apr 5 12:17:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8510
8511 * ldmain.c (main): Check the return value of bfd_close.
8512
8513Thu Mar 31 18:07:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8514
8515 * scripttempl/alpha.sc: Clean up section alignment to ensure that
8516 sections never overlap when using -r.
8517
8518Wed Mar 30 15:51:15 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8519
8520 * ldmisc.c (vfinfo): Change symbol reading slightly for recent BFD
8521 changes: get_symtab_upper_bound renamed and returns long,
8522 bfd_canonicalize_symtab returns long, check for error indications.
8523
8524Fri Mar 25 17:20:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8525
8526 * ldlang.c (print_input_section): For section size, use
8527 _cooked_size if it is non-zero, size otherwise.
8528 (size_input_section): Likewise.
8529 (lang_do_assignments): Likewise (case lang_input_section_enum).
8530
8531Thu Mar 24 15:20:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8532
8533 * ldlang.c (new_afile): Add new argument add_to_list. Don't set
8534 real to true for lang_input_file_is_marker_enum. Clear the_bfd.
8535 (lang_add_input_file): Pass true to new_afile for add_to_list.
8536 (lookup_name): Remove force_load argument. Changed all callers.
8537 Pass false to new_afile for add_to_list. Split loading of symbols
8538 out into separate function.
8539 (load_symbols): New function split out of lookup_name. Don't load
8540 the symbols if they are already loaded.
8541 (open_input_bfds): For lang_input_statement_enum call load_symbols
8542 rather than lookup_name.
8543 (lang_process): Pass abs_output_section rather than NULL to
8544 lang_size_sections.
8545 (lang_startup): Set real field of first_file to true.
8546
8547Wed Mar 23 14:15:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8548
8549 * ldlang.c (had_relax): Removed.
8550 (relax_again): New static variable.
8551 (lang_size_sections): Change call to bfd_relax_section to
8552 correspond to BFD changes. Set relax_again appropriately.
8553 (lang_process): Remove #if 0 code. When relaxing, keep calling
8554 lang_do_assignments and lang_size_sections until relax_again
8555 becomes false.
8556
8557 * emultemp/gld960.em: Include libiberty.h
8558 (gld960_before_parse): Pass NULL as final argument to concat.
8559
8560Tue Mar 22 13:08:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8561
8562 * scripttempl/aout.sc: Force _end and __end to be aligned to a
8563 four byte boundary.
8564
8565 * ldwrite.c (build_link_order): Handle lang_data_statement_enum by
8566 building a bfd_data_link_order, rather than by setting the section
8567 contents immediately.
8568
8569Mon Mar 21 18:28:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8570
8571 Changes to make -Ur work again.
8572 * ldmain.c (add_to_set): Now takes reloc argument rather than
8573 bitsize. Check config.build_constructors here. If an new hash
8574 table entry is created, mark it as undefined.
8575 (constructor_callback): No longer takes bitsize argument. Pass
8576 BFD_RELOC_CTOR to ldctor_add_set_entry, but first make sure the
8577 BFD backend supports it.
8578 (reloc_overflow): Handle a NULL abfd argument.
8579 (reloc_dangerous, unattached_reloc): Likewise.
8580 * ldctor.c: Include ldmain.h.
8581 (struct set_info): Change bitsize field to reloc.
8582 (ldctor_add_set_entry): Now takes reloc argument rather than
8583 bitsize. Don't bother to check config.build_constructors here.
8584 (ldctor_build_sets): Get the size from the reloc howto. If
8585 generating relocateable output, call lang_add_reloc rather than
8586 lang_add_data.
8587 * ldctor.h (ldctor_add_set_entry): Change declaration to use reloc
8588 instead of bitsize.
8589 * ldlang.h (statement_enum): Add lang_reloc_statement_enum.
8590 (lang_reloc_statement_type): New structure.
8591 (lang_statement_union_type): Add reloc_statement field.
8592 (lang_add_reloc): Declare new function.
8593 * ldlang.c (lang_for_each_statement_worker): Handle
8594 lang_reloc_statement_enum.
8595 (map_input_to_output_sections, print_statement): Likewise.
8596 (lang_size_sections, lang_do_assignments): Likewise.
8597 (print_reloc_statement): New function.
8598 (lang_add_reloc): New function.
8599 * ldwrite.c (build_link_order): Handle lang_reloc_statement_enum.
8600
8601 * Makefile.in (cdtest.out, cdtest-ur.o): New targets.
8602 (cdtest-ur, cdtest-ur.out): New targets.
8603 (check-cdtest): Now also check that -Ur works correctly.
8604
8605 * scripttemp/alpha.sc: Align all sections to 16 byte boundaries.
8606
8607Thu Mar 17 12:45:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8608
8609 * ldlang.c (lang_process): Move lang_common call before
8610 map_input_to_output_sections, to ensure that any alignment
8611 constraints set by common symbols are copied over to the output
8612 sections.
8613
8614Fri Mar 11 22:17:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8615
8616 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Don't define.
8617 (OTHER_READWRITE_SECTIONS): Rename .toc to .got.
8618 * Makefile.in (em_elf32ppc.c): Depend upon generic.em, not ppc.em.
8619 * emultempl/ppc.em: Remove ugly stub code; turns out not to be
8620 needed for ELF.
8621
8622Tue Mar 8 04:22:27 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8623
8624 * config/i386bsd.mh: New file.
8625
8626Mon Mar 7 15:23:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8627
8628 * elf.sc: Permit TEXT_START_SYMBOLS and DATA_START_SYMBOLS to be
8629 defined.
8630 * emulparams/elf32mipb.s (TEXT_START_SYMBOLS): Define _ftext.
8631 (DATA_START_SYMBOLS): Define _fdata.
8632
8633Mon Feb 28 10:59:14 1994 Stan Shebs (shebs@andros.cygnus.com)
8634
8635 * ldlang.c (cat): Define using ANSI style if ALMOST_STDC defined.
8636
8637Sun Feb 27 16:29:38 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8638
8639 * emultempl/hppaelf.em (hppaelf_finish): Update comments. This
8640 works again. Attach some output symbols to the stub file bfd.
8641
8642 * emultempl/hppaelf.em: Include elf32-hppa.h.
8643 (file_chain): Add decl.
8644 (hppa_look_for_stubs_in_section): Delete decl.
8645 (hppaelf_finish): Reenable code. Do not pass symbols
8646 down to hppa_look_for_stubs_in_section.
8647
8648Sat Feb 26 10:58:25 1994 Ian Lance Taylor (ian@cygnus.com)
8649
8650 * ldmain.c (write_map): Don't define. Removed all references.
8651 Just use map_file or map_filename instead.
8652 (add_archive_element): Use minfo to write map information, not
8653 info_msg.
8654 (constructor_callback): Use fprintf to write map information, not
8655 info_msg.
8656 * ldmain.h (write_map): Don't declare.
8657 * ldgram.y (mri_script_command): Removed reference to write_map.
8658 * ldlang.c (lang_one_common): Likewise.
8659 * lexsup.c (parse_args): Likewise.
8660
8661Fri Feb 25 19:12:03 1994 Ian Lance Taylor (ian@cygnus.com)
8662
8663 * scripttempl/elf.sc: Force all sections to be aligned.
8664
8665 * ldgram.y (section): Reverse the order of memspec_opt and
8666 fill_opt to avoid an ambiguity when both are used.
8667 * ld.texinfo: Changed accordingly.
8668
8669 * ldgram.y: Move include of ldlex.h back with other includes.
8670 * ldlex.h (input_type): Don't initialize enum constants to
8671 particular values.
8672 * ldlex.l: Use a switch to return the right token based on
8673 input_type, rather than knowing that input_type has a value based
8674 on a token type.
8675
8676 * ldgram.y (dirlist_ptr): Removed; not used.
8677 * lexsup.c: Include ldver.h.
8678 * Makefile.in: Rebuilt dependencies.
8679
8680Fri Feb 25 18:55:54 1994 Ted Lemon (mellon@pepper.ncd.com)
8681
8682 * ldlang.c (lookup_name): don't call bfd_set_gp_size.
8683 (ldlang_add_file): call it here instead.
8684
8685Fri Feb 25 18:13:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8686
8687 * ldgram.y: Include ldlex.h after %token decls, for byacc.
8688
8689Fri Feb 25 10:47:25 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8690
50bbae35 8691 * emultempl/hppaelf.em: First attempt to clean this file up.
252b5132
RH
8692 Add comments in several functions as to their purpose and
8693 how they function (or my current best guess). Clean up horrible
8694 spacing and indention that never should have been accepted in the
8695 first place. Add FIXMEs for issues which need to be resolved.
8696 Disable linker-stub generation until it gets fixed. This allows
8697 the linker to at least work on simple code for testing purposes.
8698
8699 * ldlang.c (lang_size_sections): No longer static (PA ELF calls
8700 it via hppaelf_finish). Prototype moved into ldlang.h.
8701 (lang_process): Move problematic extra call to lang_size_sections
8702 into the PA ELF specific code.
8703 * emultempl/hppaelf.em (hppaelf_finish): Extra call to
8704 lang_size_sections moved here.
8705
8706Thu Feb 24 16:47:33 1994 Ian Lance Taylor (ian@cygnus.com)
8707
8708 * configure.in (powerpc-*-elf*): New target; use ppc-elf32.
8709 * config/ppc-elf32.mt: New file.
8710 * emulparams/elf32ppc.sh: New file.
8711 * emultempl/ppc.em: New file.
8712 * Makefile.in (ALL_EMULATIONS): Added em_elf32ppc.o.
8713 (em_elf32ppc.c): New target; uses elf32ppc.sh, ppc.em and elf.sc.
8714 (EMULATION_OFILES): Added dependencies on ldexp.h and ldlang.h.
8715
8716Thu Feb 24 12:27:07 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8717
8718 * lexsup.c (parse_args): Use symbolic numbers for long options.
8719 Fix misunderstanding in -Y and -call_shared et al.
8720
8721 Use getopt instead of lex and yacc to parse the command line.
8722
8723 * ld.texinfo (Options): Document changes to option syntax.
8724 * Makefile.in: Update dependencies.
8725 * ldver.c (help): Tweak dashes in usage message.
8726 * ldgram.y (%union): Remove unused members.
8727 Remove %tokens for command line options; add ones for input types.
8728 (command_line): Rules removed.
8729 (file): Instead of command line, recognize an
8730 input type indicator, then use the nonterminal for that type.
8731 (defsym_expr): New nonterminal from code formerly in command_line.
8732 * ldlex.h: Declare parser input type enum and variable.
8733 Don't declare parse_line.
8734 * ldlex.l: Remove unused variables. Make some used ones static
8735 and comment them.
8736 (COMMAND): Start state and its rules removed.
8737 At start of yylex, return input state token if at start of input.
8738 (lex_redirect): Don't need to set yyout.
8739 (ldlex_command): Function removed.
8740 * ldmain.c (main): Instead of calling parse_line, set up the
8741 redirections and call yyparse directly.
8742 * ldmisc.c (vfinfo): If there's no input filename, print nothing, not
8743 "command line".
8744 * lexsup.c: Remove #if 0'd code.
8745 (parse_line): Function removed.
8746 (parse_args): Rewrite to use getopt_long_only.
8747 (set_default_dirlist): New function from code formerly in
8748 ldgram.y:command_line.
8749 (set_section_start): New function.
8750 * emultempl/generic.em, emultempl/gld960.em, emultempl/hppaelf.em,
8751 emultempl/lnk960.em, emultempl/m88kbcs.em: Don't enclose
8752 compiled-in link scripts in "{" and "}", as the grammar no longer
8753 wants them to be.
8754
8755Thu Feb 24 08:43:26 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
8756
8757 * Makefile.in (ld.dvi): Depend on configdoc.texi, but don't
8758 require that it be in $(srcdir).
8759
8760Tue Feb 22 09:21:18 1994 Ian Lance Taylor (ian@cygnus.com)
8761
8762 * ldlang.c (lang_size_sections): Only align section to alignment
8763 required by linker script, not to maximum alignment of input
8764 sections.
8765
8766 * ldlang.h (largest_section): Don't declare.
8767 * ldlang.c (largest_section): Don't define.
8768 (size_input_section): Don't set largest_section; not used.
8769
8770Mon Feb 21 15:15:29 1994 Ian Lance Taylor (ian@cygnus.com)
8771
8772 * ldlang.c (new_afile): Pass NULL as last argument to concat.
8773
8774Thu Feb 17 15:51:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8775
8776 * ldlang.c, ldmain.c: Include libiberty.h.
8777
8778 * ldmisc.h (concat): Don't declare.
8779 * ldmisc.c (concat): Don't define; just use the one in libiberty.
8780
8781 * ld.h (as_output_section_statement): Removed; not used.
8782
8783Thu Feb 17 09:32:14 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8784
8785 * ldlang.c, ldmain.c, ldmisc.c: Use bfd_get_error and
8786 bfd_set_error and new error names.
8787
8788Tue Feb 15 20:14:53 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8789
8790 * ldwrite.c (build_link_order): If the cooked size of the section
8791 has been set, use it, for determining link_order size.
8792 (ldwrite): In the error message displayed if bfd_final_link fails,
8793 indicate that it was in fact the final link step that failed.
8794
8795 * ldlang.c (lang_size_sections): Clear bfd_error before calling
8796 bfd_relax_section, in case it returns false but doesn't flag an
8797 error. If an error is returned, indicate which one it is in the
8798 error message.
8799
8800 * Makefile.in (install-info): Depend on ld.info, and use "$<*" so
8801 it'll get picked up from $(srcdir) if appropriate.
8802
8803Tue Feb 15 16:32:04 1994 David J. Mackenzie (djm@rtl.cygnus.com)
8804
8805 * scripttempl/aout.sc: Only pad .text if PAD_TEXT is set.
8806 * emulparams/i386mach.sh (PAD_TEXT): Set PAD_TEXT.
8807
8808Fri Feb 11 17:02:49 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8809
8810 * ldlex.l (comment): Increment line number when newline is read.
8811
8812Fri Feb 11 17:36:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8813
8814 * ldlang.c (lookup_name): Take new argument, force_load. If true,
8815 reload the file even if it is already loaded.
8816 (wild): Call lookup_name with force_load argument of 0.
8817 (open_input_bfds): Call lookup_name with force_load argument of 1.
8818 (print_symbol): Remove declaration of non-existent function.
8819 (print_one_symbol): Return true rather than falling off end.
8820
8821Thu Feb 10 11:52:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8822
8823 * ldmain.c (main): Use %ld when printing long values.
8824
8825 * scripttempl/elf.sc: Move _edata after the .sdata section.
8826 Permit OTHER_BSS_SYMBOLS to be defined.
8827 * emulparams/elf32mipb.s (OTHER_BSS_SYMBOLS): Define _fbss.
8828
8829Mon Feb 7 16:31:15 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8830
8831 * Rename all "hppaosf" files to "hppaelf".
8832 * Change all "osf" references to "elf" in hppaelf files.
8833 * Makefile.in: Likewise.
8834 * configure.in: Likewise.
8835
8836Sun Feb 6 20:31:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8837
8838 * ldmain.c (main): Call xatexit, not atexit.
8839 Call xmalloc_set_program_name.
8840
8841 * ldlang.c (lang_size_sections): Check if bfd_relax_section set
8842 bfd_errno.
8843
8844Sat Feb 5 03:54:34 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8845
8846 * emultempl/lnk960.em (append), emultempl/hppaosf.em
8847 (hppaosf_finish): Call xmalloc, not ldmalloc.
8848 * ldmain.c (preserve_output): Function removed.
8849 (main): Do it here instead.
8850
8851Fri Feb 4 23:02:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
8852
8853 * ldlang.h (LANG_FOR_EACH_{INPUT,OUTPUT}_SECTION): Delete (unused)
8854 GNU C specific macros.
8855
8856 * emultempl/hppaosf.em (hppaosf_finish): Expand the only remaining
8857 call to LANG_FOR_EACH_INPUT_SECTION.
8858
8859Fri Feb 4 16:26:08 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8860
8861 * ldmisc.c (ldmalloc, xmalloc, ldrealloc, xrealloc): Functions
8862 deleted; will use libiberty versions instead.
8863 * ldctor.c ldfile.c ldlang.c ldmain.c ldmisc.c ldmisc.h lexsup.c
8864 mri.c Makefile.in: Change callers.
8865
8866 * ldmisc.c (vfinfo): Remove cleanup code.
8867 * ldmain.c (remove_output): Put it here (new function).
8868 (preserve_output): New function.
8869 (main): Register remove_output and preserve_output with atexit.
8870 * ldmain.c ldgram.y: Call xexit instead of exit.
8871 * ldmisc.h: Declare xexit.
8872
8873Fri Feb 4 15:19:01 1994 Steve Chamberlain (sac@cygnus.com)
8874
8875 * Makefile.in: Lots of new H8/500 memory models.
8876
8877Sun Jan 30 14:33:40 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8878
8879 * ldlex.l: Removed duplicate rules.
8880 (yywrap): Provide default definition, needed with some versions of
8881 flex.
8882
8883Fri Jan 28 09:12:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8884
8885 * ldmisc.c (vfinfo): For `%I', if the file is in an archive, print
8886 the archive filename too.
8887
8888 * ldlex.l: Add rule to catch invalid input characters instead of
8889 printing them. Include "ldmain.h" for program_name decl.
8890 (lex_warn_invalid): New function.
8891 * Makefile.in: Add dependency.
8892
8893Fri Jan 28 12:58:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
8894
8895 * Makefile.in (check): Don't bother running any tests of
8896 cross-linker until the test suite no longer assumes native mode.
8897
8898Thu Jan 27 17:19:54 1994 Steve Chamberlain (sac@jonny.cygnus.com)
8899
8900 * ldlang.c (print_one_symbol, print_input_section): Print
8901 global symbols in symbol table again.
8902
8903Thu Jan 27 12:35:01 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8904
8905 * ldmain.c ldmain.h ldgram.y: If -v -V or --version was given,
8906 exit successfully instead of complaining if no input files are
8907 given.
8908
8909Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)
8910
8911 * Makefile.in: Format variable definitions consistently.
8912 (LD_PROG): Remove unnecessary variables from link command,
8913 change variable LOADLIBES to EXTRALIBS.
8914
8915 * ldmain.c (main): Compute and display total execution time.
8916 * ld.texinfo (-stats): Document the option.
8917
8918Mon Jan 24 12:56:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8919
8920 * ldmain.c (reloc_overflow): Added name, reloc_name and addend
8921 arguments.
8922
8923 * ldlang.c (lookup_name): Set BFD GP size to -G argument value
8924 after opening BFD.
8925
8926 * ldlang.c (relaxing): Removed global variable.
8927 (lang_size_sections): If the canonical symbols have not already
8928 been read in, read them in before relaxing.
8929 * ldlang.h (relaxing): Removed declaration.
8930
8931Fri Jan 21 00:44:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8932
8933 * ldlang.c (new_afile): Initialize loaded field to false.
8934 (lookup_name): If file was already loaded, don't call the
8935 add_symbols entry point again.
8936
8937Wed Jan 19 13:57:00 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8938
8939 * ld.texinfo: Clarify what -T option does.
8940
8941Tue Jan 18 16:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
8942
8943 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that's
8944 for a.out.
8945
8946Tue Jan 11 13:22:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8947
8948 * ldmain.c (add_archive_element): If trace_files or
8949 trace_file_tries, print file name.
8950 * ldlang.c (lookup_name): Likewise.
8951 (ldlang_add_file): Don't put files on input_bfds list in reverse
8952 order.
8953
8954 * scripttempl/elf.sc: Correct typo.
8955
8956Mon Jan 10 19:49:05 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8957
8958 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y and
8959 their arguments optional, for compatibility with the old GNU ld.
8960
8961Fri Jan 7 20:00:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8962
8963 * scripttempl/elf.c: Define __bss_start before the .sbss section.
8964
8965Thu Jan 6 00:13:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8966
8967 * ldmain.c (add_to_set): Add bitsize argument.
8968 (constructor_callback): New function.
8969 (link_callbacks): Add constructor_callback.
8970 * ldctor.c (struct set_info): Add bitsize field.
8971 (ldctor_add_set_entry): Add bitsize argument.
8972 (ldctor_build_sets): Base the size of the elements of the set on
8973 the bitsize, rather than always using LONG.
8974 * ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
8975
8976 * ld.h (QUAD_SIZE): Define.
8977 * ldgram.y (QUAD): New token.
8978 (length): Handle it.
8979 * ldlex.l: Return QUAD.
8980 * lexsup.c (keywords): Add QUAD.
8981 * ldwrite.c (build_link_order): Handle QUAD.
8982 * ldlang.c (print_data_statement): Handle QUAD.
8983 (lang_size_sections): Likewise.
8984 (lang_do_assignments): Likewise.
8985 * ldexp.c (exp_print_token): Add QUAD to table.
8986 * ld.texinfo: Describe QUAD.
8987
8988 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
8989 since the Alpha doesn't use them.
8990
8991Wed Jan 5 17:42:16 1994 David J. Mackenzie (djm@thepub.cygnus.com)
8992
8993 * ldemul.h (ld_emulation_xfer_struct): Comment the members.
8994
8995Sat Jan 1 13:39:31 1994 Rob Savoye (rob@darkstar.cygnus.com)
8996
8997 * Makefile.in, configure.in: Add support for VSTa micro-kernel.
8998 * config/vsta.mt, emulparams/vsta.sh: New files for VSTa.
8999
9000Sat Jan 1 10:53:35 1994 David J. Mackenzie (djm@thepub.cygnus.com)
9001
9002 * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
9003 needed for i386mach. (Should be a no-op on other systems.)
9004
9005 * emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
9006 (PAGE_SIZE): Don't define; not used.
9007
9008Fri Dec 31 16:12:06 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9009
9010 * ldgram.y (yyerror): Make argument const char *, and actually
9011 print it out rather than assuming it is a syntax error.
9012 * ldmisc.h: Change declaration of yyerror.
9013 * ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
9014
9015Fri Dec 31 11:37:28 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9016
9017 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
9018 exec header offset, since the exec header isn't loaded.
9019 (PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
9020
9021Thu Dec 30 13:01:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9022
9023 A major rewrite to move the bulk of the linker into BFD so that
9024 more efficient backend code can be written for specific object
9025 files.
9026 * lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
9027 ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
9028 * ldctor.c, ldctor.h: Complete rewrite.
9029 * ldwrite.c, ldwrite.h: Complete rewrite.
9030 * ld.h (strip_symbols_type, strip_symbols): Removed. Use
9031 link_info.strip instead. Changed all uses.
9032 (discard_locals_type, discard_locals): Removed. Use
9033 link_info.discard instead. Changed all uses.
9034 (ld_config_type): Removed relocateable_output field; use
9035 link_info.relocateable instead; changed all uses. Added stats
9036 field.
9037 (set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
9038 set_loader_symbol): Removed.
9039 * ldexp.h (node_class): Added etree_rel.
9040 (etree_type): Added rel field.
9041 * ldexp.c (exp_print_token): Bracketed table initialization.
9042 (exp_relop): New function.
9043 (fold_name): Use linker hash table rather than ldsym functions.
9044 (exp_fold_tree): Likewise. Also, handle etree_rel case.
9045 (exp_print_tree): Handle etree_rel.
9046 * ldgram.y (strip_symbols, discard_locals): Removed.
9047 (OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them.
9048 (REL): New token. Does not appear in grammar, but needed for
9049 expression code.
9050 (file): Don't call lang_final; it's called by main anyhow.
9051 * ldlex.l: Accept -stats and -no-keep-memory options.
9052 * ldlang.h (fill_type): Make unsigned int, not unsigned short.
9053 * ldlang.c: Consistently use fill_type for fill argument.
9054 (lang_init_script_file, script_file): Removed.
9055 (create_object_symbols): Removed. Use
9056 link_info.create_object_symbols_section instead. Changed all
9057 uses.
9058 (lang_add_keepsyms_file): Removed.
9059 (lookup_name): Call bfd_link_add_symbols instead of
9060 ldmain_open_file_read_symbol.
9061 (wild): Don't iterate over script_file.
9062 (open_output): Create link hash table.
9063 (lang_place_undefineds): Rewrote.
9064 (lang_size_sections): Handle relaxing (doesn't work yet).
9065 (lang_relocate_globals): Removed.
9066 (lang_finish): Use link hash table rather than ldsym functions.
9067 (lang_common): Rewrote.
9068 (lang_one_common): New function.
9069 (ldlang_add_file): Add file to link_info.input_bfds list. Set
9070 usrdata.
9071 (create_symbol): Removed.
9072 (lang_process): Don't call lang_init_script_file. Call
9073 ldctor_build_sets rather than find_constructors. Don't call
9074 lang_relocate_globals.
9075 (lang_abs_symbol_at_beginning_of): Rewrote.
9076 (lang_abs_symbol_at_end_of): Rewrote.
9077 * ldmain.c (had_y): Removed.
9078 (lprefix, lprefix_len): Removed; use link_info fields instead.
9079 Changed all uses.
9080 (multiple_def_count, commons_pending, undefined_global_sym_count,
9081 total_symbols_seen, total_files_seen): Removed.
9082 (link_callbacks, link_info): New variables.
9083 (main): Initialize link_info. Don't call init_bfd_error_vector or
9084 ldsym_init. Don't set now unused variables. Handle -stats.
9085 (get_emulation): Removed obsolete and nonfunctional GNU960 code.
9086 (add_ysym): Rewrote.
9087 (read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
9088 search_library, gnu960_check_format, decode_library_subfile,
9089 linear_library, symdef_library, clear_syms, subfile_wanted_p):
9090 Removed.
9091 (add_keepsyms_file, add_archive_element, multiple_definition,
9092 multiple_common, add_to_set, warning_callback, undefined_symbol,
9093 reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
9094 New functions.
9095 * ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't
9096 require symbols for %C; look them up instead.
9097 * emultempl/hppaosf.em: Pass link_info to
9098 hppa_look_for_stubs_in_section.
9099 * Makefile.in: Rebuilt dependencies.
9100 (CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
9101 relax.c.
9102 (HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
9103 relax.h.
9104 (EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
9105 ldlang.h and ldctor.h.
9106
9107 * Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove
9108 declarations of free and malloc from flex output. Change malloc
9109 to ldmalloc in flex output.
9110
9111Thu Dec 16 21:19:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
9112
9113 * ldmain.c (lprefix): Change default from a char to a string
9114 with only one character.
9115 (lprefix_len): Set default to one.
9116
9117 * ldmain.h (lprefix_len): Declare.
9118
9119 * ldsym.c (write_file_locals): Use strncmp rather than a character
9120 comparison for lprefix.
9121
9122 * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len
9123 correctly.
9124
9125 * emultmpl/hppaosf.em: Include ldexp.h.
9126 (before_parse): Set lprefix and lprefix_len correctly.
9127
9128Tue Dec 14 17:19:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9129
9130 * ldlex.h: Don't declare yywrap if it is a macro.
9131 * ldlex.l: Include sysdep.h.
9132 * ldlang.c (lang_for_each_statement_worker,
9133 lang_for_each_statement): Forgot to use PARAMS.
9134
9135Mon Dec 13 14:30:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9136
9137 * Makefile.in: Added .PHONY targets where appropriate. Added some
9138 comments. Also:
9139 (gcclibdir, version): Removed unused variables.
9140 (DEP): New variable, set to mkdep.
9141 (ALL_CFLAGS): New variable. Used in .c.o target.
9142 (CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New
9143 variables.
9144 (HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES,
9145 GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed
9146 mostly obsolete variables. Adjusted remaining uses.
9147 (DEF_EMUL): Removed variable.
9148 (ldmain.o): Handle undefined EMUL error correctly.
9149 (ldemul-list.h): Depend on config.status rather than Makefile.
9150 Create via temporary file.
9151 (ver960.c, roll, make): Removed obsolete targets.
9152 (.dep, .dep1, dep.sed, dep, dep-in): New targets. Used to rebuild
9153 dependencies.
9154 * dep-in.sed: New file, used when rebuilding dependencies.
9155
9156Sat Dec 11 14:43:44 1993 Ian Lance Taylor (ian@deneb.cygnus.com)
9157
9158 Made many changes to eliminate gcc warnings. Made various
9159 cosmetic changes, declared various things in header files, removed
9160 various extern declarations from .c files. No substantive
9161 changes.
9162
9163 * ldlang.c (lang_process): Ifdef out final call to
9164 lang_size_sections again (reverting change of Nove 2), since it
9165 breaks the Sun4 linker.
9166
9167Thu Dec 2 16:31:47 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9168
9169 * configure.in (alpha-*-netware*): New target; use alpha.
9170
9171Wed Dec 1 14:04:20 1993 Ken Raeburn (raeburn@cygnus.com)
9172
9173 * configure.in: Group targets by CPU. Merge some m68k target
9174 entries with different CPU specs that use the same ld_target
9175 values.
9176
9177 * configure.in: Add sparc*-*-coff.
9178 * config/coff-sparc.mt, emulparams/coff_sparc.sh: New files.
9179 * Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o.
9180 (em_coff_sparc.c): Add dependencies and build rules.
9181
9182 * ldmisc.c (errno, sys_nerr, sys_errlist): Don't declare.
9183
9184Wed Dec 1 12:19:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9185
9186 * ldgram.y (OPTION_call_shared, OPTION_non_shared, OPTION_Oval):
9187 New tokens.
9188 (command_line_option): Accept and ignore them (for now).
9189 * ldlex.l (<COMMAND>): Handle -non_shared, -call_shared, and -On
9190 where n is a number.
9191
9192Mon Nov 22 14:14:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9193
9194 * ldmain.c (subfile_wanted_p): If merging a common symbol which is
9195 not in bfd_com_section, create the section in the BFD so that it
9196 can be placed in the right output section.
9197
9198Fri Nov 19 14:12:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9199
9200 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.
9201 * emulparams/elf32mipsb.sh (DATA_ADDR): Define.
9202 (OTHER_READONLY_SECTIONS): Define for .reginfo.
9203 (EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK.
9204 * scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating.
9205 Move OTHER_READONLY_SECTIONS after all the other readonly
9206 sections. Don't use DATA_ADDR twice.
9207
9208 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. If
9209 p is in a common section, make sure the BFD has a section of that
9210 name.
9211
9212 * ldlang.c (lang_common): Add newline to error message.
9213
9214Thu Nov 11 15:54:41 1993 Stan Shebs (shebs@rtl.cygnus.com)
9215
9216 * emulparams/m68klynx.sh (SCRIPT_NAME): Define to use a
9217 Lynx-specific script instead of m68kcoff.
9218 (OUTPUT_FORMAT): Define as "coff-m68k-lynx".
9219 (ENTRY): Define as __main.
9220 (TEXT_START_ADDR): Define as 0.
9221 (PAGE_SIZE): Define as 0x1000.
9222 * emulparams/i386lynx.sh, emulparams/sparclynx.sh: Fix comment.
9223 * scripttempl/m68klynx.sc: New file.
9224
9225Mon Nov 8 12:00:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9226
9227 * ldmain.c (get_emulation): Ignore -mips1, -mips2 and -mips3
9228 arguments rather than treating them as emulation names.
9229
9230Fri Nov 5 09:02:52 1993 D. V. Henkel-Wallace (gumby@blues.cygnus.com)
9231
9232 * configure.in: Support x86 unixware and netware plus generic netware.
9233
9234Fri Nov 5 21:47:55 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9235
9236 * emulparams/i386mach.sh (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR):
9237 Correct values (?).
9238
9239Wed Nov 3 15:10:15 1993 Ken Raeburn (raeburn@rover.cygnus.com)
9240
9241 * Makefile.in (distclean): Don't delete dvi or info files.
9242 (ld.info): Update dependency list.
9243 (ld.dvi): Ditto. Extend TEXINPUTS to get bfdsumm.texi.
9244
9245Wed Nov 3 12:07:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9246
9247 * ldlang.c (lang_add_output): Take new arg, FROM_SCRIPT.
9248 Set output_filename instead of creating a new node.
9249 (open_output): Don't set output_filename.
9250 (lang_final): Create the new node here.
9251 * ldlang.c, ldlang.h, ldgram.y, mri.c: pass FROM_SCRIPT.
9252
9253Tue Nov 2 15:45:51 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
9254
50bbae35 9255 From Pete Hoogenboom (hoogen@cs.utah.edu):
252b5132
RH
9256
9257 * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,
9258 edata, _edata, end): Add definitions of these symbols.
9259 (__end): Remove definition of this symbol.
9260 (__data_start): Move definition of this symbol.
9261
9262 * emultempl/hppaosf.em: Various fixes and support for linker stub
9263 generation.
9264 (hppaosf_finish, hppaosf_search_for_padding_statements,
9265 hppaosf_create_output_section_statements): New functions in
9266 support of linker stub generation.
9267 (ld_hppaosf_emulation): Redefine to include new
9268 emulation-specific routines.
9269
9270 * ldlang.c (lang_process): Re-enable last call lang_size_sections.
9271 Pass abs_output_section rather than NULL to avoid invalidating
9272 absolute symbols.
9273
9274Thu Oct 28 21:16:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9275
9276 * Makefile.in (ALL_EMULATIONS): Add em_i386mach.o.
9277 (em_i386mach.c): New rule.
9278 * configure.in (i[34]86-*-mach*): New case.
9279 * config/i386-mach.mt: New file.
9280 * emulparams/i386mach.sh: New file.
9281
9282Fri Oct 29 14:55:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9283
9284 * ld.h (flag_is_*): Removed macros.
9285 * ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
9286 Consistently check the BFD symbol flags directly, rather than
9287 using file_is_* macros.
9288
9289Thu Oct 28 19:08:42 1993 Stan Shebs (shebs@rtl.cygnus.com)
9290
9291 * configure.in (sparc*-*-lynxos*): New target.
9292 * Makefile.in: Add rule for em_sparclynx.c.
9293 (ALL_EMULATIONS): Add Lynx emulations.
9294 * config/sparc-lynx.mt: New file.
9295 * emulparams/sparclynx.sh: New file.
9296 * scripttempl/sparccoff.sc: New file.
9297
9298Thu Oct 28 13:50:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9299
9300 * Makefile.in: Add dependency for $(EMULATION_OFILES).
9301
9302Mon Oct 25 16:09:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9303
9304 * relax.c (write_relax): Check return value of bfd_seclet_link.
9305
9306Mon Oct 25 09:31:21 1993 Ken Raeburn (raeburn@cygnus.com)
9307
9308 * ldlang.c (delete_output_file_on_failure): New variable.
9309 (open_output): Set it after bfd open succeeds.
9310 * ldmisc.c (vfinfo): Test it.
9311
9312 Changes from Peter Hoogenboom, hoogen@cs.utah.edu:
9313
9314 * ldsym.c (write_file_locals): Set the BSF_FILE flag for object
9315 symbols.
9316
9317 * ldemul.c: Support was added to allow emulation-specific
9318 processing to occur. This support was added primarily for linker
9319 stub generation in the elf32-hppa gld.
9320 (ldemul_finish, ldemul_create_output_section_statements): New
9321 functions.
9322 * ldemul.h: Support was added to allow emulation-specific
9323 processing to occur. (As described above.) Added finish and
9324 create_output_section_statements fields to
9325 ld_emulation_xfer_struct structure.
9326 * ldlang.c: Add calls to emulation-specific routines.
9327 (lang_process): Add call to
9328 ldemul_create_output_section_statements function.
9329 (lang_process): Add call to a emulation-specific routine (and
9330 some processing after the call).
9331
9332Fri Oct 22 20:54:13 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9333
9334 * configure.in: mips*- instead of mips-, mips*el changes
9335
9336Tue Oct 19 15:46:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9337
9338 * configure.in (alpha-*-osf*): New target; use alpha.mt.
9339 * Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
9340 (em_alpha.c): New target; use alpha.sh and alpha.sc.
9341 * config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
9342 * config/alpha.mt: New file.
9343 * emulparams/alpha.sh: New file.
9344 * scripttempl/alpha.sc: New file.
9345
9346Fri Oct 15 02:20:04 1993 Doug Evans (dje@canuck.cygnus.com)
9347
9348 * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
9349 types of different sizes (eg: 64 and 32 bits), so coerce.
9350 * ld.h (ALIGN_N): Add warning about usage.
9351
9352Wed Oct 13 16:02:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9353
9354 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
9355 which we already have a definition, rather than checking in
9356 several different places whether the symbol is weak.
9357
9358Tue Oct 12 17:30:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9359
9360 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
9361 * scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
9362 OTHER_READWRITE_SECTIONS if relocating. Shell variables are not
9363 expanded within them.
9364 * config/mipsb-elf32.mt: New file.
9365 * emulparams/elf32mipb.sh: New file.
9366 * Makefile.in (em_elf32mipb.c): New target.
9367
9368Thu Sep 30 17:00:36 1993 Rob Savoye (rob@darkstar.cygnus.com)
9369
9370 * ldgram.y: In input_list, change lang_input_file_is_file_enum to
9371 lang_input_file_is_search_file_enum so objects brought in using
9372 INPUT() do a path lookup.
9373
9374Tue Sep 28 13:31:23 1993 Stan Shebs (shebs@rtl.cygnus.com)
9375
9376 * configure.in: Change Lynx ld_target to be {i386,m68k}-lynx
9377 instead of {i386,m68k}-coff.
9378 * Makefile.in (em_i386lynx.c, em_m68klynx.c): New targets.
9379 * config/i386-lynx.mt: New file.
9380 * config/m68k-lynx.mt: New file.
9381 * emulparams/i386lynx.sh: New file.
9382 * emulparams/m68klynx.sh: New file.
9383
9384 * scripttempl/i386coff.sc: Make ENTRY get its value from ${ENTRY},
9385 but defaulting to _start.
9386
9387 * ldemul.c, ldfile.c, ldlang.c, ldmain.c, ldmisc.c, ldmisc.h,
9388 ldsym.c, ldwarn.c: Rename info to info_msg, to avoid conflict with
9389 LynxOS libc.
9390
9391Thu Sep 23 14:51:03 1993 Ian Lance Taylor (ian@cygnus.com)
9392
9393 * config/solaris2.mh: New file. Define HOSTING_CRT0 and
9394 HOSTING_LIBS for testing.
9395
9396Fri Sep 17 17:52:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9397
9398 Finish up support for i386-sysv4 (without shared libraries):
9399 * ld.h (flag_is_weak): Define.
9400 * ldlang.c (print_symbol): Mention whether symbol is weak.
9401 (print_input_section): Print weak symbols as globals.
9402 * ldmain.c (refize): Do not zero out BSF_WEAK flag.
9403 (enter_global_ref): Do not warn if a weak symbol redefines a
9404 global symbol. Do not let a weak symbol redefine a common symbol.
9405 (enter_file_symbols): Treat weak symbols as global symbols.
9406 (subfile_wanted_p): Do not pull in an object file from a archive
9407 just to resolve an undefined weak symbol.
9408 * ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
9409 error; the error might be that malloc has run out of space.
9410 * ldsym.c (write_file_locals): Treat weak symbols as global.
9411 * configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
9412 use i386-elf.
9413 * config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
9414 * config/i386-elf.mt: New file; set EMUL to elf_i386.
9415 * emulparams/elf_i386.sh: New file.
9416 * scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
9417 * Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
9418 (ALL_EMULATIONS): Add em_elf_i386.o.
9419 (GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
9420 (em_elf_i386.c): New target, like other em_*.c targets.
9421 ($(LD_PROG)): Pass $(CFLAGS) to $(CC).
9422 * genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument. If
9423 nonempty, and configured for native, add it to LIB_PATH.
9424
9425Fri Sep 17 13:07:39 1993 Stan Shebs (shebs@rtl.cygnus.com)
9426
9427 * scripttempl/{h8300.sc,h8500.sc,i386coff.sc,m68kcoff.sc,sh.sc}:
9428 Added statements to pass stab and stabstr sections through and
9429 mark them as NOLOAD, which makes GDB happier.
9430
9431Wed Sep 15 16:02:29 1993 Stan Shebs (shebs@rtl.cygnus.com)
9432
9433 * configure.in: Accept m68k-lynx-lynxos config.
9434
9435 * Makefile.in: Use $(SHELL) to run genscripts.sh.
9436
9437Sun Sep 12 16:04:40 1993 Doug Evans (dje@cygnus.com)
9438
9439 * config/coff-h8300.mt: Add EMUL=h8300h.
9440
9441 * ldmain.c (main): Call set_scripts_dir after argv has been processed.
9442
9443Fri Sep 10 09:36:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
9444
9445 * Makefile.in: Changed CXX back to g++.
9446
9447Fri Sep 10 09:34:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
9448
9449 * Makefile.in: Fixed RUNTEST* CXX CXXFLAGS macros and check rule.
9450
9451Fri Sep 10 07:26:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9452
9453 * Makefile.in (TAGS): Use shell wildcards.
9454
9455Tue Sep 7 18:04:54 1993 Jeffrey Osier (jeffrey@cygnus.com)
9456
9457 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target
9458
9459Fri Sep 3 16:46:41 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
9460
9461 * ld.texinfo: re-enable included config file; conditionalize doc
9462 for -oformat to interact properly with SingleFormat doc config
9463 var; rename @up/@down to @raisesections/@lowersections.
9464
9465Wed Aug 25 16:29:56 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9466
9467 * configure.in: recognize m88110.
9468
9469Tue Aug 24 18:49:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9470
9471 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
9472 * emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
9473 ELF emulation is "elf32-hppa" not "elf-big".
9474 (hppaosf_before_parse): Remove unneeded processing of environment
9475 variables.
9476 * scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
9477 .text segment of output file.
9478 * emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
9479
9480Tue Aug 24 16:17:00 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9481
9482 * ld.h: define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no
9483 longer in bfd.h.
9484
9485 * ldlang.c, ld.h: updated copyright.
9486
9487Tue Aug 17 15:22:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9488
9489 * ldlang.c (open_output, lang_check): Check return value of
9490 bfd_set_arch_mach.
9491
9492Tue Aug 17 07:02:19 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
9493
9494 * scripttempl/h8500.sc: Start all sections in a different segment.
9495 * scripttempl/z8ksim.sc: Handle constructors
9496
9497Thu Aug 12 16:05:37 1993 Jeffrey Wheat (cassidy@cygnus.com)
9498
50bbae35
AM
9499 * Makefile.in: revert earlier changes back to execute runtest
9500 with make check. cdtest and bootstrap now function as they
252b5132
RH
9501 did within the Makefile.
9502
9503Thu Aug 12 10:20:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9504
9505 * Makefile.in: Update dependencies.
9506
9507 * configure.in: Set EMULATION_OFILES in Makefile based on
9508 --with-targets option.
9509
9510Thu Aug 12 08:52:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
9511
9512 * Makefile.in: check targets reimplemented to old way.
9513
9514Wed Aug 11 08:26:11 1993 Ian Lance Taylor (ian@cygnus.com)
9515
9516 * config/i386v.mh, config/irix4.mh: Use gcc
9517 -print-libgcc-file-name rather than $(libdir)/libgcc.a.
9518 * config/i386sco.mh: New file; copy of i386v.mh to correspond to
9519 bfd/configure.host change.
9520
9521Mon Aug 9 14:25:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9522
9523 * scripttempl/elf.sc: Handle .line and .debug* sections.
9524
9525 * ldlex.l: Use bfd_scan_vma, not strtoul.
9526
9527Fri Aug 6 08:57:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9528
9529 * ldexp.c, ldfile.c, ldlang.c, lexsup.c, ldmain.c, ldemul.c:
9530 Remove inital caps in some error messages, change "can't" to
9531 "cannot", add missing colons.
9532 * ldmisc.c (vfinfo): Print "%%" as a single %.
9533 For '%' followed by unrecognized character, print them both
9534 verbatim instead of expecting a char * arg.
9535 For '%C', don't put the function name in parens.
9536
9537 * ldexp.c (invalid): Pass "%%", not "% ".
9538
9539Fri Aug 6 14:31:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
9540
9541 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
9542 (BSS_VAR): Removed; now always define _fbss.
9543 * emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
9544 Removed.
9545
9546Thu Aug 5 15:55:19 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
9547
9548 * configure.in: z8k-coff is the same as z8k-sim
9549
9550Wed Aug 4 21:00:18 1993 Jeffrey Wheat (cassidy@cygnus.com)
9551
9552 * testsuite/lib/ld.exp: new file
9553 * testsuite/config/unix-ld.exp: new file
9554 * testsuite/ld.bootstrap/bootstrap.exp: new file
9555 * Makefile.in: add dejagnu support for make check
9556
9557Wed Aug 4 17:52:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9558
9559 * ldlex.l (comment): Add missing newline in message.
9560 * ldindr.c (add_indirect): Ditto.
9561 * ldexp.c (exp_fold_tree): Ditto.
9562
9563Tue Aug 3 10:57:41 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9564
9565 * ldgram.y, ldlex.l, mri.c, ldwrite.c: Change multiple commons
9566 into externs.
9567
9568 * ldmisc.c (multiple_warn): New function.
9569 * ldmisc.h: Declare it.
9570 * ldmain.c (enter_global_ref): Call it.
9571 * ld.h (ld_config_type): Add warn_common.
9572 * ldlex.l, ldgram.y: Set it with -warn-common option.
9573 * ldver.c (help): Document it.
9574
9575Mon Aug 2 12:04:36 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9576
9577 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
9578 target-specific sections, and for changing data section vma.
9579
9580Mon Jul 26 14:00:02 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
9581
9582 * ldgram.y (OPTION_Qy, OPTION_Y, OPTION_dn, OPTION_YP): New
9583 terminals, for Solaris.
9584 (dirlist_ptr): New static variable.
9585 (command_line_option): Accept new options.
9586
9587 * ldlex.l: Accept command-line options "-Qy", "-dn", "-Y", and
9588 "-YP,...".
9589
9590 * config/sun4sol2.mt: Pass emulation name without ".sh".
9591
9592 * emulparams/elf32_sparc.c: Renamed from elf32-sparc.c.
9593 * config/sun4sol2.mt (em_elf32_sparc.c): Adjusted accordingly.
9594
9595Fri Jul 23 13:51:09 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9596
9597 * scripttempl/elf.sc: Add support for .init, .fini, .ctors,
9598 .dtors, .data1, .rodata1 sections, instead of combining them into
9599 other sections. For `-r', set all section start addresses to
9600 zero.
9601
9602 * emulparams/elf32-sparc.sh (TEXT_START_ADDR,
9603 NONPAGED_TEXT_START_ADDR): Value should be 0x10100.
9604 (MAXPAGESIZE): Renamed from PAGE_SIZE.
9605
9606Wed Jul 21 14:28:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9607
9608 * genscripts.sh: If this is the default emulation, set
9609 COMPILE_IN.
9610 * emultempl/*.em: Use it to determine whether to compile in the
9611 scripts.
9612
9613 * Makefile.in (GENSCRIPTS): Pass the default emulation name to
9614 genscripts.sh. Pass the current emulation name without ".sh" on
9615 the end.
9616 * genscripts.sh: Take an default emulation arg.
9617 Use the current emulation name as EMULATION_NAME.
9618 Make default lib path for cross-compiling ':', not null.
9619 * emulparams/*.sh: Don't set EMULATION_NAME.
9620 * ldemul.c (ldemul_get_script): Take isfile arg.
9621 Pass it to emulation's get_script function.
9622 * ldemul.h: Adjust get_script prototypes.
9623 * ldfile.c (ldfile_find_command_file): Renamed from find_a_name.
9624 No longer static.
9625 * ldfile.h: Declare it.
9626 * ldgram.y: Accept a script on the command line again,
9627 for parsing compiled-in scripts.
9628 * ldmain.c (main): If ld script is a file, parse it as a -T
9629 option, otherwise parse it directly.
9630 * emultempl/*.em (*get_script): Return the scripts themselves if
9631 this is the default emulation; otherwise return their file names.
9632 * emultempl/m88kbcs.em: New file, to take m88kbcs #ifdef out of
9633 generic.em.
9634 * emulparams/m88kbcs.sh: Use it.
9635
9636 * ld.h (ld_config_type::unix_relocate): Remove unused element.
9637
9638Tue Jul 20 12:01:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9639
9640 * Makefile.in (ALL_EMULATIONS): Delete em_i386linux.o (for which
9641 there's no change log entry yet, tsk tsk) from the list of
9642 emulations compiled in until Mark gets around to checking in
9643 emulparams/i386linux.sh.
9644 (ldemul-list.h): Depend on Makefile, so if EMULATION_OFILES is
9645 changed, this file gets updated.
9646
9647Fri Jul 16 14:14:32 1993 Ian Lance Taylor (ian@cygnus.com)
9648
9649 * ldgram.y (OPTION_Lfile): New token.
9650 (command_line_option): Accept OPTION_L NAME (whitespace after -L).
9651 * ldlex.l (<COMMAND>): Accept -L without FILENAME.
9652
9653Fri Jul 16 13:44:26 1993 Doug Evans (dje@canuck.cygnus.com)
9654
9655 * configure.in: h8/300h support needs own .mt file.
9656 config/coff-h8300h.mt: New file.
9657
9658Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9659
9660 * ldmain.c: Don't include sys/stat.h; it already got included
9661 somewhere along the way.
9662
9663Thu Jul 15 14:43:34 1993 Doug Evans (dje@canuck.cygnus.com)
9664
9665 * Makefile.in: Add h8300h support.
9666 emulparams/h8300h.sh: New file.
9667 scripttempl/h8300h.sc: New file.
9668
9669Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9670
9671 * ldfile.c (ldfile_open_file): In error message, use the name the
9672 user gave (e.g., "-lc"), rather than the base file name.
9673
9674 * ldexp.c (exp_fold_tree): Don't assign an int to an enum.
9675
9676 * ldmain.[ch]: Remove initial Q_ from function names.
9677 * ldexp.c, ldindr.c, ldlang.c: Change callers.
9678
9679 * ldfile.c, ldmain.c, ldgram.y: Rename option_v to trace_file_tries.
9680
9681 * ldlang.c (lang_process): Move loading of default script from
9682 here to main. Add a "/" to start of script name to prevent
9683 finding it in "." first.
9684
9685 * ldmain.c (set_scripts_dir): Don't look in "." first.
9686
9687 * ldgram.y, ldlang.c, ldsym.c: Remove traces of unused var
9688 option_longmap.
9689
9690Thu Jul 15 10:55:59 1993 Ian Lance Taylor (ian@cygnus.com)
9691
9692 * Makefile.in (em_m88kbcs.c): Correct dependency.
9693 * scripttempl/m88kbcs.sc: It's ARCH, not arch. Removed TARGET
9694 statement. Changed OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
9695 * emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
9696
9697Wed Jul 14 21:42:53 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9698
9699 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
9700 main.c (main): Print the errno string in the error message.
9701
9702Tue Jul 13 20:00:30 1993 Doug Evans (dje@canuck.cygnus.com)
9703
9704 * configure.in: Accept h8300h for target cpu.
9705
9706 * ldmisc.c (vfinfo): Have demangle remove leading underscore if
9707 present (demangle is smart enough to know whether to do it or not).
9708
9709Mon Jul 12 11:45:48 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9710
9711 * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
9712 ldscripts, as well as <ld bin dir> and SCRIPTDIR.
9713
9714 * ldlang.c (lang_process): Use sizeof instead of magic constant.
9715
9716 * ldmain.c (get_emulation, check_for_scripts_dir,
9717 set_scripts_dir): New functions.
9718 (main): Call them.
9719
9720Mon Jul 12 10:57:03 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
9721
9722 * scripttempl/elf.sc: Include .init, .fini, .rodata sections.
9723 Create symbol "end" instead of "__end". Comment out some parts
9724 that may not be needed (yet) for elf.
9725
9726 * configure.in: Accept sparc-elf and sparc-solaris2 configs.
9727
9728Thu Jul 8 15:33:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9729
9730 * Makefile.in (ALL_EMULATIONS): Include $(OTHER_EMULATIONS).
9731
9732 * ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro
9733 when no prototype is being supplied.
9734 (ldmalloc, ldrealloc): Size argument is now size_t.
9735
9736 * ldmisc.c (finfo): New function, accepts FILE* argument.
9737 (vfinfo, case 'v'): New format character; displays bfd_vma in hex
9738 without leading zeros.
9739 (vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a
9740 bfd_vma value, instead of fprintf(%x) which won't hold a long long
9741 value.
9742 (concat, buystring): String lengths are size_t.
9743 (ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
9744
9745 * ldlang.c (new_statement): Size argument is now size_t. Added
9746 forward declaration with prototype.
9747
9748Thu Jul 8 10:53:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9749
9750 * ldgram.y (OPTION_v): Don't turn on verbose output.
9751
9752Wed Jul 7 17:10:45 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9753
9754 * ldlex.l: Get rid of local typedef for bfd_vma! Get it from
9755 bfd.h instead.
9756
9757Wed Jul 7 11:33:12 1993 Ian Lance Taylor (ian@cygnus.com)
9758
9759 * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
9760 collect2 doesn't look for gld any more anyhow.
9761
9762Mon Jul 5 14:29:48 1993 Ian Lance Taylor (ian@cygnus.com)
9763
9764 * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
9765 now have a non NULL srefs_chain.
9766
9767 * config/hp300hpux.mt: Use emulation hp3hpux rather than
9768 hp300hpux, since the latter does not exist.
9769
9770Fri Jul 2 18:06:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9771
9772 * genscripts.sh: Put the scripts in the ldscripts directory, not
9773 emulations.
9774 * configure.in (ldscripts): Make, instead of emulations.
9775 * Makefile.in (scriptdir): Take off the "ld" part.
9776 (install, clean, distclean): Use ldscripts, not emulations.
9777 In tests, don't pass -Lemulations.
9778 Don't pass tooldir/lib to genscripts.sh.
9779 * genscripts.sh: Don't take tooldir/lib arg.
9780 * ldlang.c (lang_process): Add "ldscripts/" to the name of the
9781 default script file.
9782
9783Fri Jul 2 17:13:35 1993 Doug Evans (dje@canuck.cygnus.com)
9784
9785 * scripttempl/h8300.sc: Add .tors section for constructor/destructors.
9786
9787Thu Jul 1 16:38:45 1993 Doug Evans (dje@canuck.cygnus.com)
9788
9789 * config/coff-h8300.mt: EMUL=h8300hms -> h8300.
9790
9791Wed Jun 30 15:45:55 1993 K. Richard Pixley (rich@sendai.cygnus.com)
9792
9793 * Makefile.in (.y.c): skip default .y.c rules. gnu make can now
9794 run in parallel without colliding on yacc's static file names.
9795 Without the stub rule, make will try to start two yacc's
9796 concurrently which fails because of yacc's static file names.
9797
9798Tue Jun 29 12:20:36 1993 Ian Lance Taylor (ian@cygnus.com)
9799
9800 * ldmain.c (subfile_wanted_p): Don't dump core if there are no
9801 symbols.
9802
9803Mon Jun 28 12:22:11 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9804
9805 * genscripts.sh (LIB_PATH): Only add /usr/local/lib if it's
9806 different from libdir.
9807
9808 * Makefile.in (scriptdir): Base on tooldir, not datadir.
9809
9810Sat Jun 26 12:03:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9811
9812 * ldver.c (help): New function.
9813 * ldver.h: Declare it.
9814 * ldlex.l, ldgram.y: Recognize new options --help and --version.
9815
9816Mon Jun 21 20:39:48 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
9817
9818 * Makefile.in (INCLUDES): Don't need ../include any more.
9819
9820Mon Jun 21 16:38:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9821
9822 * ldlex.l, ldgram.y: Support new -oformat option.
9823 Remove attempt at supporting script fragments on the command line.
9824 * ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
9825 * mri.c (mri_format), ldgram.y: Change callers.
9826 * ldlang.h: Change prototype.
9827
9828Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
9829
9830 * Makefile.in: canonicalize install.sh; for use within
9831 this directory (and subdirs)
9832
9833Thu Jun 17 14:33:09 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9834
9835 * ldgram.y: Tweak grammar to make reporting of invalid options work.
9836
9837 * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
9838 and .cc.o rule.
9839
9840Wed Jun 16 11:45:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9841
9842 * ldfile.c (ldfile_open_command): Don't try .ld extension.
9843 It wasn't documented (or likely used) and wastes time.
9844 (try_open): If EXTEN is empty, don't try it.
9845
9846 * ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
9847 ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
9848 ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
9849 with normal function declarations.
9850
9851 * Move *.em to emultempl/*.em. Move *.sh to emulparams/*.sh.
9852 Move *.sc-sh to scripttempl/*.sc.
9853 * {emultempl,emulparams,scripttempl}/README: New files.
9854 * sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
9855 removed, replaced with generic.em.
9856 * h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
9857 h8[35]00hms.s[ch]. Change their contents to omit the "hms".
9858
9859 * *.em (*_get_script): Return script name instead of script contents.
9860 * ldlang.c (lang_process): Change caller.
9861
9862 * ldlex.l, ldgram.y: Recognize -m option.
9863 Check for input files after *all* options in grammar.
9864 * ldmain.c (main): Check for -m options. Add default directory
9865 for -m.
9866
9867 * mkscript.c: File removed.
9868 * genscripts.sh: Take two more parameters, tooldirlib and libdir,
9869 to add to the default LIB_PATH.
9870 Look for input files in the new subdirectories.
9871 Create the scripts in emulations subdirectory and don't filter
9872 them through mkscript.
9873 * configure.in: Make the emulations subdirectory.
9874
9875 * Makefile.in: Account for all of the above changes.
9876 Remove unused .SUFFIXES. Get libgcc.a path with gcc
9877 -print-libgcc-file-name instead of $(libdir)/libgcc.a.
9878 Put CFLAGS last in the compilation rules.
9879 Add -I../bfd to INCLUDES so sysdep.h is found.
9880
9881Tue Jun 15 23:04:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9882
9883 * Makefile.in (INCLUDES): Look in ../include, not ../bfd.
9884
9885 * aout.sc-sh: Add SHLIB_PATH like STACKZERO. Make STACKZERO
9886 dependent on RELOCATING, not RELOCATION.
9887 * hp3hpux.sh (SHLIB_PATH): Define it.
9888
9889Mon Jun 14 19:06:15 1993 David J. Mackenzie (djm@thepub.cygnus.com)
9890
9891 * ldfile.c (try_open): If opening without the extension fails,
9892 try with the extension even if -v or -V was given.
9893 had_script is imported (from ldgram.y), not exported.
9894
9895Mon Jun 14 16:26:10 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
9896
9897 * Makefile.in: remove parentdir support, use INSTALL_XFORM
9898
9899Thu Jun 10 14:00:06 1993 Ian Lance Taylor (ian@cygnus.com)
9900
9901 * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
9902 * ldgram.y (statement_list_opt): New nonterminal, either empty or
9903 statement_list.
9904 (section): Use statement_list_opt, not statement_list.
9905 * m68kcoff.sc-sh: Gather constructors and destructors and define
9906 __CTOR_LIST__ and __DTOR_LIST__ appropriately.
9907 * sa29200.sc-sh: Gather constructors and destructors and define
9908 ___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
9909
9910Mon Jun 7 12:53:28 1993 Per Bothner (bothner@rtl.cygnus.com)
9911
9912 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
9913 * configure.in: No longer need to configure to get sysdep.h.
9914
9915Fri Jun 4 16:18:24 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9916
9917 * Makefile.in: remove install:all and install-info:info
9918 dependencies (these cause some spurious rebuilds at 'make install'
50bbae35 9919 time)
252b5132
RH
9920
9921Fri Jun 4 08:50:14 1993 Ian Lance Taylor (ian@cygnus.com)
9922
9923 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
9924 (mips-idt-ecoff*): Added trailing '*'.
9925 * config/mips-idtl.mt: New file; use EMUL of mipsidtl.
9926 * mipsidtl.sh: New file; like mipsidt.sh, but little endian.
9927 * Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
9928
9929 * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
9930 incorrect definitions.
9931
9932Tue Jun 1 14:56:10 1993 Per Bothner (bothner@rtl.cygnus.com)
9933
9934 * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR
9935 symbols, unless stripping.
9936
9937Tue May 25 15:34:25 1993 Ian Lance Taylor (ian@cygnus.com)
9938
9939 * Makefile.in: configure looks for ####, so remove lines with many
9940 '#' characters.
9941 * config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
9942 and HOSTING_LIBS correctly so that ``make check'' will work.
9943
9944Thu May 20 13:56:16 1993 Per Bothner (bothner@deneb.cygnus.com)
9945
9946 * mips.sc-sh: Define _etext, _edata, and _end, in addition
9947 to etext, edata, and end. Needed for IRIX 4.0.5F.
9948 Patch from mwp@iconix.oz.au (Michael Paddon).
9949
9950 * Version 2.2.1 released.
9951
9952Thu May 20 11:42:06 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9953
9954 * mipsbsd.sc-sh: Renamed from aout-mipsbsd.sc-sh.
9955 * mipsbsd.sh (EMULATION_NAME): Use new file name.
9956
9957Tue May 18 17:10:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9958
9959 * Makefile.in (LDDISTSTUFF): Remove ld.mm since we can't build it
9960 properly right now.
9961
9962 * Version 2.2 released.
9963
9964Mon May 17 15:37:28 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
9965
9966 * ldver.c (ldversion): Bump version number to 2.2.
9967
9968Mon May 17 12:44:31 1993 Per Bothner (bothner@cygnus.com)
9969
9970 * NEWS: New file.
9971
9972Fri May 14 11:26:24 1993 Ian Lance Taylor (ian@cygnus.com)
9973
9974 * mips.sc-sh: Don't define BSS_VAR unless relocating.
9975
9976Wed May 12 13:33:29 1993 Ian Lance Taylor (ian@cygnus.com)
9977
9978 * Makefile.in (mkscript.o, mkscript): Build mkscript via
9979 mkscript.o, rather than directly from mkscript.c.
9980
9981Tue May 4 21:58:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
9982
9983 * configure.in: Look for ${target_makefile_frag} relative to
9984 ${srcdir}, not relative to build directory.
9985
9986 * hppaosf.em, hppaosf.sc-sh, hppaosf.sh: New files.
9987 * configure.in: Recognize hppa*-hp-osf.
9988 * Makefile.in (ALL_EMULATIONS): Include hppaosf emulation.
9989 (em_hppaosf.c): Build it.
9990 * config/hppaosf.mh, hppaosf.mt: New files.
9991
9992 * ld.h (ALIGN_N): Renamed from ALIGN, because that conflicted with
9993 some system header files. All uses changed.
9994
9995 * configure.in: Recognize i386-aix configurations as i386-coff
9996 targets.
9997
9998 * configure.in: Recognize m68*-*-hpux.
9999 * aout.sc-sh: If STACKZERO and RELOCATING are both defined, output
10000 the value of STACKZERO.
10001 * Makefile.in (ALL_EMULATIONS): Include hp300-hpux emulation.
10002 (em_hp3hpux.c): Build it.
10003 * hp3hpux.sh, config/hp300hpux.mt: New files.
10004
10005Tue May 4 12:37:35 1993 Ian Lance Taylor (ian@cygnus.com)
10006
10007 * mips.sc-sh: Put constructors in the .data section.
10008 * Makefile.in (cdtest): Added dependency on ld.new.
10009
10010Mon May 3 19:43:39 1993 Per Bothner (bothner@cygnus.com)
10011
10012 * Makefile.in: Change definition of $(tooldir) to match FSF.
10013 * vax.sh, config/vax.mt, configure.in, Makefile.in:
10014 Support VAX Ultrix and BSD.
10015
10016Mon Apr 26 18:35:47 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10017
10018 * sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH.
10019
10020Wed Apr 14 21:01:51 1993 John Gilmore (gnu@cygnus.com)
10021
10022 * ldlang.h (struct memory_region): Change `length' and
10023 `old_length' fields to bfd_size_type. Eliminate use of bfd_offset.
10024 * ldlang.c, mri.c: Corresponding changes, plus lint.
10025
10026Thu Apr 8 22:08:18 1993 Ian Lance Taylor (ian@cygnus.com)
10027
10028 * configure.in: For all i386 targets, accept i486 as well.
10029
10030Mon Apr 5 17:33:39 1993 Ian Lance Taylor (ian@cygnus.com)
10031
10032 * ldlang.c (wild_doit): Preserve all flags for a
10033 SEC_SHARED_LIBRARY section.
10034 (size_input_section): Consider any SEC_HAS_CONTENTS section when
10035 computing largest_section.
10036
10037Fri Apr 2 14:33:52 1993 Ian Lance Taylor (ian@cygnus.com)
10038
10039 * ldlang.c (lang_output_section_statement_lookup): Initialize all
10040 fields of newly created structure.
10041
10042Wed Mar 31 18:19:15 1993 Ian Lance Taylor (ian@cygnus.com)
10043
10044 * ldmain.c (g_switch_value): New variable.
10045 * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
10046 (command_line_option): Accept -G and set g_switch_value.
10047 * ldlex.l (COMMAND): Accept -G.
10048 * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
10049
10050Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10051
10052 Support for linking and loading at different places:
10053
10054 * ldlex.l: Add "AT" keyword.
10055 * ldgram.y: Cleanup, and parse AT.
10056 * ldlang.c (print_output_section_statement): Print output address
10057 of section in map. (lang_size_sections): Fill sections' lma with
10058 load address.
10059 * ldlang.h (lang_output_section_statement_type): Add load_base
10060 information.
10061
10062 * ldindr.c (add_indirect): Keep more information in the alias
10063 symbol chain.
10064 * ldlang.c (wild_doit): Don't inherit NEVER_LOAD section
10065 attribute from an input section.
10066 * ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
10067 default. (Q_enter_file_symbos): Indirect symbols now are known by
10068 their section, not a special symbol flag.
10069 * ldsym.c (write_file_locals): Indirect symbols aren't local.
10070 (write_file_globals): Write the mapping for an indirect symbol.
10071 * relax.c (build_it): When forced to write a NEVER_LOAD section,
10072 fill it with zeros.
10073
10074Tue Mar 23 13:24:10 1993 Jeffrey Osier (jeffrey@fowanton.cygnus.com)
10075
10076 * ld.texinfo: changes for q1
10077
10078Tue Mar 23 00:13:29 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10079
10080 * Makefile.in: add dvi target, define & use TEXI2DVI, add installcheck
10081
10082Mon Mar 8 20:30:35 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10083
10084 * Makefile.in: rename HOST_CC to CC_FOR_BUILD
10085
10086Thu Mar 4 12:44:33 1993 Ian Lance Taylor (ian@cygnus.com)
10087
10088 * mips.sc-sh: Added variables which may be overridden by a
10089 specific emulation.
10090 * mipsidt.sh: New file; emulation for IDT MIPS board.
10091 * Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
10092 (em_mipsidt.c): New target. Uses mipsidt.sh and mips.sc-sh.
10093 * config/mips-idt.mt: New file; sets EMUL to mipsidt.
10094 * configure.in (mips-idt-ecoff): New target; uses mips-idt.
10095
10096Sat Feb 27 00:00:14 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
10097
10098 * aout-mipsbsd.sc-sh, mipsbsd.sh: New files from Ralph Campbell,
10099 ralphc@pyramid.com.
10100 * i386bsd.sh, config/i386bsd.mt: New files.
10101 * configure.in, Makefile.in: Added support for mipsbsd and 386bsd.
10102
10103Thu Feb 25 15:33:10 1993 Per Bothner (bothner@rtl.cygnus.com)
10104
10105 * mri.c: Add extern declaration of strdup.
10106 * ldsym.c (KEEP macro): Add spaces around '=' for the
10107 sake of old (e.g. PCC) compilers.
10108
10109Wed Feb 24 19:49:31 1993 Per Bothner (bothner@rtl.cygnus.com)
10110
10111 * ldver.c: Bump to version 2.1.
10112
10113Fri Feb 12 08:09:11 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10114
10115 * ldgram.y: allow section types without address expressions.
10116 * ldlang.c (lang_relocate_globals): avoid possible hang with
10117 undefined but unreferenced symbols.
10118 * relax.c (relax_section): don't complain if the script file isn't
10119 relaxable but -relax is set
10120
10121Thu Feb 18 17:58:45 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10122
10123 * configure.in: go32 is the 3rd part of the triple, not the 2nd
10124
10125Wed Feb 3 09:05:56 1993 Ian Lance Taylor (ian@cygnus.com)
10126
10127 * mipsbig.sh: New file. Big endian MIPS emulation.
10128 * config/mips-big.mt: New file. Use mipsbig emulation.
10129 * configure.in (mips-sgi-irix*): Use target mips-big.
10130 * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
10131 (em_mipsbig.c): New target. Uses mipsbig.sh.
10132
10133Tue Feb 2 11:32:27 1993 Ian Lance Taylor (ian@cygnus.com)
10134
10135 * mips.sc-sh: Put .scommon sections into .sbss section.
10136
10137 * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
10138 rather than always putting them in bfd_com_section.
10139 * ldlang.c (lang_common): If a common symbol is not in
10140 bfd_com_section, put in a section of the same name, rather than
10141 always putting it in section COMMON.
10142
10143Fri Jan 29 09:57:58 1993 Ian Lance Taylor (ian@cygnus.com)
10144
10145 * ldmain.c (subfile_wanted_p): If we already have a common
10146 definition of a symbol, don't necessarily pull in an object file
10147 that provides a non-common definition.
10148
10149 * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
10150 returning OPTION_EB and OPTION_EL. gcc passes these to a MIPS
10151 linker.
10152 * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
10153 (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
10154
10155Thu Jan 28 15:12:04 1993 Ian Lance Taylor (ian@cygnus.com)
10156
10157 * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
10158 the link to it.
10159
10160Tue Jan 26 11:49:50 1993 Ian Lance Taylor (ian@cygnus.com)
10161
10162 * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
10163 checking for equality to bfd_com_section.
10164
10165Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com)
10166
10167 * mips.sc-sh: New file. Ultrix, and hopefully other MIPS ECOFF
10168 targets, linker script.
10169 * mipslit.sh: New file. Little endian MIPS emulation.
10170 * config/mips-lit.mt: New file. Use mipslit emulation.
10171 * configure.in (mips-dec-ultrix*): Use target mips-lit.
10172 * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
10173 (em_mipslit.c): New target. Uses mipslit.sh.
10174
10175Thu Jan 14 15:30:27 1993 Ian Lance Taylor (ian@cygnus.com)
10176
10177 * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
10178 $(tooldir)/bin/gld, so that gcc can find it with or without
10179 collect2.
10180
10181Mon Jan 11 18:50:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
10182
10183 * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
10184 write_norel. All linking is now done via write_relax. Call
10185 ldsym_write before calling write_relax.
10186 * relax.c: Added copyright.
10187 (write_relax): Renamed from write_relaxnorel. Added relocateable
10188 argument. seclet_dump renamed to bfd_seclet_link.
10189 * relax.h: Added copyright.
10190
10191Mon Jan 11 15:41:56 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10192
10193 * ldmain.c (decode_library_subfile): Patch from
10194 hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
10195
10196Fri Jan 8 18:04:33 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10197
10198 * config/vxworks960.mt renamed to config/i960.mt
10199
10200 * configure.in: sparc-aout emulates a sun4, as does
10201 sparc*-vxworks, i960-nindy uses gld960 emulation
10202
10203Fri Jan 8 14:39:07 1993 Steve Chamberlain (sac@thepub.cygnus.com)
10204
10205 Fix support for NOLOAD, add INCLUDE
10206 * ldfile.c (ldfile_open_command_file): pass file name to
10207 lex_push_file.
10208 * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD
10209 * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
10210 attribute.
10211
10212Thu Jan 7 10:22:19 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10213
10214 * Makefile.in, config.h: no more default emulation. Make the lack
10215 of emulation a compile time error
10216
10217Wed Jan 6 01:08:37 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10218
10219 * configure.in: recognise all sparclite variants, not just 'sparclite'
10220
10221Mon Dec 28 11:15:35 1992 Ian Lance Taylor (ian@cygnus.com)
10222
10223 * m68kcoff.sc-sh: define _end as well as end, for consistency with
10224 aout.sc-sh.
10225
10226 * configure.in: accept *-ericsson-ose for any m68k CPU.
10227
10228 * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
10229 for each output section.
10230
10231Mon Dec 21 16:06:59 1992 Per Bothner (bothner@rtl.cygnus.com)
10232
10233 * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c: Use new
10234 macro bfd_asymbol_bfd as appropriate.
10235 * Makefile.in: Un-duplicate ldlex.c dependency.
10236 * condigure.in: Replace my_host case table by sourcing
10237 ../bfd/configure.host. Allow std-host as the default.
10238 * ldmisc.c: Change logic for C++ name demangling: There is
10239 no initial '_' to remove from stab-derived function names.
10240
10241Sun Dec 13 16:31:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10242
10243 * ldlang.c (lang_init_script_file): don't attach the output file
10244 sections to the script file.
10245
10246Wed Dec 9 08:38:05 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10247 * ldlang.c (wild): run expansion loop over command line bfd too.
10248 (lang_ini_script_file): initialize more parts of the command line
10249 bfd.
10250 * ldlex.l: fix DEFINED start states.
10251
10252Mon Dec 7 08:43:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10253 -y support
10254 * ld.texinfo: new doc.
10255 * ldgram.y, ldlex.l: understand -y<symbol>
10256 * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
10257 print info. (add_ysym): new function.
10258 * ldsym.h: (ldsym_type): new define SYM_Y.
10259
10260Sat Nov 21 03:15:27 1992 John Gilmore (gnu@cygnus.com)
10261
10262 * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
10263 ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
10264 ldwrite.h, relax.h: Replace all uses of EXFUN and PROTO ansi-glue
10265 macros with PARAMS. Recreational cleanup. Update copyrights.
10266
10267Tue Nov 10 00:23:37 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10268
10269 * Makefile.in: pass down the bfd source directory for includes
10270
10271Thu Nov 5 15:41:55 1992 Ian Lance Taylor (ian@cygnus.com)
10272
10273 * ldlang.c (lang_size_sections): don't change size and address for
10274 SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
10275 sections.
10276
10277Thu Nov 5 11:33:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10278
10279 * relax.c (build_it): re-enable the processing of data_statements
10280 in scripts, makes counted contructor lists work again.
10281
10282Thu Nov 5 05:43:01 1992 John Gilmore (gnu@cygnus.com)
10283
10284 * ldemul.h: Remove uses of SDEF and PROTO macros (use PARAMS).
10285
10286Tue Oct 20 10:56:06 1992 Ian Lance Taylor (ian@cygnus.com)
10287
10288 * m68kcoff.sc-sh: don't use initial underscores for etext, edata
10289 and end.
10290
10291Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com)
10292
10293 * Support for i386-sysv.
10294 configure.in: check for i386-*-sysv* and i386-*-sco*.
10295 i386coff.sc-sh: rewrote to support SVR3 by default.
10296 ldctor.c (find_constructors): preserve stat_ptr.
10297 ldlang.c (wild_doit): initialize vma and size of new output
10298 section to corresponding input section. This is required for
10299 shared library support.
10300 (lang_size_sections): don't modify vma and size of sections which
10301 are never loaded (for shared libraries).
10302 ldwrite.c (copy_and_relocate): copy the contents of any section
10303 which has contents, not just sections which are loaded (for shared
10304 libraries).
10305
10306Thu Oct 15 15:20:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10307
10308 * ldlang.c (size_input_section): count the sizes of all sections
50bbae35 10309 we allocate.
252b5132
RH
10310
10311Thu Oct 8 09:05:25 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10312
10313 * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to
10314 to demangle symbols better
10315
10316Tue Oct 6 13:08:54 1992 Ian Lance Taylor (ian@cygnus.com)
10317
10318 * ldlang.c (lang_finish): don't warn if -e start symbol does not
10319 exist when linking with -r.
10320
10321Mon Oct 5 14:07:37 1992 Ian Lance Taylor (ian@cygnus.com)
10322
10323 * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
10324 .bss segment.
10325
10326Mon Oct 5 08:55:14 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10327
10328 * ldmain.c (linear_library): don't even think about processing
10329 an object file if it's already been done
10330
10331Thu Oct 1 23:14:59 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10332
10333 * configure.in: the hp9000/300 config file is now hp300
10334
10335Wed Sep 30 07:34:09 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10336
10337 * config/z8ksim.mt: new file
10338
10339Fri Sep 25 13:49:52 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
10340
10341 * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
10342 lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
10343
10344 * ld.h (strip_symbols_type): Add value STRIP_SOME.
10345 * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
10346 * ldlang.c (lang_add_keepsyms_file): New function.
10347 * ldlex.l: Handle "-retain-symbols-file".
10348 * ldsym.c (keepsyms_file, kept_syms): New vars.
10349 (process_keepsyms): New functihon; reads file, marks symbols for
10350 saving.
10351 (write_file_locals): File symbols should always be kept.
10352 (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
10353 and "-s". Process retain-symbols file before setting symtab.
10354 * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
10355 (keepsyms_file, kept_syms): Declare them.
10356
10357 * ldmain.c (main): Non-fatal errors should still cause non-zero
10358 exit status even with -r.
10359
10360Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10361
10362 Added initial support for the z8k
10363 * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
10364 * configure.in, Makefile.in: modified to reflect above
10365
10366 * ldlang.c (lang_check): when linking conflicting architectures,
10367 make the output file reflect at least one of the bad inputs.
10368
10369Tue Sep 15 15:35:38 1992 Ian Lance Taylor (ian@cygnus.com)
10370
10371 * Makefile.in (install): if $(tooldir) exists, install ld in
10372 $(tooldir)/bin.
10373
10374Fri Sep 11 10:24:22 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10375
10376 * Makefile.in, configure.in: modified to support i386-coff
10377 * i386coff.sh: new file
10378
10379Wed Sep 9 11:52:58 1992 Ian Lance Taylor (ian@cygnus.com)
10380
10381 * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
10382 added m68k-coff emulation mode, stolen from a29k emulation.
10383 Almost certainly wrong, but perhaps better than sun3.
10384
10385Thu Sep 3 14:19:30 1992 Per Bothner (bothner@rtl.cygnus.com)
10386
10387 * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
10388 gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
10389 vanilla.em: Rename all (generated) ld__*.c files to em_.c.
10390 This is one character shorter, and lets people build on
10391 SVR3 system. (ld__h8300xray.[co] was the killer there;
10392 h8300xray.sc-sh is also overlong, but seems harmless.)
10393 Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
10394 * Makefile.in (clean): Fix typo mostclean -> mostlyclean.
10395 * configure.in: Add host isc.
10396
10397 * ldver.c: Call it version 2.0.
10398
10399Wed Sep 2 00:21:33 1992 Per Bothner (bothner@rtl.cygnus.com)
10400
10401 * ldver.c: Bump to version 0.98.
10402 * TODO: New file.
10403
10404 * Makefile.in: Added mostlyclean, distclean, realclean rules.
10405
10406Tue Sep 1 23:42:16 1992 Per Bothner (bothner@rtl.cygnus.com)
10407
10408 * ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
10409 * ldlex.l: Moved comment() to end, since some compilers
10410 otherwise have problems with input() used before it is defined.
10411
10412Tue Sep 1 17:45:51 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10413
10414 * configure.in: added Solaris 2 and Irix 4 host support.
10415
10416Mon Aug 31 19:27:11 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10417
10418 * Makefile.in: remove -S flag from the FLEX definition
10419
10420 * configure.in: rewrote, using new style case statement. use
10421 m68k.mt for m68k-aout systems
10422
10423Sun Aug 30 21:38:53 1992 Ian Lance Taylor (ian@cygnus.com)
10424
10425 * Makefile.in: map "ld" through program_transform_name when
10426 installing.
10427
10428Sun Aug 30 18:12:13 1992 Per Bothner (bothner@rtl.cygnus.com)
10429
10430 * cplus-dem.c: Removed. Use the version in libiberty now.
10431 * ldmisc.c: Use new libiberty version of cplus_demangle().
10432
10433Thu Aug 27 16:38:42 1992 Ian Lance Taylor (ian@cygnus.com)
10434
10435 * gld960.em (gld960_choose_target): default to little endian, not
10436 big endian.
10437
10438Wed Aug 26 17:28:51 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10439
10440 * ldlang.c (lang_process): don't pass null pointers when
10441 abs_output_section is what is required.
10442 * ldwrite.c (ldwrite): use malloc to allocate the largest space
10443 used, and pass that down.
10444 * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
10445 than alloca.
10446
10447Mon Aug 24 14:42:06 1992 Ian Lance Taylor (ian@cygnus.com)
10448
10449 * configure.in, config/ose68.mt: renamed OSE to ose.
10450
10451Thu Aug 20 19:55:22 1992 Ken Raeburn (raeburn@cygnus.com)
10452
10453 * ldsym.c (write_file_locals): Reorder check for common or
10454 undefined symbols so that it works.
10455
10456Tue Aug 18 13:41:36 1992 Ian Lance Taylor (ian@cygnus.com)
10457
10458 * configure.in: accept all m68K family members.
10459
10460 * Makefile.in: always create installation directories.
10461
10462Thu Aug 13 11:49:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10463
10464 * ldlex.l: now parses comment correctly, added ~ to acceptable
10465 chars in filenames
10466
10467 * ldexp.c (exp_unop): pass down abs_output_section - now can have
10468 unary -ve constants.
10469
10470 * ldlang.c (lang_finish): warn when an entry symbol supplied on
10471 the command line can't be found.
10472
10473Fri Aug 7 12:31:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10474
10475 * ldlang.h: add new field "loadable" to output_section_statement.
10476 * ldlang.c (lang_output_section_statement_lookup): initilize new
10477 field. (wild_doit): if new field is not set, then stop output
10478 section from being loadable.
10479 (lang_enter_output_section_statement): set the field from the
10480 NOLOAD keyword
10481 * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
10482 * h8300hms.sc-sh, h8300hms.em: get -r right.
10483
10484Thu Aug 6 18:35:21 1992 Per Bothner (bothner@rtl.cygnus.com)
10485
10486 * ldint.texinfo: New internals manual (beginnings thereof).
10487 * PORTING: Removed, merged into ldint.texinfo.
10488
10489Tue Aug 4 21:12:29 1992 Per Bothner (bothner@rtl.cygnus.com)
10490
10491 * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
10492 cdtest.exp: A test program (copied from libg++/test-install)
10493 that tests that constructor and destructors are handled
10494 corrrectly.
10495
10496Mon Aug 3 14:58:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10497
10498 * Makefile.in (install): install from ld.new, renaming during the
10499 copy, or else the next 'make install' needs to re-link ld.
10500
10501Mon Jul 20 03:37:06 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
10502
10503 * configure.in: generalise hp recognition (from sef).
10504
10505Sat Jul 18 14:46:04 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
10506
10507 * configure.in: recognize bsd and hpux hppa configurations.
10508 error messages echo to stderr, not stdout
10509
10510Fri Jul 17 22:06:11 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10511
10512 * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
10513 ldmisc.c: removed rcsid's.
10514
10515Tue Jul 14 08:34:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10516
10517 * ldlang.c (lang_map): print changes in sizes due to relaxing
10518 (size_input_section): maintain the delta information.
10519 * ldlang.h: add new field to struct to contain delta info.
10520 * relax.c (relax_section): complain if input not relaxable.
10521 * ldlex.l : add '_', ',' and '$' to chars which can appear at the
10522 start of a filename
10523
10524Mon Jul 13 17:33:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10525
10526 * ldmain.c(main): prevent -r and -relax from being on at the same
10527 time.
10528
10529Wed Jul 1 17:51:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10530
10531 * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
10532 aliasing problems
10533
10534
10535Thu Jun 18 09:38:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10536
10537 * h8300hms.em, h8300hms.sc-sh: do the right thing for -r
10538 * ldexp.c: lint
10539 * ldlang.c(open_output): set the target arch and machine as soon
10540 as we can. (lang_size_sections): use new macros for setting vma
10541 * ldwrite.c: lint
10542
10543Mon Jun 15 08:47:43 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
10544
10545 * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
10546 Also deleted an unreachable path to wrs.
10547
10548Wed May 27 23:24:19 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
10549
10550 * Makefile.in (install): use -d test for $tooldir before
10551 installing ld there so that $tooldir can be inherited from
10552 top-level Makefile.
10553
10554Wed May 27 16:56:48 1992 Per Bothner (bothner@rtl.cygnus.com)
10555
10556 * ldlang.c: Two non-substantial changes for the sake of
10557 the old Portable C Compiler.
10558
10559Wed May 27 15:15:58 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10560
50bbae35 10561 * ldgram.y, ldlex.l: parse ABSOLUTE
252b5132
RH
10562 * ldexp.c: add support for ABSOLUTE
10563
10564Wed May 27 13:07:20 1992 Per Bothner (bothner@rtl.cygnus.com)
10565
10566 * Makefile.in: Added default definitions for HOSTING_CRT0,
10567 HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
10568 * config/*.mh: Miscellaneous clean-up: Removed definitions
10569 of YACC (since it is not longer used in the Makefile).
10570 Remove HOSTING_* definitions that are subsumed by the
10571 ones added to Makefile.in. Removed most definitions of CC.
10572 * config/{sparc,news,hp300bsd,decstation}.mh: Removed;
10573 These are no longer needed.
10574
10575Fri May 22 13:47:19 1992 Per Bothner (bothner@cygnus.com)
10576
10577 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
10578 rules, since these are used when building a distribution.
10579 * Makefile.in (ldlex.c): Don't re-direct output, since that
10580 leaves a bogus output files if it fails.
10581
10582 * config/sparc.mh: Fix HOSTING_LIBS so it has a chance of working.
10583 * ldlex.c: Fix some unnecessary flex-specific-isms.
10584
10585Fri May 8 11:49:43 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10586
10587 * ldgram.y: move spurious semicolon
10588 * ldexp.h: fix prototype
10589
10590Thu May 7 17:01:12 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
10591
10592 * ld.texinfo: references to linker now say "ld" not "gld".
10593
10594Wed May 6 13:26:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10595
10596 changed calling convention for Q_enter_global_ref
10597 * ldexp.c, ldlang.c, ldmain.c: reflect this
10598 * ldver.c: bump version to 1.97.1
10599 * ldindr.c (add_indirect): when an edict declaring an indirect
10600 symbol is found, make sure that any ideas about the symbol being
10601 common are changed if it now known to be defined.
10602 * ldmain.c (linear_library): complain once if archive isn't
10603 ranlibbed.
10604 * ldlang.h, ldlang.c: make room for and initialize the complain
10605 once field.
10606
10607Wed May 6 11:07:35 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10608
10609 * Makefile.in: use flex & bison from ../ if they exist.
10610
10611Tue May 5 17:47:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10612
10613 * relax.c (build_it): don't allocate space in the output file for
10614 stuff if -R flag applys to it.
10615 * ldfile.c: merge in VMS filename support
10616 * ldmain.c (main): take out ./ from library path, and close file
10617 before unlinking. Make multiple defs of a symbol create an
10618 unexecable file.
10619 * ldmisc.c: fatal errosrs delete output file
10620
10621Tue May 5 14:05:05 1992 Per Bothner (bothner@rtl.cygnus.com)
10622
10623 * ldver.c: Increase version number to 1.97, for consistency
10624 with ../binutils.
10625
10626Tue May 5 12:12:24 1992 K. Richard Pixley (rich@cygnus.com)
10627
10628 * Makefile.in: FLEX -> LEX.
10629
10630 * ld.texinfo: {} -> @{@}.
10631
10632Mon May 4 17:52:41 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
10633
10634 * ld.texinfo: describe alternate, MRI-compatible linker scripts
10635 (and associated change in -c option, now used for these scripts)
10636
10637Mon May 4 16:10:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10638
10639 * ldver.c: Bumped version to 1.96 - new release, resync with the
10640 bfd too #.
10641 * ldexp.c, ldlang.c: now build memory shape tree in obstacks
10642 rather than with raw malloc, makes it easier to track where memory
10643 is going.
10644 * ldsym.h, ldsym.c: create obstack for all global symbols too.
10645 * ldwrite.c (ldwrite): moved malloc so only used when needed.
10646 * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
10647
10648
10649Fri May 1 18:17:52 1992 K. Richard Pixley (rich@cygnus.com)
10650
10651 * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
10652
10653 * Makefile.in: use bootstrap for check.
10654
10655Fri May 1 13:03:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10656
10657 * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
10658 PUBLIC.
10659 * Makefile.in: now use flex, not lex
10660 * ldlex.l, ldlang.c, ldctor.c: lint
10661
10662Wed Apr 22 12:48:42 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10663
10664 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
10665 different sorts of filenames on the command line than in a script.
10666
10667Mon Apr 20 22:37:04 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10668
10669 * Makefile.in: rework CFLAGS so that they can be passed on the
10670 make command line. Remove MINUS_G. Default CFLAGS to -g.
10671
10672Fri Apr 17 08:57:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10673
10674 * relax.c: added handling for new "padding" seclet type, used to
10675 fill out gaps between section.
10676 * ldgram.y, ldlex.l: now -defsym on the command line is done
10677 properly.
10678
10679Wed Apr 15 21:20:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10680
10681 * Makefile.in: the tooldir copy of ld goes directly in tooldir.
10682
10683Wed Apr 15 16:09:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10684
10685 * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
10686 scripts.
10687
10688Thu Apr 9 05:52:02 1992 Ken Raeburn (Raeburn@Cygnus.COM)
10689
10690 * Makefile.in (install): Install second copy in $(tooldir)/bin
10691 without $(program_prefix), since that's what gcc expects.
10692
10693Sat Apr 4 17:44:06 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10694
10695 * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer.
10696 * h8300*: fix bit rot and add support for h8300xray target
10697 * go32.sh: target emulation for go32.
10698
10699Mon Mar 16 14:53:29 1992 Steve Chamberlain (sac@rtl.cygnus.com)
10700
10701 * gld960.em, i960.sc-sh. Fix i960 bit rot
10702
10703Fri Mar 13 19:47:22 1992 K. Richard Pixley (rich@cygnus.com)
10704
10705 * Makefile.in: install man page.
10706
10707Fri Mar 13 08:23:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10708
10709 * config/mt-<foo> renamed to <foo>.mt
10710 * config/mh-<foo> renamed to <foo>.mt
10711 * configure.in changed to reflect this
10712 * genscripts.sh now make .xbn files rather than .xN files
10713
10714Sat Mar 7 03:40:40 1992 K. Richard Pixley (rich@cygnus.com)
10715
10716 * ldver.h: fix decl of ldversion.
10717
10718Fri Mar 6 22:00:35 1992 K. Richard Pixley (rich@cygnus.com)
10719
10720 * Makefile.in: added check target.
10721
10722Fri Mar 6 06:59:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10723
10724 * ldmain.c (Q_enter_file_symbols): now aliases work again
10725
10726Thu Mar 5 21:39:29 1992 K. Richard Pixley (rich@cygnus.com)
10727
10728 * Makefile.in: added clean-info target.
10729
10730Thu Mar 5 16:55:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
10731
10732 * ldexp.c (exp_print_tree): don't try and follow null pointers
10733 around.
10734 * ldgram.y: remove 11 shift reduce errors
10735
10736Tue Mar 3 15:46:39 1992 K. Richard Pixley (rich@rtl.cygnus.com)
10737
10738 * Makefile.in: added tooldir and program_prefix.
10739
10740Fri Feb 28 08:17:45 1992 Steve Chamberlain (sac at thepub.cygnus.com)
10741
10742 * ldlang.c (size_input_section): don't move absolute sections
10743 around!
10744
10745
10746Thu Feb 27 09:20:41 1992 Steve Chamberlain (sac at thepub.cygnus.com)
10747
10748 * cplus-dem.c: yet another copy of this - maybe it should go into
10749 libiberty ?
10750 * ldgram.y: now -V and -v have different actions
10751 * ldver.c: if -V, prints list of emulations compiled in
10752 * ldmisc.c: support for cplus demangling
10753
10754
10755Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
10756
10757 * Makefile.in, configure.in: removed traces of namesubdir,
10758 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
10759 copyrights to '92, changed some from Cygnus to FSF.
10760
10761Thu Feb 20 17:43:46 1992 Per Bothner (bothner at cygnus.com)
10762
10763 * Makefile.in: Change mkscript rule into one for ./mkscript
10764 (for the sake of makes that don't realize they're the same).
10765 * PORTING: Add more details.
10766 * genscripts.sh: Add more tailorability of DATA_ALIGNMENT.
10767
10768Mon Feb 17 12:04:36 1992 Per Bothner (bothner at cygnus.com)
10769
10770 * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
10771 config/mt-hp300bsd: New port to hp300 running BSD.
10772
10773Sat Feb 15 13:59:54 1992 Per Bothner (bothner at cygnus.com)
10774
10775 Major rewrite of how ld is configured. The major idea
10776 is to use shell scripts to generate everything.
10777 * generic.em replaces ldtemplate.
10778 * Other *.em files replace various *.c files.
10779 A *.em file is a shell script that generates the corresponding
10780 ld__*.c file that implements an emulation. This is usually
10781 a straight 'cat' of a here-document, possibly with substitutions.
10782 * Script files (*.sc) are places by *.sc-sh scripts.
10783 Again, these are simple shell scripts that 'cat'
10784 here-documents, usually with some substitutions.
10785 The output a *.sc-sh is a script file.
10786 * Each emulation is defined by a short shell script with
10787 extension *.sh that specifies the emulation-specific
10788 parameters (such as the name of the *.sh-sc and *.em
10789 files to use).
10790 * genscript.sh is the master shell script used to generate
10791 an emulation. It is passed various argument, including
10792 the name a the emulation-speciic *.sh file that it
10793 "sources" to set variables to emulation-specifc parameters.
10794 * config/mt-foo: Changed EMUL=GLDFOO_EMULATION_NAME
10795 to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
10796 * config/mh-foo: Rename LDEMULATION names as appropriate
10797 (usually 'gldfoo' -> plain 'foo').
10798 * ldwrite.c: Fixed a typo in a comment.
10799 * Makefile.in: Major changes. Removed some the sed
10800 magic to converts scripts, since that is now handled
10801 by genscripts.sh and the *.sc-sh scipt generators.
10802 * config.h: Remove a bunch of macros defining emulations
10803 and targets. This becomes one less file to edit when
10804 adding emulations or targets.
10805 * ldemul.h (struct ld_emulation_xfer_struct): Add
10806 emulation_name and target_name fields.
10807 * ldemul.c, ldemul.h: Define some default functions used
10808 by most emulations (and remove from the *.em scripts).
10809 * ldemul.c (ldemul_choose_target): Search the new
10810 ld_emulations array using a loop (instead of a hardwired
10811 nested if statement).
10812 Define the ld_emulation from the automatically-geenrated
10813 ldemul-list.h. This means you no longer have to edit ldemul.c
10814 to add a new emulation.
10815 * ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
10816 their expansions, since the former no longer exist.
10817 * PORTING: A very rough first draft of a porting guide.
10818
10819 * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
10820 to be terminated by a new-line (instead of requiring a semicolon).
10821
10822Mon Feb 10 16:21:02 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10823
10824 * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
10825 tests for NULL pointers all over the place.
10826 * ldlang.c (lang_process): remember to relocate global symbols
10827 *after* relaxing has done it stuff.
10828
10829Thu Feb 6 11:40:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10830
10831 * config/mt-coff-h8300: use EMUL like everything else
10832 * ldlang.c: (print_padding_statement): print the right address.
10833 * Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
10834
10835
10836Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10837
10838 * ldlex.l: Put pack -noinhibit-exec and -sort-common
10839 * ldlang.c (print_data_statement): print the right address.
10840
10841Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
10842
10843 * Makefile.in: The rule for testing ld by re-linking itself
10844 via an intermediate -r link was moved to the ld1 rule
10845 instead of the ld2 rule. This allows ld2 and ld3 to be identical,
10846 which allows the bootstrap rule to work.
10847 * ldctor.c (find_constructors): Don't create a constructor
10848 list if it is already defined (as would happen if ld is
10849 invoked by collect).
10850
10851Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10852
10853 * config/mh-sparc.h: now uses libgcc.a
10854 * ldmain.c: quit using exit
10855 * *sc: use *(COMMON) rather than [COMMON]
10856 * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
10857 to allow preprocessing of .l file.
10858 * Makefile.in: New ldlex.l mangling
10859 * ldexp.c (fold_binary): perform expressions with % and / in
10860 integer.
10861 * ldfile.c (open_a): open archives on VMS in a special way
10862
10863
10864Tue Jan 28 10:18:16 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10865
10866 * ldgram.y: map -M behave in the same way as -Map (sets file name
10867 to be "-".
10868 * ldsym.c, ldlang.c: remember that size of a section is dependent on
10869 whether or not relaxing has been done.
10870 * ldmain.c: don't open a map file if it doesn't have a name
10871 * relax.c: all the brains have moved into bfd.
10872 * ldwrite.c: ammend comment
10873
10874Fri Jan 24 14:23:46 1992 Steve Chamberlain (sac at rtl.cygnus.com)
10875
10876 * Makefile.in: added relax, also made three stage go through a
10877 partial link stage.
10878 * relax.c : added
10879 * config.h: if GNU960 defined, then default emulation mode is
10880 GLD960
10881 * ldexp.h, ldexp.c: map to file hooks
10882 * ldlang.c: map to file hooks
10883 * ldgram.y: added -Map -relax
10884 * ldlex.l: added -relax, -Map
10885 * ldmain.c: open map file
10886 * ldmisc.c: support for map file
10887 * ldwrite.c: new relax magic
10888
10889Thu Dec 19 18:49:51 1991 John Gilmore (gnu at cygnus.com)
10890
10891 * Makefile.in, config/tm-*.h: Clean up make output, only
10892 pass DEFAULT_EMULATION to ldmain.c.
10893
10894Wed Dec 18 15:02:47 1991 Per Bothner (bothner at cygnus.com)
10895
10896 * ldver.c: Bump to version 1.94.
10897
10898Tue Dec 10 04:07:23 1991 K. Richard Pixley (rich at rtl.cygnus.com)
10899
10900 * Makefile.in: infodir belongs in datadir.
10901
10902Mon Dec 9 16:26:43 1991 Per Bothner (bothner at cygnus.com)
10903
10904 * Makefile.in: Pass -y to bison. (Again;
10905 accidentally deleted by Rich.)
10906 * news.sc, ldgld68k.sc: Define __end as well as _end.
10907
10908Sat Dec 7 17:19:26 1991 Steve Chamberlain (sac at rtl.cygnus.com)
10909
10910 * ldindr.h: added to contain prototypes of ldindr.c
10911 * ldfile.c: include ctype.h
10912 * ldmain.c: include the requried prototype headers
10913 * ldwrite.c: get_reloc_upper_bound has been renamed
10914 bfd_get_reloc_upper_bound
10915
10916Fri Dec 6 23:29:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
10917
10918 * Makefile.in: punt "fundamental" mode because it breaks my emacs
10919 macros. install using INSTALL_PROGRAM and INSTALL_DATA. remove
10920 spaces following hyphens, bsd make can't cope. added
10921 standards.text support and made it look like all the other
10922 makefiles.
10923
10924 * configure.in: configure now runs entirely in objdir so make file
10925 existence checks against ${srcdir}. Mark this directory as
10926 target dependent.
10927
10928Thu Dec 5 22:46:16 1991 K. Richard Pixley (rich at rtl.cygnus.com)
10929
10930 * Makefile.in: idestdir and ddestdir go away. Added copyrights
10931 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
10932 and mandir now keyed off datadir by default.
10933
10934Wed Dec 4 23:36:55 1991 Per Bothner (bothner at cygnus.com)
10935
10936 * ldver.c: Bumped version to 1.93.
10937 * Makefile.in: Pass -y to bison.
10938
10939Mon Nov 25 18:28:40 1991 Steve Chamberlain (sac at cygnus.com)
10940
10941 * config.h: h8 is now coff, not ieee
10942 * h8300hds.sc: reflect the same
10943
10944Thu Nov 14 19:55:09 1991 Per Bothner (bothner at cygnus.com)
10945
10946 * ldver.c (ldversion()): Update to 1.92.
10947 * ldctor.c: There are two places constructor sets
10948 can be defined. One of them checked for an existing
10949 duplicate, the other didn't. Unfortunately, the latter
10950 was called after the former ...
10951 So, factor out code for inserting a new element into
10952 constructor_name_list (after checking for a duplicate)
10953 into a new function add_constructor_name, and call
10954 it from both aforementioned places (ldlang_add_constructor
10955 and ldlang_check_for_constructors).
10956
10957Wed Nov 13 15:17:43 1991 Per Bothner (bothner at cygnus.com)
10958
10959 * Makefile.in: Rename .c files generated from ldtemplate
10960 to have names starting with ld__. This helps 'make clean'.
10961
10962Tue Nov 12 18:36:50 1991 Steve Chamberlain (sac at cygnus.com)
10963
10964 * Makefile.in: Take out the version number for install
10965 * m88kbcs.sc: put in contructor blocks.
10966
10967Mon Nov 11 18:47:33 1991 Per Bothner (bothner at cygnus.com)
10968
10969 * ldmisc.c, ldmisc.h: Re-write info() to take a filename
10970 parameter, a format, and an arg pointer, and rename it to
10971 vfinfo(). Write info() in terms of new vfinfo().
10972 New einfo() is the same as info(), except it writes to stderr.
10973 * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
10974 ldmisc.c: Replace "error" calls to info() by new einfo().
10975
10976Mon Nov 11 09:57:32 1991 Steve Chamberlain (steve at cygnus.com)
10977
10978 * ldlex.l ldgram.y: made -V option do same as -v
10979 * Makefile.in: Added $(MINUS_G) flag so debugging can be
10980 turned off
10981
10982Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
10983 i386 aout changes from Bob Kukura
10984 * Makefile.in, config.h: added i386aout support
10985 * configure.in: fixed /h-{myhost} typo
10986 * ldgram.y: -MM now gives more boring map.
10987 * ldlang.c: now does D_PAGED flag the right way.
10988 * ldsym.c: -MM flags does the right thing.
10989
10990Sun Nov 3 15:00:03 1991 Per Bothner (bothner at cygnus.com)
10991
10992 * configure.in: Fixed typo. Also, a fix for hp300bsd.
10993 * ldlang.c (init_os): Compensate for BFD change,
10994 where bfd_make_section now returns NULL for a duplicate
10995 section request, instead of the old section.
10996
10997Thu Oct 17 15:27:13 1991 Per Bothner (bothner at cygnus.com)
10998
10999 * ldver.c: Bump to version 1.91 (consistent with binutils).
11000
11001Wed Oct 16 12:27:08 1991 Per Bothner (bothner at cygnus.com)
11002
11003 * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
11004 ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
11005 ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
11006 ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
11007 Add or update copyright notices.
11008
11009Mon Oct 14 23:55:27 1991 Per Bothner (bothner at cygnus.com)
11010
11011 * README: New file.
11012 * Makefile.in: Changed installation directory name scheme
11013 to be consistent with gcc. Also changed 'install'.
11014
11015Mon Oct 14 17:30:02 1991 Roland H. Pesch (pesch at cygnus.com)
11016
11017 * Makefile.in: new targets ld.mm, ld.me
11018
11019Mon Oct 14 17:27:24 1991 Per Bothner (bothner at cygnus.com)
11020
11021 * Makefile.in, ldtemplate: Need to use separate scripts
11022 for -n and -N options. Yet more complication.
11023
11024Fri Oct 11 22:40:46 1991 John Gilmore (gnu at cygnus.com)
11025
11026 * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
11027 work). Add some lines to avoid Sun Make VPATH bugs.
11028
11029Fri Oct 11 16:42:22 1991 Per Bothner (bothner at cygnus.com)
11030
11031 * news.sc: Add alignment for data segment.
11032 * ldtemplate: Add (yet another) script to get for -n or -N
11033 options. (These need different alignment than ZMAGIC files.)
11034 * Makefile.in: Add stuff for new foo.xn scripts.
11035 These are generated by replacing "ALIGN(0x...00)" by ".".
11036
11037Fri Oct 11 15:43:04 1991 Roland H. Pesch (pesch at cygnus.com)
11038
11039 * Makefile.in: new targets ld.ms, ld-index.ms
11040 ld.texinfo: remove tabs, other cleanups for texi2roff
11041
11042Fri Oct 11 13:51:54 1991 Per Bothner (bothner at cygnus.com)
11043
11044 * ldmain.c (main): Make config.magic_demand_paged be true
c7c54483 11045 by default. Don't set the WP_TEXT and D_PAGED flags of
252b5132
RH
11046 output_bfd here; it's too late, so set it when output_bfd
11047 is created (in ldlang.c). Also fix setting of EXEC_P flag
11048 * ldlang.c (ldlang_open_output): Set output_bfd->flags here.
11049 * ldlang.c: Remove some duplicate extern declarations.
11050 * ldgram.y: Fixes to -N and -n options.
11051 * Makefile.in: Recognize upper case letters in sed script
11052 to remove assignments from script files.
11053 * ldtemplate: Don't assukme that -N or -n options
11054 imply use of -r script.
11055 * mkscript.c: Tweaking to correctly handle \n and \\ in input.
11056
11057Fri Oct 11 10:29:27 1991 Steve Chamberlain (steve at cygnus.com)
11058
11059 * ldtemplate: include bfd.h before sysdep.h.
11060
11061Fri Oct 11 04:24:45 1991 John Gilmore (gnu at cygnus.com)
11062
11063 Restructure configuration scheme for bfd, binutils, ld.
11064
11065 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
11066 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
11067 Change some config names to match other dirs.
11068 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
11069 get defined first.
11070 * config/: Rename some config files to match up h-*.h names.
11071 Remove all the HOST_SYS definitions from the config files.
11072
11073Tue Oct 8 16:00:57 1991 Per Bothner (bothner at cygnus.com)
11074
11075 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
11076 * ldtemplate: Remove ldfile_add_library_path calls;
11077 just use the SEARCH_DIR commands in the script files.
11078 * Makefile.in: Add LIB_PATH macro, which if set is used to replace
11079 the SEARCH_DIR commands in the scripts (using ugly sed magic).
11080 This is primarily intended for cross-linking, where you would
11081 place libaries in a different place than native libraries.
11082 Also, emulations made from ldtemplate now use $(srcdir).
11083 * ldglda29k.sc: Change SEARCH_DIR commands to a conventional
11084 form; people can use the Makefile's LIB_PATH to override.
11085
11086Tue Oct 8 14:51:21 1991 Roland H. Pesch (pesch at cygnus.com)
11087
11088 * Makefile.in: fix target ld.dvi, add target ld.info
11089 ld.texinfo: make info filename ld.info
11090
11091Fri Oct 4 21:51:58 1991 John Gilmore (gnu at cygnus.com)
11092
11093 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun
11094 Make).
11095 * ldfile.c, ldlang.c, ldmain.c, ldwrite.c: Cope with renames of a
11096 few BFD types & enums.
11097
11098\f
11099Local Variables:
11100mode: change-log
11101left-margin: 8
11102fill-column: 74
11103version-control: never
11104End:
This page took 0.507278 seconds and 4 git commands to generate.