From 1b0156f86a4d45b4e8f5dee58fb178c4b45a4a9e Mon Sep 17 00:00:00 2001 From: Ilya Bersenev Date: Tue, 6 Sep 2022 16:05:03 +0300 Subject: [PATCH] Add option to print results as xcode warnings --- Sources/FengNiao/main.swift | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Sources/FengNiao/main.swift b/Sources/FengNiao/main.swift index 242458d..fd02f69 100644 --- a/Sources/FengNiao/main.swift +++ b/Sources/FengNiao/main.swift @@ -36,6 +36,8 @@ let EX_OK: Int32 = 0 let EX_USAGE: Int32 = 64 #endif +let EXIT_UNUSED_RESOURCES: Int32 = 1 + let cli = CommandLineKit.CommandLine() cli.formatOutput = { s, type in var str: String @@ -79,6 +81,9 @@ let skipProjRefereceCleanOption = BoolOption( ) cli.addOption(skipProjRefereceCleanOption) +let xcodeWarningsOption = BoolOption(longFlag: "xcode-warnings", helpMessage: "Print results as xcode warnings and return non zero code if any.") +cli.addOption(xcodeWarningsOption) + let versionOption = BoolOption(longFlag: "version", helpMessage: "Print version.") cli.addOption(versionOption) @@ -144,6 +149,14 @@ if unusedFiles.isEmpty { exit(EX_OK) } +if xcodeWarningsOption.value { + for file in unusedFiles.sorted(by: { $0.size > $1.size }) { + print("\(file.path.string): warning: Unused resource of size \(file.readableSize)") + } + + exit(EXIT_UNUSED_RESOURCES); +} + if !isForce { var result = promptResult(files: unusedFiles) while result == .list {