use of org.gradle.language.base.internal.tasks.SimpleStaleClassCleaner in project gradle by gradle.
the class AbstractLinkTask method link.
@TaskAction
public void link() {
SimpleStaleClassCleaner cleaner = new SimpleStaleClassCleaner(getOutputs());
cleaner.setDestinationDir(getDestinationDirectory().get().getAsFile());
cleaner.execute();
if (getSource().isEmpty()) {
setDidWork(cleaner.getDidWork());
return;
}
LinkerSpec spec = createLinkerSpec();
spec.setTargetPlatform(getTargetPlatform().get());
spec.setTempDir(getTemporaryDir());
spec.setOutputFile(getLinkedFile().get().getAsFile());
spec.objectFiles(getSource());
spec.libraries(getLibs());
spec.args(getLinkerArgs().get());
spec.setDebuggable(getDebuggable().get());
BuildOperationLogger operationLogger = getOperationLoggerFactory().newOperationLogger(getName(), getTemporaryDir());
spec.setOperationLogger(operationLogger);
Compiler<LinkerSpec> compiler = createCompiler();
compiler = BuildOperationLoggingCompilerDecorator.wrap(compiler);
WorkResult result = compiler.execute(spec);
setDidWork(result.getDidWork());
}
use of org.gradle.language.base.internal.tasks.SimpleStaleClassCleaner in project gradle by gradle.
the class ProcessResources method copy.
@Override
protected void copy() {
StaleClassCleaner cleaner = new SimpleStaleClassCleaner(getOutputs());
cleaner.setDestinationDir(getDestinationDir());
cleaner.execute();
super.copy();
}
use of org.gradle.language.base.internal.tasks.SimpleStaleClassCleaner in project gradle by gradle.
the class IncrementalSwiftCompiler method cleanPreviousOutputs.
private boolean cleanPreviousOutputs(SwiftCompileSpec spec) {
SimpleStaleClassCleaner cleaner = new SimpleStaleClassCleaner(outputs);
cleaner.setDestinationDir(spec.getObjectFileDir());
cleaner.execute();
return cleaner.getDidWork();
}
Aggregations