system.cfg 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269
  1. # first, disable all
  2. -Sf-
  3. # enable required ones
  4. # they don't add much additional code or data
  5. -SfTEXTIO
  6. -SfFILEIO
  7. -SfHEAP
  8. # uncomment to enable the stuff you want to use
  9. # include full heap management into the rtl
  10. # -SfHEAP
  11. # include support for init final code of units into the rtl
  12. # -SfINITFINAL
  13. # -SfCLASSES
  14. # -SfEXCEPTIONS
  15. # -SfEXITCODE
  16. # -SfANSISTRINGS
  17. # -SfWIDESTRINGS
  18. # -SfTEXTIO
  19. # -SfCONSOLEIO
  20. # -SfFILEIO
  21. # -SfRANDOM
  22. # -SfVARIANTS
  23. # -SfOBJECTS
  24. # -SfDYNARRAYS
  25. # -SfTHREADING
  26. # -SfCOMMANDARGS
  27. # -SfPROCESSES
  28. # -SfSTACKCHECK
  29. # -SfDYNLIBS
  30. # include exit code support
  31. -SfEXITCODE
  32. # i386 is powerful enough to handle most object pascal constructs
  33. # it is only a matter of size
  34. #ifdef CPUI386
  35. -SfSOFTFPU
  36. -SfCLASSES
  37. -SfEXCEPTIONS
  38. -SfANSISTRINGS
  39. -SfRTTI
  40. -SfWIDESTRINGS
  41. -SfDYNARRAYS
  42. -SfTHREADING
  43. -SfVARIANTS
  44. -SfOBJECTS
  45. -SfCOMMANDARGS
  46. -SfRANDOM
  47. -SfRESOURCES
  48. #endif CPUI386
  49. # x86_64 is powerful enough to handle most object pascal constructs
  50. # it is only a matter of size
  51. #ifdef CPUX86_64
  52. -SfSOFTFPU
  53. -SfCLASSES
  54. -SfEXCEPTIONS
  55. -SfANSISTRINGS
  56. -SfRTTI
  57. -SfWIDESTRINGS
  58. -SfDYNARRAYS
  59. -SfTHREADING
  60. -SfVARIANTS
  61. -SfOBJECTS
  62. -SfCOMMANDARGS
  63. -SfRANDOM
  64. -SfRESOURCES
  65. #endif CPUX86_64
  66. # arm is powerful enough to handle most object pascal constructs
  67. # it is only a matter of size
  68. #ifdef CPUARM
  69. -SfSOFTFPU
  70. -SfCLASSES
  71. -SfEXCEPTIONS
  72. -SfANSISTRINGS
  73. -SfRTTI
  74. -SfWIDESTRINGS
  75. -SfDYNARRAYS
  76. -SfTHREADING
  77. -SfVARIANTS
  78. -SfOBJECTS
  79. -SfCOMMANDARGS
  80. -SfRANDOM
  81. -SfRESOURCES
  82. -SfPROCESSES
  83. #endif CPUARM
  84. # mipsel is powerful enough to handle most object pascal constructs
  85. # it is only a matter of size
  86. #ifdef CPUMIPSEL
  87. -SfSOFTFPU
  88. -SfCLASSES
  89. -SfEXCEPTIONS
  90. -SfANSISTRINGS
  91. -SfRTTI
  92. -SfWIDESTRINGS
  93. -SfDYNARRAYS
  94. -SfTHREADING
  95. -SfVARIANTS
  96. -SfOBJECTS
  97. -SfCOMMANDARGS
  98. -SfRANDOM
  99. -SfRESOURCES
  100. #endif CPUMIPSEL
  101. # mips is powerful enough to handle most object pascal constructs
  102. # it is only a matter of size
  103. #ifdef CPUMIPS
  104. -SfSOFTFPU
  105. -SfCLASSES
  106. -SfEXCEPTIONS
  107. -SfANSISTRINGS
  108. -SfRTTI
  109. -SfWIDESTRINGS
  110. -SfDYNARRAYS
  111. -SfTHREADING
  112. -SfVARIANTS
  113. -SfOBJECTS
  114. -SfCOMMANDARGS
  115. -SfRANDOM
  116. -SfRESOURCES
  117. #endif CPUMIPS
  118. # powerpc is powerful enough to handle most object pascal constructs
  119. # it is only a matter of size
  120. #ifdef CPUPOWERPC
  121. -SfSOFTFPU
  122. -SfCLASSES
  123. -SfEXCEPTIONS
  124. -SfANSISTRINGS
  125. -SfRTTI
  126. -SfWIDESTRINGS
  127. -SfDYNARRAYS
  128. -SfTHREADING
  129. -SfVARIANTS
  130. -SfOBJECTS
  131. -SfCOMMANDARGS
  132. -SfRANDOM
  133. -SfRESOURCES
  134. #endif CPUPOWERPC
  135. # powerpc64 is powerful enough to handle most object pascal constructs
  136. # it is only a matter of size
  137. #ifdef CPUPOWERPC64
  138. -SfSOFTFPU
  139. -SfCLASSES
  140. -SfEXCEPTIONS
  141. -SfANSISTRINGS
  142. -SfRTTI
  143. -SfWIDESTRINGS
  144. -SfDYNARRAYS
  145. -SfTHREADING
  146. -SfVARIANTS
  147. -SfOBJECTS
  148. -SfCOMMANDARGS
  149. -SfRANDOM
  150. -SfRESOURCES
  151. #endif CPUPOWERPC64
  152. # does not require extra memory, neither code nor data
  153. # in programs not using e. g. writeln based I/O which is the common case for AVR
  154. #ifdef CPUAVR
  155. -SfOBJECTS
  156. -SfEXCEPTIONS
  157. -SfCLASSES
  158. -SfRTTI
  159. # AVR6 has normally more memory, so enable more functions
  160. #ifdef CPUAVR6
  161. -SfANSISTRINGS
  162. -SfWIDESTRINGS
  163. -SfDYNARRAYS
  164. -SfTHREADING
  165. -SfVARIANTS
  166. -SfOBJECTS
  167. -SfCOMMANDARGS
  168. -SfRANDOM
  169. -SfRESOURCES
  170. #endif
  171. #endif
  172. # Minimal set for m68k, copied from AVR above
  173. # does not require extra memory, neither code nor data
  174. # in programs not using e. g. writeln based I/O
  175. #ifdef CPUM68K
  176. -SfSOFTFPU
  177. -SfOBJECTS
  178. -SfEXCEPTIONS
  179. -SfCLASSES
  180. -SfRTTI
  181. -SfANSISTRINGS
  182. -SfWIDESTRINGS
  183. -SfDYNARRAYS
  184. -SfTHREADING
  185. -SfVARIANTS
  186. -SfOBJECTS
  187. -SfCOMMANDARGS
  188. -SfRANDOM
  189. -SfRESOURCES
  190. #endif
  191. # Minimal set for i8086, copied from AVR above
  192. # does not require extra memory, neither code nor data
  193. # in programs not using e. g. writeln based I/OR
  194. #ifdef CPUI8086
  195. -SfOBJECTS
  196. -SfEXCEPTIONS
  197. -SfCLASSES
  198. -SfRTTI
  199. -Cs2048
  200. -CX
  201. -XX
  202. #endif
  203. #ifdef CPURISCV32
  204. -SfSOFTFPU
  205. -SfCLASSES
  206. -SfEXCEPTIONS
  207. -SfANSISTRINGS
  208. -SfRTTI
  209. -SfWIDESTRINGS
  210. -SfDYNARRAYS
  211. -SfTHREADING
  212. -SfVARIANTS
  213. -SfOBJECTS
  214. -SfCOMMANDARGS
  215. -SfRANDOM
  216. -SfRESOURCES
  217. -SfPROCESSES
  218. #endif CPURISCV32
  219. #ifdef CPURISCV64
  220. -SfSOFTFPU
  221. -SfCLASSES
  222. -SfEXCEPTIONS
  223. -SfANSISTRINGS
  224. -SfRTTI
  225. -SfWIDESTRINGS
  226. -SfDYNARRAYS
  227. -SfTHREADING
  228. -SfVARIANTS
  229. -SfOBJECTS
  230. -SfCOMMANDARGS
  231. -SfRANDOM
  232. -SfRESOURCES
  233. #endif CPURISCV64
  234. # Xtensa is powerful enough to handle most object pascal constructs
  235. # it is only a matter of size
  236. #ifdef CPUXTENSA
  237. -SfSOFTFPU
  238. -SfCLASSES
  239. -SfEXCEPTIONS
  240. -SfANSISTRINGS
  241. -SfRTTI
  242. -SfWIDESTRINGS
  243. -SfDYNARRAYS
  244. -SfTHREADING
  245. -SfVARIANTS
  246. -SfOBJECTS
  247. -SfCOMMANDARGS
  248. -SfRANDOM
  249. -SfRESOURCES
  250. -SfPROCESSES
  251. #endif CPUXTENSA