<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/test/includes, branch mix_20240309</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>build: remove unnecessary unit test code (#21940)</title>
<updated>2023-01-23T23:03:25+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2023-01-23T23:03:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=322c83896d6fe6ccc4f799f282d8e1feb7cf7ebe'/>
<id>322c83896d6fe6ccc4f799f282d8e1feb7cf7ebe</id>
<content type='text'>
The files generated by test/includes/CMakeLists.txt have been unused
since commit c49e22d396. The unittests include the headers in
test/includes directly without any processing, meaning that the
CMakeLists.txt file is no longer necessary.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The files generated by test/includes/CMakeLists.txt have been unused
since commit c49e22d396. The unittests include the headers in
test/includes directly without any processing, meaning that the
CMakeLists.txt file is no longer necessary.</pre>
</div>
</content>
</entry>
<entry>
<title>build: use modern cmake (#21589)</title>
<updated>2023-01-10T17:49:57+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2023-01-10T17:49:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=438b4361cc761a2950689668f008cfe06c1510f7'/>
<id>438b4361cc761a2950689668f008cfe06c1510f7</id>
<content type='text'>
Replace old-school cmake with the so-called "Modern CMake", meaning
preferring using targets and properties over directory settings and
variables. This allows greater flexibility, robustness and clarity over
how the code works.

The following deprecated commands will be replaced with their modern
alternatives that operates on a specific target, rather than all targets
in the current directory:

- add_compile_options -&gt; target_compile_options
- include_directories -&gt; target_include_directories
- link_libraries -&gt; target_link_libraries
- add_definitions -&gt; target_compile_definitions

There are mainly four main targets that we currently use: nvim, libnvim,
nvim-test (used by unittests) and ${texe} (used by
check-single-includes). The goal is to explicitly define the
dependencies of each target fully, rather than having everything be
dependent on everything else.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace old-school cmake with the so-called "Modern CMake", meaning
preferring using targets and properties over directory settings and
variables. This allows greater flexibility, robustness and clarity over
how the code works.

The following deprecated commands will be replaced with their modern
alternatives that operates on a specific target, rather than all targets
in the current directory:

- add_compile_options -&gt; target_compile_options
- include_directories -&gt; target_include_directories
- link_libraries -&gt; target_link_libraries
- add_definitions -&gt; target_compile_definitions

There are mainly four main targets that we currently use: nvim, libnvim,
nvim-test (used by unittests) and ${texe} (used by
check-single-includes). The goal is to explicitly define the
dependencies of each target fully, rather than having everything be
dependent on everything else.</pre>
</div>
</content>
</entry>
<entry>
<title>build: replace deprecated cmake features with their modern alternatives</title>
<updated>2022-08-03T07:52:05+00:00</updated>
<author>
<name>Dundar Goc</name>
<email>gocdundar@gmail.com</email>
</author>
<published>2022-06-22T18:06:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=6e2c6114f991b3b61887fd9d1b442623b4b03882'/>
<id>6e2c6114f991b3b61887fd9d1b442623b4b03882</id>
<content type='text'>
- Use DIRECTORY instead of PATH in get_filename_component
- Use COMPILE_OPTIONS instead of COMPILE_FLAGS. COMPILE_FLAGS is treated
  as a single string while COMPILE_OPTIONS is a list, meaning that cmake
  will take care of any escaping and quoting automatically.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Use DIRECTORY instead of PATH in get_filename_component
- Use COMPILE_OPTIONS instead of COMPILE_FLAGS. COMPILE_FLAGS is treated
  as a single string while COMPILE_OPTIONS is a list, meaning that cmake
  will take care of any escaping and quoting automatically.
</pre>
</div>
</content>
</entry>
<entry>
<title>build/tests: remove pre/uv.h #10531</title>
<updated>2019-07-28T09:10:22+00:00</updated>
<author>
<name>Daniel Hahler</name>
<email>git@thequod.de</email>
</author>
<published>2019-07-28T09:10:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=f4942a63f93e44470d9a7d979b3fb88408d584d1'/>
<id>f4942a63f93e44470d9a7d979b3fb88408d584d1</id>
<content type='text'>
Initially done in 28e59cb22, but does not appear to be necessary
anymore.

Uses UV_EEXIST directly, just like UV_ENOENT.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Initially done in 28e59cb22, but does not appear to be necessary
anymore.

Uses UV_EEXIST directly, just like UV_ENOENT.</pre>
</div>
</content>
</entry>
<entry>
<title>test/includes: Use ${gen_cdefs} when pre-processing headers</title>
<updated>2018-07-11T04:26:28+00:00</updated>
<author>
<name>James McCoy</name>
<email>jamessan@jamessan.com</email>
</author>
<published>2018-07-11T03:16:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=9f8bd77d7b62b8f642fd8a8d3fd3a73b183cfdf4'/>
<id>9f8bd77d7b62b8f642fd8a8d3fd3a73b183cfdf4</id>
<content type='text'>
Now that uv.h is directly being included, pre-processing of
test/includes/pre/uv.h fails on Linux with

    In file included from «SRCDIR»/neovim/test/includes/pre/uv.h:1:
    In file included from /usr/include/uv.h:62:
    /usr/include/uv/unix.h:72:11: fatal error: 'uv/pthread-barrier.h' file not found
    # include "uv/pthread-barrier.h"
              ^~~~~~~~~~~~~~~~~~~~~~
    1 error generated.

This happens because we're missing -D_GNU_SOURCE (part of ${gen_cdefs}),
which makes the pthread_barrier_* functionality visible.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now that uv.h is directly being included, pre-processing of
test/includes/pre/uv.h fails on Linux with

    In file included from «SRCDIR»/neovim/test/includes/pre/uv.h:1:
    In file included from /usr/include/uv.h:62:
    /usr/include/uv/unix.h:72:11: fatal error: 'uv/pthread-barrier.h' file not found
    # include "uv/pthread-barrier.h"
              ^~~~~~~~~~~~~~~~~~~~~~
    1 error generated.

This happens because we're missing -D_GNU_SOURCE (part of ${gen_cdefs}),
which makes the pthread_barrier_* functionality visible.
</pre>
</div>
</content>
</entry>
<entry>
<title>test: Rename includes/pre/uv-errno.h to includes/pre/uv.h</title>
<updated>2018-07-11T04:26:07+00:00</updated>
<author>
<name>James McCoy</name>
<email>jamessan@jamessan.com</email>
</author>
<published>2018-07-09T15:00:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=ba7704ab4ea6186f0a3090b930a4be7e3aa9857c'/>
<id>ba7704ab4ea6186f0a3090b930a4be7e3aa9857c</id>
<content type='text'>
libuv users are only supposed to directly include uv.h.  In v1.21.0, all
the uv-*.h headers were renamed to uv/*.h, which caused the unit tests
to fail with

    [123/125] Generating post/uv-errno.h
    FAILED: test/includes/post/uv-errno.h
    cd «SRCDIR»/src/neovim/build/test/includes &amp;&amp; /usr/bin/clang -std=c99 -E -P «SRCDIR»/src/neovim/test/includes/pre/uv-errno.h -I/usr/include -I/usr/include -o «SRCDIR»/neovim/build/test/includes/post/uv-errno.h
    «SRCDIR»/src/neovim/test/includes/pre/uv-errno.h:1:10: error: 'uv-errno.h' file not found with &lt;angled&gt; include; use "quotes" instead
    #include &lt;uv-errno.h&gt;
             ^~~~~~~~~~~~
             "uv-errno.h"

The intention of the file is to extend libuv's error constants with more
values used by the unit tests.  This can just as easily be achieved
without poking into pseudo-private header files.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
libuv users are only supposed to directly include uv.h.  In v1.21.0, all
the uv-*.h headers were renamed to uv/*.h, which caused the unit tests
to fail with

    [123/125] Generating post/uv-errno.h
    FAILED: test/includes/post/uv-errno.h
    cd «SRCDIR»/src/neovim/build/test/includes &amp;&amp; /usr/bin/clang -std=c99 -E -P «SRCDIR»/src/neovim/test/includes/pre/uv-errno.h -I/usr/include -I/usr/include -o «SRCDIR»/neovim/build/test/includes/post/uv-errno.h
    «SRCDIR»/src/neovim/test/includes/pre/uv-errno.h:1:10: error: 'uv-errno.h' file not found with &lt;angled&gt; include; use "quotes" instead
    #include &lt;uv-errno.h&gt;
             ^~~~~~~~~~~~
             "uv-errno.h"

The intention of the file is to extend libuv's error constants with more
values used by the unit tests.  This can just as easily be achieved
without poking into pseudo-private header files.
</pre>
</div>
</content>
</entry>
<entry>
<title>cmake: Organize targets into folders</title>
<updated>2018-06-17T12:54:39+00:00</updated>
<author>
<name>b-r-o-c-k</name>
<email>brockmammen@gmail.com</email>
</author>
<published>2018-06-17T12:54:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=7097aba6be0a1eeaa9fd6ad8bfef556d7d884fd2'/>
<id>7097aba6be0a1eeaa9fd6ad8bfef556d7d884fd2</id>
<content type='text'>
Enabling CMake's USE_FOLDERS option and adding the FOLDER property to
targets allows some IDEs to list the targets in an organized
hierarchy of folders.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Enabling CMake's USE_FOLDERS option and adding the FOLDER property to
targets allows some IDEs to list the targets in an organized
hierarchy of folders.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' into s-dash-stdin</title>
<updated>2017-12-03T13:49:30+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2017-12-03T13:49:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=c49e22d3964d6c7ae1c24e8ad01b5fec4ca40b57'/>
<id>c49e22d3964d6c7ae1c24e8ad01b5fec4ca40b57</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>test: fix the unit test build on macOS Sierra (#6300)</title>
<updated>2017-03-17T08:14:56+00:00</updated>
<author>
<name>John Szakmeister</name>
<email>jszakmeister@users.noreply.github.com</email>
</author>
<published>2017-03-17T08:14:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=694edc550463d607cf44ad13b084dc7cc3d0d75a'/>
<id>694edc550463d607cf44ad13b084dc7cc3d0d75a</id>
<content type='text'>
We need to add the SDK includes to the preprocessing step, otherwise it
will fail to resolve the system includes such as sys/stat.h and fcntl.h.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We need to add the SDK includes to the preprocessing step, otherwise it
will fail to resolve the system includes such as sys/stat.h and fcntl.h.</pre>
</div>
</content>
</entry>
<entry>
<title>test: sys/fcntl.h -&gt; fcntl.h</title>
<updated>2016-01-15T04:36:58+00:00</updated>
<author>
<name>Michael Reed</name>
<email>m.reed@mykolab.com</email>
</author>
<published>2016-01-14T22:19:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=729064af5fd154716a644fb89c1b165e44972454'/>
<id>729064af5fd154716a644fb89c1b165e44972454</id>
<content type='text'>
POSIX.1-2008[1] says that the latter should be used, and all of our
supported platforms would seem to support this scheme, apparently even
Windows[2].

[1]: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/fcntl.h.html
[2]: https://msdn.microsoft.com/en-us/library/z0kc8e3z.aspx
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
POSIX.1-2008[1] says that the latter should be used, and all of our
supported platforms would seem to support this scheme, apparently even
Windows[2].

[1]: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/fcntl.h.html
[2]: https://msdn.microsoft.com/en-us/library/z0kc8e3z.aspx
</pre>
</div>
</content>
</entry>
</feed>
