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