i_win32.pas 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. {
  2. $Id$
  3. Copyright (c) 1998-2002 by Peter Vreman
  4. This unit implements support information structures for win32
  5. This program is free software; you can redistribute it and/or modify
  6. it under the terms of the GNU General Public License as published by
  7. the Free Software Foundation; either version 2 of the License, or
  8. (at your option) any later version.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. GNU General Public License for more details.
  13. You should have received a copy of the GNU General Public License
  14. along with this program; if not, write to the Free Software
  15. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  16. ****************************************************************************
  17. }
  18. { This unit implements support information structures for win32. }
  19. unit i_win32;
  20. interface
  21. uses
  22. systems;
  23. const
  24. ar_gnu_arw_info : tarinfo =
  25. (
  26. id : ar_gnu_arw;
  27. arcmd : 'arw rs $LIB $FILES'
  28. );
  29. const
  30. res_gnu_windres_info : tresinfo =
  31. (
  32. id : res_gnu_windres;
  33. resbin : 'windres';
  34. rescmd : '--include $INC -O coff -o $OBJ $RES'
  35. );
  36. const
  37. system_i386_win32_info : tsysteminfo =
  38. (
  39. system : system_i386_WIN32;
  40. name : 'Win32 for i386';
  41. shortname : 'Win32';
  42. flags : [];
  43. cpu : cpu_i386;
  44. unit_env : 'WIN32UNITS';
  45. extradefines : 'MSWINDOWS';
  46. sourceext : '.pp';
  47. pasext : '.pas';
  48. exeext : '.exe';
  49. defext : '.def';
  50. scriptext : '.bat';
  51. smartext : '.slw';
  52. unitext : '.ppw';
  53. unitlibext : '.ppl';
  54. asmext : '.sw';
  55. objext : '.ow';
  56. resext : '.rc';
  57. resobjext : '.owr';
  58. sharedlibext : '.dll';
  59. staticlibext : '.aw';
  60. staticlibprefix : 'libp';
  61. sharedlibprefix : '';
  62. sharedClibext : '.dll';
  63. staticClibext : '.a';
  64. staticClibprefix : 'lib';
  65. sharedClibprefix : '';
  66. Cprefix : '_';
  67. newline : #13#10;
  68. dirsep : '\';
  69. files_case_relevent : false;
  70. assem : as_i386_pecoff;
  71. assemextern : as_i386_asw;
  72. link : nil;
  73. linkextern : nil;
  74. ar : ar_gnu_arw;
  75. res : res_gnu_windres;
  76. script : script_dos;
  77. endian : endian_little;
  78. alignment :
  79. (
  80. procalign : 4;
  81. loopalign : 4;
  82. jumpalign : 0;
  83. constalignmin : 0;
  84. constalignmax : 4;
  85. varalignmin : 0;
  86. varalignmax : 4;
  87. localalignmin : 0;
  88. localalignmax : 4;
  89. paraalign : 4;
  90. recordalignmin : 0;
  91. recordalignmax : 2;
  92. maxCrecordalign : 16
  93. );
  94. first_parm_offset : 8;
  95. heapsize : 256*1024;
  96. stacksize : 262144;
  97. DllScanSupported:true;
  98. use_function_relative_addresses : true
  99. );
  100. implementation
  101. initialization
  102. {$ifdef CPU86}
  103. {$ifdef WIN32}
  104. {$ifndef WDOSX}
  105. set_source_info(system_i386_win32_info);
  106. {$endif WDOSX}
  107. {$endif WIN32}
  108. {$endif CPU86}
  109. end.
  110. {
  111. $Log$
  112. Revision 1.1 2002-09-06 15:03:51 carl
  113. * moved files to systems directory
  114. Revision 1.2 2002/08/12 15:08:39 carl
  115. + stab register indexes for powerpc (moved from gdb to cpubase)
  116. + tprocessor enumeration moved to cpuinfo
  117. + linker in target_info is now a class
  118. * many many updates for m68k (will soon start to compile)
  119. - removed some ifdef or correct them for correct cpu
  120. Revision 1.1 2002/07/26 21:15:38 florian
  121. * rewrote the system handling
  122. }