Template
1
0
mirror of https://github.com/aminya/setup-cpp synced 2024-11-30 21:22:30 +08:00
setup-cpp/dev/scripts/pack-exe.mjs
2024-09-08 04:50:30 -07:00

46 lines
879 B
JavaScript

/* eslint-disable import/no-extraneous-dependencies */
import { execaNode } from "execa"
function getPlatformName() {
switch (process.platform) {
case "win32": {
return "windows"
}
case "darwin": {
return "macos"
}
default: {
return process.platform
}
}
}
function main() {
let exes
if (process.platform === "win32") {
exes = [".exe"]
} else if (process.platform === "darwin") {
exes = [""]
} else {
exes = [""]
}
return Promise.all(
exes.map((exe) =>
execaNode("./node_modules/caxa/build/index.mjs", [
"--input",
"./dist/modern",
"--output",
`./exe/setup-cpp-${process.arch}-${getPlatformName()}${exe}`,
"--",
`{{caxa}}/node_modules/.bin/node${exe}`,
"{{caxa}}/setup-cpp.mjs",
])
),
)
}
main().catch((err) => {
throw err
})