aboutsummaryrefslogtreecommitdiff
path: root/config
Commit message (Collapse)AuthorAge
* build: Do not check for obsolete <termio.h>Justin M. Keyes2016-12-24
|
* tui: check stty/termios for kbsJustin M. Keyes2016-12-23
| | | | | | | | | | | Requires libtermkey 0.19+ Closes #2048 Closes #5693 See https://github.com/neovim/libtermkey/compare/a9b61424aae9f7548162ff112393c5f706cf54f1%5E...c0eb4e4a05f49ad8fee0195c77f2c29d09cc36af See https://bugzilla.redhat.com/show_bug.cgi?id=142659 See https://github.com/tmux/tmux/blob/fe4e9470bb504357d073320f5d305b22663ee3fd/tty-keys.c#L625-L632
* api: api_info()['version']Justin M. Keyes2016-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | API level is disconnected from NVIM version. The API metadata holds the current API level, and the lowest backwards-compatible level supported by this instance. Release 0.1.6 is the first release that reports the Nvim version and API level. metadata['version'] = { major: 0, minor: 1, patch: 6, api_level: 1, api_compatible: 0, api_prerelease: false, } The API level may remain unchanged across Nvim releases if the API has not changed. When changing the API, - set NVIM_API_PRERELEASE to true - increment NVIM_API_LEVEL (at most once per Nvim version) - adjust NVIM_API_LEVEL_COMPAT if backwards-compatibility was broken api_level_0.mpack was generated from Nvim 0.1.5 with: nvim --api-info
* api: Nvim version, API level #5386Rui Abreu Ferreira2016-10-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The API level is disconnected from the NVIM version. The API metadata holds the current API level, and the lowest backwards-compatible level supported by this instance. Release 0.1.6 will be the first release reporting the Nvim version and API level. metadata['version'] = { major: 0, minor: 1, patch: 6, prerelease: true, api_level: 1, api_compatible: 0, } The API level may remain unchanged across Neovim releases if the API has not changed. When changing the API the CMake variable NVIM_API_PRERELEASE is set to true, and NVIM_API_CURRENT/NVIM_API_COMPATIBILITY are incremented accordingly. The functional tests check the API table against fixtures of past versions of Neovim. It compares all the functions in the old table with the new one, it does ignore some metadata attributes that do not alter the function signature or were removed since 0.1.5. Currently the only fixture is 0.mpack, generated from Neovim 0.1.5 with nvim --api-info.
* config: Allow setting USERNAME/HOSTNAME from the environmentJames McCoy2016-10-08
| | | | | | | | | Allowing this to be controlled externally improves reproducibility, as well as provides a more useful address to report for "Compiled by". For example, I intend to set it to the packaging list when building the Debian package. Signed-off-by: James McCoy <jamessan@jamessan.com>
* file: Add buffered reading and writingZyX2016-06-23
| | | | Still no busted tests. Not tested without HAVE_PREADV.
* file,os/fs,shada: Separate opening, closing, writing and reading filesZyX2016-06-23
| | | | | | | | Moves low-level functions handling to os/fs.c. Adds file.c with a proxy interface. Target: while leaving syscalls handling is os.c (partially handled by libuv), add buffering for reading and writing to file.c.
* do_source: less fuss about fopen_noinh_readbinJustin M. Keyes2016-05-28
|
* Windows: Don't build the TUI is systems where it is not supportedRui Abreu Ferreira2016-05-27
| | | | | | The TUI can be enabled/disabled at build time with -DFEAT_TUI, default is ON for UNIX, and OFF for non UNIX. When off, Neovim prints a message to stderr, along with a list of the server endpoints.
* Fix be64toh() detection on BSDs.John Szakmeister2016-05-14
| | | | | | | | | | | | | | | | This was noticed due to a user issue (#4750) when building Neovim 0.1.4 via ports. The crux of the issue is that we did not detect the be64toh() macro, because there is no endian.h on FreeBSD (along with several other BSDs). So we were defaulting to our builtin version of be64toh(). However, it appears that sys/endian.h was being picked up by an include (likely msgpack.h) and so be64toh() was actually defined and corrupting our definition of it. So the answer here was to use the correct include file in our check, and export that information in the config.h. Then we use that information to include the right header in shada.c. This fixes #4750.
* build: install *.mo into the "standard" directoryJun T2016-02-23
| | | | | | | Change POROJECT_NAME to 'nvim', and use it as the gettext domain name. The *.mo files, previously installed as $runtime/lang/xx/LC_MESSAGES/nvim.mo, are now installed as $prefix/locale/xx/LC_MESSAGES/nvim.mo.
* config: Remove HAVE_UNISTD_H.Seth Jackson2016-01-18
| | | | | | | | | Unix systems must have this header but Windows does not have it at all. Since src/nvim/os/unix_defs.h includes <unistd.h> without the guard in order to avoid including this in the numerous places we would need <unistd.h> on Unix we just include src/nvim/os/os.h which will pull in <unistd.h> for us.
* config: Remove duplicate check for HAVE_UTIME_H.Seth Jackson2016-01-18
|
* config: Remove HAVE_FCNTL_H.Seth Jackson2016-01-17
| | | | We do not use it and all systems we support have <fcntl.h>.
* misc: UNIX => Unix #4022Seth Jackson2016-01-16
| | | | | | | | | | Although UNIX is a registered trademark of The Open Group, it doesn't really matter whether we refer to these systems as UNIX, Unix, or Unix-like. So, for consistency, refer to them collectively as Unix. Related: http://www.greens.org/about/unix.html http://www.unixica.com/html/unixunix.html
* config: Cleanup unused identifiers.Seth Jackson2016-01-12
| | | | | | HAVE_CRT_EXTERNS_H is unused since a3ec68c. SIZEOF_OFF_T is unused since f916cf0. HAVE_LIBGEN_H was never used.
* Stop using <stropts.h>Michael Reed2016-01-12
| | | | | | | | | | In Vim, at least the constant `I_PUSH` is used from <stropts.h>, but Neovim doesn't seem to use anything from said header. Besides that, POSIX.1-2008[1] marks this header as obsolescent, and there don't seem to be many platforms that even have it. [1]: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stropts.h.html#tag_13_52_11
* os/*_defs.h: MAXNAMLEN cleanupMichael Reed2016-01-12
| | | | | | | | | | | | | For non-Windows systems, we assume that NAME_MAX is in <limits.h>, as specified in POSIX.1-2008[1]. For Windows, which doesn't have NAME_MAX, just define it ourselves to _MAX_PATH[2]. Also, remove two (now unused) HAVE_*_H checks. [1]: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html [2]: https://msdn.microsoft.com/en-us/library/930f87yf.aspx Helped-by: Seth Jackson
* Port fsync() to libuv.Seth Jackson2016-01-01
|
* Merge pull request #3706 from Pyrohh/version_commitJustin M. Keyes2015-12-13
|\ | | | | Remove "Commit:" field from `--version` output
| * Remove "Commit:" field from `--version` outputMichael Reed2015-12-05
| | | | | | | | | | | | | | | | | | | | If nvim is built from a non-tagged commit, the truncated commit hash is already appended to the main version string (e.g., "NVIM v0.1.0-83-g959f260 ..."), making the "Commit:" field redundant. Regarding the truncated hash length: we don't have nearly enough commits to worry about collisions, and probably won't ever, so the default length should be fine.
* | Windows: Implement os_setenv() using _putenv_s()Rui Abreu Ferreira2015-12-12
|/ | | | | | | | | Windows does not have setenv(), instead the _putenv_s() function is used - added a function check and fatal errors. Implemented os_setenv() for Windows. Vim supports the original putenv() function if no alternative is available. Neovim only supports systems where safer alternatives exist, so the check for putenv() was removed from config/CMakeLists.txt.
* build: Use `git describe` for version strings.Justin M. Keyes2015-11-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | When building in a git repo: - If HEAD corresponds to an annotated tag, (i.e. git_get_exact_tag() returns truthy) the current build is considered a "release" build: NVIM_VERSION_MEDIUM is directly assigned the tagged version name, and NVIM_VERSION_* defines are ignored. - If HEAD is not a tagged release, then NVIM_VERSION_MEDIUM is directly assigned the result of `git describe`. If git (or the repo) is not available: - The NVIM_VERSION_* defines are used to define NVIM_VERSION_MEDIUM. Sample outputs for `nvim --version` and `nvim +version`: Building with git @ non-tagged commit e66df14: NVIM v0.1.0-1-ge66df14 (compiled Nov 1 2015 19:10:30) Commit: e66df148f9401be17adab324a6e41d927aae20b3 Building with git @ v0.1.1 tag: NVIM v0.1.1 (compiled Nov 1 2015 19:03:52) [no "Commit:" line] Building this commit _not_ in a git repo: NVIM 0.1.0-dev (compiled Nov 1 2015 19:16:11) [no "Commit:" line]
* Remove useless FEAT_BROWSE ifdefMichael Reed2015-11-01
| | | | | The only thing this affected was the return value of has('browsefilter').
* version: Prepare for releases.Florian Walch2015-11-01
| | | | | | | | | | | * Hide commit information from --version if we can't find any (e.g. when building from tarball). To define a release in CMake, set NVIM_VERSION_PRERELEASE to "". This will modify --version output to: * Show annotated Git tag instead of commit hash (NVIM_VERSION_COMMIT). * Hide commit date (NVIM_VERSION_BUILD).
* config: Check order and endianess even when cross-compilingZyX2015-10-08
|
* shada,config: Use CMake to determine endianess and be64toh existenceZyX2015-10-08
|
* build: remove USEMAN_SJustin M. Keyes2015-09-23
|
* os/os_defs.h cleanup: Remaining signal stuffMichael Reed2015-08-27
| | | | | | | | | | | | RETSIGTYPE, SIGRETURN, and SIGDEFARG are always defined the same, so inline them for simplicity; SIGDUMMYARG, however, is unused, so remove it. Even if these things don't work on windows, the signal handler in if_cscope.c is already wrapped with '#idef UNIX', as is its only call site. Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
* Small cleanup after #3227Michael Reed2015-08-25
| | | | HAVE_SYS_TIME_H isn't being used by anything, remove it.
* remove references to <sys/time.h>Justin M. Keyes2015-08-24
| | | | | Since gettimeofday() was replaced by os_time in fb5a786bdb5b7b52b9c36b3eb8b6d2cc002aa8f3 we do not need sys/time.h.
* CMake: Fix helptags generation when prefix is not /usr. #2741Thomas Anderson2015-06-09
|
* cmake: Remove unneeded platform checksRui Abreu Ferreira2015-05-21
| | | | | | | | | | | Removed unneeded platform checks from config/config.h.in and config/CMakeLists.txt - HAVE_OSPEED and HAVE_UP_BC_PC were used by the old UI, and are no longer needed. - sigvec() was used as part of the signal handling code in os_unix.c, but it is no longer used in Neovim. - The function lstat() is no longer used, replaced with libuv.
* Dont require setenv() in non Unix systemsRui Abreu Ferreira2015-05-21
| | | | | | config/CMakeLists.txt failed with a fatal error if the functions setenv could not be found, however this functions only exist in Unix systems.
* Cleanup 'ttym[ouse]', FEAT_MOUSE, mouse_(dec|gpm|etc.)Michael Reed2015-05-18
| | | | | | Because of 3baba1e7bc6698e6bc9f1d37fce88b30d6274bc9, it's dead code. Helped-by: Justin M. Keyes <justinkz@gmail.com>
* jemalloc: Force use of prefixed functions.Florian Walch2015-04-29
| | | | | | | | * Set JEMALLOC_NO_DEMANGLE to be able to use `je_*` functions, regardless of how jemalloc was compiled (--with-jemalloc-prefix) * Show jemalloc information in Neovim's version output. Resolve #2449.
* Implement os_unsetenv()Rui Abreu Ferreira2015-04-14
| | | | | | | - In UNIX systems where unsetenv() is available, it is used. Otherwise the variables are set with the empty string. - New check HAVE_UNSETENV for unsetenv() - Added unit test to env_spec.lua
* deps: Add jemalloc as an optional dependencyThiago de Arruda2015-04-13
| | | | | | | | | | | | Jemalloc will be used if the cmake option `USE_JEMALLOC` is enabled(which is the default). To avoid trouble with clang's ASAN, it is disabled by default if the `SANITIZE` option is enabled. Since jemalloc has thread cache for small objects, it fills the gap created by removing klib memory pools. The `xstrdup` funciton(memory.c) had to be reimplemented on top of `xmalloc` to make it work with a custom allocator.
* Refactor default_vim{,runtime}_dir to use char type. #2375Mark Bainter2015-04-12
| | | | | | See: #459 Reviewed-by: Justin M. Keyes <justinkz@gmail.com> Reviewed-by: Eliseo Martínez <eliseomarmol@gmail.com>
* CMakeLists: enable USE_FNAME_CASE on MacScott Prager2015-03-31
|
* Remove platform dependent HAVE_OPENDIR #2010Jonas Dourado2015-03-17
|
* config: split out versiondef.h from config.hBjörn Linse2015-03-08
| | | | This avoids recompiling every c file after comitting.
* ui: Remove/adapt some old code for a big UI refactorThiago de Arruda2015-02-16
| | | | | | | | | | | | | - Remove abstract_ui global, now it is always active - Remove some terminal handling code - Remove unused functions - Remove HAVE_TGETENT/TERMINFO/TERMIOS/IOCTL #ifdefs - Remove tgetent/terminfo from version.c - Remove curses/terminfo dependencies - Only start/stop termcap when starting/exiting the program - msg_use_printf will return true if there are no attached UIs( messages will be written to stdout) - Remove `ex_winpos`(implement `:winpos` with `ex_ni`)
* coverity/13745: Argument cannot be negative: RI.Eliseo Martínez2015-02-02
| | | | | | | | | | | Problem : Argument cannot be negative @ 1165. Diagnostic : Real issue. Rationale : len can be assigned a negative value @ 1162; len is passed as an unsigned argument @ 1165. Resolution : Refactor variable's types: - Use ftello instead of ftell to avoid using long. - Assert ftello result is safely convertible to size_t. - Introduce variable read_size to avoid using i (int).
* coverity/100248: Operands don't affect result: HI.Eliseo Martínez2015-01-16
| | | | | | | | Problem : Operands don't affect results (CONSTANT_EXPRESSION_RESULT). Diagnostic : Harmless issue. Rationale : n >= LONG_MIN, n being intmax_t, is always true for architectures where sizeof(intmax_t) == sizeof(long). Resolution : Add sizes check.
* globals.h: Remove unused global variableSteven Oliver2015-01-02
|
* Remove long_u: Passing-by: put_time(): Refactor implementation.Eliseo Martínez2014-12-24
| | | | | | put_time() had a complicated implementation, because of having to shift an 8-byte value in a portable way with old means. That can be greatly simplified now, using a C99 fixed-size type.
* Merge pull request #1441 from jszakmeister/remove-redundant-defineJohn Szakmeister2014-11-09
|\ | | | | Remove redundant USE_ICONV define from config.h.in.
| * Remove redundant USE_ICONV define from config.h.in.John Szakmeister2014-11-09
| | | | | | | | This was noticed during a review of #1437.
* | version: Add compilation info.Florian Walch2014-11-09
|/