Overhaul of "doc" build target for generating policy script documentation.

It's now all implemented in CMake scripting.

The generation of reST docs is now a distinct target, "restdoc", while
the target to generate HTML docs, "doc", depends on "restdoc".  reST doc
generation supports incremental builds (documentation for a given policy
script is only regenerated when it is out of date), but HTML doc generation
via ``make doc`` is not incremental (Sphinx always starts with fresh input).

Building the "restdoc" target is now covered by a btest to ensure all
policy scripts are parse-able when Bro is in "doc mode".

Generated reST docs should now support "@load"ing from subdirectories.  e.g.
"@load foo/baz" and "@load bar/baz" will now generate the right xref links.
This commit is contained in:
Jon Siwek 2011-04-26 22:13:04 -05:00
parent 9875c2ba9c
commit f10d2e10ea
14 changed files with 276 additions and 278 deletions

View file

@ -17,7 +17,7 @@ these comments are transferred directly into the auto-generated
:Author: Jon Siwek <jsiwek@ncsa.illinois.edu>
:Imports: :doc:`notice`
:Imports: :doc:`notice </policy/notice>`
Summary
~~~~~~~
@ -234,8 +234,8 @@ Port Analysis
SSL::
[ports={
563/tcp,
443/tcp
443/tcp,
562/tcp
}]
Packet Filter
@ -244,8 +244,8 @@ Packet Filter
Filters added::
[nntps] = tcp port 563,
[ssl] = tcp port 443
[ssl] = tcp port 443,
[nntps] = tcp port 562
Private Interface
-----------------
@ -260,8 +260,8 @@ State Variables
::
{
563/tcp,
443/tcp
443/tcp,
562/tcp
}
Types

View file

@ -0,0 +1 @@
@TEST-EXEC: cd $BUILD && make restdoc

View file

@ -1,2 +1,2 @@
@TEST-EXEC: bro --doc-scripts $DIST/doc/scripts/example.bro
@TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/doc/example-diff-canonifier.py btest-diff example.rst
@TEST-EXEC: btest-diff example.rst