mirror of
https://github.com/Xevion/Pac-Man.git
synced 2025-12-08 14:07:47 -06:00
ci: handle pre-activated emsdk
This commit is contained in:
37
web.build.ts
37
web.build.ts
@@ -187,20 +187,35 @@ async function main() {
|
|||||||
|
|
||||||
const release = process.env.RELEASE !== "0";
|
const release = process.env.RELEASE !== "0";
|
||||||
const emsdkDir = resolve("./emsdk");
|
const emsdkDir = resolve("./emsdk");
|
||||||
// Ensure the emsdk directory exists before attempting to activate or use it
|
|
||||||
if (!(await fs.exists(emsdkDir))) {
|
// Check if Emscripten is already activated in the environment
|
||||||
|
const emscriptenAlreadyActivated =
|
||||||
|
process.env.EMSCRIPTEN || process.env.EMSDK;
|
||||||
|
|
||||||
|
let vars: Record<string, string>;
|
||||||
|
|
||||||
|
if (emscriptenAlreadyActivated) {
|
||||||
log(
|
log(
|
||||||
`Emscripten SDK directory not found at ${emsdkDir}. Please install or clone 'emsdk' and try again.`
|
"Emscripten SDK already activated in environment, using existing configuration"
|
||||||
);
|
);
|
||||||
process.exit(1);
|
vars = process.env as Record<string, string>;
|
||||||
}
|
} else {
|
||||||
const vars = match(await activateEmsdk(emsdkDir)) // result handling
|
// Ensure the emsdk directory exists before attempting to activate or use it
|
||||||
.with({ vars: P.select() }, (vars) => vars)
|
if (!(await fs.exists(emsdkDir))) {
|
||||||
.with({ err: P.any }, ({ err }) => {
|
log(
|
||||||
log("Error activating Emscripten SDK: " + err);
|
`Emscripten SDK directory not found at ${emsdkDir}. Please install or clone 'emsdk' and try again.`
|
||||||
|
);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
})
|
}
|
||||||
.exhaustive();
|
|
||||||
|
vars = match(await activateEmsdk(emsdkDir)) // result handling
|
||||||
|
.with({ vars: P.select() }, (vars) => vars)
|
||||||
|
.with({ err: P.any }, ({ err }) => {
|
||||||
|
log("Error activating Emscripten SDK: " + err);
|
||||||
|
process.exit(1);
|
||||||
|
})
|
||||||
|
.exhaustive();
|
||||||
|
}
|
||||||
|
|
||||||
// Check if the Emscripten SDK is activated/installed properly for the current OS
|
// Check if the Emscripten SDK is activated/installed properly for the current OS
|
||||||
match({
|
match({
|
||||||
|
|||||||
Reference in New Issue
Block a user