Re: Bug#946655: dh_perl: why is ${perl:Depends} substituted as perl:any for programs only?
Hi Niels,
On Tue, Dec 24, 2019 at 10:15:00AM +0000, Niels Thykier wrote:
> > I think the check in dh_perl line 142 should be changed from
> >
> > perlarch .= ':any' if $deps == PROGRAM and not $dh{V_FLAG_SET};
> >
> > to
> >
> > perlarch .= ':any' if $deps & (PROGRAM|PM_MODULE) != 0 and not $dh{V_FLAG_SET};
> >
> > Helmut
> >
>
> Wouldn't that be:
You're correct that my version is wrong. It simply checks whether there
is a program or module involved, but it should be checking whether there
is something other than a program or module involved.
> perlarch .= ':any' if ($deps & (~(PROGRAM|PM_MODULE))) == $deps \
> and not $dh{V_FLAG_SET};
>
As you figured, this is also wrong. You should be checking == 0 rather
than == $deps here to exclude extensions.
> If $deps contains any of XS_MODULE or ARCHDEP_MODULE, then I presume we
> should use "perl" rather than "perl:any" - even if there is a perl
> script/perl module.
Yeah, I think we have consensus on "use perl:any if there are only
PM_MODULE or PROGRAM involved".
Helmut
Reply to: