[zorg] r183702 - Added new lld builder, slave, LLDWinBuildFactory.
Galina Kistanova via llvm-commits
llvm-commits at lists.llvm.org
Wed Feb 3 12:37:04 PST 2016
While we are on the subject, I'd like to validate this builder goals.
This builder would build on Windows lld + minimum required dependencies
natively by Visual Studio. Then it would run lld tests. We want it to be a
fast builder, ideally building every single commit.
Currently it builds by Visual Studio 2013, but I'm going to upgrade it to
Visual Studio 2015, unless somebody sees a special value of building by VS
2013.
Does this sound reasonable?
Anything to do differently?
Thanks
Galina
On Tue, Feb 2, 2016 at 7:04 PM, Sean Silva <chisophugis at gmail.com> wrote:
>
>
> On Tue, Feb 2, 2016 at 6:08 PM, Galina Kistanova <gkistanova at gmail.com>
> wrote:
>
>> Hi Sean,
>>
>> Sorry for the delay. It was busy couple days.
>>
>> That particular builder was not intended to run tests. Back when it was
>> setup the lld test suite didn't run well on Windows.
>>
>> Though, you are right. I'm about to convert it to build with ninja and
>> run tests. If everything will go well, it will be ready tomorrow.
>>
>
> Thanks!
>
> -- Sean Silva
>
>
>>
>> Thanks
>>
>> Galina
>>
>>
>>
>>
>> On Fri, Jan 29, 2016 at 7:44 PM, Sean Silva <chisophugis at gmail.com>
>> wrote:
>>
>>>
>>>
>>> On Mon, Jun 10, 2013 at 3:22 PM, Galina Kistanova <gkistanova at gmail.com>
>>> wrote:
>>>
>>>> Author: gkistanova
>>>> Date: Mon Jun 10 17:22:01 2013
>>>> New Revision: 183702
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-project?rev=183702&view=rev
>>>> Log:
>>>> Added new lld builder, slave, LLDWinBuildFactory.
>>>>
>>>> Modified:
>>>> zorg/trunk/buildbot/osuosl/master/config/builders.py
>>>> zorg/trunk/buildbot/osuosl/master/config/slaves.py
>>>> zorg/trunk/zorg/buildbot/builders/LLDBuilder.py
>>>>
>>>> Modified: zorg/trunk/buildbot/osuosl/master/config/builders.py
>>>> URL:
>>>> http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/config/builders.py?rev=183702&r1=183701&r2=183702&view=diff
>>>>
>>>> ==============================================================================
>>>> --- zorg/trunk/buildbot/osuosl/master/config/builders.py (original)
>>>> +++ zorg/trunk/buildbot/osuosl/master/config/builders.py Mon Jun 10
>>>> 17:22:01 2013
>>>> @@ -599,6 +599,13 @@ def _get_lld_builders():
>>>> 'builddir':"lld-x86_64-darwin11",
>>>> 'factory': LLDBuilder.getLLDBuildFactory(),
>>>> 'category' : 'lld'},
>>>> +
>>>> + {'name': "lld-x86_64-win7",
>>>> + 'slavenames' :["as-bldslv4"],
>>>> + 'builddir':"lld-x86_64-win7",
>>>> + 'factory': LLDBuilder.getLLDWinBuildFactory(clean=False),
>>>> + 'category' : 'lld'},
>>>> +
>>>> ]
>>>>
>>>> # Sanitizer builders.
>>>>
>>>> Modified: zorg/trunk/buildbot/osuosl/master/config/slaves.py
>>>> URL:
>>>> http://llvm.org/viewvc/llvm-project/zorg/trunk/buildbot/osuosl/master/config/slaves.py?rev=183702&r1=183701&r2=183702&view=diff
>>>>
>>>> ==============================================================================
>>>> --- zorg/trunk/buildbot/osuosl/master/config/slaves.py (original)
>>>> +++ zorg/trunk/buildbot/osuosl/master/config/slaves.py Mon Jun 10
>>>> 17:22:01 2013
>>>> @@ -202,6 +202,9 @@ def get_build_slaves():
>>>> # Ubuntu x86-64, 12x Intel(R) Xeon(R) CPU X5650 @ 2.67GHz
>>>> create_slave("sanitizer-buildbot1", properties={'jobs': 8},
>>>> max_builds=1),
>>>>
>>>> + # Windows 7 Professional x64
>>>> + create_slave("as-bldslv4", properties={'jobs' : 2},
>>>> max_builds=1),
>>>> +
>>>> # Defunct.
>>>> # Pentium Dual CPU T3400 @ 2.1GHz
>>>> #create_slave("dumitrescu1", properties={'jobs' : 2},
>>>> max_builds=1),
>>>>
>>>> Modified: zorg/trunk/zorg/buildbot/builders/LLDBuilder.py
>>>> URL:
>>>> http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/LLDBuilder.py?rev=183702&r1=183701&r2=183702&view=diff
>>>>
>>>> ==============================================================================
>>>> --- zorg/trunk/zorg/buildbot/builders/LLDBuilder.py (original)
>>>> +++ zorg/trunk/zorg/buildbot/builders/LLDBuilder.py Mon Jun 10 17:22:01
>>>> 2013
>>>> @@ -3,7 +3,7 @@ import os
>>>> import buildbot
>>>> import buildbot.process.factory
>>>> from buildbot.steps.source import SVN, Git
>>>> -from buildbot.steps.shell import Configure, ShellCommand
>>>> +from buildbot.steps.shell import Configure, ShellCommand, SetProperty
>>>> from buildbot.process.properties import WithProperties
>>>>
>>>> def getLLDBuildFactory(
>>>> @@ -74,3 +74,91 @@ def getLLDBuildFactory(
>>>> workdir=llvm_objdir))
>>>>
>>>> return f
>>>> +
>>>> +
>>>> +def getLLDWinBuildFactory(
>>>> + clean = True):
>>>> +
>>>> + llvm_srcdir = "llvm.src"
>>>> + llvm_objdir = "llvm.obj"
>>>> +
>>>> + f = buildbot.process.factory.BuildFactory()
>>>> +
>>>> + # Get LLVM and Lld
>>>> + f.addStep(SVN(name='svn-llvm',
>>>> + mode='update',
>>>> + baseURL='http://llvm.org/svn/llvm-project/llvm/',
>>>> + defaultBranch='trunk',
>>>> + workdir=llvm_srcdir))
>>>> + f.addStep(SVN(name='svn-lld',
>>>> + mode='update',
>>>> + baseURL='http://llvm.org/svn/llvm-project/lld/',
>>>> + defaultBranch='trunk',
>>>> + workdir='%s/tools/lld' % llvm_srcdir))
>>>> +
>>>> + # Clean directory, if requested.
>>>> + if clean:
>>>> + f.addStep(ShellCommand(name="rm-llvm_objdir",
>>>> + command=["if", "exist", llvm_objdir,
>>>> + "rmdir", "/S", "/Q",
>>>> llvm_objdir],
>>>> + haltOnFailure=True,
>>>> + description=["rm build dir", "llvm"],
>>>> + workdir="."))
>>>> +
>>>> + f.addStep(ShellCommand(name="create-build-dir",
>>>> + command=["if", "not", "exist", llvm_objdir,
>>>> + "mkdir", llvm_objdir],
>>>> + haltOnFailure=True,
>>>> + description=["create build dir"],
>>>> + workdir="."))
>>>> +
>>>> + # Is CMake configuration already done?
>>>> + checkCMakeCommand = [
>>>> + "dir", "CMakeCache.txt", ">", "NUL",
>>>> + "&&", "echo", "Yes",
>>>> + "||", "echo", "No", ">", "NUL"]
>>>> +
>>>> + # Note: ShellCommand does not pass the params with special symbols
>>>> right.
>>>> + # The " ".join is a workaround for this bug.
>>>> + f.addStep(SetProperty(name="CMake_done",
>>>> + workdir=llvm_objdir,
>>>> + command=WithProperties("
>>>> ".join(checkCMakeCommand)),
>>>> + #"cmd", "/C",
>>>> + #" ".join(checkCMakeCommand)],
>>>> + haltOnFailure=True,
>>>> + description=["check CMake_done"],
>>>> + property="CMake_done"))
>>>> +
>>>> + # Create configuration files with cmake
>>>> + cmakeCommand = [
>>>> + "cmake",
>>>> + "-DCMAKE_BUILD_TYPE=Release",
>>>> + "-DLLVM_TARGETS_TO_BUILD=X86",
>>>> + "../%s" % llvm_srcdir]
>>>> +
>>>> + f.addStep(ShellCommand(
>>>> + name="cmake-configure",
>>>> + description=["cmake configure"],
>>>> + haltOnFailure=True,
>>>> + command=WithProperties(" ".join(cmakeCommand)),
>>>> + workdir=llvm_objdir,
>>>> + doStepIf=lambda step: step.build.getProperty("CMake_done") !=
>>>> "Yes"))
>>>> +
>>>> + # Build Lld
>>>> + f.addStep(ShellCommand(name="build_Lld",
>>>> + command=["msbuild",
>>>> + #"/maxcpucount:1",
>>>> + "/verbosity:minimal",
>>>> +
>>>> "/property:Configuration=Release",
>>>> + "ALL_BUILD.vcxproj"],
>>>> + haltOnFailure=True,
>>>> + description=["build lld"],
>>>> + workdir=llvm_objdir))
>>>> + # Test Lld
>>>> + #f.addStep(ShellCommand(name="test_lld",
>>>> + # command=["make", "lld-test"],
>>>> + # haltOnFailure=True,
>>>> + # description=["test lld"],
>>>> + # workdir=llvm_objdir))
>>>>
>>>
>>> Why does this bot not run tests?
>>>
>>> -- Sean Silva
>>>
>>>
>>>
>>>> +
>>>> + return f
>>>> \ No newline at end of file
>>>>
>>>>
>>>> _______________________________________________
>>>> llvm-commits mailing list
>>>> llvm-commits at cs.uiuc.edu
>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160203/b5d4cf01/attachment.html>
More information about the llvm-commits
mailing list