45 lines
942 B
Zig
45 lines
942 B
Zig
const std = @import("std");
|
|
|
|
pub fn create(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.builtin.OptimizeMode) *std.Build.Step.Compile {
|
|
const lib = b.addStaticLibrary(.{
|
|
.name = "z",
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
|
|
lib.linkLibC();
|
|
|
|
const zlib_dep = b.dependency("zlib", .{
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
|
|
lib.addCSourceFiles(.{
|
|
.root = zlib_dep.path(""),
|
|
.files = srcs,
|
|
.flags = &.{"-std=c89"},
|
|
});
|
|
|
|
lib.installHeader(zlib_dep.path("zlib.h"), "zlib.h");
|
|
lib.installHeader(zlib_dep.path("zconf.h"), "zconf.h");
|
|
|
|
return lib;
|
|
}
|
|
|
|
const srcs = &.{
|
|
"adler32.c",
|
|
"compress.c",
|
|
"crc32.c",
|
|
"deflate.c",
|
|
"gzclose.c",
|
|
"gzlib.c",
|
|
"gzread.c",
|
|
"gzwrite.c",
|
|
"infback.c",
|
|
"inffast.c",
|
|
"inflate.c",
|
|
"inftrees.c",
|
|
"trees.c",
|
|
"uncompr.c",
|
|
"zutil.c",
|
|
};
|