3218 Commits

Author SHA1 Message Date
Stone Tickle
dd8c01dfc4 add typechecking around dict keys
we didn't actually check if the key was a string before using it which
led to a crash
2026-01-21 10:31:26 -05:00
Stone Tickle
b8701aecc1 add option to build tests without running them 2026-01-21 10:31:09 -05:00
VaiTon
0dc891e935 Fix intl and iconv dependency detection
Commit c943d11 replaced some \n with "n. This commit reverts those
changes.
closes #224
2026-01-20 16:05:28 -05:00
Stone Tickle
d9d8b1f9e4 fix man page display for args with no description 2026-01-20 10:55:23 -05:00
Stone Tickle
c943d1168c config tool deps use pkgconfig frag parsing
Expose the fragment (aka cli argument) parsing code we have for
pkgconfig as a module function and wrap it in a nice api in
dependencies.meson.  This should fix issues where libraries are added to
link_args and don't end up in the right spot on the link line
2026-01-20 10:55:08 -05:00
Stone Tickle
90d963b6a9 respect modules in dependency cache 2026-01-20 10:37:42 -05:00
kzc
e9e069ef75 clang-cl: add force_language handler 2026-01-18 17:45:26 -05:00
Teselka
79d8c8adf6 remove space between msvc include option and arg 2026-01-18 17:45:26 -05:00
Teselka
403539306d Revert "pch support for msvc"
This reverts commit c9957cbbaf75d06ea0539d2ea0a1d259725713fe.
2026-01-18 17:45:26 -05:00
Teselka
3902711fd2 pch support for msvc 2026-01-18 17:45:26 -05:00
Teselka
1c02ab293c handle system includes with clang-cl 2026-01-18 17:45:26 -05:00
Teselka
5c649efcd4 remove fuse-ld from lld-link 2026-01-18 17:45:26 -05:00
Teselka
da17f109e2 clang-cl support 2026-01-18 17:45:18 -05:00
Stone Tickle
b89c54d942 format 2026-01-18 10:07:58 -05:00
Stone Tickle
becc0193e6 copy docs to wayland module 2026-01-18 10:04:59 -05:00
VaiTon
b8c9b47570 feat: add Wayland module
Implement a new wayland Meson module providing functions to find and
scan Wayland protocol XML files using wayland-scanner.
closes #220
2026-01-18 09:51:27 -05:00
VaiTon
8e1c3ade53 Add pcap dependency handler
Register a dependency handler for `pcap` that accepts `config-tool` and
`pkg-config` as methods.

Extract calling the config-tool to a common function.
2026-01-18 09:50:48 -05:00
VaiTon
fed8f6a757 Preserve pkg-config package name in dependency
For pkgconfig dependencies, preserve the actual pkg-config package name
so that get_pkgconfig_variable() works correctly after a dependency is
found via register_dependency_handler.
closes #219
2026-01-18 09:50:48 -05:00
kzc
3c5506f8a3 Add implib definition for tcc 2026-01-17 06:51:47 -05:00
Stone Tickle
a71636bcb7 always populate test suite in introspection
vscode-meson parses this to determine a test's project:

    const project = t.suite[0].split(":")[0];
2026-01-12 14:24:27 -05:00
Stone Tickle
1f9e7bde0d attempt to workaround meson's intro tgt ids
This seems to work with vscode-meson's parsing of test dependencies,
which is the only place these ids are used in that project.
2026-01-12 14:00:20 -05:00
Stone Tickle
ab9dc368aa lsp: log when chdiring 2026-01-12 13:59:01 -05:00
Stone Tickle
27249ba5fd lsp: properly reset log indent 2026-01-12 13:58:58 -05:00
Stone Tickle
b361b1b5a5 write introspected tests 2026-01-12 11:26:26 -05:00
Stone Tickle
891bb107b9 fix muon meson compile 2026-01-12 11:26:13 -05:00
Stone Tickle
70d1960818 meson opts: support --print-errorlogs 2026-01-12 11:25:35 -05:00
Stone Tickle
e323cab9aa meson opt parser: support option abbreviations
til argparse allows all long options to be abbreviated *by default*

Found this because vscode-meson passes --print-errorlog to test when the
option is actually --print-errorlogs.
2026-01-12 11:24:24 -05:00
Stone Tickle
cc9abb7b81 make clang format target not rely on shell 2026-01-11 12:20:07 -05:00
Stone Tickle
beb874ec59 clean up code 2026-01-11 12:20:07 -05:00
Stone Tickle
bd22de6397 gate clang format target behind option 2026-01-11 12:20:07 -05:00
VaiTon
51dc0fcd5d feat: add clang-format support
closes #216
2026-01-11 12:20:07 -05:00
Stone Tickle
c29ece6179 mark subproject import as extension 2026-01-11 08:55:40 -05:00
Stone Tickle
1ffe3f1777 expose debug() in script mode 2026-01-11 08:55:18 -05:00
VaiTon
9e1acf7534 Add Vala language support with two-stage compilation
Implement full Vala language support using a two-stage compilation
approach: Vala source files are first transpiled to C code using valac
--ccode, then the generated C code is compiled to object files using the
C compiler.

Changes:
- Add Vala to exposed compiler languages in toolchains.h
- Configure valac in toolchains.meson with compile_only and output
  handlers
- Implement write_vala_two_stage_compilation() helper in build_target.c
- Register both Vala and C compilers for Vala source files
- Add .vala and .vapi file extension handling
- Add VALAC environment variable support
- Include test case
closes #209
2026-01-11 08:40:28 -05:00
Stone Tickle
b51ab9df88 fix keyword order 2026-01-09 12:31:33 -05:00
Stone Tickle
b832c9eb89 remove unneeded code 2026-01-09 12:06:33 -05:00
Stone Tickle
95469d8385 change fmt range sep to not be drive seperator 2026-01-09 12:05:13 -05:00
Stone Tickle
58aef46aba fix parse regression with no terminating nl 2026-01-09 11:32:51 -05:00
Stone Tickle
bf2aad86c4 fix some range formatting issues 2026-01-09 11:17:37 -05:00
Stone Tickle
5b5d2a576d nul terminate 2026-01-09 11:17:16 -05:00
Stone Tickle
400e9dbd86 fix range translation starting at line 1 2026-01-09 09:26:14 -05:00
Stone Tickle
ce3b115382 fix some comment mangling 2026-01-09 09:16:59 -05:00
Stone Tickle
56b8ba22fe implement partially broken formatting ranges
with lsp integration
2026-01-08 20:39:39 -05:00
Stone Tickle
d12ee7636d guard against project call in script mode 2026-01-08 20:37:25 -05:00
Stone Tickle
0af0cc7afe lsp: add more convenience goto-definitons 2026-01-07 11:05:11 -05:00
Stone Tickle
1c3aaf3f66 fix toolchain.create in analyzer 2026-01-07 11:04:58 -05:00
Stone Tickle
164d780029 add basic deprecation warning api 2026-01-06 22:17:25 -05:00
Stone Tickle
42e2c45334 fix build target pch 2026-01-06 22:17:10 -05:00
Stone Tickle
0e1233732b handle deprecated static_linker -> archiver 2026-01-06 21:53:25 -05:00
Stone Tickle
497de83b15 make [file()] flattening work with complex types 2026-01-06 21:53:06 -05:00