aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/test.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/test.yml')
-rw-r--r--.github/workflows/test.yml51
1 files changed, 14 insertions, 37 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 0885efddd5..a366dea082 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -106,7 +106,8 @@ jobs:
[
{ runner: ubuntu-24.04, os: ubuntu, flavor: asan, cc: clang, flags: -D ENABLE_ASAN_UBSAN=ON },
{ runner: ubuntu-24.04, os: ubuntu, flavor: tsan, cc: clang, flags: -D ENABLE_TSAN=ON },
- { runner: ubuntu-24.04, os: ubuntu, cc: gcc },
+ { runner: ubuntu-24.04, os: ubuntu, flavor: release, cc: gcc, flags: -D CMAKE_BUILD_TYPE=Release },
+ { runner: ubuntu-24.04-arm, os: ubuntu, flavor: arm, cc: gcc, flags: -D CMAKE_BUILD_TYPE=RelWithDebInfo },
{ runner: macos-13, os: macos, flavor: intel, cc: clang, flags: -D CMAKE_FIND_FRAMEWORK=NEVER, deps_flags: -D CMAKE_FIND_FRAMEWORK=NEVER },
{ runner: macos-15, os: macos, flavor: arm, cc: clang, flags: -D CMAKE_FIND_FRAMEWORK=NEVER, deps_flags: -D CMAKE_FIND_FRAMEWORK=NEVER },
{ runner: ubuntu-24.04, os: ubuntu, flavor: puc-lua, cc: gcc, deps_flags: -D USE_BUNDLED_LUAJIT=OFF -D USE_BUNDLED_LUA=ON, flags: -D PREFER_LUA=ON },
@@ -145,6 +146,10 @@ jobs:
sudo cpanm -n Neovim::Ext || cat "$HOME/.cpanm/build.log"
perl -W -e 'use Neovim::Ext; print $Neovim::Ext::VERSION'
+ - name: Remove .git directory
+ if: ${{ matrix.build.os == 'ubuntu' }}
+ run: cmake -E rm -rf -- .git
+
- name: Build third-party deps
run: |
cmake -S cmake.deps --preset ci -D CMAKE_BUILD_TYPE=Debug ${{ matrix.build.deps_flags }}
@@ -155,9 +160,15 @@ jobs:
cmake --preset ci -D CMAKE_BUILD_TYPE=Debug -D CMAKE_INSTALL_PREFIX:PATH=$INSTALL_PREFIX ${{ matrix.build.flags }}
cmake --build build
- - name: ${{ matrix.test }}
+ - if: ${{ matrix.test == 'oldtest' }}
+ name: ${{ matrix.test }}
+ timeout-minutes: 20
+ run: make -C test/old/testdir NVIM_PRG=$(realpath build)/bin/nvim
+
+ - if: ${{ matrix.test != 'oldtest' }}
+ name: ${{ matrix.test }}
timeout-minutes: 20
- run: make ${{ matrix.test }}
+ run: cmake --build build --target ${{ matrix.test }}
- name: Install
run: |
@@ -193,40 +204,6 @@ jobs:
windows:
uses: ./.github/workflows/test_windows.yml
- # This job tests the following things:
- # - Check if Release, MinSizeRel and RelWithDebInfo compiles correctly.
- # - Test the above build types with the GCC compiler specifically.
- # Empirically the difference in warning levels between GCC and other
- # compilers is particularly big.
- # - Test if the build works with multi-config generators. We mostly use
- # single-config generators so it's nice to have a small sanity check for
- # multi-config.
- build-types:
- runs-on: ubuntu-24.04
- timeout-minutes: 10
- env:
- CC: gcc
- steps:
- - uses: actions/checkout@v4
- - uses: ./.github/actions/setup
-
- - name: Build third-party deps
- run: |
- cmake -S cmake.deps -B .deps -G "Ninja Multi-Config"
- cmake --build .deps
-
- - name: Configure
- run: cmake --preset ci -G "Ninja Multi-Config"
-
- - name: Release
- run: cmake --build build --config Release
-
- - name: RelWithDebInfo
- run: cmake --build build --config RelWithDebInfo
-
- - name: MinSizeRel
- run: cmake --build build --config MinSizeRel
-
with-external-deps:
runs-on: ubuntu-24.04
timeout-minutes: 10