aboutsummaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
authorJörg Mayer <jmayer@loplof.de>2013-11-01 09:55:26 +0000
committerJörg Mayer <jmayer@loplof.de>2013-11-01 09:55:26 +0000
commitec34959796a5554f1fa9b5c63224e7bd0334956a (patch)
tree227aa6f14c22bfb55851de73d317206f243189eb /cmake
parent9bdeb996063c29c50080dcb5b8b208dd621bc757 (diff)
Add generation of release notes.
Regenerate NEWS file svn path=/trunk/; revision=53014
Diffstat (limited to 'cmake')
-rw-r--r--cmake/modules/FindASCIIDOC.cmake107
1 files changed, 107 insertions, 0 deletions
diff --git a/cmake/modules/FindASCIIDOC.cmake b/cmake/modules/FindASCIIDOC.cmake
new file mode 100644
index 0000000000..7c746c7660
--- /dev/null
+++ b/cmake/modules/FindASCIIDOC.cmake
@@ -0,0 +1,107 @@
+#
+# $Id$
+#
+# - Find unix commands from cygwin
+# This module looks for some usual Unix commands.
+#
+
+INCLUDE(FindCygwin)
+
+FIND_PROGRAM(A2X_EXECUTABLE
+ NAMES
+ a2x
+ PATHS
+ ${CYGWIN_INSTALL_PATH}/bin
+ /bin
+ /usr/bin
+ /usr/local/bin
+ /sbin
+)
+
+# Make sure we don't get language specific quotes
+set( A2X_EXECUTABLE LC_ALL=C ${A2X_EXECUTABLE} )
+
+# Handle the QUIETLY and REQUIRED arguments and set A2X_FOUND to TRUE if
+# all listed variables are TRUE
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(A2X DEFAULT_MSG A2X_EXECUTABLE)
+
+MARK_AS_ADVANCED(A2X_EXECUTABLE)
+
+MACRO( ASCIIDOC2HTML _output _asciidocsource _conffile )
+ GET_FILENAME_COMPONENT( _source_base_name ${_asciidocsource} NAME_WE )
+ set( A2X_HTML_OPTS --stylesheet=ws.css )
+ ADD_CUSTOM_COMMAND(
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT
+ ${_output}
+ COMMAND ${A2X_EXECUTABLE}
+ --format=xhtml
+ --destination-dir=${CMAKE_CURRENT_BINARY_DIR}
+ # --conf-file=${_conffile}
+ ${A2X_HTML_OPTS}
+ ${_asciidocsource}
+ # Replacing file with itself will fail
+ # COMMAND mv
+ # ${CMAKE_CURRENT_BINARY_DIR}/${_source_base_name}.html
+ # ${CMAKE_CURRENT_BINARY_DIR}/${_output}
+ DEPENDS
+ ${_asciidocsources}
+ ${_otherdependencies}
+ )
+ENDMACRO()
+
+MACRO( ASCIIDOC2TXT _output _asciidocsource _conffile )
+ GET_FILENAME_COMPONENT( _source_base_name ${_asciidocsource} NAME_WE )
+ if( LYNX_EXECUTABLE MATCHES lynx )
+ set( A2X_TEXT_OPTS --lynx )
+ else()
+ set( A2X_TEXT_OPTS )
+ endif()
+ ADD_CUSTOM_COMMAND(
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT
+ ${_output}
+ COMMAND ${A2X_EXECUTABLE}
+ --format=text
+ --destination-dir=${CMAKE_CURRENT_BINARY_DIR}
+ # --conf-file=${_conffile}
+ ${A2X_TEXT_OPTS}
+ --xsltproc-opts '--stringparam generate.toc "article nop"'
+ ${_asciidocsource}
+ COMMAND mv
+ ${CMAKE_CURRENT_BINARY_DIR}/${_source_base_name}.text
+ ${CMAKE_CURRENT_BINARY_DIR}/${_output}
+ DEPENDS
+ ${_asciidocsource}
+ ${_conffile}
+ )
+ENDMACRO()
+
+# news: release-notes.txt
+# cp release-notes.txt ../NEWS
+
+MACRO( ASCIIDOC2PDF _output _asciidocsource _conffile _paper )
+ GET_FILENAME_COMPONENT( _source_base_name ${_asciidocsource} NAME_WE )
+ set( A2X_HTML_OPTS --stylesheet=ws.css )
+ ADD_CUSTOM_COMMAND(
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT
+ ${_output}
+ COMMAND ${A2X_EXECUTABLE}
+ --format=pdf
+ --destination-dir=${CMAKE_CURRENT_BINARY_DIR}
+ # --conf-file=${_conffile}
+ ${A2X_HTML_OPTS}
+ --xsltproc-opts "--stringparam paper.type ${_paper} --nonet"
+ --xsl-file=custom_layer_pdf.xsl
+ ${_asciidocsource}
+ COMMAND mv
+ ${CMAKE_CURRENT_BINARY_DIR}/${_source_base_name}.pdf
+ ${CMAKE_CURRENT_BINARY_DIR}/${_output}
+ DEPENDS
+ ${_asciidocsources}
+ ${_otherdependencies}
+ )
+ENDMACRO()
+