diff options
author | P. J. McDermott <pjm@nac.net> | 2012-01-16 04:39:07 (EST) |
---|---|---|
committer | P. J. McDermott <pjm@nac.net> | 2012-01-16 04:39:07 (EST) |
commit | 6de97c9cf2cd7291e84aef592dc7bb9ea001056b (patch) | |
tree | 8e039c53a0316dd67738bf6c9198e01dac963f97 | |
parent | 9e39862519bcefd4e3b82123cebfa22c8ada6083 (diff) |
Update source package format specification.
The multiple/split binary package problem is solved by proposals 2 and 3
and by making the 'build' file a makefile.
I can't make proposal 1 (with a separate 'build' file for each binary
package) work in an intuitive way.
-rw-r--r-- | source-package-format-1.0.txt | 46 |
1 files changed, 9 insertions, 37 deletions
diff --git a/source-package-format-1.0.txt b/source-package-format-1.0.txt index 25c546e..0903b05 100644 --- a/source-package-format-1.0.txt +++ b/source-package-format-1.0.txt @@ -23,9 +23,7 @@ to change. Comments and revisions are welcome. TODO ---- - - Decide on build system format (shell scripts or make files). - - Determine how split packages (e.g. *-dev, *-dbg, libgcc, and g++) will be - built. + - Design a way to support package configurations. BACKGROUND @@ -54,41 +52,14 @@ DIRECTORY STRUCTURE PROPOSAL 1 ---------- -This structure easily supports building multiple independent binary packages -from one source package but does not support building split binary packages. - -<pkgname>_<pkgver>-<pkgrev>/ - +- <binpkg>.pkg/ - | +- build - | | A script to build the binary package. - | +- control - | | Metadata about the binary package. - | +- install - | | A script to install the binary package. - | +- postinst - | +- postrm - | +- preinst - | \- prerm - +- control - | Metadata about the source package. - +- format - | A magic file to identify the source format version. Should simply contain - | the string "1.0". - +- patches/ - | Patches to be applied to package sources before building. - +- <pkgname>_<pkgver>.<ext> - | Upstream source archive (for non-native packages). - \- src/ - Package sources (for native packages). - -'build' in the binary package directory might be changed to a dpkg-style make -file with targets for building and installing. +This directory structure proposal has been declared defunct and removed from +this document. PROPOSAL 2 ---------- -This structure supports building split binary packages but does not easily -support building multiple independent binary packages from one source package. +In this structure, all source and binary packaging files are kept in the same +directory. Note that this directory structure is very functionally similar to that of Debian's source package formats. @@ -101,7 +72,7 @@ Debian's source package formats. +- <binpkg>.preinst +- <binpkg>.prerm +- build - | A script to build the binary package(s). + | A makefile with target rules to build the binary package(s). +- control | Metadata about the source and binary packages. +- format @@ -125,13 +96,14 @@ and metadata related to binary packages are organized into directories. | +- control | | Metadata about the binary package. | +- install - | | A list of patterns to match files to be installed in the binary package. + | | A list of patterns to match files to be installed in the binary + | | package. | +- postinst | +- postrm | +- preinst | \- prerm +- build - | A script to build the binary package(s). + | A makefile with target rules to build the binary package(s). +- control | Metadata about the source package. +- format |