[Doxygen-develop] .rules generation
Brought to you by:
dimitri
From: Greg T. <gre...@bl...> - 2007-04-04 15:54:45
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=UTF-8" http-equiv="Content-Type"> <title></title> </head> <body bgcolor="#ffffff" text="#000000"> <p>Hi there.<br> </p> <p>I think it would be really cool to add the following functionality to doxygen at compile-time. As a warning, I have used doxygen but haven't messed with its source code, so apologies if what I propose is silly or unfeasible.<br> </p> <p>I believe some sort of modification to config.h would allow for generation of an MSVC .rules file similar to (but obviously huger than) than the following:<br> </p> <p><tt><?xml version="1.0" encoding="utf-8"?><br> <VisualStudioToolFile<br> Name="doxygen"<br> Version="8.00"<br> ><br> <Rules><br> <CustomBuildRule<br> Name="doxygen"<br> DisplayName="doxygen"<br> CommandLine="echo @INCLUDE = [inputs]&gt;$(IntDir)\$(InputName).temp&#x0D;&#x0A;[AllOptions]&#x0D;&#x0A;doxygen $(IntDir)\$(InputName).temp"<br> Outputs="$(OutDir)\html\index.html"<br> FileExtensions="*.doxygen"<br> ExecutionDescription="Generating doxygen documentation..."<br> ><br> <Properties><br> <StringProperty<br> Name="PROJECTNAME"<br> DisplayName="Project name"<br> Category="Project"<br> Description="The project name."<br> HelpURL=<a class="moz-txt-link-rfc2396E" href="http://www.stack.nl/~dimitri/doxygen/config.html#cfg_project_name">"http://www.stack.nl/~dimitri/doxygen/config.html#cfg_project_name"</a><br> Switch="echo PROJECT_NAME=[value]&gt;&gt;$(IntDir)\$(InputName).temp &amp;"<br> DefaultValue="$(ProjectName)"<br> /><br> <StringProperty<br> Name="OUTPUTDIRECTORY"<br> DisplayName="Output directory"<br> Category="Project"<br> Description="The output directory for generated documentation."<br> HelpURL=<a class="moz-txt-link-rfc2396E" href="http://www.stack.nl/~dimitri/doxygen/config.html#cfg_output_directory">"http://www.stack.nl/~dimitri/doxygen/config.html#cfg_output_directory"</a><br> Switch="echo OUTPUT_DIRECTORY=[value]&gt;&gt;$(IntDir)\$(InputName).temp &amp;"<br> DefaultValue="$(OutDir)"<br> /><br> <EnumProperty<br> Name="BRIEFMEMBERDESC"<br> DisplayName="Brief Member Desc"<br> Category="Project"<br> Description="Include brief member descriptions after the members."<br> HelpURL=<a class="moz-txt-link-rfc2396E" href="http://www.stack.nl/~dimitri/doxygen/config.html#cfg_brief_member_desc">"http://www.stack.nl/~dimitri/doxygen/config.html#cfg_brief_member_desc"</a> <br> DefaultValue="1"<br> ><br> <Values><br> <EnumValue<br> Value="0"<br> Switch="echo BRIEF_MEMBER_DESC=NO&gt;&gt;$(IntDir)\$(InputName).temp &amp;"<br> DisplayName="No"<br> /><br> <EnumValue<br> Value="1"<br> Switch="echo BRIEF_MEMBER_DESC=YES&gt;&gt;$(IntDir)\$(InputName).temp &amp;"<br> DisplayName="Yes"<br> /><br> </Values><br> </EnumProperty><br> </Properties><br> </CustomBuildRule><br> </Rules><br> </VisualStudioToolFile><br> </tt></p> <p>This would allow for .doxygen files to have their own configuration section in the project settings. Basically, the rule file generates a temporary doxygen file on the fly and then runs doxygen, all based on user-selected parameters in the project settings. I don't foresee this being terribly difficult to do. Another advantage is that it's portable - if you want to carry the project over to posix, just take the generated doxygen file and ignore the MSVC project file.<br> </p> <p>What do you think?<br> </p> <div class="moz-signature">-- <br> <p> Greg Toombs <br> Software consultant <br> <a href="http://www.mountainpath.ca" title="Mountain Path Consultation"> Mountain Path Consultation </a> <br> (519) 400-0065 <br> </p> </div> </body> </html> |