Run the program print-trace-sources to generate doc/trace-source-list.h when generating docs. As a side effect, --doxygen is now has to be processed at the end of the build.

This commit is contained in:
Gustavo J. A. M. Carneiro
2007-10-02 11:10:31 +01:00
parent e525cd4465
commit 9308382295

27
wscript
View File

@@ -167,10 +167,6 @@ def build(bld):
run_shell()
raise SystemExit(0)
if Params.g_options.doxygen:
doxygen()
raise SystemExit(0)
check_shell()
# process subfolders from here
@@ -183,6 +179,7 @@ def build(bld):
lib.target = 'ns3'
lib.add_objects = list(bld.env_of_name('default')['NS3_MODULES'])
def shutdown():
#import UnitTest
#ut = UnitTest.unit_test()
@@ -205,6 +202,11 @@ def shutdown():
if Params.g_options.command_template:
Params.fatal("Option --command-template requires the option --run to be given")
if Params.g_options.doxygen:
doxygen()
raise SystemExit(0)
def _find_program(program_name, env):
launch_dir = os.path.abspath(Params.g_cwd_launch)
found_programs = []
@@ -223,7 +225,7 @@ def _find_program(program_name, env):
raise ValueError("program '%s' not found; available programs are: %r"
% (program_name, found_programs))
def _run_argv(argv, os_env=None):
def _get_proc_env(os_env=None):
env = Params.g_build.env_of_name('default')
if sys.platform == 'linux2':
pathvar = 'LD_LIBRARY_PATH'
@@ -247,7 +249,10 @@ def _run_argv(argv, os_env=None):
proc_env[pathvar] = os.pathsep.join(list(env['NS3_MODULE_PATH']) + [proc_env[pathvar]])
else:
proc_env[pathvar] = os.pathsep.join(list(env['NS3_MODULE_PATH']))
return proc_env
def _run_argv(argv, os_env=None):
proc_env = _get_proc_env(os_env)
retval = subprocess.Popen(argv, env=proc_env).wait()
if retval:
Params.fatal("Command %s exited with code %i" % (argv, retval))
@@ -332,11 +337,21 @@ def run_shell():
def doxygen():
env = Params.g_build.env_of_name('default')
## generate the trace sources list docs
proc_env = _get_proc_env()
prog = _find_program('print-trace-sources', env).m_linktask.m_outputs[0].abspath(env)
out = open('doc/trace-source-list.h', 'w')
if subprocess.Popen([prog], stdout=out, env=proc_env).wait():
raise SystemExit(1)
out.close()
## run doxygen
doxygen_config = os.path.join('doc', 'doxygen.conf')
if subprocess.Popen(['doxygen', doxygen_config]).wait():
raise SystemExit(1)
def lcov_report():
env = Params.g_build.env_of_name('default')
variant_name = env['NS3_ACTIVE_VARIANT']