From dd79a9c9fd867a7cc0003ed0a3035ab62417afd6 Mon Sep 17 00:00:00 2001 From: Alexander Gorshenev Date: Tue, 21 Jan 2025 18:53:47 +0300 Subject: [PATCH] proper Signed-off-by: Alexander Gorshenev --- incremental/tools/fast-arktsc/src/main.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/incremental/tools/fast-arktsc/src/main.ts b/incremental/tools/fast-arktsc/src/main.ts index 4241000d5..4897d9808 100644 --- a/incremental/tools/fast-arktsc/src/main.ts +++ b/incremental/tools/fast-arktsc/src/main.ts @@ -32,10 +32,11 @@ const options = program .option('--compiler ', 'Path to compiler') .option('--link-name ', 'Name of combined link-name.abc', "all") .option('--target ', 'Target build system', "ninja") + .option('--file-option', 'When provided pass the source as --file rather than a free option') .parse() .opts() -main(options.inputFiles, options.outputDir, options.linkName, options.target) +main(options.inputFiles, options.outputDir, options.linkName, options.target, options.fileOptions) function findMatching(base: string, include: string[], exclude: string[]): string[] { return readdirSyncRecursive(base) @@ -72,7 +73,7 @@ function produceMakefile(compiler: string, files.forEach(it => { all.push(it.output) result.push(`${it.output}: ${it.input}`) - result.push(`\t${compiler} --ets-module --arktsconfig ${path.resolve(config)} ${it.input} --output ${it.output}`) + result.push(`\t${compiler} --ets-module --arktsconfig ${path.resolve(config)} ${options.fileOption ? "--file" : ""} ${it.input} --output ${it.output}`) }) result.push(`compile: ${all.join(' ')}`) result.push(`link: compile`) @@ -91,7 +92,7 @@ function produceNinjafile(compiler: string, let linker = compiler.replace('arktsc', 'arklink') let prefix = ` rule arkts_compiler - command = ${compiler} --ets-module --arktsconfig ${path.resolve(config)} $in --output $out + command = ${compiler} --ets-module --arktsconfig ${path.resolve(config)} ${options.fileOption ? "--file" : ""} $in --output $out description = "Compiling ARKTS $out rule arkts_linker command = ${linker} --output $out -- $in @@ -109,7 +110,7 @@ rule arkts_linker return prefix + result.join('\n') } -function main(inputFile: string, outputDir: string, linkName: string, target: string) { +function main(inputFile: string, outputDir: string, linkName: string, target: string, fileOptions: boolean) { let config = JSON.parse(fs.readFileSync(inputFile, 'utf8')) let baseDir = path.resolve(path.dirname(inputFile)) let include = (config.include as string[]).map(it => it.replace('\\.', '.')) -- Gitee