Subversion Repositories Kolibri OS

Rev

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

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