Package: fpc-config Version: 2.6.4 Revision: 4 Conflicts: << fpc (<= 2.0.4) << Replaces: << fpc (<= 2.0.4) << Recommends: fpc Source: http://www.gnu.org/licenses/gpl-2.0.txt Source-MD5: b234ee4d69f5fce4486a80fdaf4a4263 Source2: http://www.gnu.org/licenses/lgpl-2.0.txt Source2-MD5: 5f30f0716dfdd0d91eb439ebec522ec2 NoSourceDirectory: true CompileScript: << #!/bin/sh -ev # The version number of darwin (8 for 10.4, 9 for 10.5, ...) # is needed for the directories of the gcc libraries DARWINVERSION=`uname -r|cut -f1 -d.` # create the default fpc.cfg file cat >%b/fpc.cfg < 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 # --------------- # Code generation # --------------- # Uncomment the next line if you always want static/dynamic units by default # (can be overruled with -CD, -CS at the commandline) #-CS #-CD # Set the default heapsize to 8Mb #-Ch8000000 # Set default codegeneration checks (iocheck, overflow, range, stack) #-Ci #-Co #-Cr #-Ct # Optimizer switches # -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 # # See "fpc -i" also for more fine-grained control over which optimizations # to perform #ifdef darwin #ifdef cpui386 -Cppentiumm -Oppentiumm #endif #endif # ----------------------- # Set Filenames and Paths # ----------------------- # Both slashes and backslashes are allowed in paths # path to the messagefile, not necessary anymore but can be used to override # the default language #-Fr%p/lib/fpc/\$fpcversion/msg/errore.msg #-Fr%p/lib/fpc/\$fpcversion/msg/errorn.msg #-Fr%p/lib/fpc/\$fpcversion/msg/errores.msg #-Fr%p/lib/fpc/\$fpcversion/msg/errord.msg #-Fr%p/lib/fpc/\$fpcversion/msg/errorr.msg # searchpath for units and other system dependent things -Fu%p/lib/fpc/%v/units/\$FPCTARGET -Fu%p/lib/fpc/%v/units/\$FPCTARGET/* -Fu%p/lib/fpc/%v/units/\$FPCTARGET/rtl #-Fu~/fpc/rtl/units/ #ifdef FPCAPACHE_1_3 -Fu%p/lib/fpc/\$fpcversion/units/\$fpctarget/httpd13/ #else #ifdef FPCAPACHE_2_0 -Fu%p/lib/fpc/\$fpcversion/units/\$fpctarget/httpd20 #else -Fu%p/lib/fpc/\$fpcversion//units/\$fpctarget/httpd22 #endif #endif # searchpath for fppkg user-specific packages -Fu~/.fppkg/lib/fpc/\$fpcversion/units/\$fpctarget/* # path to the gcclib #ifdef cpupowerpc -Fl/usr/lib/gcc/powerpc-apple-darwin$DARWINVERSION/4.2.1 -Fl/usr/lib/gcc/powerpc-apple-darwin$DARWINVERSION/4.0.1 #endif #ifdef cpupowerpc64 -Fl/usr/lib/gcc/powerpc-apple-darwin$DARWINVERSION/4.2.1/ppc64 -Fl/usr/lib/gcc/powerpc-apple-darwin$DARWINVERSION/4.0.1/ppc64 #endif #ifdef cpui386 -Fl/usr/lib/gcc/i686-apple-darwin$DARWINVERSION/4.2.1 -Fl/usr/lib/gcc/i686-apple-darwin$DARWINVERSION/4.0.1 #endif #ifdef cpux86_64 -Fl/usr/lib/gcc/i686-apple-darwin$DARWINVERSION/4.2.1/x86_64 -Fl/usr/lib/gcc/i686-apple-darwin$DARWINVERSION/4.0.1/x86_64 #endif # searchpath for libraries #-Fl/opt/lib #-Fl/pp/lib #-Fl/lib -Fl/usr/lib -Fl/usr/X11/lib -Fl/usr/X11R6/lib -Fl/opt/X11/lib -Fl%p/lib # searchpath for Qt4Pas frameworks #ifdef darwin -Ff%p/lib/qt4-mac/lib #endif # searchpath for tools -FD%p/lib/fpc/\$fpcversion/bin/\$fpctarget # set binutils prefix $CPUCROSSIFDEF1 $CPUCROSSIFDEF2 # binutils prefix for cross compiling #IFDEF FPC_CROSSCOMPILING #IFDEF NEEDCROSSBINUTILS -XP\$fpctarget- #ENDIF NEEDCROSSBINUTILS #ENDIF # ------------- # Linking # ------------- # 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 #-k-s # Always strip debuginfo from the executable #-Xs # ------------- # Miscellaneous # ------------- # Write always a nice FPC logo ;) -l # Verbosity # 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 # # That's all folks # EOFCFG << InstallScript: << #!/bin/sh -ev mkdir %i/etc install -c -m 644 %b/fpc.cfg %i/etc/ << ConfFiles: %p/etc/fpc.cfg DocFiles: gpl-2.0.txt lgpl-2.0.txt License: GPL/LGPL Description: Free Pascal compiler configuration DescDetail: << This package sets up the Free Pascal compiler configuration file (%p/etc/fpc.cfg) << DescUsage: << Only used by Free Pascal compilers and crosscompilers. Remove this file through "fink purge fpc-config". << DescPort: << the config file fpc.cfg is created taking compiler/utils/samplecfg as template. -Fu%p/lib/fpc/%v/units/\$FPCTARGET/* is important for findings units of different targets. The "\" is important otherwise the shell tries to replace it with the content of the variable FPCTARGET which does not exist. << Homepage: http://www.freepascal.org Maintainer: Karl-Michael Schindler