aboutsummaryrefslogtreecommitdiff
path: root/cmake
Commit message (Collapse)AuthorAge
...
* test: Move 'test/legacy' to 'test/functional'Thiago de Arruda2014-10-01
| | | | | | Busted can only discover tests from a single directory. In order to allow tests under 'legacy' to run as a functional test, it needed to be moved to 'test/functional'.
* test: Replace vroom by lua/busted for functional testsThiago de Arruda2014-09-30
| | | | | | | | | | | | | | | | | | | | | The 'lupa' python package provides a simple way to seamless integrate lua and python code. This commit replaces vroom by a python script that exposes the 'neovim' package to a lua state, and invokes busted to run functional tests. This is a temporary solution that will enable writing functional tests using lua/bused while a lua client library is not available. The reason for dropping vroom is flexibility: Lua/busted has a nice DSL-style syntax while also providing the customization power of a full programming language. Another reason is to use a single framework for unit/functional tests. Two other changes were performed in this commit: - Instead of "gcc-unittest/gcc-ia32", the travis builds for gcc are now identified by "gcc/gcc-32". They will run unit/functional tests for both 64 and 32 bits. - Old integration tests(in src/nvim/testdir) are now ran by the 'oldtest' target
* build: install with the correct permissionsJohn Szakmeister2014-09-22
| | | | | | | | | | | | | | | | | | | The install() command will create the parent directories, but it does so with the user's umask. We want to do our best to make sure the correct permissions are being set, without clobbering existing permissions. To do this, this commit introduces an install_helper(), which is similar in signature to the install() command, to help ensure that directories are created ahead of the actual install() command. This will attempt to use 0644 permissions for files and 0755 permissions for directories by default--though they can be overridden. To make this work correctly, without trying to introduce some mechanism with setting the umask, it meant that there's a small portion that makes use of an "internal" version of the file() command. It has been tested on CMake 2.8.11, 2.8.12, and 3.0.2, and works correctly on all versions. This fixes #1201 and #1086.
* deps: Update to the experimental msgpack v5 branchThiago de Arruda2014-09-12
| | | | | | | | Using msgpack v5 will let nvim be more compatible with msgpack libraries for other platforms. This also replaces "raw" references by "bin" which is the new name for msgpack binary data type
* Update busted to 2.0.rc3.Florian Walch2014-09-11
| | | | | Default to verbose output to show more information in case of errors. Fix #1031.
* CMake: Use DESTDIR for helptags generation.Florian Walch2014-08-23
|
* CMake: Generate helptags during install step.Florian Walch2014-08-23
| | | | Fix #1056.
* Move po generation from Make to CMake.John Szakmeister2014-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #902: localization build: `install`, `uninstall`, `prefixcheck targets. All the language-related bits will now build under CMake. Changes include: * Moving all non-generated sources into the NEOVIM_SOURCES variable to aid in generating the .pot file. * Moving a couple generated sources from NEOVIM_SOURCES and into NEOVIM_GENERATED_SOURCES. * Added NEOVIM_HEADERS to the executable and the library for folks who are using something other than Ninja or makefiles (that way the headers will show up in the IDE files). * Now uses gettext's `--update` switch to update the .po files, rather than doing a fragile `mv` dance that could leave you with a broken working tree if you press CTRL-C at the right time. * Creates `update-po-${LANG}` targets for updating individual languages, just like the original Makefile. * Also adds the `update-po` target for updating all the languages. * Ported the `check-${LANG}` style targets. They're `check-po-${LANG}` under CMake. * Handles all the one-off instances that were in the original Makefile. Fixed up ko.UTF-8.po to include the "Original translation" line like other .po files to make the generation of the "Generate from ..." comments consistent. Updated ko.po with the new text.
* Revert "Merge #928 'Move po gen to cmake'"John Szakmeister2014-07-17
| | | | | This reverts commit 53fba180c32724809d8ab35238eea68440b7ac97, reversing changes made to a3b3db8256c259d10957d45666cf4179e328f3f4.
* Move po generation from Make to CMake.John Szakmeister2014-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #902: localization build: `install`, `uninstall`, `prefixcheck targets. All the language-related bits will now build under CMake. Changes include: * Moving all non-generated sources into the NEOVIM_SOURCES variable to aid in generating the .pot file. * Moving a couple generated sources from NEOVIM_SOURCES and into NEOVIM_GENERATED_SOURCES. * Added NEOVIM_HEADERS to the executable and the library for folks who are using something other than Ninja or makefiles (that way the headers will show up in the IDE files). * Now uses gettext's `--update` switch to update the .po files, rather than doing a fragile `mv` dance that could leave you with a broken working tree if you press CTRL-C at the right time. * Creates `update-po-${LANG}` targets for updating individual languages, just like the original Makefile. * Also adds the `update-po` target for updating all the languages. * Ported the `check-${LANG}` style targets. They're `check-po-${LANG}` under CMake. * Handles all the one-off instances that were in the original Makefile. Fixed up ko.UTF-8.po to include the "Original translation" line like other .po files to make the generation of the "Generate from ..." comments consistent. Updated ko.po with the new text.
* Add cmake platform checksRui Abreu Ferreira2014-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | - Defined CMake checks for all headers in config.h.in - Removed headers checks that are not used anymore: sgtty.h sys/statfs.h libintl.h poll.h - Added UNIX check - Add some fatal checks + Check for setenv() and fail if it does not exist since our os layer just assumes it does + lstat is required by os_unix.c + sys/wait.h is required in UNIX - Removed entries for functions that are not being used: getcwd, getrlimit, getwd, nanosleep, sigaltstack, getwd, sigstack, fseeko - Replaced nearly all defines in config.h.in for functions with compile time checks - Add check for symbol FD_CLOEXEC - Add check for langinfo CODESET - HAVE_ICONV_H and HAVE_ICONV hold the expected checks but Neovim uses USE_ICONV define to actually decide whether to enable it - Removed checks that are no longer needed + USEMEMMOVE + _FILE_OFFSET_BITS + HAVE_ST_BLKSIZE + dlfcn.h
* Use default busted pattern for unittests #943Pavel Platto2014-07-14
| | | | | | - Unittest should contain substring '_spec' in filename. - This is the simplest way to use both lua and moonscript tests. - This prevents running of non-test scripts from test folder.
* Refactor the lua dependency checking.Rui Abreu Ferreira2014-07-11
| | | | | | | | This is in preparation for the next step, which is to find a suitable lua interpreter, rather than just erroring when an interpreter is found but doesn't have the necessary dependencies. Helped-by: John Szakmeister <john@szakmeister.net>
* Removed unnecessary PATHS from cmake modulesRui Abreu Ferreira2014-07-08
| | | | | - DEPS_INSTALL_DIR is already set into CMAKE_PREFIX_PATH in the main CMakeLists.txt
* Generate a lua module to help pass build-related settings.John Szakmeister2014-05-03
| | | | | | | This allows us to avoid hard-coding paths and using environment variables to communicate key information to unit tests, which fits with the overall goal of making sure that folks driving CMake directly can continue to do out-of-tree builds.
* Allow a single unittest file to be run.John Szakmeister2014-04-23
| | | | | | | | | | With this, you can now run a single unit test file using: TEST_FILE=/path/to/file make unittest For example, to just run the path unit tests, you can do: TEST_FILE=test/unit/path.moon make unittest
* Configure travis to perform a 32-bit buildThiago de Arruda2014-04-22
| | | | | | | | - Build targeting 32-bit with travis - Code in `before_install`/`after_success` was moved to travis.sh since it provides greater flexibility for detecting the build matrix environment. This improves the build speed since we now install only what's necessary. - Now clint has a dedicated travis worker
* Fix unit testsThiago de Arruda2014-04-14
| | | | | | Apparently busted 1.11.0 is broken(https://github.com/Olivine-Labs/busted/issues/236) in a way that is causing the unit tests to fail. This pins the version to 1.10.0 and also fixes a wrong variable set when msgpack was added as a dependency
* Add cmake module for finding msgpackThiago de Arruda2014-04-11
|
* Append to CMAKE_PREFIX_PATH instead setting it outright.John Szakmeister2014-03-28
| | | | | Also, don't set it in the FindXxx cmake scripts--it's unnecessary, and it resets the value.
* Fail RunUnittests if we get a non-zero exit code from busted.John Szakmeister2014-03-25
|
* Deal with the missing dependencies for libuv.John Szakmeister2014-03-21
| | | | | | Since libuv.pc is broken at the moment, try to determine libuv's dependencies ourselves. This ports most of the checks from libuv into our CMake build, and fixes the build on other unix platforms.
* Revamp the build system.John Szakmeister2014-03-21
| | | | | | | | | | | | | | | | | | | | | This achieves several goals: * Less reliance on scripts so we have better portability to Windows (though we still have a ways to go for proper Windows support). Luajit, luarocks, moonscript, and busted are all installed via CMake now. * Trying to make use of pkg-config to get the correct libraries. The latest libuv is still broken in this regard, but we'll at least be in a position to use it. * Allow the use of Ninja or make. The former runs faster in many environments, and automatically makes use of parallel builds. This also allows for system installed dependencies--though not through the Makefile just yet--and adds support for FreeBSD. This also make us build libuv and luajit as static libraries only, since we're only concerned about having static libraries for our bundled dependencies.
* CMakeLists: Improve handling of libintlAlexis Hildebrandt2014-02-27
| | | | by refactoring it into a separate CMake module
* CMake: add LibUV_USE_STATIC configuration variableRich Wareham2014-02-26
| | | | | | If LibUV_USE_STATIC is set then the static libuv library will be preferred to the shared library. This is useful when building with the bundled libuv but is less useful when building with a system libuv.
* prefer linking to static libuvRich Wareham2014-02-26
| | | | | | | | Explicitly try to find the static libuv library first. This might be considered a hack and if it weren't a single-use module it might be preferable to control static versus shared preferences with a configuration variable.
* automatically discover libuv in CMakeRich Wareham2014-02-26
| | | | Idiomatically discover if libuv is installed.
* add LibFindMacros CMake macro libraryRich Wareham2014-02-26