forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Closes: https://bugs.gentoo.org/913912 Signed-off-by: Brahmajit Das <[email protected]> Closes: gentoo#32707 Signed-off-by: Sam James <[email protected]>
- Loading branch information
1 parent
1519e0c
commit a29693b
Showing
2 changed files
with
121 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST neovim-0.9.0.tar.gz 11549103 BLAKE2B f07b61f02a11acf678358999ea364b6a64724451a9a75f2d6ca436edc5ead9c6422f1c7e99c4322dc0bb92daacf306e32e214ab34d10f78f28d4ffad17b878c7 SHA512 e42f09f408b83fc34e8f169321e0349d1f851e67a998265c53d2ddb1a4792c3f4777fabe32baf2c7eff7d3745ff60d4a07da542ccd272883f7f4e080b2c9c1bf | ||
DIST neovim-0.9.1.tar.gz 11567358 BLAKE2B 7aa56c672f7d26db7d47df39941487de32008b9e78921d71860281e8319b30dc6cd889a029c83b61814baecac947f39a950245ed7e51c35509b30e9b39046a58 SHA512 339efd3d8c1a73aa3b43e8770d6943aeba9e4ce6a3598c0424e388f80759d50b14aa7c60fd435bf2d17997476e06d28b79e7e98670d02ca9ceec031841e8b9b8 | ||
DIST neovim-0.9.2.tar.gz 11580390 BLAKE2B 097b0b245e8f987c7f980df2d170f4d62fc08e107f6166f1df4a78776b0aa8b8dc3c699648ae5fa123e54e7599321f0170f93ccee4d89302f25d1b8bba6161c7 SHA512 f12ae48c82c4a3622e464a23966cb06e9da1a7cd000b4efeb8408bb55e189ffeb4ece99e9488244c16f7de70356303e4dc964afd70ab24d23a5e07c59e902ed9 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
# Copyright 1999-2023 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=8 | ||
|
||
# RelWithDebInfo sets -Og -g | ||
CMAKE_BUILD_TYPE=Release | ||
LUA_COMPAT=( lua5-{1..2} luajit ) | ||
inherit cmake lua-single optfeature xdg | ||
|
||
DESCRIPTION="Vim-fork focused on extensibility and agility" | ||
HOMEPAGE="https://neovim.io" | ||
|
||
if [[ ${PV} == 9999 ]]; then | ||
inherit git-r3 | ||
EGIT_REPO_URI="https://github.com/neovim/neovim.git" | ||
else | ||
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz" | ||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~x64-macos" | ||
fi | ||
|
||
LICENSE="Apache-2.0 vim" | ||
SLOT="0" | ||
IUSE="+lto +nvimpager test" | ||
|
||
REQUIRED_USE="${LUA_REQUIRED_USE}" | ||
# Upstream say the test library needs LuaJIT | ||
# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377 | ||
REQUIRED_USE="test? ( lua_single_target_luajit )" | ||
# TODO: Get tests running | ||
RESTRICT="!test? ( test ) test" | ||
|
||
# Upstream build scripts invoke the Lua interpreter | ||
BDEPEND="${LUA_DEPS} | ||
>=dev-util/gperf-3.1 | ||
>=sys-devel/gettext-0.20.1 | ||
virtual/libiconv | ||
virtual/libintl | ||
virtual/pkgconfig | ||
" | ||
# Check https://github.com/neovim/neovim/blob/master/third-party/CMakeLists.txt for | ||
# new dependency bounds and so on on bumps (obviously adjust for right branch/tag). | ||
DEPEND="${LUA_DEPS} | ||
>=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}] | ||
$(lua_gen_cond_dep ' | ||
dev-lua/lpeg[${LUA_USEDEP}] | ||
dev-lua/mpack[${LUA_USEDEP}] | ||
') | ||
$(lua_gen_cond_dep ' | ||
dev-lua/LuaBitOp[${LUA_USEDEP}] | ||
' lua5-{1,2}) | ||
>=dev-libs/libuv-1.46.0:= | ||
>=dev-libs/libvterm-0.3.3 | ||
>=dev-libs/msgpack-3.0.0:= | ||
>=dev-libs/tree-sitter-0.20.8:= | ||
>=dev-libs/libtermkey-0.22 | ||
>=dev-libs/unibilium-2.0.0:0= | ||
" | ||
RDEPEND=" | ||
${DEPEND} | ||
app-eselect/eselect-vi | ||
" | ||
BDEPEND+=" | ||
test? ( | ||
$(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') | ||
) | ||
" | ||
|
||
PATCHES=( | ||
"${FILESDIR}/${PN}-0.9.0-cmake_lua_version.patch" | ||
"${FILESDIR}/${PN}-0.9.1-cmake-darwin.patch" | ||
"${FILESDIR}/${PN}-0.9.0-cmake-release-type.patch" | ||
) | ||
|
||
src_prepare() { | ||
# Use our system vim dir | ||
sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \ | ||
-i src/nvim/globals.h || die | ||
|
||
# https://forums.gentoo.org/viewtopic-p-8750050.html | ||
xdg_environment_reset | ||
cmake_src_prepare | ||
} | ||
|
||
src_configure() { | ||
# Upstream default to LTO on non-debug builds | ||
# Let's expose it as a USE flag because upstream | ||
# have preferences for how we should use LTO | ||
# if we want it on (not just -flto) | ||
# ... but allow turning it off. | ||
# TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now | ||
local mycmakeargs=( | ||
-DENABLE_LTO=$(usex lto) | ||
-DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)") | ||
-DLUA_PRG="${ELUA}" | ||
) | ||
cmake_src_configure | ||
} | ||
|
||
src_install() { | ||
cmake_src_install | ||
|
||
# install a default configuration file | ||
insinto /etc/vim | ||
doins "${FILESDIR}"/sysinit.vim | ||
|
||
# conditionally install a symlink for nvimpager | ||
if use nvimpager; then | ||
dosym ../share/nvim/runtime/macros/less.sh /usr/bin/nvimpager | ||
fi | ||
} | ||
|
||
pkg_postinst() { | ||
xdg_pkg_postinst | ||
|
||
optfeature "clipboard support" x11-misc/xsel x11-misc/xclip gui-apps/wl-clipboard | ||
optfeature "Python plugin support" dev-python/pynvim | ||
optfeature "Ruby plugin support" dev-ruby/neovim-ruby-client | ||
optfeature "remote/nvr support" dev-python/neovim-remote | ||
} |