Browse Source

* When debug is defined, use -gl, not -glh
* Added settings for darwin, copied from samplecfg

git-svn-id: trunk@17133 -

joost 14 years ago
parent
commit
a2511cecb0
2 changed files with 87 additions and 59 deletions
  1. 14 1
      utils/fpcmkcfg/fpc.cft
  2. 73 58
      utils/fpcmkcfg/fpccfg.inc

+ 14 - 1
utils/fpcmkcfg/fpc.cft

@@ -29,11 +29,17 @@
 
 # For a debug version compile with debuginfo and all codegeneration checks on
 #IFDEF DEBUG
-  -glh
+  -gl
   -Crtoi
   #WRITE Compiling Debug Version
 #ENDIF
 
+# assembling
+#ifdef darwin
+# use pipes instead of temporary files for assembling
+-ap
+#endif
+
 # ----------------
 # Parsing switches
 # ----------------
@@ -111,6 +117,13 @@
 # -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
 
+#ifdef darwin
+#ifdef cpui386
+-Cppentiumm
+-Oppentiumm
+#endif
+#endif
+
 # -----------------------
 # Set Filenames and Paths
 # -----------------------

+ 73 - 58
utils/fpcmkcfg/fpccfg.inc

@@ -36,129 +36,143 @@ const DefaultConfig : array[0..25,1..240] of char=(
   '# For a debug version compile with debuginfo and all codegeneration ch'+
   'ecks on'#010+
   '#IFDEF DEBUG'#010+
-  '  -glh'#010+
+  '  -gl'#010+
   '  -Crtoi'#010+
-  '  #WRITE Compiling Debug Vers','ion'#010+
+  '  #WRITE Compiling Debug Versi','on'#010+
   '#ENDIF'#010+
   #010+
+  '# assembling'#010+
+  '#ifdef darwin'#010+
+  '# use pipes instead of temporary files for assembling'#010+
+  '-ap'#010+
+  '#endif'#010+
+  #010+
   '# ----------------'#010+
   '# Parsing switches'#010+
   '# ----------------'#010+
   #010+
   '# Pascal language mode'#010+
   '#      -Mfpc      free pascal dialect (default)'#010+
-  '#      -Mobjfpc   switch some Delphi 2 extensions on'#010+
-  '#      -Mdelphi   tries to be Delphi compatibl','e'#010+
+  '#      ','-Mobjfpc   switch some Delphi 2 extensions on'#010+
+  '#      -Mdelphi   tries to be Delphi compatible'#010+
   '#      -Mtp       tries to be TP/BP 7.0 compatible'#010+
   '#      -Mgpc      tries to be gpc compatible'#010+
-  '#      -Mmacpas   tries to be compatible to the macintosh pascal diale'+
-  'cts'#010+
+  '#      -Mmacpas   tries to be compatible to the ma','cintosh pascal dia'+
+  'lects'#010+
   '#'#010+
   '# Turn on Object Pascal extensions by default'#010+
   '#-Mobjfpc'#010+
   #010+
-  '# Assembl','er reader mode'#010+
+  '# Assembler reader mode'#010+
   '#      -Rdefault  use default assembler'#010+
   '#      -Ratt      read AT&T style assembler'#010+
   '#      -Rintel    read Intel style assembler'#010+
   '#'#010+
-  '# All assembler blocks are AT&T styled by default'#010+
+  '# ','All assembler blocks are AT&T styled by default'#010+
   '#-Ratt'#010+
   #010+
   '# Semantic checking'#010+
-  '#      -S2      ','  same as -Mobjfpc'#010+
+  '#      -S2        same as -Mobjfpc'#010+
   '#      -Sc        supports operators like C (*=,+=,/= and -=)'#010+
   '#      -Sa        include assertion code.'#010+
-  '#      -Sd        same as -Mdelphi'#010+
+  '#      -Sd        same as',' -Mdelphi'#010+
   '#      -Se<x>     error options. <x> is a combination of the following'+
   ':'#010+
-  '#         ','<n> : compiler stops after <n> errors (default is 1)'#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+
+  '#         n   : compiler stops also after no','tes'#010+
   '#         h   : compiler stops also after hints'#010+
   '#      -Sg        allow LABEL and GOTO'#010+
-  '#','      -Sh        Use ansistrings'#010+
+  '#      -Sh        Use ansistrings'#010+
   '#      -Si        support C++ styled INLINE'#010+
   '#      -Sk        load fpcylix unit'#010+
-  '#      -SI<x>     set interface style to <x>'#010+
+  '#      -SI<x>     set interface sty','le to <x>'#010+
   '#         -SIcom    COM compatible interface (default)'#010+
-  '#         -SIcorba  CORBA c','ompatible interface'#010+
+  '#         -SIcorba  CORBA compatible 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+
+  '#      -Ss      ','  constructor name must be init (destructor must be '+
+  'done)'#010+
+  '#      -Sx        enable exception keywords (default in Delphi/ObjFPC '+
+  'modes)'#010+
   '#'#010+
   '# Allow goto, inline, C-operators, C-vars'#010+
   '-Sgic'#010+
   #010+
   '# ---------------'#010+
   '# Code generation'#010+
-  '# ---------------'#010+
+  '# ---------------'#010,
   #010+
   '# Uncomment the next line if you always want static/dynamic units by d'+
   'efault'#010+
-  '# (can be over','ruled with -CD, -CS at the commandline)'#010+
+  '# (can be overruled with -CD, -CS at the commandline)'#010+
   '#-CS'#010+
   '#-CD'#010+
   #010+
   '# Set the default heapsize to 8Mb'#010+
   '#-Ch8000000'#010+
   #010+
-  '# Set default codegeneration checks (iocheck, overflow, range, stack)'#010+
+  '# Set default codegeneration checks (iocheck, over','flow, range, stack'+
+  ')'#010+
   '#-Ci'#010+
   '#-Co'#010+
   '#-Cr'#010+
   '#-Ct'#010+
   #010+
   '# Optimizer switches'#010+
-  '# -Os        generate smaller ','code'#010+
+  '# -Os        generate smaller code'#010+
   '# -Oa=N      set alignment to N'#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+
+  '# -O2        level 2 optimizations (-O1 + ','optimizations which make d'+
+  'ebugging more difficult)'#010+
+  '# -O3        level 3 optimizations (-O2 + optimizations which also may'+
+  ' 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+
+  '# ','-OoNO<x>   switch off optimalization x. See fpc -i for possible va'+
+  'lues'#010+
+  '# -Op<x>     set target cpu for optimizing, see fpc -i for possible va'+
+  'lues'#010+
+  #010+
+  '#ifdef darwin'#010+
+  '#ifdef cpui386'#010+
+  '-Cppentiumm'#010+
+  '-Oppentiumm'#010+
+  '#endif'#010+
+  '#endif'#010+
+  #010+
+  '# -----------------------',#010+
   '# Set Filenames and Paths'#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 '+
-  'override'#010+
+  '# path to the messagefile, not necessary anymore but can be used to ov'+
+  'erride'#010+
   '# the default language'#010+
   '#-Fr%basepath%/msg/errore.msg'#010+
-  '#-Fr%basepath%/msg/errorn.msg'#010+
+  '#-F','r%basepath%/msg/errorn.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 d','ependent things'#010+
+  '# searchpath for units and other system dependent things'#010+
   '-Fu%basepath%/units/$fpctarget'#010+
-  '-Fu%basepath%/units/$fpctarget/*'#010+
+  '-Fu%basepath%/units/$fpctarget/*'#010,
   '-Fu%basepath%/units/$fpctarget/rtl'#010+
   #010+
   '#IFDEF FPCAPACHE_1_3'#010+
   '-Fu%basepath%/units/$fpctarget/httpd13/'#010+
   '#ELSE'#010+
   '#IFDEF FPCAPACHE_2_0'#010+
-  '-Fu%basepath%/units/$fpctarget/httpd','20'#010+
+  '-Fu%basepath%/units/$fpctarget/httpd20'#010+
   '#ELSE'#010+
   '-Fu%basepath%/units/$fpctarget/httpd22'#010+
   '#ENDIF'#010+
   '#ENDIF'#010+
   #010+
-  '# searchpath for fppkg user-specific packages'#010+
+  '# searchpath for ','fppkg user-specific packages'#010+
   '-Fu%localbasepath%/units/$FPCTARGET/*'#010+
   #010+
   '# path to the gcclib'#010+
@@ -166,12 +180,12 @@ const DefaultConfig : array[0..25,1..240] of char=(
   #010+
   '# searchpath for libraries'#010+
   '#-Fl%basepath%/lib'#010+
-  '#-Fl/lib;/u','sr/lib'#010+
+  '#-Fl/lib;/usr/lib'#010+
   #010+
   '# searchpath for tools'#010+
   '-FD%basepath%/bin/$FPCTARGET'#010+
   #010+
-  '%NEEDCROSSBINUTILSIFDEF%'#010+
+  '%NEEDCROSSBINUTILSI','FDEF%'#010+
   #010+
   '# binutils prefix for cross compiling'#010+
   '#IFDEF FPC_CROSSCOMPILING'#010+
@@ -183,26 +197,27 @@ const DefaultConfig : array[0..25,1..240] of char=(
   #010+
   '# -------------'#010+
   '# Linking'#010+
-  '# ---','----------'#010+
+  '# -------------'#010+
   #010+
-  '# generate always debugging information for GDB (slows down the compil'+
-  'ing'#010+
+  '# generate always debugging information for GDB (slows down the comp','i'+
+  'ling'#010+
   '# process)'#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+
-  '#      -gl        use line info unit to show more info for backtraces'#010+
+  '#      -gh        use heap trace unit (for memory leak debugging)'#010+
+  '#      -gl        use line info unit to show more info fo','r backtrace'+
+  's'#010+
   '#      -gv        generates programs tracable with valgrind'#010+
   '#      -gw        generate dwarf debugging info'#010+
   '#'#010+
-  '# Enable debuginfo and use the line i','nfo unit by default'#010+
+  '# Enable debuginfo and use the line info unit by default'#010+
   '#-gl'#010+
   #010+
   '# always pass an option to the linker'#010+
   '#-k-s'#010+
   #010+
-  '# Always strip debuginfo from the executable'#010+
+  '# Always ','strip debuginfo from the executable'#010+
   '-Xs'#010+
   #010+
   #010+
@@ -214,24 +229,24 @@ const DefaultConfig : array[0..25,1..240] of char=(
   '-l'#010+
   #010+
   '# Verbosity'#010+
-  '#      e : Show err','ors (default)       d : Show debug info'#010+
-  '#      w : Show warnings               u : Show unit info'#010+
+  '#      e : Show errors (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                  s : Show time stamps'#010+
-  '#      i : Show g','eneral info           q : Show message numbers'#010+
-  '#      l : Show linenumbers            c : Show conditionals'#010+
+  '#      i : Show general info           q : Show message numbers'#010+
+  '#      l : Show linenumbers      ','      c : Show conditionals'#010+
   '#      a : Show everything             0 : Show nothing (except errors'+
   ')'#010+
-  '#      b : Write file names messages   r : Rhide/GCC compati','bility m'+
-  'ode'#010+
-  '#          with full path              x : Executable info (Win32 only'+
-  ')'#010+
+  '#      b : Write file names messages   r : Rhide/GCC compatibility mod'+
+  'e'#010+
+  '#          with full path              x : Executable info (Win32 on','l'+
+  'y)'#010+
   '#      v : write fpcdebug.txt with     p : Write tree.log with parse t'+
   'ree'#010+
   '#          lots of debugging info'#010+
   '#'#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
 );