i_watcom.pas 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. {
  2. $Id$
  3. Copyright (c) 1998-2002 by Peter Vreman
  4. This unit implements support information structures for Watcom
  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 Watcom. }
  19. unit i_watcom;
  20. {$i fpcdefs.inc}
  21. interface
  22. uses
  23. systems;
  24. const
  25. system_i386_watcom_info : tsysteminfo =
  26. (
  27. system : system_i386_Watcom;
  28. name : 'Watcom compatible DOS extenders';
  29. shortname : 'WATCOM';
  30. flags : [];
  31. cpu : cpu_i386;
  32. unit_env : 'WATCOMUNITS';
  33. extradefines : 'DPMI';
  34. sourceext : '.pp';
  35. pasext : '.pas';
  36. exeext : '.exe';
  37. defext : '.def';
  38. scriptext : '.bat';
  39. smartext : '.sl';
  40. unitext : '.ppu';
  41. unitlibext : '.ppl';
  42. asmext : '.asm';
  43. objext : '.obj';
  44. resext : '.res';
  45. resobjext : '.or';
  46. sharedlibext : '.dll';
  47. staticlibext : '.a';
  48. staticlibprefix : '';
  49. sharedlibprefix : '';
  50. sharedClibext : '.dll';
  51. staticClibext : '.a';
  52. staticClibprefix : '';
  53. sharedClibprefix : '';
  54. Cprefix : '_';
  55. newline : #13#10;
  56. dirsep : '\';
  57. files_case_relevent : false;
  58. assem : as_i386_wasm;
  59. assemextern : as_gas;
  60. link : nil;
  61. linkextern : nil;
  62. ar : ar_gnu_ar;
  63. res : res_none;
  64. script : script_dos;
  65. endian : endian_little;
  66. alignment :
  67. (
  68. procalign : 4;
  69. loopalign : 4;
  70. jumpalign : 0;
  71. constalignmin : 0;
  72. constalignmax : 4;
  73. varalignmin : 0;
  74. varalignmax : 4;
  75. localalignmin : 0;
  76. localalignmax : 4;
  77. recordalignmin : 0;
  78. recordalignmax : 2;
  79. maxCrecordalign : 4
  80. );
  81. first_parm_offset : 8;
  82. heapsize : 2048*1024;
  83. stacksize : 16384;
  84. DllScanSupported : false;
  85. use_function_relative_addresses : true
  86. );
  87. implementation
  88. initialization
  89. {$ifdef cpu86}
  90. {$ifdef watcom}
  91. set_source_info(system_i386_watcom_info);
  92. {$endif watcom}
  93. {$endif cpu86}
  94. end.
  95. {
  96. $Log$
  97. Revision 1.3 2003-10-03 22:09:49 peter
  98. * removed paraalign
  99. Revision 1.2 2003/09/30 08:39:50 michael
  100. + Patch from Wiktor Sywula for watcom support
  101. Revision 1.1 2003/09/06 10:01:11 florian
  102. + added *_watcom units
  103. }