fpccfg.inc 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. {$ifdef Delphi}
  2. const DefaultConfig : array[0..25] of string[240]=(
  3. {$else Delphi}
  4. const DefaultConfig : array[0..25,1..240] of char=(
  5. {$endif Delphi}
  6. '#'#013#010+
  7. '# Config file generated by fpcmkcfg on %BUILDDATE% - %BUILDTIME%'#013#010+
  8. '# Example fpc.cfg for Free Pascal Compiler'#013#010+
  9. '#'#013#010+
  10. #013#010+
  11. '# ----------------------'#013#010+
  12. '# Defines (preprocessor)'#013#010+
  13. '# ----------------------'#013#010+
  14. #013#010+
  15. '#'#013#010+
  16. '# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE',', #DEFINE, #UNDEF are allowed'+
  17. #013#010+
  18. '#'#013#010+
  19. '# -d is the same as #DEFINE'#013#010+
  20. '# -u is the same as #UNDEF'#013#010+
  21. '#'#013#010+
  22. #013#010+
  23. '#'#013#010+
  24. '# Some examples (for switches see below, and the -? helppages)'#013#010+
  25. '#'#013#010+
  26. '# Try compiling with the -dRELEASE or -dDEBUG on the commandline'#013#010+
  27. '#'#013#010+
  28. #013#010+
  29. '# F','or a release compile with optimizes and strip debuginfo'#013#010+
  30. '#IFDEF RELEASE'#013#010+
  31. ' -O2'#013#010+
  32. ' -Xs'#013#010+
  33. ' #WRITE Compiling Release Version'#013#010+
  34. '#ENDIF'#013#010+
  35. #013#010+
  36. '# For a debug version compile with debuginfo and all codegeneration ch'+
  37. 'ecks on'#013#010+
  38. '#IFDEF DEBUG'#013#010+
  39. ' -glh'#013#010+
  40. ' -Crt','oi'#013#010+
  41. ' #WRITE Compiling Debug Version'#013#010+
  42. '#ENDIF'#013#010+
  43. #013#010+
  44. '# ----------------'#013#010+
  45. '# Parsing switches'#013#010+
  46. '# ----------------'#013#010+
  47. #013#010+
  48. '# Pascal language mode'#013#010+
  49. '# -Mfpc free pascal dialect (default)'#013#010+
  50. '# -Mobjfpc switch some Delphi 2 extensions on'#013#010+
  51. '# ',' -Mdelphi tries to be Delphi compatible'#013#010+
  52. '# -Mtp tries to be TP/BP 7.0 compatible'#013#010+
  53. '# -Mgpc tries to be gpc compatible'#013#010+
  54. '# -Mmacpas tries to be compatible to the macintosh pascal diale'+
  55. 'cts'#013#010+
  56. '#'#013#010+
  57. '# Turn on Object P','ascal extensions by default'#013#010+
  58. '#-Mobjfpc'#013#010+
  59. #013#010+
  60. '# Assembler reader mode'#013#010+
  61. '# -Rdefault use default assembler'#013#010+
  62. '# -Ratt read AT&T style assembler'#013#010+
  63. '# -Rintel read Intel style assembler'#013#010+
  64. '#'#013#010+
  65. '# All assembler blocks are AT&T styled',' by default'#013#010+
  66. '#-Ratt'#013#010+
  67. #013#010+
  68. '# Semantic checking'#013#010+
  69. '# -S2 same as -Mobjfpc'#013#010+
  70. '# -Sc supports operators like C (*=,+=,/= and -=)'#013#010+
  71. '# -Sa include assertion code.'#013#010+
  72. '# -Sd same as -Mdelphi'#013#010+
  73. '# -Se<x> ','compiler stops after the <x> errors (default is 1)'+
  74. #013#010+
  75. '# -Sg allow LABEL and GOTO'#013#010+
  76. '# -Sh Use ansistrings'#013#010+
  77. '# -Si support C++ styled INLINE'#013#010+
  78. '# -SI<x> set interface style to <x>'#013#010+
  79. '# -SIcomCOM co','mpatible interface (default)'#013#010+
  80. '# -SIcorbaCORBA compatible interface'#013#010+
  81. '# -Sm support macros like C (global)'#013#010+
  82. '# -So same as -Mtp'#013#010+
  83. '# -Sp same as -Mgpc'#013#010+
  84. '# -Ss constructor name must be init (','destructor must be '+
  85. 'done)'#013#010+
  86. '# -St allow static keyword in objects'#013#010+
  87. '#'#013#010+
  88. '# Allow goto, inline, C-operators, C-vars'#013#010+
  89. '-Sgic'#013#010+
  90. #013#010+
  91. '# ---------------'#013#010+
  92. '# Code generation'#013#010+
  93. '# ---------------'#013#010+
  94. #013#010+
  95. '# Uncomment the next line if you always want stat','ic/dynamic units by'+
  96. ' default'#013#010+
  97. '# (can be overruled with -CD, -CS at the commandline)'#013#010+
  98. '#-CS'#013#010+
  99. '#-CD'#013#010+
  100. #013#010+
  101. '# Set the default heapsize to 8Mb'#013#010+
  102. '#-Ch8000000'#013#010+
  103. #013#010+
  104. '# Set default codegeneration checks (iocheck, overflow, range, stack)'#013+
  105. #010+
  106. '#-Ci'#013#010+
  107. '#-Co'#013#010+
  108. '#-Cr'#013#010+
  109. '#-C','t'#013#010+
  110. #013#010+
  111. '# Optimizer switches for i386 compiler'#013#010+
  112. '# -Os generate smaller code'#013#010+
  113. '# -O1 level 1 optimizations (quick optimizations)'#013#010+
  114. '# -O2 level 2 optimizations (-O1 + slower optimizations)'#013#010+
  115. '# -O3 level 3 optimizations (','same as -O2u)'#013#010+
  116. '# -Oa=N set alignment to N'#013#010+
  117. '# -OoX switch on optimalization X. '#013#010+
  118. '# -OoNOX switch off optimalization X.'#013#010+
  119. '# X is one of REGVAR UNCERTAIN STACKFRAME PEEPHOLE ASMCS'+
  120. 'E LOOPUNROLL'#013#010+
  121. '# -OpCPU set targe','t processor.'#013#010+
  122. '# CPU is one of 386, PENTIUM, PENTIUM2, PENTIUM3, PENTIUM4'+
  123. ', PENTIUMM '#013#010+
  124. #013#010+
  125. #013#010+
  126. '# -----------------------'#013#010+
  127. '# Set Filenames and Paths'#013#010+
  128. '# -----------------------'#013#010+
  129. #013#010+
  130. '# Both slashes and backslashes are allowed in paths'#013#010+
  131. #013#010+
  132. '#',' path to the messagefile, not necessary anymore but can be used to '+
  133. 'override'#013#010+
  134. '# the default language'#013#010+
  135. '#-Fr%basepath%/msg/errore.msg'#013#010+
  136. '#-Fr%basepath%/msg/errorn.msg'#013#010+
  137. '#-Fr%basepath%/msg/errores.msg'#013#010+
  138. '#-Fr%basepath%/msg/errord.msg'#013#010+
  139. '#-Fr%basepath%','/msg/errorr.msg'#013#010+
  140. #013#010+
  141. '# path to the gcclib'#013#010+
  142. '#-Fl%basepath%/lib'#013#010+
  143. #013#010+
  144. '# searchpath for includefiles'#013#010+
  145. '#-Fi/pp/inc;/pp/rtl/inc'#013#010+
  146. #013#010+
  147. '# searchpath for includefiles'#013#010+
  148. '# release them only if you know what you do'#013#010+
  149. '# because this could cause a rebuild of the',' runtime library'#013#010+
  150. '# if you tell them compiler/ide to build the project (FK)'#013#010+
  151. '#-Fi%basepath%/source/rtl/inc;%basepath%/source/rtl/i386'#013#010+
  152. #013#010+
  153. '# searchpath for objectfiles'#013#010+
  154. '#-Fo%basepath%/source/rtl/inc;%basepath%/source/rtl/i386'#013#010+
  155. #013#010+
  156. '#IFDEF FPCAPA','CHE_1_13'#013#010+
  157. '-Fu%basepath%/units/$FPCTARGET/httpd-1.3/'#013#010+
  158. '#ELSE'#013#010+
  159. '#IFDEF FPCAPACHE_2_0'#013#010+
  160. '-Fu%basepath%/units/$FPCTARGET/httpd-2.0'#013#010+
  161. '#ELSE'#013#010+
  162. '-Fu%basepath%/units/$FPCTARGET/httpd-2.2'#013#010+
  163. '#ENDIF'#013#010+
  164. '#ENDIF'#013#010+
  165. #013#010+
  166. '# searchpath for units and other system dependent',' things'#013#010+
  167. '-Fu%basepath%/units/$FPCTARGET/'#013#010+
  168. '-Fu%basepath%/units/$FPCTARGET/*'#013#010+
  169. '-Fu%basepath%/units/$FPCTARGET/rtl'#013#010+
  170. #013#010+
  171. '# searchpath for libraries'#013#010+
  172. '#-Fl%basepath%/lib'#013#010+
  173. '#-Fl/lib;/usr/lib'#013#010+
  174. #013#010+
  175. '# searchpath for tools'#013#010+
  176. '-FD%basepath%/bin/$FPCTARGET'#013#010+
  177. #013#010+
  178. '#',' binutils prefix for cross compiling'#013#010+
  179. '#IFDEF FPC_CROSSCOMPILING'#013#010+
  180. ' -XP$FPCTARGET-'#013#010+
  181. '#ENDIF'#013#010+
  182. #013#010+
  183. #013#010+
  184. '# -------------'#013#010+
  185. '# Linking'#013#010+
  186. '# -------------'#013#010+
  187. #013#010+
  188. '# generate always debugging information for GDB (slows down the compil'+
  189. 'ing'#013#010+
  190. '# process)'#013#010+
  191. '# -gc ',' generate checks for pointers'#013#010+
  192. '# -gd use dbx'#013#010+
  193. '# -gg use gsym'#013#010+
  194. '# -gh use heap trace unit (for memory leak debugging)'#013#010+
  195. '# -gl use line info unit to show more info for backtraces'#013+
  196. #010+
  197. '# -gv',' generates programs tracable with valgrind'#013#010+
  198. '# -gw generate dwarf debugging info'#013#010+
  199. '#'#013#010+
  200. '# Enable debuginfo and use the line info unit by default'#013#010+
  201. '#-gl'#013#010+
  202. #013#010+
  203. '# always pass an option to the linker'#013#010+
  204. '#-k-s'#013#010+
  205. #013#010+
  206. '# Always strip debuginf','o from the executable'#013#010+
  207. '-Xs'#013#010+
  208. #013#010+
  209. #013#010+
  210. '# -------------'#013#010+
  211. '# Miscellaneous'#013#010+
  212. '# -------------'#013#010+
  213. #013#010+
  214. '# Write always a nice FPC logo ;)'#013#010+
  215. '-l'#013#010+
  216. #013#010+
  217. '# Verbosity'#013#010+
  218. '# e : Show errors (default) d : Show debug info'#013#010+
  219. '# w : Show warnings u ',': Show unit info'#013#010+
  220. '# n : Show notes t : Show tried/used files'#013#010+
  221. '# h : Show hints m : Show defined macros'#013#010+
  222. '# i : Show general info p : Show compiled procedures'#013+
  223. #010+
  224. '# l : Show linenum','bers c : Show conditionals'#013#010+
  225. '# a : Show everything 0 : Show nothing (except errors'+
  226. ')'#013#010+
  227. '# b : Show all procedure r : Rhide/GCC compatibility mod'+
  228. 'e'#013#010+
  229. '# declarations if an error x : Executable i','nfo (Win32 on'+
  230. 'ly)'#013#010+
  231. '# occurs'#013#010+
  232. '#'#013#010+
  233. '# Display Info, Warnings, Notes and Hints'#013#010+
  234. '-viwn'#013#010+
  235. '# If you don'#039't want so much verbosity use'#013#010+
  236. '#-vw'#013#010
  237. );