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