mirror of
https://github.com/goodpuppies/petplay.git
synced 2026-10-23 15:00:50 +02:00
Pin the screen-streamer source submodule, build each native helper in CI and embed it in desktop executables. Add experimental ARM64 compiler artifacts, Frame/DroidFrame controller bindings and resilient audio initialization. Include the interaction harness in compiled builds, record device regressions and document the remaining ARM64 raylib packaging work. Agent: Codex 0.163.0; model gpt-6.1-sol; thread 01a145fa-213b-7510-83c0-48dd3e275c9a
26 lines
957 B
TypeScript
26 lines
957 B
TypeScript
export const NATIVE_BUILD_TARGETS = [
|
|
"x86_64-pc-windows-msvc",
|
|
"x86_64-unknown-linux-gnu",
|
|
"aarch64-unknown-linux-gnu",
|
|
] as const;
|
|
|
|
export type NativeBuildTarget = typeof NATIVE_BUILD_TARGETS[number];
|
|
|
|
export function nativeBuildTarget(target?: string): NativeBuildTarget {
|
|
if (!target && Deno.build.os !== "linux" && Deno.build.os !== "windows") {
|
|
throw new Error(`Unsupported native build platform: ${Deno.build.os}`);
|
|
}
|
|
const resolved = target ??
|
|
(Deno.build.os === "windows"
|
|
? `${Deno.build.arch}-pc-windows-msvc`
|
|
: `${Deno.build.arch}-unknown-linux-gnu`);
|
|
if (!NATIVE_BUILD_TARGETS.includes(resolved as NativeBuildTarget)) {
|
|
throw new Error(`Unsupported native build target: ${resolved}`);
|
|
}
|
|
return resolved as NativeBuildTarget;
|
|
}
|
|
|
|
export function screenStreamerRelativePath(target: NativeBuildTarget): string {
|
|
return `dist/native/${target}/screen-streamer${target.includes("windows") ? ".exe" : ""}`;
|
|
}
|