i_os2.pas 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. {
  2. $Id$
  3. Copyright (c) 1998-2002 by Peter Vreman
  4. This unit implements support information structures for OS/2
  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 OS/2. }
  19. unit i_os2;
  20. interface
  21. uses
  22. systems;
  23. const
  24. res_emxbind_info : tresinfo =
  25. (
  26. id : res_emxbind;
  27. resbin : 'emxbind';
  28. rescmd : '-b -r $RES $OBJ'
  29. (* Not really used - see TLinkeros2.SetDefaultInfo in t_os2.pas. *)
  30. );
  31. system_i386_os2_info : tsysteminfo =
  32. (
  33. system : system_i386_OS2;
  34. name : 'OS/2';
  35. shortname : 'OS2';
  36. flags : [tf_need_export,tf_use_8_3];
  37. cpu : cpu_i386;
  38. unit_env : 'OS2UNITS';
  39. extradefines : '';
  40. exeext : '.exe';
  41. defext : '.def';
  42. scriptext : '.cmd';
  43. smartext : '.sl';
  44. unitext : '.ppu';
  45. unitlibext : '.ppl';
  46. asmext : '.s';
  47. objext : '.o';
  48. resext : '.res';
  49. resobjext : '.or';
  50. sharedlibext : '.dll';
  51. staticlibext : '.a';
  52. staticlibprefix : '';
  53. sharedlibprefix : '';
  54. sharedClibext : '.dll';
  55. staticClibext : '.a';
  56. staticClibprefix : '';
  57. sharedClibprefix : '';
  58. p_ext_support : false;
  59. Cprefix : '_';
  60. newline : #13#10;
  61. dirsep : '\';
  62. files_case_relevent : false;
  63. assem : as_i386_as_aout;
  64. assemextern : as_i386_as_aout;
  65. link : nil;
  66. linkextern : nil;
  67. ar : ar_gnu_ar;
  68. res : res_emxbind;
  69. script : script_dos;
  70. endian : endian_little;
  71. alignment :
  72. (
  73. procalign : 4;
  74. loopalign : 4;
  75. jumpalign : 0;
  76. constalignmin : 0;
  77. constalignmax : 4;
  78. varalignmin : 0;
  79. varalignmax : 4;
  80. localalignmin : 0;
  81. localalignmax : 4;
  82. recordalignmin : 0;
  83. recordalignmax : 2;
  84. maxCrecordalign : 4
  85. );
  86. first_parm_offset : 8;
  87. stacksize : 256*1024;
  88. DllScanSupported: false;
  89. use_function_relative_addresses : false
  90. );
  91. implementation
  92. initialization
  93. {$ifdef CPU86}
  94. {$ifdef os2}
  95. {$IFNDEF EMX}
  96. set_source_info(system_i386_os2_info);
  97. {$ENDIF EMX}
  98. {$IFDEF VER1_0}
  99. set_source_info(system_i386_os2_info);
  100. {$ENDIF VER1_0}
  101. {$endif os2}
  102. {$endif CPU86}
  103. end.
  104. {
  105. $Log$
  106. Revision 1.9 2005-03-20 22:36:45 olle
  107. * Cleaned up handling of source file extension.
  108. + Added support for .p extension for macos and darwin
  109. Revision 1.8 2005/02/14 17:13:10 peter
  110. * truncate log
  111. }