You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Incremental Builds] Produce an empty first wave if only job to run is verify module interface job.
Existing check decides to skip all compilation if there are no compile jobs and no post-compile job depends on before-compile jobs' outputs. This change refines the check to also ensure we do not run before-compile jobs whose only dependents are interface verification jobs. Otherwise, we would have an emit-module job, followed by verify-module-interface jobs on a null incremental build.
Resolves rdar://89913538
letafterCompilesDependnigJobs= jobsInPhases.afterCompiles.filter{postCompileJob in postCompileJob.inputs.contains(where: beforeCompileJobOutputs.contains)}
143
+
if afterCompilesDependnigJobs.isEmpty || afterCompilesDependnigJobs.allSatisfy({ $0.kind ==.verifyModuleInterface }){
144
+
returnfalse
145
+
}else{
146
+
returntrue
147
+
}
143
148
}
144
149
145
150
/// Figure out which compilation inputs are *not* mandatory at the start
0 commit comments