Ported ClangLTOBuilder.
diff --git a/zorg/buildbot/builders/ClangLTOBuilder.py b/zorg/buildbot/builders/ClangLTOBuilder.py
index 1cd39a0..5121e7f 100644
--- a/zorg/buildbot/builders/ClangLTOBuilder.py
+++ b/zorg/buildbot/builders/ClangLTOBuilder.py
@@ -1,7 +1,7 @@
from buildbot.steps.shell import ShellCommand
-from buildbot.steps.slave import RemoveDirectory
-from buildbot.status.results import FAILURE
+from buildbot.process.results import FAILURE
from buildbot.process.properties import WithProperties
+from buildbot.plugins import steps
from zorg.buildbot.commands.CmakeCommand import CmakeCommand
from zorg.buildbot.commands.NinjaCommand import NinjaCommand
@@ -27,13 +27,13 @@
# This stage could use incremental build.
# Clean stage1, only if requested.
- f.addStep(RemoveDirectory(name='clean-%s-dir' % obj_dir,
+ f.addStep(steps.RemoveDirectory(name='clean-%s-dir' % obj_dir,
dir=obj_dir,
haltOnFailure=False,
flunkOnFailure=False,
doStepIf=clean
))
- f.addStep(RemoveDirectory(name='clean-%s-dir' % f.stage_installdirs[stage_idx],
+ f.addStep(steps.RemoveDirectory(name='clean-%s-dir' % f.stage_installdirs[stage_idx],
dir=f.stage_installdirs[stage_idx],
haltOnFailure=False,
flunkOnFailure=False,
@@ -82,7 +82,6 @@
path=src_dir,
env=env,
workdir=obj_dir,
- doStepIf=FileDoesNotExist("CMakeCache.txt")
))
# Build clang by the system compiler
@@ -138,13 +137,13 @@
staged_install = f.stage_installdirs[use_stage_idx]
# Always do a clean build for the staged compiler.
- f.addStep(RemoveDirectory(name='clean-%s-dir' % obj_dir,
+ f.addStep(steps.RemoveDirectory(name='clean-%s-dir' % obj_dir,
dir=obj_dir,
haltOnFailure=False,
flunkOnFailure=False,
))
- f.addStep(RemoveDirectory(name='clean-%s-dir' % f.stage_installdirs[stage_idx],
+ f.addStep(steps.RemoveDirectory(name='clean-%s-dir' % f.stage_installdirs[stage_idx],
dir=f.stage_installdirs[stage_idx],
haltOnFailure=False,
flunkOnFailure=False,
@@ -175,11 +174,11 @@
cmake_args.append(
WithProperties(
- "-DCMAKE_CXX_COMPILER=%(workdir)s/" + staged_install + "/bin/clang++"
+ "-DCMAKE_CXX_COMPILER=%(builddir)s/" + staged_install + "/bin/clang++"
))
cmake_args.append(
WithProperties(
- "-DCMAKE_C_COMPILER=%(workdir)s/" + staged_install + "/bin/clang"
+ "-DCMAKE_C_COMPILER=%(builddir)s/" + staged_install + "/bin/clang"
))
CmakeCommand.applyRequiredOptions(cmake_args, [
@@ -194,7 +193,6 @@
path=src_dir,
env=env,
workdir=obj_dir,
- doStepIf=FileDoesNotExist("CMakeCache.txt")
))
# Build clang by the staged compiler
@@ -250,9 +248,6 @@
if lto is None:
lto = 'ON'
- if jobs is None:
- jobs = "%(jobs)s"
-
if extra_configure_args is None:
extra_configure_args = []
else:
@@ -330,11 +325,11 @@
configure_args.append(
WithProperties(
- "-DCMAKE_AR=%(workdir)s/" + staged_install + "/bin/llvm-ar"
+ "-DCMAKE_AR=%(builddir)s/" + staged_install + "/bin/llvm-ar"
))
configure_args.append(
WithProperties(
- "-DCMAKE_RANLIB=%(workdir)s/" + staged_install + "/bin/llvm-ranlib"
+ "-DCMAKE_RANLIB=%(builddir)s/" + staged_install + "/bin/llvm-ranlib"
))
_addSteps4StagedCompiler(f,
@@ -371,10 +366,9 @@
# Only if the compare-compilers step has failed.
def _prevStepFailed(step):
- steps = step.build.getStatus().getSteps()
+ steps = step.build.executedSteps
prev_step = steps[-2]
- (result, _) = prev_step.getResults()
- return (result == FAILURE)
+ return (prev_step.results == FAILURE)
dir1 = f.stage_objdirs[-2]
dir2 = f.stage_objdirs[-1]