From c4b392a179048f936c062f5ffccc2bc25627e500 Mon Sep 17 00:00:00 2001 From: polwex Date: Mon, 6 Oct 2025 01:01:41 +0700 Subject: working --- vere/pkg/c3/build.zig | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 vere/pkg/c3/build.zig (limited to 'vere/pkg/c3/build.zig') diff --git a/vere/pkg/c3/build.zig b/vere/pkg/c3/build.zig new file mode 100644 index 0000000..387a3bc --- /dev/null +++ b/vere/pkg/c3/build.zig @@ -0,0 +1,45 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + + const copts: []const []const u8 = + b.option([]const []const u8, "copt", "") orelse &.{}; + + const pkg_c3 = b.addStaticLibrary(.{ + .name = "c3", + .target = target, + .optimize = optimize, + }); + + if (target.result.os.tag.isDarwin() and !target.query.isNative()) { + const macos_sdk = b.lazyDependency("macos_sdk", .{ + .target = target, + .optimize = optimize, + }); + if (macos_sdk != null) { + pkg_c3.addSystemIncludePath(macos_sdk.?.path("usr/include")); + pkg_c3.addLibraryPath(macos_sdk.?.path("usr/lib")); + pkg_c3.addFrameworkPath(macos_sdk.?.path("System/Library/Frameworks")); + } + } + + pkg_c3.linkLibC(); + + pkg_c3.addIncludePath(b.path("")); + + pkg_c3.addCSourceFiles(.{ + .root = b.path(""), + .files = &.{"defs.c"}, + .flags = copts, + }); + + pkg_c3.installHeader(b.path("c3.h"), "c3/c3.h"); + pkg_c3.installHeader(b.path("defs.h"), "c3/defs.h"); + pkg_c3.installHeader(b.path("motes.h"), "c3/motes.h"); + pkg_c3.installHeader(b.path("portable.h"), "c3/portable.h"); + pkg_c3.installHeader(b.path("types.h"), "c3/types.h"); + + b.installArtifact(pkg_c3); +} -- cgit v1.2.3