Subversion Repositories Kolibri OS

Rev

Rev 2040 | Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1.  
  2. OUTPUT_FORMAT(pei-i386)
  3.  
  4. ENTRY("____dll_start")
  5.  
  6. SECTIONS
  7. {
  8.  
  9.   . = SIZEOF_HEADERS;
  10.   . = ALIGN(__section_alignment__);
  11.  
  12.   .text  __image_base__ + . :
  13.   {
  14.          *(.text)
  15.          *(SORT(.text$*))
  16.          *(.text.*)
  17.          *(.gnu.linkonce.t.*)
  18.          *(.glue_7t)
  19.          *(.glue_7)
  20.          ___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
  21.                         LONG (-1);*(.ctors); *(.ctor); *(SORT(.ctors.*));  LONG (0);
  22.          ___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
  23.                         LONG (-1); *(.dtors); *(.dtor); *(SORT(.dtors.*));  LONG (0);
  24.          *(.fini)
  25.  
  26.          . = ALIGN(16) ;
  27.          ___crt_xc_start__ = . ;
  28.          *(SORT(.CRT$XC*))  /* C initialization */
  29.          ___crt_xc_end__ = . ;
  30.          ___crt_xi_start__ = . ;
  31.          *(SORT(.CRT$XI*))  /* C++ initialization */
  32.          ___crt_xi_end__ = . ;
  33.          ___crt_xl_start__ = . ;
  34.          *(SORT(.CRT$XL*))  /* TLS callbacks */
  35.     /* ___crt_xl_end__ is defined in the TLS Directory support code */
  36.          ___crt_xp_start__ = . ;
  37.          *(SORT(.CRT$XP*))  /* Pre-termination */
  38.          ___crt_xp_end__ = . ;
  39.          ___crt_xt_start__ = . ;
  40.          *(SORT(.CRT$XT*))  /* Termination */
  41.          ___crt_xt_end__ = . ;
  42.  
  43.          . = ALIGN(16) ;
  44.  
  45.          *(.rdata)
  46.          *(SORT(.rdata$*))
  47.          __rt_psrelocs_start = .;
  48.          *(.rdata_runtime_pseudo_reloc)
  49.          __rt_psrelocs_end = .;
  50.   }
  51.   __rt_psrelocs_size = __rt_psrelocs_end - __rt_psrelocs_start;
  52.   ___RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
  53.   __RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
  54.   ___RUNTIME_PSEUDO_RELOC_LIST__ = . - __rt_psrelocs_size;
  55.   __RUNTIME_PSEUDO_RELOC_LIST__ = . - __rt_psrelocs_size;
  56.  
  57.   .data ALIGN(__section_alignment__):
  58.   {
  59.      PROVIDE ( __data_start__ = .) ;
  60.      *(.data)
  61.      *(.data2)
  62.      *(SORT(.data$*))
  63.      *(.jcr)
  64.      __CRT_MT = .;
  65.      LONG(0);
  66.      PROVIDE ( __data_end__ = .) ;
  67.      *(.data_cygwin_nocopy)
  68.   }
  69.  
  70.   .bss ALIGN(__section_alignment__):
  71.   {
  72.     __bss_start__ = . ;
  73.     *(.bss)
  74.     *(COMMON)
  75.     __bss_end__ = . ;
  76.   }
  77.  
  78.   .edata ALIGN(__section_alignment__):
  79.   {
  80.     *(.edata)
  81.   }
  82.  
  83.   /DISCARD/ :
  84.   {
  85.     *(.debug$S)
  86.     *(.debug$T)
  87.     *(.debug$F)
  88.     *(.drectve)
  89.     *(.note.GNU-stack)
  90.     *(.eh_frame)
  91.     *(.comment)
  92.     *(.debug_abbrev)
  93.     *(.debug_info)
  94.     *(.debug_line)
  95.     *(.debug_frame)
  96.     *(.debug_loc)
  97.     *(.debug_pubnames)
  98.     *(.debug_aranges)
  99.     *(.debug_ranges)
  100.   }
  101.  
  102.   .idata ALIGN(__section_alignment__):
  103.   {
  104.     SORT(*)(.idata$2)
  105.     SORT(*)(.idata$3)
  106.     /* These zeroes mark the end of the import list. */
  107.     LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
  108.     SORT(*)(.idata$4)
  109.     SORT(*)(.idata$5)
  110.     SORT(*)(.idata$6)
  111.     SORT(*)(.idata$7)
  112.   }
  113.  
  114.   .reloc ALIGN(__section_alignment__) :
  115.   {
  116.     *(.reloc)
  117.   }
  118.  
  119. }
  120.  
  121.