Commit graph

876 commits

Author SHA1 Message Date
Nick Clifton
b4275f439a Add new devices x1122 x1132 emulation. 2003-03-04 17:02:40 +00:00
Alexandre Oliva
4ca1b7908a * ldmain.c (set_scripts_dir): Look for relative to TOOLBINDIR as
well.
2003-03-03 20:01:02 +00:00
Alexandre Oliva
e3f2db7fa6 * ldfile.h (struct search_dirs): Added sysrooted field.
* ldlang.h (struct lang_input_statement_struct): Likewise.
* ldfile.c (ldfile_add_library_path): Mark sysrooted paths.
(ldfile_open_file_search): Look for sysrooted filename starting
with / in ld_sysroot instead of in the current directory.  Clear
sysrooted flag if it's found in the current directory.  Set it
from the search directory's sysrooted flag where it is found
otherwise.
* ldlang.c (ldlang_sysrooted_script): New static variable.
(new_afile): Mark search_file_enums as sysrooted if
ldlang_sysrooted_script.
(load_symbols): Set ldlang_sysrooted_script according to the
script's sysrooted field while processing it.
* ld.texinfo: Document INPUT behavior in sysroot.
2003-03-03 20:00:35 +00:00
Christopher Faylor
15c9f67344 * scripttempl/pe.sc: Use PROVIDE with etext, end, _end, 2003-03-03 02:38:10 +00:00
Alan Modra
c279ca3ee9 * emulparams/elf64alpha.sh (EXTRA_EM_FILE): Define.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
	PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES,
	PARSE_AND_LIST_EPILOGUE): Don't define.
	* emultempl/alphaelf.em: New file.
2003-03-02 22:07:10 +00:00
Alan Modra
fcf6587111 * ldemul.c: Include getopt.h.
* emultempl/elf32.em: Include getopt.h earlier.
	* emultempl/ticoff.em: Likewise.
2003-02-28 22:55:11 +00:00
Alan Modra
a060b769bb * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Add combreloc
support when scripts read from files.
2003-02-28 04:46:04 +00:00
Alan Modra
3aa97c5886 * ldemul.c (ldemul_parse_args): Return FALSE by default.
* ldemul.h (struct ld_emulation_xfer_struct): Update parse_args
	comment.
2003-02-28 02:10:06 +00:00
Alan Modra
3bcf55573d * ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
(ldemul_parse_args): Return bfd_boolean.  Formatting.
	* ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
	(ldemul_parse_args): Adjust.
	(struct ld_emulation_xfer_struct): Add add_options and handle_option.
	Return bfd_boolean from parse_args.
	* lexsup.c (parse_args): Malloc shortopts, longopts and
	really_longopts.  Call ldemul_add_options and ldemul_handle_option.
	* emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
	gld${EMULATION_NAME}_parse_args.
	(gld${EMULATION_NAME}_handle_option): Likewise.
	(ld_${EMULATION_NAME}_emulation): Adjust initializer.
	* emultempl/armcoff.em: As for aix.em, but remove parse_args.
	* emultempl/beos.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/ticoff.em: Likewise.
	* emultempl/elf32.em: Likewise.  Don't duplicate long options either.
	(gld${EMULATION_NAME}_add_sysroot): Prototype.
	* emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
	options.
	* emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
	initializer.
	* emultempl/generic.em: Likewise.
	* emultempl/gld960.em: Likewise.
	* emultempl/gld960c.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/lnk960.em: Likewise.
	* emultempl/m68kcoff.em: Likewise.
	* emultempl/mipsecoff.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/vanilla.em: Likewise.
	* emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
2003-02-28 01:32:31 +00:00
Alexandre Oliva
42644a8920 * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Fix
memory allocation error.
2003-02-26 00:56:14 +00:00
Nick Clifton
0125cdf20c (ld_sysroot): Try to set from TOOLBINDIR too. 2003-02-25 10:32:33 +00:00
Nick Clifton
cf888e70e2 Disable region size checking whilst relaxing sections. 2003-02-21 10:51:24 +00:00
Nick Clifton
36f63dca98 Apply Bob Wilson's linker documenation clean ups. 2003-02-21 10:27:06 +00:00
Alexandre Oliva
715d16565f * configure.in (TARGET_SYSTEM_ROOT): Set default to
${exec_prefix}/${target_alias}/sys-root.  Match explicit
'${exec_prefix}' (in addition to the expansion thereof) as
relocatable.
* configure: Rebuilt.
2003-02-20 23:38:58 +00:00
Alan Modra
8e23b15d1c * ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns.
* ldgram.y (vers_defns): Allow optional trailing semicolon in
	EXTERN NAME block;
2003-02-20 01:02:39 +00:00
Alan Modra
f9e6bfa8dc * emultempl/ppc32elf.em: New file.
* emulparams/elf32ppc.sh (EXTRA_EM_FILE): Define.
	* Makefile.am (eelf32lppc.c): Depend on emultempl/ppc32elf.em.
	(eelf32lppcnto.c): Likewise.
	(eelf32lppcsim.c): Likewise.
	(eelf32ppcnto.c): Likewise.
	(eelf32ppc.c): Likewise.
	(eelf32ppc_fbsd.c): Likewise.
	(eelf32ppcsim.c): Likewise.
	(eelf32ppclinux.c): Likewise.
2003-02-18 06:05:07 +00:00
Alan Modra
9a6c7def26 * ld.texinfo: Remove spaces between @samp and opening brace. 2003-02-18 04:52:21 +00:00
Alan Modra
a015f5eccc * emultempl/ppc64elf.em (ppc_create_output_section_statements): Check
hash creator.
	(ppc_before_allocation): Don't do optimizations if wrong hash table.
	(gld${EMULATION_NAME}_finish): Ditto.
2003-02-17 22:49:24 +00:00
Nick Clifton
ae9a127f86 Fix the behaviour of --allow-shlib-undefined, so that it does what it claims
to do.  Add an inverse switch.  Update the documentation.
2003-02-17 18:24:40 +00:00
Nick Clifton
7e4482c1bb Fix spelling typo in previous delta 2003-02-11 18:03:44 +00:00
Nick Clifton
db6a591064 Add new data anchors defenitions. 2003-02-11 18:02:55 +00:00
Nick Clifton
42b5d0eaa9 Add support for configuring *-*-kaos targets. 2003-02-11 13:47:08 +00:00
Dave Anglin
cfbd8dfaa6 * hppaelf.em (group_size): Change default back to 1. 2003-02-11 02:20:30 +00:00
Alan Modra
e5096e3f2d * emultempl/ppc64elf.em: Add "no-tls-optimize" option and support code. 2003-02-09 04:36:44 +00:00
Dave Anglin
5e1e138d28 * hppaelf.em (group_size): Change default to -1. 2003-02-07 15:55:49 +00:00
Nick Clifton
ef5bdbd1fe Add duplicate entry for no-pipeline-knowledge. This will prevent the getopt
package from thinking that there are any shorter abbreviations for
--no-pipeline-knowledge.
2003-02-07 15:32:22 +00:00
Jakub Jelinek
d460ab5823 * genscripts.sh (LIB_PATH): Don't append LIBPATH_SUFFIX to paths
which already have it.  Avoid duplicates.
2003-02-07 14:21:03 +00:00
Jakub Jelinek
cad91d28c9 * emulparams/elf64_s390.sh (LIBPATH_SUFFIX): Set to 64.
* emulparams/elf_x86_64.sh (LIBPATH_SUFFIX): Likewise.
	* emulparams/elf64_sparc.sh (LIBPATH_SUFFIX): Set instead of suffix.
2003-02-06 14:45:04 +00:00
Alan Modra
e0468e59ad * emultempl/ppc64elf.em (ppc_before_allocation): Size sections then
call ppc64_elf_tls_optimize.
2003-02-04 14:51:35 +00:00
Daniel Jacobowitz
3dc16cab3d * emultempl/elf32.em: Move gld${EMULATION_NAME}_add_sysroot
outside of GNU/Linux conditional.
2003-02-03 17:47:23 +00:00
Nick Clifton
a35bc64f56 Add code to prevent importing a dll multiple times. 2003-01-28 11:39:43 +00:00
Alan Modra
f0abc2a11f include/elf/ChangeLog
* sh.h: Split out various bits to bfd/elf32-sh64.h.

include/opcode/ChangeLog
	* m68hc11.h (cpu6812s): Define.

bfd/ChangeLog
	* elf-bfd.h (struct bfd_elf_section_data): Remove tdata.  Change
	dynindx to an int.  Rearrange for better packing.
	* elf.c (_bfd_elf_new_section_hook): Don't alloc if already done.
	* elf32-mips.c (bfd_elf32_new_section_hook): Define.
	* elf32-sh64.h: New.  Split out from include/elf/sh.h.
	(struct _sh64_elf_section_data): New struct.
	(sh64_elf_section_data): Don't dereference sh64_info (was tdata).
	* elf32-sh64-com.c: Include elf32-sh64.h.
	* elf32-sh64.c: Likewise.
	(sh64_elf_new_section_hook): New function.
	(bfd_elf32_new_section_hook): Define.
	(sh64_elf_fake_sections): Adjust for sh64_elf_section_data change.
	(sh64_bfd_elf_copy_private_section_data): Likewise.
	(sh64_elf_final_write_processing): Likewise.
	* elf32-sparc.c (struct elf32_sparc_section_data): New.
	(elf32_sparc_new_section_hook): New function.
	(SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
	(sec_do_relax): Define.
	(elf32_sparc_relax_section): Adjust to use sec_do_relax.
	(elf32_sparc_relocate_section): Likewise.
	* elf64-mips.c (bfd_elf64_new_section_hook): Define.
	* elf64-mmix.c (struct _mmix_elf_section_data): New.
	(mmix_elf_section_data): Define.  Use throughout file.
	(mmix_elf_new_section_hook): New function.
	(bfd_elf64_new_section_hook): Define.
	* elf64-ppc.c (struct _ppc64_elf_section_data): New.
	(ppc64_elf_section_data): Define.  Use throughout.
	(ppc64_elf_new_section_hook): New function.
	(bfd_elf64_new_section_hook): Define.
	* elf64-sparc.c (struct sparc64_elf_section_data): New.
	(sparc64_elf_new_section_hook): New function.
	(SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
	(sec_do_relax): Define.
	(sparc64_elf_relax_section): Adjust to use sec_do_relax.
	(sparc64_elf_relocate_section): Likewise.
	(bfd_elf64_new_section_hook): Define.
	* elfn32-mips.c (bfd_elf32_new_section_hook): Define.
	* elfxx-mips.c (struct _mips_elf_section_data): New.
	(mips_elf_section_data): Define.  Use throughout.
	(_bfd_mips_elf_new_section_hook): New function.
	(mips_elf_create_got_section): Don't alloc used_by_bfd.
	* elfxx-mips.h (_bfd_mips_elf_new_section_hook): Declare.
	* elfxx-target.h (bfd_elfNN_new_section_hook): Add #ifndef.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.

opcodes/ChangeLog
	* sh64-dis.c: Include elf32-sh64.h.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.

gas/ChangeLog
	* config/tc-sh64.c (shmedia_frob_section_type): Adjust for changed
	sh64_elf_section_data.
	* config/tc-sh64.h: Include elf32-sh64.h.
	* config/tc-m68hc11.c: Don't include stdio.h.
	(md_show_usage): Fix missing continuation.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.

ld/ChangeLog
	* emultempl/sh64elf.em: Include elf32-sh64.h.
	(sh64_elf_${EMULATION_NAME}_before_allocation): Adjust for changed
	sh64_elf_section_data.
	(sh64_elf_${EMULATION_NAME}_after_allocation): Likewise.
2003-01-23 11:51:35 +00:00
Nick Clifton
489d0400af Remove an extra "i" in --dll-search-prefix.
Move a cross-80th-column-margin "an" to the next line.
2003-01-23 09:30:44 +00:00
Nick Clifton
dd1e43b69f fix typo in previous entry 2003-01-21 17:11:56 +00:00
Nick Clifton
019ac0e357 Fix generation of tic3xcoff_onchip.c 2003-01-21 17:09:47 +00:00
Nick Clifton
da896d3fcc Add support for i386-*-aros triple. 2003-01-21 16:08:31 +00:00
Svein Seldal
0da35f8be8 Updates for fixing tic4x arch tagging of its object files.
* bfd/coffcode.h (coff_set_flags): Added get/set arch hooks.
	* include/coff/tic4x.h (TICOFF_TARGET_MACHINE_GET): Fixed define bug
	* include/coff/ti.h (TICOFF_TARGET_MACHINE_GET): Added macros
	* ld/Makefile.am: Added etic3xcoff.o and etic4xcoff_onchip.o
	* ld/Makefile.in: Regenerate
	* ld/configure.tgt: Added extra target emulations
	* ld/emulparams/tic3xcoff.sh: Remove old settings
	* ld/emulparams/tic4xcoff.sh: Ditto
	* ld/emulparams/tic3xcoff-onchip.sh: Added new
	* ld/scripttempl/tic4xcoff.sc: Revise and combine both c3x and c4x
	* ld/scripttempl/tic3xcoff.sc: Remove
2003-01-20 22:34:39 +00:00
Andreas Jaeger
ae42d3a94d * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Do not
skip ':'.
2003-01-17 10:36:49 +00:00
Alan Modra
6f78fb71bb * Makefile.in: Regenerate. 2003-01-16 04:11:53 +00:00
Nick Clifton
0a5d968ed1 (node WIN32): Some clarifications and formatting fixups. 2003-01-14 11:25:58 +00:00
Chris Demetriou
6f33421c47 2003-01-09 Chris Demetriou <cgd@broadcom.com>
* ldmain.c (get_emulation): Sort -mipsNN checks in the usual
        order, and handle (ignore) -mips32r2.
2003-01-09 21:26:53 +00:00
Daniel Jacobowitz
a65fb6096a * ldmain.c (main): Make sure ld_sysroot is initialized. 2003-01-09 16:40:14 +00:00
Daniel Jacobowitz
9c8ebd6a51 * Makefile.am (eelf32iq10.c): Fix tab/whitespace mixup.
* Makefile.am (ldmain.o): Add @TARGET_SYSTEM_ROOT_DEFINE@.
	(GENSCRIPTS): Add @use_sysroot@.
	* Makefile.in: Regenerated.
	* configure.host: Move setting of NATIVE_LIB_DIRS to...
	* configure.tgt: ... here.  Use ${target} instead of ${host}
	for NATIVE_LIB_DIRS.
	* configure.in: Add --with-sysroot.
	* configure: Regenerated.
	* genscripts.sh: Accept use_sysroot option.  Set new variables
	NATIVE and USE_LIBPATH.  Prepend "=" to directory names if
	$use_sysroot.  Don't search $tool_lib if $use_sysroot.
	* ldfile.c (ldfile_add_library_path): Handle leading '='.
	* ldmain.c (TARGET_SYSTEM_ROOT): Define if not defined.
	(ld_sysroot): New variable.
	(main): Initialize ld_sysroot.
	* ldmain.h (ld_sysroot): New extern.
	* emultempl/elf32.em: Use NATIVE and USE_LIBPATH instead of
	searching $EMULATION_LIBPATH.
	(gld${EMULATION_NAME}_add_sysroot): New function.
	(gld${EMULATION_NAME}_check_ld_so_conf): Use it.  Honor ld_sysroot.
	(gld${EMULATION_NAME}_after_open): Likewise.  Only search
	environment variables if $NATIVE.
	* ld.texinfo (Options): Mention "=" prefix in the description of -L.
	* NEWS: Mention --with-sysroot.

	* emulparams/elf32bmipn32-defs.sh: Set NATIVE and LIBPATH_SUFFIX
	instead of setting LIB_PATH.
	* emulparams/elf32ppc.sh: Likewise.
	* emulparams/elf64_s390.sh: Likewise.
	* emulparams/elf64_sparc.sh: Likewise.
	* emulparams/elf64ppc.sh: Likewise.
	* emulparams/elf_x86_64.sh: Likewise.

	* emulparams/elf64_aix.sh: Add "=" prefixes to LIB_PATH.
	* emulparams/elf64hppa.sh: Add "=" prefixes to LIB_PATH.
2003-01-06 16:14:01 +00:00
Christopher Faylor
54d4efe3df * ld/pe-dll.c (autofilter_symbollist): Add cygwin_crt0. 2003-01-05 03:04:10 +00:00
Daniel Jacobowitz
cdc0d45e15 * Makefile.am (ldmain.o): Pass BINDIR.
* Makefile.in: Regenerated.
	* ldmain.c (set_scripts_dir): Use make_relative_prefix for the first
	search path.
2003-01-04 20:40:28 +00:00
Stan Cox
e09a710638 * Makefile.am (ALL_EMULATIONS): Add eelf32iq2000.o.
(eelf32iq2000.c): New target.
	* Makefile.in: Regenerate.
	* configure.tgt: Handle iq2000-*-elf.
	* emulparams/elf32iq10.sh: New file.
	* emulparams/elf32iq2000.sh: New file.
	* scripttempl/iq2000.sc: New file.
2003-01-04 02:04:44 +00:00
Nick Clifton
1c43e6e58a Add do_pseudo_reloc and _pei386_runtime_relocator to the exclude list. 2003-01-02 10:26:41 +00:00
Kazu Hirata
396a246719 * ldfile.c: Fix comment typos.
* ldlang.c: Likewise.
	* mri.c: Likewise.
	* pe-dll.c: Likewise.
2003-01-02 03:53:53 +00:00
Daniel Jacobowitz
980c112ced Suggested by Manfred Hollstein <manfred.h@gmx.net>:
* Makefile.am (ld.1): Depend on configdoc.texi
	and ldver.texi.
	* Makefile.in: Regenerated.
2003-01-02 00:47:44 +00:00
Nick Clifton
2469cfa284 Add support for msp430. 2002-12-30 19:25:13 +00:00