@electron/rebuild 3.7.2 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -15
- package/lib/arch.d.ts +1 -1
- package/lib/arch.js +4 -9
- package/lib/arch.js.map +1 -1
- package/lib/cache.d.ts +2 -2
- package/lib/cache.js +35 -41
- package/lib/cache.js.map +1 -1
- package/lib/clang-fetcher.js +26 -56
- package/lib/clang-fetcher.js.map +1 -1
- package/lib/cli.js +22 -52
- package/lib/cli.js.map +1 -1
- package/lib/constants.js +3 -29
- package/lib/constants.js.map +1 -1
- package/lib/electron-locator.js +12 -38
- package/lib/electron-locator.js.map +1 -1
- package/lib/fetcher.d.ts +2 -1
- package/lib/fetcher.js +5 -12
- package/lib/fetcher.js.map +1 -1
- package/lib/main.d.ts +1 -2
- package/lib/main.js +2 -9
- package/lib/main.js.map +1 -1
- package/lib/module-rebuilder.d.ts +1 -1
- package/lib/module-rebuilder.js +30 -52
- package/lib/module-rebuilder.js.map +1 -1
- package/lib/module-type/index.d.ts +3 -3
- package/lib/module-type/index.js +19 -22
- package/lib/module-type/index.js.map +1 -1
- package/lib/module-type/node-gyp/node-gyp.d.ts +1 -1
- package/lib/module-type/node-gyp/node-gyp.js +18 -26
- package/lib/module-type/node-gyp/node-gyp.js.map +1 -1
- package/lib/module-type/node-gyp/worker.js +2 -7
- package/lib/module-type/node-gyp/worker.js.map +1 -1
- package/lib/module-type/node-pre-gyp.d.ts +1 -1
- package/lib/module-type/node-pre-gyp.js +14 -22
- package/lib/module-type/node-pre-gyp.js.map +1 -1
- package/lib/module-type/prebuild-install.d.ts +1 -1
- package/lib/module-type/prebuild-install.js +12 -20
- package/lib/module-type/prebuild-install.js.map +1 -1
- package/lib/module-type/prebuildify.d.ts +1 -1
- package/lib/module-type/prebuildify.js +18 -27
- package/lib/module-type/prebuildify.js.map +1 -1
- package/lib/module-walker.d.ts +1 -1
- package/lib/module-walker.js +29 -27
- package/lib/module-walker.js.map +1 -1
- package/lib/node-api.js +5 -7
- package/lib/node-api.js.map +1 -1
- package/lib/prebuild-shim.d.ts +1 -0
- package/lib/prebuild-shim.js +2 -1
- package/lib/prebuild-shim.js.map +1 -1
- package/lib/promisifiedGracefulFs.d.ts +3 -0
- package/lib/promisifiedGracefulFs.js +9 -0
- package/lib/promisifiedGracefulFs.js.map +1 -0
- package/lib/read-package-json.js +6 -31
- package/lib/read-package-json.js.map +1 -1
- package/lib/rebuild.d.ts +6 -6
- package/lib/rebuild.js +42 -54
- package/lib/rebuild.js.map +1 -1
- package/lib/search-module.js +7 -36
- package/lib/search-module.js.map +1 -1
- package/lib/sysroot-fetcher.js +20 -50
- package/lib/sysroot-fetcher.js.map +1 -1
- package/lib/types.d.ts +4 -3
- package/lib/types.js +2 -5
- package/lib/types.js.map +1 -1
- package/package.json +21 -65
package/lib/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/lib/constants.js
CHANGED
|
@@ -1,30 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.ELECTRON_GYP_DIR = void 0;
|
|
27
|
-
const os = __importStar(require("os"));
|
|
28
|
-
const path = __importStar(require("path"));
|
|
29
|
-
exports.ELECTRON_GYP_DIR = path.resolve(os.homedir(), '.electron-gyp');
|
|
1
|
+
import os from 'node:os';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
export const ELECTRON_GYP_DIR = path.resolve(os.homedir(), '.electron-gyp');
|
|
30
4
|
//# sourceMappingURL=constants.js.map
|
package/lib/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,eAAe,CAAC,CAAC"}
|
package/lib/electron-locator.js
CHANGED
|
@@ -1,38 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.locateElectronModule = void 0;
|
|
27
|
-
const fs = __importStar(require("fs-extra"));
|
|
28
|
-
const path = __importStar(require("path"));
|
|
29
|
-
const search_module_1 = require("./search-module");
|
|
1
|
+
import fs from 'graceful-fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { searchForModule } from './search-module.js';
|
|
4
|
+
import { fileURLToPath } from 'node:url';
|
|
30
5
|
const electronModuleNames = ['electron', 'electron-prebuilt-compile'];
|
|
31
|
-
async function
|
|
6
|
+
async function locateModuleByImport() {
|
|
32
7
|
for (const moduleName of electronModuleNames) {
|
|
33
8
|
try {
|
|
34
|
-
const modulePath = path.resolve(
|
|
35
|
-
if (
|
|
9
|
+
const modulePath = path.resolve(fileURLToPath(import.meta.resolve(path.join(moduleName, 'package.json'))), '..');
|
|
10
|
+
if (fs.existsSync(path.join(modulePath, 'package.json'))) {
|
|
36
11
|
return modulePath;
|
|
37
12
|
}
|
|
38
13
|
}
|
|
@@ -41,16 +16,15 @@ async function locateModuleByRequire() {
|
|
|
41
16
|
}
|
|
42
17
|
return null;
|
|
43
18
|
}
|
|
44
|
-
async function locateElectronModule(projectRootPath = undefined, startDir = undefined) {
|
|
45
|
-
startDir
|
|
19
|
+
export async function locateElectronModule(projectRootPath = undefined, startDir = undefined) {
|
|
20
|
+
startDir ??= process.cwd();
|
|
46
21
|
for (const moduleName of electronModuleNames) {
|
|
47
|
-
const electronPaths = await
|
|
48
|
-
const electronPath = electronPaths.find(
|
|
22
|
+
const electronPaths = await searchForModule(startDir, moduleName, projectRootPath);
|
|
23
|
+
const electronPath = electronPaths.find((ePath) => fs.existsSync(path.join(ePath, 'package.json')));
|
|
49
24
|
if (electronPath) {
|
|
50
25
|
return electronPath;
|
|
51
26
|
}
|
|
52
27
|
}
|
|
53
|
-
return
|
|
28
|
+
return locateModuleByImport();
|
|
54
29
|
}
|
|
55
|
-
exports.locateElectronModule = locateElectronModule;
|
|
56
30
|
//# sourceMappingURL=electron-locator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electron-locator.js","sourceRoot":"","sources":["../src/electron-locator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"electron-locator.js","sourceRoot":"","sources":["../src/electron-locator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,mBAAmB,GAAG,CAAC,UAAU,EAAG,2BAA2B,CAAC,CAAC;AAEvE,KAAK,UAAU,oBAAoB;IACjC,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACjH,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;gBACzD,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,+BAA+B;QACzC,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,kBAAsC,SAAS,EAC/C,WAA+B,SAAS;IAExC,QAAQ,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;IAE3B,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE,CAAC;QAC7C,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;QACnF,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;QAE5G,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,oBAAoB,EAAE,CAAC;AAChC,CAAC"}
|
package/lib/fetcher.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
3
|
export declare function fetch<T extends 'buffer' | 'text', RT = T extends 'buffer' ? Buffer : string>(url: string, responseType: T, retries?: number): Promise<RT>;
|
package/lib/fetcher.js
CHANGED
|
@@ -1,21 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.fetch = void 0;
|
|
7
|
-
const debug_1 = __importDefault(require("debug"));
|
|
8
|
-
const got_1 = __importDefault(require("got"));
|
|
9
|
-
const d = (0, debug_1.default)('electron-rebuild');
|
|
1
|
+
import debug from 'debug';
|
|
2
|
+
import got from 'got';
|
|
3
|
+
const d = debug('electron-rebuild');
|
|
10
4
|
function sleep(n) {
|
|
11
5
|
return new Promise(r => setTimeout(r, n));
|
|
12
6
|
}
|
|
13
|
-
async function fetch(url, responseType, retries = 3) {
|
|
7
|
+
export async function fetch(url, responseType, retries = 3) {
|
|
14
8
|
if (retries === 0)
|
|
15
9
|
throw new Error('Failed to fetch a clang resource, run with DEBUG=electron-rebuild for more information');
|
|
16
10
|
d('downloading:', url);
|
|
17
11
|
try {
|
|
18
|
-
const response = await
|
|
12
|
+
const response = await got.default.get(url, {
|
|
19
13
|
responseType,
|
|
20
14
|
});
|
|
21
15
|
if (response.statusCode !== 200) {
|
|
@@ -32,5 +26,4 @@ async function fetch(url, responseType, retries = 3) {
|
|
|
32
26
|
return fetch(url, responseType, retries - 1);
|
|
33
27
|
}
|
|
34
28
|
}
|
|
35
|
-
exports.fetch = fetch;
|
|
36
29
|
//# sourceMappingURL=fetcher.js.map
|
package/lib/fetcher.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../src/fetcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../src/fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;AAEpC,SAAS,KAAK,CAAC,CAAS;IACtB,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CAAyE,GAAW,EAAE,YAAe,EAAE,OAAO,GAAG,CAAC;IAC3I,IAAI,OAAO,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;IAC7H,CAAC,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE;YAC1C,YAAY;SACb,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;YAChC,CAAC,CAAC,sBAAsB,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC/C,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO,KAAK,CAAC,GAAG,EAAE,YAAY,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,CAAC,CAAC,uBAAuB,CAAC,CAAC;QAC3B,OAAO,QAAQ,CAAC,IAAU,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,CAAC,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;QACzC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,KAAK,CAAC,GAAG,EAAE,YAAY,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
|
package/lib/main.d.ts
CHANGED
package/lib/main.js
CHANGED
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.rebuild = void 0;
|
|
4
|
-
const rebuild_1 = require("./rebuild");
|
|
5
|
-
Object.defineProperty(exports, "rebuild", { enumerable: true, get: function () { return rebuild_1.rebuild; } });
|
|
6
|
-
exports.default = rebuild_1.rebuild;
|
|
7
|
-
Object.defineProperty(exports, '__esModule', {
|
|
8
|
-
value: true
|
|
9
|
-
});
|
|
1
|
+
import { rebuild } from './rebuild.js';
|
|
2
|
+
export { rebuild };
|
|
10
3
|
//# sourceMappingURL=main.js.map
|
package/lib/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAE,OAAO,EAAkB,CAAC"}
|
package/lib/module-rebuilder.js
CHANGED
|
@@ -1,49 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.ModuleRebuilder = void 0;
|
|
30
|
-
const debug_1 = __importDefault(require("debug"));
|
|
31
|
-
const fs = __importStar(require("fs-extra"));
|
|
32
|
-
const path = __importStar(require("path"));
|
|
33
|
-
const cache_1 = require("./cache");
|
|
34
|
-
const node_gyp_1 = require("./module-type/node-gyp/node-gyp");
|
|
35
|
-
const prebuildify_1 = require("./module-type/prebuildify");
|
|
36
|
-
const prebuild_install_1 = require("./module-type/prebuild-install");
|
|
37
|
-
const node_pre_gyp_1 = require("./module-type/node-pre-gyp");
|
|
38
|
-
const d = (0, debug_1.default)('electron-rebuild');
|
|
39
|
-
class ModuleRebuilder {
|
|
1
|
+
import debug from 'debug';
|
|
2
|
+
import fs from 'graceful-fs';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import { cacheModuleState } from './cache.js';
|
|
5
|
+
import { NodeGyp } from './module-type/node-gyp/node-gyp.js';
|
|
6
|
+
import { Prebuildify } from './module-type/prebuildify.js';
|
|
7
|
+
import { PrebuildInstall } from './module-type/prebuild-install.js';
|
|
8
|
+
import { NodePreGyp } from './module-type/node-pre-gyp.js';
|
|
9
|
+
import { promisifiedGracefulFs } from './promisifiedGracefulFs.js';
|
|
10
|
+
const d = debug('electron-rebuild');
|
|
11
|
+
export class ModuleRebuilder {
|
|
12
|
+
modulePath;
|
|
13
|
+
nodeGyp;
|
|
14
|
+
rebuilder;
|
|
15
|
+
prebuildify;
|
|
16
|
+
prebuildInstall;
|
|
17
|
+
nodePreGyp;
|
|
40
18
|
constructor(rebuilder, modulePath) {
|
|
41
19
|
this.modulePath = modulePath;
|
|
42
20
|
this.rebuilder = rebuilder;
|
|
43
|
-
this.nodeGyp = new
|
|
44
|
-
this.prebuildify = new
|
|
45
|
-
this.prebuildInstall = new
|
|
46
|
-
this.nodePreGyp = new
|
|
21
|
+
this.nodeGyp = new NodeGyp(rebuilder, modulePath);
|
|
22
|
+
this.prebuildify = new Prebuildify(rebuilder, modulePath);
|
|
23
|
+
this.prebuildInstall = new PrebuildInstall(rebuilder, modulePath);
|
|
24
|
+
this.nodePreGyp = new NodePreGyp(rebuilder, modulePath);
|
|
47
25
|
}
|
|
48
26
|
get metaPath() {
|
|
49
27
|
return path.resolve(this.modulePath, 'build', this.rebuilder.buildType, '.forge-meta');
|
|
@@ -52,15 +30,15 @@ class ModuleRebuilder {
|
|
|
52
30
|
return `${this.rebuilder.arch}--${this.rebuilder.ABI}`;
|
|
53
31
|
}
|
|
54
32
|
async alreadyBuiltByRebuild() {
|
|
55
|
-
if (
|
|
56
|
-
const meta = await
|
|
33
|
+
if (fs.existsSync(this.metaPath)) {
|
|
34
|
+
const meta = await promisifiedGracefulFs.readFile(this.metaPath, 'utf8');
|
|
57
35
|
return meta === this.metaData;
|
|
58
36
|
}
|
|
59
37
|
return false;
|
|
60
38
|
}
|
|
61
39
|
async cacheModuleState(cacheKey) {
|
|
62
40
|
if (this.rebuilder.useCache) {
|
|
63
|
-
await
|
|
41
|
+
await cacheModuleState(this.modulePath, this.rebuilder.cachePath, cacheKey);
|
|
64
42
|
}
|
|
65
43
|
}
|
|
66
44
|
/**
|
|
@@ -119,22 +97,23 @@ class ModuleRebuilder {
|
|
|
119
97
|
async replaceExistingNativeModule() {
|
|
120
98
|
const buildLocation = path.resolve(this.modulePath, 'build', this.rebuilder.buildType);
|
|
121
99
|
d('searching for .node file', buildLocation);
|
|
122
|
-
const buildLocationFiles = await
|
|
100
|
+
const buildLocationFiles = await promisifiedGracefulFs.readdir(buildLocation);
|
|
123
101
|
d('testing files', buildLocationFiles);
|
|
124
102
|
const nodeFile = buildLocationFiles.find((file) => file !== '.node' && file.endsWith('.node'));
|
|
125
103
|
const nodePath = nodeFile ? path.resolve(buildLocation, nodeFile) : undefined;
|
|
126
|
-
if (nodePath &&
|
|
104
|
+
if (nodePath && fs.existsSync(nodePath)) {
|
|
127
105
|
d('found .node file', nodePath);
|
|
128
106
|
if (!this.rebuilder.disablePreGypCopy) {
|
|
129
107
|
const abiPath = path.resolve(this.modulePath, `bin/${this.rebuilder.platform}-${this.rebuilder.arch}-${this.rebuilder.ABI}`);
|
|
130
108
|
d('copying to prebuilt place:', abiPath);
|
|
131
|
-
await fs.mkdir(abiPath, { recursive: true });
|
|
132
|
-
await
|
|
109
|
+
await fs.promises.mkdir(abiPath, { recursive: true });
|
|
110
|
+
await promisifiedGracefulFs.copyFile(nodePath, path.join(abiPath, `${this.nodeGyp.moduleName}.node`));
|
|
133
111
|
}
|
|
134
112
|
}
|
|
135
113
|
}
|
|
136
114
|
async writeMetadata() {
|
|
137
|
-
await fs.
|
|
115
|
+
await fs.promises.mkdir(path.dirname(this.metaPath), { recursive: true });
|
|
116
|
+
await promisifiedGracefulFs.writeFile(this.metaPath, this.metaData);
|
|
138
117
|
}
|
|
139
118
|
async rebuild(cacheKey) {
|
|
140
119
|
if (!this.rebuilder.buildFromSource && ((await this.findPrebuildifyModule(cacheKey)) ||
|
|
@@ -145,5 +124,4 @@ class ModuleRebuilder {
|
|
|
145
124
|
return await this.rebuildNodeGypModule(cacheKey);
|
|
146
125
|
}
|
|
147
126
|
}
|
|
148
|
-
exports.ModuleRebuilder = ModuleRebuilder;
|
|
149
127
|
//# sourceMappingURL=module-rebuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-rebuilder.js","sourceRoot":"","sources":["../src/module-rebuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"module-rebuilder.js","sourceRoot":"","sources":["../src/module-rebuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { NodeAPI } from '../node-api';
|
|
2
|
-
import { IRebuilder } from '../types';
|
|
3
|
-
|
|
1
|
+
import { NodeAPI } from '../node-api.js';
|
|
2
|
+
import { IRebuilder } from '../types.js';
|
|
3
|
+
type PackageJSONValue = string | Record<string, unknown>;
|
|
4
4
|
export declare class NativeModule {
|
|
5
5
|
protected rebuilder: IRebuilder;
|
|
6
6
|
private _moduleName;
|
package/lib/module-type/index.js
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
class NativeModule {
|
|
1
|
+
import fs from 'graceful-fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { NodeAPI } from '../node-api.js';
|
|
4
|
+
import { readPackageJson } from '../read-package-json.js';
|
|
5
|
+
export class NativeModule {
|
|
6
|
+
rebuilder;
|
|
7
|
+
_moduleName;
|
|
8
|
+
modulePath;
|
|
9
|
+
nodeAPI;
|
|
10
|
+
packageJSON;
|
|
12
11
|
constructor(rebuilder, modulePath) {
|
|
13
12
|
this.rebuilder = rebuilder;
|
|
14
13
|
this.modulePath = modulePath;
|
|
15
|
-
this.nodeAPI = new
|
|
14
|
+
this.nodeAPI = new NodeAPI(this.moduleName, this.rebuilder.electronVersion);
|
|
16
15
|
}
|
|
17
16
|
get moduleName() {
|
|
18
17
|
if (!this._moduleName) {
|
|
19
|
-
const basename =
|
|
20
|
-
const parentDir =
|
|
18
|
+
const basename = path.basename(this.modulePath);
|
|
19
|
+
const parentDir = path.basename(path.dirname(this.modulePath));
|
|
21
20
|
if (parentDir.startsWith('@')) {
|
|
22
21
|
this._moduleName = `${parentDir}/${basename}`;
|
|
23
22
|
}
|
|
@@ -30,12 +29,12 @@ class NativeModule {
|
|
|
30
29
|
return result === undefined ? defaultValue : result;
|
|
31
30
|
}
|
|
32
31
|
async packageJSONField(key) {
|
|
33
|
-
this.packageJSON
|
|
32
|
+
this.packageJSON ||= await readPackageJson(this.modulePath);
|
|
34
33
|
return this.packageJSON[key];
|
|
35
34
|
}
|
|
36
35
|
async getSupportedNapiVersions() {
|
|
37
36
|
const binary = (await this.packageJSONFieldWithDefault('binary', {}));
|
|
38
|
-
return binary
|
|
37
|
+
return binary?.napi_versions;
|
|
39
38
|
}
|
|
40
39
|
/**
|
|
41
40
|
* Search dependencies for package using either `packageName` or
|
|
@@ -53,19 +52,17 @@ class NativeModule {
|
|
|
53
52
|
return forkedPackage || null;
|
|
54
53
|
}
|
|
55
54
|
}
|
|
56
|
-
|
|
57
|
-
async function locateBinary(basePath, suffix) {
|
|
55
|
+
export async function locateBinary(basePath, suffix) {
|
|
58
56
|
let parentPath = basePath;
|
|
59
57
|
let testPath;
|
|
60
58
|
while (testPath !== parentPath) {
|
|
61
59
|
testPath = parentPath;
|
|
62
|
-
const checkPath =
|
|
63
|
-
if (
|
|
60
|
+
const checkPath = path.resolve(testPath, suffix);
|
|
61
|
+
if (fs.existsSync(checkPath)) {
|
|
64
62
|
return checkPath;
|
|
65
63
|
}
|
|
66
|
-
parentPath =
|
|
64
|
+
parentPath = path.resolve(testPath, '..');
|
|
67
65
|
}
|
|
68
66
|
return null;
|
|
69
67
|
}
|
|
70
|
-
exports.locateBinary = locateBinary;
|
|
71
68
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/module-type/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/module-type/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
const constants_1 = require("../../constants");
|
|
12
|
-
const clang_fetcher_1 = require("../../clang-fetcher");
|
|
13
|
-
const __1 = require("..");
|
|
14
|
-
const child_process_1 = require("child_process");
|
|
15
|
-
const d = (0, debug_1.default)('electron-rebuild');
|
|
16
|
-
class NodeGyp extends __1.NativeModule {
|
|
1
|
+
import debug from 'debug';
|
|
2
|
+
import detectLibc from 'detect-libc';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import semver from 'semver';
|
|
5
|
+
import { ELECTRON_GYP_DIR } from '../../constants.js';
|
|
6
|
+
import { getClangEnvironmentVars } from '../../clang-fetcher.js';
|
|
7
|
+
import { NativeModule } from '../index.js';
|
|
8
|
+
import { fork } from 'node:child_process';
|
|
9
|
+
const d = debug('electron-rebuild');
|
|
10
|
+
export class NodeGyp extends NativeModule {
|
|
17
11
|
async buildArgs(prefixedArgs) {
|
|
18
12
|
const args = [
|
|
19
13
|
'node',
|
|
@@ -38,7 +32,7 @@ class NodeGyp extends __1.NativeModule {
|
|
|
38
32
|
// and --force-process-config must be passed to node-gyp >= 8.4.0 to
|
|
39
33
|
// correctly build modules for them.
|
|
40
34
|
// See also https://github.com/nodejs/node-gyp/pull/2497
|
|
41
|
-
if (!
|
|
35
|
+
if (!semver.satisfies(this.rebuilder.electronVersion, '^14.2.0 || ^15.3.0') && semver.major(this.rebuilder.electronVersion) < 16) {
|
|
42
36
|
args.push('--force-process-config');
|
|
43
37
|
}
|
|
44
38
|
return args;
|
|
@@ -55,14 +49,14 @@ class NodeGyp extends __1.NativeModule {
|
|
|
55
49
|
}
|
|
56
50
|
let value = binaryValue;
|
|
57
51
|
if (binaryKey === 'module_path') {
|
|
58
|
-
value =
|
|
52
|
+
value = path.resolve(this.modulePath, value);
|
|
59
53
|
}
|
|
60
54
|
value = value.replace('{configuration}', this.rebuilder.buildType)
|
|
61
55
|
.replace('{node_abi}', `electron-v${this.rebuilder.electronVersion.split('.').slice(0, 2).join('.')}`)
|
|
62
56
|
.replace('{platform}', this.rebuilder.platform)
|
|
63
57
|
.replace('{arch}', this.rebuilder.arch)
|
|
64
58
|
.replace('{version}', await this.packageJSONField('version'))
|
|
65
|
-
.replace('{libc}', await
|
|
59
|
+
.replace('{libc}', await detectLibc.family() || 'unknown');
|
|
66
60
|
if (napiBuildVersion !== undefined) {
|
|
67
61
|
value = value.replace('{napi_build_version}', napiBuildVersion.toString());
|
|
68
62
|
}
|
|
@@ -74,7 +68,6 @@ class NodeGyp extends __1.NativeModule {
|
|
|
74
68
|
return flags.filter(value => value);
|
|
75
69
|
}
|
|
76
70
|
async rebuildModule() {
|
|
77
|
-
var _a, _b;
|
|
78
71
|
if (this.rebuilder.platform !== process.platform) {
|
|
79
72
|
throw new Error("node-gyp does not support cross-compiling native modules from source.");
|
|
80
73
|
}
|
|
@@ -89,29 +82,29 @@ class NodeGyp extends __1.NativeModule {
|
|
|
89
82
|
};
|
|
90
83
|
const extraNodeGypArgs = [];
|
|
91
84
|
if (this.rebuilder.useElectronClang) {
|
|
92
|
-
const { env: clangEnv, args: clangArgs } = await
|
|
85
|
+
const { env: clangEnv, args: clangArgs } = await getClangEnvironmentVars(this.rebuilder.electronVersion, this.rebuilder.arch);
|
|
93
86
|
Object.assign(env, clangEnv);
|
|
94
87
|
extraNodeGypArgs.push(...clangArgs);
|
|
95
88
|
}
|
|
96
89
|
const nodeGypArgs = await this.buildArgs(extraNodeGypArgs);
|
|
97
90
|
d('rebuilding', this.moduleName, 'with args', nodeGypArgs);
|
|
98
|
-
const forkedChild = (
|
|
91
|
+
const forkedChild = fork(path.resolve(import.meta.dirname, 'worker.js'), {
|
|
99
92
|
env,
|
|
100
93
|
cwd: this.modulePath,
|
|
101
94
|
stdio: 'pipe',
|
|
102
95
|
});
|
|
103
96
|
const outputBuffers = [];
|
|
104
|
-
|
|
97
|
+
forkedChild.stdout?.on('data', (chunk) => {
|
|
105
98
|
outputBuffers.push(chunk);
|
|
106
99
|
});
|
|
107
|
-
|
|
100
|
+
forkedChild.stderr?.on('data', (chunk) => {
|
|
108
101
|
outputBuffers.push(chunk);
|
|
109
102
|
});
|
|
110
103
|
forkedChild.send({
|
|
111
104
|
moduleName: this.moduleName,
|
|
112
105
|
nodeGypArgs,
|
|
113
106
|
extraNodeGypArgs,
|
|
114
|
-
devDir: this.rebuilder.mode === 'sequential' ?
|
|
107
|
+
devDir: this.rebuilder.mode === 'sequential' ? ELECTRON_GYP_DIR : path.resolve(ELECTRON_GYP_DIR, '_p', this.moduleName),
|
|
115
108
|
});
|
|
116
109
|
await new Promise((resolve, reject) => {
|
|
117
110
|
forkedChild.on('exit', (code) => {
|
|
@@ -123,5 +116,4 @@ class NodeGyp extends __1.NativeModule {
|
|
|
123
116
|
});
|
|
124
117
|
}
|
|
125
118
|
}
|
|
126
|
-
exports.NodeGyp = NodeGyp;
|
|
127
119
|
//# sourceMappingURL=node-gyp.js.map
|