╭ changed ╮ │build.zig│ ╰─────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────╮ │32 │ │33 break :blk install_exe; │ │34 }; │ │35 + │ │36 + // wasm │ │37 + { │ │38 + const wasm_target = b.resolveTargetQuery(.{ │ │39 + .cpu_arch = .wasm32, │ │40 + .os_tag = .freestanding, │ │41 + }); │ │42 + │ │43 + const exe = b.addExecutable(.{ │ │44 + .name = "haxy", │ │45 + .root_module = b.createModule(.{ │ │46 + .root_source_file = b.path("src/main_wasm.zig"), │ │47 + .target = wasm_target, │ │48 + .optimize = .ReleaseSmall, │ │49 + }), │ │50 + }); │ │51 + exe.root_module.addImport("xit", b.dependency("xit", .{}).module("xit"));│ │52 + │ │53 + exe.global_base = 6560; │ │54 + exe.entry = .disabled; │ │55 + exe.rdynamic = true; │ │56 + exe.import_memory = false; │ │57 + exe.export_memory = true; │ │58 + exe.stack_size = std.wasm.page_size; │ │59 + │ │60 + const initial_pages = 16; │ │61 + const max_pages = 256; │ │62 + exe.initial_memory = std.wasm.page_size * initial_pages; │ │63 + exe.max_memory = std.wasm.page_size * max_pages; │ │64 │ │65 + b.installArtifact(exe); │ │66 + │ │67 + const wasm_step = b.step("wasm", "Generate the wasm"); │ │68 + wasm_step.dependOn(&exe.step); │ │69 + wasm_step.dependOn(b.getInstallStep()); │ │70 + } │ │71 + │ │72 // module for using haxy as a library │ │73 // (the commands below consume haxy this way) │ │74 const haxy = b.addModule("haxy", .{ │ ╰─────────────────────────────────────────────────────────────────────────────────────╯