aboutsummaryrefslogtreecommitdiff
path: root/portmidi/.github
diff options
context:
space:
mode:
Diffstat (limited to 'portmidi/.github')
-rw-r--r--portmidi/.github/workflows/build.yml47
-rw-r--r--portmidi/.github/workflows/docs.yml28
2 files changed, 75 insertions, 0 deletions
diff --git a/portmidi/.github/workflows/build.yml b/portmidi/.github/workflows/build.yml
new file mode 100644
index 0000000..351b5cb
--- /dev/null
+++ b/portmidi/.github/workflows/build.yml
@@ -0,0 +1,47 @@
1name: build
2
3on:
4 push:
5 pull_request:
6
7jobs:
8 build:
9 strategy:
10 fail-fast: false
11 matrix:
12 include:
13 - name: Ubuntu
14 os: ubuntu-latest
15 install_dir: ~/portmidi
16 cmake_extras: -DCMAKE_BUILD_TYPE=RelWithDebInfo
17 - name: macOS
18 os: macos-latest
19 install_dir: ~/portmidi
20 cmake_extras: -DCMAKE_BUILD_TYPE=RelWithDebInfo
21 - name: Windows
22 os: windows-latest
23 install_dir: C:\portmidi
24 cmake_config: --config RelWithDebInfo
25
26 name: ${{ matrix.name }}
27 runs-on: ${{ matrix.os }}
28 steps:
29 - name: Check out Git repository
30 uses: actions/checkout@v2
31 - name: "[Ubuntu] Install dependencies"
32 run: sudo apt install -y libasound2-dev
33 if: runner.os == 'Linux'
34 - name: Configure
35 run: cmake -D CMAKE_INSTALL_PREFIX=${{ matrix.install_dir }} ${{ matrix.cmake_extras }} -S . -B build
36 - name: Build
37 run: cmake --build build ${{ matrix.cmake_config }}
38 env:
39 CMAKE_BUILD_PARALLEL_LEVEL: 2
40 - name: Install
41 run: cmake --install . ${{ matrix.cmake_config }}
42 working-directory: build
43 - name: Upload Build Artifact
44 uses: actions/upload-artifact@v2
45 with:
46 name: ${{ matrix.name }} portmidi build
47 path: ${{ matrix.install_dir }}
diff --git a/portmidi/.github/workflows/docs.yml b/portmidi/.github/workflows/docs.yml
new file mode 100644
index 0000000..d0e251b
--- /dev/null
+++ b/portmidi/.github/workflows/docs.yml
@@ -0,0 +1,28 @@
1name: Generate Docs
2
3on:
4 push:
5 branches:
6 - main
7 workflow_dispatch:
8
9jobs:
10 doxygen:
11 name: Doxygen
12 runs-on: ubuntu-latest
13 steps:
14 - name: "Check out repository"
15 uses: actions/checkout@v2
16
17 - name: Install Doxygen
18 run: sudo apt-get update && sudo apt-get install -y --no-install-recommends doxygen
19
20 - name: Generate Documentation
21 run: doxygen
22 working-directory: .
23
24 - name: Deploy to GitHub Pages
25 uses: peaceiris/actions-gh-pages@v3
26 with:
27 github_token: ${{ secrets.GITHUB_TOKEN }}
28 publish_dir: docs/html