M68K TLS support.
[deliverable/binutils-gdb.git] / ld / scripttempl / pe.sc
index 8cbfe352e4a27e352660900ea87b7d55e5e2687f..85614460549a9d1965b10193c8ddcfab68b18288 100644 (file)
@@ -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=
@@ -50,8 +58,6 @@ ${OUTPUT_ARCH+OUTPUT_ARCH(${OUTPUT_ARCH})}
 
 ${LIB_SEARCH_DIRS}
 
-ENTRY(${ENTRY})
-
 SECTIONS
 {
   ${RELOCATING+/* Make the virtual address and file offset synced if the alignment is}
@@ -73,7 +79,7 @@ SECTIONS
     /* ??? Why is .gcc_exc here?  */
     ${RELOCATING+ *(.gcc_exc)}
     ${RELOCATING+PROVIDE (etext = .);}
-    *(.gcc_except_table)
+    ${RELOCATING+ *(.gcc_except_table)}
   }
 
   /* The Cygwin32 library uses a section to avoid copying certain data
@@ -88,15 +94,15 @@ SECTIONS
     *(.data)
     *(.data2)
     ${R_DATA}
+    *(.jcr)
     ${RELOCATING+__data_end__ = . ;}
     ${RELOCATING+*(.data_cygwin_nocopy)}
   }
 
   .rdata ${RELOCATING+BLOCK(__section_alignment__)} :
   {
-    *(.rdata)
     ${R_RDATA}
-    *(.eh_frame)
+    ${RELOCATING+ *(.eh_frame)}
     ${RELOCATING+___RUNTIME_PSEUDO_RELOC_LIST__ = .;}
     ${RELOCATING+__RUNTIME_PSEUDO_RELOC_LIST__ = .;}
     *(.rdata_runtime_pseudo_reloc)
This page took 0.024484 seconds and 4 git commands to generate.