systems.inc 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. {
  2. Copyright (c) 1998-2008 by Florian Klaempfl
  3. This include contains the enumeration
  4. information about the target systems supported
  5. (these are not processor specific)
  6. This program is free software; you can redistribute it and/or modify
  7. iu 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. type
  20. tendian = (endian_little,endian_big);
  21. (*
  22. IMPORTANT NOTE:
  23. The value of this enumeration is stored in PPU files.
  24. Therefore adding new CPU targets should not change the
  25. values of the pre-existing targets. (CEC)
  26. FURTHERMORE : Make sure that this branch values, are
  27. consistant with the main branch version always.
  28. *)
  29. tsystemcpu=
  30. (
  31. cpu_no, { 0 }
  32. cpu_i386, { 1 }
  33. cpu_m68k, { 2 }
  34. cpu_alpha, { 3 }
  35. cpu_powerpc, { 4 }
  36. cpu_sparc, { 5 }
  37. cpu_vm, { 6 }
  38. cpu_iA64, { 7 }
  39. cpu_x86_64, { 8 }
  40. cpu_mips, { 9 }
  41. cpu_arm, { 10 }
  42. cpu_powerpc64, { 11 }
  43. cpu_avr, { 12 }
  44. cpu_mipsel { 13 }
  45. );
  46. tasmmode= (asmmode_none
  47. { standard assembler (cpu dependant) with full parsing }
  48. ,asmmode_standard
  49. ,asmmode_i386_att
  50. ,asmmode_i386_intel
  51. ,asmmode_ppc_gas
  52. ,asmmode_ppc_motorola
  53. ,asmmode_arm_gas
  54. ,asmmode_sparc_gas
  55. ,asmmode_x86_64_gas
  56. ,asmmode_m68k_mot
  57. ,asmmode_x86_64_intel
  58. ,asmmode_x86_64_att
  59. ,asmmode_avr_gas
  60. );
  61. (* IMPORTANT NOTE:
  62. the integer value of this enum is stored in PPU
  63. files to recognize the target, so if you add new targets
  64. allways add them at end PM
  65. FURTHERMORE : Make sure that this branch values are
  66. consistant with the main branch version always. (CEC)
  67. *)
  68. type
  69. tsystem =
  70. (
  71. system_none, { 0 }
  72. obsolete_system_i386_GO32V1,{ 1 }
  73. system_i386_GO32V2, { 2 }
  74. system_i386_linux, { 3 }
  75. system_i386_OS2, { 4 }
  76. system_i386_Win32, { 5 }
  77. system_i386_freebsd, { 6 }
  78. system_m68k_Amiga, { 7 }
  79. system_m68k_Atari, { 8 }
  80. system_m68k_Mac, { 9 }
  81. system_m68k_linux, { 10 }
  82. system_m68k_PalmOS, { 11 }
  83. system_alpha_linux, { 12 }
  84. system_powerpc_linux, { 13 }
  85. system_powerpc_macos, { 14 }
  86. system_i386_solaris, { 15 }
  87. system_i386_beos, { 16 }
  88. system_i386_netbsd, { 17 }
  89. system_m68k_netbsd, { 18 }
  90. system_i386_Netware, { 19 }
  91. system_i386_qnx, { 20 }
  92. system_i386_wdosx, { 21 }
  93. system_sparc_solaris, { 22 }
  94. system_sparc_linux, { 23 }
  95. system_i386_openbsd, { 24 }
  96. system_m68k_openbsd, { 25 }
  97. system_x86_64_linux, { 26 }
  98. system_powerpc_darwin, { 27 }
  99. system_i386_EMX, { 28 }
  100. system_powerpc_netbsd, { 29 }
  101. system_powerpc_openbsd, { 30 }
  102. system_arm_linux, { 31 }
  103. system_i386_watcom, { 32 }
  104. system_powerpc_MorphOS, { 33 }
  105. system_x86_64_freebsd, { 34 }
  106. system_i386_netwlibc, { 35 }
  107. system_powerpc_Amiga, { 36 }
  108. system_x86_64_win64, { 37 }
  109. system_arm_wince, { 38 }
  110. system_ia64_win64, { 39 }
  111. system_i386_wince, { 40 }
  112. system_x86_6432_linux, { 41 }
  113. system_arm_gba, { 42 }
  114. system_powerpc64_linux, { 43 }
  115. system_i386_darwin, { 44 }
  116. system_arm_palmos, { 45 }
  117. system_powerpc64_darwin, { 46 }
  118. system_arm_nds, { 47 }
  119. system_i386_embedded, { 48 }
  120. system_m68k_embedded, { 49 }
  121. system_alpha_embedded, { 50 }
  122. system_powerpc_embedded, { 51 }
  123. system_sparc_embedded, { 52 }
  124. system_vm_embedded, { 53 }
  125. system_iA64_embedded, { 54 }
  126. system_x86_64_embedded, { 55 }
  127. system_mips_embedded, { 56 }
  128. system_arm_embedded, { 57 }
  129. system_powerpc64_embedded, { 58 }
  130. system_i386_symbian, { 59 }
  131. system_arm_symbian, { 60 }
  132. system_x86_64_darwin, { 61 }
  133. system_avr_embedded, { 62 }
  134. system_i386_haiku, { 63 }
  135. system_arm_darwin, { 64 }
  136. system_x86_64_solaris, { 65 }
  137. system_mips_linux, { 66 }
  138. system_mipsel_linux, { 67 }
  139. system_i386_nativent, { 68 }
  140. system_i386_iphonesim, { 69 }
  141. system_powerpc_wii, { 70 }
  142. system_x86_64_openbsd, { 71 }
  143. system_x86_64_netbsd, { 72 }
  144. system_powerpc_aix, { 73 }
  145. system_powerpc64_aix, { 74 }
  146. system_arm_android { 75 }
  147. );
  148. type
  149. tasm = (as_none
  150. ,as_gas { standard gnu assembler }
  151. ,as_i386_as_aout
  152. ,as_i386_nasmcoff
  153. ,as_i386_nasmwin32
  154. ,as_i386_nasmwdosx
  155. ,as_i386_nasmelf
  156. ,as_i386_nasmobj
  157. ,as_i386_nasmbeos
  158. ,as_i386_tasm
  159. ,as_i386_masm
  160. ,as_i386_wasm
  161. ,as_i386_coff
  162. ,as_i386_pecoff
  163. ,as_i386_elf32
  164. ,as_i386_pecoffwdosx
  165. ,as_m68k_mit
  166. ,as_powerpc_mpw
  167. ,as_darwin
  168. ,as_i386_macho
  169. ,as_x86_64_masm
  170. ,as_x86_64_pecoff
  171. ,as_i386_pecoffwince
  172. ,as_arm_pecoffwince
  173. ,as_x86_64_elf64
  174. ,as_sparc_elf32
  175. ,as_ggas { gnu assembler called "gas" instead of "as" }
  176. ,as_i386_nasmhaiku
  177. ,as_powerpc_vasm
  178. ,as_i386_nlmcoff
  179. ,as_powerpc_xcoff
  180. );
  181. tar = (ar_none
  182. ,ar_gnu_ar
  183. ,ar_mpw_ar
  184. ,ar_gnu_ar_scripted
  185. ,ar_gnu_gar
  186. );
  187. tres = (res_none
  188. ,res_gnu_windres,res_watcom_wrc_os2
  189. ,res_m68k_palmos,res_m68k_mpw
  190. ,res_powerpc_mpw,res_elf,res_xcoff
  191. ,res_win64_gorc, res_macho, res_ext
  192. );
  193. tresinfoflags = (res_external_file,res_arch_in_file_name
  194. ,res_single_file);
  195. tdbg = (dbg_none
  196. ,dbg_stabs,dbg_stabx,dbg_dwarf2,dbg_dwarf3,dbg_dwarf4
  197. );
  198. tscripttype = (script_none
  199. ,script_dos,script_unix,script_amiga,
  200. script_mpw
  201. );
  202. tabi = (abi_default
  203. ,abi_powerpc_sysv,abi_powerpc_aix
  204. ,abi_eabi,abi_armeb,abi_eabihf
  205. );