1 # Try to find DocBook XSL stylesheet
2 # Once done, it will define:
4 # DOCBOOKXSL_FOUND - system has the required DocBook XML DTDs
5 # DOCBOOKXSL_DIR - the directory containing the stylesheets
6 # used to process DocBook XML
8 # Copyright (c) 2010, Luigi Toscano, <luigi.toscano@tiscali.it>
10 # Redistribution and use is allowed according to the terms of the BSD license.
11 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
13 set (STYLESHEET_PATH_LIST
14 share/xml/docbook/stylesheet/docbook-xsl
15 share/xml/docbook/xsl-stylesheets
16 share/sgml/docbook/xsl-stylesheets
17 share/xml/docbook/stylesheet/nwalsh/current
18 share/xml/docbook/stylesheet/nwalsh
23 find_path (DOCBOOKXSL_DIR lib/lib.xsl
24 PATHS ${CMAKE_SYSTEM_PREFIX_PATH}
25 PATH_SUFFIXES ${STYLESHEET_PATH_LIST}
28 if (NOT DOCBOOKXSL_DIR)
29 # hacks for systems that put the version in the stylesheet dirs
30 set (STYLESHEET_PATH_LIST)
31 foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH})
32 file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER}
33 ${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-*
35 if (STYLESHEET_SUFFIX_ITER)
36 list (APPEND STYLESHEET_PATH_LIST ${STYLESHEET_SUFFIX_ITER})
40 find_path (DOCBOOKXSL_DIR VERSION
41 PATHS ${CMAKE_SYSTEM_PREFIX_PATH}
42 PATH_SUFFIXES ${STYLESHEET_PATH_LIST}
44 endif (NOT DOCBOOKXSL_DIR)
47 include(FindPackageHandleStandardArgs)
48 find_package_handle_standard_args (DocBookXSL
49 "Could NOT find DocBook XSL stylesheets"
52 mark_as_advanced (DOCBOOKXSL_DIR)