Version: 4.5 (using KDE 4.5.0) OS: Linux When searching for docbook DTDs, FindDocBookXML looks for v4.2 DTDs only, but not for DTDs with version >= 4.2. This causes build failures on systems that have the latest (v4.5) DTDs installed. Reproducible: Always Steps to Reproduce: Configure kdelibs on system which has Docbook DTDs v4.5 installed, say, in /usr/share/xml/docbook/xml-dtd-4.5/ . Actual Results: Configuring kdelibs fails and complains about missing docbook DTDs. Expected Results: FindDocBookXML should search for docbooks DTDs v4.2 or later, not v4.2 only.
Hi, unfortunately our documentation is based on Docbook XML DTD v4.2 (see kdelibs/kdoctools/customization/dtd/kdex.dtd.cmake ). You are thus required to use that version. Docbook generation *could* work with other versions but it is not currently supported. Converting the actual documentation to 4.5 is not planned at the moment, but even after the conversion we should support also 4.2 for legacy documentation at least during the lifetime of KDE Platform 4.x. I'm closing the bug as INVALID.
> Docbook generation *could* work with other versions And it indeed *works* -- i made a symlink xml-dtd-4.2 pointing to xml-dtd-4.5 and KDE build succeeded and produced usable help pages. I think that one of these must be done: 1. Check that 4.5 DTDs are if fact supported and teach FindDocBookXML to look for version 4.2 or more recent. 2. Add an explicit notice to kdoctools/CMakeLists.txt that it requires an outdated version of DocBook DTDs (and, probably, a hint that one can at his own risk trick FindDocBookXML into thinking that 4.2 DTDs are installed).
As I wrote before, Docbook XML DTDs 4.2 is a requirement. They are provided by almost all distributions, and if not it's only a matter of downloading and decompressing a zip file. Even if we migrate to 4.5 (and it's something that require testing), 4.2 will stay as a dependency during the lifetime of KDE Platform 4.x. If you want to use any other recent version, you are free to do so and manually change the requirement, but it is officially unsupported.