Commit Graph

43 Commits

Author SHA1 Message Date
Rui Abreu Ferreira
703cf3197f third-party: Windows fix for luv build recipe
The argument quotes in the luv build recipe did not work
in Windows.
2016-08-26 08:09:56 +01:00
Rui Abreu Ferreira
bed61041a0 third-party: Build busted in Windows
Busted now builds on Windows, remove the check. In Windows the binary
is called busted.bat.
2016-08-26 08:09:56 +01:00
John Szakmeister
1d4506ee17 third-party: force the use of penlight 1.3.2-2 until busted is fixed
penlight 1.4.0 changed how files are being globbed and busted hasn't
been updated accordingly yet.  See Olivine-Labs/busted#528 for more
information.
2016-08-15 05:55:12 -04:00
John Szakmeister
6647f3c047 third-party: don't build busted in parallel with anything
luarocks has had trouble in the past with multiple build/install
commands running at the same time.
2016-08-15 05:43:25 -04:00
Justin M. Keyes
f1eb303187 Merge #5130 from equalsraf/tb-appveyor
Enable MSYS/MinGW builds in Appveyor
2016-08-07 17:35:10 -04:00
Rui Abreu Ferreira
faafd9b70c Build third-party deps in MinGW
Added recipes to build bundled dependencies in native MinGW
toolchains - libuv, luajit, luarocks, msgpack
2016-08-07 21:57:28 +01:00
Rui Abreu Ferreira
db7fdcd0ba MSVC: Build third-party dependencies as release DLLs
Using /MT was causing issues when building luarocks, revert it, use the
dynammic runtime and generate release DLLs for the dependencies.
Some refactoring was required because for linking cmake looks for the
import libraries (.lib) but on runtime executables we need the .dll files
to be in the same folder.

The DLLs are placed in the bin/ folder in order for nvim.exe to run
during the build and tests. The install target installs the DLLs with
the nvim binary - uses GetPrerequisites to find runtime DLLs.

Some minor issues that required adjustments:
- [MSVC] FindMsgpack.cmake now looks for msgpack_import.lib instead of
  msgpack.lib
- The lua-client fails to find libuv.lib, instead it looks for uv.lib,
  added second copy of the file to the install command.
- [MSVC] CMAKE_BUILD_TYPE affects the output paths, default to Release.

Part of these changes are credited to @jasonwilliams200OK who fixed the
third-party recipes to consistently use the same build type.
2016-08-07 21:57:28 +01:00
Justin M. Keyes
fe6ec75725 Merge #4964 from ZyX-I/no-xdg-expand
option: Do not expand options, obtained from XDG vars
2016-08-04 20:59:51 -04:00
David Personette
67062d20ed
CMake: fix USE_BUNDLED_LIBUV
Closes #5114.
2016-07-25 20:56:52 +02:00
ZyX
3878626c05 functests: Add tests for XDG defaults 2016-07-10 02:04:27 +03:00
Björn Linse
5cc87d4dab cmdline: Redraw the cmdline after processing events
vim-patch:7.4.1603

TODO(bfredl): if we allow events in HITRETURN and ASKMORE states,
we need to add the necessary redraws as well.
2016-05-24 22:11:37 +02:00
Thiago de Arruda
c18d5917e3 Update lua client to 0.0.1-24
The new version of the lua client uses libmpack as a backend, and some test
scripts had to be updated to reflect that.
2016-04-13 09:21:32 -03:00
Thiago de Arruda
10a8bb02ac third-party: Add missing *_host dependencies to luarocks packages 2016-04-11 23:07:52 -03:00
Thiago de Arruda
4ae7acd152 Add luv as a third party dependency
Luv is a simple lua binding to libuv, which is now used by neovim lua client.
The bundled luv installation a bit different from other dependencies in that it
is installed two times:

- The "BuildLuv.cmake" script downloads and installs a static version of luv
  using its normal cmake build script. This static version will be used later.
- Luv default rockspec is replaced with the alternate under the "rockspecs"
  directory(the alternate rockspec plays nicer with neovim build system)
- The alternate rockspec is used to build/install the lua module and make it
  available to lua scripts.
2016-04-11 23:07:52 -03:00
Marco Hinz
330794fb05 Luacheck: point to latest rockspec
So far luacheck's rockspec specified only the git protocol. Hence people
behind firewalls/proxies, that block port 9814, had trouble fetching this
dependency via luarocks.

The latest commit updated the rockspec to use either git or https. Thus common
workarounds like this are not needed anymore:

    git config --global url."https://".insteadOf git://

References #3769.
2015-12-01 20:15:03 +01:00
Marco Hinz
818f926eb0 Tests: add luacheck for linting tests
Source: https://github.com/mpeterv/luacheck
Docs:   http://luacheck.readthedocs.org/en/0.12.0/index.html

Run via "make testlint".
2015-11-23 13:57:21 +01:00
Marco Hinz
4680b4f3b1 Remove outdated comment from BuildLuarocks.cmake 2015-11-23 13:27:21 +01:00
John Szakmeister
e34ae35d10 Remove our cliargs workaround use 2.0.rc11 of Busted.
Busted now correctly excludes the 3.0 line of cliargs.
2015-10-28 03:12:48 -04:00
John Szakmeister
804edb0489 Update busted to pick up the CLI fix.
Unfortunately, it's not enough to avoid the rc file.  For now, let's
install a good version of lua_cliargs until the dependency is fixed
upstream.
2015-10-27 05:52:33 -04:00
Justin M. Keyes
7031364c76 test: update lua client to 0.0.1-14 2015-09-10 19:41:44 -04:00
Justin M. Keyes
aea3f70237 test: update lua client to 0.0.1-13 #3281 2015-09-10 02:08:48 -04:00
Florian Walch
b480eb069b CMake: Don't use existing third-party sources by default.
Introduce ALLOW_EXISTING_SRC_DIR option, turned off by default.

The Homebrew formula, which downloads and extracts the third-party
dependency sources before starting the build, would turn this option
ON.
2015-09-09 17:23:22 +02:00
Michael Reed
ff3175c4cd deps: Don't pin dependencies
This effectively reverts 585e5d32a3

The pinning was done at a time when `lua_cliargs` caused test failures,
so an older version which didn't was pinned.  We're now using the latest
version (2.5-1), so the cause of those failures were presumably fixed.
2015-07-18 15:52:15 -04:00
Michael Reed
b8bfc0c736 deps: Update busted: 2.0 rc8 -> 2.0 rc10
This removes the dependency on ansicolors, see [1]:

See [2] for a changelog between the two versions.

[1]: https://github.com/Olivine-Labs/busted/pull/373
[2]: https://github.com/Olivine-Labs/busted/compare/v2.0.rc8-0...a6233a277da4e118f663606d54da8df88a27c076
2015-07-18 15:52:15 -04:00
Rui Abreu Ferreira
8ef5a61dd6 cmake: Use cmake -E touch instead of touch #2730
CMake has a portable touch command using cmake -E touch, use
it instead of calling touch that is only available in Unix.
2015-05-24 02:22:32 -04:00
Rui Abreu Ferreira
cca32e64cc CMake: Build third-party deps in Windows
- Update recipes to build with MSVC or cross compile in Unix with Mingw
- For recipes that need to be reused, wrap recipe in CMake function
  using cmake_parse_arguments
- New directory .deps/host is the install root for HOST targets, the old
  .deps/usr is used for TARGET
- In windows disable builds for terminal libraries and jemalloc
- Added cmake script CopyFilesGlob.cmake to copy files using glob
    cmake -DFROM_GLOB=*.h -DTO=/usr/include -P CopyFilesGlob.cmake
- New CMake variables HOSTDEPS_* can be used in cross compile recipes.
  Except when the target is UNIX, since that would break 32bit builds
  in 64bit Unix systems using the Travis 32bit toolchain
2015-05-15 17:55:01 +03:00
John Szakmeister
765b478b5e third-party: update a couple busted dependencies to newer versions 2015-05-09 09:38:55 -04:00
John Szakmeister
be70f0d2e6 third-party: update dependencies for busted
We didn't have ansicolors pegged, and several others were below the
minimum required versions causing busted to go out and grab newer
versions anyways.  Let's peg them all to useful versions.
2015-05-09 09:38:48 -04:00
Florian Walch
8337cd957e deps: Update lua-client. #2590 2015-05-05 23:29:22 +03:00
Rui Abreu Ferreira
8fcff0370c third-party: Update lua-xml to release 1.1.2 #2586 2015-05-05 15:37:51 -04:00
Rui Abreu Ferreira
f67c3e67ab Update busted version to 2.0.rc8-0 2015-04-22 14:07:10 +01:00
Rui Abreu Ferreira
78460bdf04 Refactor luarocks third-party recipe
- Replace repeated use of the luarocks command and build arguments
  with variables ${LUAROCKS_BINARY} and ${LUAROCKS_BUILDARGS}
2015-04-22 13:45:57 +01:00
Rui Abreu Ferreira
fe9ec9c299 Add option USE_BUNDLED_BUSTED to third-party
- When not running the unit tests, building the third-party busted,
  nvim-client and other dependencies can be skipped by passing
  -DUSE_BUNDLED_BUSTED=FALSE to the third-party project.
2015-04-22 13:45:57 +01:00
Michael Reed
74fbd10e57 Revert "third-party: temporarily drop back to an old version of the busted spec"
No longer needed after
aab5d19d0c

This reverts commit d22f2f9404.
2015-04-16 20:24:15 -04:00
John Szakmeister
d22f2f9404 third-party: temporarily drop back to an old version of the busted spec
The new one contains a clone url that does not work correctly.  Once
that is fixed, we can go back to tracking master.
2015-04-14 05:59:24 -04:00
John Szakmeister
53ba38d806 third-party: remove stray argument
This was missed when dropping our custom output handler.
2015-04-14 05:22:11 -04:00
Thiago de Arruda
484fd734ab build: Remove busted output handler utfTerminalDetailed
Busted now contains "gtest", which can be used for the same purpose as
utfTerminalDetailed.
2015-04-11 08:46:59 -03:00
Thiago de Arruda
5874bc28ea deps: Update busted and dependencies 2015-03-24 12:46:15 -03:00
John Szakmeister
afae3e25d5 build: add support for running the tests in junit format
This requires a couple of extra modules that are not installed by
default, and it requires capturing stdout of the tests--otherwise CMake
output is intermixed with the XML output of busted.
2015-03-21 09:47:49 -04:00
Thiago de Arruda
9af193bc5c deps: Replace cp by ${CMAKE_COMMAND} -E copy for portability 2015-03-15 14:31:03 -03:00
Thiago de Arruda
dbe719317c deps: Add utfTerminalDetailed busted output handler
This is a variant of the utfTerminal output handler that will:

- Output the file name before each suite is executed
- Output the test name before each test is executed

This will make it simpler to identify crashing/hanging tests.
2015-03-15 09:13:26 -03:00
John Szakmeister
e1ad8ae724 third-party: fix some whitespace issues from the recent splitting 2015-03-10 06:04:06 -04:00
Rui Abreu Ferreira
85492e86bd Split third-party recipes into multiple files 2015-03-09 13:24:21 +00:00