* ldgram.y (dirlist_ptr): Removed; not used.
[deliverable/binutils-gdb.git] / ld / ChangeLog
1 Fri Feb 25 19:12:03 1994 Ian Lance Taylor (ian@cygnus.com)
2
3 * ldgram.y (dirlist_ptr): Removed; not used.
4 * lexsup.c: Include ldver.h.
5 * Makefile.in: Rebuilt dependencies.
6
7 Fri Feb 25 18:55:54 1994 Ted Lemon (mellon@pepper.ncd.com)
8
9 * ldlang.c (lookup_name): don't call bfd_set_gp_size.
10 (ldlang_add_file): call it here instead.
11
12 Fri Feb 25 18:13:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
13
14 * ldgram.y: Include ldlex.h after %token decls, for byacc.
15
16 Fri Feb 25 10:47:25 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
17
18 * emultempl/hppaelf.em: First attempt to clean this file up.
19 Add comments in several functions as to their purpose and
20 how they function (or my current best guess). Clean up horrible
21 spacing and indention that never should have been accepted in the
22 first place. Add FIXMEs for issues which need to be resolved.
23 Disable linker-stub generation until it gets fixed. This allows
24 the linker to at least work on simple code for testing purposes.
25
26 * ldlang.c (lang_size_sections): No longer static (PA ELF calls
27 it via hppaelf_finish). Prototype moved into ldlang.h.
28 (lang_process): Move problematic extra call to lang_size_sections
29 into the PA ELF specific code.
30 * emultempl/hppaelf.em (hppaelf_finish): Extra call to
31 lang_size_sections moved here.
32
33 Thu Feb 24 16:47:33 1994 Ian Lance Taylor (ian@cygnus.com)
34
35 * configure.in (powerpc-*-elf*): New target; use ppc-elf32.
36 * config/ppc-elf32.mt: New file.
37 * emulparams/elf32ppc.sh: New file.
38 * emultempl/ppc.em: New file.
39 * Makefile.in (ALL_EMULATIONS): Added em_elf32ppc.o.
40 (em_elf32ppc.c): New target; uses elf32ppc.sh, ppc.em and elf.sc.
41 (EMULATION_OFILES): Added dependencies on ldexp.h and ldlang.h.
42
43 Thu Feb 24 12:27:07 1994 David J. Mackenzie (djm@rtl.cygnus.com)
44
45 * lexsup.c (parse_args): Use symbolic numbers for long options.
46 Fix misunderstanding in -Y and -call_shared et al.
47
48 Use getopt instead of lex and yacc to parse the command line.
49
50 * ld.texinfo (Options): Document changes to option syntax.
51 * Makefile.in: Update dependencies.
52 * ldver.c (help): Tweak dashes in usage message.
53 * ldgram.y (%union): Remove unused members.
54 Remove %tokens for command line options; add ones for input types.
55 (command_line): Rules removed.
56 (file): Instead of command line, recognize an
57 input type indicator, then use the nonterminal for that type.
58 (defsym_expr): New nonterminal from code formerly in command_line.
59 * ldlex.h: Declare parser input type enum and variable.
60 Don't declare parse_line.
61 * ldlex.l: Remove unused variables. Make some used ones static
62 and comment them.
63 (COMMAND): Start state and its rules removed.
64 At start of yylex, return input state token if at start of input.
65 (lex_redirect): Don't need to set yyout.
66 (ldlex_command): Function removed.
67 * ldmain.c (main): Instead of calling parse_line, set up the
68 redirections and call yyparse directly.
69 * ldmisc.c (vfinfo): If there's no input filename, print nothing, not
70 "command line".
71 * lexsup.c: Remove #if 0'd code.
72 (parse_line): Function removed.
73 (parse_args): Rewrite to use getopt_long_only.
74 (set_default_dirlist): New function from code formerly in
75 ldgram.y:command_line.
76 (set_section_start): New function.
77 * emultempl/generic.em, emultempl/gld960.em, emultempl/hppaelf.em,
78 emultempl/lnk960.em, emultempl/m88kbcs.em: Don't enclose
79 compiled-in link scripts in "{" and "}", as the grammar no longer
80 wants them to be.
81
82 Thu Feb 24 08:43:26 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
83
84 * Makefile.in (ld.dvi): Depend on configdoc.texi, but don't
85 require that it be in $(srcdir).
86
87 Tue Feb 22 09:21:18 1994 Ian Lance Taylor (ian@cygnus.com)
88
89 * ldlang.c (lang_size_sections): Only align section to alignment
90 required by linker script, not to maximum alignment of input
91 sections.
92
93 * ldlang.h (largest_section): Don't declare.
94 * ldlang.c (largest_section): Don't define.
95 (size_input_section): Don't set largest_section; not used.
96
97 Mon Feb 21 15:15:29 1994 Ian Lance Taylor (ian@cygnus.com)
98
99 * ldlang.c (new_afile): Pass NULL as last argument to concat.
100
101 Thu Feb 17 15:51:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
102
103 * ldlang.c, ldmain.c: Include libiberty.h.
104
105 * ldmisc.h (concat): Don't declare.
106 * ldmisc.c (concat): Don't define; just use the one in libiberty.
107
108 * ld.h (as_output_section_statement): Removed; not used.
109
110 Thu Feb 17 09:32:14 1994 David J. Mackenzie (djm@thepub.cygnus.com)
111
112 * ldlang.c, ldmain.c, ldmisc.c: Use bfd_get_error and
113 bfd_set_error and new error names.
114
115 Tue Feb 15 20:14:53 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
116
117 * ldwrite.c (build_link_order): If the cooked size of the section
118 has been set, use it, for determining link_order size.
119 (ldwrite): In the error message displayed if bfd_final_link fails,
120 indicate that it was in fact the final link step that failed.
121
122 * ldlang.c (lang_size_sections): Clear bfd_error before calling
123 bfd_relax_section, in case it returns false but doesn't flag an
124 error. If an error is returned, indicate which one it is in the
125 error message.
126
127 * Makefile.in (install-info): Depend on ld.info, and use "$<*" so
128 it'll get picked up from $(srcdir) if appropriate.
129
130 Tue Feb 15 16:32:04 1994 David J. Mackenzie (djm@rtl.cygnus.com)
131
132 * scripttempl/aout.sc: Only pad .text if PAD_TEXT is set.
133 * emulparams/i386mach.sh (PAD_TEXT): Set PAD_TEXT.
134
135 Fri Feb 11 17:02:49 1994 David J. Mackenzie (djm@thepub.cygnus.com)
136
137 * ldlex.l (comment): Increment line number when newline is read.
138
139 Fri Feb 11 17:36:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
140
141 * ldlang.c (lookup_name): Take new argument, force_load. If true,
142 reload the file even if it is already loaded.
143 (wild): Call lookup_name with force_load argument of 0.
144 (open_input_bfds): Call lookup_name with force_load argument of 1.
145 (print_symbol): Remove declaration of non-existent function.
146 (print_one_symbol): Return true rather than falling off end.
147
148 Thu Feb 10 11:52:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
149
150 * ldmain.c (main): Use %ld when printing long values.
151
152 * scripttempl/elf.sc: Move _edata after the .sdata section.
153 Permit OTHER_BSS_SYMBOLS to be defined.
154 * emulparams/elf32mipb.s (OTHER_BSS_SYMBOLS): Define _fbss.
155
156 Mon Feb 7 16:31:15 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
157
158 * Rename all "hppaosf" files to "hppaelf".
159 * Change all "osf" references to "elf" in hppaelf files.
160 * Makefile.in: Likewise.
161 * configure.in: Likewise.
162
163 Sun Feb 6 20:31:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
164
165 * ldmain.c (main): Call xatexit, not atexit.
166 Call xmalloc_set_program_name.
167
168 * ldlang.c (lang_size_sections): Check if bfd_relax_section set
169 bfd_errno.
170
171 Sat Feb 5 03:54:34 1994 David J. Mackenzie (djm@thepub.cygnus.com)
172
173 * emultempl/lnk960.em (append), emultempl/hppaosf.em
174 (hppaosf_finish): Call xmalloc, not ldmalloc.
175 * ldmain.c (preserve_output): Function removed.
176 (main): Do it here instead.
177
178 Fri Feb 4 23:02:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
179
180 * ldlang.h (LANG_FOR_EACH_{INPUT,OUTPUT}_SECTION): Delete (unused)
181 GNU C specific macros.
182
183 * emultempl/hppaosf.em (hppaosf_finish): Expand the only remaining
184 call to LANG_FOR_EACH_INPUT_SECTION.
185
186 Fri Feb 4 16:26:08 1994 David J. Mackenzie (djm@thepub.cygnus.com)
187
188 * ldmisc.c (ldmalloc, xmalloc, ldrealloc, xrealloc): Functions
189 deleted; will use libiberty versions instead.
190 * ldctor.c ldfile.c ldlang.c ldmain.c ldmisc.c ldmisc.h lexsup.c
191 mri.c Makefile.in: Change callers.
192
193 * ldmisc.c (vfinfo): Remove cleanup code.
194 * ldmain.c (remove_output): Put it here (new function).
195 (preserve_output): New function.
196 (main): Register remove_output and preserve_output with atexit.
197 * ldmain.c ldgram.y: Call xexit instead of exit.
198 * ldmisc.h: Declare xexit.
199
200 Fri Feb 4 15:19:01 1994 Steve Chamberlain (sac@cygnus.com)
201
202 * Makefile.in: Lots of new H8/500 memory models.
203
204 Sun Jan 30 14:33:40 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
205
206 * ldlex.l: Removed duplicate rules.
207 (yywrap): Provide default definition, needed with some versions of
208 flex.
209
210 Fri Jan 28 09:12:56 1994 David J. Mackenzie (djm@thepub.cygnus.com)
211
212 * ldmisc.c (vfinfo): For `%I', if the file is in an archive, print
213 the archive filename too.
214
215 * ldlex.l: Add rule to catch invalid input characters instead of
216 printing them. Include "ldmain.h" for program_name decl.
217 (lex_warn_invalid): New function.
218 * Makefile.in: Add dependency.
219
220 Fri Jan 28 12:58:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
221
222 * Makefile.in (check): Don't bother running any tests of
223 cross-linker until the test suite no longer assumes native mode.
224
225 Thu Jan 27 17:19:54 1994 Steve Chamberlain (sac@jonny.cygnus.com)
226
227 * ldlang.c (print_one_symbol, print_input_section): Print
228 global symbols in symbol table again.
229
230 Thu Jan 27 12:35:01 1994 David J. Mackenzie (djm@thepub.cygnus.com)
231
232 * ldmain.c ldmain.h ldgram.y: If -v -V or --version was given,
233 exit successfully instead of complaining if no input files are
234 given.
235
236 Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)
237
238 * Makefile.in: Format variable definitions consistently.
239 (LD_PROG): Remove unnecessary variables from link command,
240 change variable LOADLIBES to EXTRALIBS.
241
242 * ldmain.c (main): Compute and display total execution time.
243 * ld.texinfo (-stats): Document the option.
244
245 Mon Jan 24 12:56:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
246
247 * ldmain.c (reloc_overflow): Added name, reloc_name and addend
248 arguments.
249
250 * ldlang.c (lookup_name): Set BFD GP size to -G argument value
251 after opening BFD.
252
253 * ldlang.c (relaxing): Removed global variable.
254 (lang_size_sections): If the canonical symbols have not already
255 been read in, read them in before relaxing.
256 * ldlang.h (relaxing): Removed declaration.
257
258 Fri Jan 21 00:44:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
259
260 * ldlang.c (new_afile): Initialize loaded field to false.
261 (lookup_name): If file was already loaded, don't call the
262 add_symbols entry point again.
263
264 Wed Jan 19 13:57:00 1994 David J. Mackenzie (djm@thepub.cygnus.com)
265
266 * ld.texinfo: Clarify what -T option does.
267
268 Tue Jan 18 16:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
269
270 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that's
271 for a.out.
272
273 Fri Jan 14 12:37:16 1994 Ian Lance Taylor (ian@cygnus.com)
274
275 Motorola Delta sysV68 support from phdm@info.ucl.ac.BE (Philippe
276 De Muyter).
277 * configure.in (m68k-motorola-sysv*) New target.
278 * config/delta68.mt: New file.
279 * emulparams/delta68.sh: New file.
280 * scripttempl/delta68.sc: New file.
281 * Makefile.in (ALL_EMULATIONS): Added em_delta68.o.
282 (em_delta68.c): New target.
283
284 Tue Jan 11 13:22:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
285
286 * ldmain.c (add_archive_element): If trace_files or
287 trace_file_tries, print file name.
288 * ldlang.c (lookup_name): Likewise.
289 (ldlang_add_file): Don't put files on input_bfds list in reverse
290 order.
291
292 * scripttempl/elf.sc: Correct typo.
293
294 Mon Jan 10 19:49:05 1994 David J. Mackenzie (djm@thepub.cygnus.com)
295
296 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y and
297 their arguments optional, for compatibility with the old GNU ld.
298
299 Fri Jan 7 20:00:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
300
301 * scripttempl/elf.c: Define __bss_start before the .sbss section.
302
303 Thu Jan 6 00:13:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
304
305 * ldmain.c (add_to_set): Add bitsize argument.
306 (constructor_callback): New function.
307 (link_callbacks): Add constructor_callback.
308 * ldctor.c (struct set_info): Add bitsize field.
309 (ldctor_add_set_entry): Add bitsize argument.
310 (ldctor_build_sets): Base the size of the elements of the set on
311 the bitsize, rather than always using LONG.
312 * ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
313
314 * ld.h (QUAD_SIZE): Define.
315 * ldgram.y (QUAD): New token.
316 (length): Handle it.
317 * ldlex.l: Return QUAD.
318 * lexsup.c (keywords): Add QUAD.
319 * ldwrite.c (build_link_order): Handle QUAD.
320 * ldlang.c (print_data_statement): Handle QUAD.
321 (lang_size_sections): Likewise.
322 (lang_do_assignments): Likewise.
323 * ldexp.c (exp_print_token): Add QUAD to table.
324 * ld.texinfo: Describe QUAD.
325
326 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
327 since the Alpha doesn't use them.
328
329 Wed Jan 5 17:42:16 1994 David J. Mackenzie (djm@thepub.cygnus.com)
330
331 * ldemul.h (ld_emulation_xfer_struct): Comment the members.
332
333 Sat Jan 1 13:39:31 1994 Rob Savoye (rob@darkstar.cygnus.com)
334
335 * Makefile.in, configure.in: Add support for VSTa micro-kernel.
336 * config/vsta.mt, emulparams/vsta.sh: New files for VSTa.
337
338 Sat Jan 1 10:53:35 1994 David J. Mackenzie (djm@thepub.cygnus.com)
339
340 * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
341 needed for i386mach. (Should be a no-op on other systems.)
342
343 * emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
344 (PAGE_SIZE): Don't define; not used.
345
346 Fri Dec 31 16:12:06 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
347
348 * ldgram.y (yyerror): Make argument const char *, and actually
349 print it out rather than assuming it is a syntax error.
350 * ldmisc.h: Change declaration of yyerror.
351 * ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
352
353 Fri Dec 31 11:37:28 1993 David J. Mackenzie (djm@thepub.cygnus.com)
354
355 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
356 exec header offset, since the exec header isn't loaded.
357 (PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
358
359 Thu Dec 30 13:01:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
360
361 A major rewrite to move the bulk of the linker into BFD so that
362 more efficient backend code can be written for specific object
363 files.
364 * lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
365 ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
366 * ldctor.c, ldctor.h: Complete rewrite.
367 * ldwrite.c, ldwrite.h: Complete rewrite.
368 * ld.h (strip_symbols_type, strip_symbols): Removed. Use
369 link_info.strip instead. Changed all uses.
370 (discard_locals_type, discard_locals): Removed. Use
371 link_info.discard instead. Changed all uses.
372 (ld_config_type): Removed relocateable_output field; use
373 link_info.relocateable instead; changed all uses. Added stats
374 field.
375 (set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
376 set_loader_symbol): Removed.
377 * ldexp.h (node_class): Added etree_rel.
378 (etree_type): Added rel field.
379 * ldexp.c (exp_print_token): Bracketed table initialization.
380 (exp_relop): New function.
381 (fold_name): Use linker hash table rather than ldsym functions.
382 (exp_fold_tree): Likewise. Also, handle etree_rel case.
383 (exp_print_tree): Handle etree_rel.
384 * ldgram.y (strip_symbols, discard_locals): Removed.
385 (OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them.
386 (REL): New token. Does not appear in grammar, but needed for
387 expression code.
388 (file): Don't call lang_final; it's called by main anyhow.
389 * ldlex.l: Accept -stats and -no-keep-memory options.
390 * ldlang.h (fill_type): Make unsigned int, not unsigned short.
391 * ldlang.c: Consistently use fill_type for fill argument.
392 (lang_init_script_file, script_file): Removed.
393 (create_object_symbols): Removed. Use
394 link_info.create_object_symbols_section instead. Changed all
395 uses.
396 (lang_add_keepsyms_file): Removed.
397 (lookup_name): Call bfd_link_add_symbols instead of
398 ldmain_open_file_read_symbol.
399 (wild): Don't iterate over script_file.
400 (open_output): Create link hash table.
401 (lang_place_undefineds): Rewrote.
402 (lang_size_sections): Handle relaxing (doesn't work yet).
403 (lang_relocate_globals): Removed.
404 (lang_finish): Use link hash table rather than ldsym functions.
405 (lang_common): Rewrote.
406 (lang_one_common): New function.
407 (ldlang_add_file): Add file to link_info.input_bfds list. Set
408 usrdata.
409 (create_symbol): Removed.
410 (lang_process): Don't call lang_init_script_file. Call
411 ldctor_build_sets rather than find_constructors. Don't call
412 lang_relocate_globals.
413 (lang_abs_symbol_at_beginning_of): Rewrote.
414 (lang_abs_symbol_at_end_of): Rewrote.
415 * ldmain.c (had_y): Removed.
416 (lprefix, lprefix_len): Removed; use link_info fields instead.
417 Changed all uses.
418 (multiple_def_count, commons_pending, undefined_global_sym_count,
419 total_symbols_seen, total_files_seen): Removed.
420 (link_callbacks, link_info): New variables.
421 (main): Initialize link_info. Don't call init_bfd_error_vector or
422 ldsym_init. Don't set now unused variables. Handle -stats.
423 (get_emulation): Removed obsolete and nonfunctional GNU960 code.
424 (add_ysym): Rewrote.
425 (read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
426 search_library, gnu960_check_format, decode_library_subfile,
427 linear_library, symdef_library, clear_syms, subfile_wanted_p):
428 Removed.
429 (add_keepsyms_file, add_archive_element, multiple_definition,
430 multiple_common, add_to_set, warning_callback, undefined_symbol,
431 reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
432 New functions.
433 * ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't
434 require symbols for %C; look them up instead.
435 * emultempl/hppaosf.em: Pass link_info to
436 hppa_look_for_stubs_in_section.
437 * Makefile.in: Rebuilt dependencies.
438 (CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
439 relax.c.
440 (HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
441 relax.h.
442 (EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
443 ldlang.h and ldctor.h.
444
445 * Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove
446 declarations of free and malloc from flex output. Change malloc
447 to ldmalloc in flex output.
448
449 Thu Dec 16 21:19:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
450
451 * ldmain.c (lprefix): Change default from a char to a string
452 with only one character.
453 (lprefix_len): Set default to one.
454
455 * ldmain.h (lprefix_len): Declare.
456
457 * ldsym.c (write_file_locals): Use strncmp rather than a character
458 comparison for lprefix.
459
460 * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len
461 correctly.
462
463 * emultmpl/hppaosf.em: Include ldexp.h.
464 (before_parse): Set lprefix and lprefix_len correctly.
465
466 Tue Dec 14 17:19:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
467
468 * ldlex.h: Don't declare yywrap if it is a macro.
469 * ldlex.l: Include sysdep.h.
470 * ldlang.c (lang_for_each_statement_worker,
471 lang_for_each_statement): Forgot to use PARAMS.
472
473 Mon Dec 13 14:30:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
474
475 * Makefile.in: Added .PHONY targets where appropriate. Added some
476 comments. Also:
477 (gcclibdir, version): Removed unused variables.
478 (DEP): New variable, set to mkdep.
479 (ALL_CFLAGS): New variable. Used in .c.o target.
480 (CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New
481 variables.
482 (HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES,
483 GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed
484 mostly obsolete variables. Adjusted remaining uses.
485 (DEF_EMUL): Removed variable.
486 (ldmain.o): Handle undefined EMUL error correctly.
487 (ldemul-list.h): Depend on config.status rather than Makefile.
488 Create via temporary file.
489 (ver960.c, roll, make): Removed obsolete targets.
490 (.dep, .dep1, dep.sed, dep, dep-in): New targets. Used to rebuild
491 dependencies.
492 * dep-in.sed: New file, used when rebuilding dependencies.
493
494 Sat Dec 11 14:43:44 1993 Ian Lance Taylor (ian@deneb.cygnus.com)
495
496 Made many changes to eliminate gcc warnings. Made various
497 cosmetic changes, declared various things in header files, removed
498 various extern declarations from .c files. No substantive
499 changes.
500
501 * ldlang.c (lang_process): Ifdef out final call to
502 lang_size_sections again (reverting change of Nove 2), since it
503 breaks the Sun4 linker.
504
505 Thu Dec 2 16:31:47 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
506
507 * configure.in (alpha-*-netware*): New target; use alpha.
508
509 Wed Dec 1 14:04:20 1993 Ken Raeburn (raeburn@cygnus.com)
510
511 * configure.in: Group targets by CPU. Merge some m68k target
512 entries with different CPU specs that use the same ld_target
513 values.
514
515 * configure.in: Add sparc*-*-coff.
516 * config/coff-sparc.mt, emulparams/coff_sparc.sh: New files.
517 * Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o.
518 (em_coff_sparc.c): Add dependencies and build rules.
519
520 * ldmisc.c (errno, sys_nerr, sys_errlist): Don't declare.
521
522 Wed Dec 1 12:19:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
523
524 * ldgram.y (OPTION_call_shared, OPTION_non_shared, OPTION_Oval):
525 New tokens.
526 (command_line_option): Accept and ignore them (for now).
527 * ldlex.l (<COMMAND>): Handle -non_shared, -call_shared, and -On
528 where n is a number.
529
530 Mon Nov 22 14:14:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
531
532 * ldmain.c (subfile_wanted_p): If merging a common symbol which is
533 not in bfd_com_section, create the section in the BFD so that it
534 can be placed in the right output section.
535
536 Fri Nov 19 14:12:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
537
538 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.
539 * emulparams/elf32mipsb.sh (DATA_ADDR): Define.
540 (OTHER_READONLY_SECTIONS): Define for .reginfo.
541 (EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK.
542 * scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating.
543 Move OTHER_READONLY_SECTIONS after all the other readonly
544 sections. Don't use DATA_ADDR twice.
545
546 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. If
547 p is in a common section, make sure the BFD has a section of that
548 name.
549
550 * ldlang.c (lang_common): Add newline to error message.
551
552 Thu Nov 11 15:54:41 1993 Stan Shebs (shebs@rtl.cygnus.com)
553
554 * emulparams/m68klynx.sh (SCRIPT_NAME): Define to use a
555 Lynx-specific script instead of m68kcoff.
556 (OUTPUT_FORMAT): Define as "coff-m68k-lynx".
557 (ENTRY): Define as __main.
558 (TEXT_START_ADDR): Define as 0.
559 (PAGE_SIZE): Define as 0x1000.
560 * emulparams/i386lynx.sh, emulparams/sparclynx.sh: Fix comment.
561 * scripttempl/m68klynx.sc: New file.
562
563 Mon Nov 8 12:00:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
564
565 * ldmain.c (get_emulation): Ignore -mips1, -mips2 and -mips3
566 arguments rather than treating them as emulation names.
567
568 Fri Nov 5 09:02:52 1993 D. V. Henkel-Wallace (gumby@blues.cygnus.com)
569
570 * configure.in: Support x86 unixware and netware plus generic netware.
571
572 Fri Nov 5 21:47:55 1993 David J. Mackenzie (djm@thepub.cygnus.com)
573
574 * emulparams/i386mach.sh (TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR):
575 Correct values (?).
576
577 Wed Nov 3 15:10:15 1993 Ken Raeburn (raeburn@rover.cygnus.com)
578
579 * Makefile.in (distclean): Don't delete dvi or info files.
580 (ld.info): Update dependency list.
581 (ld.dvi): Ditto. Extend TEXINPUTS to get bfdsumm.texi.
582
583 Wed Nov 3 12:07:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
584
585 * ldlang.c (lang_add_output): Take new arg, FROM_SCRIPT.
586 Set output_filename instead of creating a new node.
587 (open_output): Don't set output_filename.
588 (lang_final): Create the new node here.
589 * ldlang.c, ldlang.h, ldgram.y, mri.c: pass FROM_SCRIPT.
590
591 Tue Nov 2 15:45:51 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
592
593 From Pete Hoogenboom (hoogen@cs.utah.edu):
594
595 * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,
596 edata, _edata, end): Add definitions of these symbols.
597 (__end): Remove definition of this symbol.
598 (__data_start): Move definition of this symbol.
599
600 * emultempl/hppaosf.em: Various fixes and support for linker stub
601 generation.
602 (hppaosf_finish, hppaosf_search_for_padding_statements,
603 hppaosf_create_output_section_statements): New functions in
604 support of linker stub generation.
605 (ld_hppaosf_emulation): Redefine to include new
606 emulation-specific routines.
607
608 * ldlang.c (lang_process): Re-enable last call lang_size_sections.
609 Pass abs_output_section rather than NULL to avoid invalidating
610 absolute symbols.
611
612 Thu Oct 28 21:16:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
613
614 * Makefile.in (ALL_EMULATIONS): Add em_i386mach.o.
615 (em_i386mach.c): New rule.
616 * configure.in (i[34]86-*-mach*): New case.
617 * config/i386-mach.mt: New file.
618 * emulparams/i386mach.sh: New file.
619
620 Fri Oct 29 14:55:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
621
622 * ld.h (flag_is_*): Removed macros.
623 * ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
624 Consistently check the BFD symbol flags directly, rather than
625 using file_is_* macros.
626
627 Thu Oct 28 19:08:42 1993 Stan Shebs (shebs@rtl.cygnus.com)
628
629 * configure.in (sparc*-*-lynxos*): New target.
630 * Makefile.in: Add rule for em_sparclynx.c.
631 (ALL_EMULATIONS): Add Lynx emulations.
632 * config/sparc-lynx.mt: New file.
633 * emulparams/sparclynx.sh: New file.
634 * scripttempl/sparccoff.sc: New file.
635
636 Thu Oct 28 13:50:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
637
638 * Makefile.in: Add dependency for $(EMULATION_OFILES).
639
640 Mon Oct 25 16:09:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
641
642 * relax.c (write_relax): Check return value of bfd_seclet_link.
643
644 Mon Oct 25 09:31:21 1993 Ken Raeburn (raeburn@cygnus.com)
645
646 * ldlang.c (delete_output_file_on_failure): New variable.
647 (open_output): Set it after bfd open succeeds.
648 * ldmisc.c (vfinfo): Test it.
649
650 Changes from Peter Hoogenboom, hoogen@cs.utah.edu:
651
652 * ldsym.c (write_file_locals): Set the BSF_FILE flag for object
653 symbols.
654
655 * ldemul.c: Support was added to allow emulation-specific
656 processing to occur. This support was added primarily for linker
657 stub generation in the elf32-hppa gld.
658 (ldemul_finish, ldemul_create_output_section_statements): New
659 functions.
660 * ldemul.h: Support was added to allow emulation-specific
661 processing to occur. (As described above.) Added finish and
662 create_output_section_statements fields to
663 ld_emulation_xfer_struct structure.
664 * ldlang.c: Add calls to emulation-specific routines.
665 (lang_process): Add call to
666 ldemul_create_output_section_statements function.
667 (lang_process): Add call to a emulation-specific routine (and
668 some processing after the call).
669
670 Fri Oct 22 20:54:13 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
671
672 * configure.in: mips*- instead of mips-, mips*el changes
673
674 Tue Oct 19 15:46:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
675
676 * configure.in (alpha-*-osf*): New target; use alpha.mt.
677 * Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
678 (em_alpha.c): New target; use alpha.sh and alpha.sc.
679 * config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
680 * config/alpha.mt: New file.
681 * emulparams/alpha.sh: New file.
682 * scripttempl/alpha.sc: New file.
683
684 Fri Oct 15 02:20:04 1993 Doug Evans (dje@canuck.cygnus.com)
685
686 * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
687 types of different sizes (eg: 64 and 32 bits), so coerce.
688 * ld.h (ALIGN_N): Add warning about usage.
689
690 Wed Oct 13 16:02:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
691
692 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
693 which we already have a definition, rather than checking in
694 several different places whether the symbol is weak.
695
696 Tue Oct 12 17:30:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
697
698 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
699 * scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
700 OTHER_READWRITE_SECTIONS if relocating. Shell variables are not
701 expanded within them.
702 * config/mipsb-elf32.mt: New file.
703 * emulparams/elf32mipb.sh: New file.
704 * Makefile.in (em_elf32mipb.c): New target.
705
706 Thu Sep 30 17:00:36 1993 Rob Savoye (rob@darkstar.cygnus.com)
707
708 * ldgram.y: In input_list, change lang_input_file_is_file_enum to
709 lang_input_file_is_search_file_enum so objects brought in using
710 INPUT() do a path lookup.
711
712 Tue Sep 28 13:31:23 1993 Stan Shebs (shebs@rtl.cygnus.com)
713
714 * configure.in: Change Lynx ld_target to be {i386,m68k}-lynx
715 instead of {i386,m68k}-coff.
716 * Makefile.in (em_i386lynx.c, em_m68klynx.c): New targets.
717 * config/i386-lynx.mt: New file.
718 * config/m68k-lynx.mt: New file.
719 * emulparams/i386lynx.sh: New file.
720 * emulparams/m68klynx.sh: New file.
721
722 * scripttempl/i386coff.sc: Make ENTRY get its value from ${ENTRY},
723 but defaulting to _start.
724
725 * ldemul.c, ldfile.c, ldlang.c, ldmain.c, ldmisc.c, ldmisc.h,
726 ldsym.c, ldwarn.c: Rename info to info_msg, to avoid conflict with
727 LynxOS libc.
728
729 Thu Sep 23 14:51:03 1993 Ian Lance Taylor (ian@cygnus.com)
730
731 * config/solaris2.mh: New file. Define HOSTING_CRT0 and
732 HOSTING_LIBS for testing.
733
734 Fri Sep 17 17:52:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
735
736 Finish up support for i386-sysv4 (without shared libraries):
737 * ld.h (flag_is_weak): Define.
738 * ldlang.c (print_symbol): Mention whether symbol is weak.
739 (print_input_section): Print weak symbols as globals.
740 * ldmain.c (refize): Do not zero out BSF_WEAK flag.
741 (enter_global_ref): Do not warn if a weak symbol redefines a
742 global symbol. Do not let a weak symbol redefine a common symbol.
743 (enter_file_symbols): Treat weak symbols as global symbols.
744 (subfile_wanted_p): Do not pull in an object file from a archive
745 just to resolve an undefined weak symbol.
746 * ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
747 error; the error might be that malloc has run out of space.
748 * ldsym.c (write_file_locals): Treat weak symbols as global.
749 * configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
750 use i386-elf.
751 * config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
752 * config/i386-elf.mt: New file; set EMUL to elf_i386.
753 * emulparams/elf_i386.sh: New file.
754 * scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
755 * Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
756 (ALL_EMULATIONS): Add em_elf_i386.o.
757 (GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
758 (em_elf_i386.c): New target, like other em_*.c targets.
759 ($(LD_PROG)): Pass $(CFLAGS) to $(CC).
760 * genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument. If
761 nonempty, and configured for native, add it to LIB_PATH.
762
763 Fri Sep 17 13:07:39 1993 Stan Shebs (shebs@rtl.cygnus.com)
764
765 * scripttempl/{h8300.sc,h8500.sc,i386coff.sc,m68kcoff.sc,sh.sc}:
766 Added statements to pass stab and stabstr sections through and
767 mark them as NOLOAD, which makes GDB happier.
768
769 Wed Sep 15 16:02:29 1993 Stan Shebs (shebs@rtl.cygnus.com)
770
771 * configure.in: Accept m68k-lynx-lynxos config.
772
773 * Makefile.in: Use $(SHELL) to run genscripts.sh.
774
775 Sun Sep 12 16:04:40 1993 Doug Evans (dje@cygnus.com)
776
777 * config/coff-h8300.mt: Add EMUL=h8300h.
778
779 * ldmain.c (main): Call set_scripts_dir after argv has been processed.
780
781 Fri Sep 10 09:36:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
782
783 * Makefile.in: Changed CXX back to g++.
784
785 Fri Sep 10 09:34:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
786
787 * Makefile.in: Fixed RUNTEST* CXX CXXFLAGS macros and check rule.
788
789 Fri Sep 10 07:26:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
790
791 * Makefile.in (TAGS): Use shell wildcards.
792
793 Tue Sep 7 18:04:54 1993 Jeffrey Osier (jeffrey@cygnus.com)
794
795 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target
796
797 Fri Sep 3 16:46:41 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
798
799 * ld.texinfo: re-enable included config file; conditionalize doc
800 for -oformat to interact properly with SingleFormat doc config
801 var; rename @up/@down to @raisesections/@lowersections.
802
803 Wed Aug 25 16:29:56 1993 K. Richard Pixley (rich@sendai.cygnus.com)
804
805 * configure.in: recognize m88110.
806
807 Tue Aug 24 18:49:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
808
809 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
810 * emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
811 ELF emulation is "elf32-hppa" not "elf-big".
812 (hppaosf_before_parse): Remove unneeded processing of environment
813 variables.
814 * scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
815 .text segment of output file.
816 * emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
817
818 Tue Aug 24 16:17:00 1993 K. Richard Pixley (rich@sendai.cygnus.com)
819
820 * ld.h: define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no
821 longer in bfd.h.
822
823 * ldlang.c, ld.h: updated copyright.
824
825 Tue Aug 17 15:22:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
826
827 * ldlang.c (open_output, lang_check): Check return value of
828 bfd_set_arch_mach.
829
830 Tue Aug 17 07:02:19 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
831
832 * scripttempl/h8500.sc: Start all sections in a different segment.
833 * scripttempl/z8ksim.sc: Handle constructors
834
835 Thu Aug 12 16:05:37 1993 Jeffrey Wheat (cassidy@cygnus.com)
836
837 * Makefile.in: revert earlier changes back to execute runtest
838 with make check. cdtest and bootstrap now function as they
839 did within the Makefile.
840
841 Thu Aug 12 10:20:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
842
843 * Makefile.in: Update dependencies.
844
845 * configure.in: Set EMULATION_OFILES in Makefile based on
846 --with-targets option.
847
848 Thu Aug 12 08:52:29 1993 Jeffrey Wheat (cassidy@cygnus.com)
849
850 * Makefile.in: check targets reimplemented to old way.
851
852 Wed Aug 11 08:26:11 1993 Ian Lance Taylor (ian@cygnus.com)
853
854 * config/i386v.mh, config/irix4.mh: Use gcc
855 -print-libgcc-file-name rather than $(libdir)/libgcc.a.
856 * config/i386sco.mh: New file; copy of i386v.mh to correspond to
857 bfd/configure.host change.
858
859 Mon Aug 9 14:25:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
860
861 * scripttempl/elf.sc: Handle .line and .debug* sections.
862
863 * ldlex.l: Use bfd_scan_vma, not strtoul.
864
865 Fri Aug 6 08:57:39 1993 David J. Mackenzie (djm@thepub.cygnus.com)
866
867 * ldexp.c, ldfile.c, ldlang.c, lexsup.c, ldmain.c, ldemul.c:
868 Remove inital caps in some error messages, change "can't" to
869 "cannot", add missing colons.
870 * ldmisc.c (vfinfo): Print "%%" as a single %.
871 For '%' followed by unrecognized character, print them both
872 verbatim instead of expecting a char * arg.
873 For '%C', don't put the function name in parens.
874
875 * ldexp.c (invalid): Pass "%%", not "% ".
876
877 Fri Aug 6 14:31:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
878
879 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
880 (BSS_VAR): Removed; now always define _fbss.
881 * emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
882 Removed.
883
884 Thu Aug 5 15:55:19 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
885
886 * configure.in: z8k-coff is the same as z8k-sim
887
888 Wed Aug 4 21:00:18 1993 Jeffrey Wheat (cassidy@cygnus.com)
889
890 * testsuite/lib/ld.exp: new file
891 * testsuite/config/unix-ld.exp: new file
892 * testsuite/ld.bootstrap/bootstrap.exp: new file
893 * Makefile.in: add dejagnu support for make check
894
895 Wed Aug 4 17:52:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
896
897 * ldlex.l (comment): Add missing newline in message.
898 * ldindr.c (add_indirect): Ditto.
899 * ldexp.c (exp_fold_tree): Ditto.
900
901 Tue Aug 3 10:57:41 1993 David J. Mackenzie (djm@thepub.cygnus.com)
902
903 * ldgram.y, ldlex.l, mri.c, ldwrite.c: Change multiple commons
904 into externs.
905
906 * ldmisc.c (multiple_warn): New function.
907 * ldmisc.h: Declare it.
908 * ldmain.c (enter_global_ref): Call it.
909 * ld.h (ld_config_type): Add warn_common.
910 * ldlex.l, ldgram.y: Set it with -warn-common option.
911 * ldver.c (help): Document it.
912
913 Mon Aug 2 12:04:36 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
914
915 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
916 target-specific sections, and for changing data section vma.
917
918 Mon Jul 26 14:00:02 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
919
920 * ldgram.y (OPTION_Qy, OPTION_Y, OPTION_dn, OPTION_YP): New
921 terminals, for Solaris.
922 (dirlist_ptr): New static variable.
923 (command_line_option): Accept new options.
924
925 * ldlex.l: Accept command-line options "-Qy", "-dn", "-Y", and
926 "-YP,...".
927
928 * config/sun4sol2.mt: Pass emulation name without ".sh".
929
930 * emulparams/elf32_sparc.c: Renamed from elf32-sparc.c.
931 * config/sun4sol2.mt (em_elf32_sparc.c): Adjusted accordingly.
932
933 Fri Jul 23 13:51:09 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
934
935 * scripttempl/elf.sc: Add support for .init, .fini, .ctors,
936 .dtors, .data1, .rodata1 sections, instead of combining them into
937 other sections. For `-r', set all section start addresses to
938 zero.
939
940 * emulparams/elf32-sparc.sh (TEXT_START_ADDR,
941 NONPAGED_TEXT_START_ADDR): Value should be 0x10100.
942 (MAXPAGESIZE): Renamed from PAGE_SIZE.
943
944 Wed Jul 21 14:28:42 1993 David J. Mackenzie (djm@thepub.cygnus.com)
945
946 * genscripts.sh: If this is the default emulation, set
947 COMPILE_IN.
948 * emultempl/*.em: Use it to determine whether to compile in the
949 scripts.
950
951 * Makefile.in (GENSCRIPTS): Pass the default emulation name to
952 genscripts.sh. Pass the current emulation name without ".sh" on
953 the end.
954 * genscripts.sh: Take an default emulation arg.
955 Use the current emulation name as EMULATION_NAME.
956 Make default lib path for cross-compiling ':', not null.
957 * emulparams/*.sh: Don't set EMULATION_NAME.
958 * ldemul.c (ldemul_get_script): Take isfile arg.
959 Pass it to emulation's get_script function.
960 * ldemul.h: Adjust get_script prototypes.
961 * ldfile.c (ldfile_find_command_file): Renamed from find_a_name.
962 No longer static.
963 * ldfile.h: Declare it.
964 * ldgram.y: Accept a script on the command line again,
965 for parsing compiled-in scripts.
966 * ldmain.c (main): If ld script is a file, parse it as a -T
967 option, otherwise parse it directly.
968 * emultempl/*.em (*get_script): Return the scripts themselves if
969 this is the default emulation; otherwise return their file names.
970 * emultempl/m88kbcs.em: New file, to take m88kbcs #ifdef out of
971 generic.em.
972 * emulparams/m88kbcs.sh: Use it.
973
974 * ld.h (ld_config_type::unix_relocate): Remove unused element.
975
976 Tue Jul 20 12:01:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
977
978 * Makefile.in (ALL_EMULATIONS): Delete em_i386linux.o (for which
979 there's no change log entry yet, tsk tsk) from the list of
980 emulations compiled in until Mark gets around to checking in
981 emulparams/i386linux.sh.
982 (ldemul-list.h): Depend on Makefile, so if EMULATION_OFILES is
983 changed, this file gets updated.
984
985 Fri Jul 16 14:14:32 1993 Ian Lance Taylor (ian@cygnus.com)
986
987 * ldgram.y (OPTION_Lfile): New token.
988 (command_line_option): Accept OPTION_L NAME (whitespace after -L).
989 * ldlex.l (<COMMAND>): Accept -L without FILENAME.
990
991 Fri Jul 16 13:44:26 1993 Doug Evans (dje@canuck.cygnus.com)
992
993 * configure.in: h8/300h support needs own .mt file.
994 config/coff-h8300h.mt: New file.
995
996 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
997
998 * ldmain.c: Don't include sys/stat.h; it already got included
999 somewhere along the way.
1000
1001 Thu Jul 15 14:43:34 1993 Doug Evans (dje@canuck.cygnus.com)
1002
1003 * Makefile.in: Add h8300h support.
1004 emulparams/h8300h.sh: New file.
1005 scripttempl/h8300h.sc: New file.
1006
1007 Thu Jul 15 12:44:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1008
1009 * ldfile.c (ldfile_open_file): In error message, use the name the
1010 user gave (e.g., "-lc"), rather than the base file name.
1011
1012 * ldexp.c (exp_fold_tree): Don't assign an int to an enum.
1013
1014 * ldmain.[ch]: Remove initial Q_ from function names.
1015 * ldexp.c, ldindr.c, ldlang.c: Change callers.
1016
1017 * ldfile.c, ldmain.c, ldgram.y: Rename option_v to trace_file_tries.
1018
1019 * ldlang.c (lang_process): Move loading of default script from
1020 here to main. Add a "/" to start of script name to prevent
1021 finding it in "." first.
1022
1023 * ldmain.c (set_scripts_dir): Don't look in "." first.
1024
1025 * ldgram.y, ldlang.c, ldsym.c: Remove traces of unused var
1026 option_longmap.
1027
1028 Thu Jul 15 10:55:59 1993 Ian Lance Taylor (ian@cygnus.com)
1029
1030 * Makefile.in (em_m88kbcs.c): Correct dependency.
1031 * scripttempl/m88kbcs.sc: It's ARCH, not arch. Removed TARGET
1032 statement. Changed OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
1033 * emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
1034
1035 Wed Jul 14 21:42:53 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1036
1037 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
1038 main.c (main): Print the errno string in the error message.
1039
1040 Tue Jul 13 20:00:30 1993 Doug Evans (dje@canuck.cygnus.com)
1041
1042 * configure.in: Accept h8300h for target cpu.
1043
1044 * ldmisc.c (vfinfo): Have demangle remove leading underscore if
1045 present (demangle is smart enough to know whether to do it or not).
1046
1047 Mon Jul 12 11:45:48 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1048
1049 * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
1050 ldscripts, as well as <ld bin dir> and SCRIPTDIR.
1051
1052 * ldlang.c (lang_process): Use sizeof instead of magic constant.
1053
1054 * ldmain.c (get_emulation, check_for_scripts_dir,
1055 set_scripts_dir): New functions.
1056 (main): Call them.
1057
1058 Mon Jul 12 10:57:03 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
1059
1060 * scripttempl/elf.sc: Include .init, .fini, .rodata sections.
1061 Create symbol "end" instead of "__end". Comment out some parts
1062 that may not be needed (yet) for elf.
1063
1064 * configure.in: Accept sparc-elf and sparc-solaris2 configs.
1065
1066 Thu Jul 8 15:33:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1067
1068 * Makefile.in (ALL_EMULATIONS): Include $(OTHER_EMULATIONS).
1069
1070 * ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro
1071 when no prototype is being supplied.
1072 (ldmalloc, ldrealloc): Size argument is now size_t.
1073
1074 * ldmisc.c (finfo): New function, accepts FILE* argument.
1075 (vfinfo, case 'v'): New format character; displays bfd_vma in hex
1076 without leading zeros.
1077 (vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a
1078 bfd_vma value, instead of fprintf(%x) which won't hold a long long
1079 value.
1080 (concat, buystring): String lengths are size_t.
1081 (ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
1082
1083 * ldlang.c (new_statement): Size argument is now size_t. Added
1084 forward declaration with prototype.
1085
1086 Thu Jul 8 10:53:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1087
1088 * ldgram.y (OPTION_v): Don't turn on verbose output.
1089
1090 Wed Jul 7 17:10:45 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1091
1092 * ldlex.l: Get rid of local typedef for bfd_vma! Get it from
1093 bfd.h instead.
1094
1095 Wed Jul 7 11:33:12 1993 Ian Lance Taylor (ian@cygnus.com)
1096
1097 * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
1098 collect2 doesn't look for gld any more anyhow.
1099
1100 Mon Jul 5 14:29:48 1993 Ian Lance Taylor (ian@cygnus.com)
1101
1102 * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
1103 now have a non NULL srefs_chain.
1104
1105 * config/hp300hpux.mt: Use emulation hp3hpux rather than
1106 hp300hpux, since the latter does not exist.
1107
1108 Fri Jul 2 18:06:05 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1109
1110 * genscripts.sh: Put the scripts in the ldscripts directory, not
1111 emulations.
1112 * configure.in (ldscripts): Make, instead of emulations.
1113 * Makefile.in (scriptdir): Take off the "ld" part.
1114 (install, clean, distclean): Use ldscripts, not emulations.
1115 In tests, don't pass -Lemulations.
1116 Don't pass tooldir/lib to genscripts.sh.
1117 * genscripts.sh: Don't take tooldir/lib arg.
1118 * ldlang.c (lang_process): Add "ldscripts/" to the name of the
1119 default script file.
1120
1121 Fri Jul 2 17:13:35 1993 Doug Evans (dje@canuck.cygnus.com)
1122
1123 * scripttempl/h8300.sc: Add .tors section for constructor/destructors.
1124
1125 Thu Jul 1 16:38:45 1993 Doug Evans (dje@canuck.cygnus.com)
1126
1127 * config/coff-h8300.mt: EMUL=h8300hms -> h8300.
1128
1129 Wed Jun 30 15:45:55 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1130
1131 * Makefile.in (.y.c): skip default .y.c rules. gnu make can now
1132 run in parallel without colliding on yacc's static file names.
1133 Without the stub rule, make will try to start two yacc's
1134 concurrently which fails because of yacc's static file names.
1135
1136 Tue Jun 29 12:20:36 1993 Ian Lance Taylor (ian@cygnus.com)
1137
1138 * ldmain.c (subfile_wanted_p): Don't dump core if there are no
1139 symbols.
1140
1141 Mon Jun 28 12:22:11 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1142
1143 * genscripts.sh (LIB_PATH): Only add /usr/local/lib if it's
1144 different from libdir.
1145
1146 * Makefile.in (scriptdir): Base on tooldir, not datadir.
1147
1148 Sat Jun 26 12:03:57 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1149
1150 * ldver.c (help): New function.
1151 * ldver.h: Declare it.
1152 * ldlex.l, ldgram.y: Recognize new options --help and --version.
1153
1154 Mon Jun 21 20:39:48 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
1155
1156 * Makefile.in (INCLUDES): Don't need ../include any more.
1157
1158 Mon Jun 21 16:38:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1159
1160 * ldlex.l, ldgram.y: Support new -oformat option.
1161 Remove attempt at supporting script fragments on the command line.
1162 * ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
1163 * mri.c (mri_format), ldgram.y: Change callers.
1164 * ldlang.h: Change prototype.
1165
1166 Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
1167
1168 * Makefile.in: canonicalize install.sh; for use within
1169 this directory (and subdirs)
1170
1171 Thu Jun 17 14:33:09 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1172
1173 * ldgram.y: Tweak grammar to make reporting of invalid options work.
1174
1175 * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
1176 and .cc.o rule.
1177
1178 Wed Jun 16 11:45:32 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1179
1180 * ldfile.c (ldfile_open_command): Don't try .ld extension.
1181 It wasn't documented (or likely used) and wastes time.
1182 (try_open): If EXTEN is empty, don't try it.
1183
1184 * ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
1185 ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
1186 ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
1187 with normal function declarations.
1188
1189 * Move *.em to emultempl/*.em. Move *.sh to emulparams/*.sh.
1190 Move *.sc-sh to scripttempl/*.sc.
1191 * {emultempl,emulparams,scripttempl}/README: New files.
1192 * sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
1193 removed, replaced with generic.em.
1194 * h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
1195 h8[35]00hms.s[ch]. Change their contents to omit the "hms".
1196
1197 * *.em (*_get_script): Return script name instead of script contents.
1198 * ldlang.c (lang_process): Change caller.
1199
1200 * ldlex.l, ldgram.y: Recognize -m option.
1201 Check for input files after *all* options in grammar.
1202 * ldmain.c (main): Check for -m options. Add default directory
1203 for -m.
1204
1205 * mkscript.c: File removed.
1206 * genscripts.sh: Take two more parameters, tooldirlib and libdir,
1207 to add to the default LIB_PATH.
1208 Look for input files in the new subdirectories.
1209 Create the scripts in emulations subdirectory and don't filter
1210 them through mkscript.
1211 * configure.in: Make the emulations subdirectory.
1212
1213 * Makefile.in: Account for all of the above changes.
1214 Remove unused .SUFFIXES. Get libgcc.a path with gcc
1215 -print-libgcc-file-name instead of $(libdir)/libgcc.a.
1216 Put CFLAGS last in the compilation rules.
1217 Add -I../bfd to INCLUDES so sysdep.h is found.
1218
1219 Tue Jun 15 23:04:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1220
1221 * Makefile.in (INCLUDES): Look in ../include, not ../bfd.
1222
1223 * aout.sc-sh: Add SHLIB_PATH like STACKZERO. Make STACKZERO
1224 dependent on RELOCATING, not RELOCATION.
1225 * hp3hpux.sh (SHLIB_PATH): Define it.
1226
1227 Mon Jun 14 19:06:15 1993 David J. Mackenzie (djm@thepub.cygnus.com)
1228
1229 * ldfile.c (try_open): If opening without the extension fails,
1230 try with the extension even if -v or -V was given.
1231 had_script is imported (from ldgram.y), not exported.
1232
1233 Mon Jun 14 16:26:10 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
1234
1235 * Makefile.in: remove parentdir support, use INSTALL_XFORM
1236
1237 Thu Jun 10 14:00:06 1993 Ian Lance Taylor (ian@cygnus.com)
1238
1239 * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
1240 * ldgram.y (statement_list_opt): New nonterminal, either empty or
1241 statement_list.
1242 (section): Use statement_list_opt, not statement_list.
1243 * m68kcoff.sc-sh: Gather constructors and destructors and define
1244 __CTOR_LIST__ and __DTOR_LIST__ appropriately.
1245 * sa29200.sc-sh: Gather constructors and destructors and define
1246 ___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
1247
1248 Mon Jun 7 12:53:28 1993 Per Bothner (bothner@rtl.cygnus.com)
1249
1250 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
1251 * configure.in: No longer need to configure to get sysdep.h.
1252
1253 Fri Jun 4 16:18:24 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1254
1255 * Makefile.in: remove install:all and install-info:info
1256 dependencies (these cause some spurious rebuilds at 'make install'
1257 time)
1258
1259 Fri Jun 4 08:50:14 1993 Ian Lance Taylor (ian@cygnus.com)
1260
1261 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
1262 (mips-idt-ecoff*): Added trailing '*'.
1263 * config/mips-idtl.mt: New file; use EMUL of mipsidtl.
1264 * mipsidtl.sh: New file; like mipsidt.sh, but little endian.
1265 * Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
1266
1267 * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
1268 incorrect definitions.
1269
1270 Tue Jun 1 14:56:10 1993 Per Bothner (bothner@rtl.cygnus.com)
1271
1272 * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR
1273 symbols, unless stripping.
1274
1275 Tue May 25 15:34:25 1993 Ian Lance Taylor (ian@cygnus.com)
1276
1277 * Makefile.in: configure looks for ####, so remove lines with many
1278 '#' characters.
1279 * config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
1280 and HOSTING_LIBS correctly so that ``make check'' will work.
1281
1282 Thu May 20 13:56:16 1993 Per Bothner (bothner@deneb.cygnus.com)
1283
1284 * mips.sc-sh: Define _etext, _edata, and _end, in addition
1285 to etext, edata, and end. Needed for IRIX 4.0.5F.
1286 Patch from mwp@iconix.oz.au (Michael Paddon).
1287
1288 * Version 2.2.1 released.
1289
1290 Thu May 20 11:42:06 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1291
1292 * mipsbsd.sc-sh: Renamed from aout-mipsbsd.sc-sh.
1293 * mipsbsd.sh (EMULATION_NAME): Use new file name.
1294
1295 Tue May 18 17:10:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1296
1297 * Makefile.in (LDDISTSTUFF): Remove ld.mm since we can't build it
1298 properly right now.
1299
1300 * Version 2.2 released.
1301
1302 Mon May 17 15:37:28 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
1303
1304 * ldver.c (ldversion): Bump version number to 2.2.
1305
1306 Mon May 17 12:44:31 1993 Per Bothner (bothner@cygnus.com)
1307
1308 * NEWS: New file.
1309
1310 Fri May 14 11:26:24 1993 Ian Lance Taylor (ian@cygnus.com)
1311
1312 * mips.sc-sh: Don't define BSS_VAR unless relocating.
1313
1314 Wed May 12 13:33:29 1993 Ian Lance Taylor (ian@cygnus.com)
1315
1316 * Makefile.in (mkscript.o, mkscript): Build mkscript via
1317 mkscript.o, rather than directly from mkscript.c.
1318
1319 Tue May 4 21:58:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1320
1321 * configure.in: Look for ${target_makefile_frag} relative to
1322 ${srcdir}, not relative to build directory.
1323
1324 * hppaosf.em, hppaosf.sc-sh, hppaosf.sh: New files.
1325 * configure.in: Recognize hppa*-hp-osf.
1326 * Makefile.in (ALL_EMULATIONS): Include hppaosf emulation.
1327 (em_hppaosf.c): Build it.
1328 * config/hppaosf.mh, hppaosf.mt: New files.
1329
1330 * ld.h (ALIGN_N): Renamed from ALIGN, because that conflicted with
1331 some system header files. All uses changed.
1332
1333 * configure.in: Recognize i386-aix configurations as i386-coff
1334 targets.
1335
1336 * configure.in: Recognize m68*-*-hpux.
1337 * aout.sc-sh: If STACKZERO and RELOCATING are both defined, output
1338 the value of STACKZERO.
1339 * Makefile.in (ALL_EMULATIONS): Include hp300-hpux emulation.
1340 (em_hp3hpux.c): Build it.
1341 * hp3hpux.sh, config/hp300hpux.mt: New files.
1342
1343 Tue May 4 12:37:35 1993 Ian Lance Taylor (ian@cygnus.com)
1344
1345 * mips.sc-sh: Put constructors in the .data section.
1346 * Makefile.in (cdtest): Added dependency on ld.new.
1347
1348 Mon May 3 19:43:39 1993 Per Bothner (bothner@cygnus.com)
1349
1350 * Makefile.in: Change definition of $(tooldir) to match FSF.
1351 * vax.sh, config/vax.mt, configure.in, Makefile.in:
1352 Support VAX Ultrix and BSD.
1353
1354 Mon Apr 26 18:35:47 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1355
1356 * sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH.
1357
1358 Wed Apr 14 21:01:51 1993 John Gilmore (gnu@cygnus.com)
1359
1360 * ldlang.h (struct memory_region): Change `length' and
1361 `old_length' fields to bfd_size_type. Eliminate use of bfd_offset.
1362 * ldlang.c, mri.c: Corresponding changes, plus lint.
1363
1364 Thu Apr 8 22:08:18 1993 Ian Lance Taylor (ian@cygnus.com)
1365
1366 * configure.in: For all i386 targets, accept i486 as well.
1367
1368 Mon Apr 5 17:33:39 1993 Ian Lance Taylor (ian@cygnus.com)
1369
1370 * ldlang.c (wild_doit): Preserve all flags for a
1371 SEC_SHARED_LIBRARY section.
1372 (size_input_section): Consider any SEC_HAS_CONTENTS section when
1373 computing largest_section.
1374
1375 Fri Apr 2 14:33:52 1993 Ian Lance Taylor (ian@cygnus.com)
1376
1377 * ldlang.c (lang_output_section_statement_lookup): Initialize all
1378 fields of newly created structure.
1379
1380 Wed Mar 31 18:19:15 1993 Ian Lance Taylor (ian@cygnus.com)
1381
1382 * ldmain.c (g_switch_value): New variable.
1383 * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
1384 (command_line_option): Accept -G and set g_switch_value.
1385 * ldlex.l (COMMAND): Accept -G.
1386 * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
1387
1388 Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1389
1390 Support for linking and loading at different places:
1391
1392 * ldlex.l: Add "AT" keyword.
1393 * ldgram.y: Cleanup, and parse AT.
1394 * ldlang.c (print_output_section_statement): Print output address
1395 of section in map. (lang_size_sections): Fill sections' lma with
1396 load address.
1397 * ldlang.h (lang_output_section_statement_type): Add load_base
1398 information.
1399
1400 * ldindr.c (add_indirect): Keep more information in the alias
1401 symbol chain.
1402 * ldlang.c (wild_doit): Don't inherit NEVER_LOAD section
1403 attribute from an input section.
1404 * ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
1405 default. (Q_enter_file_symbos): Indirect symbols now are known by
1406 their section, not a special symbol flag.
1407 * ldsym.c (write_file_locals): Indirect symbols aren't local.
1408 (write_file_globals): Write the mapping for an indirect symbol.
1409 * relax.c (build_it): When forced to write a NEVER_LOAD section,
1410 fill it with zeros.
1411
1412 Tue Mar 23 13:24:10 1993 Jeffrey Osier (jeffrey@fowanton.cygnus.com)
1413
1414 * ld.texinfo: changes for q1
1415
1416 Tue Mar 23 00:13:29 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1417
1418 * Makefile.in: add dvi target, define & use TEXI2DVI, add installcheck
1419
1420 Mon Mar 8 20:30:35 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1421
1422 * Makefile.in: rename HOST_CC to CC_FOR_BUILD
1423
1424 Thu Mar 4 12:44:33 1993 Ian Lance Taylor (ian@cygnus.com)
1425
1426 * mips.sc-sh: Added variables which may be overridden by a
1427 specific emulation.
1428 * mipsidt.sh: New file; emulation for IDT MIPS board.
1429 * Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
1430 (em_mipsidt.c): New target. Uses mipsidt.sh and mips.sc-sh.
1431 * config/mips-idt.mt: New file; sets EMUL to mipsidt.
1432 * configure.in (mips-idt-ecoff): New target; uses mips-idt.
1433
1434 Sat Feb 27 00:00:14 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1435
1436 * aout-mipsbsd.sc-sh, mipsbsd.sh: New files from Ralph Campbell,
1437 ralphc@pyramid.com.
1438 * i386bsd.sh, config/i386bsd.mt: New files.
1439 * configure.in, Makefile.in: Added support for mipsbsd and 386bsd.
1440
1441 Thu Feb 25 15:33:10 1993 Per Bothner (bothner@rtl.cygnus.com)
1442
1443 * mri.c: Add extern declaration of strdup.
1444 * ldsym.c (KEEP macro): Add spaces around '=' for the
1445 sake of old (e.g. PCC) compilers.
1446
1447 Wed Feb 24 19:49:31 1993 Per Bothner (bothner@rtl.cygnus.com)
1448
1449 * ldver.c: Bump to version 2.1.
1450
1451 Fri Feb 12 08:09:11 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1452
1453 * ldgram.y: allow section types without address expressions.
1454 * ldlang.c (lang_relocate_globals): avoid possible hang with
1455 undefined but unreferenced symbols.
1456 * relax.c (relax_section): don't complain if the script file isn't
1457 relaxable but -relax is set
1458
1459 Thu Feb 18 17:58:45 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1460
1461 * configure.in: go32 is the 3rd part of the triple, not the 2nd
1462
1463 Wed Feb 3 09:05:56 1993 Ian Lance Taylor (ian@cygnus.com)
1464
1465 * mipsbig.sh: New file. Big endian MIPS emulation.
1466 * config/mips-big.mt: New file. Use mipsbig emulation.
1467 * configure.in (mips-sgi-irix*): Use target mips-big.
1468 * Makefile.in (ALL_EMULATIONS): Added em_mipsbig.o.
1469 (em_mipsbig.c): New target. Uses mipsbig.sh.
1470
1471 Tue Feb 2 11:32:27 1993 Ian Lance Taylor (ian@cygnus.com)
1472
1473 * mips.sc-sh: Put .scommon sections into .sbss section.
1474
1475 * ldmain.c (subfile_wanted_p): Preserve section of common symbols,
1476 rather than always putting them in bfd_com_section.
1477 * ldlang.c (lang_common): If a common symbol is not in
1478 bfd_com_section, put in a section of the same name, rather than
1479 always putting it in section COMMON.
1480
1481 Fri Jan 29 09:57:58 1993 Ian Lance Taylor (ian@cygnus.com)
1482
1483 * ldmain.c (subfile_wanted_p): If we already have a common
1484 definition of a symbol, don't necessarily pull in an object file
1485 that provides a non-common definition.
1486
1487 * ldlex.l (COMMAND): Accept -EB and -EL command line arguments,
1488 returning OPTION_EB and OPTION_EL. gcc passes these to a MIPS
1489 linker.
1490 * ldgram.y (OPTION_EB, OPTION_EL): New tokens.
1491 (command_line_option): Accept and ignore OPTION_EB and OPTION_EL.
1492
1493 Thu Jan 28 15:12:04 1993 Ian Lance Taylor (ian@cygnus.com)
1494
1495 * Makefile.in (install): Remove $(tooldir)/bin/gld before creating
1496 the link to it.
1497
1498 Tue Jan 26 11:49:50 1993 Ian Lance Taylor (ian@cygnus.com)
1499
1500 * ldmain.c, ldsym.c: Use new bfd_is_com_section macro rather than
1501 checking for equality to bfd_com_section.
1502
1503 Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com)
1504
1505 * mips.sc-sh: New file. Ultrix, and hopefully other MIPS ECOFF
1506 targets, linker script.
1507 * mipslit.sh: New file. Little endian MIPS emulation.
1508 * config/mips-lit.mt: New file. Use mipslit emulation.
1509 * configure.in (mips-dec-ultrix*): Use target mips-lit.
1510 * Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
1511 (em_mipslit.c): New target. Uses mipslit.sh.
1512
1513 Thu Jan 14 15:30:27 1993 Ian Lance Taylor (ian@cygnus.com)
1514
1515 * Makefile.in (install): Install ld as both $(tooldir)/bin/ld and
1516 $(tooldir)/bin/gld, so that gcc can find it with or without
1517 collect2.
1518
1519 Mon Jan 11 18:50:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1520
1521 * ldwrite.c: Removed perform_relocation, copy_and_relocate, and
1522 write_norel. All linking is now done via write_relax. Call
1523 ldsym_write before calling write_relax.
1524 * relax.c: Added copyright.
1525 (write_relax): Renamed from write_relaxnorel. Added relocateable
1526 argument. seclet_dump renamed to bfd_seclet_link.
1527 * relax.h: Added copyright.
1528
1529 Mon Jan 11 15:41:56 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1530
1531 * ldmain.c (decode_library_subfile): Patch from
1532 hoogen@shafer.cs.utah.edu, don't reread library symbol tables.
1533
1534 Fri Jan 8 18:04:33 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1535
1536 * config/vxworks960.mt renamed to config/i960.mt
1537
1538 * configure.in: sparc-aout emulates a sun4, as does
1539 sparc*-vxworks, i960-nindy uses gld960 emulation
1540
1541 Fri Jan 8 14:39:07 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1542
1543 Fix support for NOLOAD, add INCLUDE
1544 * ldfile.c (ldfile_open_command_file): pass file name to
1545 lex_push_file.
1546 * ldlex.l, ldgram.y: tidy up, parse INCLUDE and NOLOAD
1547 * ldlang.c (wild_doit): make output sections inherit NEVER_LOAD
1548 attribute.
1549
1550 Thu Jan 7 10:22:19 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1551
1552 * Makefile.in, config.h: no more default emulation. Make the lack
1553 of emulation a compile time error
1554
1555 Wed Jan 6 01:08:37 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1556
1557 * configure.in: recognise all sparclite variants, not just 'sparclite'
1558
1559 Mon Dec 28 11:15:35 1992 Ian Lance Taylor (ian@cygnus.com)
1560
1561 * m68kcoff.sc-sh: define _end as well as end, for consistency with
1562 aout.sc-sh.
1563
1564 * configure.in: accept *-ericsson-ose for any m68k CPU.
1565
1566 * ldwrite.c (write_rel): don't always set SEC_HAS_CONTENTS flag
1567 for each output section.
1568
1569 Mon Dec 21 16:06:59 1992 Per Bothner (bothner@rtl.cygnus.com)
1570
1571 * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c: Use new
1572 macro bfd_asymbol_bfd as appropriate.
1573 * Makefile.in: Un-duplicate ldlex.c dependency.
1574 * condigure.in: Replace my_host case table by sourcing
1575 ../bfd/configure.host. Allow std-host as the default.
1576 * ldmisc.c: Change logic for C++ name demangling: There is
1577 no initial '_' to remove from stab-derived function names.
1578
1579 Sun Dec 13 16:31:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1580
1581 * ldlang.c (lang_init_script_file): don't attach the output file
1582 sections to the script file.
1583
1584 Wed Dec 9 08:38:05 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1585 * ldlang.c (wild): run expansion loop over command line bfd too.
1586 (lang_ini_script_file): initialize more parts of the command line
1587 bfd.
1588 * ldlex.l: fix DEFINED start states.
1589
1590 Mon Dec 7 08:43:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1591 -y support
1592 * ld.texinfo: new doc.
1593 * ldgram.y, ldlex.l: understand -y<symbol>
1594 * ldmain.c (Q_enter_file_symbols): if had -y, lookup symbol and
1595 print info. (add_ysym): new function.
1596 * ldsym.h: (ldsym_type): new define SYM_Y.
1597
1598 Sat Nov 21 03:15:27 1992 John Gilmore (gnu@cygnus.com)
1599
1600 * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c,
1601 ldlang.h, ldlex.h, ldmain.h, ldmisc.h, ldsym.h, ldver.h, ldwarn.h,
1602 ldwrite.h, relax.h: Replace all uses of EXFUN and PROTO ansi-glue
1603 macros with PARAMS. Recreational cleanup. Update copyrights.
1604
1605 Tue Nov 10 00:23:37 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1606
1607 * Makefile.in: pass down the bfd source directory for includes
1608
1609 Thu Nov 5 15:41:55 1992 Ian Lance Taylor (ian@cygnus.com)
1610
1611 * ldlang.c (lang_size_sections): don't change size and address for
1612 SEC_SHARED_LIBRARY sections rather than for SEC_NEVER_LOAD
1613 sections.
1614
1615 Thu Nov 5 11:33:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1616
1617 * relax.c (build_it): re-enable the processing of data_statements
1618 in scripts, makes counted contructor lists work again.
1619
1620 Thu Nov 5 05:43:01 1992 John Gilmore (gnu@cygnus.com)
1621
1622 * ldemul.h: Remove uses of SDEF and PROTO macros (use PARAMS).
1623
1624 Tue Oct 20 10:56:06 1992 Ian Lance Taylor (ian@cygnus.com)
1625
1626 * m68kcoff.sc-sh: don't use initial underscores for etext, edata
1627 and end.
1628
1629 Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com)
1630
1631 * Support for i386-sysv.
1632 configure.in: check for i386-*-sysv* and i386-*-sco*.
1633 i386coff.sc-sh: rewrote to support SVR3 by default.
1634 ldctor.c (find_constructors): preserve stat_ptr.
1635 ldlang.c (wild_doit): initialize vma and size of new output
1636 section to corresponding input section. This is required for
1637 shared library support.
1638 (lang_size_sections): don't modify vma and size of sections which
1639 are never loaded (for shared libraries).
1640 ldwrite.c (copy_and_relocate): copy the contents of any section
1641 which has contents, not just sections which are loaded (for shared
1642 libraries).
1643
1644 Thu Oct 15 15:20:26 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1645
1646 * ldlang.c (size_input_section): count the sizes of all sections
1647 we allocate.
1648
1649 Thu Oct 8 09:05:25 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1650
1651 * ldmisc.c (demangle,vfinfo): use the new underscore in bfd to
1652 to demangle symbols better
1653
1654 Tue Oct 6 13:08:54 1992 Ian Lance Taylor (ian@cygnus.com)
1655
1656 * ldlang.c (lang_finish): don't warn if -e start symbol does not
1657 exist when linking with -r.
1658
1659 Mon Oct 5 14:07:37 1992 Ian Lance Taylor (ian@cygnus.com)
1660
1661 * aout.sc-sh, m68kcoff.sc-sh: set __bss_start to the start of the
1662 .bss segment.
1663
1664 Mon Oct 5 08:55:14 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1665
1666 * ldmain.c (linear_library): don't even think about processing
1667 an object file if it's already been done
1668
1669 Thu Oct 1 23:14:59 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1670
1671 * configure.in: the hp9000/300 config file is now hp300
1672
1673 Wed Sep 30 07:34:09 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1674
1675 * config/z8ksim.mt: new file
1676
1677 Fri Sep 25 13:49:52 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
1678
1679 * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o,
1680 lexsup.o, mri.o, relax.o): Indicate dependence on ldgram.h.
1681
1682 * ld.h (strip_symbols_type): Add value STRIP_SOME.
1683 * ldgram.y (OPTION_RETAIN_SYMBOLS_FILE): New terminal token.
1684 * ldlang.c (lang_add_keepsyms_file): New function.
1685 * ldlex.l: Handle "-retain-symbols-file".
1686 * ldsym.c (keepsyms_file, kept_syms): New vars.
1687 (process_keepsyms): New functihon; reads file, marks symbols for
1688 saving.
1689 (write_file_locals): File symbols should always be kept.
1690 (ldsym_write): Warn about "-retain-symbols-file" overriding "-S"
1691 and "-s". Process retain-symbols file before setting symtab.
1692 * ldsym.h (SYM_KEEP): New flag for ldsym_type flags.
1693 (keepsyms_file, kept_syms): Declare them.
1694
1695 * ldmain.c (main): Non-fatal errors should still cause non-zero
1696 exit status even with -r.
1697
1698 Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1699
1700 Added initial support for the z8k
1701 * z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
1702 * configure.in, Makefile.in: modified to reflect above
1703
1704 * ldlang.c (lang_check): when linking conflicting architectures,
1705 make the output file reflect at least one of the bad inputs.
1706
1707 Tue Sep 15 15:35:38 1992 Ian Lance Taylor (ian@cygnus.com)
1708
1709 * Makefile.in (install): if $(tooldir) exists, install ld in
1710 $(tooldir)/bin.
1711
1712 Fri Sep 11 10:24:22 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1713
1714 * Makefile.in, configure.in: modified to support i386-coff
1715 * i386coff.sh: new file
1716
1717 Wed Sep 9 11:52:58 1992 Ian Lance Taylor (ian@cygnus.com)
1718
1719 * Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
1720 added m68k-coff emulation mode, stolen from a29k emulation.
1721 Almost certainly wrong, but perhaps better than sun3.
1722
1723 Thu Sep 3 14:19:30 1992 Per Bothner (bothner@rtl.cygnus.com)
1724
1725 * Makefile.in, Makefile.dos, generic.em, genscripts.sh,
1726 gld960.em, h8300hms.em, h8300xray.em, lnk960.em, st2000.em,
1727 vanilla.em: Rename all (generated) ld__*.c files to em_.c.
1728 This is one character shorter, and lets people build on
1729 SVR3 system. (ld__h8300xray.[co] was the killer there;
1730 h8300xray.sc-sh is also overlong, but seems harmless.)
1731 Based on a patch from Jonathan Ryshpan <hitachi!amito!jon>.
1732 * Makefile.in (clean): Fix typo mostclean -> mostlyclean.
1733 * configure.in: Add host isc.
1734
1735 * ldver.c: Call it version 2.0.
1736
1737 Wed Sep 2 00:21:33 1992 Per Bothner (bothner@rtl.cygnus.com)
1738
1739 * ldver.c: Bump to version 0.98.
1740 * TODO: New file.
1741
1742 * Makefile.in: Added mostlyclean, distclean, realclean rules.
1743
1744 Tue Sep 1 23:42:16 1992 Per Bothner (bothner@rtl.cygnus.com)
1745
1746 * ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
1747 * ldlex.l: Moved comment() to end, since some compilers
1748 otherwise have problems with input() used before it is defined.
1749
1750 Tue Sep 1 17:45:51 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1751
1752 * configure.in: added Solaris 2 and Irix 4 host support.
1753
1754 Mon Aug 31 19:27:11 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1755
1756 * Makefile.in: remove -S flag from the FLEX definition
1757
1758 * configure.in: rewrote, using new style case statement. use
1759 m68k.mt for m68k-aout systems
1760
1761 Sun Aug 30 21:38:53 1992 Ian Lance Taylor (ian@cygnus.com)
1762
1763 * Makefile.in: map "ld" through program_transform_name when
1764 installing.
1765
1766 Sun Aug 30 18:12:13 1992 Per Bothner (bothner@rtl.cygnus.com)
1767
1768 * cplus-dem.c: Removed. Use the version in libiberty now.
1769 * ldmisc.c: Use new libiberty version of cplus_demangle().
1770
1771 Thu Aug 27 16:38:42 1992 Ian Lance Taylor (ian@cygnus.com)
1772
1773 * gld960.em (gld960_choose_target): default to little endian, not
1774 big endian.
1775
1776 Wed Aug 26 17:28:51 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1777
1778 * ldlang.c (lang_process): don't pass null pointers when
1779 abs_output_section is what is required.
1780 * ldwrite.c (ldwrite): use malloc to allocate the largest space
1781 used, and pass that down.
1782 * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
1783 than alloca.
1784
1785 Mon Aug 24 14:42:06 1992 Ian Lance Taylor (ian@cygnus.com)
1786
1787 * configure.in, config/ose68.mt: renamed OSE to ose.
1788
1789 Thu Aug 20 19:55:22 1992 Ken Raeburn (raeburn@cygnus.com)
1790
1791 * ldsym.c (write_file_locals): Reorder check for common or
1792 undefined symbols so that it works.
1793
1794 Tue Aug 18 13:41:36 1992 Ian Lance Taylor (ian@cygnus.com)
1795
1796 * configure.in: accept all m68K family members.
1797
1798 * Makefile.in: always create installation directories.
1799
1800 Thu Aug 13 11:49:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1801
1802 * ldlex.l: now parses comment correctly, added ~ to acceptable
1803 chars in filenames
1804
1805 * ldexp.c (exp_unop): pass down abs_output_section - now can have
1806 unary -ve constants.
1807
1808 * ldlang.c (lang_finish): warn when an entry symbol supplied on
1809 the command line can't be found.
1810
1811 Fri Aug 7 12:31:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1812
1813 * ldlang.h: add new field "loadable" to output_section_statement.
1814 * ldlang.c (lang_output_section_statement_lookup): initilize new
1815 field. (wild_doit): if new field is not set, then stop output
1816 section from being loadable.
1817 (lang_enter_output_section_statement): set the field from the
1818 NOLOAD keyword
1819 * ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
1820 * h8300hms.sc-sh, h8300hms.em: get -r right.
1821
1822 Thu Aug 6 18:35:21 1992 Per Bothner (bothner@rtl.cygnus.com)
1823
1824 * ldint.texinfo: New internals manual (beginnings thereof).
1825 * PORTING: Removed, merged into ldint.texinfo.
1826
1827 Tue Aug 4 21:12:29 1992 Per Bothner (bothner@rtl.cygnus.com)
1828
1829 * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc,
1830 cdtest.exp: A test program (copied from libg++/test-install)
1831 that tests that constructor and destructors are handled
1832 corrrectly.
1833
1834 Mon Aug 3 14:58:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1835
1836 * Makefile.in (install): install from ld.new, renaming during the
1837 copy, or else the next 'make install' needs to re-link ld.
1838
1839 Mon Jul 20 03:37:06 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
1840
1841 * configure.in: generalise hp recognition (from sef).
1842
1843 Sat Jul 18 14:46:04 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1844
1845 * configure.in: recognize bsd and hpux hppa configurations.
1846 error messages echo to stderr, not stdout
1847
1848 Fri Jul 17 22:06:11 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1849
1850 * Makefile.dos, gld.1, ld.texinfo, ldemul.c, ldfile.c, ldlang.c,
1851 ldmisc.c: removed rcsid's.
1852
1853 Tue Jul 14 08:34:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1854
1855 * ldlang.c (lang_map): print changes in sizes due to relaxing
1856 (size_input_section): maintain the delta information.
1857 * ldlang.h: add new field to struct to contain delta info.
1858 * relax.c (relax_section): complain if input not relaxable.
1859 * ldlex.l : add '_', ',' and '$' to chars which can appear at the
1860 start of a filename
1861
1862 Mon Jul 13 17:33:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1863
1864 * ldmain.c(main): prevent -r and -relax from being on at the same
1865 time.
1866
1867 Wed Jul 1 17:51:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1868
1869 * ldmain.c (Q_enter_global_ref), ldindr.c (add_indirect): fix for
1870 aliasing problems
1871
1872
1873 Thu Jun 18 09:38:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1874
1875 * h8300hms.em, h8300hms.sc-sh: do the right thing for -r
1876 * ldexp.c: lint
1877 * ldlang.c(open_output): set the target arch and machine as soon
1878 as we can. (lang_size_sections): use new macros for setting vma
1879 * ldwrite.c: lint
1880
1881 Mon Jun 15 08:47:43 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
1882
1883 * configure.in (my_target): Accept m680?0 for wrs as vxworks68.
1884 Also deleted an unreachable path to wrs.
1885
1886 Wed May 27 23:24:19 1992 Michael Tiemann (tiemann@rtl.cygnus.com)
1887
1888 * Makefile.in (install): use -d test for $tooldir before
1889 installing ld there so that $tooldir can be inherited from
1890 top-level Makefile.
1891
1892 Wed May 27 16:56:48 1992 Per Bothner (bothner@rtl.cygnus.com)
1893
1894 * ldlang.c: Two non-substantial changes for the sake of
1895 the old Portable C Compiler.
1896
1897 Wed May 27 15:15:58 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1898
1899 * ldgram.y, ldlex.l: parse ABSOLUTE
1900 * ldexp.c: add support for ABSOLUTE
1901
1902 Wed May 27 13:07:20 1992 Per Bothner (bothner@rtl.cygnus.com)
1903
1904 * Makefile.in: Added default definitions for HOSTING_CRT0,
1905 HOSTING_LIBS, and HOSTING_EMU, based on those in config/*.mh.
1906 * config/*.mh: Miscellaneous clean-up: Removed definitions
1907 of YACC (since it is not longer used in the Makefile).
1908 Remove HOSTING_* definitions that are subsumed by the
1909 ones added to Makefile.in. Removed most definitions of CC.
1910 * config/{sparc,news,hp300bsd,decstation}.mh: Removed;
1911 These are no longer needed.
1912
1913 Fri May 22 13:47:19 1992 Per Bothner (bothner@cygnus.com)
1914
1915 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
1916 rules, since these are used when building a distribution.
1917 * Makefile.in (ldlex.c): Don't re-direct output, since that
1918 leaves a bogus output files if it fails.
1919
1920 * config/sparc.mh: Fix HOSTING_LIBS so it has a chance of working.
1921 * ldlex.c: Fix some unnecessary flex-specific-isms.
1922
1923 Fri May 8 11:49:43 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1924
1925 * ldgram.y: move spurious semicolon
1926 * ldexp.h: fix prototype
1927
1928 Thu May 7 17:01:12 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
1929
1930 * ld.texinfo: references to linker now say "ld" not "gld".
1931
1932 Wed May 6 13:26:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1933
1934 changed calling convention for Q_enter_global_ref
1935 * ldexp.c, ldlang.c, ldmain.c: reflect this
1936 * ldver.c: bump version to 1.97.1
1937 * ldindr.c (add_indirect): when an edict declaring an indirect
1938 symbol is found, make sure that any ideas about the symbol being
1939 common are changed if it now known to be defined.
1940 * ldmain.c (linear_library): complain once if archive isn't
1941 ranlibbed.
1942 * ldlang.h, ldlang.c: make room for and initialize the complain
1943 once field.
1944
1945 Wed May 6 11:07:35 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1946
1947 * Makefile.in: use flex & bison from ../ if they exist.
1948
1949 Tue May 5 17:47:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1950
1951 * relax.c (build_it): don't allocate space in the output file for
1952 stuff if -R flag applys to it.
1953 * ldfile.c: merge in VMS filename support
1954 * ldmain.c (main): take out ./ from library path, and close file
1955 before unlinking. Make multiple defs of a symbol create an
1956 unexecable file.
1957 * ldmisc.c: fatal errosrs delete output file
1958
1959 Tue May 5 14:05:05 1992 Per Bothner (bothner@rtl.cygnus.com)
1960
1961 * ldver.c: Increase version number to 1.97, for consistency
1962 with ../binutils.
1963
1964 Tue May 5 12:12:24 1992 K. Richard Pixley (rich@cygnus.com)
1965
1966 * Makefile.in: FLEX -> LEX.
1967
1968 * ld.texinfo: {} -> @{@}.
1969
1970 Mon May 4 17:52:41 1992 Roland H. Pesch (pesch@fowanton.cygnus.com)
1971
1972 * ld.texinfo: describe alternate, MRI-compatible linker scripts
1973 (and associated change in -c option, now used for these scripts)
1974
1975 Mon May 4 16:10:10 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1976
1977 * ldver.c: Bumped version to 1.96 - new release, resync with the
1978 bfd too #.
1979 * ldexp.c, ldlang.c: now build memory shape tree in obstacks
1980 rather than with raw malloc, makes it easier to track where memory
1981 is going.
1982 * ldsym.h, ldsym.c: create obstack for all global symbols too.
1983 * ldwrite.c (ldwrite): moved malloc so only used when needed.
1984 * sa29200-sc.sh: added support for .lit, data1 and data2 sections.
1985
1986
1987 Fri May 1 18:17:52 1992 K. Richard Pixley (rich@cygnus.com)
1988
1989 * config/sparc.mh: use ../gcc/libgcc.a on check if it exists.
1990
1991 * Makefile.in: use bootstrap for check.
1992
1993 Fri May 1 13:03:41 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1994
1995 * ldgram.y, ldlex.c, mri.c: added more compatible words; BASE, ALIAS and
1996 PUBLIC.
1997 * Makefile.in: now use flex, not lex
1998 * ldlex.l, ldlang.c, ldctor.c: lint
1999
2000 Wed Apr 22 12:48:42 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2001
2002 * ldlex.l: added CMDFILENAMECHAR state so that you can lex
2003 different sorts of filenames on the command line than in a script.
2004
2005 Mon Apr 20 22:37:04 1992 K. Richard Pixley (rich@rtl.cygnus.com)
2006
2007 * Makefile.in: rework CFLAGS so that they can be passed on the
2008 make command line. Remove MINUS_G. Default CFLAGS to -g.
2009
2010 Fri Apr 17 08:57:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2011
2012 * relax.c: added handling for new "padding" seclet type, used to
2013 fill out gaps between section.
2014 * ldgram.y, ldlex.l: now -defsym on the command line is done
2015 properly.
2016
2017 Wed Apr 15 21:20:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
2018
2019 * Makefile.in: the tooldir copy of ld goes directly in tooldir.
2020
2021 Wed Apr 15 16:09:33 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2022
2023 * mri.c, ldgram.y, ldlex.l: added support for minimal strange link
2024 scripts.
2025
2026 Thu Apr 9 05:52:02 1992 Ken Raeburn (Raeburn@Cygnus.COM)
2027
2028 * Makefile.in (install): Install second copy in $(tooldir)/bin
2029 without $(program_prefix), since that's what gcc expects.
2030
2031 Sat Apr 4 17:44:06 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2032
2033 * ldlex.l, ldgram.y, ldlex.h: Rewrote lexer. Now it's much nicer.
2034 * h8300*: fix bit rot and add support for h8300xray target
2035 * go32.sh: target emulation for go32.
2036
2037 Mon Mar 16 14:53:29 1992 Steve Chamberlain (sac@rtl.cygnus.com)
2038
2039 * gld960.em, i960.sc-sh. Fix i960 bit rot
2040
2041 Fri Mar 13 19:47:22 1992 K. Richard Pixley (rich@cygnus.com)
2042
2043 * Makefile.in: install man page.
2044
2045 Fri Mar 13 08:23:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2046
2047 * config/mt-<foo> renamed to <foo>.mt
2048 * config/mh-<foo> renamed to <foo>.mt
2049 * configure.in changed to reflect this
2050 * genscripts.sh now make .xbn files rather than .xN files
2051
2052 Sat Mar 7 03:40:40 1992 K. Richard Pixley (rich@cygnus.com)
2053
2054 * ldver.h: fix decl of ldversion.
2055
2056 Fri Mar 6 22:00:35 1992 K. Richard Pixley (rich@cygnus.com)
2057
2058 * Makefile.in: added check target.
2059
2060 Fri Mar 6 06:59:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2061
2062 * ldmain.c (Q_enter_file_symbols): now aliases work again
2063
2064 Thu Mar 5 21:39:29 1992 K. Richard Pixley (rich@cygnus.com)
2065
2066 * Makefile.in: added clean-info target.
2067
2068 Thu Mar 5 16:55:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2069
2070 * ldexp.c (exp_print_tree): don't try and follow null pointers
2071 around.
2072 * ldgram.y: remove 11 shift reduce errors
2073
2074 Tue Mar 3 15:46:39 1992 K. Richard Pixley (rich@rtl.cygnus.com)
2075
2076 * Makefile.in: added tooldir and program_prefix.
2077
2078 Fri Feb 28 08:17:45 1992 Steve Chamberlain (sac at thepub.cygnus.com)
2079
2080 * ldlang.c (size_input_section): don't move absolute sections
2081 around!
2082
2083
2084 Thu Feb 27 09:20:41 1992 Steve Chamberlain (sac at thepub.cygnus.com)
2085
2086 * cplus-dem.c: yet another copy of this - maybe it should go into
2087 libiberty ?
2088 * ldgram.y: now -V and -v have different actions
2089 * ldver.c: if -V, prints list of emulations compiled in
2090 * ldmisc.c: support for cplus demangling
2091
2092
2093 Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
2094
2095 * Makefile.in, configure.in: removed traces of namesubdir,
2096 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
2097 copyrights to '92, changed some from Cygnus to FSF.
2098
2099 Thu Feb 20 17:43:46 1992 Per Bothner (bothner at cygnus.com)
2100
2101 * Makefile.in: Change mkscript rule into one for ./mkscript
2102 (for the sake of makes that don't realize they're the same).
2103 * PORTING: Add more details.
2104 * genscripts.sh: Add more tailorability of DATA_ALIGNMENT.
2105
2106 Mon Feb 17 12:04:36 1992 Per Bothner (bothner at cygnus.com)
2107
2108 * Makefile.in, and new files hp300bsd.sh, config/mh-hp300bsd,
2109 config/mt-hp300bsd: New port to hp300 running BSD.
2110
2111 Sat Feb 15 13:59:54 1992 Per Bothner (bothner at cygnus.com)
2112
2113 Major rewrite of how ld is configured. The major idea
2114 is to use shell scripts to generate everything.
2115 * generic.em replaces ldtemplate.
2116 * Other *.em files replace various *.c files.
2117 A *.em file is a shell script that generates the corresponding
2118 ld__*.c file that implements an emulation. This is usually
2119 a straight 'cat' of a here-document, possibly with substitutions.
2120 * Script files (*.sc) are places by *.sc-sh scripts.
2121 Again, these are simple shell scripts that 'cat'
2122 here-documents, usually with some substitutions.
2123 The output a *.sc-sh is a script file.
2124 * Each emulation is defined by a short shell script with
2125 extension *.sh that specifies the emulation-specific
2126 parameters (such as the name of the *.sh-sc and *.em
2127 files to use).
2128 * genscript.sh is the master shell script used to generate
2129 an emulation. It is passed various argument, including
2130 the name a the emulation-speciic *.sh file that it
2131 "sources" to set variables to emulation-specifc parameters.
2132 * config/mt-foo: Changed EMUL=GLDFOO_EMULATION_NAME
2133 to EMUL=foo. (The GLDFOO_EMULATION_NAMEs have bee removed.)
2134 * config/mh-foo: Rename LDEMULATION names as appropriate
2135 (usually 'gldfoo' -> plain 'foo').
2136 * ldwrite.c: Fixed a typo in a comment.
2137 * Makefile.in: Major changes. Removed some the sed
2138 magic to converts scripts, since that is now handled
2139 by genscripts.sh and the *.sc-sh scipt generators.
2140 * config.h: Remove a bunch of macros defining emulations
2141 and targets. This becomes one less file to edit when
2142 adding emulations or targets.
2143 * ldemul.h (struct ld_emulation_xfer_struct): Add
2144 emulation_name and target_name fields.
2145 * ldemul.c, ldemul.h: Define some default functions used
2146 by most emulations (and remove from the *.em scripts).
2147 * ldemul.c (ldemul_choose_target): Search the new
2148 ld_emulations array using a loop (instead of a hardwired
2149 nested if statement).
2150 Define the ld_emulation from the automatically-geenrated
2151 ldemul-list.h. This means you no longer have to edit ldemul.c
2152 to add a new emulation.
2153 * ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
2154 their expansions, since the former no longer exist.
2155 * PORTING: A very rough first draft of a porting guide.
2156
2157 * ldgram.y, ldlex.l, lexsup.c: Changes to allow an assignment
2158 to be terminated by a new-line (instead of requiring a semicolon).
2159
2160 Mon Feb 10 16:21:02 1992 Steve Chamberlain (sac at rtl.cygnus.com)
2161
2162 * ldexp.c, ldlang.c: added new idea "abs_output_section", removes
2163 tests for NULL pointers all over the place.
2164 * ldlang.c (lang_process): remember to relocate global symbols
2165 *after* relaxing has done it stuff.
2166
2167 Thu Feb 6 11:40:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
2168
2169 * config/mt-coff-h8300: use EMUL like everything else
2170 * ldlang.c: (print_padding_statement): print the right address.
2171 * Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
2172
2173
2174 Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
2175
2176 * ldlex.l: Put pack -noinhibit-exec and -sort-common
2177 * ldlang.c (print_data_statement): print the right address.
2178
2179 Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
2180
2181 * Makefile.in: The rule for testing ld by re-linking itself
2182 via an intermediate -r link was moved to the ld1 rule
2183 instead of the ld2 rule. This allows ld2 and ld3 to be identical,
2184 which allows the bootstrap rule to work.
2185 * ldctor.c (find_constructors): Don't create a constructor
2186 list if it is already defined (as would happen if ld is
2187 invoked by collect).
2188
2189 Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
2190
2191 * config/mh-sparc.h: now uses libgcc.a
2192 * ldmain.c: quit using exit
2193 * *sc: use *(COMMON) rather than [COMMON]
2194 * ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
2195 to allow preprocessing of .l file.
2196 * Makefile.in: New ldlex.l mangling
2197 * ldexp.c (fold_binary): perform expressions with % and / in
2198 integer.
2199 * ldfile.c (open_a): open archives on VMS in a special way
2200
2201
2202 Tue Jan 28 10:18:16 1992 Steve Chamberlain (sac at rtl.cygnus.com)
2203
2204 * ldgram.y: map -M behave in the same way as -Map (sets file name
2205 to be "-".
2206 * ldsym.c, ldlang.c: remember that size of a section is dependent on
2207 whether or not relaxing has been done.
2208 * ldmain.c: don't open a map file if it doesn't have a name
2209 * relax.c: all the brains have moved into bfd.
2210 * ldwrite.c: ammend comment
2211
2212 Fri Jan 24 14:23:46 1992 Steve Chamberlain (sac at rtl.cygnus.com)
2213
2214 * Makefile.in: added relax, also made three stage go through a
2215 partial link stage.
2216 * relax.c : added
2217 * config.h: if GNU960 defined, then default emulation mode is
2218 GLD960
2219 * ldexp.h, ldexp.c: map to file hooks
2220 * ldlang.c: map to file hooks
2221 * ldgram.y: added -Map -relax
2222 * ldlex.l: added -relax, -Map
2223 * ldmain.c: open map file
2224 * ldmisc.c: support for map file
2225 * ldwrite.c: new relax magic
2226
2227 Thu Dec 19 18:49:51 1991 John Gilmore (gnu at cygnus.com)
2228
2229 * Makefile.in, config/tm-*.h: Clean up make output, only
2230 pass DEFAULT_EMULATION to ldmain.c.
2231
2232 Wed Dec 18 15:02:47 1991 Per Bothner (bothner at cygnus.com)
2233
2234 * ldver.c: Bump to version 1.94.
2235
2236 Tue Dec 10 04:07:23 1991 K. Richard Pixley (rich at rtl.cygnus.com)
2237
2238 * Makefile.in: infodir belongs in datadir.
2239
2240 Mon Dec 9 16:26:43 1991 Per Bothner (bothner at cygnus.com)
2241
2242 * Makefile.in: Pass -y to bison. (Again;
2243 accidentally deleted by Rich.)
2244 * news.sc, ldgld68k.sc: Define __end as well as _end.
2245
2246 Sat Dec 7 17:19:26 1991 Steve Chamberlain (sac at rtl.cygnus.com)
2247
2248 * ldindr.h: added to contain prototypes of ldindr.c
2249 * ldfile.c: include ctype.h
2250 * ldmain.c: include the requried prototype headers
2251 * ldwrite.c: get_reloc_upper_bound has been renamed
2252 bfd_get_reloc_upper_bound
2253
2254 Fri Dec 6 23:29:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
2255
2256 * Makefile.in: punt "fundamental" mode because it breaks my emacs
2257 macros. install using INSTALL_PROGRAM and INSTALL_DATA. remove
2258 spaces following hyphens, bsd make can't cope. added
2259 standards.text support and made it look like all the other
2260 makefiles.
2261
2262 * configure.in: configure now runs entirely in objdir so make file
2263 existence checks against ${srcdir}. Mark this directory as
2264 target dependent.
2265
2266 Thu Dec 5 22:46:16 1991 K. Richard Pixley (rich at rtl.cygnus.com)
2267
2268 * Makefile.in: idestdir and ddestdir go away. Added copyrights
2269 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
2270 and mandir now keyed off datadir by default.
2271
2272 Wed Dec 4 23:36:55 1991 Per Bothner (bothner at cygnus.com)
2273
2274 * ldver.c: Bumped version to 1.93.
2275 * Makefile.in: Pass -y to bison.
2276
2277 Mon Nov 25 18:28:40 1991 Steve Chamberlain (sac at cygnus.com)
2278
2279 * config.h: h8 is now coff, not ieee
2280 * h8300hds.sc: reflect the same
2281
2282 Thu Nov 14 19:55:09 1991 Per Bothner (bothner at cygnus.com)
2283
2284 * ldver.c (ldversion()): Update to 1.92.
2285 * ldctor.c: There are two places constructor sets
2286 can be defined. One of them checked for an existing
2287 duplicate, the other didn't. Unfortunately, the latter
2288 was called after the former ...
2289 So, factor out code for inserting a new element into
2290 constructor_name_list (after checking for a duplicate)
2291 into a new function add_constructor_name, and call
2292 it from both aforementioned places (ldlang_add_constructor
2293 and ldlang_check_for_constructors).
2294
2295 Wed Nov 13 15:17:43 1991 Per Bothner (bothner at cygnus.com)
2296
2297 * Makefile.in: Rename .c files generated from ldtemplate
2298 to have names starting with ld__. This helps 'make clean'.
2299
2300 Tue Nov 12 18:36:50 1991 Steve Chamberlain (sac at cygnus.com)
2301
2302 * Makefile.in: Take out the version number for install
2303 * m88kbcs.sc: put in contructor blocks.
2304
2305 Mon Nov 11 18:47:33 1991 Per Bothner (bothner at cygnus.com)
2306
2307 * ldmisc.c, ldmisc.h: Re-write info() to take a filename
2308 parameter, a format, and an arg pointer, and rename it to
2309 vfinfo(). Write info() in terms of new vfinfo().
2310 New einfo() is the same as info(), except it writes to stderr.
2311 * ldemul.c, ldexp.c, ldlang.c, ldlnk960.c, ldmain.c, ldwrite.c,
2312 ldmisc.c: Replace "error" calls to info() by new einfo().
2313
2314 Mon Nov 11 09:57:32 1991 Steve Chamberlain (steve at cygnus.com)
2315
2316 * ldlex.l ldgram.y: made -V option do same as -v
2317 * Makefile.in: Added $(MINUS_G) flag so debugging can be
2318 turned off
2319
2320 Sun Nov 3 16:37:37 1991 Steve Chamberlain (steve at cygnus.com)
2321 i386 aout changes from Bob Kukura
2322 * Makefile.in, config.h: added i386aout support
2323 * configure.in: fixed /h-{myhost} typo
2324 * ldgram.y: -MM now gives more boring map.
2325 * ldlang.c: now does D_PAGED flag the right way.
2326 * ldsym.c: -MM flags does the right thing.
2327
2328 Sun Nov 3 15:00:03 1991 Per Bothner (bothner at cygnus.com)
2329
2330 * configure.in: Fixed typo. Also, a fix for hp300bsd.
2331 * ldlang.c (init_os): Compensate for BFD change,
2332 where bfd_make_section now returns NULL for a duplicate
2333 section request, instead of the old section.
2334
2335 Thu Oct 17 15:27:13 1991 Per Bothner (bothner at cygnus.com)
2336
2337 * ldver.c: Bump to version 1.91 (consistent with binutils).
2338
2339 Wed Oct 16 12:27:08 1991 Per Bothner (bothner at cygnus.com)
2340
2341 * Makefile.in, config.h, ld.h, ldemul.c, ldexp.c, ldexp.h,
2342 ldgram.y, ldlex.l, ldlnk960.c, ldmain.c, ldmisc.c, ldmisc.h,
2343 ldsym.c, ldsym.h, ldtemplate, ldvanilla.c, ldver.c, ldver.h,
2344 ldwarn.c, ldwarn.h, ldwrite.c, ldwrite.h, mkscript.c:
2345 Add or update copyright notices.
2346
2347 Mon Oct 14 23:55:27 1991 Per Bothner (bothner at cygnus.com)
2348
2349 * README: New file.
2350 * Makefile.in: Changed installation directory name scheme
2351 to be consistent with gcc. Also changed 'install'.
2352
2353 Mon Oct 14 17:30:02 1991 Roland H. Pesch (pesch at cygnus.com)
2354
2355 * Makefile.in: new targets ld.mm, ld.me
2356
2357 Mon Oct 14 17:27:24 1991 Per Bothner (bothner at cygnus.com)
2358
2359 * Makefile.in, ldtemplate: Need to use separate scripts
2360 for -n and -N options. Yet more complication.
2361
2362 Fri Oct 11 22:40:46 1991 John Gilmore (gnu at cygnus.com)
2363
2364 * Makefile.in: Avoid using $< in explicit Make rules (it doesn't
2365 work). Add some lines to avoid Sun Make VPATH bugs.
2366
2367 Fri Oct 11 16:42:22 1991 Per Bothner (bothner at cygnus.com)
2368
2369 * news.sc: Add alignment for data segment.
2370 * ldtemplate: Add (yet another) script to get for -n or -N
2371 options. (These need different alignment than ZMAGIC files.)
2372 * Makefile.in: Add stuff for new foo.xn scripts.
2373 These are generated by replacing "ALIGN(0x...00)" by ".".
2374
2375 Fri Oct 11 15:43:04 1991 Roland H. Pesch (pesch at cygnus.com)
2376
2377 * Makefile.in: new targets ld.ms, ld-index.ms
2378 ld.texinfo: remove tabs, other cleanups for texi2roff
2379
2380 Fri Oct 11 13:51:54 1991 Per Bothner (bothner at cygnus.com)
2381
2382 * ldmain.c (main): Make config.magic_demand_paged be true
2383 by default. Don't the WP_TEXT and D_PAGED flags of
2384 output_bfd here; it's too late, so set it when output_bfd
2385 is created (in ldlang.c). Also fix setting of EXEC_P flag
2386 * ldlang.c (ldlang_open_output): Set output_bfd->flags here.
2387 * ldlang.c: Remove some duplicate extern declarations.
2388 * ldgram.y: Fixes to -N and -n options.
2389 * Makefile.in: Recognize upper case letters in sed script
2390 to remove assignments from script files.
2391 * ldtemplate: Don't assukme that -N or -n options
2392 imply use of -r script.
2393 * mkscript.c: Tweaking to correctly handle \n and \\ in input.
2394
2395 Fri Oct 11 10:29:27 1991 Steve Chamberlain (steve at cygnus.com)
2396
2397 * ldtemplate: include bfd.h before sysdep.h.
2398
2399 Fri Oct 11 04:24:45 1991 John Gilmore (gnu at cygnus.com)
2400
2401 Restructure configuration scheme for bfd, binutils, ld.
2402
2403 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
2404 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
2405 Change some config names to match other dirs.
2406 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
2407 get defined first.
2408 * config/: Rename some config files to match up h-*.h names.
2409 Remove all the HOST_SYS definitions from the config files.
2410
2411 Tue Oct 8 16:00:57 1991 Per Bothner (bothner at cygnus.com)
2412
2413 * ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
2414 * ldtemplate: Remove ldfile_add_library_path calls;
2415 just use the SEARCH_DIR commands in the script files.
2416 * Makefile.in: Add LIB_PATH macro, which if set is used to replace
2417 the SEARCH_DIR commands in the scripts (using ugly sed magic).
2418 This is primarily intended for cross-linking, where you would
2419 place libaries in a different place than native libraries.
2420 Also, emulations made from ldtemplate now use $(srcdir).
2421 * ldglda29k.sc: Change SEARCH_DIR commands to a conventional
2422 form; people can use the Makefile's LIB_PATH to override.
2423
2424 Tue Oct 8 14:51:21 1991 Roland H. Pesch (pesch at cygnus.com)
2425
2426 * Makefile.in: fix target ld.dvi, add target ld.info
2427 ld.texinfo: make info filename ld.info
2428
2429 Fri Oct 4 21:51:58 1991 John Gilmore (gnu at cygnus.com)
2430
2431 * Makefile.in: Avoid using $< in non-suffix rules (breaks on Sun
2432 Make).
2433 * ldfile.c, ldlang.c, ldmain.c, ldwrite.c: Cope with renames of a
2434 few BFD types & enums.
2435
This page took 0.077537 seconds and 5 git commands to generate.