From 7f1704dca1d4d6f918a00d5911c90a49fab9562e Mon Sep 17 00:00:00 2001 From: tension <1113989231@qq.com> Date: Tue, 22 Jul 2025 19:01:24 +0800 Subject: [PATCH] Arklinker code volume reduce Issue: ICO0UQ Signed-off-by: zhangli <1113989231@qq.com> Change-id: df8ac9f45a874c05c7e81ce49b318a32aza4e96cd --- ets2panda/driver/build_system/src/build/base_mode.ts | 12 ++++++++++-- ets2panda/driver/build_system/src/pre_define.ts | 1 + 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ets2panda/driver/build_system/src/build/base_mode.ts b/ets2panda/driver/build_system/src/build/base_mode.ts index be08906774..917e421024 100644 --- a/ets2panda/driver/build_system/src/build/base_mode.ts +++ b/ets2panda/driver/build_system/src/build/base_mode.ts @@ -36,6 +36,7 @@ import { MERGED_ABC_FILE, TS_SUFFIX, DEPENDENCY_INPUT_FILE, + MERGED_TMP_FILE, } from '../pre_define'; import { changeDeclgenFileExtension, @@ -307,6 +308,10 @@ export abstract class BaseMode { } public compileMultiFiles(filePaths: string[], moduleInfo: ModuleInfo): void { + const tmpFilePath = path.join(this.cacheDir, MERGED_TMP_FILE); + this.abcFiles.clear(); + this.abcFiles.add(tmpFilePath); + let ets2pandaCmd: string[] = [ '_', '--extension', @@ -314,10 +319,10 @@ export abstract class BaseMode { '--arktsconfig', moduleInfo.arktsConfigFile, '--output', - path.resolve(this.outputDir, MERGED_ABC_FILE), + tmpFilePath, '--simultaneous' ]; - ensurePathExists(path.resolve(this.outputDir, MERGED_ABC_FILE)); + ensurePathExists(tmpFilePath); if (this.isDebug) { ets2pandaCmd.push('--debug-info'); } @@ -371,6 +376,7 @@ export abstract class BaseMode { }); fs.writeFileSync(linkerInputFile, linkerInputContent); + this.abcLinkerCmd.push('--strip-unused'); this.abcLinkerCmd.push('--output'); this.abcLinkerCmd.push('"' + this.mergedAbcFile + '"'); this.abcLinkerCmd.push('--'); @@ -829,6 +835,8 @@ export abstract class BaseMode { this.logger.printErrorAndExit(logData); } } + + this.mergeAbcFiles(); } // -- runParallell code begins -- diff --git a/ets2panda/driver/build_system/src/pre_define.ts b/ets2panda/driver/build_system/src/pre_define.ts index b0e623d9f1..7032b8ad5d 100644 --- a/ets2panda/driver/build_system/src/pre_define.ts +++ b/ets2panda/driver/build_system/src/pre_define.ts @@ -14,6 +14,7 @@ */ export const ARKTSCONFIG_JSON_FILE: string = 'arktsconfig.json'; +export const MERGED_TMP_FILE: string = 'modules_tmp.abc'; export const MERGED_ABC_FILE: string = 'modules_static.abc'; export const LINKER_INPUT_FILE: string = 'fileInfo.txt'; export const DEPENDENCY_INPUT_FILE: string = 'dependencyFileInfo.txt'; -- Gitee