add year 2000 copyright notice
[deliverable/binutils-gdb.git] / ld / ChangeLog
CommitLineData
5aaace27
NC
12000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
2
870df5dc
NC
3 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
4 (process_def_file): Use.
5 (pe_dll_compat_implib): New variable.
6 (make_one): Use.
7
8 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
9 pe_dll_compat_implib.
10
11 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
12 compat-implib options.
13 (gld_${EMULATION_NAME}_list_options): List new options.
14 (gld_${EMULATION_NAME}_parse_args): Handle.
15
5aaace27
NC
16 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
17 dll.
870df5dc 18
5aaace27
NC
19 * deffilep.y (opt_name): Allow "." in name.
20
e6869249
NC
211999-12-02 Nick Clifton <nickc@cygnus.com>
22
23 * Makefile.am: Fix arm-epoc-pe dependencies.
24 * Makefile.in: Regenerate.
25
26 * emulparams/arm_epoc_pe.sh (SCRIPT_NAME): Set to epocpe.
27
28 * scripttempl/epocpe.sc: New file: copy of pe.sc, customised for
29 EPOC by placing .rdata into .text.
30
e4dabd0e
AS
311999-11-26 Andreas Schwab <schwab@suse.de>
32
33 * configure.in: Put AC_MSG_CHECKING/AC_MSG_RESULT around check for
34 STRINGIFY. Use yes/no instead of true/false as value for cache
35 variable.
36 * configure: Regenerate.
37
50e05050
NC
381999-11-24 Nick Clifton <nickc@cygnus.com>
39
40 * ldlang.c (IGNORE_SECTION): Section must have both ALLOC and LOAD
41 attributes in order to be checked.
42
33275c22
NC
431999-11-22 Nick Clifton <nickc@cygnus.com>
44
45 * ldlang.c (lang_check_section_addresses): Fix test to determine
46 if a section should be tested.
47 (IGNORE_SECTION): New macro.
48
93a6d436
JL
49Wed Nov 3 23:31:19 1999 Jeffrey A Law (law@cygnus.com)
50
51 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
52 Clean up code to use EXTRA_SHLIB_EXTENSION.
53
829ce307
NC
541999-11-03 Nick Clifton <nickc@cygnus.com>
55
56 * emulparams/elf32mcore.sh (OUTPUT_FORMAT): Change to little endian.
57 * emulparams/mcorepe.sh (OUTPUT_FORMAT): Change to little endian.
58
9503fd87
ILT
591999-11-01 Steve Chamberlain <sac@pobox.com>
60
61 * ldlang.c (section_already_linked): Rework to use hash table.
62 (already_linked_newfunc): New function.
63 (already_linked_table_init): New function.
64 (already_linked_table_free): New function.
65 (lang_process): Initialize and free the already_linked hash table.
66
d7498c1e
ILT
671999-10-27 Andreas Jaeger <aj@suse.de>
68
69 * ld/configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
70 target "mips*-*-linux-gnu*".
71
29c4c6b5
NC
721999-10-27 Scott Bambrough <scottb@netwinder.org>
73
74 * emultempl/armelf.em: Include ctype.h to prevent compile time
75 warnings.
76
1ac6a752
NC
771999-10-26 Nick Clifton <nickc@cygnus.com>
78
79 * emultempl/armcoff.em (gld{}_finish): Remove extraneous
80 underscore from prototype.
81 * emultempl/armelf.em (gld{}_finish): Remove extraneous
82 underscore from prototype.
83
cfd0966c
GK
841999-10-07 Geoffrey Keating <geoffk@cygnus.com>
85
86 * scripttempl/elf.sc (.rel.sdata): Combine all the sdata relocs
87 being .rel.sdata, .rel.sdata.*, .rel.gnu.linkonce.s*.
88 (.rela.sdata): Likewise for .rela.sdata.* and .rela.gnu.linkonce.s*.
89 (.rel.sbss): Make like .rel.bss.
90 (.rela.sbss): Make like .rel.bss.
91 (.sdata): Don't include .gnu.linkonce.s.* or .sdata.* when
92 ld -r.
93 (.sbss): Do the same things as for .bss: include SDATA_START_SYMBOLS,
94 .dynsbss.
95
6eec49fc
DD
961999-09-29 Andrew Haley <aph@cygnus.com>
97
98 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Defer
99 merging sections when not relocating.
100
8a5b676c
DD
1011999-09-28 Mumit Khan <khan@xraylith.wisc.edu>
102
103 * pe-dll.c (process_def_file): Move the offset lookup from here to
104 (fill_exported_offsets): here. New static function.
105 (fill_edata): Use.
106
7c9e78f8
DD
1071999-09-28 Mumit Khan <khan@xraylith.wisc.edu>
108
109 * deffilep.y (tokens): Add upper and lower case versions of DATA,
110 CONSTANT, NONAME and PRIVATE tokens.
111 (command): Use DATAU.
112 (expline): Allow for drectve syntax as well.
113 (exp_opt_list): Likewise.
114 (exp_opt): Likewise.
115 * pe-dll.c (make_one): Only generate the idata entries for data
116 symbols.
117
13d92f2c
GK
1181999-09-28 Geoffrey Keating <geoffk@cygnus.com>
119
120 * scripttempl/elf.sc (.sdata): Include .gnu.linkonce.s.* sections
121 in .sdata too.
122
3c9cf3a3
NC
1231999-09-26 Nick Clifton <nickc@cygnus.com>
124
125 * scripttempl/elf.sc (.bss): Accept sections named .bss.*
126 (.sbss): Accept sections names .sbss.*
127
be2153ad
NC
1281999-09-22 Nick Clifton <nickc@cygnus.com>
129
130 * Makefile.am: Add earm_epoc_pe.c build target.
131
26040066
JL
132Sat Sep 18 07:57:10 1999 Jeffrey A Law (law@cygnus.com)
133
134 * emulparms/elf64hppa.sh (OTHER_READONLY_SYMBOLS): Remove ".stubs",
135 they've been renamed to ".stub", which is handled automatically
136 by elf.sc.
137
138Fri Sep 17 11:00:33 1999 Jeffrey A Law (law@cygnus.com)
139
140 * emulparms/elf64hppa.sh (TEXT_START_SYMBOLS): Kill completely.
141 (DATA_START_SYMBOLS): Kill __hp_load_map definition
142
42d106a8
JL
143Thu Sep 16 10:59:56 1999 Jeffrey A Law (law@cygnus.com)
144
d3cc5bd6
JL
145 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
146 Use the same filename extension for the bfd_elf_dt_needed_name call
147 as we did for finding the library.
148
88e99a39
JL
149 * emulparms/elf64hppa.sh (DATA_START_SYMBOLS): Define.
150 (OTHER_READWRITE_SECTIONS): No longer define __hp_load_map.
151
42d106a8
JL
152 * emulparms/elf64hppa.sh (TEXT_START_SYMBOLS): Define.
153
833be1c7
JL
154Wed Sep 15 02:47:43 1999 Jeffrey A Law (law@cygnus.com)
155
97444aea
JL
156 * emulparms/elf64hppa.sh (SHLIB_TEXT_START_ADDR): Define.
157 (SHLIB_DATA_ADDR): Likewise.
158
159 * emulparms/elf64hppa.sh (TEXT_DYNAMIC): Define.
160
833be1c7
JL
161 * emulparms/elf64hppa.h (OTHER_READWRITE_SECTIONS): No longer combine
162 the .plt, .dlt, .opd into a single output section. Provide values
163 for __gp and __hp_load_map.
164
a8100d5b
MM
1651999-09-14 Michael Meissner <meissner@cygnus.com>
166
167 * configure.in (Canonicalization of target names): Remove adding
168 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
169 generates $ac_config_sub with a ${CONFIG_SHELL} already.
170 * configure: Regenerate.
171
e4e24acb
DD
1721999-09-14 Donn Terry <donn@interix.com>
173
174 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): allow for
175 terminating null.
176
93a6d436
JL
1771999-09-14 Ulrich Drepper <drepper@cygnus.com>
178
179 * configure.in: Define EXTRA_SHLIB_EXTENSION to ".sl" for HP target.
180 * config.in: Add EXTRA_SHLIB_EXTENSION.
181
182 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
183 Search for second shared lib extension only if EXTRA_SHLIB_EXTENSION
184 is defined.
185
cf865442
NC
1861999-09-14 Nick Clifton <nickc@cygnus.com>
187
188 * Makefile.in: Add earm_epoc_pe.c build target.
189
2491f110
JL
190Tue Sep 14 05:26:34 1999 Jeffrey A Law (law@cygnus.com)
191
192 * emulparms/elf64hppa.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.dlt.
193
361d94e7
ILT
1941999-09-13 Donn Terry <donn@interix.com>
195
196 * emultempl/pe.em: Remove the output file at the start, in case it
197 is not writable.
198
9169713a
JL
199Mon Sep 13 00:17:18 1999 Jeffrey A Law (law@cygnus.com)
200
070f1aed
JL
201 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
202 Search for file with .sl extension if no file with a .so extension
203 is found.
204
9169713a
JL
205 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): Put .plt
206 at the start of the .dlt output section.
207
1069dd8d
ILT
2081999-09-12 Ian Lance Taylor <ian@zembu.com>
209
45455cdd
ILT
210 * pe.em: Don't include "../bfd/libbfd.h".
211 (gld_${EMULATION_NAME}_after_open): Use xmalloc rather than
212 bfd_alloc.
213
1069dd8d
ILT
214 * pe-dll.h: New file.
215 * pe-dll.c: Include "pe-dll.h". Mark unused arguments as needed
216 to avoid warnings.
217 (edata_sz, reloc_sz): Change from int to size_t.
218 (pe_details_type): Change type of imagebase_reloc from int to
219 unsigned int.
220 (pe_detail_list): Fully initialize last entry.
221 (pe_dll_id_target): Change parameter to const.
222 (pe_dll_generate_def_file): Likewise.
223 (pe_dll_generate_implib): Likewise.
224 (pe_implied_import_dll): Likewise. Change dll_name to const.
225 * emultempl/pe.em: Include "pe-dll.h". Remove declarations now in
226 pe-dll.h.
227 (init): Fully initialize __dll__ entry.
228 (gld_${EMULATION_NAME}_after_open): Remove unused variables
229 sequence, elt, and i.
230 * deffile.h: Add preprocessor guard.
231 * deffilep.y (def_debug): Remove.
232 * Makefile.am: Rebuild dependencies.
233 (HFILES): Add pe-dll.h.
234
2be9b2c7
ILT
2351999-09-12 Donn Terry <donn@interix.com>
236
45455cdd
ILT
237 * ld.h (ld_abort): Declare.
238 (abort): Define.
239 * ldmisc.c (ld_abort): Define.
240
be4514d3
ILT
241 * scripttempl/pe.sc: Use ${ENTRY} rather than _mainCRTStartup.
242 Move .bss section after .rdata. Move .reloc section after .rsrc.
243
d98dd8ba
ILT
244 * lexsup.c (parse_args): Use strtoul for --split-by-reloc
245 argument.
246
03983865
ILT
247 * lexsup.c (parse_args): If we get an unrecognized argument,
248 mention --help.
249
bb8fe706
ILT
250 * ldlang.c (section_already_linked): Use comdat information if it
251 is available.
252
2be9b2c7
ILT
253 * emultempl/pe.em (PE_DEF_SECTION_ALIGNMENT): If
254 OVERRIDE_SECTION_ALIGNMENT is defined, change to that.
255 (gld_${EMULATION_NAME}_before_parse): Use EXECUTABLE_NAME if it is
256 defined, rather than a.exe.
257 (init): Define __subsystem__ as ${SUBSYSTEM}.
258 (set_pe_subsystem): Add ${INITIAL_SYMBOL_CHAR} before entry symbol
259 name.
260
1b69a0bf
ILT
2611999-09-12 Ian Lance Taylor <ian@zembu.com>
262
263 * ldlang.c (open_output): Change local variable desired_endian
264 from int to enum bfd_endian.
265
be4514d3 266 * emulparams/arm_epoc_pe.sh: Define ENTRY, SUBSYSTEM and
1b69a0bf
ILT
267 INITIAL_SYMBOL_CHAR.
268 * emulparams/armpe.sh: Likewise.
269 * emulparams/morepe.sh: Likewise.
270 * emulparams/ppcpe.sh: Likewise.
be4514d3
ILT
271 * emulparams/i386pe.sh (ENTRY): Define as _mainCRTStartup.
272 (SUBSYSTEM): Define as PE_DEF_SUBSYSTEM.
1b69a0bf 273
904ecb2d
JL
274Fri Sep 10 00:22:50 1999 Jeffrey A Law (law@cygnus.com)
275
e5b08bf0
JL
276 * emulparms/elf64hppa.sh (LIB_PATH): Define.
277
904ecb2d
JL
278 * emulparms/elf64hppa.sh (OTHER_READONLY_SECTIONS): Put stubs before
279 unwinders so that they are closer to the text section.
280 (OTHER_BSS_SECTIONS): Define.
281 (EXECUTABLE_SYMBOLS): Provide __SYSTEM_ID and _FPU_STATUS.
282 (INIT_START, INIT_END): Define.
283 (FINI_START, FINI_END): Define.
284 * scripttempl/elf.sc: Add support for INIT_START, INIT_END,
285 FINI_START, FINI_END and OTHER_BSS_SECTIONS.
286
7e4d694e
JL
287Thu Sep 9 21:43:58 1999 Jeffrey A Law (law@cygnus.com)
288
289 * emulparms/elf64hppa.sh (TEXT_START_ADDR): Move up one page.
290 (DATA_ADDR): Define.
291
2f2bc1bb
RH
2921999-09-09 Stan Shebs <shebs@andros.cygnus.com>
293
294 * emulparams/d10velf.sh (READONLY_START_ADDR): Set to 0x2000004.
295
1d0a3c9c
AS
2961999-09-09 Andreas Schwab <schwab@suse.de>
297
298 * ld.texinfo: Fix arguments of @var to not contain punctuation.
299
040266ab
JL
300Thu Sep 9 05:52:34 1999 Jeffrey A Law (law@cygnus.com)
301
302 * emulparms/elf64hppa.sh (OTHER_READWRITE_SECTIONS): Define.
303
3041999-09-08 Ulrich Drepper <drepper@cygnus.com>
305
306 * emulparams/elf64hppa.sh (ELFSIZE): New. Set to 64.
307
308Wed Sep 8 00:07:39 1999 Jeffrey A Law (law@cygnus.com)
309
310 * emulparms/elf64hppa.sh (ENTRY): Define to main.
311
1c56fb87
NC
3121999-09-03 Scott Bambrough <scottb@netwinder.org>
313
314 * ld/configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
315 target "arm*-*-linux-gnu*"
316
c6c8c6dc
ILT
3171999-09-04 Steve Chamberlain <sac@pobox.com>
318
319 * configure.tgt (pjl-*-*, pj-*-*): New targets.
320 * emulparams/pjelf.sh: New file.
321 * emulparams/pjlelf.sh: New file.
322 * scripttempl/pj.sc: New file.
323 * Makefile.am (ALL_EMULATIONS): Add epjelf.o and epjlelf.o.
324 (epjelf.o, epjlelf.o): New targets.
325 * Makefile.in: Rebuild.
326
4b69d4ad
JL
327Fri Sep 3 20:17:08 1999 Jeffrey A Law (law@cygnus.com)
328
329 * emulparams/elf64hppa.sh (MAXPAGESIZE): Define.
330 (OTHER_READONLY_SECTIONS, DATA_PLT): Likewise.
331
f6e143a1
JL
332Thu Sep 2 14:32:03 1999 Jeffrey A Law (law@cygnus.com)
333
334 * emulparams/elf64hppa.sh: New file.
335 * configure.tgt (hppa*w-*-*): Use elf64hppa emulation.
336 * Makefile.am (ALL_64_EMULATIONS): Add eelf64hppa.o
337 (eelf64hppa.c): Add dependencies.
338 * Makefile.in: Rebuilt.
339
0f1ee889
NC
3401999-08-25 Philip Blundell <pb@nexus.co.uk>
341
342 * emulparams/armelf.sh (OTHER_BSS_SYMBOLS): Add __end__.
343 * emulparams/armelf_linux.sh: Likewise.
344 * emulparams/armelf_linux26.sh: Likewise.
345
8959586a
NC
3461999-08-24 Nick Clifton <nickc@cygnus.com>
347
348 From a patch submitted by Roland McGrath <roland@baalperazim.frob.com>
349
350 * configure.tgt (arm-*-netbsd*): New target.
351 * Makefile.am (ALL_EMULATIONS): Add earmnbsd.o.
352 (earmnbsd.c): New rule with deps.
353 * Makefile.on: Regenerate.
354 * emulparams/armnbsd.sh: New file.
355
3b108066
NC
3561999-08-23 Nick Clifton <nickc@cygnus.com>
357
093505ad
NC
358 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Define.
359 Implement --base-file command line switch.
360
3b108066
NC
361 * emultempl/elf32.em: Add ability for individual targets to have
362 their own command line switches by defining PARSE_AND_LIST_ARGS.
363
cd5d26f2
AS
3641999-08-19 Andreas Schwab <schwab@suse.de>
365
366 * configure.host: Use ${CC} instead of gcc for finding compiler
367 related files.
368
0811443a
NC
3691999-08-11 Nick Clifton <nickc@cygnus.com>
370
371 * scripttempl/mcorepe.sc (OUTPUT_FORMAT): Fix typo.
372
9c9ef45f
ILT
3731999-08-09 Mark Elbrecht <snowball3@bigfoot.com>
374
375 * scripttempl/i386go32.sc: Handle g++ exception sections.
376
fe9edd22
ILT
3771999-08-09 Ian Lance Taylor <ian@zembu.com>
378
379 From Wally Iimura <iimura@microunity.com>:
380 * ldlang.c (lang_size_sections): When checking whether an address
381 is within a region, don't get confused by wrapping around at the
382 end of the address space.
383
f4162f5c
ILT
3841999-08-08 Ian Lance Taylor <ian@zembu.com>
385
667f5177
ILT
386 * ldlang.c (wild_doit): Update for renaming of SEC_SHORT to
387 SEC_SMALL_DATA.
388
f4162f5c
ILT
389 * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to
390 MKDEP. Rebuild dependencies.
391 * Makefile.in: Rebuild.
392
ae97059c
ILT
3931999-08-08 Jakub Jelinek <jj@ultra.linux.cz>
394
395 * configure.host (sparc-*-linux-gnu*): New host.
396 (sparc64-*-linux-gnu*): New host.
397
597e2591
ILT
3981999-08-06 Ian Lance Taylor <ian@zembu.com>
399
3d9f6277
ILT
400 * lexsup.c (is_num): Reindent.
401 (parse_args): Mention program name in error message.
402
597e2591
ILT
403 * emultempl/ostring.sed: Rename from stringify.sed.
404 * emultempl/astring.sed: New file.
405 * Makefile.am (stringify.sed): New target.
406 (GEN_DEPENDS): Change $(srcdir)/emultempl/stringify.sed to
407 stringify.sed.
408 * configure.in: Define and substitute STRINGIFY.
409 * emultempl/*.em: Use stringify.sed from build directory rather
410 than source directory.
411 * emultempl/elf32.em: Use stringify.sed rather than inline sed
412 script.
413 * emultempl/gld960.em, emultempl/gld960c.em: Likewise.
414 * emultempl/hppaelf.em, emultempl/linux.em: Likewise.
415 * emultempl/lnk960.em, emultempl/sunos.em: Likewise.
416 * configure, Makefile.in: Rebuild.
417
a7e78dae
ILT
4181999-08-05 Donn Terry <donn@interix.com>
419
420 * emulparams/i386pe.sh: Define ENTRY, SUBSYSTEM, and
3d9f6277 421 INITIAL_SYMBOL_CHAR.
a7e78dae
ILT
422 * emulparams/i386pe_posix.sh: New file.
423 * Makefile.am (YACC): If bison is not in the source tree, use
424 @YACC@ rather than bison -y.
425 (LEX): If flex is not in the source tree, use @LEX@ rather than
426 flex.
427 (ALL_EMULATIONS): Add ei386pe_posix.o.
428 (ei386pe_posix.c): New target.
429 * configure.tgt (i[3456]86-*-interix*): New target.
430 * configure.host (i[3456]86-pc-interix*): New host.
431 * Makefile.in: Rebuild.
432
18069efc
ILT
4331999-08-03 Ian Lance Taylor <ian@zembu.com>
434
435 * emulparams/elf32ppc.sh (MAXPAGESIZE): Change to 0x10000.
436 * emulparams/elf32ppclinux.sh (MAXPAGESIZE): Likewise.
437
f7cc0a4d
ILT
4381999-08-03 H.J. Lu <hjl@gnu.org>
439
440 * Makefile.am (ALL_EMULATIONS): Remove ego32.o.
441 (ego32.c): Remove.
442 * Makefile.in: Rebuild.
443
5fa803d3
NC
4441999-07-22 Philip Blundell <pb@nexus.co.uk>
445
446 * emulparams/armelf_linux26.sh (DATA_START_SYMBOLS): Define.
447 (OTHER_BSS_SYMBOLS, OTHER_BSS_END_SYMBOLS): Likewise.
448 * emulparams/armelf_linux.sh (DATA_START_SYMBOLS): Define.
449
450 * configure.tgt (arm*-*-uclinux*, thumb-*-uclinux*,
451 thumb-*-linux-gnu*): New targets.
452
b4089fdd 4531999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
8f36e47c 454
5a1bd109
ILT
455 * scripttempl/i386go32.sc: Add handling of linkonce sections.
456
8f36e47c 457 * configure.bat: Remove; obsolete.
b4089fdd
ILT
458 * emulparams/go32.sh: Remove; obsolete.
459 * scripttempl/go32coff.sc: Remove; obsolete.
8f36e47c 460
41d390a7
ILT
4611999-07-21 H.J. Lu <hjl@gnu.org>
462
463 * configure.tgt (mips*el-*-vxworks*): New target.
464
4651999-07-21 Brad M. Garcia <bgarcia@fore.com>
466
467 * configure.tgt (i[3456]86-*-vxworks*): New target.
468
7c83b342
DE
469Tue Jul 20 15:18:46 1999 Bob Manson <manson@charmed.cygnus.com>
470
471 * ldlang.c (lang_gc_sections): Only handle the start symbol
472 specially if there is one.
473
0ca63823
MM
474Mon Jul 19 14:19:14 1999 Mark P. Mitchell <mark@codesourcery.com>
475
476 * emulparams/elf32bmipn32.sh (OTHER_RELOCATING_SECTIONS): Add
477 .MIPS.events and .MIPS.content handling.
478 * emulparams/elf64bmip.sh (OTHER_RELOCATING_SECTIONS): Likewise.
479
e50d8076
NC
4801999-07-17 Nick Clifton <nickc@cygnus.com>
481
482 * ldlang.c (get_target): New function: Return true iff the
483 given target is the target being sought.
484 (stricpy): New function: Like strcpy but convert to lower
485 case as well.
486 (strcut): New function: Like strstr but remove the located
487 substring as well.
488 (name_compare): New function: Compute a compatability rating
489 for two target names.
490 (winner): New variable: Best target found by
491 closest_target_match() so far.
492 (closest_target_match): New function: Find the target which is
493 the closest match to the original target.
494 (get_first_input_target): New function: Find the target format
495 of the first of the linker's input file.
496 (open_output): Be more clever about deciding the output target
497 format.
498
e76d716a
RH
4991999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
500
501 * emulparams/elf64_sparc.sh: Add 64-bit directories to native LIB_PATH.
502
88659ef5
MM
503Thu Jul 15 15:55:15 1999 Mark P. Mitchell <mark@codesourcery.com>
504
505 * configure.host: Set up HOSTING_CRT0 and HOSTING_LIBS for IRIX6.
506
2844ed43
ILT
5071999-07-15 Ian Lance Taylor <ian@zembu.com>
508
509 * configure.in: Bump version number to 2.9.5.
510 * configure: Rebuild.
511
0eaf9820
RH
5121999-07-14 Richard Henderson <rth@cygnus.com>
513
514 * ldlang.c (wild_doit): Copy SEC_SHORT to output section.
515
516 * scripttempl/elf.sc: Re-order .rel[a].foo outputs to the
517 same order seen for the main sections. Add
518 OTHER_READONLY_RELOC_SECTIONS and OTHER_GOT_RELOC_SECTIONS.
519
5d341b0e
AS
5201999-07-12 Andreas Schwab <schwab@suse.de>
521
49bdcdba
AS
522 * emultempl/linux.em (ld_${EMULATION_NAME}_emulation): Fill in
523 structure initializations.
524
5d341b0e
AS
525 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Add missing
526 comma in initializer.
527
87f2a346
ILT
5281999-07-11 Ian Lance Taylor <ian@zembu.com>
529
530 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
531 as appropriate. Fill in structure initializations.
532
b90d1146
ILT
5331999-07-10 Ian Lance Taylor <ian@zembu.com>
534
535 * ldfile.c: Revert patch of 1999-07-08.
536 (ldfile_try_open_bfd): If we are searching for the file, skip
537 files with an incompatible architecture.
538
6da0974a
NC
5391999-07-09 Nick Clifton <nickc@cygnus.com>
540
541 * scripttempl/armcoff.sc (OUTPUT_FORMAT): Include big endian and
542 little endian formats.
543
7a274639
NC
5441999-07-08 Felix Lee <flee@cygnus.com>
545
546 * scripttempl/mcorepe.sc: fix quoting problem, for bash 2.x
547
99f8f232
RH
5481999-07-08 Jakub Jelinek <jj@ultra.linux.cz>
549
550 * ldfile.c (ldfile_open_file_search): Skip libraries made for
551 incompatible architectures in the search path. Let the user know
552 about any such skips.
553
5c61c5ab
JL
554Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
555
556 * configure.tgt (hppa*-linux-gnu*): New target.
557
22c675a7
MM
5581999-07-07 Mark Mitchell <mark@codesourcery.com>
559
560 * Makefile.am (ALL_64_EMULATIONS): Add eelf64bmip.
561 (eelf64bmip): New target.
562 * Makefile.in: Regenerated.
563 * configure.tgt (mips-sgi-irix6*): Add 64-bit emulation.
564 * emulparams/elf64bmip.sh: New file.
565
f11523b0
NC
5661999-07-05 Nick Clifton <nickc@cygnus.com>
567
568 * emultempl/pe.em (after_open): Abort if input format is ARM and
569 output format is not.
570 * emultempl/armcoff.em (after_open): Abort if input format is ARM
571 and output format is not.
572 * emultempl/armelf.em (after_open): Abort if input format is ARM
573 and output format is not.
574
39e878bf
ILT
5751999-07-02 Ian Lance Taylor <ian@zembu.com>
576
577 * ldlang.c: Revert change of 1999-06-23.
578
dc831978
MM
5791999-06-30 Mark Mitchell <mark@codesourcery.com>
580
581 * Makefile.am (ALL_EMULATIONS): Add eelf32bmipn32.o.
582 (eelf32bmipn32.c): New target.
583 * Makefile.in: Regenerated.
584 * configure.tgt (mips-sgi-irix6*): Make n32 the default
585 emulation.
586 * emulparams/elf32bmipn32.sh: New file.
587
a0290afa
NC
5881999-06-28 Jim Pick <jim@jimpick.com>
589
590 * emultempl/armelf.em: Added code so that .xs linker scripts are
591 called so that ARM shared libraries are built correctly.
592
3dbf70a2
MM
5931999-06-22 Mark Mitchell <mark@codesourcery.com>
594
595 * ldmain.c (main): Initialize link_info.init_function and
596 link_info.fini_function.
597 * lexsup.c (OPTION_INIT): New macro.
598 (OPTION_FINI): Likewise.
599 (ld_options): Add descriptions for them.
600 (parse_args): Handle them.
601
7b9eea34
ILT
6021999-06-23 Ian Lance Taylor <ian@zembu.com>
603
604 * ldlang.c (section_already_linked): Only discard link once
605 sections if we are building constructors.
606
5c6bbab8
NC
6071999-06-22 Nick Clifton <nickc@cygnus.com>
608
609 * ld.texinfo (Location Counter): Describe behaviour of
610 location counter inside section statements.
611
a8e53fb0
MM
6121999-06-20 Mark Mitchell <mark@codesourcery.com>
613
614 * scripttempl/elf.sc (WRITABLE_RODATA): New variable for
615 controlling whether or not .rodata is in the data segment or the
616 text segment.
617
6f798e5c
NC
6181999-06-18 Nick Clifton <nickc@cygnus.com>
619
620 * emultempl/pe.em: Add new command line switch --thumb-entry.
621 * emultempl/armelf.em: Add new command line switch --thumb-entry.
622 * emultempl/armcoff.em: Add new command line switch --thumb-entry.
623 * ld.texinfo: Document new ARM command line switch: --thumb-entry.
ba2be581
RH
6241999-06-20 H.J. Lu <hjl@gnu.org>
625
626 * configure.in (all_libpath): Accumulate across all enabled targets.
627
f97f7300
RH
628Sun Jun 20 14:10:33 1999 Richard Henderson <rth@cygnus.com>
629
630 * emultempl/armelf.em: Watch EMULATION_LIBPATH instead of
631 DEFAULT_EMULATION.
632 * emultempl/elf32.em: Likewise.
633 * emultempl/sunos.em: Likewise.
634
3336653a
RH
635Fri Jun 18 15:24:48 1999 Richard Henderson <rth@cygnus.com>
636
637 * Makefile.am (GENSCRIPTS): Pass EMULATION_LIBPATH, not EMUL.
638 * configure.in (all_emuls): Add targ_extra_libpath.
639 (all_libpath, EMULATION_LIBPATH): Define.
640 * configure.tgt (powerpc-*-linux-gnu*): Define targ_extra_libpath.
641 * genscripts.sh (LIB_PATH): Define if emulation in EMULATION_LIBPATH.
642
308b1ffd
AS
643Mon Jun 14 10:38:36 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
644
645 * ld.texinfo: Fix use of @item vs. @itemx.
646
aa8804e4
ILT
6471999-06-13 Ian Lance Taylor <ian@zembu.com>
648
649 From Thomas Zenker <thz@lennartz-electronic.de>:
650 * ldgram.y (attributes_opt): Use attributes_list instead of NAME.
651 (attributes_list, attributes_string): New nonterminals.
652 * ldlang.c (lang_set_flags): Add invert parameter. Don't handle
653 '!'.
654 * ldlang.c (lang_set_flags): Update declaration.
655
2a275620
ILT
6561999-06-12 Ian Lance Taylor <ian@zembu.com>
657
658 * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Don't add
659 entry_symbol as an undefined symbol when doing a relocateable
660 link. From <jeffdb@goodnet.com>.
661
2641b0c9
ILT
6621999-06-12 David O'Brien <obrien@freebsd.org>
663
664 * configure.tgt: (i[3456]86-*-freebsd*): Now defaults to ELF.
665
f75692fe
NC
6661999-06-09 Nick Clifton <nickc@cygnus.com>
667
668 * lexsup.c (help): Restore previous format of output.
669
434d1125
NC
6701999-06-04 Nick Clifton <nickc@cygnus.com>
671
672 * emultempl/pe.em: If compiling for arm_epoc_pe rename
673 interworking functions to avoid a name space clash.
674
4305932a
RH
6751999-06-02 Jason Merrill <jason@yorick.cygnus.com>
676
677 * scripttempl/v850.sc: Add initp support.
678
46d23b7c
NC
6791999-06-02 Nick Clifton <nickc@cygnus.com>
680
681 * emultempl/pe.em: Rename global arm interworking functions to
682 avoid name collision when all targets BFD is built.
683
cd785be6
RH
6841999-05-30 Cort Dougan <cort@attis.cs.nmt.edu>
685
686 * Makefile.am (ALL_EMULATIONS): Add eelf32ppclinux.o.
687 * configure.tgt (powerpc-*-linux-gnu): Use it.
688 * emulparams/elf32ppclinux.sh: New file.
689
511ab9e9
ILT
6901999-05-29 Ian Lance Taylor <ian@zembu.com>
691
692 * ld.texinfo (Options): Clarify that options which refer to files
693 must be properly ordered.
694
7ca69e9e
NC
6951999-05-29 Nick Clifton <nickc@cygnus.com>
696
697 * emultempl/armelf.em (..._parse_args): New function: Parse
698 command line option. Accept arm-elf specific command line option
699 '-p' or '--no-pipeline-knowledge'.
700 (..._list_options): New function: Describe the new command line
701 option.
702 (..._before_allocation): Pass the value of the new variable
703 no_pipeline_knowledge to bfd_elf32_arm_process_before_allocation.
704
705 * emultemp/armelf_oabi.em (..._before_allocation): Pass zero as
706 the third parameter to bfd_elf32_arm_process_before_allocation.
707
b3043ee4
NC
7081999-05-28 Nick Clifton <nickc@cygnus.com>
709
710 * lexsup.c (help): Minor formatting changes.
711
0ccf812a
ILT
7121999-05-28 Martin Dorey <mdorey@madge.com>
713
714 * configure.tgt (i960-*-elf*): New target.
715 * emulparams/elf32_i960.sh: New file.
716 * Makefile.am (ALL_EMULATIONS): Add eelf32_i960.o.
717 (eelf32_i960.c): New target.
718 * Makefile.in: Rebuild.
719
a13cba0d
NC
7201999-05-26 Nick Clifton <nickc@cygnus.com>
721
722 * emulparams/armelf_oabi.sh (TEMPLATE_NAME): Set to armelf_oabi.
723
31ce0628
NC
7241999-05-24 Philip Blundell <philb@gnu.org>
725
726 * emultempl/armelf.em (before_parse): Set config.dynamic_link and
727 config.has_shared.
728 * emulparams/armelf.sh (GENERATE_SHLIB_SCRIPT): Define.
729 * emulparams/armelf_linux.sh (GENERATE_SHLIB_SCRIPT): Likewise.
730
1220a729
NC
7311999-04-13 Philip Blundell <philb@gnu.org>
732
733 * emultempl/armelf.em: Add definitions related to shared objects
734 (copied from elf32.em).
735
3699964a
AS
736Wed May 19 12:44:26 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
737
738 * Makefile.am (ALL_EMULATIONS): Remove earmlinux.o and
739 earm26linux.o, add earmelf_linux.o and earmelf_linux26.o.
740 * Makefile.in: Regenerated.
741
06f2f02a
NC
7421999-05-16 Nick Clifton <nickc@cygnus.com>
743
744 * emulparams/elf32mcore.sh (GENERATE_SHLIB_SCRIPT): Define.
745 (TEMPLATE_NAME): Define.
746
de24ad21
RH
747Thu May 13 09:48:09 1999 Joel Sherrill (joel@OARcorp.com)
748
749 * configure.tgt (i386-*-rtemself*, sh-*-rtemself*): New targets.
750 (mips*el-*-rtems*, powerpcle-*-rtems*): New targets.
751
c6c37250
DD
7521999-05-10 DJ Delorie <dj@cygnus.com>
753
754 * scripttempl/pe.sc: Specify the output arch, which Ian says is
755 the Right Thing to do.
756
757 * emultempl/pe.em: various changes to parameterize the
758 target-specific information.
759 (gld_i386pe_after_open): Detect and fix MS import libraries
760 by renaming the member objects (which are all named the same).
761
762 * pe-dll.c: various changes to parameterize the target-specific
763 information.
764 (generate_reloc): support relocs more generically to allow for
765 expansion.
766 (pe_exe_build_sections): new; used to add .relocs to .exes
767 (pe_exe_fill_sections): ditto
768
626e0105
CM
7691999-05-10 Catherine Moore <clm@cygnus.com>
770
771 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
772 Check for TARGET_IS_arm_epoc_pe.
773 (gld_${EMULATION_NAME}_before_allocation): Likewise.
774
4dec4d4e
RH
7751999-05-12 Anthony Green <green@cygnus.com>
776
777 * ldlang.c (walk_wild, walk_wild_file, walk_wild_section,
778 output_section_callback, gc_section_callback): New functions for
779 generic section walks.
780 (wild, lang_gc_wild): Use walk_wild.
781 (wild_file, lang_gc_wild_file): Deleted. Common logic moved to
782 walk_wild_file.
783 (wild_section, lang_gc_wild_section): Deleted. Common logic moved
784 to walk_fild_section. Unique logic moved into callbacks
785 output_section_callback and gc_section_callback.
786
252b5132
RH
7871999-04-26 Tom Tromey <tromey@cygnus.com>
788
789 * aclocal.m4, configure: Updated for new version of libtool.
790
252b5132
RH
7911999-04-12 Philip Blundell <pb@nexus.co.uk>
792
793 * emulparams/armelf_linux.sh: New file. Support for ARM
794 GNU/Linux ELF ABI.
795 * emulparams/armelf_linux26.sh: New file. APCS-26 version of above.
796 * configure.tgt: For arm*-*-linux-gnu*, set default emulation to
797 `armelf_linux', and also include `armelf_linux26' and `armelf'.
798 * Makefile.am: Add rules to make earmlinux.c and earmlinux26.c.
799 (ALL_EMULATIONS): Add earmlinux.o and earmlinux26.o.
800 * Makefile.in: Regenerate.
801
8021999-04-11 Richard Henderson <rth@cygnus.com>
803
804 * Makefile.am (ALL_EMULATIONS): Add elf_i386_be.o.
805 * configure.tgt (i[3456]86-*-beos*): Use it.
806 * emulparams/elf_i386_be.sh: New file.
807 * Makefile.in: Rebuild.
808
809 * configure.in (environ): Detect declaration.
810 * ldmain.c (main): Don't declare environ.
811 * sysdep.h (environ): Declare if needed.
812 * configure, config.in: Rebuild.
813
8141999-04-11 Richard Henderson <rth@cygnus.com>
815
816 * ldgram.y (ldgram_vers_current_lang): New.
817 (vers_defns): Accept `extern "lang" { }' syntax.
818 * ldlex.l (vers_node_nesting): New.
819 (V_IDENTIFIER): Accept . and $ in symbols.
820 (VERS_NODE): Accept `extern "lang" { }' tokens. Nest VERS_NODE states.
821 * ldlang.c (lang_new_vers_regex): New `lang' argument. Update callers.
822 (lang_vers_match_lang_c): New function.
823 (lang_vers_match_lang_cplusplus): New function.
824 (lang_vers_match_lang_java): New function.
825 (lang_do_version_exports_section): Fix iteration. Don't free
826 section contents, as it is still in use by the patterns.
827
8281999-04-10 Richard Henderson <rth@cygnus.com>
829
830 * ldmain.c (main): Init link_info.no_undefined.
831 * lexsup.c: Add command-line option --no-undefined.
832
252b5132
RH
8331999-04-06 Ian Lance Taylor <ian@zembu.com>
834
835 * ld.h (LC_MESSAGES): Never define.
836 * ldmain.c (main): Don't pass LC_MESSAGES to setlocale if the
837 system does not define it.
838
8391999-04-06 H.J. Lu <hjl@gnu.org>
840
841 * ldmain.h (demangling): Declare.
842 * ldmain.c (demangling): New global variable.
843 (main): Initialize demangling.
844 * ldmisc.c (vfinfo): Don't demangle symbol if ! demangling.
845 * lexsup.c (ld_options, parse_args): Handle --demangle and
846 --no-demangle.
847 * ld.texinfo, ld.1: Document --demangle/--no-demangle.
848
849 * ldlex.l (V_IDENTIFIER): Allow '.' in symbol.
850
8511999-04-05 Chris Torek <torek@BSDI.COM>
852
853 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Check that
854 a shared library really exists, avoiding broken symlinks.
855
856 * ldfile.c (ldfile_open_file): Generate a better error message if
857 we can't find a -l file.
858
8591999-04-05 DJ Delorie <dj@cygnus.com>
860
861 * configure.tgt (i386-*-pe): add targ_extra_ofiles for other PE
862 targets (i386-pe and i386-winnt)
863
8641999-04-04 Ian Lance Taylor <ian@zembu.com>
865
866 * deffilep.y: Include "sysdep.h" and "ldmisc.h".
867 (def_file_add_directive): Change return type to void. Remove
868 unused locals sh_reserve, sh_commit, and j.
869 (def_ungetc): Always return a value.
870 (def_lex): Correct parenthesization of || within &&.
871 * deffile.h (def_file_add_directive): Update declaration.
872 * pe-dll.c: Include <time.h>, <ctype.h>, and "ldemul.h".
873 (generate_edata): Remove unused local i.
874 (quoteput): Add cast to avoid warning.
875 (pe_dll_generate_def_file): Fix type in format string.
876 (quick_symbol): Remove unused local blhe.
877 (pe_dll_generate_implib): Add cast to avoid warning.
878 (pe_process_import_defs): Remove unused locals ar_head, ar_tail,
879 and n.
880 (pe_as16): Comment out.
881
8821999-04-04 Don Bowman <don@pixsci.com>
883
884 * configure.tgt: Add mips*-*-vxworks* target.
885
8861999-03-31 Nick Clifton <nickc@cygnus.com>
887
888 * Makefile.in (ALL_EMULATIONS): Add earm_epoc_pe.o
889 Add build rule and dependencies for earm_epoc_pe.c.
890
891 * emulparams/arm_epoc_pe.sh: New file.
892
893 * configure.tgt: Add 'targ_extra_ofiles' for ARM based PE
894 targets.
895
8961999-03-31 Philip Blundell <pb@nexus.co.uk>
897
898 * configure.tgt: Match `arm*-*-linux-gnu*' not
899 `armv*-*-linux-gnu'.
900
9011999-03-26 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
902
903 * scripttempl/elf.sc: Put the .eh_frame and .gcc_except_table
904 sections in the data segment.
905
906Fri Mar 26 12:05:51 1999 Catherine Moore <clm@cygnus.com>
907
908 * ld.h (wildcard_spec): Add exclude_name.
909 * ldgram.y (EXCLUDE_FILE): New token.
910 (wildcard_spec): Set exclude_name.
911 (file_NAME_list): Recognize EXCLUDE_FILE.
912 * ldlang.c (wild_section): Check for excluded files.
913 (print_wild_statement): Print excluded files.
914 (lang_add_wild): New argument exclude_filename.
915 Set exclude_filename.
916 * ldlang.h (lang_wild_statement_type): Add exclude_filename.
917 * ldlex.l: New token EXCLUDE_FILE.
918 * mri.c (mri_draw_tree): Add argument to lang_add_wild.
919 * scripttempl/elf.sc (CTOR, DTOR): Exclude crtend.o from ctor wildcard.
920 Reorder sorted and unsorted ctors.
921 * scripttempl/elfd10v.sc (CTOR, DTOR): Likewise.
922 * scripttempl/elfd30v.sc (CTOR, DTOR): Likewise.
923 * scripttempl/elfppc.sc (CTOR, DTOR): Likewise.
924
9251999-03-26 Nick Clifton <nickc@cygnus.com>
926
927 * ldlang.c (lang_gc_sections): If entry_symbol is not defined,
928 default to "start".
929
9301999-03-03 Nick Clifton <nickc@cygnus.com>
931
932 * scripttempl/elf.sc: Add explicit placements for the .eh_frame
933 and .gcc_except_table sections.
934
935Wed Mar 3 09:13:34 1999 Catherine Moore <clm@cygnus.clm>
936
937 * scripttempl/elf.sc: Remove .end.ctors and .end.dtors
938 sections. Reorder .ctors section entries.
939 * scripttempl/elfd10v.sc: Likewise.
940 * scripttempl/elfd30v.sc: Likewise.
941 * scripttempl/elfppc.sc: Likewise.
942
9431999-02-26 Jim Lemke <jlemke@cygnus.com>
944
945 * ldmain.c (main): Wrong error msg for -r and --mpc860c0.
946
9471999-02-25 Nick Clifton <nickc@cygnus.com>
948
949 * ldlang.c (lang_check_section_addresses): Remove extraneous
950 backslash.
951
952Thu Feb 25 15:07:24 1999 Catherine Moore <clm@cygnus.com>
953
954 * scripttempl/elf.sc: Don't gather .ctor and .dtor sections
955 for relocateable links.
956 * scripttempl/elfd10v.sc: Likewise.
957 * scripttempl/elfd30v.sc: Likewise.
958 * scripttempl/elfppc.sc: Likewise.
959
9601999-02-22 Jim Lemke <jlemke@cygnus.com>
961
962 * ldint.texinfo: remove extraneous right brace.
963 * ldmain.c (main): initialize and check option "mpc860c0".
964 * lexsup.c (ld_options, parse_args): add option "mpc860c0".
965
966Wed Feb 17 12:10:06 1999 Stan Cox <scox@cygnus.com>
967
968 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Remove special
969 .reginfo section handling.
970 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Likewise.
971 * emulparams/elf32elmip.sh (INITIAL_READONLY_SECTIONS): Removed
972 * emulparams/elf32ebmip.sh (INITIAL_READONLY_SECTIONS): Removed
973
9741999-02-17 Nick Clifton <nickc@cygnus.com>
975
976 Patch from: Scott Bambrough <scottb@corelcomputer.com>
977
978 * configure.tgt: Added armv*-*-linux-gnu to $targ_emul
979 recognition.
980
981Wed Feb 17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
982
983 * emultempl/armelf_oabi.em
984 (bfd_elf32_arm_allocate_interworking_sections,
985 bfd_elf32_arm_get_bfd_for_interworking,
986 bfd_elf32_arm_process_before_allocation): Define them to use the
987 old ABI versions of the functions.
988
989Tue Feb 16 16:48:19 1999 Ian Lance Taylor <ian@cygnus.com>
990
991 * configure.in: Change AC_PREREQ to 2.13. Change AM_PROG_INSTALL
992 to AC_PROG_INSTALL. Change AM_EXEEXT to AC_EXEEXT.
993 * Makefile.am (earmelf_oabi.c): Changes spaces to tab.
994 * acconfig.h: Remove.
995 * aclocal.m4: Rebuild.
996 * configure: Rebuild.
997 * Makefile.in: Rebuild.
998
999Mon Feb 15 18:21:48 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
1000
1001 * ldexp.h (struct etree_value_type): Change valid onto valid_p.
1002
1003 * ldexp.c (new_abs): Ditto.
1004 (new_rel, new_rel_from_section, fold_binary, invalid, fold_name,
1005 exp_fold_tree, exp_binop, exp_trinop, stat_alloc,
1006 exp_get_abs_int): Ditto
1007
1008 * ldlang.c (print_assignment, lang_size_sections,
1009 lang_do_assignments): Ditto.
1010
10111999-02-11 Nick Clifton <nickc@cygnus.com>
1012
1013 * ldlang.c (lang_check_section_addresses): New function: Check
1014 addresses assigned to section for overlaps.
1015 (lang_process): Call lang_check_section_addresses if suitable.
1016
1017 * ld.h: Add new boolean field to args_type structure:
1018 'check_section_addresses'.
1019
1020 * ldmain.c: Initialise check_section_addresses field to true.
1021
1022 * lexsup.c: Add new command line options '--no-check-sections' and
1023 '--check-sections'.
1024
1025 * ld.texinfo: Document new command line options '--check-sections'
1026 and '--no-check-sections'.
1027
10281999-02-08 Nick Clifton <nickc@cygnus.com>
1029
1030 * configure.tgt: Add support for StrongARM target.
1031
1032Wed Feb 3 19:41:01 1999 Ian Lance Taylor <ian@cygnus.com>
1033
1034 * ldctor.c (ldctor_build_sets): Just set SEC_KEEP once. Check for
1035 an owner of a section before using it to look up a reloc type.
1036 Don't set SEC_KEEP for the absolute section.
1037
1038Mon Feb 1 11:39:46 1999 Catherine Moore <clm@cygnus.com>
1039
1040 * Makefile.am (earmelf_oabi.o): New.
1041 * Makefile.in: Regenerate.
1042 * configure.tgt (arm-*-oabi): New.
1043 (thumb-*-oabi): New.
1044 * emulparams/armelf_oabi.sh: New.
1045 * emultempl/armelf_oabi.em: New.
1046
10471999-01-31 17:57:31 1998 Michael Meissner <meissner@cygnus.com>
1048
1049 * scripttempl/elfppc.sc: Add support for -fleading-underscores
1050 switch in all linker generated symbols.
1051
1052 * configure.tgt (powerpc{,le}*-*-vxworks): Add as aliases for
1053 powerpc{,le}-*-eabi.
1054
1055Wed Jan 20 17:01:48 1999 Ian Lance Taylor <ian@cygnus.com>
1056
1057 * configure.tgt (i[3456]86-*-solaris2*): New target. From Pavel
1058 Roskin <pavel_roskin@geocities.com>.
1059
10601999-01-19 Nick Clifton <nickc@cygnus.com>
1061
1062 * ldlang.c (lang_size_sections): Count loadable sections as
1063 contributing to the size of the current segment.
1064
10651999-01-15 Nick Clifton <nickc@cygnus.com>
1066
1067 * ldlang.c (lang_size_sections): Only update the current
1068 address of a region if the section just placed into it is an
1069 allocated section.
1070
10711999-01-12 Nick Clifton <nickc@cygnus.com>
1072
1073 * Makefile.am: Replace efr30.o with eelf32fr30.o.
1074 * Makefile.in: Regenerate.
1075
1076 * configure.tgt: Replace fr30 with elf32fr30.
1077
1078 * emulparams/elf32fr30.sh: New file: Replaces fr30.sh, and uses
1079 generic elf.sc script. Also replaces the .stack section with a
1080 user definable symbol __stack.
1081
10821999-01-11 Nick Clifton <nickc@cygnus.com>
1083
1084 * scripttempl/fr30.sc: Fill .init and .fini sections with NOP
1085 pattern.
1086
10871999-01-03 Ken Raeburn <raeburn@cygnus.com>
1088
1089 * Makefile.am (check-DEJAGNU): No longer provide HOSTING_EMU,
1090 HOSTING_CRT0, HOSTING_LIBS; the test suite can extract them from
1091 configure.host and configure.tgt now.
1092 * Makefile.in: Rebuild.
1093
10941998-12-27 Ulrich Drepper <drepper@cygnus.com>
1095
1096 * lexsup.c (parse_args, case OPTION_RPATH): Avoid adding duplicate
1097 elements to rpath.
1098
1099Thu Dec 10 11:12:28 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1100
1101 * Makefile.am (ALL_EMULATIONS): Remove pe-dll.o and deffilep.o.
1102 (ALL_EMUL_EXTRA_OFILES): New variable. Put them here instead.
1103 * configure.in: Set EMUL_EXTRA_OFILES to $(ALL_EMUL_EXTRA_OFILES)
1104 if configuring with all targets.
1105 * configure, Makefile.in, aclocal.m4: Rebuild.
1106
1107 * emultempl/pe.em (pe_enable_stdcall_fixup): Make static.
1108 (pe_dll_do_default_excludes): Removed, unused.
1109 (pe_def_file, pe_dll_export_everything, pe_dll_kill_ats,
1110 pe_dll_stdcall_aliases): Don't initialize them, this file may be
1111 compiled more than once.
1112 * pe-dll.c (pe_def_file, pe_dll_export_everything,
1113 pe_dll_do_default_excludes, pe_dll_kill_ats,
1114 pe_dll_stdcall_aliases): Define and initialize them here instead.
1115 (generate_reloc): Fix allocation of reloc_addresses array to use
1116 bfd_vma instead of unsigned long. Fix element size in qsort call.
1117 (reloc_sort): Compare pointers to bfd_vma instead of unsigned
1118 long.
1119
1120Mon Dec 7 21:10:09 1998 J.J. van der Heijden <j.j.vanderheijden@student.utwente.nl>
1121
1122 * configure.tgt (i[3456]86-*-mingw32*): Add cygwin target specific
1123 files.
1124
1125Sun Dec 6 16:33:33 1998 Ian Lance Taylor <ian@cygnus.com>
1126
1127 * configure.tgt (m68*-*-gnu*): New target. From Aymeric Vincent
1128 <aymeric.vincent@emi.u-bordeaux.fr>.
1129
11301998-12-04 Nick Clifton <nickc@cygnus.com>
1131
1132 * emulparams/fr30.sh (TEXT_START_ADDR): Change TEXT_START_ADDR
1133 from 0x100000 to 0x10000 so that it fits in 20 bits.
1134
1135Sat Nov 28 22:32:20 1998 Ian Lance Taylor <ian@cygnus.com>
1136
1137 * ldemul.h (ldemul_recognized_file): Declare.
1138
1139Sat Nov 28 22:30:55 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1140
1141 * ldlang.c (lang_add_wild): Don't pretend that there is an input
1142 file if the filename is a wildcard pattern.
1143
11441998-11-25 DJ Delorie <dj@cygnus.com>
1145
1146 * ldemul.h (ld_emulation_xfer_struct): new hook "recognized_file"
1147 * ldemul.c (ldemul_recognized_file): new function, new hook
1148 * ldint.texinfo: document new hook.
1149 * ldlang.c (load_symbols): call recognized_hook for all objects we
1150 do recognize, in case the emulation needs to handle them
1151 specially. PE DLLs use this.
1152 * pe-dll.c (pe_dll_generate_def_file): take out hack and debug
1153 printfs
1154 * emultempl/pe.em (gld_i386_recognized_file): new function
1155 (gld_i486_unrecognized_file): take out hack
1156
11571998-11-23 DJ Delorie <dj@cygnus.com>
1158
1159 * pe-dll.c (fill_edata): fill in timestamp
1160 (make_head): name object files sequentially to ensure
1161 they link in the right order.
1162 (make_tail): same here
1163 (pe_process_import_defs): use sequential names for bfds to ensure
1164 proper link order.
1165 (pe_implied_import_dll): new function; handles linking directly
1166 against DLLs by simulating IMPORTS directives. * emultempl/pe.em
1167 (gld_i386pe_before_parse): hack bfd to not recognize .dll files
1168 via bfd_pe_dll_not_recognized_hack
1169
11701998-11-23 DJ Delorie <dj@cygnus.com>
1171
1172 * emultempl/pe.em (gld_i386pe_parse_args): Conditionalize call to
1173 pe_dll_add_excludes
1174
1175Mon Nov 23 14:36:18 1998 Nick Clifton <nickc@cygnus.com>
1176
1177 * emultempl/pe.em (after_parse): Only create an undefined entry
1178 symbol if one has been specified.
1179
11801998-11-23 DJ Delorie <dj@cygnus.com>
1181
1182 * emultempl/pe.em (gld_i386pe_after_open): call
1183 pe_process_import_defs
1184 * pe-dll.c (pe_dll_generate_def_file): calculate BASE from
1185 pe_data, only print if actually set. Print version only if
1186 set.
1187 (save_relocs): save relocs for both input and output.
1188 (make_one): support internal/external different names.
1189 (pe_dll_generate_implib): support new make_one
1190 (pe_process_import_defs): new function; handles IMPORT
1191 directives in .def files.
1192
1193Fri Nov 20 13:06:49 1998 Nick Clifton <nickc@cygnus.com>
1194
1195 * ldmisc.c (vfinfo): Cope with empty symbol names.
1196
1197Thu Nov 19 13:31:15 1998 Nick Clifton <nickc@cygnus.com>
1198
1199 * scripttempl/pe.sc: Add provision of '_end' symbol.
1200
1201Wed Nov 18 18:18:43 1998 Geoffrey Noer <noer@cygnus.com>
1202
1203 * configure.tgt: change refs from cygwin32* to cygwin*.
1204 * aclocal.m4: regenerate
1205 * configure.in: don't need to call AM_CYGWIN32.
1206 * configure: regenerate
1207
1208Mon Nov 16 22:14:07 1998 DJ Delorie <dj@cygnus.com>
1209
1210 * emultempl/pe.em (gld_i386_finish): generate import library
1211 * deffile.h: add hint member.
1212 * pe-dll.c (pe_dll_generate_implib): New function with helpers;
1213 generates the import library directly from the export table.
1214 (fill_edata): remember the actual hint for the import library.
1215
1216Sat Nov 14 14:36:24 1998 Ian Lance Taylor <ian@cygnus.com>
1217
1218 * ld.1: Some cleanups from NOKUBI Hirotaka <hnokubi@yyy.or.jp>.
1219
1220Thu Nov 12 19:21:57 1998 Dave Brolley <brolley@cygnus.com>
1221
1222 * po/ld.pot: Regenerated.
1223 * po/POTFILES.in: Regenerated.
1224 * configure: Regenerated.
1225 * aclocal.m4: Regenerated.
1226 * Makefile.in: Regenerated.
1227
1228Wed Nov 11 18:10:15 1998 DJ Delorie <dj@cygnus.com>
1229
1230 * pe-dll.c (generate_reloc): don't output PE relocs for sections
1231 that won't be loaded.
1232
1233Wed Nov 11 13:44:54 1998 DJ Delorie <dj@cygnus.com>
1234
1235 * pe-dll.c (fill_edata): don't strip underscores
1236
1237Tue Nov 10 21:28:19 1998 DJ Delorie <dj@cygnus.com>
1238
1239 * ld.texinfo: added i386pe option summary
1240
1241Tue Nov 10 17:53:17 1998 DJ Delorie <dj@cygnus.com>
1242
1243 * pe-dll.c (process_def_file): properly note undefined exported
1244 symbols, clean up old code.
1245 (pe_dll_generate_def_file): don't crash if pe_def_file is NULL
1246 * emultempl/pe.em (gld_i386_parse_args): add
1247 (en/dis)able-stdcall-fixups
1248 (pe_fixup_stdcalls): warn about stdcall fixups
1249 (gld_i386_unrecognized_file): make exported symbols undefs so that
1250 archive members get pulled in
1251
1252Tue Nov 10 14:50:51 1998 Catherine Moore <clm@cygnus.com>
1253
1254 * scripttempl/elfd10v.sc: Add KEEP attribute to .init,
1255 .fini, .dtors and .ctors. Add .data and .text
1256 wildcards to support section garbage collection.
1257
1258Mon Nov 9 22:52:50 1998 DJ Delorie <dj@indy.delorie.com>
1259
1260 * deffilep.y: properly handle relocs with multiple def_files,
1261 cache import module names
1262
1263Mon Nov 9 22:44:58 1998 DJ Delorie <dj@cygnus.com>
1264
1265 * pe-dll.c (process_def_file): don't assume exports won't move
1266 during a realloc
1267
1268Mon Nov 9 16:41:30 1998 DJ Delorie <dj@cygnus.com>
1269
1270 * pe-dll.c: New file; direct support for PE DLLs
1271 * deffile.h: New file; direct support for PE DLLs
1272 * deffilep.y: New file; direct support for PE DLLs
1273 * emultempl/pe.em: add direct support for PE DLLs
1274 * configure.tgt: allow target-specific extra files
1275 * configure.in: allow target-specific extra files
1276 * ldlang.c (lang_add_assignment): return the assignment so that
1277 one can change the value later based on the object files (pe-dll
1278 DEF files do this)
1279 * ldint.texinfo: add section for emulation walkthrough
1280 * Makefile.am: add new files and target-specific extra files
1281 * emultempl/pe.em (gld_i386_list_options): list dll-specific
1282 options.
1283 * pe-dll.c (process_def_file): auto-export everything if
1284 nothing is otherwise exported.
1285
1286Wed Nov 4 16:39:18 1998 Nick Clifton <nickc@cygnus.com>
1287
1288 * Makefile.am: Add support for FR30 target.
1289 * configure.tgt: Add support for FR30 target.
1290 * Makefile.in: Regenerate.
1291 * emulparams/fr30.sh: New file.
1292 * scripttemp/fr30.sc: New file.
1293
1294Mon Nov 2 14:47:15 1998 Catherine Moore <clm@cygnus.com>
1295
1296 * ldmain.c (main): Don't report error for dynamic links and
1297 --gc-sections.
1298
12991998-10-26 16:05 Ulrich Drepper <drepper@cygnus.com>
1300
1301 * lexsup.c (ld_options): Change text of -O to Optimize output file".
1302 (parse_args): Set link_info.optimize based on -O argument.
1303 * ldmain.c (main): Initialize link_info.optimze to false.
1304 * ld.texinfo: Describe -O option.
1305 * ld.1: Likewise.
1306
1307Mon Oct 12 14:29:56 1998 Nick Clifton <nickc@cygnus.com>
1308
1309 * scripttempl/v850.sc: Move .sbss and .scommon sections into their
1310 own segment, so that they can be next to the .bss section and so
1311 initialised by the same piece of code.
1312
1313Fri Oct 9 15:59:52 1998 Catherine Moore <clm@cygnus.com>
1314
1315 * scripttempl/elf.sc: Merge .sdata.* etc sections.
1316 * ldctor.c (ldctor_build_sets): Set SEC_KEEP for
1317 ctor sections.
1318
1319Mon Oct 5 09:40:43 1998 Catherine Moore <clm@cygnus.com>
1320
1321 * ldmain.c (main): Error if --gc-sections and
1322 dyanmic linking.
1323 * scripttempl/v850.sc: Add KEEP attribute to .init,
1324 .fini, .dtors and .ctors. Add .data and .text
1325 wildcards to support section garbage collection.
1326
1327Wed Sep 30 11:19:15 1998 Nick Clifton <nickc@cygnus.com>
1328
1329 * scripttempl/v850.sc: Rename .call_table section to
1330 .call_table_data and create a new section called
1331 .call_table_text.
1332
1333Sun Sep 20 00:43:26 1998 Ian Lance Taylor <ian@cygnus.com>
1334
1335 * scripttempl/elf.sc: Add alignment at the end of the .bss
1336 section, so that it is included in the memsize of the segment.
1337
1338Fri Sep 18 13:42:42 1998 Catherine Moore <clm@cygnus.com>
1339
1340 * emultempl/elf32.em (gld_place_orphan): Don't process for
1341 sections with SEC_EXCLUDE flag.
1342
1343Fri Sep 4 09:24:02 1998 Nick Clifton <nickc@cygnus.com>
1344
1345 * emulparams/d30velf.sh (TEXT_SIZE): Increased to 2000K.
1346 (DATA_SIZE): Increased to 2000K.
1347
1348Thu Sep 3 17:30:58 1998 Richard Henderson <rth@cygnus.com>
1349
1350 * emulparams/d10velf.sh (TEMPLATE_NAME): Use elf32.
1351
1352Mon Aug 31 01:06:00 1998 Catherine Moore <clm@cygnus.com>
1353
1354 * Makefile.am: Change armelf.sc to elf.sc
1355 * Makefile.in: Regenerate.
1356
1357Mon Aug 31 11:12:04 1998 Catherine Moore <clm@cygnus.com>
1358
1359 * emulparams/armelf.sh: Change SCRIPT_NAME to
1360 elf. Change TEXT_START_ADDR to 0x8000. Define
1361 OTHER_TEXT_SECTIONS, OTHER_BSS_SYMBOLS and
1362 OTHER_BSS_END_SYMBOLS.
1363 * scripttempl/elf.sc: Modify to use
1364 OTHER_BSS_END_SYMBOLS.
1365 * scripttempl/elfarm.sc: Remove file.
1366
1367Tue Aug 18 12:05:34 1998 Catherine Moore <clm@cygnus.com>
1368
1369 * emultempl/armelf.em (gld_armelf_before_allocation):
1370 Add bfd_ prefix to elf32_arm_process_before_allocation
1371 and elf32_arm_allocate_interworking_sections.
1372 (gld_armelf_after_open): Add bfd_ prefix to
1373 elf32_arm_get_bfd_for_interworking.
1374
1375Fri Aug 14 15:34:29 1998 Ian Lance Taylor <ian@cygnus.com>
1376
1377 * Makefile.am: Rebuild dependencies.
1378 * Makefile.in: Rebuild.
1379
1380 * ldgram.y: Include "ldctor.h".
1381 (statement): Accept SORT around CONSTRUCTORS.
1382 * ldctor.c: Include <ctype.h>.
1383 (constructors_sorted): New global variable.
1384 (ctor_prio, ctor_cmp): New static functions.
1385 (ldctor_build_sets): Sort constructors if requested.
1386 * ldctor.h (constructors_sorted): Declare.
1387 * ldlang.c (print_statement): Print sorted CONSTRUCTORS
1388 correctly.
1389 * scripttempl/elf.sc: Add sort around CONSTRUCTORS.
1390 * ld.texinfo (Output Section Keywords): Document SORT
1391 (CONSTRUCTORS).
1392
1393Thu Aug 13 12:20:39 1998 Catherine Moore <clm@cygnus.com>
1394
1395 * emulparams/armelf.sh: Define TEMPLATE_NAME to armelf.
1396 * scripttempl/elfarm.sc: Include .glue_7t and .glue7
1397 sections.
1398 * emultempl/armelf.em: New file.
1399
1400Thu Aug 13 12:52:45 1998 H.J. Lu <hjl@gnu.org>
1401
1402 * Makefile.am (ld.dvi): Use " instead of ' for MAKEINFO.
1403 * Makefile.in: Rebuild.
1404
1405Tue Aug 11 16:17:01 1998 Catherine Moore <clm@cygnus.com>
1406
1407 * scripttempl/elfarm.sc: Change text start address
1408 back to zero.
1409
1410Tue Aug 11 10:01:12 1998 Jeffrey A Law (law@cygnus.com)
1411
1412 * emulparms/mn10200.sh (MAX_PAGESIZE): Define to 1.
1413 * emulparms/mn10300.sh (MAX_PAGESIZE): Define to 1.
1414
1415Sun Aug 9 20:31:27 1998 Catherine Moore <clm@cygnus.com>
1416
1417 * scripttempl/elfarm.sc: Set text start address to
1418 0x8000. Add __bss_end definition.
1419
1420Sat Aug 1 11:47:37 1998 Catherine Moore <clm@cygnus.com>
1421
1422 * scripttempl/elfarm.sc: New file.
1423 * emulparams/armelf.sh: Set SCRIPT_NAME to elfarm.
1424
1425Fri Jul 31 15:56:16 1998 Catherine Moore <clm@cygnus.com>
1426
1427 * emulparams/armelf.sh: New file.
1428 * configure.tgt: Recognize thumb-elf and arm-elf.
1429 * Makefile.am (earmelf.o): New.
1430 * Makefile.in: Rebuild.
1431
1432Fri Jul 24 12:00:57 1998 Ian Lance Taylor <ian@cygnus.com>
1433
1434 * Makefile.am (install-exec-local): Don't remove the file before
1435 checking whether $(bindir) == $(tooldir)/bin. From Maciej
1436 W. Rozycki <macro@ds2.pg.gda.pl>.
1437 * Makefile.in: Rebuild.
1438
1439 * configure.tgt: Recognize h8[35]00*-coff* as well as -hms*.
1440
1441Thu Jul 23 11:15:12 1998 Ian Lance Taylor <ian@cygnus.com>
1442
1443 * scripttempl/aout.sc: If ALIGNMENT is defined, use it to set
1444 alignment of end symbol.
1445 * scripttempl/elf.sc: Likewise.
1446 * emulparams/sun4.sh (ALIGNMENT): Define.
1447 * emulparams/elf32_sparc.sh (ALIGNMENT): Define.
1448 * ldint.texinfo (emulation parameters): Document ALIGNMENT.
1449
1450 * lexsup.c (parse_args): Add missing break statement.
1451
1452 * ldlang.c (lang_gc_sections_1): Add default case to switch to
1453 avoid warnings.
1454
1455Tue Jul 14 15:42:17 1998 Richard Henderson <rth@cygnus.com>
1456
1457 * configure.tgt (i?86-*-beos{pe,elf,}*): Recognize.
1458 * Makefile.am (ei386beos.o): New.
1459 * emulparams/i386beos.sh: New file.
1460 * emultempl/beos.em, scripttempl/i386beos.sc: New file.
1461
1462Tue Jul 14 15:35:42 1998 Richard Henderson <rth@cygnus.com>
1463
1464 * lexsup.c: New option --version-exports-section.
1465 * ld.h (struct args_type): Add version_exports_section.
1466 * ldlang.c (lang_do_version_exports_section): New function.
1467 (lang_process): Call it.
1468
1469Mon Jul 13 13:20:23 1998 Steve Chamberlain <sac@transmeta.com>
1470
1471 * ldlex.l: Accept ASSERT.
1472 * ldgram.y (exp): Add ASSERT_K case.
1473 * ldexp.h (node_type): Add etree_assert to node_class enum.
1474 (etree_type): Add assert_s field.
1475 (exp_assert): Declare.
1476 * ldexp.c (exp_fold_tree): Handle etree_assert.
1477 (exp_assert): New function.
1478 (exp_print_tree): Handle etree_assert.
1479 * ld.texinfo (Miscellaneous Commands): Document ASSERT.
1480
1481Wed Jul 8 14:03:12 1998 Ian Lance Taylor <ian@cygnus.com>
1482
1483 * ldgram.y: Change MAX to MAX_K and MIN to MIN_K, to avoid
1484 conflicts with system header files. Change all uses.
1485
1486 * Makefile.am (MAINTAINERCLEANFILES): Define.
1487 * Makefile.in: Rebuild.
1488
1489Tue Jul 7 18:03:22 1998 Ian Lance Taylor <ian@cygnus.com>
1490
1491 * Makefile.am (ldver.texi): New target.
1492 (ld.info, ld.dvi): Depend upon ldver.texi.
1493 * ld.texinfo: Include ldver.texi. Mention version number on title
1494 page and in top node.
1495 * Makefile.in: Rebuild.
1496
1497Mon Jul 6 14:55:13 1998 Ian Lance Taylor <ian@cygnus.com>
1498
1499 * configure.tgt (i[3456]86-*-solaris*): New target.
1500
1501Fri Jul 3 14:19:06 1998 Ian Lance Taylor <ian@cygnus.com>
1502
1503 * ldlang.c (wild_section): Don't get an assertion failure if the
1504 section is discarded.
1505
1506 * scripttempl/pe.sc: Use SORT to sort sections appropriately.
1507 * emultempl/pe.em (sort_by_file_name): Remove.
1508 (sort_by_section_name): Remove.
1509 (sort_sections_1, sort_sections): Remove.
1510 (gld_${EMULATION_NAME}_before_allocation): Don't call
1511 sort_sections.
1512 (hold_section, hold_section_name): New static variables.
1513 (hold_use, hold_text, hold_rdata, hold_data, hold_bss): Likewise.
1514 (gld_${EMULATION_NAME}_place_orphan): Rewrite. Look for a good
1515 place to put the section. Align the section. Sort the input
1516 sections by name.
1517 (gld_${EMULATION_NAME}_place_section): New static function.
1518
1519 * ldlang.c (wild_sort): When sorting by file name, sort by archive
1520 name first.
1521
1522 * emultempl/pe.em (set_pe_subsystem): Don't call
1523 ldlang_add_undef.
1524 (gld_${EMULATION_NAME}_after_parse): New static function.
1525 (ld_${EMULATION_NAME}_emulation): Use new after_parse function
1526 rather than after_parse_default.
1527
1528 * ldgram.y (extern_name_list): Do not require symbols to be
1529 separated by commas.
1530 (ifile_p1): Add EXTERN.
1531 * ldlex.l: Accept EXTERN in BOTH and SCRIPT mode as well as MRI
1532 mode.
1533 * ld.texinfo (Options): Mention that EXTERN is equivalent to -u.
1534 (Miscellaneous Commands): Document EXTERN.
1535
1536Wed Jul 1 19:40:34 1998 Richard Henderson <rth@cygnus.com>
1537
1538 * ld.h (args_type): Add gc_sections.
1539 * ldgram.y (ldgram_had_keep, KEEP): New.
1540 (input_section_spec_no_keep): Rename from old input_section_spec.
1541 (input_section_spec): New. Recognize KEEP.
1542 * ldlang.c (wild_section): Handle keep sections.
1543 (lang_gc_wild_section, lang_gc_wild_file, lang_gc_wild): New.
1544 (lang_gc_sections_1, lang_gc_sections): New.
1545 (lang_process): Invoke lang_gc_sections.
1546 (lang_add_wild): Add keep argument. Update all callers.
1547 * ldlang.h (lang_wild_statement_struct): Add keep_sections.
1548 * ldlex.l (KEEP): Match it.
1549 * ldmain.c (main): Error on -r and --gc-sections.
1550 * lexsup.c: Add --gc-sections.
1551
1552 * scripttempl/elf.sc: Merge .text.* etc sections appropriately.
1553 Mark startup sections with KEEP.
1554 * scripttempl/elfppc.sc: Likewise.
1555
1556 * ld.texinfo: Update for --gc-sections and KEEP.
1557
1558Wed Jul 1 15:21:20 1998 Ian Lance Taylor <ian@cygnus.com>
1559
1560 From Peter Jordan <pjordan@chla.usc.edu>:
1561 * scripttempl/i386go32.sc: Correct constructor handling for -u.
1562
1563Tue Jun 23 15:17:27 1998 Ian Lance Taylor <ian@cygnus.com>
1564
1565 * Makefile.am (install-data-local): Make ldscripts subdirectory.
1566 * Makefile.in: Rebuild.
1567
1568Tue Jun 23 15:17:04 1998 Mike Stump <mrs@wrs.com>
1569
1570 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
1571 with the program transform name.
1572 * Makefile.in: Rebuild.
1573
1574Sun Jun 21 23:55:16 1998 Jeffrey A Law (law@cygnus.com)
1575
1576 * ld.texinfo: Note that -relax may make symbolic debugging
1577 impossible on some platforms.
1578
1579Tue Jun 16 12:51:13 1998 Geoff Keating <geoffk@ozemail.com.au>
1580
1581 * Makefile.am (Makefile): Remove target.
1582 (config.status): New target.
1583 * Makefile.in: Rebuild.
1584
1585 * configure.host (powerpc*-*-linux-gnu*): New host.
1586
1587Fri Jun 12 17:38:07 1998 Doug Evans <devans@seba.cygnus.com>
1588
1589 * scripttempl/elf.sc (INPUT_FILES): Optional INPUT spec.
1590
1591 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Change top of
1592 stack to 8MB.
1593
1594Fri Jun 12 19:33:17 1998 Ian Lance Taylor <ian@cygnus.com>
1595
1596 * Makefile.am (HFILES): Remove config.h.
1597 (EMULATION_OFILES, POTFILES): Move patch of May 14 from
1598 Makefile.in to Makefile.am.
1599 (earmcoff.c): Depend upon armcoff.em, not generic.em.
1600 * po/Make-in (all-yes): Correct misspelling in $(PACKAGE).
1601 ($(srcdir)/$(PACKAGE).pot): Pass -C to $(XGETTEXT).
1602 * Makefile.in, po/POTFILES.in, po/ld.pot: Rebuild.
1603
1604Fri Jun 12 13:43:17 1998 Tom Tromey <tromey@cygnus.com>
1605
1606 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
1607 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
1608
1609Tue Jun 9 09:36:48 1998 Nick Clifton <nickc@cygnus.com>
1610
1611 * ldlang.c (lang_finish): Add CONST type modifier to declaration
1612 of 'send'.
1613
1614Fri Jun 5 18:19:59 1998 Ian Lance Taylor <ian@cygnus.com>
1615
1616 * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
1617 config.has_shared to true.
1618 * emultempl/linux.em (gld${EMULATION_NAME}_before_parse):
1619 Likewise.
1620 * emultempl/sunos.em (gld${EMULATION_NAME}_before_parse):
1621 Likewise.
1622
1623Tue Jun 2 12:55:03 1998 Ian Lance Taylor <ian@cygnus.com>
1624
1625 * ldlang.c (lang_finish): If the entry symbol is not found, try
1626 parsing it as a number.
1627 * ld.texinfo (Options): Document this.
1628
1629Mon Jun 1 14:01:20 1998 Ian Lance Taylor <ian@cygnus.com>
1630
1631 * ld.texinfo (Input Section Wildcards): Document SORT keyword.
1632
1633Mon May 18 12:42:53 1998 Doug Evans <devans@canuck.cygnus.com>
1634
1635 * ld.h (ld_config_type): New member has_shared.
1636 * ldmain.c (main): Initialize it.
1637 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set it.
1638 * lexsup.c (parse_args): Treat -shared as error if not supported.
1639
1640Mon May 18 13:14:43 1998 Ian Lance Taylor <ian@cygnus.com>
1641
1642 From Jason Merrill <jason@cygnus.com>:
1643 * ldlang.c (wild_sort): Correct order of sort.
1644 * scripttempl/elf.sc: Put *crtbegin.o before other .ctors and
1645 .dtors.
1646 * scripttempl/elfd10v.sc: Likewise.
1647 * scripttempl/elfd30v.sc: Likewise.
1648 * scripttempl/elfppc.sc: Likewise.
1649
1650Fri May 15 00:22:35 1998 Ian Lance Taylor <ian@cygnus.com>
1651
1652 * ldlex.l: Recognize keyword SORT.
1653 * ldgram.y (current_file): Change to struct wildcard_spec.
1654 (%union): Add new fields cname and wildcard.
1655 (wildcard_name, wildcard_spec): New nonterminals.
1656 (file_NAME_list): Use wildcard_spec.
1657 (input_section_spec): Change current_file usage.
1658 * ld.h (struct wildcard_spec): Define.
1659 * ldlang.h (lang_wild_statement_struct): Add new fields
1660 sections_sorted and filenames_sorted.
1661 (lang_add_wild): Update declaration.
1662 * ldlang.c (wild_sort): New static function.
1663 (wild_section): Use wild_sort.
1664 (print_wild_statement): Print sorting information.
1665 (lang_add_wild): Add new parameters sections_sorted and
1666 filenames_sorted. Change all callers.
1667 * mri.c (mri_draw_tree): Update calls to lang_add_wild.
1668 * scripttempl/elf.sc: Sort .ctors.* and .dtors.* by section name.
1669 * scripttempl/elfd10v.sc: Likewise.
1670 * scripttempl/elfd30v.sc: Likewise.
1671 * scripttempl/elfppc.sc: Likewise.
1672
1673Thu May 14 18:39:16 1998 Richard Henderson <rth@cygnus.com>
1674
1675 * emulparams/m32relf.sh (TEMPLATE_NAME): Define.
1676
1677Thu May 14 14:51:24 1998 Nick Clifton <nickc@cygnus.com>
1678
1679 * ldemul.h: Add new prototype: ldemul_list_emulation_options.
1680 (ld_emulation_xfer_struct): Add new field: list_options.
1681 * ldemul.c (ldemul_list_options): New function. Call the
1682 list_options field of the ld_emulation_xfer_struct for each
1683 supported emulation, if such a function is present.
1684 * lexsup.c (help): Call ldemul_list_emulation_options.
1685 * emultempl/pe.em (gld_<>_list_options): New function. Describe
1686 the pe emulation specific command line options.
1687 * emultempl/armcoff.em (gld<>_list_options): New function.
1688 Describe the armcoff emulation specific command line options.
1689
1690 * emultempl/pe.em: Add a new command line option:
1691 --support-old-code.
1692 * emultempl/armcoff.em: Ditto.
1693 * ld.texinfo: Document the --support-old-code option.
1694
1695 * Makefile.in: Add emulation files for POTFILES.in target.
1696 * emultempl/pe.em: Internationalise suitable strings.
1697 * emultempl/armcoff.em: Internationalise suitable strings.
1698 * po/POTFILES.in: Rebuilt.
1699
1700Sun May 10 22:36:30 1998 Jeffrey A Law (law@cygnus.com)
1701
1702 * po/Make-in (install-info): New target.
1703
1704Tue Apr 28 19:18:30 1998 Tom Tromey <tromey@cygnus.com>
1705
1706 * ldmain.c (main): Conditionally call setlocale.
1707 * ld.h: Include <locale.h> if HAVE_LOCALE_H.
1708 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
1709
1710Mon Apr 27 11:56:21 1998 Ian Lance Taylor <ian@cygnus.com>
1711
1712 * configure.in: Change version number to 2.9.4
1713 * configure: Rebuild.
1714
1715 * ld.texinfo (Options) [-rpath-link]: Mention ld.so.conf.
1716
1717 Based on patch from H.J. Lu <hjl@gnu.org>:
1718 * emultempl/elf32.em (global_vercheck_needed): New file static
1719 variable.
1720 (global_vercheck_failed): New file static variable.
1721 (gld${EMULATION_NAME}_after_open): Check for shared libraries
1722 twice, once with force set to 0 and once with it set to 1.
1723 (gld${EMULATION_NAME}_check_ld_so_conf): Add force parameter.
1724 Change all callers.
1725 (gld${EMULATION_NAME}_search_needed): Likewise.
1726 (gld${EMULATION_NAME}_try_needed): Likewise. If not force, check
1727 whether the libraries needs any incompatible versions.
1728 (gld${EMULATION_NAME}_vercheck): New static function.
1729
1730Wed Apr 22 16:01:35 1998 Tom Tromey <tromey@cygnus.com>
1731
1732 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
1733
1734Wed Apr 22 12:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
1735
1736 * Makefile.am (check-DEJAGNU): Add $(INTLLIBS) to LIBIBERTY when
1737 invoking runtest.
1738 * Makefile.in: Rebuild.
1739
1740 * lexsup.c (parse_args): Change -l options into --library options
1741 to avoid confusion between -li and -library.
1742
1743 * ld.texinfo (MEMORY): Clarify use of >REGION.
1744
1745Tue Apr 21 23:12:40 1998 Tom Tromey <tromey@scribbles.cygnus.com>
1746
1747 * Many files: Added gettext invocations around user-visible
1748 strings.
1749 * ld.h: Added gettext-related includes and defines.
1750 * ldmain.c: Call setlocale, bindtextdomain, textdomain.
1751 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
1752 HAVE_LC_MESSAGES): Define.
1753 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
1754 po/Makefile. Use AM_PROG_LEX.
1755 (TDIRS): AC_SUBST early on, to avoid having value split when it
1756 happens to cross line 90 of the generated sed script.
1757 * Makefile.am (SUBDIRS): New macro.
1758 (POTFILES): Likewise.
1759 (po/POTFILES.in): New target.
1760 (ld_new_LDADD): Added INTLLIBS.
1761 (ld_new_DEPENDENCIES): Added INTLDEPS.
1762 * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
1763
1764Tue Apr 21 23:07:07 1998 Ian Lance Taylor <ian@cygnus.com>
1765
1766 * ld.texinfo (Simple Example): Rewrite a few things as suggested
1767 by Nick Clifton <nickc@cygnus.com>.
1768 (PROVIDE): Likewise.
1769
1770Tue Apr 21 09:55:06 1998 Nick Clifton <nickc@cygnus.com>
1771
1772 * emultempl/pe.em: Rename external arm interworking functions
1773 to conform to BFD naming conventions. Add code to _after_open()
1774 function to obtain a bfd for use by the interworking code.
1775
1776 * emultempl/armcoff.em: Rename external arm interworking functions
1777 to conform to BFD naming conventions. Add new _after_open()
1778 function to obtain a bfd for use by the interworking code.
1779
1780Sun Apr 19 19:23:09 1998 Richard Henderson <rth@cygnus.com>
1781
1782 * ldlang.c (lang_size_sections) [case lang_assignment_statement_enum]:
1783 Update dot and the default memory section even when relaxing.
1784
1785Sat Apr 18 18:41:12 1998 Richard Henderson <rth@cygnus.com>
1786
1787 * ldlang.c (lang_one_common): Manipulate the section's cooked size
1788 rather than its raw size.
1789
1790Tue Apr 7 13:35:29 1998 H.J. Lu <hjl@gnu.org>
1791
1792 * configure.in (TESTBFDLIB): New. Defined and substituted.
1793 * Makefile.am (TESTBFDLIB): Changed to @TESTBFDLIB@.
1794 * configure, Makefile.in: Rebuild.
1795
1796Mon Apr 6 15:33:39 1998 Ian Lance Taylor <ian@cygnus.com>
1797
1798 * Makefile.am (ld.info): Invoke makeinfo with -I options directly
1799 rather than relying on default rule. Don't depend upon
1800 bfdsumm.texi.
1801 (ld.dvi): Likewise.
1802 (bfdsumm.texi): Remove target.
1803 (CLEANFILES): Take bfdsumm.texi out of value.
1804 * Makefile.in: Rebuild.
1805
1806Sun Apr 5 13:07:57 1998 Ian Lance Taylor <ian@cygnus.com>
1807
1808 * scripttempl/pe.sc: Use shell variables to avoid depending upon
1809 how $ is handled when expanding a shell substitution.
1810
1811Fri Apr 3 00:56:50 1998 Ian Lance Taylor <ian@cygnus.com>
1812
1813 * Makefile.am (MOSTLYCLEANFILES): Add ld.log and ld.sum.
1814 (DISTCLEANFILES): Add site.exp and site.bak.
1815 * Makefile.in: Rebuild.
1816
1817 * configure.in: Put the tdirs in a file and use AC_SUBST_FILE,
1818 rather than in a shell variable and using AC_SUBST.
1819 * Makefile.am (DISTCLEANFILES): Remove ldscripts. Add tdirs.
1820 (distclean-local): New target.
1821 * configure, Makefile.in: Rebuild.
1822
1823 * ld.texinfo: Completely rewrite linker script documentation.
1824
1825Mon Mar 30 12:47:33 1998 Ian Lance Taylor <ian@cygnus.com>
1826
1827 * configure.in: Set version to 2.9.1.
1828 * configure: Rebuild.
1829
1830 * Branched binutils 2.9.
1831
1832Sat Mar 28 16:48:19 1998 Ian Lance Taylor <ian@cygnus.com>
1833
1834 * Makefile.am (MOSTLYCLEANFILES): Remove tmpdir.
1835 (mostlyclean-local): New target to remove tmpdir.
1836 * Makefile.in: Rebuild.
1837
1838 Fix some gcc -Wall warnings:
1839 * ldcref.c (output_cref): Add casts to avoid warnings.
1840 * ldfile.c (ldfile_add_arch): Likewise.
1841 * ldlang.c (lang_leave_overlay_section): Likewise.
1842 * lexsup.c (OPTION_COUNT): Likewise.
1843 (parse_args): Likewise.
1844 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan):
1845 Likewise.
1846 * emultempl/sunos.em (gld${EMULATION_NAME}_search_dir): Likewise.
1847 * ldlang.c (lang_check): Initialize variables to avoid warnings.
1848 * ldwrite.c (build_link_order): Likewise.
1849 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Likewise.
1850 * emultempl/armcoff.em (gld${EMULATION_NAME}_before_allocation):
1851 Remove unused variables.
1852
1853 * Makefile.am (MOSTLYCLEANFILES): Correct name (was
1854 MOSTCLEANFILES).
1855 * Makefile.in: Rebuild.
1856
1857Fri Mar 27 16:39:25 1998 Ian Lance Taylor <ian@cygnus.com>
1858
1859 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Put
1860 ARM code inside ifdef TARGET_IS_armpe.
1861
1862Wed Mar 25 11:34:13 1998 Ian Lance Taylor <ian@cygnus.com>
1863
1864 Based on patch from H.J. Lu <hjl@gnu.org>:
1865 * Makefile.am (LDDISTSTUFF): New variable.
1866 (diststuff): New target.
1867 * Makefile.in: Rebuild.
1868
1869 * scripttempl/pe.sc: Only include .idata\$[0-7] in .idata when
1870 relocating.
1871
1872Tue Mar 24 15:59:29 1998 Nick Clifton <nickc@cygnus.com>
1873
1874 * scripttempl/pe.sc (.text): Add .glue_7 and .glue_7t sections to
1875 hold Arm/Thumb stubs.
1876
1877 * emultempl/pe.em (gld_pe_before_allocation): Call
1878 arm_process_before_allocation (for ARM/Thumb targets) in order to
1879 gather interworking stb information.
1880
1881Mon Mar 23 18:54:15 1998 Joel Sherrill <joel@OARcorp.com>
1882
1883 * configure.tgt: (sh*-*-rtems*): Switched from ELF to COFF.
1884
1885Fri Mar 20 19:17:13 1998 Ian Lance Taylor <ian@cygnus.com>
1886
1887 * aclocal.m4, configure: Rebuild with libtool 1.2.
1888
1889Thu Mar 19 14:54:45 1998 Geoffrey Noer <noer@cygnus.com>
1890
1891 * scripttempl/pe.sc: The Cygwin32 library uses a .data$nocopy
1892 section to avoid copying certain data on fork. The linker used to
1893 include this between __data_start__ and __data_end__, but that
1894 breaks building the cygwin32 dll. The fix is to rename the
1895 section ".data_cygwin_nocopy" and explictly include it after
1896 __data_end__.
1897
1898Wed Mar 18 09:42:24 1998 Nick Clifton <nickc@cygnus.com>
1899
1900 * configure.tgt (targ_extra_emuls): Add thumb-pe target.
1901
1902Sun Mar 8 23:34:14 1998 Stan Cox <scox@equinox.cygnus.com>
1903
1904 * configure.tgt (sparclite*-*-elf): Added.
1905
1906Mon Mar 2 19:24:08 1998 Michael Meissner <meissner@cygnus.com>
1907
1908 * ldlang.c (lang_size_sections): If the default memory region is
1909 *default*, see if there is a memory region that could be used.
1910
1911Thu Feb 26 17:09:53 1998 Michael Meissner <meissner@cygnus.com>
1912
1913 * scripttempl/elfd30v.sc: Add support for .eit_v section and put
1914 it at 0xfffff020.
1915 * emulparams/d30v{elf,_o,_e}.sh: Ditto.
1916
1917Mon Feb 23 17:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
1918
1919 * emultempl/pe.em (sort_sections): Permit the wildcard to include
1920 a trailing '*' when sorting grouped sections.
1921 * scripttempl/pe.sc: Include grouped sections using NAME\$*. Only
1922 include them when relocating.
1923
1924Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
1925
1926 * Makefile.am (install-exec-local): Install properly when ln
1927 fails or tooldir == prefix.
1928
1929Fri Feb 13 15:24:06 1998 Ian Lance Taylor <ian@cygnus.com>
1930
1931 * Makefile.am (AUTOMAKE_OPTIONS): Define.
1932 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
1933
1934Thu Feb 12 14:10:44 1998 Ian Lance Taylor <ian@cygnus.com>
1935
1936 * scripttempl/elf.sc: Align the _end symbol according to the ELF
1937 format size. From Gordon W. Ross <gwr@mc.com>.
1938
1939 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
1940 * configure.host (alpha*-*-netbsd*): New host.
1941 * configure.tgt (alpha*-*-netbsd*, powerpc-*-netbsd*): New
1942 targets.
1943
1944 * lexsup.c (help): Update bug-gnu-utils address.
1945 * ld.texinfo (Bug Reporting): Likewise.
1946
1947Tue Feb 10 18:05:56 1998 Ian Lance Taylor <ian@cygnus.com>
1948
1949 * ldlang.c (lang_size_sections): Warn if some memory regions were
1950 defined, but a loadable section is going into the default memory
1951 region.
1952
1953Tue Feb 10 16:17:20 1998 H.J. Lu <hjl@gnu.org>
1954
1955 * ldlex.l (V_IDENTIFIER): Allow '.' as symbol prefix.
1956
1957Tue Feb 10 15:09:45 1998 Ian Lance Taylor <ian@cygnus.com>
1958
1959 * Makefile.am (Makefile): Add target, for dependencies on
1960 configure.host and configure.tgt.
1961 * configure.host, configure.tgt: Change -linux* to -linux-gnu*.
1962 * Makefile.in: Rebuild.
1963
1964Mon Feb 9 13:44:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
1965
1966 * scripttempl/elfd10v.sc (.stack): Move stack to 0x00..7FFE.
1967
1968 * emulparams/d10velf.sh (READONLY_START_ADDR): Read only section
1969 moved to 0x00.....4.
1970
1971Sat Feb 7 15:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
1972
1973 * configure, aclocal.m4: Rebuild with new libtool.
1974
1975Thu Feb 5 12:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
1976
1977 * scripttempl/pe.sc: Remove ${RELOCATING-0} from all sections.
1978 From Thomas de Lellis <tdel@wrs.com>.
1979
1980 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
1981
1982Wed Feb 4 13:02:32 1998 Ian Lance Taylor <ian@cygnus.com>
1983
1984 * Makefile.am (ld_new_LDADD): Remove @LEXLIB@.
1985 * Makefile.in: Rebuild.
1986
1987Mon Feb 2 19:34:54 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
1988
1989 Add tms320c30 support:
1990 * configure.tgt (tic30-*-*aout*, tic30-*-*coff*): New targets.
1991 * emulparams/tic30aout.sh: New file.
1992 * emulparams/tic30coff.sh: New file.
1993 * scripttempl/tic30aout.sc: New file.
1994 * scripttempl/tic30coff.sc: New file.
1995 * Makefile.am (ALL_EMULATIONS): Add etic30aout.o and
1996 etic30coff.o.
1997 (etic30aout.c, etic30coff.c): New targets.
1998 * Makefile.in: Rebuild.
1999
2000Mon Feb 2 14:10:59 1998 Ian Lance Taylor <ian@cygnus.com>
2001
2002 * configure.host: Correct HOSTING_CRT0 in alpha*-*-linux* case to
2003 accept either ld.so or ld-linux.so.
2004
2005Fri Jan 30 19:16:28 1998 Doug Evans <devans@canuck.cygnus.com>
2006
2007 * Makefile.am ({CC,CXX}_FOR_TARGET): Change program_transform_name
2008 to transform.
2009 * Makefile.in: Regenerate.
2010
2011Fri Jan 30 19:15:17 1998 Geoff Keating <geoffk@ozemail.com.au>
2012
2013 * scripttempl/elfppc.sc: Put .dynsbss in .sbss.
2014
2015Fri Jan 30 11:43:49 1998 H.J. Lu <hjl@gnu.ai.mit.edu>
2016
2017 * Makefile.am (eelf32bsmip.c, eelf32lsmip.c): New targets.
2018 * Makefile.in: Rebuild.
2019
2020Thu Jan 29 16:04:21 1998 Mumit Khan <khan@xraylith.wisc.edu>
2021
2022 * ldfile.c (slash): Set to backslash if _WIN32 but not
2023 __CYGWIN32__.
2024 (ldfile_open_file_search): If __MSDOS__ or _WIN32, accept a
2025 leading backslash or a leading x: as an absolute path.
2026 (ldfile_find_command_file): Use slash rather than / when
2027 generating name to try.
2028 * lexsup.c (PATH_SEPARATOR): Define.
2029 (set_default_dirlist): Use PATH_SEPARATOR rather than ':'.
2030
2031Wed Jan 28 14:06:30 1998 Richard Henderson <rth@cygnus.com>
2032
2033 * emulparams/elf64_sparc.sh (ELFSIZE): 64
2034 (TEXT_START_ADDR): Round off, since SIZEOF_HEADERS is added later.
2035 (DATA_PLT): Needed by v9 abi.
2036
2037Wed Jan 28 16:37:27 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
2038
2039 * configure.tgt (i[3456]86-*-mingw32*): New entry.
2040
2041Wed Jan 28 15:51:58 1998 Ian Lance Taylor <ian@cygnus.com>
2042
2043 * scripttempl/elf.sc: Only include linkonce sections in final
2044 sections when relocating.
2045
2046Wed Jan 28 14:10:01 1998 Ian Lance Taylor <ian@cygnus.com>
2047
2048 * ld.texinfo (Options): Add a brief description of the types of
2049 information included in a link map.
2050
2051 * ld.texinfo (Options): Mention LDEMULATION in description of -m.
2052 (Environment): Mention LDEMULATION.
2053
2054 * ld.texinfo (Options): Clarify --export-dynamic a bit.
2055
2056Thu Jan 22 16:07:23 1998 Richard Henderson <rth@cygnus.com>
2057
2058 * ldlex.l (<SCRIPT>{WILDCHAR}*): Take care for the comments this
2059 pattern could match.
2060
2061Wed Jan 21 22:26:46 1998 Ian Lance Taylor <ian@cygnus.com>
2062
2063 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): When doing
2064 a relocateable link, set the image base to 0, and don't define the
2065 various symbols.
2066 * emulparams/i386pe.sh (RELOCATEABLE_OUTPUT_FORMAT): Define.
2067 * scripttempl/pe.sc: Swap the .data and .bss sections so that
2068 .data comes first. If doing a relocateable link, use
2069 RELOCATEABLE_OUTPUT_FORMAT if it is defined, and start the
2070 sections at 0, and don't define any symbols.
2071
2072 * ldlang.c (lang_memory_default): Correct parenthisization of
2073 expression.
2074
2075Wed Jan 21 21:20:32 1998 Manfred Hollstein <manfred@s-direktnet.de>
2076
2077 * emultempl/sunos.em: Don't include sys/types.h and sys/stat.h
2078 here; they are included already via sysdep.h.
2079
2080Tue Jan 6 13:40:02 1998 Richard Henderson <rth@cygnus.com>
2081
2082 * scripttempl/i960.sc: Don't explicitly set .data and .bss start.
2083
2084Fri Jan 2 20:15:37 1998 Michael Meissner <meissner@cygnus.com>
2085
2086 * ldgram.y (attributes_opt): Pass region pointer to
2087 lang_set_flags, not &region->flags.
2088
2089 * ldlang.c (lang_memory_default): New function to figure out a
2090 default memory region for a section if it was not specified.
2091 (lang_memory_region_lookup): Zero flags, not_flags field.
2092 (lang_map{,_flags}): Print attribute flags in memory map.
2093 (lang_size_sections): Call lang_memory_default to get default
2094 memory region.
2095 (lang_set_flags): Implement attribute flags for real. Take new
2096 argument to give the flags we are to skip for this region.
2097
2098 * ldlang.h (memory_region_struct): Add not_flags field, make both
2099 flags fields flagword type.
2100 (lang_output_section_state): Make flags field flagword type.
2101 (lang_set_flags): Update prototype to match new calling sequence.
2102 (lang_memory_region_default): Add prototype.
2103
2104 * emulparams/d30v{_e,_o,elf}.sh ({TEXT,DATA,EMEM}_DEF_SECTION):
2105 Define whether or not the region gets default sections, and if so,
2106 what sections.
2107
2108 * scripttempl/elfd30v.sc (MEMORY): Set up which of the regions get
2109 default sections.
2110
2111Thu Jan 1 22:58:04 1998 Michael Meissner <meissner@cygnus.com>
2112
2113 * scripttempl/elfd30v.sc (.eh_frame): Link into the data section.
2114
2115Thu Jan 1 18:04:51 1998 Jeffrey A Law (law@cygnus.com)
2116
2117 * scripttempl/h8300h.sc: Fix typo.
2118 * scripttempl/h8300s.sc: Likewise.
2119
2120Sun Dec 21 12:51:49 1997 Ian Lance Taylor <ian@cygnus.com>
2121
2122 * ldexp.c (fold_name): Don't crash if the symbol is defined in a
2123 section with no output section, such as a shared library section.
2124
2125Wed Dec 17 12:14:11 1997 Ian Lance Taylor <ian@cygnus.com>
2126
2127 * lexsup.c (parse_args): Keep track of where we are in the option
2128 parsing before calling ldemul_parse_args, so that we don't call it
2129 multiple times on the same argument and confuse the getopt
2130 internals.
2131
2132Thu Dec 11 09:00:15 1997 Michael Meissner <meissner@cygnus.com>
2133
2134 * configure.tgt (d30v-elf-*): Rename d30velf_e to d30v_e and
2135 d30velf_o to d30v_o to work in DOS environments.
2136 * Makefile.{am,in}: Ditto.
2137
2138 * emulparams/d30v_{o,e}: Rename from d30velf_{o,e}.
2139 * emulparams/d30velf_{o,e}: Deleted.
2140
2141Wed Dec 10 17:40:08 1997 Nick Clifton <nickc@cygnus.com>
2142
2143 * scripttempl/armcoff.sc: Add glue sections (code taken from Arm
2144 branch).
2145
2146 * emulparams/armcoff.sh (TEMPLATE_NAME): Set to armcoff.
2147
2148 * emultempl/armcoff.em: New file, imported from Arm branch.
2149
2150Wed Dec 10 14:10:44 1997 Michael Meissner <meissner@cygnus.com>
2151
2152 * scripttempl/elfd30v.sc: Add .rel and .rela sections for all
2153 defined sections. Set up __{D,C}TOR_{LIST,END}__. Add onchip and
2154 external memory sections for rodata. Delete .string, .rodata1,
2155 and .data1 sections.
2156
2157Tue Dec 9 15:28:17 1997 Michael Meissner <meissner@cygnus.com>
2158
2159 * Makefile.am: Add Oct 23 changes to Makefile.in here.
2160
2161 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed10velf.o.
2162
2163 * Makefile.{am,in}: (ALL_EMULATIONS): Add etic80coff.o.
2164
2165 * Makefile.{am,in}: (ALL_EMULATIONS): Add ed30velf{,_e,_o}.o.
2166 (ed30velf_e.c): Like d30velf, except .text/.data/etc always go in
2167 external memory.
2168 (ed30velf_o.c): Like d30velf, except .text/.data/etc always go in
2169 onchip memory.
2170
2171 * emulparams/d30velf.sh (STACK_START_ADDR): Top of default
2172 stack.
2173 ({TEXT,DATA,EMEM}_SIZE): Sizes of the 3 memory areas.
2174 ({TEXT,DATA,BSS}_MEMORY): Which memory region .text, .data, and
2175 .bss should go in.
2176
2177 * emulparams/d30velf_{e,o}.sh: New files to be explicit whether
2178 .text, .data, etc go in external memory or onchip memory.
2179
2180 * configure.tgt (d30v-*-*ext*): New configuration to default
2181 .text, .data, etc. in external memory.
2182 (d30v-*-*onchip*): New configuration to default .text, .data,
2183 etc. in onchip memory.
2184 (d30v-*-*): Add d30velf_{e,o} emulations.
2185
2186 * scripttempl/elfd30v.sc: Allow .text, .data, .bss to be put in
2187 either the onchip text/data areas or the external memory area.
2188 (MEMORY): Get sizes from d30velf.sh.
2189 (.e{data,text,bss}): Put sections in the external memory region.
2190 (.stext): Put section in the onchip text region.
2191 (.s{data,bss}): Put sections in the onchip data region.
2192 (__stack): Assign from ${STACK_START_ADDR}.
2193 (.text): Put in ${TEXT_MEMORY} memory region.
2194 (.data{,1}/.strings/.rodata{,1}): Put in ${DATA_MEMORY} memory
2195 region.
2196 (.bss): Put in ${BSS_MEMORY} memory region.
2197
2198Tue Dec 2 10:14:47 1997 Nick Clifton <nickc@cygnus.com>
2199
2200 * configure.tgt (targ_extra_emuls): Add support for Thumb target.
2201
2202Sat Nov 22 15:23:19 1997 Ian Lance Taylor <ian@cygnus.com>
2203
2204 * ldlex.l: Don't define hex_mode. Correct number regexp to not
2205 accept hex digits without a leading $ or 0x. Handle leading $
2206 correctly. Pass 0 rather than hex_mode to bfd_scan_vma.
2207 * ldlex.h (hex_mode): Don't declare.
2208
2209Sun Nov 16 20:16:45 1997 Michael Meissner <meissner@cygnus.com>
2210
2211 * emulparams/d30velf.sh ({DATA,EMEM}_START_ADDR): Define as start
2212 of internal data area and external memory on chip.
2213
2214 * scripttempl/elfd30v.sc: Define a MEMORY region that describes
2215 the 3 regions of memory on the chip. Put .text/.init/.fini into
2216 the text memory region, put other segments into the data memory
2217 region. Add more of the standard elf sections. Default __stack
2218 to be 0x20008000, which is 1 byte beyond end of the internal data
2219 region.
2220
2221Thu Nov 13 13:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
2222
2223 * configure.tgt (targ_extra_emuls): Make FreeBSD a i386bsd
2224 variant.
2225
2226Sun Nov 2 14:51:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2227
2228 * configure.host (alpha*-*-linux*): Correct HOSTING_CRT0. Set
2229 HOSTING_LIBS.
2230
2231Thu Oct 30 12:25:55 1997 Ian Lance Taylor <ian@cygnus.com>
2232
2233 * ld.h (args_type): Add warn_mismatch field.
2234 * ldmain.c (main): Initialize warn_mismatch field.
2235 * lexsup.c (parse_args): Handle --no-warn-mismatch option.
2236 * ldlang.c (ignore_bfd_error): New static function.
2237 (lang_check): If warn_mismatch is false, don't warn about
2238 mismatched input files.
2239 * ld.texinfo, ld.1: Document new option.
2240
2241Thu Oct 23 14:38:18 1997 Nick Clifton <nickc@cygnus.com>
2242
2243 * scripttempl/v850.sc: Rename linker symbol '_stack' to '__stack'
2244 to avoid conflicts with C code which is defining a variable called
2245 'stack'.
2246
2247Thu Oct 23 00:57:45 1997 Richard Henderson <rth@dot.cygnus.com>
2248
2249 * Makefile.in (ALL_EMULATIONS): Move eelf64_sparc.o ...
2250 (ALL_64_EMULATIONS): ... here.
2251 (eelf64_sparc.c): Template should be elf32 not generic.
2252 * emulparams/elf64_sparc.sh (TEMPLATE_NAME): New definition.
2253
2254Thu Oct 23 00:44:20 1997 Richard Henderson <rth@dot.cygnus.com>
2255
2256 * configure.tgt: Add sparc64-*-linux*.
2257 * emulparams/elf64_sparc.sh (GENERATE_SHLIB_SCRIPT, NOP): New.
2258
2259Wed Oct 22 11:29:25 1997 Ian Lance Taylor <ian@cygnus.com>
2260
2261 * scripttempl/pe.sc: Put .eh_frame in .rdata.
2262
2263Fri Oct 17 00:00:13 1997 Richard Henderson <rth@cygnus.com>
2264
2265 * ldlang.c (lang_register_vers_node): Only check globals<=>locals,
2266 since we need to be able to export different versions of the same
2267 symbol.
2268
2269Wed Oct 15 14:52:36 1997 Ian Lance Taylor <ian@cygnus.com>
2270
2271 * scripttempl/pe.sc: Put .stab and .stabstr sections at end.
2272
2273Wed Oct 8 12:37:05 1997 Richard Henderson <rth@cygnus.com>
2274
2275 * configure.tgt, configure.host: Change alpha-*-* to alpha*-*-*;
2276 config.guess now recognizes alphaev5 etc.
2277
2278Fri Oct 3 14:23:02 1997 Ian Lance Taylor <ian@cygnus.com>
2279
2280 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Don't treat
2281 -s and -u as -static and -unix.
2282
2283Thu Oct 2 18:40:28 1997 Ian Lance Taylor <ian@cygnus.com>
2284
2285 * ldlang.c (wild_doit): Rewrite flag handling for clarity. If we
2286 are not adding the first input section, and SEC_READONLY is clear
2287 on the output section, then don't copy it from the input section.
2288 If SEC_READONLY is not set on the input section, then clear it on
2289 the output section.
2290
2291 * configure.tgt (mips*-sgi-irix[56]*): Use elf32bsmip rather than
2292 elf32bmip.
2293 (mips*el-*-linux*): Change elf32lmip to elf32lsmip and elf32bmip
2294 to elf32bsmip.
2295 (mips*-*-linux*): Likewise.
2296 * emulparams/elf32bsmip.sh: New file; just like elf32bmip.sh, but
2297 setting ENTRY to __start.
2298 * emulparams/elf32lsmip.sh: New file; just like elf32lmip.sh, but
2299 setting ENTRY to __start.
2300 * scripttempl/elf.sc: Always set ENTRY to _start if it was not
2301 already set.
2302
2303Wed Oct 1 16:41:00 1997 Nick Clifton <nickc@cygnus.com>
2304
2305 * emulparams/v850.sh (ROZDATA_START_ADDR, ROSDATA_START_ADDR): New
2306 Variables.
2307
2308 * scripttempl/v850.sc: Move read only areas out of zero and small
2309 data sections and into their own sections.
2310
2311Wed Sep 24 16:59:15 1997 Joel Sherrill <joel@oarcorp.com>
2312
2313 * configure.tgt (sh*-*-rtems*): New target, like sh-*-elf*.
2314
2315Wed Sep 24 11:33:14 1997 Ian Lance Taylor <ian@cygnus.com>
2316
2317 * ld.texinfo (Section Options): Improve documentation of NOLOAD
2318 directive.
2319
2320 * aclocal.m4: Rebuild with new libtool.
2321 * configure: Rebuild.
2322
2323Mon Sep 22 17:24:06 1997 Ian Lance Taylor <ian@cygnus.com>
2324
2325 * ldlang.c (wild_doit): Revert patch of September 3.
2326
2327Wed Sep 17 16:45:34 1997 Nick Clifton <nickc@cygnus.com>
2328
2329 * Makefile.am, Makefile.in: Add rule for ev850.c
2330 * configure.tgt (targ_extra_emuls): Add v850 target.
2331
2332Wed Sep 17 16:43:39 1997 Nick Clifton <nickc@cygnus.com>
2333
2334 * emulparams/v850.sh (CALL_TABLE_START_ADDR): New entry.
2335 * scripttempl/v850.sc: Add call table data area
2336
2337Mon Sep 15 11:29:13 1997 Ken Raeburn <raeburn@cygnus.com>
2338
2339 Merge change from Martin Hunt:
2340
2341 * scripttempl/elfd30v.sc: Put .rodata in the .text section.
2342
2343Tue Sep 9 07:49:56 1997 Fred Fish <fnf@ninemoons.com>
2344
2345 * ldlang.c (lang_memory_region_lookup): Remove extraneous
2346 initialization of p.
2347
2348Thu Sep 4 09:03:33 1997 Ian Lance Taylor <ian@cygnus.com>
2349
2350 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): In
2351 expression produced for -bpT and -bpD options, align to a 32 byte
2352 boundary rather than an 8 byte boundary.
2353 * scripttempl/aix.sc: Put .tocbss at start of .bss section.
2354
2355 * ldmisc.h, ldmisc.c, ldcref.c: Rename finfo to lfinfo, to avoid
2356 function name conflict with AIX 4.2 unistd.h header file.
2357
2358Wed Sep 3 15:12:32 1997 Ian Lance Taylor <ian@cygnus.com>
2359
2360 * ldlang.c (wild_doit): Clear SEC_HAS_CONTENTS from a
2361 noload_section.
2362
2363Fri Aug 29 00:32:31 1997 Ian Lance Taylor <ian@cygnus.com>
2364
2365 * Makefile.am (ld_new_DEPENDENCIES): Remove @LEXLIB@.
2366 * Makefile.in: Rebuild.
2367
2368Thu Aug 28 10:12:10 1997 Doug Evans <dje@canuck.cygnus.com>
2369
2370 * configure.tgt (arc-*-elf*): Recognize.
2371 * Makefile.am (ALL_EMULATIONS): Add earcelf.o.
2372 * Makefile.in: Regenerate.
2373 * emulparams/arcelf.sh: New file.
2374
2375Wed Aug 20 11:14:13 1997 Ian Lance Taylor <ian@cygnus.com>
2376
2377 * ldlang.c (wildcardp): Don't let a backslash by itself cause a
2378 pattern to be treated as a wildcard pattern.
2379
2380 * ldgram.y (atype): Accept parentheses with no type.
2381
2382 * ld.texinfo (Section Definition): Clarify use of whitespace.
2383 (Section Placement): Likewise.
2384
2385Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
2386
2387 * configure.tgt (targ_extra_emuls): Add support for v850e target.
2388
2389Mon Aug 18 11:12:03 1997 Nick Clifton <nickc@cygnus.com>
2390
2391 * configure.tgt (targ_extra_emuls): Add support for v850e target.
2392
2393Sat Aug 9 00:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
2394
2395 * Makefile.am (ld.info): Change dependency from
2396 $(BFDDIR)/doc/bfdsumm.texi to bfdsumm.texi.
2397 (ld.dvi): Likewise.
2398 (bfdsumm.texi): New target.
2399 (CLEANFILES): Add bfdsumm.texi.
2400 * Makefile.in: Rebuild.
2401
2402 * Makefile.am: New file, based on old Makefile.in.
2403 * acinclude.m4: New file, from old aclocal.m4.
2404 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
2405 shared library handling; now handled by libtool. Replace
2406 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
2407 AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
2408 AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
2409 * configure.host: Don't set HLDFLAGS, HLDENV, or RPATH_ENVVAR.
2410 * acconfig.h: Mention PACKAGE and VERSION.
2411 * stamp-h.in: New file.
2412 * ldver.c (ld_program_version): Set ld_program_version from
2413 VERSION.
2414 * ldgram.y, ldlex.l: Replace VERSION with VERSIONK.
2415 * Makefile.in: Now built with automake.
2416 * aclocal.m4: Now built with aclocal.
2417 * configure, config.in: Rebuild.
2418
2419Mon Jul 28 19:04:50 1997 Rob Savoye <rob@chinadoll.cygnus.com>
2420
2421 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
2422 win32 dependencies.
2423 * configure: Regenerated with autoconf 2.12.
2424 * Makefile.in: Add $(EXEEXT) to executable.
2425
2426Tue Jul 22 18:50:38 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
2427
2428 * emulparams/i386go32.sh (OUTPUT_FORMAT): Set to "coff-go32".
2429 (SEGMENT_SIZE): Set to 0x200.
2430 * scripttempl/i386go32.sc: Rewrite.
2431 * configure.tgt (i[3456]86-*-msdosdjgpp*): New target.
2432
2433Mon Jul 7 12:39:42 1997 Ian Lance Taylor <ian@cygnus.com>
2434
2435 From Manfred Hollstein <manfred@s-direktnet.de>:
2436 * configure.host (i[3456]86-*-linux*libc1*): Renamed from
2437 i[3456]86-*-linux*.
2438 (i[3456]86-*-linux*): New host.
2439
2440Thu Jun 26 13:54:03 1997 Ian Lance Taylor <ian@cygnus.com>
2441
2442 * scripttempl/pe.sc: Put .rsrc after .reloc. Put input .rsrc
2443 sections in the output .rsrc section.
2444
2445Wed Jun 25 12:48:41 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2446
2447 * configure.host (m68*-*-linux*libc1*): Renamed from
2448 `m68*-*-linux*'.
2449 (m68*-*-linux*): New configuration for use with GNU libc 2.
2450
2451Mon Jun 16 19:18:21 1997 Geoff Keating <geoffk@ozemail.com.au>
2452
2453 * scripttempl/elfppc.sc: Correct .rela.sdata entries.
2454
2455 * scripttempl/elfppc.sc: Put the PLT between the small and large
2456 BSS segments.
2457 * emulparams/elf32ppc.sh (TEXT_START_ADDR): The ABI says `A
2458 program base of 0x02000000 is recommended...' because otherwise
2459 shared libraries are less efficient. We use 0x01800000 because
2460 otherwise it's impossible to branch to location 0, for instance if
2461 you have an undefined weak symbol.
2462
2463Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2464
2465 * ldlang.c (lang_place_undefineds): Add \n in einfo call.
2466 (lang_size_sections): Likewise.
2467 * ldlex.l: Likewise.
2468 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise.
2469 * emultempl/mipsecoff.em (gld${EMULATION_NAME}_after_open):
2470 Likewise.
2471 (check_sections): Likewise.
2472 (gld${EMULATION_NAME}_after_allocation): Likewise.
2473 * emultempl/pe.em (gld_$${EMULATION_NAME}_before_allocation):
2474 Likewise.
2475 * mpw-eppcmac.c (gldppcmacos_read_file): Likewise.
2476 * mpw-idtmips.c (gldmipsidt_after_open): Likewise.
2477 (check_sections): Likewise.
2478 (gldmipsidt_after_allocation): Likewise.
2479
2480 * ldemul.c (ldemul_choose_mode): Remove unused einfo argument.
2481
2482Fri Jun 6 23:47:42 1997 Ian Lance Taylor <ian@cygnus.com>
2483
2484 * scripttempl/pe.sc: Add zeroes after .idata$3 to mark the end of
2485 the import list.
2486
2487Thu May 29 13:13:22 1997 Ian Lance Taylor <ian@cygnus.com>
2488
2489 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Don't
2490 crash if an output section has no BFD section.
2491
2492Fri May 23 15:23:25 1997 Fred Fish <fnf@cygnus.com>
2493
2494 * lexsup.c (ld_options): Add entry for the new "task-link" option.
2495 (parse_args): Handle the "task-link" option.
2496 (OPTION_TASK_LINK): Add define.
2497
2498Wed May 21 17:44:15 1997 Ian Lance Taylor <ian@cygnus.com>
2499
2500 * ldmain.c (main): Correct check of fclose return value when
2501 handling --force-exe-suffix.
2502
2503Thu May 15 11:35:29 1997 Nick Clifton <nickc@cygnus.com>
2504
2505 * ldlang.c (lang_check): Add test of the return value from the
2506 call to bfd_merge_private_bfd_data().
2507
2508Mon May 12 23:22:58 1997 Ian Lance Taylor <ian@cygnus.com>
2509
2510 * scripttempl/elfmips.sc: Remove.
2511 * scripttempl/elf.sc: Set ENTRY based on target. Permit
2512 TEXT_DYNAMIC to control .dynamic segment. Permit
2513 SHLIB_TEXT_START_ADDR to set start of shared object. Support
2514 INITIAL_READONLY_SECTIONS. Put .stub in .text. Only put
2515 .gnu.linkonce.t* in .text when relocating. Support
2516 OTHER_TEXT_SECTIONS. Support SHLIB_DATA_ADDR as well as
2517 DATA_ADDR. Support OTHER_GOT_SYMBOLS and OTHER_GOT_SECTIONS.
2518 * emulparams/elf32b4300.sh (SCRIPT_NAME): Set to elf.
2519 (DATA_ADDR): Don't set.
2520 (INITIAL_READONLY_SECTIONS): Rename from OTHER_READONLY_SECTIONS.
2521 (OTHER_TEXT_SECTIONS): Set.
2522 (OTHER_GOT_SECTIONS): Rename from OTHER_READWRITE_SECTIONS.
2523 (MACHINE): Set to empty string.
2524 * emulparams/elf32l4300.sh: Likewise.
2525 * emulparams/elf32ebmip.sh: Likewise.
2526 * emulparams/elf32elmip.sh: Likewise.
2527 * emulparams/elf32bmip.sh: Likewise. Also:
2528 (TEXT_DYNAMIC): Set.
2529 * emulparams/elf32lmips.sh: Likewise.
2530 * Makefile.in (eelf32bmips.c): Depend upon elf.sc rather than
2531 elfmips.sc.
2532 (eelf32ebmips.c, eelf32elmips.c, eelf32lmip.c): Likewise.
2533
2534Mon May 12 11:11:06 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2535
2536 * scripttempl/elf.sc: Don't align the data segment on the next 8
2537 byte boundary, instead let the linker use whatever the individual
2538 sections require.
2539
2540Fri May 9 17:45:46 1997 Ian Lance Taylor <ian@cygnus.com>
2541
2542 * configure.tgt (i[3456]86-*-gnu*): Don't include Mach support.
2543
2544Tue May 6 13:21:19 1997 Ian Lance Taylor <ian@cygnus.com>
2545
2546 From Sean McNeil <sean@mcneil.com>:
2547 * emultempl/pe.em (sort_by_file_name): Sort by archive name
2548 first.
2549 (sort_sections): Sort all sections, not just sections in the same
2550 archive.
2551
2552Mon May 5 18:19:55 1997 Philip Blundell <pjb27@cam.ac.uk>
2553
2554 * configure.tgt, configure.host: cope with '*-*-linux-gnuaout'
2555 targets.
2556
2557Fri May 2 15:54:28 1997 Mike Meissner <meissner@cygnus.com>
2558
2559 * scripttempl/tic80coff.sc (.text): Add a leading underscore to
2560 __{D,C}TOR_{LIST,END}__ definations. Rearrange the order of items
2561 in the .text section. Move .const, .ctors, .dtors into separate
2562 sections.
2563
2564Wed Apr 30 12:23:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
2565
2566 * scripttempl/m88kbcs.sc (__.initp.end, _etext): Added whitespace
2567 around assignment of current location pointer.
2568
2569Thu Apr 17 13:07:18 1997 Ian Lance Taylor <ian@cygnus.com>
2570
2571 * ldctor.c (ldctor_build_sets): Make sure the set is aligned
2572 appropriately.
2573
2574Tue Apr 15 13:19:26 1997 Ian Lance Taylor <ian@cygnus.com>
2575
2576 * Makefile.in (INSTALL): Set to @INSTALL@.
2577 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
2578 (install): Depend upon ld.new and installdirs. Use
2579 $(program_transform_name) directly, rather than using
2580 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
2581 (installdirs): New target.
2582 (install-info): Run mkinstalldirs.
2583
2584Mon Apr 14 12:06:15 1997 Ian Lance Taylor <ian@cygnus.com>
2585
2586 * Makefile.in (INSTALL): Change install.sh to install-sh.
2587
2588 From Thomas Graichen <graichen@rzpd.de>:
2589 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
2590 * configure: Rebuild.
2591
2592Fri Apr 4 11:42:41 1997 Ian Lance Taylor <ian@cygnus.com>
2593
2594 * emultempl/pe.em: Include "libiberty.h".
2595 (sort_sections_1): Use xmalloc rather than alloca.
2596
2597 * ldlex.l: Recognize SQUAD.
2598 * ldgram.y (length): Add SQUAD.
2599 * ldctor.c (ldctor_build_sets): Use SQUAD for a signed 8 byte
2600 reloc.
2601 * ldlang.c (print_data_statement): Handle SQUAD.
2602 (lang_size_sections, lang_do_assignments): Likewise.
2603 * ldexp.c (exp_print_token): Add SQUAD to table.
2604 * ldwrite.c (build_link_order): Handle SQUAD.
2605 * ld.texinfo (Section Data Expressions): Document SQUAD.
2606
2607Thu Apr 3 13:19:40 1997 Ian Lance Taylor <ian@cygnus.com>
2608
2609 * ldver.c (ld_program_version): Set to 2.8.1.
2610
2611 * Branched binutils 2.8.
2612
2613Wed Apr 2 11:55:27 1997 Ian Lance Taylor <ian@cygnus.com>
2614
2615 * mpw-idtmips.c: Rename from mpw-emipsidt.c.
2616 * mpw-elfmips.c: Rename from mpw-emipself.c.
2617 * mpw-config.in: Update accordingly.
2618
2619 * ldlang.c (lang_process): Call lang_check immediately after
2620 opening the input files, rather than at the end of the link.
2621
2622Mon Mar 31 23:44:00 1997 Ian Lance Taylor <ian@cygnus.com>
2623
2624 * emultempl/pe.em (init): Fully bracket initializer.
2625 (set_pe_stack_heap): Remove locals begin_commit and end.
2626 (gld_${EMULATION_NAME}_after_open): Remove unused local i.
2627 (gld${EMULATION_NAME}_place_orphan): Remove unused local ptr.
2628
2629Mon Mar 31 16:35:51 1997 Joel Sherrill <joel@oarcorp.com>
2630
2631 * configure.tgt (hppa*-*-rtems*): New target, like hppa-*-*elf*.
2632
2633Fri Mar 28 15:29:23 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2634
2635 Contributed by David S. Miller <davem@caip.rutgers.edu>:
2636 * configure.tgt (sparc*-*-linuxaout*): New target.
2637 (sparc*-*-linux*): New target.
2638 * emulparams/sparclinux.sh: New file.
2639 * Makefile.in (ALL_EMULATIONS): Add esparclinux.o.
2640 (esparclinux.c): New target.
2641
2642Fri Mar 28 14:30:12 1997 Ian Lance Taylor <ian@cygnus.com>
2643
2644 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
2645 * configure.tgt: Set targ_extra_emuls for mips*el-*-linux* and
2646 mips*-*-linux*. Use elf32bmip and elf32lmip, not elf32ebmip and
2647 elf32elmip.
2648
2649Thu Mar 27 17:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
2650
2651 * lexsup.c (parse_args): Update copyright date in version
2652 message.
2653
2654Fri Mar 21 12:28:41 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2655
2656 * emulparams/delta68.sh (OUTPUT_FORMAT): Set to "coff-m68k-sysv".
2657
2658Tue Mar 18 11:16:23 1997 Ian Lance Taylor <ian@cygnus.com>
2659
2660 * Makefile.in: Rebuild dependencies.
2661
2662 * emultempl/aix.em: Include "obstack.h".
2663
2664Mon Mar 17 19:26:06 1997 Ian Lance Taylor <ian@cygnus.com>
2665
2666 * ldlang.c: Include "obstack.h".
2667
2668Sat Mar 15 23:23:46 1997 Fred Fish <fnf@cygnus.com>
2669
2670 * configure.tgt (powerpc-*-beos*): Use aixppc for targ_emul.
2671
2672Sat Mar 15 18:10:38 1997 H.J. Lu <hjl@lucon.org>
2673
2674 * ldemul.h (ldemul_list_emulations): Use full prototype.
2675 * ldlang.c (print_one_symbol): Add declaration.
2676 * ldlang.h (dprint_statements): Declare.
2677 * ldmain.c (remove_output): Declare.
2678 * ldmisc.c (vfinfo): Declare.
2679 * ldwrite.c (clone_section): Declare.
2680 (split_sections): Make static. Declare.
2681 * mri.c: Include libiberty.h.
2682 (strdup): Don't declare.
2683 (mri_alias): Use xstrdup rather than strdup.
2684
2685Fri Mar 14 21:30:06 1997 Ian Lance Taylor <ian@cygnus.com>
2686
2687 * scripttempl/elfmips.sc: Change handling of data area when
2688 generating a shared library to not skip a large block of memory.
2689 From Per Fogelstrom <pefo@cvs.openbsd.org>.
2690
2691Wed Mar 12 21:33:09 1997 Ian Lance Taylor <ian@cygnus.com>
2692
2693 * ldmain.c (multiple_definition): Only skip the warning if the
2694 output section is absolute when the input section is not
2695 absolute.
2696
2697 * ldlex.l: Accept whitespace in VERS_START state. Warn about
2698 invalid characters in VERS_* states.
2699
2700Tue Mar 11 13:51:31 1997 Ian Lance Taylor <ian@cygnus.com>
2701
2702 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Don't let a
2703 trailing space lead us to think that there is a zero address.
2704
2705Sun Mar 9 23:06:35 1997 Eric Youngdale <eric@andante.jic.com>
2706
2707 * ldgram.y (vers_node): Correct typo of '(' for '{'.
2708
2709Fri Mar 7 18:40:12 1997 Fred Fish <fnf@cygnus.com>
2710
2711 * scripttempl/tic80coff.sc (ENTRY): Entry symbol is __start
2712 rather than _start.
2713 (__edata): Define this rather than "edata".
2714 (__end): Define this rather than "end".
2715
2716Tue Mar 4 17:18:35 1997 Michael Meissner <meissner@cygnus.com>
2717
2718 * configure.tgt (tic80-*-*): Allow dropping of -coff.
2719
2720Sun Mar 2 22:59:49 1997 Fred Fish <fnf@cygnus.com>
2721
2722 * Makefile.in (ld.dvi): Set MAKEINFO environment variable as well
2723 as TEXINPUTS. Needed for building in separate build dir.
2724 * ldint.texinfo (SCRIPT_NAME): Fix typo.
2725 * emulparams/tic80coff.sh: Rewrite to include internal documentation
2726 about each shell variable that is set (or not set).
2727 * scripttempl/tic80coff.sc: Complete rewrite.
2728
2729Fri Feb 28 17:42:27 1997 Ian Lance Taylor <ian@cygnus.com>
2730
2731 * ldmain.c (main): Call bfd_set_default_target.
2732 * Makefile.in (ldmain.o): Define TARGET when compiling.
2733
2734Thu Feb 27 11:41:03 1997 Ian Lance Taylor <ian@cygnus.com>
2735
2736 * ldmain.c (main): Don't initialize link_info.lprefix or
2737 link_info.lprefix_len.
2738 * emultempl/hppaelf.em (hppaelf_before_parse): Likewise.
2739
2740 * emultempl/m88kbcs.em: Remove.
2741 * emulparams/m88kbcs.sh (TEMPLATE_NAME): Don't set.
2742 * Makefile.in (em88kbcs.c): Depend upon generic.em rather than
2743 m88kbcs.em.
2744
2745 * mri.c (mri_draw_tree): Pass noload_section, not SEC_NEVER_LOAD,
2746 to lang_enter_output_section_statement. From Mark Rasin
2747 <mark.rasin@telrad.co.il>.
2748
2749Wed Feb 26 11:51:44 1997 Ian Lance Taylor <ian@cygnus.com>
2750
2751 * ldlang.c (lang_one_common): Clear SEC_IS_COMMON from common
2752 section.
2753
2754Tue Feb 25 20:38:11 1997 Stan Shebs <shebs@andros.cygnus.com>
2755
2756 * configure.tgt (mips*-*-lnews*): New target.
2757 * Makefile.in (emipslnews.c): New target.
2758 * emulparams/mipslnews.sh: New file.
2759
2760Tue Feb 25 16:04:09 1997 Ian Lance Taylor <ian@cygnus.com>
2761
2762 * emultempl/elf32.em (hold_interp): New static variable.
2763 (gld${EMULATION_NAME}_place_orphan): Put loadable .note sections
2764 after hold_interp. Choose a unique output section name.
2765 (gld${EMULATION_NAME}_place_section): Don't set hold_use if the
2766 SEC_LOAD or SEC_ALLOC flags differ. Set hold_interp.
2767
2768Mon Feb 24 18:16:09 1997 Ian Lance Taylor <ian@cygnus.com>
2769
2770 From Eric Youngdale <eric@andante.jic.com>:
2771 * ldlex.l (V_TAG, V_IDENTIFIER): New macros.
2772 (VERS_START, VERS_SCRIPT, VERS_NODE): New states to parse version
2773 information.
2774 (ldlex_version_script, ldlex_version_file): New functions.
2775 * ldlex.h (enum input_enum): Add input_version_script.
2776 (ldlex_version_script): Declare.
2777 (ldlex_version_file): Declare.
2778 * ldgram.y (%union): Add deflist, versyms, and versnode.
2779 (VERS_TAG, VERS_IDENTIFIER): New terminals.
2780 (GLOBAL, LOCAL, VERSION, INPUT_VERSION_SCRIPT): New terminals.
2781 (file): Accept INPUT_VERSION_SCRIPT.
2782 (ifile_p1): Accept version.
2783 (version_script_file): New nonterminal.
2784 (version, vers_nodes, vers_node): Likewise.
2785 (verdep, vers_tag, ver_defns): Likewise.
2786 * ldlang.c (lang_elf_version_info): New global variable.
2787 (lang_new_vers_regex): New function.
2788 (lang_new_vers_node): New function.
2789 (version_index): New static variable.
2790 (lang_register_vers_node): New function.
2791 (lang_add_vers_depend): New function.
2792 * ldlang.h (lang_elf_version_info): Declare.
2793 (lang_new_vers_regex, lang_new_vers_node): Declare.
2794 (lang_add_vers_depend, lang_register_vers_node): Declare.
2795 * lexsup.c (OPTION_VERSION_SCRIPT): Define.
2796 (ld_options): Add "version-script".
2797 (parse_args): Handle OPTION_VERSION_SCRIPT.
2798 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
2799 Pass lang_elf_version_info to size_dynamic_sections.
2800 * scripttempl/elf.sc: Add .gnu.version sections.
2801 * ld.texinfo: Document symbol versioning.
2802
2803Fri Feb 21 17:37:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
2804
2805 * Makefile.in (ed30velf.c): New target.
2806 * configure.tgt (d30v-*-*): New target.
2807 * emulparams/d30velf.sh: New file.
2808 * scripttempl/elfd30v.sc: New file.
2809
2810Fri Feb 14 18:28:31 1997 Ian Lance Taylor <ian@cygnus.com>
2811
2812 * ld.texinfo (Option Commands): Document the INCLUDE command.
2813
2814Thu Feb 13 20:31:37 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2815
2816 * configure.in: Call BFD_NEED_DECLARATION on getenv.
2817 * acconfig.h (NEED_DECLARATION_GETENV): New macro.
2818 * sysdep.h (getenv): Declare if NEED_DECLARATION_GETENV.
2819 * ldemul.c (ld_emul_default_target): Do not cast getenv return
2820 value.
2821 * ldmain.c (get_emulation): Likewise.
2822 * configure, config.in: Rebuild.
2823
2824Tue Feb 11 15:34:26 1997 Ian Lance Taylor <ian@cygnus.com>
2825
2826 * scripttempl/elfmips.sc: When relocating, put .mips16.fn.* and
2827 .mips16.call.* in .text.
2828
2829Sun Feb 9 18:09:13 1997 Fred Fish <fnf@cygnus.com>
2830
2831 * emulparams/tic80coff.sh: New (dummy) file for TIc80.
2832 * scripttempl/tic80coff.sc: New (dummy) file for TIc80.
2833 * Makefile.in (etic80coff.c): Add target and rule to build it.
2834 * configure.tgt (tic80-*-coff): Set targ_emul to tic80coff.
2835
2836Fri Jan 31 13:16:53 1997 Ian Lance Taylor <ian@cygnus.com>
2837
2838 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Search for
2839 ".so" in the name, not ".so.".
2840 (gld${EMULATION_NAME}_search_dir): Accept a plain .so file.
2841
2842 * Makefile.in (ld.info): Add -I$(srcdir). From Alan Modra
2843 <alan@spri.levels.unisa.edu.au>.
2844
2845Thu Jan 30 11:31:52 1997 Ian Lance Taylor <ian@cygnus.com>
2846
2847 * emultempl/sunos.em: Include <ctype.h>.
2848 (gld${EMULATION_NAME}_find_so): Skip the directory name when
2849 searching for ".so.".
2850 (gld${EMULATION_NAME}_search_dir): Make sure that the library name
2851 has a version number, and that only version numbers follow .so.
2852
2853Wed Jan 29 18:15:00 1997 Geoffrey Noer <noer@cygnus.com>
2854
2855 * scripttempl/pe.sc:
2856 * scripttempl/ppcpe.sc: add *(.gcc_except_table) to the text
2857 section so Win32 executables are valid.
2858
2859Mon Jan 27 12:28:43 1997 Ian Lance Taylor <ian@cygnus.com>
2860
2861 * scripttempl/elf.sc: Put linkonce reloc section in other
2862 appropriate reloc sections.
2863 * scripttempl/elfmips.sc: Add linkonce support.
2864 * scripttempl/elfppc.sc: Likewise.
2865
2866Fri Jan 24 10:44:09 1997 Jeffrey A Law (law@cygnus.com)
2867
2868 * emulparms/mn10200.sh (OTHER_RELOCATING_SECTIONS): Move the
2869 stack up to 0x80000.
2870 * emulparms/mn10300.sh (OTHER_RELOCATING_SECTIONS): Likewise.
2871
2872Tue Jan 21 12:11:10 1997 Doug Evans <dje@seba.cygnus.com>
2873
2874 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Use PROVIDE
2875 to define `_stack'.
2876
2877Thu Jan 16 17:07:52 1997 Ian Lance Taylor <ian@cygnus.com>
2878
2879 * ld.h (args_type): Rename auxiliary_filter_shlib to
2880 auxiliary_filters, and make it char **.
2881 * lexsup.c (parse_args): Handle -f by setting up an array.
2882 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
2883 new name of auxiliary_filters.
2884
2885 * ld.texinfo (Options): Improve documentation of --filter and
2886 --auxiliary.
2887
2888Tue Jan 14 15:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
2889
2890 * ld.texinfo (Options): Clarify that the normal usage is -T.
2891 (Commands): Likewise.
2892
2893Thu Jan 9 11:26:27 1997 Ian Lance Taylor <ian@cygnus.com>
2894
2895 * scripttempl/armcoff.sc: Correct mask used for .data address.
2896
2897Wed Jan 8 15:14:59 1997 Geoffrey Noer <noer@cygnus.com>
2898
2899 * emultempl/pe.em: make default executable a.exe instead of
2900 a.out
2901
2902Fri Jan 3 17:33:34 1997 Richard Henderson <rth@tamu.edu>
2903
2904 * scripttempl/elf.sc: Move .got closer to .sdata and .sbss by
2905 shifting .plt back. Rumour has it that the NetBSD ld.so depends
2906 on .dynamic being after .got, so we leave that.
2907
2908Fri Jan 3 14:04:40 1997 Ian Lance Taylor <ian@cygnus.com>
2909
2910 * Makefile.in (clean): Don't remove configdoc.texi.
2911 (maintainer-clean): Do remove configdoc.texi.
2912
2913 * ld.texinfo (Operators): Remove '@' from @smallexmple in comment
2914 to avoid confusing texi2roff.
2915
2916Fri Jan 3 11:27:02 1997 Michael Meissner <meissner@tiktok.cygnus.com>
2917
2918 * scripttempl/v850.sc (.zdata): Add .zcommon section.
2919 (.tdata): Add .tcommon and .tcommon_byte sections.
2920
2921Thu Jan 2 18:14:32 1997 Ian Lance Taylor <ian@cygnus.com>
2922
2923 * configure.tgt (mips*el-*-linux*, mips*-*-linux*): New targets.
2924 * scripttempl/elfmips.sc: Use __start as the entry address for
2925 mips*-*-linux*.
2926
2927Tue Dec 31 14:48:30 1996 Ian Lance Taylor <ian@cygnus.com>
2928
2929 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
2930
2931 * ld.h (args_type): Add filter_shlib and auxiliary_filter_shlib
2932 fields.
2933 * lexsup.c (parse_args): Recognize --auxiliary/-f and
2934 --filter/-F.
2935 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
2936 Pass filter_shlib and auxiliary_filter_shlib to
2937 size_dynamic_sections.
2938 * ld.texinfo, ld.1: Document --filter/-F and --auxiliary/-f.
2939
2940Mon Dec 30 13:55:57 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2941
2942 * scripttempl/v850.sc (.tdata) Add .tbss and .tbyte sections.
2943
2944Wed Dec 18 22:57:35 1996 Stan Shebs <shebs@andros.cygnus.com>
2945
2946 * mpw-make.sed: Use NewFolderRecursive for installation.
2947
2948Fri Dec 13 14:08:50 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2949
2950 * scripttempl/v850.sc: Make sure __{e,g}p start relative to the
2951 {s,t}data sections. Do not emit any linker generated symbols if
2952 -r. Use {TEXT,{Z,S,T}DATA}_START_ADDR variables to initialize
2953 where the different sections go. Change some whitespace.
2954
2955 * emulparams/v850.sh ({TEXT,{Z,S,T}DATA}_START_ADDR): Define
2956 appropriately. Remove crud not used anymore.
2957
2958Fri Dec 13 10:19:57 1996 Jeffrey A Law (law@cygnus.com)
2959
2960 * Makefile.in (emn10200.c): Add dependencies.
2961 * configure.tgt: Handle mn10200.
2962 * emulparms/mn10200.sh: New file.
2963
2964Thu Dec 12 17:04:55 1996 Ian Lance Taylor <ian@cygnus.com>
2965
2966 * emultempl/gld960c.em: Include <ctype.h>.
2967 (gld960_set_output_arch): Get the machine type from the -A option
2968 if there is one, rather than always using core.
2969
2970Sat Dec 7 10:07:51 1996 Jeffrey A Law (law@cygnus.com)
2971
2972 * emulparms/mn10300.sh: Handle leading underscores.
2973
2974Thu Dec 5 13:45:58 1996 Ian Lance Taylor <ian@cygnus.com>
2975
2976 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Only
2977 set hold_rel if SEC_ALLOC is set.
2978
2979Tue Dec 3 11:29:20 1996 Ian Lance Taylor <ian@cygnus.com>
2980
2981 * ldlang.c (section_already_linked): Set the output_offset as well
2982 as the output_section when only reading symbols from a file.
2983
2984Mon Dec 2 11:43:50 1996 Ian Lance Taylor <ian@cygnus.com>
2985
2986 * emulparams/*.sh: Make sure that each set of parameters which
2987 uses the elf.sc script sets MACHINE.
2988
2989Wed Nov 27 03:22:05 1996 Jason Merrill <jason@yorick.cygnus.com>
2990
2991 * scripttempl/elf{,mips,ppc}.sc: Add the remaining DWARF sections.
2992 * scripttempl/elfd10v.sc: Likewise.
2993 * scripttempl/v850.sc: Likewise.
2994
2995Tue Nov 26 16:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
2996
2997 * configure: Rebuild with autoconf 2.12.
2998
2999Mon Nov 25 12:17:55 1996 Jim Wilson <wilson@cygnus.com>
3000
3001 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Add case
3002 for bfd_vma to init loop.
3003
3004Mon Nov 25 09:55:07 1996 Jeffrey A Law (law@cygnus.com)
3005
3006 * emulparms/mn10300.sh: Remove bogus '_' prefix for
3007 entry symbol and ctor/dtor stuff.
3008
3009Fri Nov 15 13:00:18 1996 Jeffrey A Law (law@cygnus.com)
3010
3011 * Makefile.in (emn10300.c): Add dependencies.
3012 * configure.tgt: Handle mn10300.
3013 * emulparms/mn10300.sh: New file.
3014
3015Tue Nov 5 10:57:50 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3016
3017 * emulparams/d10velf.sh (READONLY_START_ADDR): Changed to 0x2000004.
3018 (EMBEDDED): Define.
3019
3020Fri Nov 1 10:01:27 1996 Ian Lance Taylor <ian@cygnus.com>
3021
3022 * ld.texinfo: Add section on reporting bugs.
3023
3024 * scripttempl/m68kcoff.sc: Make sure the etext and __CTOR_LIST__
3025 symbols are correctly aligned.
3026
3027Thu Oct 31 09:28:59 1996 Jeffrey A Law (law@cygnus.com)
3028
3029 * scriptempl/v850.sc (zdata): Handle reszdata, romzdata and
3030 romzbss too.
3031
3032Tue Oct 29 12:33:05 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3033
3034 * emulparams/d10velf.sh: Changes needed for D10V-EVA board.
3035 Set TEXT_START_ADDR to 0x1000000. Set READONLY_START_ADDR to
3036 0x2000000.
3037
3038 * scripttempl/elfd10v.sc: Fix calculation of .text. Change
3039 .stack to start at 0x2007ffe.
3040
3041Mon Oct 28 15:37:00 1996 Doug Evans <dje@canuck.cygnus.com>
3042
3043 * configure.tgt (sparclet*-*-aout*): Delete, use sparc*-*-aout*.
3044
3045Wed Oct 23 16:17:22 1996 Jeffrey A Law (law@cygnus.com)
3046
3047 * scriptempl/v850.sc (zdata): Fix typo "zrodata" -> "rozdata".
3048
3049 * scriptempl/v850.sc (zdata): Make sure this stays
3050 in lo-memory.
3051
3052Tue Oct 22 11:36:47 1996 Jeffrey A Law (law@cygnus.com)
3053
3054 * scripttempl/v850.sc (__ep): Put it at the start
3055 of the tda section.
3056
3057 * scriptempl/v850.sc: Move all "normal" sections into
3058 the external memory region (0x100000 - 0x200000).
3059
3060Mon Oct 21 17:16:59 1996 Michael Meissner <meissner@wogglebug.tiac.net>
3061
3062 * scripttempl/elfd10v.sc: Clone from elf.sc, move .text to
3063 0x10000, so that is more room for data.
3064
3065 * emulparams/d10velf.sh (TEXT_START_ADDR): Now 0x100000.
3066 (READONLY_START_ADDR): Now 0x0.
3067 (SCRIPT_NAME): Now elfd10v.
3068
3069 * Makefile.in (ed10velf.c): Depend on elfd10v.sc, not elf.sc.
3070
3071Fri Oct 18 22:12:49 1996 Doug Evans <dje@canuck.cygnus.com>
3072
3073 * emulparams/m32relf.sh (TEXT_START_ADDR): Change from 0 to 0x100.
3074
3075Fri Oct 18 15:43:38 1996 Ian Lance Taylor <ian@cygnus.com>
3076
3077 * Makefile.in (ALL_EMULATIONS): Remove eelf64alpha.o.
3078 (ALL_64_EMULATIONS): New variable.
3079 * configure.in: Accept --enable-64-bit-bfd option. If it is set
3080 with --enable-targets=all, include ALL_64_EMULATIONS in
3081 EMULATION_OFILES.
3082 * configure: Rebuild.
3083
3084Fri Oct 18 12:58:35 1996 Jeffrey A Law (law@cygnus.com)
3085
3086 * scripttempl/v850.sc (__gp, __ep): Define.
3087
3088Thu Oct 17 18:14:07 1996 Ian Lance Taylor <ian@cygnus.com>
3089
3090 * ld.texinfo: Try to consistently use a single or a double dash
3091 for each option.
3092
3093Thu Oct 17 10:17:20 1996 Doug Evans <dje@canuck.cygnus.com>
3094
3095 * emulparams/m32relf.sh (EMBEDDED): Define.
3096
3097Thu Oct 17 10:56:49 1996 Jeffrey A Law (law@cygnus.com)
3098
3099 * scripttempl/v850.sc (.zdata): Add this before .text.
3100 (.sdata): Also include .rosdata as part of the .sdata.
3101 (.tdata): Include this just before .sdata.
3102
3103 * emulparms/v850.sh (SCRIPT_NAME): Use "v850" not "elf".
3104 * scripttempl/v850.sc: Wrap script with a "cat << EOF".
3105
3106Wed Oct 16 23:10:01 1996 Jeffrey A Law (law@cygnus.com)
3107
3108 * scripttempl/v850.sc: New linker script for the V850.
3109 * Makefile.in: Use it.
3110
3111Thu Oct 10 17:57:00 1996 Ian Lance Taylor <ian@cygnus.com>
3112
3113 * emulparams/elf32b4300.sh: Define _gp in OTHER_GOT_SYMBOLS, not
3114 OTHER_READWRITE_SECTIONS.
3115 * emulparams/elf32l4300.sh: Likewise.
3116
3117Wed Oct 9 14:36:18 1996 Ian Lance Taylor <ian@cygnus.com>
3118
3119 * ld.h (ld_config_type): Add warn_section_align field.
3120 * lexsup.c (OPTION_WARN_SECTION_ALIGN): Define.
3121 (ld_options): Add --warn-section-align.
3122 (parse_args): Handle --warn-section-align.
3123 * ldlang.c (lang_size_sections): If warn_section_align, warn if
3124 the start of a section changes due to alignment.
3125 * ld.texinfo, ld.1: Document --warn-section-align.
3126 * ld.texinfo: Change some single dashes to double dashes.
3127
3128 * emultempl/pe.em (set_pe_subsystem): Record entry symbol for each
3129 subsystem type. Ifdef out os2 type. Recognize a version number.
3130
3131Tue Oct 8 12:07:13 1996 Ian Lance Taylor <ian@cygnus.com>
3132
3133 * emultempl/pe.em (set_pe_subsystem): When setting the subsystem
3134 to windows, set the entry point.
3135
3136 * Makefile.in (ldlex.c): Don't pass any options to $(LEX).
3137
3138Mon Oct 7 17:29:05 1996 Ian Lance Taylor <ian@cygnus.com>
3139
3140 * ld.texinfo (Options): Mention .so extensions for shared
3141 libraries.
3142
3143Sun Oct 6 22:35:36 1996 Jason Merrill <jason@yorick.cygnus.com>
3144
3145 * scripttempl/elf{,mips,ppc}.sc: Add DWARF 2 sections.
3146
3147Fri Oct 4 18:49:31 1996 Ian Lance Taylor <ian@cygnus.com>
3148
3149 * scripttempl/m68kcoff.sc: Only set the address of .text if
3150 RELOCATING.
3151
3152Fri Oct 4 10:59:52 1996 Doug Evans <dje@canuck.cygnus.com>
3153
3154 * emulparams/sparcaout.sh ({BIG,LITTLE}_OUTPUT_FORMAT): Define.
3155 * scripttempl/aout.sc ({BIG,LITTLE}_OUTPUT_FORMAT): Provide default.
3156 (OUTPUT_FORMAT): Support bi-endian targets.
3157
3158Thu Oct 3 13:52:03 1996 Ian Lance Taylor <ian@cygnus.com>
3159
3160 * fnmatch.h, fnmatch.c: Remove (now in libiberty).
3161 * Makefile.in: Rebuild dependencies.
3162 (CFILES): Remove fnmatch.c.
3163 (HFILES): Remove fnmatch.h.
3164 (OFILES): Remove fnmatch.o.
3165
3166Thu Oct 3 15:41:24 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
3167
3168 * Makefile.in (mostlyclean): Move config.log to distclean.
3169
3170Wed Oct 2 23:45:25 1996 Geoffrey Noer <noer@cygnus.com>
3171
3172 * emultmpl/pe.em: increase size of stack reserve to 0x2000000
3173 (necessary in order to compile parse.c in gcc sources under NT)
3174
3175Wed Oct 2 14:49:10 1996 Ian Lance Taylor <ian@cygnus.com>
3176
3177 * lexsup.c (ld_options): Fix typo in --rpath-link description.
3178 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Suggest
3179 --rpath if a needed library is not found.
3180
3181Tue Oct 1 16:17:33 1996 Joel Sherrill <joel@oarcorp.com>
3182
3183 * configure.tgt (mips*-*-rtems*): New target, like mips*-*-elf*.
3184
3185Tue Oct 1 15:50:34 1996 Ian Lance Taylor <ian@cygnus.com>
3186
3187 * ld.texinfo (Options): Give more detail on -l option.
3188
3189 * scripttempl/elfmips.sc: Handle CREATE_SHLIB the same way that
3190 elf.sc does, so that glibc works better.
3191
3192 * ldver.c (ld_program_version): New variable.
3193 (ldversion): Use it.
3194 * ldver.h (ld_program_version): Declare.
3195 * lexsup.c (ld_options): Handle --dll-verbose like --verbose, not
3196 --version. Change --version handling to match current GNU
3197 standards.
3198 (help): Print bug report address.
3199
3200Mon Sep 30 12:14:43 1996 Doug Evans <dje@canuck.cygnus.com>
3201
3202 * Makefile.in (em32relf.c): Add rule for.
3203 * configure.tgt (m32r-*-*): Recognize.
3204 * emulparams/m32relf.sh: New file.
3205
3206Thu Sep 26 13:58:47 1996 Stan Shebs <shebs@andros.cygnus.com>
3207
3208 * mpw-make.sed: Add symbolic doublequoting to ldmain compile edit.
3209 * mpw-config.in: Add mips-*-* case as mips-elf, and use more
3210 wildcards in matching.
3211 * mpw-emipself.c: New file, pregenerated mips elf emulation.
3212
3213Tue Sep 17 12:18:21 1996 Ian Lance Taylor <ian@cygnus.com>
3214
3215 * ldint.texinfo: Rewrote.
3216
3217 * configure.tgt: Add cases for MIPS 5000 like MIPS 4300.
3218
3219Mon Sep 16 17:55:21 1996 Ian Lance Taylor <ian@cygnus.com>
3220
3221 * scripttempl/armcoff.sc: Only define symbols if RELOCATING. Fix
3222 syntax error on __end__ line.
3223
3224 * scripttempl/armcoff.sc: For -N or -n, don't align .data. From
3225 Chris Hadley <Christopher.Hadley@cl.cam.ac.uk>
3226
3227Sun Sep 15 22:09:56 1996 Jeffrey A Law (law@cygnus.com)
3228
3229 * emulparms/v850.sh: Fix OTHER_RELOCATING_SECTIONS.
3230
3231Sun Sep 15 10:38:16 1996 Mark Alexander <marka@cygnus.com>
3232
3233 * emulparms/d10v.sh: Set OTHER_RELOCATING_SECTIONS to put
3234 stack at top of simulator memory.
3235
3236Fri Sep 13 15:49:45 1996 Ian Lance Taylor <ian@cygnus.com>
3237
3238 * ldlex.l (SYMBOLCHARN): Add $, _, and ~.
3239
3240Wed Sep 11 23:30:42 1996 Ian Lance Taylor <ian@cygnus.com>
3241
3242 * ldmain.c (get_emulation): Check for -mips4 like -mips1, et. al.
3243
3244Thu Sep 5 15:24:12 1996 Ian Lance Taylor <ian@cygnus.com>
3245
3246 * ldlang.c (section_already_linked): Accept a lang_input_statement
3247 as the PTR argument. If the file is symbols only, discard all
3248 input sections.
3249 (ldlang_add_file): Pass entry to bfd_map_over_sections.
3250
3251Wed Sep 4 15:53:43 1996 Ian Lance Taylor <ian@cygnus.com>
3252
3253 * configure.tgt (alpha-*-gnu*): New target. From Fila Kolodny
3254 <fila@ibi.com>.
3255
3256Tue Sep 3 00:52:54 1996 Jeffrey A Law (law@cygnus.com)
3257
3258 * emulparms/v850.sh: Set OTHER_RELOCATING_SECTIONS
3259
3260Sun Sep 1 21:48:58 1996 Jeffrey A Law (law@cygnus.com)
3261
3262 * emulparms/v850.sh: Set EMBEDDED.
3263
3264Fri Aug 30 22:30:30 1996 Jeffrey A Law (law@cygnus.com)
3265
3266 * emulparms/v850.sh: Entry symbol is "_start", tweak
3267 ctor/dtor support.
3268
3269Fri Aug 30 18:32:31 1996 Ian Lance Taylor <ian@cygnus.com>
3270
3271 * configure.tgt (sh-*-elf*): New target.
3272 * emulparams/shelf.sh: New file.
3273 * emulparams/shlelf.sh: New file.
3274 * Makefile.in (ALL_EMULATIONS): Add eshelf.o and eshlelf.o.
3275 (eshelf.c, eshlelf.c): New targets.
3276 * scripttempl/elf.sc: If EMBEDDED is defined, then don't add
3277 SIZEOF_HEADERS to TEXT_START_ADDR. Expand CTOR_START and CTOR_END
3278 around .ctors, and DTOR_START and DTOR_END around .dtors. Expand
3279 OTHER_RELOCATING_SECTIONS if RELOCATING.
3280
3281Thu Aug 29 16:57:46 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3282
3283 * configure.{host,tgt} (i[345]86-*-*): Recognize i686 for pentium
3284 pro.
3285
3286Mon Aug 26 12:58:11 1996 Ian Lance Taylor <ian@cygnus.com>
3287
3288 * ldgram.y (section): Add opt_nocrossrefs; pass value to
3289 lang_enter_overlay.
3290 (opt_nocrossrefs): New nonterminal.
3291 * ldlex.l: Recognize NOCROSSREFS keyword in EXPRESSION mode.
3292 * ldlang.c (overlay_nocrossrefs): New static variable.
3293 (lang_enter_overlay): Add nocrossrefs parameter.
3294 (lang_leave_overlay): Only add nocrossrefs if overlay_nocrossrefs
3295 is set. Initialize overlay_nocrossrefs.
3296 * ldlang.h (lang_enter_overlay): Update declaration.
3297 * ld.texinfo (Overlays): Update documentation.
3298
3299 * ldver.c (ldversion): Print GNU ld in the version message.
3300
3301Thu Aug 22 17:10:40 1996 Ian Lance Taylor <ian@cygnus.com>
3302
3303 * configure.host: Set HLDENV.
3304 * configure.in: Substitute HLDENV.
3305 * configure: Rebuild.
3306 * Makefile.in (HLDENV): New variable.
3307 ($(LD_PROG)): Use $(HLDENV).
3308
3309Thu Aug 22 16:29:28 1996 Jeffrey A Law (law@cygnus.com)
3310
3311 * Makefile.in (ev850.c): New target.
3312 * configure.tgt (v850-*-*): New target.
3313 * emulparams/v850.sh: New file.
3314
3315Thu Aug 22 11:16:02 1996 Stan Shebs <shebs@andros.cygnus.com>
3316
3317 * mpw-make.sed: Add @DASH_C_FLAG@ to compiler edit.
3318
3319Wed Aug 21 11:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
3320
3321 * scripttempl/elf.sc: Put .gnu.linkonce* sections in appropriate
3322 containing sections.
3323
3324Mon Aug 19 13:01:42 1996 Ian Lance Taylor <ian@cygnus.com>
3325
3326 * fnmatch.c: Include sysdep.h.
3327
3328Mon Aug 19 11:28:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3329
3330 * genscripts.sh: Undo 8/16 change.
3331
3332 * emulparams/d10velf.sh (MACHINE): Explicitly set to nothing.
3333
3334Fri Aug 16 19:18:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3335
3336 * genscripts.sh: Explicitly reset any shell variables set or used
3337 by the various .sc scripts to allow inadvertant use of these
3338 names as normal environment variables by the person running
3339 configure.
3340
3341 * Makefile.in (ed10velf.c): Use tdir_d10v, not tdir_arcelf.
3342
3343Fri Aug 16 14:15:41 1996 James G. Smith <jsmith@cygnus.co.uk>
3344
3345 * scripttempl/armcoff.sc (__bss_start__, __bss_end__,
3346 __data_start__, __data_end__): Added to keep in sync. with the
3347 default ARM crt0.s. Added __CTOR_LIST__ and __DTOR_LIST__ support.
3348
3349Thu Aug 8 14:24:56 1996 Ian Lance Taylor <ian@cygnus.com>
3350
3351 * ldcref.c (check_reloc_refs): If info->same, look for any symbol
3352 defined in info->defsec, not just the section symbol.
3353
3354Wed Aug 7 14:40:48 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
3355
3356 * configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
3357 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
3358 (NEED_DECLARATION_SBRK): New macro.
3359 * configure, config.in: Rebuild.
3360 * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
3361 * ldmain.c (sbrk): Declare if HAVE_SBRK and
3362 NEED_DECLARATION_SBRK.
3363
3364 * ldlang.c (lang_record_phdrs): Cast xmalloc and xrealloc return.
3365
3366Mon Aug 5 16:26:14 1996 Ian Lance Taylor <ian@cygnus.com>
3367
3368 * ldlex.l: Recognize OVERLAY.
3369 * ldgram.y: Add section_phdr field to %union.
3370 (section): Handle phdr_opt result. Add OVERLAY case.
3371 (opt_exp_without_type): New nonterminal.
3372 (phdr_opt): Return list of phdrs.
3373 (overlay_section): New nonterminal.
3374 * ldlang.c: Include <ctype.h>.
3375 (lang_leave_output_section_statement): Add phdrs parameter.
3376 Change all callers.
3377 (lang_section_in_phdr): Remove.
3378 (overlay_vma, overlay_lmn, overlay_max): New static variables.
3379 (struct overlay_list): Define.
3380 (overlay_list): New static variable.
3381 (lang_enter_overlay, lang_enter_overlay_section): New functions.
3382 (lang_leave_overlay_section, lang_leave_overlay): New functions.
3383 * ldlang.h (lang_leave_output_section_statement): Update
3384 declaration for new parameter.
3385 (lang_section_in_phdr): Don't declare.
3386 (lang_enter_overlay, lang_enter_overlay_section): Declare.
3387 (lang_leave_overlay_section, lang_leave_overlay): Declare.
3388 * ld.texinfo (Overlays): New node under SECTIONS, documenting
3389 overlays.
3390
3391 * ldlex.l: Recognize MAX and MIN.
3392 * ldgram.y (MAX, MIN): New terminals.
3393 (exp): Recognize MAX and MIN.
3394 * ldexp.c (fold_binary): Handle MAX and MIN.
3395 * ld.texinfo (Arithmetic Functions): Document MAX and MIN.
3396
3397 * ld.texinfo (PHDRS): Use @cindex, not @kindex, for program header
3398 index entries.
3399
3400 * ldgram.y (SIZEOF, ADDR): Do not specify type.
3401
3402 * ldcref.c (check_nocrossref): Skip symbols with no output
3403 sections.
3404
3405Fri Aug 2 14:57:49 1996 Ian Lance Taylor <ian@cygnus.com>
3406
3407 * ldgram.y (LOADADDR): New terminal.
3408 (exp): Handle LOADADDR.
3409 * ldlex.l: Recognize LOADADDR.
3410 * ldexp.c (exp_print_token): Add LOADADDR.
3411 (fold_name): Implement LOADADDR.
3412 * ldlang.c (exp_init_os): Treat LOADADDR like ADDR.
3413 * ld.texinfo (Arithmetic Functions): Document LOADADDR.
3414
3415Thu Aug 1 12:52:19 1996 Ian Lance Taylor <ian@cygnus.com>
3416
3417 * ld.h (check_nocrossrefs): Declare.
3418 * ldlang.h (struct lang_nocrossref): Define.
3419 (struct lang_nocrossrefs): Define.
3420 (nocrossref_list): Declare.
3421 (lang_add_nocrossref): Declare.
3422 * ldlex.l: Recognize NOCROSSREFS keyword.
3423 * ldgram.y (%union): Add nocrossref field.
3424 (NOCROSSREFS): New terminal.
3425 (ifile_p1): Recognize NOCROSSREFS.
3426 (nocrossref_list): New nonterminal.
3427 * ldlang.c (nocrossref_list): Define.
3428 (lang_add_nocrossref): New function.
3429 * ldmain.c (main): If nocrossref_list is not NULL, call
3430 check_nocrossrefs.
3431 (warning_callback): Free symbols if there is no place to store
3432 them.
3433 (notice): Call add_cref if nocrossref_list is not NULL.
3434 * ldcref.c: Include "ldexp.h" and "ldlang.h".
3435 (check_nocrossrefs): New function.
3436 (check_nocrossref): New static function.
3437 (struct check_refs_info): Define.
3438 (check_refs, check_reloc_refs): New static functions.
3439 * Makefile.in: Rebuild dependencies.
3440 * ld.texinfo (Option Commands): Document NOCROSSREFS.
3441
3442 * ld.texinfo (Section Placement): Improve the wording of the
3443 wildcard documentation. Mention that wildcards are only searched
3444 for on the command line, not in the file system.
3445
3446 * emultempl/sunos.em (gld${EMULATION_NAME}_after_open): Move
3447 definition of lib_path inside condition where it is used.
3448
3449Wed Jul 31 13:17:10 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3450
3451 * emulparams/d10velf.sh: Now works with elf.sc.
3452
3453Wed Jul 31 11:52:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3454
3455 * emulparams/d10velf.sh (SCRIPT_NAME): Change to vanilla.
3456
3457Tue Jul 30 14:46:42 1996 Ian Lance Taylor <ian@cygnus.com>
3458
3459 * ldlang.c (lang_size_sections): Add the section VMA to the result
3460 value when computing the address of a section.
3461
3462 * ld.h (args_type): Add cref field.
3463 * lexsup.c (parse_args): Set command_line.cref.
3464 * ldmain.c (main): Check command_line.cref rather than
3465 link_info.notice_all.
3466 (notice): Likewise.
3467
3468 * ldcref.c (output_one_cref): Don't crash if a symbol is defined
3469 in a section without an owner.
3470
3471Mon Jul 29 17:23:33 1996 Ian Lance Taylor <ian@cygnus.com>
3472
3473 * fnmatch.h, fnmatch.c: New files.
3474 * ldlex.l: Remove unused definition of FILENAME. Add definition
3475 of WILDCHAR. In SCRIPT mode, accept any sequence of WILDCHAR as a
3476 NAME.
3477 * ldgram.y (file_NAME_list): Accept '*' and '?' specially.
3478 (input_section_spec): Accept '?' specially.
3479 (statement): Change exp to mustbe_exp in length and FILL cases.
3480 (section): Call ldlex_script before section statements, and call
3481 ldlex_popstate after them.
3482 * ldlang.c: Include "fnmatch.h".
3483 (wildcardp): New static function.
3484 (wild_section): Permit the section name to be a wildcard.
3485 (wild_file): New static function, broken out of wild.
3486 (wild): Call wild_file. Permit the file name to be a wildcard.
3487 (open_input_bfds): Don't call lookup_name for a wildcard pattern.
3488 * Makefile.in: Rebuild dependencies.
3489 (CFILES): Add fnmatch.c.
3490 (HFILES): Add fnmatch.h.
3491 (OFILES): Add fnmatch.o.
3492 * ld.texinfo: Document that file and section names can now be
3493 wildcard patterns.
3494
3495 * ldlang.c (lang_place_orphans): Correct condition: place a common
3496 section if not relocateable or if common definitions are forced.
3497
3498Wed Jul 24 12:16:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3499
3500 * emulparams/d10velf.sh (SCRIPT_NAME): Change to elf.
3501
3502Wed Jul 24 13:38:22 1996 Michael Meissner <meissner@wogglebug.tiac.net>
3503
3504 * configure.tgt (d10v-*-*): Don't require the -elf, allow plain d10v.
3505
3506Tue Jul 23 10:36:19 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3507
3508 * Makefile.in (ed10velf.c): New target.
3509 * configure.tgt (d10v-*-elf*): New target.
3510 * emulparams/d10velf.sh: New file.
3511
3512Thu Jul 18 16:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
3513
3514 * configure.tgt (sparc*-*-sysv4*): New target. From Andrew Gierth
3515 <ANDREWG@microlise.co.uk>.
3516
3517 * configure.host: Change irix5 to irix[56]*.
3518 * configure.tgt: Likewise.
3519
3520Wed Jul 17 10:52:46 1996 Kim Knuttila <krk@cygnus.com>
3521
3522 * emultempl/pe.em (sort_sections): Pay attention to return code.
3523
3524 * ldmisc.c (demangle): Remove all prefix '.'s from a name.
3525
3526Mon Jul 15 11:49:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3527
3528 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Round
3529 the value of __start_SECNAME to the alignment required by the
3530 section to be placed.
3531
3532Tue Jul 9 12:09:02 1996 Ian Lance Taylor <ian@cygnus.com>
3533
3534 * configure.tgt (mips*el-*-elf*): Use elf32elmip.
3535 (mips*-*-elf*): Use elf32ebmip.
3536 * emulparams/elf32bmip.sh (EMBEDDED): Don't define.
3537 * emulparams/elf32lmip.sh (EMBEDDED): Don't define.
3538 * emulparams/elf32elmip.sh: New file; copy of elf32lmip.sh with
3539 EMBEDDED defined.
3540 * emulparams/elf32ebmip.sh: New file; copy of elf32bmip.sh with
3541 EMBEDDED defined.
3542 * emulparams/elf32b4300.sh (EMBEDDED): Define.
3543 * emulparams/elf32l4300.sh (EMBEDDED): Define.
3544 * Makefile.in (ALL_EMULATIONS): Add eelf32ebmip.o eelf32elmip.o.
3545 (eelf32ebmip.c, eelf32elmip.c): New targets.
3546
3547Thu Jul 4 12:01:03 1996 Ian Lance Taylor <ian@cygnus.com>
3548
3549 * ldver.c (ldversion): Set version to cygnus-2.7.1.
3550
3551 * Released binutils 2.7.
3552
3553 * emulparams/pc532macha.sh: Rename from pc532machaout.sh to avoid
3554 System V file name limitations.
3555 * configure.tgt (nc32k-pc532-mach*, ns32k-pc532-ux*): Use
3556 pc532macha rather than pc532machaout.
3557 * Makefile.in (ALL_EMULATIONS): Change epc532machaout.o to
3558 epc532macha.o.
3559 (epc532macha.c): Rename target from epc532machaout.c.
3560
3561Wed Jul 3 11:40:10 1996 Ian Lance Taylor <ian@cygnus.com>
3562
3563 * ldlang.c (print_padding_statement): Use %u, not %x, to print
3564 fill value.
3565
3566Sun Jun 30 11:16:43 1996 Stan Shebs <shebs@andros.cygnus.com>
3567
3568 * mpw-eppcmac.c: Update to reflect May 23 change to aix.em.
3569
3570Thu Jun 27 14:03:42 1996 Ian Lance Taylor <ian@cygnus.com>
3571
3572 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Put the .sa
3573 file just before the .so file, rather than just after.
3574
3575 * configure.host: Use -print-file-name=FILE rather than piping
3576 -print-libgcc-file-name through sed.
3577 (i[345]86*-*-sco*, i[345]86-*-isc*): Create crtbegin.o and
3578 crtend.o files, in case gcc doesn't use them.
3579 * Makefile.in (mostlyclean): Remove crtbegin.o and crtend.o.
3580
3581Wed Jun 26 15:57:21 1996 Ian Lance Taylor <ian@cygnus.com>
3582
3583 * configure.tgt (mips*-dec-osf*): New target.
3584
3585Tue Jun 25 22:15:29 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
3586
3587 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
3588 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
3589 (docdir): Removed.
3590 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
3591 (AC_PROG_INSTALL): Added.
3592 * configure: Rebuilt.
3593
3594Mon Jun 24 18:48:16 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3595
3596 * scripttempl/elfppc.sc (_GLOBAL_OFFSET_TABLE_): Don't do a
3597 PROVIDE of _GLOBAL_OFFSET_TABLE_, since it needs to be at a
3598 non-fixed location.
3599
3600Mon Jun 24 17:55:31 1996 Jouke Numan <jnuman@bazis.nl>
3601
3602 * ldlang.h (enum section_type): Define.
3603 (lang_output_section_statement_type): Remove loadable field. Add
3604 sectype field.
3605 (lang_enter_output_section_statement): Change flags parameter in
3606 prototype to sectype.
3607 * ldgram.y (typebits): Remove.
3608 (sectype): New static variable.
3609 (opt_at): Use sectype rather than typebits.
3610 (type): Set sectype rather than typebits.
3611 (atype): Likewise.
3612 * ldlex.l: Recognize DSECT, COPY, INFO, and OVERLAY in
3613 EXPRESSION mode.
3614 * ldlang.c (lang_output_section_statement_lookup): Set sectype
3615 field rather than loadable field.
3616 (wild_doit): Check sectype rather than loadable.
3617 (lang_record_phdrs): Likewise.
3618 (lang_enter_output_section_statement): Rename flags parameter to
3619 sectype. Set sectype field rather than loadable field. Set flags
3620 field based on sectype.
3621
3622Mon Jun 24 12:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
3623
3624 * scripttempl/elf.sc: Force .stab* and .comment sections to start
3625 at 0.
3626
3627 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
3628 using shared libraries.
3629 * configure: Rebuild with autoconf 2.10.
3630
3631Fri Jun 21 17:40:56 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
3632
3633 * configure.tgt: Add support for *-*-rtems* configurations.
3634
3635Fri Jun 21 13:05:51 1996 Richard Henderson <rth@tamu.edu>
3636
3637 * configure.tgt (alpha-*-linuxecoff*): New target.
3638 (alpha-*-linux*): Use elf64alpha.
3639 * emulparams/elf64alpha.sh: New file.
3640 * emultempl/elf32.em: If ELFSIZE is not set, set it to 32. Use
3641 ${ELFSIZE} rather than 32 when calling BFD routines.
3642 (hold_rodata): New static variable.
3643 (gld${EMULATION_NAME}_place_orphan): Use hold_rodata for a
3644 readonly section that is not code.
3645 (gld${EMULATION_NAME}_place_section): Set hold_rodata. Don't use
3646 a .rel section unless its bfd_section field is not NULL.
3647 * Makefile.in (ALL_EMULATIONS): Add eelf64alpha.o.
3648 (eelf64alpha.c): New target.
3649
3650Fri Jun 21 12:45:46 1996 Ian Lance Taylor <ian@cygnus.com>
3651
3652 * ldmisc.c (vfinfo): Correct handling of 0 in %W case.
3653
3654Thu Jun 20 13:55:28 1996 Ian Lance Taylor <ian@cygnus.com>
3655
3656 Add enough support to understand the gcc svr3.ifile script:
3657 * ldlex.l: Recognize BLOCK and GROUP in EXPRESSION context. Add
3658 BIND keyword.
3659 * ldgram.y: Add BIND token.
3660 (section): Recognize GROUP.
3661 (opt_ext_with_type): Recognize a couple of cases of BIND.
3662 * ldlang.c (init_os): Don't do anything if section is already
3663 initialized. Call exp_init_os on addr_tree field.
3664 (exp_init_os): New static function.
3665 (map_input_to_output_sections): Call exp_init_os on assignment
3666 expression.
3667 (lang_place_orphans): Check for common sections by name COMMON
3668 rather than by common_section field. Don't warn about absence of
3669 [COMMON] command.
3670
3671 * ldlang.h (lang_input_statement_type): Remove useless fields
3672 common_section, common_output_section, and complained, as well as
3673 all references to them.
3674
3675 * ldexp.c: Reindent a lot of code.
3676 (exp_fold_tree): Call FAIL rather than einfo in default case.
3677
3678Wed Jun 19 11:40:14 1996 Ian Lance Taylor <ian@cygnus.com>
3679
3680 * configure.host (m88*-*-dgux*): Quote HOSTING_CRT0. From
3681 <randall.hron@medaphis.com>.
3682
3683Tue Jun 18 15:53:09 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3684
3685 * scripttempl/h8300s.sc: New file for H8/S.
3686 * emulpararms/h8300s.sh: New file for H8/S.
3687 * Makefile.in (ALL_EMULATIONS): Add H8/S.
3688 (e_h8300s.c): Add dependencies.
3689 * configure.tgt: Add H8/S to targ_extra_emuls.
3690
3691Tue Jun 18 17:55:39 1996 Ian Lance Taylor <ian@cygnus.com>
3692
3693 * configure.tgt (i[345]86*-*-isc*): New target. From
3694 <uddeborg@carmen.se>.
3695
3696Wed Jun 12 12:46:21 1996 Ian Lance Taylor <ian@cygnus.com>
3697
3698 * lexsup.c: Include "libiberty.h".
3699 (parse_args): Copy the -Y argument into memory.
3700 (set_default_dirlist): Don't put the ':' back into the directory
3701 list.
3702
3703Fri Jun 7 11:27:42 1996 Ian Lance Taylor <ian@cygnus.com>
3704
3705 * emultempl/sunos.em: Include libiberty.h.
3706 (gld${EMULATION_NAME}_set_symbols): New static function to add
3707 LD_LIBRARY_PATH to the list of search directories.
3708 (ld_${EMULATION_NAME}_emulation): Add new set_symbols routine.
3709
3710Thu Jun 6 11:50:31 1996 Ian Lance Taylor <ian@cygnus.com>
3711
3712 * emulparams/elf32bmip.sh (OTHER_GOT_SYMBOLS): Use ALIGN(16)
3713 rather than . when computing _gp value. From Per Fogelstrom.
3714 * emulparams/elf32lmip.sh (OTHER_GOT_SYMBOLS): Likewise.
3715
3716 * ldmain.c (main): Don't close and unlink the file on error, since
3717 remove_output will do it anyhow.
3718 * ldlang.c (open_output): Set boolean variable to true, not 1.
3719
3720Wed Jun 5 18:34:14 1996 James G. Smith <jsmith@cygnus.co.uk>
3721
3722 * emulparams/{elf32b4300.sh,elf32l4300.sh} (SCRIPT_NAME): Use
3723 elfmips instead of elf.
3724
3725Tue Jun 4 18:43:07 1996 Ian Lance Taylor <ian@cygnus.com>
3726
3727 * ldcref.c: New file.
3728 * ld.h (add_cref, output_cref): Declare.
3729 * ldmain.c (main): Initialize notice_all field. If it is set at
3730 end of link, call output_cref.
3731 (notice): Rename from notice_ysym. Check notice_all.
3732 * ldmisc.c (finfo): Make globally visible.
3733 * ldmisc.h (finfo): Declare.
3734 * lexsup.c (OPTION_CREF): Define.
3735 (ld_options): Add "cref".
3736 (parse_args): Handle OPTION_CREF.
3737 * Makefile.in: Rebuild dependencies.
3738 (CFILES): Add ldcref.c.
3739 (OFILES): Add ldcref.o.
3740 * ld.texinfo, ld.1: Document --cref.
3741
3742Tue Jun 4 12:12:25 1996 Tom Tromey <tromey@csk3.cygnus.com>
3743
3744 * Makefile.in (install): Make $(tooldir) and $(tooldir)/bin.
3745
3746Fri May 31 12:40:55 1996 Ian Lance Taylor <ian@cygnus.com>
3747
3748 * emultempl/pe.em (sort_sections): Don't assume that a
3749 wild_statement has a section name.
3750
3751Wed May 29 13:13:35 1996 Ian Lance Taylor <ian@cygnus.com>
3752
3753 * scripttempl/elfmips.sc: Quote test -z argument.
3754
3755 * ld.texinfo: Clarify the CONSTRUCTORS command.
3756
3757Thu May 23 16:07:44 1996 Ian Lance Taylor <ian@cygnus.com>
3758
3759 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Initialize
3760 file, not impfile.
3761
3762Wed May 22 11:31:30 1996 Doug Evans <dje@seba.cygnus.com>
3763
3764 * ldlang.c (wild_doit): Don't copy over SEC_LINK_{ONCE,DUPLICATES}
3765 if final link.
3766 * emultempl/pe.em (sfunc): Renamed to sort_by_file_name.
3767 (sort_by_section_name, sort_sections_1): New functions.
3768 (sort_sections): Only sort by file name sections in .idata.
3769 Add "Grouped Sections" support.
3770 (gld${EMULATION_NAME}_place_orphan): Rewrite to support Grouped
3771 Sections.
3772 (gld${EMULATION_NAME}_place_section): Delete.
3773 * scripttempl/pe.sc (.text,.data,.rdata): Add *(.foo\$).
3774 (.CRT,.rsrc): Rewrite to use Grouped Section support.
3775
3776Tue May 21 14:31:48 1996 Stan Shebs <shebs@andros.cygnus.com>
3777
3778 * mpw-eppcmac.c: Update to reflect changes to aix.em.
3779
3780Sun May 19 16:59:44 1996 Doug Evans <dje@seba.cygnus.com>
3781
3782 * ldlang.c (dprint_statement): Stop printing at end of list.
3783
3784Sat May 18 13:12:05 1996 Steve Chamberlain <sac@slash.cygnus.com>
3785
3786 Support for --force-exe-suffix
3787 * ld.h (args_type): Add force_exe_suffix.
3788 * ld.texinfo: Add documentation.
3789 * ldmain.c (main): Add support for option.
3790 * lexsup.c (OPTION_FORCE_EXE_SUFFIX): New.
3791 (ld_options, parse_args): Add support for option.
3792
3793Wed May 15 12:50:25 1996 Jim Wilson <wilson@chestnut.cygnus.com>
3794
3795 * emultempl/pe.em (set_pe_value): Pass 0 not 16 to strtoul call.
3796
3797Fri May 10 16:28:44 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3798
3799 * scripttempl/elfppc.sc (__stack): Make __stack 0 if it was
3800 referenced but not defined.
3801
3802Thu May 9 08:52:23 1996 Rob Savoye <rob@chinadoll.cygnus.com>
3803
3804 * emulparams/{elf32bmip.sh,elf32lmip.sh,mipsidt.sh,mipsidtl.sh}:
3805 Set a new variable to signify if the final target is an embedded
3806 system.
3807 * scripttempl/{mips.sc,elfmips.sc}: Don't add SIZEOF_HEADERS to
3808 .text for an embedded system.
3809
3810Tue May 7 10:56:11 1996 Doug Evans <dje@canuck.cygnus.com>
3811
3812 * scripttempl/pe.em (gld${EMULATION_NAME}_place_orphan): New function.
3813 (gld${EMULATION_NAME}_place_section): New function.
3814 (hold_{section,use,text,rdata,data}): New static locals.
3815 (ld_${EMULATION_NAME}_emulation): Update orphan field.
3816 * scripttempl/pe.sc: Whitespace cleanup. Semicolon usage cleanup.
3817 (INIT,FINI): Delete, unused.
3818 (.text): Document orphan .text.foo sections.
3819 (.rdata): Document orphan .rdata.foo sections.
3820 (.data): Document orphan .data.foo sections.
3821
3822Tue May 7 11:35:46 1996 Jeffrey A Law (law@cygnus.com)
3823
3824 * scripttempl/h8300.sc: Place ".tiny" sections right
3825 after ".data" sections.
3826 * scripttempl/h8300h.sc: Place ".tiny" sections into
3827 the "tiny" memory region, 0xff8000 through 0xffff00.
3828
3829 * scripttempl/h8300.sc: Set the entry point to the value of
3830 "_start" rather than the start of the text segment.
3831 * scripttempl/h8300h.sc: Likewise.
3832
3833 * scripttempl/h8300.sc: Place .rodata sections before .text
3834 sections in main ram.
3835 * scripttempl/h8300h.sc: Likewise.
3836
3837Mon May 6 23:32:30 1996 Jeffrey A Law (law@cygnus.com)
3838
3839 * scripttempl/h8300h.sc: Use "eight", not "eightbit" for the
3840 8-bit region and 8-bit sections.
3841
3842Wed May 1 17:50:06 1996 Doug Evans <dje@canuck.cygnus.com>
3843
3844 * ldlang.c (section_already_linked): Fix typos.
3845
3846Mon Apr 29 20:31:06 1996 Doug Evans <dje@canuck.cygnus.com>
3847
3848 * scripttempl/pe.sc (.endjunk): Define __end__.
3849
3850Mon Apr 29 17:05:13 1996 Ian Lance Taylor <ian@cygnus.com>
3851
3852 * ldlang.c (longest_section_name): Remove.
3853 (SECTION_NAME_MAP_LENGTH): Define.
3854 (print_size, print_alignment, print_fill, print_section): Remove.
3855 (print_flags): Remove.
3856 (lang_map): Rewrite.
3857 (print_output_section_statement): Rewrite.
3858 (print_assignment): Rewrite.
3859 (print_one_symbol): Rewrite.
3860 (print_input_section): Rewrite.
3861 (print_fill_statement): Rewrite.
3862 (print_data_statement): Rewrite.
3863 (print_address_statement): New static function.
3864 (print_reloc_statement): Rewrite.
3865 (print_padding_statement): Rewrite.
3866 (print_wild_statement): Rewrite.
3867 (print_statement_list): Clean up.
3868 (print_statement): Clean up. Some minor output changes.
3869 (print_statements): Clean up.
3870 (load_symbols): Put another - before -whole-archive.
3871 * ldexp.c (exp_print_tree): Change etree_value and etree_rel to
3872 print 0x and to omit leading zeroes. For etree_rel, use %B to
3873 print the BFD. For etree_assign, remove the space after the
3874 destination name.
3875 * ldwrite.c: Include "libiberty.h".
3876 (clone_section): Call xstrdup, not strdup.
3877 (ldwrite): Don't print any map information.
3878 (print_symbol_table, print_file_stuff, print_symbol): Remove.
3879 * ldmain.c (main): Call lang_map when appropriate.
3880 * ldmisc.c (vfinfo): Add support for %W.
3881 (print_address): Remove.
3882 * ldmisc.h (print_address): Don't declare.
3883 * Makefile.in: Rebuild dependencies.
3884
3885Mon Apr 29 10:29:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3886
3887 * configure.host (m68*-*-linux*): Add -dynamic-linker to
3888 HOSTING_CRT0. Search -lgcc both before and after -lc in
3889 HOSTING_LIBS. Look for crt{begin,end}.o in the compiler directory
3890 at first.
3891 (i[345]86-*-linux*): Look for crt{begin,end}.o in the compiler
3892 directory at first.
3893
3894Fri Apr 26 14:42:27 1996 Ian Lance Taylor <ian@cygnus.com>
3895
3896 * ldmisc.h (demangle): Declare.
3897 * ldmisc.c: Include "libiberty.h". Include demangle.h with "",
3898 not <>.
3899 (demangle): Make non-static. Remove remove_underscore paramter.
3900 Always return an allocated string.
3901 (vfinfo): Free result of demangle. Add case 'G'. Use %T to print
3902 functionname, rather than calling demangle. Print a colon between
3903 the BFD(section+offset) and the line number.
3904 * ldmain.c (add_archive_element): Improve format of archive
3905 information in map file.
3906 (constructor_callback): Don't print anything to the map file.
3907 * ldlang.c (lang_one_common): Improve format of common symbol
3908 information in map file.
3909 * ldctor.c (ldctor_build_sets): If producing a map file, print set
3910 information.
3911 * ldwrite.c (print_symbol_table): Print a newline before the
3912 header in the map file.
3913 * Makefile.in: Rebuild dependencies.
3914
3915 * ldmisc.c (vfinfo): Reindent.
3916
3917Mon Apr 22 12:07:32 1996 Ian Lance Taylor <ian@cygnus.com>
3918
3919 * ldlang.c (lang_size_sections): If _cooked_size is not 0, then
3920 don't clobber it when not relaxing.
3921
3922 * ld.h (ld_config_type): Remove traditional_format field.
3923 * ldmain.c (main): Use link_info.traditional_format rather than
3924 config.traditional_format.
3925 * ldlang.c (ldlang_open_output): Likewise.
3926 * lexsup.c (parse_args): Likewise.
3927 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Likewise.
3928 * mpw-eppcmac.c (gldppcmacos_parse_args): Likewise.
3929
3930 * ldlang.c (wild_doit): Discard debugging sections if we are
3931 stripping debugging information.
3932
3933 * emulparams/z8002.sh (ARCH): Set to z8002, not z8k.
3934
3935Tue Apr 16 16:38:32 1996 Ian Lance Taylor <ian@cygnus.com>
3936
3937 * ldexp.c (fold_binary): Correct handling of subtraction with
3938 absolute values.
3939 (fold_name): Permit symbols in lang_allocating_phase_enum.
3940
3941 * scripttempl/aout.sc: Only PROVIDE __stack when RELOCATING. Undo
3942 accidental changes in last patch.
3943
3944Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3945
3946 * configure.tgt (powerpc*-*-{sysv,linux}): Add aliases.
3947 (powerpcle*-*-{sysv,solaris}): Ditto.
3948
3949Mon Apr 15 14:50:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
3950
3951 * scripttempl/aout.sc: Add PROVIDE (__stack = 0) so I can use it
3952 in m68k/crt0.S without things blowing up.
3953
3954Fri Apr 12 16:40:56 1996 Rob Savoye <rob@chinadoll.cygnus.com>
3955
3956 * scripttempl/m68kcoff.sc: Remove default address for .data so
3957 .text, .data, and .bss are all sequential.
3958
3959Thu Apr 11 12:05:35 1996 Ian Lance Taylor <ian@cygnus.com>
3960
3961 * scripttempl/m68kcoff.sc: Remove regions and simplify.
3962
3963Wed Apr 10 14:41:53 1996 Jeffrey A Law (law@cygnus.com)
3964
3965 * scripttempl/h8300.sc: Add the "8-bit area" in the upper 256
3966 bytes of the address space. Put data from the ".eight" sections
3967 into the 8-bit area.
3968 * scripttempl/h8300h.sc: Likewise.
3969
3970Tue Apr 9 14:10:42 1996 Doug Evans <dje@canuck.cygnus.com>
3971
3972 * emultempl/generic.em (gld${EMULATION_NAME}_before_parse):
3973 Pass $ARCH to ldfile_set_output_arch instead of setting
3974 ldfile_output_architecture directly.
3975
3976Tue Apr 9 14:22:15 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3977
3978 * scripttempl/elfppc.sc (.init,.fini): Put .init, .fini section
3979 next to .text. Put _etext after .text, .init, .fini, and
3980 .rodata{,2} sections.
3981
3982Tue Apr 9 12:18:57 1996 Ian Lance Taylor <ian@cygnus.com>
3983
3984 * ld.texinfo: Rearrange option documentation.
3985
3986 * lexsup.c (ld_options): New static array.
3987 (parse_args): Build shortopts and longopts from ld_options array.
3988 (help): New static function.
3989 * ldver.h (help): Don't declare.
3990 * ldver.c (ldversion): Reindent.
3991 (help): Remove.
3992
3993 * ld.texinfo, ld.1: Mention -E as a synonym for -export-dynamic.
3994
3995Mon Apr 8 11:56:23 1996 Ian Lance Taylor <ian@cygnus.com>
3996
3997 * emultempl/elf32.em: When checking for a native emulation, check
3998 that the current emulation is the default emulation.
3999 * emultempl/sunos.em: Likewise.
4000
4001 * configure.in: Permit --enable-shared to specify a list of
4002 directories.
4003 * configure: Rebuild.
4004
4005 * lexsup.c (parse_args): Add -E as a synonym for -export-dynamic,
4006 for HP/UX compatibility.
4007
4008Fri Apr 5 14:30:14 1996 Ian Lance Taylor <ian@cygnus.com>
4009
4010 * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): New
4011 static function, if ${host} = ${target}.
4012 (gld${EMULATION_NAME}_after_open): Call check_ld_so_conf to find a
4013 needed shared library if ${host} = $[target}.
4014
4015 * configure.host (i[345]86-*-linux*): Add -dynamic-linker to
4016 HOSTING_CRT0. Search -lgcc both before and after -lc in
4017 HOSTING_LIBS.
4018
4019 * configure.tgt: Add i[345]86-*-freebsdelf* target; from John
4020 Polstra <jdp@polstra.com>.
4021
4022Fri Apr 5 18:11:25 1996 James G. Smith <jsmith@cygnus.co.uk>
4023
4024 * emulparams/elf32{b,l}4300.sh (MACHINE): Add explicit
4025 architecture number.
4026 * scripttempl/elf.sc: Use $MACHINE definition if present.
4027 * configure.tgt (targ_extra_emuls): Force 4100 build to use same
4028 template as 4300.
4029
4030Mon Apr 1 17:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
4031
4032 * ldlang.c (lang_size_sections): Change region check to handle
4033 regions which end at the highest possible address correctly.
4034 From Roland Weber <roweber@ira.uka.de>.
4035
4036 * ldlang.c (section_already_linked): New static function.
4037 (wild_doit): Discard sections with SEC_EXCLUDE set if not doing a
4038 relocateable link. Don't worry about section being NULL, since it
4039 never should be. Don't call init_os unless the section is going
4040 to be added.
4041 (ldlang_add_file): Call section_already_linked for each section.
4042 * ldmain.c (multiple_definition): Don't warn about multiple
4043 definitions in sections which are being discarded.
4044
4045Sun Mar 31 00:30:47 1996 steve chamberlain <sac@slash.cygnus.com>
4046
4047 * scripttempl/{ppcpe.sc, pe.sc} (.junk): Remove and use /DISCARD/.
4048 * emultempl/pe.em (init): Remove special case PPC code.
4049
4050Fri Mar 29 00:01:29 1996 Jeffrey A Law (law@cygnus.com)
4051
4052 * scripttempl/h8300.sc: Make vectors section 0xc4 bytes long
4053 so as not to overwrite the magic syscall entry at 0xc4.
4054 * scripttempl/h8300h.sc: Likewise.
4055
4056Thu Mar 28 11:05:47 1996 Doug Evans <dje@canuck.cygnus.com>
4057
4058 * configure.tgt (sparc64-*-solaris2*): Delete.
4059 Stick with sparc-*-solaris2*.
4060
4061Wed Mar 27 12:33:24 1996 Ian Lance Taylor <ian@cygnus.com>
4062
4063 * ld.h (DISCARD_SECTION_NAME): Define to "/DISCARD/".
4064 * ldlang.c (init_os): Fail on an attempt to initialize any section
4065 named DISCARD_SECTION_NAME.
4066 (wild_doit): Discard input sections assigned to an output section
4067 named DISCARD_SECTION_NAME.
4068 * ld.texinfo: Document use of /DISCARD/.
4069
4070 * ldlang.c: Fix some indentation and comments.
4071
4072Tue Mar 26 18:14:49 1996 Ian Lance Taylor <ian@cygnus.com>
4073
4074 * ldmain.c (main): Call bfd_set_error_program_name.
4075
4076Thu Mar 21 13:17:34 1996 Ian Lance Taylor <ian@cygnus.com>
4077
4078 * ld.texinfo: Fix a couple of indexing entries. Mention that
4079 --verbose displays builtin linker scripts.
4080
4081 * ldmisc.c (vfinfo): case 'I': If the file is not in an archive,
4082 and the local symbol name does not match the filename, print the
4083 filename as well.
4084
4085 Patches from John Polstra <jdp@polstra.com> for FreeBSD ELF:
4086 * lexsup.c (parse_args): -Bshareable is a synonym for -shared.
4087 * emulparams/elf_i386.sh (NONPAGED_TEXT_START_ADDR): Make the same
4088 as TEXT_START_ADDR.
4089
4090Wed Mar 20 18:18:25 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4091
4092 * ld.texinfo: Fix typos. Use @pxref only inside parentheses.
4093
4094Wed Mar 20 16:56:15 1996 Ian Lance Taylor <ian@cygnus.com>
4095
4096 * ldmain.c (add_wrap): New function.
4097 * ldmain.h (add_wrap): Declare.
4098 * lexsup.c (parse_args): Call add_wrap.
4099
4100Tue Mar 19 16:44:20 1996 Doug Evans <dje@canuck.cygnus.com>
4101
4102 * configure.host (sparc*-*-solaris2* host): Accept any sparc variant.
4103
4104Wed Mar 13 17:47:31 1996 Jeffrey A Law (law@cygnus.com)
4105
4106 * scripttempl/h8300.sc: Change name of page zero memory
4107 from "null" to "vectors". Create an output section for
4108 vectors. Add comments on how to explicitly place items
4109 in the vector table.
4110 * scripttempl/h8300h.sc: Likewise.
4111
4112Wed Mar 13 12:40:18 1996 Ian Lance Taylor <ian@cygnus.com>
4113
4114 * emultempl/lnk960.em (machine_table): Add jx and hx.
4115
4116 * genscripts.sh: Don't use ${9:-xx}, since Ultrix /bin/sh doesn't
4117 support it.
4118
4119Tue Mar 12 12:43:59 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
4120
4121 * ld.h (ld_config_type): Add warn_multiple_gp field.
4122 * lexsup.c (parse_args): Handle --warn-multiple-gp.
4123 * ldmain.c (warning_callback): Suppress multiple gp values warning
4124 if --warn_multiple_gp was not used.
4125 * ld.texinfo, ld.1: Document --warn-multiple-gp.
4126
4127Tue Mar 12 12:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
4128
4129 * lexsup.c (parse_args): Handle --wrap.
4130 * ldmain.c (main): Initialize link_info.wrap_hash.
4131 * ldexp.c (fold_name): Use bfd_wrapped_link_hash_lookup in DEFINED
4132 and NAME cases.
4133 * ld.texinfo, ld.1: Document --wrap.
4134
4135 * configure: Rebuild with autoconf 2.8.
4136
4137 Don't do SunOS style dynamic linking for sparc-aout:
4138 * configure.tgt (sparc64-*-aout*): Use sparcaout, not sun4.
4139 (sparclite*-fujitsu-*, sparc*-*-aout): Likewise.
4140 (sparc*-wrs-vxworks*): Likewise.
4141 * emulparams/sparcaout.sh: New file.
4142 * Makefile.in (ALL_EMULATIONS): Add esparcaout.o.
4143 (esparcaout.c): New target.
4144
4145Wed Mar 6 16:06:52 1996 J.T. Conklin <jtc@rtl.cygnus.com>
4146
4147 * scripttempl/elfppc.sc (.sdata2, .sbss2): Implement Feb 2 change
4148 in a different manner to work around differences in shell variable
4149 expansion.
4150
4151Wed Mar 6 18:08:18 1996 Ian Lance Taylor <ian@cygnus.com>
4152
4153 * ldemul.h (ldemul_unrecognized_file): Declare.
4154 (ldemulation_xfer_type): Add unrecognized_file field.
4155 * ldemul.c (ldemul_unrecognized_file): New function.
4156 * ldlang.c (load_symbols): If a file can not be recognized, call
4157 ldemul_unrecognized_file before trying it as a linker script.
4158 * aix.em (gld${EMULATION_NAME}_unrecognized_file): New static
4159 function.
4160 (gld${EMULATION_NAME}_read_file): Use FOPEN_RT, not "r".
4161 (ld_${EMULATION_NAME}_emulation): Initialize unrecognized_file.
4162
4163Mon Mar 4 14:11:17 1996 Ian Lance Taylor <ian@cygnus.com>
4164
4165 * ldlang.c (wild): Handle foo.a(.text) by mapping each included
4166 member of foo.a separately. From Jouke Numan <jnuman@bazis.nl>.
4167
4168Fri Mar 1 10:24:59 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4169
4170 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
4171 Search trinary.cond rather than searching trinary.lhs twice.
4172
4173Tue Feb 27 15:08:43 1996 Stan Shebs <shebs@andros.cygnus.com>
4174
4175 * mpw-make.sed: Edit out shared library support.
4176 (@TDIRS@): Edit out, can't use genscripts.
4177
4178Tue Feb 27 15:09:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4179
4180 * configure.tgt (m68k-*-linuxaout*, m68k-*-linux*): New targets.
4181 * emulparams/m68klinux.sh: New file.
4182 * emultempl/linux.em (gld${EMULATION_NAME}_before_allocation):
4183 Call bfd_${EMULATION_NAME}_size_dynamic_sections instead of
4184 bfd_linux_size_dynamic_sections.
4185 * Makefile.in (ALL_EMULATIONS): Add em68klinux.o.
4186 (em68klinux.c): New target.
4187 * configure.host (m68*-*-linuxaout*, m68*-*-linux*): New hosts.
4188
4189Tue Feb 27 12:55:46 1996 Ian Lance Taylor <ian@cygnus.com>
4190
4191 * Makefile.in (ALL_EMULATIONS): Sort into alphabetical order.
4192 Fill in missing entries.
4193
4194 * lexsup.c (parse_args): Recognize --no-whole-archive.
4195 * ldlang.h (lang_input_statement_type): Add whole_archive field.
4196 * ldlang.c (new_afile): Set whole_archive field.
4197 (load_symbols): Check input file specific whole_archive field
4198 rather than global variable.
4199 * ld.texinfo, ld.1: Document --no-whole-archive.
4200
4201Tue Feb 20 16:07:00 1996 Ian Lance Taylor <ian@cygnus.com>
4202
4203 * configure.tgt: Correct gldi960 to gld960.
4204
4205Mon Feb 19 11:16:44 1996 Ian Lance Taylor <ian@cygnus.com>
4206
4207 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Check
4208 the SONAME if it is available.
4209 (gld${EMULATION_NAME}_stat_needed): Use the SONAME, not the
4210 filename, when checking for conflicting library versions. Don't
4211 assume that the suffix is only numbers and dots.
4212
4213 * ld.texinfo: Mention that -R can be used for -rpath.
4214
4215Sun Feb 18 15:05:17 1996 Ian Lance Taylor <ian@cygnus.com>
4216
4217 * configure.host: Check for 'do not mix' from native linker before
4218 trying to use -rpath.
4219
4220Thu Feb 15 13:58:06 1996 Ian Lance Taylor <ian@cygnus.com>
4221
4222 * configure.in: Remove explicit substitution of CFLAGS; autoconf
4223 does it anyhow.
4224 * configure: Rebuild.
4225 * Makefile.in (LDFLAGS): Set to @LDFLAGS@.
4226
4227 * configure.in: Call AC_PROG_CC before configure.host.
4228 * configure: Rebuild.
4229 * configure.host: Remove go32 host, since it should no longer be
4230 necessary. Don't set CC for romp host.
4231
4232 * scripttempl/elf.sc: Don't skip a page in virtual memory space if
4233 the text segment ends exactly on a page boundary.
4234
4235 * configure.in: Substitute RPATH_ENVVAR.
4236 * configure: Rebuild.
4237 * configure.host: Set RPATH_ENVVAR.
4238 * Makefile.in (RPATH_ENVVAR): New variable.
4239 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
4240
4241Wed Feb 14 18:49:01 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
4242
4243 * configure.in: Redo emulation handling so that each emulation
4244 searches the correct tool directory, based on the target alias.
4245 For example, "configure --enable-targets=m68k-coff i386-linux"
4246 will search /usr/local/i386-linux/lib for linux and
4247 /usr/local/m68k-coff/lib for m68k-coff.
4248 * configure: Rebuild.
4249 * configure.tgt: Add special tdir settings for Linux.
4250 * Makefile.in: Add @TDIRS@. Pass "$(tdir_EMUL)" to ${GENSCRIPTS}
4251 for each eEMUL.c target.
4252 * genscripts.sh: Accept specific alias as 9th argument, and use it
4253 in LIB_PATH.
4254
4255Wed Feb 14 16:38:36 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
4256
4257 * ldlang.c (lang_set_startof): Don't do anything for a
4258 relocateable link.
4259
4260 * ldgram.y (mri_script_file): Call mri_draw_tree.
4261 * mri.c (mri_draw_tree): Make globally visible. Don't bother to
4262 create memory regions.
4263 (mri_load): Don't call mri_draw_tree.
4264 * mri.h (mri_draw_tree): Declare.
4265
4266 * configure.tgt (m68*-*-psos): New target.
4267 * emulparams/m68kpsos.sh: New file.
4268 * scripttempl/psos.sc: New file.
4269 * Makefile.in (ALL_EMULATIONS): Add em68kpsos.o.
4270 (em68kpsos.c): New target.
4271
4272Wed Feb 14 11:09:25 1996 Ian Lance Taylor <ian@cygnus.com>
4273
4274 * configure.tgt (*-*-ieee*): New target; use vanilla.
4275
4276 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Strip
4277 `:foo' from ${ARCH}.
4278
4279Tue Feb 13 15:58:58 1996 Bryan Ford <baford@snake.cs.utah.edu>
4280
4281 * scripttempl/i386msdos.sc: Don't pad the .text section. Put
4282 .rodata in .data.
4283
4284Tue Feb 13 14:04:19 1996 Ian Lance Taylor <ian@cygnus.com>
4285
4286 * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
4287
4288 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Warn if
4289 it looks like we might be linking in two different versions of the
4290 same shared library. Based on a patch from H J Lu <hjl@zoom.com>.
4291
4292Thu Feb 8 19:25:54 1996 Ian Lance Taylor <ian@cygnus.com>
4293
4294 * ldlang.c (lang_size_sections): Increment the section size when a
4295 padding statement is encountered.
4296
4297Wed Feb 7 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
4298
4299 * configure.in: Look for --enable-shared. Change the value of
4300 BFDLIB when linking against a shared library on SunOS.
4301 * configure: Rebuild.
4302 * configure.host: If using a shared BFD library, try to pass a
4303 reasonable -rpath option when linking.
4304 * Makefile.in (BFDLIB): Set to @BFDLIB@.
4305
4306Tue Feb 6 12:29:14 1996 Doug Evans <dje@charmed.cygnus.com>
4307
4308 * emulparams/elf64_sparc.sh (ARCH): Change to `sparc:v9'.
4309 * emultempl/generic.em: Strip `:foo' from ${ARCH}.
4310
4311Mon Feb 5 16:25:30 1996 Ian Lance Taylor <ian@cygnus.com>
4312
4313 Support for building bfd and opcodes as shared libraries, based on
4314 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
4315 * configure.in (HLDFLAGS): New substitution.
4316 * configure: Rebuild.
4317 * configure.host: Set HLDFLAGS on SunOS.
4318 * Makefile.in (HLDFLAGS): New variable.
4319 (BFDDEP): New variable.
4320 (BFDLIB): Change to -L../bfd -lbfd.
4321 ($(LD_PROG)): Depend upon $(BFDDEP) rathern than $(BFDLIB). Use
4322 $(HLDFLAGS) in link.
4323 (check): Set LD_LIBRARY_PATH in the environment.
4324
4325Fri Feb 2 19:26:25 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4326
4327 * scripttempl/elfppc.sc (.sdata2, .sbss2): Put .sdata2 and .sbss
4328 in the read-only section, not read/write unless we are making a
4329 shared library.
4330 (.debug*): Add dwarf debug sections.
4331 (.rela.{sdata*,sbss*}): Add sections.
4332
4333Fri Feb 2 16:50:21 1996 Ian Lance Taylor <ian@cygnus.com>
4334
4335 * configure: Regenerate.
4336
4337Thu Feb 1 10:50:46 1996 Ian Lance Taylor <ian@cygnus.com>
4338
4339 * emulparams/elf_i386.sh (TEXT_START_ADDR): Change to 0x8048000,
4340 for SVR4 compatibility.
4341
4342 * ldexp.c (exp_fold_tree): Correct handling of ABSOLUTE.
4343
4344Wed Jan 31 17:30:19 1996 Steve Chamberlain <sac@slash.cygnus.com>
4345
4346 * configure.tgt (i[345]86-*-cygwin32, powerpcle-*-cygwin32): New.
4347 * emultempl/pe.em (definfo init): Make the default stack reserve
4348 of a PPC larger.
4349
4350Wed Jan 31 14:34:23 1996 Richard Henderson <rth@tamu.edu>
4351
4352 * configure.tgt (m68*-apple-aux*): New target.
4353 * emulparams/m68kaux.sh: New file.
4354 * scripttempl/m68kaux.sc: New file.
4355 * Makefile.in (ALL_EMULATIONS): Add em68kaux.o.
4356 (em68kaux.c): New target.
4357
4358Tue Jan 30 13:18:56 1996 Ian Lance Taylor <ian@cygnus.com>
4359
4360 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Ignore
4361 -bnoentry, since the right thing tends to happen anyhow.
4362
4363Mon Jan 29 12:29:26 1996 Ian Lance Taylor <ian@cygnus.com>
4364
4365 * ld.texinfo, ld.1: Document -export-dynamic.
4366
4367Fri Jan 26 11:11:55 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4368
4369 * emultempl/sunos.em: Check for native compile by comparing
4370 ${target} and ${host}.
4371
4372Thu Jan 25 16:46:58 1996 James G. Smith <jsmith@cygnus.co.uk>
4373
4374 * emulparams/{elf32b4300.sh, elf32l4300.sh}: Changed
4375 TEXT_START_ADDR to allow use on IDT and PMON systems.
4376
4377Wed Jan 24 20:59:40 1996 Steve Chamberlain <sac@slash.cygnus.com>
4378
4379 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
4380 correct spelling.
4381
4382Wed Jan 24 16:59:19 1996 Doug Evans <dje@charmed.cygnus.com>
4383
4384 * configure.tgt (sparc64-*-solaris2*): New configuration.
4385 (sparc64-*-aout*): Renamed from sparc64*.
4386
4387Mon Jan 22 13:01:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4388
4389 * Makefile.in (GENSCRIPTS): Pass @host@ @target@ @target_alias@.
4390 * genscripts.sh: Set host, target and target_alias variables.
4391 Check for native compile by comparing ${target} and ${host}.
4392 * emultempl/elf32.em: Likewise.
4393 * scripttempl/elfmips.sc: Test ${target}, not ${target_alias}.
4394
4395Mon Jan 22 11:03:23 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4396
4397 * scripttempl/elfppc.sc: Refine eabi support to better support
4398 .sdata, .sdata2, .sbss, etc. sections.
4399
4400Tue Jan 16 15:16:58 1996 Ian Lance Taylor <ian@cygnus.com>
4401
4402 * ldgram.y (%union): Add phdr field.
4403 (phdr): Use phdr_qualifiers rather than opt_hdrs and opt_at.
4404 (phdr_qualifiers): New nonterminal. Add support for FLAGS.
4405 (opt_hdrs, hdr): Remove.
4406 (phdr_val): New nonterminal.
4407 * ldlang.c (lang_new_phdr): Replace hdrs parameter with filehdr
4408 and phdrs parameters. Add flags parameter.
4409 (lang_record_phdrs): Update for changes to lang_phdr. Pass flags
4410 to bfd_record_phdr.
4411 * ldlang.h (struct lang_phdr): Replace hdrs field with filehdr and
4412 phdrs fields. Add flags field.
4413 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Remove.
4414 (lang_new_phdr): Update declaration.
4415 * ld.texinfo: Document FLAGS.
4416
4417Mon Jan 15 15:07:19 1996 Ian Lance Taylor <ian@cygnus.com>
4418
4419 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation):
4420 Don't make a shared library because of an undefined reference to
4421 __GLOBAL_OFFSET_TABLE_.
4422
4423 Add some Irix 5 support, mostly from Kazumoto Kojima
4424 <kkojima@info.kanagawa-u.ac.jp>:
4425 * emulparams/elf32bmip.sh (SCRIPT_NAME): Change to elfmips.
4426 (SHLIB_TEXT_START_ADDR): Define.
4427 (OTHER_GOT_SYMBOLS): Define.
4428 (OTHER_READWRITE_SECTIONS): Remove initialization of _gp.
4429 (EXECUTABLE_SYMBOLS): Don't define.
4430 (DYNAMIC_LINK): Don't define.
4431 * emulparams/elf32lmip.sh: Same changes as elf32bmip.sh.
4432 * scripttempl/elfmips.sc: New file.
4433 * configure.host (mips*-dec-bsd*): Change mips to mips*.
4434 (mips*-sgi-irix4*): Likewise.
4435 (mips*-sgi-irix5*): New entry.
4436 * Makefile.in (eelf32bmip.c): Depend upon elfmips.sc rather than
4437 elf.sc.
4438 (eelf32lmip.c): Likewise.
4439
4440Sat Jan 13 09:41:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4441
4442 * scripttempl/elfppc.sc: Remove support for .rel.* sections. Add
4443 .rela.got.neg section.
4444
4445Fri Jan 12 14:56:19 1996 Ian Lance Taylor <ian@cygnus.com>
4446
4447 * scripttempl/sh.sc: Only build constructors when CONSTRUCTING.
4448
4449 * ldmisc.c: Include <stdarg.h> rather than <varargs.h> if
4450 ANSI_PROTOTYPES is defined. Remove special handling of
4451 WINDOWS_NT. Various indendation fixes.
4452 (vfinfo): Change fmt parameter to const char *.
4453 (info_msg): Write <stdarg.h> version.
4454 (einfo, minfo, finfo): Likewise.
4455 (info_assert): Change file parameter to const char *.
4456 * ldmisc.h (einfo, minfo, info_msg): If ANSI_PROTOTYPES is
4457 defined, use a real prototype.
4458 (info_assert): Change first parameter to be const char *.
4459
4460Fri Jan 12 13:29:55 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4461
4462 * scripttempl/elfppc.sc: Add support for .sdata2/.sbss2, etc. Add
4463 in old support that 2.7.2 needs, but the current compiler does
4464 not.
4465
4466 * Makefile.in (eelf32{,l}ppc.c): Fix up dependencies to use the
4467 correct Linker script template.
4468
4469 * emulparams/elf32{,l}ppc.sh (TEXT_START_ADDR): Set to 0x40000,
4470 not 0x400000.
4471 (DATA_ADDR,NONPAGED_TEXT_START_ADDR): Delete.
4472
4473Tue Jan 9 15:53:02 1996 Ian Lance Taylor <ian@cygnus.com>
4474
4475 * scripttempl/alpha.sc: Put .rconst right after .rdata.
4476
4477Fri Jan 5 14:07:45 1996 Steve Chamberlain <sac@slash.cygnus.com>
4478
4479 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation):
4480 sort using right pointer.
4481
4482Fri Jan 5 12:25:47 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4483
4484 * scripttempl/elfppc.sc: Remove support for creating special
4485 labels for eabi section begin/end here. The compiler now uses
4486 crt{i,n}.o to create these symbols.
4487
4488Thu Jan 4 17:08:58 1996 Ian Lance Taylor <ian@cygnus.com>
4489
4490 * configure.host: Change existing Linux HOSTING_CRT0 to be used
4491 for a.out only, and put in appropriate HOSTING_CRT0 and
4492 HOSTING_LIBS values for Linux ELF.
4493
4494Thu Jan 4 12:02:05 1996 Doug Evans <dje@canuck.cygnus.com>
4495
4496 * scripttempl/h8300.sc: Use all 64K for ram.
4497 * scripttempl/h8300h.sc: Define 256K ram size.
4498
4499Thu Dec 21 15:57:18 1995 Ian Lance Taylor <ian@cygnus.com>
4500
4501 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Pass
4502 export_defines as true to bfd_xcoff_size_dynamic_sections if -unix
4503 was used, regardless of whether -bE was used.
4504
4505Tue Dec 19 17:35:38 1995 Ian Lance Taylor <ian@cygnus.com>
4506
4507 * emultempl/aix.em (gld${EMULATION_NAME}_after_open): Only set
4508 relocateable before calling ldctor_build_sets if the output file
4509 is in an XCOFF format.
4510
4511Fri Dec 15 16:34:36 1995 Ian Lance Taylor <ian@cygnus.com>
4512
4513 * ldwrite.c (build_link_order): When handling a data statement, if
4514 the endianness of the output file is unknown, use the endianness
4515 of the input file.
4516
4517Tue Dec 12 13:55:41 1995 Stan Shebs <shebs@andros.cygnus.com>
4518
4519 * mpw-config.in: Recognize mips-*-* as equivalent to
4520 mips-idt-ecoff.
4521 * mpw-eppcmacos.c: Rename to shorter mpw-eppcmac.c.
4522 * mpw-ld.r: Add version resources.
4523 (cfrg): Use symbolic instead of literal name for executable.
4524
4525Mon Dec 11 15:13:41 1995 Kim Knuttila <krk@cygnus.com>
4526
4527 * scripttempl/ppcpe.sc (FINI): Moved the .reloc section.
4528
4529Wed Dec 6 14:33:50 1995 Doug Evans <dje@canuck.cygnus.com>
4530
4531 * ldlang.c (print_statement{,s}): Delete duplicate prototype.
4532 (print_statement_list): Renamed from print_statement. All callers
4533 updated.
4534 (print_statement): New function to print just one statement.
4535 (print_{data,reloc,padding}_statement): Don't crash if
4536 output_section == NULL.
4537 (dprint_statement): New function.
4538
4539 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix
4540 call to sort_sections.
4541
4542Wed Dec 6 14:59:06 1995 Ian Lance Taylor <ian@cygnus.com>
4543
4544 * emultempl/aix.em (unix_ld): New static variable.
4545 (gld${EMULATION_NAME}_parse_args): Handle -unix.
4546 (gld${EMULATION_NAME}_before_allocation): If unix_ld, pass
4547 gc as false and export_defineds as true to size_dynamic_sections.
4548
4549 * ldexp.c (exp_fold_tree): Permit assignments to dot in the final
4550 phase if the current section is abs_output_section.
4551
4552
4553Tue Dec 5 09:49:39 1995 Doug Evans <dje@canuck.cygnus.com>
4554
4555 * emultempl/pe.em (gld_${EMULATION_NAME}_before_allocation): Fix call
4556 to sort_sections.
4557
4558Fri Dec 1 16:48:36 1995 Ian Lance Taylor <ian@cygnus.com>
4559
4560 * ldgram.y (PHDRS): New token.
4561 (ifile_p1): Accept phdrs.
4562 (section): Accept phdr_opt at the end of the section definition.
4563 (phdr_op): New nonterminal.
4564 (phdrs, phdr_list, phdr, phdr_type, opt_hdrs, hdr): Likewise.
4565 * ldlex.l: Accept PHDRS.
4566 * ldlang.h (struct lang_output_section_phdr_list): Define.
4567 (lang_output_section_statement_type): Add phdrs field.
4568 (struct lang_phdr): Define.
4569 (LANG_PHDR_FILEHDR, LANG_PHDR_PHDRS): Define.
4570 (lang_new_phdr): Declare.
4571 * ldlang.c (lang_phdr_list): New static variable.
4572 (lang_output_section_statement_lookup): Initialize phdrs field.
4573 (lang_process): Call lang_record_phdrs.
4574 (lang_new_phdr): New function.
4575 (lang_section_in_phdr): New function.
4576 (lang_record_phdrs): New static function.
4577 * ld.texinfo: Document PHDRS.
4578
4579Thu Nov 30 13:14:30 1995 Kim Knuttila <krk@cygnus.com>
4580
4581 * scripttempl/ppcpe.sc: Moved .edata into its own section to
4582 expose it.
4583
4584Thu Nov 30 11:32:34 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
4585
4586 * configure.host (m68*-motorola-sysv): Define HOSTING_CRT0 and
4587 HOSTING_LIBS for testing.
4588 (m88*-motorola-sysv3): Define HOSTING_CRT0 and HOSTING_LIBS for
4589 testing.
4590
4591Tue Nov 28 12:14:53 1995 Ian Lance Taylor <ian@cygnus.com>
4592
4593 * lexsup.c (parse_args): Set config.dynamic_link to false for -N
4594 and -n.
4595
4596Mon Nov 27 13:12:09 1995 Ian Lance Taylor <ian@cygnus.com>
4597
4598 * configure: Rebuild with autoconf 2.7.
4599
4600Fri Nov 24 18:35:35 1995 Doug Evans <dje@canuck.cygnus.com>
4601
4602 * scripttempl/pe.sc: Two .junk's is too much junk.
4603
4604Tue Nov 21 16:14:32 1995 Ian Lance Taylor <ian@cygnus.com>
4605
4606 * configure.in: Use BFD_NEED_DECLARATION.
4607 * acconfig.h: Put NEED_DECLARATION_FREE in @TOP@ section.
4608 * configure, config.in: Rebuild with autoconf 2.6.
4609
4610 * ldmain.c (constructor_callback): Don't warn about BFD_RELOC_CTOR
4611 being unsupported if this is not a relocateable link and the input
4612 BFD supports it, since ldctor_build_sets can cope with that case.
4613
4614Fri Nov 17 16:23:15 1995 Stan Shebs <shebs@andros.cygnus.com>
4615
4616 * configure.tgt (powerpc-*-macos*): New target.
4617 * emulparams/ppcmacos.sh: New file, PowerMac emulation.
4618 * Makefile.in (ALL_EMULATIONS): Add eppcmacos.o.
4619 (eppcmacos.c): New target.
4620 * mpw-eppcmacos.c: Update.
4621 * mpw-make.sed: Edit out attempts to use {GENSCRIPTS}.
4622
4623Fri Nov 17 10:37:27 1995 Ian Lance Taylor <ian@cygnus.com>
4624
4625 * Makefile.in (CC_FOR_TARGET): Use @host@ and @target@, not
4626 $(host_canonical) and $(target_canonical).
4627 (CXX_FOR_TARGET): Likewise.
4628
4629Thu Nov 16 11:23:42 1995 Doug Evans <dje@canuck.cygnus.com>
4630
4631 * scripttempl/pe.sc (.endjunk): Move definition of `end' to here
4632 so the malloc heap begins at a sane place.
4633
4634Thu Nov 16 03:09:32 1995 Ken Raeburn <raeburn@cygnus.com>
4635
4636 Version 2.6 released.
4637 * ldver.c (ldversion): Update to 2.6.
4638
4639 * Makefile.in (mostlyclean): Delete ldemul-list.h here, but not
4640 $(GENERATED_*FILES), since they need to be retained by distclean.
4641 (maintainer-clean, realclean): Delete them here.
4642
4643Tue Nov 14 17:08:06 1995 Ian Lance Taylor <ian@cygnus.com>
4644
4645 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Open the
4646 base file with FOPEN_WB, not "w".
4647
4648 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Use the
4649 environment variable LD_RUN_PATH if neither -rpath nor -rpath-link
4650 were used.
4651 (gld${EMULATION_NAME}_before_allocation): Use the environment
4652 variable LD_RUN_PATH if -rpath was not used.
4653 * ld.texinfo, ld.1: Document LD_RUN_PATH.
4654
4655Thu Nov 9 13:09:29 1995 Ian Lance Taylor <ian@cygnus.com>
4656
4657 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Recognize
4658 -bl and -bloadmap options.
4659
4660 * ldfile.c (ldfile_try_open_bfd): If bfd_error_invalid_target,
4661 report a better error.
4662
4663 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Add
4664 new local variable special_sections, and pass it to
4665 size_dynamic_sections. Look through the results, and move the
4666 sections around in the mapping so that they are defined correctly.
4667
4668Wed Nov 8 11:40:59 1995 Ian Lance Taylor <ian@cygnus.com>
4669
4670 * ldemul.c (ldemul_default_target): Cast getenv return value.
4671
4672Tue Nov 7 11:15:36 1995 Kim Knuttila <krk@cygnus.com>
4673
4674 * emulparams/ppcpe.sh (ARCH): New file for PowerPC Portable
4675 Executable support.
4676 * scripttempl/ppcpe.sc: New file for PowerPC Portable Executable
4677 support.
4678
4679 * configure.tgt (targ_extra_emuls): Added powerpcle-pe target.
4680 * Makefile.in (ALL_EMULATIONS): Added eppcpe.o target.
4681
4682 * emultempl/pe.em (TARGET_IS_ppcpe): file tailoring macro
4683 (gld_$_before_allocation): added hooks for toc construction based
4684 on the above macro.
4685
4686Tue Nov 7 11:47:23 1995 Ian Lance Taylor <ian@cygnus.com>
4687
4688 * ld.texinfo: The linker does not use _main as an entry point.
4689
4690Tue Nov 7 11:46:11 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
4691
4692 * scripttempl/m88kbcs.sc (.data): Calculate next boundary modulo
4693 0x2000 not 0x200.
4694
4695Mon Nov 6 10:59:21 1995 Ian Lance Taylor <ian@cygnus.com>
4696
4697 * configure.in: Add test for whether free must be declared.
4698 * sysdep.h: Declare free if necessary. Include "ansidecl.h".
4699 * acconfig.h: Explain NEED_DECLARATION_FREE.
4700 * configure, config.in: Rebuild.
4701
4702 * lexsup.c (parse_args): Take B:: out of shortopts.
4703
4704Sun Nov 5 03:08:28 1995 Ken Raeburn <raeburn@cygnus.com>
4705
4706 * emulparams/i386nbsd.sh (EXECUTABLE_SYMBOLS): Set __DYNAMIC to 0
4707 for now, as with m68k4kbsd, until shared library support gets
4708 done.
4709
4710 * configure.host: For i386 BSD variants, crt0.o lives in
4711 /usr/lib. (True for NetBSD at least, unconfirmed for others.)
4712
4713Wed Nov 1 15:42:45 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
4714
4715 * Makefile.in (ALL_EMULATIONS): Add edelta68.o.
4716 (edelta68.c): New target.
4717 * configure.tgt (m68*-motorola-sysv*): New target.
4718 * emulparams/delta68.sh: New file.
4719 * scripttempl/delta68.sc: New file.
4720
4721 * scripttempl/m88kbcs.sc: Handle .init and .fini. Change section
4722 addresses.
4723
4724Wed Nov 1 11:41:56 1995 Ian Lance Taylor <ian@cygnus.com>
4725
4726 * ldgram.y (mri_script_command): Accept ',' as well as '=' in
4727 ALIGN and ALIGNMOD statements.
4728
4729 * emultempl/aix.em: Include ldgram.h.
4730 (gld${EMULATION_NAME}_parse_args): Handle -pD and -pT, as used on
4731 AIX 4.1.
4732 * Makefile.in ($(EMULATION_OFILES)): Depend upon ldgram.h.
4733
4734Tue Oct 31 18:22:24 1995 David Mosberger-Tang <davidm@azstarnet.com>
4735
4736 * configure.host (alpha-*-linux*): New host.
4737 * configure.tgt (alpha-*-linux*): New target.
4738
4739Tue Oct 31 12:36:52 1995 Ian Lance Taylor <ian@cygnus.com>
4740
4741 * emultempl/aix.em (export_files): Remove.
4742 (import_files): Make static.
4743 (struct export_symbol_list): Define.
4744 (export_symbols): New static variable.
4745 (gld${EMULATION_NAME}_parse_args): Handle an initial -b option
4746 correctly. Call read_file for an export file.
4747 (gld${EMULATION_NAME}_before_allocation): Call
4748 bfd_xcoff_export_symbol for each export symbol, rather than
4749 calling read_file for each export file.
4750 (gld${EMULATION_NAME}_read_file): For an export file, make the
4751 exported symbols undefined, and store them on the export_symbols
4752 list.
4753
4754Sat Oct 28 00:10:03 1995 steve chamberlain <sac@slash.cygnus.com>
4755
4756 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args):
4757 Don't hang if last option is unrecognised.
4758 (gld_${EMULATION_NAME}_set_symbols): Insert created
4759 symbols into ABS output section.
4760
4761Fri Oct 27 18:03:17 1995 Niklas Hallqvist <niklas@appli.se>
4762
4763 * Makefile.in (ALL_EMULATIONS): Added support for the NetBSD
4764 m68k4k arch.
4765 (em68k4knbsd.c): New rule.
4766
4767 * configure.tgt: Added support for the NetBSD m68k4k arch.
4768
4769 * genscripts.sh, ldint.texinfo,
4770 emulparams/{a29k,armaoutb,armaoutl,coff_sparc,ebmon29k,gld960,
4771 gld960coff,go32,h8300,h8300h,h8500,h8500b,h8500c,h8500m,h8500s,
4772 hp300bsd,hp3hpux,hppaelf.sh,i386aout,i386bsd,i386coff,i386go32,
4773 i386linux,i386lynx,i386nbsd,lnk960,m68kaout,m68kcoff,m68klynx,
4774 m88kbcs,mipsbig,mipsbsd,mipsidt,mipsidtl,mipslit,news,ns32knbsd,
4775 pc532machaout,riscix,sa29200,sh,shl,sparclynx,sparcnbsd,
4776 st2000,sun3,sun4,vanilla,vax,vsta,w65,z8001,z8002}.sh: Changed
4777 PAGE_SIZE to TARGET_PAGE_SIZE.
4778
4779 * emulparams/m68knbsd.h: Ditto.
4780 (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR): We have 8K pagesize.
4781 (EXECUTABLE_SYMBOLS): Hardcode __DYNAMIC to zero for the time
4782 being.
4783
4784 * emulparams/m68k4knbsd.sh: New file.
4785
4786 * scripttempl/aout.sc: Expand EXECUTABLE_SYMBOLS if relocating.
4787
4788Fri Oct 27 17:59:09 1995 Ian Lance Taylor <ian@cygnus.com>
4789
4790 * emultempl/aix.em: Include ldctor.h.
4791 (gld${EMULATION_NAME}_after_open): New static function.
4792 (gld${EMULATION_NAME}_before_allocation): Call find_relocs.
4793 (gld${EMULATION_NAME}_find_relocs): New static function.
4794 (gld${EMULATION_NAME}_find_exp_assignment): New static function.
4795 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
4796 * scripttempl/aix.sc: Use CONSTRUCTORS in .data.
4797 * ldctor.c (struct set_info): Move definition into ldctor.h.
4798 (struct set_element): Likewise.
4799 (sets): Make non-static.
4800 (ldctor_add_set_entry): Add name parameter. Save it in the new
4801 set element.
4802 (ldctor_build_sets): Avoid being called twice. Pass set element
4803 name to lang_add_reloc.
4804 * ldctor.h (struct set_info): Move definition here from ldctor.c.
4805 (struct set_element): Likewise. Add new field name.
4806 (sets): Declare.
4807 (ldctor_add_set_entry): Declare new name parameter.
4808 * ldwrite.c (build_link_order): Don't insist that either name or
4809 section be NULL in a lang_reloc_statement.
4810 * ldmain.c (add_to_set): Pass NULL to ldctor_add_new_set_entry for
4811 new name parameter.
4812 (constructor_callback): Pass name to ldctor_add_new_set_entry for
4813 new name parameter.
4814
4815 * ldmisc.c (demangle): Fix indentation. Remove a leading period.
4816
4817Thu Oct 26 22:22:49 1995 Stan Shebs <shebs@andros.cygnus.com>
4818
4819 * mpw-config.in: Add PowerMac target support, generate config.h.
4820 * mac-ld.r: New file, Mac resources.
4821 * mpw-make.sed: New file, edits Makefile.in into MPW syntax.
4822 * mpw-make.in: Remove.
4823 * mpw-eppcmacos.c: Prebuilt version of PowerMac linking script.
4824
4825Thu Oct 26 14:11:26 1995 Ian Lance Taylor <ian@cygnus.com>
4826
4827 * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Treat
4828 -static as a synonym for -bnso.
4829
4830 * scripttempl/aix.sc: Move special symbols inside sections.
4831 Always start .data at 0.
4832
4833Wed Oct 25 11:52:12 1995 Per Bothner <bothner@kalessin.cygnus.com>
4834
4835 * Makefile.in (diststuff): Also make info.
4836 (maintainer-clean realclean): Also delete *.info*.
4837
4838Wed Oct 25 11:27:25 1995 Ian Lance Taylor <ian@cygnus.com>
4839
4840 * emultempl/aix.em: Add support for various AIX linker options,
4841 for AIX import and export files, and for AIX shared objects.
4842 * scripttempl/aix.sc: Add .pad. Put .ds just before the TOC.
4843
4844 * ldmain.c (main): Initialize new field link_info.static_link.
4845
4846 * ldmain.c (add_keepsyms_file): Add \n at end of einfo calls.
4847 (constructor_callback): Likewise.
4848 * ldmisc.c (vfinfo): Likewise.
4849 * ldwrite.c (build_link_order): Likewise.
4850
4851 * ld.texinfo: The MRI ALIGN directive is supported.
4852
4853Mon Oct 23 11:46:43 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
4854
4855 * emulparams/elf32vr4300.sh: Deleted.
4856 * emulparams/elf32vr4300el.sh: Deleted.
4857 * emulparams/elf32b4300.sh: Added.
4858 * emulparams/elf32l4300.sh: Added.
4859 * configure.tgt, Makefile.in: Updated the build to use the
4860 new 8.3 unique names.
4861
4862Thu Oct 19 17:41:46 1995 Ian Lance Taylor <ian@cygnus.com>
4863
4864 * ldlang.c (entry_symbol): Make non-static.
4865 * ldlang.h (entry_symbol): Declare.
4866
4867 * ldlex.l: Treat PROVIDE as a keyword in expression state.
4868
4869Wed Oct 18 17:34:06 1995 steve chamberlain <sac@slash.cygnus.com>
4870
4871 * scripttempl/pe.sc (.bss): Move to be after .text
4872
4873Tue Oct 17 12:22:05 1995 Ian Lance Taylor <ian@cygnus.com>
4874
4875 * emultempl/sunos.em (gld${EMULATION_NAME}_find_exp_assignment):
4876 Search trinary.cond rather than searching trinary.lhs twice. From
4877 linli@ihp.PHys.ethz.CH.
4878
4879 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Move
4880 directory searching code into gld${EMULATION_NAME}_search_dir.
4881 (gld${EMULATION_NAME}_search_dir): New static function, extracted
4882 from gld${EMULATION_NAME}_find_so.
4883 (global_needed, global_found): New static variables.
4884 (gld${EMULATION_NAME}_after_open): New static function.
4885 (gld${EMULATION_NAME}_search_needed): New static function.
4886 (gld${EMULATION_NAME}_try_needed): New static function.
4887 (gld${EMULATION_NAME}_check_needed): New static function.
4888 (ld_${EMULATION_NAME}_emulation): Use new after_open function.
4889 * ld.texinfo, ld.1: Mention -rpath-link on SunOS.
4890
4891 * Makefile.in (eelf32ppc.c): Depend upon elf32.em, not generic.em.
4892 (eelf32lppc.c): Likewise.
4893 * emulparams/elf32lppc.sh (TEMPLATE_NAME): Define as elf32.
4894 (GENERATE_SHLIB_SCRIPT): Define as yes.
4895
4896Mon Oct 16 19:11:13 1995 Ian Lance Taylor <ian@cygnus.com>
4897
4898 * emultempl/elf32.em: Struct bfd_elf_link_needed_list is now named
4899 bfd_link_needed-list; make appropriate changes.
4900
4901 * configure.tgt (powerpc-*-aix*): New target; use aixppc.
4902 (rs6000-*-aix*): New target; use aixrs6.
4903 * emulparams/aixppc.sh, emulparams/aixrs6.sh: New files.
4904 * emultempl/aix.em: New file.
4905 * scripttempl/aix.sc: New file.
4906 * Makefile.in (ALL_EMULATIONS): Add eaixppc.o and eaixrs6.o.
4907 (eaixppc.c, eaixrs6.c): New targets.
4908
4909Fri Oct 13 14:00:37 1995 steve chamberlain <sac@slash.cygnus.com>
4910
4911 * scripttemp/pe.sc (.reloc): Move to the end.
4912
4913Tue Oct 10 17:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
4914
4915 * ldlang.c (lang_finish): Don't try to use an entry_symbol from a
4916 section which was not linked into the final output.
4917
4918Tue Oct 10 10:17:22 1995 steve chamberlain <sac@slash.cygnus.com>
4919
4920 * emultempl/pe.em (gld_${EMULATION_NAME}_parse_args): Fix
4921 fatal typos.
4922
4923Tue Oct 10 01:01:51 1995 Ian Lance Taylor <ian@cygnus.com>
4924
4925 * ld.h (args_type): Add rpath_link field.
4926 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search for
4927 required dependencies in rpath_link path. Only search
4928 LD_LIBRARY_PATH when configured native.
4929 * lexsup.c (parse_args): Recognize -rpath-link.
4930 * ld.1, ld.texinfo: Document -rpath-link.
4931
4932Sat Oct 7 17:07:17 1995 Ian Lance Taylor <ian@cygnus.com>
4933
4934 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
4935 bother searching for needed libraries unless doing a final link.
4936
4937Fri Oct 6 16:26:16 1995 Ken Raeburn <raeburn@cygnus.com>
4938
4939 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4940
4941 * ld/ld.1: Fix formatting bugs.
4942
4943Wed Oct 4 17:37:46 1995 Ian Lance Taylor <ian@cygnus.com>
4944
4945 * ldexp.c (exp_get_abs_int): Return bfd_vma, not int.
4946 * ldexp.h (exp_get_abs_int): Update declaration.
4947 * ldlang.c (print_output_section_statement): Use fprintf_vma to
4948 print return value of exp_get_abs_int.
4949
4950Mon Oct 2 13:56:09 1995 Ian Lance Taylor <ian@cygnus.com>
4951
4952 * emultempl/elf32.em (global_stat): New file static variable.
4953 (gld${EMULATION_NAME}_try_needed): Call stat_needed to make sure
4954 that the file has not already been included under another name.
4955 (gld${EMULATION_NAME}_stat_needed): New static function.
4956
4957Fri Sep 29 12:00:18 1995 Doug Evans <dje@deneb.cygnus.com>
4958
4959 * scripttempl/armcoff.sc: Start .text at 0x8000.
4960 Start .data at 0x40000.
4961
4962Fri Sep 29 11:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
4963
4964 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): If
4965 command_line.rpath is set, use it, rather than the -L options, to
4966 build the rules section.
4967 * ld.texinfo: Document this use of -rpath.
4968
4969 * lexsup.c (parse_args): Don't set link_info.shared for -assert
4970 pure-text. Pass true, not 1, to lang_add_entry.
4971 * emultempl/sunos.em (find_assign): New static variable.
4972 (found_assign): New static variable.
4973 (gld${EMULATION_NAME}_before_allocation): Rename local h to hdyn.
4974 If not a relocateable link, and no start symbol was specified on
4975 the command line, and there are any undefined symbols, set
4976 link_info.shared. If link_info.shared is set, set the address of
4977 the .text section to 0x20.
4978 (gld${EMULATION_NAME}_find_assignment): Rename from
4979 gld${EMULATION_NAME}_find_statement_assignment. If find_assign is
4980 set, then just set found_assign based on whether an assignment is
4981 found to find_assign.
4982 (gld${EMULATION_NAME}_get_script): Don't use a special script when
4983 producing a shared library.
4984 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Remove.
4985 * scripttempl/aout.sc: Remove CREATE_SHLIB tests.
4986 * ldlang.c (entry_from_cmdline): New global variable.
4987 (lang_add_entry): Change cmdline parameter from int to boolean.
4988 Use global entry_from_cmdline rather than function static
4989 from_cmdline.
4990 * ldlang.h (entry_from_cmdline): Declare.
4991 (lang_add_entry): Change declaration of second parameter from int
4992 to boolean.
4993 * ldgram.y: Pass false, not 0, to lang_add_entry.
4994
4995Thu Sep 28 12:34:13 1995 Ian Lance Taylor <ian@cygnus.com>
4996
4997 * ld.h (parsing_defsym): Declare.
4998 * ldlex.h (lex_string): Declare.
4999 * ldlex.l (lex_string): Define.
5000 * lexsup.c (parsing_defsym): Define.
5001 (parse_args): In OPTION_DEFSYM case, set lex_string before calling
5002 lex_redirect, and clear it after calling yyparse. Set
5003 parsing_defsym around call to yyparse.
5004 * ldmain.c (main): Set lex_string before calling lex_redirect, and
5005 clear it after calling yyparse.
5006 * ldmisc.c (vfinfo): For %S, handle --defsym arguments and built
5007 in linker scripts correctly.
5008
5009 * scripttempl/sparccoff.sc: Add .ctors/.dtors handling like other
5010 COFF targets, allowing for the leading underscore used on SPARC
5011 COFF.
5012
5013 * lexsup.c (parse_args): Handle -assert.
5014 * emulparams/sun4.sh (GENERATE_SHLIB_SCRIPT): Define.
5015 * emultempl/sunos.em (gld${EMULATION_NAME}_get_script): Use the
5016 shared library script when appropriate.
5017 * scripttempl/aout.sc: If CREATE_SHLIB is set, start the .text
5018 section at SIZEOF_HEADERS.
5019
5020Thu Sep 28 01:40:37 1995 Doug Evans <dje@deneb.cygnus.com>
5021
5022 * Makefile.in (earmcoff.c): Build.
5023 * configure.tgt (arm-*-coff): New target
5024 * emulparms/armcoff.sh: New file.
5025 * scripttempl/armcoff.sc: New file.
5026
5027Tue Sep 26 10:59:32 1995 Ian Lance Taylor <ian@cygnus.com>
5028
5029 * scripttempl/i386coff.sc: Remove .data2; no longer needed.
5030
5031Fri Sep 22 18:09:02 1995 Ian Lance Taylor <ian@cygnus.com>
5032
5033 * ldfile.c (ldfile_set_output_arch): Make arch const.
5034
5035Thu Sep 21 17:55:24 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5036
5037 * scripttempl/elfppc.sc: Correctly locate __bss_start at the
5038 beginning of the .bss area, not at the end of data. Add
5039 __sbss_{start,end} symbols.
5040
5041Wed Sep 20 12:29:36 1995 Ian Lance Taylor <ian@cygnus.com>
5042
5043 * Makefile.in (CC_FOR_TARGET): Quote $(program_transform_name).
5044 (CXX_FOR_TARGET, install): Likewise.
5045
5046Mon Sep 18 14:53:22 1995 Ian Lance Taylor <ian@cygnus.com>
5047
5048 Based on patches by Alan Modra <alan@spri.levels.unisa.edu.au>:
5049 * Makefile.in (CC_FOR_TARGET): Remove brokensed stuff.
5050 (CXX_FOR_TARGET): Likewise.
5051 (install): Likewise.
5052 (GENERATED_HFILES): Remove config.h.
5053 (.dep): Depend upon config.h.
5054
5055Mon Sep 18 14:39:38 1995 Arne H. Juul <arnej@pvv.unit.no>
5056
5057 * configure.tgt (mips*-dec-netbsd*): New target.
5058
5059Fri Sep 15 20:01:52 1995 Ken Raeburn <raeburn@cygnus.com>
5060
5061 * configure.host (m88*-*-dgux*): Fix another shell syntax error.
5062
5063Fri Sep 15 23:28:05 1995 Andrew Cagney <cagney@highland.com.au>
5064
5065 * configure.host (i[345]86-*-bsd*): Fix shell syntax error.
5066
5067Thu Sep 12 12:50:49 1995 steve chamberlain <sac@slash.cygnus.com>
5068
5069 * scripttemp/pe.sc: Allow both spellings of .ctors/.dtors.
5070 Start .text section on the right boundary. Always align
5071 stabs.
5072
5073Tue Sep 12 12:24:17 1995 Ian Lance Taylor <ian@cygnus.com>
5074
5075 * Makefile.in (maintainer-clean): New target.
5076
5077 * ldmain.c (struct warning_callback_info): Define.
5078 (warning_callback): Add new parameter symbol. Call
5079 warning_find_reloc to try to find the section and VMA.
5080 (warning_find_reloc): New static function.
5081 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
5082 Pass NULL as symbol parameter to warning callback.
5083
5084 * ld.texinfo: Clarify -L option.
5085
5086 * ldlang.c (lang_one_common): Add cast to avoid warning.
5087 (topower): Likewise. Also, reindent.
5088 * ldwrite.c (clone_section): Change i to unsigned int.
5089 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Add
5090 cast to avoid warning.
5091
5092Fri Sep 8 16:32:43 1995 Ian Lance Taylor <ian@cygnus.com>
5093
5094 * Makefile.in (config.status): Depend upon configure.tgt.
5095
5096 * ldemul.h (ldemul_set_symbols): Declare.
5097 (ldemul_parse_args): Declare.
5098 * ldemul.c (ldemul_parse_args): Fix indentation.
5099
5100 * configure.in: Call AC_HEADER_DIRENT.
5101 * configure, config.in: Rebuild.
5102 * emultempl/sunos.em: Use autoconf recommend mechanism to define
5103 DIR and struct dirent.
5104
5105 * configure.tgt (mips*-*-bsd*): New case.
5106
5107 * configure.host (i[345]86-sequent-ptx* | i[345]86-sequent-sysv*)
5108 New case.
5109 * configure.tgt (i[345]86-*-ptx*): New case.
5110
5111Thu Sep 7 10:48:26 1995 Ian Lance Taylor <ian@cygnus.com>
5112
5113 * config.in: Rename from config.h.in.
5114 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
5115 Check for config.h:config.in when creating stamp-h.
5116 * configure: Rebuild.
5117 * Makefile.in (stamp-h): Depend upon config.in rather than
5118 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
5119 calling config.status.
5120
5121 * Makefile.in (distclean): Remove config.h and stamp-h.
5122
5123 * configure.host (sparc-*-sunos64*): Remove.
5124 * ldlang.c (lang_map): Check BFD64, not HOST_64_BIT.
5125
5126 * ldexp.c (exp_fold_tree): Don't warn about moving the location
5127 counter backward in the absolute section.
5128
5129Wed Sep 6 14:42:11 1995 Ian Lance Taylor <ian@cygnus.com>
5130
5131 * configure.in: Rewrite to use autoconf.
5132 * configure.host: New file.
5133 * configure.tgt: New file.
5134 * aclocal.m4: New file.
5135 * configure: New file, built by autoconf.
5136 * acconfig.h: New file.
5137 * config.h.in: New file, built by autoheader.
5138 * sysdep.h: New file.
5139 * ld.h: Incorporate old contents of config.h.
5140 * config.h: Remove.
5141 * Makefile.in: Various changes for new configure script. Also:
5142 (CC_FOR_BUILD): Remove.
5143 (ldmain.o): Don't bother to ensure that EMUL is non-empty.
5144 (dep.sed): Use @SRCDIR@, not @srcdir@.
5145 * dep-in.sed: Use @SRCDIR@, not @srcdir@.
5146 * genscripts.sh: Create ldscripts if it does not exist.
5147 * ldemul.c, lexsup.c, mpw-emipsidt.c: Don't include "config.h".
5148 * mpw-esh.c, emultemp/*.em: Likewise.
5149 * ldmain.c: Likewise. Include <ctype.h>. Don't try to set
5150 HAVE_SBRK here.
5151 * config/*.mt, config/*.mh: Remove.
5152
5153Tue Sep 5 14:55:24 1995 Ken Raeburn <raeburn@cygnus.com>
5154
5155 * configure.in: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
5156 ns32k-pc532-lites* like ns32k-pc532-netbsd*. From Ian Dall.
5157
5158Fri Sep 1 22:29:52 1995 Doug Evans <dje@canuck.cygnus.com>
5159
5160 * scripttempl/pe.sc: Fix typo in spelling of .ctors/.dtors.
5161
5162Fri Sep 1 13:13:29 1995 Ian Lance Taylor <ian@cygnus.com>
5163
5164 * ldmain.c (warning_callback): Add abfd, section, and address
5165 parameters.
5166 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
5167 Change call to warning accordingly.
5168
5169 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): If not
5170 relocateable and not shared, put .gnu.warning.SYMBOL sections into
5171 the .text section.
5172
5173Fri Sep 1 08:35:16 1995 James G. Smith <jsmith@beauty.cygnus.com>
5174
5175 * configure.in: Added mips*vr4300-idt-elf* and
5176 mips*vr4300el-idt-elf* targets.
5177 * Makefile.in: Added eelf32vr4300* targets.
5178 * emulparams/{elf32vr4300.sh, elf32vr4300el.sh}: Added.
5179 * config/{mips-vr4300.mt, mips-vr4300el.mt}: Added.
5180
5181Fri Sep 1 10:51:45 1995 Ian Lance Taylor <ian@cygnus.com>
5182
5183 * scripttempl/a29k.sc: Fix to be reasonable. From Brendan Kehoe
5184 <brendan@cygnus.com>.
5185
5186Thu Aug 31 16:37:07 1995 steve chamberlain <sac@slash.cygnus.com>
5187
5188 * ldemul.c (ldemul_parse_args): New.
5189 * ldemul.h (ld_emulation_xfer_struct): Add parse_args.
5190 * lexsup.c (all pe stuff): Moved into pe.em
5191 (parse_args): Call emulation arg parser.
5192 * emultempl/pe.em (parse_args): handle PE specfic args.
5193
5194Thu Aug 31 17:01:37 1995 Ian Lance Taylor <ian@cygnus.com>
5195
5196 * ldlang.c (lang_memory_region_lookup): Don't use the first region
5197 as the default region. Create a new region instead.
5198
5199Tue Aug 29 14:21:41 1995 steve chamberlain <sac@slash.cygnus.com>
5200
5201 * ldemul.c (ldemul_set_symbols): New function.
5202 * ldemul.h (ld_emulation_xfer_struct): Add set_symbols.
5203 * ldmain.c (main): Add call to ldemul_set_symbols.
5204 * lexsup.c (set_pe_value): New args.
5205 (set_pe_name): New.
5206 (parse_args): Cope with new set_pe_value args.
5207 * emultempl/pe.em (set_symbols): New function.
5208 (ld_emulation_xfer_struct): Add set_symbols.
5209 * scripttempl/pe.sc: Use new symbols.
5210
5211Thu Aug 24 18:12:18 1995 Ian Lance Taylor (ian@cygnus.com)
5212
5213 * lexsup.c (parse_args): Don't call set_default_dirlist for -O.
5214 For -Y, ignore a leading `P,', and only call set_default_dirlist
5215 after processing all the other arguments.
5216
5217Tue Aug 22 07:36:58 1995 steve chamberlain <sac@slash.cygnus.com>
5218
5219 * scripttempl/pe.sc: Keep .edata, don't base stabs at 0.
5220 * emulparams/armpe.sh: Run PE script.
5221
5222Mon Aug 21 18:30:42 1995 steve chamberlain <sac@slash.cygnus.com>
5223
5224 * ldmain.c (main): Remove PE stuff.
5225 * lexsup.c (options): Load more PE options.
5226 (set_pe_value): New function.
5227
5228Thu Aug 17 13:35:49 1995 steve chamberlain <sac@slash.cygnus.com>
5229
5230
5231 * emultempl/{armpe.sc, i386pe.sc}: Deleted.
5232 * emultempl/pe.sc: New file performs generic PE support and sorts
5233 archive members.
5234 * emulparams/{armpe.sh,i386pe.sh}: Use new file.
5235 * scripttempl/{armpe.sc, i386pe.sc}: Deleted
5236 * scripttempl/pe.sc: New.
5237 * Makefile.in: Use new files.
5238
5239Thu Aug 17 14:46:34 1995 Doug Evans <dje@canuck.cygnus.com>
5240
5241 * scripttempl/h8500s.sc (.rdata): All data must go in data segment.
5242 (.strings,.ctors,.dtors): Likewise.
5243
5244Wed Aug 16 11:38:59 1995 steve chamberlain <sac@slash.cygnus.com>
5245
5246 * scripttempl/armpe.sc: Always start code at 0x401000, even
5247 if -r.
5248 * ldwrite.c (strdup): New extern declaration.
5249 * ldgram.y (atype): New rule to clarify type parsing.
5250 * ldlang.c (init_os): Remove commented out code.
5251 (lang_size_sections): Set SEC_ALLOC and SEC_LOAD bits
5252 unless told not to by the link script.
5253
5254Wed Aug 16 11:45:11 1995 Ian Lance Taylor <ian@cygnus.com>
5255
5256 * ldlang.c (lang_set_startof): New static function.
5257 (lang_process): Call it.
5258
5259 * ldgram.y: Tweak casesymlist to avoid bison errors.
5260
5261 * lexsup.c (parse_args): Accept -h as a synonym for --soname, for
5262 Solaris compatibility.
5263
5264Tue Aug 15 17:31:16 1995 Ian Lance Taylor <ian@cygnus.com>
5265
5266 * ldgram.y (YYDEBUG): If not defined, define as 1.
5267 (CASE, EXTERN, START): New tokens.
5268 (mri_script_command): Handle CASE, EXTERN, INCLUDE, START.
5269 (casesymlist): New nonterminal.
5270 (extern_name_list): New nonterminal.
5271 * ldlex.l: Accept lower case trailing base specifiers. Don't
5272 ignore the first digit when the base is a suffix. Accept many
5273 EXPRESSION state tokens in MRI state. Support MRI continuation
5274 lines and MRI semicolon comments. Accept all MRI keywords in
5275 lower case. Add CASE, EXTERN, and START MRI keywords.
5276
5277Tue Aug 8 19:14:58 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
5278
5279 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Use xmalloc
5280 instead of alloca.
5281
5282Tue Aug 8 15:24:05 1995 J.T. Conklin <jtc@rtl.cygnus.com>
5283
5284 * Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Don't use
5285 $r/../gcc/xgcc unless it is present.
5286
5287Thu Aug 3 11:56:22 1995 Ian Lance Taylor <ian@cygnus.com>
5288
5289 * scripttempl/m68kcoff.sc: Only put .ctors and .dtors in .text
5290 when CONSTRUCTING.
5291 * scripttempl/m68klynx.sc: Likewise.
5292 * scripttempl/nw.sc: Likewise.
5293 * scripttempl/sa29200.sc: Likewise.
5294 * scripttempl/sparclynx.sc: Likewise.
5295
5296Fri Jul 28 12:02:23 1995 steve chamberlain <sac@slash.cygnus.com>
5297
5298 * emulparams/{z8001.sh, z8002.sh}: Fix typo.
5299
5300Thu Jul 27 21:06:21 1995 Ken Raeburn <raeburn@cygnus.com>
5301
5302 * configure.in (i[345]86-*-linuxoldld): Treat like linuxaout*.
5303
5304Thu Jul 27 15:26:28 1995 steve chamberlain <sac@slash.cygnus.com>
5305
5306 * scripttempl/i386pe.sc: Cope with constructors.
5307 * scripttempl/z8ksim.sc: Deleted.
5308 * scripttempl/z8000.sc: Resurrected as this, but
5309 can handle z8001 and z8002 formats.
5310 * emulparams/z8ksim.sh: Deleted.
5311 * emulparams/{z8001.sh, z8002.sh}: New files.
5312 * config/z8ksim.mt: Deleted
5313 * config/z8k-coff.mt: New, generates both emulations.
5314
5315Tue Jul 25 14:53:02 1995 Ian Lance Taylor <ian@cygnus.com>
5316
5317 * ldmisc.c (vfinfo): In %C and %D case, always print the BFD using
5318 %B, in case it is in an archive.
5319
5320Mon Jul 24 15:23:39 1995 Ian Lance Taylor <ian@cygnus.com>
5321
5322 * ldlang.c (lang_process): Call reset_memory_regions for each
5323 relaxation pass.
5324
5325Fri Jul 21 22:49:44 1995 Michael Meissner <meissner@cygnus.com>
5326
5327 * scripttempl/elfppc.sc: Add support for .sdata, .sbss, and
5328 _SDA_BASE.
5329
5330Thu Jul 20 16:26:55 1995 Ken Raeburn <raeburn@cygnus.com>
5331
5332 * ldmain.c (constructor_callback): Allocate set_name in stack
5333 frame, rather than always calling alloca with a fixed size.
5334
5335Wed Jul 19 16:21:43 1995 Doug Evans <dje@canuck.cygnus.com>
5336
5337 * emulparams/armpe.sh (OUTPUT_FORMAT): Change to pei-arm-little.
5338 (LITTLE_OUTPUT_FORMAT, BIG_OUTPUT_FORMAT): Define.
5339
5340Mon Jul 17 13:57:00 1995 Ian Lance Taylor <ian@cygnus.com>
5341
5342 * ldwrite.c (clone_section): Set the alignment of the clone
5343 section to that of the section being cloned.
5344
5345 * ldwrite.c (split_sections): Don't split the first input section
5346 into a new output section.
5347
5348Sat Jul 15 00:26:35 1995 Michael Meissner <meissner@cygnus.com>
5349
5350 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Define as elf32.
5351 (GENERATE_SHLIB_SCRIPT): Define as yes.
5352
5353Fri Jul 14 12:11:46 1995 Ian Lance Taylor <ian@cygnus.com>
5354
5355 * emultempl/mipsecoff.em (check_sections): Use %P, not %F.
5356
5357 * ldver.c (help): Update list of options to match currently
5358 supported list.
5359
5360Thu Jul 13 13:52:10 1995 Ian Lance Taylor <ian@cygnus.com>
5361
5362 * emultempl/lnk960.em (ld_lnk960_emulation): Initialize
5363 after_open field.
5364
5365 * ldexp.c (exp_intop): Don't cast stat_alloc arg to bfd_size_type;
5366 it takes a size_t anyhow.
5367 (exp_binop): Likewise.
5368 (exp_trinop): Likewise.
5369 (exp_unop): Likewise.
5370 (exp_nameop): Likewise.
5371 (exp_assop): Likewise.
5372 * ldlang.c (lang_memory_region_lookup): Likewise.
5373 (init_os): Likewise.
5374 (ldlang_add_undef): Likewise.
5375 (insert_pad): Likewise.
5376 * ldfile.c (ldfile_add_arch): Don't cast xmalloc arg to
5377 bfd_size_type.
5378
5379 * Makefile.in (ALL_EMULATIONS): It's earmaoutb.o, not earmoutb.o.
5380
5381Wed Jul 12 11:32:22 1995 Ian Lance Taylor <ian@cygnus.com>
5382
5383 * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to
5384 declaration.
5385 (ld_emulation_xfer_type): Add search parameter to
5386 open_dynamic_archive entry point.
5387 * ldemul.c (ldemul_open_dynamic_archive): Add search parameter.
5388 * ldfile.c (ldfile_try_open_bfd): Rename from try_open_bfd, and
5389 make non-static. Change all callers to use new name.
5390 (ldfile_open_file_search): Make static. If entry is dynamic, call
5391 ldemul_open_dynamic_archive.
5392 (ldfile_open_file): Don't call ldemul_open_dynamic_archive.
5393 * ldfile.h (ldfile_open_file_search): Don't declare.
5394 (ldfile_try_open_bfd): Declare.
5395 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
5396 Accept search parameter. Don't search for a library, just look in
5397 a single place.
5398 * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
5399 Likewise.
5400
5401Tue Jul 11 16:44:21 1995 Ian Lance Taylor <ian@cygnus.com>
5402
5403 * ldmain.c (set_scripts_dir): Don't base script directory on
5404 current directory.
5405
5406Tue Jul 11 12:29:02 1995 Rick Sladkey <jrs@world.std.com>
5407
5408 * ldmisc.c (vfinfo): Don't print the line number if it isn't
5409 meaningful.
5410
5411Mon Jul 10 13:38:28 1995 Ian Lance Taylor <ian@cygnus.com>
5412
5413 * ld.h (ld_config_type): Add field warn_constructors.
5414 * ldmain.c (add_to_set): Warn if config.warn_constructors.
5415 (constructor_callback): Likewise.
5416 * lexsup.c (parse_args): Handle -warn-constructors.
5417 * ld.texinfo, ld.1: Document -warn-constructors.
5418
5419 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Don't
5420 get confused by directory names if we searched for the file.
5421
5422 Based on patches from H.J. Lu <hjl@nynexst.com>:
5423 * ldlang.h (lang_input_statement_type): Add new field dynamic.
5424 * ldlang.c (new_afile): Set dynamic from config.dynamic_link.
5425 * ldfile.c: Include bfdlink.h.
5426 (ldfile_open_file): Check dynamic field of entry, not global
5427 dynamic_link field. Don't do a dynamic search when doing a
5428 relocateable link.
5429 * ldmain.c (main): Don't warn about dynamic_link for a
5430 relocateable link.
5431 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Skip file if
5432 dynamic is false.
5433 (gld${EMULATION_NAME}_create_output_section_statements): Always
5434 loop over input files.
5435 * Makefile.in: Rebuild dependencies.
5436
5437 * ld.texinfo, ld.1: Document -Bstatic, -Bdynamic, -Bshared, and
5438 -shared.
5439
5440Mon Jul 10 13:29:43 1995 Eric Youngdale <eric@aib.com>
5441
5442 * ldmain.c (main): Set link_info.symbolic to false.
5443 * lexsup.c (parse_args): Handle -Bsymbolic.
5444
5445Wed Jul 5 00:12:11 1995 Fred Fish (fnf@cygnus.com)
5446
5447 * ldmain.c (HAVE_SBRK): Define for everything except
5448 specific systems that are known to not support sbrk.
5449 (main): Use HAVE_SBRK to decide whether or not to use sbrk.
5450
5451Tue Jul 4 12:55:48 1995 Ian Lance Taylor <ian@cygnus.com>
5452
5453 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment):
5454 Handle etree_provide.
5455
5456 * emultempl/elf32.em (global_needed): New static variable.
5457 (global_found): Likewise.
5458 (gld${EMULATION_NAME}_after_open): New static function.
5459 (gld${EMULATION_NAME}_search_needed): Likewise.
5460 (gld${EMULATION_NAME}_try_needed): Likewise.
5461 (gld${EMULATION_NAME}_check_needed): Likewise.
5462 (ld_${EMULATION_NAME}_emulation): Replace after_open_default with
5463 gld${EMULATION_NAME}_after_open.
5464
5465Mon Jul 3 14:26:37 1995 Steve Chamberlain <sac@slash.cygnus.com>
5466
5467 * configure.in (i386-*-win32): New target.
5468
5469Mon Jul 3 14:39:22 1995 Ian Lance Taylor <ian@cygnus.com>
5470
5471 * lexsup.c (parse_args): Let -G either set the small data size or
5472 be equivalent to --shared, depending on the next argument. Accept
5473 and ignore -z for Solaris compatibility.
5474
5475Sun Jul 2 17:52:34 1995 Ian Lance Taylor <ian@cygnus.com>
5476
5477 * lexsup.c (parse_args): Cast fopen result to PTR before storing
5478 it in link_info.base_file. Fix indentation.
5479
5480Wed Jun 28 17:11:25 1995 Steve Chamberlain <sac@slash.cygnus.com>
5481
5482 * ldmain.c (main): Always initialize PE info in link_info.
5483 * lexsup.c (OPTION_BASE_FILE): New option.
5484 (parse_args): Handle new option.
5485 * emulparams/armpe.sh: Output pei.
5486 * emultempl/i386pe.em: Add newline to end.
5487 * scripttempl/armpe.sc: Change output and quote the $s.
5488 * scripttempl/i386pe.sc: Change output and quote the $s.
5489
5490Thu Jun 22 19:55:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5491
5492 Sun May 7 11:53:41 MDT 1995 Bryan Ford <baford@cs.utah.edu>
5493
5494 * configure.in (i386-*-msdos*, i386-*-moss*): New targets.
5495 * Makefile.in (ALL_EMULATIONS): Added i386msdos.o.
5496 (i386msdos.o): New target.
5497 * config/i386-msdos.mt: Created.
5498 * emulparams/i386msdos.sh: Created.
5499 * scripttempl/i386msdos.sc: Created.
5500
5501Thu Jun 22 15:06:35 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5502
5503 * scripttempl/elfppc.sc (.fixup): Add support for a .fixup section
5504 that contains pointers to be relocated.
5505
5506Tue Jun 20 17:47:20 1995 Stan Shebs <shebs@andros.cygnus.com>
5507
5508 * mpw-esh.c: New file, modified for MPW from esh.c.
5509 * scripttempl/sh.sc: Reformatted to simplify MPWification,
5510 use *() to concat stab sections instead of [].
5511
5512Thu Jun 15 08:48:16 1995 Steve Chamberlain <sac@slash.cygnus.com>
5513
5514 * scripttempl/armpe.sc: Add constructor support.
5515
5516Tue Jun 13 09:11:20 1995 Steve Chamberlain <sac@slash.cygnus.com>
5517
5518 * ldlang.c (lang_size_sections): Any section with a DATA
5519 statement has contents.
5520
5521Sun Jun 11 15:20:46 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5522
5523 * emulparams/m68kelf.sh (NOP): Define.
5524 (DYNAMIC_LINK): Don't define.
5525 (TEXT_START_ADDR): Set to 0x80000000; the extra 0x100 for headers
5526 will come from the linker script.
5527
5528Thu Jun 8 14:17:33 1995 Steve Chamberlain <sac@slash.cygnus.com>
5529
5530 * emulparams/armpe.sh, scriptempl/armpe.sc: Add end and stack.
5531
5532Mon Jun 5 02:16:24 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
5533
5534 * configure.in (i[345]86-*-gnu*): Use GNU elf config.
5535
5536Thu May 25 11:49:28 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5537
5538 From Andrew Cagney <cagney@highland.com.au>
5539 * Makefile.in: Fixup more gotchas from renaming elf32ppcle to
5540 elf32lppc.
5541
5542Wed May 24 11:23:21 1995 Steve Chamberlain <sac@slash.cygnus.com>
5543
5544 Add support for ARM-PE.
5545 * Makefile.in (ALL_EMULATIONS): Add armpe.o
5546 * configure.in: Recognize armpe.
5547 * config/arm-pe.mt: New file.
5548 * emulparams/armpe.sh: New file.
5549 * scripttempl/armpe.sc: New file.
5550
5551
5552Mon May 22 15:19:26 1995 Doug Evans <dje@chestnut.cygnus.com>
5553
5554 * configure.in (h8300h-*-hms): Deleted
5555 * config/cf-h8300h.mt: Deleted.
5556
5557Thu May 18 04:26:10 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
5558
5559 Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
5560
5561 From David Taylor (dtaylor@armltd.co.uk)
5562 * Makefile.in (ALL_EMULATIONS): Add earmout[lb].o
5563 * configure.in: Recognize arm{,e[lb]-*-aout.
5564 * config/arm[lb]-aout.mt: New files.
5565 * emulparams/armaout[lb].sh: New files.
5566 * scripttempl/armaout.sc: New file.
5567
5568Tue May 16 18:27:11 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5569
5570 * config/ppcle-elf32.mt (EMUL): Use elf32lppc, not elf32ppcle, to
5571 be unique in 8 characters for DOS.
5572
5573 * emulparams/elf32lppc.sh: New file, renamed from elf32ppcle.sh.
5574 * emulparams/elf32ppcle.sh: Deleted.
5575
5576Fri May 12 11:03:55 1995 Steve Chamberlain <sac@slash.cygnus.com>
5577 Tom Griest <griest@cs.yale.edu>
5578
5579 Initial support for PE executables (eg NT, win32)
5580
5581 * Makefile.in (configure.in, ei386pe): Add support.
5582 * ldmain.c (main): Initialize PE argument info.
5583 * ldwrite.c (print_file_stuff): Don't print out .drectve
5584 and .debug section info.
5585 * lexsup.c (set_subsystem, set_stack_heap, OPTION_HEAP,
5586 OPTION_SUBSYSTEM, parse_argsm set_subsystem, set_stack_heap):
5587 Handle new arguments.
5588 * config/i386-pe.mt, emultempl/i386pe.em, scripttempl/i386pe.sc:
5589 New files
5590
5591Wed May 10 18:37:59 1995 Stu Grossman (grossman@andros.cygnus.com)
5592
5593 * scripttempl/hppaelf.sc: Remove .PARISC.unwind section from text
5594 segment. This allows ld -r to preserve unwind sections.
5595
5596Tue May 9 17:19:57 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5597
5598 * configure.in: Add little endian PowerPC support.
5599
5600 * Makefile.in (ALL_EMULATIONS): Add eelf32ppcle.o.
5601 (eelf32ppcle.c): Support for little endian PowerPC.
5602
5603 * config/ppcle-elf32.mt: New file for little endian PowerPC.
5604 * emulparams/elf32ppcle.sh: Ditto.
5605
5606Wed May 3 12:56:32 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5607
5608 * ldlang.c (print_output_section_statement): Check
5609 subsection_alignment, instead of checking section_alignment twice.
5610 Noticed by Alan Modra <alan@spri.levels.unisa.edu.au>.
5611
5612Tue May 2 16:36:07 1995 Jeff Law (law@snake.cs.utah.edu)
5613
5614 * configure.in (hppa*-*-lites*): Handle like hppa*-*-*elf*.
5615
5616Mon Apr 24 19:21:02 1995 Michael Meissner <meissner@cygnus.com>
5617
5618 * ldwrite.c (ldwrite): Before doing anything, reset the error
5619 code. If bfd_final_link returns an error, but the error code is
5620 unset, don't issue an extra message. Assume a correct error
5621 message was already set.
5622
5623Fri Apr 14 16:31:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5624
5625 * Makefile.in (ALL_EMULATIONS): Added em68kelf.o.
5626 (em68kelf.o): New target.
5627 * config/m68k-elf.mt, emulparams/m68kelf.sh: New files.
5628 * configure.in: Use them for m68*-*-elf.
5629
5630Tue Apr 11 12:02:03 1995 Stan Shebs <shebs@andros.cygnus.com>
5631
5632 Merge in support for Mac MPW as a host.
5633 (Old change descriptions retained for informational value.)
5634
5635 * mpw-config.in (i386-unknown-aout): Change to i386-unknown-go32.
5636 (i386-unknown-coff): Remove.
5637 (sh-hitachi-hms): New target.
5638 (emulation_ofiles): Set correctly for each target.
5639 (version, TDEFINES): Add to makefile fragment.
5640 * mpw-make.in (BISON): Use byacc instead of bison.
5641 (em_*.c): Replace with e*.c everywhere.
5642 (ldgram.h): Separate action from ldgram.c generation.
5643 (LD_PROG): Depend on Version.r.
5644 (Version.r): generate from version info.
5645 * mpw-emipsidt.c: New file, modified for MPW from emipsidt.c.
5646
5647 * mpw-config.in (m68k-apple-macos, ppc-apple-macos,
5648 i386-unknown-aout, i386-unknown-coff): New targets.
5649 (m68k-aout, m68k-coff): Remove targets.
5650 (mk.tmp): Add definition of EMUL.
5651
5652 * mpw-config.in (emulname): Set based on target.
5653 (ldemul-list.h): Construct.
5654 * mpw-make.in (install-only): New target.
5655 (install): Depend on install-only.
5656
5657 * mpw-make.in (bindir): Fix pathname.
5658 (install): Move here from mpw-build.in.
5659
5660 * mpw-config.in: New file, MPW configuration fragment.
5661 * mpw-make.in: New file, MPW makefile fragment.
5662 (This file is semi-automatically generated from Makefile.in.)
5663 * ldfile.c (slash): If MPW, set to `:'.
5664 * ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
5665 prevent redefinition errors.
5666
5667Tue Apr 4 17:55:18 1995 Steve Chamberlain <sac@bang.hack.com>
5668
5669 * ldwrite.c (clone_section): Align clone sections on even
5670 boundaries.
5671
5672Thu Mar 30 14:32:26 1995 H.J. Lu (hjl@nynexst.com)
5673
5674 * configure.in: Change linux to default to elf. Using
5675 i[345]86-*-linuxaout will build a linker which defaults to a.out.
5676 * config/i386-laout.mt: Rename from old config/i386-linux.mt.
5677 * config/i386-linux.mt: Rename from old config/i386-lelf.mt.
5678 * config/i386-lelf.mt: Remove.
5679
5680Thu Mar 30 13:09:46 1995 Ian Lance Taylor <ian@cygnus.com>
5681
5682 * ldmain.c (main): If opening the map file fails, call
5683 bfd_set_error before calling einfo.
5684
5685 * ld.texinfo, ld.1: Document the -no-keep-memory option.
5686
5687Mon Mar 27 11:10:08 1995 Ian Lance Taylor <ian@cygnus.com>
5688
5689 * ldmain.c (main): Revert patch of March 10, since the SVR4 linker
5690 does mark shared libraries as executable.
5691
5692Tue Mar 21 15:15:38 1995 Ian Lance Taylor <ian@cygnus.com>
5693
5694 * ldlang.c (lang_common): Change power to int. Pass larger values
5695 before smaller values.
5696 (lang_one_common): Treat info as int *. Don't bother to check for
5697 last value, since it is now zero.
5698
5699Sat Mar 18 01:49:14 1995 Ian Lance Taylor <ian@cygnus.com>
5700
5701 * ldlang.c (load_symbols): An empty archive is OK.
5702
5703Fri Mar 17 16:15:31 1995 Stan Shebs <shebs@andros.cygnus.com>
5704
5705 * ldmain.c (progress.h): Include.
5706 (main): Call START_PROGRESS and END_PROGRESS.
5707
5708Thu Mar 16 17:17:33 1995 Michael Meissner <meissner@cygnus.com>
5709
5710 * scripttempl/elfppc.sc: Move _GOT2_END_ after the .ctors and
5711 .dtors sections, so that these pointers get relocated also.
5712 Define the symbols __{C,D}TOR_{LIST,END}__ to mark the beginning
5713 and end of the constructors/destructors.
5714
5715Thu Mar 16 13:59:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
5716
5717 * ldlang.c (load_symbols): If whole_archive is true and ENTRY
5718 describes an archive, call bfd_link_add_symbols on each member.
5719 * ldmain.c (whole_archive): New variable.
5720 (main): Initialize it to false.
5721 * ldmain.h: Declare whole_archive.
5722 * lexsup.c (parse_args): Grok --whole-archive switch.
5723 * ld.texinfo, ld.1: Document --whole-archive.
5724
5725Thu Mar 16 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
5726
5727 * genscripts.sh (EMULATION_NAME): Set LIB_PATH to empty when not
5728 using the default emulation.
5729
5730 * config/dgux.mh (HOSTING_EMU): Use -m rather than trying to set
5731 LDEMULATION.
5732 * config/hppaelf.mh (HOSTING_EMU): Likewise.
5733
5734Tue Mar 14 12:28:03 1995 Ian Lance Taylor <ian@cygnus.com>
5735
5736 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Set force_maj
5737 for -lc.N. From H.J. Lu <hjl@nynexst.com>.
5738
5739Fri Mar 10 14:43:48 1995 Ian Lance Taylor <ian@cygnus.com>
5740
5741 * ldmain.c (main): Don't set EXEC_P if link_info.shared is set.
5742
5743 * ldlex.l: Return -lFILENAME as the token LNAME.
5744 * ldgram.y: Add token LNAME.
5745 (input_list): Treat LNAME like NAME, but pass it to
5746 lang_add_input_file as lang_input_file_is_l_enum.
5747 * ld.texinfo: Document using -lFILENAME in INPUT.
5748
5749Thu Mar 9 12:21:51 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5750
5751 * ldlang.c (lang_check): If the architectures are compatible call
5752 bfd_merge_private_bfd_data to let the backend do additional
5753 checks.
5754
5755Tue Mar 7 00:53:08 1995 Ian Lance Taylor <ian@cygnus.com>
5756
5757 * ldemul.c (ldemul_choose_mode): If emulation not recognized, list
5758 all supported emulations.
5759
5760Mon Mar 6 14:03:50 1995 Ian Lance Taylor <ian@cygnus.com>
5761
5762 * ldemul.c (ldemul_list_emulations): New function.
5763 * ldemul.h (ldemul_list_emulations): Declare.
5764 * ldver.c (help): List supported targets and emulations.
5765
5766Fri Mar 3 15:40:36 1995 Doug Evans <dje@canuck.cygnus.com>
5767
5768 * scripttempl/elf.sc (.debug): Relocate to address 0.
5769 (.debug_srcinfo, .debug_aranges, .debug_pubnames,
5770 .debug_sfnames, .line): Likewise.
5771
5772Fri Mar 3 17:07:14 1995 Ian Lance Taylor <ian@cygnus.com>
5773
5774 * emultempl/elf32.em (hold_rel): New static variable.
5775 (gld${EMULATION_NAME}_place_orphan): Place readonly sections with
5776 contents whose names begin with ".rel" after hold_rel. Remove the
5777 assertion which checked for unplaced .rel sections. Don't try to
5778 sort the section into place if place->bfd_section is NULL.
5779 (gld${EMULATION_NAME}_place_section): Set hold_rel to the first
5780 section beginning with ".rel".
5781
5782Thu Mar 2 14:34:43 1995 Ian Lance Taylor <ian@cygnus.com>
5783
5784 Doc note from pierre@phi.la.tce.com (Pierre Willard):
5785 * ld.texinfo: -X and -x work even if -s or -S are not specified.
5786 * ld.1: Similar change.
5787
5788Wed Mar 1 13:51:16 1995 Ian Lance Taylor <ian@cygnus.com>
5789
5790 * emulparams/gld960coff.sh (COFF_CTORS): Define.
5791 * scripttempl/i960.sc: Use COFF_CTORS if CONSTRUCTING.
5792
5793Tue Feb 28 12:42:56 1995 Ian Lance Taylor <ian@cygnus.com>
5794
5795 * configure.in (i[345]86-*-linuxelf*): New target. Use i386-lelf.
5796 (i[345]86-*-gnuelf*): New target. Use i386-gelf.
5797 * config/i386-lelf.mt: New file.
5798 * config/i386-gelf.mt: New file.
5799
5800Tue Feb 28 10:27:54 1995 Rob Savoye <rob@darkstar.cygnus.com>
5801
5802 * configure.in: Match on mips-ecoff, and default to the IDT
5803 configuration.
5804
5805Fri Feb 17 13:06:47 1995 Michael Meissner <meissner@cygnus.com>
5806
5807 * scripttempl/elfppc.sc: Add support for .got1 and .got2 sections.
5808 Offset _GLOBAL_OFFSET_TABLE_ 32768 from the start of the GOT area
5809 to double the size of the table.
5810
5811Thu Feb 9 18:29:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5812
5813 * Makefile.in (distclean): Do recursive deletion, since ldscripts
5814 is a directory.
5815
5816Thu Feb 9 11:38:22 1995 Ian Lance Taylor <ian@cygnus.com>
5817
5818 * ldmain.c (main): If trace_file_tries is true, and we are using
5819 an internal linker script, print out the script.
5820 * ldfile.c (try_open): Reindent function. Make the messages about
5821 opening script files more informative.
5822
5823 * lexsup.c (parse_args): For -V, call ldversion with 1, not 0.
5824 * ld.texinfo, ld.1: Update accordingly.
5825
5826Wed Feb 8 17:34:45 1995 Ian Lance Taylor <ian@cygnus.com>
5827
5828 * ldlang.c (lang_one_common): Adjust references to common symbol
5829 information for new structure.
5830
5831Mon Feb 6 12:17:24 1995 Ian Lance Taylor <ian@cygnus.com>
5832
5833 * ldmain.c (undefined_symbol): Handle section being NULL.
5834
5835 * ldctor.c (ldctor_build_sets): Handle bfd_link_hash_defweak.
5836 * ldexp.c (fold_name): Likewise.
5837 * ldlang.c (print_one_symbol): Likewise.
5838 (lang_finish): Likewise.
5839 * ldmain.c (multiple_common): Likewise.
5840 * ldwrite.c (print_symbol): Likewise. Also, bfd_link_hash_weak
5841 renamed to bfd_link_hash_undefweak.
5842
5843 * scripttempl/alpha.sc: Set address of .data section correctly
5844 when -n or -N is used. Patch from Chris G Demetriou
5845 <Chris_G_Demetriou@LAGAVULIN.PDL.CS.CMU.EDU>.
5846 * scripttempl/mips.sc: Similar change.
5847
5848Tue Jan 31 16:20:52 1995 Doug Evans <dje@canuck.cygnus.com>
5849
5850 * ldlang.c (lang_size_sections): Clarify error message when user
5851 specified start addr conflicts with region. Fix resetting of
5852 region pointer.
5853
5854Tue Jan 31 12:37:09 1995 Ian Lance Taylor <ian@cygnus.com>
5855
5856 * ldexp.c (fold_name): In case NAME, permit an absolute symbol
5857 in lang_allocating_phase_enum.
5858
5859Mon Jan 30 11:33:25 1995 Ian Lance Taylor <ian@cygnus.com>
5860
5861 * Makefile.in (distclean): Depend upon clean. Don't bother to
5862 remove files which will be removed by clean. From patch by
5863 alan@SPRI.Levels.UniSA.Edu.Au (Alan Modra).
5864
5865Fri Jan 27 16:27:34 1995 Ian Lance Taylor <ian@cygnus.com>
5866
5867 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): For
5868 a MIPS target, clobber the size of all but the first input
5869 .reginfo section to be 0, so that lang_size_sections sets the
5870 correct size for the output .reginfo section.
5871
5872Thu Jan 26 19:53:37 1995 Ian Lance Taylor <ian@cygnus.com>
5873
5874 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
5875 Remove unused variable is.
5876
5877Thu Jan 26 12:33:05 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5878
5879 * configure.in: Add support for powerpc-*-eabi.
5880
5881 * scripttempl/elfppc.sc: New file for PowerPC embedded ABI
5882 support.
5883
5884 * emulparams/elf32ppc.sh (SCRIPT_NAME): Use elfppc.sc instead of
5885 elf.sc, which defines some new symbols PowerPC elf needs.
5886
5887Tue Jan 24 10:32:15 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5888
5889 * ldctor.c (ldctor_add_set_entry): Don't dump core if a
5890 constructor entry is in the absolute section.
5891
5892Mon Jan 23 13:58:13 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5893
5894 * configure.in (i[345]86-*-gnu*): Set ld_target to i386-gnu.
5895 * config/i386-gnu.mt: New file. Include ELF support.
5896
5897Thu Jan 19 16:22:11 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5898
5899 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): If
5900 there are any input sections named .gnu.warning, treat them as
5901 containing a warning message to be printed by the linker, and
5902 clobber the size so that the message is not copied into the output
5903 file.
5904 * scripttempl/elf.sc: Put .gnu.warning sections into the .text
5905 section.
5906
5907Sun Jan 15 16:45:00 1995 Steve Chamberlain <sac@splat>
5908
5909 * configure.in (w65-*-*): New target.
5910 * Makefile.in: Update.
5911 * scripttempl/w65.sc: New.
5912 * config/coff-w65.mt: New.
5913
5914Thu Jan 12 01:32:25 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
5915
5916 * ldlang.c (lang_place_orphans): Don't ignore files with
5917 just_syms_flag set. Instead, put all their sections in
5918 bfd_abs_section_ptr, using the section VMA as the output_offset.
5919
5920Wed Jan 11 22:59:09 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
5921
5922 * ldctor.c (ldctor_build_sets): Don't use `const' with typedef
5923 name `reloc_howto_type', since it's now defined to be const.
5924 * ldlang.c (lang_add_reloc): Ditto.
5925 * ldlang.h (lang_reloc_statement_type, lang_add_reloc): Ditto.
5926
5927Wed Jan 11 11:24:45 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
5928
5929 * ldexp.c (fold_binary): Adding or subtracting an absolute value
5930 to a relative value does not require forcing the relative value to
5931 be absolute. Also, reindent function.
5932
5933Wed Dec 28 22:05:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5934
5935 * ldwrite.c (clone_section): Create a symbol with the
5936 same name as the section.
5937
5938Mon Dec 19 14:02:13 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5939
5940 * ld.h (split_by_reloc, split_by_file): New flags.
5941 * ldwrite.c (clone_section, split_sections): New functions.
5942 * lexsup.c (parse_args): Understand new split options.
5943
5944Fri Dec 9 17:22:55 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5945
5946 * scripttempl/elf.sc: Move .ctors and .dtors from .text segment to
5947 .data segment. They must be writable when creating a shared
5948 library. From H.J. Lu <hjl@nynexst.com>.
5949
5950Fri Dec 2 14:09:00 1994 Ian Lance Taylor <ian@rtl.cygnus.com>
5951
5952 * emultempl/miposecoff.em: New file.
5953 * emulparams/mipsidt.sh (TEMPLATE_NAME): Set to mipsecoff.
5954 * emulparams/mipsidtl.sh (TEMPLATE_NAME): Likewise.
5955 * scripttempl/mips.sc: Put .rel.sdata sections in .text, and
5956 provide __runtime_reloc_start and __runtime_reloc_stop if they are
5957 used. Align _fdata to a 16 byte boundary.
5958 * Makefile.in (emipsidt.c): Depend upon mipsecoff.em rather than
5959 generic.em.
5960 (emipsidtl.c): Likewise.
5961 (check): Pass CC_FOR_HOST and CFLAGS_FOR_HOST to runtest.
5962
5963 * ld.h (args_type): Add new field embedded_relocs.
5964 * ldemul.h (ldemul_after_open, after_open_default): Declare.
5965 (ld_emulation_xfer_struct): Add new field after_open.
5966 * ldemul.c (ldemul_after_open): New function.
5967 (after_open_default): New function.
5968 * ldlang.c (lang_process): Call ldemul_after_open.
5969 * lexsup.c (parse_args): Handle --embedded-relocs.
5970 * emultempl/elf32.em (ld_${EMULATION_NAME}_emulation): Initialize
5971 new after_open field to after_open_default.
5972 * emultempl/generic.em, emultempl/gld960.em: Likewise.
5973 * emultempl/gld960c.em, emultempl/hppaelf.em: Likewise.
5974 * emultempl/linux.em, emultempl/m88kbcs.em: Likewise.
5975 * emultempl/sunos.em, emultempl/vanilla.em: Likewise.
5976 * ld.texinfo, ld.1: Mention -embedded-relocs.
5977
5978Wed Nov 23 22:04:47 1994 Steve Chamberlain (sac@jonny.cygnus.com)
5979
5980 * Makefile.in: Add eshl.o.
5981 * config/coff-sh.mt: Add shl emulation.
5982
5983Tue Nov 22 11:55:37 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5984
5985 * scripttempl/elf.sc: Fill .text section with NOPS. From Eric
5986 Youngdale <eric@aib.com>.
5987
5988Thu Nov 17 14:39:48 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
5989
5990 Patches from pirker@eiunix.tuwien.ac.at (Martin Pirker).
5991 * config/i386linux.mh: New file; set HOSTING_CRT0.
5992 * genscripts.sh: Don't put ${libdir} in LIB_PATH if it is
5993 /usr/lib, since that is already in LIB_PATH.
5994
5995Wed Nov 16 10:03:03 1994 Jeff Law (law@snake.cs.utah.edu)
5996
5997 * scripttempl/hppaelf.sc (.text): Handle a use rdefined text start
5998 address.
5999 (.data, .bss): If "-N", then place the data/bss just after the end
6000 of the .text section rather than at the default 0x40000000.
6001
6002 * scripttempl/hppaelf.sc (.text): Place unwind descriptors in the
6003 text segment.
6004
6005Sat Nov 12 15:55:56 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6006
6007 Patches from Eric Youngdale <eric@aib.com>:
6008 * ldlang.c (lang_finish): Don't warn if entry symbol not found
6009 when generating a shared library.
6010 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Warn if
6011 attempting to place an orphaned relocation section when generating
6012 a dynamically linked object.
6013
6014 * scripttempl/elf.sc: Add ENTRY(${ENTRY}), and default ${ENTRY} to
6015 _start.
6016
6017Fri Nov 11 14:27:23 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6018
6019 * ld.h (args_type): Add field export_dynamic.
6020 * lexsup.c (parse_args): Recognize --export-dynamic.
6021 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
6022 Pass export_dynamic argument to bfd_elf32_size_dynamic_sections.
6023
6024Wed Nov 9 12:47:11 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6025
6026 * ldlang.c (lang_one_common): Set SEC_ALLOC in any section where
6027 we allocate common symbols.
6028
6029Tue Nov 8 17:50:43 1994 Eric Youngdale (eric@aib.com)
6030
6031 * scripttempl/elf.sc: Add .rel.init, .rela.init, .rel.fini, and
6032 .rela.fini to the list of .rel* sections.
6033
6034Tue Nov 8 17:47:45 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6035
6036 * ldlang.c (load_symbols): Add new argument place. Only accept
6037 linker scripts if place is not NULL. Put commands found in an
6038 assumed linker script into place.
6039 (lookup_name): Pass NULL as place argument to load_symbols.
6040 (open_input_bfds): In lang_input_statement_enum case, pass a place
6041 argument to load_symbols, and store any new statements after the
6042 current one.
6043
6044Mon Nov 7 15:53:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
6045
6046 * ldver.c (ldversion): Bump to 2.5.3.
6047
6048Fri Nov 4 15:11:26 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
6049
6050 * Makefile.in (e*nbsd.c): Fix typo in dependencies.
6051
6052Thu Nov 3 19:35:44 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
6053
6054 * Makefile.in (check): Add missing "else true" clause.
6055
6056 * emulparams/vax.sh (OUTPUT_FORMAT): Use "a.out".
6057
6058 * scripttempl/go32coff.sc: Changes from DJ Delorie: Change default
6059 entry point to "start". Align at end of each section to 0x200.
6060 Start .text section 0x1000 later. Add _etext, _edata, _end
6061 symbols.
6062
6063Wed Nov 2 12:17:49 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6064
6065 * ldctor.c (ldctor_add_set_entry): Don't permit a set to be
6066 composed of different object file formats.
6067 (ldctor_build_sets): If the output format does not support the
6068 reloc, and we are not generating a relocateable link, try getting
6069 the reloc from the input format.
6070
6071Tue Nov 1 10:30:19 1994 J.T. Conklin (jtc@rtl.cygnus.com)
6072
6073 * Makefile.in (ALL_EMULATIONS): Added em68knbsd.o.
6074 (em68knbsd.c): New target.
6075
6076 * config/m68k-nbsd.mt: New file.
6077 * emulparams/m68knbsd.sh: New file.
6078 * configure.in (m68*-*-netbsd*): Use above configs.
6079
6080Mon Oct 31 19:35:17 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6081
6082 * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): If we find an
6083 appropriately named static library, stop the search at that
6084 directory.
6085
6086Wed Oct 26 13:59:12 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
6087
6088 * Makefile.in (ALL_EMULATIONS): Added ei386nbsd.o, ens32knbsd.o
6089 and esparcnbsd.o; sorted entries.
6090 (ei386nbsd.c,ens32knbsd.c,esparcnbsd.c): New targets.
6091
6092 * config/netbsd532.mt: Removed.
6093 * emulparams/netbsd532.sh: Removed.
6094
6095 * config/{i386-nbsd.mt,ns32k-nbsd.mt,sparc-nbsd.mt}: New files.
6096 * emulparams/{i386nbsd.sh,ns32knbsd.sh,sparcnbsd.sh}: New files.
6097 * configure.in (i[345]86-*-netbsd*, ns32k-pc532-netbsd*,
6098 sparc*-*-netbsd*): Use above configs.
6099
6100Tue Oct 25 11:47:10 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6101
6102 * ldmain.c (multiple_common): One of the types may now be
6103 bfd_link_hash_indirect. The old BFD argument may be NULL.
6104
6105Thu Oct 20 22:01:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6106
6107 * configure.in: Add * at the end of m68k-hp-hpux.
6108
6109Tue Oct 18 15:58:39 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6110
6111 * ldlex.l: Cast assignment to yy_ch_buf field to char *, not to
6112 YY_CHAR *.
6113
6114Mon Oct 17 14:53:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
6115
6116 * scripttempl/nw.sc: Gather constructors and destructors and
6117 define __CTOR__LIST__ and __DTOR_LIST__ appropriately.
6118
6119Fri Oct 14 14:35:38 1994 J.T. Conklin (jtc@rtl.cygnus.com)
6120
6121 * Makefile.in (ALL_EMULATIONS): Add ei386nw.o and eppcnw.o.
6122 (ei386nw.c, eppcnw.c): New targets.
6123
6124 * config/{i386,ppc}-nw.mt, emulparams/{i386,ppc}nw.sh,
6125 scripttempl/nw.sc: New files, for i386 and powerpc netware.
6126
6127 * configure.in: Changed netware ld_target name to be {i386,ppc}-nw
6128 instead of {i386,ppc}-elf.
6129
6130 * configure.in (sparc*-*-netware): Removed. There is no such
6131 thing anymore.
6132
6133 * ldint.texinfo: Move misplaced `@end iftex'.
6134
6135Fri Oct 14 12:02:18 1994 Eric Youngdale (eric@aib.com)
6136
6137 * scripttempl/elf.sc: Add .rel.ctors, .rela.ctors, .rel.dtors, and
6138 .rela.dtors to the list of .rel* sections.
6139
6140Thu Oct 13 14:16:27 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
6141
6142 * ldver.c (ldversion): Update to version 2.5.
6143 * Version 2.5 released.
6144
6145 * configure.in (all_targets): Handle i386-linux*.
6146
6147Thu Oct 13 11:24:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6148
6149 * scripttempl/aout.sc: Set _etext and __etext to ., not
6150 ${DATA_ALIGNMENT}. This is compatible with SunOS, and, with luck,
6151 will not break any other system. From Eric Valette
6152 <ev@chorus.fr>.
6153
6154Wed Oct 12 16:22:58 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
6155
6156 * lexsup.c (parse_args): Change -V to be a synonym for -v. Add
6157 --verbose to get the old -V behaviour.
6158 * ld.1, ld.texinfo: Document this change.
6159
6160Tue Sep 27 14:56:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6161
6162 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Remove
6163 assertion, since it could fail with a user defined linker script.
6164
6165 * ldexp.c (fold_name): For DEFINED case, don't try to look up the
6166 name in the hash table during the first phase--the hash table does
6167 not even exist at that point, much less have the right value.
6168
6169 * Makefile.in (CC): Define.
6170 (CXX): Move definition, change from g++ to gcc.
6171 (EXPECT, RUNTEST): Copy definitions from top level Makefile.in.
6172 (RUNTEST_CC, RUNTEST_CFLAGS): Remove.
6173 (RUNTEST_CXX, RUNTEST_CXXFLAGS): Remove.
6174 (CC_FOR_TARGET, CXX_FOR_TARGET): Copy from top level Makefile.in.
6175 (.cc.o): Comment out.
6176 (testdir): Remove.
6177 (site.exp): Don't create testdir or set tmpdir.
6178 (check): Run checks even if not running native. Use CC_FOR_TARGET
6179 instead of RUNTEST_CC, and likewise for CXX.
6180 (cdtest targets): Comment out.
6181 * config/solaris2.mh (HOSTING_LIBS): Only mention crtend.o once.
6182 * cdtest-bar.cc, cdtest-foo.cc, cdtest-foo.h: Remove.
6183 * cdtest-main.cc, cdtest.exp: Remove.
6184
6185Mon Sep 26 11:40:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6186
6187 * emulparams/elf32bmip.sh: Rename from elf32mipb.sh to avoid DOS
6188 file naming problems.
6189 * emulparams/elf32lmip.sh: Rename from elf32mipl.sh.
6190 * Makefile.in (ALL_EMULATIONS): Rename eelf32mipb.o to
6191 eelf32bmip.o and eelf32mipl.o to eelf32lmip.o.
6192 (eelf32bmip.c): Rename from eelf32mipb.c. Use elf32bmip.sh.
6193 (eelf32lmip.c): Rename from eelf32mipl.c. Use elf32lmip.sh.
6194 * config/mipsb-elf32.mt (EMUL): Use elf32bmip, not elf32mipb.
6195 * config/mipsl-elf32.mt (EMUL): Use elf32lmip, not elf32mipl.
6196
6197 * genscripts.sh: Always search /usr/local/TARGET/lib.
6198
6199 * scripttempl/elf.sc: If -N is set, force DATA_ADDR to be ".".
6200
6201Fri Sep 23 15:05:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
6202
6203 * configure.in: Handle i386-bsdi* targets like i386-bsd.
6204
6205Fri Sep 23 00:06:59 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6206
6207 * lexsup.c (parse_args): Add support for -a for HP/UX
6208 compatibility.
6209
6210 * lexsup.c (parse_args): -c takes an argument.
6211
6212Tue Sep 20 14:35:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6213
6214 * ld.h (args_type): Add new field endian.
6215 * lexsup.c (parse_args): Handle -EB and -EL by setting
6216 command_line.endian.
6217 * ldgram.y (ifile_p1): Accept OUTPUT_FORMAT with three arguments.
6218 * ldlang.c (lang_add_output_format): Add arguments big and little.
6219 If command_line.endian is set, use it to select big or little
6220 rather than the default. Changed all callers.
6221 * ldlang.h (lang_add_output_format): Update declaration.
6222 * emulparams/elf32mipb.sh: Define BIG_OUTPUT_FORMAT and
6223 LITTLE_OUTPUT_FORMAT.
6224 * emulparams/elf32mipl.sh: Likewise.
6225 * emulparams/mipsbig.sh: Likewise.
6226 * emulparams/mipsbsd.sh: Likewise.
6227 * emulparams/mipsidt.sh: Likewise.
6228 * emulparams/mipsidtl.sh: Likewise.
6229 * emulparams/mipslit.sh: Likewise.
6230 * scripttempl/elf.sc: Define BIG_OUTPUT_FORMAT and
6231 LITTLE_OUTPUT_FORMAT if not already defined. Pass them to
6232 OUTPUT_FORMAT.
6233 * scripttempl/mips.sc: Pass BIG_OUTPUT_FORMAT and
6234 LITTLE_OUTPUT_FORMAT to OUTPUT_FORMAT.
6235 * scripttempl/mipsbsd.sc: Likewise.
6236
6237 * Makefile.in (ldgram.h): Make separate target from ldgram.c,
6238 depending upon ldgram.c, so that a parallel make does not try to
6239 build both at once.
6240
6241 * configure.in (mips*el-elf*): New target.
6242 * Makefile.in (ALL_EMULATIONS): Add eelf32mipb.o and eelf32mipl.o.
6243 (eelf32mipl.c): New target.
6244
6245 * config/mipsl-elf32.mt: New file.
6246 * emulparams/elf32mipl.sh: New file.
6247
6248Fri Sep 16 12:16:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6249
6250 * ldmain.c (main): Rather than prohibiting ld -r -s, treat it as
6251 ld -r -S -x.
6252
6253Thu Sep 15 13:05:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6254
6255 * ldmisc.c (vfinfo): Print BFD file name as well as file name
6256 returned by find_nearest_line, in case the file name is something
6257 unhelpful such as a .h file. Handle %u.
6258
6259Wed Sep 14 12:49:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6260
6261 * ldlang.c (lang_do_assignments): Make sure output statement
6262 has an attached bfd_section before trying to dereference it.
6263
6264Wed Sep 14 12:48:09 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6265
6266 * ld.h (ld_config_type): Add new field warn_once.
6267 * ldmain.c (undefined_symbol): Handle -warn-once.
6268 * lexsup.c (parse_args): Recognize -warn-once.
6269 * ld.texinfo (Options): Document -warn-once.
6270 * ld.1: Likewise.
6271
6272 * ldmisc.c (vfinfo): Handle %D as %C, but never print the function
6273 name. For %C, print the function name on a separate line, to keep
6274 the length of error messages under control.
6275 * ldmain.c (multiple_definition): Use %D for ``first defined
6276 here.''
6277 (undefined_symbol): Use %D for ``more undefined references
6278 follow''.
6279
6280 * ldmisc.c (multiple_warn): Remove; no longer used.
6281 * ldmisc.h (multiple_warn): Don't declare.
6282
6283Tue Sep 13 20:47:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6284
6285 * ldlang.c (print_output_section_statement): Print all lines
6286 to the map file.
6287
6288Tue Sep 13 16:30:11 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6289
6290 * ldlang.c (load_symbols): Check for archive before object. Use
6291 bfd_check_format_matches, and, if ambiguous, print a list of
6292 matching formats. If file format is not recognized, treat file as
6293 a linker script.
6294 * ldgram.y (yyerror): If assuming an object file is a script,
6295 mention that. Tweak the format of the error messages.
6296 * ldlex.l (lex_warn_invalid): If assuming an object is a script,
6297 guess that this is not actually a script, and just report that the
6298 file format was not recognized.
6299 * ld.texinfo (Options): Admit that -( may be used more than once.
6300 Add note that unrecognized object files are now treated as linker
6301 scripts.
6302
6303 * ldfile.c (ldfile_input_filename): Make const.
6304 (ldfile_assumed_script): New variable.
6305 (try_open): Change arguments types to const.
6306 (ldfile_find_command_file): Likewise.
6307 (ldfile_open_command_file): Likewise. Also, set lineno to 1.
6308 * ldfile.h: Update declarations for ldfile.c changes.
6309 * ldlex.l: Include <ctype.h>.
6310 (file_name_stack): Change to be const char *.
6311 (lineno_stack): New static variable.
6312 (<<EOF>>): Set lineno as well as ldfile_input_filename.
6313 (lex_push_file): Make name argument const. Initialize
6314 lineno_stack entry.
6315 (lex_redirect): Initialize lineno_stack entry.
6316 (lex_warn_invalid): Handle non printable characters nicely.
6317 * ldlex.h (lex_push_file): Declare second argument as const.
6318
6319 * ldgram.y (ifile_p1): Recognize GROUP.
6320 * ldlex.l: Recognize GROUP.
6321 * ld.texinfo (Option Commands): Document GROUP.
6322
6323Mon Sep 12 17:04:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6324
6325 * config/m68klynx.mh: New file.
6326
6327Mon Sep 12 01:50:03 1994 Jeff Law (law@snake.cs.utah.edu)
6328
6329 * emultempl/hppaelf.em: Add newlines to the error messages.
6330
6331Sat Sep 10 16:05:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6332
6333 * config/i386lynx.mh: New file.
6334 * scripttempl/i386lynx.sc: Don't put .ctors and .dtors in .text
6335 unless CONSTRUCTING.
6336
6337Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6338
6339 * emulparams/elf32mipb.sh (TEMPLATE_NAME): Define as elf32.
6340 (GENERATE_SHLIB_SCRIPT): Define as yes.
6341 (DYNAMIC_LINK): Define as false.
6342 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse):
6343 Initialize config.dynamic_link to DYNAMIC_LINK if it is defined.
6344 (gld${EMULATION_NAME}_place_orphan): Reset stat_ptr at end.
6345 * Makefile.in (eelf32mipb.c): Depend upon elf32.em rather than
6346 generic.em.
6347
6348Thu Sep 8 16:30:37 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6349
6350 * scripttempl/h8500b.sc: Put rdata stuff into own segment.
6351
6352Thu Sep 8 13:25:24 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6353
6354 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Don't define;
6355 .got section is now explicitly handled in elf.sc.
6356
6357Wed Sep 7 13:08:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6358
6359 * scripttempl/alpha.sc: Redo script to set . outside of sections
6360 and not bother to explicitly specify section addresses.
6361 Explicitly place .sdata section.
6362
6363Tue Sep 6 23:51:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6364
6365 * scripttempl/m68kcoff.sc: Put .bss in data segment.
6366
6367 * scripttempl/h8300.sc: Change .stab and .stabstr to use a VMA of
6368 0, and to only be marked as NOLOAD if relocating.
6369 * scripttempl/h8500.sc, scripttempl/h8500b.sc: Likewise.
6370 * scripttempl/h8500c.sc, scripttempl/h8500m.sc: Likewise.
6371 * scripttempl/h8500s.sc, scripttempl/i386coff.sc: Likewise.
6372 * scripttempl/i386go32.sc, scripttempl/i386lynx.sc: Likewise.
6373 * scripttempl/m68kcoff.sc, scripttempl/m68klynx.sc: Likewise.
6374 * scripttempl/sh.sc, scripttempl/sparccoff.sc: Likewise.
6375 * scripttempl/sparclynx.sc: Likewise.
6376
6377Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
6378
6379 * Makefile.in, configure.in: Add support (disabled) the ARM/RISCiX.
6380 * config/riscix.mt, emulparams/riscix.sh, scripttempl/riscix.sc:
6381 New files.
6382
6383Tue Aug 30 11:48:08 1994 Eric Youngdale (ericy@cais.cais.com)
6384
6385 * ld.h (args_type): Add field soname.
6386 * lexsup.c (parse_args): Handle -soname argument.
6387 * emultempl/elf32.em: In call to bfd_elf32_size_dynamic_sections,
6388 pass soname.
6389 * ld.texinfo: Document -soname.
6390
6391Mon Aug 29 15:21:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6392
6393 * ldlang.c (lang_check): Don't try to set the architecture if the
6394 input and output files are incompatible. Just warn.
6395
6396Wed Aug 24 12:52:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6397
6398 * configure.in: Change i[34]86 to i[345]86.
6399
6400Sun Aug 21 16:17:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6401
6402 * emulparams/hp3hpux.sh: Define __DYNAMIC to be 0.
6403
6404Thu Aug 18 15:37:45 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6405
6406 Make the ELF linker handle orphaned sections reasonably. Also,
6407 define __start_SECNAME and __stop_SECNAME around sections whose
6408 names can be represented in C, for the benefit of symbol sets in
6409 glibc.
6410 * ldemul.h (ldemul_place_orphan): Declare.
6411 (ld_emulation_xfer_type): Add place_orphan field.
6412 * ldemul.c (ldemul_place_orphan): New function.
6413 * ldlang.h (wild_doit): Declare.
6414 * ldlang.c (wild_doit): Make nonstatic.
6415 (lang_place_orphans): Call ldemul_place_orphan.
6416 * emultempl/elf32.em: Include <ctype.h> and "ldgram.h".
6417 (hold_section, hold_use, hold_text, hold_data, hold_bss): New
6418 static variables.
6419 (gld${EMULATION_NAME}_place_orphan): New static function.
6420 (gld${EMULATION_NAME}_place_section): New static function.
6421 (ld_${EMULATION_NAME}_emulation): Initialize place_orphan field.
6422
6423Tue Aug 16 00:17:20 1994 Eric Youngdale (ericy@cais.cais.com)
6424
6425 * scripttempl/aout.sc: Add .linux-dynamic after .data.
6426
6427Tue Aug 16 00:08:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6428
6429 * lexsup.c (parse_args) Treat --dll-verbose as --version, for
6430 Linux compatibility. From hjl@nynexst.com (H.J. Lu).
6431
6432Mon Aug 15 17:17:33 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6433
6434 * ldexp.h (exp_get_abs_int): Declare.
6435
6436Sat Aug 6 01:45:39 1994 Steve Chamberlain (sac@jonny.cygnus.com)
6437
6438 * ldlang.c (lang_do_assignments): Handle complex AT's better.
6439 * ldexp.c (exp_get_abs_int): New function.
6440
6441Fri Aug 5 20:55:55 1994 Jason Molenda (crash@phydeaux.cygnus.com)
6442
6443 * configure.in: add i960-nindy-coff support.
6444
6445Thu Aug 4 14:45:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6446
6447 * ldlex.l (yy_create_string_buffer): Handle change to internal
6448 interface in flex 2.4.7.
6449
6450Tue Aug 2 11:52:06 1994 Eric Youngdale (ericy@cais.cais.com)
6451
6452 * emultempl/linux.em (gld${EMULATION_NAME}_find_address_statement):
6453 New function; add 0x20 to any use of -Ttext.
6454 (gld${EMULATION_NAME}_create_output_section_statements): New
6455 function.
6456 (ld_${EMULATION_NAME}_emulation): Use the new function
6457 gld${EMULATION_NAME}_create_output_section_statements.
6458
6459Mon Aug 1 15:50:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6460
6461 * scripttempl/mips.sc: Redo script to set . outside of sections
6462 and not bother to explicitly specify section addresses.
6463
6464Tue Jul 26 11:02:35 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6465
6466 * scripttempl/elf.sc: Copy several more relocation sections into
6467 the output. Put .got.plt sections into .got.
6468
6469Fri Jul 22 12:15:36 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6470
6471 * scripttempl/elf.sc: Use PROVIDE to define etext, edata, and end.
6472
6473 Add a new script operator, PROVIDE, to define a symbol only if it
6474 is needed.
6475 * ldgram.y (PROVIDE): New token.
6476 (assignment): Accept PROVIDE.
6477 * ldlex.l (PROVIDE): New token.
6478 * ldexp.h (node_type): Add etree_provide to node_class enum.
6479 (exp_provide): Declare.
6480 * ldexp.c (exp_fold_tree): Handle etree_provide.
6481 (exp_provide): New function.
6482 (exp_print_tree): Handle etree_provide.
6483 * ld.texinfo: Document PROVIDE.
6484
6485 * ldlang.c (lang_common): Pass desired alignment to
6486 lang_one_common as power of two.
6487 (lang_one_common): Get common symbol alignment from linker hash
6488 table entry. Treat desired alignment as a power of two.
6489
6490 * ldlang.c (wild_section): Attach all section with the given name,
6491 not just the first one. If there is no name, attach all sections
6492 even if the SEC_IS_COMMON flag is set.
6493
6494Wed Jul 20 15:49:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6495
6496 * ld.h (args_type): Add field rpath.
6497 * lexsup.c (S_ISDIR): Define if not already defined.
6498 (parse_args): Add support for -rpath. If -R is used to name a
6499 directory, treat it as -rpath for Solaris compatibility.
6500 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
6501 Pass command_line.rpath to bfd_elf32_size_dynamic_sections.
6502 * ldmain.c (main): Initialize command_line.rpath to NULL.
6503 * ld.texinfo: Document -rpath option.
6504
6505Sun Jul 10 00:33:24 1994 Ian Dall (dall@hfrd.dsto.gov.au)
6506
6507 * emulparams/pc532machaout.sh: New file. Pc532 mach script
6508 parameters.
6509
6510 * emulparams/netbsd532.sh: New file. Netbsd 532 script parameters.
6511
6512 * config/pc532mach.mt: New file. Pc532 mach target support.
6513
6514 * config/pc532mach.mh: New file. Pc532 mach host support.
6515
6516 * config/netbsd532.mt: New file. Netbsd 532 target support.
6517
6518 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd support.
6519
6520 * Makefile.in: Add epcmachaout.c dependency and enetbsd532.c
6521 dependency.
6522
6523Fri Jul 8 10:57:02 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6524
6525 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Use
6526 bfd_abs_section_ptr, not &bfd_abs_section.
6527
6528 * lexsup.c (parse_args): Changed "retain-symbols-file" from
6529 no_argument to required_argument. From djm.
6530
6531Thu Jul 7 12:29:53 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6532
6533 * scripttempl/elf.sc: Explicitly mention .stab and .stabstr
6534 sections to force a VMA of 0; needed for ELF backends which have
6535 not been converted to the new linker style.
6536
6537Mon Jul 4 19:35:45 1994 Jeff Law (law@snake.cs.utah.edu)
6538
6539 * scripttempl/hppaelf.sc (__stack_zero): Don't define this name,
6540 it was for the HPUX dynamic loader's use and it creates problems
6541 with ELF GDB.
6542
6543Fri Jul 1 12:53:47 1994 Jeff Law (law@snake.cs.utah.edu)
6544
6545 * ldlang.c (lang_do_assignments): No longer static. Delete decl.
6546 * ldlang.h (lang_do_assignments): Put external decl here.
6547 * emultempl/hppaelf.em: Minor cleanups throughout file.
6548 (hppa_elf_create_output_section_statements): Rewrite.
6549 (hppaelf_finish): Rewrite.
6550
6551Wed Jun 29 16:50:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6552
6553 * config/solaris2.mh (NATIVE_LIB_DIRS): Define as /usr/ccs/lib.
6554
6555 * lexsup.c (parse_args): Accept -Bstatic and -Bdynamic. Do not
6556 accept plain -B.
6557 * ld.texinfo: -Bstatic is not ignored.
6558
6559Tue Jun 28 12:13:34 1994 Stan Shebs (shebs@andros.cygnus.com)
6560
6561 * ldlex.l: Recognize \r the same as \n.
6562
6563Thu Jun 23 17:53:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6564
6565 Preliminary support for generating shared libraries, from Eric
6566 Youngdale <ericy@cais.cais.com>.
6567 * genscripts.sh: If the emulation parameter file sets
6568 GENERATE_SHLIB_SCRIPT, generate a .xs script file with
6569 CREATE_SHLIB defined.
6570 * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): If
6571 link_info.shared is set, use the .xs script file.
6572 * scripttempl/elf.sc: If CREATE_SHLIB is set, don't create a
6573 .interp section, and don't include TEXT_START_ADDR in the starting
6574 address of the first section.
6575 * emulparams/elf_i386.sh (GENERATE_SHLIB_SCRIPT): Likewise.
6576 * emulparams/elf32_sparc.sh (GENERATE_SHLIB_SCRIPT): Define.
6577
6578Thu Jun 23 12:52:22 1994 David J. Mackenzie (djm@rtl.cygnus.com)
6579
6580 * configure.in: Change --with-targets to --enable-targets.
6581
6582Wed Jun 22 13:42:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6583
6584 * lexsup.c (parse_args): Add support for new options -( -) with
6585 synonyms --start-group --end-group.
6586 * ldlang.h (enum statement_enum): Add lang_group_statement_enum.
6587 (lang_group_statement_type): Define new struct.
6588 (lang_statement_union_type): Add group_statement field.
6589 (lang_enter_group, lang_leave_group): Declare.
6590 * ldlang.c (lang_for_each_statement_worker): Handle
6591 lang_group_statement_enum.
6592 (map_input_to_output_sections, print_statement): Likewise.
6593 (lang_size_sections, lang_do_assignments): Likewise.
6594 (open_input_bfds): Completely rewrite. Now does its own looping,
6595 rather than using lang_for_each_statement. Handle groups.
6596 (lang_process): Update call to open_input_bfds.
6597 (print_group): New static function.
6598 (lang_enter_group, lang_leave_group): New static functions.
6599 * ldfile.c (ldfile_open_file): If the file has already been
6600 opened, just return rather than taking an assertion failure.
6601 * ldver.c (help): Mention new options.
6602 * ld.texinfo: Document new options.
6603
6604 * ldlang.c (end_of_data_section_statement_list): Don't define.
6605 (lang_leave_output_section_statement): Don't set obsolete variable
6606 end_of_data_section_statement_list.
6607
6608 * scripttempl/go32coff.sc: Don't put ${DATA_ALIGNMENT} inside an
6609 ALIGN.
6610
6611 * ldlang.c (lang_size_sections): Adjust current region address
6612 even for sections with an explicit address. From
6613 ralphc@pyramid.com (Ralph Campbell).
6614
6615 * emulparams/i386linux.sh (NONPAGED_TEXT_START_ADDR): Set to 0.
6616 From jrs@world.std.com (Rick Sladkey).
6617
6618 * scripttempl/mipsbsd.sc: Let sections align to their natural
6619 boundaries.
6620
6621Tue Jun 21 11:27:04 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
6622
6623 * ldlang.c (lang_init): Use new bfd_abs_section_ptr, not
6624 &bfd_abs_section.
6625 (lang_abs_symbol_at_beginning_of): Likewise.
6626 (lang_abs_symbol_at_end_of): Likewise.
6627 (lang_size_sections): Use bfd_is_abs_section to check for the
6628 absolute section. Don't try to set the VMA or output_offset or
6629 size of the absolute section.
6630 * ldmain.c (notice_ysym): Use bfd_is_und_section to check for the
6631 undefined section.
6632
6633Thu Jun 16 22:48:41 1994 Jeff Law (law@snake.cs.utah.edu)
6634
6635 * scripttempl/hppaelf.sc: Place .data and .bss at 0x40000000
6636 when generating relocatable objects.
6637
6638Thu Jun 16 14:25:22 1994 Eric Youngdale (ericy@cais.cais.com)
6639
6640 * emultempl/linux.em: New file providing support for linking
6641 against Linux shared libraries.
6642 * config/i386-linux.mt (ei386linux.c): Depend upon linux.em.
6643 * emulparams/i386linux.sh (TEMPLATE_NAME): Define as linux.
6644
6645Thu Jun 16 12:22:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6646
6647 * lexsup.c (parse_args): Add -shared to longopts, and handle it.
6648 * ldmain.c (main): Initialize link_info.shared to false. Give
6649 error if link_info.relocateable and link_info.shared are both set.
6650
6651 * configure.in: If EMUL_EXTRA* is defined in a config file, treat
6652 it as naming an emulation to be added to EMULATION_OFILES.
6653 * config/i386-linux.mt (EMUL_EXTRA1): Define as elf_i386.
6654
6655 * Makefile.in: Rebuilt dependencies.
6656 (ALL_EMULATIONS): Add ei386linux.o, eelf32_sparc.o,
6657 eelf64_sparc.o. Remove $(OTHER_EMULATIONS).
6658 (ei386linux.c, eelf32_sparc.c, eelf64_sparc.c): New targets.
6659 * config/i386-linux.mt (OTHER_EMULATIONS): Don't define.
6660 (ei386linux.c): Remove; now in Makefile.in.
6661 * config/i386-lynx.mt (OTHER_EMULATIONS): Don't define.
6662 * config/m68k-lynx.mt (OTHER_EMULATIONS): Don't define.
6663 * config/sparc-lynx.mt (OTHER_EMULATIONS): Don't define.
6664 * config/sparc64-elf.mt (OTHER_EMULATIONS): Don't define.
6665 (eelf64_sparc.c): Remove; now in Makefile.in.
6666 * config/sun4sol2.mt (OTHER_EMULATIONS): Don't define.
6667 (eelf32_sparc.c): Remove; now in Makefile.in.
6668
6669 * ldexp.c (exp_print_tree): Don't crash if etree_rel section has
6670 no owner--it might be bfd_abs_section. From Eric Youngdale
6671 <ericy@cais.cais.com>.
6672
6673 * scripttempl/aout.sc: Let sections align to their natural
6674 boundaries.
6675
6676Wed Jun 15 01:54:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6677
6678 * ldemul.h (ldemul_open_dynamic_archive): Declare.
6679 (ld_emulation_xfer_type): Add new field open_dynamic_archive.
6680 * ldemul.c: Include ldexp.h and ldlang.h.
6681 (ldemul_open_dynamic_archive): New function.
6682 * ldfile.h (ldfile_open_file_search): Declare.
6683 * ldfile.c: Include ldemul.h.
6684 (try_open_bfd): Rename from cache_bfd_openr. Return boolean
6685 argument, not bfd *. Change all callers.
6686 (ldfile_open_file_search): Rename from open_a. Return boolean
6687 argument, not bfd *. Clean up. Change all callers.
6688 (ldfile_open_file): If doing a dynamic link, call
6689 ldemul_open_dynamic_archive rather than assuming the extension of
6690 a dynamic object is ".so".
6691 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
6692 New function.
6693 (ld_${EMULATION_NAME}_emulation): Initialize open_dynamic_archive
6694 field.
6695 * emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise.
6696
6697 * ldmain.c (get_emulation): Ignore -m486 for Linux compatibility.
6698 * lexsup.c (parse_args): Ignore -qmagic for Linux compatibility.
6699 Accept -static as a synonym for -non_shared.
6700
6701 Let the user change the dynamic linker used by ELF code.
6702 * ld.h (args_type): Add new field interpreter.
6703 * lexsup.c (parse_args): Add dynamic-linker to longopts, and
6704 handle it.
6705 * ldmain.c (main): Initialize command_line.interpreter to NULL.
6706 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Get
6707 the ELF backend to return the .interp section. If
6708 command_line.interpreter is not NULL, set the contents of .interp
6709 to it.
6710 * ld.texinfo: Mention -dynamic-linker.
6711
6712 * config/sun4sol2.mt (eelf32_sparc.c): Depend upon elf32.em, not
6713 generic.em.
6714
6715 * lexsup.c (parse_args): Sort out the option macros and change the
6716 definitions to make it easier to add a new option.
6717
6718 * scripttempl/aout.sc: Define __etext and __edata to go along with
6719 _etext and _edata.
6720
6721 * ld.h (ld_config_type): Add new field traditional_format.
6722 * lexsup.c (parse_args): Add traditional-format to longopts, and
6723 handle it.
6724 * ldmain.c (main): Initialize config.traditional_format to false.
6725 * ldlang.c (ldlang_open_output): Set BFD_TRADITIONAL_FORMAT in BFD
6726 flags of output_bfd according to config.traditional_format.
6727 * ldver.c (help): Mention -traditional-format.
6728 * ld.texinfo: Document -traditional-format.
6729
6730Tue Jun 14 23:10:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6731
6732 * ldctor.c (ldctor_add_entry): Add entries to a set in the order
6733 they are encountered.
6734
6735Tue Jun 14 18:05:09 1994 Eric Youngdale (ericy@cais.cais.com)
6736
6737 * emulparams/i386linux.sh (TEXT_START_ADDR): Define as 0x1000.
6738 (NONPAGED_TEXT_START_ADDR): Define as 0x20.
6739
6740Mon Jun 13 15:46:09 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6741
6742 * scripttempl/alpha.sc: Define _ftext, _etext and _fdata insted of
6743 _FTEXT, _ETEXT and _FDATA. Dont define _END.
6744
6745 * ldfile.c (open_a): If this is not an archive, try to open it in
6746 the current directory before searching for it.
6747
6748 * lexsup.c (parse_args): Treat -i as a synonym for -r.
6749
6750 * ldgram.y (exp): Treat BLOCK as a synonym for ALIGN, so that
6751 BLOCK works in a section address as documented.
6752
6753 * ldgram.y (YYDEBUG): Don't define.
6754
6755Fri Jun 10 16:45:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6756
6757 * emultempl/gld960.em: Pass false for new argument to
6758 ldfile_add_library_path.
6759 * emultempl/gld960c.em, emultempl/lnk960.em: Likewise.
6760
6761 * emultempl/sunos.em: Only look for .so files if doing a dynamic
6762 link.
6763
6764Thu Jun 9 08:35:17 1994 Ian Lance Taylor (ian@cygnus.com)
6765
6766 * scripttempl/i960.sc: Add CONSTRUCTORS to .data.
6767
6768Thu Jun 9 06:52:29 1994 Bill Cox (bill@rtl.cygnus.com)
6769
6770 * Makefile.in (check): Delete ld.new dependency so that a regression
6771 test doesn't trigger a rebuild of the linker.
6772
6773Thu Jun 9 00:17:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6774
6775 * ldlang.c (map_input_to_output_sections): For lang_address, call
6776 init_os if it hasn't already been called.
6777
6778Thu Jun 2 17:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6779
6780 Add support for SunOS shared libraries.
6781 * aout.sc: Don't define __DYNAMIC here. Add new sections used by
6782 shared library support code.
6783 * emultempl/sunos.em: New file.
6784 * emulparams/sun4.sh (TEMPLATE_NAME): Define as sunos.
6785 * emulparams/sun3.sh (TEMPLATE_NAME): Likewise.
6786 * Makefile.in (esun4.c): Depend upon sunos.em, not generic.em.
6787 (esun3.c): Likewise.
6788
6789 * ldlang.c: Minor formatting cleanups.
6790 (lang_for_each_input_file): New function.
6791 * ldlang.h (lang_for_each_input_file): Declare.
6792
6793 * ldfile.h (search_dirs_type): Move from ldfile.c, and add cmdline
6794 field.
6795 (search_head): Declare.
6796 (ldfile_add_library_path): Add new cmdline argument in prototype.
6797 * ldfile.c (search_head): Make non-static.
6798 (search_dirs_type): Move to ldfile.h.
6799 (ldfile_add_library_path): Accept cmdline argument, and save it.
6800 * lexsup.c (parse_args): Pass true for new cmdline argument of
6801 ldfile_add_library_path.
6802 (set_default_dirlist): Likewise.
6803 * ldmain.c (check_for_scripts_dir): Pass false for new cmdline
6804 argument of ldfile_add_library_path.
6805 * ldgram.y (ifile_p1): Likewise.
6806
6807Wed Jun 1 14:24:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6808
6809 * ldlang.h (lang_input_statement_type): Remove fields subfiles,
6810 total_size, superfile and chain.
6811 * ldfile.c (open_a): Don't clear search_dirs_flag.
6812 (ldfile_open_file): Don't try to open superfile. Assert that file
6813 has not already been opened.
6814 * ldlang.c (new_afile): Don't initialize superfile.
6815 * ldmain.c (add_archive_element): Don't initialize subfiles or
6816 chain or superfile. Initialize search_dirs_flag to false.
6817
6818Fri May 27 12:25:33 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6819
6820 * ldver.c (ldversion): Changed version to "cygnus-2.4.1".
6821
6822 Changes from binutils-2.4 release:
6823
6824 * genscripts.sh (RELOCATING, CONSTRUCTING): When setting
6825 variables, use whitespace, so scripts don't break.
6826
6827 * config/alphaosf.mh (HDEFINES, CFLAGS): Deleted.
6828
6829 * emultempl/generic.em: Find emultempl/stringify.sed in ${srcdir}.
6830
6831 * cdtest-bar.cc: Renamed from cdtest-func.cc.
6832 * Makefile.in: Noted change.
6833
6834 * scripttempl/a29k.sc: Don't include /lab3/u3/..../segments.o; I
6835 don't know where that's supposed to come from, or why it's
6836 necessary.
6837
6838 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
6839
6840 * configure.bat: update to latest makefile.in
6841 * emulpara/go32.sh: set to coff-go32 not aout
6842 * emultemp/generic.em: strength-reduce the structure of
6843 this shell script, since the only available shell for
6844 DOS can't handle complex syntax.
6845 * emultemp/stringify.sed: for "sed -f" instead of inline.
6846 * makefile.in: depend on stringify.sed as well as genscripts.sh
6847 * scripttemp/go32coff.sc: correct for djgpp 1.11's COFF format
6848 * genscripts.sh: empty variables aren't always considered "set",
6849 so set them to "y" instead.
6850
6851Fri May 27 01:08:14 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6852
6853 * ldlang.c (entry_symbol): Make static.
6854 (lang_add_entry): Add cmdline argument.
6855 * ldlang.h (lang_add_entry): Change prototype.
6856 * ldgram.y (statement_anywhere): Change lang_add_entry call.
6857 * lexsup.c (parse_args): Likewise.
6858
6859Tue May 24 16:13:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6860
6861 * emulparams/elf32mipb.sh (OTHER_READONLY_SECTIONS): Don't give
6862 .reginfo an address.
6863 (OTHER_READWRITE_SECTIONS): Don't give .lit4 or .lit8 an address.
6864 (OTHER_SECTIONS): Define for .gptab.sdata and .gptab.sbss.
6865 * scripttempl/elf.sc: Use OTHER_SECTIONS at end of script.
6866
6867Thu May 19 13:31:33 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6868
6869 Add support for ELF shared libraries.
6870 * ld.h (ld_config_type): Add field dynamic_link.
6871 * ldmain.c (main): Initialize config.dynamic_link to false. Warn
6872 on attempts to use -r with -relax, -call_shared or -s.
6873 * lexsup.c (longopts): Separate OPTION_CALL_SHARED from
6874 OPTION_NON_SHARED. Add OPTION_IGNORE. Adjust macro values
6875 accordingly. Add "dy" and "non_shared" options. Change "Qy" to
6876 OPTION_IGNORE for now. Handle OPTION_CALL_SHARED and
6877 OPTION_NON_SHARED by setting dynamic_link field accordingly.
6878 Handle OPTION_IGNORE by ignoring it. Clear dynamic_link field for
6879 -r and -Ur.
6880 * ldfile.c (ldfile_open_file): If config.dynamic_link is true, try
6881 opening a file with a .so extension first.
6882 * emultempl/elf32.em: New file.
6883 * emulparams/elf32_sparc.sh (TEXT_START_ADDR): Change to 0x10000.
6884 (NONPAGED_TEXT_START_ADDR): Likewise.
6885 (TEMPLATE_NAME): Define as elf32.
6886 (DATA_PLT): Define.
6887 * emulparams/elf_i386.sh (TEMPLATE_NAME): Define as elf32.
6888 * scripttempl/elf.sc: Add placement for new dynamic sections.
6889 Don't use CREATE_OBJECT_SYMBOLS. Define _etext, _edata and _end
6890 outside of any section. Don't use ALIGN(8); just let one section
6891 VMA follow another. Put .dynbss in .bss. Don't mention debugging
6892 sections; they'll be handled correctly anyhow.
6893 * Makefile.in (eelf_i386.c): Depend upon elf32.em, not generic.em.
6894
6895Wed May 18 10:15:39 1994 Ian Lance Taylor (ian@cygnus.com)
6896
6897 * Makefile.in (install): Redirect output of ln to /dev/null.
6898
6899Mon May 16 13:35:08 1994 Jeff Law (law@snake.cs.utah.edu)
6900
6901 * emultempl/hppaelf.em: Change all references of
6902 .hppa_linker_stubs to .PARISC.stubs.
6903 * scripttempl/hppaelf.sc: Likewise.
6904
6905Fri May 13 13:00:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6906
6907 * ldlang.c (print_output_section_statement): Change ``no attached
6908 output section'' message slightly.
6909 (lang_do_assignments): Don't recurse down if there is no real
6910 section.
6911
6912 * config/i386-linux.mt (OTHER_EMULATIONS): Change em_ to e to
6913 match corresponding change in emulation templates.
6914 * config/i386-lynx.mt, config/m68k-lynx.mt: Likewise.
6915 * config/sparc-lynx.mt, config/sun4sol2.mt: Likewise.
6916
6917Wed May 11 18:16:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6918
6919 * ldver.c (ldversion): Updated version number.
6920
6921 * cdtest-foo.cc: Use explicit "#pragma implementation".
6922 * cdtest-bar.cc: Renamed from cdtest-func.cc.
6923 * Makefile.in: References to cdtest-func.o changed to
6924 cdtest-bar.o.
6925
6926Wed May 11 16:24:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6927
6928 Don't create unnecessary output sections.
6929 * ldlang.c (out_bfd_get_section_by_name): Remove.
6930 (wild_section): Call bfd_get_section_by_name rather than
6931 our_bfd_get_section_by_name. Don't call wild_doit if there is no
6932 section.
6933 (lang_create_output_section_statements): Remove.
6934 (map_input_to_output_sections): For several cases, call init_os if
6935 it has not already been called.
6936 (lang_size_sections): If output section was not created, skip it.
6937 (lang_process): Don't call lan_create_output_section_statements.
6938 (lang_place_orphans): Skip files with just_syms_flags set to true.
6939 * ld.texinfo: Document change.
6940
6941Tue May 10 14:31:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6942
6943 * ldlang.c (wild_doit): Don't bother initializing the vma and
6944 section size. Don't special case SEC_SHARED_LIBRARY.
6945 (lang_size_sections): Handle SEC_COFF_SHARED_LIBRARY sections
6946 specially.
6947
6948Fri May 6 12:24:27 1994 Steve Chamberlain (sac@cygnus.com)
6949
6950 * config/go32.mh : New file for Xgo32X.
6951
6952Fri May 6 15:15:35 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6953
6954 * ldfile.c (ldfile_open_command_file): Set bfd_error_system_call
6955 before calling einfo, since we are reporting an fopen failure.
6956 From jrs@world.std.com (Rick Sladkey).
6957
6958 * configure.in: Use "e" rather than "em_" as prefix for
6959 emulations.
6960
6961Fri May 6 01:08:14 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6962
6963 * emultempl/generic.em: Use "e" rather than "em_" as prefix for
6964 filename.
6965 * emultempl/gld960.em, emultempl/gld960c.em, emultempl/lnk960.em,
6966 emultempl/hppaelf.em, emultempl/m88kbcs.em, emultempl/vanilla.em:
6967 Ditto.
6968 * Makefile.in: Changed all generated file names.
6969 (ldemul-list.h): Depend on Makefile, not config.status. Changed
6970 sed patterns to handle new filenames.
6971
6972 * config/mipsl-idt.mt: Renamed from mips-idtl.mt.
6973 * configure.in: Adjusted.
6974
6975Thu May 5 15:07:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
6976
6977 * Makefile.in (install-info): Don't use "$<*", it doesn't always
6978 work. Instead, check build dir and $srcdir explicitly, and use
6979 `echo' to get all the filenames.
6980
6981 * configure.in (h8300h-*-hms): Changed ld_target name to
6982 cf-h8300h.
6983 * config/cf-h8300h.mt: Renamed from coff-h8300h.mt, to make it
6984 unique in 8.3.
6985
6986 * config/i960coff.mt: New file.
6987 * emulparams/gld960coff.sh: New file.
6988 * emultempl/gld960c.em: New file.
6989 * configure.in (i960-*-vxworks5* except -vxworks5.0*): Use
6990 i960coff configuration.
6991 * Makefile.in (em_gld960coff.c): Added dependencies, build rule.
6992
6993 * Makefile.in (ALL_EMULATIONS): Remove em_delta68.o, since the
6994 code isn't included in FSF releases, and it can still be
6995 explicitly selected.
6996 (distclean): Remove site.bak and tmpdir.
6997 (STAGESTUFF): Removed $(GENERATED_CFILES) $(GENERATED_HFILES).
6998 (mostlyclean): Delete them explicitly here. Also remove tmpdir.
6999
7000 Patches from Ralph Campbell:
7001 * config/mipsbsd.mh: New file.
7002 * Makefile.in (em_mipsbsd.c): Use mipsbsd.sc, not aout.sc.
7003 * scripttempl/mipsbsd.sc: Don't define __DYNAMIC.
7004 * emulparams/mipsbsd.sh (OUTPUT_FORMAT): Fix name to have `a.out'
7005 instead of `aout'.
7006
7007 * configure.in (i386-*-gnu*): Treat like i386-*-mach*.
7008
7009Wed May 4 11:59:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7010
7011 * config/m68k.mt (EMUL): Set to m68kaout.
7012 * emulparams/m68kaout.sh: New file.
7013 * Makefile.in (ALL_EMULATIONS): Add em_m68kaout.o.
7014 (em_m68kaout.c): New target.
7015
7016 * ldlang.c (lang_size_sections): If dot moves because of an
7017 assignment, don't try to insert a pad into the absolute output
7018 section, just change the address of the default memory region
7019 instead.
7020
7021 * Makefile.in (mostlyclean): Remove cdtest.tmp, cdtest-ur,
7022 cdtest-ur.out, and cdtest-ur.tmp.
7023
7024Wed Apr 27 16:03:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7025
7026 * scripttempl/sa29200.sc: Align all sections to four byte
7027 boundaries.
7028
7029Wed Apr 27 10:48:03 1994 Steve Chamberlain (sac@cygnus.com)
7030
7031 * Makefile.in, configure.in: Support for go32 coff.
7032 * config/i386-go32.mt: New file
7033 * emulparams/i386go32.sh: New file
7034 * scripttempl/i386go32.sc: New file
7035
7036Tue Apr 26 17:20:03 1994 Stan Shebs (shebs@andros.cygnus.com)
7037
7038 * Makefile.in (em_m68klynx.c, em_i386lynx.c, em_sparclynx.c): Use
7039 Lynx-specific script templates.
7040 * configure.in (sparclite*-*-coff): Use coff-sparc.
7041 * emulparams/i386lynx.sh (SCRIPT_NAME): Set to i386lynx.
7042 * emulparams/sparclynx.sh (SCRIPT_NAME): Set to sparclynx.
7043 (ENTRY): Set to __main.
7044 * scripttempl/i386lynx.sc: New file, script for I386 Lynx.
7045 * scripttempl/m68klynx.sc: Add insertion of ctor/dtor sections.
7046 * scripttempl/sparclynx.sc: New file, script for uSparc Lynx.
7047
7048Tue Apr 26 12:41:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7049
7050 * scripttempl/mips.sc: Force _gp and .lit8 to be aligned to a 16
7051 byte boundary, in case the global constructors do not take up an
7052 even 16 bytes.
7053
7054 * config/i386v4.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
7055 exist, get crtbegin based on gcc -print-libgcc-file-name.
7056 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
7057
7058Mon Apr 25 15:27:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7059
7060 * ldlang.c (lang_size_sections): When no address is given for a
7061 section, align it according to its requirements.
7062
7063Thu Apr 21 17:24:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7064
7065 * Makefile.in (clean, distclean): Remove configdoc.texi.
7066
7067Tue Apr 19 12:12:15 1994 Bill Cox (bill@rtl.cygnus.com)
7068
7069 * configure.in: Add i[34]86-*-bsd386 to the patterns recognized.
7070
7071Fri Apr 15 14:35:42 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7072
7073 * ldlang.c (lang_size_sections): When relaxing, adjust the
7074 position of a padding statement, and adjust dot accordingly.
7075
7076Mon Apr 11 17:37:09 1994 Bill Cox (bill@rtl.cygnus.com)
7077
7078 * Makefile.in (EXPECT, RUNTEST): Set these for the check goal.
7079
7080Mon Apr 11 12:32:57 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7081
7082 * scripttempl/i386coff.sc: If relocating, don't put .init and
7083 .fini sections into .text; keep them separate.
7084 * config/i386sco.mh (HOSTING_CRT0): If ../gcc/crtbegin.o does not
7085 exist, get crtbegin based on gcc -print-libgcc-file-name.
7086 (HOSTING_LIBS): Similar change for ../gcc/crtend.o.
7087
7088Mon Apr 11 10:31:00 1994 Bill Cox (bill@rtl.cygnus.com)
7089
7090 * Makefile.in (check): Set TCL_LIBRARY for runtest.
7091
7092Wed Apr 6 00:09:37 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
7093
7094 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
7095 manufacturer.
7096
7097 * emultempl/hppaelf.em (hppaelf_finish): Only resize sections
7098 if building a final executable.
7099
7100Tue Apr 5 12:17:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7101
7102 * ldmain.c (main): Check the return value of bfd_close.
7103
7104Thu Mar 31 18:07:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7105
7106 * scripttempl/alpha.sc: Clean up section alignment to ensure that
7107 sections never overlap when using -r.
7108
7109Wed Mar 30 15:51:15 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7110
7111 * ldmisc.c (vfinfo): Change symbol reading slightly for recent BFD
7112 changes: get_symtab_upper_bound renamed and returns long,
7113 bfd_canonicalize_symtab returns long, check for error indications.
7114
7115Fri Mar 25 17:20:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7116
7117 * ldlang.c (print_input_section): For section size, use
7118 _cooked_size if it is non-zero, size otherwise.
7119 (size_input_section): Likewise.
7120 (lang_do_assignments): Likewise (case lang_input_section_enum).
7121
7122Thu Mar 24 15:20:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7123
7124 * ldlang.c (new_afile): Add new argument add_to_list. Don't set
7125 real to true for lang_input_file_is_marker_enum. Clear the_bfd.
7126 (lang_add_input_file): Pass true to new_afile for add_to_list.
7127 (lookup_name): Remove force_load argument. Changed all callers.
7128 Pass false to new_afile for add_to_list. Split loading of symbols
7129 out into separate function.
7130 (load_symbols): New function split out of lookup_name. Don't load
7131 the symbols if they are already loaded.
7132 (open_input_bfds): For lang_input_statement_enum call load_symbols
7133 rather than lookup_name.
7134 (lang_process): Pass abs_output_section rather than NULL to
7135 lang_size_sections.
7136 (lang_startup): Set real field of first_file to true.
7137
7138Wed Mar 23 14:15:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7139
7140 * ldlang.c (had_relax): Removed.
7141 (relax_again): New static variable.
7142 (lang_size_sections): Change call to bfd_relax_section to
7143 correspond to BFD changes. Set relax_again appropriately.
7144 (lang_process): Remove #if 0 code. When relaxing, keep calling
7145 lang_do_assignments and lang_size_sections until relax_again
7146 becomes false.
7147
7148 * emultemp/gld960.em: Include libiberty.h
7149 (gld960_before_parse): Pass NULL as final argument to concat.
7150
7151Tue Mar 22 13:08:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7152
7153 * scripttempl/aout.sc: Force _end and __end to be aligned to a
7154 four byte boundary.
7155
7156 * ldwrite.c (build_link_order): Handle lang_data_statement_enum by
7157 building a bfd_data_link_order, rather than by setting the section
7158 contents immediately.
7159
7160Mon Mar 21 18:28:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7161
7162 Changes to make -Ur work again.
7163 * ldmain.c (add_to_set): Now takes reloc argument rather than
7164 bitsize. Check config.build_constructors here. If an new hash
7165 table entry is created, mark it as undefined.
7166 (constructor_callback): No longer takes bitsize argument. Pass
7167 BFD_RELOC_CTOR to ldctor_add_set_entry, but first make sure the
7168 BFD backend supports it.
7169 (reloc_overflow): Handle a NULL abfd argument.
7170 (reloc_dangerous, unattached_reloc): Likewise.
7171 * ldctor.c: Include ldmain.h.
7172 (struct set_info): Change bitsize field to reloc.
7173 (ldctor_add_set_entry): Now takes reloc argument rather than
7174 bitsize. Don't bother to check config.build_constructors here.
7175 (ldctor_build_sets): Get the size from the reloc howto. If
7176 generating relocateable output, call lang_add_reloc rather than
7177 lang_add_data.
7178 * ldctor.h (ldctor_add_set_entry): Change declaration to use reloc
7179 instead of bitsize.
7180 * ldlang.h (statement_enum): Add lang_reloc_statement_enum.
7181 (lang_reloc_statement_type): New structure.
7182 (lang_statement_union_type): Add reloc_statement field.
7183 (lang_add_reloc): Declare new function.
7184 * ldlang.c (lang_for_each_statement_worker): Handle
7185 lang_reloc_statement_enum.
7186 (map_input_to_output_sections, print_statement): Likewise.
7187 (lang_size_sections, lang_do_assignments): Likewise.
7188 (print_reloc_statement): New function.
7189 (lang_add_reloc): New function.
7190 * ldwrite.c (build_link_order): Handle lang_reloc_statement_enum.
7191
7192 * Makefile.in (cdtest.out, cdtest-ur.o): New targets.
7193 (cdtest-ur, cdtest-ur.out): New targets.
7194 (check-cdtest): Now also check that -Ur works correctly.
7195
7196 * scripttemp/alpha.sc: Align all sections to 16 byte boundaries.
7197
7198Thu Mar 17 12:45:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7199
7200 * ldlang.c (lang_process): Move lang_common call before
7201 map_input_to_output_sections, to ensure that any alignment
7202 constraints set by common symbols are copied over to the output
7203 sections.
7204
7205Fri Mar 11 22:17:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7206
7207 * emulparams/elf32ppc.sh (TEMPLATE_NAME): Don't define.
7208 (OTHER_READWRITE_SECTIONS): Rename .toc to .got.
7209 * Makefile.in (em_elf32ppc.c): Depend upon generic.em, not ppc.em.
7210 * emultempl/ppc.em: Remove ugly stub code; turns out not to be
7211 needed for ELF.
7212
7213Tue Mar 8 04:22:27 1994 David J. Mackenzie (djm@rtl.cygnus.com)
7214
7215 * config/i386bsd.mh: New file.
7216
7217Mon Mar 7 15:23:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7218
7219 * elf.sc: Permit TEXT_START_SYMBOLS and DATA_START_SYMBOLS to be
7220 defined.
7221 * emulparams/elf32mipb.s (TEXT_START_SYMBOLS): Define _ftext.
7222 (DATA_START_SYMBOLS): Define _fdata.
7223
7224Mon Feb 28 10:59:14 1994 Stan Shebs (shebs@andros.cygnus.com)
7225
7226 * ldlang.c (cat): Define using ANSI style if ALMOST_STDC defined.
7227
7228Sun Feb 27 16:29:38 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
7229
7230 * emultempl/hppaelf.em (hppaelf_finish): Update comments. This
7231 works again. Attach some output symbols to the stub file bfd.
7232
7233 * emultempl/hppaelf.em: Include elf32-hppa.h.
7234 (file_chain): Add decl.
7235 (hppa_look_for_stubs_in_section): Delete decl.
7236 (hppaelf_finish): Reenable code. Do not pass symbols
7237 down to hppa_look_for_stubs_in_section.
7238
7239Sat Feb 26 10:58:25 1994 Ian Lance Taylor (ian@cygnus.com)
7240
7241 * ldmain.c (write_map): Don't define. Removed all references.
7242 Just use map_file or map_filename instead.
7243 (add_archive_element): Use minfo to write map information, not
7244 info_msg.
7245 (constructor_callback): Use fprintf to write map information, not
7246 info_msg.
7247 * ldmain.h (write_map): Don't declare.
7248 * ldgram.y (mri_script_command): Removed reference to write_map.
7249 * ldlang.c (lang_one_common): Likewise.
7250 * lexsup.c (parse_args): Likewise.
7251
7252Fri Feb 25 19:12:03 1994 Ian Lance Taylor (ian@cygnus.com)
7253
7254 * scripttempl/elf.sc: Force all sections to be aligned.
7255
7256 * ldgram.y (section): Reverse the order of memspec_opt and
7257 fill_opt to avoid an ambiguity when both are used.
7258 * ld.texinfo: Changed accordingly.
7259
7260 * ldgram.y: Move include of ldlex.h back with other includes.
7261 * ldlex.h (input_type): Don't initialize enum constants to
7262 particular values.
7263 * ldlex.l: Use a switch to return the right token based on
7264 input_type, rather than knowing that input_type has a value based
7265 on a token type.
7266
7267 * ldgram.y (dirlist_ptr): Removed; not used.
7268 * lexsup.c: Include ldver.h.
7269 * Makefile.in: Rebuilt dependencies.
7270
7271Fri Feb 25 18:55:54 1994 Ted Lemon (mellon@pepper.ncd.com)
7272
7273 * ldlang.c (lookup_name): don't call bfd_set_gp_size.
7274 (ldlang_add_file): call it here instead.
7275
7276Fri Feb 25 18:13:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
7277
7278 * ldgram.y: Include ldlex.h after %token decls, for byacc.
7279
7280Fri Feb 25 10:47:25 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
7281
7282 * emultempl/hppaelf.em: First attempt to clean this file up.
7283 Add comments in several functions as to their purpose and
7284 how they function (or my current best guess). Clean up horrible
7285 spacing and indention that never should have been accepted in the
7286 first place. Add FIXMEs for issues which need to be resolved.
7287 Disable linker-stub generation until it gets fixed. This allows
7288 the linker to at least work on simple code for testing purposes.
7289
7290 * ldlang.c (lang_size_sections): No longer static (PA ELF calls
7291 it via hppaelf_finish). Prototype moved into ldlang.h.
7292 (lang_process): Move problematic extra call to lang_size_sections
7293 into the PA ELF specific code.
7294 * emultempl/hppaelf.em (hppaelf_finish): Extra call to
7295 lang_size_sections moved here.
7296
7297Thu Feb 24 16:47:33 1994 Ian Lance Taylor (ian@cygnus.com)
7298
7299 * configure.in (powerpc-*-elf*): New target; use ppc-elf32.
7300 * config/ppc-elf32.mt: New file.
7301 * emulparams/elf32ppc.sh: New file.
7302 * emultempl/ppc.em: New file.
7303 * Makefile.in (ALL_EMULATIONS): Added em_elf32ppc.o.
7304 (em_elf32ppc.c): New target; uses elf32ppc.sh, ppc.em and elf.sc.
7305 (EMULATION_OFILES): Added dependencies on ldexp.h and ldlang.h.
7306
7307Thu Feb 24 12:27:07 1994 David J. Mackenzie (djm@rtl.cygnus.com)
7308
7309 * lexsup.c (parse_args): Use symbolic numbers for long options.
7310 Fix misunderstanding in -Y and -call_shared et al.
7311
7312 Use getopt instead of lex and yacc to parse the command line.
7313
7314 * ld.texinfo (Options): Document changes to option syntax.
7315 * Makefile.in: Update dependencies.
7316 * ldver.c (help): Tweak dashes in usage message.
7317 * ldgram.y (%union): Remove unused members.
7318 Remove %tokens for command line options; add ones for input types.
7319 (command_line): Rules removed.
7320 (file): Instead of command line, recognize an
7321 input type indicator, then use the nonterminal for that type.
7322 (defsym_expr): New nonterminal from code formerly in command_line.
7323 * ldlex.h: Declare parser input type enum and variable.
7324 Don't declare parse_line.
7325 * ldlex.l: Remove unused variables. Make some used ones static
7326 and comment them.
7327 (COMMAND): Start state and its rules removed.
7328 At start of yylex, return input state token if at start of input.
7329 (lex_redirect): Don't need to set yyout.
7330 (ldlex_command): Function removed.
7331 * ldmain.c (main): Instead of calling parse_line, set up the
7332 redirections and call yyparse directly.
7333 * ldmisc.c (vfinfo): If there's no input filename, print nothing, not
7334 "command line".
7335 * lexsup.c: Remove #if 0'd code.
7336 (parse_line): Function removed.
7337 (parse_args): Rewrite to use getopt_long_only.
7338 (set_default_dirlist): New function from code formerly in
7339 ldgram.y:command_line.
7340 (set_section_start): New function.
7341 * emultempl/generic.em, emultempl/gld960.em, emultempl/hppaelf.em,
7342 emultempl/lnk960.em, emultempl/m88kbcs.em: Don't enclose
7343 compiled-in link scripts in "{" and "}", as the grammar no longer
7344 wants them to be.
7345
7346Thu Feb 24 08:43:26 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
7347
7348 * Makefile.in (ld.dvi): Depend on configdoc.texi, but don't
7349 require that it be in $(srcdir).
7350
7351Tue Feb 22 09:21:18 1994 Ian Lance Taylor (ian@cygnus.com)
7352
7353 * ldlang.c (lang_size_sections): Only align section to alignment
7354 required by linker script, not to maximum alignment of input
7355 sections.
7356
7357 * ldlang.h (largest_section): Don't declare.
7358 * ldlang.c (largest_section): Don't define.
7359 (size_input_section): Don't set largest_section; not used.
7360
7361Mon Feb 21 15:15:29 1994 Ian Lance Taylor (ian@cygnus.com)
7362
7363 * ldlang.c (new_afile): Pass NULL as last argument to concat.
7364
7365Thu Feb 17 15:51:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7366
7367 * ldlang.c, ldmain.c: Include libiberty.h.
7368
7369 * ldmisc.h (concat): Don't declare.
7370 * ldmisc.c (concat): Don't define; just use the one in libiberty.
7371
7372 * ld.h (as_output_section_statement): Removed; not used.
7373
7374Thu Feb 17 09:32:14 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7375
7376 * ldlang.c, ldmain.c, ldmisc.c: Use bfd_get_error and
7377 bfd_set_error and new error names.
7378
7379Tue Feb 15 20:14:53 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
7380
7381 * ldwrite.c (build_link_order): If the cooked size of the section
7382 has been set, use it, for determining link_order size.
7383 (ldwrite): In the error message displayed if bfd_final_link fails,
7384 indicate that it was in fact the final link step that failed.
7385
7386 * ldlang.c (lang_size_sections): Clear bfd_error before calling
7387 bfd_relax_section, in case it returns false but doesn't flag an
7388 error. If an error is returned, indicate which one it is in the
7389 error message.
7390
7391 * Makefile.in (install-info): Depend on ld.info, and use "$<*" so
7392 it'll get picked up from $(srcdir) if appropriate.
7393
7394Tue Feb 15 16:32:04 1994 David J. Mackenzie (djm@rtl.cygnus.com)
7395
7396 * scripttempl/aout.sc: Only pad .text if PAD_TEXT is set.
7397 * emulparams/i386mach.sh (PAD_TEXT): Set PAD_TEXT.
7398
7399Fri Feb 11 17:02:49 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7400
7401 * ldlex.l (comment): Increment line number when newline is read.
7402
7403Fri Feb 11 17:36:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7404
7405 * ldlang.c (lookup_name): Take new argument, force_load. If true,
7406 reload the file even if it is already loaded.
7407 (wild): Call lookup_name with force_load argument of 0.
7408 (open_input_bfds): Call lookup_name with force_load argument of 1.
7409 (print_symbol): Remove declaration of non-existent function.
7410 (print_one_symbol): Return true rather than falling off end.
7411
7412Thu Feb 10 11:52:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7413
7414 * ldmain.c (main): Use %ld when printing long values.
7415
7416 * scripttempl/elf.sc: Move _edata after the .sdata section.
7417 Permit OTHER_BSS_SYMBOLS to be defined.
7418 * emulparams/elf32mipb.s (OTHER_BSS_SYMBOLS): Define _fbss.
7419
7420Mon Feb 7 16:31:15 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
7421
7422 * Rename all "hppaosf" files to "hppaelf".
7423 * Change all "osf" references to "elf" in hppaelf files.
7424 * Makefile.in: Likewise.
7425 * configure.in: Likewise.
7426
7427Sun Feb 6 20:31:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7428
7429 * ldmain.c (main): Call xatexit, not atexit.
7430 Call xmalloc_set_program_name.
7431
7432 * ldlang.c (lang_size_sections): Check if bfd_relax_section set
7433 bfd_errno.
7434
7435Sat Feb 5 03:54:34 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7436
7437 * emultempl/lnk960.em (append), emultempl/hppaosf.em
7438 (hppaosf_finish): Call xmalloc, not ldmalloc.
7439 * ldmain.c (preserve_output): Function removed.
7440 (main): Do it here instead.
7441
7442Fri Feb 4 23:02:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
7443
7444 * ldlang.h (LANG_FOR_EACH_{INPUT,OUTPUT}_SECTION): Delete (unused)
7445 GNU C specific macros.
7446
7447 * emultempl/hppaosf.em (hppaosf_finish): Expand the only remaining
7448 call to LANG_FOR_EACH_INPUT_SECTION.
7449
7450Fri Feb 4 16:26:08 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7451
7452 * ldmisc.c (ldmalloc, xmalloc, ldrealloc, xrealloc): Functions
7453 deleted; will use libiberty versions instead.
7454 * ldctor.c ldfile.c ldlang.c ldmain.c ldmisc.c ldmisc.h lexsup.c
7455 mri.c Makefile.in: Change callers.
7456
7457 * ldmisc.c (vfinfo): Remove cleanup code.
7458 * ldmain.c (remove_output): Put it here (new function).
7459 (preserve_output): New function.
7460 (main): Register remove_output and preserve_output with atexit.
7461 * ldmain.c ldgram.y: Call xexit instead of exit.
7462 * ldmisc.h: Declare xexit.
7463
7464Fri Feb 4 15:19:01 1994 Steve Chamberlain (sac@cygnus.com)
7465
7466 * Makefile.in: Lots of new H8/500 memory models.
7467
7468Sun Jan 30 14:33:40 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
7469
7470 * ldlex.l: Removed duplicate rules.
7471 (yywrap): Provide default definition, needed with some versions of
7472 flex.
7473
7474Fri Jan 28 09:12:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7475
7476 * ldmisc.c (vfinfo): For `%I', if the file is in an archive, print
7477 the archive filename too.
7478
7479 * ldlex.l: Add rule to catch invalid input characters instead of
7480 printing them. Include "ldmain.h" for program_name decl.
7481 (lex_warn_invalid): New function.
7482 * Makefile.in: Add dependency.
7483
7484Fri Jan 28 12:58:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
7485
7486 * Makefile.in (check): Don't bother running any tests of
7487 cross-linker until the test suite no longer assumes native mode.
7488
7489Thu Jan 27 17:19:54 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7490
7491 * ldlang.c (print_one_symbol, print_input_section): Print
7492 global symbols in symbol table again.
7493
7494Thu Jan 27 12:35:01 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7495
7496 * ldmain.c ldmain.h ldgram.y: If -v -V or --version was given,
7497 exit successfully instead of complaining if no input files are
7498 given.
7499
7500Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)
7501
7502 * Makefile.in: Format variable definitions consistently.
7503 (LD_PROG): Remove unnecessary variables from link command,
7504 change variable LOADLIBES to EXTRALIBS.
7505
7506 * ldmain.c (main): Compute and display total execution time.
7507 * ld.texinfo (-stats): Document the option.
7508
7509Mon Jan 24 12:56:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7510
7511 * ldmain.c (reloc_overflow): Added name, reloc_name and addend
7512 arguments.
7513
7514 * ldlang.c (lookup_name): Set BFD GP size to -G argument value
7515 after opening BFD.
7516
7517 * ldlang.c (relaxing): Removed global variable.
7518 (lang_size_sections): If the canonical symbols have not already
7519 been read in, read them in before relaxing.
7520 * ldlang.h (relaxing): Removed declaration.
7521
7522Fri Jan 21 00:44:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7523
7524 * ldlang.c (new_afile): Initialize loaded field to false.
7525 (lookup_name): If file was already loaded, don't call the
7526 add_symbols entry point again.
7527
7528Wed Jan 19 13:57:00 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7529
7530 * ld.texinfo: Clarify what -T option does.
7531
7532Tue Jan 18 16:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
7533
7534 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that's
7535 for a.out.
7536
7537Tue Jan 11 13:22:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7538
7539 * ldmain.c (add_archive_element): If trace_files or
7540 trace_file_tries, print file name.
7541 * ldlang.c (lookup_name): Likewise.
7542 (ldlang_add_file): Don't put files on input_bfds list in reverse
7543 order.
7544
7545 * scripttempl/elf.sc: Correct typo.
7546
7547Mon Jan 10 19:49:05 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7548
7549 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y and
7550 their arguments optional, for compatibility with the old GNU ld.
7551
7552Fri Jan 7 20:00:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7553
7554 * scripttempl/elf.c: Define __bss_start before the .sbss section.
7555
7556Thu Jan 6 00:13:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7557
7558 * ldmain.c (add_to_set): Add bitsize argument.
7559 (constructor_callback): New function.
7560 (link_callbacks): Add constructor_callback.
7561 * ldctor.c (struct set_info): Add bitsize field.
7562 (ldctor_add_set_entry): Add bitsize argument.
7563 (ldctor_build_sets): Base the size of the elements of the set on
7564 the bitsize, rather than always using LONG.
7565 * ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
7566
7567 * ld.h (QUAD_SIZE): Define.
7568 * ldgram.y (QUAD): New token.
7569 (length): Handle it.
7570 * ldlex.l: Return QUAD.
7571 * lexsup.c (keywords): Add QUAD.
7572 * ldwrite.c (build_link_order): Handle QUAD.
7573 * ldlang.c (print_data_statement): Handle QUAD.
7574 (lang_size_sections): Likewise.
7575 (lang_do_assignments): Likewise.
7576 * ldexp.c (exp_print_token): Add QUAD to table.
7577 * ld.texinfo: Describe QUAD.
7578
7579 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
7580 since the Alpha doesn't use them.
7581
7582Wed Jan 5 17:42:16 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7583
7584 * ldemul.h (ld_emulation_xfer_struct): Comment the members.
7585
7586Sat Jan 1 13:39:31 1994 Rob Savoye (rob@darkstar.cygnus.com)
7587
7588 * Makefile.in, configure.in: Add support for VSTa micro-kernel.
7589 * config/vsta.mt, emulparams/vsta.sh: New files for VSTa.
7590
7591Sat Jan 1 10:53:35 1994 David J. Mackenzie (djm@thepub.cygnus.com)
7592
7593 * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
7594 needed for i386mach. (Should be a no-op on other systems.)
7595
7596 * emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
7597 (PAGE_SIZE): Don't define; not used.
7598
7599Fri Dec 31 16:12:06 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7600
7601 * ldgram.y (yyerror): Make argument const char *, and actually
7602 print it out rather than assuming it is a syntax error.
7603 * ldmisc.h: Change declaration of yyerror.
7604 * ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
7605
7606Fri Dec 31 11:37:28 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7607
7608 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
7609 exec header offset, since the exec header isn't loaded.
7610 (PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
7611
7612Thu Dec 30 13:01:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7613
7614 A major rewrite to move the bulk of the linker into BFD so that
7615 more efficient backend code can be written for specific object
7616 files.
7617 * lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
7618 ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
7619 * ldctor.c, ldctor.h: Complete rewrite.
7620 * ldwrite.c, ldwrite.h: Complete rewrite.
7621 * ld.h (strip_symbols_type, strip_symbols): Removed. Use
7622 link_info.strip instead. Changed all uses.
7623 (discard_locals_type, discard_locals): Removed. Use
7624 link_info.discard instead. Changed all uses.
7625 (ld_config_type): Removed relocateable_output field; use
7626 link_info.relocateable instead; changed all uses. Added stats
7627 field.
7628 (set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
7629 set_loader_symbol): Removed.
7630 * ldexp.h (node_class): Added etree_rel.
7631 (etree_type): Added rel field.
7632 * ldexp.c (exp_print_token): Bracketed table initialization.
7633 (exp_relop): New function.
7634 (fold_name): Use linker hash table rather than ldsym functions.
7635 (exp_fold_tree): Likewise. Also, handle etree_rel case.
7636 (exp_print_tree): Handle etree_rel.
7637 * ldgram.y (strip_symbols, discard_locals): Removed.
7638 (OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them.
7639 (REL): New token. Does not appear in grammar, but needed for
7640 expression code.
7641 (file): Don't call lang_final; it's called by main anyhow.
7642 * ldlex.l: Accept -stats and -no-keep-memory options.
7643 * ldlang.h (fill_type): Make unsigned int, not unsigned short.
7644 * ldlang.c: Consistently use fill_type for fill argument.
7645 (lang_init_script_file, script_file): Removed.
7646 (create_object_symbols): Removed. Use
7647 link_info.create_object_symbols_section instead. Changed all
7648 uses.
7649 (lang_add_keepsyms_file): Removed.
7650 (lookup_name): Call bfd_link_add_symbols instead of
7651 ldmain_open_file_read_symbol.
7652 (wild): Don't iterate over script_file.
7653 (open_output): Create link hash table.
7654 (lang_place_undefineds): Rewrote.
7655 (lang_size_sections): Handle relaxing (doesn't work yet).
7656 (lang_relocate_globals): Removed.
7657 (lang_finish): Use link hash table rather than ldsym functions.
7658 (lang_common): Rewrote.
7659 (lang_one_common): New function.
7660 (ldlang_add_file): Add file to link_info.input_bfds list. Set
7661 usrdata.
7662 (create_symbol): Removed.
7663 (lang_process): Don't call lang_init_script_file. Call
7664 ldctor_build_sets rather than find_constructors. Don't call
7665 lang_relocate_globals.
7666 (lang_abs_symbol_at_beginning_of): Rewrote.
7667 (lang_abs_symbol_at_end_of): Rewrote.
7668 * ldmain.c (had_y): Removed.
7669 (lprefix, lprefix_len): Removed; use link_info fields instead.
7670 Changed all uses.
7671 (multiple_def_count, commons_pending, undefined_global_sym_count,
7672 total_symbols_seen, total_files_seen): Removed.
7673 (link_callbacks, link_info): New variables.
7674 (main): Initialize link_info. Don't call init_bfd_error_vector or
7675 ldsym_init. Don't set now unused variables. Handle -stats.
7676 (get_emulation): Removed obsolete and nonfunctional GNU960 code.
7677 (add_ysym): Rewrote.
7678 (read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
7679 search_library, gnu960_check_format, decode_library_subfile,
7680 linear_library, symdef_library, clear_syms, subfile_wanted_p):
7681 Removed.
7682 (add_keepsyms_file, add_archive_element, multiple_definition,
7683 multiple_common, add_to_set, warning_callback, undefined_symbol,
7684 reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
7685 New functions.
7686 * ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't
7687 require symbols for %C; look them up instead.
7688 * emultempl/hppaosf.em: Pass link_info to
7689 hppa_look_for_stubs_in_section.
7690 * Makefile.in: Rebuilt dependencies.
7691 (CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
7692 relax.c.
7693 (HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
7694 relax.h.
7695 (EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
7696 ldlang.h and ldctor.h.
7697
7698 * Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove
7699 declarations of free and malloc from flex output. Change malloc
7700 to ldmalloc in flex output.
7701
7702Thu Dec 16 21:19:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7703
7704 * ldmain.c (lprefix): Change default from a char to a string
7705 with only one character.
7706 (lprefix_len): Set default to one.
7707
7708 * ldmain.h (lprefix_len): Declare.
7709
7710 * ldsym.c (write_file_locals): Use strncmp rather than a character
7711 comparison for lprefix.
7712
7713 * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len
7714 correctly.
7715
7716 * emultmpl/hppaosf.em: Include ldexp.h.
7717 (before_parse): Set lprefix and lprefix_len correctly.
7718
7719Tue Dec 14 17:19:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7720
7721 * ldlex.h: Don't declare yywrap if it is a macro.
7722 * ldlex.l: Include sysdep.h.
7723 * ldlang.c (lang_for_each_statement_worker,
7724 lang_for_each_statement): Forgot to use PARAMS.
7725
7726Mon Dec 13 14:30:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7727
7728 * Makefile.in: Added .PHONY targets where appropriate. Added some
7729 comments. Also:
7730 (gcclibdir, version): Removed unused variables.
7731 (DEP): New variable, set to mkdep.
7732 (ALL_CFLAGS): New variable. Used in .c.o target.
7733 (CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New
7734 variables.
7735 (HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES,
7736 GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed
7737 mostly obsolete variables. Adjusted remaining uses.
7738 (DEF_EMUL): Removed variable.
7739 (ldmain.o): Handle undefined EMUL error correctly.
7740 (ldemul-list.h): Depend on config.status rather than Makefile.
7741 Create via temporary file.
7742 (ver960.c, roll, make): Removed obsolete targets.
7743 (.dep, .dep1, dep.sed, dep, dep-in): New targets. Used to rebuild
7744 dependencies.
7745 * dep-in.sed: New file, used when rebuilding dependencies.
7746
7747Sat Dec 11 14:43:44 1993 Ian Lance Taylor (ian@deneb.cygnus.com)
7748
7749 Made many changes to eliminate gcc warnings. Made various
7750 cosmetic changes, declared various things in header files, removed
7751 various extern declarations from .c files. No substantive
7752 changes.
7753
7754 * ldlang.c (lang_process): Ifdef out final call to
7755 lang_size_sections again (reverting change of Nove 2), since it
7756 breaks the Sun4 linker.
7757
7758Thu Dec 2 16:31:47 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7759
7760 * configure.in (alpha-*-netware*): New target; use alpha.
7761
7762Wed Dec 1 14:04:20 1993 Ken Raeburn (raeburn@cygnus.com)
7763
7764 * configure.in: Group targets by CPU. Merge some m68k target
7765 entries with different CPU specs that use the same ld_target
7766 values.
7767
7768 * configure.in: Add sparc*-*-coff.
7769 * config/coff-sparc.mt, emulparams/coff_sparc.sh: New files.
7770 * Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o.
7771 (em_coff_sparc.c): Add dependencies and build rules.
7772
7773 * ldmisc.c (errno, sys_nerr, sys_errlist): Don't declare.
7774
7775Wed Dec 1 12:19:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7776
7777 * ldgram.y (OPTION_call_shared, OPTION_non_shared, OPTION_Oval):
7778 New tokens.
7779 (command_line_option): Accept and ignore them (for now).
7780 * ldlex.l (<COMMAND>): Handle -non_shared, -call_shared, and -On
7781 where n is a number.
7782
7783Mon Nov 22 14:14:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7784
7785 * ldmain.c (subfile_wanted_p): If merging a common symbol which is
7786 not in bfd_com_section, create the section in the BFD so that it
7787 can be placed in the right output section.
7788
7789Fri Nov 19 14:12:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7790
7791 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.
7792 * emulparams/elf32mipsb.sh (DATA_ADDR): Define.
7793 (OTHER_READONLY_SECTIONS): Define for .reginfo.
7794 (EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK.
7795 * scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating.
7796 Move OTHER_READONLY_SECTIONS after all the other readonly
7797 sections. Don't use DATA_ADDR twice.
7798
7799 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. If
7800 p is in a common section, make sure the BFD has a section of that
7801 name.
7802
7803 * ldlang.c (lang_common): Add newline to error message.
7804
7805Thu Nov 11 15:54:41 1993 Stan Shebs (shebs@rtl.cygnus.com)
7806
7807 * emulparams/m68klynx.sh (SCRIPT_NAME): Define to use a
7808 Lynx-specific script instead of m68kcoff.
7809 (OUTPUT_FORMAT): Define as "coff-m68k-lynx".
7810 (ENTRY): Define as __main.
7811 (TEXT_START_ADDR): Define as 0.
7812 (PAGE_SIZE): Define as 0x1000.
7813 * emulparams/i386lynx.sh, emulparams/sparclynx.sh: Fix comment.
7814 * scripttempl/m68klynx.sc: New file.
7815
7816Mon Nov 8 12:00:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7817
7818 * ldmain.c (get_emulation): Ignore -mips1, -mips2 and -mips3
7819 arguments rather than treating them as emulation names.
7820
7821Fri Nov 5 09:02:52 1993 D. V. Henkel-Wallace (gumby@blues.cygnus.com)
7822
7823 * configure.in: Support x86 unixware and netware plus generic netware.
7824
7825Fri Nov 5 21:47:55 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7826
7827 * emulparams/i386mach.sh (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR):
7828 Correct values (?).
7829
7830Wed Nov 3 15:10:15 1993 Ken Raeburn (raeburn@rover.cygnus.com)
7831
7832 * Makefile.in (distclean): Don't delete dvi or info files.
7833 (ld.info): Update dependency list.
7834 (ld.dvi): Ditto. Extend TEXINPUTS to get bfdsumm.texi.
7835
7836Wed Nov 3 12:07:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7837
7838 * ldlang.c (lang_add_output): Take new arg, FROM_SCRIPT.
7839 Set output_filename instead of creating a new node.
7840 (open_output): Don't set output_filename.
7841 (lang_final): Create the new node here.
7842 * ldlang.c, ldlang.h, ldgram.y, mri.c: pass FROM_SCRIPT.
7843
7844Tue Nov 2 15:45:51 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
7845
7846 From Pete Hoogenboom (hoogen@cs.utah.edu):
7847
7848 * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,
7849 edata, _edata, end): Add definitions of these symbols.
7850 (__end): Remove definition of this symbol.
7851 (__data_start): Move definition of this symbol.
7852
7853 * emultempl/hppaosf.em: Various fixes and support for linker stub
7854 generation.
7855 (hppaosf_finish, hppaosf_search_for_padding_statements,
7856 hppaosf_create_output_section_statements): New functions in
7857 support of linker stub generation.
7858 (ld_hppaosf_emulation): Redefine to include new
7859 emulation-specific routines.
7860
7861 * ldlang.c (lang_process): Re-enable last call lang_size_sections.
7862 Pass abs_output_section rather than NULL to avoid invalidating
7863 absolute symbols.
7864
7865Thu Oct 28 21:16:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
7866
7867 * Makefile.in (ALL_EMULATIONS): Add em_i386mach.o.
7868 (em_i386mach.c): New rule.
7869 * configure.in (i[34]86-*-mach*): New case.
7870 * config/i386-mach.mt: New file.
7871 * emulparams/i386mach.sh: New file.
7872
7873Fri Oct 29 14:55:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7874
7875 * ld.h (flag_is_*): Removed macros.
7876 * ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
7877 Consistently check the BFD symbol flags directly, rather than
7878 using file_is_* macros.
7879
7880Thu Oct 28 19:08:42 1993 Stan Shebs (shebs@rtl.cygnus.com)
7881
7882 * configure.in (sparc*-*-lynxos*): New target.
7883 * Makefile.in: Add rule for em_sparclynx.c.
7884 (ALL_EMULATIONS): Add Lynx emulations.
7885 * config/sparc-lynx.mt: New file.
7886 * emulparams/sparclynx.sh: New file.
7887 * scripttempl/sparccoff.sc: New file.
7888
7889Thu Oct 28 13:50:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7890
7891 * Makefile.in: Add dependency for $(EMULATION_OFILES).
7892
7893Mon Oct 25 16:09:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7894
7895 * relax.c (write_relax): Check return value of bfd_seclet_link.
7896
7897Mon Oct 25 09:31:21 1993 Ken Raeburn (raeburn@cygnus.com)
7898
7899 * ldlang.c (delete_output_file_on_failure): New variable.
7900 (open_output): Set it after bfd open succeeds.
7901 * ldmisc.c (vfinfo): Test it.
7902
7903 Changes from Peter Hoogenboom, hoogen@cs.utah.edu:
7904
7905 * ldsym.c (write_file_locals): Set the BSF_FILE flag for object
7906 symbols.
7907
7908 * ldemul.c: Support was added to allow emulation-specific
7909 processing to occur. This support was added primarily for linker
7910 stub generation in the elf32-hppa gld.
7911 (ldemul_finish, ldemul_create_output_section_statements): New
7912 functions.
7913 * ldemul.h: Support was added to allow emulation-specific
7914 processing to occur. (As described above.) Added finish and
7915 create_output_section_statements fields to
7916 ld_emulation_xfer_struct structure.
7917 * ldlang.c: Add calls to emulation-specific routines.
7918 (lang_process): Add call to
7919 ldemul_create_output_section_statements function.
7920 (lang_process): Add call to a emulation-specific routine (and
7921 some processing after the call).
7922
7923Fri Oct 22 20:54:13 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
7924
7925 * configure.in: mips*- instead of mips-, mips*el changes
7926
7927Tue Oct 19 15:46:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7928
7929 * configure.in (alpha-*-osf*): New target; use alpha.mt.
7930 * Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
7931 (em_alpha.c): New target; use alpha.sh and alpha.sc.
7932 * config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
7933 * config/alpha.mt: New file.
7934 * emulparams/alpha.sh: New file.
7935 * scripttempl/alpha.sc: New file.
7936
7937Fri Oct 15 02:20:04 1993 Doug Evans (dje@canuck.cygnus.com)
7938
7939 * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
7940 types of different sizes (eg: 64 and 32 bits), so coerce.
7941 * ld.h (ALIGN_N): Add warning about usage.
7942
7943Wed Oct 13 16:02:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7944
7945 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
7946 which we already have a definition, rather than checking in
7947 several different places whether the symbol is weak.
7948
7949Tue Oct 12 17:30:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7950
7951 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
7952 * scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
7953 OTHER_READWRITE_SECTIONS if relocating. Shell variables are not
7954 expanded within them.
7955 * config/mipsb-elf32.mt: New file.
7956 * emulparams/elf32mipb.sh: New file.
7957 * Makefile.in (em_elf32mipb.c): New target.
7958
7959Thu Sep 30 17:00:36 1993 Rob Savoye (rob@darkstar.cygnus.com)
7960
7961 * ldgram.y: In input_list, change lang_input_file_is_file_enum to
7962 lang_input_file_is_search_file_enum so objects brought in using
7963 INPUT() do a path lookup.
7964
7965Tue Sep 28 13:31:23 1993 Stan Shebs (shebs@rtl.cygnus.com)
7966
7967 * configure.in: Change Lynx ld_target to be {i386,m68k}-lynx
7968 instead of {i386,m68k}-coff.
7969 * Makefile.in (em_i386lynx.c, em_m68klynx.c): New targets.
7970 * config/i386-lynx.mt: New file.
7971 * config/m68k-lynx.mt: New file.
7972 * emulparams/i386lynx.sh: New file.
7973 * emulparams/m68klynx.sh: New file.
7974
7975 * scripttempl/i386coff.sc: Make ENTRY get its value from ${ENTRY},
7976 but defaulting to _start.
7977
7978 * ldemul.c, ldfile.c, ldlang.c, ldmain.c, ldmisc.c, ldmisc.h,
7979 ldsym.c, ldwarn.c: Rename info to info_msg, to avoid conflict with
7980 LynxOS libc.
7981
7982Thu Sep 23 14:51:03 1993 Ian Lance Taylor (ian@cygnus.com)
7983
7984 * config/solaris2.mh: New file. Define HOSTING_CRT0 and
7985 HOSTING_LIBS for testing.
7986
7987Fri Sep 17 17:52:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
7988
7989 Finish up support for i386-sysv4 (without shared libraries):
7990 * ld.h (flag_is_weak): Define.
7991 * ldlang.c (print_symbol): Mention whether symbol is weak.
7992 (print_input_section): Print weak symbols as globals.
7993 * ldmain.c (refize): Do not zero out BSF_WEAK flag.
7994 (enter_global_ref): Do not warn if a weak symbol redefines a
7995 global symbol. Do not let a weak symbol redefine a common symbol.
7996 (enter_file_symbols): Treat weak symbols as global symbols.
7997 (subfile_wanted_p): Do not pull in an object file from a archive
7998 just to resolve an undefined weak symbol.
7999 * ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
8000 error; the error might be that malloc has run out of space.
8001 * ldsym.c (write_file_locals): Treat weak symbols as global.
8002 * configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
8003 use i386-elf.
8004 * config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
8005 * config/i386-elf.mt: New file; set EMUL to elf_i386.
8006 * emulparams/elf_i386.sh: New file.
8007 * scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
8008 * Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
8009 (ALL_EMULATIONS): Add em_elf_i386.o.
8010 (GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
8011 (em_elf_i386.c): New target, like other em_*.c targets.
8012 ($(LD_PROG)): Pass $(CFLAGS) to $(CC).
8013 * genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument. If
8014 nonempty, and configured for native, add it to LIB_PATH.
8015
8016Fri Sep 17 13:07:39 1993 Stan Shebs (shebs@rtl.cygnus.com)
8017
8018 * scripttempl/{h8300.sc,h8500.sc,i386coff.sc,m68kcoff.sc,sh.sc}:
8019 Added statements to pass stab and stabstr sections through and
8020 mark them as NOLOAD, which makes GDB happier.
8021
8022Wed Sep 15 16:02:29 1993 Stan Shebs (shebs@rtl.cygnus.com)
8023
8024 * configure.in: Accept m68k-lynx-lynxos config.
8025
8026 * Makefile.in: Use $(SHELL) to run genscripts.sh.
8027
8028Sun Sep 12 16:04:40 1993 Doug Evans (dje@cygnus.com)
8029
8030 * config/coff-h8300.mt: Add EMUL=h8300h.
8031
8032 * ldmain.c (main): Call set_scripts_dir after argv has been processed.
8033
8034Fri Sep 10 09:36:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
8035
8036 * Makefile.in: Changed CXX back to g++.
8037
8038Fri Sep 10 09:34:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
8039
8040 * Makefile.in: Fixed RUNTEST* CXX CXXFLAGS macros and check rule.
8041
8042Fri Sep 10 07:26:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8043
8044 * Makefile.in (TAGS): Use shell wildcards.
8045
8046Tue Sep 7 18:04:54 1993 Jeffrey Osier (jeffrey@cygnus.com)
8047
8048 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target
8049
8050Fri Sep 3 16:46:41 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
8051
8052 * ld.texinfo: re-enable included config file; conditionalize doc
8053 for -oformat to interact properly with SingleFormat doc config
8054 var; rename @up/@down to @raisesections/@lowersections.
8055
8056Wed Aug 25 16:29:56 1993 K. Richard Pixley (rich@sendai.cygnus.com)
8057
8058 * configure.in: recognize m88110.
8059
8060Tue Aug 24 18:49:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8061
8062 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
8063 * emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
8064 ELF emulation is "elf32-hppa" not "elf-big".
8065 (hppaosf_before_parse): Remove unneeded processing of environment
8066 variables.
8067 * scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
8068 .text segment of output file.
8069 * emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
8070
8071Tue Aug 24 16:17:00 1993 K. Richard Pixley (rich@sendai.cygnus.com)
8072
8073 * ld.h: define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no
8074 longer in bfd.h.
8075
8076 * ldlang.c, ld.h: updated copyright.
8077
8078Tue Aug 17 15:22:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8079
8080 * ldlang.c (open_output, lang_check): Check return value of
8081 bfd_set_arch_mach.
8082
8083Tue Aug 17 07:02:19 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
8084
8085 * scripttempl/h8500.sc: Start all sections in a different segment.
8086 * scripttempl/z8ksim.sc: Handle constructors
8087
8088Thu Aug 12 16:05:37 1993 Jeffrey Wheat (cassidy@cygnus.com)
8089
8090 * Makefile.in: revert earlier changes back to execute runtest
8091 with make check. cdtest and bootstrap now function as they
8092 did within the Makefile.
8093
8094Thu Aug 12 10:20:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8095
8096 * Makefile.in: Update dependencies.
8097
8098 * configure.in: Set EMULATION_OFILES in Makefile based on
8099 --with-targets option.
8100
8101Thu Aug 12 08:52:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
8102
8103 * Makefile.in: check targets reimplemented to old way.
8104
8105Wed Aug 11 08:26:11 1993 Ian Lance Taylor (ian@cygnus.com)
8106
8107 * config/i386v.mh, config/irix4.mh: Use gcc
8108 -print-libgcc-file-name rather than $(libdir)/libgcc.a.
8109 * config/i386sco.mh: New file; copy of i386v.mh to correspond to
8110 bfd/configure.host change.
8111
8112Mon Aug 9 14:25:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8113
8114 * scripttempl/elf.sc: Handle .line and .debug* sections.
8115
8116 * ldlex.l: Use bfd_scan_vma, not strtoul.
8117
8118Fri Aug 6 08:57:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8119
8120 * ldexp.c, ldfile.c, ldlang.c, lexsup.c, ldmain.c, ldemul.c:
8121 Remove inital caps in some error messages, change "can't" to
8122 "cannot", add missing colons.
8123 * ldmisc.c (vfinfo): Print "%%" as a single %.
8124 For '%' followed by unrecognized character, print them both
8125 verbatim instead of expecting a char * arg.
8126 For '%C', don't put the function name in parens.
8127
8128 * ldexp.c (invalid): Pass "%%", not "% ".
8129
8130Fri Aug 6 14:31:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8131
8132 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
8133 (BSS_VAR): Removed; now always define _fbss.
8134 * emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
8135 Removed.
8136
8137Thu Aug 5 15:55:19 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
8138
8139 * configure.in: z8k-coff is the same as z8k-sim
8140
8141Wed Aug 4 21:00:18 1993 Jeffrey Wheat (cassidy@cygnus.com)
8142
8143 * testsuite/lib/ld.exp: new file
8144 * testsuite/config/unix-ld.exp: new file
8145 * testsuite/ld.bootstrap/bootstrap.exp: new file
8146 * Makefile.in: add dejagnu support for make check
8147
8148Wed Aug 4 17:52:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8149
8150 * ldlex.l (comment): Add missing newline in message.
8151 * ldindr.c (add_indirect): Ditto.
8152 * ldexp.c (exp_fold_tree): Ditto.
8153
8154Tue Aug 3 10:57:41 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8155
8156 * ldgram.y, ldlex.l, mri.c, ldwrite.c: Change multiple commons
8157 into externs.
8158
8159 * ldmisc.c (multiple_warn): New function.
8160 * ldmisc.h: Declare it.
8161 * ldmain.c (enter_global_ref): Call it.
8162 * ld.h (ld_config_type): Add warn_common.
8163 * ldlex.l, ldgram.y: Set it with -warn-common option.
8164 * ldver.c (help): Document it.
8165
8166Mon Aug 2 12:04:36 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8167
8168 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
8169 target-specific sections, and for changing data section vma.
8170
8171Mon Jul 26 14:00:02 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
8172
8173 * ldgram.y (OPTION_Qy, OPTION_Y, OPTION_dn, OPTION_YP): New
8174 terminals, for Solaris.
8175 (dirlist_ptr): New static variable.
8176 (command_line_option): Accept new options.
8177
8178 * ldlex.l: Accept command-line options "-Qy", "-dn", "-Y", and
8179 "-YP,...".
8180
8181 * config/sun4sol2.mt: Pass emulation name without ".sh".
8182
8183 * emulparams/elf32_sparc.c: Renamed from elf32-sparc.c.
8184 * config/sun4sol2.mt (em_elf32_sparc.c): Adjusted accordingly.
8185
8186Fri Jul 23 13:51:09 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8187
8188 * scripttempl/elf.sc: Add support for .init, .fini, .ctors,
8189 .dtors, .data1, .rodata1 sections, instead of combining them into
8190 other sections. For `-r', set all section start addresses to
8191 zero.
8192
8193 * emulparams/elf32-sparc.sh (TEXT_START_ADDR,
8194 NONPAGED_TEXT_START_ADDR): Value should be 0x10100.
8195 (MAXPAGESIZE): Renamed from PAGE_SIZE.
8196
8197Wed Jul 21 14:28:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8198
8199 * genscripts.sh: If this is the default emulation, set
8200 COMPILE_IN.
8201 * emultempl/*.em: Use it to determine whether to compile in the
8202 scripts.
8203
8204 * Makefile.in (GENSCRIPTS): Pass the default emulation name to
8205 genscripts.sh. Pass the current emulation name without ".sh" on
8206 the end.
8207 * genscripts.sh: Take an default emulation arg.
8208 Use the current emulation name as EMULATION_NAME.
8209 Make default lib path for cross-compiling ':', not null.
8210 * emulparams/*.sh: Don't set EMULATION_NAME.
8211 * ldemul.c (ldemul_get_script): Take isfile arg.
8212 Pass it to emulation's get_script function.
8213 * ldemul.h: Adjust get_script prototypes.
8214 * ldfile.c (ldfile_find_command_file): Renamed from find_a_name.
8215 No longer static.
8216 * ldfile.h: Declare it.
8217 * ldgram.y: Accept a script on the command line again,
8218 for parsing compiled-in scripts.
8219 * ldmain.c (main): If ld script is a file, parse it as a -T
8220 option, otherwise parse it directly.
8221 * emultempl/*.em (*get_script): Return the scripts themselves if
8222 this is the default emulation; otherwise return their file names.
8223 * emultempl/m88kbcs.em: New file, to take m88kbcs #ifdef out of
8224 generic.em.
8225 * emulparams/m88kbcs.sh: Use it.
8226
8227 * ld.h (ld_config_type::unix_relocate): Remove unused element.
8228
8229Tue Jul 20 12:01:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8230
8231 * Makefile.in (ALL_EMULATIONS): Delete em_i386linux.o (for which
8232 there's no change log entry yet, tsk tsk) from the list of
8233 emulations compiled in until Mark gets around to checking in
8234 emulparams/i386linux.sh.
8235 (ldemul-list.h): Depend on Makefile, so if EMULATION_OFILES is
8236 changed, this file gets updated.
8237
8238Fri Jul 16 14:14:32 1993 Ian Lance Taylor (ian@cygnus.com)
8239
8240 * ldgram.y (OPTION_Lfile): New token.
8241 (command_line_option): Accept OPTION_L NAME (whitespace after -L).
8242 * ldlex.l (<COMMAND>): Accept -L without FILENAME.
8243
8244Fri Jul 16 13:44:26 1993 Doug Evans (dje@canuck.cygnus.com)
8245
8246 * configure.in: h8/300h support needs own .mt file.
8247 config/coff-h8300h.mt: New file.
8248
8249Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8250
8251 * ldmain.c: Don't include sys/stat.h; it already got included
8252 somewhere along the way.
8253
8254Thu Jul 15 14:43:34 1993 Doug Evans (dje@canuck.cygnus.com)
8255
8256 * Makefile.in: Add h8300h support.
8257 emulparams/h8300h.sh: New file.
8258 scripttempl/h8300h.sc: New file.
8259
8260Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8261
8262 * ldfile.c (ldfile_open_file): In error message, use the name the
8263 user gave (e.g., "-lc"), rather than the base file name.
8264
8265 * ldexp.c (exp_fold_tree): Don't assign an int to an enum.
8266
8267 * ldmain.[ch]: Remove initial Q_ from function names.
8268 * ldexp.c, ldindr.c, ldlang.c: Change callers.
8269
8270 * ldfile.c, ldmain.c, ldgram.y: Rename option_v to trace_file_tries.
8271
8272 * ldlang.c (lang_process): Move loading of default script from
8273 here to main. Add a "/" to start of script name to prevent
8274 finding it in "." first.
8275
8276 * ldmain.c (set_scripts_dir): Don't look in "." first.
8277
8278 * ldgram.y, ldlang.c, ldsym.c: Remove traces of unused var
8279 option_longmap.
8280
8281Thu Jul 15 10:55:59 1993 Ian Lance Taylor (ian@cygnus.com)
8282
8283 * Makefile.in (em_m88kbcs.c): Correct dependency.
8284 * scripttempl/m88kbcs.sc: It's ARCH, not arch. Removed TARGET
8285 statement. Changed OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
8286 * emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
8287
8288Wed Jul 14 21:42:53 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8289
8290 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
8291 main.c (main): Print the errno string in the error message.
8292
8293Tue Jul 13 20:00:30 1993 Doug Evans (dje@canuck.cygnus.com)
8294
8295 * configure.in: Accept h8300h for target cpu.
8296
8297 * ldmisc.c (vfinfo): Have demangle remove leading underscore if
8298 present (demangle is smart enough to know whether to do it or not).
8299
8300Mon Jul 12 11:45:48 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8301
8302 * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
8303 ldscripts, as well as <ld bin dir> and SCRIPTDIR.
8304
8305 * ldlang.c (lang_process): Use sizeof instead of magic constant.
8306
8307 * ldmain.c (get_emulation, check_for_scripts_dir,
8308 set_scripts_dir): New functions.
8309 (main): Call them.
8310
8311Mon Jul 12 10:57:03 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
8312
8313 * scripttempl/elf.sc: Include .init, .fini, .rodata sections.
8314 Create symbol "end" instead of "__end". Comment out some parts
8315 that may not be needed (yet) for elf.
8316
8317 * configure.in: Accept sparc-elf and sparc-solaris2 configs.
8318
8319Thu Jul 8 15:33:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8320
8321 * Makefile.in (ALL_EMULATIONS): Include $(OTHER_EMULATIONS).
8322
8323 * ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro
8324 when no prototype is being supplied.
8325 (ldmalloc, ldrealloc): Size argument is now size_t.
8326
8327 * ldmisc.c (finfo): New function, accepts FILE* argument.
8328 (vfinfo, case 'v'): New format character; displays bfd_vma in hex
8329 without leading zeros.
8330 (vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a
8331 bfd_vma value, instead of fprintf(%x) which won't hold a long long
8332 value.
8333 (concat, buystring): String lengths are size_t.
8334 (ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
8335
8336 * ldlang.c (new_statement): Size argument is now size_t. Added
8337 forward declaration with prototype.
8338
8339Thu Jul 8 10:53:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8340
8341 * ldgram.y (OPTION_v): Don't turn on verbose output.
8342
8343Wed Jul 7 17:10:45 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8344
8345 * ldlex.l: Get rid of local typedef for bfd_vma! Get it from
8346 bfd.h instead.
8347
8348Wed Jul 7 11:33:12 1993 Ian Lance Taylor (ian@cygnus.com)
8349
8350 * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
8351 collect2 doesn't look for gld any more anyhow.
8352
8353Mon Jul 5 14:29:48 1993 Ian Lance Taylor (ian@cygnus.com)
8354
8355 * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
8356 now have a non NULL srefs_chain.
8357
8358 * config/hp300hpux.mt: Use emulation hp3hpux rather than
8359 hp300hpux, since the latter does not exist.
8360
8361Fri Jul 2 18:06:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8362
8363 * genscripts.sh: Put the scripts in the ldscripts directory, not
8364 emulations.
8365 * configure.in (ldscripts): Make, instead of emulations.
8366 * Makefile.in (scriptdir): Take off the "ld" part.
8367 (install, clean, distclean): Use ldscripts, not emulations.
8368 In tests, don't pass -Lemulations.
8369 Don't pass tooldir/lib to genscripts.sh.
8370 * genscripts.sh: Don't take tooldir/lib arg.
8371 * ldlang.c (lang_process): Add "ldscripts/" to the name of the
8372 default script file.
8373
8374Fri Jul 2 17:13:35 1993 Doug Evans (dje@canuck.cygnus.com)
8375
8376 * scripttempl/h8300.sc: Add .tors section for constructor/destructors.
8377
8378Thu Jul 1 16:38:45 1993 Doug Evans (dje@canuck.cygnus.com)
8379
8380 * config/coff-h8300.mt: EMUL=h8300hms -> h8300.
8381
8382Wed Jun 30 15:45:55 1993 K. Richard Pixley (rich@sendai.cygnus.com)
8383
8384 * Makefile.in (.y.c): skip default .y.c rules. gnu make can now
8385 run in parallel without colliding on yacc's static file names.
8386 Without the stub rule, make will try to start two yacc's
8387 concurrently which fails because of yacc's static file names.
8388
8389Tue Jun 29 12:20:36 1993 Ian Lance Taylor (ian@cygnus.com)
8390
8391 * ldmain.c (subfile_wanted_p): Don't dump core if there are no
8392 symbols.
8393
8394Mon Jun 28 12:22:11 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8395
8396 * genscripts.sh (LIB_PATH): Only add /usr/local/lib if it's
8397 different from libdir.
8398
8399 * Makefile.in (scriptdir): Base on tooldir, not datadir.
8400
8401Sat Jun 26 12:03:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8402
8403 * ldver.c (help): New function.
8404 * ldver.h: Declare it.
8405 * ldlex.l, ldgram.y: Recognize new options --help and --version.
8406
8407Mon Jun 21 20:39:48 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
8408
8409 * Makefile.in (INCLUDES): Don't need ../include any more.
8410
8411Mon Jun 21 16:38:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8412
8413 * ldlex.l, ldgram.y: Support new -oformat option.
8414 Remove attempt at supporting script fragments on the command line.
8415 * ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
8416 * mri.c (mri_format), ldgram.y: Change callers.
8417 * ldlang.h: Change prototype.
8418
8419Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
8420
8421 * Makefile.in: canonicalize install.sh; for use within
8422 this directory (and subdirs)
8423
8424Thu Jun 17 14:33:09 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8425
8426 * ldgram.y: Tweak grammar to make reporting of invalid options work.
8427
8428 * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
8429 and .cc.o rule.
8430
8431Wed Jun 16 11:45:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8432
8433 * ldfile.c (ldfile_open_command): Don't try .ld extension.
8434 It wasn't documented (or likely used) and wastes time.
8435 (try_open): If EXTEN is empty, don't try it.
8436
8437 * ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
8438 ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
8439 ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
8440 with normal function declarations.
8441
8442 * Move *.em to emultempl/*.em. Move *.sh to emulparams/*.sh.
8443 Move *.sc-sh to scripttempl/*.sc.
8444 * {emultempl,emulparams,scripttempl}/README: New files.
8445 * sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
8446 removed, replaced with generic.em.
8447 * h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
8448 h8[35]00hms.s[ch]. Change their contents to omit the "hms".
8449
8450 * *.em (*_get_script): Return script name instead of script contents.
8451 * ldlang.c (lang_process): Change caller.
8452
8453 * ldlex.l, ldgram.y: Recognize -m option.
8454 Check for input files after *all* options in grammar.
8455 * ldmain.c (main): Check for -m options. Add default directory
8456 for -m.
8457
8458 * mkscript.c: File removed.
8459 * genscripts.sh: Take two more parameters, tooldirlib and libdir,
8460 to add to the default LIB_PATH.
8461 Look for input files in the new subdirectories.
8462 Create the scripts in emulations subdirectory and don't filter
8463 them through mkscript.
8464 * configure.in: Make the emulations subdirectory.
8465
8466 * Makefile.in: Account for all of the above changes.
8467 Remove unused .SUFFIXES. Get libgcc.a path with gcc
8468 -print-libgcc-file-name instead of $(libdir)/libgcc.a.
8469 Put CFLAGS last in the compilation rules.
8470 Add -I../bfd to INCLUDES so sysdep.h is found.
8471
8472Tue Jun 15 23:04:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8473
8474 * Makefile.in (INCLUDES): Look in ../include, not ../bfd.
8475
8476 * aout.sc-sh: Add SHLIB_PATH like STACKZERO. Make STACKZERO
8477 dependent on RELOCATING, not RELOCATION.
8478 * hp3hpux.sh (SHLIB_PATH): Define it.
8479
8480Mon Jun 14 19:06:15 1993 David J. Mackenzie (djm@thepub.cygnus.com)
8481
8482 * ldfile.c (try_open): If opening without the extension fails,
8483 try with the extension even if -v or -V was given.
8484 had_script is imported (from ldgram.y), not exported.
8485
8486Mon Jun 14 16:26:10 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
8487
8488 * Makefile.in: remove parentdir support, use INSTALL_XFORM
8489
8490Thu Jun 10 14:00:06 1993 Ian Lance Taylor (ian@cygnus.com)
8491
8492 * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
8493 * ldgram.y (statement_list_opt): New nonterminal, either empty or
8494 statement_list.
8495 (section): Use statement_list_opt, not statement_list.
8496 * m68kcoff.sc-sh: Gather constructors and destructors and define
8497 __CTOR_LIST__ and __DTOR_LIST__ appropriately.
8498 * sa29200.sc-sh: Gather constructors and destructors and define
8499 ___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
8500
8501Mon Jun 7 12:53:28 1993 Per Bothner (bothner@rtl.cygnus.com)
8502
8503 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
8504 * configure.in: No longer need to configure to get sysdep.h.
8505
8506Fri Jun 4 16:18:24 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8507
8508 * Makefile.in: remove install:all and install-info:info
8509 dependencies (these cause some spurious rebuilds at 'make install'
8510 time)
8511
8512Fri Jun 4 08:50:14 1993 Ian Lance Taylor (ian@cygnus.com)
8513
8514 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
8515 (mips-idt-ecoff*): Added trailing '*'.
8516 * config/mips-idtl.mt: New file; use EMUL of mipsidtl.
8517 * mipsidtl.sh: New file; like mipsidt.sh, but little endian.
8518 * Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
8519
8520 * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
8521 incorrect definitions.
8522
8523Tue Jun 1 14:56:10 1993 Per Bothner (bothner@rtl.cygnus.com)
8524
8525 * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR
8526 symbols, unless stripping.
8527
8528Tue May 25 15:34:25 1993 Ian Lance Taylor (ian@cygnus.com)
8529
8530 * Makefile.in: configure looks for ####, so remove lines with many
8531 '#' characters.
8532 * config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
8533 and HOSTING_LIBS correctly so that ``make check'' will work.
8534
8535Thu May 20 13:56:16 1993 Per Bothner (bothner@deneb.cygnus.com)
8536
8537 * mips.sc-sh: Define _etext, _edata, and _end, in addition
8538 to etext, edata, and end. Needed for IRIX 4.0.5F.
8539 Patch from mwp@iconix.oz.au (Michael Paddon).
8540
8541 * Version 2.2.1 released.
8542
8543Thu May 20 11:42:06 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8544
8545 * mipsbsd.sc-sh: Renamed from aout-mipsbsd.sc-sh.
8546 * mipsbsd.sh (EMULATION_NAME): Use new file name.
8547
8548Tue May 18 17:10:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8549
8550 * Makefile.in (LDDISTSTUFF): Remove ld.mm since we can't build it
8551 properly right now.
8552
8553 * Version 2.2 released.
8554
8555Mon May 17 15:37:28 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
8556
8557 * ldver.c (ldversion): Bump version number to 2.2.
8558
8559Mon May 17 12:44:31 1993 Per Bothner (bothner@cygnus.com)
8560
8561 * NEWS: New file.
8562
8563Fri May 14 11:26:24 1993 Ian Lance Taylor (ian@cygnus.com)
8564
8565 * mips.sc-sh: Don't define BSS_VAR unless relocating.
8566
8567Wed May 12 13:33:29 1993 Ian Lance Taylor (ian@cygnus.com)
8568
8569 * Makefile.in (mkscript.o, mkscript): Build mkscript via
8570 mkscript.o, rather than directly from mkscript.c.
8571
8572Tue May 4 21:58:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8573
8574 * configure.in: Look for ${target_makefile_frag} relative to
8575 ${srcdir}, not relative to build directory.
8576
8577 * hppaosf.em, hppaosf.sc-sh, hppaosf.sh: New files.
8578 * configure.in: Recognize hppa*-hp-osf.
8579 * Makefile.in (ALL_EMULATIONS): Include hppaosf emulation.
8580 (em_hppaosf.c): Build it.
8581 * config/hppaosf.mh, hppaosf.mt: New files.
8582
8583 * ld.h (ALIGN_N): Renamed from ALIGN, because that conflicted with
8584 some system header files. All uses changed.
8585
8586 * configure.in: Recognize i386-aix configurations as i386-coff
8587 targets.
8588
8589 * configure.in: Recognize m68*-*-hpux.
8590 * aout.sc-sh: If STACKZERO and RELOCATING are both defined, output
8591 the value of STACKZERO.
8592 * Makefile.in (ALL_EMULATIONS): Include hp300-hpux emulation.
8593 (em_hp3hpux.c): Build it.
8594 * hp3hpux.sh, config/hp300hpux.mt: New files.
8595
8596Tue May 4 12:37:35 1993 Ian Lance Taylor (ian@cygnus.com)
8597
8598 * mips.sc-sh: Put constructors in the .data section.
8599 * Makefile.in (cdtest): Added dependency on ld.new.
8600
8601Mon May 3 19:43:39 1993 Per Bothner (bothner@cygnus.com)
8602
8603 * Makefile.in: Change definition of $(tooldir) to match FSF.
8604 * vax.sh, config/vax.mt, configure.in, Makefile.in:
8605 Support VAX Ultrix and BSD.
8606
8607Mon Apr 26 18:35:47 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8608
8609 * sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH.
8610
8611Wed Apr 14 21:01:51 1993 John Gilmore (gnu@cygnus.com)
8612
8613 * ldlang.h (struct memory_region): Change `length' and
8614 `old_length' fields to bfd_size_type. Eliminate use of bfd_offset.
8615 * ldlang.c, mri.c: Corresponding changes, plus lint.
8616
8617Thu Apr 8 22:08:18 1993 Ian Lance Taylor (ian@cygnus.com)
8618
8619 * configure.in: For all i386 targets, accept i486 as well.
8620
8621Mon Apr 5 17:33:39 1993 Ian Lance Taylor (ian@cygnus.com)
8622
8623 * ldlang.c (wild_doit): Preserve all flags for a
8624 SEC_SHARED_LIBRARY section.
8625 (size_input_section): Consider any SEC_HAS_CONTENTS section when
8626 computing largest_section.
8627
8628Fri Apr 2 14:33:52 1993 Ian Lance Taylor (ian@cygnus.com)
8629
8630 * ldlang.c (lang_output_section_statement_lookup): Initialize all
8631 fields of newly created structure.
8632
8633Wed Mar 31 18:19:15 1993 Ian Lance Taylor (ian@cygnus.com)
8634
8635 * ldmain.c (g_switch_value): New variable.
8636 * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
8637 (command_line_option): Accept -G and set g_switch_value.
8638 * ldlex.l (COMMAND): Accept -G.
8639 * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
8640
8641Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8642
8643 Support for linking and loading at different places:
8644
8645 * ldlex.l: Add "AT" keyword.
8646 * ldgram.y: Cleanup, and parse AT.
8647 * ldlang.c (print_output_section_statement): Print output address
8648 of section in map. (lang_size_sections): Fill sections' lma with
8649 load address.
8650 * ldlang.h (lang_output_section_statement_type): Add load_base
8651 information.
8652
8653 * ldindr.c (add_indirect): Keep more information in the alias
8654 symbol chain.
8655 * ldlang.c (wild_doit): Don't inherit NEVER_LOAD section
8656 attribute from an input section.
8657 * ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
8658 default. (Q_enter_file_symbos): Indirect symbols now are known by
8659 their section, not a special symbol flag.
8660 * ldsym.c (write_file_locals): Indirect symbols aren't local.
8661 (write_file_globals): Write the mapping for an indirect symbol.
8662 * relax.c (build_it): When forced to write a NEVER_LOAD section,
8663 fill it with zeros.
8664
8665Tue Mar 23 13:24:10 1993 Jeffrey Osier (jeffrey@fowanton.cygnus.com)
8666
8667 * ld.texinfo: changes for q1
8668
8669Tue Mar 23 00:13:29 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8670
8671 * Makefile.in: add dvi target, define & use TEXI2DVI, add installcheck
8672
8673Mon Mar 8 20:30:35 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8674
8675 * Makefile.in: rename HOST_CC to CC_FOR_BUILD
8676
8677Thu Mar 4 12:44:33 1993 Ian Lance Taylor (ian@cygnus.com)
8678
8679 * mips.sc-sh: Added variables which may be overridden by a
8680 specific emulation.
8681 * mipsidt.sh: New file; emulation for IDT MIPS board.
8682 * Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
8683 (em_mipsidt.c): New target. Uses mipsidt.sh and mips.sc-sh.
8684 * config/mips-idt.mt: New file; sets EMUL to mipsidt.
8685 * configure.in (mips-idt-ecoff): New target; uses mips-idt.
8686
8687Sat Feb 27 00:00:14 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8688
8689 * aout-mipsbsd.sc-sh, mipsbsd.sh: New files from Ralph Campbell,
8690 ralphc@pyramid.com.
8691 * i386bsd.sh, config/i386bsd.mt: New files.
8692 * configure.in, Makefile.in: Added support for mipsbsd and 386bsd.
8693
8694Thu Feb 25 15:33:10 1993 Per Bothner (bothner@rtl.cygnus.com)
8695
8696 * mri.c: Add extern declaration of strdup.
8697 * ldsym.c (KEEP macro): Add spaces around '=' for the
8698 sake of old (e.g. PCC) compilers.
8699
8700Wed Feb 24 19:49:31 1993 Per Bothner (bothner@rtl.cygnus.com)
8701
8702 * ldver.c: Bump to version 2.1.
8703
8704Fri Feb 12 08:09:11 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8705
8706 * ldgram.y: allow section types without address expressions.
8707 * ldlang.c (lang_relocate_globals): avoid possible hang with
8708 undefined but unreferenced symbols.
8709 * relax.c (relax_section): don't complain if the script file isn't
8710 relaxable but -relax is set
8711
8712Thu Feb 18 17:58:45 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8713
8714 * configure.in: go32 is the 3rd part of the triple, not the 2nd
8715
8716Wed Feb 3 09:05:56 1993 Ian Lance Taylor (ian@cygnus.com)
8717
8718 * mipsbig.sh: New file. Big endian MIPS emulation.
8719 * config/mips-big.mt: New file. Use mipsbig emulation.
8720 * configure.in (mips-sgi-irix*): Use target mips-big.
8721 * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
8722 (em_mipsbig.c): New target. Uses mipsbig.sh.
8723
8724Tue Feb 2 11:32:27 1993 Ian Lance Taylor (ian@cygnus.com)
8725
8726 * mips.sc-sh: Put .scommon sections into .sbss section.
8727
8728 * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
8729 rather than always putting them in bfd_com_section.
8730 * ldlang.c (lang_common): If a common symbol is not in
8731 bfd_com_section, put in a section of the same name, rather than
8732 always putting it in section COMMON.
8733
8734Fri Jan 29 09:57:58 1993 Ian Lance Taylor (ian@cygnus.com)
8735
8736 * ldmain.c (subfile_wanted_p): If we already have a common
8737 definition of a symbol, don't necessarily pull in an object file
8738 that provides a non-common definition.
8739
8740 * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
8741 returning OPTION_EB and OPTION_EL. gcc passes these to a MIPS
8742 linker.
8743 * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
8744 (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
8745
8746Thu Jan 28 15:12:04 1993 Ian Lance Taylor (ian@cygnus.com)
8747
8748 * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
8749 the link to it.
8750
8751Tue Jan 26 11:49:50 1993 Ian Lance Taylor (ian@cygnus.com)
8752
8753 * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
8754 checking for equality to bfd_com_section.
8755
8756Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com)
8757
8758 * mips.sc-sh: New file. Ultrix, and hopefully other MIPS ECOFF
8759 targets, linker script.
8760 * mipslit.sh: New file. Little endian MIPS emulation.
8761 * config/mips-lit.mt: New file. Use mipslit emulation.
8762 * configure.in (mips-dec-ultrix*): Use target mips-lit.
8763 * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
8764 (em_mipslit.c): New target. Uses mipslit.sh.
8765
8766Thu Jan 14 15:30:27 1993 Ian Lance Taylor (ian@cygnus.com)
8767
8768 * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
8769 $(tooldir)/bin/gld, so that gcc can find it with or without
8770 collect2.
8771
8772Mon Jan 11 18:50:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
8773
8774 * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
8775 write_norel. All linking is now done via write_relax. Call
8776 ldsym_write before calling write_relax.
8777 * relax.c: Added copyright.
8778 (write_relax): Renamed from write_relaxnorel. Added relocateable
8779 argument. seclet_dump renamed to bfd_seclet_link.
8780 * relax.h: Added copyright.
8781
8782Mon Jan 11 15:41:56 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8783
8784 * ldmain.c (decode_library_subfile): Patch from
8785 hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
8786
8787Fri Jan 8 18:04:33 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8788
8789 * config/vxworks960.mt renamed to config/i960.mt
8790
8791 * configure.in: sparc-aout emulates a sun4, as does
8792 sparc*-vxworks, i960-nindy uses gld960 emulation
8793
8794Fri Jan 8 14:39:07 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8795
8796 Fix support for NOLOAD, add INCLUDE
8797 * ldfile.c (ldfile_open_command_file): pass file name to
8798 lex_push_file.
8799 * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD
8800 * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
8801 attribute.
8802
8803Thu Jan 7 10:22:19 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8804
8805 * Makefile.in, config.h: no more default emulation. Make the lack
8806 of emulation a compile time error
8807
8808Wed Jan 6 01:08:37 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8809
8810 * configure.in: recognise all sparclite variants, not just 'sparclite'
8811
8812Mon Dec 28 11:15:35 1992 Ian Lance Taylor (ian@cygnus.com)
8813
8814 * m68kcoff.sc-sh: define _end as well as end, for consistency with
8815 aout.sc-sh.
8816
8817 * configure.in: accept *-ericsson-ose for any m68k CPU.
8818
8819 * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
8820 for each output section.
8821
8822Mon Dec 21 16:06:59 1992 Per Bothner (bothner@rtl.cygnus.com)
8823
8824 * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c: Use new
8825 macro bfd_asymbol_bfd as appropriate.
8826 * Makefile.in: Un-duplicate ldlex.c dependency.
8827 * condigure.in: Replace my_host case table by sourcing
8828 ../bfd/configure.host. Allow std-host as the default.
8829 * ldmisc.c: Change logic for C++ name demangling: There is
8830 no initial '_' to remove from stab-derived function names.
8831
8832Sun Dec 13 16:31:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8833
8834 * ldlang.c (lang_init_script_file): don't attach the output file
8835 sections to the script file.
8836
8837Wed Dec 9 08:38:05 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8838 * ldlang.c (wild): run expansion loop over command line bfd too.
8839 (lang_ini_script_file): initialize more parts of the command line
8840 bfd.
8841 * ldlex.l: fix DEFINED start states.
8842
8843Mon Dec 7 08:43:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8844 -y support
8845 * ld.texinfo: new doc.
8846 * ldgram.y, ldlex.l: understand -y<symbol>
8847 * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
8848 print info. (add_ysym): new function.
8849 * ldsym.h: (ldsym_type): new define SYM_Y.
8850
8851Sat Nov 21 03:15:27 1992 John Gilmore (gnu@cygnus.com)
8852
8853 * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
8854 ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
8855 ldwrite.h, relax.h: Replace all uses of EXFUN and PROTO ansi-glue
8856 macros with PARAMS. Recreational cleanup. Update copyrights.
8857
8858Tue Nov 10 00:23:37 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8859
8860 * Makefile.in: pass down the bfd source directory for includes
8861
8862Thu Nov 5 15:41:55 1992 Ian Lance Taylor (ian@cygnus.com)
8863
8864 * ldlang.c (lang_size_sections): don't change size and address for
8865 SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
8866 sections.
8867
8868Thu Nov 5 11:33:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8869
8870 * relax.c (build_it): re-enable the processing of data_statements
8871 in scripts, makes counted contructor lists work again.
8872
8873Thu Nov 5 05:43:01 1992 John Gilmore (gnu@cygnus.com)
8874
8875 * ldemul.h: Remove uses of SDEF and PROTO macros (use PARAMS).
8876
8877Tue Oct 20 10:56:06 1992 Ian Lance Taylor (ian@cygnus.com)
8878
8879 * m68kcoff.sc-sh: don't use initial underscores for etext, edata
8880 and end.
8881
8882Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com)
8883
8884 * Support for i386-sysv.
8885 configure.in: check for i386-*-sysv* and i386-*-sco*.
8886 i386coff.sc-sh: rewrote to support SVR3 by default.
8887 ldctor.c (find_constructors): preserve stat_ptr.
8888 ldlang.c (wild_doit): initialize vma and size of new output
8889 section to corresponding input section. This is required for
8890 shared library support.
8891 (lang_size_sections): don't modify vma and size of sections which
8892 are never loaded (for shared libraries).
8893 ldwrite.c (copy_and_relocate): copy the contents of any section
8894 which has contents, not just sections which are loaded (for shared
8895 libraries).
8896
8897Thu Oct 15 15:20:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8898
8899 * ldlang.c (size_input_section): count the sizes of all sections
8900 we allocate.
8901
8902Thu Oct 8 09:05:25 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8903
8904 * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to
8905 to demangle symbols better
8906
8907Tue Oct 6 13:08:54 1992 Ian Lance Taylor (ian@cygnus.com)
8908
8909 * ldlang.c (lang_finish): don't warn if -e start symbol does not
8910 exist when linking with -r.
8911
8912Mon Oct 5 14:07:37 1992 Ian Lance Taylor (ian@cygnus.com)
8913
8914 * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
8915 .bss segment.
8916
8917Mon Oct 5 08:55:14 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8918
8919 * ldmain.c (linear_library): don't even think about processing
8920 an object file if it's already been done
8921
8922Thu Oct 1 23:14:59 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8923
8924 * configure.in: the hp9000/300 config file is now hp300
8925
8926Wed Sep 30 07:34:09 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8927
8928 * config/z8ksim.mt: new file
8929
8930Fri Sep 25 13:49:52 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
8931
8932 * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
8933 lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
8934
8935 * ld.h (strip_symbols_type): Add value STRIP_SOME.
8936 * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
8937 * ldlang.c (lang_add_keepsyms_file): New function.
8938 * ldlex.l: Handle "-retain-symbols-file".
8939 * ldsym.c (keepsyms_file, kept_syms): New vars.
8940 (process_keepsyms): New functihon; reads file, marks symbols for
8941 saving.
8942 (write_file_locals): File symbols should always be kept.
8943 (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
8944 and "-s". Process retain-symbols file before setting symtab.
8945 * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
8946 (keepsyms_file, kept_syms): Declare them.
8947
8948 * ldmain.c (main): Non-fatal errors should still cause non-zero
8949 exit status even with -r.
8950
8951Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8952
8953 Added initial support for the z8k
8954 * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
8955 * configure.in, Makefile.in: modified to reflect above
8956
8957 * ldlang.c (lang_check): when linking conflicting architectures,
8958 make the output file reflect at least one of the bad inputs.
8959
8960Tue Sep 15 15:35:38 1992 Ian Lance Taylor (ian@cygnus.com)
8961
8962 * Makefile.in (install): if $(tooldir) exists, install ld in
8963 $(tooldir)/bin.
8964
8965Fri Sep 11 10:24:22 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8966
8967 * Makefile.in, configure.in: modified to support i386-coff
8968 * i386coff.sh: new file
8969
8970Wed Sep 9 11:52:58 1992 Ian Lance Taylor (ian@cygnus.com)
8971
8972 * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
8973 added m68k-coff emulation mode, stolen from a29k emulation.
8974 Almost certainly wrong, but perhaps better than sun3.
8975
8976Thu Sep 3 14:19:30 1992 Per Bothner (bothner@rtl.cygnus.com)
8977
8978 * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
8979 gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
8980 vanilla.em: Rename all (generated) ld__*.c files to em_.c.
8981 This is one character shorter, and lets people build on
8982 SVR3 system. (ld__h8300xray.[co] was the killer there;
8983 h8300xray.sc-sh is also overlong, but seems harmless.)
8984 Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
8985 * Makefile.in (clean): Fix typo mostclean -> mostlyclean.
8986 * configure.in: Add host isc.
8987
8988 * ldver.c: Call it version 2.0.
8989
8990Wed Sep 2 00:21:33 1992 Per Bothner (bothner@rtl.cygnus.com)
8991
8992 * ldver.c: Bump to version 0.98.
8993 * TODO: New file.
8994
8995 * Makefile.in: Added mostlyclean, distclean, realclean rules.
8996
8997Tue Sep 1 23:42:16 1992 Per Bothner (bothner@rtl.cygnus.com)
8998
8999 * ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
9000 * ldlex.l: Moved comment() to end, since some compilers
9001 otherwise have problems with input() used before it is defined.
9002
9003Tue Sep 1 17:45:51 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9004
9005 * configure.in: added Solaris 2 and Irix 4 host support.
9006
9007Mon Aug 31 19:27:11 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9008
9009 * Makefile.in: remove -S flag from the FLEX definition
9010
9011 * configure.in: rewrote, using new style case statement. use
9012 m68k.mt for m68k-aout systems
9013
9014Sun Aug 30 21:38:53 1992 Ian Lance Taylor (ian@cygnus.com)
9015
9016 * Makefile.in: map "ld" through program_transform_name when
9017 installing.
9018
9019Sun Aug 30 18:12:13 1992 Per Bothner (bothner@rtl.cygnus.com)
9020
9021 * cplus-dem.c: Removed. Use the version in libiberty now.
9022 * ldmisc.c: Use new libiberty version of cplus_demangle().
9023
9024Thu Aug 27 16:38:42 1992 Ian Lance Taylor (ian@cygnus.com)
9025
9026 * gld960.em (gld960_choose_target): default to little endian, not
9027 big endian.
9028
9029Wed Aug 26 17:28:51 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9030
9031 * ldlang.c (lang_process): don't pass null pointers when
9032 abs_output_section is what is required.
9033 * ldwrite.c (ldwrite): use malloc to allocate the largest space
9034 used, and pass that down.
9035 * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
9036 than alloca.
9037
9038Mon Aug 24 14:42:06 1992 Ian Lance Taylor (ian@cygnus.com)
9039
9040 * configure.in, config/ose68.mt: renamed OSE to ose.
9041
9042Thu Aug 20 19:55:22 1992 Ken Raeburn (raeburn@cygnus.com)
9043
9044 * ldsym.c (write_file_locals): Reorder check for common or
9045 undefined symbols so that it works.
9046
9047Tue Aug 18 13:41:36 1992 Ian Lance Taylor (ian@cygnus.com)
9048
9049 * configure.in: accept all m68K family members.
9050
9051 * Makefile.in: always create installation directories.
9052
9053Thu Aug 13 11:49:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9054
9055 * ldlex.l: now parses comment correctly, added ~ to acceptable
9056 chars in filenames
9057
9058 * ldexp.c (exp_unop): pass down abs_output_section - now can have
9059 unary -ve constants.
9060
9061 * ldlang.c (lang_finish): warn when an entry symbol supplied on
9062 the command line can't be found.
9063
9064Fri Aug 7 12:31:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9065
9066 * ldlang.h: add new field "loadable" to output_section_statement.
9067 * ldlang.c (lang_output_section_statement_lookup): initilize new
9068 field. (wild_doit): if new field is not set, then stop output
9069 section from being loadable.
9070 (lang_enter_output_section_statement): set the field from the
9071 NOLOAD keyword
9072 * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
9073 * h8300hms.sc-sh, h8300hms.em: get -r right.
9074
9075Thu Aug 6 18:35:21 1992 Per Bothner (bothner@rtl.cygnus.com)
9076
9077 * ldint.texinfo: New internals manual (beginnings thereof).
9078 * PORTING: Removed, merged into ldint.texinfo.
9079
9080Tue Aug 4 21:12:29 1992 Per Bothner (bothner@rtl.cygnus.com)
9081
9082 * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
9083 cdtest.exp: A test program (copied from libg++/test-install)
9084 that tests that constructor and destructors are handled
9085 corrrectly.
9086
9087Mon Aug 3 14:58:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9088
9089 * Makefile.in (install): install from ld.new, renaming during the
9090 copy, or else the next 'make install' needs to re-link ld.
9091
9092Mon Jul 20 03:37:06 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
9093
9094 * configure.in: generalise hp recognition (from sef).
9095
9096Sat Jul 18 14:46:04 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9097
9098 * configure.in: recognize bsd and hpux hppa configurations.
9099 error messages echo to stderr, not stdout
9100
9101Fri Jul 17 22:06:11 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9102
9103 * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
9104 ldmisc.c: removed rcsid's.
9105
9106Tue Jul 14 08:34:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9107
9108 * ldlang.c (lang_map): print changes in sizes due to relaxing
9109 (size_input_section): maintain the delta information.
9110 * ldlang.h: add new field to struct to contain delta info.
9111 * relax.c (relax_section): complain if input not relaxable.
9112 * ldlex.l : add '_', ',' and '$' to chars which can appear at the
9113 start of a filename
9114
9115Mon Jul 13 17:33:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9116
9117 * ldmain.c(main): prevent -r and -relax from being on at the same
9118 time.
9119
9120Wed Jul 1 17:51:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9121
9122 * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
9123 aliasing problems
9124
9125
9126Thu Jun 18 09:38:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9127
9128 * h8300hms.em, h8300hms.sc-sh: do the right thing for -r
9129 * ldexp.c: lint
9130 * ldlang.c(open_output): set the target arch and machine as soon
9131 as we can. (lang_size_sections): use new macros for setting vma
9132 * ldwrite.c: lint
9133
9134Mon Jun 15 08:47:43 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
9135
9136 * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
9137 Also deleted an unreachable path to wrs.
9138
9139Wed May 27 23:24:19 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
9140
9141 * Makefile.in (install): use -d test for $tooldir before
9142 installing ld there so that $tooldir can be inherited from
9143 top-level Makefile.
9144
9145Wed May 27 16:56:48 1992 Per Bothner (bothner@rtl.cygnus.com)
9146
9147 * ldlang.c: Two non-substantial changes for the sake of
9148 the old Portable C Compiler.
9149
9150Wed May 27 15:15:58 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9151
9152 * ldgram.y, ldlex.l: parse ABSOLUTE
9153 * ldexp.c: add support for ABSOLUTE
9154
9155Wed May 27 13:07:20 1992 Per Bothner (bothner@rtl.cygnus.com)
9156
9157 * Makefile.in: Added default definitions for HOSTING_CRT0,
9158 HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
9159 * config/*.mh: Miscellaneous clean-up: Removed definitions
9160 of YACC (since it is not longer used in the Makefile).
9161 Remove HOSTING_* definitions that are subsumed by the
9162 ones added to Makefile.in. Removed most definitions of CC.
9163 * config/{sparc,news,hp300bsd,decstation}.mh: Removed;
9164 These are no longer needed.
9165
9166Fri May 22 13:47:19 1992 Per Bothner (bothner@cygnus.com)
9167
9168 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
9169 rules, since these are used when building a distribution.
9170 * Makefile.in (ldlex.c): Don't re-direct output, since that
9171 leaves a bogus output files if it fails.
9172
9173 * config/sparc.mh: Fix HOSTING_LIBS so it has a chance of working.
9174 * ldlex.c: Fix some unnecessary flex-specific-isms.
9175
9176Fri May 8 11:49:43 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9177
9178 * ldgram.y: move spurious semicolon
9179 * ldexp.h: fix prototype
9180
9181Thu May 7 17:01:12 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
9182
9183 * ld.texinfo: references to linker now say "ld" not "gld".
9184
9185Wed May 6 13:26:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9186
9187 changed calling convention for Q_enter_global_ref
9188 * ldexp.c, ldlang.c, ldmain.c: reflect this
9189 * ldver.c: bump version to 1.97.1
9190 * ldindr.c (add_indirect): when an edict declaring an indirect
9191 symbol is found, make sure that any ideas about the symbol being
9192 common are changed if it now known to be defined.
9193 * ldmain.c (linear_library): complain once if archive isn't
9194 ranlibbed.
9195 * ldlang.h, ldlang.c: make room for and initialize the complain
9196 once field.
9197
9198Wed May 6 11:07:35 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9199
9200 * Makefile.in: use flex & bison from ../ if they exist.
9201
9202Tue May 5 17:47:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9203
9204 * relax.c (build_it): don't allocate space in the output file for
9205 stuff if -R flag applys to it.
9206 * ldfile.c: merge in VMS filename support
9207 * ldmain.c (main): take out ./ from library path, and close file
9208 before unlinking. Make multiple defs of a symbol create an
9209 unexecable file.
9210 * ldmisc.c: fatal errosrs delete output file
9211
9212Tue May 5 14:05:05 1992 Per Bothner (bothner@rtl.cygnus.com)
9213
9214 * ldver.c: Increase version number to 1.97, for consistency
9215 with ../binutils.
9216
9217Tue May 5 12:12:24 1992 K. Richard Pixley (rich@cygnus.com)
9218
9219 * Makefile.in: FLEX -> LEX.
9220
9221 * ld.texinfo: {} -> @{@}.
9222
9223Mon May 4 17:52:41 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
9224
9225 * ld.texinfo: describe alternate, MRI-compatible linker scripts
9226 (and associated change in -c option, now used for these scripts)
9227
9228Mon May 4 16:10:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9229
9230 * ldver.c: Bumped version to 1.96 - new release, resync with the
9231 bfd too #.
9232 * ldexp.c, ldlang.c: now build memory shape tree in obstacks
9233 rather than with raw malloc, makes it easier to track where memory
9234 is going.
9235 * ldsym.h, ldsym.c: create obstack for all global symbols too.
9236 * ldwrite.c (ldwrite): moved malloc so only used when needed.
9237 * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
9238
9239
9240Fri May 1 18:17:52 1992 K. Richard Pixley (rich@cygnus.com)
9241
9242 * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
9243
9244 * Makefile.in: use bootstrap for check.
9245
9246Fri May 1 13:03:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9247
9248 * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
9249 PUBLIC.
9250 * Makefile.in: now use flex, not lex
9251 * ldlex.l, ldlang.c, ldctor.c: lint
9252
9253Wed Apr 22 12:48:42 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9254
9255 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
9256 different sorts of filenames on the command line than in a script.
9257
9258Mon Apr 20 22:37:04 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9259
9260 * Makefile.in: rework CFLAGS so that they can be passed on the
9261 make command line. Remove MINUS_G. Default CFLAGS to -g.
9262
9263Fri Apr 17 08:57:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9264
9265 * relax.c: added handling for new "padding" seclet type, used to
9266 fill out gaps between section.
9267 * ldgram.y, ldlex.l: now -defsym on the command line is done
9268 properly.
9269
9270Wed Apr 15 21:20:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9271
9272 * Makefile.in: the tooldir copy of ld goes directly in tooldir.
9273
9274Wed Apr 15 16:09:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9275
9276 * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
9277 scripts.
9278
9279Thu Apr 9 05:52:02 1992 Ken Raeburn (Raeburn@Cygnus.COM)
9280
9281 * Makefile.in (install): Install second copy in $(tooldir)/bin
9282 without $(program_prefix), since that's what gcc expects.
9283
9284Sat Apr 4 17:44:06 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9285
9286 * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer.
9287 * h8300*: fix bit rot and add support for h8300xray target
9288 * go32.sh: target emulation for go32.
9289
9290Mon Mar 16 14:53:29 1992 Steve Chamberlain (sac@rtl.cygnus.com)
9291
9292 * gld960.em, i960.sc-sh. Fix i960 bit rot
9293
9294Fri Mar 13 19:47:22 1992 K. Richard Pixley (rich@cygnus.com)
9295
9296 * Makefile.in: install man page.
9297
9298Fri Mar 13 08:23:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9299
9300 * config/mt-<foo> renamed to <foo>.mt
9301 * config/mh-<foo> renamed to <foo>.mt
9302 * configure.in changed to reflect this
9303 * genscripts.sh now make .xbn files rather than .xN files
9304
9305Sat Mar 7 03:40:40 1992 K. Richard Pixley (rich@cygnus.com)
9306
9307 * ldver.h: fix decl of ldversion.
9308
9309Fri Mar 6 22:00:35 1992 K. Richard Pixley (rich@cygnus.com)
9310
9311 * Makefile.in: added check target.
9312
9313Fri Mar 6 06:59:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9314
9315 * ldmain.c (Q_enter_file_symbols): now aliases work again
9316
9317Thu Mar 5 21:39:29 1992 K. Richard Pixley (rich@cygnus.com)
9318
9319 * Makefile.in: added clean-info target.
9320
9321Thu Mar 5 16:55:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9322
9323 * ldexp.c (exp_print_tree): don't try and follow null pointers
9324 around.
9325 * ldgram.y: remove 11 shift reduce errors
9326
9327Tue Mar 3 15:46:39 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9328
9329 * Makefile.in: added tooldir and program_prefix.
9330
9331Fri Feb 28 08:17:45 1992 Steve Chamberlain (sac at thepub.cygnus.com)
9332
9333 * ldlang.c (size_input_section): don't move absolute sections
9334 around!
9335
9336
9337Thu Feb 27 09:20:41 1992 Steve Chamberlain (sac at thepub.cygnus.com)
9338
9339 * cplus-dem.c: yet another copy of this - maybe it should go into
9340 libiberty ?
9341 * ldgram.y: now -V and -v have different actions
9342 * ldver.c: if -V, prints list of emulations compiled in
9343 * ldmisc.c: support for cplus demangling
9344
9345
9346Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
9347
9348 * Makefile.in, configure.in: removed traces of namesubdir,
9349 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
9350 copyrights to '92, changed some from Cygnus to FSF.
9351
9352Thu Feb 20 17:43:46 1992 Per Bothner (bothner at cygnus.com)
9353
9354 * Makefile.in: Change mkscript rule into one for ./mkscript
9355 (for the sake of makes that don't realize they're the same).
9356 * PORTING: Add more details.
9357 * genscripts.sh: Add more tailorability of DATA_ALIGNMENT.
9358
9359Mon Feb 17 12:04:36 1992 Per Bothner (bothner at cygnus.com)
9360
9361 * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
9362 config/mt-hp300bsd: New port to hp300 running BSD.
9363
9364Sat Feb 15 13:59:54 1992 Per Bothner (bothner at cygnus.com)
9365
9366 Major rewrite of how ld is configured. The major idea
9367 is to use shell scripts to generate everything.
9368 * generic.em replaces ldtemplate.
9369 * Other *.em files replace various *.c files.
9370 A *.em file is a shell script that generates the corresponding
9371 ld__*.c file that implements an emulation. This is usually
9372 a straight 'cat' of a here-document, possibly with substitutions.
9373 * Script files (*.sc) are places by *.sc-sh scripts.
9374 Again, these are simple shell scripts that 'cat'
9375 here-documents, usually with some substitutions.
9376 The output a *.sc-sh is a script file.
9377 * Each emulation is defined by a short shell script with
9378 extension *.sh that specifies the emulation-specific
9379 parameters (such as the name of the *.sh-sc and *.em
9380 files to use).
9381 * genscript.sh is the master shell script used to generate
9382 an emulation. It is passed various argument, including
9383 the name a the emulation-speciic *.sh file that it
9384 "sources" to set variables to emulation-specifc parameters.
9385 * config/mt-foo: Changed EMUL=GLDFOO_EMULATION_NAME
9386 to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
9387 * config/mh-foo: Rename LDEMULATION names as appropriate
9388 (usually 'gldfoo' -> plain 'foo').
9389 * ldwrite.c: Fixed a typo in a comment.
9390 * Makefile.in: Major changes. Removed some the sed
9391 magic to converts scripts, since that is now handled
9392 by genscripts.sh and the *.sc-sh scipt generators.
9393 * config.h: Remove a bunch of macros defining emulations
9394 and targets. This becomes one less file to edit when
9395 adding emulations or targets.
9396 * ldemul.h (struct ld_emulation_xfer_struct): Add
9397 emulation_name and target_name fields.
9398 * ldemul.c, ldemul.h: Define some default functions used
9399 by most emulations (and remove from the *.em scripts).
9400 * ldemul.c (ldemul_choose_target): Search the new
9401 ld_emulations array using a loop (instead of a hardwired
9402 nested if statement).
9403 Define the ld_emulation from the automatically-geenrated
9404 ldemul-list.h. This means you no longer have to edit ldemul.c
9405 to add a new emulation.
9406 * ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
9407 their expansions, since the former no longer exist.
9408 * PORTING: A very rough first draft of a porting guide.
9409
9410 * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
9411 to be terminated by a new-line (instead of requiring a semicolon).
9412
9413Mon Feb 10 16:21:02 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9414
9415 * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
9416 tests for NULL pointers all over the place.
9417 * ldlang.c (lang_process): remember to relocate global symbols
9418 *after* relaxing has done it stuff.
9419
9420Thu Feb 6 11:40:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9421
9422 * config/mt-coff-h8300: use EMUL like everything else
9423 * ldlang.c: (print_padding_statement): print the right address.
9424 * Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
9425
9426
9427Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9428
9429 * ldlex.l: Put pack -noinhibit-exec and -sort-common
9430 * ldlang.c (print_data_statement): print the right address.
9431
9432Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
9433
9434 * Makefile.in: The rule for testing ld by re-linking itself
9435 via an intermediate -r link was moved to the ld1 rule
9436 instead of the ld2 rule. This allows ld2 and ld3 to be identical,
9437 which allows the bootstrap rule to work.
9438 * ldctor.c (find_constructors): Don't create a constructor
9439 list if it is already defined (as would happen if ld is
9440 invoked by collect).
9441
9442Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9443
9444 * config/mh-sparc.h: now uses libgcc.a
9445 * ldmain.c: quit using exit
9446 * *sc: use *(COMMON) rather than [COMMON]
9447 * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
9448 to allow preprocessing of .l file.
9449 * Makefile.in: New ldlex.l mangling
9450 * ldexp.c (fold_binary): perform expressions with % and / in
9451 integer.
9452 * ldfile.c (open_a): open archives on VMS in a special way
9453
9454
9455Tue Jan 28 10:18:16 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9456
9457 * ldgram.y: map -M behave in the same way as -Map (sets file name
9458 to be "-".
9459 * ldsym.c, ldlang.c: remember that size of a section is dependent on
9460 whether or not relaxing has been done.
9461 * ldmain.c: don't open a map file if it doesn't have a name
9462 * relax.c: all the brains have moved into bfd.
9463 * ldwrite.c: ammend comment
9464
9465Fri Jan 24 14:23:46 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9466
9467 * Makefile.in: added relax, also made three stage go through a
9468 partial link stage.
9469 * relax.c : added
9470 * config.h: if GNU960 defined, then default emulation mode is
9471 GLD960
9472 * ldexp.h, ldexp.c: map to file hooks
9473 * ldlang.c: map to file hooks
9474 * ldgram.y: added -Map -relax
9475 * ldlex.l: added -relax, -Map
9476 * ldmain.c: open map file
9477 * ldmisc.c: support for map file
9478 * ldwrite.c: new relax magic
9479
9480Thu Dec 19 18:49:51 1991 John Gilmore (gnu at cygnus.com)
9481
9482 * Makefile.in, config/tm-*.h: Clean up make output, only
9483 pass DEFAULT_EMULATION to ldmain.c.
9484
9485Wed Dec 18 15:02:47 1991 Per Bothner (bothner at cygnus.com)
9486
9487 * ldver.c: Bump to version 1.94.
9488
9489Tue Dec 10 04:07:23 1991 K. Richard Pixley (rich at rtl.cygnus.com)
9490
9491 * Makefile.in: infodir belongs in datadir.
9492
9493Mon Dec 9 16:26:43 1991 Per Bothner (bothner at cygnus.com)
9494
9495 * Makefile.in: Pass -y to bison. (Again;
9496 accidentally deleted by Rich.)
9497 * news.sc, ldgld68k.sc: Define __end as well as _end.
9498
9499Sat Dec 7 17:19:26 1991 Steve Chamberlain (sac at rtl.cygnus.com)
9500
9501 * ldindr.h: added to contain prototypes of ldindr.c
9502 * ldfile.c: include ctype.h
9503 * ldmain.c: include the requried prototype headers
9504 * ldwrite.c: get_reloc_upper_bound has been renamed
9505 bfd_get_reloc_upper_bound
9506
9507Fri Dec 6 23:29:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
9508
9509 * Makefile.in: punt "fundamental" mode because it breaks my emacs
9510 macros. install using INSTALL_PROGRAM and INSTALL_DATA. remove
9511 spaces following hyphens, bsd make can't cope. added
9512 standards.text support and made it look like all the other
9513 makefiles.
9514
9515 * configure.in: configure now runs entirely in objdir so make file
9516 existence checks against ${srcdir}. Mark this directory as
9517 target dependent.
9518
9519Thu Dec 5 22:46:16 1991 K. Richard Pixley (rich at rtl.cygnus.com)
9520
9521 * Makefile.in: idestdir and ddestdir go away. Added copyrights
9522 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
9523 and mandir now keyed off datadir by default.
9524
9525Wed Dec 4 23:36:55 1991 Per Bothner (bothner at cygnus.com)
9526
9527 * ldver.c: Bumped version to 1.93.
9528 * Makefile.in: Pass -y to bison.
9529
9530Mon Nov 25 18:28:40 1991 Steve Chamberlain (sac at cygnus.com)
9531
9532 * config.h: h8 is now coff, not ieee
9533 * h8300hds.sc: reflect the same
9534
9535Thu Nov 14 19:55:09 1991 Per Bothner (bothner at cygnus.com)
9536
9537 * ldver.c (ldversion()): Update to 1.92.
9538 * ldctor.c: There are two places constructor sets
9539 can be defined. One of them checked for an existing
9540 duplicate, the other didn't. Unfortunately, the latter
9541 was called after the former ...
9542 So, factor out code for inserting a new element into
9543 constructor_name_list (after checking for a duplicate)
9544 into a new function add_constructor_name, and call
9545 it from both aforementioned places (ldlang_add_constructor
9546 and ldlang_check_for_constructors).
9547
9548Wed Nov 13 15:17:43 1991 Per Bothner (bothner at cygnus.com)
9549
9550 * Makefile.in: Rename .c files generated from ldtemplate
9551 to have names starting with ld__. This helps 'make clean'.
9552
9553Tue Nov 12 18:36:50 1991 Steve Chamberlain (sac at cygnus.com)
9554
9555 * Makefile.in: Take out the version number for install
9556 * m88kbcs.sc: put in contructor blocks.
9557
9558Mon Nov 11 18:47:33 1991 Per Bothner (bothner at cygnus.com)
9559
9560 * ldmisc.c, ldmisc.h: Re-write info() to take a filename
9561 parameter, a format, and an arg pointer, and rename it to
9562 vfinfo(). Write info() in terms of new vfinfo().
9563 New einfo() is the same as info(), except it writes to stderr.
9564 * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
9565 ldmisc.c: Replace "error" calls to info() by new einfo().
9566
9567Mon Nov 11 09:57:32 1991 Steve Chamberlain (steve at cygnus.com)
9568
9569 * ldlex.l ldgram.y: made -V option do same as -v
9570 * Makefile.in: Added $(MINUS_G) flag so debugging can be
9571 turned off
9572
9573Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
9574 i386 aout changes from Bob Kukura
9575 * Makefile.in, config.h: added i386aout support
9576 * configure.in: fixed /h-{myhost} typo
9577 * ldgram.y: -MM now gives more boring map.
9578 * ldlang.c: now does D_PAGED flag the right way.
9579 * ldsym.c: -MM flags does the right thing.
9580
9581Sun Nov 3 15:00:03 1991 Per Bothner (bothner at cygnus.com)
9582
9583 * configure.in: Fixed typo. Also, a fix for hp300bsd.
9584 * ldlang.c (init_os): Compensate for BFD change,
9585 where bfd_make_section now returns NULL for a duplicate
9586 section request, instead of the old section.
9587
9588Thu Oct 17 15:27:13 1991 Per Bothner (bothner at cygnus.com)
9589
9590 * ldver.c: Bump to version 1.91 (consistent with binutils).
9591
9592Wed Oct 16 12:27:08 1991 Per Bothner (bothner at cygnus.com)
9593
9594 * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
9595 ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
9596 ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
9597 ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
9598 Add or update copyright notices.
9599
9600Mon Oct 14 23:55:27 1991 Per Bothner (bothner at cygnus.com)
9601
9602 * README: New file.
9603 * Makefile.in: Changed installation directory name scheme
9604 to be consistent with gcc. Also changed 'install'.
9605
9606Mon Oct 14 17:30:02 1991 Roland H. Pesch (pesch at cygnus.com)
9607
9608 * Makefile.in: new targets ld.mm, ld.me
9609
9610Mon Oct 14 17:27:24 1991 Per Bothner (bothner at cygnus.com)
9611
9612 * Makefile.in, ldtemplate: Need to use separate scripts
9613 for -n and -N options. Yet more complication.
9614
9615Fri Oct 11 22:40:46 1991 John Gilmore (gnu at cygnus.com)
9616
9617 * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
9618 work). Add some lines to avoid Sun Make VPATH bugs.
9619
9620Fri Oct 11 16:42:22 1991 Per Bothner (bothner at cygnus.com)
9621
9622 * news.sc: Add alignment for data segment.
9623 * ldtemplate: Add (yet another) script to get for -n or -N
9624 options. (These need different alignment than ZMAGIC files.)
9625 * Makefile.in: Add stuff for new foo.xn scripts.
9626 These are generated by replacing "ALIGN(0x...00)" by ".".
9627
9628Fri Oct 11 15:43:04 1991 Roland H. Pesch (pesch at cygnus.com)
9629
9630 * Makefile.in: new targets ld.ms, ld-index.ms
9631 ld.texinfo: remove tabs, other cleanups for texi2roff
9632
9633Fri Oct 11 13:51:54 1991 Per Bothner (bothner at cygnus.com)
9634
9635 * ldmain.c (main): Make config.magic_demand_paged be true
9636 by default. Don't the WP_TEXT and D_PAGED flags of
9637 output_bfd here; it's too late, so set it when output_bfd
9638 is created (in ldlang.c). Also fix setting of EXEC_P flag
9639 * ldlang.c (ldlang_open_output): Set output_bfd->flags here.
9640 * ldlang.c: Remove some duplicate extern declarations.
9641 * ldgram.y: Fixes to -N and -n options.
9642 * Makefile.in: Recognize upper case letters in sed script
9643 to remove assignments from script files.
9644 * ldtemplate: Don't assukme that -N or -n options
9645 imply use of -r script.
9646 * mkscript.c: Tweaking to correctly handle \n and \\ in input.
9647
9648Fri Oct 11 10:29:27 1991 Steve Chamberlain (steve at cygnus.com)
9649
9650 * ldtemplate: include bfd.h before sysdep.h.
9651
9652Fri Oct 11 04:24:45 1991 John Gilmore (gnu at cygnus.com)
9653
9654 Restructure configuration scheme for bfd, binutils, ld.
9655
9656 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
9657 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
9658 Change some config names to match other dirs.
9659 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
9660 get defined first.
9661 * config/: Rename some config files to match up h-*.h names.
9662 Remove all the HOST_SYS definitions from the config files.
9663
9664Tue Oct 8 16:00:57 1991 Per Bothner (bothner at cygnus.com)
9665
9666 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
9667 * ldtemplate: Remove ldfile_add_library_path calls;
9668 just use the SEARCH_DIR commands in the script files.
9669 * Makefile.in: Add LIB_PATH macro, which if set is used to replace
9670 the SEARCH_DIR commands in the scripts (using ugly sed magic).
9671 This is primarily intended for cross-linking, where you would
9672 place libaries in a different place than native libraries.
9673 Also, emulations made from ldtemplate now use $(srcdir).
9674 * ldglda29k.sc: Change SEARCH_DIR commands to a conventional
9675 form; people can use the Makefile's LIB_PATH to override.
9676
9677Tue Oct 8 14:51:21 1991 Roland H. Pesch (pesch at cygnus.com)
9678
9679 * Makefile.in: fix target ld.dvi, add target ld.info
9680 ld.texinfo: make info filename ld.info
9681
9682Fri Oct 4 21:51:58 1991 John Gilmore (gnu at cygnus.com)
9683
9684 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun
9685 Make).
9686 * ldfile.c, ldlang.c, ldmain.c, ldwrite.c: Cope with renames of a
9687 few BFD types & enums.
9688
9689\f
9690Local Variables:
9691mode: change-log
9692left-margin: 8
9693fill-column: 74
9694version-control: never
9695End:
This page took 0.417552 seconds and 4 git commands to generate.