mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-05 18:18:26 +02:00
293 lines
11 KiB
PHP
293 lines
11 KiB
PHP
{$ifdef Delphi}
|
|
const DefaultConfig : array[0..30] of string[240]=(
|
|
{$else Delphi}
|
|
const DefaultConfig : array[0..30,1..240] of char=(
|
|
{$endif Delphi}
|
|
'#'#013#010+
|
|
'# Config file generated by fpcmkcfg on %BUILDDATE% - %BUILDTIME%'#013#010+
|
|
'# Example fpc.cfg for Free Pascal Compiler'#013#010+
|
|
'#'#013#010+
|
|
#013#010+
|
|
'# ----------------------'#013#010+
|
|
'# Defines (preprocessor)'#013#010+
|
|
'# ----------------------'#013#010+
|
|
#013#010+
|
|
'#'#013#010+
|
|
'# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE',', #DEFINE, #UNDEF are allowed'+
|
|
#013#010+
|
|
'#'#013#010+
|
|
'# -d is the same as #DEFINE'#013#010+
|
|
'# -u is the same as #UNDEF'#013#010+
|
|
'#'#013#010+
|
|
#013#010+
|
|
'#'#013#010+
|
|
'# Some examples (for switches see below, and the -? helppages)'#013#010+
|
|
'#'#013#010+
|
|
'# Try compiling with the -dRELEASE or -dDEBUG on the commandline'#013#010+
|
|
'#'#013#010+
|
|
#013#010+
|
|
'# F','or a release compile with optimizes and strip debuginfo'#013#010+
|
|
'#IFDEF RELEASE'#013#010+
|
|
' -O2'#013#010+
|
|
' -Xs'#013#010+
|
|
' #WRITE Compiling Release Version'#013#010+
|
|
'#ENDIF'#013#010+
|
|
#013#010+
|
|
'# For a debug version compile with debuginfo and all codegeneration ch'+
|
|
'ecks on'#013#010+
|
|
'#IFDEF DEBUG'#013#010+
|
|
' -gl'#013#010+
|
|
' -Crto','i'#013#010+
|
|
' #WRITE Compiling Debug Version'#013#010+
|
|
'#ENDIF'#013#010+
|
|
#013#010+
|
|
'# assembling'#013#010+
|
|
'#ifdef darwin'#013#010+
|
|
'# use pipes instead of temporary files for assembling'#013#010+
|
|
'-ap'#013#010+
|
|
'# path to Xcode 4.3+ utilities (no problem if it doesn'#039't exist)'#013+
|
|
#010+
|
|
'-FD/Applications/Xcode.app/Contents/Dev','eloper/usr/bin'#013#010+
|
|
'#endif'#013#010+
|
|
#013#010+
|
|
'# ----------------'#013#010+
|
|
'# Parsing switches'#013#010+
|
|
'# ----------------'#013#010+
|
|
#013#010+
|
|
'# Pascal language mode'#013#010+
|
|
'# -Mfpc free pascal dialect (default)'#013#010+
|
|
'# -Mobjfpc switch some Delphi 2 extensions on'#013#010+
|
|
'# -Mdelphi tries t','o be Delphi compatible'#013#010+
|
|
'# -Mtp tries to be TP/BP 7.0 compatible'#013#010+
|
|
'# -Mgpc tries to be gpc compatible'#013#010+
|
|
'# -Mmacpas tries to be compatible to the macintosh pascal diale'+
|
|
'cts'#013#010+
|
|
'#'#013#010+
|
|
'# Turn on Object Pascal extensions by de','fault'#013#010+
|
|
'#-Mobjfpc'#013#010+
|
|
#013#010+
|
|
'# Assembler reader mode'#013#010+
|
|
'# -Rdefault use default assembler'#013#010+
|
|
'# -Ratt read AT&T style assembler'#013#010+
|
|
'# -Rintel read Intel style assembler'#013#010+
|
|
'#'#013#010+
|
|
'# All assembler blocks are AT&T styled by default'#013#010+
|
|
'#-Ratt'#013#010+
|
|
#013,#010+
|
|
'# Semantic checking'#013#010+
|
|
'# -S2 same as -Mobjfpc'#013#010+
|
|
'# -Sc supports operators like C (*=,+=,/= and -=)'#013#010+
|
|
'# -Sa include assertion code.'#013#010+
|
|
'# -Sd same as -Mdelphi'#013#010+
|
|
'# -Se<x> error options. <x> is ','a combination of the followi'+
|
|
'ng:'#013#010+
|
|
'# <n> : compiler stops after <n> errors (default is 1)'#013#010+
|
|
'# w : compiler stops also after warnings'#013#010+
|
|
'# n : compiler stops also after notes'#013#010+
|
|
'# h : compiler stops also after ','hints'#013#010+
|
|
'# -Sg allow LABEL and GOTO'#013#010+
|
|
'# -Sh Use ansistrings'#013#010+
|
|
'# -Si support C++ styled INLINE'#013#010+
|
|
'# -Sk load fpcylix unit'#013#010+
|
|
'# -SI<x> set interface style to <x>'#013#010+
|
|
'# -SIcom COM compat','ible interface (default)'#013#010+
|
|
'# -SIcorba CORBA compatible interface'#013#010+
|
|
'# -Sm support macros like C (global)'#013#010+
|
|
'# -So same as -Mtp'#013#010+
|
|
'# -Sp same as -Mgpc'#013#010+
|
|
'# -Ss constructor name must be init (de','structor must be '+
|
|
'done)'#013#010+
|
|
'# -Sx enable exception keywords (default in Delphi/ObjFPC '+
|
|
'modes)'#013#010+
|
|
'#'#013#010+
|
|
'# Allow goto, inline, C-operators, C-vars'#013#010+
|
|
'-Sgic'#013#010+
|
|
#013#010+
|
|
'# ---------------'#013#010+
|
|
'# Code generation'#013#010+
|
|
'# ---------------'#013#010+
|
|
#013#010+
|
|
'# Uncomment the next lin','e if you always want static/dynamic units by'+
|
|
' default'#013#010+
|
|
'# (can be overruled with -CD, -CS at the commandline)'#013#010+
|
|
'#-CS'#013#010+
|
|
'#-CD'#013#010+
|
|
#013#010+
|
|
'# Set the default heapsize to 8Mb'#013#010+
|
|
'#-Ch8000000'#013#010+
|
|
#013#010+
|
|
'# Set default codegeneration checks (iocheck, overflow, range, stac','k'+
|
|
')'#013#010+
|
|
'#-Ci'#013#010+
|
|
'#-Co'#013#010+
|
|
'#-Cr'#013#010+
|
|
'#-Ct'#013#010+
|
|
#013#010+
|
|
'# Optimizer switches'#013#010+
|
|
'# -Os generate smaller code'#013#010+
|
|
'# -Oa=N set alignment to N'#013#010+
|
|
'# -O1 level 1 optimizations (quick optimizations, debuggable)'#013+
|
|
#010+
|
|
'# -O2 level 2 optimizations (-O1 + optimiz','ations which make d'+
|
|
'ebugging more difficult)'#013#010+
|
|
'# -O3 level 3 optimizations (-O2 + optimizations which also may'+
|
|
' make the program slower rather than faster)'#013#010+
|
|
'# -Oo<x> switch on optimalization x. See fpc -i for possible value'+
|
|
's'#013#010+
|
|
'# -OoN','O<x> switch off optimalization x. See fpc -i for possible va'+
|
|
'lues'#013#010+
|
|
'# -Op<x> set target cpu for optimizing, see fpc -i for possible va'+
|
|
'lues'#013#010+
|
|
#013#010+
|
|
'#ifdef darwin'#013#010+
|
|
'#ifdef cpui386'#013#010+
|
|
'-Cppentiumm'#013#010+
|
|
'-Oppentiumm'#013#010+
|
|
'#endif'#013#010+
|
|
'#endif'#013#010+
|
|
#013#010+
|
|
'# -----------------','------'#013#010+
|
|
'# Set Filenames and Paths'#013#010+
|
|
'# -----------------------'#013#010+
|
|
#013#010+
|
|
'# Both slashes and backslashes are allowed in paths'#013#010+
|
|
#013#010+
|
|
'# path to the messagefile, not necessary anymore but can be used to ov'+
|
|
'erride'#013#010+
|
|
'# the default language'#013#010+
|
|
'#-Fr%basepath%/msg/','errore.msg'#013#010+
|
|
'#-Fr%basepath%/msg/errorn.msg'#013#010+
|
|
'#-Fr%basepath%/msg/errores.msg'#013#010+
|
|
'#-Fr%basepath%/msg/errord.msg'#013#010+
|
|
'#-Fr%basepath%/msg/errorr.msg'#013#010+
|
|
#013#010+
|
|
'# search path for unicode binary files'#013#010+
|
|
'-FM%sharepath%/unicode/'#013#010+
|
|
#013#010+
|
|
'# searchpath for units and other s','ystem dependent things'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget/*'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget/rtl'#013#010+
|
|
#013#010+
|
|
'#ifdef cpui8086'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget/$fpcsubarch-$fpcmemorymodel'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget/$fpc','subarch-$fpcmemorymodel/*'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget/$fpcsubarch-$fpcmemorymodel/rtl'#013#010+
|
|
'#endif'#013#010+
|
|
#013#010+
|
|
'#IFDEF FPCAPACHE_1_3'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget/httpd13/'#013#010+
|
|
'#ELSE'#013#010+
|
|
'#IFDEF FPCAPACHE_2_0'#013#010+
|
|
'-Fu%basepath%/units/$fpctarget/httpd20'#013#010+
|
|
'#ELSE'#013#010,
|
|
'-Fu%basepath%/units/$fpctarget/httpd22'#013#010+
|
|
'#ENDIF'#013#010+
|
|
'#ENDIF'#013#010+
|
|
#013#010+
|
|
'# searchpath for fppkg user-specific packages'#013#010+
|
|
'-Fu%localbasepath%/units/$FPCTARGET/*'#013#010+
|
|
#013#010+
|
|
'# path to the gcclib'#013#010+
|
|
'%gcclibpath%'#013#010+
|
|
#013#010+
|
|
'# searchpath for libraries'#013#010+
|
|
'#-Fl%basepath%/lib'#013#010+
|
|
'#-Fl/lib',';/usr/lib'#013#010+
|
|
'-Fl%basepath%/lib/$FPCTARGET'#013#010+
|
|
#013#010+
|
|
'# searchpath for tools'#013#010+
|
|
'-FD%basepath%/bin/$FPCTARGET'#013#010+
|
|
#013#010+
|
|
'%NEEDCROSSBINUTILSIFDEF%'#013#010+
|
|
#013#010+
|
|
'# never need cross-prefix when targeting the JVM'#013#010+
|
|
'# (no native compiler, always cross-compiling)'#013#010+
|
|
'#ifdef cpujvm'#013#010,
|
|
'#undef NEEDCROSSBINUTILS'#013#010+
|
|
'#endif'#013#010+
|
|
#013#010+
|
|
'# for android cross-prefix is set by compiler'#013#010+
|
|
'#ifdef android'#013#010+
|
|
'#undef NEEDCROSSBINUTILS'#013#010+
|
|
'#endif'#013#010+
|
|
#013#010+
|
|
'# never need cross-prefix when targeting the i8086'#013#010+
|
|
'# (no native compiler, always cross-compiling)'#013#010+
|
|
'#ifde','f cpui8086'#013#010+
|
|
'#undef NEEDCROSSBINUTILS'#013#010+
|
|
'#endif'#013#010+
|
|
#013#010+
|
|
'# binutils prefix for cross compiling'#013#010+
|
|
'#IFDEF FPC_CROSSCOMPILING'#013#010+
|
|
'#IFDEF NEEDCROSSBINUTILS'#013#010+
|
|
' -XP$FPCTARGET-'#013#010+
|
|
'#ENDIF'#013#010+
|
|
'#ENDIF'#013#010+
|
|
#013#010+
|
|
#013#010+
|
|
'# -------------'#013#010+
|
|
'# Linking'#013#010+
|
|
'# -------------'#013#010+
|
|
#013#010+
|
|
'# generate alwa','ys debugging information for GDB (slows down the comp'+
|
|
'iling'#013#010+
|
|
'# process)'#013#010+
|
|
'# -gc generate checks for pointers'#013#010+
|
|
'# -gd use dbx'#013#010+
|
|
'# -gg use gsym'#013#010+
|
|
'# -gh use heap trace unit (for memory leak debugging)',#013#010+
|
|
'# -gl use line info unit to show more info for backtraces'#013+
|
|
#010+
|
|
'# -gv generates programs tracable with valgrind'#013#010+
|
|
'# -gw generate dwarf debugging info'#013#010+
|
|
'#'#013#010+
|
|
'# Enable debuginfo and use the line info unit by defau','lt'#013#010+
|
|
'#-gl'#013#010+
|
|
#013#010+
|
|
'# always pass an option to the linker'#013#010+
|
|
'#-k-s'#013#010+
|
|
#013#010+
|
|
'# Always strip debuginfo from the executable'#013#010+
|
|
'-Xs'#013#010+
|
|
#013#010+
|
|
'# Always use smartlinking on i8086, because the system unit exceeds th'+
|
|
'e 64kb'#013#010+
|
|
'# code limit'#013#010+
|
|
'#ifdef cpui8086'#013#010+
|
|
'-CX'#013#010+
|
|
'-XX'#013#010+
|
|
'#endif'#013#010,
|
|
#013#010+
|
|
#013#010+
|
|
'# -------------'#013#010+
|
|
'# Miscellaneous'#013#010+
|
|
'# -------------'#013#010+
|
|
#013#010+
|
|
'# Write always a nice FPC logo ;)'#013#010+
|
|
'-l'#013#010+
|
|
#013#010+
|
|
'# Verbosity'#013#010+
|
|
'# e : Show errors (default) d : Show debug info'#013#010+
|
|
'# w : Show warnings u : Show unit info'#013#010+
|
|
'# n :',' Show notes t : Show tried/used files'#013+
|
|
#010+
|
|
'# h : Show hints s : Show time stamps'#013#010+
|
|
'# i : Show general info q : Show message numbers'#013#010+
|
|
'# l : Show linenumbers c : Show conditiona','ls'#013#010+
|
|
'# a : Show everything 0 : Show nothing (except errors'+
|
|
')'#013#010+
|
|
'# b : Write file names messages r : Rhide/GCC compatibility mod'+
|
|
'e'#013#010+
|
|
'# with full path x : Executable info (Win32 only'+
|
|
')'#013#010+
|
|
'# v : write ','fpcdebug.txt with p : Write tree.log with parse'+
|
|
' tree'#013#010+
|
|
'# lots of debugging info'#013#010+
|
|
'#'#013#010+
|
|
'# Display Info, Warnings and Notes'#013#010+
|
|
'-viwn'#013#010+
|
|
'# If you don'#039't want so much verbosity use'#013#010+
|
|
'#-vw'#013#010
|
|
);
|