summaryrefslogtreecommitdiffstats
path: root/o3d/documentation/build.scons
diff options
context:
space:
mode:
Diffstat (limited to 'o3d/documentation/build.scons')
-rw-r--r--o3d/documentation/build.scons67
1 files changed, 3 insertions, 64 deletions
diff --git a/o3d/documentation/build.scons b/o3d/documentation/build.scons
index 339a06f..71c9770 100644
--- a/o3d/documentation/build.scons
+++ b/o3d/documentation/build.scons
@@ -28,7 +28,6 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-import glob
import os.path
import subprocess
Import('env')
@@ -38,11 +37,8 @@ Import('O3D_IDL_SOURCES')
Import('O3D_JS_SOURCES')
env.Replace(
- EZT_FORMATTER = 'documentation/ezt_formatter.py',
- CLASS_TREE_GEN = 'documentation/classtree.py',
JSDOC_DIR = '$SCONSTRUCT_DIR/documentation',
JSDOC_EZT_TEMPLATE_DIR = '$JSDOC_DIR/jsdoc-toolkit-templates/',
- JSDOC_JAR = '$JSDOCTOOLKIT_DIR/jsrun.jar',
PYTHONPATH = ['$NIXYSA_DIR',
'$GFLAGS_DIR/python',
'$PLY_DIR']
@@ -54,71 +50,14 @@ LOCAL_IDL_SOURCES = [IDL_DIR + i for i in O3D_IDL_SOURCES]
JS_DIR = '$SCONSTRUCT_DIR/samples/o3djs/'
LOCAL_JS_SOURCES = [JS_DIR + i for i in O3D_JS_SOURCES]
-def IdlDocsEmitter(target, source, env):
- bases = [os.path.splitext(s.name)[0] for s in source]
- targets = [target[0].dir.abspath + "/%s.$IDL_GENERATE_EXT" % b for b in bases]
- return targets, source
+DOCSGEN_ARGS = ['$JSDOC_DIR/build_docs.py $JAVA_EXE']
-AUTOGEN_ARGS = ['$NIXYSA_DIR/codegen.py',
- '--binding-module=o3d:plugin/o3d_binding.py',
- '--generate=$IDL_GENERATE',
- '--output-dir=${TARGET.dir}']
-if ARGUMENTS.get('force-docs', False):
- AUTOGEN_ARGS += ['--force-docs']
-AUTOGEN_ARGS += ['$SOURCES']
-
-JSDOCS_CMD = ' '.join([
- '$JAVA_EXE',
- '-Djsdoc.dir=$JSDOCTOOLKIT_DIR',
- '-jar $JSDOC_JAR',
- '$JSDOCTOOLKIT_DIR/app/run.js',
- '-v',
- '-t=$JSDOC_EZT_TEMPLATE_DIR/',
- '-d=${TARGET.dir}',
- ' '.join(LOCAL_JS_SOURCES)])
-
-def TouchAll(target=None, source=None, env=None):
- for i in target:
- if not os.path.exists(i.path):
- open(i.path, 'wb').close()
-
-env["BUILDERS"]["IdlDocs"] = Builder(action=[env.Python(AUTOGEN_ARGS),
- Action(TouchAll)],
- emitter=IdlDocsEmitter)
-
-doxy_inputs = []
-doxy_inputs += env.IdlDocs(
- 'dummy', LOCAL_IDL_SOURCES,
- IDL_GENERATE='cppheader',
- IDL_GENERATE_EXT='h')
-
-def EZTStep(target=None, source=None, env=None):
- dir = env.Dir('$OBJ_ROOT/documentation/html')
- html_files = glob.glob(dir.path + os.sep + '*.html')
- for file in html_files:
- ret = env.Execute(env.Python(['$EZT_FORMATTER', file]))
- if ret > 0:
- return ret
- return 0
-
-def ClassTreeStep(target=None, source=None, env=None):
- dir = env.Dir('$OBJ_ROOT/documentation/html')
- return env.Execute(env.Python(['$CLASS_TREE_GEN', dir.path]))
-
-env.Command(
- 'html/doxygen.png', doxy_inputs,
- ['$DOXYGEN documentation/Doxyfile',
- Action(EZTStep),
- Action(ClassTreeStep),
- Touch('$TARGET')],
-)
-
-env["BUILDERS"]["JSDocs"] = Builder(action=JSDOCS_CMD)
+env["BUILDERS"]["JSDocs"] = Builder(action=env.Python(DOCSGEN_ARGS))
# index.ezt is a file that the jsdoctoolkit happens to build.
# Putting it in jsdocs means that will be our target dir for the rest
# of the files.
-env.JSDocs('html/jsdocs/classtree.html', LOCAL_JS_SOURCES +
+env.JSDocs('base.js', LOCAL_JS_SOURCES + LOCAL_IDL_SOURCES +
['$JSDOC_EZT_TEMPLATE_DIR/annotated.tmpl',
'$JSDOC_EZT_TEMPLATE_DIR/class.tmpl',
'$JSDOC_EZT_TEMPLATE_DIR/classtree.tmpl',