From 01f38ffee959b3add2186735e2994ae5143a1075 Mon Sep 17 00:00:00 2001 From: zhaojunxia Date: Mon, 30 May 2022 19:25:14 -0700 Subject: [PATCH] feat: support auto generate subsystem name and part name Signed-off-by: zhaojunxia --- src/gen/cmd_gen.js | 2 +- src/gen/extend/build_gn.js | 9 ++++++--- src/gen/generate.js | 3 ++- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/gen/cmd_gen.js b/src/gen/cmd_gen.js index cff2b185..2ca2fce0 100644 --- a/src/gen/cmd_gen.js +++ b/src/gen/cmd_gen.js @@ -22,7 +22,7 @@ var fs = require('fs'); let ops = stdio.getopt({ 'filename': { key: 'f', args: 1, description: ".d.ts file", default: "" }, - 'directory': { key: 'dir', args: 1, description: ".d.ts directory", default: "" }, + 'directory': { key: 'd', args: 1, description: ".d.ts directory", default: "" }, 'out': { key: 'o', args: 1, description: "output directory", default: "." }, 'loglevel': { key: 'l', args: 1, description: "Log Level : 0~3", default: "1" } }); diff --git a/src/gen/extend/build_gn.js b/src/gen/extend/build_gn.js index d7d40156..1074acbc 100644 --- a/src/gen/extend/build_gn.js +++ b/src/gen/extend/build_gn.js @@ -48,8 +48,11 @@ ohos_shared_library("[implName]") ` /**创建nodejs编译文件,用于在ubuntu测试 */ -function generateGN(destDir, implName, license) { - let ss = gnTemplete.replaceAll("[implName]", implName) +function generateGN(destDir, implName, license, partName) { + let subsystemName = implName; + let gnFile = gnTemplete.replaceAll("[implName]", implName); + gnFile = gnFile.replaceAll("[subsystemName]", subsystemName); + gnFile = gnFile.replaceAll("[partName]", partName); if (license) { let s2 = license.substring(2, license.length - 2).split("\n"); license = ""; @@ -62,7 +65,7 @@ function generateGN(destDir, implName, license) { } } } - writeFile(re.pathJoin(destDir, "BUILD.gn"), null != license ? (license + "\n" + ss) : ss) + writeFile(re.pathJoin(destDir, "BUILD.gn"), null != license ? (license + "\n" + gnFile) : gnFile) } module.exports = { diff --git a/src/gen/generate.js b/src/gen/generate.js index 14e5aa6e..dc8e8006 100644 --- a/src/gen/generate.js +++ b/src/gen/generate.js @@ -139,8 +139,9 @@ function generateAll(structOfTs, destDir, moduleName) { implCpp = implCpp.replaceAll("[implCpp_detail]", result.implCpp) writeFile(re.pathJoin(destDir, "%s.cpp".format(ns0.name)), null != license ? (license + "\n" + implCpp) : implCpp) + let partName = moduleName.replace('.', '_') generateGYP(destDir, ns0.name, license)//生成ubuntu下测试的编译脚本 - generateGN(destDir, ns0.name, license)//生成BUILD.gn for ohos + generateGN(destDir, ns0.name, license, partName)//生成BUILD.gn for ohos generateBase(destDir, license)//x_napi_tool.h/cpp } -- Gitee