1
1
const std = @import ("std" );
2
- const zlib = @import ("zlib/zlib.zig" );
3
- const Pkg = std .build .Pkg ;
4
-
5
- pub const pkgs = struct {
6
- pub const zlib = Pkg {
7
- .name = "zlib" ,
8
- .source = std .build .FileSource .relative ("zlib/src/main.zig" ),
9
- };
10
-
11
- pub const websocket = Pkg {
12
- .name = "websocket" ,
13
- .source = .{ .path = "src/main.zig" },
14
- .dependencies = &[_ ]Pkg {
15
- pkgs .zlib ,
16
- },
17
- };
18
- };
2
+ const ws = @import ("websocket.zig" );
19
3
20
4
pub fn build (b : * std.build.Builder ) void {
21
5
// Standard release options allow the person running `zig build` to select
22
6
// between Debug, ReleaseSafe, ReleaseFast, and ReleaseSmall.
23
7
const mode = b .standardReleaseOptions ();
24
8
const target = b .standardTargetOptions (.{});
25
9
26
- const zlib_lib = zlib .create (b , target , mode );
27
-
28
- const lib = b .addStaticLibrary ("websocket" , "src/main.zig" );
29
- lib .setBuildMode (mode );
30
- b .installArtifact (lib );
10
+ const lib = ws .create (b , target , mode );
11
+ lib .step .install ();
31
12
32
13
const main_tests = b .addTest ("src/main.zig" );
33
- zlib_lib .link (main_tests , .{ . import_name = "zlib" } );
14
+ lib .link (main_tests );
34
15
main_tests .setBuildMode (mode );
35
16
36
17
const test_step = b .step ("test" , "Run library tests" );
@@ -40,14 +21,11 @@ pub fn build(b: *std.build.Builder) void {
40
21
inline for (.{
41
22
"autobahn_client" ,
42
23
}) | example_name | {
43
- const example = b .addExecutable (example_name , "examples/" ++ example_name ++ ".zig" );
44
-
45
- zlib_lib .link (example , .{ .import_name = "zlib" });
46
- example .addPackage (pkgs .websocket );
47
-
48
- example .setBuildMode (mode );
49
- example .setTarget (target );
50
- example .install ();
51
- example_step .dependOn (& example .step );
24
+ const exe = b .addExecutable (example_name , "examples/" ++ example_name ++ ".zig" );
25
+ lib .link (exe );
26
+ exe .setBuildMode (mode );
27
+ exe .setTarget (target );
28
+ exe .install ();
29
+ example_step .dependOn (& exe .step );
52
30
}
53
31
}
0 commit comments