binutils-gdb/ld
..
config
scripts
.Sanitize
a29k.sc-sh
a29k.sh
aout.sc-sh
cdtest-foo.cc
cdtest-foo.h
cdtest-func.cc
cdtest-main.cc
cdtest.exp
ChangeLog
config.h
config.sub
configdos.bat
configure
configure.bat
configure.in
cplus-dem.c
descrip.mms
ebmon29k.sc
ebmon29k.sc-sh
ebmon29k.sh
generic.em
genscripts.sh
gld960.em
gld960.sh
gld.1
go32.sh
h8300hds.c
h8300hds.sc
h8300hms.c
h8300hms.em
h8300hms.sc
h8300hms.sc-sh
h8300hms.sh
h8300xray.em
h8300xray.sc-sh
h8300xray.sh
hp300bsd.sh
i386aout.c
i386aout.sc
i386aout.sh
i386coff.sc-sh
i386coff.sh
i960.sc-sh
ld-emul.c
ld-gld68k-r.script
ld-gld68k-Ur.script
ld-gld68k.c
ld-gld68k.script
ld-gld960.c
ld-gld960.script
ld-gld-r.script
ld-gld-Ur.script
ld-gld.c
ld-gld.script
ld-gldm88kbcs-r.script
ld-gldm88kbcs-Ur.script
ld-gldm88kbcs.c
ld-gldm88kbcs.script
ld-lnk960-r.script
ld-lnk960.c
ld-lnk960.script
ld-vanilla.c
ld.1
ld.h
ld.tex
ld.texinfo
ldctor.h
ldemul.c
lderror.c
lderror.h
ldexp.c
ldexp.h
ldfile.c
ldfile.h
ldgld68k.c
ldgld68k.sc
ldgld68k.script
ldgld68kr.sc
ldgld68kr.script
ldgld68kUr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgld68kUr.script
ldgld960.c
ldgld960.sc
ldgld960.script
ldgld.c
ldgld.sc
ldgld.script
ldglda29k.c
ldglda29k.sc
ldglda29k.script
ldglda29kr.sc
ldglda29kr.script
ldglda29kUr.sc
ldglda29kUr.script
ldgldi386v.c
ldgldi386v.sc
ldgldi386vr.sc
ldgldi386vUr.sc
ldgldm68kv.c
ldgldm68kv.sc
ldgldm68kvr.sc
ldgldm68kvUr.sc
ldgldm88kbcs.c
ldgldm88kbcs.sc
ldgldm88kbcs.script
ldgldm88kbcsr.sc
ldgldm88kbcsr.script
ldgldm88kbcsUr.sc
ldgldm88kbcsUr.script
ldgldr.sc
ldgldr.script
ldgldUr.sc
ldgldUr.script
ldgram.y
ldindr.c
ldindr.h
ldlang.c
ldlang.h
ldlex.h
ldlex.l
ldlnk960.c
ldlnk960.sc
ldlnk960.script
ldlnk960r.sc
ldlnk960r.script
ldm88k.c
ldm88k.sc
ldm88kr.sc
ldm88kUr.sc
ldmain.c
ldmain.h
ldmisc.c
ldmisc.h
ldsym.c
ldsym.h
ldtemplate
ldvanilla.c
ldver.c
ldver.h
ldwarn.c
ldwarn.h
ldwrite.c
ldwrite.h
lnk960.em
lnk960.sh
m68kcoff.sc-sh
m68kcoff.sh
m88kbcs.sc-sh
m88kbcs.sh
Makefile
makefile.dos
Makefile.dos
Makefile.in
mkscript.c
mri.c
news.sc
news.sh
PORTING
README
relax.c
relax.h
sa29200.sc-sh
sa29200.sh
saber
st2000.em
st2000.sc-sh
st2000.sh
sun3.sh
sun4.sh
TODO
vanilla.em
vanilla.sc-sh
vanilla.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.