|
@@ -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
|
|
|
+
|