|
1 | 1 | const std = @import("std"); |
| 2 | +const builtin = @import("builtin"); |
2 | 3 |
|
3 | 4 | pub fn compileRaylib(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.builtin.OptimizeMode, shared: bool) !*std.Build.Step.Compile { |
4 | | - const raylib = b.dependency("raylib", .{ .target = target, .optimize = optimize, .shared = shared, .linux_display_backend = .X11 }); |
| 5 | + const raylib = b.dependency("raylib", .{ .target = target, .optimize = optimize, .linkage = if (shared) std.builtin.LinkMode.dynamic else std.builtin.LinkMode.static, .linux_display_backend = .X11 }); |
5 | 6 | const raygui = b.dependency("raygui", .{ .target = target, .optimize = optimize }); |
6 | 7 | const lib = raylib.artifact("raylib"); |
7 | 8 |
|
@@ -35,18 +36,18 @@ pub fn compileRaylib(b: *std.Build, target: std.Build.ResolvedTarget, optimize: |
35 | 36 | var gen_step = b.addWriteFiles(); |
36 | 37 | lib.step.dependOn(&gen_step.step); |
37 | 38 |
|
38 | | - var cflags = std.ArrayList([]const u8).init(b.allocator); |
39 | | - defer cflags.deinit(); |
| 39 | + var cflags = std.ArrayList([]const u8){}; |
| 40 | + defer cflags.deinit(b.allocator); |
40 | 41 |
|
41 | | - try cflags.appendSlice(&[_][]const u8{ |
| 42 | + try cflags.appendSlice(b.allocator, &[_][]const u8{ |
42 | 43 | "-std=gnu99", |
43 | 44 | "-D_GNU_SOURCE", |
44 | 45 | "-DGL_SILENCE_DEPRECATION=199309L", |
45 | 46 | "-fno-sanitize=undefined", |
46 | 47 | }); |
47 | 48 |
|
48 | 49 | if (shared) { |
49 | | - try cflags.appendSlice(&[_][]const u8{ |
| 50 | + try cflags.appendSlice(b.allocator, &[_][]const u8{ |
50 | 51 | "-fPIC", |
51 | 52 | "-DBUILD_LIBTYPE_SHARED", |
52 | 53 | }); |
|
0 commit comments