diff options
author | Kai Tietz <kai.tietz@onevision.com> | 2010-05-25 10:00:25 +0000 |
---|---|---|
committer | Kai Tietz <kai.tietz@onevision.com> | 2010-05-25 10:00:25 +0000 |
commit | ca5f22031a4ddd2e9e2365b4b77ab944ad425212 (patch) | |
tree | 1f695296137438b34b12964bb30202118fea46c8 /ld | |
parent | 5572ce1f3da0a31e5e3692fac6694b013b8cc0fb (diff) | |
download | gdb-ca5f22031a4ddd2e9e2365b4b77ab944ad425212.zip gdb-ca5f22031a4ddd2e9e2365b4b77ab944ad425212.tar.gz gdb-ca5f22031a4ddd2e9e2365b4b77ab944ad425212.tar.bz2 |
2010-05-25 Kai Tietz <kai.tietz@onevision.com>
* emultempl/pe.em (default_merge_rdata): New shell variable.
(MERGE_RDATA_V2): New macro.
(gld_${EMULATION_NAME}_get_script): Adjust rule for auto-import
selected script.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 7 | ||||
-rw-r--r-- | ld/emultempl/pe.em | 12 |
2 files changed, 18 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 5c1f94b..e5afd75 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2010-05-25 Kai Tietz <kai.tietz@onevision.com> + + * emultempl/pe.em (default_merge_rdata): New shell variable. + (MERGE_RDATA_V2): New macro. + (gld_${EMULATION_NAME}_get_script): Adjust rule for auto-import + selected script. + 2010-05-15 Kai Tietz <kai.tietz@onevision.com> * emultempl/pe.em (is_underscoring): New helper function. diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em index ca82fa8..3185336 100644 --- a/ld/emultempl/pe.em +++ b/ld/emultempl/pe.em @@ -172,9 +172,15 @@ EOF case ${target} in *-*-cygwin*) default_auto_import=1 + default_merge_rdata=1 + ;; + *-w64-mingw*) + default_auto_import=1 + default_merge_rdata=0 ;; *) default_auto_import=-1 + default_merge_rdata=1 ;; esac @@ -185,6 +191,10 @@ fragment <<EOF #endif } +/* Indicates if RDATA shall be merged into DATA when pseudo-relocation + version 2 is used and auto-import is enabled. */ +#define MERGE_RDATA_V2 ${default_merge_rdata} + /* PE format extra command line options. */ /* Used for setting flags in the PE header. */ @@ -2159,7 +2169,7 @@ sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c echo ' ; else if (!config.magic_demand_paged) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xn >> e${EMULATION_NAME}.c if test -n "$GENERATE_AUTO_IMPORT_SCRIPT" ; then -echo ' ; else if (link_info.pei386_auto_import == 1) return' >> e${EMULATION_NAME}.c +echo ' ; else if (link_info.pei386_auto_import == 1 && (MERGE_RDATA_V2 || link_info.pei386_runtime_pseudo_reloc != 2)) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xa >> e${EMULATION_NAME}.c fi echo ' ; else return' >> e${EMULATION_NAME}.c |