b2dc2ba3458c27a3a19762fa2f81065170e14fe7
[deliverable/binutils-gdb.git] / ld / ChangeLog
1 1999-05-30 Cort Dougan <cort@attis.cs.nmt.edu>
2
3 * Makefile.am (ALL_EMULATIONS): Add eelf32ppclinux.o.
4 * configure.tgt (powerpc-*-linux-gnu): Use it.
5 * emulparams/elf32ppclinux.sh: New file.
6
7 1999-05-29 Ian Lance Taylor <ian@zembu.com>
8
9 * ld.texinfo (Options): Clarify that options which refer to files
10 must be properly ordered.
11
12 1999-05-29 Nick Clifton <nickc@cygnus.com>
13
14 * emultempl/armelf.em (..._parse_args): New function: Parse
15 command line option. Accept arm-elf specific command line option
16 '-p' or '--no-pipeline-knowledge'.
17 (..._list_options): New function: Describe the new command line
18 option.
19 (..._before_allocation): Pass the value of the new variable
20 no_pipeline_knowledge to bfd_elf32_arm_process_before_allocation.
21
22 * emultemp/armelf_oabi.em (..._before_allocation): Pass zero as
23 the third parameter to bfd_elf32_arm_process_before_allocation.
24
25 1999-05-28 Nick Clifton <nickc@cygnus.com>
26
27 * lexsup.c (help): Minor formatting changes.
28
29 1999-05-28 Martin Dorey <mdorey@madge.com>
30
31 * configure.tgt (i960-*-elf*): New target.
32 * emulparams/elf32_i960.sh: New file.
33 * Makefile.am (ALL_EMULATIONS): Add eelf32_i960.o.
34 (eelf32_i960.c): New target.
35 * Makefile.in: Rebuild.
36
37 1999-05-26 Nick Clifton <nickc@cygnus.com>
38
39 * emulparams/armelf_oabi.sh (TEMPLATE_NAME): Set to armelf_oabi.
40
41 1999-05-24 Philip Blundell <philb@gnu.org>
42
43 * emultempl/armelf.em (before_parse): Set config.dynamic_link and
44 config.has_shared.
45 * emulparams/armelf.sh (GENERATE_SHLIB_SCRIPT): Define.
46 * emulparams/armelf_linux.sh (GENERATE_SHLIB_SCRIPT): Likewise.
47
48 1999-04-13 Philip Blundell <philb@gnu.org>
49
50 * emultempl/armelf.em: Add definitions related to shared objects
51 (copied from elf32.em).
52
53 Wed May 19 12:44:26 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
54
55 * Makefile.am (ALL_EMULATIONS): Remove earmlinux.o and
56 earm26linux.o, add earmelf_linux.o and earmelf_linux26.o.
57 * Makefile.in: Regenerated.
58
59 1999-05-16 Nick Clifton <nickc@cygnus.com>
60
61 * emulparams/elf32mcore.sh (GENERATE_SHLIB_SCRIPT): Define.
62 (TEMPLATE_NAME): Define.
63
64 Thu May 13 09:48:09 1999 Joel Sherrill (joel@OARcorp.com)
65
66 * configure.tgt (i386-*-rtemself*, sh-*-rtemself*): New targets.
67 (mips*el-*-rtems*, powerpcle-*-rtems*): New targets.
68
69 1999-05-10 DJ Delorie <dj@cygnus.com>
70
71 * scripttempl/pe.sc: Specify the output arch, which Ian says is
72 the Right Thing to do.
73
74 * emultempl/pe.em: various changes to parameterize the
75 target-specific information.
76 (gld_i386pe_after_open): Detect and fix MS import libraries
77 by renaming the member objects (which are all named the same).
78
79 * pe-dll.c: various changes to parameterize the target-specific
80 information.
81 (generate_reloc): support relocs more generically to allow for
82 expansion.
83 (pe_exe_build_sections): new; used to add .relocs to .exes
84 (pe_exe_fill_sections): ditto
85
86 1999-05-10 Catherine Moore <clm@cygnus.com>
87
88 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
89 Check for TARGET_IS_arm_epoc_pe.
90 (gld_${EMULATION_NAME}_before_allocation): Likewise.
91
92 1999-05-12 Anthony Green <green@cygnus.com>
93
94 * ldlang.c (walk_wild, walk_wild_file, walk_wild_section,
95 output_section_callback, gc_section_callback): New functions for
96 generic section walks.
97 (wild, lang_gc_wild): Use walk_wild.
98 (wild_file, lang_gc_wild_file): Deleted. Common logic moved to
99 walk_wild_file.
100 (wild_section, lang_gc_wild_section): Deleted. Common logic moved
101 to walk_fild_section. Unique logic moved into callbacks
102 output_section_callback and gc_section_callback.
103
104 1999-04-26 Tom Tromey <tromey@cygnus.com>
105
106 * aclocal.m4, configure: Updated for new version of libtool.
107
108 1999-04-12 Philip Blundell <pb@nexus.co.uk>
109
110 * emulparams/armelf_linux.sh: New file. Support for ARM
111 GNU/Linux ELF ABI.
112 * emulparams/armelf_linux26.sh: New file. APCS-26 version of above.
113 * configure.tgt: For arm*-*-linux-gnu*, set default emulation to
114 `armelf_linux', and also include `armelf_linux26' and `armelf'.
115 * Makefile.am: Add rules to make earmlinux.c and earmlinux26.c.
116 (ALL_EMULATIONS): Add earmlinux.o and earmlinux26.o.
117 * Makefile.in: Regenerate.
118
119 1999-04-11 Richard Henderson <rth@cygnus.com>
120
121 * Makefile.am (ALL_EMULATIONS): Add elf_i386_be.o.
122 * configure.tgt (i[3456]86-*-beos*): Use it.
123 * emulparams/elf_i386_be.sh: New file.
124 * Makefile.in: Rebuild.
125
126 * configure.in (environ): Detect declaration.
127 * ldmain.c (main): Don't declare environ.
128 * sysdep.h (environ): Declare if needed.
129 * configure, config.in: Rebuild.
130
131 1999-04-11 Richard Henderson <rth@cygnus.com>
132
133 * ldgram.y (ldgram_vers_current_lang): New.
134 (vers_defns): Accept `extern "lang" { }' syntax.
135 * ldlex.l (vers_node_nesting): New.
136 (V_IDENTIFIER): Accept . and $ in symbols.
137 (VERS_NODE): Accept `extern "lang" { }' tokens. Nest VERS_NODE states.
138 * ldlang.c (lang_new_vers_regex): New `lang' argument. Update callers.
139 (lang_vers_match_lang_c): New function.
140 (lang_vers_match_lang_cplusplus): New function.
141 (lang_vers_match_lang_java): New function.
142 (lang_do_version_exports_section): Fix iteration. Don't free
143 section contents, as it is still in use by the patterns.
144
145 1999-04-10 Richard Henderson <rth@cygnus.com>
146
147 * ldmain.c (main): Init link_info.no_undefined.
148 * lexsup.c: Add command-line option --no-undefined.
149
150 1999-04-06 Ian Lance Taylor <ian@zembu.com>
151
152 * ld.h (LC_MESSAGES): Never define.
153 * ldmain.c (main): Don't pass LC_MESSAGES to setlocale if the
154 system does not define it.
155
156 1999-04-06 H.J. Lu <hjl@gnu.org>
157
158 * ldmain.h (demangling): Declare.
159 * ldmain.c (demangling): New global variable.
160 (main): Initialize demangling.
161 * ldmisc.c (vfinfo): Don't demangle symbol if ! demangling.
162 * lexsup.c (ld_options, parse_args): Handle --demangle and
163 --no-demangle.
164 * ld.texinfo, ld.1: Document --demangle/--no-demangle.
165
166 * ldlex.l (V_IDENTIFIER): Allow '.' in symbol.
167
168 1999-04-05 Chris Torek <torek@BSDI.COM>
169
170 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Check that
171 a shared library really exists, avoiding broken symlinks.
172
173 * ldfile.c (ldfile_open_file): Generate a better error message if
174 we can't find a -l file.
175
176 1999-04-05 DJ Delorie <dj@cygnus.com>
177
178 * configure.tgt (i386-*-pe): add targ_extra_ofiles for other PE
179 targets (i386-pe and i386-winnt)
180
181 1999-04-04 Ian Lance Taylor <ian@zembu.com>
182
183 * deffilep.y: Include "sysdep.h" and "ldmisc.h".
184 (def_file_add_directive): Change return type to void. Remove
185 unused locals sh_reserve, sh_commit, and j.
186 (def_ungetc): Always return a value.
187 (def_lex): Correct parenthesization of || within &&.
188 * deffile.h (def_file_add_directive): Update declaration.
189 * pe-dll.c: Include <time.h>, <ctype.h>, and "ldemul.h".
190 (generate_edata): Remove unused local i.
191 (quoteput): Add cast to avoid warning.
192 (pe_dll_generate_def_file): Fix type in format string.
193 (quick_symbol): Remove unused local blhe.
194 (pe_dll_generate_implib): Add cast to avoid warning.
195 (pe_process_import_defs): Remove unused locals ar_head, ar_tail,
196 and n.
197 (pe_as16): Comment out.
198
199 1999-04-04 Don Bowman <don@pixsci.com>
200
201 * configure.tgt: Add mips*-*-vxworks* target.
202
203 1999-03-31 Nick Clifton <nickc@cygnus.com>
204
205 * Makefile.in (ALL_EMULATIONS): Add earm_epoc_pe.o
206 Add build rule and dependencies for earm_epoc_pe.c.
207
208 * emulparams/arm_epoc_pe.sh: New file.
209
210 * configure.tgt: Add 'targ_extra_ofiles' for ARM based PE
211 targets.
212
213 1999-03-31 Philip Blundell <pb@nexus.co.uk>
214
215 * configure.tgt: Match `arm*-*-linux-gnu*' not
216 `armv*-*-linux-gnu'.
217
218 1999-03-26 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
219
220 * scripttempl/elf.sc: Put the .eh_frame and .gcc_except_table
221 sections in the data segment.
222
223 Fri Mar 26 12:05:51 1999 Catherine Moore <clm@cygnus.com>
224
225 * ld.h (wildcard_spec): Add exclude_name.
226 * ldgram.y (EXCLUDE_FILE): New token.
227 (wildcard_spec): Set exclude_name.
228 (file_NAME_list): Recognize EXCLUDE_FILE.
229 * ldlang.c (wild_section): Check for excluded files.
230 (print_wild_statement): Print excluded files.
231 (lang_add_wild): New argument exclude_filename.
232 Set exclude_filename.
233 * ldlang.h (lang_wild_statement_type): Add exclude_filename.
234 * ldlex.l: New token EXCLUDE_FILE.
235 * mri.c (mri_draw_tree): Add argument to lang_add_wild.
236 * scripttempl/elf.sc (CTOR, DTOR): Exclude crtend.o from ctor wildcard.
237 Reorder sorted and unsorted ctors.
238 * scripttempl/elfd10v.sc (CTOR, DTOR): Likewise.
239 * scripttempl/elfd30v.sc (CTOR, DTOR): Likewise.
240 * scripttempl/elfppc.sc (CTOR, DTOR): Likewise.
241
242 1999-03-26 Nick Clifton <nickc@cygnus.com>
243
244 * ldlang.c (lang_gc_sections): If entry_symbol is not defined,
245 default to "start".
246
247 1999-03-03 Nick Clifton <nickc@cygnus.com>
248
249 * scripttempl/elf.sc: Add explicit placements for the .eh_frame
250 and .gcc_except_table sections.
251
252 Wed Mar 3 09:13:34 1999 Catherine Moore <clm@cygnus.clm>
253
254 * scripttempl/elf.sc: Remove .end.ctors and .end.dtors
255 sections. Reorder .ctors section entries.
256 * scripttempl/elfd10v.sc: Likewise.
257 * scripttempl/elfd30v.sc: Likewise.
258 * scripttempl/elfppc.sc: Likewise.
259
260 1999-02-26 Jim Lemke <jlemke@cygnus.com>
261
262 * ldmain.c (main): Wrong error msg for -r and --mpc860c0.
263
264 1999-02-25 Nick Clifton <nickc@cygnus.com>
265
266 * ldlang.c (lang_check_section_addresses): Remove extraneous
267 backslash.
268
269 Thu Feb 25 15:07:24 1999 Catherine Moore <clm@cygnus.com>
270
271 * scripttempl/elf.sc: Don't gather .ctor and .dtor sections
272 for relocateable links.
273 * scripttempl/elfd10v.sc: Likewise.
274 * scripttempl/elfd30v.sc: Likewise.
275 * scripttempl/elfppc.sc: Likewise.
276
277 1999-02-22 Jim Lemke <jlemke@cygnus.com>
278
279 * ldint.texinfo: remove extraneous right brace.
280 * ldmain.c (main): initialize and check option "mpc860c0".
281 * lexsup.c (ld_options, parse_args): add option "mpc860c0".
282
283 Wed Feb 17 12:10:06 1999 Stan Cox <scox@cygnus.com>
284
285 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Remove special
286 .reginfo section handling.
287 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Likewise.
288 * emulparams/elf32elmip.sh (INITIAL_READONLY_SECTIONS): Removed
289 * emulparams/elf32ebmip.sh (INITIAL_READONLY_SECTIONS): Removed
290
291 1999-02-17 Nick Clifton <nickc@cygnus.com>
292
293 Patch from: Scott Bambrough <scottb@corelcomputer.com>
294
295 * configure.tgt: Added armv*-*-linux-gnu to $targ_emul
296 recognition.
297
298 Wed Feb 17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
299
300 * emultempl/armelf_oabi.em
301 (bfd_elf32_arm_allocate_interworking_sections,
302 bfd_elf32_arm_get_bfd_for_interworking,
303 bfd_elf32_arm_process_before_allocation): Define them to use the
304 old ABI versions of the functions.
305
306 Tue Feb 16 16:48:19 1999 Ian Lance Taylor <ian@cygnus.com>
307
308 * configure.in: Change AC_PREREQ to 2.13. Change AM_PROG_INSTALL
309 to AC_PROG_INSTALL. Change AM_EXEEXT to AC_EXEEXT.
310 * Makefile.am (earmelf_oabi.c): Changes spaces to tab.
311 * acconfig.h: Remove.
312 * aclocal.m4: Rebuild.
313 * configure: Rebuild.
314 * Makefile.in: Rebuild.
315
316 Mon Feb 15 18:21:48 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
317
318 * ldexp.h (struct etree_value_type): Change valid onto valid_p.
319
320 * ldexp.c (new_abs): Ditto.
321 (new_rel, new_rel_from_section, fold_binary, invalid, fold_name,
322 exp_fold_tree, exp_binop, exp_trinop, stat_alloc,
323 exp_get_abs_int): Ditto
324
325 * ldlang.c (print_assignment, lang_size_sections,
326 lang_do_assignments): Ditto.
327
328 1999-02-11 Nick Clifton <nickc@cygnus.com>
329
330 * ldlang.c (lang_check_section_addresses): New function: Check
331 addresses assigned to section for overlaps.
332 (lang_process): Call lang_check_section_addresses if suitable.
333
334 * ld.h: Add new boolean field to args_type structure:
335 'check_section_addresses'.
336
337 * ldmain.c: Initialise check_section_addresses field to true.
338
339 * lexsup.c: Add new command line options '--no-check-sections' and
340 '--check-sections'.
341
342 * ld.texinfo: Document new command line options '--check-sections'
343 and '--no-check-sections'.
344
345 1999-02-08 Nick Clifton <nickc@cygnus.com>
346
347 * configure.tgt: Add support for StrongARM target.
348
349 Wed Feb 3 19:41:01 1999 Ian Lance Taylor <ian@cygnus.com>
350
351 * ldctor.c (ldctor_build_sets): Just set SEC_KEEP once. Check for
352 an owner of a section before using it to look up a reloc type.
353 Don't set SEC_KEEP for the absolute section.
354
355 Mon Feb 1 11:39:46 1999 Catherine Moore <clm@cygnus.com>
356
357 * Makefile.am (earmelf_oabi.o): New.
358 * Makefile.in: Regenerate.
359 * configure.tgt (arm-*-oabi): New.
360 (thumb-*-oabi): New.
361 * emulparams/armelf_oabi.sh: New.
362 * emultempl/armelf_oabi.em: New.
363
364 1999-01-31 17:57:31 1998 Michael Meissner <meissner@cygnus.com>
365
366 * scripttempl/elfppc.sc: Add support for -fleading-underscores
367 switch in all linker generated symbols.
368
369 * configure.tgt (powerpc{,le}*-*-vxworks): Add as aliases for
370 powerpc{,le}-*-eabi.
371
372 Wed Jan 20 17:01:48 1999 Ian Lance Taylor <ian@cygnus.com>
373
374 * configure.tgt (i[3456]86-*-solaris2*): New target. From Pavel
375 Roskin <pavel_roskin@geocities.com>.
376
377 1999-01-19 Nick Clifton <nickc@cygnus.com>
378
379 * ldlang.c (lang_size_sections): Count loadable sections as
380 contributing to the size of the current segment.
381
382 1999-01-15 Nick Clifton <nickc@cygnus.com>
383
384 * ldlang.c (lang_size_sections): Only update the current
385 address of a region if the section just placed into it is an
386 allocated section.
387
388 1999-01-12 Nick Clifton <nickc@cygnus.com>
389
390 * Makefile.am: Replace efr30.o with eelf32fr30.o.
391 * Makefile.in: Regenerate.
392
393 * configure.tgt: Replace fr30 with elf32fr30.
394
395 * emulparams/elf32fr30.sh: New file: Replaces fr30.sh, and uses
396 generic elf.sc script. Also replaces the .stack section with a
397 user definable symbol __stack.
398
399 1999-01-11 Nick Clifton <nickc@cygnus.com>
400
401 * scripttempl/fr30.sc: Fill .init and .fini sections with NOP
402 pattern.
403
404 1999-01-03 Ken Raeburn <raeburn@cygnus.com>
405
406 * Makefile.am (check-DEJAGNU): No longer provide HOSTING_EMU,
407 HOSTING_CRT0, HOSTING_LIBS; the test suite can extract them from
408 configure.host and configure.tgt now.
409 * Makefile.in: Rebuild.
410
411 1998-12-27 Ulrich Drepper <drepper@cygnus.com>
412
413 * lexsup.c (parse_args, case OPTION_RPATH): Avoid adding duplicate
414 elements to rpath.
415
416 Thu Dec 10 11:12:28 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
417
418 * Makefile.am (ALL_EMULATIONS): Remove pe-dll.o and deffilep.o.
419 (ALL_EMUL_EXTRA_OFILES): New variable. Put them here instead.
420 * configure.in: Set EMUL_EXTRA_OFILES to $(ALL_EMUL_EXTRA_OFILES)
421 if configuring with all targets.
422 * configure, Makefile.in, aclocal.m4: Rebuild.
423
424 * emultempl/pe.em (pe_enable_stdcall_fixup): Make static.
425 (pe_dll_do_default_excludes): Removed, unused.
426 (pe_def_file, pe_dll_export_everything, pe_dll_kill_ats,
427 pe_dll_stdcall_aliases): Don't initialize them, this file may be
428 compiled more than once.
429 * pe-dll.c (pe_def_file, pe_dll_export_everything,
430 pe_dll_do_default_excludes, pe_dll_kill_ats,
431 pe_dll_stdcall_aliases): Define and initialize them here instead.
432 (generate_reloc): Fix allocation of reloc_addresses array to use
433 bfd_vma instead of unsigned long. Fix element size in qsort call.
434 (reloc_sort): Compare pointers to bfd_vma instead of unsigned
435 long.
436
437 Mon Dec 7 21:10:09 1998 J.J. van der Heijden <j.j.vanderheijden@student.utwente.nl>
438
439 * configure.tgt (i[3456]86-*-mingw32*): Add cygwin target specific
440 files.
441
442 Sun Dec 6 16:33:33 1998 Ian Lance Taylor <ian@cygnus.com>
443
444 * configure.tgt (m68*-*-gnu*): New target. From Aymeric Vincent
445 <aymeric.vincent@emi.u-bordeaux.fr>.
446
447 1998-12-04 Nick Clifton <nickc@cygnus.com>
448
449 * emulparams/fr30.sh (TEXT_START_ADDR): Change TEXT_START_ADDR
450 from 0x100000 to 0x10000 so that it fits in 20 bits.
451
452 Sat Nov 28 22:32:20 1998 Ian Lance Taylor <ian@cygnus.com>
453
454 * ldemul.h (ldemul_recognized_file): Declare.
455
456 Sat Nov 28 22:30:55 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
457
458 * ldlang.c (lang_add_wild): Don't pretend that there is an input
459 file if the filename is a wildcard pattern.
460
461 1998-11-25 DJ Delorie <dj@cygnus.com>
462
463 * ldemul.h (ld_emulation_xfer_struct): new hook "recognized_file"
464 * ldemul.c (ldemul_recognized_file): new function, new hook
465 * ldint.texinfo: document new hook.
466 * ldlang.c (load_symbols): call recognized_hook for all objects we
467 do recognize, in case the emulation needs to handle them
468 specially. PE DLLs use this.
469 * pe-dll.c (pe_dll_generate_def_file): take out hack and debug
470 printfs
471 * emultempl/pe.em (gld_i386_recognized_file): new function
472 (gld_i486_unrecognized_file): take out hack
473
474 1998-11-23 DJ Delorie <dj@cygnus.com>
475
476 * pe-dll.c (fill_edata): fill in timestamp
477 (make_head): name object files sequentially to ensure
478 they link in the right order.
479 (make_tail): same here
480 (pe_process_import_defs): use sequential names for bfds to ensure
481 proper link order.
482 (pe_implied_import_dll): new function; handles linking directly
483 against DLLs by simulating IMPORTS directives. * emultempl/pe.em
484 (gld_i386pe_before_parse): hack bfd to not recognize .dll files
485 via bfd_pe_dll_not_recognized_hack
486
487 1998-11-23 DJ Delorie <dj@cygnus.com>
488
489 * emultempl/pe.em (gld_i386pe_parse_args): Conditionalize call to
490 pe_dll_add_excludes
491
492 Mon Nov 23 14:36:18 1998 Nick Clifton <nickc@cygnus.com>
493
494 * emultempl/pe.em (after_parse): Only create an undefined entry
495 symbol if one has been specified.
496
497 1998-11-23 DJ Delorie <dj@cygnus.com>
498
499 * emultempl/pe.em (gld_i386pe_after_open): call
500 pe_process_import_defs
501 * pe-dll.c (pe_dll_generate_def_file): calculate BASE from
502 pe_data, only print if actually set. Print version only if
503 set.
504 (save_relocs): save relocs for both input and output.
505 (make_one): support internal/external different names.
506 (pe_dll_generate_implib): support new make_one
507 (pe_process_import_defs): new function; handles IMPORT
508 directives in .def files.
509
510 Fri Nov 20 13:06:49 1998 Nick Clifton <nickc@cygnus.com>
511
512 * ldmisc.c (vfinfo): Cope with empty symbol names.
513
514 Thu Nov 19 13:31:15 1998 Nick Clifton <nickc@cygnus.com>
515
516 * scripttempl/pe.sc: Add provision of '_end' symbol.
517
518 Wed Nov 18 18:18:43 1998 Geoffrey Noer <noer@cygnus.com>
519
520 * configure.tgt: change refs from cygwin32* to cygwin*.
521 * aclocal.m4: regenerate
522 * configure.in: don't need to call AM_CYGWIN32.
523 * configure: regenerate
524
525 Mon Nov 16 22:14:07 1998 DJ Delorie <dj@cygnus.com>
526
527 * emultempl/pe.em (gld_i386_finish): generate import library
528 * deffile.h: add hint member.
529 * pe-dll.c (pe_dll_generate_implib): New function with helpers;
530 generates the import library directly from the export table.
531 (fill_edata): remember the actual hint for the import library.
532
533 Sat Nov 14 14:36:24 1998 Ian Lance Taylor <ian@cygnus.com>
534
535 * ld.1: Some cleanups from NOKUBI Hirotaka <hnokubi@yyy.or.jp>.
536
537 Thu Nov 12 19:21:57 1998 Dave Brolley <brolley@cygnus.com>
538
539 * po/ld.pot: Regenerated.
540 * po/POTFILES.in: Regenerated.
541 * configure: Regenerated.
542 * aclocal.m4: Regenerated.
543 * Makefile.in: Regenerated.
544
545 Wed Nov 11 18:10:15 1998 DJ Delorie <dj@cygnus.com>
546
547 * pe-dll.c (generate_reloc): don't output PE relocs for sections
548 that won't be loaded.
549
550 Wed Nov 11 13:44:54 1998 DJ Delorie <dj@cygnus.com>
551
552 * pe-dll.c (fill_edata): don't strip underscores
553
554 Tue Nov 10 21:28:19 1998 DJ Delorie <dj@cygnus.com>
555
556 * ld.texinfo: added i386pe option summary
557
558 Tue Nov 10 17:53:17 1998 DJ Delorie <dj@cygnus.com>
559
560 * pe-dll.c (process_def_file): properly note undefined exported
561 symbols, clean up old code.
562 (pe_dll_generate_def_file): don't crash if pe_def_file is NULL
563 * emultempl/pe.em (gld_i386_parse_args): add
564 (en/dis)able-stdcall-fixups
565 (pe_fixup_stdcalls): warn about stdcall fixups
566 (gld_i386_unrecognized_file): make exported symbols undefs so that
567 archive members get pulled in
568
569 Tue Nov 10 14:50:51 1998 Catherine Moore <clm@cygnus.com>
570
571 * scripttempl/elfd10v.sc: Add KEEP attribute to .init,
572 .fini, .dtors and .ctors. Add .data and .text
573 wildcards to support section garbage collection.
574
575 Mon Nov 9 22:52:50 1998 DJ Delorie <dj@indy.delorie.com>
576
577 * deffilep.y: properly handle relocs with multiple def_files,
578 cache import module names
579
580 Mon Nov 9 22:44:58 1998 DJ Delorie <dj@cygnus.com>
581
582 * pe-dll.c (process_def_file): don't assume exports won't move
583 during a realloc
584
585 Mon Nov 9 16:41:30 1998 DJ Delorie <dj@cygnus.com>
586
587 * pe-dll.c: New file; direct support for PE DLLs
588 * deffile.h: New file; direct support for PE DLLs
589 * deffilep.y: New file; direct support for PE DLLs
590 * emultempl/pe.em: add direct support for PE DLLs
591 * configure.tgt: allow target-specific extra files
592 * configure.in: allow target-specific extra files
593 * ldlang.c (lang_add_assignment): return the assignment so that
594 one can change the value later based on the object files (pe-dll
595 DEF files do this)
596 * ldint.texinfo: add section for emulation walkthrough
597 * Makefile.am: add new files and target-specific extra files
598 * emultempl/pe.em (gld_i386_list_options): list dll-specific
599 options.
600 * pe-dll.c (process_def_file): auto-export everything if
601 nothing is otherwise exported.
602
603 Wed Nov 4 16:39:18 1998 Nick Clifton <nickc@cygnus.com>
604
605 * Makefile.am: Add support for FR30 target.
606 * configure.tgt: Add support for FR30 target.
607 * Makefile.in: Regenerate.
608 * emulparams/fr30.sh: New file.
609 * scripttemp/fr30.sc: New file.
610
611 Mon Nov 2 14:47:15 1998 Catherine Moore <clm@cygnus.com>
612
613 * ldmain.c (main): Don't report error for dynamic links and
614 --gc-sections.
615
616 1998-10-26 16:05 Ulrich Drepper <drepper@cygnus.com>
617
618 * lexsup.c (ld_options): Change text of -O to Optimize output file".
619 (parse_args): Set link_info.optimize based on -O argument.
620 * ldmain.c (main): Initialize link_info.optimze to false.
621 * ld.texinfo: Describe -O option.
622 * ld.1: Likewise.
623
624 Mon Oct 12 14:29:56 1998 Nick Clifton <nickc@cygnus.com>
625
626 * scripttempl/v850.sc: Move .sbss and .scommon sections into their
627 own segment, so that they can be next to the .bss section and so
628 initialised by the same piece of code.
629
630 Fri Oct 9 15:59:52 1998 Catherine Moore <clm@cygnus.com>
631
632 * scripttempl/elf.sc: Merge .sdata.* etc sections.
633 * ldctor.c (ldctor_build_sets): Set SEC_KEEP for
634 ctor sections.
635
636 Mon Oct 5 09:40:43 1998 Catherine Moore <clm@cygnus.com>
637
638 * ldmain.c (main): Error if --gc-sections and
639 dyanmic linking.
640 * scripttempl/v850.sc: Add KEEP attribute to .init,
641 .fini, .dtors and .ctors. Add .data and .text
642 wildcards to support section garbage collection.
643
644 Wed Sep 30 11:19:15 1998 Nick Clifton <nickc@cygnus.com>
645
646 * scripttempl/v850.sc: Rename .call_table section to
647 .call_table_data and create a new section called
648 .call_table_text.
649
650 Sun Sep 20 00:43:26 1998 Ian Lance Taylor <ian@cygnus.com>
651
652 * scripttempl/elf.sc: Add alignment at the end of the .bss
653 section, so that it is included in the memsize of the segment.
654
655 Fri Sep 18 13:42:42 1998 Catherine Moore <clm@cygnus.com>
656
657 * emultempl/elf32.em (gld_place_orphan): Don't process for
658 sections with SEC_EXCLUDE flag.
659
660 Fri Sep 4 09:24:02 1998 Nick Clifton <nickc@cygnus.com>
661
662 * emulparams/d30velf.sh (TEXT_SIZE): Increased to 2000K.
663 (DATA_SIZE): Increased to 2000K.
664
665 Thu Sep 3 17:30:58 1998 Richard Henderson <rth@cygnus.com>
666
667 * emulparams/d10velf.sh (TEMPLATE_NAME): Use elf32.
668
669 Mon Aug 31 01:06:00 1998 Catherine Moore <clm@cygnus.com>
670
671 * Makefile.am: Change armelf.sc to elf.sc
672 * Makefile.in: Regenerate.
673
674 Mon Aug 31 11:12:04 1998 Catherine Moore <clm@cygnus.com>
675
676 * emulparams/armelf.sh: Change SCRIPT_NAME to
677 elf. Change TEXT_START_ADDR to 0x8000. Define
678 OTHER_TEXT_SECTIONS, OTHER_BSS_SYMBOLS and
679 OTHER_BSS_END_SYMBOLS.
680 * scripttempl/elf.sc: Modify to use
681 OTHER_BSS_END_SYMBOLS.
682 * scripttempl/elfarm.sc: Remove file.
683
684 Tue Aug 18 12:05:34 1998 Catherine Moore <clm@cygnus.com>
685
686 * emultempl/armelf.em (gld_armelf_before_allocation):
687 Add bfd_ prefix to elf32_arm_process_before_allocation
688 and elf32_arm_allocate_interworking_sections.
689 (gld_armelf_after_open): Add bfd_ prefix to
690 elf32_arm_get_bfd_for_interworking.
691
692 Fri Aug 14 15:34:29 1998 Ian Lance Taylor <ian@cygnus.com>
693
694 * Makefile.am: Rebuild dependencies.
695 * Makefile.in: Rebuild.
696
697 * ldgram.y: Include "ldctor.h".
698 (statement): Accept SORT around CONSTRUCTORS.
699 * ldctor.c: Include <ctype.h>.
700 (constructors_sorted): New global variable.
701 (ctor_prio, ctor_cmp): New static functions.
702 (ldctor_build_sets): Sort constructors if requested.
703 * ldctor.h (constructors_sorted): Declare.
704 * ldlang.c (print_statement): Print sorted CONSTRUCTORS
705 correctly.
706 * scripttempl/elf.sc: Add sort around CONSTRUCTORS.
707 * ld.texinfo (Output Section Keywords): Document SORT
708 (CONSTRUCTORS).
709
710 Thu Aug 13 12:20:39 1998 Catherine Moore <clm@cygnus.com>
711
712 * emulparams/armelf.sh: Define TEMPLATE_NAME to armelf.
713 * scripttempl/elfarm.sc: Include .glue_7t and .glue7
714 sections.
715 * emultempl/armelf.em: New file.
716
717 Thu Aug 13 12:52:45 1998 H.J. Lu <hjl@gnu.org>
718
719 * Makefile.am (ld.dvi): Use " instead of ' for MAKEINFO.
720 * Makefile.in: Rebuild.
721
722 Tue Aug 11 16:17:01 1998 Catherine Moore <clm@cygnus.com>
723
724 * scripttempl/elfarm.sc: Change text start address
725 back to zero.
726
727 Tue Aug 11 10:01:12 1998 Jeffrey A Law (law@cygnus.com)
728
729 * emulparms/mn10200.sh (MAX_PAGESIZE): Define to 1.
730 * emulparms/mn10300.sh (MAX_PAGESIZE): Define to 1.
731
732 Sun Aug 9 20:31:27 1998 Catherine Moore <clm@cygnus.com>
733
734 * scripttempl/elfarm.sc: Set text start address to
735 0x8000. Add __bss_end definition.
736
737 Sat Aug 1 11:47:37 1998 Catherine Moore <clm@cygnus.com>
738
739 * scripttempl/elfarm.sc: New file.
740 * emulparams/armelf.sh: Set SCRIPT_NAME to elfarm.
741
742 Fri Jul 31 15:56:16 1998 Catherine Moore <clm@cygnus.com>
743
744 * emulparams/armelf.sh: New file.
745 * configure.tgt: Recognize thumb-elf and arm-elf.
746 * Makefile.am (earmelf.o): New.
747 * Makefile.in: Rebuild.
748
749 Fri Jul 24 12:00:57 1998 Ian Lance Taylor <ian@cygnus.com>
750
751 * Makefile.am (install-exec-local): Don't remove the file before
752 checking whether $(bindir) == $(tooldir)/bin. From Maciej
753 W. Rozycki <macro@ds2.pg.gda.pl>.
754 * Makefile.in: Rebuild.
755
756 * configure.tgt: Recognize h8[35]00*-coff* as well as -hms*.
757
758 Thu Jul 23 11:15:12 1998 Ian Lance Taylor <ian@cygnus.com>
759
760 * scripttempl/aout.sc: If ALIGNMENT is defined, use it to set
761 alignment of end symbol.
762 * scripttempl/elf.sc: Likewise.
763 * emulparams/sun4.sh (ALIGNMENT): Define.
764 * emulparams/elf32_sparc.sh (ALIGNMENT): Define.
765 * ldint.texinfo (emulation parameters): Document ALIGNMENT.
766
767 * lexsup.c (parse_args): Add missing break statement.
768
769 * ldlang.c (lang_gc_sections_1): Add default case to switch to
770 avoid warnings.
771
772 Tue Jul 14 15:42:17 1998 Richard Henderson <rth@cygnus.com>
773
774 * configure.tgt (i?86-*-beos{pe,elf,}*): Recognize.
775 * Makefile.am (ei386beos.o): New.
776 * emulparams/i386beos.sh: New file.
777 * emultempl/beos.em, scripttempl/i386beos.sc: New file.
778
779 Tue Jul 14 15:35:42 1998 Richard Henderson <rth@cygnus.com>
780
781 * lexsup.c: New option --version-exports-section.
782 * ld.h (struct args_type): Add version_exports_section.
783 * ldlang.c (lang_do_version_exports_section): New function.
784 (lang_process): Call it.
785
786 Mon Jul 13 13:20:23 1998 Steve Chamberlain <sac@transmeta.com>
787
788 * ldlex.l: Accept ASSERT.
789 * ldgram.y (exp): Add ASSERT_K case.
790 * ldexp.h (node_type): Add etree_assert to node_class enum.
791 (etree_type): Add assert_s field.
792 (exp_assert): Declare.
793 * ldexp.c (exp_fold_tree): Handle etree_assert.
794 (exp_assert): New function.
795 (exp_print_tree): Handle etree_assert.
796 * ld.texinfo (Miscellaneous Commands): Document ASSERT.
797
798 Wed Jul 8 14:03:12 1998 Ian Lance Taylor <ian@cygnus.com>
799
800 * ldgram.y: Change MAX to MAX_K and MIN to MIN_K, to avoid
801 conflicts with system header files. Change all uses.
802
803 * Makefile.am (MAINTAINERCLEANFILES): Define.
804 * Makefile.in: Rebuild.
805
806 Tue Jul 7 18:03:22 1998 Ian Lance Taylor <ian@cygnus.com>
807
808 * Makefile.am (ldver.texi): New target.
809 (ld.info, ld.dvi): Depend upon ldver.texi.
810 * ld.texinfo: Include ldver.texi. Mention version number on title
811 page and in top node.
812 * Makefile.in: Rebuild.
813
814 Mon Jul 6 14:55:13 1998 Ian Lance Taylor <ian@cygnus.com>
815
816 * configure.tgt (i[3456]86-*-solaris*): New target.
817
818 Fri Jul 3 14:19:06 1998 Ian Lance Taylor <ian@cygnus.com>
819
820 * ldlang.c (wild_section): Don't get an assertion failure if the
821 section is discarded.
822
823 * scripttempl/pe.sc: Use SORT to sort sections appropriately.
824 * emultempl/pe.em (sort_by_file_name): Remove.
825 (sort_by_section_name): Remove.
826 (sort_sections_1, sort_sections): Remove.
827 (gld_${EMULATION_NAME}_before_allocation): Don't call
828 sort_sections.
829 (hold_section, hold_section_name): New static variables.
830 (hold_use, hold_text, hold_rdata, hold_data, hold_bss): Likewise.
831 (gld_${EMULATION_NAME}_place_orphan): Rewrite. Look for a good
832 place to put the section. Align the section. Sort the input
833 sections by name.
834 (gld_${EMULATION_NAME}_place_section): New static function.
835
836 * ldlang.c (wild_sort): When sorting by file name, sort by archive
837 name first.
838
839 * emultempl/pe.em (set_pe_subsystem): Don't call
840 ldlang_add_undef.
841 (gld_${EMULATION_NAME}_after_parse): New static function.
842 (ld_${EMULATION_NAME}_emulation): Use new after_parse function
843 rather than after_parse_default.
844
845 * ldgram.y (extern_name_list): Do not require symbols to be
846 separated by commas.
847 (ifile_p1): Add EXTERN.
848 * ldlex.l: Accept EXTERN in BOTH and SCRIPT mode as well as MRI
849 mode.
850 * ld.texinfo (Options): Mention that EXTERN is equivalent to -u.
851 (Miscellaneous Commands): Document EXTERN.
852
853 Wed Jul 1 19:40:34 1998 Richard Henderson <rth@cygnus.com>
854
855 * ld.h (args_type): Add gc_sections.
856 * ldgram.y (ldgram_had_keep, KEEP): New.
857 (input_section_spec_no_keep): Rename from old input_section_spec.
858 (input_section_spec): New. Recognize KEEP.
859 * ldlang.c (wild_section): Handle keep sections.
860 (lang_gc_wild_section, lang_gc_wild_file, lang_gc_wild): New.
861 (lang_gc_sections_1, lang_gc_sections): New.
862 (lang_process): Invoke lang_gc_sections.
863 (lang_add_wild): Add keep argument. Update all callers.
864 * ldlang.h (lang_wild_statement_struct): Add keep_sections.
865 * ldlex.l (KEEP): Match it.
866 * ldmain.c (main): Error on -r and --gc-sections.
867 * lexsup.c: Add --gc-sections.
868
869 * scripttempl/elf.sc: Merge .text.* etc sections appropriately.
870 Mark startup sections with KEEP.
871 * scripttempl/elfppc.sc: Likewise.
872
873 * ld.texinfo: Update for --gc-sections and KEEP.
874
875 Wed Jul 1 15:21:20 1998 Ian Lance Taylor <ian@cygnus.com>
876
877 From Peter Jordan <pjordan@chla.usc.edu>:
878 * scripttempl/i386go32.sc: Correct constructor handling for -u.
879
880 Tue Jun 23 15:17:27 1998 Ian Lance Taylor <ian@cygnus.com>
881
882 * Makefile.am (install-data-local): Make ldscripts subdirectory.
883 * Makefile.in: Rebuild.
884
885 Tue Jun 23 15:17:04 1998 Mike Stump <mrs@wrs.com>
886
887 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
888 with the program transform name.
889 * Makefile.in: Rebuild.
890
891 Sun Jun 21 23:55:16 1998 Jeffrey A Law (law@cygnus.com)
892
893 * ld.texinfo: Note that -relax may make symbolic debugging
894 impossible on some platforms.
895
896 Tue Jun 16 12:51:13 1998 Geoff Keating <geoffk@ozemail.com.au>
897
898 * Makefile.am (Makefile): Remove target.
899 (config.status): New target.
900 * Makefile.in: Rebuild.
901
902 * configure.host (powerpc*-*-linux-gnu*): New host.
903
904 Fri Jun 12 17:38:07 1998 Doug Evans <devans@seba.cygnus.com>
905
906 * scripttempl/elf.sc (INPUT_FILES): Optional INPUT spec.
907
908 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Change top of
909 stack to 8MB.
910
911 Fri Jun 12 19:33:17 1998 Ian Lance Taylor <ian@cygnus.com>
912
913 * Makefile.am (HFILES): Remove config.h.
914 (EMULATION_OFILES, POTFILES): Move patch of May 14 from
915 Makefile.in to Makefile.am.
916 (earmcoff.c): Depend upon armcoff.em, not generic.em.
917 * po/Make-in (all-yes): Correct misspelling in $(PACKAGE).
918 ($(srcdir)/$(PACKAGE).pot): Pass -C to $(XGETTEXT).
919 * Makefile.in, po/POTFILES.in, po/ld.pot: Rebuild.
920
921 Fri Jun 12 13:43:17 1998 Tom Tromey <tromey@cygnus.com>
922
923 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
924 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
925
926 Tue Jun 9 09:36:48 1998 Nick Clifton <nickc@cygnus.com>
927
928 * ldlang.c (lang_finish): Add CONST type modifier to declaration
929 of 'send'.
930
931 Fri Jun 5 18:19:59 1998 Ian Lance Taylor <ian@cygnus.com>
932
933 * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
934 config.has_shared to true.
935 * emultempl/linux.em (gld${EMULATION_NAME}_before_parse):
936 Likewise.
937 * emultempl/sunos.em (gld${EMULATION_NAME}_before_parse):
938 Likewise.
939
940 Tue Jun 2 12:55:03 1998 Ian Lance Taylor <ian@cygnus.com>
941
942 * ldlang.c (lang_finish): If the entry symbol is not found, try
943 parsing it as a number.
944 * ld.texinfo (Options): Document this.
945
946 Mon Jun 1 14:01:20 1998 Ian Lance Taylor <ian@cygnus.com>
947
948 * ld.texinfo (Input Section Wildcards): Document SORT keyword.
949
950 Mon May 18 12:42:53 1998 Doug Evans <devans@canuck.cygnus.com>
951
952 * ld.h (ld_config_type): New member has_shared.
953 * ldmain.c (main): Initialize it.
954 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set it.
955 * lexsup.c (parse_args): Treat -shared as error if not supported.
956
957 Mon May 18 13:14:43 1998 Ian Lance Taylor <ian@cygnus.com>
958
959 From Jason Merrill <jason@cygnus.com>:
960 * ldlang.c (wild_sort): Correct order of sort.
961 * scripttempl/elf.sc: Put *crtbegin.o before other .ctors and
962 .dtors.
963 * scripttempl/elfd10v.sc: Likewise.
964 * scripttempl/elfd30v.sc: Likewise.
965 * scripttempl/elfppc.sc: Likewise.
966
967 Fri May 15 00:22:35 1998 Ian Lance Taylor <ian@cygnus.com>
968
969 * ldlex.l: Recognize keyword SORT.
970 * ldgram.y (current_file): Change to struct wildcard_spec.
971 (%union): Add new fields cname and wildcard.
972 (wildcard_name, wildcard_spec): New nonterminals.
973 (file_NAME_list): Use wildcard_spec.
974 (input_section_spec): Change current_file usage.
975 * ld.h (struct wildcard_spec): Define.
976 * ldlang.h (lang_wild_statement_struct): Add new fields
977 sections_sorted and filenames_sorted.
978 (lang_add_wild): Update declaration.
979 * ldlang.c (wild_sort): New static function.
980 (wild_section): Use wild_sort.
981 (print_wild_statement): Print sorting information.
982 (lang_add_wild): Add new parameters sections_sorted and
983 filenames_sorted. Change all callers.
984 * mri.c (mri_draw_tree): Update calls to lang_add_wild.
985 * scripttempl/elf.sc: Sort .ctors.* and .dtors.* by section name.
986 * scripttempl/elfd10v.sc: Likewise.
987 * scripttempl/elfd30v.sc: Likewise.
988 * scripttempl/elfppc.sc: Likewise.
989
990 Thu May 14 18:39:16 1998 Richard Henderson <rth@cygnus.com>
991
992 * emulparams/m32relf.sh (TEMPLATE_NAME): Define.
993
994 Thu May 14 14:51:24 1998 Nick Clifton <nickc@cygnus.com>
995
996 * ldemul.h: Add new prototype: ldemul_list_emulation_options.
997 (ld_emulation_xfer_struct): Add new field: list_options.
998 * ldemul.c (ldemul_list_options): New function. Call the
999 list_options field of the ld_emulation_xfer_struct for each
1000 supported emulation, if such a function is present.
1001 * lexsup.c (help): Call ldemul_list_emulation_options.
1002 * emultempl/pe.em (gld_<>_list_options): New function. Describe
1003 the pe emulation specific command line options.
1004 * emultempl/armcoff.em (gld<>_list_options): New function.
1005 Describe the armcoff emulation specific command line options.
1006
1007 * emultempl/pe.em: Add a new command line option:
1008 --support-old-code.
1009 * emultempl/armcoff.em: Ditto.
1010 * ld.texinfo: Document the --support-old-code option.
1011
1012 * Makefile.in: Add emulation files for POTFILES.in target.
1013 * emultempl/pe.em: Internationalise suitable strings.
1014 * emultempl/armcoff.em: Internationalise suitable strings.
1015 * po/POTFILES.in: Rebuilt.
1016
1017 Sun May 10 22:36:30 1998 Jeffrey A Law (law@cygnus.com)
1018
1019 * po/Make-in (install-info): New target.
1020
1021 Tue Apr 28 19:18:30 1998 Tom Tromey <tromey@cygnus.com>
1022
1023 * ldmain.c (main): Conditionally call setlocale.
1024 * ld.h: Include <locale.h> if HAVE_LOCALE_H.
1025 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
1026
1027 Mon Apr 27 11:56:21 1998 Ian Lance Taylor <ian@cygnus.com>
1028
1029 * configure.in: Change version number to 2.9.4
1030 * configure: Rebuild.
1031
1032 * ld.texinfo (Options) [-rpath-link]: Mention ld.so.conf.
1033
1034 Based on patch from H.J. Lu <hjl@gnu.org>:
1035 * emultempl/elf32.em (global_vercheck_needed): New file static
1036 variable.
1037 (global_vercheck_failed): New file static variable.
1038 (gld${EMULATION_NAME}_after_open): Check for shared libraries
1039 twice, once with force set to 0 and once with it set to 1.
1040 (gld${EMULATION_NAME}_check_ld_so_conf): Add force parameter.
1041 Change all callers.
1042 (gld${EMULATION_NAME}_search_needed): Likewise.
1043 (gld${EMULATION_NAME}_try_needed): Likewise. If not force, check
1044 whether the libraries needs any incompatible versions.
1045 (gld${EMULATION_NAME}_vercheck): New static function.
1046
1047 Wed Apr 22 16:01:35 1998 Tom Tromey <tromey@cygnus.com>
1048
1049 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
1050
1051 Wed Apr 22 12:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
1052
1053 * Makefile.am (check-DEJAGNU): Add $(INTLLIBS) to LIBIBERTY when
1054 invoking runtest.
1055 * Makefile.in: Rebuild.
1056
1057 * lexsup.c (parse_args): Change -l options into --library options
1058 to avoid confusion between -li and -library.
1059
1060 * ld.texinfo (MEMORY): Clarify use of >REGION.
1061
1062 Tue Apr 21 23:12:40 1998 Tom Tromey <tromey@scribbles.cygnus.com>
1063
1064 * Many files: Added gettext invocations around user-visible
1065 strings.
1066 * ld.h: Added gettext-related includes and defines.
1067 * ldmain.c: Call setlocale, bindtextdomain, textdomain.
1068 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
1069 HAVE_LC_MESSAGES): Define.
1070 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
1071 po/Makefile. Use AM_PROG_LEX.
1072 (TDIRS): AC_SUBST early on, to avoid having value split when it
1073 happens to cross line 90 of the generated sed script.
1074 * Makefile.am (SUBDIRS): New macro.
1075 (POTFILES): Likewise.
1076 (po/POTFILES.in): New target.
1077 (ld_new_LDADD): Added INTLLIBS.
1078 (ld_new_DEPENDENCIES): Added INTLDEPS.
1079 * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
1080
1081 Tue Apr 21 23:07:07 1998 Ian Lance Taylor <ian@cygnus.com>
1082
1083 * ld.texinfo (Simple Example): Rewrite a few things as suggested
1084 by Nick Clifton <nickc@cygnus.com>.
1085 (PROVIDE): Likewise.
1086
1087 Tue Apr 21 09:55:06 1998 Nick Clifton <nickc@cygnus.com>
1088
1089 * emultempl/pe.em: Rename external arm interworking functions
1090 to conform to BFD naming conventions. Add code to _after_open()
1091 function to obtain a bfd for use by the interworking code.
1092
1093 * emultempl/armcoff.em: Rename external arm interworking functions
1094 to conform to BFD naming conventions. Add new _after_open()
1095 function to obtain a bfd for use by the interworking code.
1096
1097 Sun Apr 19 19:23:09 1998 Richard Henderson <rth@cygnus.com>
1098
1099 * ldlang.c (lang_size_sections) [case lang_assignment_statement_enum]:
1100 Update dot and the default memory section even when relaxing.
1101
1102 Sat Apr 18 18:41:12 1998 Richard Henderson <rth@cygnus.com>
1103
1104 * ldlang.c (lang_one_common): Manipulate the section's cooked size
1105 rather than its raw size.
1106
1107 Tue Apr 7 13:35:29 1998 H.J. Lu <hjl@gnu.org>
1108
1109 * configure.in (TESTBFDLIB): New. Defined and substituted.
1110 * Makefile.am (TESTBFDLIB): Changed to @TESTBFDLIB@.
1111 * configure, Makefile.in: Rebuild.
1112
1113 Mon Apr 6 15:33:39 1998 Ian Lance Taylor <ian@cygnus.com>
1114
1115 * Makefile.am (ld.info): Invoke makeinfo with -I options directly
1116 rather than relying on default rule. Don't depend upon
1117 bfdsumm.texi.
1118 (ld.dvi): Likewise.
1119 (bfdsumm.texi): Remove target.
1120 (CLEANFILES): Take bfdsumm.texi out of value.
1121 * Makefile.in: Rebuild.
1122
1123 Sun Apr 5 13:07:57 1998 Ian Lance Taylor <ian@cygnus.com>
1124
1125 * scripttempl/pe.sc: Use shell variables to avoid depending upon
1126 how $ is handled when expanding a shell substitution.
1127
1128 Fri Apr 3 00:56:50 1998 Ian Lance Taylor <ian@cygnus.com>
1129
1130 * Makefile.am (MOSTLYCLEANFILES): Add ld.log and ld.sum.
1131 (DISTCLEANFILES): Add site.exp and site.bak.
1132 * Makefile.in: Rebuild.
1133
1134 * configure.in: Put the tdirs in a file and use AC_SUBST_FILE,
1135 rather than in a shell variable and using AC_SUBST.
1136 * Makefile.am (DISTCLEANFILES): Remove ldscripts. Add tdirs.
1137 (distclean-local): New target.
1138 * configure, Makefile.in: Rebuild.
1139
1140 * ld.texinfo: Completely rewrite linker script documentation.
1141
1142 Mon Mar 30 12:47:33 1998 Ian Lance Taylor <ian@cygnus.com>
1143
1144 * configure.in: Set version to 2.9.1.
1145 * configure: Rebuild.
1146
1147 * Branched binutils 2.9.
1148
1149 Sat Mar 28 16:48:19 1998 Ian Lance Taylor <ian@cygnus.com>
1150
1151 * Makefile.am (MOSTLYCLEANFILES): Remove tmpdir.
1152 (mostlyclean-local): New target to remove tmpdir.
1153 * Makefile.in: Rebuild.
1154
1155 Fix some gcc -Wall warnings:
1156 * ldcref.c (output_cref): Add casts to avoid warnings.
1157 * ldfile.c (ldfile_add_arch): Likewise.
1158 * ldlang.c (lang_leave_overlay_section): Likewise.
1159 * lexsup.c (OPTION_COUNT): Likewise.
1160 (parse_args): Likewise.
1161 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan):
1162 Likewise.
1163 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Likewise.
1164 * ldlang.c (lang_check): Initialize variables to avoid warnings.
1165 * ldwrite.c (build_link_order): Likewise.
1166 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Likewise.
1167 * emultempl/armcoff.em (gld${EMULATION_NAME}_before_allocation):
1168 Remove unused variables.
1169
1170 * Makefile.am (MOSTLYCLEANFILES): Correct name (was
1171 MOSTCLEANFILES).
1172 * Makefile.in: Rebuild.
1173
1174 Fri Mar 27 16:39:25 1998 Ian Lance Taylor <ian@cygnus.com>
1175
1176 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Put
1177 ARM code inside ifdef TARGET_IS_armpe.
1178
1179 Wed Mar 25 11:34:13 1998 Ian Lance Taylor <ian@cygnus.com>
1180
1181 Based on patch from H.J. Lu <hjl@gnu.org>:
1182 * Makefile.am (LDDISTSTUFF): New variable.
1183 (diststuff): New target.
1184 * Makefile.in: Rebuild.
1185
1186 * scripttempl/pe.sc: Only include .idata\$[0-7] in .idata when
1187 relocating.
1188
1189 Tue Mar 24 15:59:29 1998 Nick Clifton <nickc@cygnus.com>
1190
1191 * scripttempl/pe.sc (.text): Add .glue_7 and .glue_7t sections to
1192 hold Arm/Thumb stubs.
1193
1194 * emultempl/pe.em (gld_pe_before_allocation): Call
1195 arm_process_before_allocation (for ARM/Thumb targets) in order to
1196 gather interworking stb information.
1197
1198 Mon Mar 23 18:54:15 1998 Joel Sherrill <joel@OARcorp.com>
1199
1200 * configure.tgt: (sh*-*-rtems*): Switched from ELF to COFF.
1201
1202 Fri Mar 20 19:17:13 1998 Ian Lance Taylor <ian@cygnus.com>
1203
1204 * aclocal.m4, configure: Rebuild with libtool 1.2.
1205
1206 Thu Mar 19 14:54:45 1998 Geoffrey Noer <noer@cygnus.com>
1207
1208 * scripttempl/pe.sc: The Cygwin32 library uses a .data$nocopy
1209 section to avoid copying certain data on fork. The linker used to
1210 include this between __data_start__ and __data_end__, but that
1211 breaks building the cygwin32 dll. The fix is to rename the
1212 section ".data_cygwin_nocopy" and explictly include it after
1213 __data_end__.
1214
1215 Wed Mar 18 09:42:24 1998 Nick Clifton <nickc@cygnus.com>
1216
1217 * configure.tgt (targ_extra_emuls): Add thumb-pe target.
1218
1219 Sun Mar 8 23:34:14 1998 Stan Cox <scox@equinox.cygnus.com>
1220
1221 * configure.tgt (sparclite*-*-elf): Added.
1222
1223 Mon Mar 2 19:24:08 1998 Michael Meissner <meissner@cygnus.com>
1224
1225 * ldlang.c (lang_size_sections): If the default memory region is
1226 *default*, see if there is a memory region that could be used.
1227
1228 Thu Feb 26 17:09:53 1998 Michael Meissner <meissner@cygnus.com>
1229
1230 * scripttempl/elfd30v.sc: Add support for .eit_v section and put
1231 it at 0xfffff020.
1232 * emulparams/d30v{elf,_o,_e}.sh: Ditto.
1233
1234 Mon Feb 23 17:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
1235
1236 * emultempl/pe.em (sort_sections): Permit the wildcard to include
1237 a trailing '*' when sorting grouped sections.
1238 * scripttempl/pe.sc: Include grouped sections using NAME\$*. Only
1239 include them when relocating.
1240
1241 Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
1242
1243 * Makefile.am (install-exec-local): Install properly when ln
1244 fails or tooldir == prefix.
1245
1246 Fri Feb 13 15:24:06 1998 Ian Lance Taylor <ian@cygnus.com>
1247
1248 * Makefile.am (AUTOMAKE_OPTIONS): Define.
1249 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
1250
1251 Thu Feb 12 14:10:44 1998 Ian Lance Taylor <ian@cygnus.com>
1252
1253 * scripttempl/elf.sc: Align the _end symbol according to the ELF
1254 format size. From Gordon W. Ross <gwr@mc.com>.
1255
1256 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
1257 * configure.host (alpha*-*-netbsd*): New host.
1258 * configure.tgt (alpha*-*-netbsd*, powerpc-*-netbsd*): New
1259 targets.
1260
1261 * lexsup.c (help): Update bug-gnu-utils address.
1262 * ld.texinfo (Bug Reporting): Likewise.
1263
1264 Tue Feb 10 18:05:56 1998 Ian Lance Taylor <ian@cygnus.com>
1265
1266 * ldlang.c (lang_size_sections): Warn if some memory regions were
1267 defined, but a loadable section is going into the default memory
1268 region.
1269
1270 Tue Feb 10 16:17:20 1998 H.J. Lu <hjl@gnu.org>
1271
1272 * ldlex.l (V_IDENTIFIER): Allow '.' as symbol prefix.
1273
1274 Tue Feb 10 15:09:45 1998 Ian Lance Taylor <ian@cygnus.com>
1275
1276 * Makefile.am (Makefile): Add target, for dependencies on
1277 configure.host and configure.tgt.
1278 * configure.host, configure.tgt: Change -linux* to -linux-gnu*.
1279 * Makefile.in: Rebuild.
1280
1281 Mon Feb 9 13:44:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
1282
1283 * scripttempl/elfd10v.sc (.stack): Move stack to 0x00..7FFE.
1284
1285 * emulparams/d10velf.sh (READONLY_START_ADDR): Read only section
1286 moved to 0x00.....4.
1287
1288 Sat Feb 7 15:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
1289
1290 * configure, aclocal.m4: Rebuild with new libtool.
1291
1292 Thu Feb 5 12:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
1293
1294 * scripttempl/pe.sc: Remove ${RELOCATING-0} from all sections.
1295 From Thomas de Lellis <tdel@wrs.com>.
1296
1297 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
1298
1299 Wed Feb 4 13:02:32 1998 Ian Lance Taylor <ian@cygnus.com>
1300
1301 * Makefile.am (ld_new_LDADD): Remove @LEXLIB@.
1302 * Makefile.in: Rebuild.
1303
1304 Mon Feb 2 19:34:54 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
1305
1306 Add tms320c30 support:
1307 * configure.tgt (tic30-*-*aout*, tic30-*-*coff*): New targets.
1308 * emulparams/tic30aout.sh: New file.
1309 * emulparams/tic30coff.sh: New file.
1310 * scripttempl/tic30aout.sc: New file.
1311 * scripttempl/tic30coff.sc: New file.
1312 * Makefile.am (ALL_EMULATIONS): Add etic30aout.o and
1313 etic30coff.o.
1314 (etic30aout.c, etic30coff.c): New targets.
1315 * Makefile.in: Rebuild.
1316
1317 Mon Feb 2 14:10:59 1998 Ian Lance Taylor <ian@cygnus.com>
1318
1319 * configure.host: Correct HOSTING_CRT0 in alpha*-*-linux* case to
1320 accept either ld.so or ld-linux.so.
1321
1322 Fri Jan 30 19:16:28 1998 Doug Evans <devans@canuck.cygnus.com>
1323
1324 * Makefile.am ({CC,CXX}_FOR_TARGET): Change program_transform_name
1325 to transform.
1326 * Makefile.in: Regenerate.
1327
1328 Fri Jan 30 19:15:17 1998 Geoff Keating <geoffk@ozemail.com.au>
1329
1330 * scripttempl/elfppc.sc: Put .dynsbss in .sbss.
1331
1332 Fri Jan 30 11:43:49 1998 H.J. Lu <hjl@gnu.ai.mit.edu>
1333
1334 * Makefile.am (eelf32bsmip.c, eelf32lsmip.c): New targets.
1335 * Makefile.in: Rebuild.
1336
1337 Thu Jan 29 16:04:21 1998 Mumit Khan <khan@xraylith.wisc.edu>
1338
1339 * ldfile.c (slash): Set to backslash if _WIN32 but not
1340 __CYGWIN32__.
1341 (ldfile_open_file_search): If __MSDOS__ or _WIN32, accept a
1342 leading backslash or a leading x: as an absolute path.
1343 (ldfile_find_command_file): Use slash rather than / when
1344 generating name to try.
1345 * lexsup.c (PATH_SEPARATOR): Define.
1346 (set_default_dirlist): Use PATH_SEPARATOR rather than ':'.
1347
1348 Wed Jan 28 14:06:30 1998 Richard Henderson <rth@cygnus.com>
1349
1350 * emulparams/elf64_sparc.sh (ELFSIZE): 64
1351 (TEXT_START_ADDR): Round off, since SIZEOF_HEADERS is added later.
1352 (DATA_PLT): Needed by v9 abi.
1353
1354 Wed Jan 28 16:37:27 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
1355
1356 * configure.tgt (i[3456]86-*-mingw32*): New entry.
1357
1358 Wed Jan 28 15:51:58 1998 Ian Lance Taylor <ian@cygnus.com>
1359
1360 * scripttempl/elf.sc: Only include linkonce sections in final
1361 sections when relocating.
1362
1363 Wed Jan 28 14:10:01 1998 Ian Lance Taylor <ian@cygnus.com>
1364
1365 * ld.texinfo (Options): Add a brief description of the types of
1366 information included in a link map.
1367
1368 * ld.texinfo (Options): Mention LDEMULATION in description of -m.
1369 (Environment): Mention LDEMULATION.
1370
1371 * ld.texinfo (Options): Clarify --export-dynamic a bit.
1372
1373 Thu Jan 22 16:07:23 1998 Richard Henderson <rth@cygnus.com>
1374
1375 * ldlex.l (<SCRIPT>{WILDCHAR}*): Take care for the comments this
1376 pattern could match.
1377
1378 Wed Jan 21 22:26:46 1998 Ian Lance Taylor <ian@cygnus.com>
1379
1380 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): When doing
1381 a relocateable link, set the image base to 0, and don't define the
1382 various symbols.
1383 * emulparams/i386pe.sh (RELOCATEABLE_OUTPUT_FORMAT): Define.
1384 * scripttempl/pe.sc: Swap the .data and .bss sections so that
1385 .data comes first. If doing a relocateable link, use
1386 RELOCATEABLE_OUTPUT_FORMAT if it is defined, and start the
1387 sections at 0, and don't define any symbols.
1388
1389 * ldlang.c (lang_memory_default): Correct parenthisization of
1390 expression.
1391
1392 Wed Jan 21 21:20:32 1998 Manfred Hollstein <manfred@s-direktnet.de>
1393
1394 * emultempl/sunos.em: Don't include sys/types.h and sys/stat.h
1395 here; they are included already via sysdep.h.
1396
1397 Tue Jan 6 13:40:02 1998 Richard Henderson <rth@cygnus.com>
1398
1399 * scripttempl/i960.sc: Don't explicitly set .data and .bss start.
1400
1401 Fri Jan 2 20:15:37 1998 Michael Meissner <meissner@cygnus.com>
1402
1403 * ldgram.y (attributes_opt): Pass region pointer to
1404 lang_set_flags, not &region->flags.
1405
1406 * ldlang.c (lang_memory_default): New function to figure out a
1407 default memory region for a section if it was not specified.
1408 (lang_memory_region_lookup): Zero flags, not_flags field.
1409 (lang_map{,_flags}): Print attribute flags in memory map.
1410 (lang_size_sections): Call lang_memory_default to get default
1411 memory region.
1412 (lang_set_flags): Implement attribute flags for real. Take new
1413 argument to give the flags we are to skip for this region.
1414
1415 * ldlang.h (memory_region_struct): Add not_flags field, make both
1416 flags fields flagword type.
1417 (lang_output_section_state): Make flags field flagword type.
1418 (lang_set_flags): Update prototype to match new calling sequence.
1419 (lang_memory_region_default): Add prototype.
1420
1421 * emulparams/d30v{_e,_o,elf}.sh ({TEXT,DATA,EMEM}_DEF_SECTION):
1422 Define whether or not the region gets default sections, and if so,
1423 what sections.
1424
1425 * scripttempl/elfd30v.sc (MEMORY): Set up which of the regions get
1426 default sections.
1427
1428 Thu Jan 1 22:58:04 1998 Michael Meissner <meissner@cygnus.com>
1429
1430 * scripttempl/elfd30v.sc (.eh_frame): Link into the data section.
1431
1432 Thu Jan 1 18:04:51 1998 Jeffrey A Law (law@cygnus.com)
1433
1434 * scripttempl/h8300h.sc: Fix typo.
1435 * scripttempl/h8300s.sc: Likewise.
1436
1437 Sun Dec 21 12:51:49 1997 Ian Lance Taylor <ian@cygnus.com>
1438
1439 * ldexp.c (fold_name): Don't crash if the symbol is defined in a
1440 section with no output section, such as a shared library section.
1441
1442 Wed Dec 17 12:14:11 1997 Ian Lance Taylor <ian@cygnus.com>
1443
1444 * lexsup.c (parse_args): Keep track of where we are in the option
1445 parsing before calling ldemul_parse_args, so that we don't call it
1446 multiple times on the same argument and confuse the getopt
1447 internals.
1448
1449 Thu Dec 11 09:00:15 1997 Michael Meissner <meissner@cygnus.com>
1450
1451 * configure.tgt (d30v-elf-*): Rename d30velf_e to d30v_e and
1452 d30velf_o to d30v_o to work in DOS environments.
1453 * Makefile.{am,in}: Ditto.
1454
1455 * emulparams/d30v_{o,e}: Rename from d30velf_{o,e}.
1456 * emulparams/d30velf_{o,e}: Deleted.
1457
1458 Wed Dec 10 17:40:08 1997 Nick Clifton <nickc@cygnus.com>
1459
1460 * scripttempl/armcoff.sc: Add glue sections (code taken from Arm
1461 branch).
1462
1463 * emulparams/armcoff.sh (TEMPLATE_NAME): Set to armcoff.
1464
1465 * emultempl/armcoff.em: New file, imported from Arm branch.
1466
1467 Wed Dec 10 14:10:44 1997 Michael Meissner <meissner@cygnus.com>
1468
1469 * scripttempl/elfd30v.sc: Add .rel and .rela sections for all
1470 defined sections. Set up __{D,C}TOR_{LIST,END}__. Add onchip and
1471 external memory sections for rodata. Delete .string, .rodata1,
1472 and .data1 sections.
1473
1474 Tue Dec 9 15:28:17 1997 Michael Meissner <meissner@cygnus.com>
1475
1476 * Makefile.am: Add Oct 23 changes to Makefile.in here.
1477
1478 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed10velf.o.
1479
1480 * Makefile.{am,in}: (ALL_EMULATIONS): Add etic80coff.o.
1481
1482 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed30velf{,_e,_o}.o.
1483 (ed30velf_e.c): Like d30velf, except .text/.data/etc always go in
1484 external memory.
1485 (ed30velf_o.c): Like d30velf, except .text/.data/etc always go in
1486 onchip memory.
1487
1488 * emulparams/d30velf.sh (STACK_START_ADDR): Top of default
1489 stack.
1490 ({TEXT,DATA,EMEM}_SIZE): Sizes of the 3 memory areas.
1491 ({TEXT,DATA,BSS}_MEMORY): Which memory region .text, .data, and
1492 .bss should go in.
1493
1494 * emulparams/d30velf_{e,o}.sh: New files to be explicit whether
1495 .text, .data, etc go in external memory or onchip memory.
1496
1497 * configure.tgt (d30v-*-*ext*): New configuration to default
1498 .text, .data, etc. in external memory.
1499 (d30v-*-*onchip*): New configuration to default .text, .data,
1500 etc. in onchip memory.
1501 (d30v-*-*): Add d30velf_{e,o} emulations.
1502
1503 * scripttempl/elfd30v.sc: Allow .text, .data, .bss to be put in
1504 either the onchip text/data areas or the external memory area.
1505 (MEMORY): Get sizes from d30velf.sh.
1506 (.e{data,text,bss}): Put sections in the external memory region.
1507 (.stext): Put section in the onchip text region.
1508 (.s{data,bss}): Put sections in the onchip data region.
1509 (__stack): Assign from ${STACK_START_ADDR}.
1510 (.text): Put in ${TEXT_MEMORY} memory region.
1511 (.data{,1}/.strings/.rodata{,1}): Put in ${DATA_MEMORY} memory
1512 region.
1513 (.bss): Put in ${BSS_MEMORY} memory region.
1514
1515 Tue Dec 2 10:14:47 1997 Nick Clifton <nickc@cygnus.com>
1516
1517 * configure.tgt (targ_extra_emuls): Add support for Thumb target.
1518
1519 Sat Nov 22 15:23:19 1997 Ian Lance Taylor <ian@cygnus.com>
1520
1521 * ldlex.l: Don't define hex_mode. Correct number regexp to not
1522 accept hex digits without a leading $ or 0x. Handle leading $
1523 correctly. Pass 0 rather than hex_mode to bfd_scan_vma.
1524 * ldlex.h (hex_mode): Don't declare.
1525
1526 Sun Nov 16 20:16:45 1997 Michael Meissner <meissner@cygnus.com>
1527
1528 * emulparams/d30velf.sh ({DATA,EMEM}_START_ADDR): Define as start
1529 of internal data area and external memory on chip.
1530
1531 * scripttempl/elfd30v.sc: Define a MEMORY region that describes
1532 the 3 regions of memory on the chip. Put .text/.init/.fini into
1533 the text memory region, put other segments into the data memory
1534 region. Add more of the standard elf sections. Default __stack
1535 to be 0x20008000, which is 1 byte beyond end of the internal data
1536 region.
1537
1538 Thu Nov 13 13:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1539
1540 * configure.tgt (targ_extra_emuls): Make FreeBSD a i386bsd
1541 variant.
1542
1543 Sun Nov 2 14:51:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1544
1545 * configure.host (alpha*-*-linux*): Correct HOSTING_CRT0. Set
1546 HOSTING_LIBS.
1547
1548 Thu Oct 30 12:25:55 1997 Ian Lance Taylor <ian@cygnus.com>
1549
1550 * ld.h (args_type): Add warn_mismatch field.
1551 * ldmain.c (main): Initialize warn_mismatch field.
1552 * lexsup.c (parse_args): Handle --no-warn-mismatch option.
1553 * ldlang.c (ignore_bfd_error): New static function.
1554 (lang_check): If warn_mismatch is false, don't warn about
1555 mismatched input files.
1556 * ld.texinfo, ld.1: Document new option.
1557
1558 Thu Oct 23 14:38:18 1997 Nick Clifton <nickc@cygnus.com>
1559
1560 * scripttempl/v850.sc: Rename linker symbol '_stack' to '__stack'
1561 to avoid conflicts with C code which is defining a variable called
1562 'stack'.
1563
1564 Thu Oct 23 00:57:45 1997 Richard Henderson <rth@dot.cygnus.com>
1565
1566 * Makefile.in (ALL_EMULATIONS): Move eelf64_sparc.o ...
1567 (ALL_64_EMULATIONS): ... here.
1568 (eelf64_sparc.c): Template should be elf32 not generic.
1569 * emulparams/elf64_sparc.sh (TEMPLATE_NAME): New definition.
1570
1571 Thu Oct 23 00:44:20 1997 Richard Henderson <rth@dot.cygnus.com>
1572
1573 * configure.tgt: Add sparc64-*-linux*.
1574 * emulparams/elf64_sparc.sh (GENERATE_SHLIB_SCRIPT, NOP): New.
1575
1576 Wed Oct 22 11:29:25 1997 Ian Lance Taylor <ian@cygnus.com>
1577
1578 * scripttempl/pe.sc: Put .eh_frame in .rdata.
1579
1580 Fri Oct 17 00:00:13 1997 Richard Henderson <rth@cygnus.com>
1581
1582 * ldlang.c (lang_register_vers_node): Only check globals<=>locals,
1583 since we need to be able to export different versions of the same
1584 symbol.
1585
1586 Wed Oct 15 14:52:36 1997 Ian Lance Taylor <ian@cygnus.com>
1587
1588 * scripttempl/pe.sc: Put .stab and .stabstr sections at end.
1589
1590 Wed Oct 8 12:37:05 1997 Richard Henderson <rth@cygnus.com>
1591
1592 * configure.tgt, configure.host: Change alpha-*-* to alpha*-*-*;
1593 config.guess now recognizes alphaev5 etc.
1594
1595 Fri Oct 3 14:23:02 1997 Ian Lance Taylor <ian@cygnus.com>
1596
1597 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Don't treat
1598 -s and -u as -static and -unix.
1599
1600 Thu Oct 2 18:40:28 1997 Ian Lance Taylor <ian@cygnus.com>
1601
1602 * ldlang.c (wild_doit): Rewrite flag handling for clarity. If we
1603 are not adding the first input section, and SEC_READONLY is clear
1604 on the output section, then don't copy it from the input section.
1605 If SEC_READONLY is not set on the input section, then clear it on
1606 the output section.
1607
1608 * configure.tgt (mips*-sgi-irix[56]*): Use elf32bsmip rather than
1609 elf32bmip.
1610 (mips*el-*-linux*): Change elf32lmip to elf32lsmip and elf32bmip
1611 to elf32bsmip.
1612 (mips*-*-linux*): Likewise.
1613 * emulparams/elf32bsmip.sh: New file; just like elf32bmip.sh, but
1614 setting ENTRY to __start.
1615 * emulparams/elf32lsmip.sh: New file; just like elf32lmip.sh, but
1616 setting ENTRY to __start.
1617 * scripttempl/elf.sc: Always set ENTRY to _start if it was not
1618 already set.
1619
1620 Wed Oct 1 16:41:00 1997 Nick Clifton <nickc@cygnus.com>
1621
1622 * emulparams/v850.sh (ROZDATA_START_ADDR, ROSDATA_START_ADDR): New
1623 Variables.
1624
1625 * scripttempl/v850.sc: Move read only areas out of zero and small
1626 data sections and into their own sections.
1627
1628 Wed Sep 24 16:59:15 1997 Joel Sherrill <joel@oarcorp.com>
1629
1630 * configure.tgt (sh*-*-rtems*): New target, like sh-*-elf*.
1631
1632 Wed Sep 24 11:33:14 1997 Ian Lance Taylor <ian@cygnus.com>
1633
1634 * ld.texinfo (Section Options): Improve documentation of NOLOAD
1635 directive.
1636
1637 * aclocal.m4: Rebuild with new libtool.
1638 * configure: Rebuild.
1639
1640 Mon Sep 22 17:24:06 1997 Ian Lance Taylor <ian@cygnus.com>
1641
1642 * ldlang.c (wild_doit): Revert patch of September 3.
1643
1644 Wed Sep 17 16:45:34 1997 Nick Clifton <nickc@cygnus.com>
1645
1646 * Makefile.am, Makefile.in: Add rule for ev850.c
1647 * configure.tgt (targ_extra_emuls): Add v850 target.
1648
1649 Wed Sep 17 16:43:39 1997 Nick Clifton <nickc@cygnus.com>
1650
1651 * emulparams/v850.sh (CALL_TABLE_START_ADDR): New entry.
1652 * scripttempl/v850.sc: Add call table data area
1653
1654 Mon Sep 15 11:29:13 1997 Ken Raeburn <raeburn@cygnus.com>
1655
1656 Merge change from Martin Hunt:
1657
1658 * scripttempl/elfd30v.sc: Put .rodata in the .text section.
1659
1660 Tue Sep 9 07:49:56 1997 Fred Fish <fnf@ninemoons.com>
1661
1662 * ldlang.c (lang_memory_region_lookup): Remove extraneous
1663 initialization of p.
1664
1665 Thu Sep 4 09:03:33 1997 Ian Lance Taylor <ian@cygnus.com>
1666
1667 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): In
1668 expression produced for -bpT and -bpD options, align to a 32 byte
1669 boundary rather than an 8 byte boundary.
1670 * scripttempl/aix.sc: Put .tocbss at start of .bss section.
1671
1672 * ldmisc.h, ldmisc.c, ldcref.c: Rename finfo to lfinfo, to avoid
1673 function name conflict with AIX 4.2 unistd.h header file.
1674
1675 Wed Sep 3 15:12:32 1997 Ian Lance Taylor <ian@cygnus.com>
1676
1677 * ldlang.c (wild_doit): Clear SEC_HAS_CONTENTS from a
1678 noload_section.
1679
1680 Fri Aug 29 00:32:31 1997 Ian Lance Taylor <ian@cygnus.com>
1681
1682 * Makefile.am (ld_new_DEPENDENCIES): Remove @LEXLIB@.
1683 * Makefile.in: Rebuild.
1684
1685 Thu Aug 28 10:12:10 1997 Doug Evans <dje@canuck.cygnus.com>
1686
1687 * configure.tgt (arc-*-elf*): Recognize.
1688 * Makefile.am (ALL_EMULATIONS): Add earcelf.o.
1689 * Makefile.in: Regenerate.
1690 * emulparams/arcelf.sh: New file.
1691
1692 Wed Aug 20 11:14:13 1997 Ian Lance Taylor <ian@cygnus.com>
1693
1694 * ldlang.c (wildcardp): Don't let a backslash by itself cause a
1695 pattern to be treated as a wildcard pattern.
1696
1697 * ldgram.y (atype): Accept parentheses with no type.
1698
1699 * ld.texinfo (Section Definition): Clarify use of whitespace.
1700 (Section Placement): Likewise.
1701
1702 Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
1703
1704 * configure.tgt (targ_extra_emuls): Add support for v850e target.
1705
1706 Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
1707
1708 * configure.tgt (targ_extra_emuls): Add support for v850e target.
1709
1710 Sat Aug 9 00:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
1711
1712 * Makefile.am (ld.info): Change dependency from
1713 $(BFDDIR)/doc/bfdsumm.texi to bfdsumm.texi.
1714 (ld.dvi): Likewise.
1715 (bfdsumm.texi): New target.
1716 (CLEANFILES): Add bfdsumm.texi.
1717 * Makefile.in: Rebuild.
1718
1719 * Makefile.am: New file, based on old Makefile.in.
1720 * acinclude.m4: New file, from old aclocal.m4.
1721 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
1722 shared library handling; now handled by libtool. Replace
1723 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
1724 AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
1725 AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
1726 * configure.host: Don't set HLDFLAGS, HLDENV, or RPATH_ENVVAR.
1727 * acconfig.h: Mention PACKAGE and VERSION.
1728 * stamp-h.in: New file.
1729 * ldver.c (ld_program_version): Set ld_program_version from
1730 VERSION.
1731 * ldgram.y, ldlex.l: Replace VERSION with VERSIONK.
1732 * Makefile.in: Now built with automake.
1733 * aclocal.m4: Now built with aclocal.
1734 * configure, config.in: Rebuild.
1735
1736 Mon Jul 28 19:04:50 1997 Rob Savoye <rob@chinadoll.cygnus.com>
1737
1738 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
1739 win32 dependencies.
1740 * configure: Regenerated with autoconf 2.12.
1741 * Makefile.in: Add $(EXEEXT) to executable.
1742
1743 Tue Jul 22 18:50:38 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
1744
1745 * emulparams/i386go32.sh (OUTPUT_FORMAT): Set to "coff-go32".
1746 (SEGMENT_SIZE): Set to 0x200.
1747 * scripttempl/i386go32.sc: Rewrite.
1748 * configure.tgt (i[3456]86-*-msdosdjgpp*): New target.
1749
1750 Mon Jul 7 12:39:42 1997 Ian Lance Taylor <ian@cygnus.com>
1751
1752 From Manfred Hollstein <manfred@s-direktnet.de>:
1753 * configure.host (i[3456]86-*-linux*libc1*): Renamed from
1754 i[3456]86-*-linux*.
1755 (i[3456]86-*-linux*): New host.
1756
1757 Thu Jun 26 13:54:03 1997 Ian Lance Taylor <ian@cygnus.com>
1758
1759 * scripttempl/pe.sc: Put .rsrc after .reloc. Put input .rsrc
1760 sections in the output .rsrc section.
1761
1762 Wed Jun 25 12:48:41 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1763
1764 * configure.host (m68*-*-linux*libc1*): Renamed from
1765 `m68*-*-linux*'.
1766 (m68*-*-linux*): New configuration for use with GNU libc 2.
1767
1768 Mon Jun 16 19:18:21 1997 Geoff Keating <geoffk@ozemail.com.au>
1769
1770 * scripttempl/elfppc.sc: Correct .rela.sdata entries.
1771
1772 * scripttempl/elfppc.sc: Put the PLT between the small and large
1773 BSS segments.
1774 * emulparams/elf32ppc.sh (TEXT_START_ADDR): The ABI says `A
1775 program base of 0x02000000 is recommended...' because otherwise
1776 shared libraries are less efficient. We use 0x01800000 because
1777 otherwise it's impossible to branch to location 0, for instance if
1778 you have an undefined weak symbol.
1779
1780 Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1781
1782 * ldlang.c (lang_place_undefineds): Add \n in einfo call.
1783 (lang_size_sections): Likewise.
1784 * ldlex.l: Likewise.
1785 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise.
1786 * emultempl/mipsecoff.em (gld${EMULATION_NAME}_after_open):
1787 Likewise.
1788 (check_sections): Likewise.
1789 (gld${EMULATION_NAME}_after_allocation): Likewise.
1790 * emultempl/pe.em (gld_$${EMULATION_NAME}_before_allocation):
1791 Likewise.
1792 * mpw-eppcmac.c (gldppcmacos_read_file): Likewise.
1793 * mpw-idtmips.c (gldmipsidt_after_open): Likewise.
1794 (check_sections): Likewise.
1795 (gldmipsidt_after_allocation): Likewise.
1796
1797 * ldemul.c (ldemul_choose_mode): Remove unused einfo argument.
1798
1799 Fri Jun 6 23:47:42 1997 Ian Lance Taylor <ian@cygnus.com>
1800
1801 * scripttempl/pe.sc: Add zeroes after .idata$3 to mark the end of
1802 the import list.
1803
1804 Thu May 29 13:13:22 1997 Ian Lance Taylor <ian@cygnus.com>
1805
1806 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Don't
1807 crash if an output section has no BFD section.
1808
1809 Fri May 23 15:23:25 1997 Fred Fish <fnf@cygnus.com>
1810
1811 * lexsup.c (ld_options): Add entry for the new "task-link" option.
1812 (parse_args): Handle the "task-link" option.
1813 (OPTION_TASK_LINK): Add define.
1814
1815 Wed May 21 17:44:15 1997 Ian Lance Taylor <ian@cygnus.com>
1816
1817 * ldmain.c (main): Correct check of fclose return value when
1818 handling --force-exe-suffix.
1819
1820 Thu May 15 11:35:29 1997 Nick Clifton <nickc@cygnus.com>
1821
1822 * ldlang.c (lang_check): Add test of the return value from the
1823 call to bfd_merge_private_bfd_data().
1824
1825 Mon May 12 23:22:58 1997 Ian Lance Taylor <ian@cygnus.com>
1826
1827 * scripttempl/elfmips.sc: Remove.
1828 * scripttempl/elf.sc: Set ENTRY based on target. Permit
1829 TEXT_DYNAMIC to control .dynamic segment. Permit
1830 SHLIB_TEXT_START_ADDR to set start of shared object. Support
1831 INITIAL_READONLY_SECTIONS. Put .stub in .text. Only put
1832 .gnu.linkonce.t* in .text when relocating. Support
1833 OTHER_TEXT_SECTIONS. Support SHLIB_DATA_ADDR as well as
1834 DATA_ADDR. Support OTHER_GOT_SYMBOLS and OTHER_GOT_SECTIONS.
1835 * emulparams/elf32b4300.sh (SCRIPT_NAME): Set to elf.
1836 (DATA_ADDR): Don't set.
1837 (INITIAL_READONLY_SECTIONS): Rename from OTHER_READONLY_SECTIONS.
1838 (OTHER_TEXT_SECTIONS): Set.
1839 (OTHER_GOT_SECTIONS): Rename from OTHER_READWRITE_SECTIONS.
1840 (MACHINE): Set to empty string.
1841 * emulparams/elf32l4300.sh: Likewise.
1842 * emulparams/elf32ebmip.sh: Likewise.
1843 * emulparams/elf32elmip.sh: Likewise.
1844 * emulparams/elf32bmip.sh: Likewise. Also:
1845 (TEXT_DYNAMIC): Set.
1846 * emulparams/elf32lmips.sh: Likewise.
1847 * Makefile.in (eelf32bmips.c): Depend upon elf.sc rather than
1848 elfmips.sc.
1849 (eelf32ebmips.c, eelf32elmips.c, eelf32lmip.c): Likewise.
1850
1851 Mon May 12 11:11:06 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1852
1853 * scripttempl/elf.sc: Don't align the data segment on the next 8
1854 byte boundary, instead let the linker use whatever the individual
1855 sections require.
1856
1857 Fri May 9 17:45:46 1997 Ian Lance Taylor <ian@cygnus.com>
1858
1859 * configure.tgt (i[3456]86-*-gnu*): Don't include Mach support.
1860
1861 Tue May 6 13:21:19 1997 Ian Lance Taylor <ian@cygnus.com>
1862
1863 From Sean McNeil <sean@mcneil.com>:
1864 * emultempl/pe.em (sort_by_file_name): Sort by archive name
1865 first.
1866 (sort_sections): Sort all sections, not just sections in the same
1867 archive.
1868
1869 Mon May 5 18:19:55 1997 Philip Blundell <pjb27@cam.ac.uk>
1870
1871 * configure.tgt, configure.host: cope with '*-*-linux-gnuaout'
1872 targets.
1873
1874 Fri May 2 15:54:28 1997 Mike Meissner <meissner@cygnus.com>
1875
1876 * scripttempl/tic80coff.sc (.text): Add a leading underscore to
1877 __{D,C}TOR_{LIST,END}__ definations. Rearrange the order of items
1878 in the .text section. Move .const, .ctors, .dtors into separate
1879 sections.
1880
1881 Wed Apr 30 12:23:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
1882
1883 * scripttempl/m88kbcs.sc (__.initp.end, _etext): Added whitespace
1884 around assignment of current location pointer.
1885
1886 Thu Apr 17 13:07:18 1997 Ian Lance Taylor <ian@cygnus.com>
1887
1888 * ldctor.c (ldctor_build_sets): Make sure the set is aligned
1889 appropriately.
1890
1891 Tue Apr 15 13:19:26 1997 Ian Lance Taylor <ian@cygnus.com>
1892
1893 * Makefile.in (INSTALL): Set to @INSTALL@.
1894 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
1895 (install): Depend upon ld.new and installdirs. Use
1896 $(program_transform_name) directly, rather than using
1897 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
1898 (installdirs): New target.
1899 (install-info): Run mkinstalldirs.
1900
1901 Mon Apr 14 12:06:15 1997 Ian Lance Taylor <ian@cygnus.com>
1902
1903 * Makefile.in (INSTALL): Change install.sh to install-sh.
1904
1905 From Thomas Graichen <graichen@rzpd.de>:
1906 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
1907 * configure: Rebuild.
1908
1909 Fri Apr 4 11:42:41 1997 Ian Lance Taylor <ian@cygnus.com>
1910
1911 * emultempl/pe.em: Include "libiberty.h".
1912 (sort_sections_1): Use xmalloc rather than alloca.
1913
1914 * ldlex.l: Recognize SQUAD.
1915 * ldgram.y (length): Add SQUAD.
1916 * ldctor.c (ldctor_build_sets): Use SQUAD for a signed 8 byte
1917 reloc.
1918 * ldlang.c (print_data_statement): Handle SQUAD.
1919 (lang_size_sections, lang_do_assignments): Likewise.
1920 * ldexp.c (exp_print_token): Add SQUAD to table.
1921 * ldwrite.c (build_link_order): Handle SQUAD.
1922 * ld.texinfo (Section Data Expressions): Document SQUAD.
1923
1924 Thu Apr 3 13:19:40 1997 Ian Lance Taylor <ian@cygnus.com>
1925
1926 * ldver.c (ld_program_version): Set to 2.8.1.
1927
1928 * Branched binutils 2.8.
1929
1930 Wed Apr 2 11:55:27 1997 Ian Lance Taylor <ian@cygnus.com>
1931
1932 * mpw-idtmips.c: Rename from mpw-emipsidt.c.
1933 * mpw-elfmips.c: Rename from mpw-emipself.c.
1934 * mpw-config.in: Update accordingly.
1935
1936 * ldlang.c (lang_process): Call lang_check immediately after
1937 opening the input files, rather than at the end of the link.
1938
1939 Mon Mar 31 23:44:00 1997 Ian Lance Taylor <ian@cygnus.com>
1940
1941 * emultempl/pe.em (init): Fully bracket initializer.
1942 (set_pe_stack_heap): Remove locals begin_commit and end.
1943 (gld_${EMULATION_NAME}_after_open): Remove unused local i.
1944 (gld${EMULATION_NAME}_place_orphan): Remove unused local ptr.
1945
1946 Mon Mar 31 16:35:51 1997 Joel Sherrill <joel@oarcorp.com>
1947
1948 * configure.tgt (hppa*-*-rtems*): New target, like hppa-*-*elf*.
1949
1950 Fri Mar 28 15:29:23 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
1951
1952 Contributed by David S. Miller <davem@caip.rutgers.edu>:
1953 * configure.tgt (sparc*-*-linuxaout*): New target.
1954 (sparc*-*-linux*): New target.
1955 * emulparams/sparclinux.sh: New file.
1956 * Makefile.in (ALL_EMULATIONS): Add esparclinux.o.
1957 (esparclinux.c): New target.
1958
1959 Fri Mar 28 14:30:12 1997 Ian Lance Taylor <ian@cygnus.com>
1960
1961 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
1962 * configure.tgt: Set targ_extra_emuls for mips*el-*-linux* and
1963 mips*-*-linux*. Use elf32bmip and elf32lmip, not elf32ebmip and
1964 elf32elmip.
1965
1966 Thu Mar 27 17:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
1967
1968 * lexsup.c (parse_args): Update copyright date in version
1969 message.
1970
1971 Fri Mar 21 12:28:41 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1972
1973 * emulparams/delta68.sh (OUTPUT_FORMAT): Set to "coff-m68k-sysv".
1974
1975 Tue Mar 18 11:16:23 1997 Ian Lance Taylor <ian@cygnus.com>
1976
1977 * Makefile.in: Rebuild dependencies.
1978
1979 * emultempl/aix.em: Include "obstack.h".
1980
1981 Mon Mar 17 19:26:06 1997 Ian Lance Taylor <ian@cygnus.com>
1982
1983 * ldlang.c: Include "obstack.h".
1984
1985 Sat Mar 15 23:23:46 1997 Fred Fish <fnf@cygnus.com>
1986
1987 * configure.tgt (powerpc-*-beos*): Use aixppc for targ_emul.
1988
1989 Sat Mar 15 18:10:38 1997 H.J. Lu <hjl@lucon.org>
1990
1991 * ldemul.h (ldemul_list_emulations): Use full prototype.
1992 * ldlang.c (print_one_symbol): Add declaration.
1993 * ldlang.h (dprint_statements): Declare.
1994 * ldmain.c (remove_output): Declare.
1995 * ldmisc.c (vfinfo): Declare.
1996 * ldwrite.c (clone_section): Declare.
1997 (split_sections): Make static. Declare.
1998 * mri.c: Include libiberty.h.
1999 (strdup): Don't declare.
2000 (mri_alias): Use xstrdup rather than strdup.
2001
2002 Fri Mar 14 21:30:06 1997 Ian Lance Taylor <ian@cygnus.com>
2003
2004 * scripttempl/elfmips.sc: Change handling of data area when
2005 generating a shared library to not skip a large block of memory.
2006 From Per Fogelstrom <pefo@cvs.openbsd.org>.
2007
2008 Wed Mar 12 21:33:09 1997 Ian Lance Taylor <ian@cygnus.com>
2009
2010 * ldmain.c (multiple_definition): Only skip the warning if the
2011 output section is absolute when the input section is not
2012 absolute.
2013
2014 * ldlex.l: Accept whitespace in VERS_START state. Warn about
2015 invalid characters in VERS_* states.
2016
2017 Tue Mar 11 13:51:31 1997 Ian Lance Taylor <ian@cygnus.com>
2018
2019 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Don't let a
2020 trailing space lead us to think that there is a zero address.
2021
2022 Sun Mar 9 23:06:35 1997 Eric Youngdale <eric@andante.jic.com>
2023
2024 * ldgram.y (vers_node): Correct typo of '(' for '{'.
2025
2026 Fri Mar 7 18:40:12 1997 Fred Fish <fnf@cygnus.com>
2027
2028 * scripttempl/tic80coff.sc (ENTRY): Entry symbol is __start
2029 rather than _start.
2030 (__edata): Define this rather than "edata".
2031 (__end): Define this rather than "end".
2032
2033 Tue Mar 4 17:18:35 1997 Michael Meissner <meissner@cygnus.com>
2034
2035 * configure.tgt (tic80-*-*): Allow dropping of -coff.
2036
2037 Sun Mar 2 22:59:49 1997 Fred Fish <fnf@cygnus.com>
2038
2039 * Makefile.in (ld.dvi): Set MAKEINFO environment variable as well
2040 as TEXINPUTS. Needed for building in separate build dir.
2041 * ldint.texinfo (SCRIPT_NAME): Fix typo.
2042 * emulparams/tic80coff.sh: Rewrite to include internal documentation
2043 about each shell variable that is set (or not set).
2044 * scripttempl/tic80coff.sc: Complete rewrite.
2045
2046 Fri Feb 28 17:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
2047
2048 * ldmain.c (main): Call bfd_set_default_target.
2049 * Makefile.in (ldmain.o): Define TARGET when compiling.
2050
2051 Thu Feb 27 11:41:03 1997 Ian Lance Taylor <ian@cygnus.com>
2052
2053 * ldmain.c (main): Don't initialize link_info.lprefix or
2054 link_info.lprefix_len.
2055 * emultempl/hppaelf.em (hppaelf_before_parse): Likewise.
2056
2057 * emultempl/m88kbcs.em: Remove.
2058 * emulparams/m88kbcs.sh (TEMPLATE_NAME): Don't set.
2059 * Makefile.in (em88kbcs.c): Depend upon generic.em rather than
2060 m88kbcs.em.
2061
2062 * mri.c (mri_draw_tree): Pass noload_section, not SEC_NEVER_LOAD,
2063 to lang_enter_output_section_statement. From Mark Rasin
2064 <mark.rasin@telrad.co.il>.
2065
2066 Wed Feb 26 11:51:44 1997 Ian Lance Taylor <ian@cygnus.com>
2067
2068 * ldlang.c (lang_one_common): Clear SEC_IS_COMMON from common
2069 section.
2070
2071 Tue Feb 25 20:38:11 1997 Stan Shebs <shebs@andros.cygnus.com>
2072
2073 * configure.tgt (mips*-*-lnews*): New target.
2074 * Makefile.in (emipslnews.c): New target.
2075 * emulparams/mipslnews.sh: New file.
2076
2077 Tue Feb 25 16:04:09 1997 Ian Lance Taylor <ian@cygnus.com>
2078
2079 * emultempl/elf32.em (hold_interp): New static variable.
2080 (gld${EMULATION_NAME}_place_orphan): Put loadable .note sections
2081 after hold_interp. Choose a unique output section name.
2082 (gld${EMULATION_NAME}_place_section): Don't set hold_use if the
2083 SEC_LOAD or SEC_ALLOC flags differ. Set hold_interp.
2084
2085 Mon Feb 24 18:16:09 1997 Ian Lance Taylor <ian@cygnus.com>
2086
2087 From Eric Youngdale <eric@andante.jic.com>:
2088 * ldlex.l (V_TAG, V_IDENTIFIER): New macros.
2089 (VERS_START, VERS_SCRIPT, VERS_NODE): New states to parse version
2090 information.
2091 (ldlex_version_script, ldlex_version_file): New functions.
2092 * ldlex.h (enum input_enum): Add input_version_script.
2093 (ldlex_version_script): Declare.
2094 (ldlex_version_file): Declare.
2095 * ldgram.y (%union): Add deflist, versyms, and versnode.
2096 (VERS_TAG, VERS_IDENTIFIER): New terminals.
2097 (GLOBAL, LOCAL, VERSION, INPUT_VERSION_SCRIPT): New terminals.
2098 (file): Accept INPUT_VERSION_SCRIPT.
2099 (ifile_p1): Accept version.
2100 (version_script_file): New nonterminal.
2101 (version, vers_nodes, vers_node): Likewise.
2102 (verdep, vers_tag, ver_defns): Likewise.
2103 * ldlang.c (lang_elf_version_info): New global variable.
2104 (lang_new_vers_regex): New function.
2105 (lang_new_vers_node): New function.
2106 (version_index): New static variable.
2107 (lang_register_vers_node): New function.
2108 (lang_add_vers_depend): New function.
2109 * ldlang.h (lang_elf_version_info): Declare.
2110 (lang_new_vers_regex, lang_new_vers_node): Declare.
2111 (lang_add_vers_depend, lang_register_vers_node): Declare.
2112 * lexsup.c (OPTION_VERSION_SCRIPT): Define.
2113 (ld_options): Add "version-script".
2114 (parse_args): Handle OPTION_VERSION_SCRIPT.
2115 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
2116 Pass lang_elf_version_info to size_dynamic_sections.
2117 * scripttempl/elf.sc: Add .gnu.version sections.
2118 * ld.texinfo: Document symbol versioning.
2119
2120 Fri Feb 21 17:37:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2121
2122 * Makefile.in (ed30velf.c): New target.
2123 * configure.tgt (d30v-*-*): New target.
2124 * emulparams/d30velf.sh: New file.
2125 * scripttempl/elfd30v.sc: New file.
2126
2127 Fri Feb 14 18:28:31 1997 Ian Lance Taylor <ian@cygnus.com>
2128
2129 * ld.texinfo (Option Commands): Document the INCLUDE command.
2130
2131 Thu Feb 13 20:31:37 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2132
2133 * configure.in: Call BFD_NEED_DECLARATION on getenv.
2134 * acconfig.h (NEED_DECLARATION_GETENV): New macro.
2135 * sysdep.h (getenv): Declare if NEED_DECLARATION_GETENV.
2136 * ldemul.c (ld_emul_default_target): Do not cast getenv return
2137 value.
2138 * ldmain.c (get_emulation): Likewise.
2139 * configure, config.in: Rebuild.
2140
2141 Tue Feb 11 15:34:26 1997 Ian Lance Taylor <ian@cygnus.com>
2142
2143 * scripttempl/elfmips.sc: When relocating, put .mips16.fn.* and
2144 .mips16.call.* in .text.
2145
2146 Sun Feb 9 18:09:13 1997 Fred Fish <fnf@cygnus.com>
2147
2148 * emulparams/tic80coff.sh: New (dummy) file for TIc80.
2149 * scripttempl/tic80coff.sc: New (dummy) file for TIc80.
2150 * Makefile.in (etic80coff.c): Add target and rule to build it.
2151 * configure.tgt (tic80-*-coff): Set targ_emul to tic80coff.
2152
2153 Fri Jan 31 13:16:53 1997 Ian Lance Taylor <ian@cygnus.com>
2154
2155 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Search for
2156 ".so" in the name, not ".so.".
2157 (gld${EMULATION_NAME}_search_dir): Accept a plain .so file.
2158
2159 * Makefile.in (ld.info): Add -I$(srcdir). From Alan Modra
2160 <alan@spri.levels.unisa.edu.au>.
2161
2162 Thu Jan 30 11:31:52 1997 Ian Lance Taylor <ian@cygnus.com>
2163
2164 * emultempl/sunos.em: Include <ctype.h>.
2165 (gld${EMULATION_NAME}_find_so): Skip the directory name when
2166 searching for ".so.".
2167 (gld${EMULATION_NAME}_search_dir): Make sure that the library name
2168 has a version number, and that only version numbers follow .so.
2169
2170 Wed Jan 29 18:15:00 1997 Geoffrey Noer <noer@cygnus.com>
2171
2172 * scripttempl/pe.sc:
2173 * scripttempl/ppcpe.sc: add *(.gcc_except_table) to the text
2174 section so Win32 executables are valid.
2175
2176 Mon Jan 27 12:28:43 1997 Ian Lance Taylor <ian@cygnus.com>
2177
2178 * scripttempl/elf.sc: Put linkonce reloc section in other
2179 appropriate reloc sections.
2180 * scripttempl/elfmips.sc: Add linkonce support.
2181 * scripttempl/elfppc.sc: Likewise.
2182
2183 Fri Jan 24 10:44:09 1997 Jeffrey A Law (law@cygnus.com)
2184
2185 * emulparms/mn10200.sh (OTHER_RELOCATING_SECTIONS): Move the
2186 stack up to 0x80000.
2187 * emulparms/mn10300.sh (OTHER_RELOCATING_SECTIONS): Likewise.
2188
2189 Tue Jan 21 12:11:10 1997 Doug Evans <dje@seba.cygnus.com>
2190
2191 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Use PROVIDE
2192 to define `_stack'.
2193
2194 Thu Jan 16 17:07:52 1997 Ian Lance Taylor <ian@cygnus.com>
2195
2196 * ld.h (args_type): Rename auxiliary_filter_shlib to
2197 auxiliary_filters, and make it char **.
2198 * lexsup.c (parse_args): Handle -f by setting up an array.
2199 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
2200 new name of auxiliary_filters.
2201
2202 * ld.texinfo (Options): Improve documentation of --filter and
2203 --auxiliary.
2204
2205 Tue Jan 14 15:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
2206
2207 * ld.texinfo (Options): Clarify that the normal usage is -T.
2208 (Commands): Likewise.
2209
2210 Thu Jan 9 11:26:27 1997 Ian Lance Taylor <ian@cygnus.com>
2211
2212 * scripttempl/armcoff.sc: Correct mask used for .data address.
2213
2214 Wed Jan 8 15:14:59 1997 Geoffrey Noer <noer@cygnus.com>
2215
2216 * emultempl/pe.em: make default executable a.exe instead of
2217 a.out
2218
2219 Fri Jan 3 17:33:34 1997 Richard Henderson <rth@tamu.edu>
2220
2221 * scripttempl/elf.sc: Move .got closer to .sdata and .sbss by
2222 shifting .plt back. Rumour has it that the NetBSD ld.so depends
2223 on .dynamic being after .got, so we leave that.
2224
2225 Fri Jan 3 14:04:40 1997 Ian Lance Taylor <ian@cygnus.com>
2226
2227 * Makefile.in (clean): Don't remove configdoc.texi.
2228 (maintainer-clean): Do remove configdoc.texi.
2229
2230 * ld.texinfo (Operators): Remove '@' from @smallexmple in comment
2231 to avoid confusing texi2roff.
2232
2233 Fri Jan 3 11:27:02 1997 Michael Meissner <meissner@tiktok.cygnus.com>
2234
2235 * scripttempl/v850.sc (.zdata): Add .zcommon section.
2236 (.tdata): Add .tcommon and .tcommon_byte sections.
2237
2238 Thu Jan 2 18:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
2239
2240 * configure.tgt (mips*el-*-linux*, mips*-*-linux*): New targets.
2241 * scripttempl/elfmips.sc: Use __start as the entry address for
2242 mips*-*-linux*.
2243
2244 Tue Dec 31 14:48:30 1996 Ian Lance Taylor <ian@cygnus.com>
2245
2246 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
2247
2248 * ld.h (args_type): Add filter_shlib and auxiliary_filter_shlib
2249 fields.
2250 * lexsup.c (parse_args): Recognize --auxiliary/-f and
2251 --filter/-F.
2252 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
2253 Pass filter_shlib and auxiliary_filter_shlib to
2254 size_dynamic_sections.
2255 * ld.texinfo, ld.1: Document --filter/-F and --auxiliary/-f.
2256
2257 Mon Dec 30 13:55:57 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2258
2259 * scripttempl/v850.sc (.tdata) Add .tbss and .tbyte sections.
2260
2261 Wed Dec 18 22:57:35 1996 Stan Shebs <shebs@andros.cygnus.com>
2262
2263 * mpw-make.sed: Use NewFolderRecursive for installation.
2264
2265 Fri Dec 13 14:08:50 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2266
2267 * scripttempl/v850.sc: Make sure __{e,g}p start relative to the
2268 {s,t}data sections. Do not emit any linker generated symbols if
2269 -r. Use {TEXT,{Z,S,T}DATA}_START_ADDR variables to initialize
2270 where the different sections go. Change some whitespace.
2271
2272 * emulparams/v850.sh ({TEXT,{Z,S,T}DATA}_START_ADDR): Define
2273 appropriately. Remove crud not used anymore.
2274
2275 Fri Dec 13 10:19:57 1996 Jeffrey A Law (law@cygnus.com)
2276
2277 * Makefile.in (emn10200.c): Add dependencies.
2278 * configure.tgt: Handle mn10200.
2279 * emulparms/mn10200.sh: New file.
2280
2281 Thu Dec 12 17:04:55 1996 Ian Lance Taylor <ian@cygnus.com>
2282
2283 * emultempl/gld960c.em: Include <ctype.h>.
2284 (gld960_set_output_arch): Get the machine type from the -A option
2285 if there is one, rather than always using core.
2286
2287 Sat Dec 7 10:07:51 1996 Jeffrey A Law (law@cygnus.com)
2288
2289 * emulparms/mn10300.sh: Handle leading underscores.
2290
2291 Thu Dec 5 13:45:58 1996 Ian Lance Taylor <ian@cygnus.com>
2292
2293 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Only
2294 set hold_rel if SEC_ALLOC is set.
2295
2296 Tue Dec 3 11:29:20 1996 Ian Lance Taylor <ian@cygnus.com>
2297
2298 * ldlang.c (section_already_linked): Set the output_offset as well
2299 as the output_section when only reading symbols from a file.
2300
2301 Mon Dec 2 11:43:50 1996 Ian Lance Taylor <ian@cygnus.com>
2302
2303 * emulparams/*.sh: Make sure that each set of parameters which
2304 uses the elf.sc script sets MACHINE.
2305
2306 Wed Nov 27 03:22:05 1996 Jason Merrill <jason@yorick.cygnus.com>
2307
2308 * scripttempl/elf{,mips,ppc}.sc: Add the remaining DWARF sections.
2309 * scripttempl/elfd10v.sc: Likewise.
2310 * scripttempl/v850.sc: Likewise.
2311
2312 Tue Nov 26 16:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
2313
2314 * configure: Rebuild with autoconf 2.12.
2315
2316 Mon Nov 25 12:17:55 1996 Jim Wilson <wilson@cygnus.com>
2317
2318 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Add case
2319 for bfd_vma to init loop.
2320
2321 Mon Nov 25 09:55:07 1996 Jeffrey A Law (law@cygnus.com)
2322
2323 * emulparms/mn10300.sh: Remove bogus '_' prefix for
2324 entry symbol and ctor/dtor stuff.
2325
2326 Fri Nov 15 13:00:18 1996 Jeffrey A Law (law@cygnus.com)
2327
2328 * Makefile.in (emn10300.c): Add dependencies.
2329 * configure.tgt: Handle mn10300.
2330 * emulparms/mn10300.sh: New file.
2331
2332 Tue Nov 5 10:57:50 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2333
2334 * emulparams/d10velf.sh (READONLY_START_ADDR): Changed to 0x2000004.
2335 (EMBEDDED): Define.
2336
2337 Fri Nov 1 10:01:27 1996 Ian Lance Taylor <ian@cygnus.com>
2338
2339 * ld.texinfo: Add section on reporting bugs.
2340
2341 * scripttempl/m68kcoff.sc: Make sure the etext and __CTOR_LIST__
2342 symbols are correctly aligned.
2343
2344 Thu Oct 31 09:28:59 1996 Jeffrey A Law (law@cygnus.com)
2345
2346 * scriptempl/v850.sc (zdata): Handle reszdata, romzdata and
2347 romzbss too.
2348
2349 Tue Oct 29 12:33:05 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2350
2351 * emulparams/d10velf.sh: Changes needed for D10V-EVA board.
2352 Set TEXT_START_ADDR to 0x1000000. Set READONLY_START_ADDR to
2353 0x2000000.
2354
2355 * scripttempl/elfd10v.sc: Fix calculation of .text. Change
2356 .stack to start at 0x2007ffe.
2357
2358 Mon Oct 28 15:37:00 1996 Doug Evans <dje@canuck.cygnus.com>
2359
2360 * configure.tgt (sparclet*-*-aout*): Delete, use sparc*-*-aout*.
2361
2362 Wed Oct 23 16:17:22 1996 Jeffrey A Law (law@cygnus.com)
2363
2364 * scriptempl/v850.sc (zdata): Fix typo "zrodata" -> "rozdata".
2365
2366 * scriptempl/v850.sc (zdata): Make sure this stays
2367 in lo-memory.
2368
2369 Tue Oct 22 11:36:47 1996 Jeffrey A Law (law@cygnus.com)
2370
2371 * scripttempl/v850.sc (__ep): Put it at the start
2372 of the tda section.
2373
2374 * scriptempl/v850.sc: Move all "normal" sections into
2375 the external memory region (0x100000 - 0x200000).
2376
2377 Mon Oct 21 17:16:59 1996 Michael Meissner <meissner@wogglebug.tiac.net>
2378
2379 * scripttempl/elfd10v.sc: Clone from elf.sc, move .text to
2380 0x10000, so that is more room for data.
2381
2382 * emulparams/d10velf.sh (TEXT_START_ADDR): Now 0x100000.
2383 (READONLY_START_ADDR): Now 0x0.
2384 (SCRIPT_NAME): Now elfd10v.
2385
2386 * Makefile.in (ed10velf.c): Depend on elfd10v.sc, not elf.sc.
2387
2388 Fri Oct 18 22:12:49 1996 Doug Evans <dje@canuck.cygnus.com>
2389
2390 * emulparams/m32relf.sh (TEXT_START_ADDR): Change from 0 to 0x100.
2391
2392 Fri Oct 18 15:43:38 1996 Ian Lance Taylor <ian@cygnus.com>
2393
2394 * Makefile.in (ALL_EMULATIONS): Remove eelf64alpha.o.
2395 (ALL_64_EMULATIONS): New variable.
2396 * configure.in: Accept --enable-64-bit-bfd option. If it is set
2397 with --enable-targets=all, include ALL_64_EMULATIONS in
2398 EMULATION_OFILES.
2399 * configure: Rebuild.
2400
2401 Fri Oct 18 12:58:35 1996 Jeffrey A Law (law@cygnus.com)
2402
2403 * scripttempl/v850.sc (__gp, __ep): Define.
2404
2405 Thu Oct 17 18:14:07 1996 Ian Lance Taylor <ian@cygnus.com>
2406
2407 * ld.texinfo: Try to consistently use a single or a double dash
2408 for each option.
2409
2410 Thu Oct 17 10:17:20 1996 Doug Evans <dje@canuck.cygnus.com>
2411
2412 * emulparams/m32relf.sh (EMBEDDED): Define.
2413
2414 Thu Oct 17 10:56:49 1996 Jeffrey A Law (law@cygnus.com)
2415
2416 * scripttempl/v850.sc (.zdata): Add this before .text.
2417 (.sdata): Also include .rosdata as part of the .sdata.
2418 (.tdata): Include this just before .sdata.
2419
2420 * emulparms/v850.sh (SCRIPT_NAME): Use "v850" not "elf".
2421 * scripttempl/v850.sc: Wrap script with a "cat << EOF".
2422
2423 Wed Oct 16 23:10:01 1996 Jeffrey A Law (law@cygnus.com)
2424
2425 * scripttempl/v850.sc: New linker script for the V850.
2426 * Makefile.in: Use it.
2427
2428 Thu Oct 10 17:57:00 1996 Ian Lance Taylor <ian@cygnus.com>
2429
2430 * emulparams/elf32b4300.sh: Define _gp in OTHER_GOT_SYMBOLS, not
2431 OTHER_READWRITE_SECTIONS.
2432 * emulparams/elf32l4300.sh: Likewise.
2433
2434 Wed Oct 9 14:36:18 1996 Ian Lance Taylor <ian@cygnus.com>
2435
2436 * ld.h (ld_config_type): Add warn_section_align field.
2437 * lexsup.c (OPTION_WARN_SECTION_ALIGN): Define.
2438 (ld_options): Add --warn-section-align.
2439 (parse_args): Handle --warn-section-align.
2440 * ldlang.c (lang_size_sections): If warn_section_align, warn if
2441 the start of a section changes due to alignment.
2442 * ld.texinfo, ld.1: Document --warn-section-align.
2443 * ld.texinfo: Change some single dashes to double dashes.
2444
2445 * emultempl/pe.em (set_pe_subsystem): Record entry symbol for each
2446 subsystem type. Ifdef out os2 type. Recognize a version number.
2447
2448 Tue Oct 8 12:07:13 1996 Ian Lance Taylor <ian@cygnus.com>
2449
2450 * emultempl/pe.em (set_pe_subsystem): When setting the subsystem
2451 to windows, set the entry point.
2452
2453 * Makefile.in (ldlex.c): Don't pass any options to $(LEX).
2454
2455 Mon Oct 7 17:29:05 1996 Ian Lance Taylor <ian@cygnus.com>
2456
2457 * ld.texinfo (Options): Mention .so extensions for shared
2458 libraries.
2459
2460 Sun Oct 6 22:35:36 1996 Jason Merrill <jason@yorick.cygnus.com>
2461
2462 * scripttempl/elf{,mips,ppc}.sc: Add DWARF 2 sections.
2463
2464 Fri Oct 4 18:49:31 1996 Ian Lance Taylor <ian@cygnus.com>
2465
2466 * scripttempl/m68kcoff.sc: Only set the address of .text if
2467 RELOCATING.
2468
2469 Fri Oct 4 10:59:52 1996 Doug Evans <dje@canuck.cygnus.com>
2470
2471 * emulparams/sparcaout.sh ({BIG,LITTLE}_OUTPUT_FORMAT): Define.
2472 * scripttempl/aout.sc ({BIG,LITTLE}_OUTPUT_FORMAT): Provide default.
2473 (OUTPUT_FORMAT): Support bi-endian targets.
2474
2475 Thu Oct 3 13:52:03 1996 Ian Lance Taylor <ian@cygnus.com>
2476
2477 * fnmatch.h, fnmatch.c: Remove (now in libiberty).
2478 * Makefile.in: Rebuild dependencies.
2479 (CFILES): Remove fnmatch.c.
2480 (HFILES): Remove fnmatch.h.
2481 (OFILES): Remove fnmatch.o.
2482
2483 Thu Oct 3 15:41:24 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
2484
2485 * Makefile.in (mostlyclean): Move config.log to distclean.
2486
2487 Wed Oct 2 23:45:25 1996 Geoffrey Noer <noer@cygnus.com>
2488
2489 * emultmpl/pe.em: increase size of stack reserve to 0x2000000
2490 (necessary in order to compile parse.c in gcc sources under NT)
2491
2492 Wed Oct 2 14:49:10 1996 Ian Lance Taylor <ian@cygnus.com>
2493
2494 * lexsup.c (ld_options): Fix typo in --rpath-link description.
2495 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Suggest
2496 --rpath if a needed library is not found.
2497
2498 Tue Oct 1 16:17:33 1996 Joel Sherrill <joel@oarcorp.com>
2499
2500 * configure.tgt (mips*-*-rtems*): New target, like mips*-*-elf*.
2501
2502 Tue Oct 1 15:50:34 1996 Ian Lance Taylor <ian@cygnus.com>
2503
2504 * ld.texinfo (Options): Give more detail on -l option.
2505
2506 * scripttempl/elfmips.sc: Handle CREATE_SHLIB the same way that
2507 elf.sc does, so that glibc works better.
2508
2509 * ldver.c (ld_program_version): New variable.
2510 (ldversion): Use it.
2511 * ldver.h (ld_program_version): Declare.
2512 * lexsup.c (ld_options): Handle --dll-verbose like --verbose, not
2513 --version. Change --version handling to match current GNU
2514 standards.
2515 (help): Print bug report address.
2516
2517 Mon Sep 30 12:14:43 1996 Doug Evans <dje@canuck.cygnus.com>
2518
2519 * Makefile.in (em32relf.c): Add rule for.
2520 * configure.tgt (m32r-*-*): Recognize.
2521 * emulparams/m32relf.sh: New file.
2522
2523 Thu Sep 26 13:58:47 1996 Stan Shebs <shebs@andros.cygnus.com>
2524
2525 * mpw-make.sed: Add symbolic doublequoting to ldmain compile edit.
2526 * mpw-config.in: Add mips-*-* case as mips-elf, and use more
2527 wildcards in matching.
2528 * mpw-emipself.c: New file, pregenerated mips elf emulation.
2529
2530 Tue Sep 17 12:18:21 1996 Ian Lance Taylor <ian@cygnus.com>
2531
2532 * ldint.texinfo: Rewrote.
2533
2534 * configure.tgt: Add cases for MIPS 5000 like MIPS 4300.
2535
2536 Mon Sep 16 17:55:21 1996 Ian Lance Taylor <ian@cygnus.com>
2537
2538 * scripttempl/armcoff.sc: Only define symbols if RELOCATING. Fix
2539 syntax error on __end__ line.
2540
2541 * scripttempl/armcoff.sc: For -N or -n, don't align .data. From
2542 Chris Hadley <Christopher.Hadley@cl.cam.ac.uk>
2543
2544 Sun Sep 15 22:09:56 1996 Jeffrey A Law (law@cygnus.com)
2545
2546 * emulparms/v850.sh: Fix OTHER_RELOCATING_SECTIONS.
2547
2548 Sun Sep 15 10:38:16 1996 Mark Alexander <marka@cygnus.com>
2549
2550 * emulparms/d10v.sh: Set OTHER_RELOCATING_SECTIONS to put
2551 stack at top of simulator memory.
2552
2553 Fri Sep 13 15:49:45 1996 Ian Lance Taylor <ian@cygnus.com>
2554
2555 * ldlex.l (SYMBOLCHARN): Add $, _, and ~.
2556
2557 Wed Sep 11 23:30:42 1996 Ian Lance Taylor <ian@cygnus.com>
2558
2559 * ldmain.c (get_emulation): Check for -mips4 like -mips1, et. al.
2560
2561 Thu Sep 5 15:24:12 1996 Ian Lance Taylor <ian@cygnus.com>
2562
2563 * ldlang.c (section_already_linked): Accept a lang_input_statement
2564 as the PTR argument. If the file is symbols only, discard all
2565 input sections.
2566 (ldlang_add_file): Pass entry to bfd_map_over_sections.
2567
2568 Wed Sep 4 15:53:43 1996 Ian Lance Taylor <ian@cygnus.com>
2569
2570 * configure.tgt (alpha-*-gnu*): New target. From Fila Kolodny
2571 <fila@ibi.com>.
2572
2573 Tue Sep 3 00:52:54 1996 Jeffrey A Law (law@cygnus.com)
2574
2575 * emulparms/v850.sh: Set OTHER_RELOCATING_SECTIONS
2576
2577 Sun Sep 1 21:48:58 1996 Jeffrey A Law (law@cygnus.com)
2578
2579 * emulparms/v850.sh: Set EMBEDDED.
2580
2581 Fri Aug 30 22:30:30 1996 Jeffrey A Law (law@cygnus.com)
2582
2583 * emulparms/v850.sh: Entry symbol is "_start", tweak
2584 ctor/dtor support.
2585
2586 Fri Aug 30 18:32:31 1996 Ian Lance Taylor <ian@cygnus.com>
2587
2588 * configure.tgt (sh-*-elf*): New target.
2589 * emulparams/shelf.sh: New file.
2590 * emulparams/shlelf.sh: New file.
2591 * Makefile.in (ALL_EMULATIONS): Add eshelf.o and eshlelf.o.
2592 (eshelf.c, eshlelf.c): New targets.
2593 * scripttempl/elf.sc: If EMBEDDED is defined, then don't add
2594 SIZEOF_HEADERS to TEXT_START_ADDR. Expand CTOR_START and CTOR_END
2595 around .ctors, and DTOR_START and DTOR_END around .dtors. Expand
2596 OTHER_RELOCATING_SECTIONS if RELOCATING.
2597
2598 Thu Aug 29 16:57:46 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2599
2600 * configure.{host,tgt} (i[345]86-*-*): Recognize i686 for pentium
2601 pro.
2602
2603 Mon Aug 26 12:58:11 1996 Ian Lance Taylor <ian@cygnus.com>
2604
2605 * ldgram.y (section): Add opt_nocrossrefs; pass value to
2606 lang_enter_overlay.
2607 (opt_nocrossrefs): New nonterminal.
2608 * ldlex.l: Recognize NOCROSSREFS keyword in EXPRESSION mode.
2609 * ldlang.c (overlay_nocrossrefs): New static variable.
2610 (lang_enter_overlay): Add nocrossrefs parameter.
2611 (lang_leave_overlay): Only add nocrossrefs if overlay_nocrossrefs
2612 is set. Initialize overlay_nocrossrefs.
2613 * ldlang.h (lang_enter_overlay): Update declaration.
2614 * ld.texinfo (Overlays): Update documentation.
2615
2616 * ldver.c (ldversion): Print GNU ld in the version message.
2617
2618 Thu Aug 22 17:10:40 1996 Ian Lance Taylor <ian@cygnus.com>
2619
2620 * configure.host: Set HLDENV.
2621 * configure.in: Substitute HLDENV.
2622 * configure: Rebuild.
2623 * Makefile.in (HLDENV): New variable.
2624 ($(LD_PROG)): Use $(HLDENV).
2625
2626 Thu Aug 22 16:29:28 1996 Jeffrey A Law (law@cygnus.com)
2627
2628 * Makefile.in (ev850.c): New target.
2629 * configure.tgt (v850-*-*): New target.
2630 * emulparams/v850.sh: New file.
2631
2632 Thu Aug 22 11:16:02 1996 Stan Shebs <shebs@andros.cygnus.com>
2633
2634 * mpw-make.sed: Add @DASH_C_FLAG@ to compiler edit.
2635
2636 Wed Aug 21 11:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
2637
2638 * scripttempl/elf.sc: Put .gnu.linkonce* sections in appropriate
2639 containing sections.
2640
2641 Mon Aug 19 13:01:42 1996 Ian Lance Taylor <ian@cygnus.com>
2642
2643 * fnmatch.c: Include sysdep.h.
2644
2645 Mon Aug 19 11:28:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2646
2647 * genscripts.sh: Undo 8/16 change.
2648
2649 * emulparams/d10velf.sh (MACHINE): Explicitly set to nothing.
2650
2651 Fri Aug 16 19:18:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2652
2653 * genscripts.sh: Explicitly reset any shell variables set or used
2654 by the various .sc scripts to allow inadvertant use of these
2655 names as normal environment variables by the person running
2656 configure.
2657
2658 * Makefile.in (ed10velf.c): Use tdir_d10v, not tdir_arcelf.
2659
2660 Fri Aug 16 14:15:41 1996 James G. Smith <jsmith@cygnus.co.uk>
2661
2662 * scripttempl/armcoff.sc (__bss_start__, __bss_end__,
2663 __data_start__, __data_end__): Added to keep in sync. with the
2664 default ARM crt0.s. Added __CTOR_LIST__ and __DTOR_LIST__ support.
2665
2666 Thu Aug 8 14:24:56 1996 Ian Lance Taylor <ian@cygnus.com>
2667
2668 * ldcref.c (check_reloc_refs): If info->same, look for any symbol
2669 defined in info->defsec, not just the section symbol.
2670
2671 Wed Aug 7 14:40:48 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
2672
2673 * configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
2674 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
2675 (NEED_DECLARATION_SBRK): New macro.
2676 * configure, config.in: Rebuild.
2677 * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
2678 * ldmain.c (sbrk): Declare if HAVE_SBRK and
2679 NEED_DECLARATION_SBRK.
2680
2681 * ldlang.c (lang_record_phdrs): Cast xmalloc and xrealloc return.
2682
2683 Mon Aug 5 16:26:14 1996 Ian Lance Taylor <ian@cygnus.com>
2684
2685 * ldlex.l: Recognize OVERLAY.
2686 * ldgram.y: Add section_phdr field to %union.
2687 (section): Handle phdr_opt result. Add OVERLAY case.
2688 (opt_exp_without_type): New nonterminal.
2689 (phdr_opt): Return list of phdrs.
2690 (overlay_section): New nonterminal.
2691 * ldlang.c: Include <ctype.h>.
2692 (lang_leave_output_section_statement): Add phdrs parameter.
2693 Change all callers.
2694 (lang_section_in_phdr): Remove.
2695 (overlay_vma, overlay_lmn, overlay_max): New static variables.
2696 (struct overlay_list): Define.
2697 (overlay_list): New static variable.
2698 (lang_enter_overlay, lang_enter_overlay_section): New functions.
2699 (lang_leave_overlay_section, lang_leave_overlay): New functions.
2700 * ldlang.h (lang_leave_output_section_statement): Update
2701 declaration for new parameter.
2702 (lang_section_in_phdr): Don't declare.
2703 (lang_enter_overlay, lang_enter_overlay_section): Declare.
2704 (lang_leave_overlay_section, lang_leave_overlay): Declare.
2705 * ld.texinfo (Overlays): New node under SECTIONS, documenting
2706 overlays.
2707
2708 * ldlex.l: Recognize MAX and MIN.
2709 * ldgram.y (MAX, MIN): New terminals.
2710 (exp): Recognize MAX and MIN.
2711 * ldexp.c (fold_binary): Handle MAX and MIN.
2712 * ld.texinfo (Arithmetic Functions): Document MAX and MIN.
2713
2714 * ld.texinfo (PHDRS): Use @cindex, not @kindex, for program header
2715 index entries.
2716
2717 * ldgram.y (SIZEOF, ADDR): Do not specify type.
2718
2719 * ldcref.c (check_nocrossref): Skip symbols with no output
2720 sections.
2721
2722 Fri Aug 2 14:57:49 1996 Ian Lance Taylor <ian@cygnus.com>
2723
2724 * ldgram.y (LOADADDR): New terminal.
2725 (exp): Handle LOADADDR.
2726 * ldlex.l: Recognize LOADADDR.
2727 * ldexp.c (exp_print_token): Add LOADADDR.
2728 (fold_name): Implement LOADADDR.
2729 * ldlang.c (exp_init_os): Treat LOADADDR like ADDR.
2730 * ld.texinfo (Arithmetic Functions): Document LOADADDR.
2731
2732 Thu Aug 1 12:52:19 1996 Ian Lance Taylor <ian@cygnus.com>
2733
2734 * ld.h (check_nocrossrefs): Declare.
2735 * ldlang.h (struct lang_nocrossref): Define.
2736 (struct lang_nocrossrefs): Define.
2737 (nocrossref_list): Declare.
2738 (lang_add_nocrossref): Declare.
2739 * ldlex.l: Recognize NOCROSSREFS keyword.
2740 * ldgram.y (%union): Add nocrossref field.
2741 (NOCROSSREFS): New terminal.
2742 (ifile_p1): Recognize NOCROSSREFS.
2743 (nocrossref_list): New nonterminal.
2744 * ldlang.c (nocrossref_list): Define.
2745 (lang_add_nocrossref): New function.
2746 * ldmain.c (main): If nocrossref_list is not NULL, call
2747 check_nocrossrefs.
2748 (warning_callback): Free symbols if there is no place to store
2749 them.
2750 (notice): Call add_cref if nocrossref_list is not NULL.
2751 * ldcref.c: Include "ldexp.h" and "ldlang.h".
2752 (check_nocrossrefs): New function.
2753 (check_nocrossref): New static function.
2754 (struct check_refs_info): Define.
2755 (check_refs, check_reloc_refs): New static functions.
2756 * Makefile.in: Rebuild dependencies.
2757 * ld.texinfo (Option Commands): Document NOCROSSREFS.
2758
2759 * ld.texinfo (Section Placement): Improve the wording of the
2760 wildcard documentation. Mention that wildcards are only searched
2761 for on the command line, not in the file system.
2762
2763 * emultempl/sunos.em (gld${EMULATION_NAME}_after_open): Move
2764 definition of lib_path inside condition where it is used.
2765
2766 Wed Jul 31 13:17:10 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2767
2768 * emulparams/d10velf.sh: Now works with elf.sc.
2769
2770 Wed Jul 31 11:52:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2771
2772 * emulparams/d10velf.sh (SCRIPT_NAME): Change to vanilla.
2773
2774 Tue Jul 30 14:46:42 1996 Ian Lance Taylor <ian@cygnus.com>
2775
2776 * ldlang.c (lang_size_sections): Add the section VMA to the result
2777 value when computing the address of a section.
2778
2779 * ld.h (args_type): Add cref field.
2780 * lexsup.c (parse_args): Set command_line.cref.
2781 * ldmain.c (main): Check command_line.cref rather than
2782 link_info.notice_all.
2783 (notice): Likewise.
2784
2785 * ldcref.c (output_one_cref): Don't crash if a symbol is defined
2786 in a section without an owner.
2787
2788 Mon Jul 29 17:23:33 1996 Ian Lance Taylor <ian@cygnus.com>
2789
2790 * fnmatch.h, fnmatch.c: New files.
2791 * ldlex.l: Remove unused definition of FILENAME. Add definition
2792 of WILDCHAR. In SCRIPT mode, accept any sequence of WILDCHAR as a
2793 NAME.
2794 * ldgram.y (file_NAME_list): Accept '*' and '?' specially.
2795 (input_section_spec): Accept '?' specially.
2796 (statement): Change exp to mustbe_exp in length and FILL cases.
2797 (section): Call ldlex_script before section statements, and call
2798 ldlex_popstate after them.
2799 * ldlang.c: Include "fnmatch.h".
2800 (wildcardp): New static function.
2801 (wild_section): Permit the section name to be a wildcard.
2802 (wild_file): New static function, broken out of wild.
2803 (wild): Call wild_file. Permit the file name to be a wildcard.
2804 (open_input_bfds): Don't call lookup_name for a wildcard pattern.
2805 * Makefile.in: Rebuild dependencies.
2806 (CFILES): Add fnmatch.c.
2807 (HFILES): Add fnmatch.h.
2808 (OFILES): Add fnmatch.o.
2809 * ld.texinfo: Document that file and section names can now be
2810 wildcard patterns.
2811
2812 * ldlang.c (lang_place_orphans): Correct condition: place a common
2813 section if not relocateable or if common definitions are forced.
2814
2815 Wed Jul 24 12:16:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2816
2817 * emulparams/d10velf.sh (SCRIPT_NAME): Change to elf.
2818
2819 Wed Jul 24 13:38:22 1996 Michael Meissner <meissner@wogglebug.tiac.net>
2820
2821 * configure.tgt (d10v-*-*): Don't require the -elf, allow plain d10v.
2822
2823 Tue Jul 23 10:36:19 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2824
2825 * Makefile.in (ed10velf.c): New target.
2826 * configure.tgt (d10v-*-elf*): New target.
2827 * emulparams/d10velf.sh: New file.
2828
2829 Thu Jul 18 16:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
2830
2831 * configure.tgt (sparc*-*-sysv4*): New target. From Andrew Gierth
2832 <ANDREWG@microlise.co.uk>.
2833
2834 * configure.host: Change irix5 to irix[56]*.
2835 * configure.tgt: Likewise.
2836
2837 Wed Jul 17 10:52:46 1996 Kim Knuttila <krk@cygnus.com>
2838
2839 * emultempl/pe.em (sort_sections): Pay attention to return code.
2840
2841 * ldmisc.c (demangle): Remove all prefix '.'s from a name.
2842
2843 Mon Jul 15 11:49:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2844
2845 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Round
2846 the value of __start_SECNAME to the alignment required by the
2847 section to be placed.
2848
2849 Tue Jul 9 12:09:02 1996 Ian Lance Taylor <ian@cygnus.com>
2850
2851 * configure.tgt (mips*el-*-elf*): Use elf32elmip.
2852 (mips*-*-elf*): Use elf32ebmip.
2853 * emulparams/elf32bmip.sh (EMBEDDED): Don't define.
2854 * emulparams/elf32lmip.sh (EMBEDDED): Don't define.
2855 * emulparams/elf32elmip.sh: New file; copy of elf32lmip.sh with
2856 EMBEDDED defined.
2857 * emulparams/elf32ebmip.sh: New file; copy of elf32bmip.sh with
2858 EMBEDDED defined.
2859 * emulparams/elf32b4300.sh (EMBEDDED): Define.
2860 * emulparams/elf32l4300.sh (EMBEDDED): Define.
2861 * Makefile.in (ALL_EMULATIONS): Add eelf32ebmip.o eelf32elmip.o.
2862 (eelf32ebmip.c, eelf32elmip.c): New targets.
2863
2864 Thu Jul 4 12:01:03 1996 Ian Lance Taylor <ian@cygnus.com>
2865
2866 * ldver.c (ldversion): Set version to cygnus-2.7.1.
2867
2868 * Released binutils 2.7.
2869
2870 * emulparams/pc532macha.sh: Rename from pc532machaout.sh to avoid
2871 System V file name limitations.
2872 * configure.tgt (nc32k-pc532-mach*, ns32k-pc532-ux*): Use
2873 pc532macha rather than pc532machaout.
2874 * Makefile.in (ALL_EMULATIONS): Change epc532machaout.o to
2875 epc532macha.o.
2876 (epc532macha.c): Rename target from epc532machaout.c.
2877
2878 Wed Jul 3 11:40:10 1996 Ian Lance Taylor <ian@cygnus.com>
2879
2880 * ldlang.c (print_padding_statement): Use %u, not %x, to print
2881 fill value.
2882
2883 Sun Jun 30 11:16:43 1996 Stan Shebs <shebs@andros.cygnus.com>
2884
2885 * mpw-eppcmac.c: Update to reflect May 23 change to aix.em.
2886
2887 Thu Jun 27 14:03:42 1996 Ian Lance Taylor <ian@cygnus.com>
2888
2889 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Put the .sa
2890 file just before the .so file, rather than just after.
2891
2892 * configure.host: Use -print-file-name=FILE rather than piping
2893 -print-libgcc-file-name through sed.
2894 (i[345]86*-*-sco*, i[345]86-*-isc*): Create crtbegin.o and
2895 crtend.o files, in case gcc doesn't use them.
2896 * Makefile.in (mostlyclean): Remove crtbegin.o and crtend.o.
2897
2898 Wed Jun 26 15:57:21 1996 Ian Lance Taylor <ian@cygnus.com>
2899
2900 * configure.tgt (mips*-dec-osf*): New target.
2901
2902 Tue Jun 25 22:15:29 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
2903
2904 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
2905 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
2906 (docdir): Removed.
2907 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
2908 (AC_PROG_INSTALL): Added.
2909 * configure: Rebuilt.
2910
2911 Mon Jun 24 18:48:16 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2912
2913 * scripttempl/elfppc.sc (_GLOBAL_OFFSET_TABLE_): Don't do a
2914 PROVIDE of _GLOBAL_OFFSET_TABLE_, since it needs to be at a
2915 non-fixed location.
2916
2917 Mon Jun 24 17:55:31 1996 Jouke Numan <jnuman@bazis.nl>
2918
2919 * ldlang.h (enum section_type): Define.
2920 (lang_output_section_statement_type): Remove loadable field. Add
2921 sectype field.
2922 (lang_enter_output_section_statement): Change flags parameter in
2923 prototype to sectype.
2924 * ldgram.y (typebits): Remove.
2925 (sectype): New static variable.
2926 (opt_at): Use sectype rather than typebits.
2927 (type): Set sectype rather than typebits.
2928 (atype): Likewise.
2929 * ldlex.l: Recognize DSECT, COPY, INFO, and OVERLAY in
2930 EXPRESSION mode.
2931 * ldlang.c (lang_output_section_statement_lookup): Set sectype
2932 field rather than loadable field.
2933 (wild_doit): Check sectype rather than loadable.
2934 (lang_record_phdrs): Likewise.
2935 (lang_enter_output_section_statement): Rename flags parameter to
2936 sectype. Set sectype field rather than loadable field. Set flags
2937 field based on sectype.
2938
2939 Mon Jun 24 12:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
2940
2941 * scripttempl/elf.sc: Force .stab* and .comment sections to start
2942 at 0.
2943
2944 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
2945 using shared libraries.
2946 * configure: Rebuild with autoconf 2.10.
2947
2948 Fri Jun 21 17:40:56 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
2949
2950 * configure.tgt: Add support for *-*-rtems* configurations.
2951
2952 Fri Jun 21 13:05:51 1996 Richard Henderson <rth@tamu.edu>
2953
2954 * configure.tgt (alpha-*-linuxecoff*): New target.
2955 (alpha-*-linux*): Use elf64alpha.
2956 * emulparams/elf64alpha.sh: New file.
2957 * emultempl/elf32.em: If ELFSIZE is not set, set it to 32. Use
2958 ${ELFSIZE} rather than 32 when calling BFD routines.
2959 (hold_rodata): New static variable.
2960 (gld${EMULATION_NAME}_place_orphan): Use hold_rodata for a
2961 readonly section that is not code.
2962 (gld${EMULATION_NAME}_place_section): Set hold_rodata. Don't use
2963 a .rel section unless its bfd_section field is not NULL.
2964 * Makefile.in (ALL_EMULATIONS): Add eelf64alpha.o.
2965 (eelf64alpha.c): New target.
2966
2967 Fri Jun 21 12:45:46 1996 Ian Lance Taylor <ian@cygnus.com>
2968
2969 * ldmisc.c (vfinfo): Correct handling of 0 in %W case.
2970
2971 Thu Jun 20 13:55:28 1996 Ian Lance Taylor <ian@cygnus.com>
2972
2973 Add enough support to understand the gcc svr3.ifile script:
2974 * ldlex.l: Recognize BLOCK and GROUP in EXPRESSION context. Add
2975 BIND keyword.
2976 * ldgram.y: Add BIND token.
2977 (section): Recognize GROUP.
2978 (opt_ext_with_type): Recognize a couple of cases of BIND.
2979 * ldlang.c (init_os): Don't do anything if section is already
2980 initialized. Call exp_init_os on addr_tree field.
2981 (exp_init_os): New static function.
2982 (map_input_to_output_sections): Call exp_init_os on assignment
2983 expression.
2984 (lang_place_orphans): Check for common sections by name COMMON
2985 rather than by common_section field. Don't warn about absence of
2986 [COMMON] command.
2987
2988 * ldlang.h (lang_input_statement_type): Remove useless fields
2989 common_section, common_output_section, and complained, as well as
2990 all references to them.
2991
2992 * ldexp.c: Reindent a lot of code.
2993 (exp_fold_tree): Call FAIL rather than einfo in default case.
2994
2995 Wed Jun 19 11:40:14 1996 Ian Lance Taylor <ian@cygnus.com>
2996
2997 * configure.host (m88*-*-dgux*): Quote HOSTING_CRT0. From
2998 <randall.hron@medaphis.com>.
2999
3000 Tue Jun 18 15:53:09 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3001
3002 * scripttempl/h8300s.sc: New file for H8/S.
3003 * emulpararms/h8300s.sh: New file for H8/S.
3004 * Makefile.in (ALL_EMULATIONS): Add H8/S.
3005 (e_h8300s.c): Add dependencies.
3006 * configure.tgt: Add H8/S to targ_extra_emuls.
3007
3008 Tue Jun 18 17:55:39 1996 Ian Lance Taylor <ian@cygnus.com>
3009
3010 * configure.tgt (i[345]86*-*-isc*): New target. From
3011 <uddeborg@carmen.se>.
3012
3013 Wed Jun 12 12:46:21 1996 Ian Lance Taylor <ian@cygnus.com>
3014
3015 * lexsup.c: Include "libiberty.h".
3016 (parse_args): Copy the -Y argument into memory.
3017 (set_default_dirlist): Don't put the ':' back into the directory
3018 list.
3019
3020 Fri Jun 7 11:27:42 1996 Ian Lance Taylor <ian@cygnus.com>
3021
3022 * emultempl/sunos.em: Include libiberty.h.
3023 (gld${EMULATION_NAME}_set_symbols): New static function to add
3024 LD_LIBRARY_PATH to the list of search directories.
3025 (ld_${EMULATION_NAME}_emulation): Add new set_symbols routine.
3026
3027 Thu Jun 6 11:50:31 1996 Ian Lance Taylor <ian@cygnus.com>
3028
3029 * emulparams/elf32bmip.sh (OTHER_GOT_SYMBOLS): Use ALIGN(16)
3030 rather than . when computing _gp value. From Per Fogelstrom.
3031 * emulparams/elf32lmip.sh (OTHER_GOT_SYMBOLS): Likewise.
3032
3033 * ldmain.c (main): Don't close and unlink the file on error, since
3034 remove_output will do it anyhow.
3035 * ldlang.c (open_output): Set boolean variable to true, not 1.
3036
3037 Wed Jun 5 18:34:14 1996 James G. Smith <jsmith@cygnus.co.uk>
3038
3039 * emulparams/{elf32b4300.sh,elf32l4300.sh} (SCRIPT_NAME): Use
3040 elfmips instead of elf.
3041
3042 Tue Jun 4 18:43:07 1996 Ian Lance Taylor <ian@cygnus.com>
3043
3044 * ldcref.c: New file.
3045 * ld.h (add_cref, output_cref): Declare.
3046 * ldmain.c (main): Initialize notice_all field. If it is set at
3047 end of link, call output_cref.
3048 (notice): Rename from notice_ysym. Check notice_all.
3049 * ldmisc.c (finfo): Make globally visible.
3050 * ldmisc.h (finfo): Declare.
3051 * lexsup.c (OPTION_CREF): Define.
3052 (ld_options): Add "cref".
3053 (parse_args): Handle OPTION_CREF.
3054 * Makefile.in: Rebuild dependencies.
3055 (CFILES): Add ldcref.c.
3056 (OFILES): Add ldcref.o.
3057 * ld.texinfo, ld.1: Document --cref.
3058
3059 Tue Jun 4 12:12:25 1996 Tom Tromey <tromey@csk3.cygnus.com>
3060
3061 * Makefile.in (install): Make $(tooldir) and $(tooldir)/bin.
3062
3063 Fri May 31 12:40:55 1996 Ian Lance Taylor <ian@cygnus.com>
3064
3065 * emultempl/pe.em (sort_sections): Don't assume that a
3066 wild_statement has a section name.
3067
3068 Wed May 29 13:13:35 1996 Ian Lance Taylor <ian@cygnus.com>
3069
3070 * scripttempl/elfmips.sc: Quote test -z argument.
3071
3072 * ld.texinfo: Clarify the CONSTRUCTORS command.
3073
3074 Thu May 23 16:07:44 1996 Ian Lance Taylor <ian@cygnus.com>
3075
3076 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Initialize
3077 file, not impfile.
3078
3079 Wed May 22 11:31:30 1996 Doug Evans <dje@seba.cygnus.com>
3080
3081 * ldlang.c (wild_doit): Don't copy over SEC_LINK_{ONCE,DUPLICATES}
3082 if final link.
3083 * emultempl/pe.em (sfunc): Renamed to sort_by_file_name.
3084 (sort_by_section_name, sort_sections_1): New functions.
3085 (sort_sections): Only sort by file name sections in .idata.
3086 Add "Grouped Sections" support.
3087 (gld${EMULATION_NAME}_place_orphan): Rewrite to support Grouped
3088 Sections.
3089 (gld${EMULATION_NAME}_place_section): Delete.
3090 * scripttempl/pe.sc (.text,.data,.rdata): Add *(.foo\$).
3091 (.CRT,.rsrc): Rewrite to use Grouped Section support.
3092
3093 Tue May 21 14:31:48 1996 Stan Shebs <shebs@andros.cygnus.com>
3094
3095 * mpw-eppcmac.c: Update to reflect changes to aix.em.
3096
3097 Sun May 19 16:59:44 1996 Doug Evans <dje@seba.cygnus.com>
3098
3099 * ldlang.c (dprint_statement): Stop printing at end of list.
3100
3101 Sat May 18 13:12:05 1996 Steve Chamberlain <sac@slash.cygnus.com>
3102
3103 Support for --force-exe-suffix
3104 * ld.h (args_type): Add force_exe_suffix.
3105 * ld.texinfo: Add documentation.
3106 * ldmain.c (main): Add support for option.
3107 * lexsup.c (OPTION_FORCE_EXE_SUFFIX): New.
3108 (ld_options, parse_args): Add support for option.
3109
3110 Wed May 15 12:50:25 1996 Jim Wilson <wilson@chestnut.cygnus.com>
3111
3112 * emultempl/pe.em (set_pe_value): Pass 0 not 16 to strtoul call.
3113
3114 Fri May 10 16:28:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3115
3116 * scripttempl/elfppc.sc (__stack): Make __stack 0 if it was
3117 referenced but not defined.
3118
3119 Thu May 9 08:52:23 1996 Rob Savoye <rob@chinadoll.cygnus.com>
3120
3121 * emulparams/{elf32bmip.sh,elf32lmip.sh,mipsidt.sh,mipsidtl.sh}:
3122 Set a new variable to signify if the final target is an embedded
3123 system.
3124 * scripttempl/{mips.sc,elfmips.sc}: Don't add SIZEOF_HEADERS to
3125 .text for an embedded system.
3126
3127 Tue May 7 10:56:11 1996 Doug Evans <dje@canuck.cygnus.com>
3128
3129 * scripttempl/pe.em (gld${EMULATION_NAME}_place_orphan): New function.
3130 (gld${EMULATION_NAME}_place_section): New function.
3131 (hold_{section,use,text,rdata,data}): New static locals.
3132 (ld_${EMULATION_NAME}_emulation): Update orphan field.
3133 * scripttempl/pe.sc: Whitespace cleanup. Semicolon usage cleanup.
3134 (INIT,FINI): Delete, unused.
3135 (.text): Document orphan .text.foo sections.
3136 (.rdata): Document orphan .rdata.foo sections.
3137 (.data): Document orphan .data.foo sections.
3138
3139 Tue May 7 11:35:46 1996 Jeffrey A Law (law@cygnus.com)
3140
3141 * scripttempl/h8300.sc: Place ".tiny" sections right
3142 after ".data" sections.
3143 * scripttempl/h8300h.sc: Place ".tiny" sections into
3144 the "tiny" memory region, 0xff8000 through 0xffff00.
3145
3146 * scripttempl/h8300.sc: Set the entry point to the value of
3147 "_start" rather than the start of the text segment.
3148 * scripttempl/h8300h.sc: Likewise.
3149
3150 * scripttempl/h8300.sc: Place .rodata sections before .text
3151 sections in main ram.
3152 * scripttempl/h8300h.sc: Likewise.
3153
3154 Mon May 6 23:32:30 1996 Jeffrey A Law (law@cygnus.com)
3155
3156 * scripttempl/h8300h.sc: Use "eight", not "eightbit" for the
3157 8-bit region and 8-bit sections.
3158
3159 Wed May 1 17:50:06 1996 Doug Evans <dje@canuck.cygnus.com>
3160
3161 * ldlang.c (section_already_linked): Fix typos.
3162
3163 Mon Apr 29 20:31:06 1996 Doug Evans <dje@canuck.cygnus.com>
3164
3165 * scripttempl/pe.sc (.endjunk): Define __end__.
3166
3167 Mon Apr 29 17:05:13 1996 Ian Lance Taylor <ian@cygnus.com>
3168
3169 * ldlang.c (longest_section_name): Remove.
3170 (SECTION_NAME_MAP_LENGTH): Define.
3171 (print_size, print_alignment, print_fill, print_section): Remove.
3172 (print_flags): Remove.
3173 (lang_map): Rewrite.
3174 (print_output_section_statement): Rewrite.
3175 (print_assignment): Rewrite.
3176 (print_one_symbol): Rewrite.
3177 (print_input_section): Rewrite.
3178 (print_fill_statement): Rewrite.
3179 (print_data_statement): Rewrite.
3180 (print_address_statement): New static function.
3181 (print_reloc_statement): Rewrite.
3182 (print_padding_statement): Rewrite.
3183 (print_wild_statement): Rewrite.
3184 (print_statement_list): Clean up.
3185 (print_statement): Clean up. Some minor output changes.
3186 (print_statements): Clean up.
3187 (load_symbols): Put another - before -whole-archive.
3188 * ldexp.c (exp_print_tree): Change etree_value and etree_rel to
3189 print 0x and to omit leading zeroes. For etree_rel, use %B to
3190 print the BFD. For etree_assign, remove the space after the
3191 destination name.
3192 * ldwrite.c: Include "libiberty.h".
3193 (clone_section): Call xstrdup, not strdup.
3194 (ldwrite): Don't print any map information.
3195 (print_symbol_table, print_file_stuff, print_symbol): Remove.
3196 * ldmain.c (main): Call lang_map when appropriate.
3197 * ldmisc.c (vfinfo): Add support for %W.
3198 (print_address): Remove.
3199 * ldmisc.h (print_address): Don't declare.
3200 * Makefile.in: Rebuild dependencies.
3201
3202 Mon Apr 29 10:29:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3203
3204 * configure.host (m68*-*-linux*): Add -dynamic-linker to
3205 HOSTING_CRT0. Search -lgcc both before and after -lc in
3206 HOSTING_LIBS. Look for crt{begin,end}.o in the compiler directory
3207 at first.
3208 (i[345]86-*-linux*): Look for crt{begin,end}.o in the compiler
3209 directory at first.
3210
3211 Fri Apr 26 14:42:27 1996 Ian Lance Taylor <ian@cygnus.com>
3212
3213 * ldmisc.h (demangle): Declare.
3214 * ldmisc.c: Include "libiberty.h". Include demangle.h with "",
3215 not <>.
3216 (demangle): Make non-static. Remove remove_underscore paramter.
3217 Always return an allocated string.
3218 (vfinfo): Free result of demangle. Add case 'G'. Use %T to print
3219 functionname, rather than calling demangle. Print a colon between
3220 the BFD(section+offset) and the line number.
3221 * ldmain.c (add_archive_element): Improve format of archive
3222 information in map file.
3223 (constructor_callback): Don't print anything to the map file.
3224 * ldlang.c (lang_one_common): Improve format of common symbol
3225 information in map file.
3226 * ldctor.c (ldctor_build_sets): If producing a map file, print set
3227 information.
3228 * ldwrite.c (print_symbol_table): Print a newline before the
3229 header in the map file.
3230 * Makefile.in: Rebuild dependencies.
3231
3232 * ldmisc.c (vfinfo): Reindent.
3233
3234 Mon Apr 22 12:07:32 1996 Ian Lance Taylor <ian@cygnus.com>
3235
3236 * ldlang.c (lang_size_sections): If _cooked_size is not 0, then
3237 don't clobber it when not relaxing.
3238
3239 * ld.h (ld_config_type): Remove traditional_format field.
3240 * ldmain.c (main): Use link_info.traditional_format rather than
3241 config.traditional_format.
3242 * ldlang.c (ldlang_open_output): Likewise.
3243 * lexsup.c (parse_args): Likewise.
3244 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Likewise.
3245 * mpw-eppcmac.c (gldppcmacos_parse_args): Likewise.
3246
3247 * ldlang.c (wild_doit): Discard debugging sections if we are
3248 stripping debugging information.
3249
3250 * emulparams/z8002.sh (ARCH): Set to z8002, not z8k.
3251
3252 Tue Apr 16 16:38:32 1996 Ian Lance Taylor <ian@cygnus.com>
3253
3254 * ldexp.c (fold_binary): Correct handling of subtraction with
3255 absolute values.
3256 (fold_name): Permit symbols in lang_allocating_phase_enum.
3257
3258 * scripttempl/aout.sc: Only PROVIDE __stack when RELOCATING. Undo
3259 accidental changes in last patch.
3260
3261 Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3262
3263 * configure.tgt (powerpc*-*-{sysv,linux}): Add aliases.
3264 (powerpcle*-*-{sysv,solaris}): Ditto.
3265
3266 Mon Apr 15 14:50:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
3267
3268 * scripttempl/aout.sc: Add PROVIDE (__stack = 0) so I can use it
3269 in m68k/crt0.S without things blowing up.
3270
3271 Fri Apr 12 16:40:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
3272
3273 * scripttempl/m68kcoff.sc: Remove default address for .data so
3274 .text, .data, and .bss are all sequential.
3275
3276 Thu Apr 11 12:05:35 1996 Ian Lance Taylor <ian@cygnus.com>
3277
3278 * scripttempl/m68kcoff.sc: Remove regions and simplify.
3279
3280 Wed Apr 10 14:41:53 1996 Jeffrey A Law (law@cygnus.com)
3281
3282 * scripttempl/h8300.sc: Add the "8-bit area" in the upper 256
3283 bytes of the address space. Put data from the ".eight" sections
3284 into the 8-bit area.
3285 * scripttempl/h8300h.sc: Likewise.
3286
3287 Tue Apr 9 14:10:42 1996 Doug Evans <dje@canuck.cygnus.com>
3288
3289 * emultempl/generic.em (gld${EMULATION_NAME}_before_parse):
3290 Pass $ARCH to ldfile_set_output_arch instead of setting
3291 ldfile_output_architecture directly.
3292
3293 Tue Apr 9 14:22:15 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3294
3295 * scripttempl/elfppc.sc (.init,.fini): Put .init, .fini section
3296 next to .text. Put _etext after .text, .init, .fini, and
3297 .rodata{,2} sections.
3298
3299 Tue Apr 9 12:18:57 1996 Ian Lance Taylor <ian@cygnus.com>
3300
3301 * ld.texinfo: Rearrange option documentation.
3302
3303 * lexsup.c (ld_options): New static array.
3304 (parse_args): Build shortopts and longopts from ld_options array.
3305 (help): New static function.
3306 * ldver.h (help): Don't declare.
3307 * ldver.c (ldversion): Reindent.
3308 (help): Remove.
3309
3310 * ld.texinfo, ld.1: Mention -E as a synonym for -export-dynamic.
3311
3312 Mon Apr 8 11:56:23 1996 Ian Lance Taylor <ian@cygnus.com>
3313
3314 * emultempl/elf32.em: When checking for a native emulation, check
3315 that the current emulation is the default emulation.
3316 * emultempl/sunos.em: Likewise.
3317
3318 * configure.in: Permit --enable-shared to specify a list of
3319 directories.
3320 * configure: Rebuild.
3321
3322 * lexsup.c (parse_args): Add -E as a synonym for -export-dynamic,
3323 for HP/UX compatibility.
3324
3325 Fri Apr 5 14:30:14 1996 Ian Lance Taylor <ian@cygnus.com>
3326
3327 * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): New
3328 static function, if ${host} = ${target}.
3329 (gld${EMULATION_NAME}_after_open): Call check_ld_so_conf to find a
3330 needed shared library if ${host} = $[target}.
3331
3332 * configure.host (i[345]86-*-linux*): Add -dynamic-linker to
3333 HOSTING_CRT0. Search -lgcc both before and after -lc in
3334 HOSTING_LIBS.
3335
3336 * configure.tgt: Add i[345]86-*-freebsdelf* target; from John
3337 Polstra <jdp@polstra.com>.
3338
3339 Fri Apr 5 18:11:25 1996 James G. Smith <jsmith@cygnus.co.uk>
3340
3341 * emulparams/elf32{b,l}4300.sh (MACHINE): Add explicit
3342 architecture number.
3343 * scripttempl/elf.sc: Use $MACHINE definition if present.
3344 * configure.tgt (targ_extra_emuls): Force 4100 build to use same
3345 template as 4300.
3346
3347 Mon Apr 1 17:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
3348
3349 * ldlang.c (lang_size_sections): Change region check to handle
3350 regions which end at the highest possible address correctly.
3351 From Roland Weber <roweber@ira.uka.de>.
3352
3353 * ldlang.c (section_already_linked): New static function.
3354 (wild_doit): Discard sections with SEC_EXCLUDE set if not doing a
3355 relocateable link. Don't worry about section being NULL, since it
3356 never should be. Don't call init_os unless the section is going
3357 to be added.
3358 (ldlang_add_file): Call section_already_linked for each section.
3359 * ldmain.c (multiple_definition): Don't warn about multiple
3360 definitions in sections which are being discarded.
3361
3362 Sun Mar 31 00:30:47 1996 steve chamberlain <sac@slash.cygnus.com>
3363
3364 * scripttempl/{ppcpe.sc, pe.sc} (.junk): Remove and use /DISCARD/.
3365 * emultempl/pe.em (init): Remove special case PPC code.
3366
3367 Fri Mar 29 00:01:29 1996 Jeffrey A Law (law@cygnus.com)
3368
3369 * scripttempl/h8300.sc: Make vectors section 0xc4 bytes long
3370 so as not to overwrite the magic syscall entry at 0xc4.
3371 * scripttempl/h8300h.sc: Likewise.
3372
3373 Thu Mar 28 11:05:47 1996 Doug Evans <dje@canuck.cygnus.com>
3374
3375 * configure.tgt (sparc64-*-solaris2*): Delete.
3376 Stick with sparc-*-solaris2*.
3377
3378 Wed Mar 27 12:33:24 1996 Ian Lance Taylor <ian@cygnus.com>
3379
3380 * ld.h (DISCARD_SECTION_NAME): Define to "/DISCARD/".
3381 * ldlang.c (init_os): Fail on an attempt to initialize any section
3382 named DISCARD_SECTION_NAME.
3383 (wild_doit): Discard input sections assigned to an output section
3384 named DISCARD_SECTION_NAME.
3385 * ld.texinfo: Document use of /DISCARD/.
3386
3387 * ldlang.c: Fix some indentation and comments.
3388
3389 Tue Mar 26 18:14:49 1996 Ian Lance Taylor <ian@cygnus.com>
3390
3391 * ldmain.c (main): Call bfd_set_error_program_name.
3392
3393 Thu Mar 21 13:17:34 1996 Ian Lance Taylor <ian@cygnus.com>
3394
3395 * ld.texinfo: Fix a couple of indexing entries. Mention that
3396 --verbose displays builtin linker scripts.
3397
3398 * ldmisc.c (vfinfo): case 'I': If the file is not in an archive,
3399 and the local symbol name does not match the filename, print the
3400 filename as well.
3401
3402 Patches from John Polstra <jdp@polstra.com> for FreeBSD ELF:
3403 * lexsup.c (parse_args): -Bshareable is a synonym for -shared.
3404 * emulparams/elf_i386.sh (NONPAGED_TEXT_START_ADDR): Make the same
3405 as TEXT_START_ADDR.
3406
3407 Wed Mar 20 18:18:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3408
3409 * ld.texinfo: Fix typos. Use @pxref only inside parentheses.
3410
3411 Wed Mar 20 16:56:15 1996 Ian Lance Taylor <ian@cygnus.com>
3412
3413 * ldmain.c (add_wrap): New function.
3414 * ldmain.h (add_wrap): Declare.
3415 * lexsup.c (parse_args): Call add_wrap.
3416
3417 Tue Mar 19 16:44:20 1996 Doug Evans <dje@canuck.cygnus.com>
3418
3419 * configure.host (sparc*-*-solaris2* host): Accept any sparc variant.
3420
3421 Wed Mar 13 17:47:31 1996 Jeffrey A Law (law@cygnus.com)
3422
3423 * scripttempl/h8300.sc: Change name of page zero memory
3424 from "null" to "vectors". Create an output section for
3425 vectors. Add comments on how to explicitly place items
3426 in the vector table.
3427 * scripttempl/h8300h.sc: Likewise.
3428
3429 Wed Mar 13 12:40:18 1996 Ian Lance Taylor <ian@cygnus.com>
3430
3431 * emultempl/lnk960.em (machine_table): Add jx and hx.
3432
3433 * genscripts.sh: Don't use ${9:-xx}, since Ultrix /bin/sh doesn't
3434 support it.
3435
3436 Tue Mar 12 12:43:59 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
3437
3438 * ld.h (ld_config_type): Add warn_multiple_gp field.
3439 * lexsup.c (parse_args): Handle --warn-multiple-gp.
3440 * ldmain.c (warning_callback): Suppress multiple gp values warning
3441 if --warn_multiple_gp was not used.
3442 * ld.texinfo, ld.1: Document --warn-multiple-gp.
3443
3444 Tue Mar 12 12:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
3445
3446 * lexsup.c (parse_args): Handle --wrap.
3447 * ldmain.c (main): Initialize link_info.wrap_hash.
3448 * ldexp.c (fold_name): Use bfd_wrapped_link_hash_lookup in DEFINED
3449 and NAME cases.
3450 * ld.texinfo, ld.1: Document --wrap.
3451
3452 * configure: Rebuild with autoconf 2.8.
3453
3454 Don't do SunOS style dynamic linking for sparc-aout:
3455 * configure.tgt (sparc64-*-aout*): Use sparcaout, not sun4.
3456 (sparclite*-fujitsu-*, sparc*-*-aout): Likewise.
3457 (sparc*-wrs-vxworks*): Likewise.
3458 * emulparams/sparcaout.sh: New file.
3459 * Makefile.in (ALL_EMULATIONS): Add esparcaout.o.
3460 (esparcaout.c): New target.
3461
3462 Wed Mar 6 16:06:52 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3463
3464 * scripttempl/elfppc.sc (.sdata2, .sbss2): Implement Feb 2 change
3465 in a different manner to work around differences in shell variable
3466 expansion.
3467
3468 Wed Mar 6 18:08:18 1996 Ian Lance Taylor <ian@cygnus.com>
3469
3470 * ldemul.h (ldemul_unrecognized_file): Declare.
3471 (ldemulation_xfer_type): Add unrecognized_file field.
3472 * ldemul.c (ldemul_unrecognized_file): New function.
3473 * ldlang.c (load_symbols): If a file can not be recognized, call
3474 ldemul_unrecognized_file before trying it as a linker script.
3475 * aix.em (gld${EMULATION_NAME}_unrecognized_file): New static
3476 function.
3477 (gld${EMULATION_NAME}_read_file): Use FOPEN_RT, not "r".
3478 (ld_${EMULATION_NAME}_emulation): Initialize unrecognized_file.
3479
3480 Mon Mar 4 14:11:17 1996 Ian Lance Taylor <ian@cygnus.com>
3481
3482 * ldlang.c (wild): Handle foo.a(.text) by mapping each included
3483 member of foo.a separately. From Jouke Numan <jnuman@bazis.nl>.
3484
3485 Fri Mar 1 10:24:59 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3486
3487 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
3488 Search trinary.cond rather than searching trinary.lhs twice.
3489
3490 Tue Feb 27 15:08:43 1996 Stan Shebs <shebs@andros.cygnus.com>
3491
3492 * mpw-make.sed: Edit out shared library support.
3493 (@TDIRS@): Edit out, can't use genscripts.
3494
3495 Tue Feb 27 15:09:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3496
3497 * configure.tgt (m68k-*-linuxaout*, m68k-*-linux*): New targets.
3498 * emulparams/m68klinux.sh: New file.
3499 * emultempl/linux.em (gld${EMULATION_NAME}_before_allocation):
3500 Call bfd_${EMULATION_NAME}_size_dynamic_sections instead of
3501 bfd_linux_size_dynamic_sections.
3502 * Makefile.in (ALL_EMULATIONS): Add em68klinux.o.
3503 (em68klinux.c): New target.
3504 * configure.host (m68*-*-linuxaout*, m68*-*-linux*): New hosts.
3505
3506 Tue Feb 27 12:55:46 1996 Ian Lance Taylor <ian@cygnus.com>
3507
3508 * Makefile.in (ALL_EMULATIONS): Sort into alphabetical order.
3509 Fill in missing entries.
3510
3511 * lexsup.c (parse_args): Recognize --no-whole-archive.
3512 * ldlang.h (lang_input_statement_type): Add whole_archive field.
3513 * ldlang.c (new_afile): Set whole_archive field.
3514 (load_symbols): Check input file specific whole_archive field
3515 rather than global variable.
3516 * ld.texinfo, ld.1: Document --no-whole-archive.
3517
3518 Tue Feb 20 16:07:00 1996 Ian Lance Taylor <ian@cygnus.com>
3519
3520 * configure.tgt: Correct gldi960 to gld960.
3521
3522 Mon Feb 19 11:16:44 1996 Ian Lance Taylor <ian@cygnus.com>
3523
3524 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Check
3525 the SONAME if it is available.
3526 (gld${EMULATION_NAME}_stat_needed): Use the SONAME, not the
3527 filename, when checking for conflicting library versions. Don't
3528 assume that the suffix is only numbers and dots.
3529
3530 * ld.texinfo: Mention that -R can be used for -rpath.
3531
3532 Sun Feb 18 15:05:17 1996 Ian Lance Taylor <ian@cygnus.com>
3533
3534 * configure.host: Check for 'do not mix' from native linker before
3535 trying to use -rpath.
3536
3537 Thu Feb 15 13:58:06 1996 Ian Lance Taylor <ian@cygnus.com>
3538
3539 * configure.in: Remove explicit substitution of CFLAGS; autoconf
3540 does it anyhow.
3541 * configure: Rebuild.
3542 * Makefile.in (LDFLAGS): Set to @LDFLAGS@.
3543
3544 * configure.in: Call AC_PROG_CC before configure.host.
3545 * configure: Rebuild.
3546 * configure.host: Remove go32 host, since it should no longer be
3547 necessary. Don't set CC for romp host.
3548
3549 * scripttempl/elf.sc: Don't skip a page in virtual memory space if
3550 the text segment ends exactly on a page boundary.
3551
3552 * configure.in: Substitute RPATH_ENVVAR.
3553 * configure: Rebuild.
3554 * configure.host: Set RPATH_ENVVAR.
3555 * Makefile.in (RPATH_ENVVAR): New variable.
3556 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
3557
3558 Wed Feb 14 18:49:01 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
3559
3560 * configure.in: Redo emulation handling so that each emulation
3561 searches the correct tool directory, based on the target alias.
3562 For example, "configure --enable-targets=m68k-coff i386-linux"
3563 will search /usr/local/i386-linux/lib for linux and
3564 /usr/local/m68k-coff/lib for m68k-coff.
3565 * configure: Rebuild.
3566 * configure.tgt: Add special tdir settings for Linux.
3567 * Makefile.in: Add @TDIRS@. Pass "$(tdir_EMUL)" to ${GENSCRIPTS}
3568 for each eEMUL.c target.
3569 * genscripts.sh: Accept specific alias as 9th argument, and use it
3570 in LIB_PATH.
3571
3572 Wed Feb 14 16:38:36 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
3573
3574 * ldlang.c (lang_set_startof): Don't do anything for a
3575 relocateable link.
3576
3577 * ldgram.y (mri_script_file): Call mri_draw_tree.
3578 * mri.c (mri_draw_tree): Make globally visible. Don't bother to
3579 create memory regions.
3580 (mri_load): Don't call mri_draw_tree.
3581 * mri.h (mri_draw_tree): Declare.
3582
3583 * configure.tgt (m68*-*-psos): New target.
3584 * emulparams/m68kpsos.sh: New file.
3585 * scripttempl/psos.sc: New file.
3586 * Makefile.in (ALL_EMULATIONS): Add em68kpsos.o.
3587 (em68kpsos.c): New target.
3588
3589 Wed Feb 14 11:09:25 1996 Ian Lance Taylor <ian@cygnus.com>
3590
3591 * configure.tgt (*-*-ieee*): New target; use vanilla.
3592
3593 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Strip
3594 `:foo' from ${ARCH}.
3595
3596 Tue Feb 13 15:58:58 1996 Bryan Ford <baford@snake.cs.utah.edu>
3597
3598 * scripttempl/i386msdos.sc: Don't pad the .text section. Put
3599 .rodata in .data.
3600
3601 Tue Feb 13 14:04:19 1996 Ian Lance Taylor <ian@cygnus.com>
3602
3603 * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
3604
3605 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Warn if
3606 it looks like we might be linking in two different versions of the
3607 same shared library. Based on a patch from H J Lu <hjl@zoom.com>.
3608
3609 Thu Feb 8 19:25:54 1996 Ian Lance Taylor <ian@cygnus.com>
3610
3611 * ldlang.c (lang_size_sections): Increment the section size when a
3612 padding statement is encountered.
3613
3614 Wed Feb 7 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
3615
3616 * configure.in: Look for --enable-shared. Change the value of
3617 BFDLIB when linking against a shared library on SunOS.
3618 * configure: Rebuild.
3619 * configure.host: If using a shared BFD library, try to pass a
3620 reasonable -rpath option when linking.
3621 * Makefile.in (BFDLIB): Set to @BFDLIB@.
3622
3623 Tue Feb 6 12:29:14 1996 Doug Evans <dje@charmed.cygnus.com>
3624
3625 * emulparams/elf64_sparc.sh (ARCH): Change to `sparc:v9'.
3626 * emultempl/generic.em: Strip `:foo' from ${ARCH}.
3627
3628 Mon Feb 5 16:25:30 1996 Ian Lance Taylor <ian@cygnus.com>
3629
3630 Support for building bfd and opcodes as shared libraries, based on
3631 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
3632 * configure.in (HLDFLAGS): New substitution.
3633 * configure: Rebuild.
3634 * configure.host: Set HLDFLAGS on SunOS.
3635 * Makefile.in (HLDFLAGS): New variable.
3636 (BFDDEP): New variable.
3637 (BFDLIB): Change to -L../bfd -lbfd.
3638 ($(LD_PROG)): Depend upon $(BFDDEP) rathern than $(BFDLIB). Use
3639 $(HLDFLAGS) in link.
3640 (check): Set LD_LIBRARY_PATH in the environment.
3641
3642 Fri Feb 2 19:26:25 1996 Michael Meissner <meissner@wogglebug.tiac.net>
3643
3644 * scripttempl/elfppc.sc (.sdata2, .sbss2): Put .sdata2 and .sbss
3645 in the read-only section, not read/write unless we are making a
3646 shared library.
3647 (.debug*): Add dwarf debug sections.
3648 (.rela.{sdata*,sbss*}): Add sections.
3649
3650 Fri Feb 2 16:50:21 1996 Ian Lance Taylor <ian@cygnus.com>
3651
3652 * configure: Regenerate.
3653
3654 Thu Feb 1 10:50:46 1996 Ian Lance Taylor <ian@cygnus.com>
3655
3656 * emulparams/elf_i386.sh (TEXT_START_ADDR): Change to 0x8048000,
3657 for SVR4 compatibility.
3658
3659 * ldexp.c (exp_fold_tree): Correct handling of ABSOLUTE.
3660
3661 Wed Jan 31 17:30:19 1996 Steve Chamberlain <sac@slash.cygnus.com>
3662
3663 * configure.tgt (i[345]86-*-cygwin32, powerpcle-*-cygwin32): New.
3664 * emultempl/pe.em (definfo init): Make the default stack reserve
3665 of a PPC larger.
3666
3667 Wed Jan 31 14:34:23 1996 Richard Henderson <rth@tamu.edu>
3668
3669 * configure.tgt (m68*-apple-aux*): New target.
3670 * emulparams/m68kaux.sh: New file.
3671 * scripttempl/m68kaux.sc: New file.
3672 * Makefile.in (ALL_EMULATIONS): Add em68kaux.o.
3673 (em68kaux.c): New target.
3674
3675 Tue Jan 30 13:18:56 1996 Ian Lance Taylor <ian@cygnus.com>
3676
3677 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Ignore
3678 -bnoentry, since the right thing tends to happen anyhow.
3679
3680 Mon Jan 29 12:29:26 1996 Ian Lance Taylor <ian@cygnus.com>
3681
3682 * ld.texinfo, ld.1: Document -export-dynamic.
3683
3684 Fri Jan 26 11:11:55 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3685
3686 * emultempl/sunos.em: Check for native compile by comparing
3687 ${target} and ${host}.
3688
3689 Thu Jan 25 16:46:58 1996 James G. Smith <jsmith@cygnus.co.uk>
3690
3691 * emulparams/{elf32b4300.sh, elf32l4300.sh}: Changed
3692 TEXT_START_ADDR to allow use on IDT and PMON systems.
3693
3694 Wed Jan 24 20:59:40 1996 Steve Chamberlain <sac@slash.cygnus.com>
3695
3696 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
3697 correct spelling.
3698
3699 Wed Jan 24 16:59:19 1996 Doug Evans <dje@charmed.cygnus.com>
3700
3701 * configure.tgt (sparc64-*-solaris2*): New configuration.
3702 (sparc64-*-aout*): Renamed from sparc64*.
3703
3704 Mon Jan 22 13:01:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3705
3706 * Makefile.in (GENSCRIPTS): Pass @host@ @target@ @target_alias@.
3707 * genscripts.sh: Set host, target and target_alias variables.
3708 Check for native compile by comparing ${target} and ${host}.
3709 * emultempl/elf32.em: Likewise.
3710 * scripttempl/elfmips.sc: Test ${target}, not ${target_alias}.
3711
3712 Mon Jan 22 11:03:23 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3713
3714 * scripttempl/elfppc.sc: Refine eabi support to better support
3715 .sdata, .sdata2, .sbss, etc. sections.
3716
3717 Tue Jan 16 15:16:58 1996 Ian Lance Taylor <ian@cygnus.com>
3718
3719 * ldgram.y (%union): Add phdr field.
3720 (phdr): Use phdr_qualifiers rather than opt_hdrs and opt_at.
3721 (phdr_qualifiers): New nonterminal. Add support for FLAGS.
3722 (opt_hdrs, hdr): Remove.
3723 (phdr_val): New nonterminal.
3724 * ldlang.c (lang_new_phdr): Replace hdrs parameter with filehdr
3725 and phdrs parameters. Add flags parameter.
3726 (lang_record_phdrs): Update for changes to lang_phdr. Pass flags
3727 to bfd_record_phdr.
3728 * ldlang.h (struct lang_phdr): Replace hdrs field with filehdr and
3729 phdrs fields. Add flags field.
3730 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Remove.
3731 (lang_new_phdr): Update declaration.
3732 * ld.texinfo: Document FLAGS.
3733
3734 Mon Jan 15 15:07:19 1996 Ian Lance Taylor <ian@cygnus.com>
3735
3736 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation):
3737 Don't make a shared library because of an undefined reference to
3738 __GLOBAL_OFFSET_TABLE_.
3739
3740 Add some Irix 5 support, mostly from Kazumoto Kojima
3741 <kkojima@info.kanagawa-u.ac.jp>:
3742 * emulparams/elf32bmip.sh (SCRIPT_NAME): Change to elfmips.
3743 (SHLIB_TEXT_START_ADDR): Define.
3744 (OTHER_GOT_SYMBOLS): Define.
3745 (OTHER_READWRITE_SECTIONS): Remove initialization of _gp.
3746 (EXECUTABLE_SYMBOLS): Don't define.
3747 (DYNAMIC_LINK): Don't define.
3748 * emulparams/elf32lmip.sh: Same changes as elf32bmip.sh.
3749 * scripttempl/elfmips.sc: New file.
3750 * configure.host (mips*-dec-bsd*): Change mips to mips*.
3751 (mips*-sgi-irix4*): Likewise.
3752 (mips*-sgi-irix5*): New entry.
3753 * Makefile.in (eelf32bmip.c): Depend upon elfmips.sc rather than
3754 elf.sc.
3755 (eelf32lmip.c): Likewise.
3756
3757 Sat Jan 13 09:41:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3758
3759 * scripttempl/elfppc.sc: Remove support for .rel.* sections. Add
3760 .rela.got.neg section.
3761
3762 Fri Jan 12 14:56:19 1996 Ian Lance Taylor <ian@cygnus.com>
3763
3764 * scripttempl/sh.sc: Only build constructors when CONSTRUCTING.
3765
3766 * ldmisc.c: Include <stdarg.h> rather than <varargs.h> if
3767 ANSI_PROTOTYPES is defined. Remove special handling of
3768 WINDOWS_NT. Various indendation fixes.
3769 (vfinfo): Change fmt parameter to const char *.
3770 (info_msg): Write <stdarg.h> version.
3771 (einfo, minfo, finfo): Likewise.
3772 (info_assert): Change file parameter to const char *.
3773 * ldmisc.h (einfo, minfo, info_msg): If ANSI_PROTOTYPES is
3774 defined, use a real prototype.
3775 (info_assert): Change first parameter to be const char *.
3776
3777 Fri Jan 12 13:29:55 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3778
3779 * scripttempl/elfppc.sc: Add support for .sdata2/.sbss2, etc. Add
3780 in old support that 2.7.2 needs, but the current compiler does
3781 not.
3782
3783 * Makefile.in (eelf32{,l}ppc.c): Fix up dependencies to use the
3784 correct Linker script template.
3785
3786 * emulparams/elf32{,l}ppc.sh (TEXT_START_ADDR): Set to 0x40000,
3787 not 0x400000.
3788 (DATA_ADDR,NONPAGED_TEXT_START_ADDR): Delete.
3789
3790 Tue Jan 9 15:53:02 1996 Ian Lance Taylor <ian@cygnus.com>
3791
3792 * scripttempl/alpha.sc: Put .rconst right after .rdata.
3793
3794 Fri Jan 5 14:07:45 1996 Steve Chamberlain <sac@slash.cygnus.com>
3795
3796 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation):
3797 sort using right pointer.
3798
3799 Fri Jan 5 12:25:47 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3800
3801 * scripttempl/elfppc.sc: Remove support for creating special
3802 labels for eabi section begin/end here. The compiler now uses
3803 crt{i,n}.o to create these symbols.
3804
3805 Thu Jan 4 17:08:58 1996 Ian Lance Taylor <ian@cygnus.com>
3806
3807 * configure.host: Change existing Linux HOSTING_CRT0 to be used
3808 for a.out only, and put in appropriate HOSTING_CRT0 and
3809 HOSTING_LIBS values for Linux ELF.
3810
3811 Thu Jan 4 12:02:05 1996 Doug Evans <dje@canuck.cygnus.com>
3812
3813 * scripttempl/h8300.sc: Use all 64K for ram.
3814 * scripttempl/h8300h.sc: Define 256K ram size.
3815
3816 Thu Dec 21 15:57:18 1995 Ian Lance Taylor <ian@cygnus.com>
3817
3818 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Pass
3819 export_defines as true to bfd_xcoff_size_dynamic_sections if -unix
3820 was used, regardless of whether -bE was used.
3821
3822 Tue Dec 19 17:35:38 1995 Ian Lance Taylor <ian@cygnus.com>
3823
3824 * emultempl/aix.em (gld${EMULATION_NAME}_after_open): Only set
3825 relocateable before calling ldctor_build_sets if the output file
3826 is in an XCOFF format.
3827
3828 Fri Dec 15 16:34:36 1995 Ian Lance Taylor <ian@cygnus.com>
3829
3830 * ldwrite.c (build_link_order): When handling a data statement, if
3831 the endianness of the output file is unknown, use the endianness
3832 of the input file.
3833
3834 Tue Dec 12 13:55:41 1995 Stan Shebs <shebs@andros.cygnus.com>
3835
3836 * mpw-config.in: Recognize mips-*-* as equivalent to
3837 mips-idt-ecoff.
3838 * mpw-eppcmacos.c: Rename to shorter mpw-eppcmac.c.
3839 * mpw-ld.r: Add version resources.
3840 (cfrg): Use symbolic instead of literal name for executable.
3841
3842 Mon Dec 11 15:13:41 1995 Kim Knuttila <krk@cygnus.com>
3843
3844 * scripttempl/ppcpe.sc (FINI): Moved the .reloc section.
3845
3846 Wed Dec 6 14:33:50 1995 Doug Evans <dje@canuck.cygnus.com>
3847
3848 * ldlang.c (print_statement{,s}): Delete duplicate prototype.
3849 (print_statement_list): Renamed from print_statement. All callers
3850 updated.
3851 (print_statement): New function to print just one statement.
3852 (print_{data,reloc,padding}_statement): Don't crash if
3853 output_section == NULL.
3854 (dprint_statement): New function.
3855
3856 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix
3857 call to sort_sections.
3858
3859 Wed Dec 6 14:59:06 1995 Ian Lance Taylor <ian@cygnus.com>
3860
3861 * emultempl/aix.em (unix_ld): New static variable.
3862 (gld${EMULATION_NAME}_parse_args): Handle -unix.
3863 (gld${EMULATION_NAME}_before_allocation): If unix_ld, pass
3864 gc as false and export_defineds as true to size_dynamic_sections.
3865
3866 * ldexp.c (exp_fold_tree): Permit assignments to dot in the final
3867 phase if the current section is abs_output_section.
3868
3869
3870 Tue Dec 5 09:49:39 1995 Doug Evans <dje@canuck.cygnus.com>
3871
3872 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix call
3873 to sort_sections.
3874
3875 Fri Dec 1 16:48:36 1995 Ian Lance Taylor <ian@cygnus.com>
3876
3877 * ldgram.y (PHDRS): New token.
3878 (ifile_p1): Accept phdrs.
3879 (section): Accept phdr_opt at the end of the section definition.
3880 (phdr_op): New nonterminal.
3881 (phdrs, phdr_list, phdr, phdr_type, opt_hdrs, hdr): Likewise.
3882 * ldlex.l: Accept PHDRS.
3883 * ldlang.h (struct lang_output_section_phdr_list): Define.
3884 (lang_output_section_statement_type): Add phdrs field.
3885 (struct lang_phdr): Define.
3886 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Define.
3887 (lang_new_phdr): Declare.
3888 * ldlang.c (lang_phdr_list): New static variable.
3889 (lang_output_section_statement_lookup): Initialize phdrs field.
3890 (lang_process): Call lang_record_phdrs.
3891 (lang_new_phdr): New function.
3892 (lang_section_in_phdr): New function.
3893 (lang_record_phdrs): New static function.
3894 * ld.texinfo: Document PHDRS.
3895
3896 Thu Nov 30 13:14:30 1995 Kim Knuttila <krk@cygnus.com>
3897
3898 * scripttempl/ppcpe.sc: Moved .edata into its own section to
3899 expose it.
3900
3901 Thu Nov 30 11:32:34 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
3902
3903 * configure.host (m68*-motorola-sysv): Define HOSTING_CRT0 and
3904 HOSTING_LIBS for testing.
3905 (m88*-motorola-sysv3): Define HOSTING_CRT0 and HOSTING_LIBS for
3906 testing.
3907
3908 Tue Nov 28 12:14:53 1995 Ian Lance Taylor <ian@cygnus.com>
3909
3910 * lexsup.c (parse_args): Set config.dynamic_link to false for -N
3911 and -n.
3912
3913 Mon Nov 27 13:12:09 1995 Ian Lance Taylor <ian@cygnus.com>
3914
3915 * configure: Rebuild with autoconf 2.7.
3916
3917 Fri Nov 24 18:35:35 1995 Doug Evans <dje@canuck.cygnus.com>
3918
3919 * scripttempl/pe.sc: Two .junk's is too much junk.
3920
3921 Tue Nov 21 16:14:32 1995 Ian Lance Taylor <ian@cygnus.com>
3922
3923 * configure.in: Use BFD_NEED_DECLARATION.
3924 * acconfig.h: Put NEED_DECLARATION_FREE in @TOP@ section.
3925 * configure, config.in: Rebuild with autoconf 2.6.
3926
3927 * ldmain.c (constructor_callback): Don't warn about BFD_RELOC_CTOR
3928 being unsupported if this is not a relocateable link and the input
3929 BFD supports it, since ldctor_build_sets can cope with that case.
3930
3931 Fri Nov 17 16:23:15 1995 Stan Shebs <shebs@andros.cygnus.com>
3932
3933 * configure.tgt (powerpc-*-macos*): New target.
3934 * emulparams/ppcmacos.sh: New file, PowerMac emulation.
3935 * Makefile.in (ALL_EMULATIONS): Add eppcmacos.o.
3936 (eppcmacos.c): New target.
3937 * mpw-eppcmacos.c: Update.
3938 * mpw-make.sed: Edit out attempts to use {GENSCRIPTS}.
3939
3940 Fri Nov 17 10:37:27 1995 Ian Lance Taylor <ian@cygnus.com>
3941
3942 * Makefile.in (CC_FOR_TARGET): Use @host@ and @target@, not
3943 $(host_canonical) and $(target_canonical).
3944 (CXX_FOR_TARGET): Likewise.
3945
3946 Thu Nov 16 11:23:42 1995 Doug Evans <dje@canuck.cygnus.com>
3947
3948 * scripttempl/pe.sc (.endjunk): Move definition of `end' to here
3949 so the malloc heap begins at a sane place.
3950
3951 Thu Nov 16 03:09:32 1995 Ken Raeburn <raeburn@cygnus.com>
3952
3953 Version 2.6 released.
3954 * ldver.c (ldversion): Update to 2.6.
3955
3956 * Makefile.in (mostlyclean): Delete ldemul-list.h here, but not
3957 $(GENERATED_*FILES), since they need to be retained by distclean.
3958 (maintainer-clean, realclean): Delete them here.
3959
3960 Tue Nov 14 17:08:06 1995 Ian Lance Taylor <ian@cygnus.com>
3961
3962 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Open the
3963 base file with FOPEN_WB, not "w".
3964
3965 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Use the
3966 environment variable LD_RUN_PATH if neither -rpath nor -rpath-link
3967 were used.
3968 (gld${EMULATION_NAME}_before_allocation): Use the environment
3969 variable LD_RUN_PATH if -rpath was not used.
3970 * ld.texinfo, ld.1: Document LD_RUN_PATH.
3971
3972 Thu Nov 9 13:09:29 1995 Ian Lance Taylor <ian@cygnus.com>
3973
3974 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Recognize
3975 -bl and -bloadmap options.
3976
3977 * ldfile.c (ldfile_try_open_bfd): If bfd_error_invalid_target,
3978 report a better error.
3979
3980 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Add
3981 new local variable special_sections, and pass it to
3982 size_dynamic_sections. Look through the results, and move the
3983 sections around in the mapping so that they are defined correctly.
3984
3985 Wed Nov 8 11:40:59 1995 Ian Lance Taylor <ian@cygnus.com>
3986
3987 * ldemul.c (ldemul_default_target): Cast getenv return value.
3988
3989 Tue Nov 7 11:15:36 1995 Kim Knuttila <krk@cygnus.com>
3990
3991 * emulparams/ppcpe.sh (ARCH): New file for PowerPC Portable
3992 Executable support.
3993 * scripttempl/ppcpe.sc: New file for PowerPC Portable Executable
3994 support.
3995
3996 * configure.tgt (targ_extra_emuls): Added powerpcle-pe target.
3997 * Makefile.in (ALL_EMULATIONS): Added eppcpe.o target.
3998
3999 * emultempl/pe.em (TARGET_IS_ppcpe): file tailoring macro
4000 (gld_$_before_allocation): added hooks for toc construction based
4001 on the above macro.
4002
4003 Tue Nov 7 11:47:23 1995 Ian Lance Taylor <ian@cygnus.com>
4004
4005 * ld.texinfo: The linker does not use _main as an entry point.
4006
4007 Tue Nov 7 11:46:11 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
4008
4009 * scripttempl/m88kbcs.sc (.data): Calculate next boundary modulo
4010 0x2000 not 0x200.
4011
4012 Mon Nov 6 10:59:21 1995 Ian Lance Taylor <ian@cygnus.com>
4013
4014 * configure.in: Add test for whether free must be declared.
4015 * sysdep.h: Declare free if necessary. Include "ansidecl.h".
4016 * acconfig.h: Explain NEED_DECLARATION_FREE.
4017 * configure, config.in: Rebuild.
4018
4019 * lexsup.c (parse_args): Take B:: out of shortopts.
4020
4021 Sun Nov 5 03:08:28 1995 Ken Raeburn <raeburn@cygnus.com>
4022
4023 * emulparams/i386nbsd.sh (EXECUTABLE_SYMBOLS): Set __DYNAMIC to 0
4024 for now, as with m68k4kbsd, until shared library support gets
4025 done.
4026
4027 * configure.host: For i386 BSD variants, crt0.o lives in
4028 /usr/lib. (True for NetBSD at least, unconfirmed for others.)
4029
4030 Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
4031
4032 * Makefile.in (ALL_EMULATIONS): Add edelta68.o.
4033 (edelta68.c): New target.
4034 * configure.tgt (m68*-motorola-sysv*): New target.
4035 * emulparams/delta68.sh: New file.
4036 * scripttempl/delta68.sc: New file.
4037
4038 * scripttempl/m88kbcs.sc: Handle .init and .fini. Change section
4039 addresses.
4040
4041 Wed Nov 1 11:41:56 1995 Ian Lance Taylor <ian@cygnus.com>
4042
4043 * ldgram.y (mri_script_command): Accept ',' as well as '=' in
4044 ALIGN and ALIGNMOD statements.
4045
4046 * emultempl/aix.em: Include ldgram.h.
4047 (gld${EMULATION_NAME}_parse_args): Handle -pD and -pT, as used on
4048 AIX 4.1.
4049 * Makefile.in ($(EMULATION_OFILES)): Depend upon ldgram.h.
4050
4051 Tue Oct 31 18:22:24 1995 David Mosberger-Tang <davidm@azstarnet.com>
4052
4053 * configure.host (alpha-*-linux*): New host.
4054 * configure.tgt (alpha-*-linux*): New target.
4055
4056 Tue Oct 31 12:36:52 1995 Ian Lance Taylor <ian@cygnus.com>
4057
4058 * emultempl/aix.em (export_files): Remove.
4059 (import_files): Make static.
4060 (struct export_symbol_list): Define.
4061 (export_symbols): New static variable.
4062 (gld${EMULATION_NAME}_parse_args): Handle an initial -b option
4063 correctly. Call read_file for an export file.
4064 (gld${EMULATION_NAME}_before_allocation): Call
4065 bfd_xcoff_export_symbol for each export symbol, rather than
4066 calling read_file for each export file.
4067 (gld${EMULATION_NAME}_read_file): For an export file, make the
4068 exported symbols undefined, and store them on the export_symbols
4069 list.
4070
4071 Sat Oct 28 00:10:03 1995 steve chamberlain <sac@slash.cygnus.com>
4072
4073 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
4074 Don't hang if last option is unrecognised.
4075 (gld_${EMULATION_NAME}_set_symbols): Insert created
4076 symbols into ABS output section.
4077
4078 Fri Oct 27 18:03:17 1995 Niklas Hallqvist <niklas@appli.se>
4079
4080 * Makefile.in (ALL_EMULATIONS): Added support for the NetBSD
4081 m68k4k arch.
4082 (em68k4knbsd.c): New rule.
4083
4084 * configure.tgt: Added support for the NetBSD m68k4k arch.
4085
4086 * genscripts.sh, ldint.texinfo,
4087 emulparams/{a29k,armaoutb,armaoutl,coff_sparc,ebmon29k,gld960,
4088 gld960coff,go32,h8300,h8300h,h8500,h8500b,h8500c,h8500m,h8500s,
4089 hp300bsd,hp3hpux,hppaelf.sh,i386aout,i386bsd,i386coff,i386go32,
4090 i386linux,i386lynx,i386nbsd,lnk960,m68kaout,m68kcoff,m68klynx,
4091 m88kbcs,mipsbig,mipsbsd,mipsidt,mipsidtl,mipslit,news,ns32knbsd,
4092 pc532machaout,riscix,sa29200,sh,shl,sparclynx,sparcnbsd,
4093 st2000,sun3,sun4,vanilla,vax,vsta,w65,z8001,z8002}.sh: Changed
4094 PAGE_SIZE to TARGET_PAGE_SIZE.
4095
4096 * emulparams/m68knbsd.h: Ditto.
4097 (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR): We have 8K pagesize.
4098 (EXECUTABLE_SYMBOLS): Hardcode __DYNAMIC to zero for the time
4099 being.
4100
4101 * emulparams/m68k4knbsd.sh: New file.
4102
4103 * scripttempl/aout.sc: Expand EXECUTABLE_SYMBOLS if relocating.
4104
4105 Fri Oct 27 17:59:09 1995 Ian Lance Taylor <ian@cygnus.com>
4106
4107 * emultempl/aix.em: Include ldctor.h.
4108 (gld${EMULATION_NAME}_after_open): New static function.
4109 (gld${EMULATION_NAME}_before_allocation): Call find_relocs.
4110 (gld${EMULATION_NAME}_find_relocs): New static function.
4111 (gld${EMULATION_NAME}_find_exp_assignment): New static function.
4112 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
4113 * scripttempl/aix.sc: Use CONSTRUCTORS in .data.
4114 * ldctor.c (struct set_info): Move definition into ldctor.h.
4115 (struct set_element): Likewise.
4116 (sets): Make non-static.
4117 (ldctor_add_set_entry): Add name parameter. Save it in the new
4118 set element.
4119 (ldctor_build_sets): Avoid being called twice. Pass set element
4120 name to lang_add_reloc.
4121 * ldctor.h (struct set_info): Move definition here from ldctor.c.
4122 (struct set_element): Likewise. Add new field name.
4123 (sets): Declare.
4124 (ldctor_add_set_entry): Declare new name parameter.
4125 * ldwrite.c (build_link_order): Don't insist that either name or
4126 section be NULL in a lang_reloc_statement.
4127 * ldmain.c (add_to_set): Pass NULL to ldctor_add_new_set_entry for
4128 new name parameter.
4129 (constructor_callback): Pass name to ldctor_add_new_set_entry for
4130 new name parameter.
4131
4132 * ldmisc.c (demangle): Fix indentation. Remove a leading period.
4133
4134 Thu Oct 26 22:22:49 1995 Stan Shebs <shebs@andros.cygnus.com>
4135
4136 * mpw-config.in: Add PowerMac target support, generate config.h.
4137 * mac-ld.r: New file, Mac resources.
4138 * mpw-make.sed: New file, edits Makefile.in into MPW syntax.
4139 * mpw-make.in: Remove.
4140 * mpw-eppcmacos.c: Prebuilt version of PowerMac linking script.
4141
4142 Thu Oct 26 14:11:26 1995 Ian Lance Taylor <ian@cygnus.com>
4143
4144 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Treat
4145 -static as a synonym for -bnso.
4146
4147 * scripttempl/aix.sc: Move special symbols inside sections.
4148 Always start .data at 0.
4149
4150 Wed Oct 25 11:52:12 1995 Per Bothner <bothner@kalessin.cygnus.com>
4151
4152 * Makefile.in (diststuff): Also make info.
4153 (maintainer-clean realclean): Also delete *.info*.
4154
4155 Wed Oct 25 11:27:25 1995 Ian Lance Taylor <ian@cygnus.com>
4156
4157 * emultempl/aix.em: Add support for various AIX linker options,
4158 for AIX import and export files, and for AIX shared objects.
4159 * scripttempl/aix.sc: Add .pad. Put .ds just before the TOC.
4160
4161 * ldmain.c (main): Initialize new field link_info.static_link.
4162
4163 * ldmain.c (add_keepsyms_file): Add \n at end of einfo calls.
4164 (constructor_callback): Likewise.
4165 * ldmisc.c (vfinfo): Likewise.
4166 * ldwrite.c (build_link_order): Likewise.
4167
4168 * ld.texinfo: The MRI ALIGN directive is supported.
4169
4170 Mon Oct 23 11:46:43 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
4171
4172 * emulparams/elf32vr4300.sh: Deleted.
4173 * emulparams/elf32vr4300el.sh: Deleted.
4174 * emulparams/elf32b4300.sh: Added.
4175 * emulparams/elf32l4300.sh: Added.
4176 * configure.tgt, Makefile.in: Updated the build to use the
4177 new 8.3 unique names.
4178
4179 Thu Oct 19 17:41:46 1995 Ian Lance Taylor <ian@cygnus.com>
4180
4181 * ldlang.c (entry_symbol): Make non-static.
4182 * ldlang.h (entry_symbol): Declare.
4183
4184 * ldlex.l: Treat PROVIDE as a keyword in expression state.
4185
4186 Wed Oct 18 17:34:06 1995 steve chamberlain <sac@slash.cygnus.com>
4187
4188 * scripttempl/pe.sc (.bss): Move to be after .text
4189
4190 Tue Oct 17 12:22:05 1995 Ian Lance Taylor <ian@cygnus.com>
4191
4192 * emultempl/sunos.em (gld${EMULATION_NAME}_find_exp_assignment):
4193 Search trinary.cond rather than searching trinary.lhs twice. From
4194 linli@ihp.PHys.ethz.CH.
4195
4196 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Move
4197 directory searching code into gld${EMULATION_NAME}_search_dir.
4198 (gld${EMULATION_NAME}_search_dir): New static function, extracted
4199 from gld${EMULATION_NAME}_find_so.
4200 (global_needed, global_found): New static variables.
4201 (gld${EMULATION_NAME}_after_open): New static function.
4202 (gld${EMULATION_NAME}_search_needed): New static function.
4203 (gld${EMULATION_NAME}_try_needed): New static function.
4204 (gld${EMULATION_NAME}_check_needed): New static function.
4205 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
4206 * ld.texinfo, ld.1: Mention -rpath-link on SunOS.
4207
4208 * Makefile.in (eelf32ppc.c): Depend upon elf32.em, not generic.em.
4209 (eelf32lppc.c): Likewise.
4210 * emulparams/elf32lppc.sh (TEMPLATE_NAME): Define as elf32.
4211 (GENERATE_SHLIB_SCRIPT): Define as yes.
4212
4213 Mon Oct 16 19:11:13 1995 Ian Lance Taylor <ian@cygnus.com>
4214
4215 * emultempl/elf32.em: Struct bfd_elf_link_needed_list is now named
4216 bfd_link_needed-list; make appropriate changes.
4217
4218 * configure.tgt (powerpc-*-aix*): New target; use aixppc.
4219 (rs6000-*-aix*): New target; use aixrs6.
4220 * emulparams/aixppc.sh, emulparams/aixrs6.sh: New files.
4221 * emultempl/aix.em: New file.
4222 * scripttempl/aix.sc: New file.
4223 * Makefile.in (ALL_EMULATIONS): Add eaixppc.o and eaixrs6.o.
4224 (eaixppc.c, eaixrs6.c): New targets.
4225
4226 Fri Oct 13 14:00:37 1995 steve chamberlain <sac@slash.cygnus.com>
4227
4228 * scripttemp/pe.sc (.reloc): Move to the end.
4229
4230 Tue Oct 10 17:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
4231
4232 * ldlang.c (lang_finish): Don't try to use an entry_symbol from a
4233 section which was not linked into the final output.
4234
4235 Tue Oct 10 10:17:22 1995 steve chamberlain <sac@slash.cygnus.com>
4236
4237 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Fix
4238 fatal typos.
4239
4240 Tue Oct 10 01:01:51 1995 Ian Lance Taylor <ian@cygnus.com>
4241
4242 * ld.h (args_type): Add rpath_link field.
4243 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search for
4244 required dependencies in rpath_link path. Only search
4245 LD_LIBRARY_PATH when configured native.
4246 * lexsup.c (parse_args): Recognize -rpath-link.
4247 * ld.1, ld.texinfo: Document -rpath-link.
4248
4249 Sat Oct 7 17:07:17 1995 Ian Lance Taylor <ian@cygnus.com>
4250
4251 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
4252 bother searching for needed libraries unless doing a final link.
4253
4254 Fri Oct 6 16:26:16 1995 Ken Raeburn <raeburn@cygnus.com>
4255
4256 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4257
4258 * ld/ld.1: Fix formatting bugs.
4259
4260 Wed Oct 4 17:37:46 1995 Ian Lance Taylor <ian@cygnus.com>
4261
4262 * ldexp.c (exp_get_abs_int): Return bfd_vma, not int.
4263 * ldexp.h (exp_get_abs_int): Update declaration.
4264 * ldlang.c (print_output_section_statement): Use fprintf_vma to
4265 print return value of exp_get_abs_int.
4266
4267 Mon Oct 2 13:56:09 1995 Ian Lance Taylor <ian@cygnus.com>
4268
4269 * emultempl/elf32.em (global_stat): New file static variable.
4270 (gld${EMULATION_NAME}_try_needed): Call stat_needed to make sure
4271 that the file has not already been included under another name.
4272 (gld${EMULATION_NAME}_stat_needed): New static function.
4273
4274 Fri Sep 29 12:00:18 1995 Doug Evans <dje@deneb.cygnus.com>
4275
4276 * scripttempl/armcoff.sc: Start .text at 0x8000.
4277 Start .data at 0x40000.
4278
4279 Fri Sep 29 11:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
4280
4281 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): If
4282 command_line.rpath is set, use it, rather than the -L options, to
4283 build the rules section.
4284 * ld.texinfo: Document this use of -rpath.
4285
4286 * lexsup.c (parse_args): Don't set link_info.shared for -assert
4287 pure-text. Pass true, not 1, to lang_add_entry.
4288 * emultempl/sunos.em (find_assign): New static variable.
4289 (found_assign): New static variable.
4290 (gld${EMULATION_NAME}_before_allocation): Rename local h to hdyn.
4291 If not a relocateable link, and no start symbol was specified on
4292 the command line, and there are any undefined symbols, set
4293 link_info.shared. If link_info.shared is set, set the address of
4294 the .text section to 0x20.
4295 (gld${EMULATION_NAME}_find_assignment): Rename from
4296 gld${EMULATION_NAME}_find_statement_assignment. If find_assign is
4297 set, then just set found_assign based on whether an assignment is
4298 found to find_assign.
4299 (gld${EMULATION_NAME}_get_script): Don't use a special script when
4300 producing a shared library.
4301 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Remove.
4302 * scripttempl/aout.sc: Remove CREATE_SHLIB tests.
4303 * ldlang.c (entry_from_cmdline): New global variable.
4304 (lang_add_entry): Change cmdline parameter from int to boolean.
4305 Use global entry_from_cmdline rather than function static
4306 from_cmdline.
4307 * ldlang.h (entry_from_cmdline): Declare.
4308 (lang_add_entry): Change declaration of second parameter from int
4309 to boolean.
4310 * ldgram.y: Pass false, not 0, to lang_add_entry.
4311
4312 Thu Sep 28 12:34:13 1995 Ian Lance Taylor <ian@cygnus.com>
4313
4314 * ld.h (parsing_defsym): Declare.
4315 * ldlex.h (lex_string): Declare.
4316 * ldlex.l (lex_string): Define.
4317 * lexsup.c (parsing_defsym): Define.
4318 (parse_args): In OPTION_DEFSYM case, set lex_string before calling
4319 lex_redirect, and clear it after calling yyparse. Set
4320 parsing_defsym around call to yyparse.
4321 * ldmain.c (main): Set lex_string before calling lex_redirect, and
4322 clear it after calling yyparse.
4323 * ldmisc.c (vfinfo): For %S, handle --defsym arguments and built
4324 in linker scripts correctly.
4325
4326 * scripttempl/sparccoff.sc: Add .ctors/.dtors handling like other
4327 COFF targets, allowing for the leading underscore used on SPARC
4328 COFF.
4329
4330 * lexsup.c (parse_args): Handle -assert.
4331 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Define.
4332 * emultempl/sunos.em (gld${EMULATION_NAME}_get_script): Use the
4333 shared library script when appropriate.
4334 * scripttempl/aout.sc: If CREATE_SHLIB is set, start the .text
4335 section at SIZEOF_HEADERS.
4336
4337 Thu Sep 28 01:40:37 1995 Doug Evans <dje@deneb.cygnus.com>
4338
4339 * Makefile.in (earmcoff.c): Build.
4340 * configure.tgt (arm-*-coff): New target
4341 * emulparms/armcoff.sh: New file.
4342 * scripttempl/armcoff.sc: New file.
4343
4344 Tue Sep 26 10:59:32 1995 Ian Lance Taylor <ian@cygnus.com>
4345
4346 * scripttempl/i386coff.sc: Remove .data2; no longer needed.
4347
4348 Fri Sep 22 18:09:02 1995 Ian Lance Taylor <ian@cygnus.com>
4349
4350 * ldfile.c (ldfile_set_output_arch): Make arch const.
4351
4352 Thu Sep 21 17:55:24 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4353
4354 * scripttempl/elfppc.sc: Correctly locate __bss_start at the
4355 beginning of the .bss area, not at the end of data. Add
4356 __sbss_{start,end} symbols.
4357
4358 Wed Sep 20 12:29:36 1995 Ian Lance Taylor <ian@cygnus.com>
4359
4360 * Makefile.in (CC_FOR_TARGET): Quote $(program_transform_name).
4361 (CXX_FOR_TARGET, install): Likewise.
4362
4363 Mon Sep 18 14:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
4364
4365 Based on patches by Alan Modra <alan@spri.levels.unisa.edu.au>:
4366 * Makefile.in (CC_FOR_TARGET): Remove brokensed stuff.
4367 (CXX_FOR_TARGET): Likewise.
4368 (install): Likewise.
4369 (GENERATED_HFILES): Remove config.h.
4370 (.dep): Depend upon config.h.
4371
4372 Mon Sep 18 14:39:38 1995 Arne H. Juul <arnej@pvv.unit.no>
4373
4374 * configure.tgt (mips*-dec-netbsd*): New target.
4375
4376 Fri Sep 15 20:01:52 1995 Ken Raeburn <raeburn@cygnus.com>
4377
4378 * configure.host (m88*-*-dgux*): Fix another shell syntax error.
4379
4380 Fri Sep 15 23:28:05 1995 Andrew Cagney <cagney@highland.com.au>
4381
4382 * configure.host (i[345]86-*-bsd*): Fix shell syntax error.
4383
4384 Thu Sep 12 12:50:49 1995 steve chamberlain <sac@slash.cygnus.com>
4385
4386 * scripttemp/pe.sc: Allow both spellings of .ctors/.dtors.
4387 Start .text section on the right boundary. Always align
4388 stabs.
4389
4390 Tue Sep 12 12:24:17 1995 Ian Lance Taylor <ian@cygnus.com>
4391
4392 * Makefile.in (maintainer-clean): New target.
4393
4394 * ldmain.c (struct warning_callback_info): Define.
4395 (warning_callback): Add new parameter symbol. Call
4396 warning_find_reloc to try to find the section and VMA.
4397 (warning_find_reloc): New static function.
4398 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
4399 Pass NULL as symbol parameter to warning callback.
4400
4401 * ld.texinfo: Clarify -L option.
4402
4403 * ldlang.c (lang_one_common): Add cast to avoid warning.
4404 (topower): Likewise. Also, reindent.
4405 * ldwrite.c (clone_section): Change i to unsigned int.
4406 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Add
4407 cast to avoid warning.
4408
4409 Fri Sep 8 16:32:43 1995 Ian Lance Taylor <ian@cygnus.com>
4410
4411 * Makefile.in (config.status): Depend upon configure.tgt.
4412
4413 * ldemul.h (ldemul_set_symbols): Declare.
4414 (ldemul_parse_args): Declare.
4415 * ldemul.c (ldemul_parse_args): Fix indentation.
4416
4417 * configure.in: Call AC_HEADER_DIRENT.
4418 * configure, config.in: Rebuild.
4419 * emultempl/sunos.em: Use autoconf recommend mechanism to define
4420 DIR and struct dirent.
4421
4422 * configure.tgt (mips*-*-bsd*): New case.
4423
4424 * configure.host (i[345]86-sequent-ptx* | i[345]86-sequent-sysv*)
4425 New case.
4426 * configure.tgt (i[345]86-*-ptx*): New case.
4427
4428 Thu Sep 7 10:48:26 1995 Ian Lance Taylor <ian@cygnus.com>
4429
4430 * config.in: Rename from config.h.in.
4431 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
4432 Check for config.h:config.in when creating stamp-h.
4433 * configure: Rebuild.
4434 * Makefile.in (stamp-h): Depend upon config.in rather than
4435 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
4436 calling config.status.
4437
4438 * Makefile.in (distclean): Remove config.h and stamp-h.
4439
4440 * configure.host (sparc-*-sunos64*): Remove.
4441 * ldlang.c (lang_map): Check BFD64, not HOST_64_BIT.
4442
4443 * ldexp.c (exp_fold_tree): Don't warn about moving the location
4444 counter backward in the absolute section.
4445
4446 Wed Sep 6 14:42:11 1995 Ian Lance Taylor <ian@cygnus.com>
4447
4448 * configure.in: Rewrite to use autoconf.
4449 * configure.host: New file.
4450 * configure.tgt: New file.
4451 * aclocal.m4: New file.
4452 * configure: New file, built by autoconf.
4453 * acconfig.h: New file.
4454 * config.h.in: New file, built by autoheader.
4455 * sysdep.h: New file.
4456 * ld.h: Incorporate old contents of config.h.
4457 * config.h: Remove.
4458 * Makefile.in: Various changes for new configure script. Also:
4459 (CC_FOR_BUILD): Remove.
4460 (ldmain.o): Don't bother to ensure that EMUL is non-empty.
4461 (dep.sed): Use @SRCDIR@, not @srcdir@.
4462 * dep-in.sed: Use @SRCDIR@, not @srcdir@.
4463 * genscripts.sh: Create ldscripts if it does not exist.
4464 * ldemul.c, lexsup.c, mpw-emipsidt.c: Don't include "config.h".
4465 * mpw-esh.c, emultemp/*.em: Likewise.
4466 * ldmain.c: Likewise. Include <ctype.h>. Don't try to set
4467 HAVE_SBRK here.
4468 * config/*.mt, config/*.mh: Remove.
4469
4470 Tue Sep 5 14:55:24 1995 Ken Raeburn <raeburn@cygnus.com>
4471
4472 * configure.in: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
4473 ns32k-pc532-lites* like ns32k-pc532-netbsd*. From Ian Dall.
4474
4475 Fri Sep 1 22:29:52 1995 Doug Evans <dje@canuck.cygnus.com>
4476
4477 * scripttempl/pe.sc: Fix typo in spelling of .ctors/.dtors.
4478
4479 Fri Sep 1 13:13:29 1995 Ian Lance Taylor <ian@cygnus.com>
4480
4481 * ldmain.c (warning_callback): Add abfd, section, and address
4482 parameters.
4483 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
4484 Change call to warning accordingly.
4485
4486 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): If not
4487 relocateable and not shared, put .gnu.warning.SYMBOL sections into
4488 the .text section.
4489
4490 Fri Sep 1 08:35:16 1995 James G. Smith <jsmith@beauty.cygnus.com>
4491
4492 * configure.in: Added mips*vr4300-idt-elf* and
4493 mips*vr4300el-idt-elf* targets.
4494 * Makefile.in: Added eelf32vr4300* targets.
4495 * emulparams/{elf32vr4300.sh, elf32vr4300el.sh}: Added.
4496 * config/{mips-vr4300.mt, mips-vr4300el.mt}: Added.
4497
4498 Fri Sep 1 10:51:45 1995 Ian Lance Taylor <ian@cygnus.com>
4499
4500 * scripttempl/a29k.sc: Fix to be reasonable. From Brendan Kehoe
4501 <brendan@cygnus.com>.
4502
4503 Thu Aug 31 16:37:07 1995 steve chamberlain <sac@slash.cygnus.com>
4504
4505 * ldemul.c (ldemul_parse_args): New.
4506 * ldemul.h (ld_emulation_xfer_struct): Add parse_args.
4507 * lexsup.c (all pe stuff): Moved into pe.em
4508 (parse_args): Call emulation arg parser.
4509 * emultempl/pe.em (parse_args): handle PE specfic args.
4510
4511 Thu Aug 31 17:01:37 1995 Ian Lance Taylor <ian@cygnus.com>
4512
4513 * ldlang.c (lang_memory_region_lookup): Don't use the first region
4514 as the default region. Create a new region instead.
4515
4516 Tue Aug 29 14:21:41 1995 steve chamberlain <sac@slash.cygnus.com>
4517
4518 * ldemul.c (ldemul_set_symbols): New function.
4519 * ldemul.h (ld_emulation_xfer_struct): Add set_symbols.
4520 * ldmain.c (main): Add call to ldemul_set_symbols.
4521 * lexsup.c (set_pe_value): New args.
4522 (set_pe_name): New.
4523 (parse_args): Cope with new set_pe_value args.
4524 * emultempl/pe.em (set_symbols): New function.
4525 (ld_emulation_xfer_struct): Add set_symbols.
4526 * scripttempl/pe.sc: Use new symbols.
4527
4528 Thu Aug 24 18:12:18 1995 Ian Lance Taylor (ian@cygnus.com)
4529
4530 * lexsup.c (parse_args): Don't call set_default_dirlist for -O.
4531 For -Y, ignore a leading `P,', and only call set_default_dirlist
4532 after processing all the other arguments.
4533
4534 Tue Aug 22 07:36:58 1995 steve chamberlain <sac@slash.cygnus.com>
4535
4536 * scripttempl/pe.sc: Keep .edata, don't base stabs at 0.
4537 * emulparams/armpe.sh: Run PE script.
4538
4539 Mon Aug 21 18:30:42 1995 steve chamberlain <sac@slash.cygnus.com>
4540
4541 * ldmain.c (main): Remove PE stuff.
4542 * lexsup.c (options): Load more PE options.
4543 (set_pe_value): New function.
4544
4545 Thu Aug 17 13:35:49 1995 steve chamberlain <sac@slash.cygnus.com>
4546
4547
4548 * emultempl/{armpe.sc, i386pe.sc}: Deleted.
4549 * emultempl/pe.sc: New file performs generic PE support and sorts
4550 archive members.
4551 * emulparams/{armpe.sh,i386pe.sh}: Use new file.
4552 * scripttempl/{armpe.sc, i386pe.sc}: Deleted
4553 * scripttempl/pe.sc: New.
4554 * Makefile.in: Use new files.
4555
4556 Thu Aug 17 14:46:34 1995 Doug Evans <dje@canuck.cygnus.com>
4557
4558 * scripttempl/h8500s.sc (.rdata): All data must go in data segment.
4559 (.strings,.ctors,.dtors): Likewise.
4560
4561 Wed Aug 16 11:38:59 1995 steve chamberlain <sac@slash.cygnus.com>
4562
4563 * scripttempl/armpe.sc: Always start code at 0x401000, even
4564 if -r.
4565 * ldwrite.c (strdup): New extern declaration.
4566 * ldgram.y (atype): New rule to clarify type parsing.
4567 * ldlang.c (init_os): Remove commented out code.
4568 (lang_size_sections): Set SEC_ALLOC and SEC_LOAD bits
4569 unless told not to by the link script.
4570
4571 Wed Aug 16 11:45:11 1995 Ian Lance Taylor <ian@cygnus.com>
4572
4573 * ldlang.c (lang_set_startof): New static function.
4574 (lang_process): Call it.
4575
4576 * ldgram.y: Tweak casesymlist to avoid bison errors.
4577
4578 * lexsup.c (parse_args): Accept -h as a synonym for --soname, for
4579 Solaris compatibility.
4580
4581 Tue Aug 15 17:31:16 1995 Ian Lance Taylor <ian@cygnus.com>
4582
4583 * ldgram.y (YYDEBUG): If not defined, define as 1.
4584 (CASE, EXTERN, START): New tokens.
4585 (mri_script_command): Handle CASE, EXTERN, INCLUDE, START.
4586 (casesymlist): New nonterminal.
4587 (extern_name_list): New nonterminal.
4588 * ldlex.l: Accept lower case trailing base specifiers. Don't
4589 ignore the first digit when the base is a suffix. Accept many
4590 EXPRESSION state tokens in MRI state. Support MRI continuation
4591 lines and MRI semicolon comments. Accept all MRI keywords in
4592 lower case. Add CASE, EXTERN, and START MRI keywords.
4593
4594 Tue Aug 8 19:14:58 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
4595
4596 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Use xmalloc
4597 instead of alloca.
4598
4599 Tue Aug 8 15:24:05 1995 J.T. Conklin <jtc@rtl.cygnus.com>
4600
4601 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Don't use
4602 $r/../gcc/xgcc unless it is present.
4603
4604 Thu Aug 3 11:56:22 1995 Ian Lance Taylor <ian@cygnus.com>
4605
4606 * scripttempl/m68kcoff.sc: Only put .ctors and .dtors in .text
4607 when CONSTRUCTING.
4608 * scripttempl/m68klynx.sc: Likewise.
4609 * scripttempl/nw.sc: Likewise.
4610 * scripttempl/sa29200.sc: Likewise.
4611 * scripttempl/sparclynx.sc: Likewise.
4612
4613 Fri Jul 28 12:02:23 1995 steve chamberlain <sac@slash.cygnus.com>
4614
4615 * emulparams/{z8001.sh, z8002.sh}: Fix typo.
4616
4617 Thu Jul 27 21:06:21 1995 Ken Raeburn <raeburn@cygnus.com>
4618
4619 * configure.in (i[345]86-*-linuxoldld): Treat like linuxaout*.
4620
4621 Thu Jul 27 15:26:28 1995 steve chamberlain <sac@slash.cygnus.com>
4622
4623 * scripttempl/i386pe.sc: Cope with constructors.
4624 * scripttempl/z8ksim.sc: Deleted.
4625 * scripttempl/z8000.sc: Resurrected as this, but
4626 can handle z8001 and z8002 formats.
4627 * emulparams/z8ksim.sh: Deleted.
4628 * emulparams/{z8001.sh, z8002.sh}: New files.
4629 * config/z8ksim.mt: Deleted
4630 * config/z8k-coff.mt: New, generates both emulations.
4631
4632 Tue Jul 25 14:53:02 1995 Ian Lance Taylor <ian@cygnus.com>
4633
4634 * ldmisc.c (vfinfo): In %C and %D case, always print the BFD using
4635 %B, in case it is in an archive.
4636
4637 Mon Jul 24 15:23:39 1995 Ian Lance Taylor <ian@cygnus.com>
4638
4639 * ldlang.c (lang_process): Call reset_memory_regions for each
4640 relaxation pass.
4641
4642 Fri Jul 21 22:49:44 1995 Michael Meissner <meissner@cygnus.com>
4643
4644 * scripttempl/elfppc.sc: Add support for .sdata, .sbss, and
4645 _SDA_BASE.
4646
4647 Thu Jul 20 16:26:55 1995 Ken Raeburn <raeburn@cygnus.com>
4648
4649 * ldmain.c (constructor_callback): Allocate set_name in stack
4650 frame, rather than always calling alloca with a fixed size.
4651
4652 Wed Jul 19 16:21:43 1995 Doug Evans <dje@canuck.cygnus.com>
4653
4654 * emulparams/armpe.sh (OUTPUT_FORMAT): Change to pei-arm-little.
4655 (LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
4656
4657 Mon Jul 17 13:57:00 1995 Ian Lance Taylor <ian@cygnus.com>
4658
4659 * ldwrite.c (clone_section): Set the alignment of the clone
4660 section to that of the section being cloned.
4661
4662 * ldwrite.c (split_sections): Don't split the first input section
4663 into a new output section.
4664
4665 Sat Jul 15 00:26:35 1995 Michael Meissner <meissner@cygnus.com>
4666
4667 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Define as elf32.
4668 (GENERATE_SHLIB_SCRIPT): Define as yes.
4669
4670 Fri Jul 14 12:11:46 1995 Ian Lance Taylor <ian@cygnus.com>
4671
4672 * emultempl/mipsecoff.em (check_sections): Use %P, not %F.
4673
4674 * ldver.c (help): Update list of options to match currently
4675 supported list.
4676
4677 Thu Jul 13 13:52:10 1995 Ian Lance Taylor <ian@cygnus.com>
4678
4679 * emultempl/lnk960.em (ld_lnk960_emulation): Initialize
4680 after_open field.
4681
4682 * ldexp.c (exp_intop): Don't cast stat_alloc arg to bfd_size_type;
4683 it takes a size_t anyhow.
4684 (exp_binop): Likewise.
4685 (exp_trinop): Likewise.
4686 (exp_unop): Likewise.
4687 (exp_nameop): Likewise.
4688 (exp_assop): Likewise.
4689 * ldlang.c (lang_memory_region_lookup): Likewise.
4690 (init_os): Likewise.
4691 (ldlang_add_undef): Likewise.
4692 (insert_pad): Likewise.
4693 * ldfile.c (ldfile_add_arch): Don't cast xmalloc arg to
4694 bfd_size_type.
4695
4696 * Makefile.in (ALL_EMULATIONS): It's earmaoutb.o, not earmoutb.o.
4697
4698 Wed Jul 12 11:32:22 1995 Ian Lance Taylor <ian@cygnus.com>
4699
4700 * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to
4701 declaration.
4702 (ld_emulation_xfer_type): Add search parameter to
4703 open_dynamic_archive entry point.
4704 * ldemul.c (ldemul_open_dynamic_archive): Add search parameter.
4705 * ldfile.c (ldfile_try_open_bfd): Rename from try_open_bfd, and
4706 make non-static. Change all callers to use new name.
4707 (ldfile_open_file_search): Make static. If entry is dynamic, call
4708 ldemul_open_dynamic_archive.
4709 (ldfile_open_file): Don't call ldemul_open_dynamic_archive.
4710 * ldfile.h (ldfile_open_file_search): Don't declare.
4711 (ldfile_try_open_bfd): Declare.
4712 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
4713 Accept search parameter. Don't search for a library, just look in
4714 a single place.
4715 * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
4716 Likewise.
4717
4718 Tue Jul 11 16:44:21 1995 Ian Lance Taylor <ian@cygnus.com>
4719
4720 * ldmain.c (set_scripts_dir): Don't base script directory on
4721 current directory.
4722
4723 Tue Jul 11 12:29:02 1995 Rick Sladkey <jrs@world.std.com>
4724
4725 * ldmisc.c (vfinfo): Don't print the line number if it isn't
4726 meaningful.
4727
4728 Mon Jul 10 13:38:28 1995 Ian Lance Taylor <ian@cygnus.com>
4729
4730 * ld.h (ld_config_type): Add field warn_constructors.
4731 * ldmain.c (add_to_set): Warn if config.warn_constructors.
4732 (constructor_callback): Likewise.
4733 * lexsup.c (parse_args): Handle -warn-constructors.
4734 * ld.texinfo, ld.1: Document -warn-constructors.
4735
4736 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Don't
4737 get confused by directory names if we searched for the file.
4738
4739 Based on patches from H.J. Lu <hjl@nynexst.com>:
4740 * ldlang.h (lang_input_statement_type): Add new field dynamic.
4741 * ldlang.c (new_afile): Set dynamic from config.dynamic_link.
4742 * ldfile.c: Include bfdlink.h.
4743 (ldfile_open_file): Check dynamic field of entry, not global
4744 dynamic_link field. Don't do a dynamic search when doing a
4745 relocateable link.
4746 * ldmain.c (main): Don't warn about dynamic_link for a
4747 relocateable link.
4748 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Skip file if
4749 dynamic is false.
4750 (gld${EMULATION_NAME}_create_output_section_statements): Always
4751 loop over input files.
4752 * Makefile.in: Rebuild dependencies.
4753
4754 * ld.texinfo, ld.1: Document -Bstatic, -Bdynamic, -Bshared, and
4755 -shared.
4756
4757 Mon Jul 10 13:29:43 1995 Eric Youngdale <eric@aib.com>
4758
4759 * ldmain.c (main): Set link_info.symbolic to false.
4760 * lexsup.c (parse_args): Handle -Bsymbolic.
4761
4762 Wed Jul 5 00:12:11 1995 Fred Fish (fnf@cygnus.com)
4763
4764 * ldmain.c (HAVE_SBRK): Define for everything except
4765 specific systems that are known to not support sbrk.
4766 (main): Use HAVE_SBRK to decide whether or not to use sbrk.
4767
4768 Tue Jul 4 12:55:48 1995 Ian Lance Taylor <ian@cygnus.com>
4769
4770 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
4771 Handle etree_provide.
4772
4773 * emultempl/elf32.em (global_needed): New static variable.
4774 (global_found): Likewise.
4775 (gld${EMULATION_NAME}_after_open): New static function.
4776 (gld${EMULATION_NAME}_search_needed): Likewise.
4777 (gld${EMULATION_NAME}_try_needed): Likewise.
4778 (gld${EMULATION_NAME}_check_needed): Likewise.
4779 (ld_${EMULATION_NAME}_emulation): Replace after_open_default with
4780 gld${EMULATION_NAME}_after_open.
4781
4782 Mon Jul 3 14:26:37 1995 Steve Chamberlain <sac@slash.cygnus.com>
4783
4784 * configure.in (i386-*-win32): New target.
4785
4786 Mon Jul 3 14:39:22 1995 Ian Lance Taylor <ian@cygnus.com>
4787
4788 * lexsup.c (parse_args): Let -G either set the small data size or
4789 be equivalent to --shared, depending on the next argument. Accept
4790 and ignore -z for Solaris compatibility.
4791
4792 Sun Jul 2 17:52:34 1995 Ian Lance Taylor <ian@cygnus.com>
4793
4794 * lexsup.c (parse_args): Cast fopen result to PTR before storing
4795 it in link_info.base_file. Fix indentation.
4796
4797 Wed Jun 28 17:11:25 1995 Steve Chamberlain <sac@slash.cygnus.com>
4798
4799 * ldmain.c (main): Always initialize PE info in link_info.
4800 * lexsup.c (OPTION_BASE_FILE): New option.
4801 (parse_args): Handle new option.
4802 * emulparams/armpe.sh: Output pei.
4803 * emultempl/i386pe.em: Add newline to end.
4804 * scripttempl/armpe.sc: Change output and quote the $s.
4805 * scripttempl/i386pe.sc: Change output and quote the $s.
4806
4807 Thu Jun 22 19:55:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
4808
4809 Sun May 7 11:53:41 MDT 1995 Bryan Ford <baford@cs.utah.edu>
4810
4811 * configure.in (i386-*-msdos*, i386-*-moss*): New targets.
4812 * Makefile.in (ALL_EMULATIONS): Added i386msdos.o.
4813 (i386msdos.o): New target.
4814 * config/i386-msdos.mt: Created.
4815 * emulparams/i386msdos.sh: Created.
4816 * scripttempl/i386msdos.sc: Created.
4817
4818 Thu Jun 22 15:06:35 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4819
4820 * scripttempl/elfppc.sc (.fixup): Add support for a .fixup section
4821 that contains pointers to be relocated.
4822
4823 Tue Jun 20 17:47:20 1995 Stan Shebs <shebs@andros.cygnus.com>
4824
4825 * mpw-esh.c: New file, modified for MPW from esh.c.
4826 * scripttempl/sh.sc: Reformatted to simplify MPWification,
4827 use *() to concat stab sections instead of [].
4828
4829 Thu Jun 15 08:48:16 1995 Steve Chamberlain <sac@slash.cygnus.com>
4830
4831 * scripttempl/armpe.sc: Add constructor support.
4832
4833 Tue Jun 13 09:11:20 1995 Steve Chamberlain <sac@slash.cygnus.com>
4834
4835 * ldlang.c (lang_size_sections): Any section with a DATA
4836 statement has contents.
4837
4838 Sun Jun 11 15:20:46 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
4839
4840 * emulparams/m68kelf.sh (NOP): Define.
4841 (DYNAMIC_LINK): Don't define.
4842 (TEXT_START_ADDR): Set to 0x80000000; the extra 0x100 for headers
4843 will come from the linker script.
4844
4845 Thu Jun 8 14:17:33 1995 Steve Chamberlain <sac@slash.cygnus.com>
4846
4847 * emulparams/armpe.sh, scriptempl/armpe.sc: Add end and stack.
4848
4849 Mon Jun 5 02:16:24 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
4850
4851 * configure.in (i[345]86-*-gnu*): Use GNU elf config.
4852
4853 Thu May 25 11:49:28 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4854
4855 From Andrew Cagney <cagney@highland.com.au>
4856 * Makefile.in: Fixup more gotchas from renaming elf32ppcle to
4857 elf32lppc.
4858
4859 Wed May 24 11:23:21 1995 Steve Chamberlain <sac@slash.cygnus.com>
4860
4861 Add support for ARM-PE.
4862 * Makefile.in (ALL_EMULATIONS): Add armpe.o
4863 * configure.in: Recognize armpe.
4864 * config/arm-pe.mt: New file.
4865 * emulparams/armpe.sh: New file.
4866 * scripttempl/armpe.sc: New file.
4867
4868
4869 Mon May 22 15:19:26 1995 Doug Evans <dje@chestnut.cygnus.com>
4870
4871 * configure.in (h8300h-*-hms): Deleted
4872 * config/cf-h8300h.mt: Deleted.
4873
4874 Thu May 18 04:26:10 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
4875
4876 Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
4877
4878 From David Taylor (dtaylor@armltd.co.uk)
4879 * Makefile.in (ALL_EMULATIONS): Add earmout[lb].o
4880 * configure.in: Recognize arm{,e[lb]-*-aout.
4881 * config/arm[lb]-aout.mt: New files.
4882 * emulparams/armaout[lb].sh: New files.
4883 * scripttempl/armaout.sc: New file.
4884
4885 Tue May 16 18:27:11 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4886
4887 * config/ppcle-elf32.mt (EMUL): Use elf32lppc, not elf32ppcle, to
4888 be unique in 8 characters for DOS.
4889
4890 * emulparams/elf32lppc.sh: New file, renamed from elf32ppcle.sh.
4891 * emulparams/elf32ppcle.sh: Deleted.
4892
4893 Fri May 12 11:03:55 1995 Steve Chamberlain <sac@slash.cygnus.com>
4894 Tom Griest <griest@cs.yale.edu>
4895
4896 Initial support for PE executables (eg NT, win32)
4897
4898 * Makefile.in (configure.in, ei386pe): Add support.
4899 * ldmain.c (main): Initialize PE argument info.
4900 * ldwrite.c (print_file_stuff): Don't print out .drectve
4901 and .debug section info.
4902 * lexsup.c (set_subsystem, set_stack_heap, OPTION_HEAP,
4903 OPTION_SUBSYSTEM, parse_argsm set_subsystem, set_stack_heap):
4904 Handle new arguments.
4905 * config/i386-pe.mt, emultempl/i386pe.em, scripttempl/i386pe.sc:
4906 New files
4907
4908 Wed May 10 18:37:59 1995 Stu Grossman (grossman@andros.cygnus.com)
4909
4910 * scripttempl/hppaelf.sc: Remove .PARISC.unwind section from text
4911 segment. This allows ld -r to preserve unwind sections.
4912
4913 Tue May 9 17:19:57 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4914
4915 * configure.in: Add little endian PowerPC support.
4916
4917 * Makefile.in (ALL_EMULATIONS): Add eelf32ppcle.o.
4918 (eelf32ppcle.c): Support for little endian PowerPC.
4919
4920 * config/ppcle-elf32.mt: New file for little endian PowerPC.
4921 * emulparams/elf32ppcle.sh: Ditto.
4922
4923 Wed May 3 12:56:32 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
4924
4925 * ldlang.c (print_output_section_statement): Check
4926 subsection_alignment, instead of checking section_alignment twice.
4927 Noticed by Alan Modra <alan@spri.levels.unisa.edu.au>.
4928
4929 Tue May 2 16:36:07 1995 Jeff Law (law@snake.cs.utah.edu)
4930
4931 * configure.in (hppa*-*-lites*): Handle like hppa*-*-*elf*.
4932
4933 Mon Apr 24 19:21:02 1995 Michael Meissner <meissner@cygnus.com>
4934
4935 * ldwrite.c (ldwrite): Before doing anything, reset the error
4936 code. If bfd_final_link returns an error, but the error code is
4937 unset, don't issue an extra message. Assume a correct error
4938 message was already set.
4939
4940 Fri Apr 14 16:31:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
4941
4942 * Makefile.in (ALL_EMULATIONS): Added em68kelf.o.
4943 (em68kelf.o): New target.
4944 * config/m68k-elf.mt, emulparams/m68kelf.sh: New files.
4945 * configure.in: Use them for m68*-*-elf.
4946
4947 Tue Apr 11 12:02:03 1995 Stan Shebs <shebs@andros.cygnus.com>
4948
4949 Merge in support for Mac MPW as a host.
4950 (Old change descriptions retained for informational value.)
4951
4952 * mpw-config.in (i386-unknown-aout): Change to i386-unknown-go32.
4953 (i386-unknown-coff): Remove.
4954 (sh-hitachi-hms): New target.
4955 (emulation_ofiles): Set correctly for each target.
4956 (version, TDEFINES): Add to makefile fragment.
4957 * mpw-make.in (BISON): Use byacc instead of bison.
4958 (em_*.c): Replace with e*.c everywhere.
4959 (ldgram.h): Separate action from ldgram.c generation.
4960 (LD_PROG): Depend on Version.r.
4961 (Version.r): generate from version info.
4962 * mpw-emipsidt.c: New file, modified for MPW from emipsidt.c.
4963
4964 * mpw-config.in (m68k-apple-macos, ppc-apple-macos,
4965 i386-unknown-aout, i386-unknown-coff): New targets.
4966 (m68k-aout, m68k-coff): Remove targets.
4967 (mk.tmp): Add definition of EMUL.
4968
4969 * mpw-config.in (emulname): Set based on target.
4970 (ldemul-list.h): Construct.
4971 * mpw-make.in (install-only): New target.
4972 (install): Depend on install-only.
4973
4974 * mpw-make.in (bindir): Fix pathname.
4975 (install): Move here from mpw-build.in.
4976
4977 * mpw-config.in: New file, MPW configuration fragment.
4978 * mpw-make.in: New file, MPW makefile fragment.
4979 (This file is semi-automatically generated from Makefile.in.)
4980 * ldfile.c (slash): If MPW, set to `:'.
4981 * ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
4982 prevent redefinition errors.
4983
4984 Tue Apr 4 17:55:18 1995 Steve Chamberlain <sac@bang.hack.com>
4985
4986 * ldwrite.c (clone_section): Align clone sections on even
4987 boundaries.
4988
4989 Thu Mar 30 14:32:26 1995 H.J. Lu (hjl@nynexst.com)
4990
4991 * configure.in: Change linux to default to elf. Using
4992 i[345]86-*-linuxaout will build a linker which defaults to a.out.
4993 * config/i386-laout.mt: Rename from old config/i386-linux.mt.
4994 * config/i386-linux.mt: Rename from old config/i386-lelf.mt.
4995 * config/i386-lelf.mt: Remove.
4996
4997 Thu Mar 30 13:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
4998
4999 * ldmain.c (main): If opening the map file fails, call
5000 bfd_set_error before calling einfo.
5001
5002 * ld.texinfo, ld.1: Document the -no-keep-memory option.
5003
5004 Mon Mar 27 11:10:08 1995 Ian Lance Taylor <ian@cygnus.com>
5005
5006 * ldmain.c (main): Revert patch of March 10, since the SVR4 linker
5007 does mark shared libraries as executable.
5008
5009 Tue Mar 21 15:15:38 1995 Ian Lance Taylor <ian@cygnus.com>
5010
5011 * ldlang.c (lang_common): Change power to int. Pass larger values
5012 before smaller values.
5013 (lang_one_common): Treat info as int *. Don't bother to check for
5014 last value, since it is now zero.
5015
5016 Sat Mar 18 01:49:14 1995 Ian Lance Taylor <ian@cygnus.com>
5017
5018 * ldlang.c (load_symbols): An empty archive is OK.
5019
5020 Fri Mar 17 16:15:31 1995 Stan Shebs <shebs@andros.cygnus.com>
5021
5022 * ldmain.c (progress.h): Include.
5023 (main): Call START_PROGRESS and END_PROGRESS.
5024
5025 Thu Mar 16 17:17:33 1995 Michael Meissner <meissner@cygnus.com>
5026
5027 * scripttempl/elfppc.sc: Move _GOT2_END_ after the .ctors and
5028 .dtors sections, so that these pointers get relocated also.
5029 Define the symbols __{C,D}TOR_{LIST,END}__ to mark the beginning
5030 and end of the constructors/destructors.
5031
5032 Thu Mar 16 13:59:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
5033
5034 * ldlang.c (load_symbols): If whole_archive is true and ENTRY
5035 describes an archive, call bfd_link_add_symbols on each member.
5036 * ldmain.c (whole_archive): New variable.
5037 (main): Initialize it to false.
5038 * ldmain.h: Declare whole_archive.
5039 * lexsup.c (parse_args): Grok --whole-archive switch.
5040 * ld.texinfo, ld.1: Document --whole-archive.
5041
5042 Thu Mar 16 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
5043
5044 * genscripts.sh (EMULATION_NAME): Set LIB_PATH to empty when not
5045 using the default emulation.
5046
5047 * config/dgux.mh (HOSTING_EMU): Use -m rather than trying to set
5048 LDEMULATION.
5049 * config/hppaelf.mh (HOSTING_EMU): Likewise.
5050
5051 Tue Mar 14 12:28:03 1995 Ian Lance Taylor <ian@cygnus.com>
5052
5053 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Set force_maj
5054 for -lc.N. From H.J. Lu <hjl@nynexst.com>.
5055
5056 Fri Mar 10 14:43:48 1995 Ian Lance Taylor <ian@cygnus.com>
5057
5058 * ldmain.c (main): Don't set EXEC_P if link_info.shared is set.
5059
5060 * ldlex.l: Return -lFILENAME as the token LNAME.
5061 * ldgram.y: Add token LNAME.
5062 (input_list): Treat LNAME like NAME, but pass it to
5063 lang_add_input_file as lang_input_file_is_l_enum.
5064 * ld.texinfo: Document using -lFILENAME in INPUT.
5065
5066 Thu Mar 9 12:21:51 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5067
5068 * ldlang.c (lang_check): If the architectures are compatible call
5069 bfd_merge_private_bfd_data to let the backend do additional
5070 checks.
5071
5072 Tue Mar 7 00:53:08 1995 Ian Lance Taylor <ian@cygnus.com>
5073
5074 * ldemul.c (ldemul_choose_mode): If emulation not recognized, list
5075 all supported emulations.
5076
5077 Mon Mar 6 14:03:50 1995 Ian Lance Taylor <ian@cygnus.com>
5078
5079 * ldemul.c (ldemul_list_emulations): New function.
5080 * ldemul.h (ldemul_list_emulations): Declare.
5081 * ldver.c (help): List supported targets and emulations.
5082
5083 Fri Mar 3 15:40:36 1995 Doug Evans <dje@canuck.cygnus.com>
5084
5085 * scripttempl/elf.sc (.debug): Relocate to address 0.
5086 (.debug_srcinfo, .debug_aranges, .debug_pubnames,
5087 .debug_sfnames, .line): Likewise.
5088
5089 Fri Mar 3 17:07:14 1995 Ian Lance Taylor <ian@cygnus.com>
5090
5091 * emultempl/elf32.em (hold_rel): New static variable.
5092 (gld${EMULATION_NAME}_place_orphan): Place readonly sections with
5093 contents whose names begin with ".rel" after hold_rel. Remove the
5094 assertion which checked for unplaced .rel sections. Don't try to
5095 sort the section into place if place->bfd_section is NULL.
5096 (gld${EMULATION_NAME}_place_section): Set hold_rel to the first
5097 section beginning with ".rel".
5098
5099 Thu Mar 2 14:34:43 1995 Ian Lance Taylor <ian@cygnus.com>
5100
5101 Doc note from pierre@phi.la.tce.com (Pierre Willard):
5102 * ld.texinfo: -X and -x work even if -s or -S are not specified.
5103 * ld.1: Similar change.
5104
5105 Wed Mar 1 13:51:16 1995 Ian Lance Taylor <ian@cygnus.com>
5106
5107 * emulparams/gld960coff.sh (COFF_CTORS): Define.
5108 * scripttempl/i960.sc: Use COFF_CTORS if CONSTRUCTING.
5109
5110 Tue Feb 28 12:42:56 1995 Ian Lance Taylor <ian@cygnus.com>
5111
5112 * configure.in (i[345]86-*-linuxelf*): New target. Use i386-lelf.
5113 (i[345]86-*-gnuelf*): New target. Use i386-gelf.
5114 * config/i386-lelf.mt: New file.
5115 * config/i386-gelf.mt: New file.
5116
5117 Tue Feb 28 10:27:54 1995 Rob Savoye <rob@darkstar.cygnus.com>
5118
5119 * configure.in: Match on mips-ecoff, and default to the IDT
5120 configuration.
5121
5122 Fri Feb 17 13:06:47 1995 Michael Meissner <meissner@cygnus.com>
5123
5124 * scripttempl/elfppc.sc: Add support for .got1 and .got2 sections.
5125 Offset _GLOBAL_OFFSET_TABLE_ 32768 from the start of the GOT area
5126 to double the size of the table.
5127
5128 Thu Feb 9 18:29:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5129
5130 * Makefile.in (distclean): Do recursive deletion, since ldscripts
5131 is a directory.
5132
5133 Thu Feb 9 11:38:22 1995 Ian Lance Taylor <ian@cygnus.com>
5134
5135 * ldmain.c (main): If trace_file_tries is true, and we are using
5136 an internal linker script, print out the script.
5137 * ldfile.c (try_open): Reindent function. Make the messages about
5138 opening script files more informative.
5139
5140 * lexsup.c (parse_args): For -V, call ldversion with 1, not 0.
5141 * ld.texinfo, ld.1: Update accordingly.
5142
5143 Wed Feb 8 17:34:45 1995 Ian Lance Taylor <ian@cygnus.com>
5144
5145 * ldlang.c (lang_one_common): Adjust references to common symbol
5146 information for new structure.
5147
5148 Mon Feb 6 12:17:24 1995 Ian Lance Taylor <ian@cygnus.com>
5149
5150 * ldmain.c (undefined_symbol): Handle section being NULL.
5151
5152 * ldctor.c (ldctor_build_sets): Handle bfd_link_hash_defweak.
5153 * ldexp.c (fold_name): Likewise.
5154 * ldlang.c (print_one_symbol): Likewise.
5155 (lang_finish): Likewise.
5156 * ldmain.c (multiple_common): Likewise.
5157 * ldwrite.c (print_symbol): Likewise. Also, bfd_link_hash_weak
5158 renamed to bfd_link_hash_undefweak.
5159
5160 * scripttempl/alpha.sc: Set address of .data section correctly
5161 when -n or -N is used. Patch from Chris G Demetriou
5162 <Chris_G_Demetriou@LAGAVULIN.PDL.CS.CMU.EDU>.
5163 * scripttempl/mips.sc: Similar change.
5164
5165 Tue Jan 31 16:20:52 1995 Doug Evans <dje@canuck.cygnus.com>
5166
5167 * ldlang.c (lang_size_sections): Clarify error message when user
5168 specified start addr conflicts with region. Fix resetting of
5169 region pointer.
5170
5171 Tue Jan 31 12:37:09 1995 Ian Lance Taylor <ian@cygnus.com>
5172
5173 * ldexp.c (fold_name): In case NAME, permit an absolute symbol
5174 in lang_allocating_phase_enum.
5175
5176 Mon Jan 30 11:33:25 1995 Ian Lance Taylor <ian@cygnus.com>
5177
5178 * Makefile.in (distclean): Depend upon clean. Don't bother to
5179 remove files which will be removed by clean. From patch by
5180 alan@SPRI.Levels.UniSA.Edu.Au (Alan Modra).
5181
5182 Fri Jan 27 16:27:34 1995 Ian Lance Taylor <ian@cygnus.com>
5183
5184 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): For
5185 a MIPS target, clobber the size of all but the first input
5186 .reginfo section to be 0, so that lang_size_sections sets the
5187 correct size for the output .reginfo section.
5188
5189 Thu Jan 26 19:53:37 1995 Ian Lance Taylor <ian@cygnus.com>
5190
5191 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
5192 Remove unused variable is.
5193
5194 Thu Jan 26 12:33:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5195
5196 * configure.in: Add support for powerpc-*-eabi.
5197
5198 * scripttempl/elfppc.sc: New file for PowerPC embedded ABI
5199 support.
5200
5201 * emulparams/elf32ppc.sh (SCRIPT_NAME): Use elfppc.sc instead of
5202 elf.sc, which defines some new symbols PowerPC elf needs.
5203
5204 Tue Jan 24 10:32:15 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5205
5206 * ldctor.c (ldctor_add_set_entry): Don't dump core if a
5207 constructor entry is in the absolute section.
5208
5209 Mon Jan 23 13:58:13 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5210
5211 * configure.in (i[345]86-*-gnu*): Set ld_target to i386-gnu.
5212 * config/i386-gnu.mt: New file. Include ELF support.
5213
5214 Thu Jan 19 16:22:11 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5215
5216 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): If
5217 there are any input sections named .gnu.warning, treat them as
5218 containing a warning message to be printed by the linker, and
5219 clobber the size so that the message is not copied into the output
5220 file.
5221 * scripttempl/elf.sc: Put .gnu.warning sections into the .text
5222 section.
5223
5224 Sun Jan 15 16:45:00 1995 Steve Chamberlain <sac@splat>
5225
5226 * configure.in (w65-*-*): New target.
5227 * Makefile.in: Update.
5228 * scripttempl/w65.sc: New.
5229 * config/coff-w65.mt: New.
5230
5231 Thu Jan 12 01:32:25 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
5232
5233 * ldlang.c (lang_place_orphans): Don't ignore files with
5234 just_syms_flag set. Instead, put all their sections in
5235 bfd_abs_section_ptr, using the section VMA as the output_offset.
5236
5237 Wed Jan 11 22:59:09 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5238
5239 * ldctor.c (ldctor_build_sets): Don't use `const' with typedef
5240 name `reloc_howto_type', since it's now defined to be const.
5241 * ldlang.c (lang_add_reloc): Ditto.
5242 * ldlang.h (lang_reloc_statement_type, lang_add_reloc): Ditto.
5243
5244 Wed Jan 11 11:24:45 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5245
5246 * ldexp.c (fold_binary): Adding or subtracting an absolute value
5247 to a relative value does not require forcing the relative value to
5248 be absolute. Also, reindent function.
5249
5250 Wed Dec 28 22:05:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5251
5252 * ldwrite.c (clone_section): Create a symbol with the
5253 same name as the section.
5254
5255 Mon Dec 19 14:02:13 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5256
5257 * ld.h (split_by_reloc, split_by_file): New flags.
5258 * ldwrite.c (clone_section, split_sections): New functions.
5259 * lexsup.c (parse_args): Understand new split options.
5260
5261 Fri Dec 9 17:22:55 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5262
5263 * scripttempl/elf.sc: Move .ctors and .dtors from .text segment to
5264 .data segment. They must be writable when creating a shared
5265 library. From H.J. Lu <hjl@nynexst.com>.
5266
5267 Fri Dec 2 14:09:00 1994 Ian Lance Taylor <ian@rtl.cygnus.com>
5268
5269 * emultempl/miposecoff.em: New file.
5270 * emulparams/mipsidt.sh (TEMPLATE_NAME): Set to mipsecoff.
5271 * emulparams/mipsidtl.sh (TEMPLATE_NAME): Likewise.
5272 * scripttempl/mips.sc: Put .rel.sdata sections in .text, and
5273 provide __runtime_reloc_start and __runtime_reloc_stop if they are
5274 used. Align _fdata to a 16 byte boundary.
5275 * Makefile.in (emipsidt.c): Depend upon mipsecoff.em rather than
5276 generic.em.
5277 (emipsidtl.c): Likewise.
5278 (check): Pass CC_FOR_HOST and CFLAGS_FOR_HOST to runtest.
5279
5280 * ld.h (args_type): Add new field embedded_relocs.
5281 * ldemul.h (ldemul_after_open, after_open_default): Declare.
5282 (ld_emulation_xfer_struct): Add new field after_open.
5283 * ldemul.c (ldemul_after_open): New function.
5284 (after_open_default): New function.
5285 * ldlang.c (lang_process): Call ldemul_after_open.
5286 * lexsup.c (parse_args): Handle --embedded-relocs.
5287 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Initialize
5288 new after_open field to after_open_default.
5289 * emultempl/generic.em, emultempl/gld960.em: Likewise.
5290 * emultempl/gld960c.em, emultempl/hppaelf.em: Likewise.
5291 * emultempl/linux.em, emultempl/m88kbcs.em: Likewise.
5292 * emultempl/sunos.em, emultempl/vanilla.em: Likewise.
5293 * ld.texinfo, ld.1: Mention -embedded-relocs.
5294
5295 Wed Nov 23 22:04:47 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5296
5297 * Makefile.in: Add eshl.o.
5298 * config/coff-sh.mt: Add shl emulation.
5299
5300 Tue Nov 22 11:55:37 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5301
5302 * scripttempl/elf.sc: Fill .text section with NOPS. From Eric
5303 Youngdale <eric@aib.com>.
5304
5305 Thu Nov 17 14:39:48 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5306
5307 Patches from pirker@eiunix.tuwien.ac.at (Martin Pirker).
5308 * config/i386linux.mh: New file; set HOSTING_CRT0.
5309 * genscripts.sh: Don't put ${libdir} in LIB_PATH if it is
5310 /usr/lib, since that is already in LIB_PATH.
5311
5312 Wed Nov 16 10:03:03 1994 Jeff Law (law@snake.cs.utah.edu)
5313
5314 * scripttempl/hppaelf.sc (.text): Handle a use rdefined text start
5315 address.
5316 (.data, .bss): If "-N", then place the data/bss just after the end
5317 of the .text section rather than at the default 0x40000000.
5318
5319 * scripttempl/hppaelf.sc (.text): Place unwind descriptors in the
5320 text segment.
5321
5322 Sat Nov 12 15:55:56 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5323
5324 Patches from Eric Youngdale <eric@aib.com>:
5325 * ldlang.c (lang_finish): Don't warn if entry symbol not found
5326 when generating a shared library.
5327 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Warn if
5328 attempting to place an orphaned relocation section when generating
5329 a dynamically linked object.
5330
5331 * scripttempl/elf.sc: Add ENTRY(${ENTRY}), and default ${ENTRY} to
5332 _start.
5333
5334 Fri Nov 11 14:27:23 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5335
5336 * ld.h (args_type): Add field export_dynamic.
5337 * lexsup.c (parse_args): Recognize --export-dynamic.
5338 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
5339 Pass export_dynamic argument to bfd_elf32_size_dynamic_sections.
5340
5341 Wed Nov 9 12:47:11 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5342
5343 * ldlang.c (lang_one_common): Set SEC_ALLOC in any section where
5344 we allocate common symbols.
5345
5346 Tue Nov 8 17:50:43 1994 Eric Youngdale (eric@aib.com)
5347
5348 * scripttempl/elf.sc: Add .rel.init, .rela.init, .rel.fini, and
5349 .rela.fini to the list of .rel* sections.
5350
5351 Tue Nov 8 17:47:45 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5352
5353 * ldlang.c (load_symbols): Add new argument place. Only accept
5354 linker scripts if place is not NULL. Put commands found in an
5355 assumed linker script into place.
5356 (lookup_name): Pass NULL as place argument to load_symbols.
5357 (open_input_bfds): In lang_input_statement_enum case, pass a place
5358 argument to load_symbols, and store any new statements after the
5359 current one.
5360
5361 Mon Nov 7 15:53:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
5362
5363 * ldver.c (ldversion): Bump to 2.5.3.
5364
5365 Fri Nov 4 15:11:26 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
5366
5367 * Makefile.in (e*nbsd.c): Fix typo in dependencies.
5368
5369 Thu Nov 3 19:35:44 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
5370
5371 * Makefile.in (check): Add missing "else true" clause.
5372
5373 * emulparams/vax.sh (OUTPUT_FORMAT): Use "a.out".
5374
5375 * scripttempl/go32coff.sc: Changes from DJ Delorie: Change default
5376 entry point to "start". Align at end of each section to 0x200.
5377 Start .text section 0x1000 later. Add _etext, _edata, _end
5378 symbols.
5379
5380 Wed Nov 2 12:17:49 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5381
5382 * ldctor.c (ldctor_add_set_entry): Don't permit a set to be
5383 composed of different object file formats.
5384 (ldctor_build_sets): If the output format does not support the
5385 reloc, and we are not generating a relocateable link, try getting
5386 the reloc from the input format.
5387
5388 Tue Nov 1 10:30:19 1994 J.T. Conklin (jtc@rtl.cygnus.com)
5389
5390 * Makefile.in (ALL_EMULATIONS): Added em68knbsd.o.
5391 (em68knbsd.c): New target.
5392
5393 * config/m68k-nbsd.mt: New file.
5394 * emulparams/m68knbsd.sh: New file.
5395 * configure.in (m68*-*-netbsd*): Use above configs.
5396
5397 Mon Oct 31 19:35:17 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5398
5399 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): If we find an
5400 appropriately named static library, stop the search at that
5401 directory.
5402
5403 Wed Oct 26 13:59:12 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
5404
5405 * Makefile.in (ALL_EMULATIONS): Added ei386nbsd.o, ens32knbsd.o
5406 and esparcnbsd.o; sorted entries.
5407 (ei386nbsd.c,ens32knbsd.c,esparcnbsd.c): New targets.
5408
5409 * config/netbsd532.mt: Removed.
5410 * emulparams/netbsd532.sh: Removed.
5411
5412 * config/{i386-nbsd.mt,ns32k-nbsd.mt,sparc-nbsd.mt}: New files.
5413 * emulparams/{i386nbsd.sh,ns32knbsd.sh,sparcnbsd.sh}: New files.
5414 * configure.in (i[345]86-*-netbsd*, ns32k-pc532-netbsd*,
5415 sparc*-*-netbsd*): Use above configs.
5416
5417 Tue Oct 25 11:47:10 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5418
5419 * ldmain.c (multiple_common): One of the types may now be
5420 bfd_link_hash_indirect. The old BFD argument may be NULL.
5421
5422 Thu Oct 20 22:01:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5423
5424 * configure.in: Add * at the end of m68k-hp-hpux.
5425
5426 Tue Oct 18 15:58:39 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5427
5428 * ldlex.l: Cast assignment to yy_ch_buf field to char *, not to
5429 YY_CHAR *.
5430
5431 Mon Oct 17 14:53:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
5432
5433 * scripttempl/nw.sc: Gather constructors and destructors and
5434 define __CTOR__LIST__ and __DTOR_LIST__ appropriately.
5435
5436 Fri Oct 14 14:35:38 1994 J.T. Conklin (jtc@rtl.cygnus.com)
5437
5438 * Makefile.in (ALL_EMULATIONS): Add ei386nw.o and eppcnw.o.
5439 (ei386nw.c, eppcnw.c): New targets.
5440
5441 * config/{i386,ppc}-nw.mt, emulparams/{i386,ppc}nw.sh,
5442 scripttempl/nw.sc: New files, for i386 and powerpc netware.
5443
5444 * configure.in: Changed netware ld_target name to be {i386,ppc}-nw
5445 instead of {i386,ppc}-elf.
5446
5447 * configure.in (sparc*-*-netware): Removed. There is no such
5448 thing anymore.
5449
5450 * ldint.texinfo: Move misplaced `@end iftex'.
5451
5452 Fri Oct 14 12:02:18 1994 Eric Youngdale (eric@aib.com)
5453
5454 * scripttempl/elf.sc: Add .rel.ctors, .rela.ctors, .rel.dtors, and
5455 .rela.dtors to the list of .rel* sections.
5456
5457 Thu Oct 13 14:16:27 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
5458
5459 * ldver.c (ldversion): Update to version 2.5.
5460 * Version 2.5 released.
5461
5462 * configure.in (all_targets): Handle i386-linux*.
5463
5464 Thu Oct 13 11:24:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5465
5466 * scripttempl/aout.sc: Set _etext and __etext to ., not
5467 ${DATA_ALIGNMENT}. This is compatible with SunOS, and, with luck,
5468 will not break any other system. From Eric Valette
5469 <ev@chorus.fr>.
5470
5471 Wed Oct 12 16:22:58 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5472
5473 * lexsup.c (parse_args): Change -V to be a synonym for -v. Add
5474 --verbose to get the old -V behaviour.
5475 * ld.1, ld.texinfo: Document this change.
5476
5477 Tue Sep 27 14:56:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5478
5479 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Remove
5480 assertion, since it could fail with a user defined linker script.
5481
5482 * ldexp.c (fold_name): For DEFINED case, don't try to look up the
5483 name in the hash table during the first phase--the hash table does
5484 not even exist at that point, much less have the right value.
5485
5486 * Makefile.in (CC): Define.
5487 (CXX): Move definition, change from g++ to gcc.
5488 (EXPECT, RUNTEST): Copy definitions from top level Makefile.in.
5489 (RUNTEST_CC, RUNTEST_CFLAGS): Remove.
5490 (RUNTEST_CXX, RUNTEST_CXXFLAGS): Remove.
5491 (CC_FOR_TARGET, CXX_FOR_TARGET): Copy from top level Makefile.in.
5492 (.cc.o): Comment out.
5493 (testdir): Remove.
5494 (site.exp): Don't create testdir or set tmpdir.
5495 (check): Run checks even if not running native. Use CC_FOR_TARGET
5496 instead of RUNTEST_CC, and likewise for CXX.
5497 (cdtest targets): Comment out.
5498 * config/solaris2.mh (HOSTING_LIBS): Only mention crtend.o once.
5499 * cdtest-bar.cc, cdtest-foo.cc, cdtest-foo.h: Remove.
5500 * cdtest-main.cc, cdtest.exp: Remove.
5501
5502 Mon Sep 26 11:40:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5503
5504 * emulparams/elf32bmip.sh: Rename from elf32mipb.sh to avoid DOS
5505 file naming problems.
5506 * emulparams/elf32lmip.sh: Rename from elf32mipl.sh.
5507 * Makefile.in (ALL_EMULATIONS): Rename eelf32mipb.o to
5508 eelf32bmip.o and eelf32mipl.o to eelf32lmip.o.
5509 (eelf32bmip.c): Rename from eelf32mipb.c. Use elf32bmip.sh.
5510 (eelf32lmip.c): Rename from eelf32mipl.c. Use elf32lmip.sh.
5511 * config/mipsb-elf32.mt (EMUL): Use elf32bmip, not elf32mipb.
5512 * config/mipsl-elf32.mt (EMUL): Use elf32lmip, not elf32mipl.
5513
5514 * genscripts.sh: Always search /usr/local/TARGET/lib.
5515
5516 * scripttempl/elf.sc: If -N is set, force DATA_ADDR to be ".".
5517
5518 Fri Sep 23 15:05:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
5519
5520 * configure.in: Handle i386-bsdi* targets like i386-bsd.
5521
5522 Fri Sep 23 00:06:59 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5523
5524 * lexsup.c (parse_args): Add support for -a for HP/UX
5525 compatibility.
5526
5527 * lexsup.c (parse_args): -c takes an argument.
5528
5529 Tue Sep 20 14:35:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5530
5531 * ld.h (args_type): Add new field endian.
5532 * lexsup.c (parse_args): Handle -EB and -EL by setting
5533 command_line.endian.
5534 * ldgram.y (ifile_p1): Accept OUTPUT_FORMAT with three arguments.
5535 * ldlang.c (lang_add_output_format): Add arguments big and little.
5536 If command_line.endian is set, use it to select big or little
5537 rather than the default. Changed all callers.
5538 * ldlang.h (lang_add_output_format): Update declaration.
5539 * emulparams/elf32mipb.sh: Define BIG_OUTPUT_FORMAT and
5540 LITTLE_OUTPUT_FORMAT.
5541 * emulparams/elf32mipl.sh: Likewise.
5542 * emulparams/mipsbig.sh: Likewise.
5543 * emulparams/mipsbsd.sh: Likewise.
5544 * emulparams/mipsidt.sh: Likewise.
5545 * emulparams/mipsidtl.sh: Likewise.
5546 * emulparams/mipslit.sh: Likewise.
5547 * scripttempl/elf.sc: Define BIG_OUTPUT_FORMAT and
5548 LITTLE_OUTPUT_FORMAT if not already defined. Pass them to
5549 OUTPUT_FORMAT.
5550 * scripttempl/mips.sc: Pass BIG_OUTPUT_FORMAT and
5551 LITTLE_OUTPUT_FORMAT to OUTPUT_FORMAT.
5552 * scripttempl/mipsbsd.sc: Likewise.
5553
5554 * Makefile.in (ldgram.h): Make separate target from ldgram.c,
5555 depending upon ldgram.c, so that a parallel make does not try to
5556 build both at once.
5557
5558 * configure.in (mips*el-elf*): New target.
5559 * Makefile.in (ALL_EMULATIONS): Add eelf32mipb.o and eelf32mipl.o.
5560 (eelf32mipl.c): New target.
5561
5562 * config/mipsl-elf32.mt: New file.
5563 * emulparams/elf32mipl.sh: New file.
5564
5565 Fri Sep 16 12:16:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5566
5567 * ldmain.c (main): Rather than prohibiting ld -r -s, treat it as
5568 ld -r -S -x.
5569
5570 Thu Sep 15 13:05:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5571
5572 * ldmisc.c (vfinfo): Print BFD file name as well as file name
5573 returned by find_nearest_line, in case the file name is something
5574 unhelpful such as a .h file. Handle %u.
5575
5576 Wed Sep 14 12:49:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5577
5578 * ldlang.c (lang_do_assignments): Make sure output statement
5579 has an attached bfd_section before trying to dereference it.
5580
5581 Wed Sep 14 12:48:09 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5582
5583 * ld.h (ld_config_type): Add new field warn_once.
5584 * ldmain.c (undefined_symbol): Handle -warn-once.
5585 * lexsup.c (parse_args): Recognize -warn-once.
5586 * ld.texinfo (Options): Document -warn-once.
5587 * ld.1: Likewise.
5588
5589 * ldmisc.c (vfinfo): Handle %D as %C, but never print the function
5590 name. For %C, print the function name on a separate line, to keep
5591 the length of error messages under control.
5592 * ldmain.c (multiple_definition): Use %D for ``first defined
5593 here.''
5594 (undefined_symbol): Use %D for ``more undefined references
5595 follow''.
5596
5597 * ldmisc.c (multiple_warn): Remove; no longer used.
5598 * ldmisc.h (multiple_warn): Don't declare.
5599
5600 Tue Sep 13 20:47:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5601
5602 * ldlang.c (print_output_section_statement): Print all lines
5603 to the map file.
5604
5605 Tue Sep 13 16:30:11 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5606
5607 * ldlang.c (load_symbols): Check for archive before object. Use
5608 bfd_check_format_matches, and, if ambiguous, print a list of
5609 matching formats. If file format is not recognized, treat file as
5610 a linker script.
5611 * ldgram.y (yyerror): If assuming an object file is a script,
5612 mention that. Tweak the format of the error messages.
5613 * ldlex.l (lex_warn_invalid): If assuming an object is a script,
5614 guess that this is not actually a script, and just report that the
5615 file format was not recognized.
5616 * ld.texinfo (Options): Admit that -( may be used more than once.
5617 Add note that unrecognized object files are now treated as linker
5618 scripts.
5619
5620 * ldfile.c (ldfile_input_filename): Make const.
5621 (ldfile_assumed_script): New variable.
5622 (try_open): Change arguments types to const.
5623 (ldfile_find_command_file): Likewise.
5624 (ldfile_open_command_file): Likewise. Also, set lineno to 1.
5625 * ldfile.h: Update declarations for ldfile.c changes.
5626 * ldlex.l: Include <ctype.h>.
5627 (file_name_stack): Change to be const char *.
5628 (lineno_stack): New static variable.
5629 (<<EOF>>): Set lineno as well as ldfile_input_filename.
5630 (lex_push_file): Make name argument const. Initialize
5631 lineno_stack entry.
5632 (lex_redirect): Initialize lineno_stack entry.
5633 (lex_warn_invalid): Handle non printable characters nicely.
5634 * ldlex.h (lex_push_file): Declare second argument as const.
5635
5636 * ldgram.y (ifile_p1): Recognize GROUP.
5637 * ldlex.l: Recognize GROUP.
5638 * ld.texinfo (Option Commands): Document GROUP.
5639
5640 Mon Sep 12 17:04:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5641
5642 * config/m68klynx.mh: New file.
5643
5644 Mon Sep 12 01:50:03 1994 Jeff Law (law@snake.cs.utah.edu)
5645
5646 * emultempl/hppaelf.em: Add newlines to the error messages.
5647
5648 Sat Sep 10 16:05:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5649
5650 * config/i386lynx.mh: New file.
5651 * scripttempl/i386lynx.sc: Don't put .ctors and .dtors in .text
5652 unless CONSTRUCTING.
5653
5654 Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5655
5656 * emulparams/elf32mipb.sh (TEMPLATE_NAME): Define as elf32.
5657 (GENERATE_SHLIB_SCRIPT): Define as yes.
5658 (DYNAMIC_LINK): Define as false.
5659 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse):
5660 Initialize config.dynamic_link to DYNAMIC_LINK if it is defined.
5661 (gld${EMULATION_NAME}_place_orphan): Reset stat_ptr at end.
5662 * Makefile.in (eelf32mipb.c): Depend upon elf32.em rather than
5663 generic.em.
5664
5665 Thu Sep 8 16:30:37 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5666
5667 * scripttempl/h8500b.sc: Put rdata stuff into own segment.
5668
5669 Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5670
5671 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Don't define;
5672 .got section is now explicitly handled in elf.sc.
5673
5674 Wed Sep 7 13:08:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5675
5676 * scripttempl/alpha.sc: Redo script to set . outside of sections
5677 and not bother to explicitly specify section addresses.
5678 Explicitly place .sdata section.
5679
5680 Tue Sep 6 23:51:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5681
5682 * scripttempl/m68kcoff.sc: Put .bss in data segment.
5683
5684 * scripttempl/h8300.sc: Change .stab and .stabstr to use a VMA of
5685 0, and to only be marked as NOLOAD if relocating.
5686 * scripttempl/h8500.sc, scripttempl/h8500b.sc: Likewise.
5687 * scripttempl/h8500c.sc, scripttempl/h8500m.sc: Likewise.
5688 * scripttempl/h8500s.sc, scripttempl/i386coff.sc: Likewise.
5689 * scripttempl/i386go32.sc, scripttempl/i386lynx.sc: Likewise.
5690 * scripttempl/m68kcoff.sc, scripttempl/m68klynx.sc: Likewise.
5691 * scripttempl/sh.sc, scripttempl/sparccoff.sc: Likewise.
5692 * scripttempl/sparclynx.sc: Likewise.
5693
5694 Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
5695
5696 * Makefile.in, configure.in: Add support (disabled) the ARM/RISCiX.
5697 * config/riscix.mt, emulparams/riscix.sh, scripttempl/riscix.sc:
5698 New files.
5699
5700 Tue Aug 30 11:48:08 1994 Eric Youngdale (ericy@cais.cais.com)
5701
5702 * ld.h (args_type): Add field soname.
5703 * lexsup.c (parse_args): Handle -soname argument.
5704 * emultempl/elf32.em: In call to bfd_elf32_size_dynamic_sections,
5705 pass soname.
5706 * ld.texinfo: Document -soname.
5707
5708 Mon Aug 29 15:21:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5709
5710 * ldlang.c (lang_check): Don't try to set the architecture if the
5711 input and output files are incompatible. Just warn.
5712
5713 Wed Aug 24 12:52:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5714
5715 * configure.in: Change i[34]86 to i[345]86.
5716
5717 Sun Aug 21 16:17:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5718
5719 * emulparams/hp3hpux.sh: Define __DYNAMIC to be 0.
5720
5721 Thu Aug 18 15:37:45 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5722
5723 Make the ELF linker handle orphaned sections reasonably. Also,
5724 define __start_SECNAME and __stop_SECNAME around sections whose
5725 names can be represented in C, for the benefit of symbol sets in
5726 glibc.
5727 * ldemul.h (ldemul_place_orphan): Declare.
5728 (ld_emulation_xfer_type): Add place_orphan field.
5729 * ldemul.c (ldemul_place_orphan): New function.
5730 * ldlang.h (wild_doit): Declare.
5731 * ldlang.c (wild_doit): Make nonstatic.
5732 (lang_place_orphans): Call ldemul_place_orphan.
5733 * emultempl/elf32.em: Include <ctype.h> and "ldgram.h".
5734 (hold_section, hold_use, hold_text, hold_data, hold_bss): New
5735 static variables.
5736 (gld${EMULATION_NAME}_place_orphan): New static function.
5737 (gld${EMULATION_NAME}_place_section): New static function.
5738 (ld_${EMULATION_NAME}_emulation): Initialize place_orphan field.
5739
5740 Tue Aug 16 00:17:20 1994 Eric Youngdale (ericy@cais.cais.com)
5741
5742 * scripttempl/aout.sc: Add .linux-dynamic after .data.
5743
5744 Tue Aug 16 00:08:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5745
5746 * lexsup.c (parse_args) Treat --dll-verbose as --version, for
5747 Linux compatibility. From hjl@nynexst.com (H.J. Lu).
5748
5749 Mon Aug 15 17:17:33 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5750
5751 * ldexp.h (exp_get_abs_int): Declare.
5752
5753 Sat Aug 6 01:45:39 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5754
5755 * ldlang.c (lang_do_assignments): Handle complex AT's better.
5756 * ldexp.c (exp_get_abs_int): New function.
5757
5758 Fri Aug 5 20:55:55 1994 Jason Molenda (crash@phydeaux.cygnus.com)
5759
5760 * configure.in: add i960-nindy-coff support.
5761
5762 Thu Aug 4 14:45:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5763
5764 * ldlex.l (yy_create_string_buffer): Handle change to internal
5765 interface in flex 2.4.7.
5766
5767 Tue Aug 2 11:52:06 1994 Eric Youngdale (ericy@cais.cais.com)
5768
5769 * emultempl/linux.em (gld${EMULATION_NAME}_find_address_statement):
5770 New function; add 0x20 to any use of -Ttext.
5771 (gld${EMULATION_NAME}_create_output_section_statements): New
5772 function.
5773 (ld_${EMULATION_NAME}_emulation): Use the new function
5774 gld${EMULATION_NAME}_create_output_section_statements.
5775
5776 Mon Aug 1 15:50:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5777
5778 * scripttempl/mips.sc: Redo script to set . outside of sections
5779 and not bother to explicitly specify section addresses.
5780
5781 Tue Jul 26 11:02:35 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5782
5783 * scripttempl/elf.sc: Copy several more relocation sections into
5784 the output. Put .got.plt sections into .got.
5785
5786 Fri Jul 22 12:15:36 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5787
5788 * scripttempl/elf.sc: Use PROVIDE to define etext, edata, and end.
5789
5790 Add a new script operator, PROVIDE, to define a symbol only if it
5791 is needed.
5792 * ldgram.y (PROVIDE): New token.
5793 (assignment): Accept PROVIDE.
5794 * ldlex.l (PROVIDE): New token.
5795 * ldexp.h (node_type): Add etree_provide to node_class enum.
5796 (exp_provide): Declare.
5797 * ldexp.c (exp_fold_tree): Handle etree_provide.
5798 (exp_provide): New function.
5799 (exp_print_tree): Handle etree_provide.
5800 * ld.texinfo: Document PROVIDE.
5801
5802 * ldlang.c (lang_common): Pass desired alignment to
5803 lang_one_common as power of two.
5804 (lang_one_common): Get common symbol alignment from linker hash
5805 table entry. Treat desired alignment as a power of two.
5806
5807 * ldlang.c (wild_section): Attach all section with the given name,
5808 not just the first one. If there is no name, attach all sections
5809 even if the SEC_IS_COMMON flag is set.
5810
5811 Wed Jul 20 15:49:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5812
5813 * ld.h (args_type): Add field rpath.
5814 * lexsup.c (S_ISDIR): Define if not already defined.
5815 (parse_args): Add support for -rpath. If -R is used to name a
5816 directory, treat it as -rpath for Solaris compatibility.
5817 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
5818 Pass command_line.rpath to bfd_elf32_size_dynamic_sections.
5819 * ldmain.c (main): Initialize command_line.rpath to NULL.
5820 * ld.texinfo: Document -rpath option.
5821
5822 Sun Jul 10 00:33:24 1994 Ian Dall (dall@hfrd.dsto.gov.au)
5823
5824 * emulparams/pc532machaout.sh: New file. Pc532 mach script
5825 parameters.
5826
5827 * emulparams/netbsd532.sh: New file. Netbsd 532 script parameters.
5828
5829 * config/pc532mach.mt: New file. Pc532 mach target support.
5830
5831 * config/pc532mach.mh: New file. Pc532 mach host support.
5832
5833 * config/netbsd532.mt: New file. Netbsd 532 target support.
5834
5835 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd support.
5836
5837 * Makefile.in: Add epcmachaout.c dependency and enetbsd532.c
5838 dependency.
5839
5840 Fri Jul 8 10:57:02 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5841
5842 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Use
5843 bfd_abs_section_ptr, not &bfd_abs_section.
5844
5845 * lexsup.c (parse_args): Changed "retain-symbols-file" from
5846 no_argument to required_argument. From djm.
5847
5848 Thu Jul 7 12:29:53 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5849
5850 * scripttempl/elf.sc: Explicitly mention .stab and .stabstr
5851 sections to force a VMA of 0; needed for ELF backends which have
5852 not been converted to the new linker style.
5853
5854 Mon Jul 4 19:35:45 1994 Jeff Law (law@snake.cs.utah.edu)
5855
5856 * scripttempl/hppaelf.sc (__stack_zero): Don't define this name,
5857 it was for the HPUX dynamic loader's use and it creates problems
5858 with ELF GDB.
5859
5860 Fri Jul 1 12:53:47 1994 Jeff Law (law@snake.cs.utah.edu)
5861
5862 * ldlang.c (lang_do_assignments): No longer static. Delete decl.
5863 * ldlang.h (lang_do_assignments): Put external decl here.
5864 * emultempl/hppaelf.em: Minor cleanups throughout file.
5865 (hppa_elf_create_output_section_statements): Rewrite.
5866 (hppaelf_finish): Rewrite.
5867
5868 Wed Jun 29 16:50:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5869
5870 * config/solaris2.mh (NATIVE_LIB_DIRS): Define as /usr/ccs/lib.
5871
5872 * lexsup.c (parse_args): Accept -Bstatic and -Bdynamic. Do not
5873 accept plain -B.
5874 * ld.texinfo: -Bstatic is not ignored.
5875
5876 Tue Jun 28 12:13:34 1994 Stan Shebs (shebs@andros.cygnus.com)
5877
5878 * ldlex.l: Recognize \r the same as \n.
5879
5880 Thu Jun 23 17:53:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5881
5882 Preliminary support for generating shared libraries, from Eric
5883 Youngdale <ericy@cais.cais.com>.
5884 * genscripts.sh: If the emulation parameter file sets
5885 GENERATE_SHLIB_SCRIPT, generate a .xs script file with
5886 CREATE_SHLIB defined.
5887 * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): If
5888 link_info.shared is set, use the .xs script file.
5889 * scripttempl/elf.sc: If CREATE_SHLIB is set, don't create a
5890 .interp section, and don't include TEXT_START_ADDR in the starting
5891 address of the first section.
5892 * emulparams/elf_i386.sh (GENERATE_SHLIB_SCRIPT): Likewise.
5893 * emulparams/elf32_sparc.sh (GENERATE_SHLIB_SCRIPT): Define.
5894
5895 Thu Jun 23 12:52:22 1994 David J. Mackenzie (djm@rtl.cygnus.com)
5896
5897 * configure.in: Change --with-targets to --enable-targets.
5898
5899 Wed Jun 22 13:42:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5900
5901 * lexsup.c (parse_args): Add support for new options -( -) with
5902 synonyms --start-group --end-group.
5903 * ldlang.h (enum statement_enum): Add lang_group_statement_enum.
5904 (lang_group_statement_type): Define new struct.
5905 (lang_statement_union_type): Add group_statement field.
5906 (lang_enter_group, lang_leave_group): Declare.
5907 * ldlang.c (lang_for_each_statement_worker): Handle
5908 lang_group_statement_enum.
5909 (map_input_to_output_sections, print_statement): Likewise.
5910 (lang_size_sections, lang_do_assignments): Likewise.
5911 (open_input_bfds): Completely rewrite. Now does its own looping,
5912 rather than using lang_for_each_statement. Handle groups.
5913 (lang_process): Update call to open_input_bfds.
5914 (print_group): New static function.
5915 (lang_enter_group, lang_leave_group): New static functions.
5916 * ldfile.c (ldfile_open_file): If the file has already been
5917 opened, just return rather than taking an assertion failure.
5918 * ldver.c (help): Mention new options.
5919 * ld.texinfo: Document new options.
5920
5921 * ldlang.c (end_of_data_section_statement_list): Don't define.
5922 (lang_leave_output_section_statement): Don't set obsolete variable
5923 end_of_data_section_statement_list.
5924
5925 * scripttempl/go32coff.sc: Don't put ${DATA_ALIGNMENT} inside an
5926 ALIGN.
5927
5928 * ldlang.c (lang_size_sections): Adjust current region address
5929 even for sections with an explicit address. From
5930 ralphc@pyramid.com (Ralph Campbell).
5931
5932 * emulparams/i386linux.sh (NONPAGED_TEXT_START_ADDR): Set to 0.
5933 From jrs@world.std.com (Rick Sladkey).
5934
5935 * scripttempl/mipsbsd.sc: Let sections align to their natural
5936 boundaries.
5937
5938 Tue Jun 21 11:27:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
5939
5940 * ldlang.c (lang_init): Use new bfd_abs_section_ptr, not
5941 &bfd_abs_section.
5942 (lang_abs_symbol_at_beginning_of): Likewise.
5943 (lang_abs_symbol_at_end_of): Likewise.
5944 (lang_size_sections): Use bfd_is_abs_section to check for the
5945 absolute section. Don't try to set the VMA or output_offset or
5946 size of the absolute section.
5947 * ldmain.c (notice_ysym): Use bfd_is_und_section to check for the
5948 undefined section.
5949
5950 Thu Jun 16 22:48:41 1994 Jeff Law (law@snake.cs.utah.edu)
5951
5952 * scripttempl/hppaelf.sc: Place .data and .bss at 0x40000000
5953 when generating relocatable objects.
5954
5955 Thu Jun 16 14:25:22 1994 Eric Youngdale (ericy@cais.cais.com)
5956
5957 * emultempl/linux.em: New file providing support for linking
5958 against Linux shared libraries.
5959 * config/i386-linux.mt (ei386linux.c): Depend upon linux.em.
5960 * emulparams/i386linux.sh (TEMPLATE_NAME): Define as linux.
5961
5962 Thu Jun 16 12:22:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5963
5964 * lexsup.c (parse_args): Add -shared to longopts, and handle it.
5965 * ldmain.c (main): Initialize link_info.shared to false. Give
5966 error if link_info.relocateable and link_info.shared are both set.
5967
5968 * configure.in: If EMUL_EXTRA* is defined in a config file, treat
5969 it as naming an emulation to be added to EMULATION_OFILES.
5970 * config/i386-linux.mt (EMUL_EXTRA1): Define as elf_i386.
5971
5972 * Makefile.in: Rebuilt dependencies.
5973 (ALL_EMULATIONS): Add ei386linux.o, eelf32_sparc.o,
5974 eelf64_sparc.o. Remove $(OTHER_EMULATIONS).
5975 (ei386linux.c, eelf32_sparc.c, eelf64_sparc.c): New targets.
5976 * config/i386-linux.mt (OTHER_EMULATIONS): Don't define.
5977 (ei386linux.c): Remove; now in Makefile.in.
5978 * config/i386-lynx.mt (OTHER_EMULATIONS): Don't define.
5979 * config/m68k-lynx.mt (OTHER_EMULATIONS): Don't define.
5980 * config/sparc-lynx.mt (OTHER_EMULATIONS): Don't define.
5981 * config/sparc64-elf.mt (OTHER_EMULATIONS): Don't define.
5982 (eelf64_sparc.c): Remove; now in Makefile.in.
5983 * config/sun4sol2.mt (OTHER_EMULATIONS): Don't define.
5984 (eelf32_sparc.c): Remove; now in Makefile.in.
5985
5986 * ldexp.c (exp_print_tree): Don't crash if etree_rel section has
5987 no owner--it might be bfd_abs_section. From Eric Youngdale
5988 <ericy@cais.cais.com>.
5989
5990 * scripttempl/aout.sc: Let sections align to their natural
5991 boundaries.
5992
5993 Wed Jun 15 01:54:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5994
5995 * ldemul.h (ldemul_open_dynamic_archive): Declare.
5996 (ld_emulation_xfer_type): Add new field open_dynamic_archive.
5997 * ldemul.c: Include ldexp.h and ldlang.h.
5998 (ldemul_open_dynamic_archive): New function.
5999 * ldfile.h (ldfile_open_file_search): Declare.
6000 * ldfile.c: Include ldemul.h.
6001 (try_open_bfd): Rename from cache_bfd_openr. Return boolean
6002 argument, not bfd *. Change all callers.
6003 (ldfile_open_file_search): Rename from open_a. Return boolean
6004 argument, not bfd *. Clean up. Change all callers.
6005 (ldfile_open_file): If doing a dynamic link, call
6006 ldemul_open_dynamic_archive rather than assuming the extension of
6007 a dynamic object is ".so".
6008 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
6009 New function.
6010 (ld_${EMULATION_NAME}_emulation): Initialize open_dynamic_archive
6011 field.
6012 * emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise.
6013
6014 * ldmain.c (get_emulation): Ignore -m486 for Linux compatibility.
6015 * lexsup.c (parse_args): Ignore -qmagic for Linux compatibility.
6016 Accept -static as a synonym for -non_shared.
6017
6018 Let the user change the dynamic linker used by ELF code.
6019 * ld.h (args_type): Add new field interpreter.
6020 * lexsup.c (parse_args): Add dynamic-linker to longopts, and
6021 handle it.
6022 * ldmain.c (main): Initialize command_line.interpreter to NULL.
6023 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Get
6024 the ELF backend to return the .interp section. If
6025 command_line.interpreter is not NULL, set the contents of .interp
6026 to it.
6027 * ld.texinfo: Mention -dynamic-linker.
6028
6029 * config/sun4sol2.mt (eelf32_sparc.c): Depend upon elf32.em, not
6030 generic.em.
6031
6032 * lexsup.c (parse_args): Sort out the option macros and change the
6033 definitions to make it easier to add a new option.
6034
6035 * scripttempl/aout.sc: Define __etext and __edata to go along with
6036 _etext and _edata.
6037
6038 * ld.h (ld_config_type): Add new field traditional_format.
6039 * lexsup.c (parse_args): Add traditional-format to longopts, and
6040 handle it.
6041 * ldmain.c (main): Initialize config.traditional_format to false.
6042 * ldlang.c (ldlang_open_output): Set BFD_TRADITIONAL_FORMAT in BFD
6043 flags of output_bfd according to config.traditional_format.
6044 * ldver.c (help): Mention -traditional-format.
6045 * ld.texinfo: Document -traditional-format.
6046
6047 Tue Jun 14 23:10:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6048
6049 * ldctor.c (ldctor_add_entry): Add entries to a set in the order
6050 they are encountered.
6051
6052 Tue Jun 14 18:05:09 1994 Eric Youngdale (ericy@cais.cais.com)
6053
6054 * emulparams/i386linux.sh (TEXT_START_ADDR): Define as 0x1000.
6055 (NONPAGED_TEXT_START_ADDR): Define as 0x20.
6056
6057 Mon Jun 13 15:46:09 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6058
6059 * scripttempl/alpha.sc: Define _ftext, _etext and _fdata insted of
6060 _FTEXT, _ETEXT and _FDATA. Dont define _END.
6061
6062 * ldfile.c (open_a): If this is not an archive, try to open it in
6063 the current directory before searching for it.
6064
6065 * lexsup.c (parse_args): Treat -i as a synonym for -r.
6066
6067 * ldgram.y (exp): Treat BLOCK as a synonym for ALIGN, so that
6068 BLOCK works in a section address as documented.
6069
6070 * ldgram.y (YYDEBUG): Don't define.
6071
6072 Fri Jun 10 16:45:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6073
6074 * emultempl/gld960.em: Pass false for new argument to
6075 ldfile_add_library_path.
6076 * emultempl/gld960c.em, emultempl/lnk960.em: Likewise.
6077
6078 * emultempl/sunos.em: Only look for .so files if doing a dynamic
6079 link.
6080
6081 Thu Jun 9 08:35:17 1994 Ian Lance Taylor (ian@cygnus.com)
6082
6083 * scripttempl/i960.sc: Add CONSTRUCTORS to .data.
6084
6085 Thu Jun 9 06:52:29 1994 Bill Cox (bill@rtl.cygnus.com)
6086
6087 * Makefile.in (check): Delete ld.new dependency so that a regression
6088 test doesn't trigger a rebuild of the linker.
6089
6090 Thu Jun 9 00:17:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6091
6092 * ldlang.c (map_input_to_output_sections): For lang_address, call
6093 init_os if it hasn't already been called.
6094
6095 Thu Jun 2 17:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6096
6097 Add support for SunOS shared libraries.
6098 * aout.sc: Don't define __DYNAMIC here. Add new sections used by
6099 shared library support code.
6100 * emultempl/sunos.em: New file.
6101 * emulparams/sun4.sh (TEMPLATE_NAME): Define as sunos.
6102 * emulparams/sun3.sh (TEMPLATE_NAME): Likewise.
6103 * Makefile.in (esun4.c): Depend upon sunos.em, not generic.em.
6104 (esun3.c): Likewise.
6105
6106 * ldlang.c: Minor formatting cleanups.
6107 (lang_for_each_input_file): New function.
6108 * ldlang.h (lang_for_each_input_file): Declare.
6109
6110 * ldfile.h (search_dirs_type): Move from ldfile.c, and add cmdline
6111 field.
6112 (search_head): Declare.
6113 (ldfile_add_library_path): Add new cmdline argument in prototype.
6114 * ldfile.c (search_head): Make non-static.
6115 (search_dirs_type): Move to ldfile.h.
6116 (ldfile_add_library_path): Accept cmdline argument, and save it.
6117 * lexsup.c (parse_args): Pass true for new cmdline argument of
6118 ldfile_add_library_path.
6119 (set_default_dirlist): Likewise.
6120 * ldmain.c (check_for_scripts_dir): Pass false for new cmdline
6121 argument of ldfile_add_library_path.
6122 * ldgram.y (ifile_p1): Likewise.
6123
6124 Wed Jun 1 14:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6125
6126 * ldlang.h (lang_input_statement_type): Remove fields subfiles,
6127 total_size, superfile and chain.
6128 * ldfile.c (open_a): Don't clear search_dirs_flag.
6129 (ldfile_open_file): Don't try to open superfile. Assert that file
6130 has not already been opened.
6131 * ldlang.c (new_afile): Don't initialize superfile.
6132 * ldmain.c (add_archive_element): Don't initialize subfiles or
6133 chain or superfile. Initialize search_dirs_flag to false.
6134
6135 Fri May 27 12:25:33 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6136
6137 * ldver.c (ldversion): Changed version to "cygnus-2.4.1".
6138
6139 Changes from binutils-2.4 release:
6140
6141 * genscripts.sh (RELOCATING, CONSTRUCTING): When setting
6142 variables, use whitespace, so scripts don't break.
6143
6144 * config/alphaosf.mh (HDEFINES, CFLAGS): Deleted.
6145
6146 * emultempl/generic.em: Find emultempl/stringify.sed in ${srcdir}.
6147
6148 * cdtest-bar.cc: Renamed from cdtest-func.cc.
6149 * Makefile.in: Noted change.
6150
6151 * scripttempl/a29k.sc: Don't include /lab3/u3/..../segments.o; I
6152 don't know where that's supposed to come from, or why it's
6153 necessary.
6154
6155 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
6156
6157 * configure.bat: update to latest makefile.in
6158 * emulpara/go32.sh: set to coff-go32 not aout
6159 * emultemp/generic.em: strength-reduce the structure of
6160 this shell script, since the only available shell for
6161 DOS can't handle complex syntax.
6162 * emultemp/stringify.sed: for "sed -f" instead of inline.
6163 * makefile.in: depend on stringify.sed as well as genscripts.sh
6164 * scripttemp/go32coff.sc: correct for djgpp 1.11's COFF format
6165 * genscripts.sh: empty variables aren't always considered "set",
6166 so set them to "y" instead.
6167
6168 Fri May 27 01:08:14 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6169
6170 * ldlang.c (entry_symbol): Make static.
6171 (lang_add_entry): Add cmdline argument.
6172 * ldlang.h (lang_add_entry): Change prototype.
6173 * ldgram.y (statement_anywhere): Change lang_add_entry call.
6174 * lexsup.c (parse_args): Likewise.
6175
6176 Tue May 24 16:13:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6177
6178 * emulparams/elf32mipb.sh (OTHER_READONLY_SECTIONS): Don't give
6179 .reginfo an address.
6180 (OTHER_READWRITE_SECTIONS): Don't give .lit4 or .lit8 an address.
6181 (OTHER_SECTIONS): Define for .gptab.sdata and .gptab.sbss.
6182 * scripttempl/elf.sc: Use OTHER_SECTIONS at end of script.
6183
6184 Thu May 19 13:31:33 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6185
6186 Add support for ELF shared libraries.
6187 * ld.h (ld_config_type): Add field dynamic_link.
6188 * ldmain.c (main): Initialize config.dynamic_link to false. Warn
6189 on attempts to use -r with -relax, -call_shared or -s.
6190 * lexsup.c (longopts): Separate OPTION_CALL_SHARED from
6191 OPTION_NON_SHARED. Add OPTION_IGNORE. Adjust macro values
6192 accordingly. Add "dy" and "non_shared" options. Change "Qy" to
6193 OPTION_IGNORE for now. Handle OPTION_CALL_SHARED and
6194 OPTION_NON_SHARED by setting dynamic_link field accordingly.
6195 Handle OPTION_IGNORE by ignoring it. Clear dynamic_link field for
6196 -r and -Ur.
6197 * ldfile.c (ldfile_open_file): If config.dynamic_link is true, try
6198 opening a file with a .so extension first.
6199 * emultempl/elf32.em: New file.
6200 * emulparams/elf32_sparc.sh (TEXT_START_ADDR): Change to 0x10000.
6201 (NONPAGED_TEXT_START_ADDR): Likewise.
6202 (TEMPLATE_NAME): Define as elf32.
6203 (DATA_PLT): Define.
6204 * emulparams/elf_i386.sh (TEMPLATE_NAME): Define as elf32.
6205 * scripttempl/elf.sc: Add placement for new dynamic sections.
6206 Don't use CREATE_OBJECT_SYMBOLS. Define _etext, _edata and _end
6207 outside of any section. Don't use ALIGN(8); just let one section
6208 VMA follow another. Put .dynbss in .bss. Don't mention debugging
6209 sections; they'll be handled correctly anyhow.
6210 * Makefile.in (eelf_i386.c): Depend upon elf32.em, not generic.em.
6211
6212 Wed May 18 10:15:39 1994 Ian Lance Taylor (ian@cygnus.com)
6213
6214 * Makefile.in (install): Redirect output of ln to /dev/null.
6215
6216 Mon May 16 13:35:08 1994 Jeff Law (law@snake.cs.utah.edu)
6217
6218 * emultempl/hppaelf.em: Change all references of
6219 .hppa_linker_stubs to .PARISC.stubs.
6220 * scripttempl/hppaelf.sc: Likewise.
6221
6222 Fri May 13 13:00:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6223
6224 * ldlang.c (print_output_section_statement): Change ``no attached
6225 output section'' message slightly.
6226 (lang_do_assignments): Don't recurse down if there is no real
6227 section.
6228
6229 * config/i386-linux.mt (OTHER_EMULATIONS): Change em_ to e to
6230 match corresponding change in emulation templates.
6231 * config/i386-lynx.mt, config/m68k-lynx.mt: Likewise.
6232 * config/sparc-lynx.mt, config/sun4sol2.mt: Likewise.
6233
6234 Wed May 11 18:16:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6235
6236 * ldver.c (ldversion): Updated version number.
6237
6238 * cdtest-foo.cc: Use explicit "#pragma implementation".
6239 * cdtest-bar.cc: Renamed from cdtest-func.cc.
6240 * Makefile.in: References to cdtest-func.o changed to
6241 cdtest-bar.o.
6242
6243 Wed May 11 16:24:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6244
6245 Don't create unnecessary output sections.
6246 * ldlang.c (out_bfd_get_section_by_name): Remove.
6247 (wild_section): Call bfd_get_section_by_name rather than
6248 our_bfd_get_section_by_name. Don't call wild_doit if there is no
6249 section.
6250 (lang_create_output_section_statements): Remove.
6251 (map_input_to_output_sections): For several cases, call init_os if
6252 it has not already been called.
6253 (lang_size_sections): If output section was not created, skip it.
6254 (lang_process): Don't call lan_create_output_section_statements.
6255 (lang_place_orphans): Skip files with just_syms_flags set to true.
6256 * ld.texinfo: Document change.
6257
6258 Tue May 10 14:31:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6259
6260 * ldlang.c (wild_doit): Don't bother initializing the vma and
6261 section size. Don't special case SEC_SHARED_LIBRARY.
6262 (lang_size_sections): Handle SEC_COFF_SHARED_LIBRARY sections
6263 specially.
6264
6265 Fri May 6 12:24:27 1994 Steve Chamberlain (sac@cygnus.com)
6266
6267 * config/go32.mh : New file for Xgo32X.
6268
6269 Fri May 6 15:15:35 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6270
6271 * ldfile.c (ldfile_open_command_file): Set bfd_error_system_call
6272 before calling einfo, since we are reporting an fopen failure.
6273 From jrs@world.std.com (Rick Sladkey).
6274
6275 * configure.in: Use "e" rather than "em_" as prefix for
6276 emulations.
6277
6278 Fri May 6 01:08:14 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6279
6280 * emultempl/generic.em: Use "e" rather than "em_" as prefix for
6281 filename.
6282 * emultempl/gld960.em, emultempl/gld960c.em, emultempl/lnk960.em,
6283 emultempl/hppaelf.em, emultempl/m88kbcs.em, emultempl/vanilla.em:
6284 Ditto.
6285 * Makefile.in: Changed all generated file names.
6286 (ldemul-list.h): Depend on Makefile, not config.status. Changed
6287 sed patterns to handle new filenames.
6288
6289 * config/mipsl-idt.mt: Renamed from mips-idtl.mt.
6290 * configure.in: Adjusted.
6291
6292 Thu May 5 15:07:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6293
6294 * Makefile.in (install-info): Don't use "$<*", it doesn't always
6295 work. Instead, check build dir and $srcdir explicitly, and use
6296 `echo' to get all the filenames.
6297
6298 * configure.in (h8300h-*-hms): Changed ld_target name to
6299 cf-h8300h.
6300 * config/cf-h8300h.mt: Renamed from coff-h8300h.mt, to make it
6301 unique in 8.3.
6302
6303 * config/i960coff.mt: New file.
6304 * emulparams/gld960coff.sh: New file.
6305 * emultempl/gld960c.em: New file.
6306 * configure.in (i960-*-vxworks5* except -vxworks5.0*): Use
6307 i960coff configuration.
6308 * Makefile.in (em_gld960coff.c): Added dependencies, build rule.
6309
6310 * Makefile.in (ALL_EMULATIONS): Remove em_delta68.o, since the
6311 code isn't included in FSF releases, and it can still be
6312 explicitly selected.
6313 (distclean): Remove site.bak and tmpdir.
6314 (STAGESTUFF): Removed $(GENERATED_CFILES) $(GENERATED_HFILES).
6315 (mostlyclean): Delete them explicitly here. Also remove tmpdir.
6316
6317 Patches from Ralph Campbell:
6318 * config/mipsbsd.mh: New file.
6319 * Makefile.in (em_mipsbsd.c): Use mipsbsd.sc, not aout.sc.
6320 * scripttempl/mipsbsd.sc: Don't define __DYNAMIC.
6321 * emulparams/mipsbsd.sh (OUTPUT_FORMAT): Fix name to have `a.out'
6322 instead of `aout'.
6323
6324 * configure.in (i386-*-gnu*): Treat like i386-*-mach*.
6325
6326 Wed May 4 11:59:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6327
6328 * config/m68k.mt (EMUL): Set to m68kaout.
6329 * emulparams/m68kaout.sh: New file.
6330 * Makefile.in (ALL_EMULATIONS): Add em_m68kaout.o.
6331 (em_m68kaout.c): New target.
6332
6333 * ldlang.c (lang_size_sections): If dot moves because of an
6334 assignment, don't try to insert a pad into the absolute output
6335 section, just change the address of the default memory region
6336 instead.
6337
6338 * Makefile.in (mostlyclean): Remove cdtest.tmp, cdtest-ur,
6339 cdtest-ur.out, and cdtest-ur.tmp.
6340
6341 Wed Apr 27 16:03:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6342
6343 * scripttempl/sa29200.sc: Align all sections to four byte
6344 boundaries.
6345
6346 Wed Apr 27 10:48:03 1994 Steve Chamberlain (sac@cygnus.com)
6347
6348 * Makefile.in, configure.in: Support for go32 coff.
6349 * config/i386-go32.mt: New file
6350 * emulparams/i386go32.sh: New file
6351 * scripttempl/i386go32.sc: New file
6352
6353 Tue Apr 26 17:20:03 1994 Stan Shebs (shebs@andros.cygnus.com)
6354
6355 * Makefile.in (em_m68klynx.c, em_i386lynx.c, em_sparclynx.c): Use
6356 Lynx-specific script templates.
6357 * configure.in (sparclite*-*-coff): Use coff-sparc.
6358 * emulparams/i386lynx.sh (SCRIPT_NAME): Set to i386lynx.
6359 * emulparams/sparclynx.sh (SCRIPT_NAME): Set to sparclynx.
6360 (ENTRY): Set to __main.
6361 * scripttempl/i386lynx.sc: New file, script for I386 Lynx.
6362 * scripttempl/m68klynx.sc: Add insertion of ctor/dtor sections.
6363 * scripttempl/sparclynx.sc: New file, script for uSparc Lynx.
6364
6365 Tue Apr 26 12:41:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6366
6367 * scripttempl/mips.sc: Force _gp and .lit8 to be aligned to a 16
6368 byte boundary, in case the global constructors do not take up an
6369 even 16 bytes.
6370
6371 * config/i386v4.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
6372 exist, get crtbegin based on gcc -print-libgcc-file-name.
6373 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
6374
6375 Mon Apr 25 15:27:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6376
6377 * ldlang.c (lang_size_sections): When no address is given for a
6378 section, align it according to its requirements.
6379
6380 Thu Apr 21 17:24:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6381
6382 * Makefile.in (clean, distclean): Remove configdoc.texi.
6383
6384 Tue Apr 19 12:12:15 1994 Bill Cox (bill@rtl.cygnus.com)
6385
6386 * configure.in: Add i[34]86-*-bsd386 to the patterns recognized.
6387
6388 Fri Apr 15 14:35:42 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6389
6390 * ldlang.c (lang_size_sections): When relaxing, adjust the
6391 position of a padding statement, and adjust dot accordingly.
6392
6393 Mon Apr 11 17:37:09 1994 Bill Cox (bill@rtl.cygnus.com)
6394
6395 * Makefile.in (EXPECT, RUNTEST): Set these for the check goal.
6396
6397 Mon Apr 11 12:32:57 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6398
6399 * scripttempl/i386coff.sc: If relocating, don't put .init and
6400 .fini sections into .text; keep them separate.
6401 * config/i386sco.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
6402 exist, get crtbegin based on gcc -print-libgcc-file-name.
6403 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
6404
6405 Mon Apr 11 10:31:00 1994 Bill Cox (bill@rtl.cygnus.com)
6406
6407 * Makefile.in (check): Set TCL_LIBRARY for runtest.
6408
6409 Wed Apr 6 00:09:37 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6410
6411 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
6412 manufacturer.
6413
6414 * emultempl/hppaelf.em (hppaelf_finish): Only resize sections
6415 if building a final executable.
6416
6417 Tue Apr 5 12:17:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6418
6419 * ldmain.c (main): Check the return value of bfd_close.
6420
6421 Thu Mar 31 18:07:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6422
6423 * scripttempl/alpha.sc: Clean up section alignment to ensure that
6424 sections never overlap when using -r.
6425
6426 Wed Mar 30 15:51:15 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6427
6428 * ldmisc.c (vfinfo): Change symbol reading slightly for recent BFD
6429 changes: get_symtab_upper_bound renamed and returns long,
6430 bfd_canonicalize_symtab returns long, check for error indications.
6431
6432 Fri Mar 25 17:20:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6433
6434 * ldlang.c (print_input_section): For section size, use
6435 _cooked_size if it is non-zero, size otherwise.
6436 (size_input_section): Likewise.
6437 (lang_do_assignments): Likewise (case lang_input_section_enum).
6438
6439 Thu Mar 24 15:20:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6440
6441 * ldlang.c (new_afile): Add new argument add_to_list. Don't set
6442 real to true for lang_input_file_is_marker_enum. Clear the_bfd.
6443 (lang_add_input_file): Pass true to new_afile for add_to_list.
6444 (lookup_name): Remove force_load argument. Changed all callers.
6445 Pass false to new_afile for add_to_list. Split loading of symbols
6446 out into separate function.
6447 (load_symbols): New function split out of lookup_name. Don't load
6448 the symbols if they are already loaded.
6449 (open_input_bfds): For lang_input_statement_enum call load_symbols
6450 rather than lookup_name.
6451 (lang_process): Pass abs_output_section rather than NULL to
6452 lang_size_sections.
6453 (lang_startup): Set real field of first_file to true.
6454
6455 Wed Mar 23 14:15:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6456
6457 * ldlang.c (had_relax): Removed.
6458 (relax_again): New static variable.
6459 (lang_size_sections): Change call to bfd_relax_section to
6460 correspond to BFD changes. Set relax_again appropriately.
6461 (lang_process): Remove #if 0 code. When relaxing, keep calling
6462 lang_do_assignments and lang_size_sections until relax_again
6463 becomes false.
6464
6465 * emultemp/gld960.em: Include libiberty.h
6466 (gld960_before_parse): Pass NULL as final argument to concat.
6467
6468 Tue Mar 22 13:08:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6469
6470 * scripttempl/aout.sc: Force _end and __end to be aligned to a
6471 four byte boundary.
6472
6473 * ldwrite.c (build_link_order): Handle lang_data_statement_enum by
6474 building a bfd_data_link_order, rather than by setting the section
6475 contents immediately.
6476
6477 Mon Mar 21 18:28:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6478
6479 Changes to make -Ur work again.
6480 * ldmain.c (add_to_set): Now takes reloc argument rather than
6481 bitsize. Check config.build_constructors here. If an new hash
6482 table entry is created, mark it as undefined.
6483 (constructor_callback): No longer takes bitsize argument. Pass
6484 BFD_RELOC_CTOR to ldctor_add_set_entry, but first make sure the
6485 BFD backend supports it.
6486 (reloc_overflow): Handle a NULL abfd argument.
6487 (reloc_dangerous, unattached_reloc): Likewise.
6488 * ldctor.c: Include ldmain.h.
6489 (struct set_info): Change bitsize field to reloc.
6490 (ldctor_add_set_entry): Now takes reloc argument rather than
6491 bitsize. Don't bother to check config.build_constructors here.
6492 (ldctor_build_sets): Get the size from the reloc howto. If
6493 generating relocateable output, call lang_add_reloc rather than
6494 lang_add_data.
6495 * ldctor.h (ldctor_add_set_entry): Change declaration to use reloc
6496 instead of bitsize.
6497 * ldlang.h (statement_enum): Add lang_reloc_statement_enum.
6498 (lang_reloc_statement_type): New structure.
6499 (lang_statement_union_type): Add reloc_statement field.
6500 (lang_add_reloc): Declare new function.
6501 * ldlang.c (lang_for_each_statement_worker): Handle
6502 lang_reloc_statement_enum.
6503 (map_input_to_output_sections, print_statement): Likewise.
6504 (lang_size_sections, lang_do_assignments): Likewise.
6505 (print_reloc_statement): New function.
6506 (lang_add_reloc): New function.
6507 * ldwrite.c (build_link_order): Handle lang_reloc_statement_enum.
6508
6509 * Makefile.in (cdtest.out, cdtest-ur.o): New targets.
6510 (cdtest-ur, cdtest-ur.out): New targets.
6511 (check-cdtest): Now also check that -Ur works correctly.
6512
6513 * scripttemp/alpha.sc: Align all sections to 16 byte boundaries.
6514
6515 Thu Mar 17 12:45:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6516
6517 * ldlang.c (lang_process): Move lang_common call before
6518 map_input_to_output_sections, to ensure that any alignment
6519 constraints set by common symbols are copied over to the output
6520 sections.
6521
6522 Fri Mar 11 22:17:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6523
6524 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Don't define.
6525 (OTHER_READWRITE_SECTIONS): Rename .toc to .got.
6526 * Makefile.in (em_elf32ppc.c): Depend upon generic.em, not ppc.em.
6527 * emultempl/ppc.em: Remove ugly stub code; turns out not to be
6528 needed for ELF.
6529
6530 Tue Mar 8 04:22:27 1994 David J. Mackenzie (djm@rtl.cygnus.com)
6531
6532 * config/i386bsd.mh: New file.
6533
6534 Mon Mar 7 15:23:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6535
6536 * elf.sc: Permit TEXT_START_SYMBOLS and DATA_START_SYMBOLS to be
6537 defined.
6538 * emulparams/elf32mipb.s (TEXT_START_SYMBOLS): Define _ftext.
6539 (DATA_START_SYMBOLS): Define _fdata.
6540
6541 Mon Feb 28 10:59:14 1994 Stan Shebs (shebs@andros.cygnus.com)
6542
6543 * ldlang.c (cat): Define using ANSI style if ALMOST_STDC defined.
6544
6545 Sun Feb 27 16:29:38 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6546
6547 * emultempl/hppaelf.em (hppaelf_finish): Update comments. This
6548 works again. Attach some output symbols to the stub file bfd.
6549
6550 * emultempl/hppaelf.em: Include elf32-hppa.h.
6551 (file_chain): Add decl.
6552 (hppa_look_for_stubs_in_section): Delete decl.
6553 (hppaelf_finish): Reenable code. Do not pass symbols
6554 down to hppa_look_for_stubs_in_section.
6555
6556 Sat Feb 26 10:58:25 1994 Ian Lance Taylor (ian@cygnus.com)
6557
6558 * ldmain.c (write_map): Don't define. Removed all references.
6559 Just use map_file or map_filename instead.
6560 (add_archive_element): Use minfo to write map information, not
6561 info_msg.
6562 (constructor_callback): Use fprintf to write map information, not
6563 info_msg.
6564 * ldmain.h (write_map): Don't declare.
6565 * ldgram.y (mri_script_command): Removed reference to write_map.
6566 * ldlang.c (lang_one_common): Likewise.
6567 * lexsup.c (parse_args): Likewise.
6568
6569 Fri Feb 25 19:12:03 1994 Ian Lance Taylor (ian@cygnus.com)
6570
6571 * scripttempl/elf.sc: Force all sections to be aligned.
6572
6573 * ldgram.y (section): Reverse the order of memspec_opt and
6574 fill_opt to avoid an ambiguity when both are used.
6575 * ld.texinfo: Changed accordingly.
6576
6577 * ldgram.y: Move include of ldlex.h back with other includes.
6578 * ldlex.h (input_type): Don't initialize enum constants to
6579 particular values.
6580 * ldlex.l: Use a switch to return the right token based on
6581 input_type, rather than knowing that input_type has a value based
6582 on a token type.
6583
6584 * ldgram.y (dirlist_ptr): Removed; not used.
6585 * lexsup.c: Include ldver.h.
6586 * Makefile.in: Rebuilt dependencies.
6587
6588 Fri Feb 25 18:55:54 1994 Ted Lemon (mellon@pepper.ncd.com)
6589
6590 * ldlang.c (lookup_name): don't call bfd_set_gp_size.
6591 (ldlang_add_file): call it here instead.
6592
6593 Fri Feb 25 18:13:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
6594
6595 * ldgram.y: Include ldlex.h after %token decls, for byacc.
6596
6597 Fri Feb 25 10:47:25 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6598
6599 * emultempl/hppaelf.em: First attempt to clean this file up.
6600 Add comments in several functions as to their purpose and
6601 how they function (or my current best guess). Clean up horrible
6602 spacing and indention that never should have been accepted in the
6603 first place. Add FIXMEs for issues which need to be resolved.
6604 Disable linker-stub generation until it gets fixed. This allows
6605 the linker to at least work on simple code for testing purposes.
6606
6607 * ldlang.c (lang_size_sections): No longer static (PA ELF calls
6608 it via hppaelf_finish). Prototype moved into ldlang.h.
6609 (lang_process): Move problematic extra call to lang_size_sections
6610 into the PA ELF specific code.
6611 * emultempl/hppaelf.em (hppaelf_finish): Extra call to
6612 lang_size_sections moved here.
6613
6614 Thu Feb 24 16:47:33 1994 Ian Lance Taylor (ian@cygnus.com)
6615
6616 * configure.in (powerpc-*-elf*): New target; use ppc-elf32.
6617 * config/ppc-elf32.mt: New file.
6618 * emulparams/elf32ppc.sh: New file.
6619 * emultempl/ppc.em: New file.
6620 * Makefile.in (ALL_EMULATIONS): Added em_elf32ppc.o.
6621 (em_elf32ppc.c): New target; uses elf32ppc.sh, ppc.em and elf.sc.
6622 (EMULATION_OFILES): Added dependencies on ldexp.h and ldlang.h.
6623
6624 Thu Feb 24 12:27:07 1994 David J. Mackenzie (djm@rtl.cygnus.com)
6625
6626 * lexsup.c (parse_args): Use symbolic numbers for long options.
6627 Fix misunderstanding in -Y and -call_shared et al.
6628
6629 Use getopt instead of lex and yacc to parse the command line.
6630
6631 * ld.texinfo (Options): Document changes to option syntax.
6632 * Makefile.in: Update dependencies.
6633 * ldver.c (help): Tweak dashes in usage message.
6634 * ldgram.y (%union): Remove unused members.
6635 Remove %tokens for command line options; add ones for input types.
6636 (command_line): Rules removed.
6637 (file): Instead of command line, recognize an
6638 input type indicator, then use the nonterminal for that type.
6639 (defsym_expr): New nonterminal from code formerly in command_line.
6640 * ldlex.h: Declare parser input type enum and variable.
6641 Don't declare parse_line.
6642 * ldlex.l: Remove unused variables. Make some used ones static
6643 and comment them.
6644 (COMMAND): Start state and its rules removed.
6645 At start of yylex, return input state token if at start of input.
6646 (lex_redirect): Don't need to set yyout.
6647 (ldlex_command): Function removed.
6648 * ldmain.c (main): Instead of calling parse_line, set up the
6649 redirections and call yyparse directly.
6650 * ldmisc.c (vfinfo): If there's no input filename, print nothing, not
6651 "command line".
6652 * lexsup.c: Remove #if 0'd code.
6653 (parse_line): Function removed.
6654 (parse_args): Rewrite to use getopt_long_only.
6655 (set_default_dirlist): New function from code formerly in
6656 ldgram.y:command_line.
6657 (set_section_start): New function.
6658 * emultempl/generic.em, emultempl/gld960.em, emultempl/hppaelf.em,
6659 emultempl/lnk960.em, emultempl/m88kbcs.em: Don't enclose
6660 compiled-in link scripts in "{" and "}", as the grammar no longer
6661 wants them to be.
6662
6663 Thu Feb 24 08:43:26 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
6664
6665 * Makefile.in (ld.dvi): Depend on configdoc.texi, but don't
6666 require that it be in $(srcdir).
6667
6668 Tue Feb 22 09:21:18 1994 Ian Lance Taylor (ian@cygnus.com)
6669
6670 * ldlang.c (lang_size_sections): Only align section to alignment
6671 required by linker script, not to maximum alignment of input
6672 sections.
6673
6674 * ldlang.h (largest_section): Don't declare.
6675 * ldlang.c (largest_section): Don't define.
6676 (size_input_section): Don't set largest_section; not used.
6677
6678 Mon Feb 21 15:15:29 1994 Ian Lance Taylor (ian@cygnus.com)
6679
6680 * ldlang.c (new_afile): Pass NULL as last argument to concat.
6681
6682 Thu Feb 17 15:51:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6683
6684 * ldlang.c, ldmain.c: Include libiberty.h.
6685
6686 * ldmisc.h (concat): Don't declare.
6687 * ldmisc.c (concat): Don't define; just use the one in libiberty.
6688
6689 * ld.h (as_output_section_statement): Removed; not used.
6690
6691 Thu Feb 17 09:32:14 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6692
6693 * ldlang.c, ldmain.c, ldmisc.c: Use bfd_get_error and
6694 bfd_set_error and new error names.
6695
6696 Tue Feb 15 20:14:53 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6697
6698 * ldwrite.c (build_link_order): If the cooked size of the section
6699 has been set, use it, for determining link_order size.
6700 (ldwrite): In the error message displayed if bfd_final_link fails,
6701 indicate that it was in fact the final link step that failed.
6702
6703 * ldlang.c (lang_size_sections): Clear bfd_error before calling
6704 bfd_relax_section, in case it returns false but doesn't flag an
6705 error. If an error is returned, indicate which one it is in the
6706 error message.
6707
6708 * Makefile.in (install-info): Depend on ld.info, and use "$<*" so
6709 it'll get picked up from $(srcdir) if appropriate.
6710
6711 Tue Feb 15 16:32:04 1994 David J. Mackenzie (djm@rtl.cygnus.com)
6712
6713 * scripttempl/aout.sc: Only pad .text if PAD_TEXT is set.
6714 * emulparams/i386mach.sh (PAD_TEXT): Set PAD_TEXT.
6715
6716 Fri Feb 11 17:02:49 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6717
6718 * ldlex.l (comment): Increment line number when newline is read.
6719
6720 Fri Feb 11 17:36:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6721
6722 * ldlang.c (lookup_name): Take new argument, force_load. If true,
6723 reload the file even if it is already loaded.
6724 (wild): Call lookup_name with force_load argument of 0.
6725 (open_input_bfds): Call lookup_name with force_load argument of 1.
6726 (print_symbol): Remove declaration of non-existent function.
6727 (print_one_symbol): Return true rather than falling off end.
6728
6729 Thu Feb 10 11:52:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6730
6731 * ldmain.c (main): Use %ld when printing long values.
6732
6733 * scripttempl/elf.sc: Move _edata after the .sdata section.
6734 Permit OTHER_BSS_SYMBOLS to be defined.
6735 * emulparams/elf32mipb.s (OTHER_BSS_SYMBOLS): Define _fbss.
6736
6737 Mon Feb 7 16:31:15 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6738
6739 * Rename all "hppaosf" files to "hppaelf".
6740 * Change all "osf" references to "elf" in hppaelf files.
6741 * Makefile.in: Likewise.
6742 * configure.in: Likewise.
6743
6744 Sun Feb 6 20:31:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6745
6746 * ldmain.c (main): Call xatexit, not atexit.
6747 Call xmalloc_set_program_name.
6748
6749 * ldlang.c (lang_size_sections): Check if bfd_relax_section set
6750 bfd_errno.
6751
6752 Sat Feb 5 03:54:34 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6753
6754 * emultempl/lnk960.em (append), emultempl/hppaosf.em
6755 (hppaosf_finish): Call xmalloc, not ldmalloc.
6756 * ldmain.c (preserve_output): Function removed.
6757 (main): Do it here instead.
6758
6759 Fri Feb 4 23:02:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6760
6761 * ldlang.h (LANG_FOR_EACH_{INPUT,OUTPUT}_SECTION): Delete (unused)
6762 GNU C specific macros.
6763
6764 * emultempl/hppaosf.em (hppaosf_finish): Expand the only remaining
6765 call to LANG_FOR_EACH_INPUT_SECTION.
6766
6767 Fri Feb 4 16:26:08 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6768
6769 * ldmisc.c (ldmalloc, xmalloc, ldrealloc, xrealloc): Functions
6770 deleted; will use libiberty versions instead.
6771 * ldctor.c ldfile.c ldlang.c ldmain.c ldmisc.c ldmisc.h lexsup.c
6772 mri.c Makefile.in: Change callers.
6773
6774 * ldmisc.c (vfinfo): Remove cleanup code.
6775 * ldmain.c (remove_output): Put it here (new function).
6776 (preserve_output): New function.
6777 (main): Register remove_output and preserve_output with atexit.
6778 * ldmain.c ldgram.y: Call xexit instead of exit.
6779 * ldmisc.h: Declare xexit.
6780
6781 Fri Feb 4 15:19:01 1994 Steve Chamberlain (sac@cygnus.com)
6782
6783 * Makefile.in: Lots of new H8/500 memory models.
6784
6785 Sun Jan 30 14:33:40 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6786
6787 * ldlex.l: Removed duplicate rules.
6788 (yywrap): Provide default definition, needed with some versions of
6789 flex.
6790
6791 Fri Jan 28 09:12:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6792
6793 * ldmisc.c (vfinfo): For `%I', if the file is in an archive, print
6794 the archive filename too.
6795
6796 * ldlex.l: Add rule to catch invalid input characters instead of
6797 printing them. Include "ldmain.h" for program_name decl.
6798 (lex_warn_invalid): New function.
6799 * Makefile.in: Add dependency.
6800
6801 Fri Jan 28 12:58:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6802
6803 * Makefile.in (check): Don't bother running any tests of
6804 cross-linker until the test suite no longer assumes native mode.
6805
6806 Thu Jan 27 17:19:54 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6807
6808 * ldlang.c (print_one_symbol, print_input_section): Print
6809 global symbols in symbol table again.
6810
6811 Thu Jan 27 12:35:01 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6812
6813 * ldmain.c ldmain.h ldgram.y: If -v -V or --version was given,
6814 exit successfully instead of complaining if no input files are
6815 given.
6816
6817 Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)
6818
6819 * Makefile.in: Format variable definitions consistently.
6820 (LD_PROG): Remove unnecessary variables from link command,
6821 change variable LOADLIBES to EXTRALIBS.
6822
6823 * ldmain.c (main): Compute and display total execution time.
6824 * ld.texinfo (-stats): Document the option.
6825
6826 Mon Jan 24 12:56:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6827
6828 * ldmain.c (reloc_overflow): Added name, reloc_name and addend
6829 arguments.
6830
6831 * ldlang.c (lookup_name): Set BFD GP size to -G argument value
6832 after opening BFD.
6833
6834 * ldlang.c (relaxing): Removed global variable.
6835 (lang_size_sections): If the canonical symbols have not already
6836 been read in, read them in before relaxing.
6837 * ldlang.h (relaxing): Removed declaration.
6838
6839 Fri Jan 21 00:44:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6840
6841 * ldlang.c (new_afile): Initialize loaded field to false.
6842 (lookup_name): If file was already loaded, don't call the
6843 add_symbols entry point again.
6844
6845 Wed Jan 19 13:57:00 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6846
6847 * ld.texinfo: Clarify what -T option does.
6848
6849 Tue Jan 18 16:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6850
6851 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that's
6852 for a.out.
6853
6854 Tue Jan 11 13:22:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6855
6856 * ldmain.c (add_archive_element): If trace_files or
6857 trace_file_tries, print file name.
6858 * ldlang.c (lookup_name): Likewise.
6859 (ldlang_add_file): Don't put files on input_bfds list in reverse
6860 order.
6861
6862 * scripttempl/elf.sc: Correct typo.
6863
6864 Mon Jan 10 19:49:05 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6865
6866 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y and
6867 their arguments optional, for compatibility with the old GNU ld.
6868
6869 Fri Jan 7 20:00:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6870
6871 * scripttempl/elf.c: Define __bss_start before the .sbss section.
6872
6873 Thu Jan 6 00:13:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6874
6875 * ldmain.c (add_to_set): Add bitsize argument.
6876 (constructor_callback): New function.
6877 (link_callbacks): Add constructor_callback.
6878 * ldctor.c (struct set_info): Add bitsize field.
6879 (ldctor_add_set_entry): Add bitsize argument.
6880 (ldctor_build_sets): Base the size of the elements of the set on
6881 the bitsize, rather than always using LONG.
6882 * ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
6883
6884 * ld.h (QUAD_SIZE): Define.
6885 * ldgram.y (QUAD): New token.
6886 (length): Handle it.
6887 * ldlex.l: Return QUAD.
6888 * lexsup.c (keywords): Add QUAD.
6889 * ldwrite.c (build_link_order): Handle QUAD.
6890 * ldlang.c (print_data_statement): Handle QUAD.
6891 (lang_size_sections): Likewise.
6892 (lang_do_assignments): Likewise.
6893 * ldexp.c (exp_print_token): Add QUAD to table.
6894 * ld.texinfo: Describe QUAD.
6895
6896 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
6897 since the Alpha doesn't use them.
6898
6899 Wed Jan 5 17:42:16 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6900
6901 * ldemul.h (ld_emulation_xfer_struct): Comment the members.
6902
6903 Sat Jan 1 13:39:31 1994 Rob Savoye (rob@darkstar.cygnus.com)
6904
6905 * Makefile.in, configure.in: Add support for VSTa micro-kernel.
6906 * config/vsta.mt, emulparams/vsta.sh: New files for VSTa.
6907
6908 Sat Jan 1 10:53:35 1994 David J. Mackenzie (djm@thepub.cygnus.com)
6909
6910 * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
6911 needed for i386mach. (Should be a no-op on other systems.)
6912
6913 * emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
6914 (PAGE_SIZE): Don't define; not used.
6915
6916 Fri Dec 31 16:12:06 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6917
6918 * ldgram.y (yyerror): Make argument const char *, and actually
6919 print it out rather than assuming it is a syntax error.
6920 * ldmisc.h: Change declaration of yyerror.
6921 * ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
6922
6923 Fri Dec 31 11:37:28 1993 David J. Mackenzie (djm@thepub.cygnus.com)
6924
6925 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
6926 exec header offset, since the exec header isn't loaded.
6927 (PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
6928
6929 Thu Dec 30 13:01:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6930
6931 A major rewrite to move the bulk of the linker into BFD so that
6932 more efficient backend code can be written for specific object
6933 files.
6934 * lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
6935 ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
6936 * ldctor.c, ldctor.h: Complete rewrite.
6937 * ldwrite.c, ldwrite.h: Complete rewrite.
6938 * ld.h (strip_symbols_type, strip_symbols): Removed. Use
6939 link_info.strip instead. Changed all uses.
6940 (discard_locals_type, discard_locals): Removed. Use
6941 link_info.discard instead. Changed all uses.
6942 (ld_config_type): Removed relocateable_output field; use
6943 link_info.relocateable instead; changed all uses. Added stats
6944 field.
6945 (set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
6946 set_loader_symbol): Removed.
6947 * ldexp.h (node_class): Added etree_rel.
6948 (etree_type): Added rel field.
6949 * ldexp.c (exp_print_token): Bracketed table initialization.
6950 (exp_relop): New function.
6951 (fold_name): Use linker hash table rather than ldsym functions.
6952 (exp_fold_tree): Likewise. Also, handle etree_rel case.
6953 (exp_print_tree): Handle etree_rel.
6954 * ldgram.y (strip_symbols, discard_locals): Removed.
6955 (OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them.
6956 (REL): New token. Does not appear in grammar, but needed for
6957 expression code.
6958 (file): Don't call lang_final; it's called by main anyhow.
6959 * ldlex.l: Accept -stats and -no-keep-memory options.
6960 * ldlang.h (fill_type): Make unsigned int, not unsigned short.
6961 * ldlang.c: Consistently use fill_type for fill argument.
6962 (lang_init_script_file, script_file): Removed.
6963 (create_object_symbols): Removed. Use
6964 link_info.create_object_symbols_section instead. Changed all
6965 uses.
6966 (lang_add_keepsyms_file): Removed.
6967 (lookup_name): Call bfd_link_add_symbols instead of
6968 ldmain_open_file_read_symbol.
6969 (wild): Don't iterate over script_file.
6970 (open_output): Create link hash table.
6971 (lang_place_undefineds): Rewrote.
6972 (lang_size_sections): Handle relaxing (doesn't work yet).
6973 (lang_relocate_globals): Removed.
6974 (lang_finish): Use link hash table rather than ldsym functions.
6975 (lang_common): Rewrote.
6976 (lang_one_common): New function.
6977 (ldlang_add_file): Add file to link_info.input_bfds list. Set
6978 usrdata.
6979 (create_symbol): Removed.
6980 (lang_process): Don't call lang_init_script_file. Call
6981 ldctor_build_sets rather than find_constructors. Don't call
6982 lang_relocate_globals.
6983 (lang_abs_symbol_at_beginning_of): Rewrote.
6984 (lang_abs_symbol_at_end_of): Rewrote.
6985 * ldmain.c (had_y): Removed.
6986 (lprefix, lprefix_len): Removed; use link_info fields instead.
6987 Changed all uses.
6988 (multiple_def_count, commons_pending, undefined_global_sym_count,
6989 total_symbols_seen, total_files_seen): Removed.
6990 (link_callbacks, link_info): New variables.
6991 (main): Initialize link_info. Don't call init_bfd_error_vector or
6992 ldsym_init. Don't set now unused variables. Handle -stats.
6993 (get_emulation): Removed obsolete and nonfunctional GNU960 code.
6994 (add_ysym): Rewrote.
6995 (read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
6996 search_library, gnu960_check_format, decode_library_subfile,
6997 linear_library, symdef_library, clear_syms, subfile_wanted_p):
6998 Removed.
6999 (add_keepsyms_file, add_archive_element, multiple_definition,
7000 multiple_common, add_to_set, warning_callback, undefined_symbol,
7001 reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
7002 New functions.
7003 * ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't
7004 require symbols for %C; look them up instead.
7005 * emultempl/hppaosf.em: Pass link_info to
7006 hppa_look_for_stubs_in_section.
7007 * Makefile.in: Rebuilt dependencies.
7008 (CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
7009 relax.c.
7010 (HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
7011 relax.h.
7012 (EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
7013 ldlang.h and ldctor.h.
7014
7015 * Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove
7016 declarations of free and malloc from flex output. Change malloc
7017 to ldmalloc in flex output.
7018
7019 Thu Dec 16 21:19:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7020
7021 * ldmain.c (lprefix): Change default from a char to a string
7022 with only one character.
7023 (lprefix_len): Set default to one.
7024
7025 * ldmain.h (lprefix_len): Declare.
7026
7027 * ldsym.c (write_file_locals): Use strncmp rather than a character
7028 comparison for lprefix.
7029
7030 * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len
7031 correctly.
7032
7033 * emultmpl/hppaosf.em: Include ldexp.h.
7034 (before_parse): Set lprefix and lprefix_len correctly.
7035
7036 Tue Dec 14 17:19:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7037
7038 * ldlex.h: Don't declare yywrap if it is a macro.
7039 * ldlex.l: Include sysdep.h.
7040 * ldlang.c (lang_for_each_statement_worker,
7041 lang_for_each_statement): Forgot to use PARAMS.
7042
7043 Mon Dec 13 14:30:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7044
7045 * Makefile.in: Added .PHONY targets where appropriate. Added some
7046 comments. Also:
7047 (gcclibdir, version): Removed unused variables.
7048 (DEP): New variable, set to mkdep.
7049 (ALL_CFLAGS): New variable. Used in .c.o target.
7050 (CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New
7051 variables.
7052 (HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES,
7053 GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed
7054 mostly obsolete variables. Adjusted remaining uses.
7055 (DEF_EMUL): Removed variable.
7056 (ldmain.o): Handle undefined EMUL error correctly.
7057 (ldemul-list.h): Depend on config.status rather than Makefile.
7058 Create via temporary file.
7059 (ver960.c, roll, make): Removed obsolete targets.
7060 (.dep, .dep1, dep.sed, dep, dep-in): New targets. Used to rebuild
7061 dependencies.
7062 * dep-in.sed: New file, used when rebuilding dependencies.
7063
7064 Sat Dec 11 14:43:44 1993 Ian Lance Taylor (ian@deneb.cygnus.com)
7065
7066 Made many changes to eliminate gcc warnings. Made various
7067 cosmetic changes, declared various things in header files, removed
7068 various extern declarations from .c files. No substantive
7069 changes.
7070
7071 * ldlang.c (lang_process): Ifdef out final call to
7072 lang_size_sections again (reverting change of Nove 2), since it
7073 breaks the Sun4 linker.
7074
7075 Thu Dec 2 16:31:47 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7076
7077 * configure.in (alpha-*-netware*): New target; use alpha.
7078
7079 Wed Dec 1 14:04:20 1993 Ken Raeburn (raeburn@cygnus.com)
7080
7081 * configure.in: Group targets by CPU. Merge some m68k target
7082 entries with different CPU specs that use the same ld_target
7083 values.
7084
7085 * configure.in: Add sparc*-*-coff.
7086 * config/coff-sparc.mt, emulparams/coff_sparc.sh: New files.
7087 * Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o.
7088 (em_coff_sparc.c): Add dependencies and build rules.
7089
7090 * ldmisc.c (errno, sys_nerr, sys_errlist): Don't declare.
7091
7092 Wed Dec 1 12:19:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7093
7094 * ldgram.y (OPTION_call_shared, OPTION_non_shared, OPTION_Oval):
7095 New tokens.
7096 (command_line_option): Accept and ignore them (for now).
7097 * ldlex.l (<COMMAND>): Handle -non_shared, -call_shared, and -On
7098 where n is a number.
7099
7100 Mon Nov 22 14:14:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7101
7102 * ldmain.c (subfile_wanted_p): If merging a common symbol which is
7103 not in bfd_com_section, create the section in the BFD so that it
7104 can be placed in the right output section.
7105
7106 Fri Nov 19 14:12:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7107
7108 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.
7109 * emulparams/elf32mipsb.sh (DATA_ADDR): Define.
7110 (OTHER_READONLY_SECTIONS): Define for .reginfo.
7111 (EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK.
7112 * scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating.
7113 Move OTHER_READONLY_SECTIONS after all the other readonly
7114 sections. Don't use DATA_ADDR twice.
7115
7116 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. If
7117 p is in a common section, make sure the BFD has a section of that
7118 name.
7119
7120 * ldlang.c (lang_common): Add newline to error message.
7121
7122 Thu Nov 11 15:54:41 1993 Stan Shebs (shebs@rtl.cygnus.com)
7123
7124 * emulparams/m68klynx.sh (SCRIPT_NAME): Define to use a
7125 Lynx-specific script instead of m68kcoff.
7126 (OUTPUT_FORMAT): Define as "coff-m68k-lynx".
7127 (ENTRY): Define as __main.
7128 (TEXT_START_ADDR): Define as 0.
7129 (PAGE_SIZE): Define as 0x1000.
7130 * emulparams/i386lynx.sh, emulparams/sparclynx.sh: Fix comment.
7131 * scripttempl/m68klynx.sc: New file.
7132
7133 Mon Nov 8 12:00:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7134
7135 * ldmain.c (get_emulation): Ignore -mips1, -mips2 and -mips3
7136 arguments rather than treating them as emulation names.
7137
7138 Fri Nov 5 09:02:52 1993 D. V. Henkel-Wallace (gumby@blues.cygnus.com)
7139
7140 * configure.in: Support x86 unixware and netware plus generic netware.
7141
7142 Fri Nov 5 21:47:55 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7143
7144 * emulparams/i386mach.sh (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR):
7145 Correct values (?).
7146
7147 Wed Nov 3 15:10:15 1993 Ken Raeburn (raeburn@rover.cygnus.com)
7148
7149 * Makefile.in (distclean): Don't delete dvi or info files.
7150 (ld.info): Update dependency list.
7151 (ld.dvi): Ditto. Extend TEXINPUTS to get bfdsumm.texi.
7152
7153 Wed Nov 3 12:07:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7154
7155 * ldlang.c (lang_add_output): Take new arg, FROM_SCRIPT.
7156 Set output_filename instead of creating a new node.
7157 (open_output): Don't set output_filename.
7158 (lang_final): Create the new node here.
7159 * ldlang.c, ldlang.h, ldgram.y, mri.c: pass FROM_SCRIPT.
7160
7161 Tue Nov 2 15:45:51 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7162
7163 From Pete Hoogenboom (hoogen@cs.utah.edu):
7164
7165 * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,
7166 edata, _edata, end): Add definitions of these symbols.
7167 (__end): Remove definition of this symbol.
7168 (__data_start): Move definition of this symbol.
7169
7170 * emultempl/hppaosf.em: Various fixes and support for linker stub
7171 generation.
7172 (hppaosf_finish, hppaosf_search_for_padding_statements,
7173 hppaosf_create_output_section_statements): New functions in
7174 support of linker stub generation.
7175 (ld_hppaosf_emulation): Redefine to include new
7176 emulation-specific routines.
7177
7178 * ldlang.c (lang_process): Re-enable last call lang_size_sections.
7179 Pass abs_output_section rather than NULL to avoid invalidating
7180 absolute symbols.
7181
7182 Thu Oct 28 21:16:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7183
7184 * Makefile.in (ALL_EMULATIONS): Add em_i386mach.o.
7185 (em_i386mach.c): New rule.
7186 * configure.in (i[34]86-*-mach*): New case.
7187 * config/i386-mach.mt: New file.
7188 * emulparams/i386mach.sh: New file.
7189
7190 Fri Oct 29 14:55:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7191
7192 * ld.h (flag_is_*): Removed macros.
7193 * ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
7194 Consistently check the BFD symbol flags directly, rather than
7195 using file_is_* macros.
7196
7197 Thu Oct 28 19:08:42 1993 Stan Shebs (shebs@rtl.cygnus.com)
7198
7199 * configure.in (sparc*-*-lynxos*): New target.
7200 * Makefile.in: Add rule for em_sparclynx.c.
7201 (ALL_EMULATIONS): Add Lynx emulations.
7202 * config/sparc-lynx.mt: New file.
7203 * emulparams/sparclynx.sh: New file.
7204 * scripttempl/sparccoff.sc: New file.
7205
7206 Thu Oct 28 13:50:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7207
7208 * Makefile.in: Add dependency for $(EMULATION_OFILES).
7209
7210 Mon Oct 25 16:09:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7211
7212 * relax.c (write_relax): Check return value of bfd_seclet_link.
7213
7214 Mon Oct 25 09:31:21 1993 Ken Raeburn (raeburn@cygnus.com)
7215
7216 * ldlang.c (delete_output_file_on_failure): New variable.
7217 (open_output): Set it after bfd open succeeds.
7218 * ldmisc.c (vfinfo): Test it.
7219
7220 Changes from Peter Hoogenboom, hoogen@cs.utah.edu:
7221
7222 * ldsym.c (write_file_locals): Set the BSF_FILE flag for object
7223 symbols.
7224
7225 * ldemul.c: Support was added to allow emulation-specific
7226 processing to occur. This support was added primarily for linker
7227 stub generation in the elf32-hppa gld.
7228 (ldemul_finish, ldemul_create_output_section_statements): New
7229 functions.
7230 * ldemul.h: Support was added to allow emulation-specific
7231 processing to occur. (As described above.) Added finish and
7232 create_output_section_statements fields to
7233 ld_emulation_xfer_struct structure.
7234 * ldlang.c: Add calls to emulation-specific routines.
7235 (lang_process): Add call to
7236 ldemul_create_output_section_statements function.
7237 (lang_process): Add call to a emulation-specific routine (and
7238 some processing after the call).
7239
7240 Fri Oct 22 20:54:13 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
7241
7242 * configure.in: mips*- instead of mips-, mips*el changes
7243
7244 Tue Oct 19 15:46:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7245
7246 * configure.in (alpha-*-osf*): New target; use alpha.mt.
7247 * Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
7248 (em_alpha.c): New target; use alpha.sh and alpha.sc.
7249 * config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
7250 * config/alpha.mt: New file.
7251 * emulparams/alpha.sh: New file.
7252 * scripttempl/alpha.sc: New file.
7253
7254 Fri Oct 15 02:20:04 1993 Doug Evans (dje@canuck.cygnus.com)
7255
7256 * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
7257 types of different sizes (eg: 64 and 32 bits), so coerce.
7258 * ld.h (ALIGN_N): Add warning about usage.
7259
7260 Wed Oct 13 16:02:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7261
7262 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
7263 which we already have a definition, rather than checking in
7264 several different places whether the symbol is weak.
7265
7266 Tue Oct 12 17:30:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7267
7268 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
7269 * scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
7270 OTHER_READWRITE_SECTIONS if relocating. Shell variables are not
7271 expanded within them.
7272 * config/mipsb-elf32.mt: New file.
7273 * emulparams/elf32mipb.sh: New file.
7274 * Makefile.in (em_elf32mipb.c): New target.
7275
7276 Thu Sep 30 17:00:36 1993 Rob Savoye (rob@darkstar.cygnus.com)
7277
7278 * ldgram.y: In input_list, change lang_input_file_is_file_enum to
7279 lang_input_file_is_search_file_enum so objects brought in using
7280 INPUT() do a path lookup.
7281
7282 Tue Sep 28 13:31:23 1993 Stan Shebs (shebs@rtl.cygnus.com)
7283
7284 * configure.in: Change Lynx ld_target to be {i386,m68k}-lynx
7285 instead of {i386,m68k}-coff.
7286 * Makefile.in (em_i386lynx.c, em_m68klynx.c): New targets.
7287 * config/i386-lynx.mt: New file.
7288 * config/m68k-lynx.mt: New file.
7289 * emulparams/i386lynx.sh: New file.
7290 * emulparams/m68klynx.sh: New file.
7291
7292 * scripttempl/i386coff.sc: Make ENTRY get its value from ${ENTRY},
7293 but defaulting to _start.
7294
7295 * ldemul.c, ldfile.c, ldlang.c, ldmain.c, ldmisc.c, ldmisc.h,
7296 ldsym.c, ldwarn.c: Rename info to info_msg, to avoid conflict with
7297 LynxOS libc.
7298
7299 Thu Sep 23 14:51:03 1993 Ian Lance Taylor (ian@cygnus.com)
7300
7301 * config/solaris2.mh: New file. Define HOSTING_CRT0 and
7302 HOSTING_LIBS for testing.
7303
7304 Fri Sep 17 17:52:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7305
7306 Finish up support for i386-sysv4 (without shared libraries):
7307 * ld.h (flag_is_weak): Define.
7308 * ldlang.c (print_symbol): Mention whether symbol is weak.
7309 (print_input_section): Print weak symbols as globals.
7310 * ldmain.c (refize): Do not zero out BSF_WEAK flag.
7311 (enter_global_ref): Do not warn if a weak symbol redefines a
7312 global symbol. Do not let a weak symbol redefine a common symbol.
7313 (enter_file_symbols): Treat weak symbols as global symbols.
7314 (subfile_wanted_p): Do not pull in an object file from a archive
7315 just to resolve an undefined weak symbol.
7316 * ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
7317 error; the error might be that malloc has run out of space.
7318 * ldsym.c (write_file_locals): Treat weak symbols as global.
7319 * configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
7320 use i386-elf.
7321 * config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
7322 * config/i386-elf.mt: New file; set EMUL to elf_i386.
7323 * emulparams/elf_i386.sh: New file.
7324 * scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
7325 * Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
7326 (ALL_EMULATIONS): Add em_elf_i386.o.
7327 (GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
7328 (em_elf_i386.c): New target, like other em_*.c targets.
7329 ($(LD_PROG)): Pass $(CFLAGS) to $(CC).
7330 * genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument. If
7331 nonempty, and configured for native, add it to LIB_PATH.
7332
7333 Fri Sep 17 13:07:39 1993 Stan Shebs (shebs@rtl.cygnus.com)
7334
7335 * scripttempl/{h8300.sc,h8500.sc,i386coff.sc,m68kcoff.sc,sh.sc}:
7336 Added statements to pass stab and stabstr sections through and
7337 mark them as NOLOAD, which makes GDB happier.
7338
7339 Wed Sep 15 16:02:29 1993 Stan Shebs (shebs@rtl.cygnus.com)
7340
7341 * configure.in: Accept m68k-lynx-lynxos config.
7342
7343 * Makefile.in: Use $(SHELL) to run genscripts.sh.
7344
7345 Sun Sep 12 16:04:40 1993 Doug Evans (dje@cygnus.com)
7346
7347 * config/coff-h8300.mt: Add EMUL=h8300h.
7348
7349 * ldmain.c (main): Call set_scripts_dir after argv has been processed.
7350
7351 Fri Sep 10 09:36:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
7352
7353 * Makefile.in: Changed CXX back to g++.
7354
7355 Fri Sep 10 09:34:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
7356
7357 * Makefile.in: Fixed RUNTEST* CXX CXXFLAGS macros and check rule.
7358
7359 Fri Sep 10 07:26:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7360
7361 * Makefile.in (TAGS): Use shell wildcards.
7362
7363 Tue Sep 7 18:04:54 1993 Jeffrey Osier (jeffrey@cygnus.com)
7364
7365 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target
7366
7367 Fri Sep 3 16:46:41 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7368
7369 * ld.texinfo: re-enable included config file; conditionalize doc
7370 for -oformat to interact properly with SingleFormat doc config
7371 var; rename @up/@down to @raisesections/@lowersections.
7372
7373 Wed Aug 25 16:29:56 1993 K. Richard Pixley (rich@sendai.cygnus.com)
7374
7375 * configure.in: recognize m88110.
7376
7377 Tue Aug 24 18:49:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7378
7379 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
7380 * emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
7381 ELF emulation is "elf32-hppa" not "elf-big".
7382 (hppaosf_before_parse): Remove unneeded processing of environment
7383 variables.
7384 * scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
7385 .text segment of output file.
7386 * emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
7387
7388 Tue Aug 24 16:17:00 1993 K. Richard Pixley (rich@sendai.cygnus.com)
7389
7390 * ld.h: define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no
7391 longer in bfd.h.
7392
7393 * ldlang.c, ld.h: updated copyright.
7394
7395 Tue Aug 17 15:22:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7396
7397 * ldlang.c (open_output, lang_check): Check return value of
7398 bfd_set_arch_mach.
7399
7400 Tue Aug 17 07:02:19 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
7401
7402 * scripttempl/h8500.sc: Start all sections in a different segment.
7403 * scripttempl/z8ksim.sc: Handle constructors
7404
7405 Thu Aug 12 16:05:37 1993 Jeffrey Wheat (cassidy@cygnus.com)
7406
7407 * Makefile.in: revert earlier changes back to execute runtest
7408 with make check. cdtest and bootstrap now function as they
7409 did within the Makefile.
7410
7411 Thu Aug 12 10:20:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7412
7413 * Makefile.in: Update dependencies.
7414
7415 * configure.in: Set EMULATION_OFILES in Makefile based on
7416 --with-targets option.
7417
7418 Thu Aug 12 08:52:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
7419
7420 * Makefile.in: check targets reimplemented to old way.
7421
7422 Wed Aug 11 08:26:11 1993 Ian Lance Taylor (ian@cygnus.com)
7423
7424 * config/i386v.mh, config/irix4.mh: Use gcc
7425 -print-libgcc-file-name rather than $(libdir)/libgcc.a.
7426 * config/i386sco.mh: New file; copy of i386v.mh to correspond to
7427 bfd/configure.host change.
7428
7429 Mon Aug 9 14:25:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7430
7431 * scripttempl/elf.sc: Handle .line and .debug* sections.
7432
7433 * ldlex.l: Use bfd_scan_vma, not strtoul.
7434
7435 Fri Aug 6 08:57:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7436
7437 * ldexp.c, ldfile.c, ldlang.c, lexsup.c, ldmain.c, ldemul.c:
7438 Remove inital caps in some error messages, change "can't" to
7439 "cannot", add missing colons.
7440 * ldmisc.c (vfinfo): Print "%%" as a single %.
7441 For '%' followed by unrecognized character, print them both
7442 verbatim instead of expecting a char * arg.
7443 For '%C', don't put the function name in parens.
7444
7445 * ldexp.c (invalid): Pass "%%", not "% ".
7446
7447 Fri Aug 6 14:31:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7448
7449 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
7450 (BSS_VAR): Removed; now always define _fbss.
7451 * emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
7452 Removed.
7453
7454 Thu Aug 5 15:55:19 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
7455
7456 * configure.in: z8k-coff is the same as z8k-sim
7457
7458 Wed Aug 4 21:00:18 1993 Jeffrey Wheat (cassidy@cygnus.com)
7459
7460 * testsuite/lib/ld.exp: new file
7461 * testsuite/config/unix-ld.exp: new file
7462 * testsuite/ld.bootstrap/bootstrap.exp: new file
7463 * Makefile.in: add dejagnu support for make check
7464
7465 Wed Aug 4 17:52:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7466
7467 * ldlex.l (comment): Add missing newline in message.
7468 * ldindr.c (add_indirect): Ditto.
7469 * ldexp.c (exp_fold_tree): Ditto.
7470
7471 Tue Aug 3 10:57:41 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7472
7473 * ldgram.y, ldlex.l, mri.c, ldwrite.c: Change multiple commons
7474 into externs.
7475
7476 * ldmisc.c (multiple_warn): New function.
7477 * ldmisc.h: Declare it.
7478 * ldmain.c (enter_global_ref): Call it.
7479 * ld.h (ld_config_type): Add warn_common.
7480 * ldlex.l, ldgram.y: Set it with -warn-common option.
7481 * ldver.c (help): Document it.
7482
7483 Mon Aug 2 12:04:36 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7484
7485 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
7486 target-specific sections, and for changing data section vma.
7487
7488 Mon Jul 26 14:00:02 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7489
7490 * ldgram.y (OPTION_Qy, OPTION_Y, OPTION_dn, OPTION_YP): New
7491 terminals, for Solaris.
7492 (dirlist_ptr): New static variable.
7493 (command_line_option): Accept new options.
7494
7495 * ldlex.l: Accept command-line options "-Qy", "-dn", "-Y", and
7496 "-YP,...".
7497
7498 * config/sun4sol2.mt: Pass emulation name without ".sh".
7499
7500 * emulparams/elf32_sparc.c: Renamed from elf32-sparc.c.
7501 * config/sun4sol2.mt (em_elf32_sparc.c): Adjusted accordingly.
7502
7503 Fri Jul 23 13:51:09 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7504
7505 * scripttempl/elf.sc: Add support for .init, .fini, .ctors,
7506 .dtors, .data1, .rodata1 sections, instead of combining them into
7507 other sections. For `-r', set all section start addresses to
7508 zero.
7509
7510 * emulparams/elf32-sparc.sh (TEXT_START_ADDR,
7511 NONPAGED_TEXT_START_ADDR): Value should be 0x10100.
7512 (MAXPAGESIZE): Renamed from PAGE_SIZE.
7513
7514 Wed Jul 21 14:28:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7515
7516 * genscripts.sh: If this is the default emulation, set
7517 COMPILE_IN.
7518 * emultempl/*.em: Use it to determine whether to compile in the
7519 scripts.
7520
7521 * Makefile.in (GENSCRIPTS): Pass the default emulation name to
7522 genscripts.sh. Pass the current emulation name without ".sh" on
7523 the end.
7524 * genscripts.sh: Take an default emulation arg.
7525 Use the current emulation name as EMULATION_NAME.
7526 Make default lib path for cross-compiling ':', not null.
7527 * emulparams/*.sh: Don't set EMULATION_NAME.
7528 * ldemul.c (ldemul_get_script): Take isfile arg.
7529 Pass it to emulation's get_script function.
7530 * ldemul.h: Adjust get_script prototypes.
7531 * ldfile.c (ldfile_find_command_file): Renamed from find_a_name.
7532 No longer static.
7533 * ldfile.h: Declare it.
7534 * ldgram.y: Accept a script on the command line again,
7535 for parsing compiled-in scripts.
7536 * ldmain.c (main): If ld script is a file, parse it as a -T
7537 option, otherwise parse it directly.
7538 * emultempl/*.em (*get_script): Return the scripts themselves if
7539 this is the default emulation; otherwise return their file names.
7540 * emultempl/m88kbcs.em: New file, to take m88kbcs #ifdef out of
7541 generic.em.
7542 * emulparams/m88kbcs.sh: Use it.
7543
7544 * ld.h (ld_config_type::unix_relocate): Remove unused element.
7545
7546 Tue Jul 20 12:01:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7547
7548 * Makefile.in (ALL_EMULATIONS): Delete em_i386linux.o (for which
7549 there's no change log entry yet, tsk tsk) from the list of
7550 emulations compiled in until Mark gets around to checking in
7551 emulparams/i386linux.sh.
7552 (ldemul-list.h): Depend on Makefile, so if EMULATION_OFILES is
7553 changed, this file gets updated.
7554
7555 Fri Jul 16 14:14:32 1993 Ian Lance Taylor (ian@cygnus.com)
7556
7557 * ldgram.y (OPTION_Lfile): New token.
7558 (command_line_option): Accept OPTION_L NAME (whitespace after -L).
7559 * ldlex.l (<COMMAND>): Accept -L without FILENAME.
7560
7561 Fri Jul 16 13:44:26 1993 Doug Evans (dje@canuck.cygnus.com)
7562
7563 * configure.in: h8/300h support needs own .mt file.
7564 config/coff-h8300h.mt: New file.
7565
7566 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7567
7568 * ldmain.c: Don't include sys/stat.h; it already got included
7569 somewhere along the way.
7570
7571 Thu Jul 15 14:43:34 1993 Doug Evans (dje@canuck.cygnus.com)
7572
7573 * Makefile.in: Add h8300h support.
7574 emulparams/h8300h.sh: New file.
7575 scripttempl/h8300h.sc: New file.
7576
7577 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7578
7579 * ldfile.c (ldfile_open_file): In error message, use the name the
7580 user gave (e.g., "-lc"), rather than the base file name.
7581
7582 * ldexp.c (exp_fold_tree): Don't assign an int to an enum.
7583
7584 * ldmain.[ch]: Remove initial Q_ from function names.
7585 * ldexp.c, ldindr.c, ldlang.c: Change callers.
7586
7587 * ldfile.c, ldmain.c, ldgram.y: Rename option_v to trace_file_tries.
7588
7589 * ldlang.c (lang_process): Move loading of default script from
7590 here to main. Add a "/" to start of script name to prevent
7591 finding it in "." first.
7592
7593 * ldmain.c (set_scripts_dir): Don't look in "." first.
7594
7595 * ldgram.y, ldlang.c, ldsym.c: Remove traces of unused var
7596 option_longmap.
7597
7598 Thu Jul 15 10:55:59 1993 Ian Lance Taylor (ian@cygnus.com)
7599
7600 * Makefile.in (em_m88kbcs.c): Correct dependency.
7601 * scripttempl/m88kbcs.sc: It's ARCH, not arch. Removed TARGET
7602 statement. Changed OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
7603 * emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
7604
7605 Wed Jul 14 21:42:53 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7606
7607 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
7608 main.c (main): Print the errno string in the error message.
7609
7610 Tue Jul 13 20:00:30 1993 Doug Evans (dje@canuck.cygnus.com)
7611
7612 * configure.in: Accept h8300h for target cpu.
7613
7614 * ldmisc.c (vfinfo): Have demangle remove leading underscore if
7615 present (demangle is smart enough to know whether to do it or not).
7616
7617 Mon Jul 12 11:45:48 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7618
7619 * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
7620 ldscripts, as well as <ld bin dir> and SCRIPTDIR.
7621
7622 * ldlang.c (lang_process): Use sizeof instead of magic constant.
7623
7624 * ldmain.c (get_emulation, check_for_scripts_dir,
7625 set_scripts_dir): New functions.
7626 (main): Call them.
7627
7628 Mon Jul 12 10:57:03 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7629
7630 * scripttempl/elf.sc: Include .init, .fini, .rodata sections.
7631 Create symbol "end" instead of "__end". Comment out some parts
7632 that may not be needed (yet) for elf.
7633
7634 * configure.in: Accept sparc-elf and sparc-solaris2 configs.
7635
7636 Thu Jul 8 15:33:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7637
7638 * Makefile.in (ALL_EMULATIONS): Include $(OTHER_EMULATIONS).
7639
7640 * ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro
7641 when no prototype is being supplied.
7642 (ldmalloc, ldrealloc): Size argument is now size_t.
7643
7644 * ldmisc.c (finfo): New function, accepts FILE* argument.
7645 (vfinfo, case 'v'): New format character; displays bfd_vma in hex
7646 without leading zeros.
7647 (vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a
7648 bfd_vma value, instead of fprintf(%x) which won't hold a long long
7649 value.
7650 (concat, buystring): String lengths are size_t.
7651 (ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
7652
7653 * ldlang.c (new_statement): Size argument is now size_t. Added
7654 forward declaration with prototype.
7655
7656 Thu Jul 8 10:53:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7657
7658 * ldgram.y (OPTION_v): Don't turn on verbose output.
7659
7660 Wed Jul 7 17:10:45 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7661
7662 * ldlex.l: Get rid of local typedef for bfd_vma! Get it from
7663 bfd.h instead.
7664
7665 Wed Jul 7 11:33:12 1993 Ian Lance Taylor (ian@cygnus.com)
7666
7667 * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
7668 collect2 doesn't look for gld any more anyhow.
7669
7670 Mon Jul 5 14:29:48 1993 Ian Lance Taylor (ian@cygnus.com)
7671
7672 * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
7673 now have a non NULL srefs_chain.
7674
7675 * config/hp300hpux.mt: Use emulation hp3hpux rather than
7676 hp300hpux, since the latter does not exist.
7677
7678 Fri Jul 2 18:06:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7679
7680 * genscripts.sh: Put the scripts in the ldscripts directory, not
7681 emulations.
7682 * configure.in (ldscripts): Make, instead of emulations.
7683 * Makefile.in (scriptdir): Take off the "ld" part.
7684 (install, clean, distclean): Use ldscripts, not emulations.
7685 In tests, don't pass -Lemulations.
7686 Don't pass tooldir/lib to genscripts.sh.
7687 * genscripts.sh: Don't take tooldir/lib arg.
7688 * ldlang.c (lang_process): Add "ldscripts/" to the name of the
7689 default script file.
7690
7691 Fri Jul 2 17:13:35 1993 Doug Evans (dje@canuck.cygnus.com)
7692
7693 * scripttempl/h8300.sc: Add .tors section for constructor/destructors.
7694
7695 Thu Jul 1 16:38:45 1993 Doug Evans (dje@canuck.cygnus.com)
7696
7697 * config/coff-h8300.mt: EMUL=h8300hms -> h8300.
7698
7699 Wed Jun 30 15:45:55 1993 K. Richard Pixley (rich@sendai.cygnus.com)
7700
7701 * Makefile.in (.y.c): skip default .y.c rules. gnu make can now
7702 run in parallel without colliding on yacc's static file names.
7703 Without the stub rule, make will try to start two yacc's
7704 concurrently which fails because of yacc's static file names.
7705
7706 Tue Jun 29 12:20:36 1993 Ian Lance Taylor (ian@cygnus.com)
7707
7708 * ldmain.c (subfile_wanted_p): Don't dump core if there are no
7709 symbols.
7710
7711 Mon Jun 28 12:22:11 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7712
7713 * genscripts.sh (LIB_PATH): Only add /usr/local/lib if it's
7714 different from libdir.
7715
7716 * Makefile.in (scriptdir): Base on tooldir, not datadir.
7717
7718 Sat Jun 26 12:03:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7719
7720 * ldver.c (help): New function.
7721 * ldver.h: Declare it.
7722 * ldlex.l, ldgram.y: Recognize new options --help and --version.
7723
7724 Mon Jun 21 20:39:48 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
7725
7726 * Makefile.in (INCLUDES): Don't need ../include any more.
7727
7728 Mon Jun 21 16:38:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7729
7730 * ldlex.l, ldgram.y: Support new -oformat option.
7731 Remove attempt at supporting script fragments on the command line.
7732 * ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
7733 * mri.c (mri_format), ldgram.y: Change callers.
7734 * ldlang.h: Change prototype.
7735
7736 Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
7737
7738 * Makefile.in: canonicalize install.sh; for use within
7739 this directory (and subdirs)
7740
7741 Thu Jun 17 14:33:09 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7742
7743 * ldgram.y: Tweak grammar to make reporting of invalid options work.
7744
7745 * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
7746 and .cc.o rule.
7747
7748 Wed Jun 16 11:45:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7749
7750 * ldfile.c (ldfile_open_command): Don't try .ld extension.
7751 It wasn't documented (or likely used) and wastes time.
7752 (try_open): If EXTEN is empty, don't try it.
7753
7754 * ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
7755 ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
7756 ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
7757 with normal function declarations.
7758
7759 * Move *.em to emultempl/*.em. Move *.sh to emulparams/*.sh.
7760 Move *.sc-sh to scripttempl/*.sc.
7761 * {emultempl,emulparams,scripttempl}/README: New files.
7762 * sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
7763 removed, replaced with generic.em.
7764 * h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
7765 h8[35]00hms.s[ch]. Change their contents to omit the "hms".
7766
7767 * *.em (*_get_script): Return script name instead of script contents.
7768 * ldlang.c (lang_process): Change caller.
7769
7770 * ldlex.l, ldgram.y: Recognize -m option.
7771 Check for input files after *all* options in grammar.
7772 * ldmain.c (main): Check for -m options. Add default directory
7773 for -m.
7774
7775 * mkscript.c: File removed.
7776 * genscripts.sh: Take two more parameters, tooldirlib and libdir,
7777 to add to the default LIB_PATH.
7778 Look for input files in the new subdirectories.
7779 Create the scripts in emulations subdirectory and don't filter
7780 them through mkscript.
7781 * configure.in: Make the emulations subdirectory.
7782
7783 * Makefile.in: Account for all of the above changes.
7784 Remove unused .SUFFIXES. Get libgcc.a path with gcc
7785 -print-libgcc-file-name instead of $(libdir)/libgcc.a.
7786 Put CFLAGS last in the compilation rules.
7787 Add -I../bfd to INCLUDES so sysdep.h is found.
7788
7789 Tue Jun 15 23:04:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7790
7791 * Makefile.in (INCLUDES): Look in ../include, not ../bfd.
7792
7793 * aout.sc-sh: Add SHLIB_PATH like STACKZERO. Make STACKZERO
7794 dependent on RELOCATING, not RELOCATION.
7795 * hp3hpux.sh (SHLIB_PATH): Define it.
7796
7797 Mon Jun 14 19:06:15 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7798
7799 * ldfile.c (try_open): If opening without the extension fails,
7800 try with the extension even if -v or -V was given.
7801 had_script is imported (from ldgram.y), not exported.
7802
7803 Mon Jun 14 16:26:10 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
7804
7805 * Makefile.in: remove parentdir support, use INSTALL_XFORM
7806
7807 Thu Jun 10 14:00:06 1993 Ian Lance Taylor (ian@cygnus.com)
7808
7809 * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
7810 * ldgram.y (statement_list_opt): New nonterminal, either empty or
7811 statement_list.
7812 (section): Use statement_list_opt, not statement_list.
7813 * m68kcoff.sc-sh: Gather constructors and destructors and define
7814 __CTOR_LIST__ and __DTOR_LIST__ appropriately.
7815 * sa29200.sc-sh: Gather constructors and destructors and define
7816 ___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
7817
7818 Mon Jun 7 12:53:28 1993 Per Bothner (bothner@rtl.cygnus.com)
7819
7820 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
7821 * configure.in: No longer need to configure to get sysdep.h.
7822
7823 Fri Jun 4 16:18:24 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7824
7825 * Makefile.in: remove install:all and install-info:info
7826 dependencies (these cause some spurious rebuilds at 'make install'
7827 time)
7828
7829 Fri Jun 4 08:50:14 1993 Ian Lance Taylor (ian@cygnus.com)
7830
7831 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
7832 (mips-idt-ecoff*): Added trailing '*'.
7833 * config/mips-idtl.mt: New file; use EMUL of mipsidtl.
7834 * mipsidtl.sh: New file; like mipsidt.sh, but little endian.
7835 * Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
7836
7837 * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
7838 incorrect definitions.
7839
7840 Tue Jun 1 14:56:10 1993 Per Bothner (bothner@rtl.cygnus.com)
7841
7842 * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR
7843 symbols, unless stripping.
7844
7845 Tue May 25 15:34:25 1993 Ian Lance Taylor (ian@cygnus.com)
7846
7847 * Makefile.in: configure looks for ####, so remove lines with many
7848 '#' characters.
7849 * config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
7850 and HOSTING_LIBS correctly so that ``make check'' will work.
7851
7852 Thu May 20 13:56:16 1993 Per Bothner (bothner@deneb.cygnus.com)
7853
7854 * mips.sc-sh: Define _etext, _edata, and _end, in addition
7855 to etext, edata, and end. Needed for IRIX 4.0.5F.
7856 Patch from mwp@iconix.oz.au (Michael Paddon).
7857
7858 * Version 2.2.1 released.
7859
7860 Thu May 20 11:42:06 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7861
7862 * mipsbsd.sc-sh: Renamed from aout-mipsbsd.sc-sh.
7863 * mipsbsd.sh (EMULATION_NAME): Use new file name.
7864
7865 Tue May 18 17:10:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7866
7867 * Makefile.in (LDDISTSTUFF): Remove ld.mm since we can't build it
7868 properly right now.
7869
7870 * Version 2.2 released.
7871
7872 Mon May 17 15:37:28 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7873
7874 * ldver.c (ldversion): Bump version number to 2.2.
7875
7876 Mon May 17 12:44:31 1993 Per Bothner (bothner@cygnus.com)
7877
7878 * NEWS: New file.
7879
7880 Fri May 14 11:26:24 1993 Ian Lance Taylor (ian@cygnus.com)
7881
7882 * mips.sc-sh: Don't define BSS_VAR unless relocating.
7883
7884 Wed May 12 13:33:29 1993 Ian Lance Taylor (ian@cygnus.com)
7885
7886 * Makefile.in (mkscript.o, mkscript): Build mkscript via
7887 mkscript.o, rather than directly from mkscript.c.
7888
7889 Tue May 4 21:58:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7890
7891 * configure.in: Look for ${target_makefile_frag} relative to
7892 ${srcdir}, not relative to build directory.
7893
7894 * hppaosf.em, hppaosf.sc-sh, hppaosf.sh: New files.
7895 * configure.in: Recognize hppa*-hp-osf.
7896 * Makefile.in (ALL_EMULATIONS): Include hppaosf emulation.
7897 (em_hppaosf.c): Build it.
7898 * config/hppaosf.mh, hppaosf.mt: New files.
7899
7900 * ld.h (ALIGN_N): Renamed from ALIGN, because that conflicted with
7901 some system header files. All uses changed.
7902
7903 * configure.in: Recognize i386-aix configurations as i386-coff
7904 targets.
7905
7906 * configure.in: Recognize m68*-*-hpux.
7907 * aout.sc-sh: If STACKZERO and RELOCATING are both defined, output
7908 the value of STACKZERO.
7909 * Makefile.in (ALL_EMULATIONS): Include hp300-hpux emulation.
7910 (em_hp3hpux.c): Build it.
7911 * hp3hpux.sh, config/hp300hpux.mt: New files.
7912
7913 Tue May 4 12:37:35 1993 Ian Lance Taylor (ian@cygnus.com)
7914
7915 * mips.sc-sh: Put constructors in the .data section.
7916 * Makefile.in (cdtest): Added dependency on ld.new.
7917
7918 Mon May 3 19:43:39 1993 Per Bothner (bothner@cygnus.com)
7919
7920 * Makefile.in: Change definition of $(tooldir) to match FSF.
7921 * vax.sh, config/vax.mt, configure.in, Makefile.in:
7922 Support VAX Ultrix and BSD.
7923
7924 Mon Apr 26 18:35:47 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7925
7926 * sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH.
7927
7928 Wed Apr 14 21:01:51 1993 John Gilmore (gnu@cygnus.com)
7929
7930 * ldlang.h (struct memory_region): Change `length' and
7931 `old_length' fields to bfd_size_type. Eliminate use of bfd_offset.
7932 * ldlang.c, mri.c: Corresponding changes, plus lint.
7933
7934 Thu Apr 8 22:08:18 1993 Ian Lance Taylor (ian@cygnus.com)
7935
7936 * configure.in: For all i386 targets, accept i486 as well.
7937
7938 Mon Apr 5 17:33:39 1993 Ian Lance Taylor (ian@cygnus.com)
7939
7940 * ldlang.c (wild_doit): Preserve all flags for a
7941 SEC_SHARED_LIBRARY section.
7942 (size_input_section): Consider any SEC_HAS_CONTENTS section when
7943 computing largest_section.
7944
7945 Fri Apr 2 14:33:52 1993 Ian Lance Taylor (ian@cygnus.com)
7946
7947 * ldlang.c (lang_output_section_statement_lookup): Initialize all
7948 fields of newly created structure.
7949
7950 Wed Mar 31 18:19:15 1993 Ian Lance Taylor (ian@cygnus.com)
7951
7952 * ldmain.c (g_switch_value): New variable.
7953 * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
7954 (command_line_option): Accept -G and set g_switch_value.
7955 * ldlex.l (COMMAND): Accept -G.
7956 * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
7957
7958 Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7959
7960 Support for linking and loading at different places:
7961
7962 * ldlex.l: Add "AT" keyword.
7963 * ldgram.y: Cleanup, and parse AT.
7964 * ldlang.c (print_output_section_statement): Print output address
7965 of section in map. (lang_size_sections): Fill sections' lma with
7966 load address.
7967 * ldlang.h (lang_output_section_statement_type): Add load_base
7968 information.
7969
7970 * ldindr.c (add_indirect): Keep more information in the alias
7971 symbol chain.
7972 * ldlang.c (wild_doit): Don't inherit NEVER_LOAD section
7973 attribute from an input section.
7974 * ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
7975 default. (Q_enter_file_symbos): Indirect symbols now are known by
7976 their section, not a special symbol flag.
7977 * ldsym.c (write_file_locals): Indirect symbols aren't local.
7978 (write_file_globals): Write the mapping for an indirect symbol.
7979 * relax.c (build_it): When forced to write a NEVER_LOAD section,
7980 fill it with zeros.
7981
7982 Tue Mar 23 13:24:10 1993 Jeffrey Osier (jeffrey@fowanton.cygnus.com)
7983
7984 * ld.texinfo: changes for q1
7985
7986 Tue Mar 23 00:13:29 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7987
7988 * Makefile.in: add dvi target, define & use TEXI2DVI, add installcheck
7989
7990 Mon Mar 8 20:30:35 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7991
7992 * Makefile.in: rename HOST_CC to CC_FOR_BUILD
7993
7994 Thu Mar 4 12:44:33 1993 Ian Lance Taylor (ian@cygnus.com)
7995
7996 * mips.sc-sh: Added variables which may be overridden by a
7997 specific emulation.
7998 * mipsidt.sh: New file; emulation for IDT MIPS board.
7999 * Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
8000 (em_mipsidt.c): New target. Uses mipsidt.sh and mips.sc-sh.
8001 * config/mips-idt.mt: New file; sets EMUL to mipsidt.
8002 * configure.in (mips-idt-ecoff): New target; uses mips-idt.
8003
8004 Sat Feb 27 00:00:14 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8005
8006 * aout-mipsbsd.sc-sh, mipsbsd.sh: New files from Ralph Campbell,
8007 ralphc@pyramid.com.
8008 * i386bsd.sh, config/i386bsd.mt: New files.
8009 * configure.in, Makefile.in: Added support for mipsbsd and 386bsd.
8010
8011 Thu Feb 25 15:33:10 1993 Per Bothner (bothner@rtl.cygnus.com)
8012
8013 * mri.c: Add extern declaration of strdup.
8014 * ldsym.c (KEEP macro): Add spaces around '=' for the
8015 sake of old (e.g. PCC) compilers.
8016
8017 Wed Feb 24 19:49:31 1993 Per Bothner (bothner@rtl.cygnus.com)
8018
8019 * ldver.c: Bump to version 2.1.
8020
8021 Fri Feb 12 08:09:11 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8022
8023 * ldgram.y: allow section types without address expressions.
8024 * ldlang.c (lang_relocate_globals): avoid possible hang with
8025 undefined but unreferenced symbols.
8026 * relax.c (relax_section): don't complain if the script file isn't
8027 relaxable but -relax is set
8028
8029 Thu Feb 18 17:58:45 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8030
8031 * configure.in: go32 is the 3rd part of the triple, not the 2nd
8032
8033 Wed Feb 3 09:05:56 1993 Ian Lance Taylor (ian@cygnus.com)
8034
8035 * mipsbig.sh: New file. Big endian MIPS emulation.
8036 * config/mips-big.mt: New file. Use mipsbig emulation.
8037 * configure.in (mips-sgi-irix*): Use target mips-big.
8038 * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
8039 (em_mipsbig.c): New target. Uses mipsbig.sh.
8040
8041 Tue Feb 2 11:32:27 1993 Ian Lance Taylor (ian@cygnus.com)
8042
8043 * mips.sc-sh: Put .scommon sections into .sbss section.
8044
8045 * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
8046 rather than always putting them in bfd_com_section.
8047 * ldlang.c (lang_common): If a common symbol is not in
8048 bfd_com_section, put in a section of the same name, rather than
8049 always putting it in section COMMON.
8050
8051 Fri Jan 29 09:57:58 1993 Ian Lance Taylor (ian@cygnus.com)
8052
8053 * ldmain.c (subfile_wanted_p): If we already have a common
8054 definition of a symbol, don't necessarily pull in an object file
8055 that provides a non-common definition.
8056
8057 * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
8058 returning OPTION_EB and OPTION_EL. gcc passes these to a MIPS
8059 linker.
8060 * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
8061 (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
8062
8063 Thu Jan 28 15:12:04 1993 Ian Lance Taylor (ian@cygnus.com)
8064
8065 * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
8066 the link to it.
8067
8068 Tue Jan 26 11:49:50 1993 Ian Lance Taylor (ian@cygnus.com)
8069
8070 * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
8071 checking for equality to bfd_com_section.
8072
8073 Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com)
8074
8075 * mips.sc-sh: New file. Ultrix, and hopefully other MIPS ECOFF
8076 targets, linker script.
8077 * mipslit.sh: New file. Little endian MIPS emulation.
8078 * config/mips-lit.mt: New file. Use mipslit emulation.
8079 * configure.in (mips-dec-ultrix*): Use target mips-lit.
8080 * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
8081 (em_mipslit.c): New target. Uses mipslit.sh.
8082
8083 Thu Jan 14 15:30:27 1993 Ian Lance Taylor (ian@cygnus.com)
8084
8085 * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
8086 $(tooldir)/bin/gld, so that gcc can find it with or without
8087 collect2.
8088
8089 Mon Jan 11 18:50:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8090
8091 * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
8092 write_norel. All linking is now done via write_relax. Call
8093 ldsym_write before calling write_relax.
8094 * relax.c: Added copyright.
8095 (write_relax): Renamed from write_relaxnorel. Added relocateable
8096 argument. seclet_dump renamed to bfd_seclet_link.
8097 * relax.h: Added copyright.
8098
8099 Mon Jan 11 15:41:56 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8100
8101 * ldmain.c (decode_library_subfile): Patch from
8102 hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
8103
8104 Fri Jan 8 18:04:33 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8105
8106 * config/vxworks960.mt renamed to config/i960.mt
8107
8108 * configure.in: sparc-aout emulates a sun4, as does
8109 sparc*-vxworks, i960-nindy uses gld960 emulation
8110
8111 Fri Jan 8 14:39:07 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8112
8113 Fix support for NOLOAD, add INCLUDE
8114 * ldfile.c (ldfile_open_command_file): pass file name to
8115 lex_push_file.
8116 * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD
8117 * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
8118 attribute.
8119
8120 Thu Jan 7 10:22:19 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8121
8122 * Makefile.in, config.h: no more default emulation. Make the lack
8123 of emulation a compile time error
8124
8125 Wed Jan 6 01:08:37 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8126
8127 * configure.in: recognise all sparclite variants, not just 'sparclite'
8128
8129 Mon Dec 28 11:15:35 1992 Ian Lance Taylor (ian@cygnus.com)
8130
8131 * m68kcoff.sc-sh: define _end as well as end, for consistency with
8132 aout.sc-sh.
8133
8134 * configure.in: accept *-ericsson-ose for any m68k CPU.
8135
8136 * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
8137 for each output section.
8138
8139 Mon Dec 21 16:06:59 1992 Per Bothner (bothner@rtl.cygnus.com)
8140
8141 * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c: Use new
8142 macro bfd_asymbol_bfd as appropriate.
8143 * Makefile.in: Un-duplicate ldlex.c dependency.
8144 * condigure.in: Replace my_host case table by sourcing
8145 ../bfd/configure.host. Allow std-host as the default.
8146 * ldmisc.c: Change logic for C++ name demangling: There is
8147 no initial '_' to remove from stab-derived function names.
8148
8149 Sun Dec 13 16:31:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8150
8151 * ldlang.c (lang_init_script_file): don't attach the output file
8152 sections to the script file.
8153
8154 Wed Dec 9 08:38:05 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8155 * ldlang.c (wild): run expansion loop over command line bfd too.
8156 (lang_ini_script_file): initialize more parts of the command line
8157 bfd.
8158 * ldlex.l: fix DEFINED start states.
8159
8160 Mon Dec 7 08:43:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8161 -y support
8162 * ld.texinfo: new doc.
8163 * ldgram.y, ldlex.l: understand -y<symbol>
8164 * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
8165 print info. (add_ysym): new function.
8166 * ldsym.h: (ldsym_type): new define SYM_Y.
8167
8168 Sat Nov 21 03:15:27 1992 John Gilmore (gnu@cygnus.com)
8169
8170 * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
8171 ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
8172 ldwrite.h, relax.h: Replace all uses of EXFUN and PROTO ansi-glue
8173 macros with PARAMS. Recreational cleanup. Update copyrights.
8174
8175 Tue Nov 10 00:23:37 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8176
8177 * Makefile.in: pass down the bfd source directory for includes
8178
8179 Thu Nov 5 15:41:55 1992 Ian Lance Taylor (ian@cygnus.com)
8180
8181 * ldlang.c (lang_size_sections): don't change size and address for
8182 SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
8183 sections.
8184
8185 Thu Nov 5 11:33:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8186
8187 * relax.c (build_it): re-enable the processing of data_statements
8188 in scripts, makes counted contructor lists work again.
8189
8190 Thu Nov 5 05:43:01 1992 John Gilmore (gnu@cygnus.com)
8191
8192 * ldemul.h: Remove uses of SDEF and PROTO macros (use PARAMS).
8193
8194 Tue Oct 20 10:56:06 1992 Ian Lance Taylor (ian@cygnus.com)
8195
8196 * m68kcoff.sc-sh: don't use initial underscores for etext, edata
8197 and end.
8198
8199 Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com)
8200
8201 * Support for i386-sysv.
8202 configure.in: check for i386-*-sysv* and i386-*-sco*.
8203 i386coff.sc-sh: rewrote to support SVR3 by default.
8204 ldctor.c (find_constructors): preserve stat_ptr.
8205 ldlang.c (wild_doit): initialize vma and size of new output
8206 section to corresponding input section. This is required for
8207 shared library support.
8208 (lang_size_sections): don't modify vma and size of sections which
8209 are never loaded (for shared libraries).
8210 ldwrite.c (copy_and_relocate): copy the contents of any section
8211 which has contents, not just sections which are loaded (for shared
8212 libraries).
8213
8214 Thu Oct 15 15:20:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8215
8216 * ldlang.c (size_input_section): count the sizes of all sections
8217 we allocate.
8218
8219 Thu Oct 8 09:05:25 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8220
8221 * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to
8222 to demangle symbols better
8223
8224 Tue Oct 6 13:08:54 1992 Ian Lance Taylor (ian@cygnus.com)
8225
8226 * ldlang.c (lang_finish): don't warn if -e start symbol does not
8227 exist when linking with -r.
8228
8229 Mon Oct 5 14:07:37 1992 Ian Lance Taylor (ian@cygnus.com)
8230
8231 * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
8232 .bss segment.
8233
8234 Mon Oct 5 08:55:14 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8235
8236 * ldmain.c (linear_library): don't even think about processing
8237 an object file if it's already been done
8238
8239 Thu Oct 1 23:14:59 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8240
8241 * configure.in: the hp9000/300 config file is now hp300
8242
8243 Wed Sep 30 07:34:09 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8244
8245 * config/z8ksim.mt: new file
8246
8247 Fri Sep 25 13:49:52 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
8248
8249 * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
8250 lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
8251
8252 * ld.h (strip_symbols_type): Add value STRIP_SOME.
8253 * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
8254 * ldlang.c (lang_add_keepsyms_file): New function.
8255 * ldlex.l: Handle "-retain-symbols-file".
8256 * ldsym.c (keepsyms_file, kept_syms): New vars.
8257 (process_keepsyms): New functihon; reads file, marks symbols for
8258 saving.
8259 (write_file_locals): File symbols should always be kept.
8260 (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
8261 and "-s". Process retain-symbols file before setting symtab.
8262 * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
8263 (keepsyms_file, kept_syms): Declare them.
8264
8265 * ldmain.c (main): Non-fatal errors should still cause non-zero
8266 exit status even with -r.
8267
8268 Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8269
8270 Added initial support for the z8k
8271 * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
8272 * configure.in, Makefile.in: modified to reflect above
8273
8274 * ldlang.c (lang_check): when linking conflicting architectures,
8275 make the output file reflect at least one of the bad inputs.
8276
8277 Tue Sep 15 15:35:38 1992 Ian Lance Taylor (ian@cygnus.com)
8278
8279 * Makefile.in (install): if $(tooldir) exists, install ld in
8280 $(tooldir)/bin.
8281
8282 Fri Sep 11 10:24:22 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8283
8284 * Makefile.in, configure.in: modified to support i386-coff
8285 * i386coff.sh: new file
8286
8287 Wed Sep 9 11:52:58 1992 Ian Lance Taylor (ian@cygnus.com)
8288
8289 * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
8290 added m68k-coff emulation mode, stolen from a29k emulation.
8291 Almost certainly wrong, but perhaps better than sun3.
8292
8293 Thu Sep 3 14:19:30 1992 Per Bothner (bothner@rtl.cygnus.com)
8294
8295 * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
8296 gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
8297 vanilla.em: Rename all (generated) ld__*.c files to em_.c.
8298 This is one character shorter, and lets people build on
8299 SVR3 system. (ld__h8300xray.[co] was the killer there;
8300 h8300xray.sc-sh is also overlong, but seems harmless.)
8301 Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
8302 * Makefile.in (clean): Fix typo mostclean -> mostlyclean.
8303 * configure.in: Add host isc.
8304
8305 * ldver.c: Call it version 2.0.
8306
8307 Wed Sep 2 00:21:33 1992 Per Bothner (bothner@rtl.cygnus.com)
8308
8309 * ldver.c: Bump to version 0.98.
8310 * TODO: New file.
8311
8312 * Makefile.in: Added mostlyclean, distclean, realclean rules.
8313
8314 Tue Sep 1 23:42:16 1992 Per Bothner (bothner@rtl.cygnus.com)
8315
8316 * ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
8317 * ldlex.l: Moved comment() to end, since some compilers
8318 otherwise have problems with input() used before it is defined.
8319
8320 Tue Sep 1 17:45:51 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8321
8322 * configure.in: added Solaris 2 and Irix 4 host support.
8323
8324 Mon Aug 31 19:27:11 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8325
8326 * Makefile.in: remove -S flag from the FLEX definition
8327
8328 * configure.in: rewrote, using new style case statement. use
8329 m68k.mt for m68k-aout systems
8330
8331 Sun Aug 30 21:38:53 1992 Ian Lance Taylor (ian@cygnus.com)
8332
8333 * Makefile.in: map "ld" through program_transform_name when
8334 installing.
8335
8336 Sun Aug 30 18:12:13 1992 Per Bothner (bothner@rtl.cygnus.com)
8337
8338 * cplus-dem.c: Removed. Use the version in libiberty now.
8339 * ldmisc.c: Use new libiberty version of cplus_demangle().
8340
8341 Thu Aug 27 16:38:42 1992 Ian Lance Taylor (ian@cygnus.com)
8342
8343 * gld960.em (gld960_choose_target): default to little endian, not
8344 big endian.
8345
8346 Wed Aug 26 17:28:51 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8347
8348 * ldlang.c (lang_process): don't pass null pointers when
8349 abs_output_section is what is required.
8350 * ldwrite.c (ldwrite): use malloc to allocate the largest space
8351 used, and pass that down.
8352 * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
8353 than alloca.
8354
8355 Mon Aug 24 14:42:06 1992 Ian Lance Taylor (ian@cygnus.com)
8356
8357 * configure.in, config/ose68.mt: renamed OSE to ose.
8358
8359 Thu Aug 20 19:55:22 1992 Ken Raeburn (raeburn@cygnus.com)
8360
8361 * ldsym.c (write_file_locals): Reorder check for common or
8362 undefined symbols so that it works.
8363
8364 Tue Aug 18 13:41:36 1992 Ian Lance Taylor (ian@cygnus.com)
8365
8366 * configure.in: accept all m68K family members.
8367
8368 * Makefile.in: always create installation directories.
8369
8370 Thu Aug 13 11:49:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8371
8372 * ldlex.l: now parses comment correctly, added ~ to acceptable
8373 chars in filenames
8374
8375 * ldexp.c (exp_unop): pass down abs_output_section - now can have
8376 unary -ve constants.
8377
8378 * ldlang.c (lang_finish): warn when an entry symbol supplied on
8379 the command line can't be found.
8380
8381 Fri Aug 7 12:31:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8382
8383 * ldlang.h: add new field "loadable" to output_section_statement.
8384 * ldlang.c (lang_output_section_statement_lookup): initilize new
8385 field. (wild_doit): if new field is not set, then stop output
8386 section from being loadable.
8387 (lang_enter_output_section_statement): set the field from the
8388 NOLOAD keyword
8389 * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
8390 * h8300hms.sc-sh, h8300hms.em: get -r right.
8391
8392 Thu Aug 6 18:35:21 1992 Per Bothner (bothner@rtl.cygnus.com)
8393
8394 * ldint.texinfo: New internals manual (beginnings thereof).
8395 * PORTING: Removed, merged into ldint.texinfo.
8396
8397 Tue Aug 4 21:12:29 1992 Per Bothner (bothner@rtl.cygnus.com)
8398
8399 * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
8400 cdtest.exp: A test program (copied from libg++/test-install)
8401 that tests that constructor and destructors are handled
8402 corrrectly.
8403
8404 Mon Aug 3 14:58:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8405
8406 * Makefile.in (install): install from ld.new, renaming during the
8407 copy, or else the next 'make install' needs to re-link ld.
8408
8409 Mon Jul 20 03:37:06 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
8410
8411 * configure.in: generalise hp recognition (from sef).
8412
8413 Sat Jul 18 14:46:04 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8414
8415 * configure.in: recognize bsd and hpux hppa configurations.
8416 error messages echo to stderr, not stdout
8417
8418 Fri Jul 17 22:06:11 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8419
8420 * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
8421 ldmisc.c: removed rcsid's.
8422
8423 Tue Jul 14 08:34:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8424
8425 * ldlang.c (lang_map): print changes in sizes due to relaxing
8426 (size_input_section): maintain the delta information.
8427 * ldlang.h: add new field to struct to contain delta info.
8428 * relax.c (relax_section): complain if input not relaxable.
8429 * ldlex.l : add '_', ',' and '$' to chars which can appear at the
8430 start of a filename
8431
8432 Mon Jul 13 17:33:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8433
8434 * ldmain.c(main): prevent -r and -relax from being on at the same
8435 time.
8436
8437 Wed Jul 1 17:51:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8438
8439 * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
8440 aliasing problems
8441
8442
8443 Thu Jun 18 09:38:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8444
8445 * h8300hms.em, h8300hms.sc-sh: do the right thing for -r
8446 * ldexp.c: lint
8447 * ldlang.c(open_output): set the target arch and machine as soon
8448 as we can. (lang_size_sections): use new macros for setting vma
8449 * ldwrite.c: lint
8450
8451 Mon Jun 15 08:47:43 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
8452
8453 * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
8454 Also deleted an unreachable path to wrs.
8455
8456 Wed May 27 23:24:19 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
8457
8458 * Makefile.in (install): use -d test for $tooldir before
8459 installing ld there so that $tooldir can be inherited from
8460 top-level Makefile.
8461
8462 Wed May 27 16:56:48 1992 Per Bothner (bothner@rtl.cygnus.com)
8463
8464 * ldlang.c: Two non-substantial changes for the sake of
8465 the old Portable C Compiler.
8466
8467 Wed May 27 15:15:58 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8468
8469 * ldgram.y, ldlex.l: parse ABSOLUTE
8470 * ldexp.c: add support for ABSOLUTE
8471
8472 Wed May 27 13:07:20 1992 Per Bothner (bothner@rtl.cygnus.com)
8473
8474 * Makefile.in: Added default definitions for HOSTING_CRT0,
8475 HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
8476 * config/*.mh: Miscellaneous clean-up: Removed definitions
8477 of YACC (since it is not longer used in the Makefile).
8478 Remove HOSTING_* definitions that are subsumed by the
8479 ones added to Makefile.in. Removed most definitions of CC.
8480 * config/{sparc,news,hp300bsd,decstation}.mh: Removed;
8481 These are no longer needed.
8482
8483 Fri May 22 13:47:19 1992 Per Bothner (bothner@cygnus.com)
8484
8485 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
8486 rules, since these are used when building a distribution.
8487 * Makefile.in (ldlex.c): Don't re-direct output, since that
8488 leaves a bogus output files if it fails.
8489
8490 * config/sparc.mh: Fix HOSTING_LIBS so it has a chance of working.
8491 * ldlex.c: Fix some unnecessary flex-specific-isms.
8492
8493 Fri May 8 11:49:43 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8494
8495 * ldgram.y: move spurious semicolon
8496 * ldexp.h: fix prototype
8497
8498 Thu May 7 17:01:12 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
8499
8500 * ld.texinfo: references to linker now say "ld" not "gld".
8501
8502 Wed May 6 13:26:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8503
8504 changed calling convention for Q_enter_global_ref
8505 * ldexp.c, ldlang.c, ldmain.c: reflect this
8506 * ldver.c: bump version to 1.97.1
8507 * ldindr.c (add_indirect): when an edict declaring an indirect
8508 symbol is found, make sure that any ideas about the symbol being
8509 common are changed if it now known to be defined.
8510 * ldmain.c (linear_library): complain once if archive isn't
8511 ranlibbed.
8512 * ldlang.h, ldlang.c: make room for and initialize the complain
8513 once field.
8514
8515 Wed May 6 11:07:35 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8516
8517 * Makefile.in: use flex & bison from ../ if they exist.
8518
8519 Tue May 5 17:47:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8520
8521 * relax.c (build_it): don't allocate space in the output file for
8522 stuff if -R flag applys to it.
8523 * ldfile.c: merge in VMS filename support
8524 * ldmain.c (main): take out ./ from library path, and close file
8525 before unlinking. Make multiple defs of a symbol create an
8526 unexecable file.
8527 * ldmisc.c: fatal errosrs delete output file
8528
8529 Tue May 5 14:05:05 1992 Per Bothner (bothner@rtl.cygnus.com)
8530
8531 * ldver.c: Increase version number to 1.97, for consistency
8532 with ../binutils.
8533
8534 Tue May 5 12:12:24 1992 K. Richard Pixley (rich@cygnus.com)
8535
8536 * Makefile.in: FLEX -> LEX.
8537
8538 * ld.texinfo: {} -> @{@}.
8539
8540 Mon May 4 17:52:41 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
8541
8542 * ld.texinfo: describe alternate, MRI-compatible linker scripts
8543 (and associated change in -c option, now used for these scripts)
8544
8545 Mon May 4 16:10:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8546
8547 * ldver.c: Bumped version to 1.96 - new release, resync with the
8548 bfd too #.
8549 * ldexp.c, ldlang.c: now build memory shape tree in obstacks
8550 rather than with raw malloc, makes it easier to track where memory
8551 is going.
8552 * ldsym.h, ldsym.c: create obstack for all global symbols too.
8553 * ldwrite.c (ldwrite): moved malloc so only used when needed.
8554 * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
8555
8556
8557 Fri May 1 18:17:52 1992 K. Richard Pixley (rich@cygnus.com)
8558
8559 * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
8560
8561 * Makefile.in: use bootstrap for check.
8562
8563 Fri May 1 13:03:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8564
8565 * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
8566 PUBLIC.
8567 * Makefile.in: now use flex, not lex
8568 * ldlex.l, ldlang.c, ldctor.c: lint
8569
8570 Wed Apr 22 12:48:42 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8571
8572 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
8573 different sorts of filenames on the command line than in a script.
8574
8575 Mon Apr 20 22:37:04 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8576
8577 * Makefile.in: rework CFLAGS so that they can be passed on the
8578 make command line. Remove MINUS_G. Default CFLAGS to -g.
8579
8580 Fri Apr 17 08:57:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8581
8582 * relax.c: added handling for new "padding" seclet type, used to
8583 fill out gaps between section.
8584 * ldgram.y, ldlex.l: now -defsym on the command line is done
8585 properly.
8586
8587 Wed Apr 15 21:20:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8588
8589 * Makefile.in: the tooldir copy of ld goes directly in tooldir.
8590
8591 Wed Apr 15 16:09:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8592
8593 * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
8594 scripts.
8595
8596 Thu Apr 9 05:52:02 1992 Ken Raeburn (Raeburn@Cygnus.COM)
8597
8598 * Makefile.in (install): Install second copy in $(tooldir)/bin
8599 without $(program_prefix), since that's what gcc expects.
8600
8601 Sat Apr 4 17:44:06 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8602
8603 * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer.
8604 * h8300*: fix bit rot and add support for h8300xray target
8605 * go32.sh: target emulation for go32.
8606
8607 Mon Mar 16 14:53:29 1992 Steve Chamberlain (sac@rtl.cygnus.com)
8608
8609 * gld960.em, i960.sc-sh. Fix i960 bit rot
8610
8611 Fri Mar 13 19:47:22 1992 K. Richard Pixley (rich@cygnus.com)
8612
8613 * Makefile.in: install man page.
8614
8615 Fri Mar 13 08:23:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8616
8617 * config/mt-<foo> renamed to <foo>.mt
8618 * config/mh-<foo> renamed to <foo>.mt
8619 * configure.in changed to reflect this
8620 * genscripts.sh now make .xbn files rather than .xN files
8621
8622 Sat Mar 7 03:40:40 1992 K. Richard Pixley (rich@cygnus.com)
8623
8624 * ldver.h: fix decl of ldversion.
8625
8626 Fri Mar 6 22:00:35 1992 K. Richard Pixley (rich@cygnus.com)
8627
8628 * Makefile.in: added check target.
8629
8630 Fri Mar 6 06:59:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8631
8632 * ldmain.c (Q_enter_file_symbols): now aliases work again
8633
8634 Thu Mar 5 21:39:29 1992 K. Richard Pixley (rich@cygnus.com)
8635
8636 * Makefile.in: added clean-info target.
8637
8638 Thu Mar 5 16:55:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8639
8640 * ldexp.c (exp_print_tree): don't try and follow null pointers
8641 around.
8642 * ldgram.y: remove 11 shift reduce errors
8643
8644 Tue Mar 3 15:46:39 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8645
8646 * Makefile.in: added tooldir and program_prefix.
8647
8648 Fri Feb 28 08:17:45 1992 Steve Chamberlain (sac at thepub.cygnus.com)
8649
8650 * ldlang.c (size_input_section): don't move absolute sections
8651 around!
8652
8653
8654 Thu Feb 27 09:20:41 1992 Steve Chamberlain (sac at thepub.cygnus.com)
8655
8656 * cplus-dem.c: yet another copy of this - maybe it should go into
8657 libiberty ?
8658 * ldgram.y: now -V and -v have different actions
8659 * ldver.c: if -V, prints list of emulations compiled in
8660 * ldmisc.c: support for cplus demangling
8661
8662
8663 Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
8664
8665 * Makefile.in, configure.in: removed traces of namesubdir,
8666 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
8667 copyrights to '92, changed some from Cygnus to FSF.
8668
8669 Thu Feb 20 17:43:46 1992 Per Bothner (bothner at cygnus.com)
8670
8671 * Makefile.in: Change mkscript rule into one for ./mkscript
8672 (for the sake of makes that don't realize they're the same).
8673 * PORTING: Add more details.
8674 * genscripts.sh: Add more tailorability of DATA_ALIGNMENT.
8675
8676 Mon Feb 17 12:04:36 1992 Per Bothner (bothner at cygnus.com)
8677
8678 * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
8679 config/mt-hp300bsd: New port to hp300 running BSD.
8680
8681 Sat Feb 15 13:59:54 1992 Per Bothner (bothner at cygnus.com)
8682
8683 Major rewrite of how ld is configured. The major idea
8684 is to use shell scripts to generate everything.
8685 * generic.em replaces ldtemplate.
8686 * Other *.em files replace various *.c files.
8687 A *.em file is a shell script that generates the corresponding
8688 ld__*.c file that implements an emulation. This is usually
8689 a straight 'cat' of a here-document, possibly with substitutions.
8690 * Script files (*.sc) are places by *.sc-sh scripts.
8691 Again, these are simple shell scripts that 'cat'
8692 here-documents, usually with some substitutions.
8693 The output a *.sc-sh is a script file.
8694 * Each emulation is defined by a short shell script with
8695 extension *.sh that specifies the emulation-specific
8696 parameters (such as the name of the *.sh-sc and *.em
8697 files to use).
8698 * genscript.sh is the master shell script used to generate
8699 an emulation. It is passed various argument, including
8700 the name a the emulation-speciic *.sh file that it
8701 "sources" to set variables to emulation-specifc parameters.
8702 * config/mt-foo: Changed EMUL=GLDFOO_EMULATION_NAME
8703 to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
8704 * config/mh-foo: Rename LDEMULATION names as appropriate
8705 (usually 'gldfoo' -> plain 'foo').
8706 * ldwrite.c: Fixed a typo in a comment.
8707 * Makefile.in: Major changes. Removed some the sed
8708 magic to converts scripts, since that is now handled
8709 by genscripts.sh and the *.sc-sh scipt generators.
8710 * config.h: Remove a bunch of macros defining emulations
8711 and targets. This becomes one less file to edit when
8712 adding emulations or targets.
8713 * ldemul.h (struct ld_emulation_xfer_struct): Add
8714 emulation_name and target_name fields.
8715 * ldemul.c, ldemul.h: Define some default functions used
8716 by most emulations (and remove from the *.em scripts).
8717 * ldemul.c (ldemul_choose_target): Search the new
8718 ld_emulations array using a loop (instead of a hardwired
8719 nested if statement).
8720 Define the ld_emulation from the automatically-geenrated
8721 ldemul-list.h. This means you no longer have to edit ldemul.c
8722 to add a new emulation.
8723 * ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
8724 their expansions, since the former no longer exist.
8725 * PORTING: A very rough first draft of a porting guide.
8726
8727 * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
8728 to be terminated by a new-line (instead of requiring a semicolon).
8729
8730 Mon Feb 10 16:21:02 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8731
8732 * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
8733 tests for NULL pointers all over the place.
8734 * ldlang.c (lang_process): remember to relocate global symbols
8735 *after* relaxing has done it stuff.
8736
8737 Thu Feb 6 11:40:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8738
8739 * config/mt-coff-h8300: use EMUL like everything else
8740 * ldlang.c: (print_padding_statement): print the right address.
8741 * Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
8742
8743
8744 Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8745
8746 * ldlex.l: Put pack -noinhibit-exec and -sort-common
8747 * ldlang.c (print_data_statement): print the right address.
8748
8749 Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
8750
8751 * Makefile.in: The rule for testing ld by re-linking itself
8752 via an intermediate -r link was moved to the ld1 rule
8753 instead of the ld2 rule. This allows ld2 and ld3 to be identical,
8754 which allows the bootstrap rule to work.
8755 * ldctor.c (find_constructors): Don't create a constructor
8756 list if it is already defined (as would happen if ld is
8757 invoked by collect).
8758
8759 Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8760
8761 * config/mh-sparc.h: now uses libgcc.a
8762 * ldmain.c: quit using exit
8763 * *sc: use *(COMMON) rather than [COMMON]
8764 * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
8765 to allow preprocessing of .l file.
8766 * Makefile.in: New ldlex.l mangling
8767 * ldexp.c (fold_binary): perform expressions with % and / in
8768 integer.
8769 * ldfile.c (open_a): open archives on VMS in a special way
8770
8771
8772 Tue Jan 28 10:18:16 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8773
8774 * ldgram.y: map -M behave in the same way as -Map (sets file name
8775 to be "-".
8776 * ldsym.c, ldlang.c: remember that size of a section is dependent on
8777 whether or not relaxing has been done.
8778 * ldmain.c: don't open a map file if it doesn't have a name
8779 * relax.c: all the brains have moved into bfd.
8780 * ldwrite.c: ammend comment
8781
8782 Fri Jan 24 14:23:46 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8783
8784 * Makefile.in: added relax, also made three stage go through a
8785 partial link stage.
8786 * relax.c : added
8787 * config.h: if GNU960 defined, then default emulation mode is
8788 GLD960
8789 * ldexp.h, ldexp.c: map to file hooks
8790 * ldlang.c: map to file hooks
8791 * ldgram.y: added -Map -relax
8792 * ldlex.l: added -relax, -Map
8793 * ldmain.c: open map file
8794 * ldmisc.c: support for map file
8795 * ldwrite.c: new relax magic
8796
8797 Thu Dec 19 18:49:51 1991 John Gilmore (gnu at cygnus.com)
8798
8799 * Makefile.in, config/tm-*.h: Clean up make output, only
8800 pass DEFAULT_EMULATION to ldmain.c.
8801
8802 Wed Dec 18 15:02:47 1991 Per Bothner (bothner at cygnus.com)
8803
8804 * ldver.c: Bump to version 1.94.
8805
8806 Tue Dec 10 04:07:23 1991 K. Richard Pixley (rich at rtl.cygnus.com)
8807
8808 * Makefile.in: infodir belongs in datadir.
8809
8810 Mon Dec 9 16:26:43 1991 Per Bothner (bothner at cygnus.com)
8811
8812 * Makefile.in: Pass -y to bison. (Again;
8813 accidentally deleted by Rich.)
8814 * news.sc, ldgld68k.sc: Define __end as well as _end.
8815
8816 Sat Dec 7 17:19:26 1991 Steve Chamberlain (sac at rtl.cygnus.com)
8817
8818 * ldindr.h: added to contain prototypes of ldindr.c
8819 * ldfile.c: include ctype.h
8820 * ldmain.c: include the requried prototype headers
8821 * ldwrite.c: get_reloc_upper_bound has been renamed
8822 bfd_get_reloc_upper_bound
8823
8824 Fri Dec 6 23:29:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
8825
8826 * Makefile.in: punt "fundamental" mode because it breaks my emacs
8827 macros. install using INSTALL_PROGRAM and INSTALL_DATA. remove
8828 spaces following hyphens, bsd make can't cope. added
8829 standards.text support and made it look like all the other
8830 makefiles.
8831
8832 * configure.in: configure now runs entirely in objdir so make file
8833 existence checks against ${srcdir}. Mark this directory as
8834 target dependent.
8835
8836 Thu Dec 5 22:46:16 1991 K. Richard Pixley (rich at rtl.cygnus.com)
8837
8838 * Makefile.in: idestdir and ddestdir go away. Added copyrights
8839 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
8840 and mandir now keyed off datadir by default.
8841
8842 Wed Dec 4 23:36:55 1991 Per Bothner (bothner at cygnus.com)
8843
8844 * ldver.c: Bumped version to 1.93.
8845 * Makefile.in: Pass -y to bison.
8846
8847 Mon Nov 25 18:28:40 1991 Steve Chamberlain (sac at cygnus.com)
8848
8849 * config.h: h8 is now coff, not ieee
8850 * h8300hds.sc: reflect the same
8851
8852 Thu Nov 14 19:55:09 1991 Per Bothner (bothner at cygnus.com)
8853
8854 * ldver.c (ldversion()): Update to 1.92.
8855 * ldctor.c: There are two places constructor sets
8856 can be defined. One of them checked for an existing
8857 duplicate, the other didn't. Unfortunately, the latter
8858 was called after the former ...
8859 So, factor out code for inserting a new element into
8860 constructor_name_list (after checking for a duplicate)
8861 into a new function add_constructor_name, and call
8862 it from both aforementioned places (ldlang_add_constructor
8863 and ldlang_check_for_constructors).
8864
8865 Wed Nov 13 15:17:43 1991 Per Bothner (bothner at cygnus.com)
8866
8867 * Makefile.in: Rename .c files generated from ldtemplate
8868 to have names starting with ld__. This helps 'make clean'.
8869
8870 Tue Nov 12 18:36:50 1991 Steve Chamberlain (sac at cygnus.com)
8871
8872 * Makefile.in: Take out the version number for install
8873 * m88kbcs.sc: put in contructor blocks.
8874
8875 Mon Nov 11 18:47:33 1991 Per Bothner (bothner at cygnus.com)
8876
8877 * ldmisc.c, ldmisc.h: Re-write info() to take a filename
8878 parameter, a format, and an arg pointer, and rename it to
8879 vfinfo(). Write info() in terms of new vfinfo().
8880 New einfo() is the same as info(), except it writes to stderr.
8881 * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
8882 ldmisc.c: Replace "error" calls to info() by new einfo().
8883
8884 Mon Nov 11 09:57:32 1991 Steve Chamberlain (steve at cygnus.com)
8885
8886 * ldlex.l ldgram.y: made -V option do same as -v
8887 * Makefile.in: Added $(MINUS_G) flag so debugging can be
8888 turned off
8889
8890 Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
8891 i386 aout changes from Bob Kukura
8892 * Makefile.in, config.h: added i386aout support
8893 * configure.in: fixed /h-{myhost} typo
8894 * ldgram.y: -MM now gives more boring map.
8895 * ldlang.c: now does D_PAGED flag the right way.
8896 * ldsym.c: -MM flags does the right thing.
8897
8898 Sun Nov 3 15:00:03 1991 Per Bothner (bothner at cygnus.com)
8899
8900 * configure.in: Fixed typo. Also, a fix for hp300bsd.
8901 * ldlang.c (init_os): Compensate for BFD change,
8902 where bfd_make_section now returns NULL for a duplicate
8903 section request, instead of the old section.
8904
8905 Thu Oct 17 15:27:13 1991 Per Bothner (bothner at cygnus.com)
8906
8907 * ldver.c: Bump to version 1.91 (consistent with binutils).
8908
8909 Wed Oct 16 12:27:08 1991 Per Bothner (bothner at cygnus.com)
8910
8911 * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
8912 ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
8913 ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
8914 ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
8915 Add or update copyright notices.
8916
8917 Mon Oct 14 23:55:27 1991 Per Bothner (bothner at cygnus.com)
8918
8919 * README: New file.
8920 * Makefile.in: Changed installation directory name scheme
8921 to be consistent with gcc. Also changed 'install'.
8922
8923 Mon Oct 14 17:30:02 1991 Roland H. Pesch (pesch at cygnus.com)
8924
8925 * Makefile.in: new targets ld.mm, ld.me
8926
8927 Mon Oct 14 17:27:24 1991 Per Bothner (bothner at cygnus.com)
8928
8929 * Makefile.in, ldtemplate: Need to use separate scripts
8930 for -n and -N options. Yet more complication.
8931
8932 Fri Oct 11 22:40:46 1991 John Gilmore (gnu at cygnus.com)
8933
8934 * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
8935 work). Add some lines to avoid Sun Make VPATH bugs.
8936
8937 Fri Oct 11 16:42:22 1991 Per Bothner (bothner at cygnus.com)
8938
8939 * news.sc: Add alignment for data segment.
8940 * ldtemplate: Add (yet another) script to get for -n or -N
8941 options. (These need different alignment than ZMAGIC files.)
8942 * Makefile.in: Add stuff for new foo.xn scripts.
8943 These are generated by replacing "ALIGN(0x...00)" by ".".
8944
8945 Fri Oct 11 15:43:04 1991 Roland H. Pesch (pesch at cygnus.com)
8946
8947 * Makefile.in: new targets ld.ms, ld-index.ms
8948 ld.texinfo: remove tabs, other cleanups for texi2roff
8949
8950 Fri Oct 11 13:51:54 1991 Per Bothner (bothner at cygnus.com)
8951
8952 * ldmain.c (main): Make config.magic_demand_paged be true
8953 by default. Don't the WP_TEXT and D_PAGED flags of
8954 output_bfd here; it's too late, so set it when output_bfd
8955 is created (in ldlang.c). Also fix setting of EXEC_P flag
8956 * ldlang.c (ldlang_open_output): Set output_bfd->flags here.
8957 * ldlang.c: Remove some duplicate extern declarations.
8958 * ldgram.y: Fixes to -N and -n options.
8959 * Makefile.in: Recognize upper case letters in sed script
8960 to remove assignments from script files.
8961 * ldtemplate: Don't assukme that -N or -n options
8962 imply use of -r script.
8963 * mkscript.c: Tweaking to correctly handle \n and \\ in input.
8964
8965 Fri Oct 11 10:29:27 1991 Steve Chamberlain (steve at cygnus.com)
8966
8967 * ldtemplate: include bfd.h before sysdep.h.
8968
8969 Fri Oct 11 04:24:45 1991 John Gilmore (gnu at cygnus.com)
8970
8971 Restructure configuration scheme for bfd, binutils, ld.
8972
8973 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
8974 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
8975 Change some config names to match other dirs.
8976 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
8977 get defined first.
8978 * config/: Rename some config files to match up h-*.h names.
8979 Remove all the HOST_SYS definitions from the config files.
8980
8981 Tue Oct 8 16:00:57 1991 Per Bothner (bothner at cygnus.com)
8982
8983 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
8984 * ldtemplate: Remove ldfile_add_library_path calls;
8985 just use the SEARCH_DIR commands in the script files.
8986 * Makefile.in: Add LIB_PATH macro, which if set is used to replace
8987 the SEARCH_DIR commands in the scripts (using ugly sed magic).
8988 This is primarily intended for cross-linking, where you would
8989 place libaries in a different place than native libraries.
8990 Also, emulations made from ldtemplate now use $(srcdir).
8991 * ldglda29k.sc: Change SEARCH_DIR commands to a conventional
8992 form; people can use the Makefile's LIB_PATH to override.
8993
8994 Tue Oct 8 14:51:21 1991 Roland H. Pesch (pesch at cygnus.com)
8995
8996 * Makefile.in: fix target ld.dvi, add target ld.info
8997 ld.texinfo: make info filename ld.info
8998
8999 Fri Oct 4 21:51:58 1991 John Gilmore (gnu at cygnus.com)
9000
9001 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun
9002 Make).
9003 * ldfile.c, ldlang.c, ldmain.c, ldwrite.c: Cope with renames of a
9004 few BFD types & enums.
9005
9006 \f
9007 Local Variables:
9008 mode: change-log
9009 left-margin: 8
9010 fill-column: 74
9011 version-control: never
9012 End:
This page took 0.216832 seconds and 4 git commands to generate.