binutils-gdb/ld
Ken Raeburn 7cada34aec (Ugh. Last checkin was supposed to have been aborted. Oops.)
Replace elf-offset.ld with a version we can ship.
Use "-T" in linker invocation when specifying linker script.
1999-01-03 23:55:33 +00:00
..
emulparams Change default start address to 0x10000 so that it fits in 20 bits 1998-12-04 10:14:35 +00:00
emultempl * emultempl/pe.em (gld_i386pe_parse_args): Conditionalize call to 1998-11-24 00:24:06 +00:00
po Thu Nov 12 19:21:57 1998 Dave Brolley <brolley@cygnus.com> 1998-11-13 00:35:52 +00:00
scripttempl Add sanitization for FR30 1998-11-05 17:51:55 +00:00
testsuite (Ugh. Last checkin was supposed to have been aborted. Oops.) 1999-01-03 23:55:33 +00:00
.Sanitize For top level: 1998-11-25 01:10:52 +00:00
ChangeLog * Makefile.am (check-DEJAGNU): No longer provide HOSTING_EMU, HOSTING_CRT0, 1999-01-03 16:09:55 +00:00
Makefile.am * Makefile.am (check-DEJAGNU): No longer provide HOSTING_EMU, HOSTING_CRT0, 1999-01-03 16:09:55 +00:00
Makefile.in * Makefile.am (check-DEJAGNU): No longer provide HOSTING_EMU, HOSTING_CRT0, 1999-01-03 16:09:55 +00:00
NEWS * ldgram.y (extern_name_list): Do not require symbols to be 1998-07-03 18:25:46 +00:00
README
TODO
acconfig.h * Many files: Added gettext invocations around user-visible 1998-04-22 06:58:37 +00:00
acinclude.m4 * Makefile.am: New file, based on old Makefile.in. 1997-08-09 04:54:28 +00:00
aclocal.m4 Wed Nov 18 18:18:43 1998 Geoffrey Noer <noer@cygnus.com> 1998-11-19 02:22:42 +00:00
config.in * config.in: Rename from config.h.in. 1995-09-07 17:20:53 +00:00
configure Thu Dec 10 11:12:28 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 1998-12-10 16:16:08 +00:00
configure.bat
configure.host * configure.host: Correct HOSTING_CRT0 in alpha*-*-linux* case to 1998-02-02 19:14:33 +00:00
configure.in Thu Dec 10 11:12:28 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 1998-12-10 16:16:08 +00:00
configure.tgt * configure.tgt (m68*-*-gnu*): New target. From Aymeric Vincent 1998-12-06 21:34:37 +00:00
deffile.h * deffilep.y: properly handle relocs with multiple def_files, 1998-11-10 03:54:00 +00:00
deffilep.y * pe-dll.c: New file; direct support for PE DLLs 1998-11-09 21:51:51 +00:00
dep-in.sed
genscripts.sh
h8-doc.texi
ld.1 * ld.1: Some cleanups from NOKUBI Hirotaka <hnokubi@yyy.or.jp>. 1998-11-14 19:37:14 +00:00
ld.h * ld.h (args_type): Add gc_sections. 1998-07-02 02:52:31 +00:00
ld.texinfo Describe -O option. 1998-10-27 00:07:50 +00:00
ldcref.c * ldcref.c (check_nocrossref): Skip symbols with no output 1996-08-05 20:28:39 +00:00
ldctor.c * ldgram.y: Include "ldctor.h". 1998-08-14 19:40:01 +00:00
ldctor.h
ldemul.c * ldemul.c (ldemul_list_emulations): New function. 1995-03-06 19:21:33 +00:00
ldemul.h * ldemul.h (ld_emulation_xfer_struct): new hook "recognized_file" 1998-11-25 23:03:47 +00:00
ldexp.c * ldgram.y: Change MAX to MAX_K and MIN to MIN_K, to avoid 1998-07-08 18:06:49 +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
ldgram.y * ldgram.y: Change MAX to MAX_K and MIN to MIN_K, to avoid 1998-07-08 18:06:49 +00:00
ldint.texinfo
ldlang.c * ldemul.h (ld_emulation_xfer_struct): new hook "recognized_file" 1998-11-25 23:03:47 +00:00
ldlang.h * ld.h (check_nocrossrefs): Declare. 1996-08-01 17:35:49 +00:00
ldlex.h
ldlex.l * ldgram.y: Change MAX to MAX_K and MIN to MIN_K, to avoid 1998-07-08 18:06:49 +00:00
ldmain.c (main): Initialize link_info.optimze to false. 1998-10-27 00:07:26 +00:00
ldmain.h
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
ldver.h
ldwrite.c * ldmisc.h (demangle): Declare. 1996-04-26 22:15:10 +00:00
ldwrite.h
lexsup.c * ld.h (args_type): Add gc_sections. 1998-07-02 02:52:31 +00:00
mac-ld.r * mpw-config.in: Recognize mips-*-* as equivalent to 1995-12-12 22:35:48 +00:00
mpw-config.in * mpw-idtmips.c: Rename from mpw-emipsidt.c. 1997-04-03 05:50:32 +00:00
mpw-elfmips.c * Many files: Added gettext invocations around user-visible 1998-04-22 06:58:37 +00:00
mpw-eppcmac.c * Many files: Added gettext invocations around user-visible 1998-04-22 06:58:37 +00:00
mpw-esh.c * configure.in: Rewrite to use autoconf. 1995-09-06 18:58:05 +00:00
mpw-idtmips.c * Many files: Added gettext invocations around user-visible 1998-04-22 06:58:37 +00:00
mpw-make.sed * mpw-make.sed: Use NewFolderRecursive for installation. 1996-12-19 19:46:32 +00:00
mri.c
mri.h
pe-dll.c * pe-dll.c (make_head): name object files sequentially to ensure 1998-11-24 04:33:33 +00:00
stamp-h.in * Makefile.am: New file, based on old Makefile.in. 1997-08-09 04:54:28 +00:00
sysdep.h * configure.in: Rewrite to use autoconf. 1995-09-06 18:58:05 +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.