| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Set a maximum test run-time of 20 minutes to:
- fail faster
- avoid wasting CI resources
- set a bound on the test time (if tests take longer than 20 minutes we
need to invest in parallelizing them...)
Timeout looks like:
-- Tests exited non-zero: Process terminated due to timeout
-- No output to stderr.
CMake Error at /…/neovim/cmake/RunTests.cmake:86
(message):
functional tests failed with error: Process terminated due to timeout
|
| |
|
|
|
|
|
|
|
|
| |
`find_package(Foo ...)` expects to find a file FindFoo.cmake and the
resulting variables to be named `Foo_...`. If those don't all match up,
then the detection does not work properly.
Closes #13262
|
|
|
|
|
|
| |
fixup! bundle: move tree-sitter as a bundled dep
fixup! bundle: move tree-sitter as a bundled dep
|
|
|
| |
Lua 5.4 is out, and will be shipped with Fedora 33.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: On Windows with the MSVC build, gettext-translation
"Questa è già la" displays as "Questa <e8> gi<e0> la".
Solution: Fix iconv detection iconv when building gettext.
So HAVE_ICONV is correctly defined when building nvim.
* fix gettext mb chars on MSVC
* fix libintl detection failure on MSVC
fixes #11749
|
|
|
|
|
|
|
|
| |
This avoids invoking CMake after a new commit, which might take 15s on
some systems.
Skipped on CMake < 3.2.0 (missing BYPRODUCTS support).
Co-Authored-By: Justin M. Keyes <justinkz@gmail.com>
|
|
|
| |
Also update doc.
|
|
|
|
| |
Using advanced search and replace technology
|
|
|
| |
This is used internally (e.g. on Travis) for 32-bit builds (`-m32`).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We are using "LIBFOO" prefixes for `LIBFOO_INCLUDE_DIRS` etc, and
therefore need to use this for the PREFIX with LibFindMacros also, so
that `"${${PREFIX}_FIND_VERSION}"` gets handled there properly.
The alternative would be to either manually handle/set the upper/mixed case
variants of those variable additionally, which is not as easy.
Keeping the existing names is useful for packagers.
Before this the version requirements with
`find_package(Unibilium 2.0 REQUIRED)` was not handled (a49cf5126), and
it prepares for using a required version with libvterm
(initially/wrongly ported in 1896c72a5).
|
|
|
|
| |
Calls `GetCompileFlags` from `src/nvim` directory, to include
`--coverage` (and any others).
|
| |
|
|
|
|
|
|
|
|
| |
Use "luv" as imported library to work around "-lluv" being used due to
missing SONAME.
Fixes https://github.com/neovim/neovim/issues/10407.
Ref: https://gitlab.kitware.com/cmake/cmake/issues/19578
Ref: https://github.com/NixOS/nixpkgs/issues/64400#issuecomment-516557253
|
| |
|
|
|
|
|
|
|
|
| |
This was discouraged (as an option) in 5b5d353151 [1], not enabled/used by
default, and not working according to the comment in local.mk.example.
Taken out of https://github.com/neovim/neovim/pull/10395.
1: https://github.com/neovim/neovim/pull/2465
|
|
|
|
|
|
|
|
|
|
|
|
| |
* build: require unibilium>=2.0
This also ports FindUnibilium to LibFindMacros, which was planned
anyway, and makes the version check easier.
With an older Unibilium our fallback code in `terminfo_from_builtin`
will not work (because it assumes the new data structures from 2.0.0 [1]),
and nvim would crash later because of `ut` being NUL.
1: https://github.com/neovim/unibilium/commit/42f3cdd284735bd827691c3d0bfae9472b22d5d5
|
|
|
|
|
|
| |
This is meant to help with test failures where e.g. `busted` itself might
crash or get killed.
Ref: https://github.com/neovim/neovim/issues/10182#issuecomment-514450069
|
|
|
|
|
| |
- Always force TEST_PATH to a relative path.
- Eliminate rel_test_path. (The code simplification is worth the extra
subdirectory below Xtest_tmpdir/.)
|
|
|
|
|
|
|
|
|
|
|
| |
* tests: move "busted" dir to "test"
It is used for outputHandlers only, and clearly belongs to the tests.
Use the full module name with the `-o` option to `busted` then for
clarity.
* luacheck
* test/busted/outputHandlers/TAP.lua: use/extend upstream
|
|
|
| |
Ref: https://github.com/neovim/neovim/pull/10363#issuecomment-508916959
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* build: FindLibIntl: fix warning about CMP0075
The common pattern elsewhere to set this only during the check, and here
it was not unset, resulting in a warning later (on Alpine 3.10):
-- Found Iconv
-- Looking for pthread.h
CMake Warning (dev) at /usr/share/cmake/Modules/CheckIncludeFile.cmake:80 (message):
Policy CMP0075 is not set: Include file check macros honor
CMAKE_REQUIRED_LIBRARIES. Run "cmake --help-policy CMP0075" for policy
details. Use the cmake_policy command to set the policy and suppress this
warning.
CMAKE_REQUIRED_LIBRARIES is set to:
/usr/lib/libintl.so
For compatibility with CMake 3.11 and below this check is ignoring it.
Call Stack (most recent call first):
/usr/share/cmake/Modules/FindThreads.cmake:105 (CHECK_INCLUDE_FILE)
CMakeLists.txt:482 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Looking for pthread.h - found
* build: remove lists / REMOVE_ITEM around check_c_source_compiles
|
|\
| |
| | |
Improve luacheck integration, fix more issues.
|
| |
| |
| |
| |
| |
| |
| |
| | |
- Move .luacheckrc to root, add read_globals=vim
- Simplify lualint target, run it on all lua files
- Lint preload.lua, but ignore W211
- Remove testlint target, included in lualint (and lint)
- Clean up .luacheckrc
|
|/ |
|
|
|
| |
Since 0364f51 it would display a warning.
|
|
|
| |
Source: https://github.com/Tronic/cmake-modules/blob/d6b5e94625d41469eaf1e2c484d7204cd263893d/LibFindMacros.cmake
|
|
|
|
|
|
| |
Apparently forgotten in c83926cd0.
- Also LIMIT_SEARCH was never used.
- Also add LIBLUV_DEFINITIONS, as used with other Find modules.
|
|
|
|
|
|
|
|
|
| |
Keeps using add_definitions for compatibility with older CMake.
Newer CMake (3.12) would have `add_compile_definitions`, but it is not
required, since `add_defitions` was meant to be used for
compile/preprocessor definitions initially anyway.
Ref: https://github.com/neovim/neovim/pull/4389
|
|
|
|
|
| |
Followup to f1f9a2f97.
The mentioned example there did not work after all, likely due to
changing quoting during PR review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The variables are not meant to be defined there really, but only with
the third-party project.
Using them, e.g. with the following, would actually result in libvterm
not being found then:
make CMAKE_EXTRA_FLAGS="-DUSE_BUNDLED_LIBVTERM=ON" \
DEPS_CMAKE_FLAGS="-DUSE_BUNDLED=OFF -DUSE_BUNDLED_LIBVTERM=ON"
In https://github.com/neovim/neovim/pull/6357 they were renamed to
`USE_BUNDLED_X` from `X_USE_BUNDLED`, but the above reasoning applies
to the old names, too.
Internally `CMAKE_PREFIX_PATH` is used to add the built/bundled third
party packages for `find_package`, so there is no reason to e.g. query
the values via `load_cache` for example from the third-party project.
|
|
|
|
|
|
|
|
| |
Just set it from `${CMAKE_HOST_SYSTEM_NAME}` directly, instead of passing it
from the main CMake file (CMAKE_SYSTEM_NAME defaults to it, but is empty
in script mode).
Initially added in 9ce81f7b2, but then even used with unrelated commands
(that do not use RunTests.cmake, e.g. 221f6fffa).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The feature is very rudimentary [1], and causes problems when not using
bundled deps, where it might then fail to find `busted.runner` due to
this.
E.g. with "-DUSE_BUNDLED=OFF -DUSE_BUNDLED_LUAROCKS=ON":
`.deps/usr/bin/busted` contains `exec '/usr/bin/luajit' -e …`, i.e. it
run luajit with adjusted lpath etc.
But using `--lua /usr/bin/luajit` then causes this `busted` wrapper to
be replaced with just `/usr/bin/luajit`, i.e. it is missing the adjusted
lpath then.
1: https://github.com/Olivine-Labs/busted/commit/9eb6c9cf93bc558a2398c822b896990e48bd69fd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- allow for passing in BUSTED_ARGS via env
- quote values of TEST_TAG/TEST_FILTER
Previously TEST_FILTER="'foo bar'" was required.
This allows for:
make functionaltest TEST_FILE=test/functional/terminal/tui_spec.lua \
BUSTED_ARGS="--no-keep-going --shuffle" \
TEST_FILTER="TUI background color handles"
* RunTests.cmake: BUILD_DIR for Xtest files, isolated TMPDIR
Assume relative path for given TEST_PATH.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The package argument is case sensitive, which is important to handle
X_FIND_REQUIRED properly, i.e. error out early if it is not found:
CMake Error at /usr/share/cmake-3.14/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find Unibilium (missing: UNIBILIUM_LIBRARY UNIBILIUM_INCLUDE_DIR)
Otherwise it would continue until:
CMake Error: The following variables are used in this project, but they
are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the
CMake files:
UNIBILIUM_INCLUDE_DIR (ADVANCED)
Quickly checked via `rg 'find_package_handle_standard|find_package.*REQUIRED' -I | sort`.
Ref: https://gitlab.kitware.com/cmake/cmake/issues/19413
|
|
|
|
| |
Added in f65614fb1, forgot to be removed in 55682710a.
|
|
|
|
|
|
| |
Co-authored-by: Andrey Popp <8mayday@gmail.com>
closes #9546
closes #10084
|
|
|
|
|
|
| |
There was never any investigation done to determine whether using
jemalloc was actually a net benefit for nvim. It has been a portability
limitation and adds another factor to consider when triaging issues.
|
|
|
|
|
|
| |
This file wasn't used since e1cc0fe99688. That may have been
accidental, but it's not needed anymore anyway. Also the "Workaround
for hanging" is no longer relevant.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ref #9280
Introduce the `vim.compat` module, to help environments with system Lua
5.2+ run the build/tests. Include the module implicitly in all tests.
ref #8677
legacy `vim` module:
beep
buffer
command
dict
eval
firstline
lastline
line
list
open
type
window
|
| |
|
|
|
|
|
| |
- Empty "--tags=", "--filter=" prevents TEST_FILE from running.
- Fix another bug: TEST_FILTER overwrote TEST_TAG.
|
| |
|
|
|
|
|
|
|
|
|
| |
If check_c_source_compiles() succeeded (HAVE_WORKING_LIBINTL is set)
then the result of find_xxx() doesn't matter. This happens on systems
(linux+glibc) where libintl is available passively.
This allows `find_package(LibIntl REQUIRED)` to work and will still
correctly fail (REQUIRED) on systems lacking libintl.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
It only shortens the traceback a bit for when a module is not found
though, only removing the "(command line):1: in main chunk" (with
lua5.2).
|