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