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