summaryrefslogtreecommitdiffstats
path: root/specs/spf-2.0/fields.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'specs/spf-2.0/fields.mdwn')
-rw-r--r--specs/spf-2.0/fields.mdwn69
1 files changed, 69 insertions, 0 deletions
diff --git a/specs/spf-2.0/fields.mdwn b/specs/spf-2.0/fields.mdwn
index e50c2b4..c28db8d 100644
--- a/specs/spf-2.0/fields.mdwn
+++ b/specs/spf-2.0/fields.mdwn
@@ -12,6 +12,8 @@ The fields in the source package metadata are:
A list of packages that must be installed before the package can be built.
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
Variable substitutions are performed on the value of this field.
* `Homepage` (optional)
@@ -58,6 +60,53 @@ The fields in the binary package metadata are:
least some of the provided files are only usable on systems of the named
platform(s).
+ * `Section` (optional, may be required in a future version of this Source
+ Package Format)
+
+ The name of the section in the package archive into which this package is to
+ be installed. Packages with a `Section` field must provide only files
+ related to the specified section. The value may be any one of the
+ following:
+
+ - The string `boot` for packages containing only boot loaders, kernel
+ images, and device firmware;
+ - The string `dbg` for architecture-dependent packages containing only
+ debugging symbols;
+ - The string `dev` for platform-independent packages containing only
+ utilities used to build other packages, such as distribution package build
+ utilities, compilers, and utilities that configure compiler and linker
+ flags;
+ - The string `doc` for architecture-independent platform-independent
+ packages containing only manual pages and other upstream documentation
+ files;
+ - The string `lib` for architecture-dependent packages containing only
+ shared libraries and object files;
+ - The string `libdev` for architecture-dependent packages containing only
+ header files, unversioned library symbolic links used when linking, and
+ configuration files and architecture-independent utilities that configure
+ compiler and linker flags;
+ - The string `locale` for architecture-independent platform-independent
+ packages containing only locale files;
+ - The string `share` for architecture-independent packages containing only
+ data; and
+ - The string `util` for packages containing only executable files, such as
+ utilities and binaries run by other programs.
+
+ No packages may declare any relationships (via `Depends`, `Recommends`,
+ etc.) with packages in sections `dbg`, `doc`, or `locale`. Only packages
+ in section `boot` may declare relationships on other packages in the same
+ section. Only binary packages in section `dev` and source packages (via
+ `Build-Depends`) may declare relationships with packages in sections `dev`
+ and `libdev`. These restrictions allow feed lists for sections `boot`,
+ `dbg`, `dev`, `doc`, `libdev`, and `locale` to be excluded from systems that
+ don't need the packages they contain. That is, only sections `lib`,
+ `share`, and `util` are available on all systems, and additionally sections
+ `dev` and `libdev` are available when building packages.
+
+ All packages in section `lib` must allow coinstallation of packages of the
+ same name and different architectures. Specifically, all non-directory
+ files must have architecture-qualified paths.
+
* `Essential` (optional)
A flag to indicate whether the package is essential for the functioning of a
@@ -70,18 +119,26 @@ The fields in the binary package metadata are:
A list of packages that must be installed and configured before the package
may itself be configured.
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
Variable substitutions are performed on the value of this field.
* `Recommends` (optional)
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
Variable substitutions are performed on the value of this field.
* `Suggests` (optional)
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
Variable substitutions are performed on the value of this field.
* `Pre-Depends` (optional)
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
A list of packages that must be installed before the package may itself be
installed.
@@ -89,14 +146,20 @@ The fields in the binary package metadata are:
* `Conflicts` (optional)
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
Variable substitutions are performed on the value of this field.
* `Provides` (optional)
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
Variable substitutions are performed on the value of this field.
* `Replaces` (optional)
+ See $[sectlink][rel-syntax] for the syntax of this field.
+
Variable substitutions are performed on the value of this field.
* `Description` (required)
@@ -106,3 +169,9 @@ The fields in the binary package metadata are:
description.
Variable substitutions are performed on the value of this field.
+
+
+Package Relationship Fields Syntax [rel-syntax]
+===============================================
+
+TODO