diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/FindDocBookXML.cmake | 30 | ||||
-rw-r--r-- | modules/FindDocBookXSL.cmake | 28 |
2 files changed, 38 insertions, 20 deletions
diff --git a/modules/FindDocBookXML.cmake b/modules/FindDocBookXML.cmake index 51001877..b28f5b1a 100644 --- a/modules/FindDocBookXML.cmake +++ b/modules/FindDocBookXML.cmake @@ -27,22 +27,30 @@ set (DTD_PATH_LIST share/xml/docbook/${DOCBOOKXML_CURRENTDTD_VERSION} ) -# hacks for systems that use the package version in the DTD dirs, -# e.g. Fedora, OpenSolaris -foreach (DTD_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) - file(GLOB DTD_SUFFIX_ITER RELATIVE ${DTD_PREFIX_ITER} - ${DTD_PREFIX_ITER}/share/sgml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION}-* - ) - if (DTD_SUFFIX_ITER) - list (APPEND DTD_PATH_LIST ${DTD_SUFFIX_ITER}) - endif () -endforeach () - find_path (DOCBOOKXML_CURRENTDTD_DIR docbookx.dtd PATHS ${CMAKE_SYSTEM_PREFIX_PATH} PATH_SUFFIXES ${DTD_PATH_LIST} ) +if (NOT DOCBOOKXML_CURRENTDTD_DIR) + # hacks for systems that use the package version in the DTD dirs, + # e.g. Fedora, OpenSolaris + set (DTD_PATH_LIST) + foreach (DTD_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) + file(GLOB DTD_SUFFIX_ITER RELATIVE ${DTD_PREFIX_ITER} + ${DTD_PREFIX_ITER}/share/sgml/docbook/xml-dtd-${DOCBOOKXML_CURRENTDTD_VERSION}-* + ) + if (DTD_SUFFIX_ITER) + list (APPEND DTD_PATH_LIST ${DTD_SUFFIX_ITER}) + endif () + endforeach () + + find_path (DOCBOOKXML_CURRENTDTD_DIR docbookx.dtd + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + PATH_SUFFIXES ${DTD_PATH_LIST} + ) +endif (NOT DOCBOOKXML_CURRENTDTD_DIR) + #set (DOCBOOKXML_OLDDTD_DIR ${DOCBOOKXML_CURRENTDTD_DIR}) #set (DOCBOOKXML_OLDDTD_VERSION "4.1.2") #set (DTD_PATH_LIST) diff --git a/modules/FindDocBookXSL.cmake b/modules/FindDocBookXSL.cmake index c84f2888..7c1f3ff3 100644 --- a/modules/FindDocBookXSL.cmake +++ b/modules/FindDocBookXSL.cmake @@ -16,20 +16,30 @@ set (STYLESHEET_PATH_LIST share/xml/docbook/stylesheet/nwalsh/current ) -foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) - file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER} - ${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-* - ) - if (STYLESHEET_SUFFIX_ITER) - list (APPEND STYLESHEET_PATH_LIST ${STYLESHEET_SUFFIX_ITER}) - endif () -endforeach () - find_path (DOCBOOKXSL_DIR VERSION PATHS ${CMAKE_SYSTEM_PREFIX_PATH} PATH_SUFFIXES ${STYLESHEET_PATH_LIST} ) +if (NOT DOCBOOKXSL_DIR) + # hacks for systems that put the version in the stylesheet dirs + set (STYLESHEET_PATH_LIST) + foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH}) + file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER} + ${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-* + ) + if (STYLESHEET_SUFFIX_ITER) + list (APPEND STYLESHEET_PATH_LIST ${STYLESHEET_SUFFIX_ITER}) + endif () + endforeach () + + find_path (DOCBOOKXSL_DIR VERSION + PATHS ${CMAKE_SYSTEM_PREFIX_PATH} + PATH_SUFFIXES ${STYLESHEET_PATH_LIST} + ) +endif (NOT DOCBOOKXSL_DIR) + + include(FindPackageHandleStandardArgs) find_package_handle_standard_args (DocBookXSL "Could NOT find DocBook XSL stylesheets" |