aboutsummaryrefslogtreecommitdiff
path: root/vendor/libghostty-vt/src/build/HelpStrings.zig
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-04-04 19:22:04 +0300
committerCan Celik <ogulcancelik@gmail.com>2026-04-05 01:23:06 +0300
commit41dd733ca7123c9ac4bfc6c781697a660e95b052 (patch)
tree3fc91815ca139ef2e0b281bba0abda4ef15175f4 /vendor/libghostty-vt/src/build/HelpStrings.zig
parent55c138263e190a1e79d4b997bfb9397306c0ec1f (diff)
feat: finish ghostty pane backend integration
Diffstat (limited to 'vendor/libghostty-vt/src/build/HelpStrings.zig')
-rw-r--r--vendor/libghostty-vt/src/build/HelpStrings.zig56
1 files changed, 56 insertions, 0 deletions
diff --git a/vendor/libghostty-vt/src/build/HelpStrings.zig b/vendor/libghostty-vt/src/build/HelpStrings.zig
new file mode 100644
index 00000000..96505cab
--- /dev/null
+++ b/vendor/libghostty-vt/src/build/HelpStrings.zig
@@ -0,0 +1,56 @@
+const HelpStrings = @This();
+
+const std = @import("std");
+const Config = @import("Config.zig");
+
+/// The "helpgen" exe.
+exe: *std.Build.Step.Compile,
+
+/// The output path for the help strings.
+output: std.Build.LazyPath,
+
+pub fn init(b: *std.Build, cfg: *const Config) !HelpStrings {
+ const exe = b.addExecutable(.{
+ .name = "helpgen",
+ .root_module = b.createModule(.{
+ .root_source_file = b.path("src/helpgen.zig"),
+ .target = b.graph.host,
+ .strip = false,
+ .omit_frame_pointer = false,
+ .unwind_tables = .sync,
+ }),
+ });
+
+ const help_config = config: {
+ var copy = cfg.*;
+ copy.exe_entrypoint = .helpgen;
+ break :config copy;
+ };
+ const options = b.addOptions();
+ try help_config.addOptions(options);
+ exe.root_module.addOptions("build_options", options);
+
+ const help_run = b.addRunArtifact(exe);
+
+ // Generated Zig files have to end with .zig
+ const wf = b.addWriteFiles();
+ const output = wf.addCopyFile(help_run.captureStdOut(), "helpgen.zig");
+
+ return .{
+ .exe = exe,
+ .output = output,
+ };
+}
+
+/// Add the "help_strings" import.
+pub fn addImport(self: *const HelpStrings, step: *std.Build.Step.Compile) void {
+ self.output.addStepDependencies(&step.step);
+ step.root_module.addAnonymousImport("help_strings", .{
+ .root_source_file = self.output,
+ });
+}
+
+/// Install the help exe
+pub fn install(self: *const HelpStrings) void {
+ self.exe.step.owner.installArtifact(self.exe);
+}