diff --git a/installer/install.dat b/installer/install.dat index 32b8a7d7c6..080e32f42b 100644 --- a/installer/install.dat +++ b/installer/install.dat @@ -846,6 +846,22 @@ defaultcfg= # Parsing switches # ---------------- +# Pascal language mode +# -Mfpc free pascal dialect (default) +# -Mobjfpc switch some Delphi 2 extensions on +# -Mdelphi tries to be Delphi compatible +# -Mtp tries to be TP/BP 7.0 compatible +# -Mgpc tries to be gpc compatible +# -Mmacpas tries to be compatible to the macintosh pascal dialects +# +# Turn on Object Pascal extensions by default +#-Mobjfpc + +# Assembler reader mode +# -Rdefault use default assembler +# -Ratt read AT&T style assembler +# -Rintel read Intel style assembler +# # All assembler blocks are intel styled by default #-Rintel @@ -856,19 +872,29 @@ defaultcfg= #-Rdirect # Semantic checking -# -S2 switch some Delphi 2 extensions on -# -Sc supports operators like C (*=,+=,/= and -=) -# -Sd tries to be Delphi compatible -# -Se compiler stops after the errors (default is 1) -# -Sg allow LABEL and GOTO -# -Sh Use ansistrings -# -Si support C++ styled INLINE -# -Sm support macros like C (global) -# -So tries to be TP/BP 7.0 compatible -# -Sp tries to be gpc compatible -# -Ss constructor name must be init (destructor must be done) -# -St allow static keyword in objects -# Allow goto, inline, C-operators +# -S2 same as -Mobjfpc +# -Sa include assertion code. +# -Sc supports operators like C (*=,+=,/= and -=) +# -Sd same as -Mdelphi +# -Se error options. is a combination of the following: +# : compiler stops after 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 set interface style to +# -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 # --------------- @@ -890,9 +916,21 @@ defaultcfg= #-Ct # Optimizer switches -# -O1 level 1 optimizations (quick and debugger friendly) -# -O2 level 2 optimizations (-O1 + quick optimizations) -# -O3 level 3 optimizations (-O2 + slow optimizations) +# -Os generate smaller code +# -Oa=N set alignment to N +# -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 switch on optimalization x. See fpc -i for possible values +# -OoNO switch off optimalization x. See fpc -i for possible values +# -Op set target cpu for optimizing, see fpc -i for possible values + +#ifdef darwin +#ifdef cpui386 +-Cppentiumm +-Oppentiumm +#endif +#endif # ----------------------- @@ -909,6 +947,8 @@ defaultcfg= #-Fr%basepath%/msg/errord.msg #-Fr%basepath%/msg/errorr.msg +# search path for unicode binary files +-FM%basepath%/unicode/ # path to the gcclib #-Fl%basepath%/lib @@ -926,12 +966,42 @@ defaultcfg= -Fu%basepath%/units/%fpctargetmacro%/* -Fu%basepath%/units/%fpctargetmacro%/rtl +#ifdef cpui8086 +-Fu%basepath%/units/%fpctargetmacro%/$fpcsubarch-$fpcmemorymodel +-Fu%basepath%/units/%fpctargetmacro%/$fpcsubarch-$fpcmemorymodel/* +-Fu%basepath%/units/%fpctargetmacro%/$fpcsubarch-$fpcmemorymodel/rtl +#endif + # searchpath for libraries #-Fl%basepath%/lib #-Fl/lib;/usr/lib # searchpath for tools -FD%basepath%/bin/%fpctargetmacro% +# never need cross-prefix when targeting the JVM +# (no native compiler, always cross-compiling) +#ifdef cpujvm +#undef NEEDCROSSBINUTILS +#endif + +# for android cross-prefix is set by compiler +#ifdef android +#undef NEEDCROSSBINUTILS +#endif + +# never need cross-prefix when targeting the i8086 +# (no native compiler, always cross-compiling) +#ifdef cpui8086 +#undef NEEDCROSSBINUTILS +#endif + +# binutils prefix for cross compiling +#IFDEF FPC_CROSSCOMPILING +#IFDEF NEEDCROSSBINUTILS + -XP$FPCTARGET- +#ENDIF +#ENDIF + # ------------- # Linking @@ -939,6 +1009,15 @@ defaultcfg= # generate always debugging information for GDB (slows down the compiling # process) +# -gc generate checks for pointers +# -gd use dbx +# -gg use gsym +# -gh use heap trace unit (for memory leak debugging) +# -gl use line info unit to show more info for backtraces +# -gv generates programs tracable with valgrind +# -gw generate dwarf debugging info +# +# Enable debuginfo and use the line info unit by default #-gl # always pass an option to the linker @@ -947,6 +1026,13 @@ defaultcfg= # Always strip debuginfo from the executable -Xs +# Always use smartlinking on i8086, because the system unit exceeds the 64kb +# code limit +#ifdef cpui8086 +-CX +-XX +#endif + # ------------- # Miscellaneous @@ -956,15 +1042,19 @@ defaultcfg= -l # Verbosity -# e : Show errors (default) d : Show debug info -# w : Show warnings u : Show used files -# n : Show notes t : Show tried files -# h : Show hints m : Show defined macros -# i : Show general info p : Show compiled procedures -# l : Show linenumbers c : Show conditionals -# a : Show everything 0 : Show nothing (except errors) - -# Display Info, Warnings, Notes and Hints +# 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 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 : 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 and Notes -viwn # If you don't want so much verbosity use #-vw