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