t_macos.pas 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  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. extradefines : '';
  42. sharedlibext : 'Lib';
  43. staticlibext : 'Lib';
  44. sourceext : '.pp';
  45. pasext : '.pas';
  46. exeext : '';
  47. defext : '';
  48. scriptext : '';
  49. smartext : '.sl';
  50. unitext : '.ppt';
  51. unitlibext : '.ppl';
  52. asmext : '.a';
  53. objext : '.o';
  54. resext : '.res';
  55. resobjext : '.or';
  56. staticlibprefix : '';
  57. sharedlibprefix : '';
  58. Cprefix : '_';
  59. newline : #13;
  60. assem : as_m68k_mpw;
  61. assemextern : as_m68k_mpw;
  62. link : ld_m68k_mac;
  63. linkextern : ld_m68k_mac;
  64. ar : ar_m68k_ar;
  65. res : res_none;
  66. script : script_unix;
  67. endian : endian_big;
  68. stackalignment : 2;
  69. maxCrecordalignment : 4;
  70. size_of_pointer : 4;
  71. size_of_longint : 4;
  72. heapsize : 128*1024;
  73. maxheapsize : 32768*1024;
  74. stacksize : 8192;
  75. DllScanSupported:false;
  76. use_bound_instruction : false;
  77. use_function_relative_addresses : false
  78. );
  79. {$endif m68k}
  80. {$ifdef powerpc}
  81. const
  82. target_powerpc_macos_info : ttargetinfo =
  83. (
  84. target : target_powerpc_MACOS;
  85. name : 'MacOs (PowerPC)';
  86. shortname : 'MacOs/PPC';
  87. flags : [];
  88. cpu : powerpc;
  89. short_name : 'MACOS';
  90. unit_env : '';
  91. extradefines : '';
  92. sharedlibext : 'Lib';
  93. staticlibext : 'Lib';
  94. sourceext : '.pp';
  95. pasext : '.pas';
  96. exeext : '';
  97. defext : '';
  98. scriptext : '';
  99. smartext : '.sl';
  100. unitext : '.ppt';
  101. unitlibext : '.ppl';
  102. asmext : '.a';
  103. objext : '.o';
  104. resext : '.res';
  105. resobjext : '.or';
  106. staticlibprefix : '';
  107. sharedlibprefix : '';
  108. Cprefix : '';
  109. newline : #13;
  110. assem : as_powerpc_mpw;
  111. assemextern : as_powerpc_mpw;
  112. link : ld_powerpc_macos;
  113. linkextern : ld_powerpc_macos;
  114. ar : ar_powerpc_ar;
  115. res : res_powerpc_mpw;
  116. script : script_unix;
  117. endian : endian_big;
  118. stackalignment : 8;
  119. maxCrecordalignment : 32;
  120. size_of_pointer : 4;
  121. size_of_longint : 4;
  122. heapsize : 256*1024;
  123. maxheapsize : 32768*1024;
  124. stacksize : 8192;
  125. DllScanSupported:false;
  126. use_bound_instruction : false;
  127. use_function_relative_addresses : true
  128. );
  129. {$endif powerpc}
  130. initialization
  131. {$ifdef m68k}
  132. RegisterTarget(target_m68k_macos_info);
  133. {$endif m68k}
  134. {$ifdef powerpc}
  135. RegisterTarget(target_powerpc_macos_info);
  136. {$endif powerpc}
  137. end.
  138. {
  139. $Log$
  140. Revision 1.4 2001-08-07 18:47:15 peter
  141. * merged netbsd start
  142. * profile for win32
  143. Revision 1.3 2001/06/03 15:15:32 peter
  144. * dllprt0 stub for linux shared libs
  145. * pass -init and -fini for linux shared libs
  146. * libprefix splitted into staticlibprefix and sharedlibprefix
  147. Revision 1.2 2001/06/02 19:22:44 peter
  148. * extradefines field added
  149. Revision 1.1 2001/04/18 22:02:04 peter
  150. * registration of targets and assemblers
  151. }