summaryrefslogtreecommitdiff
path: root/docbook
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2015-08-07 18:17:04 -0700
committerGerald Combs <gerald@wireshark.org>2015-08-08 21:51:56 +0000
commit0626e766cfb029e4cf84ecab838054cfdfc7257f (patch)
tree1e1e7593c579f5a3ab05c4714243e2328f3f9c15 /docbook
parent11e5422e7194ab683b84307bbb2328df9304088d (diff)
downloadwireshark-0626e766cfb029e4cf84ecab838054cfdfc7257f.tar.gz
CMake: Try to fix generated docbook dependencies.
Add custom {developer,user}_guide_docbook targets for docbook output. Make sure the HTML, PDF, and CHM outputs depend on their associated docbook target and not on the output .xml file. This keeps us from running a2x instances in parallel. Change-Id: I73b0db50ae92f62eb08ae284d498cdf2d697ac00 Reviewed-on: https://code.wireshark.org/review/9920 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'docbook')
-rw-r--r--docbook/CMakeLists.txt221
1 files changed, 127 insertions, 94 deletions
diff --git a/docbook/CMakeLists.txt b/docbook/CMakeLists.txt
index ead8d2d0c8..a728daaf51 100644
--- a/docbook/CMakeLists.txt
+++ b/docbook/CMakeLists.txt
@@ -74,7 +74,6 @@ set(WSUG_FILES
wsug_src/WSUG_chapter_use.asciidoc
wsug_src/WSUG_chapter_work.asciidoc
wsug_src/WSUG_preface.asciidoc
- ws.css
)
set(WSUG_GRAPHICS
@@ -215,7 +214,6 @@ set(WSDG_FILES
wsdg_src/WSDG_chapter_works.asciidoc
wsdg_src/WSDG_preface.asciidoc
wsluarm.asciidoc
- ws.css
)
set(WSDG_GRAPHICS
@@ -229,15 +227,11 @@ set(WSDG_GRAPHICS
${COMMON_GRAPHICS}
)
-# user-guide.xml must be first in the list
set(WSUG_SOURCE
- user-guide.xml
${WSUG_FILES}
${WSUG_GRAPHICS}
)
-set( ASCIIDOC_CONF_FILES asciidoc.conf asciidoctor-asciidoc.conf )
-
add_custom_command(
OUTPUT ws.css
COMMAND ${CMAKE_COMMAND} -E copy_if_different
@@ -245,12 +239,9 @@ add_custom_command(
${CMAKE_CURRENT_BINARY_DIR}/ws.css
)
-ASCIIDOC2DOCBOOK( developer-guide.asciidoc "${ASCIIDOC_CONF_FILES}" )
-ASCIIDOC2DOCBOOK( user-guide.asciidoc "${ASCIIDOC_CONF_FILES}" )
+set( WSUG_BUILT_DEPS ws.css )
-# developer-guide.xml must be first in the list
set(WSDG_SOURCE
- developer-guide.xml
${WSDG_FILES}
${WSDG_GRAPHICS}
)
@@ -285,14 +276,72 @@ set(WSLUA_MODULES
${CMAKE_SOURCE_DIR}/epan/wslua/wslua_struct.c
)
-add_custom_target(user_guides)
+# Empty file to trigger wsluarm generation.
+ADD_CUSTOM_COMMAND(
+ OUTPUT
+ wsluarm
+ COMMAND ${CMAKE_COMMAND} -E make_directory wsluarm_src
+ COMMAND ${PERL_EXECUTABLE}
+ ${CMAKE_CURRENT_SOURCE_DIR}/make-wsluarm.pl
+ ${WSLUA_MODULES}
+ COMMAND ${CMAKE_COMMAND} -E touch
+ wsluarm
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/make-wsluarm.pl
+ ${WSLUA_MODULES}
+)
+
+set( WSDG_BUILT_DEPS ws.css wsluarm )
+
+# Generate the DocBook sources of user and developer guides
+
+set( ASCIIDOC_CONF_FILES asciidoc.conf asciidoctor-asciidoc.conf )
+
+ASCIIDOC2DOCBOOK(user-guide.asciidoc ASCIIDOC_CONF_FILES WSUG_SOURCE WSUG_BUILT_DEPS)
+add_custom_target(user_guide_docbook DEPENDS user-guide.xml)
+set_target_properties(user_guide_docbook PROPERTIES FOLDER "Docbook")
+ASCIIDOC2DOCBOOK(developer-guide.asciidoc ASCIIDOC_WSLUARM_CONF_FILES WSDG_SOURCE WSDG_BUILT_DEPS)
+add_custom_target(developer_guide_docbook DEPENDS developer-guide.xml)
+set_target_properties(developer_guide_docbook PROPERTIES FOLDER "Docbook")
+
+# Top-level guide targets.
+add_custom_target(user_guides DEPENDS user_guide_docbook)
+set_target_properties(user_guides PROPERTIES FOLDER "Docbook")
+add_custom_target(developer_guides DEPENDS developer_guide_docbook)
+set_target_properties(developer_guides PROPERTIES FOLDER "Docbook")
+add_custom_target(all_guides ALL DEPENDS user_guides developer_guides )
+set_target_properties(all_guides PROPERTIES FOLDER "Docbook")
+
+# User's Guide chain.
if(ENABLE_HTML_GUIDES)
- set(WSUG_HTML_OUTPUT wsug_html_chunked/index.html wsug_html/index.html)
+ # a2x always generates valid XML, *right*?
+ #VALIDATE_XML(
+ # wsug.validated
+ # user-guide.xml
+ #)
+
+ XML2HTML(
+ user_guide
+ wsug
+ single-page
+ user-guide.xml
+ WSUG_GRAPHICS
+ )
+
+ XML2HTML(
+ user_guide
+ wsug
+ chunked
+ user-guide.xml
+ WSUG_GRAPHICS
+ )
add_custom_target(
user_guide_html
DEPENDS
- ${WSUG_HTML_OUTPUT}
+ wsug_html/index.html
+ wsug_html_chunked/index.html
)
+ set_target_properties(user_guide_html PROPERTIES FOLDER "Docbook")
add_dependencies(user_guides user_guide_html)
endif()
@@ -304,124 +353,123 @@ if(ENABLE_PDF_GUIDES)
# - Generate PDFs using AsciiDoc.
XML2PDF(
+ user_guide
user-guide-a4.pdf
- WSUG_SOURCE
+ user-guide.xml
custom_layer_pdf.xsl
A4
)
- add_custom_target(user_guide_pdf_a4 DEPENDS user-guide-a4.pdf)
- add_dependencies(user_guides user_guide_pdf_a4)
XML2PDF(
+ user_guide
user-guide-us.pdf
- WSUG_SOURCE
+ user-guide.xml
custom_layer_pdf.xsl
letter
)
- add_custom_target(user_guide_pdf_us DEPENDS user-guide-us.pdf)
- add_dependencies(user_guides user_guide_pdf_us)
+ add_custom_target(
+ user_guide_pdf_a4
+ DEPENDS
+ user-guide-a4.pdf
+ )
+ set_target_properties(user_guide_pdf_a4 PROPERTIES FOLDER "Docbook")
+ add_custom_target(
+ user_guide_pdf_us
+ DEPENDS
+ user-guide-us.pdf
+ )
+ set_target_properties(user_guide_pdf_us PROPERTIES FOLDER "Docbook")
+ add_dependencies(user_guides user_guide_pdf_a4 user_guide_pdf_us)
endif()
if(ENABLE_CHM_GUIDES)
- set(WSUG_CHM_OUTPUT user-guide.chm)
- XML2HHP(wsug user-guide.xml)
+ XML2HHP(user_guide wsug user-guide.xml)
HHP2CHM(user-guide.hhp)
add_custom_target(
user_guide_chm
DEPENDS
- ${WSUG_CHM_OUTPUT}
+ user-guide.chm
)
+ set_target_properties(user_guide_chm PROPERTIES FOLDER "Docbook")
add_dependencies(user_guides user_guide_chm)
endif()
-VALIDATE_XML(
- wsug.validated
- WSUG_SOURCE
-)
-
-XML2HTML(
- wsug
- single-page
- WSUG_SOURCE
- WSUG_GRAPHICS
-)
-
-XML2HTML(
- wsug
- chunked
- WSUG_SOURCE
- WSUG_GRAPHICS
-)
-
-add_custom_target(developer_guides)
+# Developer's Guide chain.
if(ENABLE_HTML_GUIDES)
- set(WSDG_HTML_OUTPUT wsdg_html_chunked/index.html wsdg_html/index.html)
+ # a2x always generates valid XML, *right*?
+ #VALIDATE_XML(
+ # wsdg.validated
+ # developer-guide.xml
+ #)
+
+ XML2HTML(
+ developer_guide
+ wsdg
+ single-page
+ developer-guide.xml
+ WSDG_GRAPHICS
+ )
+
+ XML2HTML(
+ developer_guide
+ wsdg
+ chunked
+ developer-guide.xml
+ WSDG_GRAPHICS
+ )
add_custom_target(
developer_guide_html
DEPENDS
- wsluarm
- ${WSDG_HTML_OUTPUT}
+ wsdg_html/index.html
+ wsdg_html_chunked/index.html
)
+ set_target_properties(developer_guide_html PROPERTIES FOLDER "Docbook")
add_dependencies(developer_guides developer_guide_html)
endif()
if(ENABLE_PDF_GUIDES)
XML2PDF(
+ developer_guide
developer-guide-a4.pdf
- WSDG_SOURCE
+ developer-guide.xml
custom_layer_pdf.xsl
A4
)
- add_custom_target(developer_guide_pdf_a4 DEPENDS developer-guide-a4.pdf)
- add_dependencies(developer_guides developer_guide_pdf_a4)
XML2PDF(
+ developer_guide
developer-guide-us.pdf
- WSDG_SOURCE
+ developer-guide.xml
custom_layer_pdf.xsl
letter
)
- add_custom_target(developer_guide_pdf_us DEPENDS developer-guide-us.pdf)
- add_dependencies(developer_guides developer_guide_pdf_us)
+ add_custom_target(
+ developer_guide_pdf_a4
+ DEPENDS
+ developer-guide-a4.pdf
+ )
+ set_target_properties(developer_guide_pdf_a4 PROPERTIES FOLDER "Docbook")
+ add_custom_target(
+ developer_guide_pdf_us
+ DEPENDS
+ developer-guide-us.pdf
+ )
+ set_target_properties(developer_guide_pdf_us PROPERTIES FOLDER "Docbook")
+ add_dependencies(developer_guides developer_guide_pdf_a4 developer_guide_pdf_us)
endif()
if(ENABLE_CHM_GUIDES)
- set(WSDG_CHM_OUTPUT developer-guide.chm)
- XML2HHP(wsdg developer-guide.xml)
+ XML2HHP(developer_guide wsdg developer-guide.xml)
HHP2CHM(developer-guide.hhp)
add_custom_target(
developer_guide_chm
DEPENDS
- wsluarm
- ${WSDG_CHM_OUTPUT}
+ developer-guide.chm
)
+ set_target_properties(developer_guide_chm PROPERTIES FOLDER "Docbook")
add_dependencies(developer_guides developer_guide_chm)
endif()
-VALIDATE_XML(
- wsdg.validated
- WSDG_SOURCE
-)
-
-XML2HTML(
- wsdg
- single-page
- WSDG_SOURCE
- WSDG_GRAPHICS
-)
-
-XML2HTML(
- wsdg
- chunked
- WSDG_SOURCE
- WSDG_GRAPHICS
-)
-
-if(ENABLE_HTML_GUIDES OR ENABLE_PDF_GUIDES OR ENABLE_CHM_GUIDES)
- add_custom_target( all_guides ALL )
- add_dependencies ( all_guides user_guides developer_guides )
-endif()
-
# release_notes: release-notes.html release-notes.txt release-notes-a4.pdf release-notes-us.pdf
add_custom_target( release_notes_html DEPENDS ws.css release-notes.html )
@@ -471,18 +519,3 @@ ASCIIDOC2TXT(
# "${ASCIIDOC_CONF_FILES}"
# letter
#)
-
-# wsluarm
-ADD_CUSTOM_COMMAND(
- OUTPUT
- wsluarm
- COMMAND ${CMAKE_COMMAND} -E make_directory wsluarm_src
- COMMAND ${PERL_EXECUTABLE}
- ${CMAKE_CURRENT_SOURCE_DIR}/make-wsluarm.pl
- ${WSLUA_MODULES}
- COMMAND ${CMAKE_COMMAND} -E touch
- wsluarm
- DEPENDS
- ${CMAKE_CURRENT_SOURCE_DIR}/make-wsluarm.pl
- ${WSLUA_MODULES}
-)