On Wed, Feb 06, 2013 at 06:28:10AM +0000, Nathan Scott wrote:
> 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?
It has... with a combo of git archive --prefix and tar --transform. I'll see
what I can do to get 'make deb' going again.
Thanks,
Ben
|