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