* scripttempl/pe.sc: Only include .idata\$[0-7] in .idata when
authorIan Lance Taylor <ian@airs.com>
Wed, 25 Mar 1998 16:35:13 +0000 (16:35 +0000)
committerIan Lance Taylor <ian@airs.com>
Wed, 25 Mar 1998 16:35:13 +0000 (16:35 +0000)
relocating.

ld/ChangeLog
ld/scripttempl/pe.sc

index d1f8a0b5280315c1423e7aff6ff2e5d71f377c11..44a45453f98730c517ea1ce51c032cd7257cd1ed 100644 (file)
@@ -1,3 +1,8 @@
+Wed Mar 25 11:34:13 1998  Ian Lance Taylor  <ian@cygnus.com>
+
+       * scripttempl/pe.sc: Only include .idata\$[0-7] in .idata when
+       relocating.
+
 Mon Mar 23 18:54:15 1998  Joel Sherrill  <joel@OARcorp.com>
 
        * configure.tgt: (sh*-*-rtems*): Switched from ELF to COFF.
index c516abd848208313606e7fcb77220f9c680b3e40..a28feda026fc67b2848eb2217503bee23324a7be 100644 (file)
@@ -30,6 +30,12 @@ SECTIONS
     *(.gcc_except_table)
   }
 
+  /* The Cygwin32 library uses a section to avoid copying certain data
+     on fork.  This used to be named ".data$nocopy".  The linker used
+     to include this between __data_start__ and __data_end__, but that
+     breaks building the cygwin32 dll.  Instead, we name the section
+     ".data_cygwin_nocopy" and explictly include it after __data_end__. */
+
   .data ${RELOCATING+BLOCK(__section_alignment__)} : 
   {
     ${RELOCATING+__data_start__ = . ;}
@@ -72,14 +78,14 @@ SECTIONS
   {
     /* This cannot currently be handled with grouped sections.
        See pe.em:sort_sections.  */
-    *(.idata\$2)
-    *(.idata\$3)
+    ${RELOCATING+*(.idata\$2)}
+    ${RELOCATING+*(.idata\$3)}
     ${RELOCATING+ /* These zeroes mark the end of the import list.  */}
     ${RELOCATING+ LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);}
-    *(.idata\$4)
-    *(.idata\$5)
-    *(.idata\$6)
-    *(.idata\$7)
+    ${RELOCATING+*(.idata\$4)}
+    ${RELOCATING+*(.idata\$5)}
+    ${RELOCATING+*(.idata\$6)}
+    ${RELOCATING+*(.idata\$7)}
   }
   .CRT ${RELOCATING+BLOCK(__section_alignment__)} :
   {