Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
f00fac9
Install mkdoxy in documentation.yml
echoix Jul 9, 2025
f6be3a2
Update mkdocs.yml for mkdoxy
echoix Jul 9, 2025
99412a5
Update documentation.yml install doxygen
echoix Jul 9, 2025
01803fc
Set up homebrew documentation.yml
echoix Jul 9, 2025
0dd8733
Update documentation.yml mkdocs verbose
echoix Jul 9, 2025
cd0920d
Update mkdocs.yml
echoix Jul 9, 2025
2bba866
Update mkdocs.yml
echoix Jul 9, 2025
086e9d5
Update mkdocs.yml absolute src-dir
echoix Jul 9, 2025
79cf80e
Update mkdocs.yml full-doc false
echoix Jul 9, 2025
67e162f
Update documentation.yml use Ubuntu doxygen
echoix Jul 9, 2025
3702b93
Update documentation.yml Python 3.12
echoix Jul 10, 2025
4d7f7fc
Update mkdocs.yml doxy-cfg recursive and file patterns
echoix Jul 10, 2025
47eedd9
mkdocs: Add mkdoxy to mkdocs requirements
echoix Jul 13, 2025
01f49f4
manual: Ignore cmake folders in doxygen config
echoix Jul 13, 2025
418b66a
mkdocs: Remove manual install of mkdoxy as listed in requirements
echoix Jul 13, 2025
60c5120
mkdocs: Set doxygen programming manual name to "programming8"
echoix Jul 13, 2025
6462de5
mkdocs: Add more file patterns to doxy-cfg
echoix Jul 13, 2025
50f49cb
mkdocs: Add doxygen programming manual to nav
echoix Jul 13, 2025
b286495
mkdocs: Generate doxygen warning logfile
echoix Jul 13, 2025
6539096
mkdocs: Add more exclude patterns to doxy-cfg
echoix Jul 13, 2025
da7e3dc
mkdocs: Use multiline yaml string for exclude patterns
echoix Jul 13, 2025
b5f93b3
mkdocs: Add more exclude to doxy-cfg
echoix Jul 13, 2025
70c60ce
mkdocs: Properly indent EXCLUDE config
echoix Jul 13, 2025
125afbc
mkdocs: Add doxygen files list to nav
echoix Jul 13, 2025
967eb88
mkdocs: Enable mkdoxy debug flag
echoix Jul 13, 2025
2cf718f
mkdocs: Limit mkdoxy file patterns to `*.h` and `*.hpp` instead of `*…
echoix Jul 13, 2025
0489e08
CI(mkdocs): Remove verbose flag from mkdocs
echoix Jul 13, 2025
5afa877
docs: Generate doxygen docs in CI
echoix Jul 13, 2025
672064f
mkdocs: Change exclude patterns to avoid trailing slash
echoix Jul 13, 2025
723c6b9
Update documentation.yml install graphviz
echoix Jul 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 24 additions & 2 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
env:
PYTHONWARNINGS: always
# renovate: datasource=python-version depName=python
PYTHON_VERSION: "3.13"
PYTHON_VERSION: "3.12"

steps:
- name: Checkout core
Expand All @@ -35,7 +35,7 @@ jobs:
- name: Get dependencies
run: |
sudo apt-get update -y
sudo apt-get install -y wget git gawk findutils
sudo apt-get install -y wget git gawk findutils doxygen graphviz
xargs -a <(awk '! /^ *(#|$)/' "grass/.github/workflows/apt.txt") -r -- \
sudo apt-get install -y --no-install-recommends --no-install-suggests

Expand All @@ -45,6 +45,14 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: pip

- name: Set up Homebrew
if: false
id: set-up-homebrew
uses: Homebrew/actions/setup-homebrew@main
- name: Install newer doxygen with homebrew
if: false
run: brew install doxygen

- name: Set version variables
run: |
cd grass
Expand Down Expand Up @@ -190,3 +198,17 @@ jobs:
if-no-files-found: error
path: ${{ env.MKDOCS_DIR }}/site
retention-days: 3

- name: Generate doxygen docs
run: |
cd grass
make htmldocs
- name: Make the doxygen results available
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: doxygen-site
if-no-files-found: error
path: |
grass/html
grass/latex
retention-days: 3
2 changes: 2 additions & 0 deletions include/Make/Doxyfile_arch_html.in
Original file line number Diff line number Diff line change
Expand Up @@ -675,6 +675,7 @@ RECURSIVE = YES
# run.

EXCLUDE = bin.@ARCH@ \
build \
db \
debian \
demolocation \
Expand All @@ -700,6 +701,7 @@ EXCLUDE = bin.@ARCH@ \
man \
misc \
mswindows \
out \
ps \
raster \
raster3d \
Expand Down
2 changes: 2 additions & 0 deletions include/Make/Doxyfile_arch_latex.in
Original file line number Diff line number Diff line change
Expand Up @@ -675,6 +675,7 @@ RECURSIVE = YES
# run.

EXCLUDE = bin.@ARCH@ \
build \
db \
debian \
demolocation \
Expand All @@ -700,6 +701,7 @@ EXCLUDE = bin.@ARCH@ \
man \
misc \
mswindows \
out \
ps \
raster \
raster3d \
Expand Down
70 changes: 69 additions & 1 deletion man/mkdocs/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,71 @@ plugins:
cards_layout_options:
background_color: rgb(76, 176, 91)
background_image: null
- mkdoxy:
projects:
programming8: # name of project must be alphanumeric + numbers (without spaces)
debug: True
#src-dirs: ../../.. # path to source code (support multiple paths separated by space) => INPUT
src-dirs: /home/runner/work/grass/grass/grass
# src-dirs: /home/vscode/grass/lib
# full-doc: False
full-doc: True # if you want to generate full documentation
doxy-cfg: # standard doxygen configuration (key: value)
FILE_PATTERNS: "*.dox *.c *.h *.cpp *.hpp" # specify file patterns to filter out
RECURSIVE: True # recursive search in source directories
WARN_LOGFILE: "doxygen.log"
EXCLUDE_PATTERNS: >-
*/test/*
*/tests/*
*/unit_test/*
*/unit_tests/*
*/unit_test*
*/unit_tests*
*/test_suite/*
*/testsuite/*
*/test_*
*/test.*
*/*local_proto.h
EXCLUDE: >-
bin.*
build
db
debian
demolocation
display
dist.*
doc
general
gui
imagery
include/defs
lib/btree/test
lib/db/dbmi_base/test
lib/db/sqlp/test
lib/gmath/test
lib/gpde/test
lib/linkm/test
lib/raster3d/test
lib/vector/dglib/examples
lib/vector/rtree/docs
python
locale
macosx
man
misc
mswindows
out
ps
raster
raster3d
rpm
scripts
sites
temporal
testsuite
utils
vector
visualization

# Markdown extensions
markdown_extensions:
Expand Down Expand Up @@ -177,7 +242,10 @@ nav:
- PostScript tools: postscript.md
- Miscellaneous tools: miscellaneous.md

- Development: development_intro.md
- Development:
- Development: development_intro.md
- C API reference and developer manual: "programming8/links.md"
- C API reference and developer manual files: "programming8/files.md"

not_in_nav: |
r.*
Expand Down
1 change: 1 addition & 0 deletions man/mkdocs/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ mkdocs-material==9.6.15
pymdown-extensions==10.16
pyyaml-env-tag==1.1
mkdocs-material[imaging]==9.6.15
mkdoxy==1.2.7
Loading