t_macos.pas 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. {
  2. $Id$
  3. Copyright (c) 2001 by Peter Vreman
  4. This unit implements support import,export,link routines
  5. for the (i386) Amiga target
  6. This program is free software; you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation; either version 2 of the License, or
  9. (at your option) any later version.
  10. This program is distributed in the hope that it will be useful,
  11. but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. GNU General Public License for more details.
  14. You should have received a copy of the GNU General Public License
  15. along with this program; if not, write to the Free Software
  16. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  17. ****************************************************************************
  18. }
  19. unit t_macos;
  20. {$i defines.inc}
  21. interface
  22. implementation
  23. uses
  24. link,
  25. cutils,cclasses,
  26. globtype,globals,systems,verbose,script,fmodule;
  27. {*****************************************************************************
  28. Initialize
  29. *****************************************************************************}
  30. {$ifdef m68k}
  31. const
  32. target_m68k_macos_info : ttargetinfo =
  33. (
  34. target : target_m68k_Mac;
  35. name : 'Macintosh m68k';
  36. shortname : 'mac';
  37. flags : [];
  38. cpu : m68k;
  39. short_name : 'MACOS';
  40. unit_env : '';
  41. sharedlibext : 'Lib';
  42. staticlibext : 'Lib';
  43. sourceext : '.pp';
  44. pasext : '.pas';
  45. exeext : '';
  46. defext : '';
  47. scriptext : '';
  48. smartext : '.sl';
  49. unitext : '.ppt';
  50. unitlibext : '.ppl';
  51. asmext : '.a';
  52. objext : '.o';
  53. resext : '.res';
  54. resobjext : '.or';
  55. libprefix : '';
  56. Cprefix : '_';
  57. newline : #13;
  58. assem : as_m68k_mpw;
  59. assemextern : as_m68k_mpw;
  60. link : ld_m68k_mac;
  61. linkextern : ld_m68k_mac;
  62. ar : ar_m68k_ar;
  63. res : res_none;
  64. endian : endian_big;
  65. stackalignment : 2;
  66. maxCrecordalignment : 4;
  67. size_of_pointer : 4;
  68. size_of_longint : 4;
  69. heapsize : 128*1024;
  70. maxheapsize : 32768*1024;
  71. stacksize : 8192;
  72. DllScanSupported:false;
  73. use_bound_instruction : false;
  74. use_function_relative_addresses : false
  75. );
  76. {$endif m68k}
  77. {$ifdef powerpc}
  78. const
  79. target_powerpc_macos_info : ttargetinfo =
  80. (
  81. target : target_powerpc_MACOS;
  82. name : 'MacOs (PowerPC)';
  83. shortname : 'MacOs/PPC';
  84. flags : [];
  85. cpu : powerpc;
  86. short_name : 'MACOS';
  87. unit_env : '';
  88. sharedlibext : 'Lib';
  89. staticlibext : 'Lib';
  90. sourceext : '.pp';
  91. pasext : '.pas';
  92. exeext : '';
  93. defext : '';
  94. scriptext : '';
  95. smartext : '.sl';
  96. unitext : '.ppt';
  97. unitlibext : '.ppl';
  98. asmext : '.a';
  99. objext : '.o';
  100. resext : '.res';
  101. resobjext : '.or';
  102. libprefix : '';
  103. Cprefix : '';
  104. newline : #13;
  105. assem : as_powerpc_mpw;
  106. assemextern : as_powerpc_mpw;
  107. link : ld_powerpc_macos;
  108. linkextern : ld_powerpc_macos;
  109. ar : ar_powerpc_ar;
  110. res : res_powerpc_mpw;
  111. endian : endian_big;
  112. stackalignment : 8;
  113. maxCrecordalignment : 32;
  114. size_of_pointer : 4;
  115. size_of_longint : 4;
  116. heapsize : 256*1024;
  117. maxheapsize : 32768*1024;
  118. stacksize : 8192;
  119. DllScanSupported:false;
  120. use_bound_instruction : false;
  121. use_function_relative_addresses : true
  122. );
  123. {$endif powerpc}
  124. initialization
  125. {$ifdef m68k}
  126. RegisterTarget(target_m68k_macos_info);
  127. {$endif m68k}
  128. {$ifdef powerpc}
  129. RegisterTarget(target_powerpc_macos_info);
  130. {$endif powerpc}
  131. end.
  132. {
  133. $Log$
  134. Revision 1.1 2001-04-18 22:02:04 peter
  135. * registration of targets and assemblers
  136. }