feat: install Ninja if generator is Ninja

This commit is contained in:
Alfi Maulana 2023-11-21 20:32:39 +07:00
parent ded3a0b2a3
commit 1275ae37d2
No known key found for this signature in database
GPG Key ID: 2242A64C2A8DF5A4
2 changed files with 27 additions and 0 deletions

13
main/index.mjs generated
View File

@ -27247,6 +27247,19 @@ async function main() {
const generator = _actions_core__WEBPACK_IMPORTED_MODULE_0__.getInput("generator");
if (generator)
configureArgs.push(...["-G", generator]);
if (generator.match(/ninja/gi)) {
switch (process.platform) {
case "linux":
await _actions_exec__WEBPACK_IMPORTED_MODULE_1__.exec("sudo", ["apt", "install", "-y", "ninja-build"]);
break;
case "darwin":
await _actions_exec__WEBPACK_IMPORTED_MODULE_1__.exec("brew", ["install", "ninja"]);
break;
case "win32":
await _actions_exec__WEBPACK_IMPORTED_MODULE_1__.exec("choco", ["install", "ninja"]);
break;
}
}
const cCompiler = _actions_core__WEBPACK_IMPORTED_MODULE_0__.getInput("c-compiler");
if (cCompiler)
configureArgs.push("-DCMAKE_C_COMPILER=" + cCompiler);

View File

@ -10,6 +10,20 @@ async function main() {
const generator = core.getInput("generator");
if (generator) configureArgs.push(...["-G", generator]);
if (generator.match(/ninja/gi)) {
switch (process.platform) {
case "linux":
await exec.exec("sudo", ["apt", "install", "-y", "ninja-build"]);
break;
case "darwin":
await exec.exec("brew", ["install", "ninja"]);
break;
case "win32":
await exec.exec("choco", ["install", "ninja"]);
break;
}
}
const cCompiler = core.getInput("c-compiler");
if (cCompiler) configureArgs.push("-DCMAKE_C_COMPILER=" + cCompiler);