class Rmk::Doxygen
Call Doxygan to extract documentation
Attributes
doxyfile[RW]
template file, will be used as ERB template
doxygen[RW]
Doxygen binary
force[RW]
#force re-build (dependence is never satisfied)
Public Class Methods
new()
click to toggle source
Calls superclass method
Rmk::Processor.new
# File tools/doxygen.rb, line 33 def initialize super @slot = SLOTS[:documentation] data = tool_params(:Doxygen, generator.configuration) @doxygen = data[:doxygen] @doxyfile = data[:doxyfile] @force = data[:force] end
Public Instance Methods
command()
click to toggle source
# File tools/doxygen.rb, line 44 def command "ruby #{File.expand_path(__FILE__)} $in > $out && " \ "$doxygen $out #{cmd_force}" end
ninja_build(writer = generator.ninja)
click to toggle source
# File tools/doxygen.rb, line 70 def ninja_build(writer = generator.ninja) if !File.exist?(doxyfile) logger.warn "no doxygen configuration '#{doxyfile}'" else out = "$builddir/#{doxyfile}.out".gsub('.in.out', '.out') writer.build(out, 'doxygen', "${srcdir}/#{doxyfile}") generator.add_to_intermediate_target(:doxygen, out) generator.add_to_toplevel_target([:all], :doxygen) end end
ninja_rules(writer = generator.ninja)
click to toggle source
# File tools/doxygen.rb, line 65 def ninja_rules(writer = generator.ninja) writer.rule('doxygen', command, description: 'Doxygen $in', restat: 1) end
ninja_variables(writer = generator.ninja)
click to toggle source
# File tools/doxygen.rb, line 59 def ninja_variables(writer = generator.ninja) writer.comment 'Doxygen' writer.variable('doxygen', @doxygen) writer.newline end
Protected Instance Methods
cmd_force()
click to toggle source
# File tools/doxygen.rb, line 49 def cmd_force if force ' && rm $out' # TODO: rm is not portable else '' end end