sqlite3
Version:
Asynchronous, non-blocking SQLite3 bindings
20 lines (17 loc) • 562 B
JavaScript
const tar = require("tar");
const fs = require("fs");
const path = require("path");
const tarball = path.resolve(process.argv[2]);
const dirname = path.resolve(process.argv[3]);
tar.extract({
sync: true,
file: tarball,
cwd: dirname,
});
// SQLite >= 3.49 ships a VERSION file that conflicts with the C++20 <version>
// header on case-insensitive filesystems (macOS/Windows).
const base = path.basename(tarball, ".tar.gz");
const versionFile = path.join(dirname, base, "VERSION");
if (fs.existsSync(versionFile)) {
fs.unlinkSync(versionFile);
}