Bug 1006522

Summary: Without the xhtml1-dtds pkg, installing from a git checkout fails without mentioning it
Product: [Community] Virtualization Tools Reporter: Jonathan Lebon <jlebon>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED CANTFIX QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: actionmystique, ashu.noella207, eblake, gscrivan, mprivozn, rbalakri
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-04-01 11:01:26 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jonathan Lebon 2013-09-10 18:30:31 UTC
Description of problem:

If the xhtml1-dtds package is not installed, doing 'sudo make install' in a git checkout of libvirt will fail with many errors like this:

<snip>
I/O error : Attempt to load network entity http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
../docs/sitemap.html.in:2: warning: failed to load external entity "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
                                                                               ^
missing XHTML1 DTD
<snip>
/usr/bin/install: cannot stat './sitemap.html': No such file or directory
<snip>

It would be nice if it could actually print out something like (in the style of configure):

error: You must install the xhtml1-dtds package to install libvirt

I know this is low priority, but it would be a helpful hint for first-time builders who may not have all the necessary packages installed.

Comment 1 Giuseppe Scrivano 2014-06-16 14:08:00 UTC
on Fedora "yum-builddep libvirt.spec" should be enough to install the needed packages

Comment 2 Noella 2015-04-01 10:41:59 UTC
Hello,

Which files handle the checks for required dependencies to install? I was thinking ./configure and ./autogen.sh ? Are these the files I should be looking at to insert conditions for the xhtml1-dtds package checks? 

Thanks,
Noella

Comment 3 Michal Privoznik 2015-04-01 11:01:26 UTC
(In reply to Giuseppe Scrivano from comment #1)
> on Fedora "yum-builddep libvirt.spec" should be enough to install the needed
> packages

In fact, that's enough when building from a .tar.gz which contains some already generated files (like documentation). But when building from a git there are some other tools needed to generate those files. So building from git requires some additional tools. Unfortunately, I don't think there's something we can do here. I mean, it would be nice if we just add those tools as BuildRequires into libvirt.spec, so yum-builddep would do the trich. However, that has not met with agreement upstream:

https://www.redhat.com/archives/libvir-list/2014-December/msg00083.html

Comment 4 Eric Blake 2015-04-01 13:02:40 UTC
Ideally, we should find a way for bootstrap.conf to list a bootstrap hard requirement on xhtml1-dtds, the way we have a hard requirement on automake, libtoolize, perl::XML::XPath, and other tools required during git builds but not a tarball build.  But I agree that yum-builddep, and therefore a BuildRequires in the spec file, is the wrong tool (a tarball is not the same as a git build).

Comment 5 Michal Privoznik 2015-04-01 14:26:18 UTC
(In reply to Eric Blake from comment #4)
> But I agree that yum-builddep, and therefore a
> BuildRequires in the spec file, is the wrong tool (a tarball is not the same
> as a git build).

Yes and no. I don't think I see a reason why our BuildRequires should not be more extensive. I mean, it does not hurt anything, it merely installs a few more packages. But then again, not everybody uses yum-builddep and the amount of packages is not that extensive. But I accept upstream decision.

Comment 6 Peter Krempa 2016-06-06 11:01:30 UTC
*** Bug 1342981 has been marked as a duplicate of this bug. ***