mirror of
https://github.com/boostorg/build.git
synced 2026-02-15 13:02:11 +00:00
68 lines
1.5 KiB
Plaintext
Executable File
68 lines
1.5 KiB
Plaintext
Executable File
# Copyright David Abrahams 2004. Distributed under the Boost
|
|
# Software License, Version 1.0. (See accompanying
|
|
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
# Support for docutils ReStructuredText processing.
|
|
|
|
import type ;
|
|
import scanner ;
|
|
import generators ;
|
|
import os ;
|
|
import common ;
|
|
import toolset ;
|
|
import path ;
|
|
import feature : feature ;
|
|
|
|
.initialized = ;
|
|
|
|
type.register ReST : rst ;
|
|
|
|
class rst-scanner : common-scanner
|
|
{
|
|
rule pattern ( )
|
|
{
|
|
return "^\\w*\\.\\.\\w+include::\w+(.*)"
|
|
"^\\w*\\.\\.\\w+image::\w+(.*)"
|
|
"^\\w*\\.\\.\\w+figure::\w+(.*)"
|
|
;
|
|
}
|
|
}
|
|
|
|
scanner.register rst-scanner : include ;
|
|
type.set-scanner ReST : rst-scanner ;
|
|
|
|
generators.register-standard docutils.html : ReST : HTML ;
|
|
|
|
rule init ( docutils-dir )
|
|
{
|
|
docutils-dir ?= [ modules.peek : DOCUTILS_DIR ] ;
|
|
|
|
if ! $(.initialized)
|
|
{
|
|
.initialized = true ;
|
|
.docutils-dir = $(docutils-dir) ;
|
|
|
|
.setup = [
|
|
common.prepend-path-variable-command PYTHONPATH
|
|
: $(.docutils-dir) $(.docutils-dir)/extras ] ;
|
|
}
|
|
}
|
|
|
|
rule html ( target : source : properties * )
|
|
{
|
|
docutils-dir on $(target) = $(.docutils-dir) ;
|
|
}
|
|
|
|
|
|
feature docutils : : free ;
|
|
feature docutils-html : : free ;
|
|
toolset.flags docutils COMMON-FLAGS : <docutils> ;
|
|
toolset.flags docutils HTML-FLAGS : <docutils-html> ;
|
|
|
|
actions html
|
|
{
|
|
$(.setup)
|
|
python $(docutils-dir)/tools/rst2html.py $(COMMON-FLAGS) $(HTML-FLAGS) $(>) $(<)
|
|
}
|
|
|