84 lines
3.6 KiB
Bash
84 lines
3.6 KiB
Bash
# Template file for 'neovim'
|
|
pkgname=neovim
|
|
version=0.11.0
|
|
revision=1
|
|
# as per https://github.com/neovim/neovim/blob/master/cmake.deps/deps.txt
|
|
_treesitter_c_version=0.23.4
|
|
_treesitter_lua_version=0.3.0
|
|
_treesitter_vim_version=0.5.0
|
|
_treesitter_vimdoc_version=3.0.1
|
|
_treesitter_query_version=0.5.1
|
|
_treesitter_markdown_version=0.4.1
|
|
build_style=cmake
|
|
build_helper="qemu"
|
|
configure_args="-DCOMPILE_LUA=OFF -DENABLE_TRANSLATIONS=ON -DPREFER_LUA=$(vopt_if luajit OFF ON)"
|
|
hostmakedepends="gettext patchelf"
|
|
makedepends="libuv-devel libluv-devel libutf8proc-devel tree-sitter-devel unibilium-devel
|
|
lua51-lpeg $(vopt_if luajit LuaJIT-devel lua51-devel)"
|
|
short_desc="Fork of Vim aiming to improve user experience, plugins and GUIs"
|
|
maintainer="tranzystorekk <tranzystorek.io@protonmail.com>"
|
|
license="Apache-2.0 AND Vim"
|
|
homepage="https://neovim.io"
|
|
changelog="https://github.com/neovim/neovim/releases"
|
|
distfiles="https://github.com/neovim/neovim/archive/refs/tags/v${version}.tar.gz
|
|
https://github.com/tree-sitter/tree-sitter-c/archive/refs/tags/v${_treesitter_c_version}.tar.gz>treesitter_c_${_treesitter_c_version}.tar.gz
|
|
https://github.com/tree-sitter-grammars/tree-sitter-lua/archive/refs/tags/v${_treesitter_lua_version}.tar.gz>treesitter_lua_${_treesitter_lua_version}.tar.gz
|
|
https://github.com/tree-sitter-grammars/tree-sitter-vim/archive/refs/tags/v${_treesitter_vim_version}.tar.gz>treesitter_vim_${_treesitter_vim_version}.tar.gz
|
|
https://github.com/neovim/tree-sitter-vimdoc/archive/refs/tags/v${_treesitter_vimdoc_version}.tar.gz>treesitter_vimdoc_${_treesitter_vimdoc_version}.tar.gz
|
|
https://github.com/tree-sitter-grammars/tree-sitter-query/archive/refs/tags/v${_treesitter_query_version}.tar.gz>treesitter_query_${_treesitter_query_version}.tar.gz
|
|
https://github.com/tree-sitter-grammars/tree-sitter-markdown/archive/refs/tags/v${_treesitter_markdown_version}.tar.gz>treesitter_markdown_${_treesitter_markdown_version}.tar.gz"
|
|
checksum="6826c4812e96995d29a98586d44fbee7c9b2045485d50d174becd6d5242b3319
|
|
b66c5043e26d84e5f17a059af71b157bcf202221069ed220aa1696d7d1d28a7a
|
|
a34cc70abfd8d2d4b0fabf01403ea05f848e1a4bc37d8a4bfea7164657b35d31
|
|
90019d12d2da0751c027124f27f5335babf069a050457adaed53693b5e9cf10a
|
|
76b65e5bee9ff78eb21256619b1995aac4d80f252c19e1c710a4839481ded09e
|
|
fe8c712880a529d454347cd4c58336ac2db22243bae5055bdb5844fb3ea56192
|
|
e0fdb2dca1eb3063940122e1475c9c2b069062a638c95939e374c5427eddee9f"
|
|
|
|
skip_extraction="
|
|
treesitter_c_${_treesitter_c_version}.tar.gz
|
|
treesitter_lua_${_treesitter_lua_version}.tar.gz
|
|
treesitter_vim_${_treesitter_vim_version}.tar.gz
|
|
treesitter_vimdoc_${_treesitter_vimdoc_version}.tar.gz
|
|
treesitter_query_${_treesitter_query_version}.tar.gz
|
|
treesitter_markdown_${_treesitter_markdown_version}.tar.gz"
|
|
|
|
build_options=luajit
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
armv6l|armv7l|riscv64*) build_options_default="" ;;
|
|
*) build_options_default="luajit" ;;
|
|
esac
|
|
|
|
alternatives="
|
|
vi:vi:/usr/bin/nvim
|
|
vi:vi.1:/usr/share/man/man1/nvim.1
|
|
vi:view:/usr/bin/nvim
|
|
vi:view.1:/usr/share/man/man1/nvim.1
|
|
vim:vim:/usr/bin/nvim
|
|
vim:vim.1:/usr/share/man/man1/nvim.1"
|
|
|
|
# They want assertion
|
|
CFLAGS=-UNDEBUG
|
|
|
|
post_extract() {
|
|
for _distfile in ${skip_extraction}; do
|
|
vsrcextract -C .deps/build/src/${_distfile%_*} ${_distfile}
|
|
done
|
|
}
|
|
|
|
pre_configure() {
|
|
# build bundled treesitter parsers
|
|
cmake -S cmake.deps -B .deps -G Ninja -DUSE_BUNDLED=OFF -DUSE_BUNDLED_TS_PARSERS=ON
|
|
cmake --build .deps
|
|
}
|
|
|
|
post_install() {
|
|
vlicense LICENSE.txt
|
|
|
|
if [ "${CROSS_BUILD}" ]; then
|
|
patchelf --replace-needed \
|
|
${XBPS_CROSS_BASE}/usr/lib/lua/5.1/lpeg.so /usr/lib/lua/5.1/lpeg.so \
|
|
${DESTDIR}/usr/bin/nvim
|
|
fi
|
|
}
|