|
@@ -4438,7 +4438,7 @@ construct a \file{Makefile} from it. any previously existing
|
|
|
\file{Makefile} will be erased.
|
|
|
|
|
|
% Makefile.fpc format.
|
|
|
-\section{Format of the \file{Makefile.fpc} configuration file}
|
|
|
+\section{Format of the configuration file}
|
|
|
This section describes the rules that can be present in the file
|
|
|
that is fed to \file{fpcmake}.
|
|
|
|
|
@@ -4554,9 +4554,10 @@ Specifies whether the installation rules will be shown. By default this is
|
|
|
Specifies whether the \file{Makefile} objects will be shown, i.e. a list of
|
|
|
all units and programs that will be built by \file{make}.
|
|
|
\end{description}
|
|
|
+
|
|
|
\subsection{Install}
|
|
|
Contains instructions for installation of your units and programs. The
|
|
|
-following keywods are recognized:
|
|
|
+following keywords are recognized:
|
|
|
\begin{description}
|
|
|
\item[dirprefix] is the directory below wchich all installs are done.
|
|
|
This corresponds to the \var{--prefix} argument to \gnu \file{configure}.
|
|
@@ -4581,8 +4582,9 @@ one library.
|
|
|
library is needed. This will make sure that the path to the GCC library
|
|
|
is inserted in the library search path.
|
|
|
\item[needotherlib]
|
|
|
-a boolean value that tells the makefile that other library directories will
|
|
|
-be needed.
|
|
|
+(\linux only) a boolean value that tells the makefile that it should add
|
|
|
+all library directories from the \file{ld.so.conf} file to the compiler
|
|
|
+command-line.
|
|
|
\end{description}
|
|
|
|
|
|
\subsection{Packages}
|
|
@@ -4756,13 +4758,12 @@ file \file{gnuutils.zip} on the \fpc FTP site.
|
|
|
|
|
|
The following programs are optionally needed if you use some special targets.
|
|
|
Which ones you need are controlled by the settings in the \var{tools} section.
|
|
|
-
|
|
|
\begin{description}
|
|
|
\item[cmp] a \dos and \windowsnt file comparer. Used if \var{toolcmp} is \var{True}.
|
|
|
\item[diff] a file comparer. Used if \var{tooldiff} is \var{True}.
|
|
|
\item[ppdep] the ppdep depency lister. Used if \var{toolppdep} is \var{True}.
|
|
|
Distributed with \fpc.
|
|
|
-\item[ppfiles] the ppufiles unit file depency lister. Used if \var{toolppufiles}
|
|
|
+\item[ppufiles] the ppufiles unit file dependency lister. Used if \var{toolppufiles}
|
|
|
is \var{True}. Distributed with \fpc.
|
|
|
\item[ppumove] the \fpc unit mover. Used if \var{toolppumove} is \var{True}.
|
|
|
Distributed with \fpc.
|
|
@@ -4771,27 +4772,28 @@ Distributed with \fpc.
|
|
|
\item[zip] the zip archiver program. Used if \var{toolzip} is \var{True}.
|
|
|
\end{description}
|
|
|
All of these can also be found on the \fpc FTP site for \dos and \windowsnt.
|
|
|
+\file{ppdep,ppufiles} and \file{ppumove} are distributed with the \fpc
|
|
|
+compiler.
|
|
|
|
|
|
-\section{Variables used by \file{makefile.fpc}}
|
|
|
+%
|
|
|
+\section{Variables that affect the generated makefile}
|
|
|
+The makefile generated by \file{fpcmake} contains a lot of variables.
|
|
|
+Some of them are set in the makefile itself, others can be set and are taken
|
|
|
+into account when set.
|
|
|
|
|
|
-Many variables affect the behaviour of the makefile. The variables can be
|
|
|
-split in several groups:
|
|
|
-\begin{description}
|
|
|
-\item[Required environment variables]
|
|
|
-\item[Command-line directory variables]
|
|
|
-\item[Internal directory variables]
|
|
|
-\item[Target variables]
|
|
|
-\item[Compiler command-line variables]
|
|
|
-\item[Internal Compiler command-line variables]
|
|
|
-\end{description}
|
|
|
-Each group will be discussed separately in the subsequent.
|
|
|
+These variables can be split in several groups:
|
|
|
+\begin{itemize}
|
|
|
+\item Environment variables.
|
|
|
+\item Directory variables.
|
|
|
+\item Compiler command-line variables.
|
|
|
+\end{itemize}
|
|
|
+Each group will be discussed separately.
|
|
|
|
|
|
-\subsection{Required environment variables}
|
|
|
+\subsection{Environment variables}
|
|
|
|
|
|
-In principle, \var{fcmake} doesn't expect any environment variable to be set.
|
|
|
-Optionally, you can set the variable
|
|
|
-\var{FPCMAKEINI} which should contain the name of a file with the basic
|
|
|
-rules that fpcmake will generate.
|
|
|
+In principle, \var{fpcmake} doesn't expect any environment variable to be set.
|
|
|
+Optionally, you can set the variable \var{FPCMAKEINI} which should contain
|
|
|
+the name of a file with the basic rules that \file{fpcmake} will generate.
|
|
|
|
|
|
By default, \file{fpcmake} has a compiled-in copy of \file{fpcmake.ini},
|
|
|
which contains the basic rules, so there should be no need to set this variable.
|
|
@@ -4799,111 +4801,149 @@ You can set it however, if you wish to change the way in which fpcmake works and
|
|
|
creates rules.
|
|
|
|
|
|
The initial \file{fpcmake.ini} file can be found in the \file{utils} source
|
|
|
-package on the \fpc web site.
|
|
|
-
|
|
|
-\subsection{Command-line Directory variables}
|
|
|
+package on the \fpc ftp site.
|
|
|
+\subsection{Directory variables}
|
|
|
|
|
|
The first set of variables controls the directories that are
|
|
|
recognised in the makefile. They should not be set in the
|
|
|
\file{Makefile.fpc} file, but can be specified on the commandline.
|
|
|
-
|
|
|
-
|
|
|
\begin{description}
|
|
|
-
|
|
|
\item[INCDIR] this is a list of directories, separated by spaces, that will
|
|
|
be added as include directories to the compiler command-line. Each
|
|
|
directory in the list is prepended with \var{-I} and added to the
|
|
|
compiler options.
|
|
|
-
|
|
|
\item[LIBDIR] is a list of library paths, separated by spaces. Each
|
|
|
directory in the list is prepended with \var{-Fl} and added to the
|
|
|
compiler options.
|
|
|
-
|
|
|
\item[OBJDIR] is a list of object file directories, separated by spaces, that is
|
|
|
added to the object files path, i.e. Each directory in the list is prepended with
|
|
|
\var{-Fo}.
|
|
|
+\end{description}
|
|
|
|
|
|
+\subsection{Compiler command-line variables }
|
|
|
+The following variable can be set on the \file{make} command-line,
|
|
|
+they will be recognised and integrated in the compiler command-line:
|
|
|
+
|
|
|
+\begin{description}
|
|
|
+\item[OPT] Any options that you want to pass to the compiler. The contents
|
|
|
+of \var{OPT} is simply added to the compiler command-line.
|
|
|
+
|
|
|
+\item[OPTDEF] Are optional defines, added to the command-line of the
|
|
|
+compiler. They do not get \var{-d} prepended.
|
|
|
\end{description}
|
|
|
|
|
|
-\subsection{Internal Directory variables}
|
|
|
+\section{Variables set by \file{fpcmake}}
|
|
|
|
|
|
-These variables specify directories that are absolutely needed by
|
|
|
-the makefile to function.
|
|
|
+All of the following variables are only set by \file{fpcmake}, if
|
|
|
+they aren't already defined. This means that you can override them by
|
|
|
+setting them on the make commandline, or setting them in the \var{presettings}
|
|
|
+section. But most of them are correctly determined by the generated
|
|
|
+\file{Makefile} or set by your settings in the configuration file.
|
|
|
+
|
|
|
+The following sets of variables are defined:
|
|
|
+\begin{itemize}
|
|
|
+\item Directory variables.
|
|
|
+\item Program names.
|
|
|
+\item File extensions.
|
|
|
+\item Target files.
|
|
|
+\end{itemize}
|
|
|
+Each of these sets is discussed in the subsequent:
|
|
|
+
|
|
|
+\subsection{Directory variables}
|
|
|
+
|
|
|
+The following directories are defined by the makefile:
|
|
|
|
|
|
\begin{description}
|
|
|
+\item[BASEDIR] is set to the current directory if the \file{pwd} command is
|
|
|
+available. If not, it is set to '.'.
|
|
|
+
|
|
|
+\item[BASEINSTALLDIR] is the base for all directories where units are
|
|
|
+installed. By default, On \linux, this is set to
|
|
|
+\mvar{PREFIXINSTALLDIR}\var{/lib/fpc/}\mvar{RELEASEVER}.\\ On other systems,
|
|
|
+it is set to \mvar{PREFIXINSTALLDIR}. You can also set it with the
|
|
|
+\var{basedir} variable in the \var{Install} section.
|
|
|
+
|
|
|
+\item[BININSTALLDIR] is set to \mvar{BASEINSTALLDIR}/\var{bin} on \linux,
|
|
|
+and\\ \mvar{BASEINSTALLDIR}/\var{bin}/\mvar{OS\_TARGET} on other systems.
|
|
|
+This is the place where binaries are installed.
|
|
|
+
|
|
|
+\item[GCCLIBDIR] (\linux only) is set to the directory where \file{libgcc.a}
|
|
|
+is. If \var{needgcclib} is set to \var{True} in the \var{Libs} section, then
|
|
|
+this directory is added to the compiler commandline with \var{-Fl}.
|
|
|
+
|
|
|
+\item[LIBINSTALLDIR] is set to \mvar{BASEINSTALLDIR} on \linux,\\
|
|
|
+ and \mvar{BASEINSTALLDIR}/\var{lib} on other systems.
|
|
|
+
|
|
|
\item[NEEDINCDIR] is a space-separated list of library paths. Each
|
|
|
directory in the list is prepended with \var{-Fl} and added to the
|
|
|
-compiler options.
|
|
|
+compiler options. Set by the \var{incdir} keyword in the \var{Dirs} section.
|
|
|
+
|
|
|
\item[NEEDLIBDIR] is a space-separated list of library paths. Each
|
|
|
directory in the list is
|
|
|
prepended with \var{-Fl} and added to the compiler options.
|
|
|
+Set by the \var{libdir} keyword in the \var{Dirs} section.
|
|
|
+
|
|
|
\item[NEEDOBJDIR] is a list of object file directories, separated by
|
|
|
spaces. Each directory in the list is prepended with \var{-Fo} and
|
|
|
added to the compiler options.
|
|
|
+Set by the \var{objdir} keyword in the \var{Dirs} section.
|
|
|
+
|
|
|
\item[NEEDUNITDIR] is a list of unit directories, separated by spaces.
|
|
|
Each directory in the list is prepended with \var{-Fu} and is added to the
|
|
|
compiler options.
|
|
|
-\item[OSINC] this is a space-separated list of OS-dependent directories
|
|
|
-that will be added as include directories to the compiler command line.
|
|
|
-\item[OTHERLIBDIR] is a list of library paths, separated by spaces. Each
|
|
|
-directory in the list is prepended with \var{-Fl} and added to the
|
|
|
-compiler options. This variable is meant to be set in the \file{Makefile.fpc}
|
|
|
-\item[PROCINC] is a space-separated list of processor-dependent directories
|
|
|
-that will be added as include directories to the compiler command-line.
|
|
|
-\item[RTL] If \var{RTLDIR} is not set, \var{RTL} is used to construct
|
|
|
-\var{RTLDIR}, after which \var{RTLDIR} is added to the compiler unit
|
|
|
-path, with \var{-Fu} prepended. If \var{RTLDIR} is not set, it is set
|
|
|
- to \mvar{RTL}/\mvar{OS\_TARGET}.
|
|
|
-\item[RTLDIR] Directory where the \var{RTL} unit sources are.
|
|
|
-If \var{RTLDIR} is not set, it is set to \mvar{RTL}/\mvar{OS\_TARGET}. \\
|
|
|
-If \var{RTL} is also not set, it is set to \mvar{FPCDIR}\var{/rtl/}\mvar{OS\_TARGET}.
|
|
|
-\item[TARGETDIR] If set, this directory is added as the output directory of
|
|
|
+Set by the \var{unitdir} keyword in the \var{Dirs} section.
|
|
|
+
|
|
|
+\item[TARGETDIR] This directory is added as the output directory of
|
|
|
the compiler, where all units and executables are written, i.e. it gets
|
|
|
-\var{-FE} prepended.
|
|
|
+\var{-FE} prepended. It is set by the \var{targtdir} keyword in the
|
|
|
+\var{Dirs} section.
|
|
|
+
|
|
|
\item[TARGETUNITDIR] If set, this directory is added as the output directory of
|
|
|
the compiler, where all units and executables are written, i.e. it gets
|
|
|
-\var{-FU} prepended.
|
|
|
-\item[UNIT] If \var{UNITDIR} is not set, \var{UNIT} is used to construct
|
|
|
-\var{UNITDIR}. \var{UNITDIR} is added to the compiler unit path, with \var{-Fu}
|
|
|
-prepended.
|
|
|
-\item[UNITDIR] Directory where the \var{RTL} compiled units are.
|
|
|
-If \var{UNITDIR} is not set, it is set to \mvar{UNIT}/\mvar{OS\_TARGET}. \\
|
|
|
-If \var{UNIT} is also not set, it is set to \mvar{FPCDIR}\var{/rtl/}\mvar{OS\_TARGET}.
|
|
|
+\var{-FU} prepended.It is set by the \var{targtdir} keyword in the
|
|
|
+\var{Dirs} section.
|
|
|
+
|
|
|
+\item[PREFIXINSTALLDIR] is set to \file{/usr} on \linux, \file{/pp} on \dos
|
|
|
+or \windowsnt. Set by the \var{dirprefix} keyword in the \var{Install}
|
|
|
+section.
|
|
|
+
|
|
|
+\item[UNITINSTALLDIR] is where units will be installed. This is set to\\
|
|
|
+\mvar{BASEINSTALLDIR}/\mvar{UNITPREFIX} \\
|
|
|
+on \linux. On other systems, it is set to \\
|
|
|
+\mvar{BASEINSTALLDIR}/\mvar{UNITPREFIX}/\mvar{OS\_TARGET}.
|
|
|
\end{description}
|
|
|
|
|
|
\subsection{Target variables}
|
|
|
|
|
|
The second set of variables controls the targets that are constructed
|
|
|
-by the makefile. They are created by FPCMAKE, so you can use them in your rules,
|
|
|
-but you shouldn't assign values to them yourself.
|
|
|
+by the makefile. They are created by \file{fpcmake}, so you can use
|
|
|
+them in your rules, but you shouldn't assign values to them yourself.
|
|
|
|
|
|
\begin{description}
|
|
|
\item[EXEOBJECTS] This is a list of executable names that will be compiled.
|
|
|
-the makefile appends \mvar{EXEEXT} to these names.
|
|
|
+the makefile appends \mvar{EXEEXT} to these names. It is set by the
|
|
|
+\var{programs} keyword in the \var{Targets} section.
|
|
|
+
|
|
|
\item[LOADEROBJECTS] is a list of space-separated names that identify
|
|
|
loaders to be compiled. This is mainly used in the compiler's RTL sources.
|
|
|
+It is set by the \var{loaders} keyword in the \var{Targets} section.
|
|
|
+
|
|
|
\item[UNITOBJECTS] This is a list of unit names that will be compiled. The
|
|
|
makefile appends \mvar{PPUEXT} to each of these names to form the unit file
|
|
|
name. The sourcename is formed by adding \mvar{PASEXT}.
|
|
|
-\item[ZIPNAME] is the name of the archive that will be created by the
|
|
|
-makefile.
|
|
|
-\item[ZIPTARGET] is the target that is built before the archive is made.
|
|
|
-this target is built first. If successful, the zip archive will be made.
|
|
|
-\end{description}
|
|
|
+It is set by the \var{units} keyword in the \var{Targets} section.
|
|
|
|
|
|
-\subsection{Compiler command-line variables }
|
|
|
-The following variable can be set on the \file{make} command-line,
|
|
|
-they will be recognised and integrated in the compiler command-line:
|
|
|
+\item[ZIPNAME] is the name of the archive that will be created by the
|
|
|
+makefile.
|
|
|
+It is set by the \var{zipname} keyword in the \var{Zip} section.
|
|
|
|
|
|
-\begin{description}
|
|
|
-\item[OPT] Any options that you want to pass to the compiler. The contents
|
|
|
-of \var{OPT} is simply added to the compiler command-line.
|
|
|
+\item[ZIPTARGET] is the target that is built before the archive is made.
|
|
|
+this target is built first. If successful, the zip archive will be made.
|
|
|
+It is set by the \var{ziptarget} keyword in the \var{Zip} section.
|
|
|
|
|
|
-\item[OPTDEF] Are optional defines, added to the command-line of the
|
|
|
-compiler. They do not get \var{-d} prepended.
|
|
|
\end{description}
|
|
|
|
|
|
-\subsection{Internal Compiler command-line variables}
|
|
|
+\subsection{Compiler command-line variables}
|
|
|
|
|
|
The following variables control the compiler command-line:
|
|
|
\begin{description}
|
|
@@ -4914,86 +4954,27 @@ command line. This is determined by the Makefile itself.
|
|
|
\item[CPU\_TARGET] the target CPU type is added as a define to the compiler
|
|
|
command line. This is determined by the Makefile itself.
|
|
|
|
|
|
-\item[LIBNAME] if smartlinking is requested (i.e. \var{SMARTLINK} is set to
|
|
|
-\var{YES}), this is the name of the static library to produce. Don't add
|
|
|
-\var{lib} to this, the compiler will do that.
|
|
|
+\item[LIBNAME] if a shared library is requested this is the name of the
|
|
|
+shared library to produce. Don't add \var{lib} to this, the compiler will
|
|
|
+do that.
|
|
|
+It is set by the \var{libname} keyword in the \var{Libs} section.
|
|
|
|
|
|
\item[NEEDGCCLIB] if this variable is defined, then the path to \file{libgcc}
|
|
|
is added to the library path.
|
|
|
+It is set by the \var{needgcclib} keyword in the \var{Libs} section.
|
|
|
|
|
|
\item[NEEDOTHERLIB] (\linux only) If this is defined, then the makefile will
|
|
|
append all directories that appear in \var{/etc/ld.so.conf} to the library path.
|
|
|
+It is set by the \var{needotherlib} keyword in the \var{Libs} section.
|
|
|
|
|
|
\item[OS\_TARGET] What platform you want to compile for. Added to the
|
|
|
compiler command-line with a \var{-T} prepended.
|
|
|
|
|
|
-\item[SMARTLINK] if \var{SMARTLINK} is set to \var{YES} then the compiler
|
|
|
-will output smartlinked units if \var{LIBTYPE} is not set to \var{shared}.
|
|
|
+%\item[SMARTLINK] if \var{SMARTLINK} is set to \var{YES} then the compiler
|
|
|
+%will output smartlinked units if \var{LIBTYPE} is not set to \var{shared}.
|
|
|
|
|
|
\end{description}
|
|
|
|
|
|
-\section{Variables set by \file{fpcmake}}
|
|
|
-
|
|
|
-All of the following variables are only set by \file{fpcmake}, if
|
|
|
-they aren't already defined. This means that you can override them by
|
|
|
-setting them on the make command line, or setting them in the \var{presettings}
|
|
|
-section. But most of them are correctly determined by the generated
|
|
|
-\file{Makefile}.
|
|
|
-The following sets of variables are defined:
|
|
|
-\begin{description}
|
|
|
-\item[Directory variables]
|
|
|
-\item[Program names]
|
|
|
-\item[File extensions]
|
|
|
-item[Target files]
|
|
|
-\end{description}
|
|
|
-Each of these sets is discussed in the subsequent:
|
|
|
-\subsection{Directory variables}
|
|
|
-
|
|
|
-The following directories are defined by the makefile:
|
|
|
-
|
|
|
-\begin{description}
|
|
|
-\item[BASEDIR] is set to the current directory if the \file{pwd} command is
|
|
|
-available. If not, it is set to '.'.
|
|
|
-
|
|
|
-\item[BASEINSTALLDIR] is the base for all directories where units are
|
|
|
-installed. On \linux, this is set to
|
|
|
-\mvar{PREFIXINSTALLDIR}\var{/lib/fpc/}\mvar{RELEASEVER}.\\ On other systems,
|
|
|
-it is set to \mvar{PREFIXINSTALLDIR}
|
|
|
-
|
|
|
-\item[BININSTALLDIR] is set to \mvar{BASEINSTALLDIR}/\var{bin} on \linux,
|
|
|
-and\\
|
|
|
-\mvar{BASEINSTALLDIR}/\var{bin}/\mvar{OS\_TARGET} on other systems. This is
|
|
|
-the place where binaries are installed.
|
|
|
-
|
|
|
-\item[GCCLIBDIR] (\linux only) is set to the directory where \file{libgcc.a}
|
|
|
-is.
|
|
|
-
|
|
|
-\item[LIBINSTALLDIR] is set to \mvar{BASEINSTALLDIR} on \linux,\\
|
|
|
- and \mvar{BASEINSTALLDIR}/\var{lib} on other systems.
|
|
|
-
|
|
|
-\item[OTHERLIBDIR] (\linux only) is set to the full set of paths in \file{/etc/ld.so.conf}
|
|
|
-
|
|
|
-\item[PREFIXINSTALLDIR] is set to \file{/usr} on \linux, \file{/pp} on \dos
|
|
|
-or \windowsnt.
|
|
|
-
|
|
|
-\item[SHARED\_LIBINSTALLDIR] is where shared libraries are
|
|
|
-installed. This equals \mvar{PREFIXINSTALLDIR}/\var{lib} on \linux, and
|
|
|
-\var{SHARED\_UNITINSTALLDIR} on other systems.
|
|
|
-
|
|
|
-\item[SHARED\_UNITINSTALLDIR] is where units from libraries are
|
|
|
-installed. This equals \mvar{UNITINSTALLDIR}/\var{shared}
|
|
|
-
|
|
|
-\item[STATIC\_LIBINSTALLDIR] is where static libraries will be
|
|
|
-installed. By default, it equals \mvar{STATIC\_UNITINSTALLDIR}.
|
|
|
-
|
|
|
-\item[STATIC\_UNITINSTALLDIR] is where static, smartlinked units will be
|
|
|
-installed. It equals \mvar{UNITINSTALLDIR}/\var{static}.
|
|
|
-
|
|
|
-\item[UNITINSTALLDIR] is where units will be installed. This is set to\\
|
|
|
-\mvar{BASEINSTALLDIR}/\mvar{UNITPREFIX} \\
|
|
|
-on \linux. On other systems, it is set to \\
|
|
|
-\mvar{BASEINSTALLDIR}/\mvar{UNITPREFIX}/\mvar{OS\_TARGET}.
|
|
|
-\end{description}
|
|
|
|
|
|
\subsection{Program names}
|
|
|
|
|
@@ -5056,7 +5037,6 @@ the first \var{UNITOBJECTS} files.
|
|
|
\subsection{Target files}
|
|
|
|
|
|
The following variables are defined to make targets and rules easier:
|
|
|
-
|
|
|
\begin{description}
|
|
|
\item[COMPILER] is the complete compiler commandline, with all options
|
|
|
added, after all \file{Makefile} variables have been examined.
|
|
@@ -5067,14 +5047,14 @@ makefile.
|
|
|
by the makefile.
|
|
|
\item[LOADEROFILES] is a list of object files that will be made from the
|
|
|
loader assembler files. This is mainly for use in the compiler's RTL sources.
|
|
|
-\item[UNITFILES] a list of unit files that will be made. This is just
|
|
|
+\item[UNITPPUFILES] a list of unit files that will be made. This is just
|
|
|
the list of unit objects, with the correct unit extension appended.
|
|
|
\item[UNITOFILES] a list of unit object files that will be made.
|
|
|
This is just the list of unit objects, with the correct object file
|
|
|
extension appended.
|
|
|
\end{description}
|
|
|
|
|
|
-\section{Rules and targets created by \file{makefile.fpc}}
|
|
|
+\section{Rules and targets created by \file{fpcmake}}
|
|
|
|
|
|
The \var{makefile.fpc} defines a series of targets, which can be called by
|
|
|
your own targets. They have names that resemble default names (such as
|
|
@@ -5098,8 +5078,8 @@ loaders. If \var{DEFAULTUNITS} is defined, executables are excluded from the
|
|
|
targets.
|
|
|
\item[fpc\_exes] target to make all executables in \var{EXEOBJECTS}.
|
|
|
\item[fpc\_loaders] target to make all files in \var{LOADEROBJECTS}.
|
|
|
-\item[fpc\_sharedlib] target that makes all units as dynamic libraries.
|
|
|
-\item[fpc\_staticlib] target that makes all units as smartlinked units.
|
|
|
+\item[fpc\_shared] target that makes all units as dynamic libraries.
|
|
|
+\item[fpc\_smart] target that makes all units as smartlinked units.
|
|
|
\item[fpc\_units] target to make all units in \var{UNITOBJECTS}.
|
|
|
\end{description}
|
|
|
|
|
@@ -5108,8 +5088,6 @@ targets.
|
|
|
The following cleaning targets are defined:
|
|
|
\begin{description}
|
|
|
\item[fpc\_clean] cleans all files that result when \var{fpc\_all} was made.
|
|
|
-\item[fpc\_libsclean] is the same as \var{fpc\_clean}, but also removes any
|
|
|
-shared or dynamic libraries that may have been built.
|
|
|
\item[fpc\_cleanall] is the same as both previous target commands, but also
|
|
|
deletes all object, unit and assembler files that are present.
|
|
|
\end{description}
|
|
@@ -5118,14 +5096,13 @@ deletes all object, unit and assembler files that are present.
|
|
|
|
|
|
The following archiving targets are defined:
|
|
|
\begin{description}
|
|
|
-\item[fpc\_zipinstalladd] will add to a (possibibly existing) archive file (it's
|
|
|
-name is taken from \mvar{ZIPNAME}.
|
|
|
-\item[fpc\_zipinstall] is the same, only the archive is cleared first.
|
|
|
+\item[fpc\_zipinstall] will create an archive file (it's
|
|
|
+name is taken from \mvar{ZIPNAME}) from the compiled units.
|
|
|
+\item[fpc\_zipsourceinstall] will create an archive file (it's
|
|
|
+name is taken from \mvar{ZIPNAME}), from the sources.
|
|
|
\end{description}
|
|
|
The zip is made uzing the \var{ZIPEXE} program. Under \linux, a
|
|
|
\file{.tar.gz} file is created.
|
|
|
-
|
|
|
-
|
|
|
\subsection{Informative rules}
|
|
|
|
|
|
The following targets produce information about the makefile:
|