binutils-gdb/ld
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
..
config Support for Alpha. 1993-06-04 23:14:16 +00:00
scripts added things-to-lose sections 1993-05-27 06:44:29 +00:00
.Sanitize * configure.in (mips-idt-ecoffl*): New target; use mips-idtl. 1993-06-04 19:50:31 +00:00
a29k.sc-sh
a29k.sh
aout.sc-sh changes for hp300hpux -- won't be enabled until bfd work is done 1993-04-28 23:04:12 +00:00
cdtest-foo.cc
cdtest-foo.h
cdtest-func.cc
cdtest-main.cc
cdtest.exp
ChangeLog * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h. 1993-06-07 19:57:26 +00:00
config.h fix my default emulation changes 1993-01-08 22:06:17 +00:00
configure
configure.bat
configure.in * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h. 1993-06-07 19:57:26 +00:00
ebmon29k.sc-sh
ebmon29k.sh
generic.em
genscripts.sh
gld960.em
gld960.sh
go32.sh
h8-doc.texi ld.texinfo: 1993-03-30 23:25:03 +00:00
h8300hms.em
h8300hms.sc-sh
h8300hms.sh
h8500hms.em Support for the H8/500 1993-04-09 17:46:13 +00:00
h8500hms.sc-sh Support for the H8/500 1993-04-09 17:46:13 +00:00
h8500hms.sh Support for the H8/500 1993-04-09 17:46:13 +00:00
hp3hpux.sh changes for hp300hpux -- won't be enabled until bfd work is done 1993-04-28 23:04:12 +00:00
hp300bsd.sh
hppaosf.em hppa-osf(elf) support files 1993-05-03 20:58:06 +00:00
hppaosf.sc-sh hppa-osf(elf) support files 1993-05-03 20:58:06 +00:00
hppaosf.sh missed a file 1993-05-05 02:08:31 +00:00
i386aout.sh
i386bsd.sh mips-bsd and 386bsd support 1993-02-28 14:46:25 +00:00
i386coff.sc-sh Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com) 1992-10-19 16:53:41 +00:00
i386coff.sh
i960.sc-sh
ld.1
ld.h
ld.texinfo Clean up English and Texinfo usage. 1993-04-29 03:39:02 +00:00
ldctor.h
ldemul.c
lderror.c
lderror.h * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c, 1992-11-21 11:18:00 +00:00
ldexp.c
ldexp.h
ldfile.c
ldfile.h
ldgram.y Support for linking and loading at different places: 1993-03-30 22:45:39 +00:00
ldindr.c Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com) 1993-03-30 17:49:00 +00:00
ldindr.h * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c, 1992-11-21 11:18:00 +00:00
ldlang.c * ldlang.c (lang_output_section_statement_lookup): Initialize all 1993-04-02 22:34:38 +00:00
ldlang.h
ldlex.h
ldlex.l Support for linking and loading at different places: 1993-03-30 22:45:39 +00:00
ldmain.c Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com) 1993-03-30 17:49:00 +00:00
ldmain.h
ldmisc.c
ldmisc.h
ldsym.c * ldsym.c (write_file_locals): Write BSF_CONSTRUCTOR 1993-06-01 22:44:42 +00:00
ldsym.h -y support 1992-12-07 16:49:54 +00:00
ldver.c
ldver.h
ldwarn.c * ldexp.c, ldlang.c, ldmain.c, ldsym.c, ldwarn.c: Use new 1992-12-22 23:46:19 +00:00
ldwarn.h * ldctor.h, lderror.h, ldexp.h, ldfile.h, ldindr.h, ldlang.c, 1992-11-21 11:18:00 +00:00
ldwrite.c
ldwrite.h
lnk960.em
lnk960.sh
m68kcoff.sc-sh * ldexp.c (exp_fold_tree): Don't lose the old flag bits. 1993-06-10 21:02:59 +00:00
m68kcoff.sh
m88kbcs.sc-sh
m88kbcs.sh
Makefile.in * Makefile.in: remove old C++ rules; remove install:all and 1993-06-04 23:20:08 +00:00
mips.sc-sh * mips.sc-sh: Define _etext, _edata, and _end, in addition 1993-05-20 20:59:28 +00:00
mipsbig.sh Wed Feb 3 09:05:56 1993 Ian Lance Taylor (ian@cygnus.com) 1993-02-03 17:10:09 +00:00
mipsbsd.sc-sh rename aout-mipsbsd.sc-sh to mipsbsd.sc-sh for 14-char file systems 1993-05-20 15:58:49 +00:00
mipsbsd.sh missed part of renaming update 1993-05-20 21:30:26 +00:00
mipsidt.sh * mips.sc-sh: Added variables which may be overridden by a 1993-03-04 20:49:26 +00:00
mipsidtl.sh * configure.in (mips-idt-ecoffl*): New target; use mips-idtl. 1993-06-04 19:50:31 +00:00
mipslit.sh Fri Jan 22 14:22:44 1993 Ian Lance Taylor (ian@cygnus.com) 1993-01-22 22:30:52 +00:00
mkscript.c
mri.c
NEWS New file. 1993-05-17 19:45:17 +00:00
news.sh
README
relax.c Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com) 1993-03-30 17:49:00 +00:00
relax.h Mon Jan 11 18:50:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 1993-01-12 00:47:20 +00:00
sa29200.sc-sh * ldexp.c (exp_fold_tree): Don't lose the old flag bits. 1993-06-10 21:02:59 +00:00
sa29200.sh
sh.em sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH. 1993-04-27 01:37:02 +00:00
sh.sc-sh More resonable default. 1993-05-03 22:43:35 +00:00
sh.sh sh.em, sh.sh, sh.sc-sh: New files supporting Hitachi SH. 1993-04-27 01:37:02 +00:00
st2000.em
st2000.sc-sh
st2000.sh
sun3.sh
sun4.sh
TODO
vanilla.em
vanilla.sc-sh
vanilla.sh
vax.sh * Makefile.in: Change definition of $(tooldir) to match FSF. 1993-05-04 02:51:33 +00:00
z8ksim.em
z8ksim.sc-sh
z8ksim.sh

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.