install
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
Possible settings for common Free Pascal Makefile: General configurable settings: ------------------------------ OS_TARGET The target operating system you are going to compile for (Note: This has autodetection for go32v2,linux,winnt) OS_SOURCE The source operating system you compiling under (Note: This has autodetection for go32v2,linux,winnt) CPU_TARGET The target CPU that is used (currently m68k,i386) Default: CPU_TARGET=i386 OPT General commandline options you want to give Example to compile with debug info: OPT=-g OPTDEF Commandline defines, which also need to be passed to programs that don't want other options (like mkdep) NEEDOPT Realy needed commandline options, also used when RELEASE=1. Example: NEEDOPT=-Sg to allow goto NEEDUNITDIR Realy needed unitdir FPC compiler to use, default is ppc386 Example to compile with version 0.99.8: FPC=ppc998 AS assembler to use to compile the loaders Default: AS=as LD linker to use Default: LD=ld RELEASE setting this to a value (for example RELEASE=1) will compile for a release, no fpc.cfg is read an compile is done with the following settings: '-Xs -OG2p2 -n' VERBOSE setting this to a value (for example VERBOSE=1) will compile with more verbosity, this can be used in combination with the RELEASE option. Verbosity used: '-vwni' SMARTLINK setting this to YES will create smartlinked files Example: SMARTLINK=YES LIBNAME set the outputname for the library to LIBNAME, mostly used in combination with SMARTLINK to create a one library which contains all units Example: LIBNAME=objpas SMARTLINK=yes LIBTYPE can be set to shared or static to set the library type you want to create. When shared is set it overrides smartlink and turns it off. Example: LIBTYPE=shared LIBNAME=objpas DEFAULTUNITS if this is set then a 'make all' will only compile the units and not the exes NODEFAULTRULES Don't include the default compiler rules. This is needed for top-makefiles which call other files in subdirs Location: --------- INC Where to find the .inc files. Example: INC=inc $(OS_TARGET) TARGETDIR Where to place all the .o,.ppu,.exe files Example: TARGETDIR=. (this is needed when you compile a unit from an other dir, but want the .ppu,.o in the current directory) UNITTARGETDIR Where to place the .o,.ppu files, this overrides the TARGETDIR setting for these files. Example see TARGETDIR File Handling: -------------- MOVE Command to move files COPY Command to copy files DEL Command to delete files DELTREE Command to delete a whole directory tree INSTALL Command to install a normal file (not executable) INSTALLEXE Command to install an executable file MKDIR Command to make a new directory Tools: ------ LDCONFIG command to rebuild the ld.so.cache (automaticly set for linux) PPAS ppas.sh for linux, other os's ppas.bat PPUMOVE PPUMove program DIFF GNU Diff DATE GNU Date (automaticly searched) SED GNU Sed (automaticly searched) PWD GNU PWD (automaticly searched) ZIPPROG ZIP compressor (automaticly searched) Directories: ----------- BASEDIR Current working directory (automaticly loaded using PWD) FPCDIR Base directory of Free Pascal RTLDIR Directory to the used RTL. This contains already the target Default: $FPCDIR/rtl/$OS_TARGET UNITDIR Directory to the currently used units for the target Default: $FPCDIR/units/$OS_TARGET Installation directories: ------------------------- BASEINSTALLDIR Base directory where to install all the files. Default: /pp (linux: /usr/lib/fpc/$VER) LIBINSTALLDIR Directory to install all libraries Default: $BASEINSTALLDIR/lib (linux: $BASEINSTALLDIR) BININSTALLDIR Directory where to install the binaries Default: $BASEINSTALLDIR/bin/$OS_TARGET (linux: /usr/bin) UNITINSTALLDIR Directory where to install the normal units Default: $BASEINSTALLDIR/rtl/$OS_TARGET STATIC_UNITINSTALLDIR Directory where to install static (smartlinked) units Default: $BASEINSTALLDIR/rtl/$OS_TARGET/static SHARED_UNITINSTALLDIR Directory where to install shared linked units Default: $BASEINSTALLDIR/rtl/$OS_TARGET/shared STATIC_LIBINSTALLDIR Directory where to install static linked libraries Default: $STATIC_UNITINSTALLDIR SHARED_LIBINSTALLDIR Directory where to install shared linked libraries Default: $SHARED_UNITINSTALLDIR (linux: /usr/lib) MSGINSTALLDIR Directory where to place the .msg (language) files Default: $BASEINSTALLDIR/msg DOCINSTALLDIR: Directory where to install the documentation Default: $BASEINSTALLDIR/doc (linux: /usr/doc/fpc/$VER)