forked from Imagelibrary/binutils-gdb
PR linker/4844
* genscript.sh: Add support for generating a .xa script for use with the --auto-import option. * ld.texinfo: Document the new behaviour of the --auto-import option. * ldint.texinfo: Document new script generation. * emulparams/i386pe.sh (GENERATE_AUTO_IMPORT): Define. * emulparams/i386pe_posix.sh (GENERATE_AUTO_IMPORT): Define. * emulparams/i386pep.sh (GENERATE_AUTO_IMPORT): Define. * emultemp/pe.em (..._get_script): Support the use of the auto import script. * scripttempl/pe.sc: Put the .rdata input sections into the .data output section when creating an auto import script. * scripttempl/pep.sc: Likewise.
This commit is contained in:
@@ -13,8 +13,16 @@ fi
|
||||
# use grouped sections instead).
|
||||
if test "${RELOCATING}"; then
|
||||
R_TEXT='*(SORT(.text$*))'
|
||||
R_DATA='*(SORT(.data$*))'
|
||||
R_RDATA='*(SORT(.rdata$*))'
|
||||
if test "x$LD_FLAG" = "xauto_import" ; then
|
||||
R_DATA='*(SORT(.data$*))
|
||||
*(.rdata)
|
||||
*(SORT(.rdata$*))'
|
||||
R_RDATA=''
|
||||
else
|
||||
R_DATA='*(SORT(.data$*))'
|
||||
R_RDATA='*(.rdata)
|
||||
*(SORT(.rdata$*))'
|
||||
fi
|
||||
R_IDATA='
|
||||
SORT(*)(.idata$2)
|
||||
SORT(*)(.idata$3)
|
||||
@@ -37,7 +45,7 @@ if test "${RELOCATING}"; then
|
||||
else
|
||||
R_TEXT=
|
||||
R_DATA=
|
||||
R_RDATA=
|
||||
R_RDATA='*(.rdata)'
|
||||
R_IDATA=
|
||||
R_CRT=
|
||||
R_RSRC=
|
||||
@@ -93,7 +101,6 @@ SECTIONS
|
||||
|
||||
.rdata ${RELOCATING+BLOCK(__section_alignment__)} :
|
||||
{
|
||||
*(.rdata)
|
||||
${R_RDATA}
|
||||
${RELOCATING+ *(.eh_frame)}
|
||||
${RELOCATING+___RUNTIME_PSEUDO_RELOC_LIST__ = .;}
|
||||
|
||||
@@ -13,8 +13,16 @@ fi
|
||||
# use grouped sections instead).
|
||||
if test "${RELOCATING}"; then
|
||||
R_TEXT='*(SORT(.text$*))'
|
||||
R_DATA='*(SORT(.data$*))'
|
||||
R_RDATA='*(SORT(.rdata$*))'
|
||||
if test "x$LD_FLAG" = "xauto_import" ; then
|
||||
R_DATA='*(SORT(.data$*))
|
||||
*(.rdata)
|
||||
*(SORT(.rdata$*))'
|
||||
R_RDATA=''
|
||||
else
|
||||
R_DATA='*(SORT(.data$*))'
|
||||
R_RDATA='*(.rdata)
|
||||
*(SORT(.rdata$*))'
|
||||
fi
|
||||
R_IDATA='
|
||||
SORT(*)(.idata$2)
|
||||
SORT(*)(.idata$3)
|
||||
@@ -37,7 +45,7 @@ if test "${RELOCATING}"; then
|
||||
else
|
||||
R_TEXT=
|
||||
R_DATA=
|
||||
R_RDATA=
|
||||
R_RDATA='*(.rdata)'
|
||||
R_IDATA=
|
||||
R_CRT=
|
||||
R_RSRC=
|
||||
@@ -93,7 +101,6 @@ SECTIONS
|
||||
|
||||
.rdata ${RELOCATING+BLOCK(__section_alignment__)} :
|
||||
{
|
||||
*(.rdata)
|
||||
${R_RDATA}
|
||||
${RELOCATING+ *(.eh_frame)}
|
||||
${RELOCATING+___RUNTIME_PSEUDO_RELOC_LIST__ = .;}
|
||||
|
||||
Reference in New Issue
Block a user