Re: [PATCH 0/4] Refactor release scripts to conform to using git archive

Nathan Scott
2013-02-06T06:29:55Z

Dave Chinner <david <at> fromorbit.com> writes:

>
> It breaks the 'make deb' command for all the trees.
>

(thanks for checking!)

> The debian package build creates a link tree so that it builds
> outside the main source tree (e.g. in ./xfsprogs-3.1.10) and as part
> of the build it runs 'make dist' to build a tarball from that link
> tree. That now fails with:
>
> fatal: current working directory is untracked
>
> coming from the git archive command that is now used to build the
> tarball.
>
> Nathan, can the debian package build use git-archive? I'm under the
> impression that you have to be able to build debian packages from a
> source tarball or a source package, and so the build can't rely on
> being inside a VCS controlled tree. That rules out using git archive
> for tarball creation...
>

IIRC, the requirement is to be building in a tree that had a basename
of for <package>-<version> - hence the link'd tree build previously.
If that can be maintained somehow, the build should be fine. Symlinks
did not work very well (IIRC) - the build tools might've used basename
or realpath or something like that, but I do remember trying that.

> Also, given that the previous tarball creation used the same link
> tree build as the debian package build (i.e. make source-link), that
> implies the debian pacakges are going to be missing files using this
> technique. Doesn't that mean we have to fix the file list being fed
> into the source-link target regardless of whether we use git archive
> to build the tarball?

The source tarball definitely needs to have the package-version prefix
for all the files it contains - has a mechanism to acheive that been
found?

cheers.

--
Nathan