-
Notifications
You must be signed in to change notification settings - Fork 516
Expand file tree
/
Copy pathbuild.zig
More file actions
30 lines (21 loc) · 1.09 KB
/
build.zig
File metadata and controls
30 lines (21 loc) · 1.09 KB
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
const std = @import("std");
const solana = @import("solana_program_sdk");
const base58 = @import("base58");
pub fn build(b: *std.Build) !void {
const target = b.resolveTargetQuery(solana.sbf_target);
const optimize = .ReleaseFast;
const dep_opts = .{ .target = target, .optimize = optimize };
const solana_lib_dep = b.dependency("solana_program_library", dep_opts);
const solana_lib_mod = solana_lib_dep.module("solana_program_library");
const program = b.addLibrary(.{ .name = "favorites_program", .linkage = .dynamic, .root_module = b.createModule(.{
.root_source_file = b.path("src/main.zig"),
.optimize = optimize,
.target = target,
}) });
program.root_module.addImport("solana_program_library", solana_lib_mod);
_ = solana.buildProgram(b, program, target, optimize);
b.installArtifact(program);
const install_step = b.addInstallArtifact(program, .{ .dest_dir = .{ .override = .{ .custom = "../program-test/tests/fixtures" } } });
b.getInstallStep().dependOn(&install_step.step);
base58.generateProgramKeypair(b, program);
}