<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/build_lua.zig, branch master</title>
<subtitle>Neovim fork with Rahm's personal hacks.</subtitle>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/'/>
<entry>
<title>build(deps): vendor lpeg</title>
<updated>2026-08-30T08:53:36+00:00</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-08-28T13:28:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=6c96ec8c455a6a669c71863cf85d95ece60b1ca1'/>
<id>6c96ec8c455a6a669c71863cf85d95ece60b1ca1</id>
<content type='text'>
Problem: LPeg is hosted on a single unreliable external hoster, forcing
is to mirror it in neovim/deps, which adds maintenance friction. Also,
we have already vendored the Lua `re.lua` module.

Solution: Vendor all of LPeg v1.1.0; as development is not very active
anymore, this should not add much overhead (and allow us to simplify in
particular the Zig build scripts).

Note: LPeg defines a `luaL_newlib` macro for Lua 5.1, which conflicts
with LuaJIT's extension. This requires inlining the macro defined in
`lptypes.h` and used in `lptree.c`; see README.md for the patch.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: LPeg is hosted on a single unreliable external hoster, forcing
is to mirror it in neovim/deps, which adds maintenance friction. Also,
we have already vendored the Lua `re.lua` module.

Solution: Vendor all of LPeg v1.1.0; as development is not very active
anymore, this should not add much overhead (and allow us to simplify in
particular the Zig build scripts).

Note: LPeg defines a `luaL_newlib` macro for Lua 5.1, which conflicts
with LuaJIT's extension. This requires inlining the macro defined in
`lptypes.h` and used in `lptree.c`; see README.md for the patch.
</pre>
</div>
</content>
</entry>
<entry>
<title>build(zig): use LLVM for building nlua0</title>
<updated>2026-06-17T05:03:55+00:00</updated>
<author>
<name>Chinmay Dalal</name>
<email>~chinmay/public-inbox@lists.sr.ht</email>
</author>
<published>2026-05-03T03:52:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=637c4422d8cb131481110440916e077b73df08f4'/>
<id>637c4422d8cb131481110440916e077b73df08f4</id>
<content type='text'>
problem: https://codeberg.org/ziglang/zig/issues/31272
solution: set `.use_llvm = true` until the next zig release
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
problem: https://codeberg.org/ziglang/zig/issues/31272
solution: set `.use_llvm = true` until the next zig release
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(build.zig): no need to pass around b.graph.io next to b</title>
<updated>2026-06-04T09:33:35+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2026-06-02T19:55:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=2a78df3a5ae693126eb52940debf0db46cbadcbd'/>
<id>2a78df3a5ae693126eb52940debf0db46cbadcbd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(build): more changes to make zig 0.16.0 work</title>
<updated>2026-04-21T10:46:01+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2026-01-08T10:01:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=52693e7af3d3c7445761c8c0644ca437d2bf2df6'/>
<id>52693e7af3d3c7445761c8c0644ca437d2bf2df6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(build.zig): update to zig 0.16</title>
<updated>2026-04-21T09:18:43+00:00</updated>
<author>
<name>Chinmay Dalal</name>
<email>dalal.chinmay.0101@gmail.com</email>
</author>
<published>2026-01-05T20:35:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=427d62c43404c3da8f267a44849c3dc8bc4254f8'/>
<id>427d62c43404c3da8f267a44849c3dc8bc4254f8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(build.zig): add option to use system dependencies</title>
<updated>2026-01-14T03:09:03+00:00</updated>
<author>
<name>Chinmay Dalal</name>
<email>dalal.chinmay.0101@gmail.com</email>
</author>
<published>2025-12-20T05:11:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=6d9031390cfc06300d60f96f63ba2bd95b4c7b3b'/>
<id>6d9031390cfc06300d60f96f63ba2bd95b4c7b3b</id>
<content type='text'>
Problem:
build.zig always downloads dependencies and statically links them,
which is frowned upon by distro packagers.

Solution:
Add option to use system libraries.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
build.zig always downloads dependencies and statically links them,
which is frowned upon by distro packagers.

Solution:
Add option to use system libraries.
</pre>
</div>
</content>
</entry>
<entry>
<title>build: make build.zig generate helptags without running "nvim" binary</title>
<updated>2025-08-19T09:14:02+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2025-05-25T12:14:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=6b936002cc1ace8b59c40167d26c85d98c7c8a21'/>
<id>6b936002cc1ace8b59c40167d26c85d98c7c8a21</id>
<content type='text'>
This is matters for cross-compiling where we might not
be able to run the "nvim" binary on the host.

Instead reimplement the helptags extractor as a small
lua script, which we can run on the host using the nlua0
helper already used for other generator scripts.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is matters for cross-compiling where we might not
be able to run the "nvim" binary on the host.

Instead reimplement the helptags extractor as a small
lua script, which we can run on the host using the nlua0
helper already used for other generator scripts.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(build): remove deprecated aliases in build.zig removed for zig 0.15</title>
<updated>2025-08-09T10:02:07+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2025-08-09T09:32:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=a2b0be19bf8f9b3a7f94996dda574e321f75002a'/>
<id>a2b0be19bf8f9b3a7f94996dda574e321f75002a</id>
<content type='text'>
This makes the zig build compatible with the upcoming zig 0.15 release,
while still supporting the current stable 0.14 release still used in CI.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes the zig build compatible with the upcoming zig 0.15 release,
while still supporting the current stable 0.14 release still used in CI.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(deps): make script/bump_deps.lua update build.zig.zon versions in sync</title>
<updated>2025-05-10T08:34:40+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2025-05-08T10:00:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=1c96b72dfa41aea1ab7c78b33143b692023e7ad6'/>
<id>1c96b72dfa41aea1ab7c78b33143b692023e7ad6</id>
<content type='text'>
Also bring luv version in build.zig.zon up to date

This skips some deps not currently managed/used by build.zig
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also bring luv version in build.zig.zon up to date

This skips some deps not currently managed/used by build.zig
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(build): build.zig MVP: build and run functionaltests on linux</title>
<updated>2025-05-02T07:28:50+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2025-03-11T13:01:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=1f004970f00bd8ef7ad955b52857df136f82185b'/>
<id>1f004970f00bd8ef7ad955b52857df136f82185b</id>
<content type='text'>
NEW BUILD SYSTEM!

This is a MVP implementation which supports building the "nvim" binary,
including cross-compilation for some targets.
As an example, you can build a aarch64-macos binary from
an x86-64-linux-gnu host, or vice versa

Add CI target for build.zig currently for functionaltests on linux
x86_64 only

Follow up items:

-  praxis for version and dependency bumping
-  windows 💀
-  full integration of libintl and gettext (or a desicion not to)
-  update help and API metadata files
-  installation into a $PREFIX
-  more tests and linters
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
NEW BUILD SYSTEM!

This is a MVP implementation which supports building the "nvim" binary,
including cross-compilation for some targets.
As an example, you can build a aarch64-macos binary from
an x86-64-linux-gnu host, or vice versa

Add CI target for build.zig currently for functionaltests on linux
x86_64 only

Follow up items:

-  praxis for version and dependency bumping
-  windows 💀
-  full integration of libintl and gettext (or a desicion not to)
-  update help and API metadata files
-  installation into a $PREFIX
-  more tests and linters
</pre>
</div>
</content>
</entry>
</feed>
