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