diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4c8bac1..d7f10a2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,13 +6,14 @@ on: pull_request: jobs: - macos: - name: macOS / Ruby ${{ matrix.ruby }} - runs-on: macos-14 + test: + name: ${{ matrix.os }} / Ruby ${{ matrix.ruby }} + runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: - ruby: ['3.2', '3.3', '3.4'] + os: [macos-14, ubuntu-24.04] + ruby: ["3.2", "3.3", "3.4"] steps: - uses: actions/checkout@v4 @@ -20,18 +21,25 @@ jobs: run: | git clone --depth=1 https://github.com/libBeresta/libBeresta.git ../libBeresta - - name: Install build deps (cmake, libpng, zlib, pkg-config) + - name: Install build deps (macOS) + if: runner.os == 'macOS' run: | brew update brew install cmake libpng pkg-config + - name: Install build deps (Linux) + if: runner.os == 'Linux' + run: | + sudo apt-get update + sudo apt-get install -y cmake libpng-dev zlib1g-dev pkg-config build-essential + - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - - name: Build libBeresta.dylib + - name: Build libBeresta shared library run: | cmake -S . -B build \ -DLIBBRST_SOURCE_DIR=$(cd ../libBeresta && pwd) \ diff --git a/CHANGELOG.md b/CHANGELOG.md index 81ecb98..b45db9d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ ## [Unreleased] +### Added +- Linux (Ubuntu 24.04) CI: converted the single macOS job into an + `os × ruby` matrix covering both macOS 14 and Ubuntu 24.04 + (addresses the Linux support noted in 0.1.0 Known limitations). + No Ruby code changes — `Library.lib_path` already resolves `.so`. + ### Changed - Regenerated bindings against upstream naming-convention renames (libBeresta PR #64). Six functions renamed on the FFI surface: