forked from ikskuh/acknext
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.zig
47 lines (36 loc) · 1.57 KB
/
build.zig
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
const std = @import("std");
const acknext = @import("acknext/build.zig");
const physfs = @import("extern/physfs-3.0.2/build.zig");
const zlib = @import("extern/zlib-1.2.11/build.zig");
const ode = @import("extern/ode/build.zig");
pub fn build(b: *std.build.Builder) void {
const mode = b.standardReleaseOptions();
const target = b.standardTargetOptions(.{});
const acknext_lib = acknext.buildLib("./acknext", b);
acknext_lib.setTarget(target);
acknext_lib.setBuildMode(mode);
acknext_lib.install();
const physfs_lib = physfs.buildLib("./extern/physfs-3.0.2", b);
physfs_lib.setTarget(target);
physfs_lib.setBuildMode(mode);
const zlib_lib = zlib.buildLib("./extern/zlib-1.2.11", b);
zlib_lib.setTarget(target);
zlib_lib.setBuildMode(mode);
const ode_lib = ode.buildLib("./extern/ode", b);
ode_lib.setTarget(target);
ode_lib.setBuildMode(mode);
const rotating_cube = b.addExecutable("rotating-cube", null);
rotating_cube.addIncludeDir("./acknext/include");
rotating_cube.addIncludeDir("./extern/ode/include");
rotating_cube.addIncludeDir("./extern/gl3w/include");
rotating_cube.addIncludeDir("./extern/ode/include/supply/include");
rotating_cube.addCSourceFile("examples/rotating-cube/main.c", &[_][]const u8{});
rotating_cube.linkLibC();
rotating_cube.linkLibrary(physfs_lib);
rotating_cube.linkLibrary(zlib_lib);
rotating_cube.linkLibrary(ode_lib);
rotating_cube.linkLibrary(acknext_lib);
rotating_cube.setTarget(target);
rotating_cube.setBuildMode(mode);
rotating_cube.install();
}