Allow doxygen parameters to be passed to task

The doxygen demo program suggests that doxy parameters can be passed
as arguments to the task, e.g.,

   bld(features="doxygen", doxyfile="doxy.conf",
        pars={'INPUT': bld.path.ant_glob("**/*.c")})

Previously, these inputs were not passed from the task generator
to the task, and only the parameters read from the doxy configuration
file were used. This patch retrieves parameters (if any) from the task
generator and uses them to override those in the doxy file,
allowing more flexible overriding for individual build targets.

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
This commit is contained in:
Nate Rosenblum 2013-09-28 13:49:03 -07:00 committed by Thomas Nagy
parent ad2eb7d58e
commit 112199eb1f
1 changed files with 5 additions and 0 deletions

View File

@ -68,6 +68,11 @@ class doxygen(Task.Task):
if not self.pars.get('OUTPUT_DIRECTORY'):
self.pars['OUTPUT_DIRECTORY'] = self.inputs[0].parent.get_bld().abspath()
# Override with any parameters passed to the task generator
if getattr(self.generator, 'pars', None) is not None:
for k, v in self.generator.pars.iteritems():
self.pars[k] = v
self.doxy_inputs = getattr(self, 'doxy_inputs', [])
if not self.pars.get('INPUT'):
self.doxy_inputs.append(self.inputs[0].parent)