Skip to content

Commit 0c4d926

Browse files
authored
Merge pull request #1050 from nkcsgexi/sub-dir-non-fatal
PrebuiltModuleGen: log non-fatal messages to a sub-directory
2 parents 5981c7e + 2529479 commit 0c4d926

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

Sources/SwiftDriver/Jobs/PrebuiltModulesJob.swift

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,19 @@ import Foundation
2626
return false
2727
}
2828

29-
fileprivate func getErrKind(_ content: String) -> String {
29+
enum ErrKind: String {
30+
case err
31+
case warn
32+
case note
33+
}
34+
35+
fileprivate func getErrKind(_ content: String) -> ErrKind {
3036
if content.contains("error: ") {
31-
return "err"
37+
return .err
3238
} else if content.contains("warning: "){
33-
return "warn"
39+
return .warn
3440
} else {
35-
return "note"
41+
return .note
3642
}
3743
}
3844

@@ -58,12 +64,14 @@ fileprivate func logOutput(_ job: Job, _ result: ProcessResult, _ logPath: Absol
5864
let interfaceBase = getLastInputPath(job).basename
5965
let errKind = getErrKind(content)
6066
if interfaceBase.contains(".abi.json") {
61-
logPath = logPath.appending(component: "abi").appending(component: errKind)
67+
logPath = logPath.appending(component: "abi").appending(component: errKind.rawValue)
68+
} else if errKind != .err {
69+
logPath = logPath.appending(component: "interface-nonfatal")
6270
}
6371
if !localFileSystem.exists(logPath) {
6472
try localFileSystem.createDirectory(logPath, recursive: true)
6573
}
66-
let fileName = "\(job.moduleName)-\(interfaceBase)-\(stdout ? "out" : errKind).txt"
74+
let fileName = "\(job.moduleName)-\(interfaceBase)-\(stdout ? "out" : errKind.rawValue).txt"
6775
try localFileSystem.writeFileContents(logPath.appending(component: fileName)) {
6876
$0 <<< content
6977
}

0 commit comments

Comments
 (0)