* ldlex.l (SYMBOLCHARN): Add $, _, and ~.
[deliverable/binutils-gdb.git] / ld / ChangeLog
1 Fri Sep 13 15:49:45 1996 Ian Lance Taylor <ian@cygnus.com>
2
3 * ldlex.l (SYMBOLCHARN): Add $, _, and ~.
4
5 Wed Sep 11 23:30:42 1996 Ian Lance Taylor <ian@cygnus.com>
6
7 * ldmain.c (get_emulation): Check for -mips4 like -mips1, et. al.
8
9 Thu Sep 5 15:24:12 1996 Ian Lance Taylor <ian@cygnus.com>
10
11 * ldlang.c (section_already_linked): Accept a lang_input_statement
12 as the PTR argument. If the file is symbols only, discard all
13 input sections.
14 (ldlang_add_file): Pass entry to bfd_map_over_sections.
15
16 Wed Sep 4 15:53:43 1996 Ian Lance Taylor <ian@cygnus.com>
17
18 * configure.tgt (alpha-*-gnu*): New target. From Fila Kolodny
19 <fila@ibi.com>.
20
21 start-sanitize-v850
22 Tue Sep 3 00:52:54 1996 Jeffrey A Law (law@cygnus.com)
23
24 * emulparms/v850.sh: Set OTHER_RELOCATING_SECTIONS
25
26 Sun Sep 1 21:48:58 1996 Jeffrey A Law (law@cygnus.com)
27
28 * emulparms/v850.sh: Set EMBEDDED.
29
30 Fri Aug 30 22:30:30 1996 Jeffrey A Law (law@cygnus.com)
31
32 * emulparms/v850.sh: Entry symbol is "_start", tweak
33 ctor/dtor support.
34
35 end-sanitize-v850
36 Fri Aug 30 18:32:31 1996 Ian Lance Taylor <ian@cygnus.com>
37
38 * configure.tgt (sh-*-elf*): New target.
39 * emulparams/shelf.sh: New file.
40 * emulparams/shlelf.sh: New file.
41 * Makefile.in (ALL_EMULATIONS): Add eshelf.o and eshlelf.o.
42 (eshelf.c, eshlelf.c): New targets.
43 * scripttempl/elf.sc: If EMBEDDED is defined, then don't add
44 SIZEOF_HEADERS to TEXT_START_ADDR. Expand CTOR_START and CTOR_END
45 around .ctors, and DTOR_START and DTOR_END around .dtors. Expand
46 OTHER_RELOCATING_SECTIONS if RELOCATING.
47
48 Thu Aug 29 16:57:46 1996 Michael Meissner <meissner@tiktok.cygnus.com>
49
50 * configure.{host,tgt} (i[345]86-*-*): Recognize i686 for pentium
51 pro.
52
53 Mon Aug 26 12:58:11 1996 Ian Lance Taylor <ian@cygnus.com>
54
55 * ldgram.y (section): Add opt_nocrossrefs; pass value to
56 lang_enter_overlay.
57 (opt_nocrossrefs): New nonterminal.
58 * ldlex.l: Recognize NOCROSSREFS keyword in EXPRESSION mode.
59 * ldlang.c (overlay_nocrossrefs): New static variable.
60 (lang_enter_overlay): Add nocrossrefs parameter.
61 (lang_leave_overlay): Only add nocrossrefs if overlay_nocrossrefs
62 is set. Initialize overlay_nocrossrefs.
63 * ldlang.h (lang_enter_overlay): Update declaration.
64 * ld.texinfo (Overlays): Update documentation.
65
66 * ldver.c (ldversion): Print GNU ld in the version message.
67
68 Thu Aug 22 17:10:40 1996 Ian Lance Taylor <ian@cygnus.com>
69
70 * configure.host: Set HLDENV.
71 * configure.in: Substitute HLDENV.
72 * configure: Rebuild.
73 * Makefile.in (HLDENV): New variable.
74 ($(LD_PROG)): Use $(HLDENV).
75
76 start-sanitize-v850
77 Thu Aug 22 16:29:28 1996 Jeffrey A Law (law@cygnus.com)
78
79 * Makefile.in (ev850.c): New target.
80 * configure.tgt (v850-*-*): New target.
81 * emulparams/v850.sh: New file.
82
83 end-sanitize-v850
84 Thu Aug 22 11:16:02 1996 Stan Shebs <shebs@andros.cygnus.com>
85
86 * mpw-make.sed: Add @DASH_C_FLAG@ to compiler edit.
87
88 Wed Aug 21 11:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
89
90 * scripttempl/elf.sc: Put .gnu.linkonce* sections in appropriate
91 containing sections.
92
93 Mon Aug 19 13:01:42 1996 Ian Lance Taylor <ian@cygnus.com>
94
95 * fnmatch.c: Include sysdep.h.
96
97 Mon Aug 19 11:28:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
98
99 * genscripts.sh: Undo 8/16 change.
100
101 start-sanitize-d10v
102 * emulparams/d10velf.sh (MACHINE): Explicitly set to nothing.
103 end-sanitize-d10v
104
105 Fri Aug 16 19:18:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
106
107 * genscripts.sh: Explicitly reset any shell variables set or used
108 by the various .sc scripts to allow inadvertant use of these
109 names as normal environment variables by the person running
110 configure.
111
112 start-sanitize-d10v
113 * Makefile.in (ed10velf.c): Use tdir_d10v, not tdir_arcelf.
114 end-sanitize-d10v
115
116 Fri Aug 16 14:15:41 1996 James G. Smith <jsmith@cygnus.co.uk>
117
118 * scripttempl/armcoff.sc (__bss_start__, __bss_end__,
119 __data_start__, __data_end__): Added to keep in sync. with the
120 default ARM crt0.s. Added __CTOR_LIST__ and __DTOR_LIST__ support.
121
122 Thu Aug 8 14:24:56 1996 Ian Lance Taylor <ian@cygnus.com>
123
124 * ldcref.c (check_reloc_refs): If info->same, look for any symbol
125 defined in info->defsec, not just the section symbol.
126
127 Wed Aug 7 14:40:48 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
128
129 * configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
130 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
131 (NEED_DECLARATION_SBRK): New macro.
132 * configure, config.in: Rebuild.
133 * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
134 * ldmain.c (sbrk): Declare if HAVE_SBRK and
135 NEED_DECLARATION_SBRK.
136
137 * ldlang.c (lang_record_phdrs): Cast xmalloc and xrealloc return.
138
139 Mon Aug 5 16:26:14 1996 Ian Lance Taylor <ian@cygnus.com>
140
141 * ldlex.l: Recognize OVERLAY.
142 * ldgram.y: Add section_phdr field to %union.
143 (section): Handle phdr_opt result. Add OVERLAY case.
144 (opt_exp_without_type): New nonterminal.
145 (phdr_opt): Return list of phdrs.
146 (overlay_section): New nonterminal.
147 * ldlang.c: Include <ctype.h>.
148 (lang_leave_output_section_statement): Add phdrs parameter.
149 Change all callers.
150 (lang_section_in_phdr): Remove.
151 (overlay_vma, overlay_lmn, overlay_max): New static variables.
152 (struct overlay_list): Define.
153 (overlay_list): New static variable.
154 (lang_enter_overlay, lang_enter_overlay_section): New functions.
155 (lang_leave_overlay_section, lang_leave_overlay): New functions.
156 * ldlang.h (lang_leave_output_section_statement): Update
157 declaration for new parameter.
158 (lang_section_in_phdr): Don't declare.
159 (lang_enter_overlay, lang_enter_overlay_section): Declare.
160 (lang_leave_overlay_section, lang_leave_overlay): Declare.
161 * ld.texinfo (Overlays): New node under SECTIONS, documenting
162 overlays.
163
164 * ldlex.l: Recognize MAX and MIN.
165 * ldgram.y (MAX, MIN): New terminals.
166 (exp): Recognize MAX and MIN.
167 * ldexp.c (fold_binary): Handle MAX and MIN.
168 * ld.texinfo (Arithmetic Functions): Document MAX and MIN.
169
170 * ld.texinfo (PHDRS): Use @cindex, not @kindex, for program header
171 index entries.
172
173 * ldgram.y (SIZEOF, ADDR): Do not specify type.
174
175 * ldcref.c (check_nocrossref): Skip symbols with no output
176 sections.
177
178 Fri Aug 2 14:57:49 1996 Ian Lance Taylor <ian@cygnus.com>
179
180 * ldgram.y (LOADADDR): New terminal.
181 (exp): Handle LOADADDR.
182 * ldlex.l: Recognize LOADADDR.
183 * ldexp.c (exp_print_token): Add LOADADDR.
184 (fold_name): Implement LOADADDR.
185 * ldlang.c (exp_init_os): Treat LOADADDR like ADDR.
186 * ld.texinfo (Arithmetic Functions): Document LOADADDR.
187
188 Thu Aug 1 12:52:19 1996 Ian Lance Taylor <ian@cygnus.com>
189
190 * ld.h (check_nocrossrefs): Declare.
191 * ldlang.h (struct lang_nocrossref): Define.
192 (struct lang_nocrossrefs): Define.
193 (nocrossref_list): Declare.
194 (lang_add_nocrossref): Declare.
195 * ldlex.l: Recognize NOCROSSREFS keyword.
196 * ldgram.y (%union): Add nocrossref field.
197 (NOCROSSREFS): New terminal.
198 (ifile_p1): Recognize NOCROSSREFS.
199 (nocrossref_list): New nonterminal.
200 * ldlang.c (nocrossref_list): Define.
201 (lang_add_nocrossref): New function.
202 * ldmain.c (main): If nocrossref_list is not NULL, call
203 check_nocrossrefs.
204 (warning_callback): Free symbols if there is no place to store
205 them.
206 (notice): Call add_cref if nocrossref_list is not NULL.
207 * ldcref.c: Include "ldexp.h" and "ldlang.h".
208 (check_nocrossrefs): New function.
209 (check_nocrossref): New static function.
210 (struct check_refs_info): Define.
211 (check_refs, check_reloc_refs): New static functions.
212 * Makefile.in: Rebuild dependencies.
213 * ld.texinfo (Option Commands): Document NOCROSSREFS.
214
215 * ld.texinfo (Section Placement): Improve the wording of the
216 wildcard documentation. Mention that wildcards are only searched
217 for on the command line, not in the file system.
218
219 * emultempl/sunos.em (gld${EMULATION_NAME}_after_open): Move
220 definition of lib_path inside condition where it is used.
221
222 start-sanitize-d10v
223 Wed Jul 31 13:17:10 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
224
225 * emulparams/d10velf.sh: Now works with elf.sc.
226
227 Wed Jul 31 11:52:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
228
229 * emulparams/d10velf.sh (SCRIPT_NAME): Change to vanilla.
230
231 end-sanitize-d10v
232 Tue Jul 30 14:46:42 1996 Ian Lance Taylor <ian@cygnus.com>
233
234 * ldlang.c (lang_size_sections): Add the section VMA to the result
235 value when computing the address of a section.
236
237 * ld.h (args_type): Add cref field.
238 * lexsup.c (parse_args): Set command_line.cref.
239 * ldmain.c (main): Check command_line.cref rather than
240 link_info.notice_all.
241 (notice): Likewise.
242
243 * ldcref.c (output_one_cref): Don't crash if a symbol is defined
244 in a section without an owner.
245
246 Mon Jul 29 17:23:33 1996 Ian Lance Taylor <ian@cygnus.com>
247
248 * fnmatch.h, fnmatch.c: New files.
249 * ldlex.l: Remove unused definition of FILENAME. Add definition
250 of WILDCHAR. In SCRIPT mode, accept any sequence of WILDCHAR as a
251 NAME.
252 * ldgram.y (file_NAME_list): Accept '*' and '?' specially.
253 (input_section_spec): Accept '?' specially.
254 (statement): Change exp to mustbe_exp in length and FILL cases.
255 (section): Call ldlex_script before section statements, and call
256 ldlex_popstate after them.
257 * ldlang.c: Include "fnmatch.h".
258 (wildcardp): New static function.
259 (wild_section): Permit the section name to be a wildcard.
260 (wild_file): New static function, broken out of wild.
261 (wild): Call wild_file. Permit the file name to be a wildcard.
262 (open_input_bfds): Don't call lookup_name for a wildcard pattern.
263 * Makefile.in: Rebuild dependencies.
264 (CFILES): Add fnmatch.c.
265 (HFILES): Add fnmatch.h.
266 (OFILES): Add fnmatch.o.
267 * ld.texinfo: Document that file and section names can now be
268 wildcard patterns.
269
270 * ldlang.c (lang_place_orphans): Correct condition: place a common
271 section if not relocateable or if common definitions are forced.
272
273 start-sanitize-d10v
274 Wed Jul 24 12:16:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
275
276 * emulparams/d10velf.sh (SCRIPT_NAME): Change to elf.
277
278 Wed Jul 24 13:38:22 1996 Michael Meissner <meissner@wogglebug.tiac.net>
279
280 * configure.tgt (d10v-*-*): Don't require the -elf, allow plain d10v.
281
282 Tue Jul 23 10:36:19 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
283
284 * Makefile.in (ed10velf.c): New target.
285 * configure.tgt (d10v-*-elf*): New target.
286 * emulparams/d10velf.sh: New file.
287
288 end-sanitize-d10v
289 Thu Jul 18 16:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
290
291 * configure.tgt (sparc*-*-sysv4*): New target. From Andrew Gierth
292 <ANDREWG@microlise.co.uk>.
293
294 * configure.host: Change irix5 to irix[56]*.
295 * configure.tgt: Likewise.
296
297 Wed Jul 17 10:52:46 1996 Kim Knuttila <krk@cygnus.com>
298
299 * emultempl/pe.em (sort_sections): Pay attention to return code.
300
301 * ldmisc.c (demangle): Remove all prefix '.'s from a name.
302
303 Mon Jul 15 11:49:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
304
305 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Round
306 the value of __start_SECNAME to the alignment required by the
307 section to be placed.
308
309 Tue Jul 9 12:09:02 1996 Ian Lance Taylor <ian@cygnus.com>
310
311 * configure.tgt (mips*el-*-elf*): Use elf32elmip.
312 (mips*-*-elf*): Use elf32ebmip.
313 * emulparams/elf32bmip.sh (EMBEDDED): Don't define.
314 * emulparams/elf32lmip.sh (EMBEDDED): Don't define.
315 * emulparams/elf32elmip.sh: New file; copy of elf32lmip.sh with
316 EMBEDDED defined.
317 * emulparams/elf32ebmip.sh: New file; copy of elf32bmip.sh with
318 EMBEDDED defined.
319 * emulparams/elf32b4300.sh (EMBEDDED): Define.
320 * emulparams/elf32l4300.sh (EMBEDDED): Define.
321 * Makefile.in (ALL_EMULATIONS): Add eelf32ebmip.o eelf32elmip.o.
322 (eelf32ebmip.c, eelf32elmip.c): New targets.
323
324 Thu Jul 4 12:01:03 1996 Ian Lance Taylor <ian@cygnus.com>
325
326 * ldver.c (ldversion): Set version to cygnus-2.7.1.
327
328 * Released binutils 2.7.
329
330 * emulparams/pc532macha.sh: Rename from pc532machaout.sh to avoid
331 System V file name limitations.
332 * configure.tgt (nc32k-pc532-mach*, ns32k-pc532-ux*): Use
333 pc532macha rather than pc532machaout.
334 * Makefile.in (ALL_EMULATIONS): Change epc532machaout.o to
335 epc532macha.o.
336 (epc532macha.c): Rename target from epc532machaout.c.
337
338 Wed Jul 3 11:40:10 1996 Ian Lance Taylor <ian@cygnus.com>
339
340 * ldlang.c (print_padding_statement): Use %u, not %x, to print
341 fill value.
342
343 Sun Jun 30 11:16:43 1996 Stan Shebs <shebs@andros.cygnus.com>
344
345 * mpw-eppcmac.c: Update to reflect May 23 change to aix.em.
346
347 Thu Jun 27 14:03:42 1996 Ian Lance Taylor <ian@cygnus.com>
348
349 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Put the .sa
350 file just before the .so file, rather than just after.
351
352 * configure.host: Use -print-file-name=FILE rather than piping
353 -print-libgcc-file-name through sed.
354 (i[345]86*-*-sco*, i[345]86-*-isc*): Create crtbegin.o and
355 crtend.o files, in case gcc doesn't use them.
356 * Makefile.in (mostlyclean): Remove crtbegin.o and crtend.o.
357
358 Wed Jun 26 15:57:21 1996 Ian Lance Taylor <ian@cygnus.com>
359
360 * configure.tgt (mips*-dec-osf*): New target.
361
362 Tue Jun 25 22:15:29 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
363
364 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
365 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
366 (docdir): Removed.
367 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
368 (AC_PROG_INSTALL): Added.
369 * configure: Rebuilt.
370
371 Mon Jun 24 18:48:16 1996 Michael Meissner <meissner@tiktok.cygnus.com>
372
373 * scripttempl/elfppc.sc (_GLOBAL_OFFSET_TABLE_): Don't do a
374 PROVIDE of _GLOBAL_OFFSET_TABLE_, since it needs to be at a
375 non-fixed location.
376
377 Mon Jun 24 17:55:31 1996 Jouke Numan <jnuman@bazis.nl>
378
379 * ldlang.h (enum section_type): Define.
380 (lang_output_section_statement_type): Remove loadable field. Add
381 sectype field.
382 (lang_enter_output_section_statement): Change flags parameter in
383 prototype to sectype.
384 * ldgram.y (typebits): Remove.
385 (sectype): New static variable.
386 (opt_at): Use sectype rather than typebits.
387 (type): Set sectype rather than typebits.
388 (atype): Likewise.
389 * ldlex.l: Recognize DSECT, COPY, INFO, and OVERLAY in
390 EXPRESSION mode.
391 * ldlang.c (lang_output_section_statement_lookup): Set sectype
392 field rather than loadable field.
393 (wild_doit): Check sectype rather than loadable.
394 (lang_record_phdrs): Likewise.
395 (lang_enter_output_section_statement): Rename flags parameter to
396 sectype. Set sectype field rather than loadable field. Set flags
397 field based on sectype.
398
399 Mon Jun 24 12:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
400
401 * scripttempl/elf.sc: Force .stab* and .comment sections to start
402 at 0.
403
404 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
405 using shared libraries.
406 * configure: Rebuild with autoconf 2.10.
407
408 Fri Jun 21 17:40:56 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
409
410 * configure.tgt: Add support for *-*-rtems* configurations.
411
412 Fri Jun 21 13:05:51 1996 Richard Henderson <rth@tamu.edu>
413
414 * configure.tgt (alpha-*-linuxecoff*): New target.
415 (alpha-*-linux*): Use elf64alpha.
416 * emulparams/elf64alpha.sh: New file.
417 * emultempl/elf32.em: If ELFSIZE is not set, set it to 32. Use
418 ${ELFSIZE} rather than 32 when calling BFD routines.
419 (hold_rodata): New static variable.
420 (gld${EMULATION_NAME}_place_orphan): Use hold_rodata for a
421 readonly section that is not code.
422 (gld${EMULATION_NAME}_place_section): Set hold_rodata. Don't use
423 a .rel section unless its bfd_section field is not NULL.
424 * Makefile.in (ALL_EMULATIONS): Add eelf64alpha.o.
425 (eelf64alpha.c): New target.
426
427 Fri Jun 21 12:45:46 1996 Ian Lance Taylor <ian@cygnus.com>
428
429 * ldmisc.c (vfinfo): Correct handling of 0 in %W case.
430
431 Thu Jun 20 13:55:28 1996 Ian Lance Taylor <ian@cygnus.com>
432
433 Add enough support to understand the gcc svr3.ifile script:
434 * ldlex.l: Recognize BLOCK and GROUP in EXPRESSION context. Add
435 BIND keyword.
436 * ldgram.y: Add BIND token.
437 (section): Recognize GROUP.
438 (opt_ext_with_type): Recognize a couple of cases of BIND.
439 * ldlang.c (init_os): Don't do anything if section is already
440 initialized. Call exp_init_os on addr_tree field.
441 (exp_init_os): New static function.
442 (map_input_to_output_sections): Call exp_init_os on assignment
443 expression.
444 (lang_place_orphans): Check for common sections by name COMMON
445 rather than by common_section field. Don't warn about absence of
446 [COMMON] command.
447
448 * ldlang.h (lang_input_statement_type): Remove useless fields
449 common_section, common_output_section, and complained, as well as
450 all references to them.
451
452 * ldexp.c: Reindent a lot of code.
453 (exp_fold_tree): Call FAIL rather than einfo in default case.
454
455 Wed Jun 19 11:40:14 1996 Ian Lance Taylor <ian@cygnus.com>
456
457 * configure.host (m88*-*-dgux*): Quote HOSTING_CRT0. From
458 <randall.hron@medaphis.com>.
459
460 Tue Jun 18 15:53:09 1996 Jeffrey A. Law <law@rtl.cygnus.com>
461
462 * scripttempl/h8300s.sc: New file for H8/S.
463 * emulpararms/h8300s.sh: New file for H8/S.
464 * Makefile.in (ALL_EMULATIONS): Add H8/S.
465 (e_h8300s.c): Add dependencies.
466 * configure.tgt: Add H8/S to targ_extra_emuls.
467
468 Tue Jun 18 17:55:39 1996 Ian Lance Taylor <ian@cygnus.com>
469
470 * configure.tgt (i[345]86*-*-isc*): New target. From
471 <uddeborg@carmen.se>.
472
473 Wed Jun 12 12:46:21 1996 Ian Lance Taylor <ian@cygnus.com>
474
475 * lexsup.c: Include "libiberty.h".
476 (parse_args): Copy the -Y argument into memory.
477 (set_default_dirlist): Don't put the ':' back into the directory
478 list.
479
480 Fri Jun 7 11:27:42 1996 Ian Lance Taylor <ian@cygnus.com>
481
482 * emultempl/sunos.em: Include libiberty.h.
483 (gld${EMULATION_NAME}_set_symbols): New static function to add
484 LD_LIBRARY_PATH to the list of search directories.
485 (ld_${EMULATION_NAME}_emulation): Add new set_symbols routine.
486
487 Thu Jun 6 11:50:31 1996 Ian Lance Taylor <ian@cygnus.com>
488
489 * emulparams/elf32bmip.sh (OTHER_GOT_SYMBOLS): Use ALIGN(16)
490 rather than . when computing _gp value. From Per Fogelstrom.
491 * emulparams/elf32lmip.sh (OTHER_GOT_SYMBOLS): Likewise.
492
493 * ldmain.c (main): Don't close and unlink the file on error, since
494 remove_output will do it anyhow.
495 * ldlang.c (open_output): Set boolean variable to true, not 1.
496
497 Wed Jun 5 18:34:14 1996 James G. Smith <jsmith@cygnus.co.uk>
498
499 * emulparams/{elf32b4300.sh,elf32l4300.sh} (SCRIPT_NAME): Use
500 elfmips instead of elf.
501
502 Tue Jun 4 18:43:07 1996 Ian Lance Taylor <ian@cygnus.com>
503
504 * ldcref.c: New file.
505 * ld.h (add_cref, output_cref): Declare.
506 * ldmain.c (main): Initialize notice_all field. If it is set at
507 end of link, call output_cref.
508 (notice): Rename from notice_ysym. Check notice_all.
509 * ldmisc.c (finfo): Make globally visible.
510 * ldmisc.h (finfo): Declare.
511 * lexsup.c (OPTION_CREF): Define.
512 (ld_options): Add "cref".
513 (parse_args): Handle OPTION_CREF.
514 * Makefile.in: Rebuild dependencies.
515 (CFILES): Add ldcref.c.
516 (OFILES): Add ldcref.o.
517 * ld.texinfo, ld.1: Document --cref.
518
519 Tue Jun 4 12:12:25 1996 Tom Tromey <tromey@csk3.cygnus.com>
520
521 * Makefile.in (install): Make $(tooldir) and $(tooldir)/bin.
522
523 Fri May 31 12:40:55 1996 Ian Lance Taylor <ian@cygnus.com>
524
525 * emultempl/pe.em (sort_sections): Don't assume that a
526 wild_statement has a section name.
527
528 Wed May 29 13:13:35 1996 Ian Lance Taylor <ian@cygnus.com>
529
530 * scripttempl/elfmips.sc: Quote test -z argument.
531
532 * ld.texinfo: Clarify the CONSTRUCTORS command.
533
534 Thu May 23 16:07:44 1996 Ian Lance Taylor <ian@cygnus.com>
535
536 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Initialize
537 file, not impfile.
538
539 Wed May 22 11:31:30 1996 Doug Evans <dje@seba.cygnus.com>
540
541 * ldlang.c (wild_doit): Don't copy over SEC_LINK_{ONCE,DUPLICATES}
542 if final link.
543 * emultempl/pe.em (sfunc): Renamed to sort_by_file_name.
544 (sort_by_section_name, sort_sections_1): New functions.
545 (sort_sections): Only sort by file name sections in .idata.
546 Add "Grouped Sections" support.
547 (gld${EMULATION_NAME}_place_orphan): Rewrite to support Grouped
548 Sections.
549 (gld${EMULATION_NAME}_place_section): Delete.
550 * scripttempl/pe.sc (.text,.data,.rdata): Add *(.foo\$).
551 (.CRT,.rsrc): Rewrite to use Grouped Section support.
552
553 Tue May 21 14:31:48 1996 Stan Shebs <shebs@andros.cygnus.com>
554
555 * mpw-eppcmac.c: Update to reflect changes to aix.em.
556
557 Sun May 19 16:59:44 1996 Doug Evans <dje@seba.cygnus.com>
558
559 * ldlang.c (dprint_statement): Stop printing at end of list.
560
561 Sat May 18 13:12:05 1996 Steve Chamberlain <sac@slash.cygnus.com>
562
563 Support for --force-exe-suffix
564 * ld.h (args_type): Add force_exe_suffix.
565 * ld.texinfo: Add documentation.
566 * ldmain.c (main): Add support for option.
567 * lexsup.c (OPTION_FORCE_EXE_SUFFIX): New.
568 (ld_options, parse_args): Add support for option.
569
570 Wed May 15 12:50:25 1996 Jim Wilson <wilson@chestnut.cygnus.com>
571
572 * emultempl/pe.em (set_pe_value): Pass 0 not 16 to strtoul call.
573
574 Fri May 10 16:28:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
575
576 * scripttempl/elfppc.sc (__stack): Make __stack 0 if it was
577 referenced but not defined.
578
579 Thu May 9 08:52:23 1996 Rob Savoye <rob@chinadoll.cygnus.com>
580
581 * emulparams/{elf32bmip.sh,elf32lmip.sh,mipsidt.sh,mipsidtl.sh}:
582 Set a new variable to signify if the final target is an embedded
583 system.
584 * scripttempl/{mips.sc,elfmips.sc}: Don't add SIZEOF_HEADERS to
585 .text for an embedded system.
586
587 Tue May 7 10:56:11 1996 Doug Evans <dje@canuck.cygnus.com>
588
589 * scripttempl/pe.em (gld${EMULATION_NAME}_place_orphan): New function.
590 (gld${EMULATION_NAME}_place_section): New function.
591 (hold_{section,use,text,rdata,data}): New static locals.
592 (ld_${EMULATION_NAME}_emulation): Update orphan field.
593 * scripttempl/pe.sc: Whitespace cleanup. Semicolon usage cleanup.
594 (INIT,FINI): Delete, unused.
595 (.text): Document orphan .text.foo sections.
596 (.rdata): Document orphan .rdata.foo sections.
597 (.data): Document orphan .data.foo sections.
598
599 Tue May 7 11:35:46 1996 Jeffrey A Law (law@cygnus.com)
600
601 * scripttempl/h8300.sc: Place ".tiny" sections right
602 after ".data" sections.
603 * scripttempl/h8300h.sc: Place ".tiny" sections into
604 the "tiny" memory region, 0xff8000 through 0xffff00.
605
606 * scripttempl/h8300.sc: Set the entry point to the value of
607 "_start" rather than the start of the text segment.
608 * scripttempl/h8300h.sc: Likewise.
609
610 * scripttempl/h8300.sc: Place .rodata sections before .text
611 sections in main ram.
612 * scripttempl/h8300h.sc: Likewise.
613
614 Mon May 6 23:32:30 1996 Jeffrey A Law (law@cygnus.com)
615
616 * scripttempl/h8300h.sc: Use "eight", not "eightbit" for the
617 8-bit region and 8-bit sections.
618
619 Wed May 1 17:50:06 1996 Doug Evans <dje@canuck.cygnus.com>
620
621 * ldlang.c (section_already_linked): Fix typos.
622
623 Mon Apr 29 20:31:06 1996 Doug Evans <dje@canuck.cygnus.com>
624
625 * scripttempl/pe.sc (.endjunk): Define __end__.
626
627 Mon Apr 29 17:05:13 1996 Ian Lance Taylor <ian@cygnus.com>
628
629 * ldlang.c (longest_section_name): Remove.
630 (SECTION_NAME_MAP_LENGTH): Define.
631 (print_size, print_alignment, print_fill, print_section): Remove.
632 (print_flags): Remove.
633 (lang_map): Rewrite.
634 (print_output_section_statement): Rewrite.
635 (print_assignment): Rewrite.
636 (print_one_symbol): Rewrite.
637 (print_input_section): Rewrite.
638 (print_fill_statement): Rewrite.
639 (print_data_statement): Rewrite.
640 (print_address_statement): New static function.
641 (print_reloc_statement): Rewrite.
642 (print_padding_statement): Rewrite.
643 (print_wild_statement): Rewrite.
644 (print_statement_list): Clean up.
645 (print_statement): Clean up. Some minor output changes.
646 (print_statements): Clean up.
647 (load_symbols): Put another - before -whole-archive.
648 * ldexp.c (exp_print_tree): Change etree_value and etree_rel to
649 print 0x and to omit leading zeroes. For etree_rel, use %B to
650 print the BFD. For etree_assign, remove the space after the
651 destination name.
652 * ldwrite.c: Include "libiberty.h".
653 (clone_section): Call xstrdup, not strdup.
654 (ldwrite): Don't print any map information.
655 (print_symbol_table, print_file_stuff, print_symbol): Remove.
656 * ldmain.c (main): Call lang_map when appropriate.
657 * ldmisc.c (vfinfo): Add support for %W.
658 (print_address): Remove.
659 * ldmisc.h (print_address): Don't declare.
660 * Makefile.in: Rebuild dependencies.
661
662 Mon Apr 29 10:29:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
663
664 * configure.host (m68*-*-linux*): Add -dynamic-linker to
665 HOSTING_CRT0. Search -lgcc both before and after -lc in
666 HOSTING_LIBS. Look for crt{begin,end}.o in the compiler directory
667 at first.
668 (i[345]86-*-linux*): Look for crt{begin,end}.o in the compiler
669 directory at first.
670
671 Fri Apr 26 14:42:27 1996 Ian Lance Taylor <ian@cygnus.com>
672
673 * ldmisc.h (demangle): Declare.
674 * ldmisc.c: Include "libiberty.h". Include demangle.h with "",
675 not <>.
676 (demangle): Make non-static. Remove remove_underscore paramter.
677 Always return an allocated string.
678 (vfinfo): Free result of demangle. Add case 'G'. Use %T to print
679 functionname, rather than calling demangle. Print a colon between
680 the BFD(section+offset) and the line number.
681 * ldmain.c (add_archive_element): Improve format of archive
682 information in map file.
683 (constructor_callback): Don't print anything to the map file.
684 * ldlang.c (lang_one_common): Improve format of common symbol
685 information in map file.
686 * ldctor.c (ldctor_build_sets): If producing a map file, print set
687 information.
688 * ldwrite.c (print_symbol_table): Print a newline before the
689 header in the map file.
690 * Makefile.in: Rebuild dependencies.
691
692 * ldmisc.c (vfinfo): Reindent.
693
694 Mon Apr 22 12:07:32 1996 Ian Lance Taylor <ian@cygnus.com>
695
696 * ldlang.c (lang_size_sections): If _cooked_size is not 0, then
697 don't clobber it when not relaxing.
698
699 * ld.h (ld_config_type): Remove traditional_format field.
700 * ldmain.c (main): Use link_info.traditional_format rather than
701 config.traditional_format.
702 * ldlang.c (ldlang_open_output): Likewise.
703 * lexsup.c (parse_args): Likewise.
704 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Likewise.
705 * mpw-eppcmac.c (gldppcmacos_parse_args): Likewise.
706
707 * ldlang.c (wild_doit): Discard debugging sections if we are
708 stripping debugging information.
709
710 * emulparams/z8002.sh (ARCH): Set to z8002, not z8k.
711
712 Tue Apr 16 16:38:32 1996 Ian Lance Taylor <ian@cygnus.com>
713
714 * ldexp.c (fold_binary): Correct handling of subtraction with
715 absolute values.
716 (fold_name): Permit symbols in lang_allocating_phase_enum.
717
718 * scripttempl/aout.sc: Only PROVIDE __stack when RELOCATING. Undo
719 accidental changes in last patch.
720
721 Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
722
723 * configure.tgt (powerpc*-*-{sysv,linux}): Add aliases.
724 (powerpcle*-*-{sysv,solaris}): Ditto.
725
726 Mon Apr 15 14:50:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
727
728 * scripttempl/aout.sc: Add PROVIDE (__stack = 0) so I can use it
729 in m68k/crt0.S without things blowing up.
730
731 Fri Apr 12 16:40:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
732
733 * scripttempl/m68kcoff.sc: Remove default address for .data so
734 .text, .data, and .bss are all sequential.
735
736 Thu Apr 11 12:05:35 1996 Ian Lance Taylor <ian@cygnus.com>
737
738 * scripttempl/m68kcoff.sc: Remove regions and simplify.
739
740 Wed Apr 10 14:41:53 1996 Jeffrey A Law (law@cygnus.com)
741
742 * scripttempl/h8300.sc: Add the "8-bit area" in the upper 256
743 bytes of the address space. Put data from the ".eight" sections
744 into the 8-bit area.
745 * scripttempl/h8300h.sc: Likewise.
746
747 Tue Apr 9 14:10:42 1996 Doug Evans <dje@canuck.cygnus.com>
748
749 * emultempl/generic.em (gld${EMULATION_NAME}_before_parse):
750 Pass $ARCH to ldfile_set_output_arch instead of setting
751 ldfile_output_architecture directly.
752
753 Tue Apr 9 14:22:15 1996 Michael Meissner <meissner@tiktok.cygnus.com>
754
755 * scripttempl/elfppc.sc (.init,.fini): Put .init, .fini section
756 next to .text. Put _etext after .text, .init, .fini, and
757 .rodata{,2} sections.
758
759 Tue Apr 9 12:18:57 1996 Ian Lance Taylor <ian@cygnus.com>
760
761 * ld.texinfo: Rearrange option documentation.
762
763 * lexsup.c (ld_options): New static array.
764 (parse_args): Build shortopts and longopts from ld_options array.
765 (help): New static function.
766 * ldver.h (help): Don't declare.
767 * ldver.c (ldversion): Reindent.
768 (help): Remove.
769
770 * ld.texinfo, ld.1: Mention -E as a synonym for -export-dynamic.
771
772 Mon Apr 8 11:56:23 1996 Ian Lance Taylor <ian@cygnus.com>
773
774 * emultempl/elf32.em: When checking for a native emulation, check
775 that the current emulation is the default emulation.
776 * emultempl/sunos.em: Likewise.
777
778 * configure.in: Permit --enable-shared to specify a list of
779 directories.
780 * configure: Rebuild.
781
782 * lexsup.c (parse_args): Add -E as a synonym for -export-dynamic,
783 for HP/UX compatibility.
784
785 Fri Apr 5 14:30:14 1996 Ian Lance Taylor <ian@cygnus.com>
786
787 * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): New
788 static function, if ${host} = ${target}.
789 (gld${EMULATION_NAME}_after_open): Call check_ld_so_conf to find a
790 needed shared library if ${host} = $[target}.
791
792 * configure.host (i[345]86-*-linux*): Add -dynamic-linker to
793 HOSTING_CRT0. Search -lgcc both before and after -lc in
794 HOSTING_LIBS.
795
796 * configure.tgt: Add i[345]86-*-freebsdelf* target; from John
797 Polstra <jdp@polstra.com>.
798
799 Fri Apr 5 18:11:25 1996 James G. Smith <jsmith@cygnus.co.uk>
800
801 * emulparams/elf32{b,l}4300.sh (MACHINE): Add explicit
802 architecture number.
803 * scripttempl/elf.sc: Use $MACHINE definition if present.
804 * configure.tgt (targ_extra_emuls): Force 4100 build to use same
805 template as 4300.
806
807 Mon Apr 1 17:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
808
809 * ldlang.c (lang_size_sections): Change region check to handle
810 regions which end at the highest possible address correctly.
811 From Roland Weber <roweber@ira.uka.de>.
812
813 * ldlang.c (section_already_linked): New static function.
814 (wild_doit): Discard sections with SEC_EXCLUDE set if not doing a
815 relocateable link. Don't worry about section being NULL, since it
816 never should be. Don't call init_os unless the section is going
817 to be added.
818 (ldlang_add_file): Call section_already_linked for each section.
819 * ldmain.c (multiple_definition): Don't warn about multiple
820 definitions in sections which are being discarded.
821
822 Sun Mar 31 00:30:47 1996 steve chamberlain <sac@slash.cygnus.com>
823
824 * scripttempl/{ppcpe.sc, pe.sc} (.junk): Remove and use /DISCARD/.
825 * emultempl/pe.em (init): Remove special case PPC code.
826
827 Fri Mar 29 00:01:29 1996 Jeffrey A Law (law@cygnus.com)
828
829 * scripttempl/h8300.sc: Make vectors section 0xc4 bytes long
830 so as not to overwrite the magic syscall entry at 0xc4.
831 * scripttempl/h8300h.sc: Likewise.
832
833 Thu Mar 28 11:05:47 1996 Doug Evans <dje@canuck.cygnus.com>
834
835 * configure.tgt (sparc64-*-solaris2*): Delete.
836 Stick with sparc-*-solaris2*.
837
838 Wed Mar 27 12:33:24 1996 Ian Lance Taylor <ian@cygnus.com>
839
840 * ld.h (DISCARD_SECTION_NAME): Define to "/DISCARD/".
841 * ldlang.c (init_os): Fail on an attempt to initialize any section
842 named DISCARD_SECTION_NAME.
843 (wild_doit): Discard input sections assigned to an output section
844 named DISCARD_SECTION_NAME.
845 * ld.texinfo: Document use of /DISCARD/.
846
847 * ldlang.c: Fix some indentation and comments.
848
849 Tue Mar 26 18:14:49 1996 Ian Lance Taylor <ian@cygnus.com>
850
851 * ldmain.c (main): Call bfd_set_error_program_name.
852
853 Thu Mar 21 13:17:34 1996 Ian Lance Taylor <ian@cygnus.com>
854
855 * ld.texinfo: Fix a couple of indexing entries. Mention that
856 --verbose displays builtin linker scripts.
857
858 * ldmisc.c (vfinfo): case 'I': If the file is not in an archive,
859 and the local symbol name does not match the filename, print the
860 filename as well.
861
862 Patches from John Polstra <jdp@polstra.com> for FreeBSD ELF:
863 * lexsup.c (parse_args): -Bshareable is a synonym for -shared.
864 * emulparams/elf_i386.sh (NONPAGED_TEXT_START_ADDR): Make the same
865 as TEXT_START_ADDR.
866
867 Wed Mar 20 18:18:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
868
869 * ld.texinfo: Fix typos. Use @pxref only inside parentheses.
870
871 Wed Mar 20 16:56:15 1996 Ian Lance Taylor <ian@cygnus.com>
872
873 * ldmain.c (add_wrap): New function.
874 * ldmain.h (add_wrap): Declare.
875 * lexsup.c (parse_args): Call add_wrap.
876
877 Tue Mar 19 16:44:20 1996 Doug Evans <dje@canuck.cygnus.com>
878
879 * configure.host (sparc*-*-solaris2* host): Accept any sparc variant.
880
881 Wed Mar 13 17:47:31 1996 Jeffrey A Law (law@cygnus.com)
882
883 * scripttempl/h8300.sc: Change name of page zero memory
884 from "null" to "vectors". Create an output section for
885 vectors. Add comments on how to explicitly place items
886 in the vector table.
887 * scripttempl/h8300h.sc: Likewise.
888
889 Wed Mar 13 12:40:18 1996 Ian Lance Taylor <ian@cygnus.com>
890
891 * emultempl/lnk960.em (machine_table): Add jx and hx.
892
893 * genscripts.sh: Don't use ${9:-xx}, since Ultrix /bin/sh doesn't
894 support it.
895
896 Tue Mar 12 12:43:59 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
897
898 * ld.h (ld_config_type): Add warn_multiple_gp field.
899 * lexsup.c (parse_args): Handle --warn-multiple-gp.
900 * ldmain.c (warning_callback): Suppress multiple gp values warning
901 if --warn_multiple_gp was not used.
902 * ld.texinfo, ld.1: Document --warn-multiple-gp.
903
904 Tue Mar 12 12:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
905
906 * lexsup.c (parse_args): Handle --wrap.
907 * ldmain.c (main): Initialize link_info.wrap_hash.
908 * ldexp.c (fold_name): Use bfd_wrapped_link_hash_lookup in DEFINED
909 and NAME cases.
910 * ld.texinfo, ld.1: Document --wrap.
911
912 * configure: Rebuild with autoconf 2.8.
913
914 Don't do SunOS style dynamic linking for sparc-aout:
915 * configure.tgt (sparc64-*-aout*): Use sparcaout, not sun4.
916 (sparclite*-fujitsu-*, sparc*-*-aout): Likewise.
917 (sparc*-wrs-vxworks*): Likewise.
918 * emulparams/sparcaout.sh: New file.
919 * Makefile.in (ALL_EMULATIONS): Add esparcaout.o.
920 (esparcaout.c): New target.
921
922 Wed Mar 6 16:06:52 1996 J.T. Conklin <jtc@rtl.cygnus.com>
923
924 * scripttempl/elfppc.sc (.sdata2, .sbss2): Implement Feb 2 change
925 in a different manner to work around differences in shell variable
926 expansion.
927
928 Wed Mar 6 18:08:18 1996 Ian Lance Taylor <ian@cygnus.com>
929
930 * ldemul.h (ldemul_unrecognized_file): Declare.
931 (ldemulation_xfer_type): Add unrecognized_file field.
932 * ldemul.c (ldemul_unrecognized_file): New function.
933 * ldlang.c (load_symbols): If a file can not be recognized, call
934 ldemul_unrecognized_file before trying it as a linker script.
935 * aix.em (gld${EMULATION_NAME}_unrecognized_file): New static
936 function.
937 (gld${EMULATION_NAME}_read_file): Use FOPEN_RT, not "r".
938 (ld_${EMULATION_NAME}_emulation): Initialize unrecognized_file.
939
940 Mon Mar 4 14:11:17 1996 Ian Lance Taylor <ian@cygnus.com>
941
942 * ldlang.c (wild): Handle foo.a(.text) by mapping each included
943 member of foo.a separately. From Jouke Numan <jnuman@bazis.nl>.
944
945 Fri Mar 1 10:24:59 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
946
947 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
948 Search trinary.cond rather than searching trinary.lhs twice.
949
950 Tue Feb 27 15:08:43 1996 Stan Shebs <shebs@andros.cygnus.com>
951
952 * mpw-make.sed: Edit out shared library support.
953 (@TDIRS@): Edit out, can't use genscripts.
954
955 Tue Feb 27 15:09:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
956
957 * configure.tgt (m68k-*-linuxaout*, m68k-*-linux*): New targets.
958 * emulparams/m68klinux.sh: New file.
959 * emultempl/linux.em (gld${EMULATION_NAME}_before_allocation):
960 Call bfd_${EMULATION_NAME}_size_dynamic_sections instead of
961 bfd_linux_size_dynamic_sections.
962 * Makefile.in (ALL_EMULATIONS): Add em68klinux.o.
963 (em68klinux.c): New target.
964 * configure.host (m68*-*-linuxaout*, m68*-*-linux*): New hosts.
965
966 Tue Feb 27 12:55:46 1996 Ian Lance Taylor <ian@cygnus.com>
967
968 * Makefile.in (ALL_EMULATIONS): Sort into alphabetical order.
969 Fill in missing entries.
970
971 * lexsup.c (parse_args): Recognize --no-whole-archive.
972 * ldlang.h (lang_input_statement_type): Add whole_archive field.
973 * ldlang.c (new_afile): Set whole_archive field.
974 (load_symbols): Check input file specific whole_archive field
975 rather than global variable.
976 * ld.texinfo, ld.1: Document --no-whole-archive.
977
978 Tue Feb 20 16:07:00 1996 Ian Lance Taylor <ian@cygnus.com>
979
980 * configure.tgt: Correct gldi960 to gld960.
981
982 Mon Feb 19 11:16:44 1996 Ian Lance Taylor <ian@cygnus.com>
983
984 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Check
985 the SONAME if it is available.
986 (gld${EMULATION_NAME}_stat_needed): Use the SONAME, not the
987 filename, when checking for conflicting library versions. Don't
988 assume that the suffix is only numbers and dots.
989
990 * ld.texinfo: Mention that -R can be used for -rpath.
991
992 Sun Feb 18 15:05:17 1996 Ian Lance Taylor <ian@cygnus.com>
993
994 * configure.host: Check for 'do not mix' from native linker before
995 trying to use -rpath.
996
997 Thu Feb 15 13:58:06 1996 Ian Lance Taylor <ian@cygnus.com>
998
999 * configure.in: Remove explicit substitution of CFLAGS; autoconf
1000 does it anyhow.
1001 * configure: Rebuild.
1002 * Makefile.in (LDFLAGS): Set to @LDFLAGS@.
1003
1004 * configure.in: Call AC_PROG_CC before configure.host.
1005 * configure: Rebuild.
1006 * configure.host: Remove go32 host, since it should no longer be
1007 necessary. Don't set CC for romp host.
1008
1009 * scripttempl/elf.sc: Don't skip a page in virtual memory space if
1010 the text segment ends exactly on a page boundary.
1011
1012 * configure.in: Substitute RPATH_ENVVAR.
1013 * configure: Rebuild.
1014 * configure.host: Set RPATH_ENVVAR.
1015 * Makefile.in (RPATH_ENVVAR): New variable.
1016 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
1017
1018 Wed Feb 14 18:49:01 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
1019
1020 * configure.in: Redo emulation handling so that each emulation
1021 searches the correct tool directory, based on the target alias.
1022 For example, "configure --enable-targets=m68k-coff i386-linux"
1023 will search /usr/local/i386-linux/lib for linux and
1024 /usr/local/m68k-coff/lib for m68k-coff.
1025 * configure: Rebuild.
1026 * configure.tgt: Add special tdir settings for Linux.
1027 * Makefile.in: Add @TDIRS@. Pass "$(tdir_EMUL)" to ${GENSCRIPTS}
1028 for each eEMUL.c target.
1029 * genscripts.sh: Accept specific alias as 9th argument, and use it
1030 in LIB_PATH.
1031
1032 Wed Feb 14 16:38:36 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
1033
1034 * ldlang.c (lang_set_startof): Don't do anything for a
1035 relocateable link.
1036
1037 * ldgram.y (mri_script_file): Call mri_draw_tree.
1038 * mri.c (mri_draw_tree): Make globally visible. Don't bother to
1039 create memory regions.
1040 (mri_load): Don't call mri_draw_tree.
1041 * mri.h (mri_draw_tree): Declare.
1042
1043 * configure.tgt (m68*-*-psos): New target.
1044 * emulparams/m68kpsos.sh: New file.
1045 * scripttempl/psos.sc: New file.
1046 * Makefile.in (ALL_EMULATIONS): Add em68kpsos.o.
1047 (em68kpsos.c): New target.
1048
1049 Wed Feb 14 11:09:25 1996 Ian Lance Taylor <ian@cygnus.com>
1050
1051 * configure.tgt (*-*-ieee*): New target; use vanilla.
1052
1053 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Strip
1054 `:foo' from ${ARCH}.
1055
1056 Tue Feb 13 15:58:58 1996 Bryan Ford <baford@snake.cs.utah.edu>
1057
1058 * scripttempl/i386msdos.sc: Don't pad the .text section. Put
1059 .rodata in .data.
1060
1061 Tue Feb 13 14:04:19 1996 Ian Lance Taylor <ian@cygnus.com>
1062
1063 * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
1064
1065 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Warn if
1066 it looks like we might be linking in two different versions of the
1067 same shared library. Based on a patch from H J Lu <hjl@zoom.com>.
1068
1069 Thu Feb 8 19:25:54 1996 Ian Lance Taylor <ian@cygnus.com>
1070
1071 * ldlang.c (lang_size_sections): Increment the section size when a
1072 padding statement is encountered.
1073
1074 Wed Feb 7 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
1075
1076 * configure.in: Look for --enable-shared. Change the value of
1077 BFDLIB when linking against a shared library on SunOS.
1078 * configure: Rebuild.
1079 * configure.host: If using a shared BFD library, try to pass a
1080 reasonable -rpath option when linking.
1081 * Makefile.in (BFDLIB): Set to @BFDLIB@.
1082
1083 Tue Feb 6 12:29:14 1996 Doug Evans <dje@charmed.cygnus.com>
1084
1085 * emulparams/elf64_sparc.sh (ARCH): Change to `sparc:v9'.
1086 * emultempl/generic.em: Strip `:foo' from ${ARCH}.
1087
1088 Mon Feb 5 16:25:30 1996 Ian Lance Taylor <ian@cygnus.com>
1089
1090 Support for building bfd and opcodes as shared libraries, based on
1091 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
1092 * configure.in (HLDFLAGS): New substitution.
1093 * configure: Rebuild.
1094 * configure.host: Set HLDFLAGS on SunOS.
1095 * Makefile.in (HLDFLAGS): New variable.
1096 (BFDDEP): New variable.
1097 (BFDLIB): Change to -L../bfd -lbfd.
1098 ($(LD_PROG)): Depend upon $(BFDDEP) rathern than $(BFDLIB). Use
1099 $(HLDFLAGS) in link.
1100 (check): Set LD_LIBRARY_PATH in the environment.
1101
1102 Fri Feb 2 19:26:25 1996 Michael Meissner <meissner@wogglebug.tiac.net>
1103
1104 * scripttempl/elfppc.sc (.sdata2, .sbss2): Put .sdata2 and .sbss
1105 in the read-only section, not read/write unless we are making a
1106 shared library.
1107 (.debug*): Add dwarf debug sections.
1108 (.rela.{sdata*,sbss*}): Add sections.
1109
1110 Fri Feb 2 16:50:21 1996 Ian Lance Taylor <ian@cygnus.com>
1111
1112 * configure: Regenerate.
1113
1114 Thu Feb 1 10:50:46 1996 Ian Lance Taylor <ian@cygnus.com>
1115
1116 * emulparams/elf_i386.sh (TEXT_START_ADDR): Change to 0x8048000,
1117 for SVR4 compatibility.
1118
1119 * ldexp.c (exp_fold_tree): Correct handling of ABSOLUTE.
1120
1121 Wed Jan 31 17:30:19 1996 Steve Chamberlain <sac@slash.cygnus.com>
1122
1123 * configure.tgt (i[345]86-*-cygwin32, powerpcle-*-cygwin32): New.
1124 * emultempl/pe.em (definfo init): Make the default stack reserve
1125 of a PPC larger.
1126
1127 Wed Jan 31 14:34:23 1996 Richard Henderson <rth@tamu.edu>
1128
1129 * configure.tgt (m68*-apple-aux*): New target.
1130 * emulparams/m68kaux.sh: New file.
1131 * scripttempl/m68kaux.sc: New file.
1132 * Makefile.in (ALL_EMULATIONS): Add em68kaux.o.
1133 (em68kaux.c): New target.
1134
1135 Tue Jan 30 13:18:56 1996 Ian Lance Taylor <ian@cygnus.com>
1136
1137 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Ignore
1138 -bnoentry, since the right thing tends to happen anyhow.
1139
1140 Mon Jan 29 12:29:26 1996 Ian Lance Taylor <ian@cygnus.com>
1141
1142 * ld.texinfo, ld.1: Document -export-dynamic.
1143
1144 Fri Jan 26 11:11:55 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1145
1146 * emultempl/sunos.em: Check for native compile by comparing
1147 ${target} and ${host}.
1148
1149 Thu Jan 25 16:46:58 1996 James G. Smith <jsmith@cygnus.co.uk>
1150
1151 * emulparams/{elf32b4300.sh, elf32l4300.sh}: Changed
1152 TEXT_START_ADDR to allow use on IDT and PMON systems.
1153
1154 Wed Jan 24 20:59:40 1996 Steve Chamberlain <sac@slash.cygnus.com>
1155
1156 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
1157 correct spelling.
1158
1159 Wed Jan 24 16:59:19 1996 Doug Evans <dje@charmed.cygnus.com>
1160
1161 * configure.tgt (sparc64-*-solaris2*): New configuration.
1162 (sparc64-*-aout*): Renamed from sparc64*.
1163
1164 Mon Jan 22 13:01:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1165
1166 * Makefile.in (GENSCRIPTS): Pass @host@ @target@ @target_alias@.
1167 * genscripts.sh: Set host, target and target_alias variables.
1168 Check for native compile by comparing ${target} and ${host}.
1169 * emultempl/elf32.em: Likewise.
1170 * scripttempl/elfmips.sc: Test ${target}, not ${target_alias}.
1171
1172 Mon Jan 22 11:03:23 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1173
1174 * scripttempl/elfppc.sc: Refine eabi support to better support
1175 .sdata, .sdata2, .sbss, etc. sections.
1176
1177 Tue Jan 16 15:16:58 1996 Ian Lance Taylor <ian@cygnus.com>
1178
1179 * ldgram.y (%union): Add phdr field.
1180 (phdr): Use phdr_qualifiers rather than opt_hdrs and opt_at.
1181 (phdr_qualifiers): New nonterminal. Add support for FLAGS.
1182 (opt_hdrs, hdr): Remove.
1183 (phdr_val): New nonterminal.
1184 * ldlang.c (lang_new_phdr): Replace hdrs parameter with filehdr
1185 and phdrs parameters. Add flags parameter.
1186 (lang_record_phdrs): Update for changes to lang_phdr. Pass flags
1187 to bfd_record_phdr.
1188 * ldlang.h (struct lang_phdr): Replace hdrs field with filehdr and
1189 phdrs fields. Add flags field.
1190 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Remove.
1191 (lang_new_phdr): Update declaration.
1192 * ld.texinfo: Document FLAGS.
1193
1194 Mon Jan 15 15:07:19 1996 Ian Lance Taylor <ian@cygnus.com>
1195
1196 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation):
1197 Don't make a shared library because of an undefined reference to
1198 __GLOBAL_OFFSET_TABLE_.
1199
1200 Add some Irix 5 support, mostly from Kazumoto Kojima
1201 <kkojima@info.kanagawa-u.ac.jp>:
1202 * emulparams/elf32bmip.sh (SCRIPT_NAME): Change to elfmips.
1203 (SHLIB_TEXT_START_ADDR): Define.
1204 (OTHER_GOT_SYMBOLS): Define.
1205 (OTHER_READWRITE_SECTIONS): Remove initialization of _gp.
1206 (EXECUTABLE_SYMBOLS): Don't define.
1207 (DYNAMIC_LINK): Don't define.
1208 * emulparams/elf32lmip.sh: Same changes as elf32bmip.sh.
1209 * scripttempl/elfmips.sc: New file.
1210 * configure.host (mips*-dec-bsd*): Change mips to mips*.
1211 (mips*-sgi-irix4*): Likewise.
1212 (mips*-sgi-irix5*): New entry.
1213 * Makefile.in (eelf32bmip.c): Depend upon elfmips.sc rather than
1214 elf.sc.
1215 (eelf32lmip.c): Likewise.
1216
1217 Sat Jan 13 09:41:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1218
1219 * scripttempl/elfppc.sc: Remove support for .rel.* sections. Add
1220 .rela.got.neg section.
1221
1222 Fri Jan 12 14:56:19 1996 Ian Lance Taylor <ian@cygnus.com>
1223
1224 * scripttempl/sh.sc: Only build constructors when CONSTRUCTING.
1225
1226 * ldmisc.c: Include <stdarg.h> rather than <varargs.h> if
1227 ANSI_PROTOTYPES is defined. Remove special handling of
1228 WINDOWS_NT. Various indendation fixes.
1229 (vfinfo): Change fmt parameter to const char *.
1230 (info_msg): Write <stdarg.h> version.
1231 (einfo, minfo, finfo): Likewise.
1232 (info_assert): Change file parameter to const char *.
1233 * ldmisc.h (einfo, minfo, info_msg): If ANSI_PROTOTYPES is
1234 defined, use a real prototype.
1235 (info_assert): Change first parameter to be const char *.
1236
1237 Fri Jan 12 13:29:55 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1238
1239 * scripttempl/elfppc.sc: Add support for .sdata2/.sbss2, etc. Add
1240 in old support that 2.7.2 needs, but the current compiler does
1241 not.
1242
1243 * Makefile.in (eelf32{,l}ppc.c): Fix up dependencies to use the
1244 correct Linker script template.
1245
1246 * emulparams/elf32{,l}ppc.sh (TEXT_START_ADDR): Set to 0x40000,
1247 not 0x400000.
1248 (DATA_ADDR,NONPAGED_TEXT_START_ADDR): Delete.
1249
1250 Tue Jan 9 15:53:02 1996 Ian Lance Taylor <ian@cygnus.com>
1251
1252 * scripttempl/alpha.sc: Put .rconst right after .rdata.
1253
1254 Fri Jan 5 14:07:45 1996 Steve Chamberlain <sac@slash.cygnus.com>
1255
1256 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation):
1257 sort using right pointer.
1258
1259 Fri Jan 5 12:25:47 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1260
1261 * scripttempl/elfppc.sc: Remove support for creating special
1262 labels for eabi section begin/end here. The compiler now uses
1263 crt{i,n}.o to create these symbols.
1264
1265 Thu Jan 4 17:08:58 1996 Ian Lance Taylor <ian@cygnus.com>
1266
1267 * configure.host: Change existing Linux HOSTING_CRT0 to be used
1268 for a.out only, and put in appropriate HOSTING_CRT0 and
1269 HOSTING_LIBS values for Linux ELF.
1270
1271 Thu Jan 4 12:02:05 1996 Doug Evans <dje@canuck.cygnus.com>
1272
1273 * scripttempl/h8300.sc: Use all 64K for ram.
1274 * scripttempl/h8300h.sc: Define 256K ram size.
1275
1276 Thu Dec 21 15:57:18 1995 Ian Lance Taylor <ian@cygnus.com>
1277
1278 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Pass
1279 export_defines as true to bfd_xcoff_size_dynamic_sections if -unix
1280 was used, regardless of whether -bE was used.
1281
1282 Tue Dec 19 17:35:38 1995 Ian Lance Taylor <ian@cygnus.com>
1283
1284 * emultempl/aix.em (gld${EMULATION_NAME}_after_open): Only set
1285 relocateable before calling ldctor_build_sets if the output file
1286 is in an XCOFF format.
1287
1288 Fri Dec 15 16:34:36 1995 Ian Lance Taylor <ian@cygnus.com>
1289
1290 * ldwrite.c (build_link_order): When handling a data statement, if
1291 the endianness of the output file is unknown, use the endianness
1292 of the input file.
1293
1294 Tue Dec 12 13:55:41 1995 Stan Shebs <shebs@andros.cygnus.com>
1295
1296 * mpw-config.in: Recognize mips-*-* as equivalent to
1297 mips-idt-ecoff.
1298 * mpw-eppcmacos.c: Rename to shorter mpw-eppcmac.c.
1299 * mpw-ld.r: Add version resources.
1300 (cfrg): Use symbolic instead of literal name for executable.
1301
1302 Mon Dec 11 15:13:41 1995 Kim Knuttila <krk@cygnus.com>
1303
1304 * scripttempl/ppcpe.sc (FINI): Moved the .reloc section.
1305
1306 Wed Dec 6 14:33:50 1995 Doug Evans <dje@canuck.cygnus.com>
1307
1308 * ldlang.c (print_statement{,s}): Delete duplicate prototype.
1309 (print_statement_list): Renamed from print_statement. All callers
1310 updated.
1311 (print_statement): New function to print just one statement.
1312 (print_{data,reloc,padding}_statement): Don't crash if
1313 output_section == NULL.
1314 (dprint_statement): New function.
1315
1316 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix
1317 call to sort_sections.
1318
1319 Wed Dec 6 14:59:06 1995 Ian Lance Taylor <ian@cygnus.com>
1320
1321 * emultempl/aix.em (unix_ld): New static variable.
1322 (gld${EMULATION_NAME}_parse_args): Handle -unix.
1323 (gld${EMULATION_NAME}_before_allocation): If unix_ld, pass
1324 gc as false and export_defineds as true to size_dynamic_sections.
1325
1326 * ldexp.c (exp_fold_tree): Permit assignments to dot in the final
1327 phase if the current section is abs_output_section.
1328
1329
1330 Tue Dec 5 09:49:39 1995 Doug Evans <dje@canuck.cygnus.com>
1331
1332 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix call
1333 to sort_sections.
1334
1335 Fri Dec 1 16:48:36 1995 Ian Lance Taylor <ian@cygnus.com>
1336
1337 * ldgram.y (PHDRS): New token.
1338 (ifile_p1): Accept phdrs.
1339 (section): Accept phdr_opt at the end of the section definition.
1340 (phdr_op): New nonterminal.
1341 (phdrs, phdr_list, phdr, phdr_type, opt_hdrs, hdr): Likewise.
1342 * ldlex.l: Accept PHDRS.
1343 * ldlang.h (struct lang_output_section_phdr_list): Define.
1344 (lang_output_section_statement_type): Add phdrs field.
1345 (struct lang_phdr): Define.
1346 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Define.
1347 (lang_new_phdr): Declare.
1348 * ldlang.c (lang_phdr_list): New static variable.
1349 (lang_output_section_statement_lookup): Initialize phdrs field.
1350 (lang_process): Call lang_record_phdrs.
1351 (lang_new_phdr): New function.
1352 (lang_section_in_phdr): New function.
1353 (lang_record_phdrs): New static function.
1354 * ld.texinfo: Document PHDRS.
1355
1356 Thu Nov 30 13:14:30 1995 Kim Knuttila <krk@cygnus.com>
1357
1358 * scripttempl/ppcpe.sc: Moved .edata into its own section to
1359 expose it.
1360
1361 Thu Nov 30 11:32:34 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
1362
1363 * configure.host (m68*-motorola-sysv): Define HOSTING_CRT0 and
1364 HOSTING_LIBS for testing.
1365 (m88*-motorola-sysv3): Define HOSTING_CRT0 and HOSTING_LIBS for
1366 testing.
1367
1368 Tue Nov 28 12:14:53 1995 Ian Lance Taylor <ian@cygnus.com>
1369
1370 * lexsup.c (parse_args): Set config.dynamic_link to false for -N
1371 and -n.
1372
1373 Mon Nov 27 13:12:09 1995 Ian Lance Taylor <ian@cygnus.com>
1374
1375 * configure: Rebuild with autoconf 2.7.
1376
1377 Fri Nov 24 18:35:35 1995 Doug Evans <dje@canuck.cygnus.com>
1378
1379 * scripttempl/pe.sc: Two .junk's is too much junk.
1380
1381 Tue Nov 21 16:14:32 1995 Ian Lance Taylor <ian@cygnus.com>
1382
1383 * configure.in: Use BFD_NEED_DECLARATION.
1384 * acconfig.h: Put NEED_DECLARATION_FREE in @TOP@ section.
1385 * configure, config.in: Rebuild with autoconf 2.6.
1386
1387 * ldmain.c (constructor_callback): Don't warn about BFD_RELOC_CTOR
1388 being unsupported if this is not a relocateable link and the input
1389 BFD supports it, since ldctor_build_sets can cope with that case.
1390
1391 Fri Nov 17 16:23:15 1995 Stan Shebs <shebs@andros.cygnus.com>
1392
1393 * configure.tgt (powerpc-*-macos*): New target.
1394 * emulparams/ppcmacos.sh: New file, PowerMac emulation.
1395 * Makefile.in (ALL_EMULATIONS): Add eppcmacos.o.
1396 (eppcmacos.c): New target.
1397 * mpw-eppcmacos.c: Update.
1398 * mpw-make.sed: Edit out attempts to use {GENSCRIPTS}.
1399
1400 Fri Nov 17 10:37:27 1995 Ian Lance Taylor <ian@cygnus.com>
1401
1402 * Makefile.in (CC_FOR_TARGET): Use @host@ and @target@, not
1403 $(host_canonical) and $(target_canonical).
1404 (CXX_FOR_TARGET): Likewise.
1405
1406 Thu Nov 16 11:23:42 1995 Doug Evans <dje@canuck.cygnus.com>
1407
1408 * scripttempl/pe.sc (.endjunk): Move definition of `end' to here
1409 so the malloc heap begins at a sane place.
1410
1411 Thu Nov 16 03:09:32 1995 Ken Raeburn <raeburn@cygnus.com>
1412
1413 Version 2.6 released.
1414 * ldver.c (ldversion): Update to 2.6.
1415
1416 * Makefile.in (mostlyclean): Delete ldemul-list.h here, but not
1417 $(GENERATED_*FILES), since they need to be retained by distclean.
1418 (maintainer-clean, realclean): Delete them here.
1419
1420 Tue Nov 14 17:08:06 1995 Ian Lance Taylor <ian@cygnus.com>
1421
1422 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Open the
1423 base file with FOPEN_WB, not "w".
1424
1425 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Use the
1426 environment variable LD_RUN_PATH if neither -rpath nor -rpath-link
1427 were used.
1428 (gld${EMULATION_NAME}_before_allocation): Use the environment
1429 variable LD_RUN_PATH if -rpath was not used.
1430 * ld.texinfo, ld.1: Document LD_RUN_PATH.
1431
1432 Thu Nov 9 13:09:29 1995 Ian Lance Taylor <ian@cygnus.com>
1433
1434 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Recognize
1435 -bl and -bloadmap options.
1436
1437 * ldfile.c (ldfile_try_open_bfd): If bfd_error_invalid_target,
1438 report a better error.
1439
1440 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Add
1441 new local variable special_sections, and pass it to
1442 size_dynamic_sections. Look through the results, and move the
1443 sections around in the mapping so that they are defined correctly.
1444
1445 Wed Nov 8 11:40:59 1995 Ian Lance Taylor <ian@cygnus.com>
1446
1447 * ldemul.c (ldemul_default_target): Cast getenv return value.
1448
1449 Tue Nov 7 11:15:36 1995 Kim Knuttila <krk@cygnus.com>
1450
1451 * emulparams/ppcpe.sh (ARCH): New file for PowerPC Portable
1452 Executable support.
1453 * scripttempl/ppcpe.sc: New file for PowerPC Portable Executable
1454 support.
1455
1456 * configure.tgt (targ_extra_emuls): Added powerpcle-pe target.
1457 * Makefile.in (ALL_EMULATIONS): Added eppcpe.o target.
1458
1459 * emultempl/pe.em (TARGET_IS_ppcpe): file tailoring macro
1460 (gld_$_before_allocation): added hooks for toc construction based
1461 on the above macro.
1462
1463 Tue Nov 7 11:47:23 1995 Ian Lance Taylor <ian@cygnus.com>
1464
1465 * ld.texinfo: The linker does not use _main as an entry point.
1466
1467 Tue Nov 7 11:46:11 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
1468
1469 * scripttempl/m88kbcs.sc (.data): Calculate next boundary modulo
1470 0x2000 not 0x200.
1471
1472 Mon Nov 6 10:59:21 1995 Ian Lance Taylor <ian@cygnus.com>
1473
1474 * configure.in: Add test for whether free must be declared.
1475 * sysdep.h: Declare free if necessary. Include "ansidecl.h".
1476 * acconfig.h: Explain NEED_DECLARATION_FREE.
1477 * configure, config.in: Rebuild.
1478
1479 * lexsup.c (parse_args): Take B:: out of shortopts.
1480
1481 Sun Nov 5 03:08:28 1995 Ken Raeburn <raeburn@cygnus.com>
1482
1483 * emulparams/i386nbsd.sh (EXECUTABLE_SYMBOLS): Set __DYNAMIC to 0
1484 for now, as with m68k4kbsd, until shared library support gets
1485 done.
1486
1487 * configure.host: For i386 BSD variants, crt0.o lives in
1488 /usr/lib. (True for NetBSD at least, unconfirmed for others.)
1489
1490 Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
1491
1492 * Makefile.in (ALL_EMULATIONS): Add edelta68.o.
1493 (edelta68.c): New target.
1494 * configure.tgt (m68*-motorola-sysv*): New target.
1495 * emulparams/delta68.sh: New file.
1496 * scripttempl/delta68.sc: New file.
1497
1498 * scripttempl/m88kbcs.sc: Handle .init and .fini. Change section
1499 addresses.
1500
1501 Wed Nov 1 11:41:56 1995 Ian Lance Taylor <ian@cygnus.com>
1502
1503 * ldgram.y (mri_script_command): Accept ',' as well as '=' in
1504 ALIGN and ALIGNMOD statements.
1505
1506 * emultempl/aix.em: Include ldgram.h.
1507 (gld${EMULATION_NAME}_parse_args): Handle -pD and -pT, as used on
1508 AIX 4.1.
1509 * Makefile.in ($(EMULATION_OFILES)): Depend upon ldgram.h.
1510
1511 Tue Oct 31 18:22:24 1995 David Mosberger-Tang <davidm@azstarnet.com>
1512
1513 * configure.host (alpha-*-linux*): New host.
1514 * configure.tgt (alpha-*-linux*): New target.
1515
1516 Tue Oct 31 12:36:52 1995 Ian Lance Taylor <ian@cygnus.com>
1517
1518 * emultempl/aix.em (export_files): Remove.
1519 (import_files): Make static.
1520 (struct export_symbol_list): Define.
1521 (export_symbols): New static variable.
1522 (gld${EMULATION_NAME}_parse_args): Handle an initial -b option
1523 correctly. Call read_file for an export file.
1524 (gld${EMULATION_NAME}_before_allocation): Call
1525 bfd_xcoff_export_symbol for each export symbol, rather than
1526 calling read_file for each export file.
1527 (gld${EMULATION_NAME}_read_file): For an export file, make the
1528 exported symbols undefined, and store them on the export_symbols
1529 list.
1530
1531 Sat Oct 28 00:10:03 1995 steve chamberlain <sac@slash.cygnus.com>
1532
1533 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
1534 Don't hang if last option is unrecognised.
1535 (gld_${EMULATION_NAME}_set_symbols): Insert created
1536 symbols into ABS output section.
1537
1538 Fri Oct 27 18:03:17 1995 Niklas Hallqvist <niklas@appli.se>
1539
1540 * Makefile.in (ALL_EMULATIONS): Added support for the NetBSD
1541 m68k4k arch.
1542 (em68k4knbsd.c): New rule.
1543
1544 * configure.tgt: Added support for the NetBSD m68k4k arch.
1545
1546 * genscripts.sh, ldint.texinfo,
1547 emulparams/{a29k,armaoutb,armaoutl,coff_sparc,ebmon29k,gld960,
1548 gld960coff,go32,h8300,h8300h,h8500,h8500b,h8500c,h8500m,h8500s,
1549 hp300bsd,hp3hpux,hppaelf.sh,i386aout,i386bsd,i386coff,i386go32,
1550 i386linux,i386lynx,i386nbsd,lnk960,m68kaout,m68kcoff,m68klynx,
1551 m88kbcs,mipsbig,mipsbsd,mipsidt,mipsidtl,mipslit,news,ns32knbsd,
1552 pc532machaout,riscix,sa29200,sh,shl,sparclynx,sparcnbsd,
1553 st2000,sun3,sun4,vanilla,vax,vsta,w65,z8001,z8002}.sh: Changed
1554 PAGE_SIZE to TARGET_PAGE_SIZE.
1555
1556 * emulparams/m68knbsd.h: Ditto.
1557 (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR): We have 8K pagesize.
1558 (EXECUTABLE_SYMBOLS): Hardcode __DYNAMIC to zero for the time
1559 being.
1560
1561 * emulparams/m68k4knbsd.sh: New file.
1562
1563 * scripttempl/aout.sc: Expand EXECUTABLE_SYMBOLS if relocating.
1564
1565 Fri Oct 27 17:59:09 1995 Ian Lance Taylor <ian@cygnus.com>
1566
1567 * emultempl/aix.em: Include ldctor.h.
1568 (gld${EMULATION_NAME}_after_open): New static function.
1569 (gld${EMULATION_NAME}_before_allocation): Call find_relocs.
1570 (gld${EMULATION_NAME}_find_relocs): New static function.
1571 (gld${EMULATION_NAME}_find_exp_assignment): New static function.
1572 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
1573 * scripttempl/aix.sc: Use CONSTRUCTORS in .data.
1574 * ldctor.c (struct set_info): Move definition into ldctor.h.
1575 (struct set_element): Likewise.
1576 (sets): Make non-static.
1577 (ldctor_add_set_entry): Add name parameter. Save it in the new
1578 set element.
1579 (ldctor_build_sets): Avoid being called twice. Pass set element
1580 name to lang_add_reloc.
1581 * ldctor.h (struct set_info): Move definition here from ldctor.c.
1582 (struct set_element): Likewise. Add new field name.
1583 (sets): Declare.
1584 (ldctor_add_set_entry): Declare new name parameter.
1585 * ldwrite.c (build_link_order): Don't insist that either name or
1586 section be NULL in a lang_reloc_statement.
1587 * ldmain.c (add_to_set): Pass NULL to ldctor_add_new_set_entry for
1588 new name parameter.
1589 (constructor_callback): Pass name to ldctor_add_new_set_entry for
1590 new name parameter.
1591
1592 * ldmisc.c (demangle): Fix indentation. Remove a leading period.
1593
1594 Thu Oct 26 22:22:49 1995 Stan Shebs <shebs@andros.cygnus.com>
1595
1596 * mpw-config.in: Add PowerMac target support, generate config.h.
1597 * mac-ld.r: New file, Mac resources.
1598 * mpw-make.sed: New file, edits Makefile.in into MPW syntax.
1599 * mpw-make.in: Remove.
1600 * mpw-eppcmacos.c: Prebuilt version of PowerMac linking script.
1601
1602 Thu Oct 26 14:11:26 1995 Ian Lance Taylor <ian@cygnus.com>
1603
1604 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Treat
1605 -static as a synonym for -bnso.
1606
1607 * scripttempl/aix.sc: Move special symbols inside sections.
1608 Always start .data at 0.
1609
1610 Wed Oct 25 11:52:12 1995 Per Bothner <bothner@kalessin.cygnus.com>
1611
1612 * Makefile.in (diststuff): Also make info.
1613 (maintainer-clean realclean): Also delete *.info*.
1614
1615 Wed Oct 25 11:27:25 1995 Ian Lance Taylor <ian@cygnus.com>
1616
1617 * emultempl/aix.em: Add support for various AIX linker options,
1618 for AIX import and export files, and for AIX shared objects.
1619 * scripttempl/aix.sc: Add .pad. Put .ds just before the TOC.
1620
1621 * ldmain.c (main): Initialize new field link_info.static_link.
1622
1623 * ldmain.c (add_keepsyms_file): Add \n at end of einfo calls.
1624 (constructor_callback): Likewise.
1625 * ldmisc.c (vfinfo): Likewise.
1626 * ldwrite.c (build_link_order): Likewise.
1627
1628 * ld.texinfo: The MRI ALIGN directive is supported.
1629
1630 Mon Oct 23 11:46:43 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
1631
1632 * emulparams/elf32vr4300.sh: Deleted.
1633 * emulparams/elf32vr4300el.sh: Deleted.
1634 * emulparams/elf32b4300.sh: Added.
1635 * emulparams/elf32l4300.sh: Added.
1636 * configure.tgt, Makefile.in: Updated the build to use the
1637 new 8.3 unique names.
1638
1639 Thu Oct 19 17:41:46 1995 Ian Lance Taylor <ian@cygnus.com>
1640
1641 * ldlang.c (entry_symbol): Make non-static.
1642 * ldlang.h (entry_symbol): Declare.
1643
1644 * ldlex.l: Treat PROVIDE as a keyword in expression state.
1645
1646 Wed Oct 18 17:34:06 1995 steve chamberlain <sac@slash.cygnus.com>
1647
1648 * scripttempl/pe.sc (.bss): Move to be after .text
1649
1650 Tue Oct 17 12:22:05 1995 Ian Lance Taylor <ian@cygnus.com>
1651
1652 * emultempl/sunos.em (gld${EMULATION_NAME}_find_exp_assignment):
1653 Search trinary.cond rather than searching trinary.lhs twice. From
1654 linli@ihp.PHys.ethz.CH.
1655
1656 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Move
1657 directory searching code into gld${EMULATION_NAME}_search_dir.
1658 (gld${EMULATION_NAME}_search_dir): New static function, extracted
1659 from gld${EMULATION_NAME}_find_so.
1660 (global_needed, global_found): New static variables.
1661 (gld${EMULATION_NAME}_after_open): New static function.
1662 (gld${EMULATION_NAME}_search_needed): New static function.
1663 (gld${EMULATION_NAME}_try_needed): New static function.
1664 (gld${EMULATION_NAME}_check_needed): New static function.
1665 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
1666 * ld.texinfo, ld.1: Mention -rpath-link on SunOS.
1667
1668 * Makefile.in (eelf32ppc.c): Depend upon elf32.em, not generic.em.
1669 (eelf32lppc.c): Likewise.
1670 * emulparams/elf32lppc.sh (TEMPLATE_NAME): Define as elf32.
1671 (GENERATE_SHLIB_SCRIPT): Define as yes.
1672
1673 Mon Oct 16 19:11:13 1995 Ian Lance Taylor <ian@cygnus.com>
1674
1675 * emultempl/elf32.em: Struct bfd_elf_link_needed_list is now named
1676 bfd_link_needed-list; make appropriate changes.
1677
1678 * configure.tgt (powerpc-*-aix*): New target; use aixppc.
1679 (rs6000-*-aix*): New target; use aixrs6.
1680 * emulparams/aixppc.sh, emulparams/aixrs6.sh: New files.
1681 * emultempl/aix.em: New file.
1682 * scripttempl/aix.sc: New file.
1683 * Makefile.in (ALL_EMULATIONS): Add eaixppc.o and eaixrs6.o.
1684 (eaixppc.c, eaixrs6.c): New targets.
1685
1686 Fri Oct 13 14:00:37 1995 steve chamberlain <sac@slash.cygnus.com>
1687
1688 * scripttemp/pe.sc (.reloc): Move to the end.
1689
1690 Tue Oct 10 17:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
1691
1692 * ldlang.c (lang_finish): Don't try to use an entry_symbol from a
1693 section which was not linked into the final output.
1694
1695 Tue Oct 10 10:17:22 1995 steve chamberlain <sac@slash.cygnus.com>
1696
1697 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Fix
1698 fatal typos.
1699
1700 Tue Oct 10 01:01:51 1995 Ian Lance Taylor <ian@cygnus.com>
1701
1702 * ld.h (args_type): Add rpath_link field.
1703 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search for
1704 required dependencies in rpath_link path. Only search
1705 LD_LIBRARY_PATH when configured native.
1706 * lexsup.c (parse_args): Recognize -rpath-link.
1707 * ld.1, ld.texinfo: Document -rpath-link.
1708
1709 Sat Oct 7 17:07:17 1995 Ian Lance Taylor <ian@cygnus.com>
1710
1711 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
1712 bother searching for needed libraries unless doing a final link.
1713
1714 Fri Oct 6 16:26:16 1995 Ken Raeburn <raeburn@cygnus.com>
1715
1716 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1717
1718 * ld/ld.1: Fix formatting bugs.
1719
1720 Wed Oct 4 17:37:46 1995 Ian Lance Taylor <ian@cygnus.com>
1721
1722 * ldexp.c (exp_get_abs_int): Return bfd_vma, not int.
1723 * ldexp.h (exp_get_abs_int): Update declaration.
1724 * ldlang.c (print_output_section_statement): Use fprintf_vma to
1725 print return value of exp_get_abs_int.
1726
1727 Mon Oct 2 13:56:09 1995 Ian Lance Taylor <ian@cygnus.com>
1728
1729 * emultempl/elf32.em (global_stat): New file static variable.
1730 (gld${EMULATION_NAME}_try_needed): Call stat_needed to make sure
1731 that the file has not already been included under another name.
1732 (gld${EMULATION_NAME}_stat_needed): New static function.
1733
1734 Fri Sep 29 12:00:18 1995 Doug Evans <dje@deneb.cygnus.com>
1735
1736 * scripttempl/armcoff.sc: Start .text at 0x8000.
1737 Start .data at 0x40000.
1738
1739 Fri Sep 29 11:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
1740
1741 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): If
1742 command_line.rpath is set, use it, rather than the -L options, to
1743 build the rules section.
1744 * ld.texinfo: Document this use of -rpath.
1745
1746 * lexsup.c (parse_args): Don't set link_info.shared for -assert
1747 pure-text. Pass true, not 1, to lang_add_entry.
1748 * emultempl/sunos.em (find_assign): New static variable.
1749 (found_assign): New static variable.
1750 (gld${EMULATION_NAME}_before_allocation): Rename local h to hdyn.
1751 If not a relocateable link, and no start symbol was specified on
1752 the command line, and there are any undefined symbols, set
1753 link_info.shared. If link_info.shared is set, set the address of
1754 the .text section to 0x20.
1755 (gld${EMULATION_NAME}_find_assignment): Rename from
1756 gld${EMULATION_NAME}_find_statement_assignment. If find_assign is
1757 set, then just set found_assign based on whether an assignment is
1758 found to find_assign.
1759 (gld${EMULATION_NAME}_get_script): Don't use a special script when
1760 producing a shared library.
1761 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Remove.
1762 * scripttempl/aout.sc: Remove CREATE_SHLIB tests.
1763 * ldlang.c (entry_from_cmdline): New global variable.
1764 (lang_add_entry): Change cmdline parameter from int to boolean.
1765 Use global entry_from_cmdline rather than function static
1766 from_cmdline.
1767 * ldlang.h (entry_from_cmdline): Declare.
1768 (lang_add_entry): Change declaration of second parameter from int
1769 to boolean.
1770 * ldgram.y: Pass false, not 0, to lang_add_entry.
1771
1772 Thu Sep 28 12:34:13 1995 Ian Lance Taylor <ian@cygnus.com>
1773
1774 * ld.h (parsing_defsym): Declare.
1775 * ldlex.h (lex_string): Declare.
1776 * ldlex.l (lex_string): Define.
1777 * lexsup.c (parsing_defsym): Define.
1778 (parse_args): In OPTION_DEFSYM case, set lex_string before calling
1779 lex_redirect, and clear it after calling yyparse. Set
1780 parsing_defsym around call to yyparse.
1781 * ldmain.c (main): Set lex_string before calling lex_redirect, and
1782 clear it after calling yyparse.
1783 * ldmisc.c (vfinfo): For %S, handle --defsym arguments and built
1784 in linker scripts correctly.
1785
1786 * scripttempl/sparccoff.sc: Add .ctors/.dtors handling like other
1787 COFF targets, allowing for the leading underscore used on SPARC
1788 COFF.
1789
1790 * lexsup.c (parse_args): Handle -assert.
1791 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Define.
1792 * emultempl/sunos.em (gld${EMULATION_NAME}_get_script): Use the
1793 shared library script when appropriate.
1794 * scripttempl/aout.sc: If CREATE_SHLIB is set, start the .text
1795 section at SIZEOF_HEADERS.
1796
1797 Thu Sep 28 01:40:37 1995 Doug Evans <dje@deneb.cygnus.com>
1798
1799 * Makefile.in (earmcoff.c): Build.
1800 * configure.tgt (arm-*-coff): New target
1801 * emulparms/armcoff.sh: New file.
1802 * scripttempl/armcoff.sc: New file.
1803
1804 Tue Sep 26 10:59:32 1995 Ian Lance Taylor <ian@cygnus.com>
1805
1806 * scripttempl/i386coff.sc: Remove .data2; no longer needed.
1807
1808 Fri Sep 22 18:09:02 1995 Ian Lance Taylor <ian@cygnus.com>
1809
1810 * ldfile.c (ldfile_set_output_arch): Make arch const.
1811
1812 Thu Sep 21 17:55:24 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1813
1814 * scripttempl/elfppc.sc: Correctly locate __bss_start at the
1815 beginning of the .bss area, not at the end of data. Add
1816 __sbss_{start,end} symbols.
1817
1818 Wed Sep 20 12:29:36 1995 Ian Lance Taylor <ian@cygnus.com>
1819
1820 * Makefile.in (CC_FOR_TARGET): Quote $(program_transform_name).
1821 (CXX_FOR_TARGET, install): Likewise.
1822
1823 Mon Sep 18 14:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
1824
1825 Based on patches by Alan Modra <alan@spri.levels.unisa.edu.au>:
1826 * Makefile.in (CC_FOR_TARGET): Remove brokensed stuff.
1827 (CXX_FOR_TARGET): Likewise.
1828 (install): Likewise.
1829 (GENERATED_HFILES): Remove config.h.
1830 (.dep): Depend upon config.h.
1831
1832 Mon Sep 18 14:39:38 1995 Arne H. Juul <arnej@pvv.unit.no>
1833
1834 * configure.tgt (mips*-dec-netbsd*): New target.
1835
1836 Fri Sep 15 20:01:52 1995 Ken Raeburn <raeburn@cygnus.com>
1837
1838 * configure.host (m88*-*-dgux*): Fix another shell syntax error.
1839
1840 Fri Sep 15 23:28:05 1995 Andrew Cagney <cagney@highland.com.au>
1841
1842 * configure.host (i[345]86-*-bsd*): Fix shell syntax error.
1843
1844 Thu Sep 12 12:50:49 1995 steve chamberlain <sac@slash.cygnus.com>
1845
1846 * scripttemp/pe.sc: Allow both spellings of .ctors/.dtors.
1847 Start .text section on the right boundary. Always align
1848 stabs.
1849
1850 Tue Sep 12 12:24:17 1995 Ian Lance Taylor <ian@cygnus.com>
1851
1852 * Makefile.in (maintainer-clean): New target.
1853
1854 * ldmain.c (struct warning_callback_info): Define.
1855 (warning_callback): Add new parameter symbol. Call
1856 warning_find_reloc to try to find the section and VMA.
1857 (warning_find_reloc): New static function.
1858 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
1859 Pass NULL as symbol parameter to warning callback.
1860
1861 * ld.texinfo: Clarify -L option.
1862
1863 * ldlang.c (lang_one_common): Add cast to avoid warning.
1864 (topower): Likewise. Also, reindent.
1865 * ldwrite.c (clone_section): Change i to unsigned int.
1866 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Add
1867 cast to avoid warning.
1868
1869 Fri Sep 8 16:32:43 1995 Ian Lance Taylor <ian@cygnus.com>
1870
1871 * Makefile.in (config.status): Depend upon configure.tgt.
1872
1873 * ldemul.h (ldemul_set_symbols): Declare.
1874 (ldemul_parse_args): Declare.
1875 * ldemul.c (ldemul_parse_args): Fix indentation.
1876
1877 * configure.in: Call AC_HEADER_DIRENT.
1878 * configure, config.in: Rebuild.
1879 * emultempl/sunos.em: Use autoconf recommend mechanism to define
1880 DIR and struct dirent.
1881
1882 * configure.tgt (mips*-*-bsd*): New case.
1883
1884 * configure.host (i[345]86-sequent-ptx* | i[345]86-sequent-sysv*)
1885 New case.
1886 * configure.tgt (i[345]86-*-ptx*): New case.
1887
1888 Thu Sep 7 10:48:26 1995 Ian Lance Taylor <ian@cygnus.com>
1889
1890 * config.in: Rename from config.h.in.
1891 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
1892 Check for config.h:config.in when creating stamp-h.
1893 * configure: Rebuild.
1894 * Makefile.in (stamp-h): Depend upon config.in rather than
1895 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
1896 calling config.status.
1897
1898 * Makefile.in (distclean): Remove config.h and stamp-h.
1899
1900 * configure.host (sparc-*-sunos64*): Remove.
1901 * ldlang.c (lang_map): Check BFD64, not HOST_64_BIT.
1902
1903 * ldexp.c (exp_fold_tree): Don't warn about moving the location
1904 counter backward in the absolute section.
1905
1906 Wed Sep 6 14:42:11 1995 Ian Lance Taylor <ian@cygnus.com>
1907
1908 * configure.in: Rewrite to use autoconf.
1909 * configure.host: New file.
1910 * configure.tgt: New file.
1911 * aclocal.m4: New file.
1912 * configure: New file, built by autoconf.
1913 * acconfig.h: New file.
1914 * config.h.in: New file, built by autoheader.
1915 * sysdep.h: New file.
1916 * ld.h: Incorporate old contents of config.h.
1917 * config.h: Remove.
1918 * Makefile.in: Various changes for new configure script. Also:
1919 (CC_FOR_BUILD): Remove.
1920 (ldmain.o): Don't bother to ensure that EMUL is non-empty.
1921 (dep.sed): Use @SRCDIR@, not @srcdir@.
1922 * dep-in.sed: Use @SRCDIR@, not @srcdir@.
1923 * genscripts.sh: Create ldscripts if it does not exist.
1924 * ldemul.c, lexsup.c, mpw-emipsidt.c: Don't include "config.h".
1925 * mpw-esh.c, emultemp/*.em: Likewise.
1926 * ldmain.c: Likewise. Include <ctype.h>. Don't try to set
1927 HAVE_SBRK here.
1928 * config/*.mt, config/*.mh: Remove.
1929
1930 Tue Sep 5 14:55:24 1995 Ken Raeburn <raeburn@cygnus.com>
1931
1932 * configure.in: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
1933 ns32k-pc532-lites* like ns32k-pc532-netbsd*. From Ian Dall.
1934
1935 Fri Sep 1 22:29:52 1995 Doug Evans <dje@canuck.cygnus.com>
1936
1937 * scripttempl/pe.sc: Fix typo in spelling of .ctors/.dtors.
1938
1939 Fri Sep 1 13:13:29 1995 Ian Lance Taylor <ian@cygnus.com>
1940
1941 * ldmain.c (warning_callback): Add abfd, section, and address
1942 parameters.
1943 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
1944 Change call to warning accordingly.
1945
1946 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): If not
1947 relocateable and not shared, put .gnu.warning.SYMBOL sections into
1948 the .text section.
1949
1950 Fri Sep 1 08:35:16 1995 James G. Smith <jsmith@beauty.cygnus.com>
1951
1952 * configure.in: Added mips*vr4300-idt-elf* and
1953 mips*vr4300el-idt-elf* targets.
1954 * Makefile.in: Added eelf32vr4300* targets.
1955 * emulparams/{elf32vr4300.sh, elf32vr4300el.sh}: Added.
1956 * config/{mips-vr4300.mt, mips-vr4300el.mt}: Added.
1957
1958 Fri Sep 1 10:51:45 1995 Ian Lance Taylor <ian@cygnus.com>
1959
1960 * scripttempl/a29k.sc: Fix to be reasonable. From Brendan Kehoe
1961 <brendan@cygnus.com>.
1962
1963 Thu Aug 31 16:37:07 1995 steve chamberlain <sac@slash.cygnus.com>
1964
1965 * ldemul.c (ldemul_parse_args): New.
1966 * ldemul.h (ld_emulation_xfer_struct): Add parse_args.
1967 * lexsup.c (all pe stuff): Moved into pe.em
1968 (parse_args): Call emulation arg parser.
1969 * emultempl/pe.em (parse_args): handle PE specfic args.
1970
1971 Thu Aug 31 17:01:37 1995 Ian Lance Taylor <ian@cygnus.com>
1972
1973 * ldlang.c (lang_memory_region_lookup): Don't use the first region
1974 as the default region. Create a new region instead.
1975
1976 Tue Aug 29 14:21:41 1995 steve chamberlain <sac@slash.cygnus.com>
1977
1978 * ldemul.c (ldemul_set_symbols): New function.
1979 * ldemul.h (ld_emulation_xfer_struct): Add set_symbols.
1980 * ldmain.c (main): Add call to ldemul_set_symbols.
1981 * lexsup.c (set_pe_value): New args.
1982 (set_pe_name): New.
1983 (parse_args): Cope with new set_pe_value args.
1984 * emultempl/pe.em (set_symbols): New function.
1985 (ld_emulation_xfer_struct): Add set_symbols.
1986 * scripttempl/pe.sc: Use new symbols.
1987
1988 Thu Aug 24 18:12:18 1995 Ian Lance Taylor (ian@cygnus.com)
1989
1990 * lexsup.c (parse_args): Don't call set_default_dirlist for -O.
1991 For -Y, ignore a leading `P,', and only call set_default_dirlist
1992 after processing all the other arguments.
1993
1994 Tue Aug 22 07:36:58 1995 steve chamberlain <sac@slash.cygnus.com>
1995
1996 * scripttempl/pe.sc: Keep .edata, don't base stabs at 0.
1997 * emulparams/armpe.sh: Run PE script.
1998
1999 Mon Aug 21 18:30:42 1995 steve chamberlain <sac@slash.cygnus.com>
2000
2001 * ldmain.c (main): Remove PE stuff.
2002 * lexsup.c (options): Load more PE options.
2003 (set_pe_value): New function.
2004
2005 Thu Aug 17 13:35:49 1995 steve chamberlain <sac@slash.cygnus.com>
2006
2007
2008 * emultempl/{armpe.sc, i386pe.sc}: Deleted.
2009 * emultempl/pe.sc: New file performs generic PE support and sorts
2010 archive members.
2011 * emulparams/{armpe.sh,i386pe.sh}: Use new file.
2012 * scripttempl/{armpe.sc, i386pe.sc}: Deleted
2013 * scripttempl/pe.sc: New.
2014 * Makefile.in: Use new files.
2015
2016 Thu Aug 17 14:46:34 1995 Doug Evans <dje@canuck.cygnus.com>
2017
2018 * scripttempl/h8500s.sc (.rdata): All data must go in data segment.
2019 (.strings,.ctors,.dtors): Likewise.
2020
2021 Wed Aug 16 11:38:59 1995 steve chamberlain <sac@slash.cygnus.com>
2022
2023 * scripttempl/armpe.sc: Always start code at 0x401000, even
2024 if -r.
2025 * ldwrite.c (strdup): New extern declaration.
2026 * ldgram.y (atype): New rule to clarify type parsing.
2027 * ldlang.c (init_os): Remove commented out code.
2028 (lang_size_sections): Set SEC_ALLOC and SEC_LOAD bits
2029 unless told not to by the link script.
2030
2031 Wed Aug 16 11:45:11 1995 Ian Lance Taylor <ian@cygnus.com>
2032
2033 * ldlang.c (lang_set_startof): New static function.
2034 (lang_process): Call it.
2035
2036 * ldgram.y: Tweak casesymlist to avoid bison errors.
2037
2038 * lexsup.c (parse_args): Accept -h as a synonym for --soname, for
2039 Solaris compatibility.
2040
2041 Tue Aug 15 17:31:16 1995 Ian Lance Taylor <ian@cygnus.com>
2042
2043 * ldgram.y (YYDEBUG): If not defined, define as 1.
2044 (CASE, EXTERN, START): New tokens.
2045 (mri_script_command): Handle CASE, EXTERN, INCLUDE, START.
2046 (casesymlist): New nonterminal.
2047 (extern_name_list): New nonterminal.
2048 * ldlex.l: Accept lower case trailing base specifiers. Don't
2049 ignore the first digit when the base is a suffix. Accept many
2050 EXPRESSION state tokens in MRI state. Support MRI continuation
2051 lines and MRI semicolon comments. Accept all MRI keywords in
2052 lower case. Add CASE, EXTERN, and START MRI keywords.
2053
2054 Tue Aug 8 19:14:58 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
2055
2056 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Use xmalloc
2057 instead of alloca.
2058
2059 Tue Aug 8 15:24:05 1995 J.T. Conklin <jtc@rtl.cygnus.com>
2060
2061 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Don't use
2062 $r/../gcc/xgcc unless it is present.
2063
2064 Thu Aug 3 11:56:22 1995 Ian Lance Taylor <ian@cygnus.com>
2065
2066 * scripttempl/m68kcoff.sc: Only put .ctors and .dtors in .text
2067 when CONSTRUCTING.
2068 * scripttempl/m68klynx.sc: Likewise.
2069 * scripttempl/nw.sc: Likewise.
2070 * scripttempl/sa29200.sc: Likewise.
2071 * scripttempl/sparclynx.sc: Likewise.
2072
2073 Fri Jul 28 12:02:23 1995 steve chamberlain <sac@slash.cygnus.com>
2074
2075 * emulparams/{z8001.sh, z8002.sh}: Fix typo.
2076
2077 Thu Jul 27 21:06:21 1995 Ken Raeburn <raeburn@cygnus.com>
2078
2079 * configure.in (i[345]86-*-linuxoldld): Treat like linuxaout*.
2080
2081 Thu Jul 27 15:26:28 1995 steve chamberlain <sac@slash.cygnus.com>
2082
2083 * scripttempl/i386pe.sc: Cope with constructors.
2084 * scripttempl/z8ksim.sc: Deleted.
2085 * scripttempl/z8000.sc: Resurrected as this, but
2086 can handle z8001 and z8002 formats.
2087 * emulparams/z8ksim.sh: Deleted.
2088 * emulparams/{z8001.sh, z8002.sh}: New files.
2089 * config/z8ksim.mt: Deleted
2090 * config/z8k-coff.mt: New, generates both emulations.
2091
2092 Tue Jul 25 14:53:02 1995 Ian Lance Taylor <ian@cygnus.com>
2093
2094 * ldmisc.c (vfinfo): In %C and %D case, always print the BFD using
2095 %B, in case it is in an archive.
2096
2097 Mon Jul 24 15:23:39 1995 Ian Lance Taylor <ian@cygnus.com>
2098
2099 * ldlang.c (lang_process): Call reset_memory_regions for each
2100 relaxation pass.
2101
2102 Fri Jul 21 22:49:44 1995 Michael Meissner <meissner@cygnus.com>
2103
2104 * scripttempl/elfppc.sc: Add support for .sdata, .sbss, and
2105 _SDA_BASE.
2106
2107 Thu Jul 20 16:26:55 1995 Ken Raeburn <raeburn@cygnus.com>
2108
2109 * ldmain.c (constructor_callback): Allocate set_name in stack
2110 frame, rather than always calling alloca with a fixed size.
2111
2112 Wed Jul 19 16:21:43 1995 Doug Evans <dje@canuck.cygnus.com>
2113
2114 * emulparams/armpe.sh (OUTPUT_FORMAT): Change to pei-arm-little.
2115 (LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
2116
2117 Mon Jul 17 13:57:00 1995 Ian Lance Taylor <ian@cygnus.com>
2118
2119 * ldwrite.c (clone_section): Set the alignment of the clone
2120 section to that of the section being cloned.
2121
2122 * ldwrite.c (split_sections): Don't split the first input section
2123 into a new output section.
2124
2125 Sat Jul 15 00:26:35 1995 Michael Meissner <meissner@cygnus.com>
2126
2127 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Define as elf32.
2128 (GENERATE_SHLIB_SCRIPT): Define as yes.
2129
2130 Fri Jul 14 12:11:46 1995 Ian Lance Taylor <ian@cygnus.com>
2131
2132 * emultempl/mipsecoff.em (check_sections): Use %P, not %F.
2133
2134 * ldver.c (help): Update list of options to match currently
2135 supported list.
2136
2137 Thu Jul 13 13:52:10 1995 Ian Lance Taylor <ian@cygnus.com>
2138
2139 * emultempl/lnk960.em (ld_lnk960_emulation): Initialize
2140 after_open field.
2141
2142 * ldexp.c (exp_intop): Don't cast stat_alloc arg to bfd_size_type;
2143 it takes a size_t anyhow.
2144 (exp_binop): Likewise.
2145 (exp_trinop): Likewise.
2146 (exp_unop): Likewise.
2147 (exp_nameop): Likewise.
2148 (exp_assop): Likewise.
2149 * ldlang.c (lang_memory_region_lookup): Likewise.
2150 (init_os): Likewise.
2151 (ldlang_add_undef): Likewise.
2152 (insert_pad): Likewise.
2153 * ldfile.c (ldfile_add_arch): Don't cast xmalloc arg to
2154 bfd_size_type.
2155
2156 * Makefile.in (ALL_EMULATIONS): It's earmaoutb.o, not earmoutb.o.
2157
2158 Wed Jul 12 11:32:22 1995 Ian Lance Taylor <ian@cygnus.com>
2159
2160 * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to
2161 declaration.
2162 (ld_emulation_xfer_type): Add search parameter to
2163 open_dynamic_archive entry point.
2164 * ldemul.c (ldemul_open_dynamic_archive): Add search parameter.
2165 * ldfile.c (ldfile_try_open_bfd): Rename from try_open_bfd, and
2166 make non-static. Change all callers to use new name.
2167 (ldfile_open_file_search): Make static. If entry is dynamic, call
2168 ldemul_open_dynamic_archive.
2169 (ldfile_open_file): Don't call ldemul_open_dynamic_archive.
2170 * ldfile.h (ldfile_open_file_search): Don't declare.
2171 (ldfile_try_open_bfd): Declare.
2172 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
2173 Accept search parameter. Don't search for a library, just look in
2174 a single place.
2175 * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
2176 Likewise.
2177
2178 Tue Jul 11 16:44:21 1995 Ian Lance Taylor <ian@cygnus.com>
2179
2180 * ldmain.c (set_scripts_dir): Don't base script directory on
2181 current directory.
2182
2183 Tue Jul 11 12:29:02 1995 Rick Sladkey <jrs@world.std.com>
2184
2185 * ldmisc.c (vfinfo): Don't print the line number if it isn't
2186 meaningful.
2187
2188 Mon Jul 10 13:38:28 1995 Ian Lance Taylor <ian@cygnus.com>
2189
2190 * ld.h (ld_config_type): Add field warn_constructors.
2191 * ldmain.c (add_to_set): Warn if config.warn_constructors.
2192 (constructor_callback): Likewise.
2193 * lexsup.c (parse_args): Handle -warn-constructors.
2194 * ld.texinfo, ld.1: Document -warn-constructors.
2195
2196 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Don't
2197 get confused by directory names if we searched for the file.
2198
2199 Based on patches from H.J. Lu <hjl@nynexst.com>:
2200 * ldlang.h (lang_input_statement_type): Add new field dynamic.
2201 * ldlang.c (new_afile): Set dynamic from config.dynamic_link.
2202 * ldfile.c: Include bfdlink.h.
2203 (ldfile_open_file): Check dynamic field of entry, not global
2204 dynamic_link field. Don't do a dynamic search when doing a
2205 relocateable link.
2206 * ldmain.c (main): Don't warn about dynamic_link for a
2207 relocateable link.
2208 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Skip file if
2209 dynamic is false.
2210 (gld${EMULATION_NAME}_create_output_section_statements): Always
2211 loop over input files.
2212 * Makefile.in: Rebuild dependencies.
2213
2214 * ld.texinfo, ld.1: Document -Bstatic, -Bdynamic, -Bshared, and
2215 -shared.
2216
2217 Mon Jul 10 13:29:43 1995 Eric Youngdale <eric@aib.com>
2218
2219 * ldmain.c (main): Set link_info.symbolic to false.
2220 * lexsup.c (parse_args): Handle -Bsymbolic.
2221
2222 Wed Jul 5 00:12:11 1995 Fred Fish (fnf@cygnus.com)
2223
2224 * ldmain.c (HAVE_SBRK): Define for everything except
2225 specific systems that are known to not support sbrk.
2226 (main): Use HAVE_SBRK to decide whether or not to use sbrk.
2227
2228 Tue Jul 4 12:55:48 1995 Ian Lance Taylor <ian@cygnus.com>
2229
2230 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
2231 Handle etree_provide.
2232
2233 * emultempl/elf32.em (global_needed): New static variable.
2234 (global_found): Likewise.
2235 (gld${EMULATION_NAME}_after_open): New static function.
2236 (gld${EMULATION_NAME}_search_needed): Likewise.
2237 (gld${EMULATION_NAME}_try_needed): Likewise.
2238 (gld${EMULATION_NAME}_check_needed): Likewise.
2239 (ld_${EMULATION_NAME}_emulation): Replace after_open_default with
2240 gld${EMULATION_NAME}_after_open.
2241
2242 Mon Jul 3 14:26:37 1995 Steve Chamberlain <sac@slash.cygnus.com>
2243
2244 * configure.in (i386-*-win32): New target.
2245
2246 Mon Jul 3 14:39:22 1995 Ian Lance Taylor <ian@cygnus.com>
2247
2248 * lexsup.c (parse_args): Let -G either set the small data size or
2249 be equivalent to --shared, depending on the next argument. Accept
2250 and ignore -z for Solaris compatibility.
2251
2252 Sun Jul 2 17:52:34 1995 Ian Lance Taylor <ian@cygnus.com>
2253
2254 * lexsup.c (parse_args): Cast fopen result to PTR before storing
2255 it in link_info.base_file. Fix indentation.
2256
2257 Wed Jun 28 17:11:25 1995 Steve Chamberlain <sac@slash.cygnus.com>
2258
2259 * ldmain.c (main): Always initialize PE info in link_info.
2260 * lexsup.c (OPTION_BASE_FILE): New option.
2261 (parse_args): Handle new option.
2262 * emulparams/armpe.sh: Output pei.
2263 * emultempl/i386pe.em: Add newline to end.
2264 * scripttempl/armpe.sc: Change output and quote the $s.
2265 * scripttempl/i386pe.sc: Change output and quote the $s.
2266
2267 Thu Jun 22 19:55:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2268
2269 Sun May 7 11:53:41 MDT 1995 Bryan Ford <baford@cs.utah.edu>
2270
2271 * configure.in (i386-*-msdos*, i386-*-moss*): New targets.
2272 * Makefile.in (ALL_EMULATIONS): Added i386msdos.o.
2273 (i386msdos.o): New target.
2274 * config/i386-msdos.mt: Created.
2275 * emulparams/i386msdos.sh: Created.
2276 * scripttempl/i386msdos.sc: Created.
2277
2278 Thu Jun 22 15:06:35 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2279
2280 * scripttempl/elfppc.sc (.fixup): Add support for a .fixup section
2281 that contains pointers to be relocated.
2282
2283 Tue Jun 20 17:47:20 1995 Stan Shebs <shebs@andros.cygnus.com>
2284
2285 * mpw-esh.c: New file, modified for MPW from esh.c.
2286 * scripttempl/sh.sc: Reformatted to simplify MPWification,
2287 use *() to concat stab sections instead of [].
2288
2289 Thu Jun 15 08:48:16 1995 Steve Chamberlain <sac@slash.cygnus.com>
2290
2291 * scripttempl/armpe.sc: Add constructor support.
2292
2293 Tue Jun 13 09:11:20 1995 Steve Chamberlain <sac@slash.cygnus.com>
2294
2295 * ldlang.c (lang_size_sections): Any section with a DATA
2296 statement has contents.
2297
2298 Sun Jun 11 15:20:46 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2299
2300 * emulparams/m68kelf.sh (NOP): Define.
2301 (DYNAMIC_LINK): Don't define.
2302 (TEXT_START_ADDR): Set to 0x80000000; the extra 0x100 for headers
2303 will come from the linker script.
2304
2305 Thu Jun 8 14:17:33 1995 Steve Chamberlain <sac@slash.cygnus.com>
2306
2307 * emulparams/armpe.sh, scriptempl/armpe.sc: Add end and stack.
2308
2309 Mon Jun 5 02:16:24 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
2310
2311 * configure.in (i[345]86-*-gnu*): Use GNU elf config.
2312
2313 Thu May 25 11:49:28 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2314
2315 From Andrew Cagney <cagney@highland.com.au>
2316 * Makefile.in: Fixup more gotchas from renaming elf32ppcle to
2317 elf32lppc.
2318
2319 Wed May 24 11:23:21 1995 Steve Chamberlain <sac@slash.cygnus.com>
2320
2321 Add support for ARM-PE.
2322 * Makefile.in (ALL_EMULATIONS): Add armpe.o
2323 * configure.in: Recognize armpe.
2324 * config/arm-pe.mt: New file.
2325 * emulparams/armpe.sh: New file.
2326 * scripttempl/armpe.sc: New file.
2327
2328
2329 Mon May 22 15:19:26 1995 Doug Evans <dje@chestnut.cygnus.com>
2330
2331 * configure.in (h8300h-*-hms): Deleted
2332 * config/cf-h8300h.mt: Deleted.
2333
2334 Thu May 18 04:26:10 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
2335
2336 Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
2337
2338 From David Taylor (dtaylor@armltd.co.uk)
2339 * Makefile.in (ALL_EMULATIONS): Add earmout[lb].o
2340 * configure.in: Recognize arm{,e[lb]-*-aout.
2341 * config/arm[lb]-aout.mt: New files.
2342 * emulparams/armaout[lb].sh: New files.
2343 * scripttempl/armaout.sc: New file.
2344
2345 Tue May 16 18:27:11 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2346
2347 * config/ppcle-elf32.mt (EMUL): Use elf32lppc, not elf32ppcle, to
2348 be unique in 8 characters for DOS.
2349
2350 * emulparams/elf32lppc.sh: New file, renamed from elf32ppcle.sh.
2351 * emulparams/elf32ppcle.sh: Deleted.
2352
2353 Fri May 12 11:03:55 1995 Steve Chamberlain <sac@slash.cygnus.com>
2354 Tom Griest <griest@cs.yale.edu>
2355
2356 Initial support for PE executables (eg NT, win32)
2357
2358 * Makefile.in (configure.in, ei386pe): Add support.
2359 * ldmain.c (main): Initialize PE argument info.
2360 * ldwrite.c (print_file_stuff): Don't print out .drectve
2361 and .debug section info.
2362 * lexsup.c (set_subsystem, set_stack_heap, OPTION_HEAP,
2363 OPTION_SUBSYSTEM, parse_argsm set_subsystem, set_stack_heap):
2364 Handle new arguments.
2365 * config/i386-pe.mt, emultempl/i386pe.em, scripttempl/i386pe.sc:
2366 New files
2367
2368 Wed May 10 18:37:59 1995 Stu Grossman (grossman@andros.cygnus.com)
2369
2370 * scripttempl/hppaelf.sc: Remove .PARISC.unwind section from text
2371 segment. This allows ld -r to preserve unwind sections.
2372
2373 Tue May 9 17:19:57 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2374
2375 * configure.in: Add little endian PowerPC support.
2376
2377 * Makefile.in (ALL_EMULATIONS): Add eelf32ppcle.o.
2378 (eelf32ppcle.c): Support for little endian PowerPC.
2379
2380 * config/ppcle-elf32.mt: New file for little endian PowerPC.
2381 * emulparams/elf32ppcle.sh: Ditto.
2382
2383 Wed May 3 12:56:32 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2384
2385 * ldlang.c (print_output_section_statement): Check
2386 subsection_alignment, instead of checking section_alignment twice.
2387 Noticed by Alan Modra <alan@spri.levels.unisa.edu.au>.
2388
2389 Tue May 2 16:36:07 1995 Jeff Law (law@snake.cs.utah.edu)
2390
2391 * configure.in (hppa*-*-lites*): Handle like hppa*-*-*elf*.
2392
2393 Mon Apr 24 19:21:02 1995 Michael Meissner <meissner@cygnus.com>
2394
2395 * ldwrite.c (ldwrite): Before doing anything, reset the error
2396 code. If bfd_final_link returns an error, but the error code is
2397 unset, don't issue an extra message. Assume a correct error
2398 message was already set.
2399
2400 Fri Apr 14 16:31:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2401
2402 * Makefile.in (ALL_EMULATIONS): Added em68kelf.o.
2403 (em68kelf.o): New target.
2404 * config/m68k-elf.mt, emulparams/m68kelf.sh: New files.
2405 * configure.in: Use them for m68*-*-elf.
2406
2407 Tue Apr 11 12:02:03 1995 Stan Shebs <shebs@andros.cygnus.com>
2408
2409 Merge in support for Mac MPW as a host.
2410 (Old change descriptions retained for informational value.)
2411
2412 * mpw-config.in (i386-unknown-aout): Change to i386-unknown-go32.
2413 (i386-unknown-coff): Remove.
2414 (sh-hitachi-hms): New target.
2415 (emulation_ofiles): Set correctly for each target.
2416 (version, TDEFINES): Add to makefile fragment.
2417 * mpw-make.in (BISON): Use byacc instead of bison.
2418 (em_*.c): Replace with e*.c everywhere.
2419 (ldgram.h): Separate action from ldgram.c generation.
2420 (LD_PROG): Depend on Version.r.
2421 (Version.r): generate from version info.
2422 * mpw-emipsidt.c: New file, modified for MPW from emipsidt.c.
2423
2424 * mpw-config.in (m68k-apple-macos, ppc-apple-macos,
2425 i386-unknown-aout, i386-unknown-coff): New targets.
2426 (m68k-aout, m68k-coff): Remove targets.
2427 (mk.tmp): Add definition of EMUL.
2428
2429 * mpw-config.in (emulname): Set based on target.
2430 (ldemul-list.h): Construct.
2431 * mpw-make.in (install-only): New target.
2432 (install): Depend on install-only.
2433
2434 * mpw-make.in (bindir): Fix pathname.
2435 (install): Move here from mpw-build.in.
2436
2437 * mpw-config.in: New file, MPW configuration fragment.
2438 * mpw-make.in: New file, MPW makefile fragment.
2439 (This file is semi-automatically generated from Makefile.in.)
2440 * ldfile.c (slash): If MPW, set to `:'.
2441 * ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
2442 prevent redefinition errors.
2443
2444 start-sanitize-arc
2445 Thu Apr 6 20:38:36 1995 Doug Evans <dje@chestnut.cygnus.com>
2446
2447 * emulparams/arcelf.sh (ENTRY): Define.
2448 end-sanitize-arc
2449
2450 Tue Apr 4 17:55:18 1995 Steve Chamberlain <sac@bang.hack.com>
2451
2452 * ldwrite.c (clone_section): Align clone sections on even
2453 boundaries.
2454
2455 Thu Mar 30 14:32:26 1995 H.J. Lu (hjl@nynexst.com)
2456
2457 * configure.in: Change linux to default to elf. Using
2458 i[345]86-*-linuxaout will build a linker which defaults to a.out.
2459 * config/i386-laout.mt: Rename from old config/i386-linux.mt.
2460 * config/i386-linux.mt: Rename from old config/i386-lelf.mt.
2461 * config/i386-lelf.mt: Remove.
2462
2463 Thu Mar 30 13:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
2464
2465 * ldmain.c (main): If opening the map file fails, call
2466 bfd_set_error before calling einfo.
2467
2468 * ld.texinfo, ld.1: Document the -no-keep-memory option.
2469
2470 Mon Mar 27 11:10:08 1995 Ian Lance Taylor <ian@cygnus.com>
2471
2472 * ldmain.c (main): Revert patch of March 10, since the SVR4 linker
2473 does mark shared libraries as executable.
2474
2475 Tue Mar 21 15:15:38 1995 Ian Lance Taylor <ian@cygnus.com>
2476
2477 * ldlang.c (lang_common): Change power to int. Pass larger values
2478 before smaller values.
2479 (lang_one_common): Treat info as int *. Don't bother to check for
2480 last value, since it is now zero.
2481
2482 Sat Mar 18 01:49:14 1995 Ian Lance Taylor <ian@cygnus.com>
2483
2484 * ldlang.c (load_symbols): An empty archive is OK.
2485
2486 Fri Mar 17 16:15:31 1995 Stan Shebs <shebs@andros.cygnus.com>
2487
2488 * ldmain.c (progress.h): Include.
2489 (main): Call START_PROGRESS and END_PROGRESS.
2490
2491 Thu Mar 16 17:17:33 1995 Michael Meissner <meissner@cygnus.com>
2492
2493 * scripttempl/elfppc.sc: Move _GOT2_END_ after the .ctors and
2494 .dtors sections, so that these pointers get relocated also.
2495 Define the symbols __{C,D}TOR_{LIST,END}__ to mark the beginning
2496 and end of the constructors/destructors.
2497
2498 Thu Mar 16 13:59:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
2499
2500 * ldlang.c (load_symbols): If whole_archive is true and ENTRY
2501 describes an archive, call bfd_link_add_symbols on each member.
2502 * ldmain.c (whole_archive): New variable.
2503 (main): Initialize it to false.
2504 * ldmain.h: Declare whole_archive.
2505 * lexsup.c (parse_args): Grok --whole-archive switch.
2506 * ld.texinfo, ld.1: Document --whole-archive.
2507
2508 Thu Mar 16 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
2509
2510 * genscripts.sh (EMULATION_NAME): Set LIB_PATH to empty when not
2511 using the default emulation.
2512
2513 * config/dgux.mh (HOSTING_EMU): Use -m rather than trying to set
2514 LDEMULATION.
2515 * config/hppaelf.mh (HOSTING_EMU): Likewise.
2516
2517 Tue Mar 14 12:28:03 1995 Ian Lance Taylor <ian@cygnus.com>
2518
2519 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Set force_maj
2520 for -lc.N. From H.J. Lu <hjl@nynexst.com>.
2521
2522 Fri Mar 10 14:43:48 1995 Ian Lance Taylor <ian@cygnus.com>
2523
2524 * ldmain.c (main): Don't set EXEC_P if link_info.shared is set.
2525
2526 * ldlex.l: Return -lFILENAME as the token LNAME.
2527 * ldgram.y: Add token LNAME.
2528 (input_list): Treat LNAME like NAME, but pass it to
2529 lang_add_input_file as lang_input_file_is_l_enum.
2530 * ld.texinfo: Document using -lFILENAME in INPUT.
2531
2532 Thu Mar 9 12:21:51 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2533
2534 * ldlang.c (lang_check): If the architectures are compatible call
2535 bfd_merge_private_bfd_data to let the backend do additional
2536 checks.
2537
2538 start-sanitize-arc
2539 Tue Mar 7 21:10:28 1995 Doug Evans <dje@chestnut.cygnus.com>
2540
2541 * emulparams/arcelf.sh (OUTPUT_FORMAT): Change to elf32-littlearc.
2542 (LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
2543 end-sanitize-arc
2544
2545 Tue Mar 7 00:53:08 1995 Ian Lance Taylor <ian@cygnus.com>
2546
2547 * ldemul.c (ldemul_choose_mode): If emulation not recognized, list
2548 all supported emulations.
2549
2550 Mon Mar 6 14:03:50 1995 Ian Lance Taylor <ian@cygnus.com>
2551
2552 * ldemul.c (ldemul_list_emulations): New function.
2553 * ldemul.h (ldemul_list_emulations): Declare.
2554 * ldver.c (help): List supported targets and emulations.
2555
2556 Fri Mar 3 15:40:36 1995 Doug Evans <dje@canuck.cygnus.com>
2557
2558 * scripttempl/elf.sc (.debug): Relocate to address 0.
2559 (.debug_srcinfo, .debug_aranges, .debug_pubnames,
2560 .debug_sfnames, .line): Likewise.
2561
2562 Fri Mar 3 17:07:14 1995 Ian Lance Taylor <ian@cygnus.com>
2563
2564 * emultempl/elf32.em (hold_rel): New static variable.
2565 (gld${EMULATION_NAME}_place_orphan): Place readonly sections with
2566 contents whose names begin with ".rel" after hold_rel. Remove the
2567 assertion which checked for unplaced .rel sections. Don't try to
2568 sort the section into place if place->bfd_section is NULL.
2569 (gld${EMULATION_NAME}_place_section): Set hold_rel to the first
2570 section beginning with ".rel".
2571
2572 Thu Mar 2 14:34:43 1995 Ian Lance Taylor <ian@cygnus.com>
2573
2574 Doc note from pierre@phi.la.tce.com (Pierre Willard):
2575 * ld.texinfo: -X and -x work even if -s or -S are not specified.
2576 * ld.1: Similar change.
2577
2578 Wed Mar 1 13:51:16 1995 Ian Lance Taylor <ian@cygnus.com>
2579
2580 * emulparams/gld960coff.sh (COFF_CTORS): Define.
2581 * scripttempl/i960.sc: Use COFF_CTORS if CONSTRUCTING.
2582
2583 Tue Feb 28 12:42:56 1995 Ian Lance Taylor <ian@cygnus.com>
2584
2585 * configure.in (i[345]86-*-linuxelf*): New target. Use i386-lelf.
2586 (i[345]86-*-gnuelf*): New target. Use i386-gelf.
2587 * config/i386-lelf.mt: New file.
2588 * config/i386-gelf.mt: New file.
2589
2590 Tue Feb 28 10:27:54 1995 Rob Savoye <rob@darkstar.cygnus.com>
2591
2592 * configure.in: Match on mips-ecoff, and default to the IDT
2593 configuration.
2594
2595 Fri Feb 17 13:06:47 1995 Michael Meissner <meissner@cygnus.com>
2596
2597 * scripttempl/elfppc.sc: Add support for .got1 and .got2 sections.
2598 Offset _GLOBAL_OFFSET_TABLE_ 32768 from the start of the GOT area
2599 to double the size of the table.
2600
2601 start-sanitize-arc
2602 Thu Feb 9 19:03:25 1995 Doug Evans <dje@canuck.cygnus.com>
2603
2604 * emulparms/arcelf.sh (TEMPLATE_NAME): Comment out.
2605 end-sanitize-arc
2606
2607 Thu Feb 9 18:29:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2608
2609 * Makefile.in (distclean): Do recursive deletion, since ldscripts
2610 is a directory.
2611
2612 Thu Feb 9 11:38:22 1995 Ian Lance Taylor <ian@cygnus.com>
2613
2614 * ldmain.c (main): If trace_file_tries is true, and we are using
2615 an internal linker script, print out the script.
2616 * ldfile.c (try_open): Reindent function. Make the messages about
2617 opening script files more informative.
2618
2619 * lexsup.c (parse_args): For -V, call ldversion with 1, not 0.
2620 * ld.texinfo, ld.1: Update accordingly.
2621
2622 Wed Feb 8 17:34:45 1995 Ian Lance Taylor <ian@cygnus.com>
2623
2624 * ldlang.c (lang_one_common): Adjust references to common symbol
2625 information for new structure.
2626
2627 Mon Feb 6 12:17:24 1995 Ian Lance Taylor <ian@cygnus.com>
2628
2629 * ldmain.c (undefined_symbol): Handle section being NULL.
2630
2631 * ldctor.c (ldctor_build_sets): Handle bfd_link_hash_defweak.
2632 * ldexp.c (fold_name): Likewise.
2633 * ldlang.c (print_one_symbol): Likewise.
2634 (lang_finish): Likewise.
2635 * ldmain.c (multiple_common): Likewise.
2636 * ldwrite.c (print_symbol): Likewise. Also, bfd_link_hash_weak
2637 renamed to bfd_link_hash_undefweak.
2638
2639 * scripttempl/alpha.sc: Set address of .data section correctly
2640 when -n or -N is used. Patch from Chris G Demetriou
2641 <Chris_G_Demetriou@LAGAVULIN.PDL.CS.CMU.EDU>.
2642 * scripttempl/mips.sc: Similar change.
2643
2644 Tue Jan 31 16:20:52 1995 Doug Evans <dje@canuck.cygnus.com>
2645
2646 * ldlang.c (lang_size_sections): Clarify error message when user
2647 specified start addr conflicts with region. Fix resetting of
2648 region pointer.
2649
2650 Tue Jan 31 12:37:09 1995 Ian Lance Taylor <ian@cygnus.com>
2651
2652 * ldexp.c (fold_name): In case NAME, permit an absolute symbol
2653 in lang_allocating_phase_enum.
2654
2655 Mon Jan 30 11:33:25 1995 Ian Lance Taylor <ian@cygnus.com>
2656
2657 * Makefile.in (distclean): Depend upon clean. Don't bother to
2658 remove files which will be removed by clean. From patch by
2659 alan@SPRI.Levels.UniSA.Edu.Au (Alan Modra).
2660
2661 Fri Jan 27 16:27:34 1995 Ian Lance Taylor <ian@cygnus.com>
2662
2663 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): For
2664 a MIPS target, clobber the size of all but the first input
2665 .reginfo section to be 0, so that lang_size_sections sets the
2666 correct size for the output .reginfo section.
2667
2668 Thu Jan 26 19:53:37 1995 Ian Lance Taylor <ian@cygnus.com>
2669
2670 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
2671 Remove unused variable is.
2672
2673 Thu Jan 26 12:33:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2674
2675 * configure.in: Add support for powerpc-*-eabi.
2676
2677 * scripttempl/elfppc.sc: New file for PowerPC embedded ABI
2678 support.
2679
2680 * emulparams/elf32ppc.sh (SCRIPT_NAME): Use elfppc.sc instead of
2681 elf.sc, which defines some new symbols PowerPC elf needs.
2682
2683 Tue Jan 24 10:32:15 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
2684
2685 * ldctor.c (ldctor_add_set_entry): Don't dump core if a
2686 constructor entry is in the absolute section.
2687
2688 Mon Jan 23 13:58:13 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
2689
2690 * configure.in (i[345]86-*-gnu*): Set ld_target to i386-gnu.
2691 * config/i386-gnu.mt: New file. Include ELF support.
2692
2693 Thu Jan 19 16:22:11 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
2694
2695 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): If
2696 there are any input sections named .gnu.warning, treat them as
2697 containing a warning message to be printed by the linker, and
2698 clobber the size so that the message is not copied into the output
2699 file.
2700 * scripttempl/elf.sc: Put .gnu.warning sections into the .text
2701 section.
2702
2703 Sun Jan 15 16:45:00 1995 Steve Chamberlain <sac@splat>
2704
2705 * configure.in (w65-*-*): New target.
2706 * Makefile.in: Update.
2707 * scripttempl/w65.sc: New.
2708 * config/coff-w65.mt: New.
2709
2710 Thu Jan 12 01:32:25 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
2711
2712 * ldlang.c (lang_place_orphans): Don't ignore files with
2713 just_syms_flag set. Instead, put all their sections in
2714 bfd_abs_section_ptr, using the section VMA as the output_offset.
2715
2716 Wed Jan 11 22:59:09 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2717
2718 * ldctor.c (ldctor_build_sets): Don't use `const' with typedef
2719 name `reloc_howto_type', since it's now defined to be const.
2720 * ldlang.c (lang_add_reloc): Ditto.
2721 * ldlang.h (lang_reloc_statement_type, lang_add_reloc): Ditto.
2722
2723 Wed Jan 11 11:24:45 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
2724
2725 * ldexp.c (fold_binary): Adding or subtracting an absolute value
2726 to a relative value does not require forcing the relative value to
2727 be absolute. Also, reindent function.
2728
2729 Wed Dec 28 22:05:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2730
2731 * ldwrite.c (clone_section): Create a symbol with the
2732 same name as the section.
2733
2734 Mon Dec 19 14:02:13 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2735
2736 * ld.h (split_by_reloc, split_by_file): New flags.
2737 * ldwrite.c (clone_section, split_sections): New functions.
2738 * lexsup.c (parse_args): Understand new split options.
2739
2740 start-sanitize-arc
2741 Tue Dec 13 16:45:18 1994 Doug Evans <dje@canuck.cygnus.com>
2742
2743 * configure.in (arc-elf): New target.
2744 * Makefile.in (earcelf.c): New target.
2745 * config/arc-elf.mt: New file.
2746 * emulparms/arcelf.sh: New file.
2747 end-sanitize-arc
2748
2749 Fri Dec 9 17:22:55 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2750
2751 * scripttempl/elf.sc: Move .ctors and .dtors from .text segment to
2752 .data segment. They must be writable when creating a shared
2753 library. From H.J. Lu <hjl@nynexst.com>.
2754
2755 Fri Dec 2 14:09:00 1994 Ian Lance Taylor <ian@rtl.cygnus.com>
2756
2757 * emultempl/miposecoff.em: New file.
2758 * emulparams/mipsidt.sh (TEMPLATE_NAME): Set to mipsecoff.
2759 * emulparams/mipsidtl.sh (TEMPLATE_NAME): Likewise.
2760 * scripttempl/mips.sc: Put .rel.sdata sections in .text, and
2761 provide __runtime_reloc_start and __runtime_reloc_stop if they are
2762 used. Align _fdata to a 16 byte boundary.
2763 * Makefile.in (emipsidt.c): Depend upon mipsecoff.em rather than
2764 generic.em.
2765 (emipsidtl.c): Likewise.
2766 (check): Pass CC_FOR_HOST and CFLAGS_FOR_HOST to runtest.
2767
2768 * ld.h (args_type): Add new field embedded_relocs.
2769 * ldemul.h (ldemul_after_open, after_open_default): Declare.
2770 (ld_emulation_xfer_struct): Add new field after_open.
2771 * ldemul.c (ldemul_after_open): New function.
2772 (after_open_default): New function.
2773 * ldlang.c (lang_process): Call ldemul_after_open.
2774 * lexsup.c (parse_args): Handle --embedded-relocs.
2775 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Initialize
2776 new after_open field to after_open_default.
2777 * emultempl/generic.em, emultempl/gld960.em: Likewise.
2778 * emultempl/gld960c.em, emultempl/hppaelf.em: Likewise.
2779 * emultempl/linux.em, emultempl/m88kbcs.em: Likewise.
2780 * emultempl/sunos.em, emultempl/vanilla.em: Likewise.
2781 * ld.texinfo, ld.1: Mention -embedded-relocs.
2782
2783 Wed Nov 23 22:04:47 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2784
2785 * Makefile.in: Add eshl.o.
2786 * config/coff-sh.mt: Add shl emulation.
2787
2788 Tue Nov 22 11:55:37 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2789
2790 * scripttempl/elf.sc: Fill .text section with NOPS. From Eric
2791 Youngdale <eric@aib.com>.
2792
2793 Thu Nov 17 14:39:48 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2794
2795 Patches from pirker@eiunix.tuwien.ac.at (Martin Pirker).
2796 * config/i386linux.mh: New file; set HOSTING_CRT0.
2797 * genscripts.sh: Don't put ${libdir} in LIB_PATH if it is
2798 /usr/lib, since that is already in LIB_PATH.
2799
2800 Wed Nov 16 10:03:03 1994 Jeff Law (law@snake.cs.utah.edu)
2801
2802 * scripttempl/hppaelf.sc (.text): Handle a use rdefined text start
2803 address.
2804 (.data, .bss): If "-N", then place the data/bss just after the end
2805 of the .text section rather than at the default 0x40000000.
2806
2807 * scripttempl/hppaelf.sc (.text): Place unwind descriptors in the
2808 text segment.
2809
2810 Sat Nov 12 15:55:56 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2811
2812 Patches from Eric Youngdale <eric@aib.com>:
2813 * ldlang.c (lang_finish): Don't warn if entry symbol not found
2814 when generating a shared library.
2815 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Warn if
2816 attempting to place an orphaned relocation section when generating
2817 a dynamically linked object.
2818
2819 * scripttempl/elf.sc: Add ENTRY(${ENTRY}), and default ${ENTRY} to
2820 _start.
2821
2822 Fri Nov 11 14:27:23 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2823
2824 * ld.h (args_type): Add field export_dynamic.
2825 * lexsup.c (parse_args): Recognize --export-dynamic.
2826 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
2827 Pass export_dynamic argument to bfd_elf32_size_dynamic_sections.
2828
2829 Wed Nov 9 12:47:11 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2830
2831 * ldlang.c (lang_one_common): Set SEC_ALLOC in any section where
2832 we allocate common symbols.
2833
2834 Tue Nov 8 17:50:43 1994 Eric Youngdale (eric@aib.com)
2835
2836 * scripttempl/elf.sc: Add .rel.init, .rela.init, .rel.fini, and
2837 .rela.fini to the list of .rel* sections.
2838
2839 Tue Nov 8 17:47:45 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2840
2841 * ldlang.c (load_symbols): Add new argument place. Only accept
2842 linker scripts if place is not NULL. Put commands found in an
2843 assumed linker script into place.
2844 (lookup_name): Pass NULL as place argument to load_symbols.
2845 (open_input_bfds): In lang_input_statement_enum case, pass a place
2846 argument to load_symbols, and store any new statements after the
2847 current one.
2848
2849 Mon Nov 7 15:53:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
2850
2851 * ldver.c (ldversion): Bump to 2.5.3.
2852
2853 Fri Nov 4 15:11:26 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
2854
2855 * Makefile.in (e*nbsd.c): Fix typo in dependencies.
2856
2857 Thu Nov 3 19:35:44 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
2858
2859 * Makefile.in (check): Add missing "else true" clause.
2860
2861 * emulparams/vax.sh (OUTPUT_FORMAT): Use "a.out".
2862
2863 * scripttempl/go32coff.sc: Changes from DJ Delorie: Change default
2864 entry point to "start". Align at end of each section to 0x200.
2865 Start .text section 0x1000 later. Add _etext, _edata, _end
2866 symbols.
2867
2868 Wed Nov 2 12:17:49 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2869
2870 * ldctor.c (ldctor_add_set_entry): Don't permit a set to be
2871 composed of different object file formats.
2872 (ldctor_build_sets): If the output format does not support the
2873 reloc, and we are not generating a relocateable link, try getting
2874 the reloc from the input format.
2875
2876 Tue Nov 1 10:30:19 1994 J.T. Conklin (jtc@rtl.cygnus.com)
2877
2878 * Makefile.in (ALL_EMULATIONS): Added em68knbsd.o.
2879 (em68knbsd.c): New target.
2880
2881 * config/m68k-nbsd.mt: New file.
2882 * emulparams/m68knbsd.sh: New file.
2883 * configure.in (m68*-*-netbsd*): Use above configs.
2884
2885 Mon Oct 31 19:35:17 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2886
2887 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): If we find an
2888 appropriately named static library, stop the search at that
2889 directory.
2890
2891 Wed Oct 26 13:59:12 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
2892
2893 * Makefile.in (ALL_EMULATIONS): Added ei386nbsd.o, ens32knbsd.o
2894 and esparcnbsd.o; sorted entries.
2895 (ei386nbsd.c,ens32knbsd.c,esparcnbsd.c): New targets.
2896
2897 * config/netbsd532.mt: Removed.
2898 * emulparams/netbsd532.sh: Removed.
2899
2900 * config/{i386-nbsd.mt,ns32k-nbsd.mt,sparc-nbsd.mt}: New files.
2901 * emulparams/{i386nbsd.sh,ns32knbsd.sh,sparcnbsd.sh}: New files.
2902 * configure.in (i[345]86-*-netbsd*, ns32k-pc532-netbsd*,
2903 sparc*-*-netbsd*): Use above configs.
2904
2905 Tue Oct 25 11:47:10 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2906
2907 * ldmain.c (multiple_common): One of the types may now be
2908 bfd_link_hash_indirect. The old BFD argument may be NULL.
2909
2910 Thu Oct 20 22:01:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2911
2912 * configure.in: Add * at the end of m68k-hp-hpux.
2913
2914 Tue Oct 18 15:58:39 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2915
2916 * ldlex.l: Cast assignment to yy_ch_buf field to char *, not to
2917 YY_CHAR *.
2918
2919 Mon Oct 17 14:53:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
2920
2921 * scripttempl/nw.sc: Gather constructors and destructors and
2922 define __CTOR__LIST__ and __DTOR_LIST__ appropriately.
2923
2924 Fri Oct 14 14:35:38 1994 J.T. Conklin (jtc@rtl.cygnus.com)
2925
2926 * Makefile.in (ALL_EMULATIONS): Add ei386nw.o and eppcnw.o.
2927 (ei386nw.c, eppcnw.c): New targets.
2928
2929 * config/{i386,ppc}-nw.mt, emulparams/{i386,ppc}nw.sh,
2930 scripttempl/nw.sc: New files, for i386 and powerpc netware.
2931
2932 * configure.in: Changed netware ld_target name to be {i386,ppc}-nw
2933 instead of {i386,ppc}-elf.
2934
2935 * configure.in (sparc*-*-netware): Removed. There is no such
2936 thing anymore.
2937
2938 * ldint.texinfo: Move misplaced `@end iftex'.
2939
2940 Fri Oct 14 12:02:18 1994 Eric Youngdale (eric@aib.com)
2941
2942 * scripttempl/elf.sc: Add .rel.ctors, .rela.ctors, .rel.dtors, and
2943 .rela.dtors to the list of .rel* sections.
2944
2945 Thu Oct 13 14:16:27 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
2946
2947 * ldver.c (ldversion): Update to version 2.5.
2948 * Version 2.5 released.
2949
2950 * configure.in (all_targets): Handle i386-linux*.
2951
2952 Thu Oct 13 11:24:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2953
2954 * scripttempl/aout.sc: Set _etext and __etext to ., not
2955 ${DATA_ALIGNMENT}. This is compatible with SunOS, and, with luck,
2956 will not break any other system. From Eric Valette
2957 <ev@chorus.fr>.
2958
2959 Wed Oct 12 16:22:58 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
2960
2961 * lexsup.c (parse_args): Change -V to be a synonym for -v. Add
2962 --verbose to get the old -V behaviour.
2963 * ld.1, ld.texinfo: Document this change.
2964
2965 Tue Sep 27 14:56:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2966
2967 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Remove
2968 assertion, since it could fail with a user defined linker script.
2969
2970 * ldexp.c (fold_name): For DEFINED case, don't try to look up the
2971 name in the hash table during the first phase--the hash table does
2972 not even exist at that point, much less have the right value.
2973
2974 * Makefile.in (CC): Define.
2975 (CXX): Move definition, change from g++ to gcc.
2976 (EXPECT, RUNTEST): Copy definitions from top level Makefile.in.
2977 (RUNTEST_CC, RUNTEST_CFLAGS): Remove.
2978 (RUNTEST_CXX, RUNTEST_CXXFLAGS): Remove.
2979 (CC_FOR_TARGET, CXX_FOR_TARGET): Copy from top level Makefile.in.
2980 (.cc.o): Comment out.
2981 (testdir): Remove.
2982 (site.exp): Don't create testdir or set tmpdir.
2983 (check): Run checks even if not running native. Use CC_FOR_TARGET
2984 instead of RUNTEST_CC, and likewise for CXX.
2985 (cdtest targets): Comment out.
2986 * config/solaris2.mh (HOSTING_LIBS): Only mention crtend.o once.
2987 * cdtest-bar.cc, cdtest-foo.cc, cdtest-foo.h: Remove.
2988 * cdtest-main.cc, cdtest.exp: Remove.
2989
2990 Mon Sep 26 11:40:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2991
2992 * emulparams/elf32bmip.sh: Rename from elf32mipb.sh to avoid DOS
2993 file naming problems.
2994 * emulparams/elf32lmip.sh: Rename from elf32mipl.sh.
2995 * Makefile.in (ALL_EMULATIONS): Rename eelf32mipb.o to
2996 eelf32bmip.o and eelf32mipl.o to eelf32lmip.o.
2997 (eelf32bmip.c): Rename from eelf32mipb.c. Use elf32bmip.sh.
2998 (eelf32lmip.c): Rename from eelf32mipl.c. Use elf32lmip.sh.
2999 * config/mipsb-elf32.mt (EMUL): Use elf32bmip, not elf32mipb.
3000 * config/mipsl-elf32.mt (EMUL): Use elf32lmip, not elf32mipl.
3001
3002 * genscripts.sh: Always search /usr/local/TARGET/lib.
3003
3004 * scripttempl/elf.sc: If -N is set, force DATA_ADDR to be ".".
3005
3006 Fri Sep 23 15:05:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
3007
3008 * configure.in: Handle i386-bsdi* targets like i386-bsd.
3009
3010 Fri Sep 23 00:06:59 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3011
3012 * lexsup.c (parse_args): Add support for -a for HP/UX
3013 compatibility.
3014
3015 * lexsup.c (parse_args): -c takes an argument.
3016
3017 Tue Sep 20 14:35:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3018
3019 * ld.h (args_type): Add new field endian.
3020 * lexsup.c (parse_args): Handle -EB and -EL by setting
3021 command_line.endian.
3022 * ldgram.y (ifile_p1): Accept OUTPUT_FORMAT with three arguments.
3023 * ldlang.c (lang_add_output_format): Add arguments big and little.
3024 If command_line.endian is set, use it to select big or little
3025 rather than the default. Changed all callers.
3026 * ldlang.h (lang_add_output_format): Update declaration.
3027 * emulparams/elf32mipb.sh: Define BIG_OUTPUT_FORMAT and
3028 LITTLE_OUTPUT_FORMAT.
3029 * emulparams/elf32mipl.sh: Likewise.
3030 * emulparams/mipsbig.sh: Likewise.
3031 * emulparams/mipsbsd.sh: Likewise.
3032 * emulparams/mipsidt.sh: Likewise.
3033 * emulparams/mipsidtl.sh: Likewise.
3034 * emulparams/mipslit.sh: Likewise.
3035 * scripttempl/elf.sc: Define BIG_OUTPUT_FORMAT and
3036 LITTLE_OUTPUT_FORMAT if not already defined. Pass them to
3037 OUTPUT_FORMAT.
3038 * scripttempl/mips.sc: Pass BIG_OUTPUT_FORMAT and
3039 LITTLE_OUTPUT_FORMAT to OUTPUT_FORMAT.
3040 * scripttempl/mipsbsd.sc: Likewise.
3041
3042 * Makefile.in (ldgram.h): Make separate target from ldgram.c,
3043 depending upon ldgram.c, so that a parallel make does not try to
3044 build both at once.
3045
3046 * configure.in (mips*el-elf*): New target.
3047 * Makefile.in (ALL_EMULATIONS): Add eelf32mipb.o and eelf32mipl.o.
3048 (eelf32mipl.c): New target.
3049
3050 * config/mipsl-elf32.mt: New file.
3051 * emulparams/elf32mipl.sh: New file.
3052
3053 Fri Sep 16 12:16:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3054
3055 * ldmain.c (main): Rather than prohibiting ld -r -s, treat it as
3056 ld -r -S -x.
3057
3058 Thu Sep 15 13:05:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3059
3060 * ldmisc.c (vfinfo): Print BFD file name as well as file name
3061 returned by find_nearest_line, in case the file name is something
3062 unhelpful such as a .h file. Handle %u.
3063
3064 Wed Sep 14 12:49:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3065
3066 * ldlang.c (lang_do_assignments): Make sure output statement
3067 has an attached bfd_section before trying to dereference it.
3068
3069 Wed Sep 14 12:48:09 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3070
3071 * ld.h (ld_config_type): Add new field warn_once.
3072 * ldmain.c (undefined_symbol): Handle -warn-once.
3073 * lexsup.c (parse_args): Recognize -warn-once.
3074 * ld.texinfo (Options): Document -warn-once.
3075 * ld.1: Likewise.
3076
3077 * ldmisc.c (vfinfo): Handle %D as %C, but never print the function
3078 name. For %C, print the function name on a separate line, to keep
3079 the length of error messages under control.
3080 * ldmain.c (multiple_definition): Use %D for ``first defined
3081 here.''
3082 (undefined_symbol): Use %D for ``more undefined references
3083 follow''.
3084
3085 * ldmisc.c (multiple_warn): Remove; no longer used.
3086 * ldmisc.h (multiple_warn): Don't declare.
3087
3088 Tue Sep 13 20:47:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3089
3090 * ldlang.c (print_output_section_statement): Print all lines
3091 to the map file.
3092
3093 Tue Sep 13 16:30:11 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3094
3095 * ldlang.c (load_symbols): Check for archive before object. Use
3096 bfd_check_format_matches, and, if ambiguous, print a list of
3097 matching formats. If file format is not recognized, treat file as
3098 a linker script.
3099 * ldgram.y (yyerror): If assuming an object file is a script,
3100 mention that. Tweak the format of the error messages.
3101 * ldlex.l (lex_warn_invalid): If assuming an object is a script,
3102 guess that this is not actually a script, and just report that the
3103 file format was not recognized.
3104 * ld.texinfo (Options): Admit that -( may be used more than once.
3105 Add note that unrecognized object files are now treated as linker
3106 scripts.
3107
3108 * ldfile.c (ldfile_input_filename): Make const.
3109 (ldfile_assumed_script): New variable.
3110 (try_open): Change arguments types to const.
3111 (ldfile_find_command_file): Likewise.
3112 (ldfile_open_command_file): Likewise. Also, set lineno to 1.
3113 * ldfile.h: Update declarations for ldfile.c changes.
3114 * ldlex.l: Include <ctype.h>.
3115 (file_name_stack): Change to be const char *.
3116 (lineno_stack): New static variable.
3117 (<<EOF>>): Set lineno as well as ldfile_input_filename.
3118 (lex_push_file): Make name argument const. Initialize
3119 lineno_stack entry.
3120 (lex_redirect): Initialize lineno_stack entry.
3121 (lex_warn_invalid): Handle non printable characters nicely.
3122 * ldlex.h (lex_push_file): Declare second argument as const.
3123
3124 * ldgram.y (ifile_p1): Recognize GROUP.
3125 * ldlex.l: Recognize GROUP.
3126 * ld.texinfo (Option Commands): Document GROUP.
3127
3128 Mon Sep 12 17:04:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3129
3130 * config/m68klynx.mh: New file.
3131
3132 Mon Sep 12 01:50:03 1994 Jeff Law (law@snake.cs.utah.edu)
3133
3134 * emultempl/hppaelf.em: Add newlines to the error messages.
3135
3136 Sat Sep 10 16:05:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3137
3138 * config/i386lynx.mh: New file.
3139 * scripttempl/i386lynx.sc: Don't put .ctors and .dtors in .text
3140 unless CONSTRUCTING.
3141
3142 Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3143
3144 * emulparams/elf32mipb.sh (TEMPLATE_NAME): Define as elf32.
3145 (GENERATE_SHLIB_SCRIPT): Define as yes.
3146 (DYNAMIC_LINK): Define as false.
3147 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse):
3148 Initialize config.dynamic_link to DYNAMIC_LINK if it is defined.
3149 (gld${EMULATION_NAME}_place_orphan): Reset stat_ptr at end.
3150 * Makefile.in (eelf32mipb.c): Depend upon elf32.em rather than
3151 generic.em.
3152
3153 Thu Sep 8 16:30:37 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3154
3155 * scripttempl/h8500b.sc: Put rdata stuff into own segment.
3156
3157 Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3158
3159 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Don't define;
3160 .got section is now explicitly handled in elf.sc.
3161
3162 Wed Sep 7 13:08:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3163
3164 * scripttempl/alpha.sc: Redo script to set . outside of sections
3165 and not bother to explicitly specify section addresses.
3166 Explicitly place .sdata section.
3167
3168 Tue Sep 6 23:51:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3169
3170 * scripttempl/m68kcoff.sc: Put .bss in data segment.
3171
3172 * scripttempl/h8300.sc: Change .stab and .stabstr to use a VMA of
3173 0, and to only be marked as NOLOAD if relocating.
3174 * scripttempl/h8500.sc, scripttempl/h8500b.sc: Likewise.
3175 * scripttempl/h8500c.sc, scripttempl/h8500m.sc: Likewise.
3176 * scripttempl/h8500s.sc, scripttempl/i386coff.sc: Likewise.
3177 * scripttempl/i386go32.sc, scripttempl/i386lynx.sc: Likewise.
3178 * scripttempl/m68kcoff.sc, scripttempl/m68klynx.sc: Likewise.
3179 * scripttempl/sh.sc, scripttempl/sparccoff.sc: Likewise.
3180 * scripttempl/sparclynx.sc: Likewise.
3181
3182 Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
3183
3184 * Makefile.in, configure.in: Add support (disabled) the ARM/RISCiX.
3185 * config/riscix.mt, emulparams/riscix.sh, scripttempl/riscix.sc:
3186 New files.
3187
3188 Tue Aug 30 11:48:08 1994 Eric Youngdale (ericy@cais.cais.com)
3189
3190 * ld.h (args_type): Add field soname.
3191 * lexsup.c (parse_args): Handle -soname argument.
3192 * emultempl/elf32.em: In call to bfd_elf32_size_dynamic_sections,
3193 pass soname.
3194 * ld.texinfo: Document -soname.
3195
3196 Mon Aug 29 15:21:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3197
3198 * ldlang.c (lang_check): Don't try to set the architecture if the
3199 input and output files are incompatible. Just warn.
3200
3201 Wed Aug 24 12:52:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3202
3203 * configure.in: Change i[34]86 to i[345]86.
3204
3205 Sun Aug 21 16:17:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3206
3207 * emulparams/hp3hpux.sh: Define __DYNAMIC to be 0.
3208
3209 Thu Aug 18 15:37:45 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3210
3211 Make the ELF linker handle orphaned sections reasonably. Also,
3212 define __start_SECNAME and __stop_SECNAME around sections whose
3213 names can be represented in C, for the benefit of symbol sets in
3214 glibc.
3215 * ldemul.h (ldemul_place_orphan): Declare.
3216 (ld_emulation_xfer_type): Add place_orphan field.
3217 * ldemul.c (ldemul_place_orphan): New function.
3218 * ldlang.h (wild_doit): Declare.
3219 * ldlang.c (wild_doit): Make nonstatic.
3220 (lang_place_orphans): Call ldemul_place_orphan.
3221 * emultempl/elf32.em: Include <ctype.h> and "ldgram.h".
3222 (hold_section, hold_use, hold_text, hold_data, hold_bss): New
3223 static variables.
3224 (gld${EMULATION_NAME}_place_orphan): New static function.
3225 (gld${EMULATION_NAME}_place_section): New static function.
3226 (ld_${EMULATION_NAME}_emulation): Initialize place_orphan field.
3227
3228 Tue Aug 16 00:17:20 1994 Eric Youngdale (ericy@cais.cais.com)
3229
3230 * scripttempl/aout.sc: Add .linux-dynamic after .data.
3231
3232 Tue Aug 16 00:08:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3233
3234 * lexsup.c (parse_args) Treat --dll-verbose as --version, for
3235 Linux compatibility. From hjl@nynexst.com (H.J. Lu).
3236
3237 Mon Aug 15 17:17:33 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3238
3239 * ldexp.h (exp_get_abs_int): Declare.
3240
3241 Sat Aug 6 01:45:39 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3242
3243 * ldlang.c (lang_do_assignments): Handle complex AT's better.
3244 * ldexp.c (exp_get_abs_int): New function.
3245
3246 Fri Aug 5 20:55:55 1994 Jason Molenda (crash@phydeaux.cygnus.com)
3247
3248 * configure.in: add i960-nindy-coff support.
3249
3250 Thu Aug 4 14:45:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3251
3252 * ldlex.l (yy_create_string_buffer): Handle change to internal
3253 interface in flex 2.4.7.
3254
3255 Tue Aug 2 11:52:06 1994 Eric Youngdale (ericy@cais.cais.com)
3256
3257 * emultempl/linux.em (gld${EMULATION_NAME}_find_address_statement):
3258 New function; add 0x20 to any use of -Ttext.
3259 (gld${EMULATION_NAME}_create_output_section_statements): New
3260 function.
3261 (ld_${EMULATION_NAME}_emulation): Use the new function
3262 gld${EMULATION_NAME}_create_output_section_statements.
3263
3264 Mon Aug 1 15:50:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3265
3266 * scripttempl/mips.sc: Redo script to set . outside of sections
3267 and not bother to explicitly specify section addresses.
3268
3269 Tue Jul 26 11:02:35 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3270
3271 * scripttempl/elf.sc: Copy several more relocation sections into
3272 the output. Put .got.plt sections into .got.
3273
3274 Fri Jul 22 12:15:36 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3275
3276 * scripttempl/elf.sc: Use PROVIDE to define etext, edata, and end.
3277
3278 Add a new script operator, PROVIDE, to define a symbol only if it
3279 is needed.
3280 * ldgram.y (PROVIDE): New token.
3281 (assignment): Accept PROVIDE.
3282 * ldlex.l (PROVIDE): New token.
3283 * ldexp.h (node_type): Add etree_provide to node_class enum.
3284 (exp_provide): Declare.
3285 * ldexp.c (exp_fold_tree): Handle etree_provide.
3286 (exp_provide): New function.
3287 (exp_print_tree): Handle etree_provide.
3288 * ld.texinfo: Document PROVIDE.
3289
3290 * ldlang.c (lang_common): Pass desired alignment to
3291 lang_one_common as power of two.
3292 (lang_one_common): Get common symbol alignment from linker hash
3293 table entry. Treat desired alignment as a power of two.
3294
3295 * ldlang.c (wild_section): Attach all section with the given name,
3296 not just the first one. If there is no name, attach all sections
3297 even if the SEC_IS_COMMON flag is set.
3298
3299 Wed Jul 20 15:49:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3300
3301 * ld.h (args_type): Add field rpath.
3302 * lexsup.c (S_ISDIR): Define if not already defined.
3303 (parse_args): Add support for -rpath. If -R is used to name a
3304 directory, treat it as -rpath for Solaris compatibility.
3305 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
3306 Pass command_line.rpath to bfd_elf32_size_dynamic_sections.
3307 * ldmain.c (main): Initialize command_line.rpath to NULL.
3308 * ld.texinfo: Document -rpath option.
3309
3310 Sun Jul 10 00:33:24 1994 Ian Dall (dall@hfrd.dsto.gov.au)
3311
3312 * emulparams/pc532machaout.sh: New file. Pc532 mach script
3313 parameters.
3314
3315 * emulparams/netbsd532.sh: New file. Netbsd 532 script parameters.
3316
3317 * config/pc532mach.mt: New file. Pc532 mach target support.
3318
3319 * config/pc532mach.mh: New file. Pc532 mach host support.
3320
3321 * config/netbsd532.mt: New file. Netbsd 532 target support.
3322
3323 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd support.
3324
3325 * Makefile.in: Add epcmachaout.c dependency and enetbsd532.c
3326 dependency.
3327
3328 Fri Jul 8 10:57:02 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3329
3330 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Use
3331 bfd_abs_section_ptr, not &bfd_abs_section.
3332
3333 * lexsup.c (parse_args): Changed "retain-symbols-file" from
3334 no_argument to required_argument. From djm.
3335
3336 Thu Jul 7 12:29:53 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3337
3338 * scripttempl/elf.sc: Explicitly mention .stab and .stabstr
3339 sections to force a VMA of 0; needed for ELF backends which have
3340 not been converted to the new linker style.
3341
3342 Mon Jul 4 19:35:45 1994 Jeff Law (law@snake.cs.utah.edu)
3343
3344 * scripttempl/hppaelf.sc (__stack_zero): Don't define this name,
3345 it was for the HPUX dynamic loader's use and it creates problems
3346 with ELF GDB.
3347
3348 Fri Jul 1 12:53:47 1994 Jeff Law (law@snake.cs.utah.edu)
3349
3350 * ldlang.c (lang_do_assignments): No longer static. Delete decl.
3351 * ldlang.h (lang_do_assignments): Put external decl here.
3352 * emultempl/hppaelf.em: Minor cleanups throughout file.
3353 (hppa_elf_create_output_section_statements): Rewrite.
3354 (hppaelf_finish): Rewrite.
3355
3356 Wed Jun 29 16:50:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3357
3358 * config/solaris2.mh (NATIVE_LIB_DIRS): Define as /usr/ccs/lib.
3359
3360 * lexsup.c (parse_args): Accept -Bstatic and -Bdynamic. Do not
3361 accept plain -B.
3362 * ld.texinfo: -Bstatic is not ignored.
3363
3364 Tue Jun 28 12:13:34 1994 Stan Shebs (shebs@andros.cygnus.com)
3365
3366 * ldlex.l: Recognize \r the same as \n.
3367
3368 Thu Jun 23 17:53:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3369
3370 Preliminary support for generating shared libraries, from Eric
3371 Youngdale <ericy@cais.cais.com>.
3372 * genscripts.sh: If the emulation parameter file sets
3373 GENERATE_SHLIB_SCRIPT, generate a .xs script file with
3374 CREATE_SHLIB defined.
3375 * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): If
3376 link_info.shared is set, use the .xs script file.
3377 * scripttempl/elf.sc: If CREATE_SHLIB is set, don't create a
3378 .interp section, and don't include TEXT_START_ADDR in the starting
3379 address of the first section.
3380 * emulparams/elf_i386.sh (GENERATE_SHLIB_SCRIPT): Likewise.
3381 * emulparams/elf32_sparc.sh (GENERATE_SHLIB_SCRIPT): Define.
3382
3383 Thu Jun 23 12:52:22 1994 David J. Mackenzie (djm@rtl.cygnus.com)
3384
3385 * configure.in: Change --with-targets to --enable-targets.
3386
3387 Wed Jun 22 13:42:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3388
3389 * lexsup.c (parse_args): Add support for new options -( -) with
3390 synonyms --start-group --end-group.
3391 * ldlang.h (enum statement_enum): Add lang_group_statement_enum.
3392 (lang_group_statement_type): Define new struct.
3393 (lang_statement_union_type): Add group_statement field.
3394 (lang_enter_group, lang_leave_group): Declare.
3395 * ldlang.c (lang_for_each_statement_worker): Handle
3396 lang_group_statement_enum.
3397 (map_input_to_output_sections, print_statement): Likewise.
3398 (lang_size_sections, lang_do_assignments): Likewise.
3399 (open_input_bfds): Completely rewrite. Now does its own looping,
3400 rather than using lang_for_each_statement. Handle groups.
3401 (lang_process): Update call to open_input_bfds.
3402 (print_group): New static function.
3403 (lang_enter_group, lang_leave_group): New static functions.
3404 * ldfile.c (ldfile_open_file): If the file has already been
3405 opened, just return rather than taking an assertion failure.
3406 * ldver.c (help): Mention new options.
3407 * ld.texinfo: Document new options.
3408
3409 * ldlang.c (end_of_data_section_statement_list): Don't define.
3410 (lang_leave_output_section_statement): Don't set obsolete variable
3411 end_of_data_section_statement_list.
3412
3413 * scripttempl/go32coff.sc: Don't put ${DATA_ALIGNMENT} inside an
3414 ALIGN.
3415
3416 * ldlang.c (lang_size_sections): Adjust current region address
3417 even for sections with an explicit address. From
3418 ralphc@pyramid.com (Ralph Campbell).
3419
3420 * emulparams/i386linux.sh (NONPAGED_TEXT_START_ADDR): Set to 0.
3421 From jrs@world.std.com (Rick Sladkey).
3422
3423 * scripttempl/mipsbsd.sc: Let sections align to their natural
3424 boundaries.
3425
3426 Tue Jun 21 11:27:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
3427
3428 * ldlang.c (lang_init): Use new bfd_abs_section_ptr, not
3429 &bfd_abs_section.
3430 (lang_abs_symbol_at_beginning_of): Likewise.
3431 (lang_abs_symbol_at_end_of): Likewise.
3432 (lang_size_sections): Use bfd_is_abs_section to check for the
3433 absolute section. Don't try to set the VMA or output_offset or
3434 size of the absolute section.
3435 * ldmain.c (notice_ysym): Use bfd_is_und_section to check for the
3436 undefined section.
3437
3438 Thu Jun 16 22:48:41 1994 Jeff Law (law@snake.cs.utah.edu)
3439
3440 * scripttempl/hppaelf.sc: Place .data and .bss at 0x40000000
3441 when generating relocatable objects.
3442
3443 Thu Jun 16 14:25:22 1994 Eric Youngdale (ericy@cais.cais.com)
3444
3445 * emultempl/linux.em: New file providing support for linking
3446 against Linux shared libraries.
3447 * config/i386-linux.mt (ei386linux.c): Depend upon linux.em.
3448 * emulparams/i386linux.sh (TEMPLATE_NAME): Define as linux.
3449
3450 Thu Jun 16 12:22:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3451
3452 * lexsup.c (parse_args): Add -shared to longopts, and handle it.
3453 * ldmain.c (main): Initialize link_info.shared to false. Give
3454 error if link_info.relocateable and link_info.shared are both set.
3455
3456 * configure.in: If EMUL_EXTRA* is defined in a config file, treat
3457 it as naming an emulation to be added to EMULATION_OFILES.
3458 * config/i386-linux.mt (EMUL_EXTRA1): Define as elf_i386.
3459
3460 * Makefile.in: Rebuilt dependencies.
3461 (ALL_EMULATIONS): Add ei386linux.o, eelf32_sparc.o,
3462 eelf64_sparc.o. Remove $(OTHER_EMULATIONS).
3463 (ei386linux.c, eelf32_sparc.c, eelf64_sparc.c): New targets.
3464 * config/i386-linux.mt (OTHER_EMULATIONS): Don't define.
3465 (ei386linux.c): Remove; now in Makefile.in.
3466 * config/i386-lynx.mt (OTHER_EMULATIONS): Don't define.
3467 * config/m68k-lynx.mt (OTHER_EMULATIONS): Don't define.
3468 * config/sparc-lynx.mt (OTHER_EMULATIONS): Don't define.
3469 * config/sparc64-elf.mt (OTHER_EMULATIONS): Don't define.
3470 (eelf64_sparc.c): Remove; now in Makefile.in.
3471 * config/sun4sol2.mt (OTHER_EMULATIONS): Don't define.
3472 (eelf32_sparc.c): Remove; now in Makefile.in.
3473
3474 * ldexp.c (exp_print_tree): Don't crash if etree_rel section has
3475 no owner--it might be bfd_abs_section. From Eric Youngdale
3476 <ericy@cais.cais.com>.
3477
3478 * scripttempl/aout.sc: Let sections align to their natural
3479 boundaries.
3480
3481 Wed Jun 15 01:54:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3482
3483 * ldemul.h (ldemul_open_dynamic_archive): Declare.
3484 (ld_emulation_xfer_type): Add new field open_dynamic_archive.
3485 * ldemul.c: Include ldexp.h and ldlang.h.
3486 (ldemul_open_dynamic_archive): New function.
3487 * ldfile.h (ldfile_open_file_search): Declare.
3488 * ldfile.c: Include ldemul.h.
3489 (try_open_bfd): Rename from cache_bfd_openr. Return boolean
3490 argument, not bfd *. Change all callers.
3491 (ldfile_open_file_search): Rename from open_a. Return boolean
3492 argument, not bfd *. Clean up. Change all callers.
3493 (ldfile_open_file): If doing a dynamic link, call
3494 ldemul_open_dynamic_archive rather than assuming the extension of
3495 a dynamic object is ".so".
3496 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
3497 New function.
3498 (ld_${EMULATION_NAME}_emulation): Initialize open_dynamic_archive
3499 field.
3500 * emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise.
3501
3502 * ldmain.c (get_emulation): Ignore -m486 for Linux compatibility.
3503 * lexsup.c (parse_args): Ignore -qmagic for Linux compatibility.
3504 Accept -static as a synonym for -non_shared.
3505
3506 Let the user change the dynamic linker used by ELF code.
3507 * ld.h (args_type): Add new field interpreter.
3508 * lexsup.c (parse_args): Add dynamic-linker to longopts, and
3509 handle it.
3510 * ldmain.c (main): Initialize command_line.interpreter to NULL.
3511 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Get
3512 the ELF backend to return the .interp section. If
3513 command_line.interpreter is not NULL, set the contents of .interp
3514 to it.
3515 * ld.texinfo: Mention -dynamic-linker.
3516
3517 * config/sun4sol2.mt (eelf32_sparc.c): Depend upon elf32.em, not
3518 generic.em.
3519
3520 * lexsup.c (parse_args): Sort out the option macros and change the
3521 definitions to make it easier to add a new option.
3522
3523 * scripttempl/aout.sc: Define __etext and __edata to go along with
3524 _etext and _edata.
3525
3526 * ld.h (ld_config_type): Add new field traditional_format.
3527 * lexsup.c (parse_args): Add traditional-format to longopts, and
3528 handle it.
3529 * ldmain.c (main): Initialize config.traditional_format to false.
3530 * ldlang.c (ldlang_open_output): Set BFD_TRADITIONAL_FORMAT in BFD
3531 flags of output_bfd according to config.traditional_format.
3532 * ldver.c (help): Mention -traditional-format.
3533 * ld.texinfo: Document -traditional-format.
3534
3535 Tue Jun 14 23:10:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3536
3537 * ldctor.c (ldctor_add_entry): Add entries to a set in the order
3538 they are encountered.
3539
3540 Tue Jun 14 18:05:09 1994 Eric Youngdale (ericy@cais.cais.com)
3541
3542 * emulparams/i386linux.sh (TEXT_START_ADDR): Define as 0x1000.
3543 (NONPAGED_TEXT_START_ADDR): Define as 0x20.
3544
3545 Mon Jun 13 15:46:09 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3546
3547 * scripttempl/alpha.sc: Define _ftext, _etext and _fdata insted of
3548 _FTEXT, _ETEXT and _FDATA. Dont define _END.
3549
3550 * ldfile.c (open_a): If this is not an archive, try to open it in
3551 the current directory before searching for it.
3552
3553 * lexsup.c (parse_args): Treat -i as a synonym for -r.
3554
3555 * ldgram.y (exp): Treat BLOCK as a synonym for ALIGN, so that
3556 BLOCK works in a section address as documented.
3557
3558 * ldgram.y (YYDEBUG): Don't define.
3559
3560 Fri Jun 10 16:45:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3561
3562 * emultempl/gld960.em: Pass false for new argument to
3563 ldfile_add_library_path.
3564 * emultempl/gld960c.em, emultempl/lnk960.em: Likewise.
3565
3566 * emultempl/sunos.em: Only look for .so files if doing a dynamic
3567 link.
3568
3569 Thu Jun 9 08:35:17 1994 Ian Lance Taylor (ian@cygnus.com)
3570
3571 * scripttempl/i960.sc: Add CONSTRUCTORS to .data.
3572
3573 Thu Jun 9 06:52:29 1994 Bill Cox (bill@rtl.cygnus.com)
3574
3575 * Makefile.in (check): Delete ld.new dependency so that a regression
3576 test doesn't trigger a rebuild of the linker.
3577
3578 Thu Jun 9 00:17:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3579
3580 * ldlang.c (map_input_to_output_sections): For lang_address, call
3581 init_os if it hasn't already been called.
3582
3583 Thu Jun 2 17:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3584
3585 Add support for SunOS shared libraries.
3586 * aout.sc: Don't define __DYNAMIC here. Add new sections used by
3587 shared library support code.
3588 * emultempl/sunos.em: New file.
3589 * emulparams/sun4.sh (TEMPLATE_NAME): Define as sunos.
3590 * emulparams/sun3.sh (TEMPLATE_NAME): Likewise.
3591 * Makefile.in (esun4.c): Depend upon sunos.em, not generic.em.
3592 (esun3.c): Likewise.
3593
3594 * ldlang.c: Minor formatting cleanups.
3595 (lang_for_each_input_file): New function.
3596 * ldlang.h (lang_for_each_input_file): Declare.
3597
3598 * ldfile.h (search_dirs_type): Move from ldfile.c, and add cmdline
3599 field.
3600 (search_head): Declare.
3601 (ldfile_add_library_path): Add new cmdline argument in prototype.
3602 * ldfile.c (search_head): Make non-static.
3603 (search_dirs_type): Move to ldfile.h.
3604 (ldfile_add_library_path): Accept cmdline argument, and save it.
3605 * lexsup.c (parse_args): Pass true for new cmdline argument of
3606 ldfile_add_library_path.
3607 (set_default_dirlist): Likewise.
3608 * ldmain.c (check_for_scripts_dir): Pass false for new cmdline
3609 argument of ldfile_add_library_path.
3610 * ldgram.y (ifile_p1): Likewise.
3611
3612 Wed Jun 1 14:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3613
3614 * ldlang.h (lang_input_statement_type): Remove fields subfiles,
3615 total_size, superfile and chain.
3616 * ldfile.c (open_a): Don't clear search_dirs_flag.
3617 (ldfile_open_file): Don't try to open superfile. Assert that file
3618 has not already been opened.
3619 * ldlang.c (new_afile): Don't initialize superfile.
3620 * ldmain.c (add_archive_element): Don't initialize subfiles or
3621 chain or superfile. Initialize search_dirs_flag to false.
3622
3623 Fri May 27 12:25:33 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3624
3625 * ldver.c (ldversion): Changed version to "cygnus-2.4.1".
3626
3627 Changes from binutils-2.4 release:
3628
3629 * genscripts.sh (RELOCATING, CONSTRUCTING): When setting
3630 variables, use whitespace, so scripts don't break.
3631
3632 * config/alphaosf.mh (HDEFINES, CFLAGS): Deleted.
3633
3634 * emultempl/generic.em: Find emultempl/stringify.sed in ${srcdir}.
3635
3636 * cdtest-bar.cc: Renamed from cdtest-func.cc.
3637 * Makefile.in: Noted change.
3638
3639 * scripttempl/a29k.sc: Don't include /lab3/u3/..../segments.o; I
3640 don't know where that's supposed to come from, or why it's
3641 necessary.
3642
3643 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
3644
3645 * configure.bat: update to latest makefile.in
3646 * emulpara/go32.sh: set to coff-go32 not aout
3647 * emultemp/generic.em: strength-reduce the structure of
3648 this shell script, since the only available shell for
3649 DOS can't handle complex syntax.
3650 * emultemp/stringify.sed: for "sed -f" instead of inline.
3651 * makefile.in: depend on stringify.sed as well as genscripts.sh
3652 * scripttemp/go32coff.sc: correct for djgpp 1.11's COFF format
3653 * genscripts.sh: empty variables aren't always considered "set",
3654 so set them to "y" instead.
3655
3656 Fri May 27 01:08:14 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3657
3658 * ldlang.c (entry_symbol): Make static.
3659 (lang_add_entry): Add cmdline argument.
3660 * ldlang.h (lang_add_entry): Change prototype.
3661 * ldgram.y (statement_anywhere): Change lang_add_entry call.
3662 * lexsup.c (parse_args): Likewise.
3663
3664 Tue May 24 16:13:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3665
3666 * emulparams/elf32mipb.sh (OTHER_READONLY_SECTIONS): Don't give
3667 .reginfo an address.
3668 (OTHER_READWRITE_SECTIONS): Don't give .lit4 or .lit8 an address.
3669 (OTHER_SECTIONS): Define for .gptab.sdata and .gptab.sbss.
3670 * scripttempl/elf.sc: Use OTHER_SECTIONS at end of script.
3671
3672 Thu May 19 13:31:33 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3673
3674 Add support for ELF shared libraries.
3675 * ld.h (ld_config_type): Add field dynamic_link.
3676 * ldmain.c (main): Initialize config.dynamic_link to false. Warn
3677 on attempts to use -r with -relax, -call_shared or -s.
3678 * lexsup.c (longopts): Separate OPTION_CALL_SHARED from
3679 OPTION_NON_SHARED. Add OPTION_IGNORE. Adjust macro values
3680 accordingly. Add "dy" and "non_shared" options. Change "Qy" to
3681 OPTION_IGNORE for now. Handle OPTION_CALL_SHARED and
3682 OPTION_NON_SHARED by setting dynamic_link field accordingly.
3683 Handle OPTION_IGNORE by ignoring it. Clear dynamic_link field for
3684 -r and -Ur.
3685 * ldfile.c (ldfile_open_file): If config.dynamic_link is true, try
3686 opening a file with a .so extension first.
3687 * emultempl/elf32.em: New file.
3688 * emulparams/elf32_sparc.sh (TEXT_START_ADDR): Change to 0x10000.
3689 (NONPAGED_TEXT_START_ADDR): Likewise.
3690 (TEMPLATE_NAME): Define as elf32.
3691 (DATA_PLT): Define.
3692 * emulparams/elf_i386.sh (TEMPLATE_NAME): Define as elf32.
3693 * scripttempl/elf.sc: Add placement for new dynamic sections.
3694 Don't use CREATE_OBJECT_SYMBOLS. Define _etext, _edata and _end
3695 outside of any section. Don't use ALIGN(8); just let one section
3696 VMA follow another. Put .dynbss in .bss. Don't mention debugging
3697 sections; they'll be handled correctly anyhow.
3698 * Makefile.in (eelf_i386.c): Depend upon elf32.em, not generic.em.
3699
3700 Wed May 18 10:15:39 1994 Ian Lance Taylor (ian@cygnus.com)
3701
3702 * Makefile.in (install): Redirect output of ln to /dev/null.
3703
3704 Mon May 16 13:35:08 1994 Jeff Law (law@snake.cs.utah.edu)
3705
3706 * emultempl/hppaelf.em: Change all references of
3707 .hppa_linker_stubs to .PARISC.stubs.
3708 * scripttempl/hppaelf.sc: Likewise.
3709
3710 Fri May 13 13:00:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3711
3712 * ldlang.c (print_output_section_statement): Change ``no attached
3713 output section'' message slightly.
3714 (lang_do_assignments): Don't recurse down if there is no real
3715 section.
3716
3717 * config/i386-linux.mt (OTHER_EMULATIONS): Change em_ to e to
3718 match corresponding change in emulation templates.
3719 * config/i386-lynx.mt, config/m68k-lynx.mt: Likewise.
3720 * config/sparc-lynx.mt, config/sun4sol2.mt: Likewise.
3721
3722 Wed May 11 18:16:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3723
3724 * ldver.c (ldversion): Updated version number.
3725
3726 * cdtest-foo.cc: Use explicit "#pragma implementation".
3727 * cdtest-bar.cc: Renamed from cdtest-func.cc.
3728 * Makefile.in: References to cdtest-func.o changed to
3729 cdtest-bar.o.
3730
3731 Wed May 11 16:24:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3732
3733 Don't create unnecessary output sections.
3734 * ldlang.c (out_bfd_get_section_by_name): Remove.
3735 (wild_section): Call bfd_get_section_by_name rather than
3736 our_bfd_get_section_by_name. Don't call wild_doit if there is no
3737 section.
3738 (lang_create_output_section_statements): Remove.
3739 (map_input_to_output_sections): For several cases, call init_os if
3740 it has not already been called.
3741 (lang_size_sections): If output section was not created, skip it.
3742 (lang_process): Don't call lan_create_output_section_statements.
3743 (lang_place_orphans): Skip files with just_syms_flags set to true.
3744 * ld.texinfo: Document change.
3745
3746 Tue May 10 14:31:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3747
3748 * ldlang.c (wild_doit): Don't bother initializing the vma and
3749 section size. Don't special case SEC_SHARED_LIBRARY.
3750 (lang_size_sections): Handle SEC_COFF_SHARED_LIBRARY sections
3751 specially.
3752
3753 Fri May 6 12:24:27 1994 Steve Chamberlain (sac@cygnus.com)
3754
3755 * config/go32.mh : New file for Xgo32X.
3756
3757 Fri May 6 15:15:35 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3758
3759 * ldfile.c (ldfile_open_command_file): Set bfd_error_system_call
3760 before calling einfo, since we are reporting an fopen failure.
3761 From jrs@world.std.com (Rick Sladkey).
3762
3763 * configure.in: Use "e" rather than "em_" as prefix for
3764 emulations.
3765
3766 Fri May 6 01:08:14 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3767
3768 * emultempl/generic.em: Use "e" rather than "em_" as prefix for
3769 filename.
3770 * emultempl/gld960.em, emultempl/gld960c.em, emultempl/lnk960.em,
3771 emultempl/hppaelf.em, emultempl/m88kbcs.em, emultempl/vanilla.em:
3772 Ditto.
3773 * Makefile.in: Changed all generated file names.
3774 (ldemul-list.h): Depend on Makefile, not config.status. Changed
3775 sed patterns to handle new filenames.
3776
3777 * config/mipsl-idt.mt: Renamed from mips-idtl.mt.
3778 * configure.in: Adjusted.
3779
3780 Thu May 5 15:07:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3781
3782 * Makefile.in (install-info): Don't use "$<*", it doesn't always
3783 work. Instead, check build dir and $srcdir explicitly, and use
3784 `echo' to get all the filenames.
3785
3786 * configure.in (h8300h-*-hms): Changed ld_target name to
3787 cf-h8300h.
3788 * config/cf-h8300h.mt: Renamed from coff-h8300h.mt, to make it
3789 unique in 8.3.
3790
3791 * config/i960coff.mt: New file.
3792 * emulparams/gld960coff.sh: New file.
3793 * emultempl/gld960c.em: New file.
3794 * configure.in (i960-*-vxworks5* except -vxworks5.0*): Use
3795 i960coff configuration.
3796 * Makefile.in (em_gld960coff.c): Added dependencies, build rule.
3797
3798 * Makefile.in (ALL_EMULATIONS): Remove em_delta68.o, since the
3799 code isn't included in FSF releases, and it can still be
3800 explicitly selected.
3801 (distclean): Remove site.bak and tmpdir.
3802 (STAGESTUFF): Removed $(GENERATED_CFILES) $(GENERATED_HFILES).
3803 (mostlyclean): Delete them explicitly here. Also remove tmpdir.
3804
3805 Patches from Ralph Campbell:
3806 * config/mipsbsd.mh: New file.
3807 * Makefile.in (em_mipsbsd.c): Use mipsbsd.sc, not aout.sc.
3808 * scripttempl/mipsbsd.sc: Don't define __DYNAMIC.
3809 * emulparams/mipsbsd.sh (OUTPUT_FORMAT): Fix name to have `a.out'
3810 instead of `aout'.
3811
3812 * configure.in (i386-*-gnu*): Treat like i386-*-mach*.
3813
3814 Wed May 4 11:59:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3815
3816 * config/m68k.mt (EMUL): Set to m68kaout.
3817 * emulparams/m68kaout.sh: New file.
3818 * Makefile.in (ALL_EMULATIONS): Add em_m68kaout.o.
3819 (em_m68kaout.c): New target.
3820
3821 * ldlang.c (lang_size_sections): If dot moves because of an
3822 assignment, don't try to insert a pad into the absolute output
3823 section, just change the address of the default memory region
3824 instead.
3825
3826 * Makefile.in (mostlyclean): Remove cdtest.tmp, cdtest-ur,
3827 cdtest-ur.out, and cdtest-ur.tmp.
3828
3829 Wed Apr 27 16:03:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3830
3831 * scripttempl/sa29200.sc: Align all sections to four byte
3832 boundaries.
3833
3834 Wed Apr 27 10:48:03 1994 Steve Chamberlain (sac@cygnus.com)
3835
3836 * Makefile.in, configure.in: Support for go32 coff.
3837 * config/i386-go32.mt: New file
3838 * emulparams/i386go32.sh: New file
3839 * scripttempl/i386go32.sc: New file
3840
3841 Tue Apr 26 17:20:03 1994 Stan Shebs (shebs@andros.cygnus.com)
3842
3843 * Makefile.in (em_m68klynx.c, em_i386lynx.c, em_sparclynx.c): Use
3844 Lynx-specific script templates.
3845 * configure.in (sparclite*-*-coff): Use coff-sparc.
3846 * emulparams/i386lynx.sh (SCRIPT_NAME): Set to i386lynx.
3847 * emulparams/sparclynx.sh (SCRIPT_NAME): Set to sparclynx.
3848 (ENTRY): Set to __main.
3849 * scripttempl/i386lynx.sc: New file, script for I386 Lynx.
3850 * scripttempl/m68klynx.sc: Add insertion of ctor/dtor sections.
3851 * scripttempl/sparclynx.sc: New file, script for uSparc Lynx.
3852
3853 Tue Apr 26 12:41:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3854
3855 * scripttempl/mips.sc: Force _gp and .lit8 to be aligned to a 16
3856 byte boundary, in case the global constructors do not take up an
3857 even 16 bytes.
3858
3859 * config/i386v4.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
3860 exist, get crtbegin based on gcc -print-libgcc-file-name.
3861 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
3862
3863 Mon Apr 25 15:27:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3864
3865 * ldlang.c (lang_size_sections): When no address is given for a
3866 section, align it according to its requirements.
3867
3868 Thu Apr 21 17:24:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3869
3870 * Makefile.in (clean, distclean): Remove configdoc.texi.
3871
3872 Tue Apr 19 12:12:15 1994 Bill Cox (bill@rtl.cygnus.com)
3873
3874 * configure.in: Add i[34]86-*-bsd386 to the patterns recognized.
3875
3876 Fri Apr 15 14:35:42 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3877
3878 * ldlang.c (lang_size_sections): When relaxing, adjust the
3879 position of a padding statement, and adjust dot accordingly.
3880
3881 Mon Apr 11 17:37:09 1994 Bill Cox (bill@rtl.cygnus.com)
3882
3883 * Makefile.in (EXPECT, RUNTEST): Set these for the check goal.
3884
3885 Mon Apr 11 12:32:57 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3886
3887 * scripttempl/i386coff.sc: If relocating, don't put .init and
3888 .fini sections into .text; keep them separate.
3889 * config/i386sco.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
3890 exist, get crtbegin based on gcc -print-libgcc-file-name.
3891 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
3892
3893 Mon Apr 11 10:31:00 1994 Bill Cox (bill@rtl.cygnus.com)
3894
3895 * Makefile.in (check): Set TCL_LIBRARY for runtest.
3896
3897 Wed Apr 6 00:09:37 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3898
3899 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
3900 manufacturer.
3901
3902 * emultempl/hppaelf.em (hppaelf_finish): Only resize sections
3903 if building a final executable.
3904
3905 Tue Apr 5 12:17:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3906
3907 * ldmain.c (main): Check the return value of bfd_close.
3908
3909 Thu Mar 31 18:07:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3910
3911 * scripttempl/alpha.sc: Clean up section alignment to ensure that
3912 sections never overlap when using -r.
3913
3914 Wed Mar 30 15:51:15 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3915
3916 * ldmisc.c (vfinfo): Change symbol reading slightly for recent BFD
3917 changes: get_symtab_upper_bound renamed and returns long,
3918 bfd_canonicalize_symtab returns long, check for error indications.
3919
3920 Fri Mar 25 17:20:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3921
3922 * ldlang.c (print_input_section): For section size, use
3923 _cooked_size if it is non-zero, size otherwise.
3924 (size_input_section): Likewise.
3925 (lang_do_assignments): Likewise (case lang_input_section_enum).
3926
3927 Thu Mar 24 15:20:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3928
3929 * ldlang.c (new_afile): Add new argument add_to_list. Don't set
3930 real to true for lang_input_file_is_marker_enum. Clear the_bfd.
3931 (lang_add_input_file): Pass true to new_afile for add_to_list.
3932 (lookup_name): Remove force_load argument. Changed all callers.
3933 Pass false to new_afile for add_to_list. Split loading of symbols
3934 out into separate function.
3935 (load_symbols): New function split out of lookup_name. Don't load
3936 the symbols if they are already loaded.
3937 (open_input_bfds): For lang_input_statement_enum call load_symbols
3938 rather than lookup_name.
3939 (lang_process): Pass abs_output_section rather than NULL to
3940 lang_size_sections.
3941 (lang_startup): Set real field of first_file to true.
3942
3943 Wed Mar 23 14:15:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3944
3945 * ldlang.c (had_relax): Removed.
3946 (relax_again): New static variable.
3947 (lang_size_sections): Change call to bfd_relax_section to
3948 correspond to BFD changes. Set relax_again appropriately.
3949 (lang_process): Remove #if 0 code. When relaxing, keep calling
3950 lang_do_assignments and lang_size_sections until relax_again
3951 becomes false.
3952
3953 * emultemp/gld960.em: Include libiberty.h
3954 (gld960_before_parse): Pass NULL as final argument to concat.
3955
3956 Tue Mar 22 13:08:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3957
3958 * scripttempl/aout.sc: Force _end and __end to be aligned to a
3959 four byte boundary.
3960
3961 * ldwrite.c (build_link_order): Handle lang_data_statement_enum by
3962 building a bfd_data_link_order, rather than by setting the section
3963 contents immediately.
3964
3965 Mon Mar 21 18:28:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3966
3967 Changes to make -Ur work again.
3968 * ldmain.c (add_to_set): Now takes reloc argument rather than
3969 bitsize. Check config.build_constructors here. If an new hash
3970 table entry is created, mark it as undefined.
3971 (constructor_callback): No longer takes bitsize argument. Pass
3972 BFD_RELOC_CTOR to ldctor_add_set_entry, but first make sure the
3973 BFD backend supports it.
3974 (reloc_overflow): Handle a NULL abfd argument.
3975 (reloc_dangerous, unattached_reloc): Likewise.
3976 * ldctor.c: Include ldmain.h.
3977 (struct set_info): Change bitsize field to reloc.
3978 (ldctor_add_set_entry): Now takes reloc argument rather than
3979 bitsize. Don't bother to check config.build_constructors here.
3980 (ldctor_build_sets): Get the size from the reloc howto. If
3981 generating relocateable output, call lang_add_reloc rather than
3982 lang_add_data.
3983 * ldctor.h (ldctor_add_set_entry): Change declaration to use reloc
3984 instead of bitsize.
3985 * ldlang.h (statement_enum): Add lang_reloc_statement_enum.
3986 (lang_reloc_statement_type): New structure.
3987 (lang_statement_union_type): Add reloc_statement field.
3988 (lang_add_reloc): Declare new function.
3989 * ldlang.c (lang_for_each_statement_worker): Handle
3990 lang_reloc_statement_enum.
3991 (map_input_to_output_sections, print_statement): Likewise.
3992 (lang_size_sections, lang_do_assignments): Likewise.
3993 (print_reloc_statement): New function.
3994 (lang_add_reloc): New function.
3995 * ldwrite.c (build_link_order): Handle lang_reloc_statement_enum.
3996
3997 * Makefile.in (cdtest.out, cdtest-ur.o): New targets.
3998 (cdtest-ur, cdtest-ur.out): New targets.
3999 (check-cdtest): Now also check that -Ur works correctly.
4000
4001 * scripttemp/alpha.sc: Align all sections to 16 byte boundaries.
4002
4003 Thu Mar 17 12:45:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4004
4005 * ldlang.c (lang_process): Move lang_common call before
4006 map_input_to_output_sections, to ensure that any alignment
4007 constraints set by common symbols are copied over to the output
4008 sections.
4009
4010 Fri Mar 11 22:17:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4011
4012 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Don't define.
4013 (OTHER_READWRITE_SECTIONS): Rename .toc to .got.
4014 * Makefile.in (em_elf32ppc.c): Depend upon generic.em, not ppc.em.
4015 * emultempl/ppc.em: Remove ugly stub code; turns out not to be
4016 needed for ELF.
4017
4018 Tue Mar 8 04:22:27 1994 David J. Mackenzie (djm@rtl.cygnus.com)
4019
4020 * config/i386bsd.mh: New file.
4021
4022 Mon Mar 7 15:23:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4023
4024 * elf.sc: Permit TEXT_START_SYMBOLS and DATA_START_SYMBOLS to be
4025 defined.
4026 * emulparams/elf32mipb.s (TEXT_START_SYMBOLS): Define _ftext.
4027 (DATA_START_SYMBOLS): Define _fdata.
4028
4029 Mon Feb 28 10:59:14 1994 Stan Shebs (shebs@andros.cygnus.com)
4030
4031 * ldlang.c (cat): Define using ANSI style if ALMOST_STDC defined.
4032
4033 Sun Feb 27 16:29:38 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4034
4035 * emultempl/hppaelf.em (hppaelf_finish): Update comments. This
4036 works again. Attach some output symbols to the stub file bfd.
4037
4038 * emultempl/hppaelf.em: Include elf32-hppa.h.
4039 (file_chain): Add decl.
4040 (hppa_look_for_stubs_in_section): Delete decl.
4041 (hppaelf_finish): Reenable code. Do not pass symbols
4042 down to hppa_look_for_stubs_in_section.
4043
4044 Sat Feb 26 10:58:25 1994 Ian Lance Taylor (ian@cygnus.com)
4045
4046 * ldmain.c (write_map): Don't define. Removed all references.
4047 Just use map_file or map_filename instead.
4048 (add_archive_element): Use minfo to write map information, not
4049 info_msg.
4050 (constructor_callback): Use fprintf to write map information, not
4051 info_msg.
4052 * ldmain.h (write_map): Don't declare.
4053 * ldgram.y (mri_script_command): Removed reference to write_map.
4054 * ldlang.c (lang_one_common): Likewise.
4055 * lexsup.c (parse_args): Likewise.
4056
4057 Fri Feb 25 19:12:03 1994 Ian Lance Taylor (ian@cygnus.com)
4058
4059 * scripttempl/elf.sc: Force all sections to be aligned.
4060
4061 * ldgram.y (section): Reverse the order of memspec_opt and
4062 fill_opt to avoid an ambiguity when both are used.
4063 * ld.texinfo: Changed accordingly.
4064
4065 * ldgram.y: Move include of ldlex.h back with other includes.
4066 * ldlex.h (input_type): Don't initialize enum constants to
4067 particular values.
4068 * ldlex.l: Use a switch to return the right token based on
4069 input_type, rather than knowing that input_type has a value based
4070 on a token type.
4071
4072 * ldgram.y (dirlist_ptr): Removed; not used.
4073 * lexsup.c: Include ldver.h.
4074 * Makefile.in: Rebuilt dependencies.
4075
4076 Fri Feb 25 18:55:54 1994 Ted Lemon (mellon@pepper.ncd.com)
4077
4078 * ldlang.c (lookup_name): don't call bfd_set_gp_size.
4079 (ldlang_add_file): call it here instead.
4080
4081 Fri Feb 25 18:13:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
4082
4083 * ldgram.y: Include ldlex.h after %token decls, for byacc.
4084
4085 Fri Feb 25 10:47:25 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4086
4087 * emultempl/hppaelf.em: First attempt to clean this file up.
4088 Add comments in several functions as to their purpose and
4089 how they function (or my current best guess). Clean up horrible
4090 spacing and indention that never should have been accepted in the
4091 first place. Add FIXMEs for issues which need to be resolved.
4092 Disable linker-stub generation until it gets fixed. This allows
4093 the linker to at least work on simple code for testing purposes.
4094
4095 * ldlang.c (lang_size_sections): No longer static (PA ELF calls
4096 it via hppaelf_finish). Prototype moved into ldlang.h.
4097 (lang_process): Move problematic extra call to lang_size_sections
4098 into the PA ELF specific code.
4099 * emultempl/hppaelf.em (hppaelf_finish): Extra call to
4100 lang_size_sections moved here.
4101
4102 Thu Feb 24 16:47:33 1994 Ian Lance Taylor (ian@cygnus.com)
4103
4104 * configure.in (powerpc-*-elf*): New target; use ppc-elf32.
4105 * config/ppc-elf32.mt: New file.
4106 * emulparams/elf32ppc.sh: New file.
4107 * emultempl/ppc.em: New file.
4108 * Makefile.in (ALL_EMULATIONS): Added em_elf32ppc.o.
4109 (em_elf32ppc.c): New target; uses elf32ppc.sh, ppc.em and elf.sc.
4110 (EMULATION_OFILES): Added dependencies on ldexp.h and ldlang.h.
4111
4112 Thu Feb 24 12:27:07 1994 David J. Mackenzie (djm@rtl.cygnus.com)
4113
4114 * lexsup.c (parse_args): Use symbolic numbers for long options.
4115 Fix misunderstanding in -Y and -call_shared et al.
4116
4117 Use getopt instead of lex and yacc to parse the command line.
4118
4119 * ld.texinfo (Options): Document changes to option syntax.
4120 * Makefile.in: Update dependencies.
4121 * ldver.c (help): Tweak dashes in usage message.
4122 * ldgram.y (%union): Remove unused members.
4123 Remove %tokens for command line options; add ones for input types.
4124 (command_line): Rules removed.
4125 (file): Instead of command line, recognize an
4126 input type indicator, then use the nonterminal for that type.
4127 (defsym_expr): New nonterminal from code formerly in command_line.
4128 * ldlex.h: Declare parser input type enum and variable.
4129 Don't declare parse_line.
4130 * ldlex.l: Remove unused variables. Make some used ones static
4131 and comment them.
4132 (COMMAND): Start state and its rules removed.
4133 At start of yylex, return input state token if at start of input.
4134 (lex_redirect): Don't need to set yyout.
4135 (ldlex_command): Function removed.
4136 * ldmain.c (main): Instead of calling parse_line, set up the
4137 redirections and call yyparse directly.
4138 * ldmisc.c (vfinfo): If there's no input filename, print nothing, not
4139 "command line".
4140 * lexsup.c: Remove #if 0'd code.
4141 (parse_line): Function removed.
4142 (parse_args): Rewrite to use getopt_long_only.
4143 (set_default_dirlist): New function from code formerly in
4144 ldgram.y:command_line.
4145 (set_section_start): New function.
4146 * emultempl/generic.em, emultempl/gld960.em, emultempl/hppaelf.em,
4147 emultempl/lnk960.em, emultempl/m88kbcs.em: Don't enclose
4148 compiled-in link scripts in "{" and "}", as the grammar no longer
4149 wants them to be.
4150
4151 Thu Feb 24 08:43:26 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
4152
4153 * Makefile.in (ld.dvi): Depend on configdoc.texi, but don't
4154 require that it be in $(srcdir).
4155
4156 Tue Feb 22 09:21:18 1994 Ian Lance Taylor (ian@cygnus.com)
4157
4158 * ldlang.c (lang_size_sections): Only align section to alignment
4159 required by linker script, not to maximum alignment of input
4160 sections.
4161
4162 * ldlang.h (largest_section): Don't declare.
4163 * ldlang.c (largest_section): Don't define.
4164 (size_input_section): Don't set largest_section; not used.
4165
4166 Mon Feb 21 15:15:29 1994 Ian Lance Taylor (ian@cygnus.com)
4167
4168 * ldlang.c (new_afile): Pass NULL as last argument to concat.
4169
4170 Thu Feb 17 15:51:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4171
4172 * ldlang.c, ldmain.c: Include libiberty.h.
4173
4174 * ldmisc.h (concat): Don't declare.
4175 * ldmisc.c (concat): Don't define; just use the one in libiberty.
4176
4177 * ld.h (as_output_section_statement): Removed; not used.
4178
4179 Thu Feb 17 09:32:14 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4180
4181 * ldlang.c, ldmain.c, ldmisc.c: Use bfd_get_error and
4182 bfd_set_error and new error names.
4183
4184 Tue Feb 15 20:14:53 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4185
4186 * ldwrite.c (build_link_order): If the cooked size of the section
4187 has been set, use it, for determining link_order size.
4188 (ldwrite): In the error message displayed if bfd_final_link fails,
4189 indicate that it was in fact the final link step that failed.
4190
4191 * ldlang.c (lang_size_sections): Clear bfd_error before calling
4192 bfd_relax_section, in case it returns false but doesn't flag an
4193 error. If an error is returned, indicate which one it is in the
4194 error message.
4195
4196 * Makefile.in (install-info): Depend on ld.info, and use "$<*" so
4197 it'll get picked up from $(srcdir) if appropriate.
4198
4199 Tue Feb 15 16:32:04 1994 David J. Mackenzie (djm@rtl.cygnus.com)
4200
4201 * scripttempl/aout.sc: Only pad .text if PAD_TEXT is set.
4202 * emulparams/i386mach.sh (PAD_TEXT): Set PAD_TEXT.
4203
4204 Fri Feb 11 17:02:49 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4205
4206 * ldlex.l (comment): Increment line number when newline is read.
4207
4208 Fri Feb 11 17:36:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4209
4210 * ldlang.c (lookup_name): Take new argument, force_load. If true,
4211 reload the file even if it is already loaded.
4212 (wild): Call lookup_name with force_load argument of 0.
4213 (open_input_bfds): Call lookup_name with force_load argument of 1.
4214 (print_symbol): Remove declaration of non-existent function.
4215 (print_one_symbol): Return true rather than falling off end.
4216
4217 Thu Feb 10 11:52:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4218
4219 * ldmain.c (main): Use %ld when printing long values.
4220
4221 * scripttempl/elf.sc: Move _edata after the .sdata section.
4222 Permit OTHER_BSS_SYMBOLS to be defined.
4223 * emulparams/elf32mipb.s (OTHER_BSS_SYMBOLS): Define _fbss.
4224
4225 Mon Feb 7 16:31:15 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4226
4227 * Rename all "hppaosf" files to "hppaelf".
4228 * Change all "osf" references to "elf" in hppaelf files.
4229 * Makefile.in: Likewise.
4230 * configure.in: Likewise.
4231
4232 Sun Feb 6 20:31:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4233
4234 * ldmain.c (main): Call xatexit, not atexit.
4235 Call xmalloc_set_program_name.
4236
4237 * ldlang.c (lang_size_sections): Check if bfd_relax_section set
4238 bfd_errno.
4239
4240 Sat Feb 5 03:54:34 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4241
4242 * emultempl/lnk960.em (append), emultempl/hppaosf.em
4243 (hppaosf_finish): Call xmalloc, not ldmalloc.
4244 * ldmain.c (preserve_output): Function removed.
4245 (main): Do it here instead.
4246
4247 Fri Feb 4 23:02:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4248
4249 * ldlang.h (LANG_FOR_EACH_{INPUT,OUTPUT}_SECTION): Delete (unused)
4250 GNU C specific macros.
4251
4252 * emultempl/hppaosf.em (hppaosf_finish): Expand the only remaining
4253 call to LANG_FOR_EACH_INPUT_SECTION.
4254
4255 Fri Feb 4 16:26:08 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4256
4257 * ldmisc.c (ldmalloc, xmalloc, ldrealloc, xrealloc): Functions
4258 deleted; will use libiberty versions instead.
4259 * ldctor.c ldfile.c ldlang.c ldmain.c ldmisc.c ldmisc.h lexsup.c
4260 mri.c Makefile.in: Change callers.
4261
4262 * ldmisc.c (vfinfo): Remove cleanup code.
4263 * ldmain.c (remove_output): Put it here (new function).
4264 (preserve_output): New function.
4265 (main): Register remove_output and preserve_output with atexit.
4266 * ldmain.c ldgram.y: Call xexit instead of exit.
4267 * ldmisc.h: Declare xexit.
4268
4269 Fri Feb 4 15:19:01 1994 Steve Chamberlain (sac@cygnus.com)
4270
4271 * Makefile.in: Lots of new H8/500 memory models.
4272
4273 Sun Jan 30 14:33:40 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4274
4275 * ldlex.l: Removed duplicate rules.
4276 (yywrap): Provide default definition, needed with some versions of
4277 flex.
4278
4279 Fri Jan 28 09:12:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4280
4281 * ldmisc.c (vfinfo): For `%I', if the file is in an archive, print
4282 the archive filename too.
4283
4284 * ldlex.l: Add rule to catch invalid input characters instead of
4285 printing them. Include "ldmain.h" for program_name decl.
4286 (lex_warn_invalid): New function.
4287 * Makefile.in: Add dependency.
4288
4289 Fri Jan 28 12:58:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4290
4291 * Makefile.in (check): Don't bother running any tests of
4292 cross-linker until the test suite no longer assumes native mode.
4293
4294 Thu Jan 27 17:19:54 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4295
4296 * ldlang.c (print_one_symbol, print_input_section): Print
4297 global symbols in symbol table again.
4298
4299 Thu Jan 27 12:35:01 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4300
4301 * ldmain.c ldmain.h ldgram.y: If -v -V or --version was given,
4302 exit successfully instead of complaining if no input files are
4303 given.
4304
4305 Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)
4306
4307 * Makefile.in: Format variable definitions consistently.
4308 (LD_PROG): Remove unnecessary variables from link command,
4309 change variable LOADLIBES to EXTRALIBS.
4310
4311 * ldmain.c (main): Compute and display total execution time.
4312 * ld.texinfo (-stats): Document the option.
4313
4314 Mon Jan 24 12:56:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4315
4316 * ldmain.c (reloc_overflow): Added name, reloc_name and addend
4317 arguments.
4318
4319 * ldlang.c (lookup_name): Set BFD GP size to -G argument value
4320 after opening BFD.
4321
4322 * ldlang.c (relaxing): Removed global variable.
4323 (lang_size_sections): If the canonical symbols have not already
4324 been read in, read them in before relaxing.
4325 * ldlang.h (relaxing): Removed declaration.
4326
4327 Fri Jan 21 00:44:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4328
4329 * ldlang.c (new_afile): Initialize loaded field to false.
4330 (lookup_name): If file was already loaded, don't call the
4331 add_symbols entry point again.
4332
4333 Wed Jan 19 13:57:00 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4334
4335 * ld.texinfo: Clarify what -T option does.
4336
4337 Tue Jan 18 16:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4338
4339 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that's
4340 for a.out.
4341
4342 Tue Jan 11 13:22:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4343
4344 * ldmain.c (add_archive_element): If trace_files or
4345 trace_file_tries, print file name.
4346 * ldlang.c (lookup_name): Likewise.
4347 (ldlang_add_file): Don't put files on input_bfds list in reverse
4348 order.
4349
4350 * scripttempl/elf.sc: Correct typo.
4351
4352 Mon Jan 10 19:49:05 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4353
4354 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y and
4355 their arguments optional, for compatibility with the old GNU ld.
4356
4357 Fri Jan 7 20:00:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4358
4359 * scripttempl/elf.c: Define __bss_start before the .sbss section.
4360
4361 Thu Jan 6 00:13:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4362
4363 * ldmain.c (add_to_set): Add bitsize argument.
4364 (constructor_callback): New function.
4365 (link_callbacks): Add constructor_callback.
4366 * ldctor.c (struct set_info): Add bitsize field.
4367 (ldctor_add_set_entry): Add bitsize argument.
4368 (ldctor_build_sets): Base the size of the elements of the set on
4369 the bitsize, rather than always using LONG.
4370 * ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
4371
4372 * ld.h (QUAD_SIZE): Define.
4373 * ldgram.y (QUAD): New token.
4374 (length): Handle it.
4375 * ldlex.l: Return QUAD.
4376 * lexsup.c (keywords): Add QUAD.
4377 * ldwrite.c (build_link_order): Handle QUAD.
4378 * ldlang.c (print_data_statement): Handle QUAD.
4379 (lang_size_sections): Likewise.
4380 (lang_do_assignments): Likewise.
4381 * ldexp.c (exp_print_token): Add QUAD to table.
4382 * ld.texinfo: Describe QUAD.
4383
4384 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
4385 since the Alpha doesn't use them.
4386
4387 Wed Jan 5 17:42:16 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4388
4389 * ldemul.h (ld_emulation_xfer_struct): Comment the members.
4390
4391 Sat Jan 1 13:39:31 1994 Rob Savoye (rob@darkstar.cygnus.com)
4392
4393 * Makefile.in, configure.in: Add support for VSTa micro-kernel.
4394 * config/vsta.mt, emulparams/vsta.sh: New files for VSTa.
4395
4396 Sat Jan 1 10:53:35 1994 David J. Mackenzie (djm@thepub.cygnus.com)
4397
4398 * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
4399 needed for i386mach. (Should be a no-op on other systems.)
4400
4401 * emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
4402 (PAGE_SIZE): Don't define; not used.
4403
4404 Fri Dec 31 16:12:06 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4405
4406 * ldgram.y (yyerror): Make argument const char *, and actually
4407 print it out rather than assuming it is a syntax error.
4408 * ldmisc.h: Change declaration of yyerror.
4409 * ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
4410
4411 Fri Dec 31 11:37:28 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4412
4413 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
4414 exec header offset, since the exec header isn't loaded.
4415 (PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
4416
4417 Thu Dec 30 13:01:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4418
4419 A major rewrite to move the bulk of the linker into BFD so that
4420 more efficient backend code can be written for specific object
4421 files.
4422 * lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
4423 ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
4424 * ldctor.c, ldctor.h: Complete rewrite.
4425 * ldwrite.c, ldwrite.h: Complete rewrite.
4426 * ld.h (strip_symbols_type, strip_symbols): Removed. Use
4427 link_info.strip instead. Changed all uses.
4428 (discard_locals_type, discard_locals): Removed. Use
4429 link_info.discard instead. Changed all uses.
4430 (ld_config_type): Removed relocateable_output field; use
4431 link_info.relocateable instead; changed all uses. Added stats
4432 field.
4433 (set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
4434 set_loader_symbol): Removed.
4435 * ldexp.h (node_class): Added etree_rel.
4436 (etree_type): Added rel field.
4437 * ldexp.c (exp_print_token): Bracketed table initialization.
4438 (exp_relop): New function.
4439 (fold_name): Use linker hash table rather than ldsym functions.
4440 (exp_fold_tree): Likewise. Also, handle etree_rel case.
4441 (exp_print_tree): Handle etree_rel.
4442 * ldgram.y (strip_symbols, discard_locals): Removed.
4443 (OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them.
4444 (REL): New token. Does not appear in grammar, but needed for
4445 expression code.
4446 (file): Don't call lang_final; it's called by main anyhow.
4447 * ldlex.l: Accept -stats and -no-keep-memory options.
4448 * ldlang.h (fill_type): Make unsigned int, not unsigned short.
4449 * ldlang.c: Consistently use fill_type for fill argument.
4450 (lang_init_script_file, script_file): Removed.
4451 (create_object_symbols): Removed. Use
4452 link_info.create_object_symbols_section instead. Changed all
4453 uses.
4454 (lang_add_keepsyms_file): Removed.
4455 (lookup_name): Call bfd_link_add_symbols instead of
4456 ldmain_open_file_read_symbol.
4457 (wild): Don't iterate over script_file.
4458 (open_output): Create link hash table.
4459 (lang_place_undefineds): Rewrote.
4460 (lang_size_sections): Handle relaxing (doesn't work yet).
4461 (lang_relocate_globals): Removed.
4462 (lang_finish): Use link hash table rather than ldsym functions.
4463 (lang_common): Rewrote.
4464 (lang_one_common): New function.
4465 (ldlang_add_file): Add file to link_info.input_bfds list. Set
4466 usrdata.
4467 (create_symbol): Removed.
4468 (lang_process): Don't call lang_init_script_file. Call
4469 ldctor_build_sets rather than find_constructors. Don't call
4470 lang_relocate_globals.
4471 (lang_abs_symbol_at_beginning_of): Rewrote.
4472 (lang_abs_symbol_at_end_of): Rewrote.
4473 * ldmain.c (had_y): Removed.
4474 (lprefix, lprefix_len): Removed; use link_info fields instead.
4475 Changed all uses.
4476 (multiple_def_count, commons_pending, undefined_global_sym_count,
4477 total_symbols_seen, total_files_seen): Removed.
4478 (link_callbacks, link_info): New variables.
4479 (main): Initialize link_info. Don't call init_bfd_error_vector or
4480 ldsym_init. Don't set now unused variables. Handle -stats.
4481 (get_emulation): Removed obsolete and nonfunctional GNU960 code.
4482 (add_ysym): Rewrote.
4483 (read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
4484 search_library, gnu960_check_format, decode_library_subfile,
4485 linear_library, symdef_library, clear_syms, subfile_wanted_p):
4486 Removed.
4487 (add_keepsyms_file, add_archive_element, multiple_definition,
4488 multiple_common, add_to_set, warning_callback, undefined_symbol,
4489 reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
4490 New functions.
4491 * ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't
4492 require symbols for %C; look them up instead.
4493 * emultempl/hppaosf.em: Pass link_info to
4494 hppa_look_for_stubs_in_section.
4495 * Makefile.in: Rebuilt dependencies.
4496 (CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
4497 relax.c.
4498 (HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
4499 relax.h.
4500 (EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
4501 ldlang.h and ldctor.h.
4502
4503 * Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove
4504 declarations of free and malloc from flex output. Change malloc
4505 to ldmalloc in flex output.
4506
4507 Thu Dec 16 21:19:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4508
4509 * ldmain.c (lprefix): Change default from a char to a string
4510 with only one character.
4511 (lprefix_len): Set default to one.
4512
4513 * ldmain.h (lprefix_len): Declare.
4514
4515 * ldsym.c (write_file_locals): Use strncmp rather than a character
4516 comparison for lprefix.
4517
4518 * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len
4519 correctly.
4520
4521 * emultmpl/hppaosf.em: Include ldexp.h.
4522 (before_parse): Set lprefix and lprefix_len correctly.
4523
4524 Tue Dec 14 17:19:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4525
4526 * ldlex.h: Don't declare yywrap if it is a macro.
4527 * ldlex.l: Include sysdep.h.
4528 * ldlang.c (lang_for_each_statement_worker,
4529 lang_for_each_statement): Forgot to use PARAMS.
4530
4531 Mon Dec 13 14:30:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4532
4533 * Makefile.in: Added .PHONY targets where appropriate. Added some
4534 comments. Also:
4535 (gcclibdir, version): Removed unused variables.
4536 (DEP): New variable, set to mkdep.
4537 (ALL_CFLAGS): New variable. Used in .c.o target.
4538 (CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New
4539 variables.
4540 (HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES,
4541 GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed
4542 mostly obsolete variables. Adjusted remaining uses.
4543 (DEF_EMUL): Removed variable.
4544 (ldmain.o): Handle undefined EMUL error correctly.
4545 (ldemul-list.h): Depend on config.status rather than Makefile.
4546 Create via temporary file.
4547 (ver960.c, roll, make): Removed obsolete targets.
4548 (.dep, .dep1, dep.sed, dep, dep-in): New targets. Used to rebuild
4549 dependencies.
4550 * dep-in.sed: New file, used when rebuilding dependencies.
4551
4552 Sat Dec 11 14:43:44 1993 Ian Lance Taylor (ian@deneb.cygnus.com)
4553
4554 Made many changes to eliminate gcc warnings. Made various
4555 cosmetic changes, declared various things in header files, removed
4556 various extern declarations from .c files. No substantive
4557 changes.
4558
4559 * ldlang.c (lang_process): Ifdef out final call to
4560 lang_size_sections again (reverting change of Nove 2), since it
4561 breaks the Sun4 linker.
4562
4563 Thu Dec 2 16:31:47 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4564
4565 * configure.in (alpha-*-netware*): New target; use alpha.
4566
4567 Wed Dec 1 14:04:20 1993 Ken Raeburn (raeburn@cygnus.com)
4568
4569 * configure.in: Group targets by CPU. Merge some m68k target
4570 entries with different CPU specs that use the same ld_target
4571 values.
4572
4573 * configure.in: Add sparc*-*-coff.
4574 * config/coff-sparc.mt, emulparams/coff_sparc.sh: New files.
4575 * Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o.
4576 (em_coff_sparc.c): Add dependencies and build rules.
4577
4578 * ldmisc.c (errno, sys_nerr, sys_errlist): Don't declare.
4579
4580 Wed Dec 1 12:19:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4581
4582 * ldgram.y (OPTION_call_shared, OPTION_non_shared, OPTION_Oval):
4583 New tokens.
4584 (command_line_option): Accept and ignore them (for now).
4585 * ldlex.l (<COMMAND>): Handle -non_shared, -call_shared, and -On
4586 where n is a number.
4587
4588 Mon Nov 22 14:14:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4589
4590 * ldmain.c (subfile_wanted_p): If merging a common symbol which is
4591 not in bfd_com_section, create the section in the BFD so that it
4592 can be placed in the right output section.
4593
4594 Fri Nov 19 14:12:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4595
4596 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.
4597 * emulparams/elf32mipsb.sh (DATA_ADDR): Define.
4598 (OTHER_READONLY_SECTIONS): Define for .reginfo.
4599 (EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK.
4600 * scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating.
4601 Move OTHER_READONLY_SECTIONS after all the other readonly
4602 sections. Don't use DATA_ADDR twice.
4603
4604 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. If
4605 p is in a common section, make sure the BFD has a section of that
4606 name.
4607
4608 * ldlang.c (lang_common): Add newline to error message.
4609
4610 Thu Nov 11 15:54:41 1993 Stan Shebs (shebs@rtl.cygnus.com)
4611
4612 * emulparams/m68klynx.sh (SCRIPT_NAME): Define to use a
4613 Lynx-specific script instead of m68kcoff.
4614 (OUTPUT_FORMAT): Define as "coff-m68k-lynx".
4615 (ENTRY): Define as __main.
4616 (TEXT_START_ADDR): Define as 0.
4617 (PAGE_SIZE): Define as 0x1000.
4618 * emulparams/i386lynx.sh, emulparams/sparclynx.sh: Fix comment.
4619 * scripttempl/m68klynx.sc: New file.
4620
4621 Mon Nov 8 12:00:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4622
4623 * ldmain.c (get_emulation): Ignore -mips1, -mips2 and -mips3
4624 arguments rather than treating them as emulation names.
4625
4626 Fri Nov 5 09:02:52 1993 D. V. Henkel-Wallace (gumby@blues.cygnus.com)
4627
4628 * configure.in: Support x86 unixware and netware plus generic netware.
4629
4630 Fri Nov 5 21:47:55 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4631
4632 * emulparams/i386mach.sh (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR):
4633 Correct values (?).
4634
4635 Wed Nov 3 15:10:15 1993 Ken Raeburn (raeburn@rover.cygnus.com)
4636
4637 * Makefile.in (distclean): Don't delete dvi or info files.
4638 (ld.info): Update dependency list.
4639 (ld.dvi): Ditto. Extend TEXINPUTS to get bfdsumm.texi.
4640
4641 Wed Nov 3 12:07:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4642
4643 * ldlang.c (lang_add_output): Take new arg, FROM_SCRIPT.
4644 Set output_filename instead of creating a new node.
4645 (open_output): Don't set output_filename.
4646 (lang_final): Create the new node here.
4647 * ldlang.c, ldlang.h, ldgram.y, mri.c: pass FROM_SCRIPT.
4648
4649 Tue Nov 2 15:45:51 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4650
4651 From Pete Hoogenboom (hoogen@cs.utah.edu):
4652
4653 * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,
4654 edata, _edata, end): Add definitions of these symbols.
4655 (__end): Remove definition of this symbol.
4656 (__data_start): Move definition of this symbol.
4657
4658 * emultempl/hppaosf.em: Various fixes and support for linker stub
4659 generation.
4660 (hppaosf_finish, hppaosf_search_for_padding_statements,
4661 hppaosf_create_output_section_statements): New functions in
4662 support of linker stub generation.
4663 (ld_hppaosf_emulation): Redefine to include new
4664 emulation-specific routines.
4665
4666 * ldlang.c (lang_process): Re-enable last call lang_size_sections.
4667 Pass abs_output_section rather than NULL to avoid invalidating
4668 absolute symbols.
4669
4670 Thu Oct 28 21:16:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4671
4672 * Makefile.in (ALL_EMULATIONS): Add em_i386mach.o.
4673 (em_i386mach.c): New rule.
4674 * configure.in (i[34]86-*-mach*): New case.
4675 * config/i386-mach.mt: New file.
4676 * emulparams/i386mach.sh: New file.
4677
4678 Fri Oct 29 14:55:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4679
4680 * ld.h (flag_is_*): Removed macros.
4681 * ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
4682 Consistently check the BFD symbol flags directly, rather than
4683 using file_is_* macros.
4684
4685 Thu Oct 28 19:08:42 1993 Stan Shebs (shebs@rtl.cygnus.com)
4686
4687 * configure.in (sparc*-*-lynxos*): New target.
4688 * Makefile.in: Add rule for em_sparclynx.c.
4689 (ALL_EMULATIONS): Add Lynx emulations.
4690 * config/sparc-lynx.mt: New file.
4691 * emulparams/sparclynx.sh: New file.
4692 * scripttempl/sparccoff.sc: New file.
4693
4694 Thu Oct 28 13:50:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4695
4696 * Makefile.in: Add dependency for $(EMULATION_OFILES).
4697
4698 Mon Oct 25 16:09:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4699
4700 * relax.c (write_relax): Check return value of bfd_seclet_link.
4701
4702 Mon Oct 25 09:31:21 1993 Ken Raeburn (raeburn@cygnus.com)
4703
4704 * ldlang.c (delete_output_file_on_failure): New variable.
4705 (open_output): Set it after bfd open succeeds.
4706 * ldmisc.c (vfinfo): Test it.
4707
4708 Changes from Peter Hoogenboom, hoogen@cs.utah.edu:
4709
4710 * ldsym.c (write_file_locals): Set the BSF_FILE flag for object
4711 symbols.
4712
4713 * ldemul.c: Support was added to allow emulation-specific
4714 processing to occur. This support was added primarily for linker
4715 stub generation in the elf32-hppa gld.
4716 (ldemul_finish, ldemul_create_output_section_statements): New
4717 functions.
4718 * ldemul.h: Support was added to allow emulation-specific
4719 processing to occur. (As described above.) Added finish and
4720 create_output_section_statements fields to
4721 ld_emulation_xfer_struct structure.
4722 * ldlang.c: Add calls to emulation-specific routines.
4723 (lang_process): Add call to
4724 ldemul_create_output_section_statements function.
4725 (lang_process): Add call to a emulation-specific routine (and
4726 some processing after the call).
4727
4728 Fri Oct 22 20:54:13 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4729
4730 * configure.in: mips*- instead of mips-, mips*el changes
4731
4732 Tue Oct 19 15:46:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4733
4734 * configure.in (alpha-*-osf*): New target; use alpha.mt.
4735 * Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
4736 (em_alpha.c): New target; use alpha.sh and alpha.sc.
4737 * config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
4738 * config/alpha.mt: New file.
4739 * emulparams/alpha.sh: New file.
4740 * scripttempl/alpha.sc: New file.
4741
4742 Fri Oct 15 02:20:04 1993 Doug Evans (dje@canuck.cygnus.com)
4743
4744 * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
4745 types of different sizes (eg: 64 and 32 bits), so coerce.
4746 * ld.h (ALIGN_N): Add warning about usage.
4747
4748 Wed Oct 13 16:02:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4749
4750 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
4751 which we already have a definition, rather than checking in
4752 several different places whether the symbol is weak.
4753
4754 Tue Oct 12 17:30:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4755
4756 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
4757 * scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
4758 OTHER_READWRITE_SECTIONS if relocating. Shell variables are not
4759 expanded within them.
4760 * config/mipsb-elf32.mt: New file.
4761 * emulparams/elf32mipb.sh: New file.
4762 * Makefile.in (em_elf32mipb.c): New target.
4763
4764 Thu Sep 30 17:00:36 1993 Rob Savoye (rob@darkstar.cygnus.com)
4765
4766 * ldgram.y: In input_list, change lang_input_file_is_file_enum to
4767 lang_input_file_is_search_file_enum so objects brought in using
4768 INPUT() do a path lookup.
4769
4770 Tue Sep 28 13:31:23 1993 Stan Shebs (shebs@rtl.cygnus.com)
4771
4772 * configure.in: Change Lynx ld_target to be {i386,m68k}-lynx
4773 instead of {i386,m68k}-coff.
4774 * Makefile.in (em_i386lynx.c, em_m68klynx.c): New targets.
4775 * config/i386-lynx.mt: New file.
4776 * config/m68k-lynx.mt: New file.
4777 * emulparams/i386lynx.sh: New file.
4778 * emulparams/m68klynx.sh: New file.
4779
4780 * scripttempl/i386coff.sc: Make ENTRY get its value from ${ENTRY},
4781 but defaulting to _start.
4782
4783 * ldemul.c, ldfile.c, ldlang.c, ldmain.c, ldmisc.c, ldmisc.h,
4784 ldsym.c, ldwarn.c: Rename info to info_msg, to avoid conflict with
4785 LynxOS libc.
4786
4787 Thu Sep 23 14:51:03 1993 Ian Lance Taylor (ian@cygnus.com)
4788
4789 * config/solaris2.mh: New file. Define HOSTING_CRT0 and
4790 HOSTING_LIBS for testing.
4791
4792 Fri Sep 17 17:52:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4793
4794 Finish up support for i386-sysv4 (without shared libraries):
4795 * ld.h (flag_is_weak): Define.
4796 * ldlang.c (print_symbol): Mention whether symbol is weak.
4797 (print_input_section): Print weak symbols as globals.
4798 * ldmain.c (refize): Do not zero out BSF_WEAK flag.
4799 (enter_global_ref): Do not warn if a weak symbol redefines a
4800 global symbol. Do not let a weak symbol redefine a common symbol.
4801 (enter_file_symbols): Treat weak symbols as global symbols.
4802 (subfile_wanted_p): Do not pull in an object file from a archive
4803 just to resolve an undefined weak symbol.
4804 * ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
4805 error; the error might be that malloc has run out of space.
4806 * ldsym.c (write_file_locals): Treat weak symbols as global.
4807 * configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
4808 use i386-elf.
4809 * config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
4810 * config/i386-elf.mt: New file; set EMUL to elf_i386.
4811 * emulparams/elf_i386.sh: New file.
4812 * scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
4813 * Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
4814 (ALL_EMULATIONS): Add em_elf_i386.o.
4815 (GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
4816 (em_elf_i386.c): New target, like other em_*.c targets.
4817 ($(LD_PROG)): Pass $(CFLAGS) to $(CC).
4818 * genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument. If
4819 nonempty, and configured for native, add it to LIB_PATH.
4820
4821 Fri Sep 17 13:07:39 1993 Stan Shebs (shebs@rtl.cygnus.com)
4822
4823 * scripttempl/{h8300.sc,h8500.sc,i386coff.sc,m68kcoff.sc,sh.sc}:
4824 Added statements to pass stab and stabstr sections through and
4825 mark them as NOLOAD, which makes GDB happier.
4826
4827 Wed Sep 15 16:02:29 1993 Stan Shebs (shebs@rtl.cygnus.com)
4828
4829 * configure.in: Accept m68k-lynx-lynxos config.
4830
4831 * Makefile.in: Use $(SHELL) to run genscripts.sh.
4832
4833 Sun Sep 12 16:04:40 1993 Doug Evans (dje@cygnus.com)
4834
4835 * config/coff-h8300.mt: Add EMUL=h8300h.
4836
4837 * ldmain.c (main): Call set_scripts_dir after argv has been processed.
4838
4839 Fri Sep 10 09:36:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
4840
4841 * Makefile.in: Changed CXX back to g++.
4842
4843 Fri Sep 10 09:34:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
4844
4845 * Makefile.in: Fixed RUNTEST* CXX CXXFLAGS macros and check rule.
4846
4847 Fri Sep 10 07:26:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4848
4849 * Makefile.in (TAGS): Use shell wildcards.
4850
4851 Tue Sep 7 18:04:54 1993 Jeffrey Osier (jeffrey@cygnus.com)
4852
4853 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target
4854
4855 Fri Sep 3 16:46:41 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
4856
4857 * ld.texinfo: re-enable included config file; conditionalize doc
4858 for -oformat to interact properly with SingleFormat doc config
4859 var; rename @up/@down to @raisesections/@lowersections.
4860
4861 Wed Aug 25 16:29:56 1993 K. Richard Pixley (rich@sendai.cygnus.com)
4862
4863 * configure.in: recognize m88110.
4864
4865 Tue Aug 24 18:49:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4866
4867 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
4868 * emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
4869 ELF emulation is "elf32-hppa" not "elf-big".
4870 (hppaosf_before_parse): Remove unneeded processing of environment
4871 variables.
4872 * scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
4873 .text segment of output file.
4874 * emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
4875
4876 Tue Aug 24 16:17:00 1993 K. Richard Pixley (rich@sendai.cygnus.com)
4877
4878 * ld.h: define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no
4879 longer in bfd.h.
4880
4881 * ldlang.c, ld.h: updated copyright.
4882
4883 Tue Aug 17 15:22:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4884
4885 * ldlang.c (open_output, lang_check): Check return value of
4886 bfd_set_arch_mach.
4887
4888 Tue Aug 17 07:02:19 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
4889
4890 * scripttempl/h8500.sc: Start all sections in a different segment.
4891 * scripttempl/z8ksim.sc: Handle constructors
4892
4893 Thu Aug 12 16:05:37 1993 Jeffrey Wheat (cassidy@cygnus.com)
4894
4895 * Makefile.in: revert earlier changes back to execute runtest
4896 with make check. cdtest and bootstrap now function as they
4897 did within the Makefile.
4898
4899 Thu Aug 12 10:20:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4900
4901 * Makefile.in: Update dependencies.
4902
4903 * configure.in: Set EMULATION_OFILES in Makefile based on
4904 --with-targets option.
4905
4906 Thu Aug 12 08:52:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
4907
4908 * Makefile.in: check targets reimplemented to old way.
4909
4910 Wed Aug 11 08:26:11 1993 Ian Lance Taylor (ian@cygnus.com)
4911
4912 * config/i386v.mh, config/irix4.mh: Use gcc
4913 -print-libgcc-file-name rather than $(libdir)/libgcc.a.
4914 * config/i386sco.mh: New file; copy of i386v.mh to correspond to
4915 bfd/configure.host change.
4916
4917 Mon Aug 9 14:25:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4918
4919 * scripttempl/elf.sc: Handle .line and .debug* sections.
4920
4921 * ldlex.l: Use bfd_scan_vma, not strtoul.
4922
4923 Fri Aug 6 08:57:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4924
4925 * ldexp.c, ldfile.c, ldlang.c, lexsup.c, ldmain.c, ldemul.c:
4926 Remove inital caps in some error messages, change "can't" to
4927 "cannot", add missing colons.
4928 * ldmisc.c (vfinfo): Print "%%" as a single %.
4929 For '%' followed by unrecognized character, print them both
4930 verbatim instead of expecting a char * arg.
4931 For '%C', don't put the function name in parens.
4932
4933 * ldexp.c (invalid): Pass "%%", not "% ".
4934
4935 Fri Aug 6 14:31:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4936
4937 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
4938 (BSS_VAR): Removed; now always define _fbss.
4939 * emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
4940 Removed.
4941
4942 Thu Aug 5 15:55:19 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4943
4944 * configure.in: z8k-coff is the same as z8k-sim
4945
4946 Wed Aug 4 21:00:18 1993 Jeffrey Wheat (cassidy@cygnus.com)
4947
4948 * testsuite/lib/ld.exp: new file
4949 * testsuite/config/unix-ld.exp: new file
4950 * testsuite/ld.bootstrap/bootstrap.exp: new file
4951 * Makefile.in: add dejagnu support for make check
4952
4953 Wed Aug 4 17:52:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4954
4955 * ldlex.l (comment): Add missing newline in message.
4956 * ldindr.c (add_indirect): Ditto.
4957 * ldexp.c (exp_fold_tree): Ditto.
4958
4959 Tue Aug 3 10:57:41 1993 David J. Mackenzie (djm@thepub.cygnus.com)
4960
4961 * ldgram.y, ldlex.l, mri.c, ldwrite.c: Change multiple commons
4962 into externs.
4963
4964 * ldmisc.c (multiple_warn): New function.
4965 * ldmisc.h: Declare it.
4966 * ldmain.c (enter_global_ref): Call it.
4967 * ld.h (ld_config_type): Add warn_common.
4968 * ldlex.l, ldgram.y: Set it with -warn-common option.
4969 * ldver.c (help): Document it.
4970
4971 Mon Aug 2 12:04:36 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4972
4973 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
4974 target-specific sections, and for changing data section vma.
4975
4976 Mon Jul 26 14:00:02 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
4977
4978 * ldgram.y (OPTION_Qy, OPTION_Y, OPTION_dn, OPTION_YP): New
4979 terminals, for Solaris.
4980 (dirlist_ptr): New static variable.
4981 (command_line_option): Accept new options.
4982
4983 * ldlex.l: Accept command-line options "-Qy", "-dn", "-Y", and
4984 "-YP,...".
4985
4986 * config/sun4sol2.mt: Pass emulation name without ".sh".
4987
4988 * emulparams/elf32_sparc.c: Renamed from elf32-sparc.c.
4989 * config/sun4sol2.mt (em_elf32_sparc.c): Adjusted accordingly.
4990
4991 Fri Jul 23 13:51:09 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4992
4993 * scripttempl/elf.sc: Add support for .init, .fini, .ctors,
4994 .dtors, .data1, .rodata1 sections, instead of combining them into
4995 other sections. For `-r', set all section start addresses to
4996 zero.
4997
4998 * emulparams/elf32-sparc.sh (TEXT_START_ADDR,
4999 NONPAGED_TEXT_START_ADDR): Value should be 0x10100.
5000 (MAXPAGESIZE): Renamed from PAGE_SIZE.
5001
5002 Wed Jul 21 14:28:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5003
5004 * genscripts.sh: If this is the default emulation, set
5005 COMPILE_IN.
5006 * emultempl/*.em: Use it to determine whether to compile in the
5007 scripts.
5008
5009 * Makefile.in (GENSCRIPTS): Pass the default emulation name to
5010 genscripts.sh. Pass the current emulation name without ".sh" on
5011 the end.
5012 * genscripts.sh: Take an default emulation arg.
5013 Use the current emulation name as EMULATION_NAME.
5014 Make default lib path for cross-compiling ':', not null.
5015 * emulparams/*.sh: Don't set EMULATION_NAME.
5016 * ldemul.c (ldemul_get_script): Take isfile arg.
5017 Pass it to emulation's get_script function.
5018 * ldemul.h: Adjust get_script prototypes.
5019 * ldfile.c (ldfile_find_command_file): Renamed from find_a_name.
5020 No longer static.
5021 * ldfile.h: Declare it.
5022 * ldgram.y: Accept a script on the command line again,
5023 for parsing compiled-in scripts.
5024 * ldmain.c (main): If ld script is a file, parse it as a -T
5025 option, otherwise parse it directly.
5026 * emultempl/*.em (*get_script): Return the scripts themselves if
5027 this is the default emulation; otherwise return their file names.
5028 * emultempl/m88kbcs.em: New file, to take m88kbcs #ifdef out of
5029 generic.em.
5030 * emulparams/m88kbcs.sh: Use it.
5031
5032 * ld.h (ld_config_type::unix_relocate): Remove unused element.
5033
5034 Tue Jul 20 12:01:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5035
5036 * Makefile.in (ALL_EMULATIONS): Delete em_i386linux.o (for which
5037 there's no change log entry yet, tsk tsk) from the list of
5038 emulations compiled in until Mark gets around to checking in
5039 emulparams/i386linux.sh.
5040 (ldemul-list.h): Depend on Makefile, so if EMULATION_OFILES is
5041 changed, this file gets updated.
5042
5043 Fri Jul 16 14:14:32 1993 Ian Lance Taylor (ian@cygnus.com)
5044
5045 * ldgram.y (OPTION_Lfile): New token.
5046 (command_line_option): Accept OPTION_L NAME (whitespace after -L).
5047 * ldlex.l (<COMMAND>): Accept -L without FILENAME.
5048
5049 Fri Jul 16 13:44:26 1993 Doug Evans (dje@canuck.cygnus.com)
5050
5051 * configure.in: h8/300h support needs own .mt file.
5052 config/coff-h8300h.mt: New file.
5053
5054 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5055
5056 * ldmain.c: Don't include sys/stat.h; it already got included
5057 somewhere along the way.
5058
5059 Thu Jul 15 14:43:34 1993 Doug Evans (dje@canuck.cygnus.com)
5060
5061 * Makefile.in: Add h8300h support.
5062 emulparams/h8300h.sh: New file.
5063 scripttempl/h8300h.sc: New file.
5064
5065 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5066
5067 * ldfile.c (ldfile_open_file): In error message, use the name the
5068 user gave (e.g., "-lc"), rather than the base file name.
5069
5070 * ldexp.c (exp_fold_tree): Don't assign an int to an enum.
5071
5072 * ldmain.[ch]: Remove initial Q_ from function names.
5073 * ldexp.c, ldindr.c, ldlang.c: Change callers.
5074
5075 * ldfile.c, ldmain.c, ldgram.y: Rename option_v to trace_file_tries.
5076
5077 * ldlang.c (lang_process): Move loading of default script from
5078 here to main. Add a "/" to start of script name to prevent
5079 finding it in "." first.
5080
5081 * ldmain.c (set_scripts_dir): Don't look in "." first.
5082
5083 * ldgram.y, ldlang.c, ldsym.c: Remove traces of unused var
5084 option_longmap.
5085
5086 Thu Jul 15 10:55:59 1993 Ian Lance Taylor (ian@cygnus.com)
5087
5088 * Makefile.in (em_m88kbcs.c): Correct dependency.
5089 * scripttempl/m88kbcs.sc: It's ARCH, not arch. Removed TARGET
5090 statement. Changed OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
5091 * emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
5092
5093 Wed Jul 14 21:42:53 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5094
5095 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
5096 main.c (main): Print the errno string in the error message.
5097
5098 Tue Jul 13 20:00:30 1993 Doug Evans (dje@canuck.cygnus.com)
5099
5100 * configure.in: Accept h8300h for target cpu.
5101
5102 * ldmisc.c (vfinfo): Have demangle remove leading underscore if
5103 present (demangle is smart enough to know whether to do it or not).
5104
5105 Mon Jul 12 11:45:48 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5106
5107 * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
5108 ldscripts, as well as <ld bin dir> and SCRIPTDIR.
5109
5110 * ldlang.c (lang_process): Use sizeof instead of magic constant.
5111
5112 * ldmain.c (get_emulation, check_for_scripts_dir,
5113 set_scripts_dir): New functions.
5114 (main): Call them.
5115
5116 Mon Jul 12 10:57:03 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
5117
5118 * scripttempl/elf.sc: Include .init, .fini, .rodata sections.
5119 Create symbol "end" instead of "__end". Comment out some parts
5120 that may not be needed (yet) for elf.
5121
5122 * configure.in: Accept sparc-elf and sparc-solaris2 configs.
5123
5124 Thu Jul 8 15:33:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5125
5126 * Makefile.in (ALL_EMULATIONS): Include $(OTHER_EMULATIONS).
5127
5128 * ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro
5129 when no prototype is being supplied.
5130 (ldmalloc, ldrealloc): Size argument is now size_t.
5131
5132 * ldmisc.c (finfo): New function, accepts FILE* argument.
5133 (vfinfo, case 'v'): New format character; displays bfd_vma in hex
5134 without leading zeros.
5135 (vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a
5136 bfd_vma value, instead of fprintf(%x) which won't hold a long long
5137 value.
5138 (concat, buystring): String lengths are size_t.
5139 (ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
5140
5141 * ldlang.c (new_statement): Size argument is now size_t. Added
5142 forward declaration with prototype.
5143
5144 Thu Jul 8 10:53:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5145
5146 * ldgram.y (OPTION_v): Don't turn on verbose output.
5147
5148 Wed Jul 7 17:10:45 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5149
5150 * ldlex.l: Get rid of local typedef for bfd_vma! Get it from
5151 bfd.h instead.
5152
5153 Wed Jul 7 11:33:12 1993 Ian Lance Taylor (ian@cygnus.com)
5154
5155 * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
5156 collect2 doesn't look for gld any more anyhow.
5157
5158 Mon Jul 5 14:29:48 1993 Ian Lance Taylor (ian@cygnus.com)
5159
5160 * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
5161 now have a non NULL srefs_chain.
5162
5163 * config/hp300hpux.mt: Use emulation hp3hpux rather than
5164 hp300hpux, since the latter does not exist.
5165
5166 Fri Jul 2 18:06:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5167
5168 * genscripts.sh: Put the scripts in the ldscripts directory, not
5169 emulations.
5170 * configure.in (ldscripts): Make, instead of emulations.
5171 * Makefile.in (scriptdir): Take off the "ld" part.
5172 (install, clean, distclean): Use ldscripts, not emulations.
5173 In tests, don't pass -Lemulations.
5174 Don't pass tooldir/lib to genscripts.sh.
5175 * genscripts.sh: Don't take tooldir/lib arg.
5176 * ldlang.c (lang_process): Add "ldscripts/" to the name of the
5177 default script file.
5178
5179 Fri Jul 2 17:13:35 1993 Doug Evans (dje@canuck.cygnus.com)
5180
5181 * scripttempl/h8300.sc: Add .tors section for constructor/destructors.
5182
5183 Thu Jul 1 16:38:45 1993 Doug Evans (dje@canuck.cygnus.com)
5184
5185 * config/coff-h8300.mt: EMUL=h8300hms -> h8300.
5186
5187 Wed Jun 30 15:45:55 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5188
5189 * Makefile.in (.y.c): skip default .y.c rules. gnu make can now
5190 run in parallel without colliding on yacc's static file names.
5191 Without the stub rule, make will try to start two yacc's
5192 concurrently which fails because of yacc's static file names.
5193
5194 Tue Jun 29 12:20:36 1993 Ian Lance Taylor (ian@cygnus.com)
5195
5196 * ldmain.c (subfile_wanted_p): Don't dump core if there are no
5197 symbols.
5198
5199 Mon Jun 28 12:22:11 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5200
5201 * genscripts.sh (LIB_PATH): Only add /usr/local/lib if it's
5202 different from libdir.
5203
5204 * Makefile.in (scriptdir): Base on tooldir, not datadir.
5205
5206 Sat Jun 26 12:03:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5207
5208 * ldver.c (help): New function.
5209 * ldver.h: Declare it.
5210 * ldlex.l, ldgram.y: Recognize new options --help and --version.
5211
5212 Mon Jun 21 20:39:48 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
5213
5214 * Makefile.in (INCLUDES): Don't need ../include any more.
5215
5216 Mon Jun 21 16:38:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5217
5218 * ldlex.l, ldgram.y: Support new -oformat option.
5219 Remove attempt at supporting script fragments on the command line.
5220 * ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
5221 * mri.c (mri_format), ldgram.y: Change callers.
5222 * ldlang.h: Change prototype.
5223
5224 Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
5225
5226 * Makefile.in: canonicalize install.sh; for use within
5227 this directory (and subdirs)
5228
5229 Thu Jun 17 14:33:09 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5230
5231 * ldgram.y: Tweak grammar to make reporting of invalid options work.
5232
5233 * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
5234 and .cc.o rule.
5235
5236 Wed Jun 16 11:45:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5237
5238 * ldfile.c (ldfile_open_command): Don't try .ld extension.
5239 It wasn't documented (or likely used) and wastes time.
5240 (try_open): If EXTEN is empty, don't try it.
5241
5242 * ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
5243 ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
5244 ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
5245 with normal function declarations.
5246
5247 * Move *.em to emultempl/*.em. Move *.sh to emulparams/*.sh.
5248 Move *.sc-sh to scripttempl/*.sc.
5249 * {emultempl,emulparams,scripttempl}/README: New files.
5250 * sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
5251 removed, replaced with generic.em.
5252 * h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
5253 h8[35]00hms.s[ch]. Change their contents to omit the "hms".
5254
5255 * *.em (*_get_script): Return script name instead of script contents.
5256 * ldlang.c (lang_process): Change caller.
5257
5258 * ldlex.l, ldgram.y: Recognize -m option.
5259 Check for input files after *all* options in grammar.
5260 * ldmain.c (main): Check for -m options. Add default directory
5261 for -m.
5262
5263 * mkscript.c: File removed.
5264 * genscripts.sh: Take two more parameters, tooldirlib and libdir,
5265 to add to the default LIB_PATH.
5266 Look for input files in the new subdirectories.
5267 Create the scripts in emulations subdirectory and don't filter
5268 them through mkscript.
5269 * configure.in: Make the emulations subdirectory.
5270
5271 * Makefile.in: Account for all of the above changes.
5272 Remove unused .SUFFIXES. Get libgcc.a path with gcc
5273 -print-libgcc-file-name instead of $(libdir)/libgcc.a.
5274 Put CFLAGS last in the compilation rules.
5275 Add -I../bfd to INCLUDES so sysdep.h is found.
5276
5277 Tue Jun 15 23:04:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5278
5279 * Makefile.in (INCLUDES): Look in ../include, not ../bfd.
5280
5281 * aout.sc-sh: Add SHLIB_PATH like STACKZERO. Make STACKZERO
5282 dependent on RELOCATING, not RELOCATION.
5283 * hp3hpux.sh (SHLIB_PATH): Define it.
5284
5285 Mon Jun 14 19:06:15 1993 David J. Mackenzie (djm@thepub.cygnus.com)
5286
5287 * ldfile.c (try_open): If opening without the extension fails,
5288 try with the extension even if -v or -V was given.
5289 had_script is imported (from ldgram.y), not exported.
5290
5291 Mon Jun 14 16:26:10 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
5292
5293 * Makefile.in: remove parentdir support, use INSTALL_XFORM
5294
5295 Thu Jun 10 14:00:06 1993 Ian Lance Taylor (ian@cygnus.com)
5296
5297 * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
5298 * ldgram.y (statement_list_opt): New nonterminal, either empty or
5299 statement_list.
5300 (section): Use statement_list_opt, not statement_list.
5301 * m68kcoff.sc-sh: Gather constructors and destructors and define
5302 __CTOR_LIST__ and __DTOR_LIST__ appropriately.
5303 * sa29200.sc-sh: Gather constructors and destructors and define
5304 ___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
5305
5306 Mon Jun 7 12:53:28 1993 Per Bothner (bothner@rtl.cygnus.com)
5307
5308 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
5309 * configure.in: No longer need to configure to get sysdep.h.
5310
5311 Fri Jun 4 16:18:24 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5312
5313 * Makefile.in: remove install:all and install-info:info
5314 dependencies (these cause some spurious rebuilds at 'make install'
5315 time)
5316
5317 Fri Jun 4 08:50:14 1993 Ian Lance Taylor (ian@cygnus.com)
5318
5319 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
5320 (mips-idt-ecoff*): Added trailing '*'.
5321 * config/mips-idtl.mt: New file; use EMUL of mipsidtl.
5322 * mipsidtl.sh: New file; like mipsidt.sh, but little endian.
5323 * Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
5324
5325 * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
5326 incorrect definitions.
5327
5328 Tue Jun 1 14:56:10 1993 Per Bothner (bothner@rtl.cygnus.com)
5329
5330 * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR
5331 symbols, unless stripping.
5332
5333 Tue May 25 15:34:25 1993 Ian Lance Taylor (ian@cygnus.com)
5334
5335 * Makefile.in: configure looks for ####, so remove lines with many
5336 '#' characters.
5337 * config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
5338 and HOSTING_LIBS correctly so that ``make check'' will work.
5339
5340 Thu May 20 13:56:16 1993 Per Bothner (bothner@deneb.cygnus.com)
5341
5342 * mips.sc-sh: Define _etext, _edata, and _end, in addition
5343 to etext, edata, and end. Needed for IRIX 4.0.5F.
5344 Patch from mwp@iconix.oz.au (Michael Paddon).
5345
5346 * Version 2.2.1 released.
5347
5348 Thu May 20 11:42:06 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5349
5350 * mipsbsd.sc-sh: Renamed from aout-mipsbsd.sc-sh.
5351 * mipsbsd.sh (EMULATION_NAME): Use new file name.
5352
5353 Tue May 18 17:10:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5354
5355 * Makefile.in (LDDISTSTUFF): Remove ld.mm since we can't build it
5356 properly right now.
5357
5358 * Version 2.2 released.
5359
5360 Mon May 17 15:37:28 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
5361
5362 * ldver.c (ldversion): Bump version number to 2.2.
5363
5364 Mon May 17 12:44:31 1993 Per Bothner (bothner@cygnus.com)
5365
5366 * NEWS: New file.
5367
5368 Fri May 14 11:26:24 1993 Ian Lance Taylor (ian@cygnus.com)
5369
5370 * mips.sc-sh: Don't define BSS_VAR unless relocating.
5371
5372 Wed May 12 13:33:29 1993 Ian Lance Taylor (ian@cygnus.com)
5373
5374 * Makefile.in (mkscript.o, mkscript): Build mkscript via
5375 mkscript.o, rather than directly from mkscript.c.
5376
5377 Tue May 4 21:58:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5378
5379 * configure.in: Look for ${target_makefile_frag} relative to
5380 ${srcdir}, not relative to build directory.
5381
5382 * hppaosf.em, hppaosf.sc-sh, hppaosf.sh: New files.
5383 * configure.in: Recognize hppa*-hp-osf.
5384 * Makefile.in (ALL_EMULATIONS): Include hppaosf emulation.
5385 (em_hppaosf.c): Build it.
5386 * config/hppaosf.mh, hppaosf.mt: New files.
5387
5388 * ld.h (ALIGN_N): Renamed from ALIGN, because that conflicted with
5389 some system header files. All uses changed.
5390
5391 * configure.in: Recognize i386-aix configurations as i386-coff
5392 targets.
5393
5394 * configure.in: Recognize m68*-*-hpux.
5395 * aout.sc-sh: If STACKZERO and RELOCATING are both defined, output
5396 the value of STACKZERO.
5397 * Makefile.in (ALL_EMULATIONS): Include hp300-hpux emulation.
5398 (em_hp3hpux.c): Build it.
5399 * hp3hpux.sh, config/hp300hpux.mt: New files.
5400
5401 Tue May 4 12:37:35 1993 Ian Lance Taylor (ian@cygnus.com)
5402
5403 * mips.sc-sh: Put constructors in the .data section.
5404 * Makefile.in (cdtest): Added dependency on ld.new.
5405
5406 Mon May 3 19:43:39 1993 Per Bothner (bothner@cygnus.com)
5407
5408 * Makefile.in: Change definition of $(tooldir) to match FSF.
5409 * vax.sh, config/vax.mt, configure.in, Makefile.in:
5410 Support VAX Ultrix and BSD.
5411
5412 Mon Apr 26 18:35:47 1993 Steve Chamberlain (sac@thepub.cygnus.com)
5413
5414 * sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH.
5415
5416 Wed Apr 14 21:01:51 1993 John Gilmore (gnu@cygnus.com)
5417
5418 * ldlang.h (struct memory_region): Change `length' and
5419 `old_length' fields to bfd_size_type. Eliminate use of bfd_offset.
5420 * ldlang.c, mri.c: Corresponding changes, plus lint.
5421
5422 Thu Apr 8 22:08:18 1993 Ian Lance Taylor (ian@cygnus.com)
5423
5424 * configure.in: For all i386 targets, accept i486 as well.
5425
5426 Mon Apr 5 17:33:39 1993 Ian Lance Taylor (ian@cygnus.com)
5427
5428 * ldlang.c (wild_doit): Preserve all flags for a
5429 SEC_SHARED_LIBRARY section.
5430 (size_input_section): Consider any SEC_HAS_CONTENTS section when
5431 computing largest_section.
5432
5433 Fri Apr 2 14:33:52 1993 Ian Lance Taylor (ian@cygnus.com)
5434
5435 * ldlang.c (lang_output_section_statement_lookup): Initialize all
5436 fields of newly created structure.
5437
5438 Wed Mar 31 18:19:15 1993 Ian Lance Taylor (ian@cygnus.com)
5439
5440 * ldmain.c (g_switch_value): New variable.
5441 * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
5442 (command_line_option): Accept -G and set g_switch_value.
5443 * ldlex.l (COMMAND): Accept -G.
5444 * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
5445
5446 Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
5447
5448 Support for linking and loading at different places:
5449
5450 * ldlex.l: Add "AT" keyword.
5451 * ldgram.y: Cleanup, and parse AT.
5452 * ldlang.c (print_output_section_statement): Print output address
5453 of section in map. (lang_size_sections): Fill sections' lma with
5454 load address.
5455 * ldlang.h (lang_output_section_statement_type): Add load_base
5456 information.
5457
5458 * ldindr.c (add_indirect): Keep more information in the alias
5459 symbol chain.
5460 * ldlang.c (wild_doit): Don't inherit NEVER_LOAD section
5461 attribute from an input section.
5462 * ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
5463 default. (Q_enter_file_symbos): Indirect symbols now are known by
5464 their section, not a special symbol flag.
5465 * ldsym.c (write_file_locals): Indirect symbols aren't local.
5466 (write_file_globals): Write the mapping for an indirect symbol.
5467 * relax.c (build_it): When forced to write a NEVER_LOAD section,
5468 fill it with zeros.
5469
5470 Tue Mar 23 13:24:10 1993 Jeffrey Osier (jeffrey@fowanton.cygnus.com)
5471
5472 * ld.texinfo: changes for q1
5473
5474 Tue Mar 23 00:13:29 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5475
5476 * Makefile.in: add dvi target, define & use TEXI2DVI, add installcheck
5477
5478 Mon Mar 8 20:30:35 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5479
5480 * Makefile.in: rename HOST_CC to CC_FOR_BUILD
5481
5482 Thu Mar 4 12:44:33 1993 Ian Lance Taylor (ian@cygnus.com)
5483
5484 * mips.sc-sh: Added variables which may be overridden by a
5485 specific emulation.
5486 * mipsidt.sh: New file; emulation for IDT MIPS board.
5487 * Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
5488 (em_mipsidt.c): New target. Uses mipsidt.sh and mips.sc-sh.
5489 * config/mips-idt.mt: New file; sets EMUL to mipsidt.
5490 * configure.in (mips-idt-ecoff): New target; uses mips-idt.
5491
5492 Sat Feb 27 00:00:14 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5493
5494 * aout-mipsbsd.sc-sh, mipsbsd.sh: New files from Ralph Campbell,
5495 ralphc@pyramid.com.
5496 * i386bsd.sh, config/i386bsd.mt: New files.
5497 * configure.in, Makefile.in: Added support for mipsbsd and 386bsd.
5498
5499 Thu Feb 25 15:33:10 1993 Per Bothner (bothner@rtl.cygnus.com)
5500
5501 * mri.c: Add extern declaration of strdup.
5502 * ldsym.c (KEEP macro): Add spaces around '=' for the
5503 sake of old (e.g. PCC) compilers.
5504
5505 Wed Feb 24 19:49:31 1993 Per Bothner (bothner@rtl.cygnus.com)
5506
5507 * ldver.c: Bump to version 2.1.
5508
5509 Fri Feb 12 08:09:11 1993 Steve Chamberlain (sac@thepub.cygnus.com)
5510
5511 * ldgram.y: allow section types without address expressions.
5512 * ldlang.c (lang_relocate_globals): avoid possible hang with
5513 undefined but unreferenced symbols.
5514 * relax.c (relax_section): don't complain if the script file isn't
5515 relaxable but -relax is set
5516
5517 Thu Feb 18 17:58:45 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5518
5519 * configure.in: go32 is the 3rd part of the triple, not the 2nd
5520
5521 Wed Feb 3 09:05:56 1993 Ian Lance Taylor (ian@cygnus.com)
5522
5523 * mipsbig.sh: New file. Big endian MIPS emulation.
5524 * config/mips-big.mt: New file. Use mipsbig emulation.
5525 * configure.in (mips-sgi-irix*): Use target mips-big.
5526 * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
5527 (em_mipsbig.c): New target. Uses mipsbig.sh.
5528
5529 Tue Feb 2 11:32:27 1993 Ian Lance Taylor (ian@cygnus.com)
5530
5531 * mips.sc-sh: Put .scommon sections into .sbss section.
5532
5533 * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
5534 rather than always putting them in bfd_com_section.
5535 * ldlang.c (lang_common): If a common symbol is not in
5536 bfd_com_section, put in a section of the same name, rather than
5537 always putting it in section COMMON.
5538
5539 Fri Jan 29 09:57:58 1993 Ian Lance Taylor (ian@cygnus.com)
5540
5541 * ldmain.c (subfile_wanted_p): If we already have a common
5542 definition of a symbol, don't necessarily pull in an object file
5543 that provides a non-common definition.
5544
5545 * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
5546 returning OPTION_EB and OPTION_EL. gcc passes these to a MIPS
5547 linker.
5548 * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
5549 (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
5550
5551 Thu Jan 28 15:12:04 1993 Ian Lance Taylor (ian@cygnus.com)
5552
5553 * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
5554 the link to it.
5555
5556 Tue Jan 26 11:49:50 1993 Ian Lance Taylor (ian@cygnus.com)
5557
5558 * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
5559 checking for equality to bfd_com_section.
5560
5561 Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com)
5562
5563 * mips.sc-sh: New file. Ultrix, and hopefully other MIPS ECOFF
5564 targets, linker script.
5565 * mipslit.sh: New file. Little endian MIPS emulation.
5566 * config/mips-lit.mt: New file. Use mipslit emulation.
5567 * configure.in (mips-dec-ultrix*): Use target mips-lit.
5568 * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
5569 (em_mipslit.c): New target. Uses mipslit.sh.
5570
5571 Thu Jan 14 15:30:27 1993 Ian Lance Taylor (ian@cygnus.com)
5572
5573 * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
5574 $(tooldir)/bin/gld, so that gcc can find it with or without
5575 collect2.
5576
5577 Mon Jan 11 18:50:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5578
5579 * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
5580 write_norel. All linking is now done via write_relax. Call
5581 ldsym_write before calling write_relax.
5582 * relax.c: Added copyright.
5583 (write_relax): Renamed from write_relaxnorel. Added relocateable
5584 argument. seclet_dump renamed to bfd_seclet_link.
5585 * relax.h: Added copyright.
5586
5587 Mon Jan 11 15:41:56 1993 Steve Chamberlain (sac@thepub.cygnus.com)
5588
5589 * ldmain.c (decode_library_subfile): Patch from
5590 hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
5591
5592 Fri Jan 8 18:04:33 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5593
5594 * config/vxworks960.mt renamed to config/i960.mt
5595
5596 * configure.in: sparc-aout emulates a sun4, as does
5597 sparc*-vxworks, i960-nindy uses gld960 emulation
5598
5599 Fri Jan 8 14:39:07 1993 Steve Chamberlain (sac@thepub.cygnus.com)
5600
5601 Fix support for NOLOAD, add INCLUDE
5602 * ldfile.c (ldfile_open_command_file): pass file name to
5603 lex_push_file.
5604 * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD
5605 * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
5606 attribute.
5607
5608 Thu Jan 7 10:22:19 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5609
5610 * Makefile.in, config.h: no more default emulation. Make the lack
5611 of emulation a compile time error
5612
5613 Wed Jan 6 01:08:37 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5614
5615 * configure.in: recognise all sparclite variants, not just 'sparclite'
5616
5617 Mon Dec 28 11:15:35 1992 Ian Lance Taylor (ian@cygnus.com)
5618
5619 * m68kcoff.sc-sh: define _end as well as end, for consistency with
5620 aout.sc-sh.
5621
5622 * configure.in: accept *-ericsson-ose for any m68k CPU.
5623
5624 * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
5625 for each output section.
5626
5627 Mon Dec 21 16:06:59 1992 Per Bothner (bothner@rtl.cygnus.com)
5628
5629 * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c: Use new
5630 macro bfd_asymbol_bfd as appropriate.
5631 * Makefile.in: Un-duplicate ldlex.c dependency.
5632 * condigure.in: Replace my_host case table by sourcing
5633 ../bfd/configure.host. Allow std-host as the default.
5634 * ldmisc.c: Change logic for C++ name demangling: There is
5635 no initial '_' to remove from stab-derived function names.
5636
5637 Sun Dec 13 16:31:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5638
5639 * ldlang.c (lang_init_script_file): don't attach the output file
5640 sections to the script file.
5641
5642 Wed Dec 9 08:38:05 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5643 * ldlang.c (wild): run expansion loop over command line bfd too.
5644 (lang_ini_script_file): initialize more parts of the command line
5645 bfd.
5646 * ldlex.l: fix DEFINED start states.
5647
5648 Mon Dec 7 08:43:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5649 -y support
5650 * ld.texinfo: new doc.
5651 * ldgram.y, ldlex.l: understand -y<symbol>
5652 * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
5653 print info. (add_ysym): new function.
5654 * ldsym.h: (ldsym_type): new define SYM_Y.
5655
5656 Sat Nov 21 03:15:27 1992 John Gilmore (gnu@cygnus.com)
5657
5658 * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
5659 ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
5660 ldwrite.h, relax.h: Replace all uses of EXFUN and PROTO ansi-glue
5661 macros with PARAMS. Recreational cleanup. Update copyrights.
5662
5663 Tue Nov 10 00:23:37 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5664
5665 * Makefile.in: pass down the bfd source directory for includes
5666
5667 Thu Nov 5 15:41:55 1992 Ian Lance Taylor (ian@cygnus.com)
5668
5669 * ldlang.c (lang_size_sections): don't change size and address for
5670 SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
5671 sections.
5672
5673 Thu Nov 5 11:33:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5674
5675 * relax.c (build_it): re-enable the processing of data_statements
5676 in scripts, makes counted contructor lists work again.
5677
5678 Thu Nov 5 05:43:01 1992 John Gilmore (gnu@cygnus.com)
5679
5680 * ldemul.h: Remove uses of SDEF and PROTO macros (use PARAMS).
5681
5682 Tue Oct 20 10:56:06 1992 Ian Lance Taylor (ian@cygnus.com)
5683
5684 * m68kcoff.sc-sh: don't use initial underscores for etext, edata
5685 and end.
5686
5687 Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com)
5688
5689 * Support for i386-sysv.
5690 configure.in: check for i386-*-sysv* and i386-*-sco*.
5691 i386coff.sc-sh: rewrote to support SVR3 by default.
5692 ldctor.c (find_constructors): preserve stat_ptr.
5693 ldlang.c (wild_doit): initialize vma and size of new output
5694 section to corresponding input section. This is required for
5695 shared library support.
5696 (lang_size_sections): don't modify vma and size of sections which
5697 are never loaded (for shared libraries).
5698 ldwrite.c (copy_and_relocate): copy the contents of any section
5699 which has contents, not just sections which are loaded (for shared
5700 libraries).
5701
5702 Thu Oct 15 15:20:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5703
5704 * ldlang.c (size_input_section): count the sizes of all sections
5705 we allocate.
5706
5707 Thu Oct 8 09:05:25 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5708
5709 * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to
5710 to demangle symbols better
5711
5712 Tue Oct 6 13:08:54 1992 Ian Lance Taylor (ian@cygnus.com)
5713
5714 * ldlang.c (lang_finish): don't warn if -e start symbol does not
5715 exist when linking with -r.
5716
5717 Mon Oct 5 14:07:37 1992 Ian Lance Taylor (ian@cygnus.com)
5718
5719 * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
5720 .bss segment.
5721
5722 Mon Oct 5 08:55:14 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5723
5724 * ldmain.c (linear_library): don't even think about processing
5725 an object file if it's already been done
5726
5727 Thu Oct 1 23:14:59 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5728
5729 * configure.in: the hp9000/300 config file is now hp300
5730
5731 Wed Sep 30 07:34:09 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5732
5733 * config/z8ksim.mt: new file
5734
5735 Fri Sep 25 13:49:52 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
5736
5737 * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
5738 lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
5739
5740 * ld.h (strip_symbols_type): Add value STRIP_SOME.
5741 * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
5742 * ldlang.c (lang_add_keepsyms_file): New function.
5743 * ldlex.l: Handle "-retain-symbols-file".
5744 * ldsym.c (keepsyms_file, kept_syms): New vars.
5745 (process_keepsyms): New functihon; reads file, marks symbols for
5746 saving.
5747 (write_file_locals): File symbols should always be kept.
5748 (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
5749 and "-s". Process retain-symbols file before setting symtab.
5750 * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
5751 (keepsyms_file, kept_syms): Declare them.
5752
5753 * ldmain.c (main): Non-fatal errors should still cause non-zero
5754 exit status even with -r.
5755
5756 Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5757
5758 Added initial support for the z8k
5759 * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
5760 * configure.in, Makefile.in: modified to reflect above
5761
5762 * ldlang.c (lang_check): when linking conflicting architectures,
5763 make the output file reflect at least one of the bad inputs.
5764
5765 Tue Sep 15 15:35:38 1992 Ian Lance Taylor (ian@cygnus.com)
5766
5767 * Makefile.in (install): if $(tooldir) exists, install ld in
5768 $(tooldir)/bin.
5769
5770 Fri Sep 11 10:24:22 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5771
5772 * Makefile.in, configure.in: modified to support i386-coff
5773 * i386coff.sh: new file
5774
5775 Wed Sep 9 11:52:58 1992 Ian Lance Taylor (ian@cygnus.com)
5776
5777 * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
5778 added m68k-coff emulation mode, stolen from a29k emulation.
5779 Almost certainly wrong, but perhaps better than sun3.
5780
5781 Thu Sep 3 14:19:30 1992 Per Bothner (bothner@rtl.cygnus.com)
5782
5783 * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
5784 gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
5785 vanilla.em: Rename all (generated) ld__*.c files to em_.c.
5786 This is one character shorter, and lets people build on
5787 SVR3 system. (ld__h8300xray.[co] was the killer there;
5788 h8300xray.sc-sh is also overlong, but seems harmless.)
5789 Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
5790 * Makefile.in (clean): Fix typo mostclean -> mostlyclean.
5791 * configure.in: Add host isc.
5792
5793 * ldver.c: Call it version 2.0.
5794
5795 Wed Sep 2 00:21:33 1992 Per Bothner (bothner@rtl.cygnus.com)
5796
5797 * ldver.c: Bump to version 0.98.
5798 * TODO: New file.
5799
5800 * Makefile.in: Added mostlyclean, distclean, realclean rules.
5801
5802 Tue Sep 1 23:42:16 1992 Per Bothner (bothner@rtl.cygnus.com)
5803
5804 * ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
5805 * ldlex.l: Moved comment() to end, since some compilers
5806 otherwise have problems with input() used before it is defined.
5807
5808 Tue Sep 1 17:45:51 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5809
5810 * configure.in: added Solaris 2 and Irix 4 host support.
5811
5812 Mon Aug 31 19:27:11 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5813
5814 * Makefile.in: remove -S flag from the FLEX definition
5815
5816 * configure.in: rewrote, using new style case statement. use
5817 m68k.mt for m68k-aout systems
5818
5819 Sun Aug 30 21:38:53 1992 Ian Lance Taylor (ian@cygnus.com)
5820
5821 * Makefile.in: map "ld" through program_transform_name when
5822 installing.
5823
5824 Sun Aug 30 18:12:13 1992 Per Bothner (bothner@rtl.cygnus.com)
5825
5826 * cplus-dem.c: Removed. Use the version in libiberty now.
5827 * ldmisc.c: Use new libiberty version of cplus_demangle().
5828
5829 Thu Aug 27 16:38:42 1992 Ian Lance Taylor (ian@cygnus.com)
5830
5831 * gld960.em (gld960_choose_target): default to little endian, not
5832 big endian.
5833
5834 Wed Aug 26 17:28:51 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5835
5836 * ldlang.c (lang_process): don't pass null pointers when
5837 abs_output_section is what is required.
5838 * ldwrite.c (ldwrite): use malloc to allocate the largest space
5839 used, and pass that down.
5840 * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
5841 than alloca.
5842
5843 Mon Aug 24 14:42:06 1992 Ian Lance Taylor (ian@cygnus.com)
5844
5845 * configure.in, config/ose68.mt: renamed OSE to ose.
5846
5847 Thu Aug 20 19:55:22 1992 Ken Raeburn (raeburn@cygnus.com)
5848
5849 * ldsym.c (write_file_locals): Reorder check for common or
5850 undefined symbols so that it works.
5851
5852 Tue Aug 18 13:41:36 1992 Ian Lance Taylor (ian@cygnus.com)
5853
5854 * configure.in: accept all m68K family members.
5855
5856 * Makefile.in: always create installation directories.
5857
5858 Thu Aug 13 11:49:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5859
5860 * ldlex.l: now parses comment correctly, added ~ to acceptable
5861 chars in filenames
5862
5863 * ldexp.c (exp_unop): pass down abs_output_section - now can have
5864 unary -ve constants.
5865
5866 * ldlang.c (lang_finish): warn when an entry symbol supplied on
5867 the command line can't be found.
5868
5869 Fri Aug 7 12:31:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5870
5871 * ldlang.h: add new field "loadable" to output_section_statement.
5872 * ldlang.c (lang_output_section_statement_lookup): initilize new
5873 field. (wild_doit): if new field is not set, then stop output
5874 section from being loadable.
5875 (lang_enter_output_section_statement): set the field from the
5876 NOLOAD keyword
5877 * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
5878 * h8300hms.sc-sh, h8300hms.em: get -r right.
5879
5880 Thu Aug 6 18:35:21 1992 Per Bothner (bothner@rtl.cygnus.com)
5881
5882 * ldint.texinfo: New internals manual (beginnings thereof).
5883 * PORTING: Removed, merged into ldint.texinfo.
5884
5885 Tue Aug 4 21:12:29 1992 Per Bothner (bothner@rtl.cygnus.com)
5886
5887 * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
5888 cdtest.exp: A test program (copied from libg++/test-install)
5889 that tests that constructor and destructors are handled
5890 corrrectly.
5891
5892 Mon Aug 3 14:58:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5893
5894 * Makefile.in (install): install from ld.new, renaming during the
5895 copy, or else the next 'make install' needs to re-link ld.
5896
5897 Mon Jul 20 03:37:06 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
5898
5899 * configure.in: generalise hp recognition (from sef).
5900
5901 Sat Jul 18 14:46:04 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5902
5903 * configure.in: recognize bsd and hpux hppa configurations.
5904 error messages echo to stderr, not stdout
5905
5906 Fri Jul 17 22:06:11 1992 K. Richard Pixley (rich@rtl.cygnus.com)
5907
5908 * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
5909 ldmisc.c: removed rcsid's.
5910
5911 Tue Jul 14 08:34:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5912
5913 * ldlang.c (lang_map): print changes in sizes due to relaxing
5914 (size_input_section): maintain the delta information.
5915 * ldlang.h: add new field to struct to contain delta info.
5916 * relax.c (relax_section): complain if input not relaxable.
5917 * ldlex.l : add '_', ',' and '$' to chars which can appear at the
5918 start of a filename
5919
5920 Mon Jul 13 17:33:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5921
5922 * ldmain.c(main): prevent -r and -relax from being on at the same
5923 time.
5924
5925 Wed Jul 1 17:51:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5926
5927 * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
5928 aliasing problems
5929
5930
5931 Thu Jun 18 09:38:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5932
5933 * h8300hms.em, h8300hms.sc-sh: do the right thing for -r
5934 * ldexp.c: lint
5935 * ldlang.c(open_output): set the target arch and machine as soon
5936 as we can. (lang_size_sections): use new macros for setting vma
5937 * ldwrite.c: lint
5938
5939 Mon Jun 15 08:47:43 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
5940
5941 * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
5942 Also deleted an unreachable path to wrs.
5943
5944 Wed May 27 23:24:19 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
5945
5946 * Makefile.in (install): use -d test for $tooldir before
5947 installing ld there so that $tooldir can be inherited from
5948 top-level Makefile.
5949
5950 Wed May 27 16:56:48 1992 Per Bothner (bothner@rtl.cygnus.com)
5951
5952 * ldlang.c: Two non-substantial changes for the sake of
5953 the old Portable C Compiler.
5954
5955 Wed May 27 15:15:58 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5956
5957 * ldgram.y, ldlex.l: parse ABSOLUTE
5958 * ldexp.c: add support for ABSOLUTE
5959
5960 Wed May 27 13:07:20 1992 Per Bothner (bothner@rtl.cygnus.com)
5961
5962 * Makefile.in: Added default definitions for HOSTING_CRT0,
5963 HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
5964 * config/*.mh: Miscellaneous clean-up: Removed definitions
5965 of YACC (since it is not longer used in the Makefile).
5966 Remove HOSTING_* definitions that are subsumed by the
5967 ones added to Makefile.in. Removed most definitions of CC.
5968 * config/{sparc,news,hp300bsd,decstation}.mh: Removed;
5969 These are no longer needed.
5970
5971 Fri May 22 13:47:19 1992 Per Bothner (bothner@cygnus.com)
5972
5973 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
5974 rules, since these are used when building a distribution.
5975 * Makefile.in (ldlex.c): Don't re-direct output, since that
5976 leaves a bogus output files if it fails.
5977
5978 * config/sparc.mh: Fix HOSTING_LIBS so it has a chance of working.
5979 * ldlex.c: Fix some unnecessary flex-specific-isms.
5980
5981 Fri May 8 11:49:43 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5982
5983 * ldgram.y: move spurious semicolon
5984 * ldexp.h: fix prototype
5985
5986 Thu May 7 17:01:12 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
5987
5988 * ld.texinfo: references to linker now say "ld" not "gld".
5989
5990 Wed May 6 13:26:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5991
5992 changed calling convention for Q_enter_global_ref
5993 * ldexp.c, ldlang.c, ldmain.c: reflect this
5994 * ldver.c: bump version to 1.97.1
5995 * ldindr.c (add_indirect): when an edict declaring an indirect
5996 symbol is found, make sure that any ideas about the symbol being
5997 common are changed if it now known to be defined.
5998 * ldmain.c (linear_library): complain once if archive isn't
5999 ranlibbed.
6000 * ldlang.h, ldlang.c: make room for and initialize the complain
6001 once field.
6002
6003 Wed May 6 11:07:35 1992 K. Richard Pixley (rich@rtl.cygnus.com)
6004
6005 * Makefile.in: use flex & bison from ../ if they exist.
6006
6007 Tue May 5 17:47:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6008
6009 * relax.c (build_it): don't allocate space in the output file for
6010 stuff if -R flag applys to it.
6011 * ldfile.c: merge in VMS filename support
6012 * ldmain.c (main): take out ./ from library path, and close file
6013 before unlinking. Make multiple defs of a symbol create an
6014 unexecable file.
6015 * ldmisc.c: fatal errosrs delete output file
6016
6017 Tue May 5 14:05:05 1992 Per Bothner (bothner@rtl.cygnus.com)
6018
6019 * ldver.c: Increase version number to 1.97, for consistency
6020 with ../binutils.
6021
6022 Tue May 5 12:12:24 1992 K. Richard Pixley (rich@cygnus.com)
6023
6024 * Makefile.in: FLEX -> LEX.
6025
6026 * ld.texinfo: {} -> @{@}.
6027
6028 Mon May 4 17:52:41 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
6029
6030 * ld.texinfo: describe alternate, MRI-compatible linker scripts
6031 (and associated change in -c option, now used for these scripts)
6032
6033 Mon May 4 16:10:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6034
6035 * ldver.c: Bumped version to 1.96 - new release, resync with the
6036 bfd too #.
6037 * ldexp.c, ldlang.c: now build memory shape tree in obstacks
6038 rather than with raw malloc, makes it easier to track where memory
6039 is going.
6040 * ldsym.h, ldsym.c: create obstack for all global symbols too.
6041 * ldwrite.c (ldwrite): moved malloc so only used when needed.
6042 * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
6043
6044
6045 Fri May 1 18:17:52 1992 K. Richard Pixley (rich@cygnus.com)
6046
6047 * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
6048
6049 * Makefile.in: use bootstrap for check.
6050
6051 Fri May 1 13:03:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6052
6053 * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
6054 PUBLIC.
6055 * Makefile.in: now use flex, not lex
6056 * ldlex.l, ldlang.c, ldctor.c: lint
6057
6058 Wed Apr 22 12:48:42 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6059
6060 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
6061 different sorts of filenames on the command line than in a script.
6062
6063 Mon Apr 20 22:37:04 1992 K. Richard Pixley (rich@rtl.cygnus.com)
6064
6065 * Makefile.in: rework CFLAGS so that they can be passed on the
6066 make command line. Remove MINUS_G. Default CFLAGS to -g.
6067
6068 Fri Apr 17 08:57:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6069
6070 * relax.c: added handling for new "padding" seclet type, used to
6071 fill out gaps between section.
6072 * ldgram.y, ldlex.l: now -defsym on the command line is done
6073 properly.
6074
6075 Wed Apr 15 21:20:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
6076
6077 * Makefile.in: the tooldir copy of ld goes directly in tooldir.
6078
6079 Wed Apr 15 16:09:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6080
6081 * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
6082 scripts.
6083
6084 Thu Apr 9 05:52:02 1992 Ken Raeburn (Raeburn@Cygnus.COM)
6085
6086 * Makefile.in (install): Install second copy in $(tooldir)/bin
6087 without $(program_prefix), since that's what gcc expects.
6088
6089 Sat Apr 4 17:44:06 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6090
6091 * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer.
6092 * h8300*: fix bit rot and add support for h8300xray target
6093 * go32.sh: target emulation for go32.
6094
6095 Mon Mar 16 14:53:29 1992 Steve Chamberlain (sac@rtl.cygnus.com)
6096
6097 * gld960.em, i960.sc-sh. Fix i960 bit rot
6098
6099 Fri Mar 13 19:47:22 1992 K. Richard Pixley (rich@cygnus.com)
6100
6101 * Makefile.in: install man page.
6102
6103 Fri Mar 13 08:23:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6104
6105 * config/mt-<foo> renamed to <foo>.mt
6106 * config/mh-<foo> renamed to <foo>.mt
6107 * configure.in changed to reflect this
6108 * genscripts.sh now make .xbn files rather than .xN files
6109
6110 Sat Mar 7 03:40:40 1992 K. Richard Pixley (rich@cygnus.com)
6111
6112 * ldver.h: fix decl of ldversion.
6113
6114 Fri Mar 6 22:00:35 1992 K. Richard Pixley (rich@cygnus.com)
6115
6116 * Makefile.in: added check target.
6117
6118 Fri Mar 6 06:59:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6119
6120 * ldmain.c (Q_enter_file_symbols): now aliases work again
6121
6122 Thu Mar 5 21:39:29 1992 K. Richard Pixley (rich@cygnus.com)
6123
6124 * Makefile.in: added clean-info target.
6125
6126 Thu Mar 5 16:55:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
6127
6128 * ldexp.c (exp_print_tree): don't try and follow null pointers
6129 around.
6130 * ldgram.y: remove 11 shift reduce errors
6131
6132 Tue Mar 3 15:46:39 1992 K. Richard Pixley (rich@rtl.cygnus.com)
6133
6134 * Makefile.in: added tooldir and program_prefix.
6135
6136 Fri Feb 28 08:17:45 1992 Steve Chamberlain (sac at thepub.cygnus.com)
6137
6138 * ldlang.c (size_input_section): don't move absolute sections
6139 around!
6140
6141
6142 Thu Feb 27 09:20:41 1992 Steve Chamberlain (sac at thepub.cygnus.com)
6143
6144 * cplus-dem.c: yet another copy of this - maybe it should go into
6145 libiberty ?
6146 * ldgram.y: now -V and -v have different actions
6147 * ldver.c: if -V, prints list of emulations compiled in
6148 * ldmisc.c: support for cplus demangling
6149
6150
6151 Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
6152
6153 * Makefile.in, configure.in: removed traces of namesubdir,
6154 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
6155 copyrights to '92, changed some from Cygnus to FSF.
6156
6157 Thu Feb 20 17:43:46 1992 Per Bothner (bothner at cygnus.com)
6158
6159 * Makefile.in: Change mkscript rule into one for ./mkscript
6160 (for the sake of makes that don't realize they're the same).
6161 * PORTING: Add more details.
6162 * genscripts.sh: Add more tailorability of DATA_ALIGNMENT.
6163
6164 Mon Feb 17 12:04:36 1992 Per Bothner (bothner at cygnus.com)
6165
6166 * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
6167 config/mt-hp300bsd: New port to hp300 running BSD.
6168
6169 Sat Feb 15 13:59:54 1992 Per Bothner (bothner at cygnus.com)
6170
6171 Major rewrite of how ld is configured. The major idea
6172 is to use shell scripts to generate everything.
6173 * generic.em replaces ldtemplate.
6174 * Other *.em files replace various *.c files.
6175 A *.em file is a shell script that generates the corresponding
6176 ld__*.c file that implements an emulation. This is usually
6177 a straight 'cat' of a here-document, possibly with substitutions.
6178 * Script files (*.sc) are places by *.sc-sh scripts.
6179 Again, these are simple shell scripts that 'cat'
6180 here-documents, usually with some substitutions.
6181 The output a *.sc-sh is a script file.
6182 * Each emulation is defined by a short shell script with
6183 extension *.sh that specifies the emulation-specific
6184 parameters (such as the name of the *.sh-sc and *.em
6185 files to use).
6186 * genscript.sh is the master shell script used to generate
6187 an emulation. It is passed various argument, including
6188 the name a the emulation-speciic *.sh file that it
6189 "sources" to set variables to emulation-specifc parameters.
6190 * config/mt-foo: Changed EMUL=GLDFOO_EMULATION_NAME
6191 to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
6192 * config/mh-foo: Rename LDEMULATION names as appropriate
6193 (usually 'gldfoo' -> plain 'foo').
6194 * ldwrite.c: Fixed a typo in a comment.
6195 * Makefile.in: Major changes. Removed some the sed
6196 magic to converts scripts, since that is now handled
6197 by genscripts.sh and the *.sc-sh scipt generators.
6198 * config.h: Remove a bunch of macros defining emulations
6199 and targets. This becomes one less file to edit when
6200 adding emulations or targets.
6201 * ldemul.h (struct ld_emulation_xfer_struct): Add
6202 emulation_name and target_name fields.
6203 * ldemul.c, ldemul.h: Define some default functions used
6204 by most emulations (and remove from the *.em scripts).
6205 * ldemul.c (ldemul_choose_target): Search the new
6206 ld_emulations array using a loop (instead of a hardwired
6207 nested if statement).
6208 Define the ld_emulation from the automatically-geenrated
6209 ldemul-list.h. This means you no longer have to edit ldemul.c
6210 to add a new emulation.
6211 * ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
6212 their expansions, since the former no longer exist.
6213 * PORTING: A very rough first draft of a porting guide.
6214
6215 * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
6216 to be terminated by a new-line (instead of requiring a semicolon).
6217
6218 Mon Feb 10 16:21:02 1992 Steve Chamberlain (sac at rtl.cygnus.com)
6219
6220 * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
6221 tests for NULL pointers all over the place.
6222 * ldlang.c (lang_process): remember to relocate global symbols
6223 *after* relaxing has done it stuff.
6224
6225 Thu Feb 6 11:40:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
6226
6227 * config/mt-coff-h8300: use EMUL like everything else
6228 * ldlang.c: (print_padding_statement): print the right address.
6229 * Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
6230
6231
6232 Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
6233
6234 * ldlex.l: Put pack -noinhibit-exec and -sort-common
6235 * ldlang.c (print_data_statement): print the right address.
6236
6237 Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
6238
6239 * Makefile.in: The rule for testing ld by re-linking itself
6240 via an intermediate -r link was moved to the ld1 rule
6241 instead of the ld2 rule. This allows ld2 and ld3 to be identical,
6242 which allows the bootstrap rule to work.
6243 * ldctor.c (find_constructors): Don't create a constructor
6244 list if it is already defined (as would happen if ld is
6245 invoked by collect).
6246
6247 Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
6248
6249 * config/mh-sparc.h: now uses libgcc.a
6250 * ldmain.c: quit using exit
6251 * *sc: use *(COMMON) rather than [COMMON]
6252 * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
6253 to allow preprocessing of .l file.
6254 * Makefile.in: New ldlex.l mangling
6255 * ldexp.c (fold_binary): perform expressions with % and / in
6256 integer.
6257 * ldfile.c (open_a): open archives on VMS in a special way
6258
6259
6260 Tue Jan 28 10:18:16 1992 Steve Chamberlain (sac at rtl.cygnus.com)
6261
6262 * ldgram.y: map -M behave in the same way as -Map (sets file name
6263 to be "-".
6264 * ldsym.c, ldlang.c: remember that size of a section is dependent on
6265 whether or not relaxing has been done.
6266 * ldmain.c: don't open a map file if it doesn't have a name
6267 * relax.c: all the brains have moved into bfd.
6268 * ldwrite.c: ammend comment
6269
6270 Fri Jan 24 14:23:46 1992 Steve Chamberlain (sac at rtl.cygnus.com)
6271
6272 * Makefile.in: added relax, also made three stage go through a
6273 partial link stage.
6274 * relax.c : added
6275 * config.h: if GNU960 defined, then default emulation mode is
6276 GLD960
6277 * ldexp.h, ldexp.c: map to file hooks
6278 * ldlang.c: map to file hooks
6279 * ldgram.y: added -Map -relax
6280 * ldlex.l: added -relax, -Map
6281 * ldmain.c: open map file
6282 * ldmisc.c: support for map file
6283 * ldwrite.c: new relax magic
6284
6285 Thu Dec 19 18:49:51 1991 John Gilmore (gnu at cygnus.com)
6286
6287 * Makefile.in, config/tm-*.h: Clean up make output, only
6288 pass DEFAULT_EMULATION to ldmain.c.
6289
6290 Wed Dec 18 15:02:47 1991 Per Bothner (bothner at cygnus.com)
6291
6292 * ldver.c: Bump to version 1.94.
6293
6294 Tue Dec 10 04:07:23 1991 K. Richard Pixley (rich at rtl.cygnus.com)
6295
6296 * Makefile.in: infodir belongs in datadir.
6297
6298 Mon Dec 9 16:26:43 1991 Per Bothner (bothner at cygnus.com)
6299
6300 * Makefile.in: Pass -y to bison. (Again;
6301 accidentally deleted by Rich.)
6302 * news.sc, ldgld68k.sc: Define __end as well as _end.
6303
6304 Sat Dec 7 17:19:26 1991 Steve Chamberlain (sac at rtl.cygnus.com)
6305
6306 * ldindr.h: added to contain prototypes of ldindr.c
6307 * ldfile.c: include ctype.h
6308 * ldmain.c: include the requried prototype headers
6309 * ldwrite.c: get_reloc_upper_bound has been renamed
6310 bfd_get_reloc_upper_bound
6311
6312 Fri Dec 6 23:29:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
6313
6314 * Makefile.in: punt "fundamental" mode because it breaks my emacs
6315 macros. install using INSTALL_PROGRAM and INSTALL_DATA. remove
6316 spaces following hyphens, bsd make can't cope. added
6317 standards.text support and made it look like all the other
6318 makefiles.
6319
6320 * configure.in: configure now runs entirely in objdir so make file
6321 existence checks against ${srcdir}. Mark this directory as
6322 target dependent.
6323
6324 Thu Dec 5 22:46:16 1991 K. Richard Pixley (rich at rtl.cygnus.com)
6325
6326 * Makefile.in: idestdir and ddestdir go away. Added copyrights
6327 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
6328 and mandir now keyed off datadir by default.
6329
6330 Wed Dec 4 23:36:55 1991 Per Bothner (bothner at cygnus.com)
6331
6332 * ldver.c: Bumped version to 1.93.
6333 * Makefile.in: Pass -y to bison.
6334
6335 Mon Nov 25 18:28:40 1991 Steve Chamberlain (sac at cygnus.com)
6336
6337 * config.h: h8 is now coff, not ieee
6338 * h8300hds.sc: reflect the same
6339
6340 Thu Nov 14 19:55:09 1991 Per Bothner (bothner at cygnus.com)
6341
6342 * ldver.c (ldversion()): Update to 1.92.
6343 * ldctor.c: There are two places constructor sets
6344 can be defined. One of them checked for an existing
6345 duplicate, the other didn't. Unfortunately, the latter
6346 was called after the former ...
6347 So, factor out code for inserting a new element into
6348 constructor_name_list (after checking for a duplicate)
6349 into a new function add_constructor_name, and call
6350 it from both aforementioned places (ldlang_add_constructor
6351 and ldlang_check_for_constructors).
6352
6353 Wed Nov 13 15:17:43 1991 Per Bothner (bothner at cygnus.com)
6354
6355 * Makefile.in: Rename .c files generated from ldtemplate
6356 to have names starting with ld__. This helps 'make clean'.
6357
6358 Tue Nov 12 18:36:50 1991 Steve Chamberlain (sac at cygnus.com)
6359
6360 * Makefile.in: Take out the version number for install
6361 * m88kbcs.sc: put in contructor blocks.
6362
6363 Mon Nov 11 18:47:33 1991 Per Bothner (bothner at cygnus.com)
6364
6365 * ldmisc.c, ldmisc.h: Re-write info() to take a filename
6366 parameter, a format, and an arg pointer, and rename it to
6367 vfinfo(). Write info() in terms of new vfinfo().
6368 New einfo() is the same as info(), except it writes to stderr.
6369 * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
6370 ldmisc.c: Replace "error" calls to info() by new einfo().
6371
6372 Mon Nov 11 09:57:32 1991 Steve Chamberlain (steve at cygnus.com)
6373
6374 * ldlex.l ldgram.y: made -V option do same as -v
6375 * Makefile.in: Added $(MINUS_G) flag so debugging can be
6376 turned off
6377
6378 Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
6379 i386 aout changes from Bob Kukura
6380 * Makefile.in, config.h: added i386aout support
6381 * configure.in: fixed /h-{myhost} typo
6382 * ldgram.y: -MM now gives more boring map.
6383 * ldlang.c: now does D_PAGED flag the right way.
6384 * ldsym.c: -MM flags does the right thing.
6385
6386 Sun Nov 3 15:00:03 1991 Per Bothner (bothner at cygnus.com)
6387
6388 * configure.in: Fixed typo. Also, a fix for hp300bsd.
6389 * ldlang.c (init_os): Compensate for BFD change,
6390 where bfd_make_section now returns NULL for a duplicate
6391 section request, instead of the old section.
6392
6393 Thu Oct 17 15:27:13 1991 Per Bothner (bothner at cygnus.com)
6394
6395 * ldver.c: Bump to version 1.91 (consistent with binutils).
6396
6397 Wed Oct 16 12:27:08 1991 Per Bothner (bothner at cygnus.com)
6398
6399 * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
6400 ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
6401 ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
6402 ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
6403 Add or update copyright notices.
6404
6405 Mon Oct 14 23:55:27 1991 Per Bothner (bothner at cygnus.com)
6406
6407 * README: New file.
6408 * Makefile.in: Changed installation directory name scheme
6409 to be consistent with gcc. Also changed 'install'.
6410
6411 Mon Oct 14 17:30:02 1991 Roland H. Pesch (pesch at cygnus.com)
6412
6413 * Makefile.in: new targets ld.mm, ld.me
6414
6415 Mon Oct 14 17:27:24 1991 Per Bothner (bothner at cygnus.com)
6416
6417 * Makefile.in, ldtemplate: Need to use separate scripts
6418 for -n and -N options. Yet more complication.
6419
6420 Fri Oct 11 22:40:46 1991 John Gilmore (gnu at cygnus.com)
6421
6422 * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
6423 work). Add some lines to avoid Sun Make VPATH bugs.
6424
6425 Fri Oct 11 16:42:22 1991 Per Bothner (bothner at cygnus.com)
6426
6427 * news.sc: Add alignment for data segment.
6428 * ldtemplate: Add (yet another) script to get for -n or -N
6429 options. (These need different alignment than ZMAGIC files.)
6430 * Makefile.in: Add stuff for new foo.xn scripts.
6431 These are generated by replacing "ALIGN(0x...00)" by ".".
6432
6433 Fri Oct 11 15:43:04 1991 Roland H. Pesch (pesch at cygnus.com)
6434
6435 * Makefile.in: new targets ld.ms, ld-index.ms
6436 ld.texinfo: remove tabs, other cleanups for texi2roff
6437
6438 Fri Oct 11 13:51:54 1991 Per Bothner (bothner at cygnus.com)
6439
6440 * ldmain.c (main): Make config.magic_demand_paged be true
6441 by default. Don't the WP_TEXT and D_PAGED flags of
6442 output_bfd here; it's too late, so set it when output_bfd
6443 is created (in ldlang.c). Also fix setting of EXEC_P flag
6444 * ldlang.c (ldlang_open_output): Set output_bfd->flags here.
6445 * ldlang.c: Remove some duplicate extern declarations.
6446 * ldgram.y: Fixes to -N and -n options.
6447 * Makefile.in: Recognize upper case letters in sed script
6448 to remove assignments from script files.
6449 * ldtemplate: Don't assukme that -N or -n options
6450 imply use of -r script.
6451 * mkscript.c: Tweaking to correctly handle \n and \\ in input.
6452
6453 Fri Oct 11 10:29:27 1991 Steve Chamberlain (steve at cygnus.com)
6454
6455 * ldtemplate: include bfd.h before sysdep.h.
6456
6457 Fri Oct 11 04:24:45 1991 John Gilmore (gnu at cygnus.com)
6458
6459 Restructure configuration scheme for bfd, binutils, ld.
6460
6461 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
6462 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
6463 Change some config names to match other dirs.
6464 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
6465 get defined first.
6466 * config/: Rename some config files to match up h-*.h names.
6467 Remove all the HOST_SYS definitions from the config files.
6468
6469 Tue Oct 8 16:00:57 1991 Per Bothner (bothner at cygnus.com)
6470
6471 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
6472 * ldtemplate: Remove ldfile_add_library_path calls;
6473 just use the SEARCH_DIR commands in the script files.
6474 * Makefile.in: Add LIB_PATH macro, which if set is used to replace
6475 the SEARCH_DIR commands in the scripts (using ugly sed magic).
6476 This is primarily intended for cross-linking, where you would
6477 place libaries in a different place than native libraries.
6478 Also, emulations made from ldtemplate now use $(srcdir).
6479 * ldglda29k.sc: Change SEARCH_DIR commands to a conventional
6480 form; people can use the Makefile's LIB_PATH to override.
6481
6482 Tue Oct 8 14:51:21 1991 Roland H. Pesch (pesch at cygnus.com)
6483
6484 * Makefile.in: fix target ld.dvi, add target ld.info
6485 ld.texinfo: make info filename ld.info
6486
6487 Fri Oct 4 21:51:58 1991 John Gilmore (gnu at cygnus.com)
6488
6489 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun
6490 Make).
6491 * ldfile.c, ldlang.c, ldmain.c, ldwrite.c: Cope with renames of a
6492 few BFD types & enums.
6493
6494 \f
6495 Local Variables:
6496 mode: indented-text
6497 left-margin: 8
6498 fill-column: 74
6499 version-control: never
6500 End:
This page took 0.184476 seconds and 5 git commands to generate.