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