binutils-gdb/ld
Steve Chamberlain 0b5995da24 * mri.c, ldlang.c, ldlex.l, ldgram.y: add new keywords
ALIGN, ALIGNMOD, and TRUNCATE.
	* ldsym.c: (hash_string, search, process_keepsyms): support
	truncation of symbols.
1992-10-29 00:21:36 +00:00
..
config renamed hp9000.h to hp300.h 1992-10-02 07:26:50 +00:00
scripts Add isc-sysv3.2.sc. 1992-09-01 22:14:24 +00:00
.Sanitize Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com) 1992-09-25 18:11:04 +00:00
ChangeLog Mon Oct 19 09:45:38 1992 Ian Lance Taylor (ian@cygnus.com) 1992-10-19 16:53:41 +00:00
Makefile
Makefile.dos * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
Makefile.in Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com) 1992-09-25 18:11:04 +00:00
PORTING * Makefile.in: Change mkscript rule into one for ./mkscript 1992-02-21 01:59:57 +00:00
README Initial revision 1991-10-15 06:57:32 +00:00
TODO * ldver.c: Bump to version 0.98. 1992-09-03 06:02:56 +00:00
a29k.sc-sh Modifed to care about semi colons again, newlines are ignored - sorry 1992-03-02 22:22:59 +00:00
a29k.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
aout.sc-sh Mon Oct 5 14:07:37 1992 Ian Lance Taylor (ian@cygnus.com) 1992-10-05 21:08:41 +00:00
cdtest-foo.cc * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc, 1992-08-05 04:15:37 +00:00
cdtest-foo.h * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc, 1992-08-05 04:15:37 +00:00
cdtest-func.cc * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc, 1992-08-05 04:15:37 +00:00
cdtest-main.cc * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc, 1992-08-05 04:15:37 +00:00
cdtest.exp * cdtest-main.cc, cdtest-func.cc, cdtest-foo.h, cdtest-foo.cc, 1992-08-05 04:15:37 +00:00
config.h * Makefile.in: Major changes. Removed some the sed 1992-02-15 23:13:00 +00:00
config.sub steves h8 patches 1991-10-02 04:01:08 +00:00
configdos.bat Initial revision 1991-12-12 03:42:06 +00:00
configure resync 1991-10-02 04:15:56 +00:00
configure.bat DJ naming change 1992-02-22 00:11:39 +00:00
configure.in Use target i386-aout for i386-*-aout. This just provides a default 1992-10-02 18:48:41 +00:00
cplus-dem.c hp stuff. 1992-07-23 19:01:19 +00:00
descrip.mms * ldfile.c: merge in VMS filename support 1992-05-06 01:07:05 +00:00
ebmon29k.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
ebmon29k.sc-sh Modifed to care about semi colons again, newlines are ignored - sorry 1992-03-02 22:22:59 +00:00
ebmon29k.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
generic.em * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
genscripts.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
gld.1 Include -N description (and include -N in synopsis). 1992-08-08 00:36:16 +00:00
gld960.em * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
gld960.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
go32.sh New lexer. 1992-04-05 01:47:16 +00:00
h8300hds.c Include bfd.h before sysdep.h, so ansidecl and PROTO() get defined first. 1991-10-11 11:38:10 +00:00
h8300hds.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
h8300hms.c From h8300hds* 1992-02-06 19:44:44 +00:00
h8300hms.em * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
h8300hms.sc From h8300hds* 1992-02-06 19:44:44 +00:00
h8300hms.sc-sh * ldlang.h: add new field "loadable" to output_section_statement. 1992-08-07 19:34:59 +00:00
h8300hms.sh Modifed to care about semi colons again, newlines are ignored - sorry 1992-03-02 22:22:59 +00:00
h8300xray.em * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
h8300xray.sc-sh New lexer. 1992-04-05 01:47:16 +00:00
h8300xray.sh New lexer. 1992-04-05 01:47:16 +00:00
hp300bsd.sh New hp300bsd port. 1992-02-17 20:08:20 +00:00
i386aout.c Initial revision 1991-11-04 00:46:42 +00:00
i386aout.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
i386aout.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +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 Support for i386-coff 1992-09-11 17:25:43 +00:00
i960.sc-sh i960 bitrot fix 1992-03-16 22:54:51 +00:00
ld-emul.c
ld-gld-Ur.script
ld-gld-r.script
ld-gld.c
ld-gld.script
ld-gld68k-Ur.script
ld-gld68k-r.script
ld-gld68k.c
ld-gld68k.script
ld-gld960.c
ld-gld960.script
ld-gldm88kbcs-Ur.script
ld-gldm88kbcs-r.script
ld-gldm88kbcs.c
ld-gldm88kbcs.script
ld-lnk960-r.script
ld-lnk960.c
ld-lnk960.script
ld-vanilla.c
ld.1 Thanks to Zoo watchfulness: 1992-08-17 18:28:26 +00:00
ld.h
ld.tex
ld.texinfo Introduce more blanks in examples; minor formatting cleanup. 1992-08-19 21:34:47 +00:00
ldctor.h Initial revision 1991-12-08 01:21:25 +00:00
ldemul.c Include bfd.h before sysdep.h, so ansidecl and PROTO() get defined first. 1991-10-11 11:28:27 +00:00
lderror.c Lint removal, extra prototypes. 1992-03-07 18:31:24 +00:00
lderror.h Lint removal, extra prototypes. 1992-03-07 18:31:24 +00:00
ldexp.c * ldver.c: Bumped version to 1.96 - new release, resync with the 1992-05-04 23:38:42 +00:00
ldexp.h
ldfile.c
ldfile.h
ldgld.c
ldgld.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
ldgld.script Added new keyword 'CONSTRUCTORS' 1991-08-01 23:29:23 +00:00
ldgld68k.c
ldgld68k.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
ldgld68k.script
ldgld68kUr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgld68kUr.script
ldgld68kr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgld68kr.script
ldgld960.c Include bfd.h before sysdep.h, so ansidecl and PROTO() get defined first. 1991-10-11 11:28:27 +00:00
ldgld960.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
ldgld960.script
ldgldUr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgldUr.script Added new keyword 'CONSTRUCTORS' 1991-08-01 23:29:23 +00:00
ldglda29k.c Initial revision 1991-07-15 23:43:15 +00:00
ldglda29k.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
ldglda29k.script Initial revision 1991-07-15 23:43:15 +00:00
ldglda29kUr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldglda29kUr.script Initial revision 1991-07-15 23:43:15 +00:00
ldglda29kr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldglda29kr.script Initial revision 1991-07-15 23:43:15 +00:00
ldgldi386v.c Initial revision 1991-09-19 21:04:59 +00:00
ldgldi386v.sc Initial revision 1991-09-19 21:04:59 +00:00
ldgldi386vUr.sc Initial revision 1991-09-19 21:04:59 +00:00
ldgldi386vr.sc Initial revision 1991-09-19 21:04:59 +00:00
ldgldm68kv.c Initial revision 1991-09-19 21:04:59 +00:00
ldgldm68kv.sc Initial revision 1991-09-19 21:04:59 +00:00
ldgldm68kvUr.sc Initial revision 1991-09-19 21:04:59 +00:00
ldgldm68kvr.sc Initial revision 1991-09-19 21:04:59 +00:00
ldgldm88kbcs.c
ldgldm88kbcs.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgldm88kbcs.script
ldgldm88kbcsUr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgldm88kbcsUr.script
ldgldm88kbcsr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgldm88kbcsr.script
ldgldr.sc Initial revision 1991-09-03 21:01:03 +00:00
ldgldr.script
ldgram.y * ldlang.h: add new field "loadable" to output_section_statement. 1992-08-07 19:34:59 +00:00
ldindr.c Aliasing bug fixes 1992-07-02 00:53:14 +00:00
ldindr.h * ldindr.h: added to contain prototypes of ldindr.c 1991-12-08 01:21:28 +00:00
ldlang.c Added \n to error message. 1992-10-26 17:02:45 +00:00
ldlang.h * ldver.c: Bumped version to 1.96 - new release, resync with the 1992-05-04 23:38:42 +00:00
ldlex.h
ldlex.l * ldlex.l: now parses comment correctly, added ~ to acceptable 1992-08-13 19:16:49 +00:00
ldlnk960.c ldlnk960.c: Special #ifdef to choose little endian ony 1992-01-29 16:44:09 +00:00
ldlnk960.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
ldlnk960.script
ldlnk960r.sc Initial revision 1991-09-03 21:01:03 +00:00
ldlnk960r.script
ldm88k.c *** empty log message *** 1991-09-03 21:14:13 +00:00
ldm88k.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
ldm88kUr.sc Initial revision 1991-09-03 21:12:23 +00:00
ldm88kr.sc Initial revision 1991-09-03 21:12:23 +00:00
ldmain.c Mon Oct 5 08:55:14 1992 Steve Chamberlain (sac@thepub.cygnus.com) 1992-10-05 16:15:11 +00:00
ldmain.h
ldmisc.c * cplus-dem.c: Removed. Use the version in libiberty now. 1992-08-31 01:14:44 +00:00
ldmisc.h
ldsym.c * mri.c, ldlang.c, ldlex.l, ldgram.y: add new keywords 1992-10-29 00:21:36 +00:00
ldsym.h * Makefile.in (ldexp.o, ldctor.o, ldlang.o, ldmain.o, ldwrite.o, lexsup.o, 1992-09-25 21:05:20 +00:00
ldtemplate Add or update copyright notices. 1991-10-16 19:39:40 +00:00
ldvanilla.c Add or update copyright notices. 1991-10-16 19:39:40 +00:00
ldver.c * ldver.c: Increase version number to 1.97, for consistency with ../binutils. 1992-05-05 21:07:32 +00:00
ldver.h
ldwarn.c Add or update copyright notices. 1991-10-16 19:39:40 +00:00
ldwarn.h Add or update copyright notices. 1991-10-16 19:39:40 +00:00
ldwrite.c Now compiles with gcc too. 1992-01-24 23:44:10 +00:00
ldwrite.h
lnk960.em * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
lnk960.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
m68kcoff.sc-sh Tue Oct 20 10:56:06 1992 Ian Lance Taylor (ian@cygnus.com) 1992-10-20 17:57:28 +00:00
m68kcoff.sh Brought in from p3. If anybody knows good numbers for m68k COFF, 1992-09-09 18:59:11 +00:00
m88kbcs.sc-sh Modifed to care about semi colons again, newlines are ignored - sorry 1992-03-02 22:22:59 +00:00
m88kbcs.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
makefile.dos Initial revision 1991-12-12 03:42:06 +00:00
mkscript.c New lexer. 1992-04-05 01:47:16 +00:00
mri.c Strange link script support 1992-04-15 23:11:09 +00:00
news.sc * config/mh-sparc.h: now uses libgcc.a 1992-01-29 16:43:16 +00:00
news.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
relax.c * ldlang.c (lang_process): don't pass null pointers when 1992-08-27 00:32:05 +00:00
relax.h * ldlang.c (lang_process): don't pass null pointers when 1992-08-27 00:32:05 +00:00
sa29200.sc-sh * ldver.c: Bumped version to 1.96 - new release, resync with the 1992-05-04 23:38:42 +00:00
sa29200.sh More 29200 stuff 1992-05-02 02:09:20 +00:00
saber * ldver.c: Bumped version to 1.96 - new release, resync with the 1992-05-04 23:38:42 +00:00
st2000.em * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
st2000.sc-sh Personal checkpoint - now should parse some MRI stuff 1992-04-15 22:23:33 +00:00
st2000.sh Personal checkpoint - now should parse some MRI stuff 1992-04-15 22:23:33 +00:00
sun3.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
sun4.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
vanilla.em * Makefile.in, Makefile.dos, generic.em, genscripts.sh, 1992-09-04 03:29:15 +00:00
vanilla.sc-sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:07:15 +00:00
vanilla.sh Major rewrite of how ld is configured. The major idea 1992-02-15 22:13:53 +00:00
z8ksim.em Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com) 1992-09-25 18:11:04 +00:00
z8ksim.sc-sh Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com) 1992-09-25 18:11:04 +00:00
z8ksim.sh Fri Sep 25 11:08:01 1992 Steve Chamberlain (sac@thepub.cygnus.com) 1992-09-25 18:11:04 +00:00

README

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.