File tree Expand file tree Collapse file tree 6 files changed +263
-0
lines changed
Expand file tree Collapse file tree 6 files changed +263
-0
lines changed Original file line number Diff line number Diff line change 1+ name : Documentation
2+
3+ on :
4+ push :
5+ tags :
6+ - " *"
7+
8+ env :
9+ CPM_SOURCE_CACHE : ${{ github.workspace }}/cpm_modules
10+
11+ permissions :
12+ contents : write
13+
14+
15+ jobs :
16+ build :
17+ name : Build and publish documentation
18+ runs-on : ubuntu-latest
19+ steps :
20+ - uses : actions/checkout@v3
21+
22+ - uses : actions/cache@v3
23+ with :
24+ path : " **/cpm_modules"
25+ key : ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
26+
27+ - name : Install python dependencies
28+ run : |
29+ pip3 install jinja2==3.1.6 Pygments==2.19.1
30+
31+ - name : Install Doxygen
32+ uses : ssciwr/doxygen-install@v1
33+ with :
34+ version : " 1.13.2"
35+
36+ - name : Build
37+ run : |
38+ cmake -S cpp/documentation -Bbuild
39+ cmake --build build --target GenerateDocs
40+
41+ - name : Publish
42+ uses : peaceiris/actions-gh-pages@v4
43+ with :
44+ github_token : ${{ secrets.GITHUB_TOKEN }}
45+ publish_dir : ./build/doxygen/html
Original file line number Diff line number Diff line change 1+ name : Install
2+
3+ on :
4+ push :
5+ branches :
6+ - master
7+ - main
8+ pull_request :
9+ branches :
10+ - master
11+ - main
12+
13+ env :
14+ CTEST_OUTPUT_ON_FAILURE : 1
15+ CPM_SOURCE_CACHE : ${{ github.workspace }}/cpm_modules
16+
17+ jobs :
18+ build :
19+ runs-on : ubuntu-latest
20+
21+ steps :
22+ - uses : actions/checkout@v3
23+
24+ - uses : actions/cache@v3
25+ with :
26+ path : " **/cpm_modules"
27+ key : ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
28+
29+ - name : Install build deps
30+ run : |
31+ sudo apt-get update
32+ sudo apt-get install -y libcurl4-openssl-dev
33+
34+ - name : build and install library
35+ run : |
36+ cmake -S cpp -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$PWD/local"
37+ sudo cmake --build build --target install
38+
39+ - name : configure (tests)
40+ run : cmake -S cpp/test -Bbuild-test -DTEST_INSTALLED_VERSION=1 -DCMAKE_PREFIX_PATH="$PWD/local"
41+
42+ - name : build (tests)
43+ run : cmake --build build-test --config Debug -j4
44+
45+ - name : test
46+ run : |
47+ cd build-test
48+ ctest --build-config Debug
49+
50+ - name : cleanup
51+ run : |
52+ sudo rm -rf build build-test
53+
Original file line number Diff line number Diff line change 1+ name : MacOS
2+
3+ on :
4+ push :
5+ branches :
6+ - master
7+ - main
8+ pull_request :
9+ branches :
10+ - master
11+ - main
12+
13+ env :
14+ CTEST_OUTPUT_ON_FAILURE : 1
15+ CPM_SOURCE_CACHE : ${{ github.workspace }}/cpm_modules
16+
17+ jobs :
18+ build :
19+ runs-on : macos-latest
20+
21+ steps :
22+ - uses : actions/checkout@v3
23+
24+ - uses : actions/cache@v3
25+ with :
26+ path : " **/cpm_modules"
27+ key : ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
28+
29+ - name : Install macOS build dependencies
30+ run : |
31+ brew update
32+ brew install autoconf automake libtool
33+
34+ - name : configure
35+ run : cmake -S cpp/test -Bbuild -DCMAKE_BUILD_TYPE=Debug
36+
37+ - name : build
38+ run : cmake --build build -j4
39+
40+ - name : test
41+ run : |
42+ cd build
43+ ctest --build-config Debug
Original file line number Diff line number Diff line change 1+ name : Standalone
2+
3+ on :
4+ push :
5+ branches :
6+ - master
7+ - main
8+ pull_request :
9+ branches :
10+ - master
11+ - main
12+
13+ env :
14+ CPM_SOURCE_CACHE : ${{ github.workspace }}/cpm_modules
15+
16+ jobs :
17+ build :
18+ runs-on : ubuntu-latest
19+
20+ steps :
21+ - uses : actions/checkout@v3
22+
23+ - uses : actions/cache@v3
24+ with :
25+ path : " **/cpm_modules"
26+ key : ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
27+
28+ - name : Install build deps
29+ run : |
30+ sudo apt-get update
31+ sudo apt-get install -y libcurl4-openssl-dev
32+
33+ - name : configure
34+ run : cmake -S cpp/standalone -Bbuild -DCMAKE_BUILD_TYPE=Debug
35+
36+ - name : build
37+ run : cmake --build build -j4
38+
39+ - name : run
40+ run : ./build/Aligncount --help
Original file line number Diff line number Diff line change 1+ name : Style
2+
3+ on :
4+ push :
5+ branches :
6+ - master
7+ - main
8+ pull_request :
9+ branches :
10+ - master
11+ - main
12+
13+ env :
14+ CPM_SOURCE_CACHE : ${{ github.workspace }}/cpm_modules
15+
16+ jobs :
17+ build :
18+ runs-on : ubuntu-latest
19+
20+ steps :
21+ - uses : actions/checkout@v3
22+
23+ - uses : actions/cache@v3
24+ with :
25+ path : " **/cpm_modules"
26+ key : ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
27+
28+ - name : Install format dependencies
29+ run : pip3 install clang-format==14.0.6 cmake_format==0.6.11 pyyaml
30+
31+ - name : configure
32+ run : cmake -S cpp/test -Bbuild
33+
34+ - name : check style
35+ run : cmake --build build --target check-format
Original file line number Diff line number Diff line change 1+ name : Ubuntu
2+
3+ on :
4+ push :
5+ branches :
6+ - master
7+ - main
8+ pull_request :
9+ branches :
10+ - master
11+ - main
12+
13+ env :
14+ CTEST_OUTPUT_ON_FAILURE : 1
15+ CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
16+ CPM_SOURCE_CACHE : ${{ github.workspace }}/cpm_modules
17+
18+ jobs :
19+ build :
20+ runs-on : ubuntu-latest
21+
22+ steps :
23+ - uses : actions/checkout@v3
24+
25+ - uses : actions/cache@v3
26+ with :
27+ path : " **/cpm_modules"
28+ key : ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
29+
30+ - name : Install build deps
31+ run : |
32+ sudo apt-get update
33+ sudo apt-get install -y libcurl4-openssl-dev
34+
35+ - name : configure
36+ run : cmake -S cpp/test -Bbuild -DENABLE_TEST_COVERAGE=1 -DCMAKE_BUILD_TYPE=Debug
37+
38+ - name : build
39+ run : cmake --build build -j4
40+
41+ - name : test
42+ run : |
43+ cd build
44+ ctest --build-config Debug
45+
46+ - name : collect code coverage
47+ run : bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
You can’t perform that action at this time.
0 commit comments