| Index: doc/support/generate_asciidoc.sh
|
| diff --git a/doc/generate_asciidoc.sh b/doc/support/generate_asciidoc.sh
|
| similarity index 60%
|
| rename from doc/generate_asciidoc.sh
|
| rename to doc/support/generate_asciidoc.sh
|
| index f19bbb470d2372b5424172121a9f59f0404f9ee1..ea5bd4671d4043a7d4297150ad1b46adc17d3250 100755
|
| --- a/doc/generate_asciidoc.sh
|
| +++ b/doc/support/generate_asciidoc.sh
|
| @@ -21,14 +21,17 @@ set -e
|
| # toolchain including docbook-xml and docbook-xsl is also required.
|
|
|
| # Run from the Crashpad project root directory.
|
| -cd "$(dirname "${0}")/.."
|
| +cd "$(dirname "${0}")/../.."
|
|
|
| -output_dir=out/doc/man
|
| +output_dir=out/doc
|
|
|
| -rm -rf "${output_dir}"
|
| -mkdir -p \
|
| - "${output_dir}/html" \
|
| +rm -rf \
|
| + "${output_dir}/doc" \
|
| "${output_dir}/man"
|
| +mkdir -p \
|
| + "${output_dir}/doc/html" \
|
| + "${output_dir}/man/html" \
|
| + "${output_dir}/man/man"
|
|
|
| # Some extensions of command-line tools behave differently on different systems.
|
| # $sed_ext should be a sed invocation that enables extended regular expressions.
|
| @@ -53,10 +56,23 @@ esac
|
| # Get the version from package.h.
|
| version=$(${sed_ext} -n -e 's/^#define PACKAGE_VERSION "(.*)"$/\1/p' package.h)
|
|
|
| -for input in \
|
| - handler/mac/crashpad_handler.ad \
|
| - tools/*.ad \
|
| - tools/mac/*.ad; do
|
| +generate() {
|
| + input="$1"
|
| + type="$2"
|
| +
|
| + case "${type}" in
|
| + doc)
|
| + doctype="article"
|
| + ;;
|
| + man)
|
| + doctype="manpage"
|
| + ;;
|
| + *)
|
| + echo "${0}: unknown type ${type}" >& 2
|
| + exit 1
|
| + ;;
|
| + esac
|
| +
|
| echo "${input}"
|
|
|
| base=$(${sed_ext} -e 's%^.*/([^/]+)\.ad$%\1%' <<< "${input}")
|
| @@ -70,30 +86,44 @@ for input in \
|
| --attribute mansource=Crashpad \
|
| --attribute manversion="${version}" \
|
| --attribute manmanual="Crashpad Manual" \
|
| - --attribute revdate="${git_date}" \
|
| - --conf-file doc/asciidoc.conf \
|
| - --doctype manpage \
|
| + --attribute git_date="${git_date}" \
|
| + --conf-file doc/support/asciidoc.conf \
|
| + --doctype "${doctype}" \
|
| --backend html5 \
|
| - --attribute stylesheet="${PWD}/doc/asciidoc.css" \
|
| - --out-file "${output_dir}/html/${base}.html" \
|
| + --attribute stylesheet="${PWD}/doc/support/asciidoc.css" \
|
| + --out-file "${output_dir}/${type}/html/${base}.html" \
|
| "${input}"
|
|
|
| - # Create “man” output.
|
| - #
|
| - # AsciiDoc 8.6.9 produces harmless incorrect warnings each time this is run:
|
| - # “a2x: WARNING: --destination-dir option is only applicable to HTML based
|
| - # outputs”. https://github.com/asciidoc/asciidoc/issues/44
|
| - a2x \
|
| - --attribute mansource=Crashpad \
|
| - --attribute manversion="${version}" \
|
| - --attribute manmanual="Crashpad Manual" \
|
| - --attribute revdate="${git_date}" \
|
| - --asciidoc-opts=--conf-file=doc/asciidoc.conf \
|
| - --doctype manpage \
|
| - --format manpage \
|
| - --destination-dir "${output_dir}/man" \
|
| - "${input}"
|
| + if [[ "${type}" = "man" ]]; then
|
| + # Create “man” output.
|
| + #
|
| + # AsciiDoc 8.6.9 produces harmless incorrect warnings each time this is run:
|
| + # “a2x: WARNING: --destination-dir option is only applicable to HTML based
|
| + # outputs”. https://github.com/asciidoc/asciidoc/issues/44
|
| + a2x \
|
| + --attribute mansource=Crashpad \
|
| + --attribute manversion="${version}" \
|
| + --attribute manmanual="Crashpad Manual" \
|
| + --attribute git_date="${git_date}" \
|
| + --asciidoc-opts=--conf-file=doc/support/asciidoc.conf \
|
| + --doctype "${doctype}" \
|
| + --format manpage \
|
| + --destination-dir "${output_dir}/${type}/man" \
|
| + "${input}"
|
| + fi
|
|
|
| # For PDF output, use an a2x command like the one above, with these options:
|
| - # --format pdf --fop --destination-dir "${output_dir}/pdf"
|
| + # --format pdf --fop --destination-dir "${output_dir}/${type}/pdf"
|
| +}
|
| +
|
| +for input in \
|
| + doc/*.ad; do
|
| + generate "${input}" "doc"
|
| +done
|
| +
|
| +for input in \
|
| + handler/mac/crashpad_handler.ad \
|
| + tools/*.ad \
|
| + tools/mac/*.ad; do
|
| + generate "${input}" "man"
|
| done
|
|
|