[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20180821151639.GA4343@magnolia>
Date: Tue, 21 Aug 2018 08:16:39 -0700
From: "Darrick J. Wong" <darrick.wong@...cle.com>
To: "Theodore Y. Ts'o" <tytso@....edu>
Cc: Eric Biggers <ebiggers@...nel.org>, linux-ext4@...r.kernel.org
Subject: Re: [PATCH 2/4] e2scrub: create online fsck tool of sorts
On Tue, Aug 21, 2018 at 12:15:51AM -0400, Theodore Y. Ts'o wrote:
> On Mon, Aug 20, 2018 at 02:53:40PM -0700, Darrick J. Wong wrote:
> > > I'm getting an error here, in the "installdirs-udev" target, when trying to
> > > build the latest e2fsprogs (commit 6ac81e4526a4e1) into a Debian package:
> >
> > Uhhhh... what happened here??
> >
> > ...it looks like e2scrub got pulled into 1.44.4. Ross Burton submitted
> > a patch (in 2014) to remove MKINSTALLDIRS in favor of MKDIR_P; this
> > patch has also been pulled into 1.44.4. Mr. Burton's patch did not
> > convert the scrub/ directory (since it did not exist four years ago)
> > which AFAICT is why the build doesn't work. :/
> >
> > I was not expecting any of the e2scrub stuff to appear until 1.45.
>
> Not quite. I added the cleanup patch the maint branch (from which
> 1.44.4 was released).
>
> The maint branch then got merged into the next/master branches (which
> is where e2scrub was). Eric is probably testing e2fsprogs on the
> master branch, and I hadn't noticed this issue because I had been
> focused on building e2fsprogs on the maint branch.
Ah, yes, sorry. I was looking at gitweb, which didn't make it obvious
enough that the e2scrub patches had branched off from a common ancestor
before being merged back together. (Granted, it does actually /say/
"Merge branch maint into next", but alas the one thing I really really
can't do well right now is read ledger lines. :/)
(That said, I think the MKINSTALLDIRS -> MKDIR_P conversion still needs
to be done for e2scrub?)
((Stepping back before I say any more foolish stuff.))
--D
>
> - Ted
>
> P.S. BTW, you can now do a completely reproducible debian build the
> way I build my debian packages using git-buildpackage:
>
> gbp pull https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
> gbp buildpackage
>
> I'm doing my builds using a minimal sbuild chroot (which is what the
> Debian auto-builders are using). Setup instructions are here, and
> it's pretty easy to set up:
>
> https://wiki.debian.org/sbuild
>
> I have in ~/.sbuildrc:
>
> $build_arch_all = 1;
> $distribution = 'unstable';
> $source_only_changes = 1;
>
> ... and in ~/.gbp.conf:
>
> [buildpackage]
> builder = sbuild
> export-dir = /tmp/gbp
>
> [tag]
> sign-tags = True
>
> The bits of the gbp configuration which is not build-environment
> specific can be found in debian/gbp.conf in the e2fsprogs sources.
> The debian packaging specific bits (for which there are none for now)
> are in debian/master, and the delta file to reconstruct a bit-for-bit
> e2fsprogs_1.44.4.orig.tar.gz file is in the pristine-tar branch.
>
> I timed "gbp buildpackage" and although I cheated a little because I
> have ccache installed, the total build time was only 65 seconds. So
> that's basically the maximum overhead of setting up the build schroot
> session, doing an apt-get install of the e2fsprogs specific build
> packages (cached using apt-cacher-ng), the dpkg-buildpackage (cached
> using ccache), doing an apt-get install of lintian and its
> dependencies, and then running lintian on the output.
>
> Or, of course, if you don't care about hermetic builds and if you
> don't care about build a source .deb and .changes file suitable for
> uploading to a debian archive, you can just checkout the maint branch,
> apply your patches, and then just run "dpkg-buildpackage -us -uc -b". :-)
>
Powered by blists - more mailing lists