diff --git a/Documentation/Doxyfile.in b/Documentation/Doxyfile.in index edb501954b1f6137ac4b92ec65b8dca5225b2134..296f1dae7234d61e00add2fea51c4ffd08c6cfbc 100644 --- a/Documentation/Doxyfile.in +++ b/Documentation/Doxyfile.in @@ -769,7 +769,7 @@ WARN_FORMAT = "$file:$line: $text" # messages should be written. If left blank the output is written to standard # error (stderr). -WARN_LOGFILE = +WARN_LOGFILE = ${OGS_DOXYGEN_LOGFILE} #--------------------------------------------------------------------------- # Configuration options related to the input files diff --git a/scripts/cmake/DocumentationSetup.cmake b/scripts/cmake/DocumentationSetup.cmake index 884b77ab72648253ce4f1fce7e3d5f299b8e9af5..e7bea8c760f3d50e9ea97c3fce9708b3a811e23f 100644 --- a/scripts/cmake/DocumentationSetup.cmake +++ b/scripts/cmake/DocumentationSetup.cmake @@ -1,6 +1,7 @@ if(DOXYGEN_FOUND) option(DOCS_GENERATE_DOCSET "Generate Dash Docsets." OFF) + option(DOCS_GENERATE_LOGFILE "Outputs Doxygen warnings to a file in the build directory." OFF) set(DOT_FOUND "NO") if(DOXYGEN_DOT_FOUND) @@ -36,6 +37,10 @@ if(DOXYGEN_FOUND) configure_file(Documentation/DocsetFeed.xml.in ${PROJECT_BINARY_DIR}/docs/ogs6.xml) endif() + if(DOCS_GENERATE_LOGFILE) + set(OGS_DOXYGEN_LOGFILE "${PROJECT_BINARY_DIR}/DoxygenWarnings.log" CACHE INTERNAL "") + endif() + configure_file(Documentation/Doxyfile.in ${PROJECT_BINARY_DIR}/Doxyfile) if (BASH_TOOL_PATH AND PYTHON_EXECUTABLE) diff --git a/scripts/jenkins/docs.groovy b/scripts/jenkins/docs.groovy index 21da21820dd61e2f07b16adf7d44fe8830b8e514..6ccfbec35b2cd23c13421ae4c14f36c1328a6972 100644 --- a/scripts/jenkins/docs.groovy +++ b/scripts/jenkins/docs.groovy @@ -1,13 +1,14 @@ def defaultCMakeOptions = '-DOGS_LIB_BOOST=System ' + - '-DOGS_LIB_VTK=System' + '-DOGS_LIB_VTK=System ' + + '-DDOCS_GENERATE_LOGFILE=ON' def configure = new ogs.configure() def build = new ogs.build() def post = new ogs.post() def helper = new ogs.helper() -docker.image('ogs6/gcc-base:16.04').inside() { +docker.image('ogs6/gcc-base:latest').inside() { stage('Configure (Docs)') { configure.linux 'build', "${defaultCMakeOptions}" } @@ -20,11 +21,12 @@ docker.image('ogs6/gcc-base:16.04').inside() { stage('Reports (Docs)') { publishHTML(target: [allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'build/docs', reportFiles: 'index.html', reportName: 'Doxygen']) - step([$class: 'WarningsPublisher', canResolveRelativePaths: false, - canRunOnFailed: true, consoleParsers: [[parserName: 'Doxygen']], - defaultEncoding: '', excludePattern: '', healthy: '', - includePattern: '', messagesPattern: '', unHealthy: '', - unstableNewAll: '0', useStableBuildAsReference: true]) + step([$class: 'WarningsPublisher', canComputeNew: false, + canResolveRelativePaths: false, defaultEncoding: '', excludePattern: '', + healthy: '', includePattern: '', messagesPattern: '', + parserConfigurations: [[parserName: 'Doxygen', pattern: + 'build/DoxygenWarnings.log']], + unHealthy: '']) } if (helper.isOriginMaster(this)) {