mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
ci: test build with external dependencies on every pull request
Only testing the build with external dependencies on build system
changes is too naive, as demonstrated by
b9f19d3e28
.
This commit is contained in:
parent
6cd7b5eeef
commit
5aaed9cbfc
43
.github/workflows/build.yml
vendored
43
.github/workflows/build.yml
vendored
@ -71,46 +71,3 @@ jobs:
|
|||||||
|
|
||||||
- name: Install
|
- name: Install
|
||||||
run: make install
|
run: make install
|
||||||
|
|
||||||
with-external-deps:
|
|
||||||
runs-on: ubuntu-22.04
|
|
||||||
timeout-minutes: 10
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: |
|
|
||||||
sudo add-apt-repository ppa:neovim-ppa/stable
|
|
||||||
./.github/scripts/install_deps.sh
|
|
||||||
sudo apt-get install -y \
|
|
||||||
libluajit-5.1-dev \
|
|
||||||
libmsgpack-dev \
|
|
||||||
libtermkey-dev \
|
|
||||||
libtree-sitter-dev \
|
|
||||||
libunibilium-dev \
|
|
||||||
libuv1-dev \
|
|
||||||
lua-busted \
|
|
||||||
lua-filesystem \
|
|
||||||
lua-inspect \
|
|
||||||
lua-lpeg \
|
|
||||||
lua-nvim \
|
|
||||||
luajit
|
|
||||||
# libvterm-dev \
|
|
||||||
# lua-luv-dev
|
|
||||||
|
|
||||||
# Remove comments from packages once we start using these external
|
|
||||||
# dependencies.
|
|
||||||
|
|
||||||
- name: Build third-party deps
|
|
||||||
run: |
|
|
||||||
# Ideally all dependencies should external for this job, but some
|
|
||||||
# dependencies don't have the required version available. We use the
|
|
||||||
# bundled versions for these with the hopes of being able to remove them
|
|
||||||
# later on.
|
|
||||||
cmake -S cmake.deps -B .deps -G Ninja -D USE_BUNDLED=OFF -D USE_BUNDLED_LUV=ON -D USE_BUNDLED_LIBVTERM=ON
|
|
||||||
cmake --build .deps
|
|
||||||
|
|
||||||
- name: Build
|
|
||||||
run: |
|
|
||||||
cmake -B build -G Ninja
|
|
||||||
cmake --build build
|
|
||||||
|
45
.github/workflows/test.yml
vendored
45
.github/workflows/test.yml
vendored
@ -359,3 +359,48 @@ jobs:
|
|||||||
$env:PATH = "C:\msys64\usr\bin;$env:PATH"
|
$env:PATH = "C:\msys64\usr\bin;$env:PATH"
|
||||||
& "C:\msys64\mingw64\bin\mingw32-make.exe" -C $(Convert-Path test\old\testdir) VERBOSE=1
|
& "C:\msys64\mingw64\bin\mingw32-make.exe" -C $(Convert-Path test\old\testdir) VERBOSE=1
|
||||||
$env:PATH = $OldPath
|
$env:PATH = $OldPath
|
||||||
|
|
||||||
|
with-external-deps:
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
timeout-minutes: 10
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: |
|
||||||
|
sudo add-apt-repository ppa:neovim-ppa/stable
|
||||||
|
./.github/scripts/install_deps.sh
|
||||||
|
sudo apt-get install -y \
|
||||||
|
libluajit-5.1-dev \
|
||||||
|
libmsgpack-dev \
|
||||||
|
libtermkey-dev \
|
||||||
|
libtree-sitter-dev \
|
||||||
|
libunibilium-dev \
|
||||||
|
libuv1-dev \
|
||||||
|
lua-busted \
|
||||||
|
lua-filesystem \
|
||||||
|
lua-inspect \
|
||||||
|
lua-lpeg \
|
||||||
|
lua-nvim \
|
||||||
|
luajit
|
||||||
|
# libvterm-dev \
|
||||||
|
# lua-luv-dev
|
||||||
|
|
||||||
|
# Remove comments from packages once we start using these external
|
||||||
|
# dependencies.
|
||||||
|
|
||||||
|
- uses: ./.github/actions/cache
|
||||||
|
|
||||||
|
- name: Build third-party deps
|
||||||
|
run: |
|
||||||
|
# Ideally all dependencies should external for this job, but some
|
||||||
|
# dependencies don't have the required version available. We use the
|
||||||
|
# bundled versions for these with the hopes of being able to remove them
|
||||||
|
# later on.
|
||||||
|
cmake -S cmake.deps -B .deps -G Ninja -D USE_BUNDLED=OFF -D USE_BUNDLED_LUV=ON -D USE_BUNDLED_LIBVTERM=ON
|
||||||
|
cmake --build .deps
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: |
|
||||||
|
cmake -B build -G Ninja
|
||||||
|
cmake --build build
|
||||||
|
Loading…
Reference in New Issue
Block a user