diff options
author | P. J. McDermott <pjm@nac.net> | 2012-02-03 07:50:56 (EST) |
---|---|---|
committer | P. J. McDermott <pjm@nac.net> | 2012-02-03 07:50:56 (EST) |
commit | 93fd0ee59af31fc67696e878b0bf51220a6b43a7 (patch) | |
tree | 3e9b4dc481d31e1e7e73125a3455a7c453202699 | |
parent | 95c7b9e37defeb004388fdf49a3af63070bb6dbe (diff) |
Document unnecessary platform architecture builds.
-rw-r--r-- | TODO | 18 |
1 files changed, 18 insertions, 0 deletions
@@ -8,6 +8,7 @@ Future Plans: * Compress documentation files. [3] * Write an 'opkcreate' script like dh_make to create a new source package. * Control field variables/macros (e.g. package version) + * Build platform-specific binary packages only when really necessary. [4] Notes: 1: Requires opkg to be built with GnuPG and GPGME. @@ -22,3 +23,20 @@ Notes: For now, we'll omit this field (as a result, opkg simply won't make sure there is enough free space). 3: Follow the model of debhelper's dh_compress. + 4: Currently, if a source package contains a file named 'config', all of its + binary packages are built for the target platform architecture. For + example, the 'opkg' source package installs platform configuration for the + 'opkg' binary package; as a result, even 'libopkg.1' and 'libopkg.1-dbg' + (though not 'libopkg.1-dev', which is built for the "all" architecture) are + built for the target platform architecture. This problem is minor, since it + will only bloat package archives with functionally identical binary packages + and will not affect managed systems. + A solution to this issue is to separate build-time and run-time + configuration files into different lists in the source package format. + Build-time configuration files would be listed in a file named 'config' in + the package root (as they are now), and run-time configuration files would + be listed in 'config' files in binary package metadata directories (e.g. + 'opkg.pkg/config' in the case of 'opkg'). Then, opkhelper will build each + binary package for the target platform only if there are build-time + configuration files for the source package or there are run-time + configuration files for the binary package. |