Hi!
On Tue, 2017-10-17 at 16:31:05 +0100, James Clarke wrote:
> On Tue, Oct 17, 2017 at 06:03:20PM +0300, Adrian Bunk wrote:
> > Package: dpkg-dev
> > Version: 1.19.0.1
> > Severity: serious
> >
> > 14:39 < _rene_> hmm. dpkg-dev 1.19.0.1 broken for anyone else? looks like
> > it doesn't call build(-arch,indep) anymore at
> > dpkg-buildpackage -b, but just binary?
> >
> > I seen the same debugging a FTBFS.
>
> I believe this is caused by [0]:
>
> [16:26:57] <jrtc27> my understanding is that rules_requires_root is going
> to be returning 0 for the build-* targets
> [16:27:06] <helmut> jrtc27: clearly the default tries to be binary-targets
> which would preserve the original behaviour
> [16:27:19] <jrtc27> since $rules_requires_root{'binary-targets'} will be
> set, but $target_legacy_root{'build'} will be false
> [16:27:33] <helmut> aha
> [16:28:17] <jrtc27> so I think the two instances of
> rules_requires_root($buildtarget) should be rules_requires_root($binarytarget)
> [16:28:33] <helmut> jrtc27: thank you. so it should say "return if not
> any_target_requires_root;" in build_target_fallback
> [16:28:43] <helmut> or that
> [16:28:53] <jrtc27> rules_requires_root('build') is correct to return 0
> [16:28:58] <jrtc27> build doesn't need root :P
> [16:29:08] <helmut> no package building today I guess
Right, thanks for the analisys! I've fixed this locally now, and will
be included in 1.19.0.2.
Although, I've to say, the Severity looks a bit unfair (while practically
correct), because any package that gets broken due to build rules not
being called is violating several Debian policy MUSTS anyway.
I'll open a discussion on d-d later today.
Thanks,
Guillem