DocBook XML & XSL: new dependencies
Alexander Neundorf
neundorf at kde.org
Wed May 26 19:03:39 CEST 2010
On Wednesday 26 May 2010, Luigi Toscano wrote:
> Alexander Neundorf wrote:
> > Ok, stupid question.
> > Now I actually tried to build kdelibs again, and it failed because the
> > docbook stuff wasn't found.
> > The given link in the error message is http://docbook.org/schemas/4x.html
> > So, what should I download from there ?
>
> It's not so easy from that link, I changed the URL to something more
> useful.
Ok.
About FindDocBookXSL.cmake:
it looks a bit unspecific to me to search for a file named "VERSION". Can we
search for another, more specific file ?
Maybe lib/lib.xsl ?
About FindDocBookXML.cmake:
Right now only version 4.2 works for KDE ?
Is there a reason why the variables have this "CURRENT" part in their name ?
The find_package() syntax also support specifying a version number:
find_package(DocBookXML 4.2 EXACT)
If this is used, the variables DocBookXML_FIND_VERSION,
DocBookXML_FIND_VERSION_MAJOR, DocBookXML_FIND_VERSION_MINOR and
DocBookXML_FIND_VERSION_EXACT will be set.
Would you mind changing the
set (DOCBOOKXML_CURRENTDTD_VERSION "4.2"
CACHE INTERNAL "Required version of XML DTDs")
to something like
if(NOT DocBookXML_FIND_VERSION)
set(DocBookXML_FIND_VERSION_MAJOR 4)
set(DocBookXML_FIND_VERSION_MINOR 2)
set(DocBookXML_FIND_VERSION_EXACT TRUE)
endif(NOT DocBookXML_FIND_VERSION)
set(DOCBOOKXML_DTD_VERSION
"${DocBookXML_FIND_VERSION_MAJOR}.${DocBookXML_FIND_VERSION_MINOR}")
?
This way, if no version has been specified in the find_package() call, it will
be set to exactly 4.2, otherwise to what has been specified.
Also, why do you put DOCBOOKXML_CURRENTDTD_VERSION in the cache ? And why
as "INTERNAL" ?
Alex
More information about the Kde-buildsystem
mailing list