opengoal-launcher/scripts/rename-binaries.js

49 lines
1.3 KiB
JavaScript

/**
* This script is used to rename the binary with the platform specific postfix.
* When `tauri build` is ran, it looks for the binary name appended with the platform specific postfix.
*/
import { execa } from "execa";
import { existsSync, renameSync } from "fs";
let extension = "";
if (process.platform === "win32") {
extension = ".exe";
}
async function main() {
const rustInfo = (await execa("rustc", ["-vV"])).stdout;
const targetTriple = /host: (\S+)/g.exec(rustInfo)[1];
if (!targetTriple) {
console.error("Failed to determine platform target triple");
}
if (existsSync(`src-tauri/bin/extractor${extension}`)) {
renameSync(
`src-tauri/bin/extractor${extension}`,
`src-tauri/bin/extractor-${targetTriple}${extension}`
);
}
if (existsSync(`src-tauri/bin/gk${extension}`)) {
renameSync(
`src-tauri/bin/gk${extension}`,
`src-tauri/bin/gk-${targetTriple}${extension}`
);
}
if (existsSync(`src-tauri/bin/goalc${extension}`)) {
renameSync(
`src-tauri/bin/goalc${extension}`,
`src-tauri/bin/goalc-${targetTriple}${extension}`
);
}
if (existsSync(`src-tauri/bin/glewinfo${extension}`)) {
renameSync(
`src-tauri/bin/glewinfo${extension}`,
`src-tauri/bin/glewinfo-${targetTriple}${extension}`
);
}
}
main().catch((e) => {
throw e;
});