diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index a111c120a7..44819acb44 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,7 +13,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-latest, windows-latest] + os: [ubuntu-latest, ubuntu-24.04-arm, macos-latest, windows-latest] emacs-version: - 27.2 - 28.2 @@ -23,6 +23,9 @@ jobs: - os: ubuntu-latest emacs-version: snapshot experimental: true + - os: ubuntu-24.04-arm + emacs-version: snapshot + experimental: true - os: macos-latest emacs-version: snapshot experimental: true @@ -38,9 +41,19 @@ jobs: with: version: ${{ matrix.emacs-version }} - - uses: emacs-eask/setup-eask@master + - name: Setup Eask + uses: emacs-eask/setup-eask@master + if: matrix.os != 'ubuntu-24.04-arm' + with: + version: 'snapshot' + architecture: 'x64' + + - name: Setup Eask for linux-aarch64 + uses: emacs-eask/setup-eask@master + if: matrix.os == 'ubuntu-24.04-arm' with: version: 'snapshot' + architecture: 'arm64' - name: Setup cmake if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' @@ -48,8 +61,12 @@ jobs: with: cmake-version: '3.18.x' + - name: Setup cmake for linux-aarch64 + if: matrix.os == 'ubuntu-24.04-arm' + uses: lukka/get-cmake@latest + - name: Check cmake - if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' + if: matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || matrix.os == 'macos-latest' run: "cmake --version" - uses: actions/setup-python@v5.1.0 @@ -74,11 +91,11 @@ jobs: - uses: actions/checkout@v4 - name: Grant execution permission - if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' + if: matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || matrix.os == 'macos-latest' run: chmod -R 777 ./ - name: Run tests (Unix) - if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' + if: matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || matrix.os == 'macos-latest' run: make unix-ci - name: Run tests (Windows) @@ -86,7 +103,7 @@ jobs: run: make windows-ci - name: Move built artifact (Unix) - if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' + if: matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || matrix.os == 'macos-latest' run: | mv -f ./.eask/ ./test/downstream/.eask/ mv -f ./dist/ ./test/downstream/dist/