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