Some checks failed
CI / build-test-release (push) Failing after 7m15s
27 lines
889 B
C++
27 lines
889 B
C++
// SPDX-License-Identifier: MIT
|
|
// SPDX-FileCopyrightText: Copyright (C) 2026 Catcrafts®
|
|
|
|
import std;
|
|
import Crafter.Build;
|
|
namespace fs = std::filesystem;
|
|
using namespace Crafter;
|
|
|
|
extern "C" Configuration CrafterBuildProject(std::span<const std::string_view>) {
|
|
Configuration cfg;
|
|
cfg.path = "./";
|
|
cfg.name = "wasi-hello";
|
|
cfg.outputName = "wasi-hello";
|
|
cfg.target = "wasm32-wasip1";
|
|
cfg.type = ConfigurationType::Executable;
|
|
|
|
std::array<fs::path, 0> ifaces = {};
|
|
std::array<fs::path, 1> impls = { "main" };
|
|
cfg.GetInterfacesAndImplementations(ifaces, impls);
|
|
|
|
// Drop a small index.html + runtime.js next to the .wasm so a static file
|
|
// server is enough to run it in the browser. Skip this call when targeting
|
|
// a standalone runtime like wasmtime — you don't need the shim then.
|
|
EnableWasiBrowserRuntime(cfg);
|
|
|
|
return cfg;
|
|
}
|