aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYaakov Selkowitz <yselkowi@redhat.com>2014-08-19 15:03:42 +0000
committerKai Tietz <ktietz@gcc.gnu.org>2014-08-19 17:03:42 +0200
commit04017283ee3b701e028d0def8ca477937487ee5e (patch)
treee6e81c84a931e58721fc04af073fdb78c744f0e2
parentce8126f5ffcf5e658f6496e95e311128907c21f4 (diff)
cygwin.h (LINK_SPEC): Pass --tsaware flag only when building executables, not DLLs.
2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com> * config/i386/cygwin.h (LINK_SPEC): Pass --tsaware flag only when building executables, not DLLs. Add --large-address-aware under the same conditions. * config/i386/cygwin-w64.h (LINK_SPEC): Pass --tsaware flag only when building executables, not DLLs. Add --large-address-aware under the same conditions when using -m32. From-SVN: r214158
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/i386/cygwin-w64.h3
-rw-r--r--gcc/config/i386/cygwin.h3
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f7a84c0b74c..a4d6c72aefd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
+ * config/i386/cygwin.h (LINK_SPEC): Pass --tsaware flag only
+ when building executables, not DLLs. Add --large-address-aware
+ under the same conditions.
+ * config/i386/cygwin-w64.h (LINK_SPEC): Pass --tsaware flag only
+ when building executables, not DLLs. Add --large-address-aware
+ under the same conditions when using -m32.
+
* config/i386/cygwin-stdint.h: Throughout, make type
definitions dependent on target architecture, not host.
diff --git a/gcc/config/i386/cygwin-w64.h b/gcc/config/i386/cygwin-w64.h
index 06a6cd98c1b..0ecb37b2ff0 100644
--- a/gcc/config/i386/cygwin-w64.h
+++ b/gcc/config/i386/cygwin-w64.h
@@ -66,7 +66,8 @@ along with GCC; see the file COPYING3. If not see
%{static:-Bstatic} %{!static:-Bdynamic} \
%{shared|mdll: " SUB_LINK_ENTRY " --enable-auto-image-base} \
%(shared_libgcc_undefs) \
- --dll-search-prefix=cyg -tsaware"
+ --dll-search-prefix=cyg \
+ %{!shared: %{!mdll: %{" SPEC_32 ":--large-address-aware} --tsaware}}"
/* Cygwin64 will have a 64-bit long type. */
#undef LONG_TYPE_SIZE
diff --git a/gcc/config/i386/cygwin.h b/gcc/config/i386/cygwin.h
index 165d3aae229..0ea29ce0fc8 100644
--- a/gcc/config/i386/cygwin.h
+++ b/gcc/config/i386/cygwin.h
@@ -120,7 +120,8 @@ along with GCC; see the file COPYING3. If not see
%{shared: --shared} %{mdll:--dll} \
%{static:-Bstatic} %{!static:-Bdynamic} \
%{shared|mdll: --enable-auto-image-base -e __cygwin_dll_entry@12} \
- --dll-search-prefix=cyg -tsaware"
+ --dll-search-prefix=cyg \
+ %{!shared: %{!mdll: --large-address-aware --tsaware}}"
/* Binutils does not handle weak symbols from dlls correctly. For now,
do not use them unnecessarily in gthr-posix.h. */