File: CheckDTD.cmake

package info (click to toggle)
plplot 5.15.0%2Bdfsg-19
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 31,312 kB
  • sloc: ansic: 79,707; xml: 28,583; cpp: 20,033; ada: 19,456; tcl: 12,081; f90: 11,431; ml: 7,276; java: 6,863; python: 6,792; sh: 3,274; perl: 828; lisp: 75; makefile: 50; sed: 34; fortran: 5
file content (40 lines) | stat: -rw-r--r-- 1,447 bytes parent folder | download | duplicates (4)
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
38
39
40
macro(CheckDTD VARIABLE title docbookb_ss_dtd style_spec_use
	external_specification docbook_dtd jade_output_type
	origin_package)
  if(NOT DEFINED ${VARIABLE})
    set(CONFTEST "testdtd")
    file(WRITE ${CMAKE_BINARY_DIR}/${CONFTEST}.dsl
    "<!DOCTYPE style-sheet PUBLIC \"${DSSSL_DTD_PUBID}\" ${docbookb_ss_dtd}>
    <style-sheet>
    <style-specification ${style_spec_use}>
    <style-specification-body>
    (define %root-filename% \"${CONFTEST}\")
    </style-specification-body>
    </style-specification>
    ${external_specification}
    </style-sheet>"
    )
    file(WRITE ${CMAKE_BINARY_DIR}/${CONFTEST}.xml
    "<?xml version=\"1.0\"?>
    <!DOCTYPE book ${docbook_dtd}>
    <book> </book>"
    )
    execute_process(
    COMMAND ${OPENJADE} ${SGML_CATALOGS}
    -d ${CMAKE_BINARY_DIR}/${CONFTEST}.dsl
    -t ${jade_output_type}
    -o ${CMAKE_BINARY_DIR}/${CONFTEST}.out
    ${XML_DECL} ${CMAKE_BINARY_DIR}/${CONFTEST}.xml
    OUTPUT_FILE "${JADELOG}.x"
    ERROR_FILE "${JADELOG}.x"
    )
    file(READ "${CMAKE_BINARY_DIR}/${JADELOG}.x" RESULT)
    if("${RESULT}" MATCHES ":E:")
      set(${VARIABLE} OFF CACHE BOOL "Checking for ${title}" FORCE)
      message(STATUS "WARNING: ${title} not found")
    else("${RESULT}" MATCHES ":E:")
      set(${VARIABLE} ON CACHE BOOL "Checking for ${title}" FORCE)
      message(STATUS "${title} found")
    endif("${RESULT}" MATCHES ":E:")
  endif(NOT DEFINED ${VARIABLE})
endmacro(CheckDTD)