Switch from AsciiDoc to Asciidoctor.
authorGerald Combs <gerald@wireshark.org>
Thu, 19 Oct 2017 22:03:55 +0000 (15:03 -0700)
committerGerald Combs <gerald@wireshark.org>
Sun, 11 Feb 2018 18:22:09 +0000 (18:22 +0000)
commit94a0f7c6414cb83535e89557ce3cce47a1808fec
treec6e6f18ed0e324bed987ac2873571ffa9e6e7d74
parent5a674d05c900be0007b71d11ff52e7f972359b5d
Switch from AsciiDoc to Asciidoctor.

Switch the markup text processor for files in the docbook directory from
AsciiDoc to Asciidoctor. Asciidoctor has several useful features (such
as direct PDF output) and is actively developed. It's written in Ruby
but that dependency can be sidestepped with AsciidoctorJ, a
self-contained bundle that only depends on the JRE.

The current toolchain targets require Python, AsciiDoc, DocBook XML,
DocBook XSL, Java, FOP, xsltproc, lynx, and the HTMLHelp compiler:

HTML: AsciiDoc → DocBook XML → xsltproc + DocBook XSL
Chunked HTML: AsciiDoc → DocBook XML → xsltproc + DocBook XSL
PDF: AsciiDoc → DocBook XML → xsltproc + DocBook XSL → FOP
HTMLHelp: AsciiDoc → DocBook XML → xsltproc + DocBook XSL → HHC

This change removes the AsciiDoc and FOP requirements and adds either
AsciidoctorJ or Asciidoctor + Ruby:

HTML: Asciidoctor → DocBook XML → xsltproc + DocBook XSL
Chunked HTML: Asciidoctor → DocBook XML → xsltproc + DocBook XSL
PDF: Asciidoctor
HTMLHelp: Asciidoctor → DocBook XML → xsltproc + DocBook XSL → HHC

Ideally we could generate all of these using AsciidoctorJ, Java, and
lynx. Unfortunately we're not there yet.

The release notes depend on several macros (ws-buglink, ws-salink,
cve-idlink, sort-and-group). Add Asciidoctor (Ruby) equivalents.

Remove the BUILD_xxx_GUIDES CMake options and add various output targets
automatically. This means that you have to build the various documentation
targets explicitly.

Change-Id: I31930677a656b99b1c6839bb6c33a13db951eb9a
Reviewed-on: https://code.wireshark.org/review/25668
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
35 files changed:
CMakeLists.txt
CMakeOptions.txt
Makefile.am
cmake/modules/FindASCIIDOC.cmake [deleted file]
cmake/modules/FindAsciidoctor.cmake [new file with mode: 0644]
cmake/modules/FindFOP.cmake [deleted file]
cmake/modules/FindLYNX.cmake
cmake/modules/FindXSLTPROC.cmake
configure.ac
debian/control
debian/rules
docbook/CMakeLists.txt
docbook/Makefile.am
docbook/README.adoc [moved from docbook/README.txt with 57% similarity]
docbook/asciidoctor-asciidoc.conf [deleted file]
docbook/asciidoctor-macros/README.adoc [new file with mode: 0644]
docbook/asciidoctor-macros/commaize-block.rb [new file with mode: 0644]
docbook/asciidoctor-macros/commaize-block/extension.rb [new file with mode: 0644]
docbook/asciidoctor-macros/commaize-block/sample.adoc [new file with mode: 0644]
docbook/asciidoctor-macros/cve_idlink-inline-macro.rb [new file with mode: 0644]
docbook/asciidoctor-macros/cve_idlink-inline-macro/extension.rb [new file with mode: 0644]
docbook/asciidoctor-macros/ws_buglink-inline-macro.rb [new file with mode: 0644]
docbook/asciidoctor-macros/ws_buglink-inline-macro/extension.rb [new file with mode: 0644]
docbook/asciidoctor-macros/ws_salink-inline-macro.rb [new file with mode: 0644]
docbook/asciidoctor-macros/ws_salink-inline-macro/extension.rb [new file with mode: 0644]
docbook/attributes.asciidoc
docbook/custom_layer_pdf.xsl [deleted file]
docbook/custom_layer_single_html.xsl [new file with mode: 0644]
docbook/release-notes.asciidoc
docbook/wsdg_src/WSDG_chapter_quick_setup.asciidoc
docbook/wsdg_src/WSDG_chapter_tools.asciidoc
packaging/nsis/CMakeLists.txt
tools/Makefile.am
tools/checklicenses.py
tools/runa2x.sh [deleted file]