aboutsummaryrefslogtreecommitdiff
path: root/modules/FindDocBookXSL.cmake
blob: 60ce2e70d53533858443157adc0a46c04bec25c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Try to find DocBook XSL stylesheet
# Once done, it will define:
#
#  DOCBOOKXSL_FOUND - system has the required DocBook XML DTDs
#  DOCBOOKXSL_DIR - the directory containing the stylesheets
#  used to process DocBook XML
#
# Copyright (c) 2010, Luigi Toscano, <luigi.toscano@tiscali.it>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.

set (STYLESHEET_PATH_LIST
    share/xml/docbook/stylesheet/docbook-xsl
    share/sgml/docbook/xsl-stylesheets
    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}
)

find_package_handle_standard_args (DocBookXSL
                                   "Could NOT find DocBook XSL stylesheets"
                                   DOCBOOKXSL_DIR)

mark_as_advanced (DOCBOOKXSL_DIR)