aboutsummaryrefslogtreecommitdiffstats
path: root/cmake/modules
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2014-12-10 16:50:56 -0800
committerGerald Combs <gerald@wireshark.org>2014-12-11 21:41:44 +0000
commit1ce64e75ab4ac16e00cd664599b9b31c57a59f1a (patch)
treed76a4c48fddb78edf03d3661ad38ea3377b78264 /cmake/modules
parent425bc304fea88e8136c69d282547fba502b28708 (diff)
CMake: Make it easier to generate the release notes & NEWS.
Add convenience targets for generating the release notes and the NEWS file. Make sure we don't run multiple instances of a2x + AsciiDoc at the same time. Add the docbook directory to the build by default unless we're running Windows. Explain why we don't yet build docs on Windows. Make each docbook makefile target optional. Split the ENABLE_GUIDES option into ENABLE_HTML_GUIDES and ENABLE_PDF_GUIDES. Add a default "all_guides" target if either is on. Remove the Debian patch that hacked around the PDF requirement. Copy ws.css to the docbook build directory. Don't build PDF release notes. I'm not sure we ever used them and I don't want to install Java and FOP just to make a release. Change-Id: Ia2f710000c17f9e0b4b514fd373d9a5902889553 Reviewed-on: https://code.wireshark.org/review/5712 Petri-Dish: Gerald Combs <gerald@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'cmake/modules')
-rw-r--r--cmake/modules/FindASCIIDOC.cmake21
1 files changed, 14 insertions, 7 deletions
diff --git a/cmake/modules/FindASCIIDOC.cmake b/cmake/modules/FindASCIIDOC.cmake
index 16fe730e02..d957aec51c 100644
--- a/cmake/modules/FindASCIIDOC.cmake
+++ b/cmake/modules/FindASCIIDOC.cmake
@@ -3,6 +3,13 @@
# This module looks for some usual Unix commands.
#
+# XXX Trying to get this to work with Cygwin is going to be problematic.
+# /usr/bin/a2x is a symlink to /usr/bin/a2x.py. I.e. we can't just call
+# directly from Windows.
+# Possible solutions:
+# - Call a2x.py instead.
+# - Wait for someone to create Chocolatey AsciiDoc + DocBook packages
+
INCLUDE(FindCygwin)
FIND_PROGRAM(A2X_EXECUTABLE
@@ -44,9 +51,9 @@ MACRO( ASCIIDOC2HTML _output _asciidocsource _conf_files )
ENDFOREACH()
ADD_CUSTOM_COMMAND(
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT
${_output}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMAND ${A2X_EXECUTABLE}
--format=xhtml
--destination-dir=${CMAKE_CURRENT_BINARY_DIR}
@@ -55,7 +62,7 @@ MACRO( ASCIIDOC2HTML _output _asciidocsource _conf_files )
${A2X_HTML_OPTS}
${_asciidocsource}
# Replacing file with itself will fail
- # COMMAND mv
+ # COMMAND ${CMAKE_COMMAND} -E rename
# ${CMAKE_CURRENT_BINARY_DIR}/${_source_base_name}.html
# ${CMAKE_CURRENT_BINARY_DIR}/${_output}
DEPENDS
@@ -87,9 +94,9 @@ MACRO( ASCIIDOC2TXT _output _asciidocsource _conf_files )
ENDFOREACH()
ADD_CUSTOM_COMMAND(
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT
${_output}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMAND TZ=UTC ${A2X_EXECUTABLE}
--format=text
--destination-dir=${CMAKE_CURRENT_BINARY_DIR}
@@ -98,7 +105,7 @@ MACRO( ASCIIDOC2TXT _output _asciidocsource _conf_files )
${A2X_TEXT_OPTS}
--xsltproc-opts '--stringparam generate.toc "article nop"'
${_asciidocsource}
- COMMAND mv
+ COMMAND ${CMAKE_COMMAND} -E rename
${CMAKE_CURRENT_BINARY_DIR}/${_source_base_name}.text
${CMAKE_CURRENT_BINARY_DIR}/${_output}
DEPENDS
@@ -108,7 +115,7 @@ MACRO( ASCIIDOC2TXT _output _asciidocsource _conf_files )
ENDMACRO()
# news: release-notes.txt
-# cp release-notes.txt ../NEWS
+# ${CMAKE_COMMAND} -E copy_if_different release-notes.txt ../NEWS
MACRO( ASCIIDOC2PDF _output _asciidocsource _conf_files _paper )
GET_FILENAME_COMPONENT( _source_base_name ${_asciidocsource} NAME_WE )
@@ -127,9 +134,9 @@ MACRO( ASCIIDOC2PDF _output _asciidocsource _conf_files _paper )
ENDFOREACH()
ADD_CUSTOM_COMMAND(
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT
${_output}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMAND ${A2X_EXECUTABLE}
--format=pdf
--destination-dir=${CMAKE_CURRENT_BINARY_DIR}
@@ -139,7 +146,7 @@ MACRO( ASCIIDOC2PDF _output _asciidocsource _conf_files _paper )
--xsltproc-opts "--stringparam paper.type ${_paper} --nonet"
--xsl-file=custom_layer_pdf.xsl
${_asciidocsource}
- COMMAND mv
+ COMMAND ${CMAKE_COMMAND} -E rename
${CMAKE_CURRENT_BINARY_DIR}/${_source_base_name}.pdf
${CMAKE_CURRENT_BINARY_DIR}/${_output}
DEPENDS