diff options
Diffstat (limited to 'app-editors/neovim')
18 files changed, 567 insertions, 286 deletions
diff --git a/app-editors/neovim/Manifest b/app-editors/neovim/Manifest index fe903123a573..052fb11ac704 100644 --- a/app-editors/neovim/Manifest +++ b/app-editors/neovim/Manifest @@ -1,2 +1,3 @@ -DIST neovim-0.7.0.tar.gz 10925354 BLAKE2B 0524d008ba1ebbe823406e94cfb048014b26bc394c686b2dd84bb7fae5a1f7f3acd42764b03b6efec10c0f25045c5838f624542b5125947e5f42d3b0d2ad1f84 SHA512 3597c54fb925a4d607bca9ba0fdb37df90ecb816da99f52baf46cc2ec79727a55048ba1d8d22c8e7d61f0e8e35546326b1d0d15c0a91de8bf5bc529c45fb1ce0 -DIST neovim-0.7.2.tar.gz 10933623 BLAKE2B c2db449a91f1685233da7125e3d4b49cb8fe26db5e498fd3a83340bd14842399474fcc7f2c78b88783195c6f7b0b8df196985b70387ed88972372a8866e2c721 SHA512 04d0fa5b23018531b70b53271821bf6944cde1bcec2210b99f5888e1339cd38f57feaa8e40874a3a504930e6614980947f31852185cbcd2ce106a0867896dd79 +DIST neovim-0.10.0.tar.gz 12792034 BLAKE2B b9bf44d2f0ae1075196f5f96b2fb5e974907406fa6e5bf09593d1f9f36135dab466b6a063d1d03e3716dce435df296ec6d00a2f015e85d0edd231fb9fd4c9385 SHA512 878cb58729a18179b38303bd9cf79e38997c87946665ac4e7b76d87e15f5d001028fd1454ce30b20773b20a4fe929dfa399fc2ec7f6db0774a4e864c9e8586c1 +DIST neovim-0.9.4.tar.gz 11585425 BLAKE2B f98b9737df537be9a6f9bfba0e48f47f33cacdf5aa5f9fb3b47a693ea9fa5fbe32aa8628403fdb136b625ccad30c8aad1c25abe280384515df603e92d9ed898a SHA512 a9bac18aeecd99dfeab79b367c3f0c46003b95d057edb6fd18ba178d6b6f22434689508d0bfe91b2f771ef0a23a4888815e8c4001abb76f2a60357bab0cd7004 +DIST neovim-0.9.5.tar.gz 11590180 BLAKE2B a982ea5704a8e5810c42475198157c3d2255c033f47cba940f9f6414c649167ecafe08c7fe9aeb3154a15566fdf8f5db8d535fa752e467e36ff5d552a7aa2179 SHA512 6e20d0a1d506dc292dd68dabe4b5635f86c019ca832f9927e907377e6d21fe7765b3010f5bba644bb2d7a76c178d55b290af24856a7e3c4083a1aa60bc496775 diff --git a/app-editors/neovim/files/neovim-0.4.4-cmake-darwin.patch b/app-editors/neovim/files/neovim-0.4.4-cmake-darwin.patch deleted file mode 100644 index 4fa8bf45bcbd..000000000000 --- a/app-editors/neovim/files/neovim-0.4.4-cmake-darwin.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 07928e3..08881ee 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -58,23 +58,6 @@ endif() - # used for check_c_compiler_flag - include(CheckCCompilerFlag) - --if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") -- # CMake tries to treat /sw and /opt/local as extension of the system path, but -- # that doesn't really work out very well. Once you have a dependency that -- # resides there and have to add it as an include directory, then any other -- # dependency that could be satisfied from there must be--otherwise you can end -- # up with conflicting versions. So, let's make them more of a priority having -- # them be included as one of the first places to look for dependencies. -- list(APPEND CMAKE_PREFIX_PATH /sw /opt/local) -- -- # Work around some old, broken detection by CMake for knowing when to use the -- # isystem flag. Apple's compilers have supported this for quite some time -- # now. -- if(CMAKE_COMPILER_IS_GNUCC) -- set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-isystem ") -- endif() --endif() -- - if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL "Darwin") - # Enable fixing case-insensitive filenames for Windows and Mac. - set(USE_FNAME_CASE TRUE) -diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt -index aa81008..0570dc7 100644 ---- a/src/nvim/CMakeLists.txt -+++ b/src/nvim/CMakeLists.txt -@@ -192,10 +192,6 @@ get_directory_property(gen_includes INCLUDE_DIRECTORIES) - foreach(gen_include ${gen_includes} ${LUA_PREFERRED_INCLUDE_DIRS}) - list(APPEND gen_cflags "-I${gen_include}") - endforeach() --if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND CMAKE_OSX_SYSROOT) -- list(APPEND gen_cflags "-isysroot") -- list(APPEND gen_cflags "${CMAKE_OSX_SYSROOT}") --endif() - string(TOUPPER "${CMAKE_BUILD_TYPE}" build_type) - separate_arguments(C_FLAGS_ARRAY UNIX_COMMAND ${CMAKE_C_FLAGS}) - separate_arguments(C_FLAGS_${build_type}_ARRAY UNIX_COMMAND ${CMAKE_C_FLAGS_${build_type}}) -diff --git a/third-party/CMakeLists.txt b/third-party/CMakeLists.txt -index edd5882..e503434 100644 ---- a/third-party/CMakeLists.txt -+++ b/third-party/CMakeLists.txt -@@ -105,13 +105,6 @@ if(CMAKE_CXX_COMPILER) - set(DEPS_CXX_COMPILER "${CMAKE_CXX_COMPILER}") - endif() - --if(CMAKE_OSX_SYSROOT) -- set(DEPS_C_COMPILER "${DEPS_C_COMPILER} -isysroot${CMAKE_OSX_SYSROOT}") -- if(DEPS_CXX_COMPILER) -- set(DEPS_CXX_COMPILER "${DEPS_CXX_COMPILER} -isysroot${CMAKE_OSX_SYSROOT}") -- endif() --endif() -- - # Cross compiling: use these for dependencies built for the - # HOST system, when not crosscompiling these should be the - # same as DEPS_*. Except when targeting Unix in which case
\ No newline at end of file diff --git a/app-editors/neovim/files/neovim-0.4.4-cmake-release-type.patch b/app-editors/neovim/files/neovim-0.4.4-cmake-release-type.patch deleted file mode 100644 index 2c9c80a7a690..000000000000 --- a/app-editors/neovim/files/neovim-0.4.4-cmake-release-type.patch +++ /dev/null @@ -1,13 +0,0 @@ -Ensure that :checkhealth is happy with the Gentoo build type. -https://bugs.gentoo.org/757744 ---- a/runtime/autoload/health/nvim.vim -+++ b/runtime/autoload/health/nvim.vim -@@ -118,7 +118,7 @@ function! s:check_performance() abort - let buildtype = matchstr(execute('version'), '\v\cbuild type:?\s*[^\n\r\t ]+') - if empty(buildtype) - call health#report_error('failed to get build type from :version') -- elseif buildtype =~# '\v(MinSizeRel|Release|RelWithDebInfo)' -+ elseif buildtype =~# '\v(MinSizeRel|Release|RelWithDebInfo|Gentoo)' - call health#report_ok(buildtype) - else - call health#report_info(buildtype) diff --git a/app-editors/neovim/files/neovim-0.4.4-cmake_lua_version.patch b/app-editors/neovim/files/neovim-0.4.4-cmake_lua_version.patch deleted file mode 100644 index 4703dee52613..000000000000 --- a/app-editors/neovim/files/neovim-0.4.4-cmake_lua_version.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -384,7 +384,7 @@ - option(PREFER_LUA "Prefer Lua over LuaJIT in the nvim executable." OFF) - - if(PREFER_LUA) -- find_package(Lua 5.1 REQUIRED) -+ find_package(Lua ${PREFER_LUA} EXACT REQUIRED) - set(LUA_PREFERRED_INCLUDE_DIRS ${LUA_INCLUDE_DIR}) - set(LUA_PREFERRED_LIBRARIES ${LUA_LIBRARIES}) - # Passive (not REQUIRED): if LUAJIT_FOUND is not set, nvim-test is skipped. diff --git a/app-editors/neovim/files/neovim-0.7.2-cmake-darwin.patch b/app-editors/neovim/files/neovim-0.7.2-cmake-darwin.patch deleted file mode 100644 index a8404bd4a97a..000000000000 --- a/app-editors/neovim/files/neovim-0.7.2-cmake-darwin.patch +++ /dev/null @@ -1,55 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -80,23 +80,6 @@ set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:${DEPS_PREFIX}/lib/pkgconfig") - # used for check_c_compiler_flag - include(CheckCCompilerFlag) - --if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") -- # CMake tries to treat /sw and /opt/local as extension of the system path, but -- # that doesn't really work out very well. Once you have a dependency that -- # resides there and have to add it as an include directory, then any other -- # dependency that could be satisfied from there must be--otherwise you can end -- # up with conflicting versions. So, let's make them more of a priority having -- # them be included as one of the first places to look for dependencies. -- list(APPEND CMAKE_PREFIX_PATH /sw /opt/local) -- -- # Work around some old, broken detection by CMake for knowing when to use the -- # isystem flag. Apple's compilers have supported this for quite some time -- # now. -- if(CMAKE_COMPILER_IS_GNUCC) -- set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-isystem ") -- endif() --endif() -- - if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL "Darwin") - # Ignore case when comparing filenames on Windows and Mac. - set(CASE_INSENSITIVE_FILENAME TRUE) ---- a/src/nvim/CMakeLists.txt -+++ b/src/nvim/CMakeLists.txt -@@ -205,10 +205,6 @@ get_directory_property(gen_includes INCLUDE_DIRECTORIES) - foreach(gen_include ${gen_includes} ${LUA_PREFERRED_INCLUDE_DIRS}) - list(APPEND gen_cflags "-I${gen_include}") - endforeach() --if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND CMAKE_OSX_SYSROOT) -- list(APPEND gen_cflags "-isysroot") -- list(APPEND gen_cflags "${CMAKE_OSX_SYSROOT}") --endif() - string(TOUPPER "${CMAKE_BUILD_TYPE}" build_type) - separate_arguments(C_FLAGS_ARRAY UNIX_COMMAND ${CMAKE_C_FLAGS}) - separate_arguments(C_FLAGS_${build_type}_ARRAY UNIX_COMMAND ${CMAKE_C_FLAGS_${build_type}}) ---- a/third-party/CMakeLists.txt -+++ b/third-party/CMakeLists.txt -@@ -117,13 +117,6 @@ if(CMAKE_CXX_COMPILER) - set(DEPS_CXX_COMPILER "${CMAKE_CXX_COMPILER}") - endif() - --if(CMAKE_OSX_SYSROOT) -- set(DEPS_C_COMPILER "${DEPS_C_COMPILER} -isysroot${CMAKE_OSX_SYSROOT}") -- if(DEPS_CXX_COMPILER) -- set(DEPS_CXX_COMPILER "${DEPS_CXX_COMPILER} -isysroot${CMAKE_OSX_SYSROOT}") -- endif() --endif() -- - if(CMAKE_OSX_ARCHITECTURES) - string(REPLACE ";" "|" CMAKE_OSX_ARCHITECTURES_ALT_SEP "${CMAKE_OSX_ARCHITECTURES}") - # The LuaJIT build does not like being passed multiple `-arch` flags diff --git a/app-editors/neovim/files/neovim-0.9.0-cmake-release-type.patch b/app-editors/neovim/files/neovim-0.9.0-cmake-release-type.patch new file mode 100644 index 000000000000..b6026437f7bf --- /dev/null +++ b/app-editors/neovim/files/neovim-0.9.0-cmake-release-type.patch @@ -0,0 +1,17 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 521ef93..a637866 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -114,12 +114,6 @@ set(NVIM_API_LEVEL 11) # Bump this after any API change. + set(NVIM_API_LEVEL_COMPAT 0) # Adjust this after a _breaking_ API change. + set(NVIM_API_PRERELEASE false) + +-# Default to -O2 on release builds. +-if(CMAKE_C_FLAGS_RELEASE MATCHES "-O3") +- message(STATUS "Replacing -O3 in CMAKE_C_FLAGS_RELEASE with -O2") +- string(REPLACE "-O3" "-O2" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") +-endif() +- + # Build-type: RelWithDebInfo + + # /Og means something different in MSVC diff --git a/app-editors/neovim/files/neovim-0.9.0-cmake_lua_version.patch b/app-editors/neovim/files/neovim-0.9.0-cmake_lua_version.patch new file mode 100644 index 000000000000..b14b3b992349 --- /dev/null +++ b/app-editors/neovim/files/neovim-0.9.0-cmake_lua_version.patch @@ -0,0 +1,11 @@ +--- a/src/nvim/CMakeLists.txt ++++ b/src/nvim/CMakeLists.txt +@@ -464,7 +464,7 @@ endif() + # The unit test lib requires LuaJIT; it will be skipped if LuaJIT is missing. + option(PREFER_LUA "Prefer Lua over LuaJIT in the nvim executable." OFF) + if(PREFER_LUA) +- find_package(Lua 5.1 EXACT REQUIRED) ++ find_package(Lua ${PREFER_LUA} EXACT REQUIRED) + target_include_directories(main_lib SYSTEM BEFORE INTERFACE ${LUA_INCLUDE_DIR}) + target_link_libraries(main_lib INTERFACE ${LUA_LIBRARIES}) + # Passive (not REQUIRED): if LUAJIT_FOUND is not set, fixtures for unittests is skipped. diff --git a/app-editors/neovim/files/neovim-0.9.1-cmake-darwin.patch b/app-editors/neovim/files/neovim-0.9.1-cmake-darwin.patch new file mode 100644 index 000000000000..1488148298bd --- /dev/null +++ b/app-editors/neovim/files/neovim-0.9.1-cmake-darwin.patch @@ -0,0 +1,14 @@ +--- a/src/nvim/CMakeLists.txt ++++ b/src/nvim/CMakeLists.txt +@@ -415,11 +415,7 @@ foreach(gen_include ${prop}) + list(APPEND gen_cflags "-I${gen_include}") + endforeach() + endforeach() + +-if(APPLE AND CMAKE_OSX_SYSROOT) +- list(APPEND gen_cflags "-isysroot") +- list(APPEND gen_cflags "${CMAKE_OSX_SYSROOT}") +-endif() + set(gen_cflags ${gen_cflags} -O2) + + set(NVIM_VERSION_GIT_H ${PROJECT_BINARY_DIR}/cmake.config/auto/versiondef_git.h) diff --git a/app-editors/neovim/files/neovim-9999-cmake-darwin.patch b/app-editors/neovim/files/neovim-9999-cmake-darwin.patch index 5b829904a13e..7d2352c6a18b 100644 --- a/app-editors/neovim/files/neovim-9999-cmake-darwin.patch +++ b/app-editors/neovim/files/neovim-9999-cmake-darwin.patch @@ -1,55 +1,13 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -80,23 +80,6 @@ set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:${DEPS_PREFIX}/lib/pkgconfig") - # used for check_c_compiler_flag - include(CheckCCompilerFlag) - --if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") -- # CMake tries to treat /sw and /opt/local as extension of the system path, but -- # that doesn't really work out very well. Once you have a dependency that -- # resides there and have to add it as an include directory, then any other -- # dependency that could be satisfied from there must be--otherwise you can end -- # up with conflicting versions. So, let's make them more of a priority having -- # them be included as one of the first places to look for dependencies. -- list(APPEND CMAKE_PREFIX_PATH /sw /opt/local) -- -- # Work around some old, broken detection by CMake for knowing when to use the -- # isystem flag. Apple's compilers have supported this for quite some time -- # now. -- if(CMAKE_COMPILER_IS_GNUCC) -- set(CMAKE_INCLUDE_SYSTEM_FLAG_C "-isystem ") -- endif() --endif() -- - if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL "Darwin") - # Ignore case when comparing filenames on Windows and Mac. - set(CASE_INSENSITIVE_FILENAME TRUE) ---- a/cmake.deps/CMakeLists.txt -+++ b/cmake.deps/CMakeLists.txt -@@ -112,13 +112,6 @@ if(CMAKE_CXX_COMPILER) - set(DEPS_CXX_COMPILER "${CMAKE_CXX_COMPILER}") - endif() - --if(CMAKE_OSX_SYSROOT) -- set(DEPS_C_COMPILER "${DEPS_C_COMPILER} -isysroot${CMAKE_OSX_SYSROOT}") -- if(DEPS_CXX_COMPILER) -- set(DEPS_CXX_COMPILER "${DEPS_CXX_COMPILER} -isysroot${CMAKE_OSX_SYSROOT}") -- endif() --endif() -- - if(CMAKE_OSX_ARCHITECTURES) - string(REPLACE ";" "|" CMAKE_OSX_ARCHITECTURES_ALT_SEP "${CMAKE_OSX_ARCHITECTURES}") - # The LuaJIT build does not like being passed multiple `-arch` flags +Patch author: mortezadadgar <mortezadadgar97@gmail.com> --- a/src/nvim/CMakeLists.txt +++ b/src/nvim/CMakeLists.txt -@@ -205,10 +205,6 @@ get_directory_property(gen_includes INCLUDE_DIRECTORIES) - foreach(gen_include ${gen_includes} ${LUA_PREFERRED_INCLUDE_DIRS}) - list(APPEND gen_cflags "-I${gen_include}") +@@ -477,9 +477,6 @@ foreach(target ${targets}) + endforeach() endforeach() --if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND CMAKE_OSX_SYSROOT) -- list(APPEND gen_cflags "-isysroot") -- list(APPEND gen_cflags "${CMAKE_OSX_SYSROOT}") + +-if(APPLE AND CMAKE_OSX_SYSROOT) +- list(APPEND gen_cflags "-isysroot" "${CMAKE_OSX_SYSROOT}") -endif() - string(TOUPPER "${CMAKE_BUILD_TYPE}" build_type) - separate_arguments(C_FLAGS_ARRAY UNIX_COMMAND ${CMAKE_C_FLAGS}) - separate_arguments(C_FLAGS_${build_type}_ARRAY UNIX_COMMAND ${CMAKE_C_FLAGS_${build_type}}) + if(MSVC) + list(APPEND gen_cflags -wd4003) + endif() diff --git a/app-editors/neovim/files/neovim-9999-cmake_lua_version.patch b/app-editors/neovim/files/neovim-9999-cmake_lua_version.patch deleted file mode 100644 index d7e01275fb02..000000000000 --- a/app-editors/neovim/files/neovim-9999-cmake_lua_version.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -384,7 +384,7 @@ - option(PREFER_LUA "Prefer Lua over LuaJIT in the nvim executable." OFF) - - if(PREFER_LUA) -- find_package(Lua 5.1 EXACT REQUIRED) -+ find_package(Lua ${PREFER_LUA} EXACT REQUIRED) - set(LUA_PREFERRED_INCLUDE_DIRS ${LUA_INCLUDE_DIR}) - set(LUA_PREFERRED_LIBRARIES ${LUA_LIBRARIES}) - # Passive (not REQUIRED): if LUAJIT_FOUND is not set, nvim-test is skipped. diff --git a/app-editors/neovim/files/sysinit.vim-r1 b/app-editors/neovim/files/sysinit.vim-r1 new file mode 100644 index 000000000000..de47eef7299e --- /dev/null +++ b/app-editors/neovim/files/sysinit.vim-r1 @@ -0,0 +1,97 @@ +" Default Gentoo configuration file for neovim +" Based on the default vimrc shipped by Gentoo with app-editors/vim-core + +" You can override any of these settings on a global basis via the +" "/etc/vim/nvimrc.local" file, and on a per-user basis via "~/.nvimrc". +" You may need to create these. + +" Neovim comes with sensible defaults, see: +" https://github.com/neovim/neovim/issues/2676 +" Most of the general settings from Gentoo's vimrc have been dropped here. +" We add only some necessary fixes and a few Gentoo specific settings. + +" {{{ Locale settings +" If we have a BOM, always honour that rather than trying to guess. +if &fileencodings !~? "ucs-bom" + set fileencodings^=ucs-bom +endif + +" Always check for UTF-8 when trying to determine encodings. +if &fileencodings !~? "utf-8" + " If we have to add this, the default encoding is not Unicode. + let g:added_fenc_utf8 = 1 + set fileencodings+=utf-8 +endif +" }}} + +" {{{ Fix &shell, see bug #101665. +if "" == &shell + if executable("/bin/bash") + set shell=/bin/bash + elseif executable("/bin/sh") + set shell=/bin/sh + endif +endif +"}}} + +" {{{ Our default /bin/sh is bash, not ksh, so syntax highlighting for .sh +" files should default to bash. See :help sh-syntax and bug #101819. +if has("eval") + let is_bash=1 +endif +" }}} + +" {{{ Autocommands +if has("autocmd") + +augroup gentoo + au! + + " Gentoo-specific settings for ebuilds. These are the federally-mandated + " required tab settings. See the following for more information: + " http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml + " Note that the rules below are very minimal and don't cover everything. + " Better to emerge app-vim/gentoo-syntax, which provides full syntax, + " filetype and indent settings for all things Gentoo. + au BufRead,BufNewFile *.e{build,class} set ts=4 sw=4 noexpandtab + + " When editing a file, always jump to the last cursor position + autocmd BufReadPost * + \ if ! exists("g:leave_my_cursor_position_alone") | + \ if line("'\"") > 0 && line ("'\"") <= line("$") | + \ exe "normal g'\"" | + \ endif | + \ endif + + " When editing a crontab file, set backupcopy to yes rather than auto. See + " :help crontab and bug #53437. + autocmd FileType crontab set backupcopy=yes + + " If we previously detected that the default encoding is not UTF-8 + " (g:added_fenc_utf8), assume that a file with only ASCII characters (or no + " characters at all) isn't a Unicode file, but is in the default encoding. + " Except of course if a byte-order mark is in effect. + autocmd BufReadPost * + \ if exists("g:added_fenc_utf8") && &fileencoding == "utf-8" && + \ ! &bomb && search('[\x80-\xFF]','nw') == 0 && &modifiable | + \ set fileencoding= | + \ endif + + " Strip trailing spaces on write + autocmd BufWritePre *.e{build,class} + \ if ! exists("g:leave_my_trailing_space_alone") | + \ :%s/\s\+$//e | + \ endif + +augroup END + +endif " has("autocmd") +" }}} + +" {{{ nvimrc.local +if filereadable("/etc/vim/nvimrc.local") + source /etc/vim/nvimrc.local +endif +" }}} + +" vim: set tw=80 sw=2 sts=2 et foldmethod=marker : diff --git a/app-editors/neovim/metadata.xml b/app-editors/neovim/metadata.xml index 555238c9fc17..5c58332c3ce4 100644 --- a/app-editors/neovim/metadata.xml +++ b/app-editors/neovim/metadata.xml @@ -1,14 +1,20 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>brahmajit.xyz@gmail.com</email> + <name>Brahmajit Das</name> + </maintainer> <maintainer type="project"> <email>vim@gentoo.org</email> <name>Gentoo Vim Project</name> </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> <use> - <flag name="lto">Build with Link Time Optimization (LTO)</flag> <flag name="nvimpager">Install nvimpager symlink to less.sh macro</flag> - <flag name="tui">Build the neovim unix tui</flag> </use> <upstream> <remote-id type="github">neovim/neovim</remote-id> diff --git a/app-editors/neovim/neovim-0.10.0.ebuild b/app-editors/neovim/neovim-0.10.0.ebuild new file mode 100644 index 000000000000..1ae8d920bf61 --- /dev/null +++ b/app-editors/neovim/neovim-0.10.0.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2024 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 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +fi + +LICENSE="Apache-2.0 vim" +SLOT="0" +IUSE="+nvimpager test" + +# Upstream say the test library needs LuaJIT +# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377 +REQUIRED_USE="${LUA_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.9:= + >=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}-9999-cmake-darwin.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() { + ln -s "${BROOT}"/usr/bin/luajit "${BUILD_DIR}"/luajit || die + # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now + local mycmakeargs=( + # appends -flto + -DENABLE_LTO=OFF + -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 +} diff --git a/app-editors/neovim/neovim-0.9.4-r1.ebuild b/app-editors/neovim/neovim-0.9.4-r1.ebuild new file mode 100644 index 000000000000..a9d362d6c679 --- /dev/null +++ b/app-editors/neovim/neovim-0.9.4-r1.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2024 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 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" +fi + +LICENSE="Apache-2.0 vim" +SLOT="0" +IUSE="+nvimpager test" + +# Upstream say the test library needs LuaJIT +# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377 +REQUIRED_USE="${LUA_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() { + # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now + local mycmakeargs=( + # appends -flto + -DENABLE_LTO=OFF + -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 + newins "${FILESDIR}"/sysinit.vim-r1 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 +} diff --git a/app-editors/neovim/neovim-0.9.4.ebuild b/app-editors/neovim/neovim-0.9.4.ebuild new file mode 100644 index 000000000000..c1f5cc554988 --- /dev/null +++ b/app-editors/neovim/neovim-0.9.4.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2024 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 ~ppc ~ppc64 ~riscv x86 ~x64-macos" +fi + +LICENSE="Apache-2.0 vim" +SLOT="0" +IUSE="+nvimpager test" + +# Upstream say the test library needs LuaJIT +# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377 +REQUIRED_USE="${LUA_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() { + # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now + local mycmakeargs=( + # appends -flto + -DENABLE_LTO=OFF + -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 +} diff --git a/app-editors/neovim/neovim-0.7.2.ebuild b/app-editors/neovim/neovim-0.9.5-r1.ebuild index 0c951d155648..539c462636df 100644 --- a/app-editors/neovim/neovim-0.7.2.ebuild +++ b/app-editors/neovim/neovim-0.9.5-r1.ebuild @@ -1,10 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 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" @@ -15,23 +16,23 @@ if [[ ${PV} == 9999 ]]; then 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 ~riscv ~x86 ~x64-macos" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" fi LICENSE="Apache-2.0 vim" SLOT="0" -IUSE="+lto +nvimpager test +tui" +IUSE="+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 )" +REQUIRED_USE="${LUA_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 @@ -39,7 +40,7 @@ BDEPEND="${LUA_DEPS} # 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.43.0[${LUA_SINGLE_USEDEP}] + >=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}] $(lua_gen_cond_dep ' dev-lua/lpeg[${LUA_USEDEP}] dev-lua/mpack[${LUA_USEDEP}] @@ -47,29 +48,27 @@ DEPEND="${LUA_DEPS} $(lua_gen_cond_dep ' dev-lua/LuaBitOp[${LUA_USEDEP}] ' lua5-{1,2}) - >=dev-libs/libuv-1.44.1:= - >=dev-libs/libvterm-0.1.4 + >=dev-libs/libuv-1.46.0:= + >=dev-libs/libvterm-0.3.3 >=dev-libs/msgpack-3.0.0:= - >=dev-libs/tree-sitter-0.20.6:= - tui? ( - >=dev-libs/libtermkey-0.22 - >=dev-libs/unibilium-2.0.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=" +BDEPEND+=" test? ( $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') ) " PATCHES=( - "${FILESDIR}/${PN}-0.4.4-cmake_lua_version.patch" - "${FILESDIR}/${PN}-0.4.4-cmake-release-type.patch" - "${FILESDIR}/${PN}-0.7.2-cmake-darwin.patch" + "${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() { @@ -77,6 +76,8 @@ src_prepare() { 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 } @@ -88,11 +89,10 @@ src_configure() { # ... but allow turning it off. # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now local mycmakeargs=( - -DENABLE_LTO=$(usex lto) - -DFEAT_TUI=$(usex tui) + # appends -flto + -DENABLE_LTO=OFF -DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)") -DLUA_PRG="${ELUA}" - -DMIN_LOG_LEVEL=3 ) cmake_src_configure } @@ -102,7 +102,7 @@ src_install() { # install a default configuration file insinto /etc/vim - doins "${FILESDIR}"/sysinit.vim + newins "${FILESDIR}"/sysinit.vim-r1 sysinit.vim # conditionally install a symlink for nvimpager if use nvimpager; then diff --git a/app-editors/neovim/neovim-0.7.0.ebuild b/app-editors/neovim/neovim-0.9.5.ebuild index 0ba61a74485c..59f60e257bdd 100644 --- a/app-editors/neovim/neovim-0.7.0.ebuild +++ b/app-editors/neovim/neovim-0.9.5.ebuild @@ -1,10 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 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" @@ -15,23 +16,23 @@ if [[ ${PV} == 9999 ]]; then 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 ~riscv x86 ~x64-macos" + KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 ~riscv x86 ~x64-macos" fi LICENSE="Apache-2.0 vim" SLOT="0" -IUSE="+lto +nvimpager test +tui" +IUSE="+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 )" +REQUIRED_USE="${LUA_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 @@ -39,7 +40,7 @@ BDEPEND="${LUA_DEPS} # 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.43.0[${LUA_SINGLE_USEDEP}] + >=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}] $(lua_gen_cond_dep ' dev-lua/lpeg[${LUA_USEDEP}] dev-lua/mpack[${LUA_USEDEP}] @@ -47,29 +48,27 @@ DEPEND="${LUA_DEPS} $(lua_gen_cond_dep ' dev-lua/LuaBitOp[${LUA_USEDEP}] ' lua5-{1,2}) - >=dev-libs/libuv-1.44.1:= - >=dev-libs/libvterm-0.1.4 + >=dev-libs/libuv-1.46.0:= + >=dev-libs/libvterm-0.3.3 >=dev-libs/msgpack-3.0.0:= - >=dev-libs/tree-sitter-0.20.6:= - tui? ( - >=dev-libs/libtermkey-0.22 - >=dev-libs/unibilium-2.0.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=" +BDEPEND+=" test? ( $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') ) " PATCHES=( - "${FILESDIR}/${PN}-0.4.4-cmake_lua_version.patch" - "${FILESDIR}/${PN}-0.4.4-cmake-release-type.patch" - "${FILESDIR}/${PN}-0.4.4-cmake-darwin.patch" + "${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() { @@ -77,6 +76,8 @@ src_prepare() { 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 } @@ -88,11 +89,10 @@ src_configure() { # ... but allow turning it off. # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now local mycmakeargs=( - -DENABLE_LTO=$(usex lto) - -DFEAT_TUI=$(usex tui) + # appends -flto + -DENABLE_LTO=OFF -DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)") -DLUA_PRG="${ELUA}" - -DMIN_LOG_LEVEL=3 ) cmake_src_configure } diff --git a/app-editors/neovim/neovim-9999.ebuild b/app-editors/neovim/neovim-9999.ebuild index dc40449cb307..e09b705b7388 100644 --- a/app-editors/neovim/neovim-9999.ebuild +++ b/app-editors/neovim/neovim-9999.ebuild @@ -1,10 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 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" @@ -15,23 +16,23 @@ if [[ ${PV} == 9999 ]]; then 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 ~riscv ~x86 ~x64-macos" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos" fi LICENSE="Apache-2.0 vim" SLOT="0" -IUSE="+lto +nvimpager test +tui" +IUSE="+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 )" +REQUIRED_USE="${LUA_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 @@ -39,7 +40,7 @@ BDEPEND="${LUA_DEPS} # 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.43.0[${LUA_SINGLE_USEDEP}] + >=dev-lua/luv-1.45.0[${LUA_SINGLE_USEDEP}] $(lua_gen_cond_dep ' dev-lua/lpeg[${LUA_USEDEP}] dev-lua/mpack[${LUA_USEDEP}] @@ -47,62 +48,45 @@ DEPEND="${LUA_DEPS} $(lua_gen_cond_dep ' dev-lua/LuaBitOp[${LUA_USEDEP}] ' lua5-{1,2}) - >=dev-libs/libuv-1.44.1:= - >=dev-libs/libvterm-0.1.4 + >=dev-libs/libuv-1.46.0:= + >=dev-libs/libvterm-0.3.3 >=dev-libs/msgpack-3.0.0:= - >=dev-libs/tree-sitter-0.20.6:= - tui? ( - >=dev-libs/libtermkey-0.22 - >=dev-libs/unibilium-2.0.0:0= - ) + >=dev-libs/tree-sitter-0.22.6:= + >=dev-libs/unibilium-2.0.0:0= " RDEPEND=" ${DEPEND} app-eselect/eselect-vi " -BDEPEND=" +BDEPEND+=" test? ( $(lua_gen_cond_dep 'dev-lua/busted[${LUA_USEDEP}]') ) " PATCHES=( - "${FILESDIR}/${PN}-0.4.4-cmake-release-type.patch" + "${FILESDIR}/${PN}-0.9.0-cmake_lua_version.patch" + "${FILESDIR}/${PN}-9999-cmake-darwin.patch" ) -if [[ ${PV} == 9999 ]]; then - PATCHES+=( - "${FILESDIR}/${PN}-9999-cmake_lua_version.patch" - "${FILESDIR}/${PN}-9999-cmake-darwin.patch" - ) -else - PATCHES+=( - "${FILESDIR}/${PN}-0.4.4-cmake_lua_version.patch" - "${FILESDIR}/${PN}-0.7.2-cmake-darwin.patch" - ) -fi - 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. + ln -s "${BROOT}"/usr/bin/luajit "${BUILD_DIR}"/luajit || die # TODO: Investigate USE_BUNDLED, doesn't seem to be needed right now local mycmakeargs=( - -DENABLE_LTO=$(usex lto) - -DFEAT_TUI=$(usex tui) + # appends -flto + -DENABLE_LTO=OFF -DPREFER_LUA=$(usex lua_single_target_luajit no "$(lua_get_version)") -DLUA_PRG="${ELUA}" - -DMIN_LOG_LEVEL=3 ) cmake_src_configure } @@ -112,7 +96,7 @@ src_install() { # install a default configuration file insinto /etc/vim - doins "${FILESDIR}"/sysinit.vim + newins "${FILESDIR}"/sysinit.vim-r1 sysinit.vim # conditionally install a symlink for nvimpager if use nvimpager; then |