1
1
const builtin = @import ("builtin" );
2
- const host_os = builtin .target .os .tag ;
3
-
4
2
const std = @import ("std" );
5
3
6
4
pub const emsdk_ver_major = "4" ;
@@ -17,7 +15,7 @@ pub fn emccPath(b: *std.Build) []const u8 {
17
15
b .dependency ("emsdk" , .{}).path ("" ).getPath (b ),
18
16
"upstream" ,
19
17
"emscripten" ,
20
- switch (host_os ) {
18
+ switch (builtin . target . os . tag ) {
21
19
.windows = > "emcc.bat" ,
22
20
else = > "emcc" ,
23
21
},
@@ -29,7 +27,7 @@ pub fn emrunPath(b: *std.Build) []const u8 {
29
27
b .dependency ("emsdk" , .{}).path ("" ).getPath (b ),
30
28
"upstream" ,
31
29
"emscripten" ,
32
- switch (host_os ) {
30
+ switch (builtin . target . os . tag ) {
33
31
.windows = > "emrun.bat" ,
34
32
else = > "emrun" ,
35
33
},
@@ -49,15 +47,15 @@ pub fn htmlPath(b: *std.Build) []const u8 {
49
47
pub fn activateEmsdkStep (b : * std.Build ) * std.Build.Step {
50
48
const emsdk_script_path = std .fs .path .join (b .allocator , &.{
51
49
b .dependency ("emsdk" , .{}).path ("" ).getPath (b ),
52
- switch (host_os ) {
50
+ switch (builtin . target . os . tag ) {
53
51
.windows = > "emsdk.bat" ,
54
52
else = > "emsdk" ,
55
53
},
56
54
}) catch unreachable ;
57
55
58
56
var emsdk_install = b .addSystemCommand (&.{ emsdk_script_path , "install" , emsdk_version });
59
57
60
- switch (host_os ) {
58
+ switch (builtin . target . os . tag ) {
61
59
.linux , .macos = > {
62
60
emsdk_install .step .dependOn (& b .addSystemCommand (&.{ "chmod" , "+x" , emsdk_script_path }).step );
63
61
},
@@ -80,7 +78,7 @@ pub fn activateEmsdkStep(b: *std.Build) *std.Build.Step {
80
78
}.make ,
81
79
});
82
80
83
- switch (host_os ) {
81
+ switch (builtin . target . os . tag ) {
84
82
.linux , .macos = > {
85
83
const chmod_emcc = b .addSystemCommand (&.{ "chmod" , "+x" , emccPath (b ) });
86
84
chmod_emcc .step .dependOn (& emsdk_activate .step );
@@ -91,25 +89,12 @@ pub fn activateEmsdkStep(b: *std.Build) *std.Build.Step {
91
89
step .dependOn (& chmod_emrun .step );
92
90
},
93
91
.windows = > {
94
- const windows_wait_step = b .allocator .create (std .Build .Step ) catch unreachable ;
95
- windows_wait_step .* = std .Build .Step .init (.{
96
- .id = .custom ,
97
- .name = "Wait for a sceond" ,
98
- .owner = b ,
99
- .makeFn = & struct {
100
- fn make (_ : * std.Build.Step , _ : std.Build.Step.MakeOptions ) anyerror ! void {
101
- std .time .sleep (std .time .ns_per_s * 1 );
102
- }
103
- }.make ,
104
- });
105
- windows_wait_step .dependOn (& emsdk_activate .step );
106
-
107
92
const takeown_emcc = b .addSystemCommand (&.{ "takeown" , "/f" , emccPath (b ) });
108
- takeown_emcc .step .dependOn (windows_wait_step );
93
+ takeown_emcc .step .dependOn (& emsdk_activate . step );
109
94
step .dependOn (& takeown_emcc .step );
110
95
111
96
const takeown_emrun = b .addSystemCommand (&.{ "takeown" , "/f" , emrunPath (b ) });
112
- takeown_emrun .step .dependOn (windows_wait_step );
97
+ takeown_emrun .step .dependOn (& emsdk_activate . step );
113
98
step .dependOn (& takeown_emrun .step );
114
99
},
115
100
else = > {},
0 commit comments