aboutsummaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
authorJörg Mayer <jmayer@loplof.de>2009-12-29 12:12:26 +0000
committerJörg Mayer <jmayer@loplof.de>2009-12-29 12:12:26 +0000
commit9a69a7934e3c7e404d09cb18ae1c8a14637d9b5d (patch)
treed6efe47a35ca8e4cf1be8ea0e61aae325dc29534 /cmake
parentd0cd08b6798bde869fcb435a4ad70267cfb048c0 (diff)
- Beginnings of cmake in docbook directory
- Add note about "make help" - Move beginnings of packaging into its own file: CPackConfig.txt svn path=/trunk/; revision=31379
Diffstat (limited to 'cmake')
-rw-r--r--cmake/modules/FindFOP.cmake25
-rw-r--r--cmake/modules/FindLYNX.cmake42
-rw-r--r--cmake/modules/FindPCAP.cmake8
-rw-r--r--cmake/modules/FindPOD.cmake30
-rw-r--r--cmake/modules/FindSED.cmake15
-rw-r--r--cmake/modules/FindXMLLINT.cmake48
-rw-r--r--cmake/modules/FindXSLTPROC.cmake115
7 files changed, 245 insertions, 38 deletions
diff --git a/cmake/modules/FindFOP.cmake b/cmake/modules/FindFOP.cmake
new file mode 100644
index 0000000000..1ec136149b
--- /dev/null
+++ b/cmake/modules/FindFOP.cmake
@@ -0,0 +1,25 @@
+#
+# $Id$
+#
+# - Find unix commands from cygwin
+# This module looks for some usual Unix commands.
+#
+
+INCLUDE(FindCygwin)
+
+FIND_PROGRAM(FOP_EXECUTABLE
+ NAMES
+ fop
+ PATHS
+ ${CYGWIN_INSTALL_PATH}/bin
+ /bin
+ /usr/bin
+ /usr/local/bin
+ /sbin
+)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(FOP DEFAULT_MSG FOP_EXECUTABLE)
+
+MARK_AS_ADVANCED(FOP_EXECUTABLE)
+
diff --git a/cmake/modules/FindLYNX.cmake b/cmake/modules/FindLYNX.cmake
new file mode 100644
index 0000000000..daea96ce75
--- /dev/null
+++ b/cmake/modules/FindLYNX.cmake
@@ -0,0 +1,42 @@
+#
+# $Id$
+#
+# - Find unix commands from cygwin
+# This module looks for some usual Unix commands.
+#
+
+INCLUDE(FindCygwin)
+
+FIND_PROGRAM(LYNX_EXECUTABLE
+ NAMES
+ lynx
+ elinks
+ links
+ true
+ PATHS
+ ${CYGWIN_INSTALL_PATH}/bin
+ /bin
+ /usr/bin
+ /usr/local/bin
+ /sbin
+)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(LYNX DEFAULT_MSG LYNX_EXECUTABLE)
+
+MARK_AS_ADVANCED(LYNX_EXECUTABLE)
+
+# Convert html to text
+IF(LYNX_EXECUTABLE MATCHES lynx$)
+ # (See Bug # 1446 for note re 'force-html' below)
+ set(HTML2TXT "lynx -dump -width=72 -nolist -stdin -force-html")
+ELSEIF(LYNX_EXECUTABLE MATCHES elinks$)
+ set(HTML2TXT "elinks -dump -dump-width 72")
+ELSEIF(LYNX_EXECUTABLE MATCHES links$)
+ set(HTML2TXT "links -dump -width 72")
+ELSEIF(LYNX_EXECUTABLE MATCHES true$)
+ set(HTML2TXT "true")
+ELSE()
+ message(ERROR "Should never be reached - please report!")
+ENDIF()
+message(STATUS "html2text: ${HTML2TXT}")
diff --git a/cmake/modules/FindPCAP.cmake b/cmake/modules/FindPCAP.cmake
index 05e92d2796..0d54c644b0 100644
--- a/cmake/modules/FindPCAP.cmake
+++ b/cmake/modules/FindPCAP.cmake
@@ -111,12 +111,8 @@ CHECK_FUNCTION_EXISTS("pcap_list_datalinks" HAVE_PCAP_LIST_DATALINKS)
CHECK_FUNCTION_EXISTS("pcap_open_dead" HAVE_PCAP_OPEN_DEAD)
CHECK_FUNCTION_EXISTS("pcap_set_datalink" HAVE_PCAP_SET_DATALINK)
-
-#Is pcap found ?
-IF(PCAP_INCLUDE_DIRS AND PCAP_LIBRARIES)
- SET( PCAP_FOUND "YES" )
-ENDIF(PCAP_INCLUDE_DIRS AND PCAP_LIBRARIES)
-
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCAP DEFAULT_MSG PCAP_INCLUDE_DIRS PCAP_LIBRARIES)
MARK_AS_ADVANCED(
PCAP_LIBRARIES
diff --git a/cmake/modules/FindPOD.cmake b/cmake/modules/FindPOD.cmake
index 2c09ce72b1..63e3112fad 100644
--- a/cmake/modules/FindPOD.cmake
+++ b/cmake/modules/FindPOD.cmake
@@ -18,18 +18,6 @@ FIND_PROGRAM(POD2MAN_EXECUTABLE
/sbin
)
-MARK_AS_ADVANCED(POD2MAN_EXECUTABLE)
-
-# search pod2man
-MACRO(FIND_POD2MAN)
- IF(NOT POD2MAN_EXECUTABLE)
- FIND_PROGRAM(POD2MAN_EXECUTABLE pod2man)
- IF (NOT POD2MAN_EXECUTABLE)
- MESSAGE(FATAL_ERROR "pod2man not found - aborting")
- ENDIF (NOT POD2MAN_EXECUTABLE)
- ENDIF(NOT POD2MAN_EXECUTABLE)
-ENDMACRO(FIND_POD2MAN)
-
FIND_PROGRAM(POD2HTML_EXECUTABLE
NAMES
pod2html
@@ -41,17 +29,15 @@ FIND_PROGRAM(POD2HTML_EXECUTABLE
/sbin
)
-MARK_AS_ADVANCED(POD2HTML_EXECUTABLE)
+# handle the QUIETLY and REQUIRED arguments and set POD2HTML_FOUND to TRUE if
+# all listed variables are TRUE
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(POD2HTML DEFAULT_MSG POD2MAN_EXECUTABLE POD2HTML_EXECUTABLE)
-# search pod2html
-MACRO(FIND_POD2HTML)
- IF(NOT POD2HTML_EXECUTABLE)
- FIND_PROGRAM(POD2HTML_EXECUTABLE pod2html)
- IF (NOT POD2HTML_EXECUTABLE)
- MESSAGE(FATAL_ERROR "pod2html not found - aborting")
- ENDIF (NOT POD2HTML_EXECUTABLE)
- ENDIF(NOT POD2HTML_EXECUTABLE)
-ENDMACRO(FIND_POD2HTML)
+MARK_AS_ADVANCED(
+ POD2MAN_EXECUTABLE
+ POD2HTML_EXECUTABLE
+)
# run pod2man and pod2html
MACRO(pod2manhtml _sourcefile _manext)
diff --git a/cmake/modules/FindSED.cmake b/cmake/modules/FindSED.cmake
index 21b21c7cf6..ab1d84b6aa 100644
--- a/cmake/modules/FindSED.cmake
+++ b/cmake/modules/FindSED.cmake
@@ -18,15 +18,10 @@ FIND_PROGRAM(SED_EXECUTABLE
/sbin
)
-MARK_AS_ADVANCED(SED_EXECUTABLE)
+# handle the QUIETLY and REQUIRED arguments and set SED_FOUND to TRUE if
+# all listed variables are TRUE
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(SED DEFAULT_MSG SED_EXECUTABLE)
-# search sed
-MACRO(FIND_SED)
- IF(NOT SED_EXECUTABLE)
- FIND_PROGRAM(SED_EXECUTABLE sed)
- IF (NOT SED_EXECUTABLE)
- MESSAGE(FATAL_ERROR "sed not found - aborting")
- ENDIF (NOT SED_EXECUTABLE)
- ENDIF(NOT SED_EXECUTABLE)
-ENDMACRO(FIND_SED)
+MARK_AS_ADVANCED(SED_EXECUTABLE)
diff --git a/cmake/modules/FindXMLLINT.cmake b/cmake/modules/FindXMLLINT.cmake
new file mode 100644
index 0000000000..f5ac6459e2
--- /dev/null
+++ b/cmake/modules/FindXMLLINT.cmake
@@ -0,0 +1,48 @@
+#
+# $Id$
+#
+# - Find unix commands from cygwin
+# This module looks for some usual Unix commands.
+#
+
+INCLUDE(FindCygwin)
+
+FIND_PROGRAM(XMLLINT_EXECUTABLE
+ NAMES
+ xmllint
+ PATHS
+ ${CYGWIN_INSTALL_PATH}/bin
+ /bin
+ /usr/bin
+ /usr/local/bin
+ /sbin
+)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(XMLLINT DEFAULT_MSG XMLLINT_EXECUTABLE)
+
+MARK_AS_ADVANCED(XMLLINT_EXECUTABLE)
+
+# Validate XML
+MACRO(VALIDATE_XML _validated _sources)
+ message(STATUS "Source(s): ${${_sources}}")
+ # FIXME: How do I extract the first element of a variable containing a
+ # list of values? Isn't there a "cleaner" solution?
+ FOREACH(_source ${${_sources}})
+ BREAK()
+ ENDFOREACH()
+ ADD_CUSTOM_COMMAND(
+ OUTPUT
+ ${CMAKE_CURRENT_BINARY_DIR}/${_validated}
+ COMMAND ${XMLLINT_EXECUTABLE}
+ --valid
+ --noout
+ --path "${CMAKE_CURRENT_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR}"
+ ${_source}
+ COMMAND touch
+ ${CMAKE_CURRENT_BINARY_DIR}/${_validated}
+ DEPENDS
+ ${_source}
+ svn_version.xml
+ )
+ENDMACRO(VALIDATE_XML)
diff --git a/cmake/modules/FindXSLTPROC.cmake b/cmake/modules/FindXSLTPROC.cmake
new file mode 100644
index 0000000000..1d18832da0
--- /dev/null
+++ b/cmake/modules/FindXSLTPROC.cmake
@@ -0,0 +1,115 @@
+#
+# $Id$
+#
+# - Find unix commands from cygwin
+# This module looks for some usual Unix commands.
+#
+
+INCLUDE(FindCygwin)
+
+FIND_PROGRAM(XSLTPROC_EXECUTABLE
+ NAMES
+ xsltproc
+ PATHS
+ ${CYGWIN_INSTALL_PATH}/bin
+ /bin
+ /usr/bin
+ /usr/local/bin
+ /sbin
+)
+
+# Handle the QUIETLY and REQUIRED arguments and set XSLTPROC_FOUND to TRUE if
+# all listed variables are TRUE
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(XSLTPROC DEFAULT_MSG XSLTPROC_EXECUTABLE)
+
+MARK_AS_ADVANCED(XSLTPROC_EXECUTABLE)
+
+#XML2HTML(
+# wsug.validated
+# wsug_html/user-guide.html
+# single-page
+# wsug_html
+# WSUG_SOURCE
+# WSUG_GFX_SOURCE
+#)
+
+# Translate xml to html
+MACRO(XML2HTML _validated _output _mode _xmlsources _gfxsources)
+ MESSAGE(STATUS "XML source(s): ${${_xmlsources}}")
+ MESSAGE(STATUS "GFX source(s): ${${_gfxsources}}")
+
+ GET_FILENAME_COMPONENT(_OUTDIR ${_output} PATH)
+ IF(${_mode} STREQUAL "chunked")
+ ELSE() # single-page
+ ENDIF()
+
+ ADD_CUSTOM_COMMAND(
+ OUTPUT
+ ${_output}
+ COMMAND
+ cmake -E make_directory ${_OUTDIR}
+ COMMAND
+ cmake -E copy ${${_gfxsources}} ${_OUTDIR}
+ COMMAND
+ cmake -E copy ws.css ${_OUTDIR}
+ DEPENDS
+ ${${_xmlsources}}
+ ${${_gfxsources}}
+ )
+# mkdir -p wsug_html/wsug_graphics/toolbar
+# cp wsug_graphics/*.* wsug_html/wsug_graphics
+# cp wsug_graphics/toolbar/* wsug_html/wsug_graphics/toolbar
+# cp ws.css wsug_html
+
+# mkdir -p wsug_html_chunked/wsug_graphics/toolbar
+# cp wsug_graphics/*.* wsug_html_chunked/wsug_graphics
+# cp wsug_graphics/toolbar/* wsug_html_chunked/wsug_graphics/toolbar
+# cp ws.css wsug_html_chunked
+ENDMACRO(XML2HTML)
+
+#wsug_html/user-guide.html: $(WSUG_SOURCE)
+# @ echo --- WSUG - HTML SINGLE PAGE ---
+# mkdir -p wsug_html/wsug_graphics/toolbar
+# cp wsug_graphics/*.* wsug_html/wsug_graphics
+# cp wsug_graphics/toolbar/* wsug_html/wsug_graphics/toolbar
+# cp ws.css wsug_html
+# $(XSLTPROC) --stringparam base.dir wsug_html/ --stringparam use.id.as.filename 1 --stringparam admon.graphics 1 --stringparam admon.graphics.path wsug_graphics/ --stringparam section.autolabel 1 --stringparam section.label.includes.component.label 1 --stringparam html.stylesheet ws.css --nonet http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl $< > $@
+# -chmod -R og+rX wsug_html
+#
+
+#wsug_html_chunked/index.html: $(WSUG_SOURCE)
+# @ echo --- WSUG - HTML CHUNKED ---
+# mkdir -p wsug_html_chunked/wsug_graphics/toolbar
+# cp wsug_graphics/*.* wsug_html_chunked/wsug_graphics
+# cp wsug_graphics/toolbar/* wsug_html_chunked/wsug_graphics/toolbar
+# cp ws.css wsug_html_chunked
+# $(XSLTPROC) --stringparam base.dir wsug_html_chunked/ --stringparam use.id.as.filename 1 --stringparam admon.graphics 1 --stringparam admon.graphics.path wsug_graphics/ --stringparam section.autolabel 1 --stringparam section.label.includes.component.label 1 --stringparam html.stylesheet ws.css --nonet http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl $<
+# -chmod -R og+rX wsug_html_chunked
+
+#XML2PDF(
+# WSUG_SOURCE
+# custom_layer_pdf.xsl
+# A4
+#)
+#
+#XML2PDF(
+# WSUG_SOURCE
+# custom_layer_pdf.xsl
+# letter
+#)
+
+#user-guide-us.fo: $(WSUG_SOURCE) custom_layer_pdf.xsl
+#ifdef FOP
+# @ echo --- WSUG - PDF US PAPER ---
+# $(XSLTPROC) --stringparam paper.type letter --nonet custom_layer_pdf.xsl $< > $@
+#endif
+#
+## create pdf file (through XSL-FO), portrait pages on A4 paper
+## you will get lot's of errors, but that's ok
+#user-guide-a4.fo: $(WSUG_SOURCE) custom_layer_pdf.xsl
+#ifdef FOP
+# @ echo --- WSUG - PDF A4 PAPER ---
+# $(XSLTPROC) --stringparam paper.type A4 --nonet custom_layer_pdf.xsl $< > $@
+#endif
+