summaryrefslogtreecommitdiff
path: root/lldb/scripts
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2020-01-10 13:44:00 -0800
committerJonas Devlieghere <jonas@devlieghere.com>2020-01-10 13:44:41 -0800
commit1a8c996a8894a6ae2bf3b98780972bc7bdb6b8e6 (patch)
tree99cdb3ead2a6122309788ea4ffdd2a9a97415ea3 /lldb/scripts
parenta5a6fd3f95a9ecc3ef8732192ce0fd7749135311 (diff)
downloadllvm-1a8c996a8894a6ae2bf3b98780972bc7bdb6b8e6.tar.gz
[lldb/Scripts] Remove buildbot.py
This file is outdated and still references SVN. Buildbots are configured through the zorg repository.
Diffstat (limited to 'lldb/scripts')
-rwxr-xr-xlldb/scripts/buildbot.py196
1 files changed, 0 insertions, 196 deletions
diff --git a/lldb/scripts/buildbot.py b/lldb/scripts/buildbot.py
deleted file mode 100755
index 06ee556be39c..000000000000
--- a/lldb/scripts/buildbot.py
+++ /dev/null
@@ -1,196 +0,0 @@
-#!/usr/bin/env python
-
-import argparse
-import os
-import os.path
-import shutil
-import subprocess
-import sys
-
-
-class BuildError(Exception):
-
- def __init__(self,
- string=None,
- path=None,
- inferior_error=None):
- self.m_string = string
- self.m_path = path
- self.m_inferior_error = inferior_error
-
- def __str__(self):
- if self.m_path and self.m_string:
- return "Build error: %s (referring to %s)" % (
- self.m_string, self.m_path)
- if self.m_path:
- return "Build error (referring to %s)" % (self.m_path)
- if self.m_string:
- return "Build error: %s" % (self.m_string)
- return "Build error"
-
-
-class LLDBBuildBot:
-
- def __init__(
- self,
- build_directory_path,
- log_path,
- lldb_repository_url="http://llvm.org/svn/llvm-project/lldb/trunk",
- llvm_repository_url="http://llvm.org/svn/llvm-project/llvm/trunk",
- clang_repository_url="http://llvm.org/svn/llvm-project/cfe/trunk",
- revision=None):
- self.m_build_directory_path = os.path.abspath(build_directory_path)
- self.m_log_path = os.path.abspath(log_path)
- self.m_lldb_repository_url = lldb_repository_url
- self.m_llvm_repository_url = llvm_repository_url
- self.m_clang_repository_url = clang_repository_url
- self.m_revision = revision
- self.m_log_stream = None
-
- def Setup(self):
- if os.path.exists(self.m_build_directory_path):
- raise BuildError(
- string="Build directory exists",
- path=self.m_build_directory_path)
- if os.path.exists(self.m_log_path):
- raise BuildError(string="Log file exists", path=self.m_log_path)
- self.m_log_stream = open(self.m_log_path, 'w')
- os.mkdir(self.m_build_directory_path)
-
- def Checkout(self):
- os.chdir(self.m_build_directory_path)
-
- cmdline_prefix = []
-
- if self.m_revision is not None:
- cmdline_prefix = ["svn", "-r %s" % (self.m_revision), "co"]
- else:
- cmdline_prefix = ["svn", "co"]
-
- returncode = subprocess.call(
- cmdline_prefix + [
- self.m_lldb_repository_url,
- "lldb"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
- if returncode != 0:
- raise BuildError(string="Couldn't checkout LLDB")
-
- os.chdir("lldb")
-
- returncode = subprocess.call(
- cmdline_prefix + [
- self.m_llvm_repository_url,
- "llvm.checkout"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't checkout LLVM")
-
- os.symlink("llvm.checkout", "llvm")
-
- os.chdir("llvm/tools")
-
- returncode = subprocess.call(
- cmdline_prefix + [
- self.m_clang_repository_url,
- "clang"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't checkout Clang")
-
- def Build(self):
- os.chdir(self.m_build_directory_path)
- os.chdir("lldb/llvm")
-
- returncode = subprocess.call(["./configure",
- "--disable-optimized",
- "--enable-assertions",
- "--enable-targets=x86,x86_64,arm"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't configure LLVM/Clang")
-
- returncode = subprocess.call(["make"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't build LLVM/Clang")
-
- os.chdir(self.m_build_directory_path)
- os.chdir("lldb")
-
- returncode = subprocess.call(["xcodebuild",
- "-project", "lldb.xcodeproj",
- "-target", "lldb-tool",
- "-configuration", "Debug",
- "-arch", "x86_64",
- "LLVM_CONFIGURATION=Debug+Asserts",
- "OBJROOT=build"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't build LLDB")
-
- def Test(self):
- os.chdir(self.m_build_directory_path)
- os.chdir("lldb/test")
-
- returncode = subprocess.call(["./dotest.py", "-t"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- def Takedown(self):
- os.chdir("/tmp")
- self.m_log_stream.close()
- shutil.rmtree(self.m_build_directory_path)
-
- def Run(self):
- self.Setup()
- self.Checkout()
- self.Build()
- # self.Test()
- self.Takedown()
-
-
-def GetArgParser():
- parser = argparse.ArgumentParser(
- description="Try to build LLDB/LLVM/Clang and run the full test suite.")
- parser.add_argument(
- "--build-path",
- "-b",
- required=True,
- help="A (nonexistent) path to put temporary build products into",
- metavar="path")
- parser.add_argument(
- "--log-file",
- "-l",
- required=True,
- help="The name of a (nonexistent) log file",
- metavar="file")
- parser.add_argument(
- "--revision",
- "-r",
- required=False,
- help="The LLVM revision to use",
- metavar="N")
- return parser
-
-parser = GetArgParser()
-arg_dict = vars(parser.parse_args())
-
-build_bot = LLDBBuildBot(build_directory_path=arg_dict["build_path"],
- log_path=arg_dict["log_file"],
- revision=arg_dict["revision"])
-
-try:
- build_bot.Run()
-except BuildError as err:
- print(err)