darling-gdb/ld
Ian Lance Taylor 582dd77f65 * ld.h (check_nocrossrefs): Declare.
* ldlang.h (struct lang_nocrossref): Define.
	(struct lang_nocrossrefs): Define.
	(nocrossref_list): Declare.
	(lang_add_nocrossref): Declare.
	* ldlex.l: Recognize NOCROSSREFS keyword.
	* ldgram.y (%union): Add nocrossref field.
	(NOCROSSREFS): New terminal.
	(ifile_p1): Recognize NOCROSSREFS.
	(nocrossref_list): New nonterminal.
	* ldlang.c (nocrossref_list): Define.
	(lang_add_nocrossref): New function.
	* ldmain.c (main): If nocrossref_list is not NULL, call
	check_nocrossrefs.
	(warning_callback): Free symbols if there is no place to store
	them.
	(notice): Call add_cref if nocrossref_list is not NULL.
	* ldcref.c: Include "ldexp.h" and "ldlang.h".
	(check_nocrossrefs): New function.
	(check_nocrossref): New static function.
	(struct check_refs_info): Define.
	(check_refs, check_reloc_refs): New static functions.
	* Makefile.in: Rebuild dependencies.
	* ld.texinfo (Option Commands): Document NOCROSSREFS.
1996-08-01 17:35:49 +00:00
..
emulparams Wed Jul 31 11:52:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com> 1996-07-31 18:53:46 +00:00
emultempl Mon Jul 15 11:49:49 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-07-15 15:58:00 +00:00
scripttempl No longer sanitize away h8s stuff. 1996-07-05 18:54:28 +00:00
testsuite Mon Apr 29 10:33:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 1996-04-29 14:34:44 +00:00
.Sanitize * fnmatch.h, fnmatch.c: New files. 1996-07-29 21:33:26 +00:00
acconfig.h * configure.in: Use BFD_NEED_DECLARATION. 1995-11-21 23:32:33 +00:00
ChangeLog * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
config.in * config.in: Rename from config.h.in. 1995-09-07 17:20:53 +00:00
configure * configure.in: Call AC_PROG_CC before configure.host. 1996-02-15 21:32:43 +00:00
configure.bat changes from gas-2.3/binutils-2.4 dist (details in branch log msgs, changelogs) 1994-05-27 16:58:05 +00:00
configure.host * configure.host: Check for 'do not mix' from native linker before 1996-02-18 20:06:40 +00:00
configure.in * configure.in: Call AC_PROG_CC before configure.host. 1996-02-15 21:32:43 +00:00
configure.tgt start-sanitize-d10v 1996-07-23 18:00:39 +00:00
dep-in.sed New file used for rebuilding dependencies. 1993-12-13 19:37:22 +00:00
fnmatch.c * fnmatch.h, fnmatch.c: New files. 1996-07-29 21:33:26 +00:00
fnmatch.h * fnmatch.h, fnmatch.c: New files. 1996-07-29 21:33:26 +00:00
genscripts.sh The default script is now compiled in; the others are still in the filesystem. 1993-07-22 00:33:10 +00:00
h8-doc.texi ld.texinfo: 1993-03-30 23:25:03 +00:00
ld.1 * ldcref.c: New file. 1996-06-04 23:37:13 +00:00
ld.h update copyright 1996-07-30 20:05:42 +00:00
ld.texinfo * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldcref.c * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldctor.c * ldctor.c (ldctor_add_set_entry): Don't dump core if a 1995-01-24 15:34:16 +00:00
ldctor.h
ldemul.c * ldemul.c (ldemul_list_emulations): New function. 1995-03-06 19:21:33 +00:00
ldexp.c * ldexp.c (fold_binary): Correct handling of subtraction with 1996-04-16 20:53:55 +00:00
ldexp.h
ldfile.c * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to 1995-07-12 15:37:12 +00:00
ldfile.h * ldfile.h (search_dirs_type): Move from ldfile.c, and add cmdline 1994-06-02 21:30:57 +00:00
ldgram.y * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldint.texinfo minor fixes 1993-12-31 21:08:12 +00:00
ldlang.c * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldlang.h * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldlex.h Use getopt instead of lex and yacc to parse the command line. 1994-02-25 03:26:25 +00:00
ldlex.l * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldmain.c * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldmain.h Made many changes to eliminate gcc warnings. Made various 1993-12-11 22:55:55 +00:00
ldmisc.c * ldmisc.h (demangle): Declare. 1996-04-26 22:15:10 +00:00
ldmisc.h * ldmisc.h (demangle): Declare. 1996-04-26 22:15:10 +00:00
ldver.c updated version 1994-10-17 20:33:46 +00:00
ldver.h
ldwrite.c * ldmisc.h (demangle): Declare. 1996-04-26 22:15:10 +00:00
ldwrite.h
lexsup.c * ldlang.c (lang_size_sections): If _cooked_size is not 0, then 1996-04-22 21:32:58 +00:00
mac-ld.r * mpw-config.in: Recognize mips-*-* as equivalent to 1995-12-12 22:35:48 +00:00
Makefile.in * fnmatch.h, fnmatch.c: New files. 1996-07-29 21:33:26 +00:00
mpw-config.in * mpw-config.in: Recognize mips-*-* as equivalent to 1995-12-12 22:35:48 +00:00
mpw-emipsidt.c * configure.in: Rewrite to use autoconf. 1995-09-06 18:58:05 +00:00
mpw-eppcmac.c * mpw-eppcmac.c: Update to reflect May 23 change to aix.em. 1996-06-30 18:19:34 +00:00
mpw-esh.c * configure.in: Rewrite to use autoconf. 1995-09-06 18:58:05 +00:00
mpw-make.sed * mpw-make.sed: Edit out shared library support. 1996-02-27 23:21:35 +00:00
mri.c Made many changes to eliminate gcc warnings. Made various 1993-12-11 22:55:55 +00:00
mri.h Made many changes to eliminate gcc warnings. Made various 1993-12-11 22:55:55 +00:00
NEWS * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
README
sysdep.h * configure.in: Rewrite to use autoconf. 1995-09-06 18:58:05 +00:00
TODO * ldver.c: Bump to version 0.98. 1992-09-03 06:02:56 +00:00

This is a BETA release of a completely rewritten GNU linker.
It is distributed with other "binary utilities" which should
be in ../binutils.  See ../binutils/README for more general notes,
including where to send bug reports.

There are many new features of the linker:

* The linker uses a Binary File Descriptor library (../bfd)
that it uses to read and write object files.  This helps
insulate the linker itself from the format of object files.

* The linker support a number of different object file
formats.  It can even handle multiple formats at once:
Read two input formats and write a third.

* The linker can be configured for cross-linking.

* The linker contains a control language.

* There is a manual.

Installation
============

See ../binutils/README.
If you want to make a cross-linker, you may want to specify
a different search path of -lfoo libraries than the default.
You can do this by setting the LIB_PATH variable in ./Makefile.

Porting to a new target
=======================

A new target configuration may need a new linker script (.sc file)
to specify linker actions (such as the layout of the output).
See if one of the existing ones are suitable.
Note that the Makefile generates variants of the standard script
that are used when ld is passed -r -Ur -N or -n options.
These variant default scripts are generated from the "master"
script using sed scripts that may not work in all cases.
Look at the rules and comments in ld/Makefile.in to make sure
you stay with the rules.

Otherwise, you may need to add a new "emulation" (a sample of a
recently added target and emulation is for the SOny 68k News
family - look for files named *news*).

Also see the notes in ../binutils/README.

Reporting bugs etc
===========================
See ../binutils/README.