diff options
author | Alan Modra <amodra@bigpond.net.au> | 2003-06-25 06:40:27 +0000 |
---|---|---|
committer | Alan Modra <amodra@bigpond.net.au> | 2003-06-25 06:40:27 +0000 |
commit | d9ec26b6578cfde9d7fb605787c9878ccd623893 (patch) | |
tree | 20a6a8bcbbf4b7822c06138f1ea37e335a09d5be /ld | |
parent | 0a693b807e2990a20fcdc75692dd1f1ecd355be0 (diff) | |
download | binutils-redhat-d9ec26b6578cfde9d7fb605787c9878ccd623893.tar.gz |
Correct spelling of "relocatable".
Diffstat (limited to 'ld')
37 files changed, 206 insertions, 168 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 3291a604cc..54621433ca 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,41 @@ +2003-06-25 Alan Modra <amodra@bigpond.net.au> + + * ld.texinfo: Correct spelling of "relocatable". + * ldctor.c: Likewise + * ldexp.c: Likewise + * ldfile.c: Likewise + * ldint.texinfo: Likewise + * ldlang.c: Likewise + * ldmain.c: Likewise + * ldwrite.c: Likewise + * lexsup.c: Likewise + * emultempl/aix.em: Likewise + * emultempl/alphaelf.em: Likewise + * emultempl/armcoff.em: Likewise + * emultempl/armelf_oabi.em: Likewise + * emultempl/beos.em: Likewise + * emultempl/elf32.em: Likewise + * emultempl/generic.em: Likewise + * emultempl/gld960.em: Likewise + * emultempl/gld960c.em: Likewise + * emultempl/hppaelf.em: Likewise + * emultempl/linux.em: Likewise + * emultempl/lnk960.em: Likewise + * emultempl/m68hc1xelf.em: Likewise + * emultempl/m68kcoff.em: Likewise + * emultempl/m68kelf.em: Likewise + * emultempl/mipsecoff.em: Likewise + * emultempl/mipself.em: Likewise + * emultempl/mmix-elfnmmo.em: Likewise + * emultempl/mmo.em: Likewise + * emultempl/needrelax.em: Likewise + * emultempl/pe.em: Likewise + * emultempl/ppc64elf.em: Likewise + * emultempl/sh64elf.em: Likewise + * emultempl/sunos.em: Likewise + * emultempl/ticoff.em: Likewise + * emultempl/xtensaelf.em: Likewise + 2003-06-24 Alan Modra <amodra@bigpond.net.au> * emultempl/ppc32elf.em: Convert to C90. @@ -766,7 +804,7 @@ 2002-01-14 Charles Wilson <cwilson@ece.gatech.edu> - * ld/ld.texinfo (node WIN32): Some clarifications + * ld.texinfo (node WIN32): Some clarifications and formatting fixups. 2003-01-09 Chris Demetriou <cgd@broadcom.com> @@ -820,7 +858,7 @@ 2003-01-03 Charles Wilson <cwilson@ece.gatech.edu> - * ld/pe-dll.c (autofilter_symbollist): Add cygwin_crt0. + * pe-dll.c (autofilter_symbollist): Add cygwin_crt0. 2003-01-04 Daniel Jacobowitz <drow@mvista.com> @@ -873,7 +911,7 @@ 2002-12-30 Ralf Habacker <Ralf.Habacker@freenet.de> Charles Wilson <cwilson@ece.gatech.edu> - * ld/config.in (HAVE_REALPATH): New entry. + * config.in (HAVE_REALPATH): New entry. (HAVE_SYS_STAT_H, HAVE_SYS_TYPES_H): Removed: obsolete. 2002-12-30 Ralf Habacker <ralf.habacker@freenet.de> @@ -923,7 +961,7 @@ 2002-12-17 Ralf Habacker <ralf.habacker@freenet.de> - * ld/emultempl/pe.em (pe_find_data_imports): Don't search for data + * emultempl/pe.em (pe_find_data_imports): Don't search for data import when auto-import is disabled. 2002-12-17 Danny Smith <dannysmith@users.sourceforge.net> @@ -1388,8 +1426,8 @@ * configure.in: added --with-lib-path argument to ld's configure to set LIB_PATH. - * ld/NEWS: Document new switch. - * ld/README: Mention new switch. + * NEWS: Document new switch. + * README: Mention new switch. * configure: Regenerate. * Makefile.in: Regenerate. @@ -1696,7 +1734,7 @@ 2002-06-20 Nathanael Nerode <neroden@twcny.rr.com> - * ld/configure.host (romp): Drop support. + * configure.host (romp): Drop support. 2002-06-18 Chris Demetriou <cgd@broadcom.com> @@ -1751,9 +1789,9 @@ 2002-06-07 Charles Wilson <cwilson@ece.gatech.edu> - * ld/ldmain.c (main): initialize link_info.pei386_auto_import + * ldmain.c (main): initialize link_info.pei386_auto_import to -1 == implicit enable. - * ld/emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): + * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): initialize link_info.pei386_auto_import to -1 == implicit enable. (gld_${EMULATION_NAME}_parse_args): When processing @@ -2177,7 +2215,7 @@ 2002-04-07 matthew green <mrg@redhat.com> - * ld/configure.host (*-*-netbsd*): Add support for NetBSD/ELF. + * configure.host (*-*-netbsd*): Add support for NetBSD/ELF. 2002-04-04 Alan Modra <amodra@bigpond.net.au> @@ -2768,8 +2806,8 @@ * configure.tgt (sh*le-*-netbsdelf*): New target. (sh*-*-netbsdelf*): New target. * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file. - * ld/emulparams/shelf_nbsd.sh: New emulation. - * ld/emulparams/shlelf_nbsd.sh: New emulation. + * emulparams/shelf_nbsd.sh: New emulation. + * emulparams/shlelf_nbsd.sh: New emulation. 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com> @@ -170,7 +170,7 @@ not copied into the output file. This is used by glibc. * When an ELF section named .gnu.warning.SYMBOL is encountered in an input file, and the symbol SYMBOL is referenced by some object file, the contents of the section are displayed as an error message. The section is not copied into -the output file, unless doing a relocateable or shared link. This is used by +the output file, unless doing a relocatable or shared link. This is used by glibc. * New options -split-by-reloc and -split-by-file. diff --git a/ld/emultempl/aix.em b/ld/emultempl/aix.em index 910f831b89..ad4c6dc963 100644 --- a/ld/emultempl/aix.em +++ b/ld/emultempl/aix.em @@ -613,15 +613,15 @@ gld${EMULATION_NAME}_after_open () struct set_info *p; /* Call ldctor_build_sets, after pretending that this is a - relocateable link. We do this because AIX requires relocation + relocatable link. We do this because AIX requires relocation entries for all references to symbols, even in a final executable. Of course, we only want to do this if we are producing an XCOFF output file. */ - r = link_info.relocateable; + r = link_info.relocatable; if (strstr (bfd_get_target (output_bfd), "xcoff") != NULL) - link_info.relocateable = TRUE; + link_info.relocatable = TRUE; ldctor_build_sets (); - link_info.relocateable = r; + link_info.relocatable = r; /* For each set, record the size, so that the XCOFF backend can output the correct csect length. */ @@ -1293,11 +1293,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -1314,9 +1314,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/alphaelf.em b/ld/emultempl/alphaelf.em index 4ff83cb76f..a1bb0c5e03 100644 --- a/ld/emultempl/alphaelf.em +++ b/ld/emultempl/alphaelf.em @@ -38,7 +38,7 @@ static int elf64alpha_32bit = 0; static void alpha_after_parse () { - if (elf64alpha_32bit && !link_info.shared && !link_info.relocateable) + if (elf64alpha_32bit && !link_info.shared && !link_info.relocatable) lang_section_start (".interp", exp_binop ('+', exp_intop (ALPHA_TEXT_START_32BIT), diff --git a/ld/emultempl/armcoff.em b/ld/emultempl/armcoff.em index 11566581e0..15ebecfeab 100644 --- a/ld/emultempl/armcoff.em +++ b/ld/emultempl/armcoff.em @@ -224,11 +224,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -245,9 +245,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/armelf_oabi.em b/ld/emultempl/armelf_oabi.em index 555b947e38..99b18cd361 100644 --- a/ld/emultempl/armelf_oabi.em +++ b/ld/emultempl/armelf_oabi.em @@ -113,11 +113,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -134,9 +134,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/beos.em b/ld/emultempl/beos.em index 3b84280f97..23b9dc59a8 100644 --- a/ld/emultempl/beos.em +++ b/ld/emultempl/beos.em @@ -394,7 +394,7 @@ gld_${EMULATION_NAME}_set_symbols() if (!init[IMAGEBASEOFF].inited) { - if (link_info.relocateable) + if (link_info.relocatable) init[IMAGEBASEOFF].value = 0; else if (init[DLLOFF].value) init[IMAGEBASEOFF].value = BEOS_DLL_IMAGE_BASE; @@ -402,8 +402,8 @@ gld_${EMULATION_NAME}_set_symbols() init[IMAGEBASEOFF].value = BEOS_EXE_IMAGE_BASE; } - /* Don't do any symbol assignments if this is a relocateable link. */ - if (link_info.relocateable) + /* Don't do any symbol assignments if this is a relocatable link. */ + if (link_info.relocatable) return; /* Glue the assignments into the abs section */ @@ -746,7 +746,7 @@ gld${EMULATION_NAME}_place_orphan (file, s) If they're marked as COMDAT sections, we don't want .text\$foo to end up in .text and then have .text disappear because it's marked link-once-discard. */ - if (link_info.relocateable) + if (link_info.relocatable) return FALSE; secname = bfd_get_section_name (s->owner, s); @@ -832,11 +832,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em index 7c06820aa8..85ca351ea7 100644 --- a/ld/emultempl/elf32.em +++ b/ld/emultempl/elf32.em @@ -643,7 +643,7 @@ gld${EMULATION_NAME}_after_open () struct bfd_link_needed_list *needed, *l; /* We only need to worry about this when doing a final link. */ - if (link_info.relocateable || !link_info.executable) + if (link_info.relocatable || !link_info.executable) return; /* Get the list of files which appear in DT_NEEDED entries in @@ -1146,7 +1146,7 @@ gld${EMULATION_NAME}_place_orphan (file, s) int isdyn = 0; secname = bfd_get_section_name (s->owner, s); - if (! link_info.relocateable + if (! link_info.relocatable && link_info.combreloc && (s->flags & SEC_ALLOC) && strncmp (secname, ".rel", 4) == 0) @@ -1181,7 +1181,7 @@ gld${EMULATION_NAME}_place_orphan (file, s) /* If this is a final link, then always put .gnu.warning.SYMBOL sections into the .text section to get them out of the way. */ if (link_info.executable - && ! link_info.relocateable + && ! link_info.relocatable && strncmp (secname, ".gnu.warning.", sizeof ".gnu.warning." - 1) == 0 && hold_text.os != NULL) { @@ -1197,7 +1197,7 @@ gld${EMULATION_NAME}_place_orphan (file, s) #define HAVE_SECTION(hold, name) \ (hold.os != NULL || (hold.os = lang_output_section_find (name)) != NULL) - if ((s->flags & SEC_EXCLUDE) != 0 && !link_info.relocateable) + if ((s->flags & SEC_EXCLUDE) != 0 && !link_info.relocatable) { if (s->output_section == NULL) s->output_section = bfd_abs_section_ptr; @@ -1278,7 +1278,7 @@ gld${EMULATION_NAME}_place_orphan (file, s) } address = NULL; - if (link_info.relocateable || (s->flags & (SEC_LOAD | SEC_ALLOC)) == 0) + if (link_info.relocatable || (s->flags & (SEC_LOAD | SEC_ALLOC)) == 0) address = exp_intop ((bfd_vma) 0); load_base = NULL; @@ -1462,11 +1462,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -1505,9 +1505,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/generic.em b/ld/emultempl/generic.em index 3a7d611531..611a948b62 100644 --- a/ld/emultempl/generic.em +++ b/ld/emultempl/generic.em @@ -4,7 +4,7 @@ cat >e${EMULATION_NAME}.c <<EOF /* This file is is generated by a shell script. DO NOT EDIT! */ /* emulate the original gld for the given ${EMULATION_NAME} - Copyright 1991, 1992, 1994, 1996, 2000, 2001, 2002 + Copyright 1991, 1992, 1994, 1996, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. Written by Steve Chamberlain steve@cygnus.com @@ -83,11 +83,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -104,9 +104,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/gld960.em b/ld/emultempl/gld960.em index dd73e6b061..e9ef7e5b27 100644 --- a/ld/emultempl/gld960.em +++ b/ld/emultempl/gld960.em @@ -128,11 +128,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -149,9 +149,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/gld960c.em b/ld/emultempl/gld960c.em index 132afcb5c5..160eb2ab03 100644 --- a/ld/emultempl/gld960c.em +++ b/ld/emultempl/gld960c.em @@ -143,11 +143,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -164,9 +164,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/hppaelf.em b/ld/emultempl/hppaelf.em index 4e3b6b957f..456e17c256 100644 --- a/ld/emultempl/hppaelf.em +++ b/ld/emultempl/hppaelf.em @@ -58,7 +58,7 @@ static bfd_signed_vma group_size = 1; static void hppaelf_after_parse () { - if (link_info.relocateable) + if (link_info.relocatable) lang_add_unique (".text"); #if 0 /* Enable this once we split millicode stuff from libgcc. */ else @@ -272,7 +272,7 @@ gld${EMULATION_NAME}_finish () /* If generating a relocatable output file, then we don't have to examine the relocs. */ - if (! link_info.relocateable) + if (! link_info.relocatable) { int ret = elf32_hppa_setup_section_lists (output_bfd, &link_info); @@ -304,7 +304,7 @@ gld${EMULATION_NAME}_finish () if (need_laying_out) hppaelf_layout_sections_again (); - if (! link_info.relocateable) + if (! link_info.relocatable) { /* Set the global data pointer. */ if (! elf32_hppa_set_gp (output_bfd, &link_info)) diff --git a/ld/emultempl/linux.em b/ld/emultempl/linux.em index fae1252ca6..ce7f3b6f25 100644 --- a/ld/emultempl/linux.em +++ b/ld/emultempl/linux.em @@ -135,7 +135,7 @@ gld${EMULATION_NAME}_create_output_section_statements () static void gld${EMULATION_NAME}_before_allocation () { - if (link_info.relocateable) + if (link_info.relocatable) return; /* Let the backend work out the sizes of any sections required by @@ -160,11 +160,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -181,9 +181,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/lnk960.em b/ld/emultempl/lnk960.em index ba0fe93b6f..56facaa0c1 100644 --- a/ld/emultempl/lnk960.em +++ b/ld/emultempl/lnk960.em @@ -184,7 +184,7 @@ lnk960_before_allocation () static void lnk960_after_allocation () { - if (!link_info.relocateable) + if (!link_info.relocatable) { lang_abs_symbol_at_end_of (".text", "_etext"); lang_abs_symbol_at_end_of (".data", "_edata"); @@ -283,11 +283,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -304,9 +304,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/m68hc1xelf.em b/ld/emultempl/m68hc1xelf.em index 5e5dc10243..ed059a275f 100644 --- a/ld/emultempl/m68hc1xelf.em +++ b/ld/emultempl/m68hc1xelf.em @@ -73,7 +73,7 @@ m68hc11_elf_${EMULATION_NAME}_before_allocation () /* If generating a relocatable output file, then we don't have to generate the trampolines. */ - if (link_info.relocateable) + if (link_info.relocatable) return; ret = elf32_m68hc11_setup_section_lists (output_bfd, &link_info); diff --git a/ld/emultempl/m68kcoff.em b/ld/emultempl/m68kcoff.em index 765447a258..e56c71fc35 100644 --- a/ld/emultempl/m68kcoff.em +++ b/ld/emultempl/m68kcoff.em @@ -63,7 +63,7 @@ gld${EMULATION_NAME}_after_open () bfd *abfd; if (! command_line.embedded_relocs - || link_info.relocateable) + || link_info.relocatable) return; for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next) @@ -133,7 +133,7 @@ gld${EMULATION_NAME}_after_allocation () bfd *abfd; if (! command_line.embedded_relocs - || link_info.relocateable) + || link_info.relocatable) return; for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next) @@ -179,11 +179,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -200,9 +200,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/m68kelf.em b/ld/emultempl/m68kelf.em index cb3b86bbfe..0bc20efbcf 100644 --- a/ld/emultempl/m68kelf.em +++ b/ld/emultempl/m68kelf.em @@ -1,5 +1,5 @@ # This shell script emits a C file. -*- C -*- -# Copyright 2000, 2001 Free Software Foundation, Inc. +# Copyright 2000, 2001, 2003 Free Software Foundation, Inc. # Written by Michael Sokolov <msokolov@ivan.Harhan.ORG>, based on armelf.em # # This file is part of GLD, the Gnu Linker. @@ -47,7 +47,7 @@ m68k_elf_after_open () #ifdef SUPPORT_EMBEDDED_RELOCS if (command_line.embedded_relocs - && (! link_info.relocateable)) + && (! link_info.relocatable)) { bfd *abfd; @@ -131,7 +131,7 @@ m68k_elf_after_allocation () #ifdef SUPPORT_EMBEDDED_RELOCS if (command_line.embedded_relocs - && (! link_info.relocateable)) + && (! link_info.relocatable)) { bfd *abfd; diff --git a/ld/emultempl/mipsecoff.em b/ld/emultempl/mipsecoff.em index 6e417ed52c..89ca5c6df4 100644 --- a/ld/emultempl/mipsecoff.em +++ b/ld/emultempl/mipsecoff.em @@ -79,7 +79,7 @@ gld${EMULATION_NAME}_after_open () bfd *abfd; if (! command_line.embedded_relocs - || link_info.relocateable) + || link_info.relocatable) return; for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next) @@ -149,7 +149,7 @@ gld${EMULATION_NAME}_after_allocation () bfd *abfd; if (! command_line.embedded_relocs - || link_info.relocateable) + || link_info.relocatable) return; for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next) @@ -195,11 +195,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -216,9 +216,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/mipself.em b/ld/emultempl/mipself.em index 62a53e0a57..944fbe1ecf 100644 --- a/ld/emultempl/mipself.em +++ b/ld/emultempl/mipself.em @@ -1,4 +1,4 @@ -# Copyright 2002 Free Software Foundation, Inc. +# Copyright 2002, 2003 Free Software Foundation, Inc. # Written by Mitch Lichtenberg <mpl@broadcom.com> and # Chris Demetriou <cgd@broadcom.com> based on m68kelf.em and mipsecoff.em. # @@ -49,7 +49,7 @@ mips_elf${ELFSIZE}_after_open() gld${EMULATION_NAME}_after_open (); #ifdef SUPPORT_EMBEDDED_RELOCS - if (command_line.embedded_relocs && (! link_info.relocateable)) + if (command_line.embedded_relocs && (! link_info.relocatable)) { bfd *abfd; @@ -140,7 +140,7 @@ mips_elf${ELFSIZE}_after_allocation () after_allocation_default (); #ifdef SUPPORT_EMBEDDED_RELOCS - if (command_line.embedded_relocs && (! link_info.relocateable)) + if (command_line.embedded_relocs && (! link_info.relocatable)) { bfd *abfd; diff --git a/ld/emultempl/mmix-elfnmmo.em b/ld/emultempl/mmix-elfnmmo.em index 8ec604f6e3..3a2b8703d7 100644 --- a/ld/emultempl/mmix-elfnmmo.em +++ b/ld/emultempl/mmix-elfnmmo.em @@ -1,5 +1,5 @@ # This shell script emits a C file. -*- C -*- -# Copyright 2001, 2002 Free Software Foundation, Inc. +# Copyright 2001, 2002, 2003 Free Software Foundation, Inc. # # This file is part of GLD, the Gnu Linker. # @@ -42,7 +42,7 @@ mmix_before_allocation () maintenance burden of checking that it still does what we need.) */ /* Force -relax on if not doing a relocatable link. */ - if (! link_info.relocateable) + if (! link_info.relocatable) command_line.relax = TRUE; if (!_bfd_mmix_prepare_linker_allocated_gregs (output_bfd, &link_info)) diff --git a/ld/emultempl/mmo.em b/ld/emultempl/mmo.em index e65e89bc5d..84d1197c1e 100644 --- a/ld/emultempl/mmo.em +++ b/ld/emultempl/mmo.em @@ -1,5 +1,5 @@ # This shell script emits a C file. -*- C -*- -# Copyright 2001, 2002 Free Software Foundation, Inc. +# Copyright 2001, 2002, 2003 Free Software Foundation, Inc. # # This file is part of GLD, the Gnu Linker. # @@ -97,7 +97,7 @@ mmo_place_orphan (file, s) asection *snew, **pps, *bfd_section; /* We have nothing to say for anything other than a final link. */ - if (link_info.relocateable + if (link_info.relocatable || (bfd_get_section_flags (s->owner, s) & (SEC_EXCLUDE | SEC_LOAD)) != SEC_LOAD) return FALSE; diff --git a/ld/emultempl/needrelax.em b/ld/emultempl/needrelax.em index 242b778743..5e052c0772 100644 --- a/ld/emultempl/needrelax.em +++ b/ld/emultempl/needrelax.em @@ -1,5 +1,5 @@ # This shell script emits a C file. -*- C -*- -# Copyright 2001, 2002 Free Software Foundation, Inc. +# Copyright 2001, 2002, 2003 Free Software Foundation, Inc. # # This file is part of GLD, the Gnu Linker. # @@ -34,7 +34,7 @@ need_relax_${EMULATION_NAME}_before_allocation () gld${EMULATION_NAME}_before_allocation (); /* Force -relax on if not doing a relocatable link. */ - if (! link_info.relocateable) + if (! link_info.relocatable) command_line.relax = TRUE; } EOF diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em index ce1a693025..9197bd0028 100644 --- a/ld/emultempl/pe.em +++ b/ld/emultempl/pe.em @@ -706,7 +706,7 @@ gld_${EMULATION_NAME}_set_symbols () if (!init[IMAGEBASEOFF].inited) { - if (link_info.relocateable) + if (link_info.relocatable) init[IMAGEBASEOFF].value = 0; else if (init[DLLOFF].value || link_info.shared) #ifdef DLL_SUPPORT @@ -719,8 +719,8 @@ gld_${EMULATION_NAME}_set_symbols () init[IMAGEBASEOFF].value = NT_EXE_IMAGE_BASE; } - /* Don't do any symbol assignments if this is a relocateable link. */ - if (link_info.relocateable) + /* Don't do any symbol assignments if this is a relocatable link. */ + if (link_info.relocatable) return; /* Glue the assignments into the abs section. */ @@ -776,7 +776,7 @@ gld_${EMULATION_NAME}_after_parse () opened, so registering the symbol as undefined will make a difference. */ - if (! link_info.relocateable && entry_symbol.name != NULL) + if (! link_info.relocatable && entry_symbol.name != NULL) ldlang_add_undef (entry_symbol.name); } @@ -1021,7 +1021,7 @@ gld_${EMULATION_NAME}_after_open () #if ! (defined (TARGET_IS_i386pe) || defined (TARGET_IS_armpe)) if (link_info.shared) #else - if (!link_info.relocateable) + if (!link_info.relocatable) #endif pe_dll_build_sections (output_bfd, &link_info); @@ -1461,7 +1461,7 @@ gld_${EMULATION_NAME}_finish () #ifdef DLL_SUPPORT if (link_info.shared #if !defined(TARGET_IS_shpe) && !defined(TARGET_IS_mipspe) - || (!link_info.relocateable && pe_def_file->num_exports != 0) + || (!link_info.relocatable && pe_def_file->num_exports != 0) #endif ) { @@ -1556,7 +1556,7 @@ gld_${EMULATION_NAME}_place_orphan (file, s) /* Look through the script to see where to place this section. */ hold_section_name = xstrdup (secname); - if (!link_info.relocateable) + if (!link_info.relocatable) { dollar = strchr (hold_section_name, '$'); if (dollar != NULL) @@ -1662,7 +1662,7 @@ gld_${EMULATION_NAME}_place_orphan (file, s) } } - if (link_info.relocateable || (s->flags & (SEC_LOAD | SEC_ALLOC)) == 0) + if (link_info.relocatable || (s->flags & (SEC_LOAD | SEC_ALLOC)) == 0) address = exp_intop ((bfd_vma) 0); else { @@ -1934,11 +1934,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c diff --git a/ld/emultempl/ppc64elf.em b/ld/emultempl/ppc64elf.em index d24ecf4429..dfe7932bc0 100644 --- a/ld/emultempl/ppc64elf.em +++ b/ld/emultempl/ppc64elf.em @@ -270,7 +270,7 @@ ppc_layout_sections_again (void) static void gld${EMULATION_NAME}_after_allocation (void) { - if (!link_info.relocateable) + if (!link_info.relocatable) _bfd_set_gp_value (output_bfd, ppc64_elf_toc (output_bfd)); } @@ -319,7 +319,7 @@ gld${EMULATION_NAME}_finish (void) /* If generating a relocatable output file, then we don't have any stubs. */ - if (stub_file != NULL && !link_info.relocateable) + if (stub_file != NULL && !link_info.relocatable) { int ret = ppc64_elf_setup_section_lists (output_bfd, &link_info); if (ret != 0) diff --git a/ld/emultempl/sh64elf.em b/ld/emultempl/sh64elf.em index 066cab86d8..174850f0a7 100644 --- a/ld/emultempl/sh64elf.em +++ b/ld/emultempl/sh64elf.em @@ -483,9 +483,9 @@ sh64_elf_${EMULATION_NAME}_after_allocation () continue; } - /* If we emit relocateable contents, we need a + /* If we emit relocatable contents, we need a relocation for the start address. */ - if (link_info.relocateable || link_info.emitrelocations) + if (link_info.relocatable || link_info.emitrelocations) { /* FIXME: We could perhaps use lang_add_reloc and friends here, but I'm not really sure that @@ -555,7 +555,7 @@ sh64_elf_${EMULATION_NAME}_after_allocation () } /* The .cranges section will have this size, no larger or smaller. - Since relocs (if relocateable linking) will be emitted into the + Since relocs (if relocatable linking) will be emitted into the "extended" size, we must set the raw size to the total. We have to keep track of the number of new .cranges entries. diff --git a/ld/emultempl/sunos.em b/ld/emultempl/sunos.em index 8cabe3a0a2..2f75b77ef5 100644 --- a/ld/emultempl/sunos.em +++ b/ld/emultempl/sunos.em @@ -383,7 +383,7 @@ gld${EMULATION_NAME}_after_open () struct bfd_link_needed_list *needed, *l; /* We only need to worry about this when doing a final link. */ - if (link_info.relocateable || link_info.shared) + if (link_info.relocatable || link_info.shared) return; /* Get the list of files which appear in ld_need entries in dynamic @@ -689,7 +689,7 @@ gld${EMULATION_NAME}_before_allocation () /* The SunOS native linker creates a shared library whenever there are any undefined symbols in a link, unless -e is used. This is pretty weird, but we are compatible. */ - if (! link_info.shared && ! link_info.relocateable && ! entry_from_cmdline) + if (! link_info.shared && ! link_info.relocatable && ! entry_from_cmdline) { struct bfd_link_hash_entry *h; @@ -730,7 +730,7 @@ gld${EMULATION_NAME}_before_allocation () one. We need to create the symbol before calling size_dynamic_sections, although we can't set the value until afterward. */ - if (! link_info.relocateable) + if (! link_info.relocatable) { hdyn = bfd_link_hash_lookup (link_info.hash, "__DYNAMIC", TRUE, FALSE, FALSE); @@ -823,7 +823,7 @@ gld${EMULATION_NAME}_before_allocation () /* We must assign a value to __DYNAMIC. It should be zero if we are not doing a dynamic link, or the start of the .dynamic section if we are doing one. */ - if (! link_info.relocateable) + if (! link_info.relocatable) { hdyn->type = bfd_link_hash_defined; hdyn->u.def.value = 0; @@ -989,11 +989,11 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return EOF sed $sc ldscripts/${EMULATION_NAME}.xu >> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocateable) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c @@ -1010,9 +1010,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/ticoff.em b/ld/emultempl/ticoff.em index 90c940e497..aca5409549 100644 --- a/ld/emultempl/ticoff.em +++ b/ld/emultempl/ticoff.em @@ -130,9 +130,9 @@ $s/$/n"/ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 0; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return `sed "$sc" ldscripts/${EMULATION_NAME}.xu`; - else if (link_info.relocateable) + else if (link_info.relocatable) return `sed "$sc" ldscripts/${EMULATION_NAME}.xr`; else if (!config.text_read_only) return `sed "$sc" ldscripts/${EMULATION_NAME}.xbn`; @@ -150,9 +150,9 @@ cat >>e${EMULATION_NAME}.c <<EOF { *isfile = 1; - if (link_info.relocateable && config.build_constructors) + if (link_info.relocatable && config.build_constructors) return "ldscripts/${EMULATION_NAME}.xu"; - else if (link_info.relocateable) + else if (link_info.relocatable) return "ldscripts/${EMULATION_NAME}.xr"; else if (!config.text_read_only) return "ldscripts/${EMULATION_NAME}.xbn"; diff --git a/ld/emultempl/xtensaelf.em b/ld/emultempl/xtensaelf.em index b0700758f6..bc91365037 100644 --- a/ld/emultempl/xtensaelf.em +++ b/ld/emultempl/xtensaelf.em @@ -75,7 +75,7 @@ elf_xtensa_place_orphan (file, s) asection *s; { /* Early exit for relocatable links. */ - if (link_info.relocateable) + if (link_info.relocatable) return FALSE; return gld${EMULATION_NAME}_place_orphan (file, s); @@ -148,7 +148,7 @@ elf_xtensa_before_allocation () /* TBD: We need to force the page alignments to here and only do them as needed for the entire output section. Finally, if this - is a relocateable link then we need to add alignment notes so + is a relocatable link then we need to add alignment notes so that the literals can be separated later. */ } diff --git a/ld/ld.texinfo b/ld/ld.texinfo index d6e6220330..c9691a0a01 100644 --- a/ld/ld.texinfo +++ b/ld/ld.texinfo @@ -728,9 +728,9 @@ This option is currently only supported on ELF platforms. @cindex partial link @cindex relocatable output @kindex -r -@kindex --relocateable +@kindex --relocatable @item -r -@itemx --relocateable +@itemx --relocatable Generate relocatable output---i.e., generate an output file that can in turn serve as input to @command{ld}. This is often called @dfn{partial linking}. As a side effect, in environments that support standard Unix diff --git a/ld/ldctor.c b/ld/ldctor.c index a5089cfeaa..2081900a3c 100644 --- a/ld/ldctor.c +++ b/ld/ldctor.c @@ -1,6 +1,6 @@ /* ldctor.c -- constructor support routines Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, - 2002 Free Software Foundation, Inc. + 2002, 2003 Free Software Foundation, Inc. By Steve Chamberlain <sac@cygnus.com> This file is part of GLD, the Gnu Linker. @@ -278,12 +278,12 @@ ldctor_build_sets () .long elementN .long 0 except that we use the right size instead of .long. When - generating relocateable output, we generate relocs instead of + generating relocatable output, we generate relocs instead of addresses. */ howto = bfd_reloc_type_lookup (output_bfd, p->reloc); if (howto == (reloc_howto_type *) NULL) { - if (link_info.relocateable) + if (link_info.relocatable) { einfo (_("%P%X: %s does not support reloc %s for set %s\n"), bfd_get_target (output_bfd), @@ -292,7 +292,7 @@ ldctor_build_sets () continue; } - /* If this is not a relocateable link, all we need is the + /* If this is not a relocatable link, all we need is the size, which we can get from the input BFD. */ if (p->elements->section->owner != NULL) howto = bfd_reloc_type_lookup (p->elements->section->owner, @@ -369,7 +369,7 @@ ldctor_build_sets () if (! bfd_is_abs_section (e->section)) e->section->flags |= SEC_KEEP; - if (link_info.relocateable) + if (link_info.relocatable) lang_add_reloc (p->reloc, howto, e->section, e->name, exp_intop (e->value)); else diff --git a/ld/ldexp.c b/ld/ldexp.c index 9227dd63f2..cafd56122f 100644 --- a/ld/ldexp.c +++ b/ld/ldexp.c @@ -1,6 +1,6 @@ /* This module handles expression trees. Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002 + 2001, 2002, 2003 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support <sac@cygnus.com>. @@ -134,7 +134,7 @@ exp_print_token (code, infix_p) { ADDR, "ADDR" }, { LOADADDR, "LOADADDR" }, { MAX_K, "MAX_K" }, - { REL, "relocateable" }, + { REL, "relocatable" }, { DATA_SEGMENT_ALIGN, "DATA_SEGMENT_ALIGN" }, { DATA_SEGMENT_END, "DATA_SEGMENT_END" } }; @@ -215,7 +215,7 @@ exp_bigintop (value, str) return new; } -/* Build an expression representing an unnamed relocateable value. */ +/* Build an expression representing an unnamed relocatable value. */ etree_type * exp_relop (section, value) @@ -528,7 +528,7 @@ fold_name (tree, current_section, allocation_done, dot) { result = new_abs ((bfd_vma) bfd_sizeof_headers (output_bfd, - link_info.relocateable)); + link_info.relocatable)); } else { diff --git a/ld/ldfile.c b/ld/ldfile.c index 4806534a74..79d3b48f27 100644 --- a/ld/ldfile.c +++ b/ld/ldfile.c @@ -338,7 +338,7 @@ ldfile_open_file_search (arch, entry, lib, suffix) { char *string; - if (entry->dynamic && ! link_info.relocateable) + if (entry->dynamic && ! link_info.relocatable) { if (ldemul_open_dynamic_archive (arch, search, entry)) { diff --git a/ld/ldint.texinfo b/ld/ldint.texinfo index 489750ac7f..54867648a5 100644 --- a/ld/ldint.texinfo +++ b/ld/ldint.texinfo @@ -1,6 +1,6 @@ \input texinfo @setfilename ldint.info -@c Copyright 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000 +@c Copyright 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003 @c Free Software Foundation, Inc. @ifinfo @@ -334,7 +334,7 @@ be run when doing a final relocation, they should be enclosed within a variable substitution based on @code{RELOCATING}. For example, on many targets special symbols such as @code{_end} should be defined when doing a final link. Naturally, those symbols should not be defined when doing -a relocateable link using @code{-r}. The @file{scripttempl} script +a relocatable link using @code{-r}. The @file{scripttempl} script could use a construct like this to define those symbols: @smallexample $@{RELOCATING+ _end = .;@} diff --git a/ld/ldlang.c b/ld/ldlang.c index 83d43b83ad..267a32c034 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -1193,7 +1193,7 @@ lang_add_section (ptr, section, output, file) link. Discard debugging sections marked with SEC_EXCLUDE on a relocatable link too. */ if ((flags & SEC_EXCLUDE) != 0 - && ((flags & SEC_DEBUGGING) != 0 || !link_info.relocateable)) + && ((flags & SEC_DEBUGGING) != 0 || !link_info.relocatable)) discard = TRUE; /* Discard input sections which are assigned to a section named @@ -1252,7 +1252,7 @@ lang_add_section (ptr, section, output, file) format targets, .text$foo sections go into .text and it's odd to see .text with SEC_LINK_ONCE set. */ - if (! link_info.relocateable) + if (! link_info.relocatable) flags &= ~ (SEC_LINK_ONCE | SEC_LINK_DUPLICATES); /* If this is not the first input section, and the SEC_READONLY @@ -1274,7 +1274,7 @@ lang_add_section (ptr, section, output, file) } /* For now make .tbss normal section. */ - if ((flags & SEC_THREAD_LOCAL) && ! link_info.relocateable) + if ((flags & SEC_THREAD_LOCAL) && ! link_info.relocatable) flags |= SEC_LOAD; section->output_section->flags |= flags; @@ -1965,7 +1965,7 @@ ldlang_open_output (statement) ASSERT (output_bfd == (bfd *) NULL); output_bfd = open_output (statement->output_statement.name); ldemul_set_output_arch (); - if (config.magic_demand_paged && !link_info.relocateable) + if (config.magic_demand_paged && !link_info.relocatable) output_bfd->flags |= D_PAGED; else output_bfd->flags &= ~D_PAGED; @@ -3058,7 +3058,7 @@ lang_size_sections_1 (s, output_section_statement, prev, fill, dot, relax, & (SEC_ALLOC | SEC_LOAD)) != 0 && (bfd_get_section_flags (output_bfd, os->bfd_section) & SEC_NEVER_LOAD) == 0 - && ! link_info.relocateable + && ! link_info.relocatable && check_regions && strcmp (os->region->name, "*default*") == 0 && lang_memory_region_list != NULL @@ -3139,7 +3139,7 @@ lang_size_sections_1 (s, output_section_statement, prev, fill, dot, relax, ASSERT (after == os->bfd_section->vma); else if ((os->bfd_section->flags & SEC_HAS_CONTENTS) == 0 && (os->bfd_section->flags & SEC_THREAD_LOCAL) - && ! link_info.relocateable) + && ! link_info.relocatable) os->bfd_section->_raw_size = 0; else os->bfd_section->_raw_size = @@ -3585,7 +3585,7 @@ lang_set_startof () { asection *s; - if (link_info.relocateable) + if (link_info.relocatable) return; for (s = output_bfd->sections; s != NULL; s = s->next) @@ -3632,7 +3632,7 @@ lang_finish () struct bfd_link_hash_entry *h; bfd_boolean warn; - if (link_info.relocateable || link_info.shared) + if (link_info.relocatable || link_info.shared) warn = FALSE; else warn = TRUE; @@ -3741,7 +3741,7 @@ lang_check () input format may not have equivalent representations in the output format (and besides BFD does not translate relocs for other link purposes than a final link). */ - if ((link_info.relocateable || link_info.emitrelocations) + if ((link_info.relocatable || link_info.emitrelocations) && (compatible == NULL || bfd_get_flavour (input_bfd) != bfd_get_flavour (output_bfd)) && (bfd_get_file_flags (input_bfd) & HAS_RELOC) != 0) @@ -3794,7 +3794,7 @@ lang_common () { if (command_line.inhibit_common_definition) return; - if (link_info.relocateable + if (link_info.relocatable && ! command_line.force_common_definition) return; @@ -3935,7 +3935,7 @@ lang_place_orphans () /* This is a lonely common section which must have come from an archive. We attach to the section with the wildcard. */ - if (! link_info.relocateable + if (! link_info.relocatable || command_line.force_common_definition) { if (default_common_section == NULL) @@ -4353,7 +4353,7 @@ lang_process () /* Find any sections not attached explicitly and handle them. */ lang_place_orphans (); - if (! link_info.relocateable) + if (! link_info.relocatable) { /* Look for a text section and set the readonly attribute in it. */ asection *found = bfd_get_section_by_name (output_bfd, ".text"); @@ -4371,7 +4371,7 @@ lang_process () and other back-ends size dynamic sections. */ ldemul_before_allocation (); - if (!link_info.relocateable) + if (!link_info.relocatable) strip_excluded_output_sections (); /* We must record the program headers before we try to fix the @@ -4449,7 +4449,7 @@ lang_process () (fill_type *) 0, (bfd_vma) 0); /* Make sure that the section addresses make sense. */ - if (! link_info.relocateable + if (! link_info.relocatable && command_line.check_section_addresses) lang_check_section_addresses (); diff --git a/ld/ldmain.c b/ld/ldmain.c index 08a0ec4bc6..424a40086c 100644 --- a/ld/ldmain.c +++ b/ld/ldmain.c @@ -287,7 +287,7 @@ main (argc, argv) interface by default. */ demangling = getenv ("COLLECT_NO_DEMANGLE") == NULL; - link_info.relocateable = FALSE; + link_info.relocatable = FALSE; link_info.emitrelocations = FALSE; link_info.task_link = FALSE; link_info.shared = FALSE; @@ -350,7 +350,7 @@ main (argc, argv) ldemul_set_symbols (); - if (link_info.relocateable) + if (link_info.relocatable) { if (command_line.gc_sections) einfo ("%P%F: --gc-sections and -r may not be used together\n"); @@ -376,7 +376,7 @@ main (argc, argv) /* Treat ld -r -s as ld -r -S -x (i.e., strip all local symbols). I don't see how else this can be handled, since in this case we must preserve all externally visible symbols. */ - if (link_info.relocateable && link_info.strip == strip_all) + if (link_info.relocatable && link_info.strip == strip_all) { link_info.strip = strip_debugger; if (link_info.discard == discard_sec_merge) @@ -475,7 +475,7 @@ main (argc, argv) /* Print error messages for any missing symbols, for any warning symbols, and possibly multiple definitions. */ - if (link_info.relocateable) + if (link_info.relocatable) output_bfd->flags &= ~EXEC_P; else output_bfd->flags |= EXEC_P; @@ -489,9 +489,9 @@ main (argc, argv) if (nocrossref_list != NULL) check_nocrossrefs (); - /* Even if we're producing relocateable output, some non-fatal errors should + /* Even if we're producing relocatable output, some non-fatal errors should be reported in the exit status. (What non-fatal errors, if any, do we - want to ignore for relocateable output?) */ + want to ignore for relocatable output?) */ if (!config.make_executable && !force_make_executable) { if (trace_files) @@ -509,7 +509,7 @@ main (argc, argv) /* If the --force-exe-suffix is enabled, and we're making an executable file and it doesn't end in .exe, copy it to one which does. */ - if (! link_info.relocateable && command_line.force_exe_suffix) + if (! link_info.relocatable && command_line.force_exe_suffix) { int len = strlen (output_filename); @@ -1129,7 +1129,7 @@ constructor_callback (info, constructor, name, abfd, section, value) /* Ensure that BFD_RELOC_CTOR exists now, so that we can give a useful error message. */ if (bfd_reloc_type_lookup (output_bfd, BFD_RELOC_CTOR) == NULL - && (link_info.relocateable + && (link_info.relocatable || bfd_reloc_type_lookup (abfd, BFD_RELOC_CTOR) == NULL)) einfo (_("%P%F: BFD backend error: BFD_RELOC_CTOR unsupported\n")); diff --git a/ld/ldwrite.c b/ld/ldwrite.c index cbd879dc7e..a93f151d22 100644 --- a/ld/ldwrite.c +++ b/ld/ldwrite.c @@ -1,5 +1,5 @@ /* ldwrite.c -- write out the linked file - Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2002 + Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2002, 2003 Free Software Foundation, Inc. Written by Steve Chamberlain sac@cygnus.com @@ -441,7 +441,7 @@ split_sections (abfd, info) || info->strip == strip_some) thislines = sec->lineno_count; - if (info->relocateable) + if (info->relocatable) thisrelocs = sec->reloc_count; if (sec->_cooked_size != 0) @@ -450,7 +450,7 @@ split_sections (abfd, info) thissize = sec->_raw_size; } - else if (info->relocateable + else if (info->relocatable && (p->type == bfd_section_reloc_link_order || p->type == bfd_symbol_reloc_link_order)) thisrelocs++; diff --git a/ld/lexsup.c b/ld/lexsup.c index 8c85807e32..5f30f89965 100644 --- a/ld/lexsup.c +++ b/ld/lexsup.c @@ -234,8 +234,8 @@ static const struct ld_option ld_options[] = '\0', NULL, N_("Ignored for SVR4 compatibility"), ONE_DASH }, { {"emit-relocs", no_argument, NULL, 'q'}, 'q', NULL, "Generate relocations in final output", TWO_DASHES }, - { {"relocateable", no_argument, NULL, 'r'}, - 'r', NULL, N_("Generate relocateable output"), TWO_DASHES }, + { {"relocatable", no_argument, NULL, 'r'}, + 'r', NULL, N_("Generate relocatable output"), TWO_DASHES }, { {NULL, no_argument, NULL, '\0'}, 'i', NULL, NULL, ONE_DASH }, { {"just-symbols", required_argument, NULL, 'R'}, @@ -860,7 +860,7 @@ parse_args (argc, argv) and will seg-fault the next time around. */ einfo(_("%P%F: bad -rpath option\n")); - link_info.relocateable = TRUE; + link_info.relocatable = TRUE; config.build_constructors = FALSE; config.magic_demand_paged = FALSE; config.text_read_only = FALSE; @@ -1042,7 +1042,7 @@ parse_args (argc, argv) link_info.task_link = TRUE; /* Fall through - do an implied -r option. */ case OPTION_UR: - link_info.relocateable = TRUE; + link_info.relocatable = TRUE; config.build_constructors = TRUE; config.magic_demand_paged = FALSE; config.text_read_only = FALSE; |