slint/api/node/build-on-demand.mjs
Aurindam Jana 3523e86359
Simplify commercial license (#3063)
Base the commercial license on the Royalty-free license adding clauses pertaining to the fees.
2024-05-31 14:06:17 +02:00

21 lines
807 B
JavaScript

// Copyright © SixtyFPS GmbH <info@slint.dev>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
// This file checks if a binary package was installed (through architecture dependencies), and
// builds slint if no binary was found.
import { Worker } from "node:worker_threads";
import { spawn } from "child_process";
const worker = new Worker("./rust-module.cjs")
// Define dummy error handler to prevent node from aborting on errors
worker.on('error', (error) => { console.log(`Error loading rust-module.cjs: {error}`) })
worker.on('exit', (code) => {
if (code != 0) {
console.log("slint-ui: loading rust-module.cjs failed, building now")
spawn("npm", ["run", "build"], {
stdio: 'inherit'
})
}
})