19 lines
629 B
JavaScript
19 lines
629 B
JavaScript
import { execFile } from 'node:child_process';
|
|
import { platform } from 'node:os';
|
|
import { join } from 'node:path';
|
|
import { promisify } from 'node:util';
|
|
|
|
const exec = promisify(execFile);
|
|
const isWindows = platform() === 'win32';
|
|
const pkg = join(process.cwd(), 'node_modules', '@yao-pkg', 'pkg', 'lib-es5', 'bin.js');
|
|
const target = isWindows
|
|
? 'node22-win-x64'
|
|
: platform() === 'darwin'
|
|
? 'node22-macos-x64'
|
|
: 'node22-linux-x64';
|
|
const output = join('dist', isWindows ? 'nlc.exe' : 'nlc');
|
|
|
|
await exec(process.execPath, [pkg, 'dist/index.js', '--targets', target, '--output', output], {
|
|
cwd: process.cwd()
|
|
});
|