https://swprojects.dkrz.de/redmine/https://swprojects.dkrz.de/redmine/redmine/favicon.ico?17095821032017-09-26T01:22:37ZDKRZ projectsScalES-PPM - Documentation #283: Account for preprocessor directiveshttps://swprojects.dkrz.de/redmine/issues/283?journal_id=5222017-09-26T01:22:37ZMatthew Krupcale
<ul><li><strong>File</strong> <a href="/redmine/attachments/481">scales-ppm-doxygen-filter-preprocess-f90.patch</a> <a class="icon-only icon-download" title="Download" href="/redmine/attachments/download/481/scales-ppm-doxygen-filter-preprocess-f90.patch">scales-ppm-doxygen-filter-preprocess-f90.patch</a> added</li></ul><p><code>doxygen</code> will not run its built-in preprocessor on the Fortran code because it will only do so on Fortran files with upper-case extensions (i.e. <code>*.F</code> or <code>*.F90</code>). To work around this, I came up with a method which runs the actual compiler preprocessor with relevant preprocessor macro definitions passed on the command line for each Fortran <code>*.f90</code> file, using the <code>FILTER_PATTERNS</code> tag. See the attached patch. Note that some of the macro definitions are related to the patch in <a class="issue tracker-2 status-4 priority-4 priority-default" title="Feature: Add support for METIS v4-5 and ParMETIS v3-4 (Feedback)" href="https://swprojects.dkrz.de/redmine/issues/347">#347</a>, but it should not cause problems having additional definitions passed on the command line which are not used.</p>