summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrikky <rikky@ffa7fe5e-494d-0410-b361-a75ebd5db220>2011-07-06 00:09:02 +0000
committerrikky <rikky@ffa7fe5e-494d-0410-b361-a75ebd5db220>2011-07-06 00:09:02 +0000
commita1b37ced570181b9955a81d100cdded146cc7179 (patch)
treee7dafa8589ee3755438b55830470234808c029f4
parent0e8cd5098133ee3d8687ded0542094fdcf318344 (diff)
downloadnavit-a1b37ced570181b9955a81d100cdded146cc7179.tar.gz
Fix:build/cmake:Test for -snone support of saxon, to support more saxon variants
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@4590 ffa7fe5e-494d-0410-b361-a75ebd5db220
-rw-r--r--CMakeLists.txt12
-rw-r--r--cmake/test.xml3
-rw-r--r--cmake/test.xslt2
-rw-r--r--navit/CMakeLists.txt2
4 files changed, 15 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index db59b63c5..42712580e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -191,7 +191,7 @@ if (QT_FOUND)
set_with_reason(graphics/qt_qpainter "Qt libraries found" TRUE ${QT_LIBRARIES})
if (QTDECLARATIVE_FOUND AND QT_QTXML_FOUND)
- include_directories(${QTDECLARATIVE_INCLUDE_DIRS})
+ include_directories(${QTDECLARATIVE_INCLUDE_DIRS})
set_with_reason(gui/qml "Qt Declarative found" TRUE ${QTDECLARATIVE_LIBRARIES})
endif()
@@ -324,9 +324,15 @@ add_feature(BUILD_MAPTOOL "default" TRUE)
add_feature(XSL_PROCESSING "default" TRUE)
find_program(SAXON NAMES saxon saxon8 saxon-xslt saxonb-xslt)
-if(NOT SAXON)
+if(SAXON)
+ execute_process(COMMAND ${SAXON} -snone ${CMAKE_CURRENT_SOURCE_DIR}/cmake/test.xml ${CMAKE_CURRENT_SOURCE_DIR}/cmake/test.xslt
+ RESULT_VARIABLE SAXON_ERROR)
+ if (NOT SAXON_ERROR)
+ set (SAXON_OPTIONS -snone)
+ endif()
+else()
cfg_feature(XSL_PROCESSING "Saxon missing" FALSE)
-endif()
+endif(SAXON)
if (NOT XSL_PROCESSING)
message(WARNING "XSLT processing disabled. You have to configure navit.xml yourself, or enable XSLT processing.")
diff --git a/cmake/test.xml b/cmake/test.xml
new file mode 100644
index 000000000..23aa0bd32
--- /dev/null
+++ b/cmake/test.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE config [<!ELEMENT config (#PCDATA)>]>
+<config/>
diff --git a/cmake/test.xslt b/cmake/test.xslt
new file mode 100644
index 000000000..dcfe1f7f3
--- /dev/null
+++ b/cmake/test.xslt
@@ -0,0 +1,2 @@
+<?xml version="1.0"?>
+<xsl:transform version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xi="http://www.w3.org/2001/XInclude"/>
diff --git a/navit/CMakeLists.txt b/navit/CMakeLists.txt
index 4332c3f59..ce74f9824 100644
--- a/navit/CMakeLists.txt
+++ b/navit/CMakeLists.txt
@@ -108,7 +108,7 @@ macro(process_xslt SRC_XML DEST_XML XSL_OPTIONS)
set (XSLT_FILE "${PROJECT_SOURCE_DIR}/navit/xslt/${tmp}.xslt")
list(APPEND XSLT_FILES "${XSLT_FILE}")
list(APPEND XSLT_COMMANDS COMMAND ${CMAKE_COMMAND} -E echo Applying ${tmp}.xslt)
- list(APPEND XSLT_COMMANDS COMMAND ${SAXON} -snone ${DEST_XML} ${XSLT_FILE} ${XSL_OPTIONS} > ${DEST_XML}.tmp)
+ list(APPEND XSLT_COMMANDS COMMAND ${SAXON} ${SAXON_OPTIONS} ${DEST_XML} ${XSLT_FILE} ${XSL_OPTIONS} > ${DEST_XML}.tmp)
list(APPEND XSLT_COMMANDS COMMAND ${CMAKE_COMMAND} -E rename ${DEST_XML}.tmp ${DEST_XML})
endforeach()
endif()