mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-19 14:19:31 +02:00
* shell commands helpfull for building fpmake.pp
git-svn-id: trunk@9874 -
This commit is contained in:
parent
a8d2a7932d
commit
721a45eb02
@ -3,14 +3,14 @@ This is the FPC packager.
|
||||
The architecture is as follows:
|
||||
|
||||
A mirror list is maintained with FPC repositories.
|
||||
The packager will download the mirror list and store
|
||||
The packager will download the mirror list and store
|
||||
it somewhere locally
|
||||
|
||||
From a mirror, a repository is chosen (using it's name)
|
||||
|
||||
From the repository the repository file is downloaded.
|
||||
From the repository the repository file is downloaded.
|
||||
It contains all known packages. The fprepos.pp unit contains the
|
||||
functionality to read and maintain the package file.
|
||||
functionality to read and maintain the package file.
|
||||
|
||||
The packager maintains a local repository file. when needed
|
||||
it will download a package and install it. It does so recursively.
|
||||
@ -22,15 +22,15 @@ create a manifest file (in XML) to import in a repository.
|
||||
All packager functionality will be implemented in units so
|
||||
these units can be used in command-line and GUI package managers.
|
||||
|
||||
All packager command handling is implemented in descendents fom
|
||||
All packager command handling is implemented in descendents fom
|
||||
TPackageHandler (pkghandler.pp). All messages emitted by these
|
||||
handlers are in pkgmessages.
|
||||
handlers are in pkgmessages.
|
||||
|
||||
Units:
|
||||
-----
|
||||
|
||||
fprepos:
|
||||
A unit that describes a repository.
|
||||
A unit that describes a repository.
|
||||
It is mainly a collection of packages.
|
||||
fpxmlrep
|
||||
A unit to read/write a repository to XML. It can be used to read a
|
||||
@ -42,7 +42,7 @@ fpmkunit
|
||||
this is the unit that implements all the functionality a fpmake driver
|
||||
needs.
|
||||
fpmktype
|
||||
types and constants shared by fpmkunit and fprepos
|
||||
types and constants shared by fpmkunit and fprepos
|
||||
rep2xml
|
||||
test program for the fprepos unit.
|
||||
reptest
|
||||
@ -63,19 +63,19 @@ pkgsynapse
|
||||
a downloader based on Synapse. Do not put in makefile, as Synapse is
|
||||
not distributed by default with FPC.
|
||||
pkglibcurl
|
||||
a downloader based on LibCurl (plain C library).
|
||||
a downloader based on LibCurl (plain C library).
|
||||
pkgocurl
|
||||
a downloader based on CurlPas (object version). Do not put in makefile,
|
||||
as CurlPas is not distributed with FPC.
|
||||
pkglnet
|
||||
a downloader based on lNet. The library is distributed in "lnet" subdir
|
||||
of fppkg root.
|
||||
|
||||
|
||||
|
||||
Options supported in packager config file:
|
||||
------------------------------------------
|
||||
|
||||
LocalMirrors
|
||||
LocalMirrors
|
||||
Local file with list of mirrors.
|
||||
RemoteMirrors
|
||||
URL with location of remote mirrors file.
|
||||
@ -91,7 +91,21 @@ Compiler
|
||||
Compiler binary to be used
|
||||
OS
|
||||
Default OS
|
||||
CPU
|
||||
CPU
|
||||
Default CPU
|
||||
|
||||
Defaults can be found in pkgropts
|
||||
|
||||
|
||||
Helpfull commands for building packages:
|
||||
----------------------------------------
|
||||
|
||||
* Generate AddInclude lines from an existing PPU file:
|
||||
|
||||
ppudump $1 | awk "/^Source/ { printf(\"AddInclude('%s');\\n\",\$5); }"
|
||||
|
||||
|
||||
* Testing if building a package from archive works:
|
||||
|
||||
fpc fpmake && fpmake archive && fppkg build *.zip
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user