summaryrefslogtreecommitdiff
path: root/libpanto-c/build.zig
blob: 8c3cb8edbf37c92de013ae6cce0b8ff1623906ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
const std = @import("std");

pub fn build(b: *std.Build) void {
    const target = b.standardTargetOptions(.{});
    const optimize = b.standardOptimizeOption(.{});

    const panto_dep = b.dependency("panto", .{ .target = target, .optimize = optimize });

    const mod = b.createModule(.{
        .root_source_file = b.path("src/lib.zig"),
        .target = target,
        .optimize = optimize,
        .link_libc = true,
    });
    mod.addImport("panto", panto_dep.module("panto"));

    const lib = b.addLibrary(.{ .name = "panto", .root_module = mod, .linkage = .dynamic });
    lib.rdynamic = true;
    b.installArtifact(lib);
    b.installFile("include/panto.h", "include/panto.h");

    const unit_tests = b.addTest(.{ .name = "panto-c-tests", .root_module = mod });
    const run_unit_tests = b.addRunArtifact(unit_tests);
    const test_step = b.step("test", "Run unit tests");
    test_step.dependOn(&run_unit_tests.step);
}