Subversion Repositories Kolibri OS

Rev

Rev 6312 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. /*OUTPUT_FORMAT("binary")*/
  2. SEARCH_DIR("=/mingw32/lib")
  3. SEARCH_DIR("=/lib")
  4. ENTRY(__start)
  5. SECTIONS
  6. {
  7.    .text 0x000000:
  8.    {
  9.         LONG(0x554e454D);
  10.         LONG(0x32305445);
  11.         LONG(1);
  12.         LONG(__start);
  13.         LONG(___iend);
  14.         LONG(___memsize);
  15.         LONG(___stacktop);
  16.         LONG(___cmdline);
  17.         LONG(___pgmname);     /*  full path    */
  18.         LONG(__subsystem__);
  19.         LONG(__idata_start)
  20.         LONG(__idata_end)
  21.         LONG(_main)
  22.  
  23.         *(.init)
  24.         *(.text)
  25.         *(SORT(.text$*))
  26.         *(.text.*)
  27.         *(.glue_7t)
  28.         *(.glue_7)
  29.         ___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
  30.                         LONG (-1);*(.ctors); *(.ctor); *(SORT(.ctors.*));  LONG (0);
  31.         ___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
  32.                         LONG (-1); *(.dtors); *(.dtor); *(SORT(.dtors.*));  LONG (0);
  33.         *(.fini)
  34.     /* ??? Why is .gcc_exc here?  */
  35.         *(.gcc_exc)
  36.         PROVIDE (etext = .);
  37.         *(.gcc_except_table)
  38.    }
  39.  
  40.    .rdata ALIGN(16) :
  41.    {
  42.         *(.rdata)
  43.         *(SORT(.rdata$*))
  44.         ___RUNTIME_PSEUDO_RELOC_LIST__ = .;
  45.         __RUNTIME_PSEUDO_RELOC_LIST__ = .;
  46.         *(.rdata_runtime_pseudo_reloc)
  47.         ___RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
  48.         __RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
  49.    }
  50.    .CRT ALIGN(16) :
  51.    {
  52.          ___crt_xc_start__ = . ;
  53.         *(SORT(.CRT$XC*))  /* C initialization */
  54.         ___crt_xc_end__ = . ;
  55.         ___crt_xi_start__ = . ;
  56.         *(SORT(.CRT$XI*))  /* C++ initialization */
  57.         ___crt_xi_end__ = . ;
  58.         ___crt_xl_start__ = . ;
  59.         *(SORT(.CRT$XL*))  /* TLS callbacks */
  60.     /* ___crt_xl_end__ is defined in the TLS Directory support code */
  61.         ___crt_xp_start__ = . ;
  62.         *(SORT(.CRT$XP*))  /* Pre-termination */
  63.         ___crt_xp_end__ = . ;
  64.         ___crt_xt_start__ = . ;
  65.         *(SORT(.CRT$XT*))  /* Termination */
  66.         ___crt_xt_end__ = . ;
  67.    }
  68.  
  69.    .data ALIGN(16) :
  70.    {
  71.         PROVIDE ( __data_start__ = .) ;
  72.         *(.data)
  73.         *(.data2)
  74.         *(SORT(.data$*))
  75.         *(.jcr)
  76.         __CRT_MT = .;
  77.         LONG(1);
  78.         PROVIDE ( __data_end__ = .) ;
  79.         *(.data_cygwin_nocopy)
  80.         ___iend = . ;
  81.    }
  82.  
  83.    .eh_frame BLOCK(16) :
  84.    {
  85.         PROVIDE (___EH_FRAME_BEGIN__ = .) ;
  86.         *(.eh_frame*)
  87.         ___FRAME_END__ = . ;
  88.         LONG(0);
  89.    }
  90.  
  91.    .idata ALIGN(16):
  92.    {
  93.       __idata_start = .;
  94.       SORT(*)(.idata$2)
  95.       SORT(*)(.idata$3)
  96.     /* These zeroes mark the end of the import list. */
  97.       LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
  98.       SORT(*)(.idata$4)
  99.       SORT(*)(.idata$5)
  100.       SORT(*)(.idata$6)
  101.       SORT(*)(.idata$7)
  102.       __idata_end = .  ;
  103.    }
  104.  
  105.    bss ALIGN(16):
  106.    {
  107.         *(.bss)
  108.         *(COMMON)
  109.         . = ALIGN(16);
  110.         ___cmdline = .;
  111.         . = . + 256;
  112.         ___pgmname = .;
  113.         . = . + 1024 + 16;
  114.         ___stacktop = .;
  115.         ___memsize = . ;
  116.    }
  117.  
  118.   /DISCARD/ :
  119.   {
  120.     *(.debug$S)
  121.     *(.debug$T)
  122.     *(.debug$F)
  123.     *(.drectve)
  124.     *(.note.GNU-stack)
  125.     *(.comment)
  126. /*    *(.eh_frame) */
  127.     *(.debug_abbrev)
  128.     *(.debug_info)
  129.     *(.debug_line)
  130.     *(.debug_frame)
  131.     *(.debug_loc)
  132.     *(.debug_pubnames)
  133.     *(.debug_aranges)
  134.     *(.debug_ranges)
  135.   }
  136.  
  137. }
  138.  
  139.