diff --git a/Documentation/mainpage.dox.in b/Documentation/mainpage.dox.in index 46b7acb812ec613c19db445637a17a087bba1cb1..5839fae2f9707603014e554a36043e9d2ea71550 100644 --- a/Documentation/mainpage.dox.in +++ b/Documentation/mainpage.dox.in @@ -31,6 +31,10 @@ * - Data Explorer (GUI) manual: https://gitlab.opengeosys.org/ogs/data_explorer_manual/-/jobs/artifacts/master/raw/ogsde-man.pdf?job=build * - Discussion forum: https://discourse.opengeosys.org * + * \section deps Dependencies + * + * @image html cmake-dependencies.svg "cmake-dependencies" width=300% + * @image html cpp-dependencies.svg "cpp-dependencies" width=300% * * \section internal_modules Internal Modules * diff --git a/config-cpp-dependencies.txt b/config-cpp-dependencies.txt index 0680f5f37942aa2a0c40e2f51294e115691d3e92..b1bf326da097fb36e7016d3c270ef05121a42585 100644 --- a/config-cpp-dependencies.txt +++ b/config-cpp-dependencies.txt @@ -94,4 +94,3 @@ blacklist: [ Applications/Utils Tests ] - diff --git a/scripts/ci/jobs/build-docs.yml b/scripts/ci/jobs/build-docs.yml index e3fd6349c310f86888c70fbbb084535866d03cca..696398b1ccf635c4afce2d3d887e2fa30682a7d0 100644 --- a/scripts/ci/jobs/build-docs.yml +++ b/scripts/ci/jobs/build-docs.yml @@ -20,12 +20,20 @@ build docs: # HACK to easier linking to the generated pages - echo '<meta http-equiv="REFRESH" content="0;URL=build/docs/index.html">' >> Doxygen.html - mkdir -p build + # cpp-dependencies - NUM_CYCLES=`/opt/cppcheck/bin/cpp-dependencies --stats|grep cycles|cut -d " " -f 2` - echo "num_cycles $NUM_CYCLES" > metrics.txt - /opt/cppcheck/bin/cpp-dependencies --graph cpp-dependencies.dot && dot -Tsvg cpp-dependencies.dot -o build/cpp-dependencies.svg + # lizard + - python /opt/lizard/lizard.py -l cpp -w -t 8 > lizard.txt || true + - cat lizard.txt + - NUM_LIZARD_ISSUES=`cat lizard.txt | wc -l` + - echo "lizard_issues $NUM_LIZARD_ISSUES" >> metrics.txt + - python /opt/lizard/lizard.py -l cpp -t 8 --html -o Lizard.html + # build - cd build - cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DOGS_USE_CONAN=OFF -DOGS_USE_POETRY=OFF - - cmake . --graphviz=cmake-dependencies.dot && dot -Tsvg cmake-dependencies.dot + - cmake . --graphviz=cmake-dependencies.dot && dot -Tsvg cmake-dependencies.dot -o cmake-dependencies.svg - cmake . -DOGS_BUILD_PROCESSES=SteadyStateDiffusion - cmake --build . --target doc > >(tee make-docs.output) - cat DoxygenWarnings.log|grep -v 'too many nodes' @@ -53,7 +61,10 @@ build docs: paths: - Doxygen.html - build/docs - - build/*-dependencies.svg + - build/cpp-dependencies.svg + - build/cmake-dependencies.svg + - Lizard.html + - lizard.txt expire_in: 1 week reports: metrics: build/metrics.txt diff --git a/scripts/cmake/DocumentationSetup.cmake b/scripts/cmake/DocumentationSetup.cmake index a9ce78bab59f666d7c4fc7d00851e20697872a5f..026aa6a22bcc526b3eea1787d7af99f3370582a7 100644 --- a/scripts/cmake/DocumentationSetup.cmake +++ b/scripts/cmake/DocumentationSetup.cmake @@ -38,7 +38,7 @@ set(DOXYGEN_CITE_BIB_FILES set(DOXYGEN_QUIET YES) set(DOXYGEN_WARN_LOGFILE ${PROJECT_BINARY_DIR}/DoxygenWarnings.log) set(DOXYGEN_EXCLUDE_PATTERNS moc_* ui_* CMake*) -set(DOXYGEN_IMAGE_PATH ${PROJECT_SOURCE_DIR}/Documentation/images) +set(DOXYGEN_IMAGE_PATH ${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/Documentation/images) set(DOXYGEN_SOURCE_BROWSER YES) set(DOXYGEN_INLINE_SOURCES YES) set(DOXYGEN_REFERENCED_BY_RELATION YES)