mirror of
https://github.com/neovim/neovim.git
synced 2024-12-23 20:55:18 -07:00
ci: make all linux releases work with same glibc version
This commit is contained in:
parent
7c48810397
commit
9edddceb18
6
.github/scripts/build_universal_macos.sh
vendored
6
.github/scripts/build_universal_macos.sh
vendored
@ -27,10 +27,8 @@ cmake -S cmake.deps -B .deps -G Ninja -D CMAKE_BUILD_TYPE=${NVIM_BUILD_TYPE} -D
|
||||
cmake --build .deps
|
||||
cmake -B build -G Ninja -D CMAKE_BUILD_TYPE=${NVIM_BUILD_TYPE} -D CMAKE_OSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} -D CMAKE_OSX_ARCHITECTURES=arm64\;x86_64
|
||||
cmake --build build
|
||||
cmake --install build --prefix build/release/nvim-macos
|
||||
cd build
|
||||
# Make sure we build everything for M1 as well
|
||||
for macho in bin/* lib/nvim/parser/*.so; do
|
||||
for macho in build/bin/* build/lib/nvim/parser/*.so; do
|
||||
lipo -info "$macho" | grep -q arm64 || exit 1
|
||||
done
|
||||
cpack -C "$NVIM_BUILD_TYPE"
|
||||
cpack --config build/CPackConfig.cmake
|
||||
|
61
.github/workflows/release.yml
vendored
61
.github/workflows/release.yml
vendored
@ -17,39 +17,10 @@ on:
|
||||
jobs:
|
||||
linux:
|
||||
runs-on: ubuntu-20.04
|
||||
env:
|
||||
CC: gcc-10
|
||||
outputs:
|
||||
version: ${{ steps.build.outputs.version }}
|
||||
release: ${{ steps.build.outputs.release }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Install dependencies
|
||||
run: ./.github/scripts/install_deps.sh
|
||||
- if: github.event_name == 'push' || (github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name != 'nightly')
|
||||
run: printf 'NVIM_BUILD_TYPE=Release\n' >> $GITHUB_ENV
|
||||
- if: github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name == 'nightly')
|
||||
run: printf 'NVIM_BUILD_TYPE=RelWithDebInfo\n' >> $GITHUB_ENV
|
||||
- name: Build release
|
||||
id: build
|
||||
run: |
|
||||
CC=gcc-10 make CMAKE_BUILD_TYPE=${NVIM_BUILD_TYPE} CMAKE_EXTRA_FLAGS="-DCMAKE_INSTALL_PREFIX:PATH="
|
||||
printf 'version<<END\n' >> $GITHUB_OUTPUT
|
||||
./build/bin/nvim --version | head -n 3 >> $GITHUB_OUTPUT
|
||||
printf 'END\n' >> $GITHUB_OUTPUT
|
||||
printf 'release=%s\n' "$(./build/bin/nvim --version | head -n 1)" >> $GITHUB_OUTPUT
|
||||
make DESTDIR="$GITHUB_WORKSPACE/build/release/nvim-linux64" install
|
||||
cd "$GITHUB_WORKSPACE/build/"
|
||||
cpack -C $NVIM_BUILD_TYPE
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: nvim-linux64
|
||||
path: |
|
||||
build/nvim-linux64.tar.gz
|
||||
retention-days: 1
|
||||
|
||||
appimage:
|
||||
runs-on: ubuntu-20.04
|
||||
container:
|
||||
image: ubuntu:18.04
|
||||
options: --privileged # Privileged mode is needed to load fuse module.
|
||||
@ -71,11 +42,19 @@ jobs:
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y build-essential cmake gettext locales ninja-build pkg-config unzip
|
||||
apt-get install -y build-essential cmake gettext ninja-build unzip
|
||||
- if: github.event_name == 'push' || (github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name != 'nightly')
|
||||
run: CC=gcc-10 make appimage-latest
|
||||
run: |
|
||||
echo 'NVIM_BUILD_TYPE=Release' >> $GITHUB_ENV
|
||||
echo 'APPIMAGE_TAG=latest' >> $GITHUB_ENV
|
||||
- if: github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name == 'nightly')
|
||||
run: CC=gcc-10 make appimage-nightly
|
||||
run: |
|
||||
echo 'NVIM_BUILD_TYPE=RelWithDebInfo' >> $GITHUB_ENV
|
||||
echo 'APPIMAGE_TAG=nightly' >> $GITHUB_ENV
|
||||
- name: appimage
|
||||
run: ./scripts/genappimage.sh ${APPIMAGE_TAG}
|
||||
- name: tar.gz
|
||||
run: cpack --config build/CPackConfig.cmake -G TGZ
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: appimage
|
||||
@ -83,6 +62,18 @@ jobs:
|
||||
build/bin/nvim.appimage
|
||||
build/bin/nvim.appimage.zsync
|
||||
retention-days: 1
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: nvim-linux64
|
||||
path: |
|
||||
build/nvim-linux64.tar.gz
|
||||
retention-days: 1
|
||||
- name: Export version
|
||||
id: build
|
||||
run: |
|
||||
printf 'version<<END\n' >> $GITHUB_OUTPUT
|
||||
./build/bin/nvim --version | head -n 3 >> $GITHUB_OUTPUT
|
||||
printf 'END\n' >> $GITHUB_OUTPUT
|
||||
|
||||
macOS:
|
||||
runs-on: macos-11
|
||||
@ -137,7 +128,7 @@ jobs:
|
||||
retention-days: 1
|
||||
|
||||
publish:
|
||||
needs: [linux, appimage, macOS, windows]
|
||||
needs: [linux, macOS, windows]
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
GH_REPO: ${{ github.repository }}
|
||||
|
@ -1,6 +1,7 @@
|
||||
set(CPACK_PACKAGE_NAME "Neovim")
|
||||
set(CPACK_PACKAGE_VENDOR "neovim.io")
|
||||
set(CPACK_PACKAGE_FILE_NAME "nvim")
|
||||
set(CPACK_PACKAGE_DIRECTORY ${PROJECT_BINARY_DIR})
|
||||
|
||||
# From the GitHub About section
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Vim-fork focused on extensibility and usability.")
|
||||
|
@ -26,7 +26,7 @@ APP_DIR="$APP.AppDir"
|
||||
########################################################################
|
||||
|
||||
# Build and install nvim into the AppImage
|
||||
make CMAKE_BUILD_TYPE=RelWithDebInfo CMAKE_EXTRA_FLAGS="-DCMAKE_INSTALL_PREFIX=${APP_DIR}/usr -DCMAKE_INSTALL_MANDIR=man"
|
||||
make CMAKE_BUILD_TYPE="${NVIM_BUILD_TYPE}" CMAKE_EXTRA_FLAGS="-DCMAKE_INSTALL_PREFIX=${APP_DIR}/usr -DCMAKE_INSTALL_MANDIR=man"
|
||||
make install
|
||||
|
||||
########################################################################
|
||||
|
Loading…
Reference in New Issue
Block a user