Commit graph

867 commits

Author SHA1 Message Date
Ian Lance Taylor
1a7f2a866e * scripttempl/elfmips.sc: Remove.
* scripttempl/elf.sc: Set ENTRY based on target.  Permit
	TEXT_DYNAMIC to control .dynamic segment.  Permit
	SHLIB_TEXT_START_ADDR to set start of shared object.  Support
	INITIAL_READONLY_SECTIONS.  Put .stub in .text.  Only put
	.gnu.linkonce.t* in .text when relocating.  Support
	OTHER_TEXT_SECTIONS.  Support SHLIB_DATA_ADDR as well as
	DATA_ADDR.  Support OTHER_GOT_SYMBOLS and OTHER_GOT_SECTIONS.
	* emulparams/elf32b4300.sh (SCRIPT_NAME): Set to elf.
	(DATA_ADDR): Don't set.
	(INITIAL_READONLY_SECTIONS): Rename from OTHER_READONLY_SECTIONS.
	(OTHER_TEXT_SECTIONS): Set.
	(OTHER_GOT_SECTIONS): Rename from OTHER_READWRITE_SECTIONS.
	(MACHINE): Set to empty string.
	* emulparams/elf32l4300.sh: Likewise.
	* emulparams/elf32ebmip.sh: Likewise.
	* emulparams/elf32elmip.sh: Likewise.
	* emulparams/elf32bmip.sh: Likewise.  Also:
	(TEXT_DYNAMIC): Set.
	* emulparams/elf32lmips.sh: Likewise.
	* Makefile.in (eelf32bmips.c): Depend upon elf.sc rather than
	elfmips.sc.
	(eelf32ebmips.c, eelf32elmips.c, eelf32lmip.c): Likewise.
1997-05-13 03:30:20 +00:00
Ian Lance Taylor
3d046499bc Mon May 12 11:11:06 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* scripttempl/elf.sc: Don't align the data segment on the next 8
	byte boundary, instead let the linker use whatever the individual
	sections require.
1997-05-12 15:12:12 +00:00
Ian Lance Taylor
f7f90eaaf5 * configure.tgt (i[3456]86-*-gnu*): Don't include Mach support. 1997-05-09 21:46:21 +00:00
Ian Lance Taylor
1ba1da8650 From Sean McNeil <sean@mcneil.com>:
* emultempl/pe.em (sort_by_file_name): Sort by archive name
	first.
	(sort_sections): Sort all sections, not just sections in the same
	archive.
1997-05-06 17:22:35 +00:00
Ian Lance Taylor
a59a42aef7 Mon May 5 18:19:55 1997 Philip Blundell <pjb27@cam.ac.uk>
* configure.tgt, configure.host: cope with '*-*-linux-gnuaout'
	targets.
1997-05-05 22:56:03 +00:00
Michael Meissner
f1687b6f99 Rework static constructors and destructors 1997-05-02 22:29:38 +00:00
Michael Meissner
df184f82b2 Fix name of constructors/destructors 1997-05-02 19:57:12 +00:00
Ian Lance Taylor
cfa7c448a1 * ldctor.c (ldctor_build_sets): Make sure the set is aligned
appropriately.
1997-04-17 17:07:35 +00:00
Ian Lance Taylor
ba69384dc8 * Makefile.in (INSTALL): Set to @INSTALL@.
(INSTALL_XFORM, INSTALL_XFORM1): Remove.
	(install): Depend upon ld.new and installdirs.  Use
	$(program_transform_name) directly, rather than using
	$(INSTALL_XFORM) and $(INSTALL_XFORM1).
	(installdirs): New target.
	(install-info): Run mkinstalldirs.
1997-04-15 17:21:15 +00:00
Ian Lance Taylor
21d83d1cf9 From Thomas Graichen <graichen@rzpd.de>:
* configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
	* configure: Rebuild.
1997-04-14 16:10:39 +00:00
Ian Lance Taylor
4507afd077 * emultempl/pe.em: Include "libiberty.h".
(sort_sections_1): Use xmalloc rather than alloca.
1997-04-04 20:29:58 +00:00
Ian Lance Taylor
ab83171da5 * ldlex.l: Recognize SQUAD.
* ldgram.y (length): Add SQUAD.
	* ldlang.c (print_data_statement): Handle SQUAD.
	(lang_size_sections, lang_do_assignments): Likewise.
	* ldexp.c (exp_print_token): Add SQUAD to table.
	* ldwrite.c (build_link_order): Handle SQUAD.
	* ld.texinfo (Section Data Expressions): Document SQUAD.
1997-04-04 16:48:27 +00:00
Ian Lance Taylor
6f4b1d3168 * ldver.c (ld_program_version): Set to 2.8.1. 1997-04-03 18:20:40 +00:00
Ian Lance Taylor
c6cfcb7f7d * mpw-idtmips.c: Rename from mpw-emipsidt.c.
* mpw-elfmips.c: Rename from mpw-emipself.c.
	* mpw-config.in: Update accordingly.
1997-04-03 05:50:32 +00:00
Ian Lance Taylor
dc69600243 * ldlang.c (lang_process): Call lang_check immediately after
opening the input files, rather than at the end of the link.
1997-04-02 16:55:59 +00:00
Ian Lance Taylor
88ddffaf42 Mon Mar 31 16:35:51 1997 Joel Sherrill <joel@oarcorp.com>
* configure.tgt (hppa*-*-rtems*): New target, like hppa-*-*elf*.
1997-03-31 21:39:24 +00:00
Ian Lance Taylor
2032ade97b From Ralf Baechle <ralf@gnu.ai.mit.edu>:
* configure.tgt: Set targ_extra_emuls for mips*el-*-linux* and
	mips*-*-linux*.  Use elf32bmip and elf32lmip, not elf32ebmip and
	elf32elmip.
1997-03-28 19:34:34 +00:00
Ian Lance Taylor
5fd92ccd14 * lexsup.c (parse_args): Update copyright date in version
message.
1997-03-27 22:14:57 +00:00
Ian Lance Taylor
7aef7107a8 x 1997-03-21 17:35:20 +00:00
Ian Lance Taylor
6d4314e031 Fri Mar 21 12:28:41 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* emulparams/delta68.sh (OUTPUT_FORMAT): Set to "m68k-coff-sysv".
1997-03-21 17:29:13 +00:00
Ian Lance Taylor
d7a48b6da0 * emultempl/aix.em: Include "obstack.h". 1997-03-18 16:16:50 +00:00
Ian Lance Taylor
cadddcea29 * ldlang.c: Include "obstack.h". 1997-03-18 00:26:19 +00:00
Fred Fish
b87ff07d07 * configure.tgt (powerpc-*-beos*): Use aixppc for targ_emul. 1997-03-16 06:26:35 +00:00
Ian Lance Taylor
c5a0d31a04 Sat Mar 15 18:10:38 1997 H.J. Lu <hjl@lucon.org>
* ldemul.h (ldemul_list_emulations): Use full prototype.
	* ldlang.c (print_one_symbol): Add declaration.
	* ldlang.h (dprint_statements): Declare.
	* ldmain.c (remove_output): Declare.
	* ldmisc.c (vfinfo): Declare.
	* ldwrite.c (clone_section): Declare.
	(split_sections): Make static.  Declare.
	* mri.c: Include libiberty.h.
	(strdup): Don't declare.
	(mri_alias): Use xstrdup rather than strdup.
1997-03-15 23:17:46 +00:00
Ian Lance Taylor
2adb092c95 * scripttempl/elfmips.sc: Change handling of data area when
generating a shared library to not skip a large block of memory.
	From Per Fogelstrom <pefo@cvs.openbsd.org>.
1997-03-15 02:31:01 +00:00
Ian Lance Taylor
d7339c87a6 * ldmain.c (multiple_definition): Only skip the warning if the
output section is absolute when the input section is not
	absolute.

	* ldlex.l: Accept whitespace in VERS_START state.  Warn about
	invalid characters in VERS_* states.
1997-03-13 02:34:33 +00:00
Ian Lance Taylor
998f2b67a9 Sun Mar 9 23:06:35 1997 Eric Youngdale <eric@andante.jic.com>
* ldgram.y (vers_node): Correct typo of '('  for '{'.
1997-03-10 04:07:24 +00:00
Fred Fish
98ee67d8de * scripttempl/tic80coff.sc (ENTRY): Entry symbol is __start
rather than _start.
	(__edata): Define this rather than "edata".
	(__end): Define this rather than "end".
1997-03-08 16:23:57 +00:00
Michael Meissner
81fb245da1 Allow --target=tic80 without the -coff 1997-03-04 22:24:00 +00:00
Ian Lance Taylor
22f9f902d9 * ldmain.c (main): Call bfd_set_default_target.
* Makefile.in (ldmain.o): Define TARGET when compiling.
1997-02-28 22:43:35 +00:00
Ian Lance Taylor
9ae9e58254 * emultempl/m88kbcs.em: Remove.
* emulparams/m88kbcs.sh (TEMPLATE_NAME): Don't set.
	* Makefile.in (em88kbcs.c): Depend upon generic.em rather than
	m88kbcs.em.
1997-02-28 04:17:50 +00:00
Ian Lance Taylor
24293f275b * mri.c (mri_draw_tree): Pass noload_section, not SEC_NEVER_LOAD,
to lang_enter_output_section_statement.  From Mark Rasin
	<mark.rasin@telrad.co.il>.
1997-02-27 16:42:56 +00:00
Ian Lance Taylor
d73d49a472 * ldlang.c (lang_one_common): Clear SEC_IS_COMMON from common
section.
PR 11749.
1997-02-26 16:53:34 +00:00
Ian Lance Taylor
dc25aca068 From Eric Youngdale <eric@andante.jic.com>:
* ldlex.l (V_TAG, V_IDENTIFIER): New macros.
	(VERS_START, VERS_SCRIPT, VERS_NODE): New states to parse version
	information.
	(ldlex_version_script, ldlex_version_file): New functions.
	* ldlex.h (enum input_enum): Add input_version_script.
	(ldlex_version_script): Declare.
	(ldlex_version_file): Declare.
	* ldgram.y (%union): Add deflist, versyms, and versnode.
	(VERS_TAG, VERS_IDENTIFIER): New terminals.
	(GLOBAL, LOCAL, VERSION, INPUT_VERSION_SCRIPT): New terminals.
	(file): Accept INPUT_VERSION_SCRIPT.
	(ifile_p1): Accept version.
	(version_script_file): New nonterminal.
	(version, vers_nodes, vers_node): Likewise.
	(verdep, vers_tag, ver_defns): Likewise.
	* ldlang.c (lang_elf_version_info): New global variable.
	(lang_new_vers_regex): New function.
	(lang_new_vers_node): New function.
	(version_index): New static variable.
	(lang_register_vers_node): New function.
	(lang_add_vers_depend): New function.
	* ldlang.h (lang_elf_version_info): Declare.
	(lang_new_vers_regex, lang_new_vers_node): Declare.
	(lang_add_vers_depend, lang_register_vers_node): Declare.
	* lexsup.c (OPTION_VERSION_SCRIPT): Define.
	(ld_options): Add "version-script".
	(parse_args): Handle OPTION_VERSION_SCRIPT.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
	Pass lang_elf_version_info to size_dynamic_sections.
	* scripttempl/elf.sc: Add .gnu.version sections.
1997-02-24 23:23:31 +00:00
Martin Hunt
232e870207 Fri Feb 21 17:37:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* Makefile.in (ed30velf.c): New target.
	* configure.tgt (d30v-*-*): New target.
	* emulparams/d30velf.sh: New file.
	* scripttempl/elfd30v.sc: New file.
1997-02-22 01:42:27 +00:00
Michael Meissner
c6c7035cfb Since d10v is public now, remove all sanitization statements 1997-02-20 16:05:18 +00:00
Ian Lance Taylor
e7886d4ba1 * scripttempl/elfmips.sc: When relocating, put .mips16.fn.* and
.mips16.call.* in .text.
1997-02-11 20:34:57 +00:00
Gavin Romig-Koch
276c2d7dc8 Add r5900 1997-02-11 13:26:34 +00:00
Fred Fish
11effa691a * emulparams/tic80coff.sh: New (dummy) file for TIc80.
* scripttempl/tic80coff.sc: New (dummy) file for TIc80.
	* Makefile.in (etic80coff.c): Add target and rule to build it.
	* configure.tgt (tic80-*-coff): Set targ_emul to tic80coff.
1997-02-10 01:17:14 +00:00
Ian Lance Taylor
966be3480a * emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Search for
".so" in the name, not ".so.".
	(gld${EMULATION_NAME}_search_dir): Accept a plain .so file.
1997-01-31 18:20:20 +00:00
Ian Lance Taylor
93d7eb0f03 * Makefile.in (ld.info): Add -I$(srcdir). From Alan Modra
<alan@spri.levels.unisa.edu.au>.
1997-01-31 18:18:02 +00:00
Ian Lance Taylor
e87b950c8e * emultempl/sunos.em: Include <ctype.h>.
(gld${EMULATION_NAME}_find_so): Skip the directory name when
	searching for ".so.".
	(gld${EMULATION_NAME}_search_dir): Make sure that the library name
	has a version number, and that only version numbers follow .so.
1997-01-30 16:33:36 +00:00
Geoffrey Noer
0fc327a3fb Wed Jan 29 18:15:00 1997 Geoffrey Noer <noer@cygnus.com>
* scripttempl/pe.sc:
        * scripttempl/ppcpe.sc: add *(.gcc_except_table) to the text
        section so Win32 executables are valid.
1997-01-30 02:17:37 +00:00
Ian Lance Taylor
f5f212fb56 * scripttempl/elf.sc: Put linkonce reloc section in other
appropriate reloc sections.
	* scripttempl/elfmips.sc: Add linkonce support.
	* scripttempl/elfppc.sc: Likewise.
1997-01-27 17:39:24 +00:00
Jeff Law
da1ba4b022 * emulparms/mn10200.sh (OTHER_RELOCATING_SECTIONS): Move the
stack up to 0x80000.
        * emulparms/mn10300.sh (OTHER_RELOCATING_SECTIONS): Likewise.
Because we're seeing .text for some of the plumhall tests which exceeds
0x40000 bytes on these machines.
1997-01-24 17:46:48 +00:00
David Edelsohn
c57cd823b3 * emulparams/m32relf.sh (OTHER_RELOCATING_SECTIONS): Use PROVIDE
to define `_stack'.
1997-01-21 20:10:49 +00:00
Ian Lance Taylor
3391c0a53c * ld.h (args_type): Rename auxiliary_filter_shlib to
auxiliary_filters, and make it char **.
	* lexsup.c (parse_args): Handle -f by setting up an array.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
	new name of auxiliary_filters.
1997-01-16 22:52:05 +00:00
Ian Lance Taylor
cc28f8fbe4 * ld.texinfo (Options): Improve documentation of --filter and
--auxiliary.
1997-01-16 22:08:23 +00:00
Ian Lance Taylor
f9c5c2313c * ld.texinfo (Commands): Clarify that the normal usage is -T. 1997-01-14 20:44:48 +00:00
Ian Lance Taylor
24bc58bc9a * scripttempl/armcoff.sc: Correct mask used for .data address.
PR 11442.
1997-01-09 19:26:56 +00:00