[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: `make distcheck'



On Sun, 9 Mar 2008 11:37:28 +0000
Ian Jackson <ian@davenant.greenend.org.uk> wrote:

> While preparing 1.15.0, I tripped over `make distcheck' failing.
> 
> The purpose of make dist is to be to be able to make a fresh tarball
> from a dirty source tree.  However, we can already do that easily
> because we have a revision control system.  So asking `make dist' to
> work means that we have to manually add new files in one more place,
> but without any useful benefit.

make distcheck does have a very useful benefit to those who want to
rebuild or cross build dpkg on other systems, IMHO.

See
http://www.linux.codehelp.co.uk/serendipity/index.php?/archives/89-Reflections-on-autotools-and-make-distcheck.html

The fact that make distcheck fails should indicate that the autotools
build system in dpkg is currently badly broken and that the current
version would be expected to FTBFS when ported to other environments and
situations - like cross building.

Please do not throw out the baby (portability) with the bath water
(RCS noise).

If your RCS build system causes file duplication then I would suggest
that it is the RCS that is borked, not make distcheck. Packaging dpkg
*without* certain files that 'make distcheck' would require will hinder
any efforts to rebuild dpkg.

I have quite enough problems with not enough upstream teams ensuring
that 'make distcheck' always works without dpkg adding to my woes.

Please fix the RCS so that 'make distcheck' becomes an essential test
of any tarball to be distributed.

It may not be perfect but 'make distcheck' is currently the best
portability check available for autotools packages and plenty of people
rely on rebuilding dpkg for specialized environments.

> I therefore built 1.15.0 with the following process, adapted from the
> release process in Teams/Dpkg/GitUsage:
>   * Finalise changelogs and commit
>   * git-tag
>   * autoreconf -f -i
>   * dpkg-buildpackage -us -uc -S -rfakeroot
>   * pbuilder --build dpkg_1.15.0.dsc
> 
> I suggest we change the wiki accordingly and cease to maintain `make
> dist' (ie, the corresponding variables in the various Makefile.am's).

Please do not do that. 'make distcheck' is an invaluable component of a
portable, rigorous and self-consistent distributed tarball.

If 'make distcheck' is abandoned, there will simply be no guarantee
that dpkg will ever build *except* within the limited environment of a
Debian buildd.

-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/

Attachment: pgpmWypKzUGjX.pgp
Description: PGP signature


Reply to: