summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoost <joost@3ad0048d-3df7-0310-abae-a5850022a9f2>2011-03-13 20:12:22 +0000
committerjoost <joost@3ad0048d-3df7-0310-abae-a5850022a9f2>2011-03-13 20:12:22 +0000
commit1b6b890b1486964e1cc8a9f2797ae7ea0986616d (patch)
tree64a0a334e7dcef1f1e7f4102c2b554996394344d
parent86e80c5e7dadf6df61955894f9041481b86c80f7 (diff)
downloadfpc-1b6b890b1486964e1cc8a9f2797ae7ea0986616d.tar.gz
* Updated comments in fpc.cfg partly based on comments in samplecfg's fpc.cfg
* Replaced $FPCTARGET->$fpctarget * Moved fppkg package search-path so that packages can override apache units * Renamed APACHE_1_13 define to APACHE_1_3 git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@17132 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r--utils/fpcmkcfg/fpc.cft62
-rw-r--r--utils/fpcmkcfg/fpccfg.inc124
2 files changed, 100 insertions, 86 deletions
diff --git a/utils/fpcmkcfg/fpc.cft b/utils/fpcmkcfg/fpc.cft
index 8004d4b5d0..e5991d2406 100644
--- a/utils/fpcmkcfg/fpc.cft
+++ b/utils/fpcmkcfg/fpc.cft
@@ -62,17 +62,23 @@
# -Sc supports operators like C (*=,+=,/= and -=)
# -Sa include assertion code.
# -Sd same as -Mdelphi
-# -Se<x> compiler stops after the <x> errors (default is 1)
+# -Se<x> error options. <x> is a combination of the following:
+# <n> : compiler stops after <n> errors (default is 1)
+# w : compiler stops also after warnings
+# n : compiler stops also after notes
+# h : compiler stops also after hints
# -Sg allow LABEL and GOTO
# -Sh Use ansistrings
# -Si support C++ styled INLINE
+# -Sk load fpcylix unit
# -SI<x> set interface style to <x>
-# -SIcomCOM compatible interface (default)
-# -SIcorbaCORBA compatible interface
+# -SIcom COM compatible interface (default)
+# -SIcorba CORBA compatible interface
# -Sm support macros like C (global)
# -So same as -Mtp
# -Sp same as -Mgpc
# -Ss constructor name must be init (destructor must be done)
+# -Sx enable exception keywords (default in Delphi/ObjFPC modes)
#
# Allow goto, inline, C-operators, C-vars
-Sgic
@@ -95,18 +101,15 @@
#-Cr
#-Ct
-# Optimizer switches for i386 compiler
+# Optimizer switches
# -Os generate smaller code
-# -O1 level 1 optimizations (quick optimizations)
-# -O2 level 2 optimizations (-O1 + slower optimizations)
-# -O3 level 3 optimizations (same as -O2u)
# -Oa=N set alignment to N
-# -OoX switch on optimalization X.
-# -OoNOX switch off optimalization X.
-# X is one of REGVAR UNCERTAIN STACKFRAME PEEPHOLE ASMCSE LOOPUNROLL
-# -OpCPU set target processor.
-# CPU is one of 386, PENTIUM, PENTIUM2, PENTIUM3, PENTIUM4, PENTIUMM
-
+# -O1 level 1 optimizations (quick optimizations, debuggable)
+# -O2 level 2 optimizations (-O1 + optimizations which make debugging more difficult)
+# -O3 level 3 optimizations (-O2 + optimizations which also may make the program slower rather than faster)
+# -Oo<x> switch on optimalization x. See fpc -i for possible values
+# -OoNO<x> switch off optimalization x. See fpc -i for possible values
+# -Op<x> set target cpu for optimizing, see fpc -i for possible values
# -----------------------
# Set Filenames and Paths
@@ -123,23 +126,23 @@
#-Fr%basepath%/msg/errorr.msg
# searchpath for units and other system dependent things
--Fu%basepath%/units/$FPCTARGET/
--Fu%basepath%/units/$FPCTARGET/*
--Fu%basepath%/units/$FPCTARGET/rtl
-
-# searchpath for fppkg user-specific packages
--Fu%localbasepath%/units/$FPCTARGET/*
+-Fu%basepath%/units/$fpctarget
+-Fu%basepath%/units/$fpctarget/*
+-Fu%basepath%/units/$fpctarget/rtl
-#IFDEF FPCAPACHE_1_13
--Fu%basepath%/units/$FPCTARGET/httpd13/
+#IFDEF FPCAPACHE_1_3
+-Fu%basepath%/units/$fpctarget/httpd13/
#ELSE
#IFDEF FPCAPACHE_2_0
--Fu%basepath%/units/$FPCTARGET/httpd20
+-Fu%basepath%/units/$fpctarget/httpd20
#ELSE
--Fu%basepath%/units/$FPCTARGET/httpd22
+-Fu%basepath%/units/$fpctarget/httpd22
#ENDIF
#ENDIF
+# searchpath for fppkg user-specific packages
+-Fu%localbasepath%/units/$FPCTARGET/*
+
# path to the gcclib
%gcclibpath%
@@ -195,15 +198,16 @@
# e : Show errors (default) d : Show debug info
# w : Show warnings u : Show unit info
# n : Show notes t : Show tried/used files
-# h : Show hints m : Show defined macros
-# i : Show general info p : Show compiled procedures
+# h : Show hints s : Show time stamps
+# i : Show general info q : Show message numbers
# l : Show linenumbers c : Show conditionals
# a : Show everything 0 : Show nothing (except errors)
-# b : Show all procedure r : Rhide/GCC compatibility mode
-# declarations if an error x : Executable info (Win32 only)
-# occurs
+# b : Write file names messages r : Rhide/GCC compatibility mode
+# with full path x : Executable info (Win32 only)
+# v : write fpcdebug.txt with p : Write tree.log with parse tree
+# lots of debugging info
#
-# Display Info, Warnings, Notes and Hints
+# Display Info, Warnings and Notes
-viwn
# If you don't want so much verbosity use
#-vw
diff --git a/utils/fpcmkcfg/fpccfg.inc b/utils/fpcmkcfg/fpccfg.inc
index aa1f194409..d633f89a67 100644
--- a/utils/fpcmkcfg/fpccfg.inc
+++ b/utils/fpcmkcfg/fpccfg.inc
@@ -1,7 +1,7 @@
{$ifdef Delphi}
-const DefaultConfig : array[0..23] of string[240]=(
+const DefaultConfig : array[0..25] of string[240]=(
{$else Delphi}
-const DefaultConfig : array[0..23,1..240] of char=(
+const DefaultConfig : array[0..25,1..240] of char=(
{$endif Delphi}
'#'#010+
'# Config file generated by fpcmkcfg on %BUILDDATE% - %BUILDTIME%'#010+
@@ -70,21 +70,29 @@ const DefaultConfig : array[0..23,1..240] of char=(
'# -Sc supports operators like C (*=,+=,/= and -=)'#010+
'# -Sa include assertion code.'#010+
'# -Sd same as -Mdelphi'#010+
- '# -Se<x> compiler stops after the <x> errors (default is 1)'#010+
- '# -Sg ',' allow LABEL and GOTO'#010+
- '# -Sh Use ansistrings'#010+
+ '# -Se<x> error options. <x> is a combination of the following'+
+ ':'#010+
+ '# ','<n> : compiler stops after <n> errors (default is 1)'#010+
+ '# w : compiler stops also after warnings'#010+
+ '# n : compiler stops also after notes'#010+
+ '# h : compiler stops also after hints'#010+
+ '# -Sg allow LABEL and GOTO'#010+
+ '#',' -Sh Use ansistrings'#010+
'# -Si support C++ styled INLINE'#010+
+ '# -Sk load fpcylix unit'#010+
'# -SI<x> set interface style to <x>'#010+
- '# -SIcomCOM compatible interface (default)'#010+
- '# -SIcorbaCORBA compatible inter','face'#010+
+ '# -SIcom COM compatible interface (default)'#010+
+ '# -SIcorba CORBA c','ompatible interface'#010+
'# -Sm support macros like C (global)'#010+
'# -So same as -Mtp'#010+
'# -Sp same as -Mgpc'#010+
'# -Ss constructor name must be init (destructor must be do'+
'ne)'#010+
+ '# -Sx enable exception',' keywords (default in Delphi/ObjFP'+
+ 'C modes)'#010+
'#'#010+
'# Allow goto, inline, C-operators, C-vars'#010+
- '-Sgic',#010+
+ '-Sgic'#010+
#010+
'# ---------------'#010+
'# Code generation'#010+
@@ -92,12 +100,12 @@ const DefaultConfig : array[0..23,1..240] of char=(
#010+
'# Uncomment the next line if you always want static/dynamic units by d'+
'efault'#010+
- '# (can be overruled with -CD, -CS at the commandline)'#010+
+ '# (can be over','ruled with -CD, -CS at the commandline)'#010+
'#-CS'#010+
'#-CD'#010+
#010+
'# Set the default heapsize to 8Mb'#010+
- '#-Ch800','0000'#010+
+ '#-Ch8000000'#010+
#010+
'# Set default codegeneration checks (iocheck, overflow, range, stack)'#010+
'#-Ci'#010+
@@ -105,67 +113,67 @@ const DefaultConfig : array[0..23,1..240] of char=(
'#-Cr'#010+
'#-Ct'#010+
#010+
- '# Optimizer switches for i386 compiler'#010+
- '# -Os generate smaller code'#010+
- '# -O1 level 1 optimizations (quick optimizations)'#010+
- '# -O2 ',' level 2 optimizations (-O1 + slower optimizations)'#010+
- '# -O3 level 3 optimizations (same as -O2u)'#010+
+ '# Optimizer switches'#010+
+ '# -Os generate smaller ','code'#010+
'# -Oa=N set alignment to N'#010+
- '# -OoX switch on optimalization X. '#010+
- '# -OoNOX switch off optimalization X.'#010+
- '# X is o','ne of REGVAR UNCERTAIN STACKFRAME PEEPHOLE ASM'+
- 'CSE LOOPUNROLL'#010+
- '# -OpCPU set target processor.'#010+
- '# CPU is one of 386, PENTIUM, PENTIUM2, PENTIUM3, PENTIUM4'+
- ', PENTIUMM '#010+
- #010+
+ '# -O1 level 1 optimizations (quick optimizations, debuggable)'#010+
+ '# -O2 level 2 optimizations (-O1 + optimizations which make deb'+
+ 'ugging more difficult)'#010+
+ '# -O3 level 3 optimizations (-O2 +',' optimizations which also m'+
+ 'ay make the program slower rather than faster)'#010+
+ '# -Oo<x> switch on optimalization x. See fpc -i for possible value'+
+ 's'#010+
+ '# -OoNO<x> switch off optimalization x. See fpc -i for possible valu'+
+ 'es'#010+
+ '# -Op<x> set targ','et cpu for optimizing, see fpc -i for possible '+
+ 'values'#010+
#010+
'# -----------------------'#010+
'# Set Filenames and Paths'#010+
- '# ------','-----------------'#010+
+ '# -----------------------'#010+
#010+
'# Both slashes and backslashes are allowed in paths'#010+
#010+
- '# path to the messagefile, not necessary anymore but can be used to ov'+
- 'erride'#010+
+ '# path to the messagefile, not necessary anymore but ','can be used to '+
+ 'override'#010+
'# the default language'#010+
'#-Fr%basepath%/msg/errore.msg'#010+
'#-Fr%basepath%/msg/errorn.msg'#010+
- '#-Fr%bas','epath%/msg/errores.msg'#010+
+ '#-Fr%basepath%/msg/errores.msg'#010+
'#-Fr%basepath%/msg/errord.msg'#010+
'#-Fr%basepath%/msg/errorr.msg'#010+
#010+
- '# searchpath for units and other system dependent things'#010+
- '-Fu%basepath%/units/$FPCTARGET/'#010+
- '-Fu%basepath%/units/$FPCTARGET/*'#010+
- '-Fu%basepath%/units/$FPCTARGET/rtl',#010+
- #010+
- '# searchpath for fppkg user-specific packages'#010+
- '-Fu%localbasepath%/units/$FPCTARGET/*'#010+
+ '# searchpath for units and other system d','ependent things'#010+
+ '-Fu%basepath%/units/$fpctarget'#010+
+ '-Fu%basepath%/units/$fpctarget/*'#010+
+ '-Fu%basepath%/units/$fpctarget/rtl'#010+
#010+
- '#IFDEF FPCAPACHE_1_13'#010+
- '-Fu%basepath%/units/$FPCTARGET/httpd13/'#010+
+ '#IFDEF FPCAPACHE_1_3'#010+
+ '-Fu%basepath%/units/$fpctarget/httpd13/'#010+
'#ELSE'#010+
'#IFDEF FPCAPACHE_2_0'#010+
- '-Fu%basepath%/units/$FPCTARGET/httpd20'#010+
+ '-Fu%basepath%/units/$fpctarget/httpd','20'#010+
'#ELSE'#010+
- '-Fu%basepath%/units','/$FPCTARGET/httpd22'#010+
+ '-Fu%basepath%/units/$fpctarget/httpd22'#010+
'#ENDIF'#010+
'#ENDIF'#010+
#010+
+ '# searchpath for fppkg user-specific packages'#010+
+ '-Fu%localbasepath%/units/$FPCTARGET/*'#010+
+ #010+
'# path to the gcclib'#010+
'%gcclibpath%'#010+
#010+
'# searchpath for libraries'#010+
'#-Fl%basepath%/lib'#010+
- '#-Fl/lib;/usr/lib'#010+
+ '#-Fl/lib;/u','sr/lib'#010+
#010+
'# searchpath for tools'#010+
'-FD%basepath%/bin/$FPCTARGET'#010+
#010+
'%NEEDCROSSBINUTILSIFDEF%'#010+
#010+
- '# binutils prefix for cros','s compiling'#010+
+ '# binutils prefix for cross compiling'#010+
'#IFDEF FPC_CROSSCOMPILING'#010+
'#IFDEF NEEDCROSSBINUTILS'#010+
' -XP$FPCTARGET-'#010+
@@ -175,26 +183,26 @@ const DefaultConfig : array[0..23,1..240] of char=(
#010+
'# -------------'#010+
'# Linking'#010+
- '# -------------'#010+
+ '# ---','----------'#010+
#010+
'# generate always debugging information for GDB (slows down the compil'+
'ing'#010+
'# process)'#010+
- '# -gc ',' generate checks for pointers'#010+
+ '# -gc generate checks for pointers'#010+
'# -gd use dbx'#010+
'# -gg use gsym'#010+
- '# -gh use heap trace unit (for memory leak debugging)'#010+
+ '# -gh use heap trace unit (for ','memory leak debugging)'#010+
'# -gl use line info unit to show more info for backtraces'#010+
- '# -gv ge','nerates programs tracable with valgrind'#010+
+ '# -gv generates programs tracable with valgrind'#010+
'# -gw generate dwarf debugging info'#010+
'#'#010+
- '# Enable debuginfo and use the line info unit by default'#010+
+ '# Enable debuginfo and use the line i','nfo unit by default'#010+
'#-gl'#010+
#010+
'# always pass an option to the linker'#010+
'#-k-s'#010+
#010+
- '# Always strip debuginfo from the executab','le'#010+
+ '# Always strip debuginfo from the executable'#010+
'-Xs'#010+
#010+
#010+
@@ -206,22 +214,24 @@ const DefaultConfig : array[0..23,1..240] of char=(
'-l'#010+
#010+
'# Verbosity'#010+
- '# e : Show errors (default) d : Show debug info'#010+
+ '# e : Show err','ors (default) d : Show debug info'#010+
'# w : Show warnings u : Show unit info'#010+
- '# n : Show',' notes t : Show tried/used files'#010+
- '# h : Show hints m : Show defined macros'#010+
- '# i : Show general info p : Show compiled procedures'#010+
- '# l : Show linenumbers c : Show conditional','s'#010+
+ '# n : Show notes t : Show tried/used files'#010+
+ '# h : Show hints s : Show time stamps'#010+
+ '# i : Show g','eneral info q : Show message numbers'#010+
+ '# l : Show linenumbers c : Show conditionals'#010+
'# a : Show everything 0 : Show nothing (except errors'+
')'#010+
- '# b : Show all procedure r : Rhide/GCC compatibility mod'+
- 'e'#010+
- '# declarations if an error x : Executable info (Win32 only'+
+ '# b : Write file names messages r : Rhide/GCC compati','bility m'+
+ 'ode'#010+
+ '# with full path x : Executable info (Win32 only'+
')'#010+
- '# occurs'#010+
+ '# v : write fpcdebug.txt with p : Write tree.log with parse t'+
+ 'ree'#010+
+ '# lots of debugging info'#010+
'#'#010+
- '# ','Display Info, Warnings, Notes and Hints'#010+
+ '# Display Info, Warnings and Notes'#010+
'-viwn'#010+
- '# If you don'#039't want so much verbosity use'#010+
+ '# If ','you don'#039't want so much verbosity use'#010+
'#-vw'#010
);