summaryrefslogtreecommitdiff
path: root/portmidi/.github/workflows/build.yml
diff options
context:
space:
mode:
Diffstat (limited to 'portmidi/.github/workflows/build.yml')
-rw-r--r--portmidi/.github/workflows/build.yml47
1 files changed, 47 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 @@
+name: build
+
+on:
+ push:
+ pull_request:
+
+jobs:
+ build:
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - name: Ubuntu
+ os: ubuntu-latest
+ install_dir: ~/portmidi
+ cmake_extras: -DCMAKE_BUILD_TYPE=RelWithDebInfo
+ - name: macOS
+ os: macos-latest
+ install_dir: ~/portmidi
+ cmake_extras: -DCMAKE_BUILD_TYPE=RelWithDebInfo
+ - name: Windows
+ os: windows-latest
+ install_dir: C:\portmidi
+ cmake_config: --config RelWithDebInfo
+
+ name: ${{ matrix.name }}
+ runs-on: ${{ matrix.os }}
+ steps:
+ - name: Check out Git repository
+ uses: actions/checkout@v2
+ - name: "[Ubuntu] Install dependencies"
+ run: sudo apt install -y libasound2-dev
+ if: runner.os == 'Linux'
+ - name: Configure
+ run: cmake -D CMAKE_INSTALL_PREFIX=${{ matrix.install_dir }} ${{ matrix.cmake_extras }} -S . -B build
+ - name: Build
+ run: cmake --build build ${{ matrix.cmake_config }}
+ env:
+ CMAKE_BUILD_PARALLEL_LEVEL: 2
+ - name: Install
+ run: cmake --install . ${{ matrix.cmake_config }}
+ working-directory: build
+ - name: Upload Build Artifact
+ uses: actions/upload-artifact@v2
+ with:
+ name: ${{ matrix.name }} portmidi build
+ path: ${{ matrix.install_dir }}