gdb/
[binutils-gdb.git] / ld / scripttempl / sparccoff.sc
index 8d79cd9c4db60250fa55c7ada74426e0d1dd174e..309aa836a5f0f36b3697107249fc0df8afcf79aa 100644 (file)
@@ -5,13 +5,24 @@ cat <<EOF
 OUTPUT_FORMAT("${OUTPUT_FORMAT}")
 ${LIB_SEARCH_DIRS}
 
-ENTRY(${ENTRY})
+${RELOCATING+ENTRY (${ENTRY})}
 
 SECTIONS
 {
   .text ${RELOCATING+ SIZEOF_HEADERS} : {
     *(.init)
     *(.text)
+    ${RELOCATING+ etext  =  .;}
+    ${CONSTRUCTING+ ___CTOR_LIST__ = .;}
+    ${CONSTRUCTING+ LONG((___CTOR_END__ - ___CTOR_LIST__) / 4 - 2)}
+    ${CONSTRUCTING+ *(.ctors)}
+    ${CONSTRUCTING+ LONG(0)}
+    ${CONSTRUCTING+ ___CTOR_END__ = .;}
+    ${CONSTRUCTING+ ___DTOR_LIST__ = .;}
+    ${CONSTRUCTING+ LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2)}
+    ${CONSTRUCTING+ *(.dtors)}
+    ${CONSTRUCTING+ LONG(0)}
+    ${CONSTRUCTING+ ___DTOR_END__ = .;}
     *(.fini)
     ${RELOCATING+ etext  =  .};
   }
@@ -25,11 +36,11 @@ SECTIONS
     *(COMMON)
     ${RELOCATING+ end = .};
   }
-  .stab  . (NOLOAD) : 
+  .stab  0 ${RELOCATING+(NOLOAD)} : 
   {
     [ .stab ]
   }
-  .stabstr  . (NOLOAD) :
+  .stabstr  0 ${RELOCATING+(NOLOAD)} :
   {
     [ .stabstr ]
   }