On 12/21/2012 02:52 AM, Daniel P. Berrange wrote:
On Thu, Dec 20, 2012 at 11:57:37AM -0700, Eric Blake wrote:
> [trimming libvirt-announce from cc]
>
> On 12/19/2012 04:03 PM, Jason Helfman wrote:
>> I will be committing this to the FreeBSD portstree this week. One item that
>> has held this up for me was repeated build failures.
>>
>> In looking through the code, I found out that perl was introduced as a
>> build dependency, but I didn't see this noted anywhere in the notes or the
>> spec files.
>
> Perl has been a bootstrap requirement when building from git for some
> time now, although we have tried to keep away from making it a build
> requirement. Therefore, this looks like a regression, for not
> gracefully building the package from a tarball without perl present.
> What was the exact failure you hit, so we can correct that? Basically,
> any file that requires perl should be pre-built as part of 'make dist',
> so that building a tarball will not need perl. Likewise, any place
> where 'make check' runs a perl-based test, those tests should gracefully
> be skipped if perl is not present.
We've required perl for 'make check' since 0.9.13 (check-symfile.pl,
and now also check-symsorting.pl). We've also required perl for 'make'
if dtrace is enabled (dtrace2systemtap.pl).
IMHO, requiring perl is absolutely fine. It is probably the most ported /
portable piece of software out there - even more so than gcc / python,
not to mention all the other libraries we already depend on.
If that's the approach we want to take, then let's update configure to
hard-fail if perl is not found, and update the spec files to call it out
as a BuildRequires to make it obvious that it is intended to be used.
I'm okay with requiring perl for libvirt (libvirt is a complex enough
piece of software that we can assume it will only be run on platforms
where perl exists); and it is not in the same category as stuff like
coreutils (which must NOT depend on perl, at least not without making
life harder for Linux-from-scratch people bootstrapping a system from
ground up via tarballs).
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org