mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-13 15:29:13 +02:00
+ Adapted to latest version
This commit is contained in:
parent
371a30428a
commit
54ae1063a4
@ -4,7 +4,7 @@ fpcmake \- The Free Pascal makefile constuctor program.
|
||||
|
||||
.SH SYNOPSIS
|
||||
|
||||
.B fpcmake
|
||||
.B fpcmake [filename [filename [filename]]]
|
||||
|
||||
.SH DESCRIPTION
|
||||
|
||||
@ -24,7 +24,13 @@ for making X projects.
|
||||
.SH USAGE
|
||||
|
||||
.B fpcmake
|
||||
takes no options at this time. It just attempts to read the file
|
||||
accepts filenames of makefile description files as it's command-line
|
||||
arguments. For each of these files it will create a
|
||||
.I Makefile
|
||||
in the same directory where the file is located, overwriting any other
|
||||
existing file.
|
||||
|
||||
If no options are given, it just attempts to read the file
|
||||
.I Makefile.fpc
|
||||
in the current directory and tries to construct a Makefile from it.
|
||||
any previously existing
|
||||
|
@ -3,6 +3,11 @@
|
||||
Makefile.fpc \- Configuration file for fpcmake.
|
||||
|
||||
.SH SYNOPSIS
|
||||
.I Makefile.fpc
|
||||
is a configuration file for the fpcmake command. Starting from this file a
|
||||
.I Makefile
|
||||
is created to compile Free Pascal units and programs.
|
||||
|
||||
.SH DESCRIPTION
|
||||
|
||||
.B Makefile.fpc
|
||||
@ -66,24 +71,335 @@ of the
|
||||
entry.
|
||||
.TP
|
||||
.B libs
|
||||
|
||||
This section specifies what units should be merged into a library, and what
|
||||
external libraries are needed. It can contain the following keywords:
|
||||
.RS
|
||||
.TP
|
||||
.I libname
|
||||
the name of the library that should be created.
|
||||
.TP
|
||||
.I libunits
|
||||
a comma-separated list of units that should be moved into one library.
|
||||
.TP
|
||||
.I needgcclib
|
||||
a boolean value that specifies whether the gcc library is needed. This will
|
||||
make sure that the path to the GCC library is inserted in the library search
|
||||
path.
|
||||
.TP
|
||||
.I needotherlib
|
||||
a boolean value that tells the makefile that other library directories will
|
||||
be needed.
|
||||
.RE
|
||||
.TP
|
||||
.B packages
|
||||
Which packages must be used. This section can contain the following keywords:
|
||||
.RS
|
||||
.TP
|
||||
.I packages
|
||||
A comma-separated list of packages that are needed to compile the targets.
|
||||
Valid for all platforms. In order to differentiate between platforms, you
|
||||
can prepend the keyword
|
||||
.I packages
|
||||
with the OS you are compiling for, e.g.
|
||||
.I linuxpackages
|
||||
if you want the makefile to use the listed packages on linux only.
|
||||
.TP
|
||||
.I fcl
|
||||
This is a boolean value (0 or 1) that indicates whether the FCL is used.
|
||||
.TP
|
||||
.I rtl
|
||||
This is a boolean value (0 or 1) that indicates whether the RTL should be
|
||||
recompiled.
|
||||
.RE
|
||||
.TP
|
||||
.B postsettings
|
||||
Anything that is in this section will be inserted as-is in the makefile
|
||||
.I after
|
||||
the makefile rules that are generated by fpcmake, but
|
||||
.I before
|
||||
the general configuration rules.
|
||||
. In it, you cannot use variables that are defined by fpcmake rules, but you
|
||||
can define additional rules and configuration variables.
|
||||
.TP
|
||||
.B presettings
|
||||
Anything that is in this section will be inserted as-is in the makefile
|
||||
.I before
|
||||
the makefile target rules that are generated by fpcmake. This means that
|
||||
you cannot use any variables that are normally defined by
|
||||
.TP
|
||||
.B rules
|
||||
In this section you can insert dependency rules and any other targets
|
||||
you wish to have. Do not insert 'default rules' here.
|
||||
.TP
|
||||
.B sections
|
||||
Here you can specify which 'rule sections' should be included in the Makefile.
|
||||
The sections consist of a series of boolean keywords; each keyword decies
|
||||
whether a particular section will be written to the makefile. By default,
|
||||
all sections are written.
|
||||
|
||||
You can have the following boolean keywords in this section.
|
||||
.RS
|
||||
.TP
|
||||
.I none
|
||||
If this is set to true, then no sections are written.
|
||||
.TP
|
||||
.I units
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for compiling units.
|
||||
.TP
|
||||
.I exes
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for compiling executables.
|
||||
.TP
|
||||
.I loaders
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for assembling assembler files.
|
||||
.TP
|
||||
.I examples
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for compiling examples.
|
||||
.TP
|
||||
.I package
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for making packages.
|
||||
.TP
|
||||
.I compile
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the generic rules for compiling pascal files.
|
||||
.TP
|
||||
.I depend
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the dependency rules.
|
||||
.TP
|
||||
.I install
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for installing everything.
|
||||
.TP
|
||||
.I sourceinstall
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for installing the sources.
|
||||
.TP
|
||||
.I zipinstall
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for installing archives.
|
||||
.TP
|
||||
.I clean
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for cleaning the directories.
|
||||
.TP
|
||||
.I libs
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for making libraries.
|
||||
.TP
|
||||
.I command
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for composing the command-line based on the various
|
||||
variables.
|
||||
.TP
|
||||
.I exts
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for making libraries.
|
||||
.TP
|
||||
.I dirs
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for running make in subdirectories..
|
||||
.TP
|
||||
.I tools
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for running some tools as the erchiver, UPX and zip.
|
||||
.TP
|
||||
.I info
|
||||
If set to
|
||||
.I false
|
||||
,
|
||||
.B fpcmake
|
||||
omits the rules for generating information.
|
||||
.RE
|
||||
.TP
|
||||
.B targets
|
||||
In this section you can define the various targets. The following keywords
|
||||
can be used there:
|
||||
.RS
|
||||
.TP
|
||||
.I dirs
|
||||
A space separated list of directories where make should also be run.
|
||||
.TP
|
||||
.I examples
|
||||
A space separated list of example programs that need to be compiled when
|
||||
the user asks to compile the examples. Do not specify an extension,
|
||||
the extension will be appended.
|
||||
.TP
|
||||
.I loaders
|
||||
A space separated list of names of assembler files that must be assembled.
|
||||
Don't specify the extension, the extension will be appended.
|
||||
.TP
|
||||
.I programs
|
||||
A space separated list of program names that need to be compiled. Do not
|
||||
specify an extension, the extension will be appended.
|
||||
.TP
|
||||
.I rst
|
||||
a list of
|
||||
.I rst
|
||||
files that needs to be converted to
|
||||
.I .po
|
||||
files for use with GNU
|
||||
.B gettext
|
||||
and internationalization routines.
|
||||
.TP
|
||||
.I units
|
||||
A space separated list of unit names that need to be compiled. Do not
|
||||
specify an extension, just the name of the unit as it would appear un a
|
||||
.I uses
|
||||
clause is sufficient.
|
||||
.RE
|
||||
.TP
|
||||
.B tools
|
||||
In this section you can specify which tools are needed. Definitions to
|
||||
use each of the listed tools will be inserted in the makefile, depending
|
||||
on the setting in this section.
|
||||
|
||||
Each keyword is a boolean keyword; you can switch the use of a tool on or
|
||||
off with it.
|
||||
|
||||
The following keywords are recognised:
|
||||
.RS
|
||||
.TP
|
||||
.I toolppdep
|
||||
Use
|
||||
.B ppdep
|
||||
the dependency tool.
|
||||
.I True
|
||||
by default.
|
||||
.TP
|
||||
.I toolppumove
|
||||
Use
|
||||
.B ppumove
|
||||
the Free Pascal unit mover.
|
||||
.I True
|
||||
by default.
|
||||
.TP
|
||||
.I toolppufiles
|
||||
Use the
|
||||
.B ppufile
|
||||
tool to determine dependencies of unit files.
|
||||
.I True
|
||||
by default.
|
||||
.TP
|
||||
.I toolsed
|
||||
Use
|
||||
.B sed
|
||||
the stream line editor.
|
||||
.I False
|
||||
by default.
|
||||
.TP
|
||||
.I tooldata2inc
|
||||
use the
|
||||
.B data2inc
|
||||
tool to create include files from data files.
|
||||
.I False
|
||||
by default.
|
||||
.TP
|
||||
.I tooldiff
|
||||
Use the GNU
|
||||
.B diff
|
||||
tool.
|
||||
.I False
|
||||
by default.
|
||||
.TP
|
||||
.I toolcmp
|
||||
Use the
|
||||
.B cmp
|
||||
file comparer tool
|
||||
.I False
|
||||
by default.
|
||||
.TP
|
||||
.I toolupx
|
||||
Use the
|
||||
.B upx
|
||||
executable packer
|
||||
.I True
|
||||
by default.
|
||||
.TP
|
||||
.I tooldate
|
||||
use the
|
||||
.B date
|
||||
date displaying tool.
|
||||
.I True
|
||||
by default.
|
||||
.TP
|
||||
.I toolzip
|
||||
Use the
|
||||
.B zip
|
||||
file archiver. This is used by the zip targets.
|
||||
.I True
|
||||
by default.
|
||||
.RE
|
||||
.TP
|
||||
.B zip
|
||||
This section can be used to make zip files from the compiled units and
|
||||
programs. By default all compiled units are zipped. The zip behaviour can
|
||||
be influencd with the presettings and postsettings sections.
|
||||
|
||||
The following keywords can be used in this unit:
|
||||
.RS
|
||||
.TP
|
||||
.I zipname
|
||||
this file is the name of the zip file that will be produced.
|
||||
.TP
|
||||
.I ziptarget
|
||||
is the name of a makefile target that will be executed before the zip is
|
||||
made. By default this is the
|
||||
.I install
|
||||
target.
|
||||
.RE
|
||||
.SH SEE ALSO
|
||||
.IP
|
||||
.BR fpcmake (1)
|
||||
|
Loading…
Reference in New Issue
Block a user