service-monitor/build.zig
reugenio 3946f83920 Fase 2: Modo watch + argumentos CLI + timestamps
- Argumentos: --watch/-w, --interval/-i, --help/-h
- Modo watch: loop infinito con intervalo configurable (default 60s)
- Timestamps UTC en cada check [HH:MM:SS]
- Binario ahora se genera en raíz del proyecto (no zig-out/)
- Mensaje de ayuda con ejemplos de uso

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-07 20:55:40 +01:00

40 lines
1.1 KiB
Zig

const std = @import("std");
pub fn build(b: *std.Build) void {
const target = b.standardTargetOptions(.{});
const optimize = b.standardOptimizeOption(.{});
const exe = b.addExecutable(.{
.name = "service-monitor",
.root_source_file = b.path("src/main.zig"),
.target = target,
.optimize = optimize,
});
// Instalar en carpeta raíz del proyecto (no en zig-out/)
b.getInstallStep().dependOn(&b.addInstallArtifact(exe, .{
.dest_dir = .{ .override = .{ .custom = ".." } },
}).step);
// Comando: zig build run
const run_cmd = b.addRunArtifact(exe);
run_cmd.step.dependOn(b.getInstallStep());
if (b.args) |args| {
run_cmd.addArgs(args);
}
const run_step = b.step("run", "Ejecutar service-monitor");
run_step.dependOn(&run_cmd.step);
// Tests
const unit_tests = b.addTest(.{
.root_source_file = b.path("src/main.zig"),
.target = target,
.optimize = optimize,
});
const run_unit_tests = b.addRunArtifact(unit_tests);
const test_step = b.step("test", "Ejecutar tests");
test_step.dependOn(&run_unit_tests.step);
}