summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--source-package-format-1.0.txt66
1 files changed, 66 insertions, 0 deletions
diff --git a/source-package-format-1.0.txt b/source-package-format-1.0.txt
index 0d2f38b..bda0ee0 100644
--- a/source-package-format-1.0.txt
+++ b/source-package-format-1.0.txt
@@ -51,6 +51,12 @@ from Debian's source package formats.
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
@@ -81,6 +87,66 @@ of Debian packages.
'build' and 'install' in the binary package directory might be combined into a
dpkg-style make file with targets for building and installing.
+PROPOSAL 2
+----------
+
+This structure supports building split binary packages but does not easily
+support building multiple independent binary packages from one source package.
+
+Note that this directory structure is very functionally similar to that of
+Debian's source package formats.
+
+<pkgname>_<pkgver>-<pkgrev>/
+ +- <binpkg>.install
+ | A list of patterns to match files to be installed in a binary package.
+ +- <binpkg>.postinst
+ +- <binpkg>.postrm
+ +- <binpkg>.preinst
+ +- <binpkg>.prerm
+ +- build
+ | A script to build the binary package(s).
+ +- control
+ | Metadata about the source and binary packages.
+ +- 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).
+
+PROPOSAL 3
+----------
+
+This structure is functionally equivalent to that of proposal 2, however, files
+and metadata related to binary packages are organized into directories.
+
+<pkgname>_<pkgver>-<pkgrev>/
+ +- <binpkg>.pkg/
+ | +- control
+ | | Metadata about the binary package.
+ | +- install
+ | | 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).
+ +- 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).
+
BINARY PACKAGE METADATA
=======================