Skip to content

Commit 1dfa7fb

Browse files
committed
Add doxygen action
1 parent 86d036c commit 1dfa7fb

File tree

2 files changed

+57
-2
lines changed

2 files changed

+57
-2
lines changed

.github/workflows/doxygen.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Generate Doxygen Documentation
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
jobs:
10+
generate-docs:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
# Checkout the repository
15+
- name: Checkout repository
16+
uses: actions/checkout@v4
17+
18+
- name: Install CMake
19+
uses: lukka/get-cmake@latest
20+
21+
- name: Install doxygen
22+
uses: ssciwr/doxygen-install@v1
23+
24+
- name: Install graphviz
25+
run: |
26+
sudo apt-get update
27+
sudo apt-get install --no-install-recommends -y graphviz
28+
29+
- name: Run configure
30+
run: cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -DCPPSPEC_BUILD_DOCS=ON
31+
32+
# Generate Doxygen documentation
33+
- name: Generate Doxygen documentation
34+
run: cmake --build build --target doxygen
35+
36+
# Deploy to gh-pages branch
37+
- name: Deploy to gh-pages branch
38+
run: |
39+
# Configure Git
40+
git config --global user.name "github-actions[bot]"
41+
git config --global user.email "github-actions[bot]@users.noreply.github.com"
42+
43+
# Create or switch to gh-pages branch
44+
git fetch origin gh-pages || true
45+
git checkout gh-pages || git checkout --orphan gh-pages
46+
47+
# Remove old files and copy new documentation
48+
git rm -rf doxygen || true
49+
mv build/html doxygen
50+
51+
# Commit and push changes
52+
git add .
53+
git commit -m "Update Doxygen documentation"
54+
git push origin gh-pages --force

CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,9 @@ if(CPPSPEC_BUILD_DOCS)
121121
endif()
122122

123123
FetchContent_Declare(doxygen-awesome-css
124-
URL https://github.com/jothepro/doxygen-awesome-css/archive/refs/tags/v2.2.1.tar.gz
125-
URL_HASH MD5=340d3a206794ac01a91791c2a513991f
124+
GIT_REPOSITORY https://github.com/jothepro/doxygen-awesome-css/
125+
GIT_TAG v2.3.4
126+
GIT_SHALLOW 1
126127
)
127128
FetchContent_MakeAvailable(doxygen-awesome-css)
128129

0 commit comments

Comments
 (0)