On Wed, 8 Nov 1995, Ian Jackson wrote:

> Nils, in that case, could you add a `Source: web2c' field to their
> control files ?
Done. Will make it's way to debian next upload (I always takes three hours
to rebuild everything, and that needs to be done because of the context 
diffs).

The need to recompile the whole source if only the control file or the 
pre/postinst scripts change is a major design flaw of the package 
building system.

What I do here for all my packages is a standardized debian.rules
that takes all it's information from the debian.control files and
requires to add the right debian.{pre|post}{inst|rm} scripts, 
debian.copyrights and a debian.Makefile.

The latter is used by debian.rules and has to supply the target all, 
install and clean, responsible for
a) building the binaries
 This is almost the same as the supplied makefile would do, only e.g. 
supplying some CFLAGS, calling xmkmf or configure before,...
b) install all required files
 This is the same as the install target of the original Makefile does,
however the target directory is not / as usual but $(root) 
(set do / by default but to `pwd`/debian-tmp by debian.rules) because dpkg
needs to make a package from it. 
c) making clean
 Delete all files generated mechanically during a).

This way all debian specific handling is in a fixed debian.rules and all 
package specific things are in the other debian.* files.

If we could agree on this scheme, we could also agree to distribute
a) the generated .deb file
b) the original source
c) the context diff showing only modifications made to the source
d) the debian.* files
it would be much easier to fix control and installation specific things.
And there had already been suggestions to distribute the original source 
and the patches to the original. Not that this matters much, but the 
essence of my proposal is to exclude the debian.* files from the patch 
and supply them separately.


Nils

Reply via email to