Index: buildbot/osuosl/master/config/builders.py =================================================================== --- buildbot/osuosl/master/config/builders.py +++ buildbot/osuosl/master/config/builders.py @@ -718,8 +718,9 @@ 'builddir': "buildWorkingDir", 'factory': LLDBBuilder.getLLDBUbuntuCMakeBuildFactory( build_compiler="clang", - test_compiler="clang", build_type="Debug", + test_arch=['x86_64', 'i386'], + test_compilers=['clang', 'totclang', 'gcc4.8.2'], env={'SHELL':"/bin/bash"})}, {'name': "lldb-x86_64-darwin-13.4", 'slavenames': ["lldb-x86_64-darwin-13.4"], Index: zorg/buildbot/builders/LLDBBuilder.py =================================================================== --- zorg/buildbot/builders/LLDBBuilder.py +++ zorg/buildbot/builders/LLDBBuilder.py @@ -232,8 +232,9 @@ #Build command sequnce - cmake, ninja, ninja check-lldb def getLLDBUbuntuCMakeBuildFactory( build_compiler, - test_compiler, build_type, + test_arch=None, + test_compilers=None, jobs='%(jobs)s', env=None, *args, @@ -241,6 +242,10 @@ if env is None: env={} + if test_arch is None: + test_arch={} + if test_compilers is None: + test_compilers={} llvm_srcdir = "llvm" llvm_builddir = "build" @@ -265,11 +270,6 @@ cmake_args.append("-DCMAKE_C_COMPILER=gcc") cmake_args.append("-DCMAKE_CXX_COMPILER=g++") - if test_compiler == "clang": - cmake_args.append("-DLLDB_TEST_COMPILER=clang") - elif test_compiler == "gcc": - cmake_args.append("-DLLDB_TEST_COMPILER=gcc") - cmake_args.append(WithProperties("-DCMAKE_BUILD_TYPE=%s" % build_type)) cmake_args.append(WithProperties("../%s" % llvm_srcdir)) @@ -291,15 +291,29 @@ env=env, haltOnFailure=True, workdir=llvm_builddir)) - # Test - f.addStep(LitTestCommand(name="test lldb", - command=['nice', '-n', '10', - 'ninja', - 'check-lldb'], - description="test lldb", - parseSummaryOnly=True, - env=env, - workdir='%s' % llvm_builddir)) + + # Run Test with list of compilers and archs + bindir='%(builddir)s/' + llvm_builddir + '/bin' + + for compiler in test_compilers: + # find full path for top of tree clang + if compiler=='totclang': + compiler=bindir+'/clang' + for arch in test_arch: + f.addStep(LitTestCommand(name="test lldb (%s-%s)" % (compiler, arch), + command=['../%s/tools/lldb/test/dosep.py' % llvm_srcdir, + '--options', + WithProperties(''.join(['-q ', + '--arch=%s ' % arch, + '--executable ' + bindir + '/lldb ', + '-C ' + compiler + ' ', + '-s lldb-test-traces ', + '-u CXXFLAGS ', + '-u CFLAGS']))], + description="test lldb", + parseSummaryOnly=True, + env=env, + workdir='%s' % llvm_builddir)) return f def getLLDBxcodebuildFactory(use_cc=None):