cpp.js 1.0.0-beta.2 → 1.0.0-beta.21
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 +104 -0
- package/package.json +25 -6
- package/src/{functions/buildJS.js → actions/buildJs.js} +7 -5
- package/src/actions/buildWasm.js +68 -0
- package/src/actions/createInterface.js +127 -0
- package/src/actions/createLib.js +103 -0
- package/src/actions/createXCFramework.js +40 -0
- package/src/actions/getAllBridges.js +8 -0
- package/src/actions/getCmakeParameters.js +50 -0
- package/src/actions/getData.js +28 -0
- package/src/actions/getDependLibs.js +19 -0
- package/src/{functions → actions}/run.js +77 -40
- package/src/assets/CMakeLists.txt +13 -9
- package/src/assets/ios.toolchain.cmake +4 -4
- package/src/bin.js +147 -72
- package/src/export/react-native.js +51 -0
- package/src/export/web.js +42 -0
- package/src/index.js +13 -63
- package/src/state/calculateDependencyParameters.js +64 -0
- package/src/state/index.js +81 -0
- package/src/state/loadConfig.js +96 -0
- package/src/utils/downloadAndExtractFile.js +36 -0
- package/src/utils/fixPackageName.js +7 -0
- package/src/utils/getAbsolutePath.js +14 -0
- package/src/utils/{findCMakeListsFile.js → getCMakeListsFilePath.js} +4 -3
- package/src/utils/getOsUserAndGroupId.js +2 -1
- package/src/utils/getParentPath.js +12 -0
- package/src/utils/hash.js +20 -0
- package/src/utils/loadJs.js +32 -0
- package/src/utils/loadJson.js +16 -0
- package/src/utils/writeJson.js +9 -0
- package/.mocharc.yaml +0 -3
- package/src/functions/createBridge.js +0 -37
- package/src/functions/createLib.js +0 -44
- package/src/functions/createWasm.js +0 -71
- package/src/functions/findOrCreateInterfaceFile.js +0 -68
- package/src/functions/finishBuild.js +0 -43
- package/src/functions/getCmakeParams.js +0 -106
- package/src/functions/getData.js +0 -36
- package/src/functions/getLibs.js +0 -33
- package/src/functions/specs/createBridge.spec.js +0 -51
- package/src/functions/specs/findOrCreateInterfaceFile.spec.js +0 -49
- package/src/utils/createTempDir.js +0 -15
- package/src/utils/getBaseInfo.js +0 -15
- package/src/utils/getCliPath.js +0 -11
- package/src/utils/getConfig.js +0 -170
- package/src/utils/getDirName.js +0 -7
- package/src/utils/getPathInfo.js +0 -10
- package/src/utils/specs/findCMakeListsFile.spec.js +0 -34
- package/src/utils/specs/utils.spec.js +0 -81
- package/test/data/sample.cpp +0 -1
- package/test/data/sample.h +0 -10
- package/test/data/sample.i +0 -12
- package/test/data/sample2.cpp +0 -0
- package/test/data/sample2.ei +0 -12
- package/test/data/sample2.h +0 -10
package/src/utils/getDirName.js
DELETED
package/src/utils/getPathInfo.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { assert } from 'chai';
|
|
2
|
-
import fs from 'fs';
|
|
3
|
-
import p from 'path';
|
|
4
|
-
import * as url from 'node:url';
|
|
5
|
-
import { tmpdir } from "os";
|
|
6
|
-
import findCMakeListsFile from './findCMakeListsFile.js';
|
|
7
|
-
|
|
8
|
-
const __filename = url.fileURLToPath(import.meta.url);
|
|
9
|
-
const temp = __filename.split('/');
|
|
10
|
-
temp.pop();
|
|
11
|
-
temp.pop();
|
|
12
|
-
const __dirname = temp.join('/');
|
|
13
|
-
|
|
14
|
-
export function createTempDir(folder) {
|
|
15
|
-
let path = p.join(tmpdir(), "cppjs-app-cli-test");
|
|
16
|
-
if (folder) path = p.join(path, folder);
|
|
17
|
-
|
|
18
|
-
if (fs.existsSync(path)) fs.rmSync(path, { recursive: true, force: true });
|
|
19
|
-
fs.mkdirSync(path, { recursive: true });
|
|
20
|
-
|
|
21
|
-
return path;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
describe('findCMakeListsFile', function () {
|
|
25
|
-
let tempdir;
|
|
26
|
-
before(async function () {
|
|
27
|
-
tempdir = createTempDir();
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
it('find CMakeLists.txt file', async function () {
|
|
31
|
-
const path = findCMakeListsFile(tempdir);
|
|
32
|
-
assert.equal(path, __dirname + '/assets/CMakeLists.txt');
|
|
33
|
-
});
|
|
34
|
-
});
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { assert } from 'chai';
|
|
2
|
-
import { getBaseInfo, getPathInfo } from './utils.js';
|
|
3
|
-
|
|
4
|
-
describe('getBaseInfo', function () {
|
|
5
|
-
it('empty', async function () {
|
|
6
|
-
const baseInfo = getBaseInfo('');
|
|
7
|
-
assert.equal(baseInfo.withSlash, '/');
|
|
8
|
-
assert.equal(baseInfo.withoutSlash, '/');
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
it('null', async function () {
|
|
12
|
-
const baseInfo = getBaseInfo(null);
|
|
13
|
-
assert.equal(baseInfo.withSlash, '/');
|
|
14
|
-
assert.equal(baseInfo.withoutSlash, '/');
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
it('undefined', async function () {
|
|
18
|
-
const baseInfo = getBaseInfo();
|
|
19
|
-
assert.equal(baseInfo.withSlash, '/');
|
|
20
|
-
assert.equal(baseInfo.withoutSlash, '/');
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it('/', async function () {
|
|
24
|
-
const baseInfo = getBaseInfo('/');
|
|
25
|
-
assert.equal(baseInfo.withSlash, '/');
|
|
26
|
-
assert.equal(baseInfo.withoutSlash, '/');
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
it('with /', async function () {
|
|
30
|
-
const baseInfo = getBaseInfo('/home/cppjs/');
|
|
31
|
-
assert.equal(baseInfo.withSlash, '/home/cppjs/');
|
|
32
|
-
assert.equal(baseInfo.withoutSlash, '/home/cppjs');
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
it('without /', async function () {
|
|
36
|
-
const baseInfo = getBaseInfo('/home/cppjs');
|
|
37
|
-
assert.equal(baseInfo.withSlash, '/home/cppjs/');
|
|
38
|
-
assert.equal(baseInfo.withoutSlash, '/home/cppjs');
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
describe('getPathInfo', function () {
|
|
43
|
-
it('path: absolute', async function () {
|
|
44
|
-
const path = '/home/cppjs/cppjs.h';
|
|
45
|
-
const pathInfo = getPathInfo(path);
|
|
46
|
-
assert.equal(pathInfo.relative, path);
|
|
47
|
-
assert.equal(pathInfo.absolute, path);
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
it('path: absolute, base: /', async function () {
|
|
51
|
-
const basePath = '/home/cppjs/';
|
|
52
|
-
const path = '/home/cppjs/cppjs.h';
|
|
53
|
-
const pathInfo = getPathInfo(path, basePath);
|
|
54
|
-
assert.equal(pathInfo.relative, 'cppjs.h');
|
|
55
|
-
assert.equal(pathInfo.absolute, path);
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
it('path: absolute, base', async function () {
|
|
59
|
-
const basePath = '/home/cppjs';
|
|
60
|
-
const path = '/home/cppjs/cppjs.h';
|
|
61
|
-
const pathInfo = getPathInfo(path, basePath);
|
|
62
|
-
assert.equal(pathInfo.relative, 'cppjs.h');
|
|
63
|
-
assert.equal(pathInfo.absolute, path);
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
it('path: relative, base: /', async function () {
|
|
67
|
-
const basePath = '/home/cppjs/';
|
|
68
|
-
const path = 'cppjs.h';
|
|
69
|
-
const pathInfo = getPathInfo(path, basePath);
|
|
70
|
-
assert.equal(pathInfo.relative, 'cppjs.h');
|
|
71
|
-
assert.equal(pathInfo.absolute, basePath + path);
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
it('path: relative, base: ', async function () {
|
|
75
|
-
const basePath = '/home/cppjs';
|
|
76
|
-
const path = 'cppjs.h';
|
|
77
|
-
const pathInfo = getPathInfo(path, basePath);
|
|
78
|
-
assert.equal(pathInfo.relative, 'cppjs.h');
|
|
79
|
-
assert.equal(pathInfo.absolute, basePath + '/' + path);
|
|
80
|
-
});
|
|
81
|
-
});
|
package/test/data/sample.cpp
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
#include "sample.h"
|
package/test/data/sample.h
DELETED
package/test/data/sample.i
DELETED
package/test/data/sample2.cpp
DELETED
|
File without changes
|
package/test/data/sample2.ei
DELETED