@@ -177,11 +177,16 @@ fn buildExample(b: *std.Build, example: []const u8, delve_module: *Build.Module,
177177 app .linkLibrary (delve_lib );
178178
179179 if (target .result .isWasm ()) {
180+ const dep_sokol = b .dependency ("sokol" , .{
181+ .target = target ,
182+ .optimize = optimize ,
183+ });
184+
180185 // link with emscripten
181- const link_step = try emscriptenLinkStep (b , app );
186+ const link_step = try emscriptenLinkStep (b , app , dep_sokol );
182187
183188 // and add a run step
184- const run = emscriptenRunStep (b , example );
189+ const run = emscriptenRunStep (b , example , dep_sokol );
185190 run .step .dependOn (& link_step .step );
186191
187192 var option_buffer = [_ ]u8 {undefined } ** 100 ;
@@ -201,12 +206,7 @@ fn buildExample(b: *std.Build, example: []const u8, delve_module: *Build.Module,
201206 }
202207}
203208
204- pub fn emscriptenLinkStep (b : * Build , app : * Build.Step.Compile ) ! * Build.Step.Run {
205- const dep_sokol = b .dependency ("sokol" , .{
206- .target = target ,
207- .optimize = optimize ,
208- });
209-
209+ pub fn emscriptenLinkStep (b : * Build , app : * Build.Step.Compile , dep_sokol : * Build.Dependency ) ! * Build.Step.Run {
210210 app .defineCMacro ("__EMSCRIPTEN__" , "1" );
211211
212212 const emsdk = dep_sokol .builder .dependency ("emsdk" , .{});
@@ -230,13 +230,7 @@ pub fn emscriptenLinkStep(b: *Build, app: *Build.Step.Compile) !*Build.Step.Run
230230 });
231231}
232232
233- pub fn emscriptenRunStep (b : * Build , name : []const u8 ) * Build.Step.Run {
234- const dep_sokol = b .dependency ("sokol" , .{
235- .target = target ,
236- .optimize = optimize ,
237- });
238-
233+ pub fn emscriptenRunStep (b : * Build , name : []const u8 , dep_sokol : * Build.Dependency ) * Build.Step.Run {
239234 const emsdk = dep_sokol .builder .dependency ("emsdk" , .{});
240-
241235 return sokol .emRunStep (b , .{ .name = name , .emsdk = emsdk });
242236}
0 commit comments