summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2014-04-08 14:13:59 +0000
committerCorinna Vinschen <corinna@vinschen.de>2014-04-08 14:13:59 +0000
commit236f226893d87190ada15e56bcc8fca29a0442f9 (patch)
tree16f8ea668fe09878686b9a5639deb7b003f58ad5
parent1704af644d7c986305aa2c2ab042ac9b2bd8f9eb (diff)
downloadcygnal-236f226893d87190ada15e56bcc8fca29a0442f9.tar.gz
cygnal-236f226893d87190ada15e56bcc8fca29a0442f9.tar.bz2
cygnal-236f226893d87190ada15e56bcc8fca29a0442f9.zip
* cygwin.sc.in: (Temporarily?) workaround serious ld bug which
truncates symbols in certain computations to 32 bit. See https://sourceware.org/bugzilla/show_bug.cgi?id=16821
-rw-r--r--winsup/cygwin/ChangeLog6
-rw-r--r--winsup/cygwin/cygwin.sc.in18
2 files changed, 13 insertions, 11 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 0c85cd7af..f57047251 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,9 @@
+2014-04-08 Corinna Vinschen <corinna@vinschen.de>
+
+ * cygwin.sc.in: (Temporarily?) workaround serious ld bug which
+ truncates symbols in certain computations to 32 bit. See
+ https://sourceware.org/bugzilla/show_bug.cgi?id=16821
+
2014-04-07 Corinna Vinschen <corinna@vinschen.de>
* cygserver_ipc.h (ipc_set_proc_info): Add bool parameter to specify
diff --git a/winsup/cygwin/cygwin.sc.in b/winsup/cygwin/cygwin.sc.in
index 279da858f..134ae3f76 100644
--- a/winsup/cygwin/cygwin.sc.in
+++ b/winsup/cygwin/cygwin.sc.in
@@ -60,16 +60,12 @@ SECTIONS
*(.rdata)
*(SORT(.rdata$*))
*(.rdata_cygwin_nocopy)
- __rt_psrelocs_start = .;
+ ___RUNTIME_PSEUDO_RELOC_LIST__ = .;
+ __RUNTIME_PSEUDO_RELOC_LIST__ = .;
*(.rdata_runtime_pseudo_reloc)
- __rt_psrelocs_end = .;
-
- }
- __rt_psrelocs_size = __rt_psrelocs_end - __rt_psrelocs_start;
- ___RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
- __RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
- ___RUNTIME_PSEUDO_RELOC_LIST__ = . - __rt_psrelocs_size;
- __RUNTIME_PSEUDO_RELOC_LIST__ = . - __rt_psrelocs_size;
+ ___RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
+ __RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
+ }
.eh_frame ALIGN(__section_alignment__) :
{
*(.eh_frame*)
@@ -137,7 +133,7 @@ SECTIONS
{
*(.rsrc)
*(SORT(.rsrc$*))
- _SYM (_cygheap_start) = ABSOLUTE(.);
+ _SYM (_cygheap_start) = .;
}
.cygheap ALIGN(__section_alignment__) :
{
@@ -147,7 +143,7 @@ SECTIONS
. = . + (2048 * 1024);
#endif
. = ALIGN(0x10000);
- _SYM (_cygheap_end) = ABSOLUTE(.);
+ _SYM (_cygheap_end) = .;
}
/DISCARD/ :
{