Commit graph

832 commits

Author SHA1 Message Date
Stan Shebs
9218920aba Tue Jan 25 20:01:55 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-xconfig.in: New file, mpw x mips configuration fragment.
	* mpw-em.c: New file, compressed version of em_mipsidt.c.
1994-01-26 04:18:25 +00:00
Stan Shebs
b5b2c88649 Tue Jan 25 19:54:19 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in: New file, MPW configuration fragment.
	* mpw-build.in: New file, MPW build script fragment.
	* mpw-make.in: New file, MPW makefile fragment.
	(This file is semi-automatically generated from Makefile.in.)
	* ldfile.c (slash): If MPW, set to `:'.
	* ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
	prevent redefinition errors.
1994-01-26 04:17:05 +00:00
Stan Shebs
8594f56890 Tue Jan 25 13:19:41 1994 Stan Shebs (shebs@andros.cygnus.com)
* ldmain.c (main): Compute and display total execution time.
	* ld.texinfo (-stats): Document the option.
1994-01-25 21:30:00 +00:00
Ian Lance Taylor
5dad4c9728 * ldmain.c (reloc_overflow): Added name, reloc_name and addend
arguments.
1994-01-24 20:22:12 +00:00
Ian Lance Taylor
de08b0b153 * ldlang.c (lookup_name): Set BFD GP size to -G argument value
after opening BFD.
1994-01-24 19:55:02 +00:00
Ian Lance Taylor
755f42fe99 * ldlang.c (relaxing): Removed global variable.
(lang_size_sections): If the canonical symbols have not already
	been read in, read them in before relaxing.
	* ldlang.h (relaxing): Removed declaration.
1994-01-24 17:59:18 +00:00
Ian Lance Taylor
5e6cd559cf * ldlang.c (new_afile): Initialize loaded field to false.
(lookup_name): If file was already loaded, don't call the
	add_symbols entry point again.
1994-01-21 05:47:18 +00:00
David MacKenzie
8de26d624e * ld.texinfo: Clarify what -T option does. 1994-01-19 21:58:31 +00:00
Steve Chamberlain
a843c81763 * scripttempl/m88kbcs.sc: Don't use CREATE_OBJECT_SYMBOLS, that's
for a.out.
1994-01-19 00:21:59 +00:00
Ian Lance Taylor
8a432746ae Motorola Delta sysV68 support from phdm@info.ucl.ac.BE (Philippe
De Muyter).
	* configure.in (m68k-motorola-sysv*) New target.
	* config/delta68.mt: New file.
	* emulparams/delta68.sh: New file.
	* scripttempl/delta68.sc: New file.
	* Makefile.in (ALL_EMULATIONS): Added em_delta68.o.
	(em_delta68.c): New target.
1994-01-14 20:43:07 +00:00
Ian Lance Taylor
901f3538ee * scripttempl/elf.sc: Correct typo. 1994-01-11 18:22:51 +00:00
David MacKenzie
c344d88420 * ldgram.y, ldlex.l: Make the space between -e, -u, and -y and
their arguments optional, for compatibility with the old GNU ld.
1994-01-11 03:59:49 +00:00
Ian Lance Taylor
267a3ab363 * scripttempl/elf.c: Define __bss_start before the .sbss section. 1994-01-08 01:01:23 +00:00
Ian Lance Taylor
2f84ec0d97 Various entries. 1994-01-06 20:05:44 +00:00
Ian Lance Taylor
b9395be3af * ldmain.c (add_to_set): Add bitsize argument.
(constructor_callback): New function.
	(link_callbacks): Add constructor_callback.
	* ldctor.c (struct set_info): Add bitsize field.
	(ldctor_add_set_entry): Add bitsize argument.
	(ldctor_build_sets): Base the size of the elements of the set on
	the bitsize, rather than always using LONG.
	* ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
1994-01-06 20:04:26 +00:00
Ian Lance Taylor
c477527cbb * ld.h (QUAD_SIZE): Define.
* ldgram.y (QUAD): New token.
	(length): Handle it.
	* ldlex.l: Return QUAD.
	* lexsup.c (keywords): Add QUAD.
	* ldwrite.c (build_link_order): Handle QUAD.
	* ldlang.c (print_data_statement): Handle QUAD.
	(lang_size_sections): Likewise.
	(lang_do_assignments): Likewise.
	* ldexp.c (exp_print_token): Add QUAD to table.
	* ld.texinfo: Describe QUAD.
1994-01-06 19:38:36 +00:00
Ian Lance Taylor
3107eb5b38 * scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
since the Alpha doesn't use them.
1994-01-06 05:14:48 +00:00
David MacKenzie
080d8af095 * ldemul.h (ld_emulation_xfer_struct): Comment the members. 1994-01-06 01:57:11 +00:00
Rob Savoye
de9425a8db Add vsta.mt and vsta.sh. 1994-01-04 16:35:49 +00:00
Rob Savoye
8387f17d83 Support for VSTa micro-kernel. 1994-01-01 20:53:41 +00:00
David MacKenzie
23fdc6bebd clarify change 1994-01-01 19:20:16 +00:00
David MacKenzie
34f9bf4b3c * scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
needed for i386mach.

	* emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
	(PAGE_SIZE): Don't define; not used.
1994-01-01 19:15:50 +00:00
Ian Lance Taylor
1d166443d4 * ldgram.y (yyerror): Make argument const char *, and actually
print it out rather than assuming it is a syntax error.
	* ldmisc.h: Change declaration of yyerror.
	* ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
1993-12-31 21:17:33 +00:00
David MacKenzie
ae9c800701 * emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
exec header offset, since the exec header isn't loaded.
	(PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
1993-12-31 21:13:03 +00:00
David MacKenzie
4156620964 minor fixes 1993-12-31 21:08:12 +00:00
Ian Lance Taylor
93b135859d Removed files that are no longer used by the rewritten linker. 1993-12-30 19:57:49 +00:00
Ian Lance Taylor
4a6afc88bb A major rewrite to move the bulk of the linker into BFD so that
more efficient backend code can be written for specific object
	files.
	* lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
	ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
	* ldctor.c, ldctor.h: Complete rewrite.
	* ldwrite.c, ldwrite.h: Complete rewrite.
	* ld.h (strip_symbols_type, strip_symbols): Removed.  Use
	link_info.strip instead.  Changed all uses.
	(discard_locals_type, discard_locals): Removed.  Use
	link_info.discard instead.  Changed all uses.
	(ld_config_type): Removed relocateable_output field; use
	link_info.relocateable instead; changed all uses.  Added stats
	field.
	(set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
	set_loader_symbol): Removed.
	* ldexp.h (node_class): Added etree_rel.
	(etree_type): Added rel field.
	* ldexp.c (exp_print_token): Bracketed table initialization.
	(exp_relop): New function.
	(fold_name): Use linker hash table rather than ldsym functions.
	(exp_fold_tree): Likewise.  Also, handle etree_rel case.
	(exp_print_tree): Handle etree_rel.
	* ldgram.y (strip_symbols, discard_locals): Removed.
	(OPTION_stats, OPTION_no_keep_memory): New tokens.  Handle them.
	(REL): New token.  Does not appear in grammar, but needed for
	expression code.
	(file): Don't call lang_final; it's called by main anyhow.
	* ldlex.l: Accept -stats and -no-keep-memory options.
	* ldlang.h (fill_type): Make unsigned int, not unsigned short.
	* ldlang.c: Consistently use fill_type for fill argument.
	(lang_init_script_file, script_file): Removed.
	(create_object_symbols): Removed.  Use
	link_info.create_object_symbols_section instead.  Changed all
	uses.
	(lang_add_keepsyms_file): Removed.
	(lookup_name): Call bfd_link_add_symbols instead of
	ldmain_open_file_read_symbol.
	(wild): Don't iterate over script_file.
	(open_output): Create link hash table.
	(lang_place_undefineds): Rewrote.
	(lang_size_sections): Handle relaxing (doesn't work yet).
	(lang_relocate_globals): Removed.
	(lang_finish): Use link hash table rather than ldsym functions.
	(lang_common): Rewrote.
	(lang_one_common): New function.
	(ldlang_add_file): Add file to link_info.input_bfds list.  Set
	usrdata.
	(create_symbol): Removed.
	(lang_process): Don't call lang_init_script_file.  Call
	ldctor_build_sets rather than find_constructors.  Don't call
	lang_relocate_globals.
	(lang_abs_symbol_at_beginning_of): Rewrote.
	(lang_abs_symbol_at_end_of): Rewrote.
	* ldmain.c (had_y): Removed.
	(lprefix, lprefix_len): Removed; use link_info fields instead.
	Changed all uses.
	(multiple_def_count, commons_pending, undefined_global_sym_count,
	total_symbols_seen, total_files_seen): Removed.
	(link_callbacks, link_info): New variables.
	(main): Initialize link_info.  Don't call init_bfd_error_vector or
	ldsym_init.  Don't set now unused variables.  Handle -stats.
	(get_emulation): Removed obsolete and nonfunctional GNU960 code.
	(add_ysym): Rewrote.
	(read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
	search_library, gnu960_check_format, decode_library_subfile,
	linear_library, symdef_library, clear_syms, subfile_wanted_p):
	Removed.
	(add_keepsyms_file, add_archive_element, multiple_definition,
	multiple_common, add_to_set, warning_callback, undefined_symbol,
	reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
	New functions.
	* ldmisc.c (vfinfo): Accept a string for %T, not a symbol.  Don't
	require symbols for %C; look them up instead.
	* emultempl/hppaosf.em: Pass link_info to
	hppa_look_for_stubs_in_section.
	* Makefile.in: Rebuilt dependencies.
	(CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
	relax.c.
	(HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
	relax.h.
	(EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
	ldlang.h and ldctor.h.

	* Makefile.in (ldlex.c): Don't depend on ldgram.h.  Remove
	declarations of free and malloc from flex output.  Change malloc
	to ldmalloc in flex output.
1993-12-30 19:51:41 +00:00
Mark Eichin
f2f824ae57 * config/i386-linux.mt: delete ".sh" from genscripts argument
(change made to genscripts on July 21...)

This is all it took for linux-native ld to build. It isn't necessarily useful,
particularly as gcc is still configured to pass -m486 and -dll-verbose, which
this ld doesn't parse...
1993-12-27 19:39:55 +00:00
Jeff Law
93df4ec5fe * ldmain.c (lprefix): Change default from a char to a string
with only one character.
        (lprefix_len): Set default to one.

        * ldmain.h (lprefix_len): Declare.

        * ldsym.c (write_file_locals): Use strncmp rather than a character
        comparison for lprefix.

        * emultmpl/m88kbcs.em (before_parse): Set lprefix and lprefix_len
        correctly.

        * emultmpl/hppaosf.em: Include ldexp.h.
        (before_parse): Set lprefix and lprefix_len correctly.
1993-12-17 05:21:33 +00:00
Ian Lance Taylor
553b002162 * ldlex.h: Don't declare yywrap if it is a macro.
* ldlex.l: Include sysdep.h.
1993-12-14 22:34:41 +00:00
Ian Lance Taylor
498fbd3c56 * ldlang.c (lang_for_each_statement_worker,
lang_for_each_statement): Forgot to use PARAMS.
1993-12-14 22:20:35 +00:00
Ian Lance Taylor
1400cdc51d * Makefile.in: Added .PHONY targets where appropriate. Added some
comments.  Also:
	(gcclibdir, version): Removed unused variables.
	(DEP): New variable, set to mkdep.
	(ALL_CFLAGS): New variable.  Used in .c.o target.
	(CFILES, HFILES, GENERATED_CFILES, GENERATED_HFILES): New
	variables.
	(HEADERS, MANSOURCES, LDCSOURCES, GENERATED_SOURCES,
	GENERATED_HEADERS, LDSOURCES, BFD_SOURCES, SOURCES): Removed
	mostly obsolete variables.  Adjusted remaining uses.
	(DEF_EMUL): Removed variable.
	(ldmain.o): Handle undefined EMUL error correctly.
	(ldemul-list.h): Depend on config.status rather than Makefile.
	Create via temporary file.
	(ver960.c, roll, make): Removed obsolete targets.
	(.dep, .dep1, dep.sed, dep, dep-in): New targets.  Used to rebuild
	dependencies.
1993-12-13 19:46:45 +00:00
Ian Lance Taylor
f80837391e New file used for rebuilding dependencies. 1993-12-13 19:37:22 +00:00
Ian Lance Taylor
9f6294075e More gcc lint. 1993-12-12 00:54:14 +00:00
Ian Lance Taylor
fcf276c495 Made many changes to eliminate gcc warnings. Made various
cosmetic changes, declared various things in header files, removed
	various extern declarations from .c files.  No substantive
	changes.
1993-12-11 22:55:55 +00:00
Ian Lance Taylor
2c6635a46f * ldlang.c (lang_process): Ifdef out final call to
lang_size_sections again (reverting change of Nove 2), since it
	breaks the Sun4 linker.
1993-12-11 22:46:15 +00:00
Ian Lance Taylor
8e964b071d * ldgram.y (OPTION_Oval): New token.
(command_line_option): Accept and ignore it.
	* ldlex.l (<COMMAND>): Handle -On where n is a number.
1993-12-02 00:25:48 +00:00
Ken Raeburn
d05ac46bc6 * configure.in: Group targets by CPU. Merge some m68k target entries with
different CPU specs that use the same ld_target values.

* configure.in: Add sparc*-*-coff.
* config/coff-sparc.mt, emulparams/coff_sparc.sh: New files.
* Makefile.in (ALL_EMULATIONS): Add em_coff_sparc.o.
(em_coff_sparc.c): Add dependencies and build rules.
1993-12-01 22:14:05 +00:00
Ken Raeburn
9acba7e204 New file for bare sparc-coff support. 1993-12-01 22:12:20 +00:00
Ian Lance Taylor
f651733a12 * ldgram.y (OPTION_call_shared, OPTION_non_shared): New tokens.
(command_line_option): Accept and ignore them (for now).
	* ldlex.l (<COMMAND>): Handle -non_shared and -call_shared.
1993-12-01 17:22:03 +00:00
Ian Lance Taylor
2332114c71 * configure.in (mips*-sgi-irix5*): New target. Use mipsb-elf32.
* emulparams/elf32mipsb.sh (DATA_ADDR): Define.
	(OTHER_READONLY_SECTIONS): Define for .reginfo.
	(EXECUTABLE_SYMBOLS): Define for _DYNAMIC_LINK.
	* scripttempl/elf.sc: Use EXECUTABLE_SYMBOLS when not relocating.
	Move OTHER_READONLY_SECTIONS after all the other readonly
	sections.  Don't use DATA_ADDR twice.
1993-11-19 19:31:51 +00:00
Ian Lance Taylor
973e421e67 * ldmain.c (enter_file_symbols): Removed duplicate tests of p. If
p is in a common section, make sure the BFD has a section of that
	name.
1993-11-19 19:29:49 +00:00
Sean Eric Fagan
b4a79a1600 Use sun4sol2 for a target of sparc-netware. 1993-11-17 22:20:44 +00:00
Stan Shebs
dd3f0e5b7d More correct m68k LynxOS support 1993-11-12 00:37:00 +00:00
David Henkel-Wallace
b11b3aceb2 netware target support. 1993-11-08 14:28:46 +00:00
David MacKenzie
2ccb88c0d6 correct mach3 values 1993-11-06 05:51:14 +00:00
Ken Raeburn
1a9f0c717f adjusting repository after cvs mixup 1993-11-05 20:35:15 +00:00
Ken Raeburn
87ce76559c First cut at sanitization, doc files, &c for gas/binutils releases 1993-11-05 19:21:35 +00:00
Ken Raeburn
4ecfad7942 Fix up dependencies and rules for ld.dvi, ld.info. 1993-11-04 00:09:39 +00:00
Ken Raeburn
3c1af24dd5 * Makefile.in (distclean): Don't get rid of dvi or info files. 1993-11-03 23:09:24 +00:00
David MacKenzie
3c292c5a46 make -o override OUTPUT 1993-11-03 21:19:18 +00:00
Roland Pesch
8920addc82 Fixed minor typo ("host" sb "target" in discussion of GNUTARGET).
To my shame, this was reported 28 aug 92 by Jonathan Ryshpan, and lost
in my mail pile til now.
1993-11-03 00:09:34 +00:00
Jeff Law
f1f6b5e9cf * scripttempl/hppaosf.sc: (___stack_zero, etext, _etext,
edata, _edata, end): Add definitions of these symbols.
	(__end):  Remove definition of this symbol.
	(__data_start): Move definition of this symbol.
1993-11-02 23:59:24 +00:00
Jeff Law
5f62613e11 * emultempl/hppaosf.em: Various fixes and support for linker stub
generation.
        (hppaosf_finish, hppaosf_search_for_padding_statements,
        hppaosf_create_output_section_statements): New functions in
        support of linker stub generation.
        (ld_hppaosf_emulation):  Redefine to include new
        emulation-specific routines.
1993-11-02 23:55:58 +00:00
Jeff Law
9d9d72fcf5 * emultempl/hppaosf.em: Various fixes and support for linker stub
generation.
	(hppaosf_finish, hppaosf_search_for_padding_statements,
	hppaosf_create_output_section_statements): New functions in
	support of linker stub generation.
	(ld_hppaosf_emulation):  Redefine to include new
	emulation-specific routines.
1993-11-02 23:54:04 +00:00
Jeff Law
97fbbaca20 * ldlang.c (lang_process): Re-enable last call lang_size_sections.
Pass abs_output_section rather than NULL to avoid invalidating
        absolute symbols.
1993-11-02 23:47:41 +00:00
Stan Shebs
278d569a2a Keep Lynx file 1993-11-01 19:27:15 +00:00
Stan Shebs
9798d9bf47 Keep Sparc file 1993-11-01 19:25:39 +00:00
David MacKenzie
46cc3ed169 mach 386 changes 1993-10-29 19:30:11 +00:00
David MacKenzie
4fda44fe17 test 1993-10-29 19:15:57 +00:00
Ian Lance Taylor
c3b34cfd3b * ld.h (flag_is_*): Removed macros.
* ldmain.c (enter_global_ref), ldsym.c (write_file_locals):
	Consistently check the BFD symbol flags directly, rather than
	using file_is_* macros.
1993-10-29 19:02:26 +00:00
Stan Shebs
1ffcbc2511 Sparc COFF support 1993-10-29 02:39:41 +00:00
Stan Shebs
7b95fe96ef Sparc Lynx support 1993-10-29 02:39:07 +00:00
David MacKenzie
da08e9b96c clarify reason for -sort-common 1993-10-29 00:30:51 +00:00
Ian Lance Taylor
d17eb3db0e * Makefile.in: Add dependency for $(EMULATION_OFILES). 1993-10-28 18:09:20 +00:00
Ian Lance Taylor
db4b5ad081 * relax.c (write_relax): Check return value of bfd_seclet_link. 1993-10-25 20:10:35 +00:00
Ken Raeburn
2fe6619ee0 * ldlang.c (delete_output_file_on_failure): New variable.
(open_output): Set it after bfd open succeeds.
* ldmisc.c (vfinfo): Test it.

Changes from Peter Hoogenboom, hoogen@cs.utah.edu:

* ldsym.c (write_file_locals): Set the BSF_FILE flag for object symbols.

* ldemul.c: Support was added to allow emulation-specific processing to occur.
This support was added primarily for linker stub generation in the elf32-hppa
gld.
(ldemul_finish, ldemul_create_output_section_statements):  New functions.
* ldemul.h: Support was added to allow emulation-specific processing to occur.
(As described above.)  Added finish and create_output_section_statements fields
to ld_emulation_xfer_struct structure.
* ldlang.c: Add calls to emulation-specific routines.
(lang_process):  Add call to ldemul_create_output_section_statements function.
(lang_process):  Add call to a emulation-specific routine (and
some processing after the call).
1993-10-25 16:35:23 +00:00
Ian Lance Taylor
1c4b3cda62 * configure.in (alpha-*-osf*): New target; use alpha.mt.
* Makefile.in (ALL_EMULATIONS): Added em_alpha.o.
	(em_alpha.c): New target; use alpha.sh and alpha.sc.
	* config/alphaosf.mh (NATIVE_LIB_DIRS, HOSTING_CRT0): Define.
	* config/alpha.mt: New file.
	* emulparams/alpha.sh: New file.
	* scripttempl/alpha.sc: New file.
1993-10-19 19:55:52 +00:00
Ian Lance Taylor
42f9673d8b New files for Alpha linker. 1993-10-19 19:52:33 +00:00
David Edelsohn
73f5d5febb * ldlang.c (lang_size_sections, lang_common): ALIGN_N can't handle
types of different sizes (eg: 64 and 32 bits), so coerce.
* ld.h (ALIGN_N): Add warning about usage.
1993-10-15 09:29:32 +00:00
Ian Lance Taylor
98b5caadf3 * ldmain.c (enter_global_ref): Just ignore any weak symbol for
which we already have a definition, rather than checking in
	several different places whether the symbol is weak.
1993-10-13 20:04:30 +00:00
Ian Lance Taylor
a71da76017 * configure.in (mips-*-elf*): New target; use mipsb-elf32.
* scripttempl/elf.sc: Only use OTHER_READONLY_SECTIONS and
	OTHER_READWRITE_SECTIONS if relocating.  Shell variables are not
	expanded within them.
	* config/mipsb-elf32.mt: New file.
	* emulparams/elf32mipb.sh: New file.
	* Makefile.in (em_elf32mipb.c): New target.
1993-10-12 21:46:52 +00:00
Ian Lance Taylor
f1d043f50f elf32mipb.sh: New emulation parameter file for big endian MIPS ELF. 1993-10-12 21:36:05 +00:00
Ian Lance Taylor
514977a5ea mipsb-elf32.mt: New configuration file for big endian MIPS ELF. 1993-10-12 21:33:57 +00:00
Steve Chamberlain
9ddf56994c Use both h8300 emulations. 1993-10-08 17:45:23 +00:00
Roland Pesch
7f9ae73e76 Makefile.in: correct out-of-date TEXIDIR default
ld.texinfo: (a) fix INPUT cmd description (b) fix bad formatting in FSF
            style (warning examples) (c) add some index entries on warnings
1993-10-01 21:08:13 +00:00
Rob Savoye
a4aeaacf69 * ldlang.c (lang_add_input_file): If it's a library brought in by
INPUT(), then change the file type to lang_input_file_is_l_enum.
	* ldgram.y: In input_list, change lang_input_file_is_file_enum to
	lang_input_file_is_search_file_enum so objects brought in using
	INPUT() do a path lookup.
1993-10-01 01:28:55 +00:00
Stan Shebs
bd7b78f769 Lynx support 1993-09-28 20:59:59 +00:00
Stan Shebs
3f905ec153 Lynx support 1993-09-28 20:51:22 +00:00
Ian Lance Taylor
15fff00f6e * config/solaris2.mh: New file. Define HOSTING_CRT0 and
HOSTING_LIBS for testing.
1993-09-23 21:53:33 +00:00
Ian Lance Taylor
03451d7fa4 Add i386 SVR4 configuration files that I couldn't add remotely. See
ChangeLog.
1993-09-17 22:17:52 +00:00
Ian Lance Taylor
9a467cb2b5 Finish up support for i386-sysv4 (without shared libraries):
* ld.h (flag_is_weak): Define.
	* ldlang.c (print_symbol): Mention whether symbol is weak.
	(print_input_section): Print weak symbols as globals.
	* ldmain.c (refize): Do not zero out BSF_WEAK flag.
	(enter_global_ref): Do not warn if a weak symbol redefines a
	global symbol.  Do not let a weak symbol redefine a common symbol.
	(enter_file_symbols): Treat weak symbols as global symbols.
	(subfile_wanted_p): Do not pull in an object file from a archive
	just to resolve an undefined weak symbol.
	* ldmisc.c (vfinfo): Don't needlessly malloc space after a fatal
	error; the error might be that malloc has run out of space.
	* ldsym.c (write_file_locals): Treat weak symbols as global.
	* configure.in (i[34]86-*-sysv4*, i[34]86-*-elf*): New targets;
	use i386-elf.
	* config/i386v4.mh: New file; set NATIVE_LIB_DIRS to /usr/ccs/lib.
	* config/i386-elf.mt: New file; set EMUL to elf_i386.
	* emulparams/elf_i386.sh: New file.
	* scripttempl/elf.sc: Use ${NOP} as filler (defaults to 0).
	* Makefile.in (NATIVE_LIB_DIRS): Define to be empty.
	(ALL_EMULATIONS): Add em_elf_i386.o.
	(GENSCRIPTS): Pass NATIVE_LIB_DIRS as sixth argument.
	(em_elf_i386.c): New target, like other em_*.c targets.
	($(LD_PROG)): Pass $(CFLAGS) to $(CC).
	* genscripts.sh: Accept NATIVE_LIB_DIRS as sixth argument.  If
	nonempty, and configured for native, add it to LIB_PATH.
1993-09-17 22:11:00 +00:00
Stan Shebs
4f6d6db937 Added statements for stab sections in coff files. 1993-09-17 20:16:17 +00:00
David Edelsohn
d71cbf2a83 Add EMUL=h8300h. 1993-09-12 23:12:31 +00:00
David Edelsohn
1bff7c388a * ldmain.c (main): Call set_scripts_dir after argv has been processed. 1993-09-12 23:07:40 +00:00
Jeffrey Wheat
67d9694933 Added CXXFLAGS to compile stage in ld.cdtest/cdtest.exp 1993-09-10 17:00:19 +00:00
Jeffrey Wheat
108f145ba4 Changed CXX back to g++. Using ../gcc/xgcc breaks because of <assert.h> 1993-09-10 16:53:33 +00:00
Jeffrey Wheat
8a6665aef8 Changed CXX back to g++. ../gcc/xgcc breaks the cdtest because of <assert.h> 1993-09-10 16:50:52 +00:00
Jeffrey Wheat
3a9149a7b7 Fixed RUNTEST* CXX CXXFLAGS macros and check rule. 1993-09-10 16:37:47 +00:00
David MacKenzie
cbb5c2d133 * Makefile.in (TAGS): Use shell wildcards. 1993-09-10 14:29:45 +00:00
Jeffrey Osier
959eba2070 * Makefile.in: add TEXINPUTS variable and use it in ld.dvi target 1993-09-08 01:08:26 +00:00
Roland Pesch
a0a55af6a7 * ld.texinfo: re-enable included config file; conditionalize doc
for -oformat to interact properly with SingleFormat doc config
	var; rename @up/@down to @raisesections/@lowersections.
1993-09-03 23:48:59 +00:00
David MacKenzie
836a5ee449 tiny additions & fixes 1993-09-03 22:47:04 +00:00
David Edelsohn
c10744770c * ld.h (BYTE_SIZE, SHORT_SIZE, LONG_SIZE): Define as suggested by
Steve.
1993-08-26 22:22:36 +00:00
Ken Raeburn
4346166b07 From Peter Hoogenboom <hoogen@shafer.cs.utah.edu>:
* emultempl/hppaosf.em (ld_hppaosf_emulation): Correct name for PA
ELF emulation is "elf32-hppa" not "elf-big".
(hppaosf_before_parse): Remove unneeded processing of environment variables.
* scripttempl/hppaosf.sc: Include .hppa_linker_stubs sections in
.text segment of output file.
* emulparams/hppaosf.sh (OUTPUT_FORMAT): Use elf32-hppa.
1993-08-24 23:45:26 +00:00
K. Richard Pixley
95a2b9d2ce move BYTE_SIZE, SHORT_SIZE, LONG_SIZE from ldlang.c into ld.h 1993-08-24 23:34:32 +00:00
K. Richard Pixley
b98bd3db83 define BYTE_SIZE, SHORT_SIZE, and LONG_SIZE which are no longer in bfd.h. 1993-08-24 23:17:52 +00:00
David D. Zuhn
3b55444d36 keep i386-linux.h 1993-08-18 22:54:11 +00:00
Ian Lance Taylor
ddddcdf0f3 * ldlang.c (open_output, lang_check): Check return value of
bfd_set_arch_mach.
1993-08-17 19:25:18 +00:00
Steve Chamberlain
ea1c0ad276 * scripttempl/h8500.sc: Start all sections in a different segment.
* scripttempl/z8ksim.sc: Handle constructors
1993-08-17 14:04:24 +00:00
Jeffrey Wheat
8b46d73404 added support for the original "make chech-cdtest" 1993-08-12 23:20:25 +00:00
Jeffrey Wheat
26f709de0f cleaned up tests to work like they did originally in the makefile 1993-08-12 23:19:09 +00:00
Jeffrey Wheat
d301e438b5 check targets reimplemented to old way. 1993-08-12 15:54:30 +00:00
Ian Lance Taylor
d62026add2 * config/i386v.mh, config/irix4.mh: Use gcc
-print-libgcc-file-name rather than $(libdir)/libgcc.a.
1993-08-11 19:14:25 +00:00
Ian Lance Taylor
75fe54719c * config/i386sco.mh: New file; copy of i386v.mh to correspond to
bfd/configure.host change.
1993-08-11 15:57:39 +00:00
David MacKenzie
91fd30d46c mention that [section] is no longer supported 1993-08-10 16:12:30 +00:00
David MacKenzie
31f55aa540 clean up error messages 1993-08-06 20:13:28 +00:00
Ian Lance Taylor
3353630442 * scripttempl/mips.sc: Always define _ftext, _fdata, _fbss.
(BSS_VAR): Removed; now always define _fbss.
	* emulparams/mipsidt.sh, emulparams/mipsidtl.sh (BSS_VAR):
	Removed.
1993-08-06 18:35:03 +00:00
David MacKenzie
867a1b8a18 error fixes and clarifications 1993-08-05 22:49:26 +00:00
Jeffrey Wheat
7c6a9e798c Changes to add dejagnu testsuite support 1993-08-05 04:16:43 +00:00
Jeffrey Wheat
671fe6e9a3 New files for ld testsuites 1993-08-05 04:14:51 +00:00
David MacKenzie
8bf66be8aa add missing newlines in messages 1993-08-05 02:52:17 +00:00
Steve Chamberlain
cdbcb08c10 Keep h8300h.sc 1993-08-04 17:24:11 +00:00
Steve Chamberlain
8f20740950 Keep h8300h.em 1993-08-04 17:23:30 +00:00
Steve Chamberlain
e85fd7216e Keep m88kbcs.em 1993-08-04 17:19:22 +00:00
David MacKenzie
1cd4cca9bf add more info about -warn-common 1993-08-03 23:09:03 +00:00
David MacKenzie
2a28d8b006 add -warn-common option 1993-08-03 22:47:28 +00:00
David MacKenzie
3e27cc11c4 don't list objfiles... as an option 1993-08-03 00:33:38 +00:00
Ken Raeburn
94f9d427e5 * scripttempl/elf.sc: Add hooks for .sdata, .sbss, and
target-specific sections, and for changing data section vma.
1993-08-02 16:52:10 +00:00
Ken Raeburn
7ff4288057 elf files changed names; keep i386linux.sh 1993-07-30 22:30:29 +00:00
Ken Raeburn
8a910eb2ba renaming elf emulparams files to work with current emulation handling code 1993-07-26 19:46:09 +00:00
Ken Raeburn
6b93d764ca solaris 2 changes 1993-07-26 18:09:05 +00:00
Ken Raeburn
52a3f425d5 Pass emulation name without ".sh". 1993-07-26 18:08:43 +00:00
Ken Raeburn
fcea515b61 (MAXPAGESIZE): Renamed from PAGE_SIZE.
(TEXT_START_ADDR): Value should be 0x10100.
(NONPAGED_TEXT_START_ADDR): Same (I guess).
1993-07-23 17:58:24 +00:00
Ken Raeburn
cd739ca9b8 renamed PAGE_SIZE to MAXPAGESIZE 1993-07-23 17:57:35 +00:00
David MacKenzie
d59e5a4707 move compile-in decision to genscripts.sh 1993-07-22 00:55:56 +00:00
David MacKenzie
18d9a9c502 fix typo 1993-07-22 00:37:43 +00:00
David MacKenzie
a6152e399b The default script is now compiled in; the others are still in the filesystem. 1993-07-22 00:33:10 +00:00
Mark Eichin
077398b1bf change linux to use OTHER_EMULATIONS 1993-07-20 16:54:23 +00:00
Mark Eichin
9c4d1ed92c experimental linux support 1993-07-20 16:50:41 +00:00
Ken Raeburn
820c446cce Make emul-list.h depend on Makefile, so changes to EMULATION_OFILES get
reflected.
1993-07-20 16:38:49 +00:00
Ken Raeburn
0750b974c0 disable em_i386linux.o until emulparams/i386linux.sh is checked in 1993-07-20 16:31:47 +00:00
Mark Eichin
c4161ca8c2 more linux support bits 1993-07-19 15:00:19 +00:00
Mark Eichin
783fec2af9 add linux support (may not work yet, just cloned from i386-aout) 1993-07-19 14:51:00 +00:00
Ian Lance Taylor
fe619ced4a * ldgram.y (OPTION_Lfile): New token.
(command_line_option): Accept OPTION_L NAME (whitespace after -L).
	* ldlex.l (<COMMAND>): Accept -L without FILENAME.
1993-07-16 21:15:40 +00:00
David Edelsohn
dd8ca662ce h8/300h stuff 1993-07-16 20:46:46 +00:00
David Edelsohn
5448fed531 Fix h8300h support (need own .mt file). 1993-07-16 20:44:05 +00:00
David Edelsohn
fb564b406c h8/300h support 1993-07-16 20:43:14 +00:00
David MacKenzie
922018a10c remove dupliate include 1993-07-15 22:02:01 +00:00
David MacKenzie
c3cbe3f459 source cleanups; fix finding scripts 1993-07-15 21:49:24 +00:00
David Edelsohn
4ab3a31f9e Add h8/300h support. 1993-07-15 21:45:16 +00:00
David MacKenzie
bbd2521f26 source cleanups; fix finding scripts 1993-07-15 21:43:28 +00:00
David Edelsohn
a5ef437e7f h8/300h support 1993-07-15 21:41:50 +00:00
Ian Lance Taylor
b0955bc979 * scripttempl/m88kbcs.sc: Removed TARGET statement. Changed
OUTPUT_FORMAT to use ${OUTPUT_FORMAT}.
	* emulparams/m88kbcs.sh: It's coff-m88kbcs, not m88kbcs.
1993-07-15 19:59:21 +00:00
Ian Lance Taylor
9edc5b2eca * Makefile.in (em_m88kbcs.c): Correct dependency.
(scripttempl/m88kbcs.sc): It's ARCH, not arch.
1993-07-15 17:57:26 +00:00
David MacKenzie
cffdcde9e9 * ldfile.c (ldlang_open_file, ldfile_open_command_file),
main.c (main): Print the errno string in the error message.
1993-07-15 04:46:25 +00:00
David Edelsohn
ac2c0ee786 * configure.in: Accept h8300h for target cpu.
* ldmisc.c (vfinfo): Have demangle remove leading underscore if
present (demangle is smart enough to know whether to do it or not).
1993-07-14 03:08:33 +00:00
David Edelsohn
8a80def6f4 Accept h8300h for target cpu. 1993-07-14 03:07:04 +00:00
David D. Zuhn
e7569ec89f add a -I to the makeinfo command line 1993-07-13 03:01:22 +00:00
David MacKenzie
f42084627b * ldmain.c (set_scripts_dir): Check . and <ld bin dir>/../lib for
ldscripts, as well as <ld bin dir> and SCRIPTDIR.
1993-07-13 00:54:45 +00:00
David MacKenzie
d723cd17d5 * ldlang.c (lang_process): Use sizeof instead of magic constant.
* ldmain.c (get_emulation, check_for_scripts_dir,
	set_scripts_dir):  New functions.
	(main): Call them.
1993-07-12 19:34:04 +00:00
Ken Raeburn
e7affb090d configure.in, elf.sc changes 1993-07-12 15:07:42 +00:00
Ken Raeburn
aa6743a58d Include .init, .fini, .rodata sections.
Create symbol "end" instead of "__end".
Comment out some parts that may not be needed (yet) for elf.
1993-07-12 15:05:38 +00:00
Ken Raeburn
e900b30cae Solaris 2 support; sparc64 sanitization. 1993-07-12 15:01:15 +00:00
Ken Raeburn
dc31b55093 fix values 1993-07-12 15:00:55 +00:00
Ken Raeburn
96593d4b82 Solaris 2 configuration; sparc64 sanitization. 1993-07-12 14:59:29 +00:00
Ken Raeburn
ba9ca6a387 Handle sparc64-* before sparc*.
Accept sparc-elf and sparc-solaris configurations (though ../configure.in
should still not configure this directory by default, it's not completely
working).
1993-07-12 14:56:45 +00:00
Ken Raeburn
3bf3f99aa7 keep elf.sc 1993-07-08 23:38:49 +00:00
Ken Raeburn
f90bb826e5 initial v9 stuff 1993-07-08 22:44:34 +00:00
Ken Raeburn
3cb6141731 ldmisc,ldlang,Makefile changes 1993-07-08 20:28:03 +00:00
Ken Raeburn
9b0da7f468 ldmisc.h (einfo, minfo, info): Don't bother with PARAMS macro when no
prototype is being supplied.
(ldmalloc, ldrealloc): Size argument is now size_t.

ldmisc.c (finfo): New function, accepts FILE* argument.
(vfinfo, case 'v'): New format character; displays bfd_vma in hex without
leading zeros.
(vfinfo, cases 'R' and 'C'): Use finfo(%v) when displaying a bfd_vma value,
instead of fprintf(%x) which won't hold a long long value.
(concat, buystring): String lengths are size_t.
(ldmalloc, ldrealloc, xrealloc): Size argument is now size_t.
1993-07-08 20:27:13 +00:00
Ken Raeburn
5af8e9d6a1 (new_stetement): Size argument is now type size_t.
Added forward declaration with prototype.
1993-07-08 20:25:26 +00:00
Ken Raeburn
58bf66f96e (ALL_EMULATIONS): Include $(OTHER_EMULATIONS) in case some target has stuff
to add.
1993-07-08 20:24:02 +00:00
Ken Raeburn
49bfda2c9a forgot to check this in yesterday 1993-07-08 18:56:54 +00:00
David MacKenzie
de87cdb466 * Make -v only print the version number.
Share some Texinfo documentation with BFD.
1993-07-08 18:00:11 +00:00
Ken Raeburn
a02945df81 Don't define bfd_vma here!
(Wasted at least a day tracking this damn thing down...)
1993-07-07 21:15:09 +00:00
Ian Lance Taylor
e357065c7e * Makefile.in (install): Don't install as $(tooldir)/bin/gld;
collect2 doesn't look for gld any more anyhow.
1993-07-07 18:36:12 +00:00
Ian Lance Taylor
59624167d7 * config/hp300hpux.mt: Use emulation hp3hpux rather than
hp300hpux, since the latter does not exist.
1993-07-05 21:32:35 +00:00
Ian Lance Taylor
55636aa789 * ldlang.c (lang_relocate_globals): Skip indirect symbols, which
now have a non NULL srefs_chain.
1993-07-05 21:32:13 +00:00
David MacKenzie
a04f1d001e Passing -L. is no longer necessary. 1993-07-03 02:23:22 +00:00
David MacKenzie
ff76a7dbf3 Fix previous fix. 1993-07-03 02:18:12 +00:00
David MacKenzie
173a0c3d26 * ldmain.c (main): Don't add scriptdir to the lib search path.
* genscripts.sh: Put the scripts in the ldscripts directory, not
	emulations.
	* configure.in (ldscripts): Make, instead of emulations.
	* Makefile.in (scriptdir): Take off the "ld" part.
	(install, clean, distclean): Use ldscripts, not emulations.
	In tests, pass -L., not -Lemulations.
	(ldmain.o): Don't pass -DSCRIPTDIR=....
	* ldlang.c (lang_process): Add "ldscripts/" to the name of the
	default script file.
1993-07-03 02:01:03 +00:00
David Edelsohn
7434d4e5dc scripttempl/h8300.sc: Add .tors section for constructor/destructors. 1993-07-03 00:14:40 +00:00
Steve Chamberlain
9a004b148b h8500hms -> h8500 1993-07-02 03:05:30 +00:00
David Edelsohn
0f1c5ea23b h8300hms -> h8300 1993-07-01 23:38:29 +00:00
K. Richard Pixley
1e787898a0 * Makefile.in (.y.c): skip default .y.c rules. gnu make can now run in
parallel without colliding on yacc's static file names. Without the
  stub rule, make will try to start two yacc's concurrently which
  fails because of yacc's static file names.
1993-07-01 01:23:39 +00:00
K. Richard Pixley
559d7baf89 * Makefile.in (ldgram.[hc]): rewrite this rule in such a way that gnu
make can run in parallel without colliding on yacc's static file
  names.
1993-06-30 22:48:51 +00:00
David Edelsohn
d26de265ef alpha-osf.mh -> alphaosf.mh 1993-06-30 20:56:07 +00:00
David MacKenzie
59fb874e52 * Makefile.in (scriptdir): Base on tooldir, not datadir. 1993-06-28 19:23:35 +00:00
David MacKenzie
bf065bfd97 * ldver.c (help): New function.
* ldver.h: Declare it.
	* ldlex.l, ldgram.y: Recognize new options --help and --version.
1993-06-26 20:13:24 +00:00
David MacKenzie
346535cc1f * ldlex.l, ldgram.y: Support new -oformat option.
Remove attempt at supporting script fragments on the command line.
	* ldlang.c (lang_add_output_format): Take new arg, FROM_SCRIPT.
	* mri.c (mri_format), ldgram.y: Change callers.
	* ldlang.h: Change prototype.
1993-06-22 17:41:28 +00:00
Ken Raeburn
304b747aad fix include path again 1993-06-22 03:42:59 +00:00
David MacKenzie
2b63dbfefd * .Sanitize (Things-to-keep): Add emulparams, emultempl, scripttempl. 1993-06-21 23:40:21 +00:00
David D. Zuhn
5ebaf24b77 single-quote $program_transform_name 1993-06-18 19:25:38 +00:00
David D. Zuhn
9cd039e778 more install/program_transform_name fixes 1993-06-18 17:03:58 +00:00
Steve Chamberlain
d360d135af Fix install. 1993-06-18 01:30:34 +00:00
David D. Zuhn
e9b991c691 doc last change 1993-06-17 23:55:23 +00:00
David D. Zuhn
e0d005f216 get install.sh canonicalized 1993-06-17 23:50:35 +00:00
David MacKenzie
d18a45278e Document -Map option. 1993-06-17 23:23:48 +00:00
David MacKenzie
2de8edce8f * ldgram.y: Tweak grammar to make reporting of invalid options work. 1993-06-17 22:55:38 +00:00
Steve Chamberlain
f216ecc54a Support for constructors. 1993-06-17 21:49:48 +00:00
David MacKenzie
565c93e92a * Makefile.in (.cc.o): Restore .SUFFIXES entry for .cc
and .cc.o rule.
1993-06-17 21:34:11 +00:00
David MacKenzie
f1907ff24b Moved to emulparams subdir. 1993-06-17 21:23:10 +00:00
David MacKenzie
6fa11e9f43 Moved to scripttempl subdir. 1993-06-17 21:21:21 +00:00
David MacKenzie
e89ea690c9 Moved to emultempl subdir. 1993-06-17 21:19:58 +00:00
David MacKenzie
168bb59fe6 No longer needed. 1993-06-17 21:16:37 +00:00
David MacKenzie
8ddef5528d * ldfile.c (ldfile_open_command): Don't try .ld extension.
It wasn't documented (or likely used) and wastes time.
	(try_open): If EXTEN is empty, don't try it.

	* ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
	ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
	ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
	with normal function declarations.

	* Move *.em to emultempl/*.em.  Move *.sh to emulparams/*.sh.
	Move *.sc-sh to scripttempl/*.sc.
	* {emultempl,emulparams,scripttempl}/README: New files.
	* sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
	removed, replaced with generic.em.
	* h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
	 h8[35]00hms.s[ch].  Change their contents to omit the "hms".

	* *.em (*_get_script): Return script name instead of script contents.
	* ldlang.c (lang_process): Change caller.

	* ldlex.l, ldgram.y: Recognize -m option.
	Check for input files after *all* options in grammar.
	* ldmain.c (main): Check for -m options.  Add default directory
	for -m.

	* mkscript.c: File removed.
	* genscripts.sh: Take two more parameters, tooldirlib and libdir,
	to add to the default LIB_PATH.
	Look for input files in the new subdirectories.
	Create the scripts in emulations subdirectory and don't filter
	them through mkscript.
	* configure.in: Make the emulations subdirectory.

	* Makefile.in: Account for all of the above changes.
	Remove unused .SUFFIXES.  Get libgcc.a path with gcc
	-print-libgcc-file-name instead of $(libdir)/libgcc.a.
	Put CFLAGS last in the compilation rules.
	Add -I../bfd to INCLUDES so sysdep.h is found.

	* ldfile.c (try_open): If opening without the extension fails,
	try with the extension even if -v or -V was given.
	had_script is imported (from ldgram.y), not exported.
1993-06-17 20:55:43 +00:00
David MacKenzie
1855298745 Nuke dir. 1993-06-16 21:16:16 +00:00
Ken Raeburn
f905eff404 look in ../include instead of ../bfd for bfd.h 1993-06-16 03:10:01 +00:00
Ken Raeburn
2a963f1a0e Makefile.in, aout.sc-sh, hp3hpux.sh changes 1993-06-16 03:07:27 +00:00
Ken Raeburn
31038b78a5 * aout.sc-sh: Add SHLIB_PATH like STACKZERO. Make STACKZERO
dependent on RELOCATING, not RELOCATION.
* hp3hpux.sh (SHLIB_PATH): Define it.
1993-06-16 03:06:33 +00:00
David D. Zuhn
c97b9003b0 remove parentdir support; use INSTALL_XFORM 1993-06-16 00:03:44 +00:00
Ian Lance Taylor
9de4d8f1c0 * ldexp.c (exp_fold_tree): Don't lose the old flag bits.
* ldgram.y (statement_list_opt): New nonterminal, either empty or
	statement_list.
	(section): Use statement_list_opt, not statement_list.
	* m68kcoff.sc-sh: Gather constructors and destructors and define
	__CTOR_LIST__ and __DTOR_LIST__ appropriately.
	* sa29200.sc-sh: Gather constructors and destructors and define
	___CTOR_LIST__ and ___DTOR_LIST__ appropriately.
1993-06-10 21:02:59 +00:00
Per Bothner
7f2649bb06 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
* configure.in:  No longer need to configure to get sysdep.h.
1993-06-07 19:57:26 +00:00
David D. Zuhn
91b3a2b678 * Makefile.in: remove old C++ rules; remove install:all and
install-info:info dependencies (these cause some spurious rebuilds
	at 'make install' time)
1993-06-04 23:20:08 +00:00
Steve Chamberlain
eb392e6825 Support for Alpha. 1993-06-04 23:14:16 +00:00
Ian Lance Taylor
1053ea99cb Remove sh sanitization comments. 1993-06-04 20:01:31 +00:00
Ian Lance Taylor
98f3d1afa4 * configure.in (mips-idt-ecoffl*): New target; use mips-idtl.
(mips-idt-ecoff*): Added trailing '*'.
	* config/mips-idtl.mt: New file; use EMUL of mipsidtl.
	* mipsidtl.sh: New file; like mipsidt.sh, but little endian.
	* Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
1993-06-04 19:50:31 +00:00
Ian Lance Taylor
559d1cff43 * config/sun3.mh (HOSTING_LIBS, HOSTING_EMU): Removed obsolete and
incorrect definitions.
1993-06-04 15:54:57 +00:00
Per Bothner
1cf91c69b0 * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR
symbols, unless stripping.
1993-06-01 22:44:42 +00:00
K. Richard Pixley
87756e15db added things-to-lose sections 1993-05-27 06:44:29 +00:00
Ian Lance Taylor
6354589838 * Makefile.in: configure looks for ####, so remove lines with many
'#' characters.
	* config/irix4.mh, config/i386v.mh: New files; set HOSTING_CRT0
	and HOSTING_LIBS correctly so that ``make check'' will work.
1993-05-25 22:37:41 +00:00
Ken Raeburn
1fe65669e5 missed part of renaming update 1993-05-20 21:30:26 +00:00
Per Bothner
5b7876febe * mips.sc-sh: Define _etext, _edata, and _end, in addition
to etext, edata, and end.  Needed for IRIX 4.0.5F.
	Patch from mwp@iconix.oz.au (Michael Paddon).
1993-05-20 20:59:28 +00:00
Ken Raeburn
0cb51aa15a missed this in mipsbsd renaming 1993-05-20 17:40:30 +00:00
Ken Raeburn
5266c5ec29 rename aout-mipsbsd.sc-sh to mipsbsd.sc-sh for 14-char file systems 1993-05-20 15:58:49 +00:00
Per Bothner
bc3b479ce4 New file. 1993-05-17 19:45:17 +00:00
Ian Lance Taylor
1720003031 * mips.sc-sh: Don't define BSS_VAR unless relocating. 1993-05-14 18:33:37 +00:00
Ken Raeburn
c05e34defe keep new files; get rid of trailing spaces after sh-support file names 1993-05-06 02:04:18 +00:00
Ken Raeburn
dd2a363ca0 hppaosf host & target makefile frags 1993-05-05 03:17:01 +00:00
Ken Raeburn
b8fc168daf *** empty log message *** 1993-05-05 02:50:10 +00:00
Ken Raeburn
7543e2feb9 missed a file 1993-05-05 02:08:31 +00:00
Ian Lance Taylor
ef86818669 * mips.sc-sh: Put constructors in the .data section.
* Makefile.in (cdtest): Added dependency on ld.new.
1993-05-04 19:39:33 +00:00
Per Bothner
034351e334 * Makefile.in: Change definition of $(tooldir) to match FSF.
* vax.sh, config/vax.mt, configure.in, Makefile.in:
	Support VAX Ultrix and BSD.
1993-05-04 02:51:33 +00:00
Per Bothner
9a3293b145 * config/vax.mt: Support VAX Ultrix and BSD. 1993-05-04 02:50:14 +00:00
Steve Chamberlain
68b61e5dc9 More resonable default. 1993-05-03 22:43:35 +00:00
Ken Raeburn
55cb97d896 hppa-osf(elf) support files 1993-05-03 20:58:06 +00:00
Ken Raeburn
2a1c2bad8b comment formatting fixup 1993-05-03 19:47:38 +00:00
David MacKenzie
ec40bbb87f Clean up English and Texinfo usage. 1993-04-29 03:39:02 +00:00
Ken Raeburn
5b4249d76c changes for hp300hpux -- won't be enabled until bfd work is done 1993-04-28 23:04:12 +00:00
Steve Chamberlain
84d42ddd61 sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH. 1993-04-27 01:37:02 +00:00
Steve Chamberlain
55237887a6 Support for the H8/500 1993-04-09 17:46:13 +00:00
Ian Lance Taylor
1b8a42f353 * ldlang.c (lang_output_section_statement_lookup): Initialize all
fields of newly created structure.
1993-04-02 22:34:38 +00:00
Roland Pesch
2412a76837 ld.texinfo:
Conditionalize manual to maintain Cygnus, Hitachi versions in parallel.
(Texinfo conditionals are stable enough to permit this, at last!)
NOTE: @ignore'd passages from earlier versions DELETED; use CVS history
      to retrieve if wanted.

gen-doc.texi, h8-doc.texi: manual configuration definitions.

Makefile.in: link config defn (`gen' by default) to configdoc.texi, included
      by ld.texinfo

.Sanitize: add gen-doc.texi, h8-doc.texi
1993-03-30 23:25:03 +00:00
Steve Chamberlain
9fce28edd5 Support for linking and loading at different places:
* ldlex.l: Add "AT" keyword.
	* ldgram.y: Cleanup, and parse AT.
	* ldlang.c (print_output_section_statement): Print output address
	of section in map. (lang_size_sections): Fill sections' lma with
	load address.
	* ldlang.h (lang_output_section_statement_type): Add load_base
	information.
1993-03-30 22:45:39 +00:00
Steve Chamberlain
29f33467f2 Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
* ldindr.c (add_indirect): Keep more information in the alias
	symbol chain.
	* ldlang.c (wild_doit):  Don't inherit NEVER_LOAD section
	attribute from an input section.
	* ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
	default. (Q_enter_file_symbos): Indirect symbols now are known by
	their section, not a special symbol flag.
	* ldsym.c (write_file_locals): Indirect symbols aren't local.
	(write_file_globals): Write the mapping for an indirect symbol.
	* relax.c (build_it): When forced to write a NEVER_LOAD section,
	fill it with zeros.
1993-03-30 17:49:00 +00:00
Roland Pesch
d76ae847f0 Fix index reference (h8/300, not i960). 1993-03-30 06:55:41 +00:00
David D. Zuhn
f20e984286 add dvi & installcheck 1993-03-23 08:14:13 +00:00
Ian Lance Taylor
16788ca9fd Removed obsolete Makefile.dos. 1993-03-09 18:16:38 +00:00
Ian Lance Taylor
ce7d4b0d57 * mips.sc-sh: Added variables which may be overridden by a
specific emulation.
	* mipsidt.sh: New file; emulation for IDT MIPS board.
	* Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
	(em_mipsidt.c): New target.  Uses mipsidt.sh and mips.sc-sh.
	* config/mips-idt.mt: New file; sets EMUL to mipsidt.
	* configure.in (mips-idt-ecoff): New target; uses mips-idt.
1993-03-04 20:49:26 +00:00
Ken Raeburn
e637dcf08b mips-bsd and 386bsd support 1993-02-28 14:46:25 +00:00
David Edelsohn
d9c2980f64 Added initial sparc-v9 support. 1993-02-26 18:53:13 +00:00
Per Bothner
26483cc668 * ldsym.c (KEEP macro): Add spaces around '=' for the
sake of old (e.g. PCC) compilers.
1993-02-25 23:47:21 +00:00
Per Bothner
05985c7724 Bump to version 2.1. 1993-02-25 03:50:17 +00:00
David D. Zuhn
fb8ecc3dc6 fix go32 configuration 1993-02-19 02:00:52 +00:00
David D. Zuhn
7c8592905d removing excess verbosity 1993-02-13 10:15:53 +00:00
David D. Zuhn
3b5c6197de keep everything that's present now 1993-02-13 09:10:57 +00:00
Steve Chamberlain
067e2baa3f * ldgram.y: allow section types without address expressions.
* ldlang.c (lang_relocate_globals): avoid possible hang with
 	undefined but unreferenced symbols.
 	* relax.c (relax_section): don't complain if the script file isn't
 	relaxable but -relax is set
1993-02-12 16:33:32 +00:00
Steve Chamberlain
25de6a20dd * ldgram.y: allow section types without address expressions.
* ldlang.c (lang_relocate_globals): avoid possible hang with
	undefined but unreferenced symbols.
	* relax.c (relax_section): don't complain if the script file isn't
	relaxable but -relax is set
1993-02-12 16:12:28 +00:00
Ian Lance Taylor
04dd7520d0 Removed garbage after #endif. 1993-02-09 15:56:11 +00:00