source: trunk/Template/fpc.cfg

Last change on this file was 6, checked in by chronos, 13 years ago
  • Modified: Source selection separated to single form.
  • Added: Starting compiler and IDE with updated paths in configuration files.
File size: 5.6 KB
Line 
1#
2# Config file generated by fpcmkcfg on 20.1.2011 - 13:10:44
3# Example fpc.cfg for Free Pascal Compiler
4#
5
6# ----------------------
7# Defines (preprocessor)
8# ----------------------
9
10#
11# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE, #DEFINE, #UNDEF are allowed
12#
13# -d is the same as #DEFINE
14# -u is the same as #UNDEF
15#
16
17#
18# Some examples (for switches see below, and the -? helppages)
19#
20# Try compiling with the -dRELEASE or -dDEBUG on the commandline
21#
22
23# For a release compile with optimizes and strip debuginfo
24#IFDEF RELEASE
25 -O2
26 -Xs
27 #WRITE Compiling Release Version
28#ENDIF
29
30# For a debug version compile with debuginfo and all codegeneration checks on
31#IFDEF DEBUG
32 -glh
33 -Crtoi
34 #WRITE Compiling Debug Version
35#ENDIF
36
37# ----------------
38# Parsing switches
39# ----------------
40
41# Pascal language mode
42# -Mfpc free pascal dialect (default)
43# -Mobjfpc switch some Delphi 2 extensions on
44# -Mdelphi tries to be Delphi compatible
45# -Mtp tries to be TP/BP 7.0 compatible
46# -Mgpc tries to be gpc compatible
47# -Mmacpas tries to be compatible to the macintosh pascal dialects
48#
49# Turn on Object Pascal extensions by default
50#-Mobjfpc
51
52# Assembler reader mode
53# -Rdefault use default assembler
54# -Ratt read AT&T style assembler
55# -Rintel read Intel style assembler
56#
57# All assembler blocks are AT&T styled by default
58#-Ratt
59
60# Semantic checking
61# -S2 same as -Mobjfpc
62# -Sc supports operators like C (*=,+=,/= and -=)
63# -Sa include assertion code.
64# -Sd same as -Mdelphi
65# -Se<x> compiler stops after the <x> errors (default is 1)
66# -Sg allow LABEL and GOTO
67# -Sh Use ansistrings
68# -Si support C++ styled INLINE
69# -SI<x> set interface style to <x>
70# -SIcomCOM compatible interface (default)
71# -SIcorbaCORBA compatible interface
72# -Sm support macros like C (global)
73# -So same as -Mtp
74# -Sp same as -Mgpc
75# -Ss constructor name must be init (destructor must be done)
76# -St allow static keyword in objects
77#
78# Allow goto, inline, C-operators, C-vars
79-Sgic
80
81# ---------------
82# Code generation
83# ---------------
84
85# Uncomment the next line if you always want static/dynamic units by default
86# (can be overruled with -CD, -CS at the commandline)
87#-CS
88#-CD
89
90# Set the default heapsize to 8Mb
91#-Ch8000000
92
93# Set default codegeneration checks (iocheck, overflow, range, stack)
94#-Ci
95#-Co
96#-Cr
97#-Ct
98
99# Optimizer switches for i386 compiler
100# -Os generate smaller code
101# -O1 level 1 optimizations (quick optimizations)
102# -O2 level 2 optimizations (-O1 + slower optimizations)
103# -O3 level 3 optimizations (same as -O2u)
104# -Oa=N set alignment to N
105# -OoX switch on optimalization X.
106# -OoNOX switch off optimalization X.
107# X is one of REGVAR UNCERTAIN STACKFRAME PEEPHOLE ASMCSE LOOPUNROLL
108# -OpCPU set target processor.
109# CPU is one of 386, PENTIUM, PENTIUM2, PENTIUM3, PENTIUM4, PENTIUMM
110
111
112# -----------------------
113# Set Filenames and Paths
114# -----------------------
115
116# Both slashes and backslashes are allowed in paths
117
118# path to the messagefile, not necessary anymore but can be used to override
119# the default language
120#-Fr$(FPCDir)/msg/errore.msg
121#-Fr$(FPCDir)/msg/errorn.msg
122#-Fr$(FPCDir)/msg/errores.msg
123#-Fr$(FPCDir)/msg/errord.msg
124#-Fr$(FPCDir)/msg/errorr.msg
125
126# path to the gcclib
127#-Fl$(FPCDir)/lib
128
129#IFDEF FPCAPACHE_1_13
130-Fu$(FPCDir)/units/$FPCTARGET/httpd13/
131#ELSE
132#IFDEF FPCAPACHE_2_0
133-Fu$(FPCDir)/units/$FPCTARGET/httpd20
134#ELSE
135-Fu$(FPCDir)/units/$FPCTARGET/httpd22
136#ENDIF
137#ENDIF
138
139# searchpath for units and other system dependent things
140-Fu$(FPCDir)/units/$FPCTARGET/
141-Fu$(FPCDir)/units/$FPCTARGET/*
142-Fu$(FPCDir)/units/$FPCTARGET/rtl
143
144# searchpath for libraries
145#-Fl$(FPCDir)/lib
146#-Fl/lib;/usr/lib
147
148# searchpath for tools
149-FD$(FPCDir)/bin/$FPCTARGET
150
151# binutils prefix for cross compiling
152#IFDEF FPC_CROSSCOMPILING
153 -XP$FPCTARGET-
154#ENDIF
155
156
157# -------------
158# Linking
159# -------------
160
161# generate always debugging information for GDB (slows down the compiling
162# process)
163# -gc generate checks for pointers
164# -gd use dbx
165# -gg use gsym
166# -gh use heap trace unit (for memory leak debugging)
167# -gl use line info unit to show more info for backtraces
168# -gv generates programs tracable with valgrind
169# -gw generate dwarf debugging info
170#
171# Enable debuginfo and use the line info unit by default
172#-gl
173
174# always pass an option to the linker
175#-k-s
176
177# Always strip debuginfo from the executable
178-Xs
179
180
181# -------------
182# Miscellaneous
183# -------------
184
185# Write always a nice FPC logo ;)
186-l
187
188# Verbosity
189# e : Show errors (default) d : Show debug info
190# w : Show warnings u : Show unit info
191# n : Show notes t : Show tried/used files
192# h : Show hints m : Show defined macros
193# i : Show general info p : Show compiled procedures
194# l : Show linenumbers c : Show conditionals
195# a : Show everything 0 : Show nothing (except errors)
196# b : Show all procedure r : Rhide/GCC compatibility mode
197# declarations if an error x : Executable info (Win32 only)
198# occurs
199#
200# Display Info, Warnings, Notes and Hints
201-viwn
202# If you don't want so much verbosity use
203#-vw
Note: See TracBrowser for help on using the repository browser.